:root{
  --ink:#070706;
  --ink-2:#0d0d0b;
  --paper:#f2eee5;
  --paper-2:#d8d1c5;
  --muted:#989187;
  --gold:#d8b363;
  --gold-2:#9e7c3e;
  --line:rgba(216,179,99,.20);
  --line-soft:rgba(242,238,229,.10);
  --header-h:92px;
  --max:1520px;
  --pad:clamp(24px,4.6vw,78px);
  --ease:cubic-bezier(.2,.82,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --scroll:0;
}
*{box-sizing:border-box}
html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 20px)}
body{margin:0;background:var(--ink);color:var(--paper);font-family:Inter,Arial,Helvetica,sans-serif;overflow-x:hidden;min-width:320px}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
::selection{background:var(--gold);color:#090907}

/* progressive page transitions */
@view-transition{navigation:auto}
::view-transition-old(root){animation:.36s ease both fade-out}
::view-transition-new(root){animation:.55s var(--ease-out) both fade-in}
@keyframes fade-out{to{opacity:0;filter:blur(5px)}}
@keyframes fade-in{from{opacity:0;filter:blur(7px)}}

/* header */
.site-header{position:fixed;z-index:90;inset:0 0 auto;height:var(--header-h);display:grid;grid-template-columns:130px 1fr 130px;align-items:center;padding:0 var(--pad);border-bottom:1px solid transparent;transition:transform .55s var(--ease),height .4s ease,background .45s ease,border-color .45s ease,backdrop-filter .45s ease}
.site-header::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:calc(var(--scroll) * 100%);background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.75;pointer-events:none}
.site-header.scrolled{height:78px;background:rgba(7,7,6,.76);backdrop-filter:blur(24px) saturate(120%);border-color:var(--line-soft)}
.site-header.header-hidden{transform:translateY(-105%)}
.brand{width:78px;height:74px;display:flex;align-items:center;justify-content:flex-start;position:relative}
.brand img{height:70px;width:auto;object-fit:contain;filter:drop-shadow(0 8px 22px rgba(0,0,0,.2))}
.primary-nav{display:flex;justify-content:center;align-items:center;gap:clamp(25px,2.75vw,50px)}
.primary-nav a{position:relative;padding:14px 0 15px;font-size:17px;line-height:1;letter-spacing:.025em;color:rgba(242,238,229,.88);transition:color .3s ease,transform .35s var(--ease)}
.primary-nav a::before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--gold);left:50%;bottom:3px;transform:translate(-50%,7px) scale(0);opacity:0;transition:.35s var(--ease)}
.primary-nav a:hover,.primary-nav a.active{color:var(--paper)}
.primary-nav a:hover::before,.primary-nav a.active::before{transform:translate(-50%,0) scale(1);opacity:1}
.header-tools{display:flex;justify-content:flex-end;align-items:center}
.menu-toggle{border:0;background:transparent;display:flex;align-items:center;gap:13px;padding:13px 0;font-size:17px;letter-spacing:.03em}
.burger{width:27px;height:18px;position:relative;display:inline-block}
.burger::before,.burger::after{content:"";position:absolute;right:0;width:100%;height:1px;background:currentColor;transform-origin:center;transition:top .4s var(--ease),transform .4s var(--ease),width .4s var(--ease)}
.burger::before{top:4px}.burger::after{top:13px;width:70%}
.menu-toggle:hover .burger::after{width:100%}
body.menu-open .burger::before{top:8px;transform:rotate(45deg)}
body.menu-open .burger::after{top:8px;width:100%;transform:rotate(-45deg)}

/* full screen menu */
.menu-panel{position:fixed;z-index:80;inset:0;background:rgba(7,7,6,.985);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease,visibility .5s ease;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:7vw;padding:calc(var(--header-h) + 45px) var(--pad) 54px;overflow:hidden}
.menu-panel::before{content:"";position:absolute;width:min(74vw,980px);aspect-ratio:1;border:1px solid rgba(216,179,99,.085);border-radius:50%;right:-27vw;top:-35vw;animation:slowspin 34s linear infinite;pointer-events:none}
body.menu-open .menu-panel{opacity:1;visibility:visible;pointer-events:auto}
.menu-links{align-self:center;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 52px;position:relative;z-index:2}
.menu-links a{font-size:clamp(31px,3.45vw,59px);line-height:1.02;letter-spacing:-.045em;padding:8px 0;color:rgba(242,238,229,.92);transform:translateY(22px);opacity:0;transition:color .25s ease,transform .55s var(--ease-out),opacity .45s ease}
body.menu-open .menu-links a{opacity:1;transform:none}
body.menu-open .menu-links a:nth-child(2n){transition-delay:.03s}
body.menu-open .menu-links a:nth-child(3n){transition-delay:.06s}
.menu-links a:hover{color:var(--gold)}
.menu-aside{align-self:center;display:grid;place-items:center;position:relative;min-height:64vh;border-left:1px solid var(--line-soft)}
.menu-preview{width:min(54vh,520px);aspect-ratio:1;border-radius:50%;overflow:hidden;position:relative;border:1px solid rgba(216,179,99,.45);box-shadow:0 0 0 22px rgba(216,179,99,.018),0 0 0 48px rgba(216,179,99,.012)}
.menu-preview::before,.menu-preview::after{content:"";position:absolute;z-index:2;border-radius:50%;pointer-events:none}
.menu-preview::before{inset:9%;border:1px solid rgba(216,179,99,.14)}
.menu-preview::after{inset:-1px;border:1px dashed rgba(216,179,99,.18);animation:slowspin 19s linear infinite}
.menu-preview img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.64) contrast(1.06);transform:scale(1.08);transition:opacity .28s ease,transform .9s var(--ease-out)}
.menu-meta{position:absolute;left:clamp(30px,5vw,80px);bottom:1vh;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
@keyframes slowspin{to{transform:rotate(360deg)}}

/* reliable filled transition: no oversized border arcs */
.page-transition{position:fixed;z-index:300;width:22px;height:22px;left:var(--tx,50%);top:var(--ty,50%);margin:-11px 0 0 -11px;border-radius:50%;background:#0b0b09;transform:scale(0);opacity:0;pointer-events:none;will-change:transform,opacity}
.page-transition.active{opacity:1;transform:scale(180);transition:transform .82s cubic-bezier(.76,0,.24,1),opacity .08s ease}

/* opening portal */
.entry-screen{position:fixed;z-index:180;inset:0;background:#050504;display:grid;place-items:center;overflow:hidden;isolation:isolate;transition:opacity .75s ease,visibility .75s ease}
.entry-screen.done{opacity:0;visibility:hidden;pointer-events:none}
.entry-photo{position:absolute;inset:0;clip-path:circle(0 at 50% 50%);transition:clip-path 3.05s cubic-bezier(.59,.04,.13,1);overflow:hidden;will-change:clip-path}
.entry-photo img{position:absolute;inset:-7%;width:114%;height:114%;max-width:none;object-fit:cover;object-position:center 44%;filter:saturate(.82) contrast(1.05) brightness(.69);transform:scale(1.08);transition:transform 3.2s var(--ease-out)}
.entry-photo::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 49%,transparent 0 25%,rgba(3,3,2,.10) 48%,rgba(3,3,2,.52) 100%),linear-gradient(180deg,rgba(3,3,2,.28),transparent 40%,rgba(3,3,2,.35))}
.entry-screen.ready .entry-photo{clip-path:circle(clamp(108px,14.5vmin,174px) at 50% 50%)}
.entry-screen.entering .entry-photo{clip-path:circle(145vmax at 50% 50%)}
.entry-screen.entering .entry-photo img{transform:scale(1)}
.entry-ring{position:relative;width:clamp(235px,32vmin,365px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;opacity:0;transform:scale(.86);transition:opacity 1.35s ease,transform 1.7s var(--ease-out);will-change:transform}
.entry-screen.ready .entry-ring{opacity:1;transform:scale(1)}
.entry-ring::before,.entry-ring::after,.entry-orbit{content:"";position:absolute;border-radius:50%;pointer-events:none}
.entry-ring::before{inset:0;border:1px solid rgba(216,179,99,.88);box-shadow:0 0 38px rgba(216,179,99,.08);animation:portalspin 11s linear infinite}
.entry-ring::after{inset:-11%;border:1px dashed rgba(216,179,99,.32);animation:portalspin 18s linear infinite reverse}
.entry-orbit{inset:-25%;border:1px solid rgba(216,179,99,.10);animation:portalspin 28s linear infinite}
.entry-orbit::before,.entry-orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 22px rgba(216,179,99,.75)}
.entry-orbit::before{left:14%;top:16%}.entry-orbit::after{right:6%;bottom:30%}
.entry-button{position:relative;z-index:5;width:67%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(216,179,99,.2);background:rgba(6,6,5,.40);backdrop-filter:blur(7px);font-size:12px;letter-spacing:.30em;text-transform:uppercase;transition:background .45s ease,color .45s ease,transform .55s var(--ease-out),box-shadow .45s ease}
.entry-button::after{content:"";position:absolute;inset:15%;border-radius:50%;border:1px solid transparent;transition:border-color .45s ease,transform .55s var(--ease-out)}
.entry-button:hover{background:rgba(216,179,99,.90);color:#090907;transform:scale(1.025);box-shadow:0 0 60px rgba(216,179,99,.13)}
.entry-button:hover::after{border-color:rgba(8,8,6,.25);transform:scale(1.04)}
.entry-caption{position:absolute;bottom:6.5vh;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:rgba(242,238,229,.42)}
.entry-screen.entering .entry-ring{opacity:0;transform:scale(.92);filter:blur(4px);transition:opacity 1s ease,transform 1.35s ease,filter 1s ease}
@keyframes portalspin{to{transform:rotate(360deg)}}

/* heroes */
.hero{position:relative;min-height:78svh;overflow:hidden;background:#111;isolation:isolate}
.hero.home-hero{min-height:100svh}
.hero-media{position:absolute;inset:-6%;width:112%;height:112%;max-width:none;object-fit:cover;filter:saturate(.78) contrast(1.06) brightness(.67);transform:translate3d(calc(var(--mx,0) * 10px),calc(var(--my,0) * 8px + var(--hero-y,0px)),0) scale(1.035);will-change:transform;transition:filter .45s ease}
.home-hero .hero-media{inset:-14%;width:128%;height:128%;transform:translate3d(calc(var(--mx,0) * 12px),calc(var(--my,0) * 9px + var(--hero-y,0px)),0) scale(1.035);object-position:center 43%;filter:saturate(.82) contrast(1.07) brightness(.70)}
.hero::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(4,4,3,.46),rgba(4,4,3,.03) 34%,rgba(4,4,3,.17) 64%,rgba(4,4,3,.86) 100%)}
.home-hero::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(5,5,4,.55) 0%,transparent 18%,transparent 82%,rgba(5,5,4,.62) 100%);pointer-events:none}
.home-hero::after{background:linear-gradient(180deg,rgba(3,3,2,.28),transparent 35%,rgba(3,3,2,.12) 62%,rgba(3,3,2,.66) 100%)}
.hero-content{position:relative;z-index:2;min-height:78svh;max-width:var(--max);margin:auto;padding:calc(var(--header-h) + 100px) var(--pad) clamp(70px,7vw,110px);display:flex;flex-direction:column;justify-content:flex-end}
.hero-kicker{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 20px;opacity:.92}
.hero h1{font-weight:400;font-size:clamp(57px,8.5vw,135px);line-height:.88;letter-spacing:-.06em;margin:0;max-width:1180px;text-wrap:balance}
.hero h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--gold);font-style:italic}
.hero-lead{max-width:670px;font-size:18px;line-height:1.7;color:#ded8ce;margin:30px 0 0}
.home-hero .hero-content{display:none}
.hero-scrollmark{position:absolute;z-index:3;left:50%;bottom:30px;width:42px;height:42px;border:1px solid rgba(242,238,229,.32);border-radius:50%;transform:translateX(-50%);display:grid;place-items:center}
.hero-scrollmark::before{content:"";width:1px;height:14px;background:var(--gold);animation:scrollpulse 1.9s ease-in-out infinite}
@keyframes scrollpulse{0%,100%{transform:translateY(-3px);opacity:.32}50%{transform:translateY(4px);opacity:1}}

/* universal content */
.section,.page-section{padding:clamp(88px,9vw,154px) var(--pad)}
.section-inner,.page-grid,.editorial-grid,.detail-strip,.room-tabs,.gallery,.affiliation-list,.membership-cards,.contact-grid{max-width:var(--max);margin-left:auto;margin-right:auto}
.eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin:0 0 22px}
.section-title{font-size:clamp(44px,6.2vw,94px);line-height:.96;letter-spacing:-.052em;font-weight:400;margin:0;max-width:1060px;text-wrap:balance}
.section-title em{font-family:Georgia,'Times New Roman',serif;font-style:italic;color:var(--gold);font-weight:400}
.section-copy{font-size:17px;line-height:1.8;color:var(--muted);max-width:640px;margin:28px 0 0}

/* homepage experience deck */
.experience-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:7vw;align-items:end;margin-bottom:58px}
.experience-intro .section-copy{margin:0}
.experience-grid{display:flex;min-height:clamp(520px,58vw,690px);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);overflow:hidden}
.experience-card{position:relative;flex:1 1 0;min-width:0;overflow:hidden;background:#111;isolation:isolate;border-right:1px solid var(--line-soft);transition:flex .8s var(--ease-out),filter .55s ease;transform:translateZ(0)}
.experience-card:last-child{border-right:0}
.experience-card img{position:absolute;inset:-4%;width:108%;height:108%;max-width:none;object-fit:cover;filter:saturate(.68) brightness(.54);transform:scale(1.03);transition:transform 1.05s var(--ease-out),filter .7s ease}
.experience-card::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(6,6,5,.08),rgba(6,6,5,.08) 42%,rgba(6,6,5,.92) 100%)}
.experience-card::before{content:"";position:absolute;z-index:2;inset:0;background:radial-gradient(circle at var(--cx,50%) var(--cy,50%),rgba(216,179,99,.13),transparent 30%);opacity:0;transition:opacity .35s ease;pointer-events:none}
.experience-card-content{position:absolute;z-index:3;left:clamp(24px,2.2vw,38px);right:clamp(24px,2.2vw,38px);bottom:clamp(26px,3vw,44px);transform:translateY(7px);transition:transform .55s var(--ease-out)}
.experience-card h3{font-size:clamp(31px,3.15vw,50px);font-weight:400;letter-spacing:-.04em;margin:0 0 12px}
.experience-card p{font-size:14px;line-height:1.65;color:#cbc5b9;margin:0;max-width:290px;opacity:.66;transform:translateY(7px);transition:opacity .45s ease,transform .55s var(--ease-out)}
.experience-grid:has(.experience-card:hover) .experience-card{flex:.88}
.experience-grid .experience-card:hover{flex:1.42}
.experience-card:hover img{transform:scale(1.07);filter:saturate(.90) brightness(.68)}
.experience-card:hover::before{opacity:1}
.experience-card:hover .experience-card-content,.experience-card:hover p{transform:none}
.experience-card:hover p{opacity:1}
.experience-card:hover h3{color:var(--gold)}

/* kinetic line */
.kinetic{overflow:hidden;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:20px 0;background:#090908}
.kinetic-track{width:max-content;display:flex;gap:48px;align-items:center;animation:marquee 34s linear infinite;will-change:transform}
.kinetic:hover .kinetic-track{animation-play-state:paused}
.kinetic-track span{font-size:clamp(34px,4.7vw,70px);line-height:1;letter-spacing:-.045em;white-space:nowrap;color:rgba(242,238,229,.83)}
.kinetic-track i{width:8px;height:8px;border-radius:50%;background:var(--gold);display:block;opacity:.8}
@keyframes marquee{to{transform:translateX(-50%)}}

/* feature */
.feature-band{padding:0 var(--pad) clamp(92px,9vw,158px)}
.feature-band-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);min-height:min(760px,76svh);border:1px solid var(--line-soft);background:#0b0b09;overflow:hidden;position:relative}
.feature-media{position:relative;overflow:hidden;min-height:580px;isolation:isolate}
.feature-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 56%,rgba(7,7,6,.55)),linear-gradient(180deg,transparent 60%,rgba(7,7,6,.48));pointer-events:none}
.feature-media::before{content:"";position:absolute;z-index:2;width:min(40vw,560px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(216,179,99,.38);right:-16%;bottom:-26%;animation:slowspin 25s linear infinite;box-shadow:0 0 0 38px rgba(216,179,99,.02),0 0 0 80px rgba(216,179,99,.012);pointer-events:none}
.feature-media img{position:absolute;inset:-5%;width:110%;height:110%;max-width:none;object-fit:cover;filter:saturate(.76) brightness(.67);transform:translateY(calc(var(--feature-shift,0) * 26px)) scale(1.04);transition:filter .55s ease;will-change:transform}
.feature-band-inner:hover .feature-media img{filter:saturate(.92) brightness(.75)}
.feature-copy{padding:clamp(44px,6vw,94px);display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--line-soft);position:relative;z-index:3}
.feature-copy h2{font-size:clamp(42px,5.3vw,83px);line-height:.98;letter-spacing:-.055em;font-weight:400;margin:0 0 27px;text-wrap:balance}
.feature-copy p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 34px;max-width:530px}
.text-link{display:inline-flex;width:max-content;align-items:center;border-bottom:1px solid rgba(216,179,99,.65);padding:0 0 7px;font-size:15px;letter-spacing:.025em;transition:color .3s ease,border-color .3s ease,transform .35s var(--ease)}
.text-link:hover{color:var(--gold);border-color:var(--gold);transform:translateX(4px)}

.split-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px}
.split-tile{min-height:500px;position:relative;overflow:hidden;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line-soft);isolation:isolate;transition:transform .55s var(--ease-out),border-color .35s ease}
.split-tile img{position:absolute;z-index:-2;inset:-4%;width:108%;height:108%;max-width:none;object-fit:cover;filter:saturate(.68) brightness(.48);transition:transform .85s var(--ease-out),filter .55s ease}
.split-tile::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,transparent 32%,rgba(5,5,4,.9))}
.split-tile h3{font-size:clamp(29px,3vw,43px);font-weight:400;letter-spacing:-.035em;margin:0 0 14px}
.split-tile p{color:#c7c1b5;line-height:1.65;margin:0;max-width:390px}
.split-tile:hover{transform:translateY(-7px);border-color:rgba(216,179,99,.42)}
.split-tile:hover img{transform:scale(1.055);filter:saturate(.88) brightness(.59)}

.membership-band{background:var(--paper);color:#0a0a08;padding:clamp(100px,10vw,170px) var(--pad);position:relative;overflow:hidden}
.membership-band::before,.membership-band::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.membership-band::before{width:min(72vw,1100px);aspect-ratio:1;border:1px solid rgba(10,10,8,.14);right:-27vw;top:-39vw;animation:slowspin 36s linear infinite}
.membership-band::after{width:min(34vw,520px);aspect-ratio:1;border:1px dashed rgba(158,124,62,.28);right:-7vw;top:15%;animation:slowspin 23s linear infinite reverse}
.membership-band-inner{position:relative;z-index:2;max-width:var(--max);margin:auto;display:flex;justify-content:space-between;gap:54px;align-items:end}
.membership-band .eyebrow{color:#806125}.membership-band .section-title{max-width:850px}.membership-band .text-link{color:#0a0a08;border-color:#806125}

/* internal pages */
.page-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}
.page-intro{grid-column:1/7}.page-intro.side{grid-column:8/13;padding-top:42px}
.page-intro.side p{color:var(--muted);font-size:17px;line-height:1.85;margin:0}
.editorial-grid{margin-top:70px;display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.editorial-card{position:relative;min-height:510px;overflow:hidden;background:#0e0e0c;border:1px solid var(--line-soft);isolation:isolate;transform:translateZ(0);transition:border-color .4s ease,transform .55s var(--ease-out)}
.editorial-card.wide{grid-column:span 8}.editorial-card.narrow{grid-column:span 4}.editorial-card.half{grid-column:span 6}
.editorial-card img{position:absolute;z-index:-2;inset:-5%;width:110%;height:110%;max-width:none;object-fit:cover;filter:saturate(.68) brightness(.50);transform:translate3d(calc(var(--tilt-x,0) * -8px),calc(var(--tilt-y,0) * -6px),0) scale(1.035);transition:filter .55s ease,transform .65s var(--ease-out)}
.editorial-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(4,4,3,.06),rgba(4,4,3,.12) 36%,rgba(4,4,3,.93) 100%)}
.editorial-card-content{position:absolute;left:clamp(26px,2.7vw,42px);right:clamp(26px,2.7vw,42px);bottom:clamp(27px,3vw,42px)}
.editorial-card h3{font-size:clamp(31px,3.25vw,49px);font-weight:400;letter-spacing:-.04em;margin:0 0 12px}
.editorial-card p{color:#cbc4b8;line-height:1.68;max-width:530px;margin:0}
.editorial-card:hover{transform:translateY(-5px);border-color:rgba(216,179,99,.42)}
.editorial-card:hover img{filter:saturate(.9) brightness(.64);transform:translate3d(calc(var(--tilt-x,0) * -13px),calc(var(--tilt-y,0) * -10px),0) scale(1.07)}

.detail-strip{border-top:1px solid var(--line-soft)}
.detail-row{display:grid;grid-template-columns:minmax(235px,.55fr) 1.45fr;gap:60px;padding:44px 0;border-bottom:1px solid var(--line-soft);position:relative;transition:padding-left .45s var(--ease-out)}
.detail-row::before{content:"";position:absolute;left:0;top:-1px;height:1px;width:0;background:var(--gold);transition:width .6s var(--ease-out)}
.detail-row:hover{padding-left:14px}.detail-row:hover::before{width:100%}
.detail-row h3{font-weight:400;font-size:31px;letter-spacing:-.025em;margin:0}.detail-row p{color:var(--muted);font-size:16px;line-height:1.82;max-width:800px;margin:0}

.room-tabs{margin-top:64px;border-top:1px solid var(--line-soft)}
.room-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);min-height:650px;border-bottom:1px solid var(--line-soft);overflow:hidden}
.room-photo{position:relative;overflow:hidden}.room-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 68%,rgba(7,7,6,.25))}
.room-photo img{position:absolute;inset:-5%;width:110%;height:110%;max-width:none;object-fit:cover;filter:saturate(.74) brightness(.67);transition:transform 1.1s var(--ease-out),filter .55s ease}
.room-panel:hover .room-photo img{transform:scale(1.045);filter:saturate(.9) brightness(.76)}
.room-info{display:flex;flex-direction:column;justify-content:center;padding:clamp(46px,6vw,94px);border-left:1px solid var(--line-soft);background:linear-gradient(135deg,#0a0a08,#10100d)}
.room-info h3{font-size:clamp(42px,5.1vw,76px);font-weight:400;letter-spacing:-.05em;margin:0 0 22px}.room-info p{color:var(--muted);font-size:16px;line-height:1.8;margin:0 0 24px}.room-meta{display:flex;flex-wrap:wrap;gap:12px 28px;color:#d6cec2;font-size:13px;letter-spacing:.04em;margin-bottom:30px}

.gallery{margin-top:62px;columns:3;column-gap:16px}.gallery figure{margin:0 0 16px;break-inside:avoid;overflow:hidden;background:#111;position:relative}.gallery figure::after{content:"";position:absolute;inset:0;border:1px solid transparent;transition:border-color .35s ease;pointer-events:none}.gallery img{width:100%;height:auto;filter:saturate(.72) brightness(.72);transition:transform .85s var(--ease-out),filter .45s ease}.gallery figure:hover::after{border-color:rgba(216,179,99,.35)}.gallery figure:hover img{transform:scale(1.04);filter:saturate(.93) brightness(.84)}

.affiliation-list{margin-top:64px;border-top:1px solid var(--line-soft)}
.affiliation-item{display:grid;grid-template-columns:1fr minmax(220px,.48fr);align-items:center;gap:40px;padding:31px 0;border-bottom:1px solid var(--line-soft);position:relative;overflow:hidden;transition:padding-left .45s var(--ease-out),color .3s ease}
.affiliation-item::after{content:"";position:absolute;left:-20%;bottom:-80%;width:36%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(216,179,99,.1),transparent 67%);transition:left .65s var(--ease-out)}
.affiliation-item h3{font-size:clamp(29px,3.25vw,49px);font-weight:400;margin:0;letter-spacing:-.04em}.affiliation-item p{color:var(--muted);line-height:1.6;margin:0}.affiliation-item:hover{padding-left:16px;color:var(--gold)}.affiliation-item:hover::after{left:12%}

.membership-cards{margin-top:70px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.membership-card{min-height:500px;border:1px solid var(--line-soft);padding:clamp(38px,5vw,76px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:linear-gradient(145deg,#0a0a08,#11110e);transition:transform .55s var(--ease-out),border-color .35s ease}
.membership-card::after{content:"";position:absolute;width:440px;aspect-ratio:1;border:1px solid rgba(216,179,99,.14);border-radius:50%;right:-190px;bottom:-190px;animation:slowspin 32s linear infinite}.membership-card h3{font-size:clamp(52px,6vw,92px);font-weight:400;letter-spacing:-.055em;margin:0}.membership-card p{color:var(--muted);line-height:1.78;max-width:520px}.membership-card:hover{transform:translateY(-6px);border-color:rgba(216,179,99,.44)}

.contact-grid{margin-top:64px;display:grid;grid-template-columns:.76fr 1.24fr;gap:8vw}.contact-lines{border-top:1px solid var(--line-soft)}.contact-line{padding:28px 0;border-bottom:1px solid var(--line-soft)}.contact-line small{display:block;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);font-size:10px;margin-bottom:10px}.contact-line span,.contact-line a{font-size:22px;line-height:1.4}.form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:9px}.field.full{grid-column:1/-1}.field label{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.field input,.field textarea,.field select{background:transparent;border:0;border-bottom:1px solid rgba(242,238,229,.22);border-radius:0;color:var(--paper);padding:14px 0;outline:0;transition:border-color .25s ease}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}.field textarea{min-height:150px;resize:vertical}.form button{justify-self:start;margin-top:18px;border:1px solid var(--gold);background:transparent;padding:14px 28px;transition:background .3s ease,color .3s ease,transform .35s var(--ease)}.form button:hover{background:var(--gold);color:#090907;transform:translateY(-2px)}

.site-footer{border-top:1px solid var(--line-soft);padding:64px var(--pad) 36px;background:#060605}.footer-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 2fr;gap:8vw}.footer-brand img{height:92px;width:auto;margin-bottom:25px}.footer-brand p{color:var(--muted);line-height:1.68;max-width:340px;margin:0}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.footer-group h4{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 20px}.footer-group a{display:block;color:#c9c2b6;margin:0 0 13px;font-size:15px;transition:color .25s ease,transform .35s var(--ease)}.footer-group a:hover{color:var(--paper);transform:translateX(3px)}.footer-bottom{max-width:var(--max);margin:48px auto 0;padding-top:22px;border-top:1px solid rgba(216,179,99,.10);display:flex;justify-content:space-between;gap:20px;color:#746e65;font-size:11px}

/* reveal system */
.reveal{opacity:0;transform:translateY(32px);filter:blur(5px);transition:opacity .9s ease,transform .95s var(--ease-out),filter .8s ease}
.reveal.in{opacity:1;transform:none;filter:none}

/* responsive */
@media (max-width:1180px){
  .site-header{grid-template-columns:105px 1fr 105px}.primary-nav{gap:20px}.primary-nav a{font-size:15px}
  .feature-band-inner{grid-template-columns:1fr}.feature-copy{border-left:0;border-top:1px solid var(--line-soft)}.feature-media{min-height:62svh}
  .editorial-card.wide,.editorial-card.narrow{grid-column:span 6}
}
@media (max-width:980px){
  :root{--header-h:82px}
  .site-header{grid-template-columns:1fr auto;padding-left:24px;padding-right:24px}.brand{width:66px;height:70px}.brand img{height:64px}.primary-nav{display:none}.header-tools{grid-column:2}
  .menu-panel{grid-template-columns:1fr;padding:calc(var(--header-h) + 32px) 28px 32px;overflow-y:auto}.menu-links{grid-template-columns:1fr;align-self:start}.menu-links a{font-size:clamp(38px,8vw,62px);padding:5px 0}.menu-aside{display:none}
  .hero,.hero-content{min-height:72svh}.hero h1{font-size:clamp(52px,13vw,90px)}.hero-lead{font-size:16px}.home-hero .hero-media{inset:-21%;width:142%;height:142%}
  .experience-intro{grid-template-columns:1fr;gap:28px}.experience-intro .section-copy{max-width:560px}
  .experience-grid{overflow-x:auto;min-height:0;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:none;border-left:0;border-right:0;padding:0 5vw;gap:14px}.experience-grid::-webkit-scrollbar{display:none}.experience-card,.experience-grid:has(.experience-card:hover) .experience-card,.experience-grid .experience-card:hover{flex:0 0 min(76vw,560px);min-height:62svh;scroll-snap-align:center;border:1px solid var(--line-soft)}
  .split-tiles{grid-template-columns:1fr}.split-tile{min-height:48svh}
  .page-grid{display:block}.page-intro.side{padding-top:30px}.editorial-grid{grid-template-columns:1fr}.editorial-card.wide,.editorial-card.narrow,.editorial-card.half{grid-column:auto;min-height:55svh}
  .detail-row{grid-template-columns:1fr;gap:14px;padding:34px 0}.detail-row:hover{padding-left:0}
  .room-panel{grid-template-columns:1fr}.room-photo{min-height:56svh}.room-info{border-left:0;border-top:1px solid var(--line-soft)}
  .gallery{columns:2}.affiliation-item{grid-template-columns:1fr;gap:12px}.membership-cards{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.footer-links{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  :root{--pad:22px;--header-h:76px}
  .site-header{padding-left:18px;padding-right:18px}.brand{width:58px}.brand img{height:56px}.menu-toggle{font-size:16px}
  .menu-panel{padding-left:22px;padding-right:22px}.menu-links a{font-size:clamp(36px,12vw,52px)}
  .entry-ring{width:min(68vw,300px)}.entry-caption{bottom:4.5vh;font-size:9px}.entry-screen.ready .entry-photo{clip-path:circle(min(34vw,150px) at 50% 50%)}
  .hero{min-height:68svh}.hero-content{min-height:68svh;padding-top:calc(var(--header-h) + 75px);padding-bottom:54px}.hero h1{font-size:clamp(47px,14.2vw,72px);line-height:.9}.hero-lead{font-size:15px;line-height:1.68}.hero-kicker{font-size:10px}.home-hero{min-height:94svh}.home-hero .hero-media{inset:-26%;width:152%;height:152%;object-position:52% 44%}
  .hero-scrollmark{bottom:20px;width:38px;height:38px}
  .section,.page-section{padding-top:78px;padding-bottom:78px}.section-title{font-size:clamp(42px,13.5vw,66px)}.section-copy{font-size:16px}
  .experience-grid{padding-left:22px;padding-right:22px}.experience-card,.experience-grid:has(.experience-card:hover) .experience-card,.experience-grid .experience-card:hover{flex-basis:84vw;min-height:62svh}.experience-card p{opacity:1;transform:none}
  .kinetic{padding:16px 0}.kinetic-track{gap:30px}.kinetic-track span{font-size:40px}
  .feature-band{padding-left:0;padding-right:0}.feature-band-inner{border-left:0;border-right:0}.feature-media{min-height:58svh}.feature-copy{padding:44px 22px}.feature-copy h2{font-size:clamp(42px,12vw,64px)}
  .split-tile{min-height:56svh;padding:26px}
  .membership-band-inner{display:block}.membership-band .text-link{margin-top:36px}.membership-band::before{width:130vw;right:-68vw;top:-40vw}.membership-band::after{display:none}
  .editorial-card{min-height:58svh}.editorial-card-content{left:24px;right:24px;bottom:25px}.detail-row h3{font-size:28px}
  .room-photo{min-height:50svh}.room-info{padding:40px 22px}.gallery{columns:1}.membership-card{min-height:430px;padding:34px 24px}.contact-line span,.contact-line a{font-size:19px}.form{grid-template-columns:1fr}.field.full{grid-column:auto}
  .footer-links{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}
}
@media (hover:none){.experience-card:hover,.split-tile:hover,.editorial-card:hover,.membership-card:hover{transform:none}.detail-row:hover{padding-left:0}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-media,.editorial-card img{transform:none!important}}

/* ==========================================================
   Premium V6 enhancements — direct-open, interactive UI
   ========================================================== */
:root{
  --ivory:#f4efe5;
  --gold-bright:#e1bd6e;
  --glass:rgba(12,12,10,.68);
}

/* Direct opening — no intro gate */
body{opacity:1}
.site-header{background:linear-gradient(180deg,rgba(4,4,3,.58),rgba(4,4,3,.14) 68%,transparent);}
.site-header.scrolled{background:rgba(7,7,6,.80)}
.home-hero.direct-hero{min-height:100svh}
.direct-hero .hero-media{animation:heroArrival 1.8s var(--ease-out) both;filter:saturate(.82) contrast(1.08) brightness(.64)}
@keyframes heroArrival{from{transform:translate3d(0,0,0) scale(1.105);filter:saturate(.55) contrast(1.12) brightness(.38)}to{transform:translate3d(calc(var(--mx,0) * 10px),calc(var(--my,0) * 8px + var(--hero-y,0px)),0) scale(1.035);filter:saturate(.82) contrast(1.08) brightness(.64)}}
.hero-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 58% 52%,transparent 0 28%,rgba(3,3,2,.08) 50%,rgba(3,3,2,.5) 100%),linear-gradient(180deg,rgba(3,3,2,.26),transparent 35%,rgba(3,3,2,.34))}
.hero-orbit{position:absolute;z-index:2;width:min(42vw,670px);aspect-ratio:1;border:1px solid rgba(216,179,99,.12);border-radius:50%;left:50%;top:52%;translate:-50% -50%;pointer-events:none;animation:orbitFloat 10s ease-in-out infinite alternate}
.hero-orbit::before{content:"";position:absolute;inset:8%;border-radius:50%;border:1px dashed rgba(216,179,99,.16);animation:slowspin 26s linear infinite}
.hero-orbit span{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 24px rgba(216,179,99,.7)}
.hero-orbit span:first-child{left:17%;top:18%;animation:slowspin 14s linear infinite}.hero-orbit span:last-child{right:10%;bottom:28%;animation:slowspin 18s linear infinite reverse}
@keyframes orbitFloat{from{transform:translateY(-5px) scale(.98);opacity:.62}to{transform:translateY(8px) scale(1.02);opacity:.95}}
.hero-minimal{position:absolute;z-index:4;left:var(--pad);bottom:clamp(34px,5.5vh,72px);display:flex;align-items:center;gap:30px;color:rgba(244,239,229,.74);font-size:10px;text-transform:uppercase;letter-spacing:.2em;animation:fadeUp 1.1s .65s var(--ease-out) both}
.hero-minimal p,.hero-minimal span{margin:0}.hero-minimal span{color:rgba(244,239,229,.40)}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Premium quick-actions ribbon */
.quick-actions-wrap{position:relative;z-index:8;margin-top:-35px;padding:0 var(--pad);pointer-events:none}
.quick-actions{max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(8,8,7,.86);backdrop-filter:blur(22px) saturate(120%);border:1px solid rgba(216,179,99,.18);box-shadow:0 24px 80px rgba(0,0,0,.25);pointer-events:auto}
.quick-action{position:relative;padding:22px 24px;text-align:center;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:#d8d1c5;border-right:1px solid var(--line-soft);transition:background .35s ease,color .35s ease,letter-spacing .4s var(--ease)}
.quick-action:last-child{border-right:0}.quick-action::after{content:"";position:absolute;left:22%;right:22%;bottom:10px;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .4s var(--ease-out)}
.quick-action:hover{background:rgba(216,179,99,.07);color:var(--paper);letter-spacing:.16em}.quick-action:hover::after{transform:scaleX(1)}

/* Reusable premium CTAs */
.premium-btn{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:0 22px;border:1px solid rgba(216,179,99,.74);color:var(--paper);font-size:11px;letter-spacing:.11em;text-transform:uppercase;background:rgba(216,179,99,.03);transition:background .35s ease,color .35s ease,transform .4s var(--ease-out),box-shadow .4s ease;cursor:pointer}
.premium-btn:hover{background:var(--gold);color:#090907;transform:translateY(-2px);box-shadow:0 18px 46px rgba(216,179,99,.12)}
.premium-btn.ghost{border-color:rgba(242,238,229,.25);background:rgba(7,7,6,.18)}
.premium-btn.ghost:hover{border-color:rgba(242,238,229,.5);background:rgba(242,238,229,.08);color:var(--paper)}
.premium-btn.dark{color:#171511;border-color:#171511;background:transparent}.premium-btn.dark:hover{background:#171511;color:#f4efe5}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}

/* Global enquiry band */
.page-enquiry-band{padding:clamp(70px,8vw,126px) var(--pad);position:relative;overflow:hidden;background:linear-gradient(135deg,#0c0c09,#080806);border-top:1px solid var(--line-soft)}
.page-enquiry-band::before{content:"";position:absolute;width:min(58vw,780px);aspect-ratio:1;border:1px solid rgba(216,179,99,.12);border-radius:50%;right:-20vw;top:-28vw;animation:slowspin 38s linear infinite}
.page-enquiry-inner{max-width:var(--max);margin:auto;display:flex;align-items:end;justify-content:space-between;gap:42px;position:relative;z-index:2}
.page-enquiry-inner h2{font-size:clamp(46px,6.4vw,98px);font-weight:400;letter-spacing:-.055em;line-height:.9;margin:0;max-width:900px}.page-enquiry-inner h2 em{font-family:Georgia,serif;font-weight:400;color:var(--gold);}

/* Floating contextual enquiry */
.floating-enquiry{position:fixed;z-index:76;right:22px;bottom:22px;height:52px;padding:0 18px 0 20px;border-radius:28px;background:rgba(9,9,7,.88);border:1px solid rgba(216,179,99,.38);backdrop-filter:blur(18px);display:flex;align-items:center;gap:11px;color:var(--paper);box-shadow:0 14px 42px rgba(0,0,0,.28);transition:transform .4s var(--ease-out),background .35s ease,border-color .35s ease}
.floating-enquiry span{font-size:11px;text-transform:uppercase;letter-spacing:.13em}.floating-enquiry i{width:9px;height:9px;border:1px solid var(--gold);border-radius:50%;position:relative}.floating-enquiry i::after{content:"";position:absolute;inset:2px;border-radius:50%;background:var(--gold);animation:pulseDot 1.8s ease-in-out infinite}
.floating-enquiry:hover{transform:translateY(-4px);background:rgba(18,17,12,.96);border-color:var(--gold)}
@keyframes pulseDot{0%,100%{opacity:.35;transform:scale(.65)}50%{opacity:1;transform:scale(1)}}
body.menu-open .floating-enquiry{opacity:0;pointer-events:none}

/* Home events preview */
.events-preview{padding-top:30px}.events-preview-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:44px}.event-strip{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:14px}
.event-teaser{min-height:520px;position:relative;overflow:hidden;border:1px solid var(--line-soft);display:flex;align-items:flex-end;padding:30px;isolation:isolate;background:#0c0c0a}
.event-teaser img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.72) brightness(.58);transition:transform 1s var(--ease-out),filter .5s ease}
.event-teaser::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 30%,rgba(5,5,4,.84) 100%)}
.event-teaser span{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:var(--gold)}.event-teaser h3{font-weight:400;font-size:clamp(30px,3vw,49px);letter-spacing:-.04em;line-height:.94;margin:10px 0}.event-teaser p{margin:0;color:#b7afa4;line-height:1.6;max-width:420px}
.event-teaser:hover img{transform:scale(1.055);filter:saturate(.9) brightness(.67)}

/* Dining redesign */
.dining-hero .hero-media{object-position:center 55%}.dining-intro{padding-bottom:48px}.dining-pair{margin-top:58px;display:grid;grid-template-columns:1.35fr .65fr;gap:14px}
.dining-story{min-height:560px;position:relative;overflow:hidden;display:flex;align-items:end;padding:38px;border:1px solid var(--line-soft);isolation:isolate}.dining-story.feature{min-height:620px}.dining-story img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.7) brightness(.54);transition:transform 1.1s var(--ease-out),filter .5s ease}.dining-story::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 24%,rgba(5,5,4,.85) 100%)}
.dining-story h3{font-size:clamp(42px,4.5vw,72px);font-weight:400;letter-spacing:-.05em;margin:5px 0 13px}.dining-story p{color:#c4bbae;line-height:1.65;max-width:560px;margin:0}.dining-story:hover img{transform:scale(1.04);filter:saturate(.9) brightness(.64)}
.pulse-menu-section{padding:clamp(76px,9vw,150px) var(--pad);background:#e9e3d9;color:#26231f;position:relative;overflow:hidden}.pulse-menu-section::before{content:"";position:absolute;width:620px;aspect-ratio:1;border:1px solid rgba(154,120,62,.15);border-radius:50%;right:-280px;top:-230px}.pulse-menu-shell{max-width:var(--max);margin:auto;position:relative;z-index:1}.pulse-menu-cover{display:grid;grid-template-columns:minmax(260px,.62fr) 1.38fr;gap:clamp(42px,7vw,110px);align-items:center;padding-bottom:80px;border-bottom:1px solid rgba(36,32,27,.13)}.pulse-menu-cover img{width:min(100%,470px);box-shadow:0 30px 70px rgba(65,52,32,.13)}.pulse-menu-cover h2{font-size:clamp(56px,8vw,120px);font-weight:400;letter-spacing:-.065em;line-height:.86;margin:8px 0 24px}.pulse-menu-cover p:not(.eyebrow){color:#6e675d;line-height:1.7;margin:0 0 28px}.pulse-menu-section .eyebrow{color:#9d793d}
.digital-menu{padding-top:58px}.menu-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:45px;position:sticky;top:78px;z-index:4;padding:12px 0;background:linear-gradient(180deg,#e9e3d9 75%,rgba(233,227,217,0))}.menu-tab{border:1px solid rgba(36,32,27,.18);background:transparent;color:#5b544b;padding:13px 18px;font-size:11px;letter-spacing:.10em;text-transform:uppercase;transition:.3s ease}.menu-tab:hover,.menu-tab.active{background:#25211d;color:#f1eadf;border-color:#25211d}
.menu-panel-content{display:none;grid-template-columns:repeat(3,1fr);gap:58px 42px;animation:menuFade .5s var(--ease-out) both}.menu-panel-content.active{display:grid}@keyframes menuFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.menu-category{min-width:0}.menu-category h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid rgba(154,120,62,.38);color:#2d2924}.menu-items{display:grid;gap:10px}.menu-item{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:baseline;font-size:14px;color:#555048;line-height:1.35}.menu-item span{min-width:0}.menu-item b{font-weight:500;color:#2e2a25;white-space:nowrap}

/* Event-wise page */
.event-page{padding-bottom:80px}.event-page-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:54px}.event-filter{display:flex;gap:8px;flex-wrap:wrap}.event-filter button{border:1px solid var(--line-soft);background:transparent;color:var(--muted);padding:12px 17px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;transition:.3s ease}.event-filter button:hover,.event-filter button.active{border-color:rgba(216,179,99,.55);color:var(--paper);background:rgba(216,179,99,.07)}
.event-list{display:grid;gap:16px}.event-card{display:grid;grid-template-columns:minmax(340px,.95fr) 1.05fr;min-height:520px;border:1px solid var(--line-soft);background:#0b0b09;overflow:hidden;transition:opacity .35s ease,transform .5s var(--ease-out),border-color .35s ease}.event-card[hidden]{display:none}.event-card:hover{border-color:rgba(216,179,99,.30);transform:translateY(-3px)}.event-card-featured{min-height:600px}.event-image{position:relative;overflow:hidden}.event-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.74) brightness(.68);transition:transform 1s var(--ease-out),filter .5s ease}.event-card:hover .event-image img{transform:scale(1.035);filter:saturate(.9) brightness(.74)}
.event-status{position:absolute;left:22px;top:22px;padding:9px 12px;background:rgba(216,179,99,.92);color:#090807;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.event-status.muted{background:rgba(10,10,8,.76);color:#d9d0c2;border:1px solid rgba(242,238,229,.14);backdrop-filter:blur(10px)}.event-info{padding:clamp(34px,5.2vw,82px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.event-type{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin:0 0 18px}.event-info h3{font-size:clamp(46px,6vw,92px);letter-spacing:-.06em;line-height:.86;font-weight:400;margin:0 0 28px}.event-info>p:not(.event-type){color:var(--muted);font-size:16px;line-height:1.75;max-width:610px;margin:0 0 28px}.event-meta{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:33px;color:#c5bcaf;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.event-gallery-section{padding:60px var(--pad) 120px;background:#050504}.event-gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:330px 330px;gap:12px}.event-gallery figure{margin:0;overflow:hidden;position:relative}.event-gallery figure:first-child{grid-row:1/3}.event-gallery figure:last-child{grid-column:2/4}.event-gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(.7);transition:transform .9s var(--ease-out),filter .45s ease}.event-gallery figure:hover img{transform:scale(1.04);filter:saturate(.9) brightness(.78)}

/* Contact form polish */
.whatsapp-enquiry-form button{border-color:rgba(216,179,99,.7)}
.form select option{background:#0b0b09;color:#f2eee5}

/* Slightly more premium text scale */
.primary-nav a{font-size:18px}
.menu-links a{letter-spacing:-.05em}
.text-link{font-size:12px;letter-spacing:.1em;text-transform:uppercase}

@media (max-width:1180px){
  .primary-nav a{font-size:16px}
  .event-strip{grid-template-columns:1fr 1fr}.event-teaser:first-child{grid-column:1/-1}
  .menu-panel-content{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
  .hero-orbit{width:min(66vw,520px)}.hero-minimal{left:24px;right:24px;gap:14px;justify-content:space-between}.hero-minimal span{display:none}
  .quick-actions-wrap{margin-top:-26px;padding:0 24px}.quick-actions{grid-template-columns:repeat(2,1fr)}.quick-action:nth-child(2){border-right:0}.quick-action:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}
  .events-preview-head,.event-page-head,.page-enquiry-inner{align-items:flex-start;flex-direction:column}.event-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}.event-strip::-webkit-scrollbar{display:none}.event-teaser{flex:0 0 min(78vw,600px);scroll-snap-align:center;min-height:560px}
  .dining-pair{grid-template-columns:1fr}.dining-story,.dining-story.feature{min-height:56svh}.pulse-menu-cover{grid-template-columns:1fr}.pulse-menu-cover img{max-width:380px}.menu-panel-content{grid-template-columns:1fr 1fr}
  .event-card,.event-card-featured{grid-template-columns:1fr;min-height:0}.event-image{min-height:56svh}.event-info{padding:44px 28px}.event-gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 300px}.event-gallery figure:first-child{grid-row:auto}.event-gallery figure:last-child{grid-column:1/3}
}
@media (max-width:640px){
  .hero-orbit{width:78vw;opacity:.56}.hero-minimal{bottom:28px;font-size:8.5px;letter-spacing:.17em}.quick-actions-wrap{padding:0 14px;margin-top:-18px}.quick-action{padding:18px 12px;font-size:10px}
  .floating-enquiry{right:14px;bottom:14px;height:48px;padding:0 15px}.floating-enquiry span{font-size:10px}
  .events-preview{padding-top:16px}.event-teaser{flex-basis:86vw;min-height:64svh;padding:24px}.event-teaser h3{font-size:36px}
  .hero-actions{gap:9px}.premium-btn{min-height:44px;padding:0 16px;font-size:10px}
  .dining-story,.dining-story.feature{min-height:60svh;padding:26px}.pulse-menu-section{padding-left:22px;padding-right:22px}.pulse-menu-cover{padding-bottom:54px}.pulse-menu-cover h2{font-size:58px}.menu-tabs{top:76px;display:flex;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.menu-tabs::-webkit-scrollbar{display:none}.menu-tab{white-space:nowrap}.menu-panel-content{grid-template-columns:1fr;gap:42px}.menu-category h3{font-size:26px}.menu-item{font-size:13px}
  .event-page-head{margin-bottom:34px}.event-filter{width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.event-filter::-webkit-scrollbar{display:none}.event-filter button{white-space:nowrap}.event-image{min-height:52svh}.event-info h3{font-size:48px}.event-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.event-gallery::-webkit-scrollbar{display:none}.event-gallery figure,.event-gallery figure:first-child,.event-gallery figure:last-child{flex:0 0 84vw;height:56svh;grid-column:auto;grid-row:auto;scroll-snap-align:center}
  .page-enquiry-inner h2{font-size:48px}.page-enquiry-band::before{width:120vw;right:-70vw;top:-44vw}
}
@media (prefers-reduced-motion:reduce){.direct-hero .hero-media,.hero-orbit,.hero-orbit::before,.floating-enquiry i::after{animation:none!important}}


/* V7 — cleaner direct hero and embedded contact map */
.home-hero::after{content:"";position:absolute;z-index:3;left:0;right:0;bottom:0;height:24%;pointer-events:none;background:linear-gradient(180deg,rgba(5,5,4,0),rgba(5,5,4,.38) 58%,rgba(5,5,4,.72));}
.home-hero .hero-scrollmark{z-index:5}
.map-section{padding:0 var(--pad) clamp(72px,10vw,150px)}
.map-shell{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.45fr);min-height:560px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:rgba(255,255,255,.015)}
.map-copy{padding:clamp(38px,5vw,74px) clamp(26px,4vw,60px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.map-copy .section-title{max-width:520px;margin:10px 0 18px}.map-copy>p:not(.eyebrow){max-width:460px;color:var(--muted);line-height:1.8;margin:0 0 28px}
.map-frame{min-height:560px;overflow:hidden;position:relative;background:#0b0b09}
.map-frame::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(216,179,99,.10)}
.map-frame iframe{width:100%;height:100%;min-height:560px;border:0;display:block;filter:saturate(.76) contrast(1.04) brightness(.82)}
@media(max-width:900px){.map-shell{grid-template-columns:1fr;min-height:auto}.map-copy{padding:42px 26px}.map-frame,.map-frame iframe{min-height:440px}}
@media(max-width:600px){.map-section{padding-left:14px;padding-right:14px}.map-frame,.map-frame iframe{min-height:360px}.map-copy{padding:34px 22px}}
