.nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:1.5rem 0;background:linear-gradient(180deg,#0e0d0fd9,#0e0d0f00)}.nav-inner{display:flex;align-items:center;justify-content:space-between}.nav-mark,.nav-link{background:transparent;border:none;padding:0;cursor:pointer;font-family:var(--font-mono)}.nav-mark{font-size:.82rem;letter-spacing:.22em;color:var(--paper-white)}.nav-links{display:flex;gap:1.9rem}.nav-link{font-family:var(--font-body);font-weight:300;font-size:.78rem;letter-spacing:.14em;color:var(--paper-white);opacity:.6;transition:opacity .2s ease,color .2s ease}.nav-link:hover{opacity:.9}.nav-link.is-active{opacity:1;color:var(--spotlight-amber)}@media (max-width: 640px){.nav-links{gap:1.1rem}.nav-link{font-size:.7rem}}.hero{position:relative;height:100%;display:flex;align-items:center;overflow:hidden;background:var(--stage-black)}.hero-slides{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transform:scale(1.04);transition:opacity 1.4s ease,transform 8s linear}.hero-slide.is-active{opacity:1;transform:scale(1);transition:opacity 1.4s ease,transform 7s linear}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,#0e0d0fd1,#0e0d0f8c 32%,#0e0d0f47 58%,#0e0d0f59),linear-gradient(0deg,#0e0d0f8c,#0e0d0f00 30%,#0e0d0f00 75%,#0e0d0f8c)}.hero-content{position:relative;z-index:2;width:100%}.hero-text{max-width:34rem}.hero-kicker{font-family:var(--font-mono);font-weight:400;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--spotlight-amber);margin:0 0 1.1rem}.hero-title{font-family:var(--font-body);font-weight:300;font-size:clamp(1.9rem,3.6vw,3.1rem);letter-spacing:.02em;line-height:1.2;margin:0 0 1.1rem;color:var(--paper-white)}.hero-desc{font-family:var(--font-body);font-weight:300;font-size:.98rem;line-height:1.85;color:var(--paper-white);opacity:.72;max-width:36ch;margin:0 0 2rem}.btn-pill{display:inline-block;background:transparent;cursor:pointer;padding:.75rem 1.7rem;border:1px solid rgba(242,239,234,.35);border-radius:999px;color:var(--paper-white);text-decoration:none;font-family:var(--font-body);font-weight:300;font-size:.82rem;letter-spacing:.08em;transition:border-color .25s ease,background .25s ease}.btn-pill:hover{border-color:var(--spotlight-amber);background:#e8a24a14}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;background:transparent;border:none;color:var(--paper-white);font-size:2.2rem;font-weight:300;line-height:1;opacity:.45;cursor:pointer;padding:.6rem;transition:opacity .2s ease}.hero-arrow:hover{opacity:.9}.hero-arrow-prev{left:clamp(.5rem,2vw,2rem)}.hero-arrow-next{right:clamp(.5rem,2vw,2rem)}.hero-index{position:absolute;left:clamp(1.2rem,4vw,4rem);bottom:clamp(1.4rem,4vw,2.4rem);z-index:3;display:flex;align-items:baseline;gap:.4rem;font-family:var(--font-mono);font-weight:400;font-size:.7rem;letter-spacing:.08em;color:var(--ash-grey)}.hero-index-current{color:var(--paper-white)}.hero-index-sep{color:var(--ash-grey-dim)}@media (max-width: 640px){.hero-text{max-width:100%}.hero-arrow{font-size:1.7rem}}.gallery{height:100%;display:flex;align-items:center}.gallery-wrap{height:100%;padding-top:6rem;padding-bottom:1.6rem;display:flex;flex-direction:column}.gallery-head{flex:none;margin-bottom:1.2rem}.gallery-title{font-family:var(--font-body);font-weight:300;letter-spacing:.02em;font-size:clamp(1.5rem,2.6vw,2.1rem);margin:.5rem 0 0}.gallery-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:.9rem}.gallery-tile{position:relative;margin:0;border-radius:2px;overflow:hidden;isolation:isolate;min-height:0}.gallery-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#0e0d0feb,#0e0d0f26 42%,#0e0d0f00 70%);opacity:0;transition:opacity .35s ease}.gallery-tile:hover:after,.gallery-tile:focus-visible:after{opacity:1}.gallery-tile figcaption{position:absolute;left:0;right:0;bottom:0;padding:.9rem 1rem;display:flex;flex-direction:column;gap:.1rem;transform:translateY(8px);opacity:0;transition:transform .35s ease,opacity .35s ease}.gallery-tile:hover figcaption,.gallery-tile:focus-visible figcaption{transform:translateY(0);opacity:1}.gallery-index{font-family:var(--font-mono);font-size:.64rem;color:var(--spotlight-amber);letter-spacing:.08em}.gallery-name{font-family:var(--font-body);font-weight:300;font-size:.92rem;letter-spacing:.03em;color:var(--paper-white);margin-top:.15rem}.gallery-meta{font-family:var(--font-mono);font-size:.62rem;color:var(--ash-grey);letter-spacing:.03em;margin-top:.2rem}@media (max-width: 800px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:.6rem}.gallery-wrap{padding-top:5rem}.gallery-tile figcaption{transform:translateY(0);opacity:1;padding:.6rem .7rem}.gallery-tile:after{opacity:1}.gallery-name{font-size:.78rem}.gallery-meta{font-size:.56rem}}.booking{height:100%;display:flex;align-items:center}.booking-inner{width:100%;padding-top:5rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:3.2rem;align-items:center}.booking-title{font-family:var(--font-body);font-weight:300;letter-spacing:.02em;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.2;margin:.5rem 0 1rem}.booking-desc{font-family:var(--font-body);font-weight:300;font-size:.92rem;line-height:1.75;color:var(--paper-white);opacity:.72;max-width:38ch}.booking-form{display:flex;flex-direction:column;gap:.95rem}.form-row{display:flex;flex-direction:column;gap:.35rem}.form-row-split{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.form-row-split>div{display:flex;flex-direction:column;gap:.35rem}label{font-family:var(--font-mono);font-weight:400;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ash-grey)}input,textarea{background:transparent;border:none;border-bottom:1px solid var(--ash-grey-dim);color:var(--paper-white);font-family:var(--font-body);font-weight:300;font-size:.94rem;padding:.4rem .1rem;transition:border-color .2s ease;resize:none}textarea{min-height:3.4rem}input::placeholder,textarea::placeholder{color:var(--ash-grey-dim)}input:focus,textarea:focus{border-color:var(--spotlight-amber)}.booking-form button{align-self:flex-start;border:none;cursor:pointer;margin-top:.3rem;padding:.7rem 1.5rem;font-weight:400;font-size:.85rem}.booking-form button:disabled{opacity:.6;cursor:default}.form-error{font-size:.8rem;color:#d97757;margin:0}.booking-sent{width:100%;padding-top:5rem;text-align:left;max-width:44ch}.booking-sent-text{font-family:var(--font-body);font-weight:300;font-size:.98rem;line-height:1.8;opacity:.85}@media (max-width: 800px){.booking-inner{grid-template-columns:1fr;gap:1.4rem;padding-top:4.5rem}.form-row-split{grid-template-columns:1fr 1fr;gap:.8rem}}.footer{position:fixed;right:clamp(1.2rem,4vw,4rem);bottom:clamp(1.2rem,4vw,2.2rem);z-index:30;display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.04em}.footer a{text-decoration:none;color:var(--ash-grey);transition:color .2s ease}.footer a:hover{color:var(--spotlight-amber)}.footer-dot{color:var(--ash-grey-dim)}@media (max-width: 640px){.footer{display:none}}:root{--stage-black: #0e0d0f;--stage-black-soft: #17151a;--spotlight-amber: #e8a24a;--rim-blue: #4a6fa5;--paper-white: #f2efea;--ash-grey: #6b6862;--ash-grey-dim: #4a4844;--font-display: "Fraunces", ui-serif, Georgia, serif;--font-body: "Inter", ui-sans-serif, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--container: min(1180px, 92vw)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html,body,#root{height:100%}body{margin:0;background:var(--stage-black);color:var(--paper-white);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow:hidden}.stage{height:100svh;width:100%}a{color:inherit}button{font-family:inherit}:focus-visible{outline:2px solid var(--spotlight-amber);outline-offset:3px}.wrap{width:var(--container);margin:0 auto}.eyebrow{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--spotlight-amber)}.btn-primary{display:inline-block;padding:.85rem 1.7rem;background:var(--spotlight-amber);color:var(--stage-black);font-weight:500;text-decoration:none;border-radius:2px;transition:transform .2s ease,background .2s ease}.btn-primary:hover{background:#f0b364;transform:translateY(-1px)}.divider{height:1px;background:linear-gradient(90deg,var(--ash-grey-dim) 0%,transparent 70%);border:none;margin:0}
