:root{
  --bg:#0a0a0a;--bg2:#0f0f0f;--panel:#141414;--panel2:#1a1a1a;--line:#242424;--line2:#343434;
  --gold:#c9a24b;--gold2:#e6cc86;--gold-dim:#7e652f;--bone:#f2efe8;--bone2:#d6d2c8;--muted:#9a958c;--plum:#19121c;
  --navh:68px;--barh:68px;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);--ease2:cubic-bezier(.77,0,.18,1);
}
*{box-sizing:border-box}
html{background:var(--bg);-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--bg);color:var(--bone);font-family:var(--sans);font-size:16px;line-height:1.6;padding-top:calc(var(--navh) + env(safe-area-inset-top));overflow-x:clip;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(1100px 600px at 90% -5%,rgba(201,162,75,.08),transparent 60%),radial-gradient(900px 700px at -10% 45%,rgba(70,36,80,.16),transparent 60%)}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1;margin:0;letter-spacing:-.012em}
p{margin:0}
[hidden]{display:none!important}
.wrap{width:min(1280px,100% - 48px);margin-inline:auto}
@media (max-width:640px){.wrap{width:min(1280px,100% - 32px)}}
.eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600;display:inline-flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--gold);opacity:.8;flex:0 0 auto}
.eyebrow.bare::before{display:none}
.eyebrow .dot{display:inline-block;width:3px;height:3px;background:var(--gold);border-radius:50%}
.lead{color:var(--bone2);font-size:17px;line-height:1.65;max-width:54ch}
.muted{color:var(--muted)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.icon{width:1em;height:1em;display:inline-block;vertical-align:-.15em;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.grain{position:absolute;inset:0;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
@media (pointer:coarse){.grain{display:none}}
.sec,.gd,.kitchen,.visit{content-visibility:auto;contain-intrinsic-size:auto 900px}

/* ---------- PRELOADER ---------- */
.pre{position:fixed;inset:0;z-index:100;background:var(--bg);display:grid;place-items:center;transition:opacity .6s var(--ease),visibility .6s}
.pre.done{opacity:0;visibility:hidden}
.pre .mk{width:84px;opacity:0;transform:translateY(10px) scale(.96);animation:preIn .9s var(--ease) .1s forwards}
.pre .ln{width:0;height:1px;background:var(--gold);margin-top:22px;animation:preLine 1s var(--ease2) .35s forwards}
.pre .wd{font-family:var(--serif);letter-spacing:.3em;font-size:13px;color:var(--bone2);margin-top:16px;opacity:0;animation:preIn .8s var(--ease) .55s forwards;text-transform:uppercase;padding-left:.3em}
@keyframes preIn{to{opacity:1;transform:none}}
@keyframes preLine{to{width:160px}}

/* ---------- CURSOR ---------- */
.cur{position:fixed;left:0;top:0;width:36px;height:36px;border:1px solid rgba(201,162,75,.7);border-radius:50%;pointer-events:none;z-index:99;transition:width .3s var(--ease),height .3s var(--ease),background .3s,opacity .3s;opacity:0;mix-blend-mode:difference}
.cur.on{opacity:1}.cur.hov{width:64px;height:64px;background:rgba(201,162,75,.12)}
@media (hover:none),(pointer:coarse){.cur{display:none}}

/* ---------- NAV ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top);padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));transition:border-color .4s}
.nav::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:100vh;background:var(--bg)}
.nav.scrolled{border-color:var(--line2)}
.nav-in{height:var(--navh);display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(1280px,100%);margin-inline:auto}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:36px;width:36px}
.brand .wm{font-family:var(--serif);font-size:23px;letter-spacing:.1em;font-weight:500;white-space:nowrap;line-height:1}
.brand .wm small{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.3em;color:var(--muted);font-weight:600;margin-top:4px}
.nav-links{display:flex;gap:30px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone2);font-weight:500}
.nav-links a{position:relative;padding:8px 0}
.nav-links a::after{content:"";position:absolute;left:0;bottom:2px;height:1px;width:0;background:var(--gold);transition:width .4s var(--ease)}
.nav-links a:hover::after,.nav-links a.on::after{width:100%}
.nav-links a.on{color:var(--gold2)}
@media (max-width:980px){.nav-links{display:none}.nav{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border-radius:3px;font-weight:600;font-size:14px;letter-spacing:.02em;transition:transform .3s var(--ease),background .3s,color .3s,border-color .3s,box-shadow .3s;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:transparent}
.btn:active{transform:translateY(1px)}
.btn-gold{background:linear-gradient(180deg,#d9b55f,#bf9740);color:#141008;box-shadow:0 10px 30px rgba(201,162,75,.18)}
.btn-gold:hover{background:linear-gradient(180deg,#e6c878,#c9a24b);box-shadow:0 14px 36px rgba(201,162,75,.28)}
.btn-line{border:1px solid var(--line2);color:var(--bone);background:rgba(255,255,255,.02)}
.btn-line:hover{border-color:var(--gold);color:var(--gold2)}
.btn-dd{background:#ff3008;color:#fff}.btn-dd:hover{background:#ff4b2a;box-shadow:0 14px 36px rgba(255,48,8,.25)}
.btn-ue{background:#06c167;color:#06160d}.btn-ue:hover{background:#25d57d;box-shadow:0 14px 36px rgba(6,193,103,.25)}
.btn .plogo{width:20px;height:20px;fill:currentColor;flex:0 0 auto}
.nav .btn{min-height:42px;padding:0 18px;font-size:13px}
.sheen::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:skewX(-20deg);transition:left .7s var(--ease)}
.sheen:hover::after{left:120%}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:calc(100svh - var(--navh) - env(safe-area-inset-top));display:grid;align-items:end;overflow:clip;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-1}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:78% 50%;transform:scale(1.06)}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(10,10,10,.96) 30%,rgba(10,10,10,.55) 52%,rgba(10,10,10,.08) 75%,rgba(10,10,10,0) 100%),linear-gradient(0deg,var(--bg) 0%,rgba(10,10,10,.6) 18%,rgba(10,10,10,0) 45%),linear-gradient(180deg,rgba(10,10,10,.5),rgba(10,10,10,0) 30%)}
.hero-in{position:relative;padding:72px 0 64px;display:grid;grid-template-columns:minmax(0,660px);align-items:end}
.hero h1{font-size:clamp(60px,9.2vw,150px);font-weight:400;letter-spacing:-.02em}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.hero h1 .ln span{display:block;transform:translateY(110%);transition:transform 1.2s var(--ease2)}
.hero h1 em{font-style:italic;color:var(--gold2)}
.ready .hero h1 .ln span{transform:none}
.ready .hero h1 .ln:nth-child(2) span{transition-delay:.12s}
.hero .lead{margin-top:26px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hero-meta{display:grid;grid-template-columns:repeat(3,auto);gap:14px 36px;margin-top:40px;padding-top:22px;border-top:1px solid rgba(201,162,75,.25);justify-content:start}
.hero-meta b{display:block;color:var(--bone);font-family:var(--serif);font-size:24px;font-weight:500;letter-spacing:0;line-height:1.1}
.hero-meta span{color:var(--muted);font-size:12.5px;display:block;margin-top:2px}
.hero-cap{position:absolute;right:max(24px,env(safe-area-inset-right));top:28px;text-align:right;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bone2);opacity:.85}
.hero-cap b{display:block;font-family:var(--serif);font-size:22px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--bone)}
.scroll-cue{position:absolute;left:50%;bottom:18px;width:1px;height:48px;background:linear-gradient(180deg,var(--gold),transparent);opacity:.8;animation:cue 2.2s ease-in-out infinite;transform-origin:top}
@keyframes cue{0%{transform:translateX(-50%) scaleY(0)}50%{transform:translateX(-50%) scaleY(1)}100%{transform:translateX(-50%) scaleY(0);transform-origin:bottom}}
@media (max-width:980px){
  .hero{min-height:0;display:block}
  .hero-bg{position:relative;height:min(58svh,520px);z-index:0}
  .hero-bg img{object-position:50% 45%;transform:none}
  .hero-bg::after{background:linear-gradient(0deg,var(--bg) 0%,rgba(10,10,10,.4) 32%,rgba(10,10,10,0) 62%),linear-gradient(180deg,rgba(10,10,10,.3),rgba(10,10,10,0) 25%)}
  .hero-in{grid-template-columns:1fr;gap:28px;padding:0 0 44px;margin-top:-72px}
  .hero h1{font-size:clamp(58px,16vw,110px)}
  .hero .lead{font-size:16px}
  .hero-cta .btn{flex:1 1 auto}
  .hero-meta{grid-template-columns:1fr 1fr;gap:14px 20px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
  .hero-meta b{font-size:21px}
  .hero-cap,.scroll-cue{display:none}
}

/* ---------- ORDER BAND ---------- */
.order-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2);position:relative}
.order-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.order-card{position:relative;padding:34px 30px 30px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:14px;min-height:220px;transition:background .4s;overflow:hidden;-webkit-tap-highlight-color:transparent}
.order-card:last-child{border-right:0}
.order-card::before{content:"";position:absolute;inset:0;background:radial-gradient(400px 200px at 20% 0%,rgba(201,162,75,.12),transparent 70%);opacity:0;transition:opacity .5s}
.order-card:hover::before{opacity:1}
.order-card.dd::before{background:radial-gradient(400px 200px at 20% 0%,rgba(255,48,8,.14),transparent 70%)}
.order-card.ue::before{background:radial-gradient(400px 200px at 20% 0%,rgba(6,193,103,.14),transparent 70%)}
.order-card .plogo{width:34px;height:34px;fill:var(--bone);position:relative}
.order-card h3{font-size:32px;position:relative}
.order-card p{color:var(--muted);font-size:14px;flex:1;position:relative;line-height:1.6}
.order-card .go{display:inline-flex;align-items:center;gap:8px;color:var(--gold2);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;position:relative}
.order-card .go .icon{transition:transform .35s var(--ease)}
.order-card:hover .go .icon{transform:translateX(6px)}
.order-card .state{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:8px;position:relative}
.order-card .state i{width:7px;height:7px;border-radius:50%;background:var(--muted);display:inline-block}
.order-card.live .state{color:#7ddc9a}.order-card.live .state i{background:#2bd882;box-shadow:0 0 0 4px rgba(43,216,130,.15)}
@media (max-width:980px){.order-grid{grid-template-columns:1fr}.order-card{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:24px 20px}.order-card:last-child{border-bottom:0}.order-card h3{font-size:28px}}

/* ---------- SECTIONS ---------- */
.sec{padding:112px 0;position:relative}
@media (max-width:700px){.sec{padding:64px 0}}
.sec-head{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;margin-bottom:48px}
.sec-head h2{font-size:clamp(44px,6vw,88px);margin-top:16px}
.sec-head .lead{max-width:40ch;font-size:15px}
@media (max-width:760px){.sec-head{grid-template-columns:1fr;margin-bottom:28px;gap:16px}}
.rule{display:flex;align-items:center;gap:18px;width:min(1280px,100% - 48px);margin:0 auto}
.rule i{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line2))}
.rule i:last-child{background:linear-gradient(90deg,var(--line2),transparent)}
.rule img{width:22px;opacity:.7}

/* ---------- MENU ---------- */
.menu-tabs{position:sticky;top:calc(var(--navh) + env(safe-area-inset-top));z-index:30;background:var(--bg);border-bottom:1px solid var(--line);margin-bottom:48px}
.menu-tabs .wrap{position:relative}
.menu-tabs .row{display:flex;gap:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:10px 0;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
.menu-tabs .row::-webkit-scrollbar{display:none}
.menu-tabs .wrap::after{content:"";position:absolute;right:0;top:0;bottom:0;width:48px;background:linear-gradient(90deg,transparent,var(--bg));pointer-events:none}
.tab{flex:0 0 auto;padding:11px 18px;border-radius:999px;border:1px solid transparent;font-size:13px;letter-spacing:.04em;color:var(--muted);transition:all .3s;min-height:42px;-webkit-tap-highlight-color:transparent}
.tab:hover{color:var(--bone)}
.tab.on{color:var(--gold2);border-color:var(--gold-dim);background:rgba(201,162,75,.08)}
.cat{padding:28px 0 64px;scroll-margin-top:calc(var(--navh) + 72px + env(safe-area-inset-top))}
.cat-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:28px;border-bottom:1px solid var(--line);padding-bottom:18px}
.cat-head h3{font-size:clamp(34px,4.2vw,56px);margin-top:10px}
.cat-head p{color:var(--muted);font-size:14px;max-width:40ch;text-align:right}
@media (max-width:760px){.cat{padding:16px 0 40px}.cat-head{flex-direction:column;align-items:start;gap:8px;margin-bottom:18px}.cat-head p{text-align:left}}
.dish-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.dish{position:relative;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:transform .5s var(--ease),border-color .4s,box-shadow .5s;cursor:pointer;-webkit-tap-highlight-color:transparent}
.dish::after{content:"";position:absolute;inset:0;border-radius:6px;box-shadow:inset 0 0 0 1px rgba(201,162,75,0);transition:box-shadow .4s;pointer-events:none}
.dish:hover{transform:translateY(-5px);border-color:var(--line2);box-shadow:0 30px 60px rgba(0,0,0,.55)}
.dish:hover::after{box-shadow:inset 0 0 0 1px rgba(201,162,75,.35)}
.dish .ph{aspect-ratio:4/3;overflow:hidden;position:relative;background:#0e0e0e}
.dish .ph img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.dish:hover .ph img{transform:scale(1.06)}
.dish .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,0) 60%,rgba(10,10,10,.5));opacity:.9}
.dish .ph .tag{position:absolute;top:12px;left:12px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding:6px 9px;background:rgba(10,10,10,.85);border:1px solid rgba(201,162,75,.45);color:var(--gold2);z-index:1}
.dish .body{padding:20px 20px 16px;display:flex;flex-direction:column;gap:10px;flex:1}
.dish h4{font-size:27px;display:flex;justify-content:space-between;gap:12px;align-items:baseline;line-height:1.05}
.dish h4 .price{font-size:20px;color:var(--gold2);white-space:nowrap;font-variant-numeric:tabular-nums}
.dish p{color:var(--muted);font-size:14px;line-height:1.55;flex:1}
.dish .opts{display:flex;flex-wrap:wrap;gap:6px}
.dish .opts span{font-size:11px;letter-spacing:.06em;color:var(--bone2);border:1px solid var(--line2);padding:4px 8px;border-radius:3px}
.dish .act{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding-top:12px;border-top:1px solid var(--line)}
.dish .act .diet{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.dish .act button,.dish .act .go{display:inline-flex;align-items:center;gap:8px;color:var(--gold2);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;min-height:42px;padding:0 4px}
.dish .act button .icon,.dish .act .go .icon{transition:transform .35s var(--ease)}
.dish .act button:hover .icon,.dish:hover .act .go .icon{transform:translateX(5px)}
/* phone: vertical list, no horizontal scrollers */
@media (max-width:640px){
  .dish-grid{grid-template-columns:1fr;gap:10px}
  .dish{flex-direction:row;align-items:stretch;min-height:124px}
  .dish:hover{transform:none;box-shadow:none}
  .dish .ph{aspect-ratio:1;width:118px;flex:0 0 118px}
  .dish .ph::after{display:none}
  .dish .ph .tag{top:8px;left:8px;padding:4px 6px;font-size:9px}
  .dish .body{padding:12px 14px 10px;gap:6px;min-width:0}
  .dish h4{font-size:21px;gap:8px}
  .dish h4 .price{font-size:17px}
  .dish p{font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .dish .opts{display:none}
  .dish .act{margin-top:auto;padding-top:4px;border-top:0}
  .dish .act .diet{font-size:10px}
  .dish .act button,.dish .act .go{min-height:36px;font-size:11px}
}

/* ---------- SIGNATURE SCENE ---------- */
.scene{position:relative;display:grid;grid-template-columns:1fr 1.1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--panel);min-height:560px}
.scene .glow{position:absolute;inset:-30%;background:radial-gradient(700px 500px at 72% 50%,rgba(201,162,75,.22),transparent 65%);opacity:0;transition:opacity 1.2s}
.scene.in .glow{opacity:1}
.scene .txt{position:relative;padding:64px 56px;display:flex;flex-direction:column;justify-content:center;gap:20px}
.scene h3{font-size:clamp(44px,5.4vw,84px)}
.scene .txt p{color:var(--bone2);max-width:44ch;font-size:17px}
.scene .img{position:relative;min-height:460px;overflow:hidden}
.scene .img img{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover}
.scene .img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--panel) 0%,rgba(20,20,20,.3) 25%,transparent 50%)}
@media (max-width:980px){.scene{grid-template-columns:1fr;min-height:0}.scene .img{min-height:0;aspect-ratio:4/3;order:-1}.scene .img img{inset:0;width:100%;height:100%}.scene .img::after{background:linear-gradient(0deg,var(--panel) 0%,rgba(20,20,20,.2) 30%,transparent 55%)}.scene .txt{padding:22px 20px 30px;gap:14px}.scene .txt p{font-size:15px}.scene .glow{display:none}}

/* ---------- GAME DAY ---------- */
.gd{background:linear-gradient(180deg,var(--bg) 0%,var(--plum) 45%,var(--bg) 100%)}
.gd .row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:48px 0}
.gd .row.flip .pic{order:2}
.gd .pic{position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--line2);aspect-ratio:5/4;box-shadow:0 40px 80px rgba(0,0,0,.5)}
.gd .pic img{width:100%;height:100%;object-fit:cover}
.gd .pic::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,10,10,.75));pointer-events:none}
.gd .pic .lbl{position:absolute;left:18px;bottom:16px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold2)}
.gd h3{font-size:clamp(38px,4.6vw,66px);margin-top:14px}
.gd .cp p{color:var(--bone2);margin-top:18px;max-width:46ch;font-size:17px}
.gd ul{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px;color:var(--muted);font-size:14px}
.gd li{display:flex;gap:12px;align-items:start}
.gd li .icon{color:var(--gold);margin-top:4px}
@media (max-width:980px){.gd .row{grid-template-columns:1fr;gap:22px;padding:24px 0}.gd .row.flip .pic{order:0}.gd .pic{aspect-ratio:4/3;box-shadow:none}.gd .cp p{font-size:15px;margin-top:12px}.gd ul{margin-top:16px}}

/* ---------- KITCHEN ---------- */
.kitchen{border-top:1px solid var(--line)}
.k-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:72px}
.k-grid h2{font-size:clamp(44px,6vw,88px);margin-top:16px}
.quote{font-family:var(--serif);font-size:clamp(28px,3.4vw,48px);line-height:1.15;font-style:italic;color:var(--bone);border-left:2px solid var(--gold);padding-left:26px;margin-top:32px}
.team{display:grid;border-top:1px solid var(--line);margin-top:16px}
.team .m{display:grid;grid-template-columns:1fr auto;gap:12px;padding:18px 0;border-bottom:1px solid var(--line);align-items:baseline;transition:padding-left .4s var(--ease)}
.team .m:hover{padding-left:10px}
.team .m b{font-family:var(--serif);font-size:26px;font-weight:500}
.team .m span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:right}
.chef-pts{display:grid;gap:14px;margin-top:26px;color:var(--bone2);font-size:15px}
.chef-pts div{display:flex;gap:12px}.chef-pts .icon{color:var(--gold);margin-top:4px}
@media (max-width:980px){.k-grid{grid-template-columns:1fr;gap:36px}.team .m b{font-size:22px}.team .m span{font-size:10px}}

/* ---------- VISIT ---------- */
.visit{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.v-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.v-grid h2{font-size:clamp(44px,6vw,88px);margin-top:16px}
.v-info{display:grid;gap:24px;align-content:start}
.v-info .blk{border-top:1px solid var(--line);padding-top:18px}
.v-info .blk .eyebrow{color:var(--muted)}.v-info .blk .eyebrow::before{background:var(--muted)}
.v-info .blk p{font-family:var(--serif);font-size:28px;margin-top:10px;line-height:1.2}
.form{display:grid;gap:16px;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);padding:30px;border-radius:6px;position:relative}
.form label{display:grid;gap:7px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.form input,.form select,.form textarea{font:inherit;font-size:16px;color:var(--bone);background:var(--bg);border:1px solid var(--line2);border-radius:3px;padding:12px 14px;min-height:50px;outline:none;width:100%;transition:border-color .3s,box-shadow .3s;-webkit-appearance:none;appearance:none}
.form select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c9a24b' stroke-width='1.6'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}
.form textarea{min-height:120px;resize:vertical}
.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,75,.12)}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .hp{position:absolute;left:-9999px}
.form .msg{font-size:14px;color:var(--gold2);min-height:20px}
@media (max-width:980px){.v-grid{grid-template-columns:1fr;gap:36px}.form .two{grid-template-columns:1fr}.form{padding:20px}.v-info .blk p{font-size:24px}}

/* ---------- FOOTER ---------- */
.foot{position:relative;padding:112px 0 44px;overflow:clip}
.foot .big{font-family:var(--serif);font-size:clamp(48px,8.6vw,132px);line-height:.96;max-width:12ch;letter-spacing:-.02em}
.foot .big em{font-style:italic;color:var(--gold2)}
.foot-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.foot-row{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}
.foot-links{display:flex;gap:28px;flex-wrap:wrap;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.foot-links a{position:relative;padding-bottom:2px}
.foot-links a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--gold);transition:width .35s var(--ease)}
.foot-links a:hover{color:var(--gold2)}.foot-links a:hover::after{width:100%}
.foot small{display:block;color:var(--muted);font-size:12px;margin-top:18px;max-width:64ch;line-height:1.6}
.ghost{position:absolute;right:-2vw;bottom:-7vw;font-family:var(--serif);font-size:32vw;line-height:1;color:#131313;pointer-events:none;user-select:none;letter-spacing:-.03em}
.totop{position:absolute;right:max(24px,env(safe-area-inset-right));top:120px;width:48px;height:48px;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center;color:var(--muted);transition:all .3s}
.totop:hover{border-color:var(--gold);color:var(--gold2)}
@media (max-width:760px){.foot{padding-top:72px}.foot-row{grid-template-columns:1fr;gap:24px}.totop{top:24px;right:16px}}

/* ---------- BOTTOM BAR (navigation only) ---------- */
.bbar{display:none}
@media (max-width:980px){
  body{padding-bottom:calc(var(--barh) + env(safe-area-inset-bottom))}
  .bbar{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:6px;position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--bg);border-top:1px solid var(--line);padding:8px max(10px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
  .bbar::after{content:"";position:absolute;left:0;right:0;top:100%;height:100vh;background:var(--bg)}
  .bbar a{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:3px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--bone2);-webkit-tap-highlight-color:transparent}
  .bbar a.on{color:var(--gold2)}
  .bbar a.gold{background:linear-gradient(180deg,#d9b55f,#bf9740);color:#141008}
  .foot{padding-bottom:28px}
}

/* ---------- SHEET + MODAL ---------- */
.sheet,.modal{position:fixed;inset:0;z-index:60;display:none;align-items:end;justify-content:center;background:rgba(0,0,0,.76);padding:0}
.sheet.open,.modal.open{display:flex}
.sheet .card{position:relative;width:min(560px,100%);background:var(--panel);border:1px solid var(--line2);border-radius:14px 14px 0 0;padding:22px 22px calc(22px + env(safe-area-inset-bottom));transform:translateY(24px);animation:up .4s var(--ease) forwards}
@keyframes up{to{transform:none}}
@media (min-width:700px){.sheet{align-items:center}.sheet .card{border-radius:10px;padding-bottom:22px}}
.handle{width:40px;height:4px;border-radius:2px;background:var(--line2);margin:0 auto 16px}
.sheet h3{font-size:32px}
.sheet .sub{color:var(--muted);font-size:14px;margin-top:6px}
.sheet .opts{display:grid;gap:10px;margin-top:20px}
.sheet .btn,.modal .obtn{min-height:54px;font-size:15px;justify-content:space-between;padding:0 18px}
.sheet .btn .l,.modal .obtn .l{display:flex;align-items:center;gap:12px}
.sheet .btn .plogo,.modal .plogo{width:22px;height:22px}
.sheet .note{font-size:13px;color:var(--muted);margin-top:16px;line-height:1.5}
.x{position:absolute;top:12px;right:12px;width:44px;height:44px;display:grid;place-items:center;color:var(--bone2);z-index:3;border-radius:50%;background:rgba(10,10,10,.6);transition:color .3s,background .3s}
.x:hover{color:var(--bone);background:rgba(255,255,255,.08)}
.modal .card{position:relative;width:min(1040px,100%);max-height:100svh;background:var(--panel);border:1px solid var(--line2);border-radius:14px 14px 0 0;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;transform:translateY(24px);animation:up .45s var(--ease) forwards}
.modal .mimg{position:relative;min-height:320px;background:#0e0e0e}
.modal .mimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.modal .mimg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,var(--panel));pointer-events:none}
.modal .mbody{padding:40px 36px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px;overflow:auto;overscroll-behavior:contain}
.modal h3{font-size:clamp(34px,4vw,52px);display:flex;justify-content:space-between;gap:14px;align-items:baseline}
.modal h3 .price{font-size:26px;color:var(--gold2)}
.modal .desc{color:var(--bone2);font-size:16px;line-height:1.6}
.modal .grp{display:grid;gap:8px}
.modal .grp b{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:600}
.modal .chips{display:flex;flex-wrap:wrap;gap:8px}
.modal .chip{border:1px solid var(--line2);padding:8px 12px;border-radius:3px;font-size:13px;color:var(--bone2);transition:all .25s;min-height:40px;-webkit-tap-highlight-color:transparent}
.modal .chip.on,.modal .chip:hover{border-color:var(--gold);color:var(--gold2);background:rgba(201,162,75,.08)}
.modal .mnav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.modal .mnav button{display:inline-flex;align-items:center;gap:8px;color:var(--bone2);min-height:44px;padding:0 6px}
.modal .mnav button:hover{color:var(--gold2)}
.modal .oopts{display:grid;gap:10px;margin-top:6px}
@media (min-width:980px){.modal{align-items:center;padding:24px}.modal .card{border-radius:10px;max-height:calc(100svh - 48px)}}
@media (max-width:979px){.modal .card{grid-template-columns:1fr;max-height:calc(100svh - 24px);overflow:auto;overscroll-behavior:contain}.modal .mimg{min-height:0;aspect-ratio:4/3}.modal .mimg::after{background:linear-gradient(0deg,var(--panel),transparent 40%)}.modal .mbody{padding:18px 20px calc(24px + env(safe-area-inset-bottom));overflow:visible;gap:12px}.modal h3{font-size:30px}.modal h3 .price{font-size:22px}.modal .desc{font-size:15px}}

/* ---------- TOAST / TIP ---------- */
.toast{position:fixed;left:50%;bottom:calc(var(--barh) + 20px + env(safe-area-inset-bottom));transform:translate(-50%,20px);background:var(--bone);color:#111;padding:12px 18px;border-radius:4px;font-size:14px;opacity:0;pointer-events:none;transition:all .4s var(--ease);z-index:70;max-width:min(92vw,520px);box-shadow:0 20px 50px rgba(0,0,0,.5)}
@media (min-width:981px){.toast{bottom:28px}}
.toast.show{opacity:1;transform:translate(-50%,0)}
.tip{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--barh) + 16px + env(safe-area-inset-bottom));background:var(--panel);border:1px solid var(--line2);color:var(--bone2);padding:12px 16px;border-radius:8px;font-size:13px;display:none;z-index:55;max-width:92vw;box-shadow:0 16px 40px rgba(0,0,0,.5)}
.tip button{white-space:nowrap}
.tip.show{display:flex;gap:12px;align-items:center}
.tip button{color:var(--gold2);font-weight:600}

/* ---------- REVEALS ---------- */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.mask{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s var(--ease2)}
.mask img{transform:scale(1.18);transition:transform 1.2s var(--ease2)}
.mask.in{clip-path:inset(0 0 0 0)}.mask.in img{transform:scale(1)}
.gsap .rv,.gsap .mask,.gsap .mask img{transition:none}
/* coarse pointers: light fades only, no clip or parallax */
@media (pointer:coarse){.mask{clip-path:none;transition:none}.mask img{transform:none;transition:none}.rv{transform:translateY(14px);transition-duration:.6s}}
@media (prefers-reduced-motion:reduce){.rv,.mask,.mask img,.hero h1 .ln span{transition:none!important;opacity:1!important;transform:none!important;clip-path:none!important}.scroll-cue,.pre{display:none}}

/* ---------- WAYS STRIP (home) ---------- */
.order-card .plogo-ic{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line2);border-radius:50%;color:var(--gold2);font-size:20px;position:relative}
@media (max-width:980px){.order-grid{grid-template-columns:1fr}.order-card{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:24px 20px}.order-card:last-child{border-bottom:0}.order-card h3{font-size:26px}}
.center-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:44px}
.dish-grid.feat{grid-template-columns:repeat(4,1fr)}
@media (max-width:1100px){.dish-grid.feat{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.dish-grid.feat{grid-template-columns:1fr}}

/* ---------- PAGE HEADS ---------- */
.page-head{padding:84px 0 44px;position:relative}
.page-head h1{font-size:clamp(54px,8.4vw,128px);margin-top:20px;letter-spacing:-.02em}
.page-head h1 em{font-style:italic;color:var(--gold2)}
.page-head .lead{margin-top:22px}
.page-head .hero-cta{margin-top:28px}
@media (max-width:640px){.page-head{padding:44px 0 28px}}
.menu-page .menu-tabs{margin-bottom:40px}

/* ---------- ORDER PAGE ---------- */
.order-head{padding-bottom:36px}
.platforms{padding-bottom:8px}
.plat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.plat{position:relative;display:flex;flex-direction:column;gap:12px;padding:30px 28px 26px;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:transform .5s var(--ease),border-color .4s,box-shadow .5s;-webkit-tap-highlight-color:transparent}
.plat::before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .5s;background:radial-gradient(420px 220px at 15% 0%,rgba(201,162,75,.14),transparent 70%)}
.plat.dd::before{background:radial-gradient(420px 220px at 15% 0%,rgba(255,48,8,.18),transparent 70%)}
.plat.ue::before{background:radial-gradient(420px 220px at 15% 0%,rgba(6,193,103,.18),transparent 70%)}
.plat:hover{transform:translateY(-4px);border-color:var(--line2);box-shadow:0 30px 60px rgba(0,0,0,.5)}
.plat:hover::before{opacity:1}
.plat>*{position:relative}
.plat-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.plat .plogo{width:38px;height:38px;fill:var(--bone)}
.plat.dd .plogo{fill:#ff3008}.plat.ue .plogo{fill:#06c167}
.plat h2{font-size:40px}
.plat p{color:var(--muted);font-size:14px;line-height:1.6;flex:1}
.plat .go{display:inline-flex;align-items:center;gap:8px;color:var(--gold2);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-top:6px}
.plat .go .icon{transition:transform .35s var(--ease)}
.plat:hover .go .icon{transform:translateX(6px)}
.plat .state{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:8px}
.plat .state i{width:7px;height:7px;border-radius:50%;background:var(--muted);display:inline-block}
.plat.live .state,.plat .state.live{color:#7ddc9a}.plat.live .state i,.plat .state.live i{background:#2bd882;box-shadow:0 0 0 4px rgba(43,216,130,.15)}
.plat-note{font-size:14px;margin-top:22px;max-width:60ch;line-height:1.6}
.plat-note a{color:var(--gold2);text-decoration:underline;text-underline-offset:3px}
.order-menu{border-top:1px solid var(--line);margin-top:48px}
.modal .mnote{font-size:12.5px;color:var(--muted);text-align:center;margin-top:2px}
@media (max-width:640px){.plat{padding:22px 18px 20px}.plat h2{font-size:32px}.plat .plogo{width:30px;height:30px}}

/* ---------- ABOUT ---------- */
.about-head{min-height:min(78svh,760px);display:grid;align-items:end;padding:120px 0 72px;overflow:clip;isolation:isolate}
.about-bg{position:absolute;inset:0;z-index:-1}
.about-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.04);filter:saturate(.85)}
.about-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--bg) 0%,rgba(10,10,10,.92) 30%,rgba(10,10,10,.55) 60%,rgba(10,10,10,.35) 100%)}
.about-head .lead{max-width:62ch;font-size:18px}
@media (max-width:640px){.about-head{min-height:min(64svh,560px);padding:64px 0 40px}.about-head .lead{font-size:16px}}
.about-why{padding:72px 0}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.why{border-top:1px solid var(--gold-dim);padding-top:22px}
.why h3{font-size:30px;margin-top:14px}
.why p{color:var(--muted);font-size:15px;line-height:1.65;margin-top:12px}
@media (max-width:980px){.why-grid{grid-template-columns:1fr;gap:28px}.about-why{padding:48px 0}}
.room-grid{display:grid;grid-template-columns:1.25fr 1fr .8fr;gap:18px}
.room-grid .pic{position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--line2);aspect-ratio:4/5}
.room-grid .pic.tall{aspect-ratio:1}
.room-grid .pic img{width:100%;height:100%;object-fit:cover}
.room-grid .pic::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,10,10,.75));pointer-events:none}
.room-grid .pic .lbl{position:absolute;left:18px;bottom:16px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold2)}
@media (max-width:980px){.room-grid{grid-template-columns:1fr 1fr}.room-grid .pic.tall{grid-column:1/-1;aspect-ratio:4/3}}
@media (max-width:640px){.room-grid{grid-template-columns:1fr}.room-grid .pic{aspect-ratio:4/3}}
.about-chef .k-grid{align-items:center}
@media (max-width:980px){.about-chef .k-pic{order:-1}}
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.tm{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:6px;padding:28px 26px 24px;display:flex;flex-direction:column;gap:10px;transition:border-color .4s,transform .5s var(--ease)}
.tm:hover{border-color:var(--gold-dim);transform:translateY(-4px)}
.tm h3{font-size:34px;margin-top:8px}
.tm .role{color:var(--gold2);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.tm ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px;color:var(--muted);font-size:14px;line-height:1.55}
.tm li{padding-left:16px;position:relative}
.tm li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:1px;background:var(--gold)}
.about-team .sec-head .lead{max-width:52ch}
@media (max-width:640px){.team-grid{grid-template-columns:1fr}.tm{padding:22px 18px}.tm h3{font-size:28px}}
.about-cta{padding-top:0}
.cta-band{display:grid;grid-template-columns:1.2fr auto;gap:40px;align-items:center;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line2);border-radius:8px;padding:48px 44px;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:-40%;background:radial-gradient(600px 300px at 80% 50%,rgba(201,162,75,.16),transparent 70%);pointer-events:none}
.cta-band>*{position:relative}
.cta-band h2{font-size:clamp(36px,4.6vw,64px);margin-top:14px}
.cta-band .lead{margin-top:14px;font-size:15px}
@media (max-width:980px){.cta-band{grid-template-columns:1fr;padding:30px 22px;gap:24px}}

/* ---------- NAV v4: seven tabs, drawer on mobile ---------- */
.nav-act{display:flex;gap:10px;align-items:center}
.nav-links{gap:22px;font-size:11.5px}
@media (max-width:1180px){.nav-links{gap:16px;font-size:11px;letter-spacing:.1em}.brand .wm{font-size:20px}}
.burger{display:none;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;gap:5px;border:1px solid var(--line2);border-radius:3px;-webkit-tap-highlight-color:transparent}
.burger span{display:block;width:18px;height:1.5px;background:var(--bone);transition:transform .3s var(--ease),opacity .3s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
@media (max-width:980px){.burger{display:flex}.nav .btn-gold{display:none}}
.drawer{position:fixed;left:0;right:0;top:calc(var(--navh) + env(safe-area-inset-top));bottom:0;z-index:49;background:var(--bg);display:none;overflow:auto;overscroll-behavior:contain}
.drawer.open{display:block}
.drawer-in{padding:28px max(24px,env(safe-area-inset-right)) calc(28px + var(--barh) + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));display:grid;gap:4px}
.drawer-in>a{font-family:var(--serif);font-size:38px;line-height:1.15;padding:10px 0;border-bottom:1px solid var(--line);color:var(--bone);display:flex;justify-content:space-between;align-items:center}
.drawer-in>a.on{color:var(--gold2)}
.drawer-in>a small{font-family:var(--sans);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.drawer-foot{display:grid;gap:10px;margin-top:22px}
.drawer-foot .btn{min-height:54px}
html.drawer-open{overflow:hidden}
@media (max-width:980px){.bbar{grid-template-columns:1fr 1fr 1fr 1fr 1.2fr;gap:4px}.bbar a{font-size:11px;letter-spacing:.1em;padding:0 2px}}

/* ---------- TEAM PHOTOS ---------- */
.tm{padding-top:26px}
.tm .photo{width:112px;height:112px;border-radius:50%;overflow:hidden;border:1px solid var(--gold-dim);box-shadow:0 0 0 6px rgba(201,162,75,.06);margin-bottom:6px;background:#1c1c1c}
.tm .photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.06)}
@media (max-width:640px){.tm .photo{width:96px;height:96px}}
.team-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}

/* ---------- EVENTS ---------- */
.events-head .about-bg img{object-position:50% 55%}
.ev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ev{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding-bottom:22px;transition:border-color .4s,transform .5s var(--ease)}
.ev:hover{border-color:var(--gold-dim);transform:translateY(-4px)}
.ev-pic{aspect-ratio:16/9;overflow:hidden;position:relative;margin-bottom:12px}
.ev-pic img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}
.ev-pic::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,var(--panel2))}
.ev .eyebrow,.ev h3,.ev p{padding:0 22px}
.ev h3{font-size:30px;margin-top:4px}
.ev p{color:var(--muted);font-size:14px;line-height:1.6}
@media (max-width:980px){.ev-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ev-grid{grid-template-columns:1fr;gap:14px}.ev h3{font-size:26px}}

/* ---------- BOOK ---------- */
.book-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.steps{display:grid;gap:18px;margin-bottom:36px}
.step{display:flex;gap:18px;align-items:start}
.step b{font-family:var(--serif);font-size:34px;color:var(--gold2);line-height:1;width:34px;flex:0 0 auto;font-weight:500}
.step h3{font-size:26px}
.step p{color:var(--muted);font-size:14px;margin-top:6px;line-height:1.6}
.book-opts{display:grid;gap:14px}
.bo{border-top:1px solid var(--line);padding-top:18px}
.bo h3{font-size:28px;margin-top:10px}
.bo p{color:var(--muted);font-size:14px;line-height:1.6;margin-top:8px}
@media (max-width:980px){.book-grid{grid-template-columns:1fr;gap:36px}.book-side{order:2}}

/* ---------- MEMBERSHIP ---------- */
.member-head .about-bg img{object-position:50% 45%}
.perk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.perk{border:1px solid var(--line);border-radius:6px;padding:26px 24px;background:linear-gradient(180deg,var(--panel2),var(--panel));display:flex;flex-direction:column;gap:10px;transition:border-color .4s}
.perk:hover{border-color:var(--gold-dim)}
.perk>.icon{font-size:26px;color:var(--gold2);width:1em;height:1em}
.perk h3{font-size:27px;margin-top:4px}
.perk p{color:var(--muted);font-size:14px;line-height:1.6}
@media (max-width:980px){.perk-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.perk-grid{grid-template-columns:1fr;gap:12px}}
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tier{border:1px solid var(--line);border-radius:8px;padding:30px 28px;background:linear-gradient(180deg,var(--panel2),var(--panel));display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden}
.tier:first-child{border-color:var(--gold-dim)}
.tier:first-child::before{content:"";position:absolute;inset:-40%;background:radial-gradient(500px 260px at 20% 0%,rgba(201,162,75,.16),transparent 70%);pointer-events:none}
.tier>*{position:relative}
.tier h3{font-size:36px;margin-top:6px}
.tier-note{color:var(--bone2);font-size:15px;line-height:1.6}
.tier ul{list-style:none;padding:0;margin:4px 0 10px;display:grid;gap:9px;color:var(--muted);font-size:14px;flex:1}
.tier li{padding-left:16px;position:relative}
.tier li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:1px;background:var(--gold)}
.tier .btn{justify-content:space-between}
@media (max-width:980px){.tier-grid{grid-template-columns:1fr;gap:14px}}
.join-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start;border-top:1px solid var(--line);padding-top:72px}
@media (max-width:980px){.join-grid{grid-template-columns:1fr;gap:28px;padding-top:48px}}
.member-teaser{padding-top:0}
