:root{
  /* "Gilded onyx" — onyx black, champagne & antique gold, warm cream */
  --ivory:#f7f1e6; --sand:#efe5d2; --mist:#f2eadb; --ink:#16120c; --ink-2:#6a5c47;
  --moss:#16120c; --moss-2:#241d13; --sage:#a8916a; --lotus:#ead6a6; --lotus-2:#d4b46e; --gold:#b48a3a; --gold-2:#dfc078;
  --clay:var(--gold); --blush:var(--lotus); --bronze:#1d170f; --onyx:#16120c; --onyx-2:#0e0b07;
  --gilt:linear-gradient(115deg,#9a7533 0%,#f0d991 38%,#c39a4a 62%,#f6e2a6 100%);
  --gilt-deep:linear-gradient(115deg,#7a5a20 0%,#b8913f 45%,#8a6727 75%,#a9843a 100%);
  --serif:"Cormorant Garamond",Georgia,serif; --sans:"Jost",system-ui,sans-serif;
  --gut:clamp(16px,4vw,56px); --ease:cubic-bezier(.65,0,.35,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--ivory)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--ivory);color:var(--ink);font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
em{font-family:var(--serif);font-style:italic;font-weight:400}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:.92}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--ink-2)}
.line{display:block;overflow:hidden;padding-bottom:.06em}
.split{display:inline-block;will-change:transform}

/* noise grain */
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}


/* cursor */
.cursor{position:fixed;top:0;left:0;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ink);
  z-index:95;pointer-events:none;mix-blend-mode:difference;background:#fff;transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease);display:grid;place-items:center}
.cursor.is-hover{width:54px;height:54px;margin:-27px 0 0 -27px}
.cursor.is-view{width:96px;height:96px;margin:-48px 0 0 -48px;mix-blend-mode:normal;background:var(--ivory)}
.cursor-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);opacity:0;transition:opacity .2s}
.cursor.is-view .cursor-label{opacity:1}
@media (hover:none){.cursor{display:none}}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;align-items:center;gap:36px;padding:14px var(--gut);color:var(--ink);transition:background .45s var(--ease),color .45s,box-shadow .45s,padding .45s var(--ease)}
.nav-logo{font-family:var(--serif);font-size:30px;line-height:1;margin-right:auto}
.nav-logo em{font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:.32em;text-transform:uppercase;margin-left:6px;vertical-align:middle}
.nav-links{display:flex;gap:32px;font-size:15px;font-weight:500;letter-spacing:.01em}
.nav-links a,.ulink{position:relative}
.nav-links a::after,.ulink::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav-links a:hover::after,.ulink:hover::after{transform:scaleX(1);transform-origin:left}
.nav-cta{font-size:14px;font-weight:500;background:var(--moss);color:var(--ivory);border-radius:99px;padding:13px 24px;transition:background .3s}
.nav-cta:hover{background:var(--gold)}
.nav-burger{display:none;width:40px;height:40px;position:relative}
.nav-burger i{position:absolute;left:8px;right:8px;height:1.5px;background:currentColor;transition:transform .4s var(--ease)}
.nav-burger i:first-child{top:15px}.nav-burger i:last-child{top:24px}
.nav-burger[aria-expanded=true] i:first-child{transform:translateY(4.5px) rotate(45deg)}
.nav-burger[aria-expanded=true] i:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:70;background:var(--ink);color:var(--ivory);display:flex;flex-direction:column;justify-content:center;padding:var(--gut);gap:6px;clip-path:circle(0% at calc(100% - 36px) 40px);transition:clip-path .8s var(--ease)}
.menu.is-open{clip-path:circle(150% at calc(100% - 36px) 40px)}
.menu>a{font-family:var(--serif);font-size:clamp(44px,11vw,72px);line-height:1.05}
.menu p{margin-top:32px;font-size:14px;opacity:.7;line-height:1.7}

/* pill buttons */
.pill{display:inline-flex;align-items:center;gap:14px;border-radius:99px;padding:8px 8px 8px 24px;background:var(--ivory);color:var(--ink);font-size:14px;font-weight:500;position:relative;overflow:hidden;isolation:isolate}
.pill b{width:42px;height:42px;border-radius:50%;background:var(--ink);color:var(--ivory);display:grid;place-items:center;font-weight:400;transition:transform .5s var(--ease)}
.pill::before{content:"";position:absolute;inset:0;background:var(--blush);z-index:-1;transform:translateY(101%);transition:transform .5s var(--ease)}
.pill:hover::before{transform:none}
.pill:hover b{transform:rotate(-45deg)}
.pill.dark{background:var(--ink);color:var(--ivory)}
.pill.dark b{background:var(--ivory);color:var(--ink)}
.pill.dark:hover{color:var(--ink)}

/* hero */
.hero{position:relative;isolation:isolate;height:100svh;min-height:620px;overflow:hidden;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:110px var(--gut) 36px}
.hero-gl,.hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero-gl{z-index:-1}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(22,18,12,.35),rgba(22,18,12,.05) 40%,rgba(22,18,12,.6))}
.hero-top{display:flex;justify-content:space-between;align-items:flex-start}
.hero .eyebrow{color:rgba(255,255,255,.85)}
.hero-side{font-size:13px;line-height:1.6;text-align:right;opacity:.85}
.hero-title{font-size:clamp(56px,10.5vw,176px);line-height:.88;margin-top:auto}
.hero-title .line:nth-child(2){padding-left:8vw}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:36px}
.hero-bottom>p{max-width:340px;font-size:15px;line-height:1.6;opacity:.9}
.scroll-cue{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.scroll-cue i{width:1px;height:42px;background:rgba(255,255,255,.3);position:relative;overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;inset:0;background:#fff;animation:cue 2s var(--ease) infinite}
@keyframes cue{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}

/* marquee */
.marquee{overflow:hidden;padding:34px 0;border-bottom:1px solid rgba(22,18,12,.12)}
.marquee-track{display:flex;width:max-content}
.marquee-row{font-family:var(--serif);font-size:clamp(44px,7vw,110px);white-space:nowrap;line-height:1}
.marquee-row i{font-style:normal;font-size:.4em;color:var(--clay);vertical-align:middle;margin:0 .4em}

/* manifesto */
.manifesto{padding:clamp(100px,16vw,220px) var(--gut)}
.manifesto-text{font-family:var(--serif);font-size:clamp(34px,5.2vw,84px);line-height:1.04;letter-spacing:-.015em;max-width:15.5em;margin-top:36px}
.manifesto-text .w{opacity:.14;transition:none}
.manifesto-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:clamp(70px,10vw,140px);border-top:1px solid rgba(22,18,12,.15);padding-top:28px}
.manifesto-stats strong,.manifesto-stats span{font-family:var(--serif);font-weight:400;font-size:clamp(56px,7vw,110px);line-height:1}
.manifesto-stats span{color:var(--clay)}
.manifesto-stats p{font-size:14px;color:var(--ink-2);margin-top:10px}

/* section head */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:clamp(40px,6vw,80px)}
.section-head h2{font-size:clamp(48px,7.5vw,128px);text-align:right}
.section-head.light{color:var(--ivory)}
.section-head.light .eyebrow{color:rgba(247,241,230,.7)}

/* treatments */
.treatments{padding:clamp(60px,8vw,120px) var(--gut) clamp(100px,12vw,180px);position:relative}
.t-list{list-style:none;border-top:1px solid rgba(22,18,12,.15)}
.t-list li{display:grid;grid-template-columns:60px 1fr auto 40px;align-items:center;gap:20px;padding:26px 0;border-bottom:1px solid rgba(22,18,12,.15);cursor:pointer;position:relative;transition:color .4s,padding .5s var(--ease)}
.t-list li::before{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}
.t-list li:hover{color:var(--ivory);padding-left:20px;padding-right:20px}
.t-list li:hover::before{transform:scaleY(1)}
.t-list{isolation:isolate}
.t-num{font-size:12px;opacity:.6}
.t-name{font-family:var(--serif);font-size:clamp(36px,5vw,76px);line-height:1}
.t-tags{font-size:13px;opacity:.7;text-align:right}
.t-arrow{font-size:24px;transition:transform .5s var(--ease)}
.t-list li:hover .t-arrow{transform:rotate(45deg)}
.t-float{position:fixed;top:0;left:0;width:300px;height:380px;pointer-events:none;z-index:60;border-radius:180px 180px 8px 8px;overflow:hidden;opacity:0;transform:scale(.6)}
.t-float img{width:100%;height:100%;object-fit:cover}
@media (hover:none){.t-float{display:none}}

/* ritual */
.ritual{background:var(--sand);position:relative}
.ritual-pin{height:100svh;overflow:hidden;display:flex;align-items:center}
.ritual-track{display:flex;align-items:center;gap:clamp(24px,3vw,48px);padding:0 var(--gut);will-change:transform}
.r-intro{flex:0 0 min(440px,80vw)}
.r-intro h2{font-size:clamp(64px,8vw,140px);margin-top:24px}
.r-hint{margin-top:30px;font-size:13px;color:var(--ink-2)}
.r-card{flex:0 0 min(400px,78vw);position:relative}
.r-img{height:min(56svh,520px);overflow:hidden;border-radius:220px 220px 6px 6px}
.r-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.25)}
.r-step{position:absolute;top:20px;right:20px;font-family:var(--serif);font-style:italic;font-size:22px;color:#fff;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.6);display:grid;place-items:center;backdrop-filter:blur(6px)}
.r-card h3{font-size:46px;margin-top:22px}
.r-card p{font-size:14px;line-height:1.6;color:var(--ink-2);margin-top:10px;max-width:34ch}
.ritual-progress{position:absolute;left:var(--gut);right:var(--gut);bottom:32px;height:1px;background:rgba(22,18,12,.15)}
.ritual-progress i{position:absolute;inset:0;background:var(--ink);transform:scaleX(0);transform-origin:left}

/* zoom */
.zoom-pin{height:100svh;position:relative;display:grid;place-items:center;overflow:hidden}
.zoom-frame{width:34vw;height:46vh;overflow:hidden;border-radius:999px;will-change:width,height,border-radius}
.zoom-frame img{width:100%;height:100%;object-fit:cover}
.zoom-quote{position:absolute;inset:auto 0 12vh;text-align:center;font-family:var(--serif);font-size:clamp(44px,7vw,120px);line-height:.95;color:#fff;opacity:0;mix-blend-mode:normal;text-shadow:0 2px 40px rgba(0,0,0,.25)}
.zoom-quote span,.zoom-quote em{display:block}

/* tech stack */
.tech{background:var(--ink);padding:clamp(100px,12vw,180px) var(--gut)}
.stack{display:flex;flex-direction:column;gap:6vh}
.s-card{position:sticky;top:12vh;min-height:72vh;background:var(--c);border-radius:28px;display:grid;grid-template-columns:1fr 1.1fr;overflow:hidden;transform-origin:center top}
.s-copy{padding:clamp(28px,4vw,64px);display:flex;flex-direction:column}
.s-copy span{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.s-copy h3{font-size:clamp(56px,8vw,140px);margin-top:auto}
.s-copy sup{font-size:.3em;vertical-align:super}
.s-copy p{font-size:16px;line-height:1.6;max-width:40ch;margin-top:18px;color:var(--ink-2)}
.s-copy ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.s-copy li{font-size:12px;border:1px solid rgba(22,18,12,.25);border-radius:99px;padding:7px 14px}
.s-img{position:relative;overflow:hidden;background:#fff}
.s-card{--dim:0}
.s-card::after{content:"";position:absolute;inset:0;background:var(--ink);opacity:var(--dim);pointer-events:none;border-radius:inherit}
.s-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* gallery */
.gallery{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,28px);padding:clamp(100px,12vw,180px) var(--gut);overflow:hidden}
.g-col{display:flex;flex-direction:column;gap:clamp(12px,2vw,28px)}
.g-col:nth-child(2){margin-top:14vh}
.g-col img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px}
.g-title{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:clamp(60px,11vw,200px);color:#fff;pointer-events:none;line-height:.9;text-shadow:0 4px 60px rgba(22,18,12,.55),0 1px 3px rgba(22,18,12,.3)}
.gallery::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 60% 30% at 50% 50%,rgba(22,18,12,.38),transparent 70%)}
.g-title{z-index:2}

/* consult */
.consult{padding:clamp(100px,12vw,180px) var(--gut)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}
.chip{border:1px solid rgba(22,18,12,.25);border-radius:99px;padding:13px 22px;font-size:14px;transition:background .35s,color .35s,border-color .35s}
.chip:hover{border-color:var(--ink)}
.chip.is-on{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.result{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);align-items:stretch}
.result-img{border-radius:6px;overflow:hidden;aspect-ratio:4/3}
.result-img img{width:100%;height:100%;object-fit:cover}
.result-copy{display:flex;flex-direction:column;justify-content:center}
.result-list{list-style:none;margin-top:18px;counter-reset:r}
.result-list li{font-family:var(--serif);font-size:clamp(34px,4vw,60px);line-height:1.1;border-bottom:1px solid rgba(22,18,12,.12);padding:10px 0;counter-increment:r;display:flex;gap:18px;align-items:baseline}
.result-list li::before{content:"0" counter(r);font-family:var(--sans);font-size:12px;color:var(--clay)}
.result-note{font-size:13px;color:var(--ink-2);margin-top:20px}
.result-cta{display:flex;align-items:center;gap:22px;margin-top:30px;flex-wrap:wrap}
.result-cta .ulink{font-size:14px}

/* cta */
.cta{background:var(--blush);text-align:center;padding:clamp(110px,14vw,200px) var(--gut);position:relative;overflow:hidden}
.cta h2{font-size:clamp(54px,9vw,160px);margin:24px 0 56px}
.cta-orb{width:clamp(150px,16vw,210px);aspect-ratio:1;border-radius:50%;background:var(--ink);color:var(--ivory);display:inline-grid;place-items:center;font-size:15px;line-height:1.35;transition:background .4s}
.cta-orb:hover{background:var(--clay)}

/* footer */
.footer{background:var(--ink);color:var(--ivory);padding:clamp(70px,8vw,110px) var(--gut) 28px;overflow:hidden}
.footer .eyebrow{color:rgba(247,241,230,.55);margin-bottom:14px}
.f-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;font-size:15px;line-height:1.8}
.f-word{font-family:var(--serif);font-style:italic;font-size:clamp(150px,33vw,560px);line-height:.8;display:flex;justify-content:center;margin-top:60px;overflow:hidden;padding-bottom:.08em}
.f-word span{display:inline-block}
.f-bottom{display:flex;justify-content:space-between;gap:16px;font-size:12px;opacity:.6;border-top:1px solid rgba(247,241,230,.15);padding-top:20px;flex-wrap:wrap}

/* responsive */
@media (max-width:900px){
  .nav-links,.nav-cta{display:none}
  .nav-burger{display:block}
  .hero-side{display:none}
  .hero-bottom{flex-direction:column;align-items:flex-start}
  .scroll-cue{display:none}
  .section-head{flex-direction:column;align-items:flex-start}
  .section-head h2{text-align:left}
  .t-list li{grid-template-columns:36px 1fr 28px}
  .t-tags{display:none}
  .manifesto-stats{grid-template-columns:1fr}
  .s-card{grid-template-columns:1fr;min-height:auto;top:10vh}
  .s-img{height:34vh;order:-1}
  .s-copy h3{margin-top:12px}
  .gallery{grid-template-columns:1fr 1fr}
  .g-col:nth-child(3){display:none}
  .result{grid-template-columns:1fr}
  .zoom-pin{height:78svh}
  .zoom-frame{width:100%;height:100%;border-radius:0}
  .zoom-quote{opacity:1;bottom:9vh}
  .f-grid{grid-template-columns:1fr 1fr}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* collage — bronze chapter (remix of Ever) */

.collage{background:var(--bronze);color:var(--ivory)}
.c-pin{height:100svh;position:relative;overflow:hidden;display:grid;place-items:center}
.c-item{position:absolute;left:calc(50% + var(--x) * var(--xs, 1));top:calc(50% + var(--y));width:var(--cw);aspect-ratio:3/4;margin:calc(var(--cw) * -2 / 3) 0 0 calc(var(--cw) / -2);will-change:transform}
.c-pin{--cw:min(14vw,240px)}
.c-frame{position:absolute;inset:0;overflow:hidden;border-radius:inherit;box-shadow:0 30px 60px -30px rgba(0,0,0,.55)}
.c-item img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) brightness(.98);transform:scale(1.12)}
/* soft botanical shapes, each with an offset gold outline */
.c-item::before{content:"";position:absolute;inset:-12px;border:1px solid rgba(216,189,138,.55);border-radius:inherit;transform:translate(10px,10px);pointer-events:none}
.shape-arch{border-radius:999px 999px 16px 16px}
.shape-arch-down{border-radius:16px 16px 999px 999px}
.shape-oval{border-radius:50%}
.shape-pill{border-radius:999px}
.shape-leaf{border-radius:0 999px 0 999px}
.shape-leaf-r{border-radius:999px 0 999px 0}
.c-title{position:relative;z-index:2;text-align:center;font-family:var(--sans);font-weight:300;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(34px,5vw,84px);line-height:1.08}
.c-title span{display:block}
.c-title em{text-transform:none;letter-spacing:-.01em;font-size:1.15em}

/* faq */
.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(24px,5vw,80px);padding:clamp(90px,10vw,160px) var(--gut);border-top:1px solid rgba(22,18,12,.12)}
.faq h2{font-size:clamp(52px,6vw,104px)}
.faq-list details{border-bottom:1px solid rgba(22,18,12,.15)}
.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;font-size:clamp(17px,1.5vw,22px);cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary i{width:14px;height:14px;position:relative;flex:none}
.faq-list summary i::before,.faq-list summary i::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:currentColor;transition:transform .5s var(--ease)}
.faq-list summary i::after{transform:rotate(90deg)}
.faq-list details[open] summary i::after{transform:rotate(0)}
.faq-list details>div{overflow:hidden}
.faq-list p{padding:0 0 26px;max-width:58ch;line-height:1.7;color:var(--ink-2)}

/* floating booking bar — appears on scroll */
.bookbar{position:fixed;left:50%;bottom:22px;z-index:75;display:flex;align-items:center;gap:14px;background:rgba(22,18,12,.88);backdrop-filter:blur(12px);color:var(--ivory);border-radius:99px;padding:10px 10px 10px 20px;font-size:14px;transform:translate(-50%,160%);transition:transform .7s var(--ease);white-space:nowrap}
.bookbar.is-on{transform:translate(-50%,0)}
.bookbar b{background:var(--ivory);color:var(--ink);border-radius:99px;padding:10px 16px;font-weight:500}
.bookbar-dot{width:8px;height:8px;border-radius:50%;background:var(--lotus);box-shadow:0 0 0 0 rgba(223,192,120,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(223,192,120,0)}100%{box-shadow:0 0 0 0 rgba(223,192,120,0)}}

@media (max-width:900px){
  /* collage becomes a grid: three photos, headline, three photos */
  .c-pin{height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px 14px;padding:72px var(--gut);place-items:stretch}
  .c-item{position:relative;left:auto;top:auto;width:auto;margin:0}
  .c-item:nth-of-type(n+4){order:2}
  .c-title{order:1;grid-column:1/-1;padding:14px 0;font-size:clamp(30px,9vw,46px)}
  .c-item::before{inset:-6px;transform:translate(5px,5px)}
  .faq{grid-template-columns:1fr}
  .bookbar{font-size:13px;bottom:14px}
}

/* ===== network rebuild additions ===== */
.nav-logo img{height:58px;width:auto;transition:filter .45s}
.hero-rating{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.14);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);border-radius:99px;padding:8px 16px 8px 10px;font-size:12px}
.hero-rating b{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1}
.hero-rating span{letter-spacing:2px;color:var(--gold-2)}
.hero-rating small{opacity:.85}

/* results before/after */
.results{padding:clamp(100px,12vw,180px) var(--gut)}
.ba-wrap{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(24px,4vw,64px);align-items:center}
.ba{position:relative;aspect-ratio:4/5;max-height:80vh;width:100%;overflow:hidden;border-radius:8px;user-select:none;touch-action:pan-y;--p:50%;cursor:ew-resize;background:#ddd}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.ba-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.ba-handle{position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:#fff;transform:translateX(-1px)}
.ba-handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;font-size:20px;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.ba-tag{position:absolute;top:18px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;background:rgba(22,18,12,.55);color:#fff;padding:7px 12px;border-radius:99px;backdrop-filter:blur(6px)}
.ba-tag-l{left:18px}.ba-tag-r{right:18px}
.ba-tabs{display:flex;flex-direction:column;border-top:1px solid rgba(22,18,12,.15)}
.ba-tab{display:flex;align-items:baseline;gap:16px;text-align:left;padding:22px 0;border-bottom:1px solid rgba(22,18,12,.15);font-family:var(--serif);font-size:clamp(28px,3vw,44px);line-height:1;opacity:.35;transition:opacity .4s}
.ba-tab span{font-family:var(--sans);font-size:12px;color:var(--clay)}
.ba-tab em{font-size:.5em;margin-left:auto;font-family:var(--sans);font-style:normal;letter-spacing:.06em}
.ba-tab.is-on,.ba-tab:hover{opacity:1}
.ba-credit{font-size:12px;color:var(--ink-2);margin-top:22px;line-height:1.6}
.tech-more{color:rgba(247,241,230,.6);text-align:center;margin-top:8vh;font-size:14px;letter-spacing:.06em}

/* packages carousel */
.packages{padding:clamp(100px,12vw,180px) 0;background:var(--sand);overflow:hidden}
.packages .section-head{padding:0 var(--gut)}
.p-rail{display:flex;gap:20px;padding:10px var(--gut) 30px;overflow-x:auto;scrollbar-width:none;cursor:grab;scroll-snap-type:x proximity}
.p-rail::-webkit-scrollbar{display:none}
.p-rail.is-drag{cursor:grabbing;scroll-snap-type:none}
.p-rail.is-drag .p-card{pointer-events:none}
.p-card{flex:0 0 min(360px,82vw);background:var(--ivory);border-radius:22px;padding:30px;display:flex;flex-direction:column;min-height:440px;scroll-snap-align:start;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.p-card:hover{transform:translateY(-10px);box-shadow:0 30px 60px -30px rgba(22,18,12,.4)}
.p-card.is-dark{background:var(--ink);color:var(--ivory)}
.p-area{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--clay)}
.p-card h3{font-size:44px;margin-top:auto;padding-top:40px}
.p-price{font-family:var(--serif);font-size:30px;margin-top:10px}
.p-price s{font-family:var(--sans);font-size:14px;opacity:.5;margin-left:8px}
.p-card ul{list-style:none;margin-top:20px;border-top:1px solid currentColor;border-color:rgba(127,110,90,.3);padding-top:14px}
.p-card li{font-size:14px;line-height:1.5;padding:5px 0 5px 18px;position:relative;opacity:.85}
.p-card li::before{content:"✦";position:absolute;left:0;font-size:9px;top:9px;color:var(--clay)}
.p-foot{display:flex;align-items:center;gap:24px;padding:10px var(--gut) 0;font-size:14px}
.p-progress{flex:1;height:1px;background:rgba(22,18,12,.15);position:relative}
.p-progress i{position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(.2)}

/* reviews */
.reviews{padding:clamp(100px,12vw,180px) 0;overflow:hidden}
.rv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:0 var(--gut);margin-bottom:60px;flex-wrap:wrap}
.rv-head h2{font-size:clamp(48px,7.5vw,128px);text-align:right}
.rv-score{display:flex;align-items:center;gap:18px}
.rv-score strong{font-family:var(--serif);font-weight:400;font-size:clamp(90px,10vw,160px);line-height:.8}
.rv-score span{color:var(--gold);letter-spacing:3px;font-size:20px}
.rv-score p{font-size:13px;color:var(--ink-2);margin-top:6px}
.rv-row{display:flex;gap:20px;width:max-content;padding-left:var(--gut)}
.rv{width:min(420px,80vw);background:#fff;border-radius:18px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;gap:30px;margin:0;box-shadow:0 1px 0 rgba(22,18,12,.06)}
.rv blockquote{font-family:var(--serif);font-size:24px;line-height:1.25}
.rv figcaption{font-size:13px;color:var(--ink-2)}
.rv figcaption::before{content:"★★★★★  ";color:var(--gold);letter-spacing:1px}

/* team */
.team{padding:clamp(60px,8vw,120px) var(--gut) clamp(100px,12vw,180px)}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.tm{border:1px solid rgba(22,18,12,.14);border-radius:22px;padding:clamp(26px,3vw,44px);position:relative;overflow:hidden}
.tm-mono{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--bronze);color:var(--ivory);font-family:var(--serif);font-size:32px;margin-bottom:40px}
.tm h3{font-size:clamp(36px,3.6vw,56px);margin:10px 0 16px}
.tm>p:last-child{color:var(--ink-2);line-height:1.7;font-size:15px;max-width:52ch}
.pillars{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.pillars span{font-family:var(--serif);font-size:clamp(24px,2.6vw,38px);border:1px solid rgba(22,18,12,.2);border-radius:99px;padding:10px 26px}

/* locations */
.locations{background:var(--bronze);color:var(--ivory);padding:clamp(100px,12vw,180px) var(--gut)}
.loc-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.lf{border:1px solid rgba(247,241,230,.35);border-radius:99px;padding:11px 20px;font-size:14px;color:var(--ivory);transition:background .3s,color .3s}
.lf sup{font-size:10px;opacity:.7}
.lf.is-on{background:var(--ivory);color:var(--bronze)}
.loc-list{list-style:none;border-top:1px solid rgba(247,241,230,.25)}
.loc-list li{display:grid;grid-template-columns:1.1fr 1.6fr auto;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid rgba(247,241,230,.25);transition:padding .5s var(--ease),background .4s}
.loc-list li:hover{padding-left:16px;padding-right:16px;background:rgba(247,241,230,.07)}
.l-city{font-family:var(--serif);font-size:clamp(32px,3.6vw,56px);line-height:1}
.l-addr{font-size:14px;opacity:.8}
.l-tel{font-size:14px;border:1px solid rgba(247,241,230,.4);border-radius:99px;padding:9px 16px;white-space:nowrap;transition:background .3s,color .3s}
.l-tel:hover{background:var(--ivory);color:var(--bronze)}
.loc-list li.is-hidden{display:none}

/* location picker in finder */
.loc-pick{display:flex;flex-direction:column;gap:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.loc-pick select{font:inherit;font-size:15px;letter-spacing:0;text-transform:none;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--ink);padding:8px 24px 8px 0;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 10px) 55%,calc(100% - 5px) 55%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}
.f-logo{width:180px;filter:invert(1)}

@media (max-width:900px){
  .nav-logo img{height:48px}
  .hero-rating small{display:none}
  .ba-wrap{grid-template-columns:1fr}
  .ba{aspect-ratio:4/4.6}
  .rv-head h2{text-align:left}
  .team-grid{grid-template-columns:1fr}
  .loc-list li{grid-template-columns:1fr auto;gap:8px 16px}
  .l-addr{grid-column:1/-1;grid-row:2}
}

/* ===== multi-page + lily-pond theme ===== */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nav-links a[aria-current=page]::after{transform:scaleX(1)}
.lotus{fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;overflow:visible}


/* full-screen menu with image (Antara / Deep Beauty) */
.menu{background:var(--moss);display:grid;grid-template-columns:1fr;align-content:center}
.menu-links{display:flex;flex-direction:column}
.menu-links a{font-family:var(--serif);font-size:clamp(40px,9vw,72px);line-height:1.08;display:flex;align-items:baseline;gap:14px;transition:color .3s,padding .5s var(--ease)}
.menu-links a sup{font-family:var(--sans);font-size:11px;color:var(--gold-2)}
.menu-links a:hover{color:var(--lotus);padding-left:10px}
.menu-img{display:none}
.menu-foot{margin-top:28px;font-size:14px;opacity:.7;line-height:1.7}

/* treatment list rows are links now */
.t-list li a{display:contents}
.t-list li a::after{content:"";position:absolute;inset:0}
.center-cta{display:flex;width:max-content;margin:56px auto 0}
.hero-stats{display:flex;gap:28px}
.hero-stats div{display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.35);padding-left:14px}
.hero-stats b{font-family:var(--serif);font-weight:400;font-size:32px;line-height:1}
.hero-stats span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.8;margin-top:4px}
.manifesto{position:relative}
.manifesto-lotus{position:absolute;right:var(--gut);top:clamp(60px,10vw,140px);width:clamp(110px,14vw,200px);color:var(--gold)}
.cta{position:relative}
.cta-lotus{width:110px;color:var(--moss);display:block;margin:0 auto 14px}
.cta-orb{background:var(--moss)}
.cta-orb:hover{background:var(--gold)}
.f-note{font-size:14px;opacity:.6;line-height:1.6;margin-top:18px;max-width:30ch}
.tech{background:var(--ink)}

/* home: locations teaser */
.loc-teaser{background:var(--mist);padding:clamp(90px,10vw,150px) var(--gut);display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(24px,4vw,60px);align-items:end}
.loc-teaser h2{font-size:clamp(48px,6.5vw,110px)}
.loc-cities{display:flex;flex-wrap:wrap;gap:8px}
.loc-cities a{font-family:var(--serif);font-size:clamp(22px,2.2vw,32px);border:1px solid rgba(22,18,12,.2);border-radius:99px;padding:6px 18px;transition:background .3s,color .3s}
.loc-cities a:hover{background:var(--moss);color:var(--ivory)}
.loc-teaser .pill{grid-column:1/-1;justify-self:start;background:var(--moss);color:var(--ivory)}
.loc-teaser .pill b{background:var(--ivory);color:var(--moss)}

/* inner page hero */
.page-hero{position:relative;min-height:88svh;display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,4vw,64px);align-items:end;padding:clamp(130px,16vh,180px) var(--gut) clamp(50px,7vw,90px);overflow:hidden;background:linear-gradient(180deg,var(--mist),var(--ivory))}
.page-hero.ph-compact{min-height:62svh;grid-template-columns:1fr}
.ph-title{font-size:clamp(60px,10vw,168px);line-height:.88}
.ph-intro{max-width:44ch;font-size:clamp(15px,1.3vw,18px);line-height:1.65;color:var(--ink-2);margin-top:28px}
.ph-img{height:min(64svh,620px);border-radius:999px 999px 10px 10px;overflow:hidden}
.ph-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.15)}
.ph-lotus{position:absolute;top:clamp(110px,15vh,150px);right:calc(var(--gut) + 2vw);width:clamp(90px,10vw,150px);color:var(--gold)}
.ph-compact .ph-lotus{top:auto;bottom:clamp(50px,7vw,90px)}

/* treatments page */
.tx-tools{padding:clamp(40px,5vw,70px) var(--gut) 10px;position:sticky;top:58px;z-index:50;background:linear-gradient(var(--ivory) 80%,rgba(247,241,230,0))}
.tx-search{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--ink);padding:10px 0;margin-bottom:22px}
.tx-search svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.6;flex:none}
.tx-search input{flex:1;border:0;background:transparent;font:inherit;font-family:var(--serif);font-size:clamp(22px,2.6vw,38px);color:var(--ink);outline:none;min-width:0}
.tx-search input::placeholder{color:rgba(22,18,12,.35)}
.tx-chips{margin-bottom:12px}
.tx-empty{font-size:15px;padding:20px 0;color:var(--ink-2)}
.catalog{padding:20px var(--gut) clamp(90px,10vw,150px)}
.cat{display:grid;grid-template-columns:minmax(220px,.8fr) 1.6fr;gap:clamp(24px,4vw,64px);padding:clamp(40px,5vw,70px) 0;border-top:1px solid rgba(22,18,12,.14);scroll-margin-top:200px}
.cat[hidden]{display:none}
.cat-img{border-radius:999px 999px 8px 8px;overflow:hidden;aspect-ratio:3/4;max-height:520px}
.cat-img img{width:100%;height:100%;object-fit:cover}
.cat-count{font-size:12px;color:var(--gold);letter-spacing:.16em}
.cat h2{font-size:clamp(46px,5.5vw,92px);margin:8px 0 14px}
.cat-copy>p{color:var(--ink-2);max-width:46ch;line-height:1.6}
.tx-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.tx{font-size:15px;border:1px solid rgba(22,18,12,.2);border-radius:99px;padding:10px 18px;transition:background .3s,color .3s,border-color .3s,transform .4s var(--ease)}
.tx:hover{background:var(--moss);color:var(--ivory);border-color:var(--moss);transform:translateY(-2px)}
.tx[hidden]{display:none}
.tx mark{background:var(--lotus);color:inherit;border-radius:3px;padding:0 2px}

/* results page */
.rv-wall{columns:3 320px;column-gap:20px;padding:0 var(--gut)}
.rv-wall .rv{width:auto;break-inside:avoid;margin:0 0 20px;display:flex}
.rv-wall .rv:nth-child(3n+2){background:var(--moss);color:var(--ivory)}
.rv-wall .rv:nth-child(3n+2) figcaption{color:rgba(247,241,230,.75)}
.rv-note{padding:20px var(--gut) 0;font-size:13px;color:var(--ink-2)}
.quote-band{background:var(--moss);color:var(--ivory);text-align:center;padding:clamp(100px,12vw,180px) var(--gut)}
.quote-band .lotus{width:110px;color:var(--lotus);margin:0 auto 30px;display:block}
.quote-band blockquote{font-family:var(--serif);font-size:clamp(36px,5vw,80px);line-height:1.05;max-width:18em;margin:0 auto 26px}
.quote-band .eyebrow{color:var(--gold-2)}

/* packages page */
.pk{padding:clamp(50px,6vw,90px) var(--gut) clamp(90px,10vw,150px)}
.pk-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.pk-bar .chips{margin:0}
.pk-note{font-size:13px;color:var(--ink-2)}
.pk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.pk-grid .p-card{background:#fff;min-height:0}
.pk-grid .p-card.is-dark{background:var(--moss)}
.pk-grid .p-card[hidden]{display:none}
.p-cta{margin-top:auto;padding-top:24px;font-size:14px;font-weight:500;color:var(--moss)}
.p-card.is-dark .p-cta{color:var(--gold-2)}
.p-card ul{margin-bottom:6px}
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0 var(--gut) clamp(90px,10vw,150px)}
.perk{border-radius:22px;padding:clamp(28px,3vw,44px);background:var(--mist);display:flex;flex-direction:column;gap:14px;min-height:340px}
.perk h3{font-size:clamp(34px,3vw,48px)}
.perk p{color:var(--ink-2);line-height:1.6}
.perk .pill{margin-top:auto;align-self:flex-start}
.perk-dark{background:var(--moss);color:var(--ivory)}
.perk-dark p,.perk-dark .eyebrow{color:rgba(247,241,230,.75)}
.perk-lotus{background:var(--lotus)}

/* about page */
.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(22,18,12,.14);margin:0 var(--gut) clamp(90px,10vw,150px);border:1px solid rgba(22,18,12,.14);border-radius:22px;overflow:hidden}
.pl{background:var(--ivory);padding:clamp(28px,3vw,44px);min-height:280px;display:flex;flex-direction:column;transition:background .5s var(--ease),color .5s}
.pl:hover{background:var(--moss);color:var(--ivory)}
.pl:hover p{color:rgba(247,241,230,.75)}
.pl-n{font-size:12px;color:var(--gold);letter-spacing:.16em}
.pl h3{font-size:clamp(32px,2.8vw,46px);margin-top:auto}
.pl p{color:var(--ink-2);line-height:1.6;margin-top:12px;font-size:15px}
.tm-small{display:flex;flex-direction:column}
.tm-small .tm-mono{width:60px;height:60px;font-size:22px;margin-bottom:24px;background:var(--sage)}
.tm-mono{background:var(--moss)}
.studios{padding:0 0 clamp(90px,10vw,150px);overflow:hidden}
.studios .section-head{padding:0 var(--gut)}
.studio-row{display:flex;gap:20px;padding:0 var(--gut);width:max-content}
.studio-row figure{width:min(520px,78vw);margin:0}
.studio-row img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px}
.studio-row figcaption{font-size:13px;color:var(--ink-2);margin-top:10px}

/* locations page */
.locations .loc-filter{margin-bottom:34px}
.loc-split{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,3vw,48px);align-items:start}
.loc-list li{cursor:pointer}
.loc-list li.is-active{background:rgba(247,241,230,.1);padding-left:16px;padding-right:16px}
.loc-list li.is-active .l-city{color:var(--lotus)}
.loc-map{position:sticky;top:110px;border-radius:22px;overflow:hidden;aspect-ratio:4/5;max-height:78vh;background:var(--moss-2)}
.loc-map iframe{width:100%;height:100%;border:0;filter:grayscale(.55) sepia(.18) hue-rotate(40deg) contrast(.95)}
.loc-card{position:absolute;left:16px;right:16px;bottom:16px;background:var(--ivory);color:var(--ink);border-radius:16px;padding:20px 22px}
.loc-card h3{font-size:36px;margin:4px 0 6px}
.loc-card p:not(.eyebrow){font-size:14px;color:var(--ink-2);margin-bottom:10px}

/* booking form (Goldust step form) */
.booking{display:grid;grid-template-columns:1.7fr 1fr;gap:clamp(24px,4vw,64px);padding:clamp(40px,5vw,70px) var(--gut) clamp(90px,10vw,150px);align-items:start}
.bk{background:#fff;border-radius:26px;padding:clamp(24px,3.5vw,52px);box-shadow:0 30px 80px -50px rgba(22,18,12,.45)}
.bk-steps{list-style:none;display:flex;gap:8px;margin-bottom:36px}
.bk-steps li{flex:1;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);padding-top:12px;border-top:2px solid rgba(22,18,12,.12);transition:border-color .4s,color .4s}
.bk-steps li span{color:var(--gold);margin-right:8px}
.bk-steps li.is-on{border-color:var(--moss);color:var(--ink)}
.bk-track{position:relative;min-height:300px}
.bk-step{border:0;display:none}
.bk-step.is-on{display:block}
.bk-step legend{font-family:var(--serif);font-size:clamp(34px,3.6vw,56px);line-height:1;margin-bottom:10px}
.bk-hint{color:var(--ink-2);font-size:14px;margin-bottom:22px}
.bk-interest .chip{cursor:pointer;user-select:none}
.bk-interest input,.bk-loc input{position:absolute;opacity:0;pointer-events:none}
.bk-interest .chip:has(input:checked){background:var(--moss);color:var(--ivory);border-color:var(--moss)}
.bk-interest .chip:has(input:focus-visible),.bk-loc:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}
.bk-picked{margin-top:18px;font-size:14px;color:var(--ink-2)}
.bk-locs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:22px}
.bk-loc{position:relative;border:1px solid rgba(22,18,12,.18);border-radius:14px;padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:background .3s,border-color .3s,color .3s}
.bk-loc b{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1}
.bk-loc span{font-size:12px;color:var(--ink-2);line-height:1.4}
.bk-loc:has(input:checked){background:var(--moss);color:var(--ivory);border-color:var(--moss)}
.bk-loc:has(input:checked) span{color:rgba(247,241,230,.75)}
.bk-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:24px}
.bk-fields label{display:flex;flex-direction:column;gap:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.bk-fields input,.bk-fields textarea{font:inherit;font-size:16px;letter-spacing:0;text-transform:none;color:var(--ink);border:0;border-bottom:1px solid rgba(22,18,12,.3);background:transparent;padding:10px 0;outline:none;transition:border-color .3s;resize:vertical}
.bk-fields input:focus,.bk-fields textarea:focus{border-color:var(--moss)}
.bk-fields .is-bad{border-color:#b4533f}
.bk-wide{grid-column:1/-1}
.bk-done{text-align:center;padding:20px 0}
.bk-done .lotus{width:110px;color:var(--gold);margin:0 auto 20px;display:block}
.bk-done h2{font-size:clamp(40px,4.5vw,68px);margin-bottom:16px}
.bk-done p{color:var(--ink-2);line-height:1.7;max-width:44ch;margin:0 auto}
.bk-nav{display:flex;align-items:center;gap:18px;margin-top:34px}
.bk-next{margin-left:auto}
.bk-error{font-size:13px;color:#b4533f}
.bk-aside{padding-top:20px}
.bk-phone{display:block;font-family:var(--serif);font-size:clamp(40px,4vw,64px);line-height:1;margin:10px 0 14px}
.bk-aside p:not(.eyebrow){color:var(--ink-2);line-height:1.6;font-size:15px}
.bk-aside hr{border:0;border-top:1px solid rgba(22,18,12,.14);margin:30px 0}

@media (min-width:901px){
  .menu{grid-template-columns:1.2fr 1fr;gap:5vw}
  .menu-img{display:block;grid-row:1/3;grid-column:2;height:70vh;border-radius:999px 999px 10px 10px;overflow:hidden}
  .menu-img img{width:100%;height:100%;object-fit:cover}
}
@media (max-width:900px){
  .hero-stats{display:none}
  .page-hero{grid-template-columns:1fr;min-height:auto;padding-top:120px}
  .ph-img{height:46svh;order:2}
  .ph-lotus{width:70px;top:100px}
  .cat{grid-template-columns:1fr}
  .cat-img{aspect-ratio:16/10;border-radius:200px 200px 8px 8px}
  .tx-tools{position:relative}
  .loc-teaser{grid-template-columns:1fr}
  .perks{grid-template-columns:1fr}
  .perk{min-height:0}
  .perk .pill{margin-top:10px}
  .pillars-grid{grid-template-columns:1fr}
  .pl{min-height:0}
  .pl h3{margin-top:14px;font-size:32px}
  .loc-split{grid-template-columns:1fr}
  .loc-map{position:relative;top:0;aspect-ratio:4/3.4;order:-1}
  .booking{grid-template-columns:1fr}
  .bk-fields{grid-template-columns:1fr}
  .manifesto-lotus{width:80px;top:40px}
}

/* nav: solid frosted bar once scrolled; white only over the dark home hero / open menu */
.nav.is-solid{background:rgba(247,241,230,.97);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 1px 0 rgba(22,18,12,.1),0 10px 30px -20px rgba(22,18,12,.35);padding-top:8px;padding-bottom:8px}
.nav.is-dark:not(.is-solid),body.menu-open .nav{color:#fff}
.nav.is-dark:not(.is-solid) .nav-logo img,body.menu-open .nav .nav-logo img{filter:invert(1) brightness(1.2)}
.nav.is-dark:not(.is-solid) .nav-cta{background:var(--ivory);color:var(--ink)}
.nav.is-dark:not(.is-solid) .nav-links a{text-shadow:0 1px 12px rgba(0,0,0,.35)}
body.menu-open .nav{background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.nav-links a[aria-current=page]{color:var(--moss)}
.nav.is-dark:not(.is-solid) .nav-links a[aria-current=page]{color:#fff}
.nav-links a[aria-current=page]::before{content:"";position:absolute;left:50%;top:-9px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--gold)}
.nav-burger{border-radius:50%;background:rgba(247,241,230,.9);color:var(--ink)}
.nav.is-dark:not(.is-solid) .nav-burger{background:rgba(255,255,255,.18);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body.menu-open .nav-burger{background:rgba(255,255,255,.12);color:#fff}
body.menu-open .bookbar{transform:translate(-50%,160%)}

/* before/after: Lilly client wall */
.ba-wall-sec{padding:0 var(--gut) clamp(90px,10vw,150px)}
.ba-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bw{margin:0;cursor:pointer;outline:none}
.bw-img{position:relative;aspect-ratio:507/1004;max-height:620px;width:100%;overflow:hidden;border-radius:999px 999px 12px 12px;background:var(--mist)}
.bw-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bw-after{clip-path:inset(0 100% 0 0)}
.bw-tag{position:absolute;bottom:16px;left:16px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;background:rgba(22,18,12,.6);color:#fff;padding:7px 12px;border-radius:99px;backdrop-filter:blur(6px)}
.bw-tag-after{left:auto;right:16px;background:var(--lotus);color:var(--ink)}
.bw figcaption{display:flex;gap:12px;align-items:baseline;font-family:var(--serif);font-size:28px;margin-top:14px}
.bw figcaption span{font-family:var(--sans);font-size:12px;color:var(--gold)}
.bw:focus-visible .bw-img{outline:2px solid var(--gold);outline-offset:4px}
.ba{aspect-ratio:507/1004;max-height:84vh}
.ba-device .ba{aspect-ratio:4/5}
.results-device{background:var(--mist)}
@media (max-width:900px){.ba-wall{grid-template-columns:1fr 1fr;gap:12px}.bw figcaption{font-size:20px}.bw-img{border-radius:200px 200px 10px 10px}.ba{max-height:72vh;margin:0 auto}}
.bw-tag{transition:opacity .4s}
.bw-tag-after{left:16px;right:auto;opacity:0}
.bw.show-after .bw-tag-after{opacity:1}
.bw.show-after .bw-tag:not(.bw-tag-after){opacity:0}
.bw figcaption::after{content:"Hover to reveal";margin-left:auto;font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
@media (hover:none){.bw figcaption::after{content:"Tap"}}

/* =====================================================================
   GOLD EDITION — onyx & gilt restyle with its own layout structure.
   Everything below overrides the lily-pond build above.
   ===================================================================== */
body{background:var(--ivory)}
body::after{opacity:.045}
h1,h2,h3{font-weight:300;letter-spacing:-.01em;line-height:.94}
em{font-family:var(--serif);font-weight:300}
h1 em,h2 em,h3 em,.marquee-row,.zoom-quote em,.quote-band em{background:var(--gilt-deep);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.06em}
:is(.hero,.page-hero,.manifesto,.packages,.tech,.cta,.collage,.locations,.quote-band,.zoom,.marquee) :is(h1,h2,h3) em,.marquee-row,.zoom-quote em,.quote-band em{background-image:var(--gilt)}
.eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:.32em;font-weight:500;color:var(--gold);display:inline-flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.lotus{stroke-width:1}
::selection{background:var(--gold-2);color:var(--onyx)}

/* cursor in gold */
.cursor{background:var(--gold-2);mix-blend-mode:normal;opacity:.9}
.cursor.is-hover{background:transparent;border:1px solid var(--gold)}
.cursor.is-view{background:var(--onyx);border:1px solid var(--gold-2)}
.cursor-label{color:var(--gold-2)}

/* nav: links | centred logo | actions */
.nav{display:grid;grid-template-columns:1fr auto 1fr;gap:24px}
.nav-links{justify-self:start;gap:28px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:400}
.nav-logo{margin:0;justify-self:center}
.nav-actions{justify-self:end;display:flex;align-items:center;gap:12px}
.nav-cta{border-radius:0;background:transparent;color:inherit;border:1px solid var(--gold);font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:13px 22px;transition:background .35s,color .35s}
.nav-cta:hover{background:var(--gold);color:var(--onyx)}
.nav.is-dark:not(.is-solid) .nav-cta{background:transparent;color:var(--gold-2);border-color:var(--gold-2)}
.nav.is-solid{background:rgba(247,241,230,.96);box-shadow:0 1px 0 rgba(180,138,58,.35)}
.nav-links a[aria-current=page]{color:var(--gold)}
.nav.is-dark:not(.is-solid) .nav-links a[aria-current=page]{color:var(--gold-2)}
.nav-links a[aria-current=page]::before{border-radius:0;transform:rotate(45deg);background:var(--gold)}
.nav-burger{border-radius:0;border:1px solid var(--gold);background:transparent}
.nav.is-dark:not(.is-solid) .nav-burger{background:transparent;color:var(--gold-2)}
.menu{background:var(--onyx-2)}
.menu-links a:hover{color:var(--gold-2)}
.menu-img{border-radius:0!important;outline:1px solid rgba(223,192,120,.5);outline-offset:14px}

/* buttons: squared, gold hairline, gilt sweep */
.pill{border-radius:0;padding:6px 6px 6px 24px;background:transparent;color:inherit;border:1px solid var(--gold);letter-spacing:.16em;text-transform:uppercase;font-size:11px}
.pill b{border-radius:0;width:40px;height:40px;background:var(--gilt);color:var(--onyx);font-size:15px}
.pill::before{background:var(--gilt)}
.pill:hover{color:var(--onyx)}
.pill:hover b{background:var(--onyx);color:var(--gold-2)}
.pill.dark{background:var(--onyx);color:var(--gold-2);border-color:var(--onyx)}
.pill.dark b{background:var(--gilt);color:var(--onyx)}
.chip,.lf,.tx,.loc-cities a,.l-tel{border-radius:0}
.chip{font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:12px 20px;border-color:rgba(180,138,58,.45)}
.chip:hover{border-color:var(--gold)}
.chip.is-on{background:var(--onyx);color:var(--gold-2);border-color:var(--onyx)}

/* HOME HERO — split: copy left, arched photo window right */
.hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);grid-template-rows:auto 1fr auto;grid-template-areas:"top media" "title media" "bottom media";column-gap:clamp(30px,5vw,90px);row-gap:28px;height:auto;min-height:100svh;padding:clamp(120px,15vh,150px) var(--gut) clamp(40px,6vh,64px);background:radial-gradient(ellipse 70% 60% at 85% 40%,#2a2114,transparent 70%),var(--onyx);color:var(--ivory)}
.hero-top{grid-area:top;align-items:center;flex-wrap:wrap;gap:16px}
.hero .eyebrow{color:var(--gold-2)}
.hero-title{grid-area:title;align-self:center;margin:0;font-size:clamp(60px,8.6vw,156px);line-height:.9}
.hero-title .line:nth-child(2){padding-left:0}
.hero-title .line:nth-child(3){padding-left:clamp(30px,6vw,110px)}
.hero-media{grid-area:media;position:relative;isolation:isolate;overflow:hidden;border-radius:999px 999px 0 0;min-height:min(78svh,760px);align-self:stretch;outline:1px solid rgba(223,192,120,.55);outline-offset:14px;margin:14px}
.hero-shade{background:linear-gradient(180deg,rgba(22,18,12,0) 50%,rgba(22,18,12,.55))}
.hero-fan{position:absolute;left:50%;bottom:26px;width:120px;margin-left:-60px;color:var(--gold-2);z-index:1}
.hero-bottom{grid-area:bottom;margin:0;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:22px 36px}
.hero-bottom>p{max-width:36ch;opacity:.8}
.hero .pill{color:var(--gold-2)}
.hero .pill:hover{color:var(--onyx)}
.hero-stats{width:100%;border-top:1px solid rgba(223,192,120,.3);padding-top:22px;gap:0}
.hero-stats div{flex:1;border-left:0;border-right:1px solid rgba(223,192,120,.25);padding:0 20px 0 0;margin-right:20px}
.hero-stats div:last-child{border:0}
.hero-stats b{font-size:clamp(34px,3vw,46px);color:var(--gold-2)}
.hero-rating{border-radius:0;background:transparent;border-color:rgba(223,192,120,.45)}

/* marquee — gilt italic on onyx */
.marquee{background:var(--onyx);border-block:1px solid rgba(223,192,120,.35);padding:26px 0}
.marquee-row{font-style:italic;font-weight:300}
.marquee-row i{-webkit-text-fill-color:var(--gold-2);color:var(--gold-2)}

/* section heads: centred, with a gold rule */
.section-head{flex-direction:column;align-items:center;text-align:center;gap:20px}
.section-head h2{text-align:center;font-size:clamp(48px,7vw,118px)}
.section-head::after{content:"";width:1px;height:56px;background:linear-gradient(var(--gold),transparent);margin-top:6px}

/* treatments → two-column tiled index */
.t-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(180,138,58,.4)}
.t-list li{grid-template-columns:54px 1fr 34px;grid-template-areas:"num name arrow" "num tags arrow";row-gap:6px;padding:30px 26px;border-bottom:1px solid rgba(180,138,58,.4)}
.t-list li:nth-child(odd){border-right:1px solid rgba(180,138,58,.4)}
.t-list li:last-child{grid-column:1/-1;border-right:0}
.t-num{grid-area:num;align-self:start;padding-top:12px;color:var(--gold);opacity:1;font-size:13px;letter-spacing:.1em}
.t-name{grid-area:name;font-size:clamp(34px,3.4vw,56px)}
.t-tags{grid-area:tags;text-align:left;font-size:12px;letter-spacing:.08em}
.t-arrow{grid-area:arrow;color:var(--gold)}
.t-list li::before{background:var(--onyx)}
.t-list li:hover{color:var(--gold-2);padding-left:34px;padding-right:20px}
.t-float{border-radius:0;outline:1px solid var(--gold-2);outline-offset:8px}

/* manifesto — onyx chapter with medallion stats */
.manifesto{background:var(--onyx);color:var(--ivory);text-align:center;display:flex;flex-direction:column;align-items:center}
.manifesto-text{margin-inline:auto;max-width:17em;font-weight:300}
.manifesto-lotus{position:static;width:clamp(110px,12vw,170px);color:var(--gold-2);margin-bottom:34px}
.manifesto-stats{width:100%;max-width:1100px;border-top:0;justify-items:center}
.manifesto-stats>div{width:min(280px,72vw);aspect-ratio:1;border-radius:50%;border:1px solid rgba(223,192,120,.45);display:flex;flex-wrap:wrap;align-content:center;justify-content:center;padding:30px;outline:1px solid rgba(223,192,120,.18);outline-offset:-12px}
.manifesto-stats strong{background:var(--gilt);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:clamp(54px,5.4vw,86px)}
.manifesto-stats span{color:var(--gold-2);font-size:clamp(40px,4vw,64px)}
.manifesto-stats p{flex-basis:100%;color:rgba(247,241,230,.7);font-size:13px}

/* results: tabs left, slider right, gold frame */
.ba-wrap{grid-template-columns:1fr 1.25fr}
.ba-wrap .ba{order:2;border-radius:0;outline:1px solid var(--gold);outline-offset:12px}
.ba-handle{background:var(--gold-2)}
.ba-handle span{background:var(--onyx);color:var(--gold-2);border-radius:0;transform:translate(-50%,-50%) rotate(45deg);width:50px;height:50px}
.ba-handle span{font-size:0}
.ba-handle span::after{content:"⟷";font-size:18px;transform:rotate(-45deg)}
.ba-tag{border-radius:0;background:rgba(22,18,12,.7);color:var(--gold-2)}
.ba-tabs{border-top-color:rgba(180,138,58,.4)}
.ba-tab{border-bottom-color:rgba(180,138,58,.4)}
.ba-tab.is-on{color:var(--gold)}

/* collage — deep bronze-black with gilt outlines */
.collage{background:radial-gradient(ellipse at 50% 50%,#2b2215,var(--onyx) 70%)}
.c-item::before{border-color:rgba(223,192,120,.7)}
.c-title{color:var(--gold-2)}

/* tech stack — onyx with gilded cards */
.tech{background:var(--onyx-2)}
.s-card{border-radius:2px;outline:1px solid rgba(180,138,58,.5);outline-offset:-14px}
.s-copy li{border-radius:0;border-color:rgba(180,138,58,.6)}
.s-copy span{color:var(--gold)}

/* ritual — cream with framed rectangles and diamond steps */
.ritual{background:var(--sand)}
.r-img{border-radius:0;outline:1px solid var(--gold);outline-offset:10px;overflow:hidden}
.r-step{border-radius:0;transform:rotate(45deg);background:rgba(22,18,12,.6);border-color:var(--gold-2);color:var(--gold-2);font-size:18px}
.ritual-progress i{background:var(--gold)}

/* packages rail — gilt "certificates" on onyx */
.packages{background:var(--onyx);color:var(--ivory)}
.packages .section-head .eyebrow{color:var(--gold-2)}
.p-card{background:transparent;border:1px solid rgba(223,192,120,.4);border-radius:0;outline:1px solid rgba(223,192,120,.15);outline-offset:-10px;color:var(--ivory)}
.p-card:hover{box-shadow:0 30px 60px -30px rgba(0,0,0,.7);border-color:var(--gold-2)}
.p-card.is-dark{background:var(--gilt);color:var(--onyx);border-color:transparent}
.p-card.is-dark .p-area,.p-card.is-dark li::before{color:var(--onyx)}
.p-area{color:var(--gold-2)}
.p-price{color:var(--gold-2)}
.p-card.is-dark .p-price,.p-card.is-dark .p-cta{color:var(--onyx)}
.p-cta{color:var(--gold-2);letter-spacing:.14em;text-transform:uppercase;font-size:11px}
.p-foot{color:var(--ivory)}
.p-progress{background:rgba(223,192,120,.25)}
.p-progress i{background:var(--gold-2)}

/* zoom — rectangular gilt window */
.zoom{background:var(--onyx)}
.zoom-frame{border-radius:0;outline:1px solid var(--gold-2);outline-offset:12px}

/* reviews */
.rv{border-radius:0;background:#fffaf1;border-top:2px solid var(--gold)}
.rv blockquote{font-size:25px;font-weight:300}
.rv-score strong{background:var(--gilt-deep);-webkit-background-clip:text;background-clip:text;color:transparent}

/* locations teaser — city grid */
.loc-teaser{background:var(--sand);grid-template-columns:1fr;text-align:center;justify-items:center}
.loc-cities{justify-content:center;max-width:1100px}
.loc-cities a{border-color:rgba(180,138,58,.45);font-weight:300}
.loc-cities a:hover{background:var(--onyx);color:var(--gold-2)}
.loc-teaser .pill{justify-self:center;background:var(--onyx);color:var(--gold-2)}
.loc-teaser .pill b{background:var(--gilt);color:var(--onyx)}

/* CTA — onyx with gilt orb */
.cta{background:radial-gradient(ellipse at 50% 100%,#2c2316,var(--onyx) 65%);color:var(--ivory)}
.cta .eyebrow{color:var(--gold-2)}
.cta-lotus{color:var(--gold-2)}
.cta-orb{background:var(--gilt);color:var(--onyx);font-weight:500;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.cta-orb:hover{background:var(--ivory)}

/* footer */
.footer{background:var(--onyx-2)}
.footer .eyebrow{color:var(--gold)}
.f-logo{filter:invert(1) sepia(.7) saturate(2.2) hue-rotate(-12deg) brightness(.95)}
.f-word span{background:var(--gilt);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:300}
.f-bottom{border-top-color:rgba(223,192,120,.25)}
.bookbar{border-radius:0;background:rgba(14,11,7,.92);border:1px solid rgba(223,192,120,.45)}
.bookbar b{border-radius:0;background:var(--gilt);color:var(--onyx)}
.bookbar-dot{background:var(--gold-2)}

/* INNER PAGE HERO — onyx, centred title, wide framed panorama below */
.page-hero{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:0;padding:clamp(140px,19vh,190px) var(--gut) clamp(60px,8vw,110px);background:radial-gradient(ellipse 60% 50% at 50% 30%,#2a2114,transparent 70%),var(--onyx);color:var(--ivory)}
.page-hero .eyebrow{color:var(--gold-2)}
.ph-copy{display:flex;flex-direction:column;align-items:center}
.ph-intro{color:rgba(247,241,230,.75);margin-inline:auto}
.ph-lotus{position:static;order:-1;width:clamp(90px,9vw,130px);color:var(--gold-2);margin-bottom:26px}
.ph-img{width:100%;height:min(58svh,560px);margin-top:clamp(50px,6vw,80px);border-radius:0;outline:1px solid rgba(223,192,120,.5);outline-offset:14px}
.page-hero.ph-compact{min-height:0}

/* treatments page — alternating catalogue */
.tx-tools{background:linear-gradient(var(--ivory) 82%,rgba(247,241,230,0))}
.tx-search{border-bottom-color:var(--gold)}
.tx-search svg{stroke:var(--gold)}
.cat{border-top-color:rgba(180,138,58,.4)}
.cat-img{border-radius:0;outline:1px solid var(--gold);outline-offset:10px;margin:10px}
.cat:nth-child(even){grid-template-columns:1.6fr minmax(220px,.8fr)}
.cat:nth-child(even) .cat-img{order:2}
.cat-count{color:var(--gold)}
.tx{border-color:rgba(180,138,58,.4)}
.tx:hover{background:var(--onyx);color:var(--gold-2);border-color:var(--onyx)}
.result-img{border-radius:0;outline:1px solid var(--gold);outline-offset:10px}
.result-list li::before{color:var(--gold)}

/* packages page */
.pk-grid .p-card{background:#fffaf1;color:var(--ink);border-color:rgba(180,138,58,.5);outline-color:rgba(180,138,58,.25)}
.pk-grid .p-card .p-area,.pk-grid .p-card .p-price,.pk-grid .p-card .p-cta{color:var(--gold)}
.pk-grid .p-card.is-dark{background:var(--onyx);color:var(--ivory);border-color:var(--gold)}
.pk-grid .p-card.is-dark .p-area,.pk-grid .p-card.is-dark .p-price,.pk-grid .p-card.is-dark .p-cta{color:var(--gold-2)}
.pk-grid .p-card.is-dark li::before{color:var(--gold-2)}
.perk{border-radius:0;background:var(--mist);border:1px solid rgba(180,138,58,.35)}
.perk-dark{background:var(--onyx);color:var(--ivory)}
.perk-lotus{background:var(--gilt);border:0}
.perk-lotus p,.perk-lotus .eyebrow{color:var(--onyx)}

/* about page */
.pillars-grid{border-radius:0;background:rgba(180,138,58,.4);border-color:rgba(180,138,58,.4);grid-template-columns:repeat(2,1fr)}
.pl{background:var(--ivory);flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 22px;min-height:0}
.pl-n{font-family:var(--serif);font-size:54px;letter-spacing:0;line-height:1;background:var(--gilt-deep);-webkit-background-clip:text;background-clip:text;color:transparent}
.pl h3{margin:0;flex:1}
.pl p{flex-basis:100%}
.pl:hover{background:var(--onyx);color:var(--gold-2)}
.tm{border-radius:0;border-color:rgba(180,138,58,.45);outline:1px solid rgba(180,138,58,.18);outline-offset:-10px}
.tm-mono,.tm-small .tm-mono{background:var(--gilt);color:var(--onyx)}
.studio-row img{border-radius:0}

/* locations page — onyx, map left, list right */
.locations{background:var(--onyx)}
.loc-split{grid-template-columns:1fr 1.2fr}
.loc-map{order:-1;border-radius:0;outline:1px solid rgba(223,192,120,.5);outline-offset:12px;overflow:visible}
.loc-map iframe{filter:grayscale(1) sepia(.45) contrast(.95) brightness(.92)}
.loc-card{border-radius:0;border-top:2px solid var(--gold)}
.lf{border-color:rgba(223,192,120,.45)}
.lf.is-on{background:var(--gilt);color:var(--onyx)}
.loc-list li.is-active .l-city{color:var(--gold-2)}
.l-tel{border-color:rgba(223,192,120,.5)}
.l-tel:hover{background:var(--gold-2);color:var(--onyx)}

/* results page */
.bw-img{border-radius:0;outline:1px solid var(--gold);outline-offset:8px;margin:8px}
.bw-tag-after{background:var(--gilt);color:var(--onyx)}
.rv-wall .rv:nth-child(3n+2){background:var(--onyx);color:var(--ivory)}
.quote-band{background:var(--onyx)}
.quote-band .lotus{color:var(--gold-2)}
.results-device{background:var(--mist)}

/* contact page — details column left, form right */
.booking{grid-template-columns:1fr 1.7fr}
.bk-aside{order:-1;border:1px solid rgba(180,138,58,.45);padding:clamp(24px,3vw,40px);outline:1px solid rgba(180,138,58,.18);outline-offset:-10px}
.bk-phone{background:var(--gilt-deep);-webkit-background-clip:text;background-clip:text;color:transparent}
.bk{border-radius:0;border-top:3px solid var(--gold)}
.bk-steps li.is-on{border-color:var(--gold)}
.bk-loc{border-radius:0}
.bk-loc:has(input:checked),.bk-interest .chip:has(input:checked){background:var(--onyx);color:var(--gold-2);border-color:var(--onyx)}
.faq h2 em{display:inline-block}
.faq-list details{border-bottom-color:rgba(180,138,58,.4)}

@media (max-width:900px){
  .nav{grid-template-columns:1fr auto}
  .nav-logo{justify-self:start}
  .hero{grid-template-columns:1fr;grid-template-areas:"top" "title" "media" "bottom";padding-top:110px}
  .hero-media{min-height:52svh;margin:14px 14px 10px}
  .hero-title .line:nth-child(3){padding-left:0}
  .hero-stats{display:flex}
  .hero-stats div{padding-right:12px;margin-right:12px}
  .t-list{grid-template-columns:1fr}
  .t-list li,.t-list li:nth-child(odd){border-right:0;padding:24px 6px;grid-template-columns:40px 1fr 28px}
  .t-list li .t-tags{display:block}
  .manifesto-stats{gap:20px}
  .ba-wrap{grid-template-columns:1fr}
  .ba-wrap .ba{order:0}
  .cat:nth-child(even){grid-template-columns:1fr}
  .cat:nth-child(even) .cat-img{order:0}
  .pillars-grid{grid-template-columns:1fr}
  .loc-split{grid-template-columns:1fr}
  .booking{grid-template-columns:1fr}
  .bk-aside{order:2}
  .ph-img{height:40svh}
}

/* gold edition — review fixes */
.eyebrow{display:flex;width:fit-content}
.cta .eyebrow,.quote-band .eyebrow,.bk-done .eyebrow{margin-inline:auto}
.r-step{transform:none}
.loc-split{grid-template-columns:1fr 1.45fr}
.l-city{font-size:clamp(28px,2.5vw,42px)}
@media (max-width:900px){.loc-split{grid-template-columns:1fr}.bw-img{outline-offset:5px;margin:5px}}

/* gilt logo (img/logo.svg) reads on onyx and cream — never invert it */
.nav .nav-logo img,.nav.is-dark:not(.is-solid) .nav-logo img,body.menu-open .nav .nav-logo img,.f-logo{filter:none!important}
.f-logo{width:240px}

/* =====================================================================
   GOLD EDITION — LIGHTER (10-22 user: "too dark").
   Cream/champagne is now the base; onyx is kept only as accents
   (marquee band, final CTA, footer). Gilt text on light = --gilt-deep.
   ===================================================================== */
:root{--champagne:#f3e8d3;--champagne-2:#ead9b8}
:is(.hero,.page-hero,.manifesto,.packages,.tech,.collage,.locations,.quote-band,.zoom) :is(h1,h2,h3) em,.quote-band em{background-image:var(--gilt-deep)}

/* home hero */
.hero{background:radial-gradient(ellipse 70% 60% at 85% 40%,#fbf3e2,transparent 70%),linear-gradient(180deg,var(--ivory),var(--champagne));color:var(--ink)}
.hero .eyebrow{color:var(--gold)}
.hero-media{outline-color:rgba(180,138,58,.55)}
.hero-shade{background:linear-gradient(180deg,rgba(22,18,12,0) 60%,rgba(22,18,12,.35))}
.hero .pill{color:var(--ink)}
.hero-stats{border-top-color:rgba(180,138,58,.35)}
.hero-stats div{border-right-color:rgba(180,138,58,.3)}
.hero-stats b{color:var(--gold)}
.hero-rating{border-color:rgba(180,138,58,.45)}

/* manifesto */
.manifesto{background:var(--ivory);color:var(--ink)}
.manifesto-lotus{color:var(--gold)}
.manifesto-stats>div{border-color:rgba(180,138,58,.5);outline-color:rgba(180,138,58,.2);background:#fffaf1}
.manifesto-stats strong{background:var(--gilt-deep);-webkit-background-clip:text;background-clip:text}
.manifesto-stats span{color:var(--gold)}
.manifesto-stats p{color:var(--ink-2)}

/* collage */
.collage{background:radial-gradient(ellipse at 50% 50%,#fbf4e6,var(--champagne) 75%);color:var(--ink)}
.c-item::before{border-color:rgba(180,138,58,.6)}
.c-title{color:var(--ink)}
.c-frame{box-shadow:0 30px 60px -34px rgba(90,64,20,.45)}

/* tech stack */
.tech{background:var(--sand)}
.section-head.light{color:var(--ink)}
.section-head.light .eyebrow{color:var(--gold)}
.tech-more{color:var(--ink-2)}
.s-card::after{background:var(--sand)}

/* packages rail */
.packages{background:var(--champagne);color:var(--ink)}
.packages .section-head .eyebrow{color:var(--gold)}
.p-card{background:#fffaf1;border-color:rgba(180,138,58,.45);outline-color:rgba(180,138,58,.2);color:var(--ink)}
.p-card:hover{box-shadow:0 30px 60px -30px rgba(90,64,20,.35);border-color:var(--gold)}
.p-area,.p-price,.p-cta{color:var(--gold)}
.p-card li::before{color:var(--gold)}
.p-foot{color:var(--ink)}
.p-progress{background:rgba(180,138,58,.25)}
.p-progress i{background:var(--gold)}

/* zoom */
.zoom{background:var(--ivory)}
.zoom-frame{outline-color:var(--gold)}

/* inner page heroes */
.page-hero{background:radial-gradient(ellipse 60% 50% at 50% 30%,#fbf3e2,transparent 70%),linear-gradient(180deg,var(--ivory),var(--champagne));color:var(--ink)}
.page-hero .eyebrow{color:var(--gold)}
.ph-intro{color:var(--ink-2)}
.ph-lotus{color:var(--gold)}
.ph-img{outline-color:rgba(180,138,58,.55)}

/* locations page */
.locations{background:var(--champagne);color:var(--ink)}
.loc-map{outline-color:rgba(180,138,58,.55)}
.loc-map iframe{filter:grayscale(1) sepia(.35) contrast(.95) brightness(1.02)}
.loc-card{box-shadow:0 20px 40px -24px rgba(90,64,20,.4)}
.lf{border-color:rgba(180,138,58,.5);color:var(--ink)}
.lf.is-on{color:var(--onyx)}
.loc-list li.is-active .l-city{color:var(--gold)}
.l-tel{border-color:rgba(180,138,58,.5)}
.l-tel:hover{background:var(--onyx);color:var(--gold-2)}

/* results page */
.rv-wall .rv:nth-child(3n+2){background:var(--champagne);color:var(--ink)}
.quote-band{background:var(--champagne);color:var(--ink)}
.quote-band .lotus{color:var(--gold)}
.quote-band .eyebrow{color:var(--gold)}

/* about page tiles: hover stays light */
.pl:hover{background:var(--champagne);color:var(--ink)}

/* remaining dark accents: lift onyx to a warm espresso so they read rich, not black */
.marquee,.cta{--onyx:#2a2117}
.cta{background:radial-gradient(ellipse at 50% 100%,#4a3a24,#2a2117 65%)}
.footer{background:#211a11}
