:root{--background:#000;--surface:#080808;--surface-strong:#111;--foreground:#fff;--muted:#ffffffb8;--subtle:#ffffff85;--line:#ffffff29;--gold:#c9a24a;--gold-soft:#c9a24a33;--max-width:1180px}*{box-sizing:border-box}html,body{background:var(--background);min-height:100%;margin:0}body{color:var(--foreground);text-rendering:optimizelegibility;font-family:Georgia,Times New Roman,serif}body:before{z-index:-1;content:"";background:linear-gradient(110deg,#ffffff0a,#0000 34%),radial-gradient(circle at 78% 10%,#ffffff14,#0000 34%),#000;position:fixed;inset:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-frame{background:var(--background);min-height:100svh}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#000000e0;justify-content:space-between;align-items:flex-start;gap:24px;width:100%;padding:18px clamp(20px,4vw,56px) 14px;display:flex;position:sticky;top:0}.logo-link{width:clamp(106px,13vw,164px);display:block}.header-logo,.footer-logo{width:100%;height:auto;display:block}.menu-shell{margin-top:10px;position:relative}.menu-shell[open] .menu-button{border-color:var(--gold)}.menu-button{cursor:pointer;width:44px;height:38px;color:var(--foreground);background:0 0;border:1px solid #0000;place-items:center;list-style:none;display:grid}.menu-button::-webkit-details-marker{display:none}.menu-button span{background:var(--foreground);width:25px;height:2px;display:block}.menu-panel{border:1px solid var(--line);background:#050505fa;min-width:250px;padding:10px;display:grid;position:absolute;top:calc(100% + 14px);right:0;box-shadow:0 24px 80px #0000008c}.menu-panel a{color:var(--foreground);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #ffffff14;padding:14px 16px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:700}.menu-panel a:last-child{border-bottom:0}.menu-panel a:hover,.menu-panel a:focus-visible{color:var(--gold)}main{width:min(100%, var(--max-width));margin:0 auto;padding:0 clamp(20px,4vw,56px) 64px}.home-hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.95fr) minmax(320px,.85fr);align-items:center;gap:clamp(34px,6vw,76px);min-height:min(760px,100svh - 96px);padding:clamp(48px,8vw,92px) 0;display:grid}.hero-copy{width:100%;min-width:0;max-width:650px}.home-hero>*{min-width:0}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--foreground);letter-spacing:0;font-weight:500}h1{text-wrap:balance;max-width:780px;font-size:clamp(3rem,5.2vw,5.6rem);line-height:.95}h2{max-width:760px;font-size:clamp(2rem,4vw,4rem);line-height:1.02}h3{font-size:clamp(1.2rem,1.6vw,1.65rem);line-height:1.18}p,li{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.75}.hero-copy p{max-width:570px;margin-top:24px;font-size:clamp(1rem,1.4vw,1.18rem)}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.primary-button,.secondary-button,.form-actions button{border:1px solid var(--gold);letter-spacing:.06em;text-transform:uppercase;border-radius:3px;justify-content:center;align-items:center;min-height:48px;padding:0 24px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:800;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.primary-button,.form-actions button:not(.secondary-submit){background:var(--gold);color:#050505}.secondary-button{color:var(--foreground);background:0 0}.primary-button:hover,.primary-button:focus-visible,.form-actions button:not(.secondary-submit):hover,.form-actions button:not(.secondary-submit):focus-visible{background:#fff;border-color:#fff}.secondary-button:hover,.secondary-button:focus-visible{background:var(--gold);color:#050505}.secondary-button.compact{white-space:nowrap;min-height:42px}.hero-panel{background:linear-gradient(140deg, #ffffff17, transparent 46%), linear-gradient(180deg, #c9a24a26, transparent 58%), var(--surface);border:1px solid #ffffff24;min-height:470px;position:relative;overflow:hidden}.hero-panel:before{content:"";background:linear-gradient(90deg,#0000 0 12%,#c9a24a2e 12% 13%,#0000 13% 31%,#c9a24a2e 31% 32%,#0000 32% 50%,#c9a24a2e 50% 51%,#0000 51% 69%,#c9a24a2e 69% 70%,#0000 70%),repeating-linear-gradient(0deg,#ffffff1f 0 1px,#0000 1px 28px),repeating-linear-gradient(90deg,#ffffff14 0 1px,#0000 1px 46px);border:1px solid #ffffff1f;height:300px;position:absolute;inset:38px 12% auto 18%;transform:perspective(700px)rotateY(-15deg)skew(-6deg)}.hero-panel:after{content:"";background:linear-gradient(#0000,#000);height:42%;position:absolute;inset:auto 0 0}.hero-panel-inner{z-index:1;gap:10px;display:grid;position:absolute;bottom:28px;right:28px}.hero-panel-inner span{border-left:2px solid var(--gold);color:#ffffffc7;letter-spacing:.08em;text-transform:uppercase;padding-left:12px;font-family:Arial,Helvetica,sans-serif;font-size:.76rem;font-weight:700}.section-band,.booking-section,.page-hero{border-bottom:1px solid var(--line);padding:clamp(48px,7vw,86px) 0}.page-hero{padding-top:clamp(58px,8vw,104px)}.page-hero p{max-width:760px;margin-top:24px;font-size:clamp(1rem,1.35vw,1.18rem)}.contact-page .page-hero h1{font-size:clamp(2.35rem,4.2vw,4.25rem);line-height:1}.section-label{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;font-family:Arial,Helvetica,sans-serif;font-size:.73rem;font-weight:800;line-height:1.2}.intro-grid{grid-template-columns:minmax(280px,1.35fr) repeat(3,minmax(180px,.75fr));gap:34px;display:grid}.intro-grid>div>p:not(.section-label){margin-top:18px}.text-link{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;margin-top:20px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:800;display:inline-flex}.text-link:hover,.text-link:focus-visible{color:#fff}.value-item{border-left:1px solid var(--line);padding-left:26px}.value-item p{margin-top:12px;font-size:.94rem}.card-mark{border:2px solid var(--gold);border-radius:50%;width:34px;height:34px;margin-bottom:24px;display:block;position:relative}.card-mark:after{border:1px solid var(--gold);content:"";position:absolute;inset:8px}.card-grid,.project-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:30px;display:grid}.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.content-card,.project-card,.contact-panel{border:1px solid var(--line);background:linear-gradient(145deg,#ffffff0e,#ffffff04);border-radius:6px;padding:clamp(22px,3vw,32px)}.content-card p,.project-card p{margin-top:12px}.section-heading-row{justify-content:space-between;align-items:end;gap:24px;display:flex}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.project-card{background:linear-gradient(#0000001a,#000000eb),linear-gradient(135deg,#ffffff1f,#c9a24a0f);flex-direction:column;justify-content:end;min-height:260px;display:flex}.booking-section{grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr);align-items:start;gap:clamp(32px,7vw,88px);display:grid}.booking-copy p{margin-top:18px}.booking-options{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.booking-options span{border:1px solid var(--gold);color:var(--foreground);border-radius:4px;padding:12px 14px;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:700}.booking-form{border:1px solid var(--line);background:#070707e0;border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:clamp(20px,3vw,30px);display:grid}.booking-form label,.booking-form legend{color:#ffffffd1;letter-spacing:.04em;text-transform:uppercase;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:800}.booking-form input,.booking-form textarea{width:100%;color:var(--foreground);background:#000;border:1px solid #ffffff2e;border-radius:3px;margin-top:8px;padding:13px 12px;font-family:Arial,Helvetica,sans-serif;font-size:.98rem;line-height:1.4}:is(.booking-form label:has(.date-picker-button),.booking-form label:has(.time-picker-button)){position:relative}.date-picker-button,.time-picker-button{width:100%;min-height:48px;color:var(--foreground);cursor:pointer;text-align:left;background:#000;border:1px solid #ffffff2e;border-radius:3px;justify-content:space-between;align-items:center;margin-top:8px;padding:13px 12px;font-family:Arial,Helvetica,sans-serif;font-size:.98rem;line-height:1.4;display:flex}.date-picker-button:after,.time-picker-button:after{border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);content:"";width:9px;height:9px;transform:rotate(45deg)translateY(-3px)}.date-picker-button:hover,.date-picker-button:focus-visible,.time-picker-button:hover,.time-picker-button:focus-visible{border-color:var(--gold);outline:none}.calendar-popover,.time-slot-popover{z-index:10;background:#050505fa;border:1px solid #ffffff29;border-radius:6px;width:min(360px,88vw);padding:14px;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 24px 80px #00000094}.calendar-toolbar{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.calendar-toolbar button,.calendar-grid button{color:var(--foreground);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff24;border-radius:3px;min-height:38px;padding:0 10px;font-family:Arial,Helvetica,sans-serif;font-size:.72rem;font-weight:800}.calendar-toolbar button:hover,.calendar-toolbar button:focus-visible,.calendar-grid button:hover,.calendar-grid button:focus-visible{border-color:var(--gold);background:#c9a24a24;outline:none}.calendar-selects{grid-template-columns:1fr 88px;gap:8px;display:grid}.calendar-selects select{width:100%;color:var(--foreground);background:#000;border:1px solid #ffffff29;border-radius:3px;min-height:38px;padding:0 8px;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.calendar-weekdays{margin-top:14px}.calendar-weekdays span{color:#ffffff8a;text-align:center;font-family:Arial,Helvetica,sans-serif;font-size:.68rem;font-weight:800}.calendar-grid button{aspect-ratio:1;min-height:auto;padding:0}.calendar-grid button.selected{border-color:var(--gold);background:var(--gold);color:#050505}.calendar-grid button.disabled,.calendar-grid button:disabled{cursor:not-allowed;color:#ffffff3d;background:#ffffff06;border-color:#ffffff0f}.calendar-grid button.disabled:hover,.calendar-grid button.disabled:focus-visible,.calendar-grid button:disabled:hover,.calendar-grid button:disabled:focus-visible{color:#ffffff3d;background:#ffffff06;border-color:#ffffff0f}.time-slot-popover{width:min(360px,88vw)}.time-slot-popover p{color:#ffffffa3;margin-bottom:12px;font-size:.78rem;line-height:1.45}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;padding-right:4px;display:grid;overflow-y:auto}.time-slot-grid button{color:var(--foreground);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff24;border-radius:3px;min-height:42px;padding:0 10px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:800}.time-slot-grid button:hover,.time-slot-grid button:focus-visible{border-color:var(--gold);background:#c9a24a24;outline:none}.time-slot-grid button.selected{border-color:var(--gold);background:var(--gold);color:#050505}.booking-form textarea{resize:vertical}.booking-form fieldset,.turnstile-panel,.form-actions{grid-column:1/-1}.booking-form label:has(textarea){grid-column:1/-1}.booking-form fieldset{border:1px solid #ffffff24;border-radius:4px;gap:10px;margin:0;padding:14px;display:grid}.booking-form .radio-row{letter-spacing:0;text-transform:none;align-items:center;gap:10px;font-size:.82rem;font-weight:700;display:flex}.booking-form .radio-row input{width:auto;accent-color:var(--gold);margin:0}.turnstile-panel{background:#ffffff06;border:1px solid #ffffff24;border-radius:4px;align-content:center;gap:10px;min-height:88px;padding:14px;display:grid}.turnstile-panel p{color:#ffffffad;font-size:.86rem;line-height:1.45}.turnstile-widget{min-height:65px}.form-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.booking-form .secondary-submit{color:var(--foreground);background:0 0}.booking-form .secondary-submit:hover,.booking-form .secondary-submit:focus-visible{border-color:var(--gold);color:var(--foreground);background:#c9a24a1f}.form-actions button:disabled{cursor:not-allowed;color:#ffffff61;background:#ffffff17;border-color:#ffffff2e}.form-actions button:disabled:hover,.form-actions button:disabled:focus-visible{color:#ffffff61;background:#ffffff17;border-color:#ffffff2e}.two-column,.contact-grid{grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:clamp(30px,6vw,80px);display:grid}.prose-block{gap:18px;display:grid}.process-list ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:30px 0 0;padding:0;list-style:none;display:grid}.process-list li{border:1px solid var(--line);border-radius:6px;padding:26px}.process-list strong{color:var(--foreground);margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:500;display:block}.contact-grid a{color:var(--gold)}.contact-panel ul{gap:10px;margin:18px 0 0;padding-left:18px;display:grid}.legal-content{max-width:860px}.legal-content h2{margin-top:34px;font-size:clamp(1.45rem,2vw,2.1rem)}.legal-content h2:first-child{margin-top:0}.legal-content p{margin-top:12px}.legal-effective-date{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;margin-bottom:28px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:800}.legal-policy-section+.legal-policy-section{margin-top:8px}.site-footer{border-top:1px solid var(--line);padding:34px clamp(20px,4vw,56px) 24px}.footer-grid{max-width:var(--max-width);grid-template-columns:170px 1fr auto;align-items:center;gap:36px;margin:0 auto;display:grid}.footer-logo-link{width:150px;display:block}.footer-grid p{max-width:560px;font-size:.9rem}.footer-nav{flex-wrap:wrap;justify-content:end;gap:12px 18px;display:flex}.footer-nav a{color:#ffffffc2;letter-spacing:.06em;text-transform:uppercase;font-family:Arial,Helvetica,sans-serif;font-size:.72rem;font-weight:800}.footer-nav a:hover,.footer-nav a:focus-visible{color:var(--gold)}.footer-legal{max-width:var(--max-width);border-top:1px solid var(--line);color:#ffffff9e;text-align:center;margin:30px auto 0;padding-top:18px;font-family:Arial,Helvetica,sans-serif;font-size:clamp(.68rem,.78vw,.82rem);line-height:1.6}.footer-policy-nav{flex-wrap:wrap;justify-content:center;gap:10px 18px;margin-bottom:14px;display:flex}.footer-policy-nav a{color:#ffffffd1;letter-spacing:.05em;text-transform:uppercase;font-size:clamp(.68rem,.75vw,.78rem);font-weight:800}.footer-policy-nav a:hover,.footer-policy-nav a:focus-visible{color:var(--gold)}.footer-legal p{text-wrap:balance;margin:0;font-size:clamp(.62rem,.68vw,.74rem);line-height:1.55}@media (max-width:980px){.home-hero,.booking-section,.two-column,.contact-grid{grid-template-columns:1fr}.home-hero{min-height:auto}.hero-panel{width:100%;min-height:340px}.intro-grid,.card-grid,.project-grid,.process-list ol,.footer-grid{grid-template-columns:1fr}.footer-nav{justify-content:start}}@media (max-width:620px){.site-header{padding-top:14px}.logo-link{width:108px}.menu-shell{margin-top:6px}main{padding-inline:20px}h1{font-size:clamp(2.35rem,10.5vw,3.15rem)}h2{font-size:clamp(1.85rem,11vw,3rem)}.hero-actions,.section-heading-row{flex-direction:column;align-items:stretch}.primary-button,.secondary-button{width:100%}.booking-form,.form-actions{grid-template-columns:1fr}.footer-logo-link{width:130px}.footer-grid{gap:24px}.footer-nav{gap:10px;display:grid}.footer-nav a{font-size:.78rem}.footer-legal{text-align:left}.footer-policy-nav{justify-content:start}}
