:root{--ink:#070808;--ink-2:#0d0f0f;--surface:#111413;--surface-2:#171a19;--ivory:#f1ece2;--muted:#a6a198;--gold:#c5a464;--gold-hi:#e2c98c;--gold-low:#796036;--green:#7f9b82;--line:rgba(226,201,140,.16);--metal:linear-gradient(110deg,#765b30,#e5cc91 46%,#947341 72%,#d5b872);--ease:cubic-bezier(.22,1,.36,1);--ease-out:cubic-bezier(.16,1,.3,1);--shell:min(1480px,calc(100% - 112px));--header:76px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);scroll-padding-top:90px}body{margin:0;color:var(--ivory);background:var(--ink);font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}body::before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.022;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E")}body.is-locked{overflow:hidden}.shell{width:var(--shell);margin-inline:auto}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500}h2{font-size:clamp(62px,7.2vw,122px);line-height:.82;letter-spacing:-.055em;margin:0}h2 em,h1 em{font-weight:500;color:var(--gold-hi)}button,a{-webkit-tap-highlight-color:transparent}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:2000;left:16px;top:16px;background:var(--ivory);color:var(--ink);padding:10px 16px;transform:translateY(-150%)}.skip-link:focus{transform:none}.section{padding-block:clamp(110px,11vw,180px);position:relative}.section-index{font:600 10px/1 Manrope,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 36px}.section-index span{color:var(--gold-hi);margin-right:8px}.section-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:9vw;align-items:end;margin-bottom:clamp(62px,7vw,110px)}.section-heading>p{max-width:500px;margin:0;color:#b8b2a9;font-size:17px}.button{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:56px;padding:0 26px;border:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;overflow:hidden;cursor:pointer;transition:transform .5s var(--ease),border-color .35s,color .35s,background .35s}.button span{font-size:18px;line-height:1}.button-primary{color:#090b0a;background:var(--metal);border-color:transparent;box-shadow:0 14px 45px rgba(197,164,100,.15)}.button-primary::before{content:"";position:absolute;inset:-60% auto -60% -40%;width:28%;transform:rotate(18deg) translateX(-200%);background:rgba(255,255,255,.55);filter:blur(8px);transition:transform .8s var(--ease)}.button-primary:hover::before,.button-primary:focus-visible::before{transform:rotate(18deg) translateX(600%)}.button-ghost{background:rgba(8,10,10,.28);backdrop-filter:blur(10px)}.button-ghost::before{content:"";position:absolute;inset:100% 0 0;background:var(--ivory);transition:inset .45s var(--ease);z-index:-1}.button-ghost:hover,.button-ghost:focus-visible{color:var(--ink);border-color:var(--ivory)}.button-ghost:hover::before,.button-ghost:focus-visible::before{inset:0}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--ivory);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding-bottom:5px;background:linear-gradient(var(--gold),var(--gold)) 0 100%/28px 1px no-repeat;transition:background-size .4s var(--ease),color .3s;cursor:pointer}.text-link:hover,.text-link:focus-visible{background-size:100% 1px;color:var(--gold-hi)}:focus-visible{outline:2px solid var(--gold-hi);outline-offset:4px}

/* entrance / progress */
.page-progress{position:fixed;z-index:1200;inset:0 0 auto;height:2px;background:rgba(255,255,255,.04)}.page-progress span{display:block;width:100%;height:100%;background:var(--metal);transform:scaleX(0);transform-origin:left}.intro-curtain{position:fixed;z-index:1500;inset:0;background:#050606;display:grid;place-items:center;transition:transform 1s var(--ease),visibility 1s;transform-origin:top}.intro-curtain>div{display:grid;place-items:center;text-align:center}.intro-mark{width:60px;height:60px;border:1px solid var(--gold-low);border-radius:50%;display:grid;place-items:center;color:var(--gold-hi);font:500 34px "Cormorant Garamond"}.intro-curtain strong{font:500 42px/1 "Cormorant Garamond";letter-spacing:.18em;margin:20px 0 14px}.intro-curtain i{display:block;width:120px;height:1px;background:var(--metal);transform:scaleX(0);animation:introLine .8s .1s var(--ease) forwards}.intro-curtain small{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:13px}.is-ready .intro-curtain{transform:scaleY(0);visibility:hidden}.is-ready .intro-curtain>div{opacity:0;transition:opacity .25s .25s}.cursor-light{position:fixed;z-index:3;left:0;top:0;width:420px;height:420px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(197,164,100,.055),transparent 67%);transform:translate3d(-50%,-50%,0);opacity:0;transition:opacity .4s}.cursor-light.is-active{opacity:1}@keyframes introLine{to{transform:scaleX(1)}}

/* header */
.site-header{position:fixed;z-index:1000;inset:2px 0 auto;height:var(--header);border-bottom:1px solid transparent;transition:background .45s,border .45s,height .45s;pointer-events:none}.site-header.is-scrolled{background:rgba(7,8,8,.82);border-color:rgba(255,255,255,.07);backdrop-filter:blur(18px);height:70px}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:34px;pointer-events:auto}.brand{display:flex;flex-direction:column;line-height:1}.brand-name{font:600 27px/.9 "Cormorant Garamond";letter-spacing:.13em}.brand-sub{font-size:7.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:7px}.desktop-nav{display:flex;align-items:center;gap:32px}.desktop-nav a{position:relative;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#c0bbb2;padding-block:12px;transition:color .3s}.desktop-nav a::before{content:"";position:absolute;left:-10px;top:50%;width:3px;height:3px;border-radius:50%;background:var(--gold);transform:scale(0);transition:transform .3s}.desktop-nav a:hover,.desktop-nav a.is-active{color:var(--ivory)}.desktop-nav a.is-active::before{transform:scale(1)}.header-actions{display:flex;align-items:center;gap:9px}.header-book{font-size:10px;text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--line);padding:11px 18px;transition:color .3s,background .3s}.header-book:hover{color:var(--ink);background:var(--ivory)}.icon-button{width:43px;height:43px;border:1px solid var(--line);background:rgba(8,10,10,.36);display:grid;place-items:center;position:relative;cursor:pointer}.icon-button svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.5}.cart-count{position:absolute;right:-4px;top:-5px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 3px;border-radius:9px;background:var(--gold-hi);color:var(--ink);font-size:8px;font-weight:700}.menu-trigger{display:none}.menu-trigger span,.menu-close span,.cart-close span{position:absolute;width:16px;height:1px;background:currentColor}.menu-trigger span:first-child{transform:translateY(-3px)}.menu-trigger span:last-child{transform:translateY(3px)}.menu-close span:first-child,.cart-close span:first-child{transform:rotate(45deg)}.menu-close span:last-child,.cart-close span:last-child{transform:rotate(-45deg)}.cart-count.is-pop{animation:pop .42s var(--ease)}@keyframes pop{50%{transform:scale(1.5)}}

/* hero */
.hero{min-height:100svh;position:relative;display:grid;align-items:center;overflow:hidden;background:#070808}.hero-scene,.hero-scene picture,.hero-scene img{position:absolute;inset:0;width:100%;height:100%}.hero-scene{clip-path:inset(0 0 0 100%);transition:clip-path 1.45s .38s var(--ease);will-change:clip-path}.is-ready .hero-scene{clip-path:inset(0)}.hero-scene img{object-fit:cover;object-position:64% center;transform:scale(1.055);transition:transform 2s .35s var(--ease);filter:saturate(.82) contrast(1.04)}.is-ready .hero-scene img{transform:scale(1.005)}.hero::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(4,5,5,.99) 0%,rgba(4,5,5,.83) 33%,rgba(4,5,5,.26) 62%,rgba(4,5,5,.44)),linear-gradient(0deg,rgba(5,6,6,.95),transparent 34%,rgba(5,6,6,.2));pointer-events:none}.hero::after{content:"";position:absolute;z-index:1;inset:0;box-shadow:inset 0 0 180px rgba(0,0,0,.64);pointer-events:none}.hero-layers{position:absolute;z-index:2;inset:0;pointer-events:none}.hero-glow{position:absolute;width:42vw;height:42vw;right:4vw;top:8vh;border-radius:50%;background:radial-gradient(circle,rgba(177,97,48,.21),transparent 64%);filter:blur(10px);animation:glowPulse 7s ease-in-out infinite alternate}.hero-line{position:absolute;left:52%;top:16%;height:56%;width:1px;background:linear-gradient(transparent,var(--line),transparent)}.hero-sweep{position:absolute;width:1px;height:70%;top:10%;background:linear-gradient(transparent,rgba(226,201,140,.38),transparent);opacity:.2;transform:rotate(21deg);animation:sweep 10s ease-in-out infinite}.sweep-one{left:67%}.sweep-two{left:82%;animation-delay:-5s;height:40%}.hero-content{position:relative;z-index:4;min-height:100svh;padding-top:calc(var(--header) + 8vh);padding-bottom:135px;display:grid;grid-template-columns:minmax(0,720px) 1fr;align-content:center}.hero-copy{grid-column:1;max-width:710px}.eyebrow{font-size:10px;letter-spacing:.21em;text-transform:uppercase;color:var(--gold-hi);margin-bottom:25px}.hero-title{font-size:clamp(70px,7.7vw,138px);line-height:.73;letter-spacing:-.055em;margin:0 0 35px}.hero-title span{display:block}.hero-title .hero-accent{font-size:.47em;line-height:1.15;margin-top:20px;letter-spacing:-.025em;color:#d7d1c6}.hero-lead{max-width:610px;color:#c2bdb4;font-size:17px;margin-bottom:30px}.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}.hero-micro{font-size:10px;color:#9c978e;margin:12px 0 0}.hero-enter{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.is-ready .hero-enter{opacity:1;transform:none}.hero-copy>.hero-enter:nth-child(1){transition-delay:.48s}.hero-title>.hero-enter:nth-child(1){transition-delay:.53s}.hero-title>.hero-enter:nth-child(2){transition-delay:.61s}.hero-title>.hero-enter:nth-child(3){transition-delay:.69s}.hero-copy>.hero-enter:nth-child(3){transition-delay:.74s}.hero-copy>.hero-enter:nth-child(4){transition-delay:.82s}.hero-copy>.hero-enter:nth-child(5){transition-delay:.88s}.availability{position:absolute;right:6%;top:24%;display:flex;align-items:center;gap:13px;padding:15px 18px;background:rgba(10,12,11,.55);border:1px solid var(--line);backdrop-filter:blur(16px);transition-delay:.9s}.availability small,.availability strong{display:block}.availability small{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#aaa59c}.availability strong{font:500 18px "Cormorant Garamond"}.status-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(127,155,130,.12),0 0 16px var(--green)}.hero-seal{position:absolute;right:8%;bottom:23%;width:132px;height:132px;display:grid;place-items:center;transition-delay:1s}.hero-seal svg{position:absolute;inset:0;animation:sealSpin 24s linear infinite}.hero-seal text{fill:#c9c1b5;font:600 7.3px Manrope;letter-spacing:2.1px}.hero-seal b{font:500 43px "Cormorant Garamond";color:var(--gold-hi)}.hero-proof{position:absolute;left:0;bottom:40px;display:flex;align-items:end;gap:50px;transition-delay:.94s}.proof-stars span{display:block;color:var(--gold-hi);font-size:10px;letter-spacing:.1em}.proof-stars strong{font:500 22px "Cormorant Garamond";margin-right:8px}.proof-stars small{font-size:9px;color:var(--muted)}.hero-proof>a{font-size:10px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--line);padding-bottom:4px}.hero-stats{position:absolute;z-index:5;right:0;bottom:0;width:52%;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(8,10,10,.7);border:1px solid rgba(255,255,255,.07);border-right:0;backdrop-filter:blur(16px)}.hero-stats div{padding:23px 24px;border-right:1px solid rgba(255,255,255,.07)}.hero-stats strong,.hero-stats small{display:block}.hero-stats strong{font:500 22px "Cormorant Garamond"}.hero-stats small{font-size:8px;letter-spacing:.08em;color:#aaa59c;text-transform:uppercase;margin-top:4px}@keyframes glowPulse{to{transform:scale(1.08) translate(-2%,3%);opacity:.7}}@keyframes sweep{50%{transform:rotate(21deg) translateX(30px);opacity:.06}}@keyframes sealSpin{to{transform:rotate(360deg)}}

.marquee-section{overflow:hidden;border-block:1px solid var(--line);padding:21px 0;background:#0b0d0c}.marquee-track{width:max-content;display:flex;animation:marquee 28s linear infinite}.marquee-track span{font:500 clamp(28px,3.5vw,54px)/1 "Cormorant Garamond";letter-spacing:.04em;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(241,236,226,.35)}.marquee-track em{color:var(--gold);-webkit-text-stroke:0;font-weight:500}@keyframes marquee{to{transform:translateX(-50%)}}

/* manifesto/services */
.manifesto{background:linear-gradient(130deg,#0b0d0d,#080909 60%)}.manifesto-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:9vw;align-items:end}.manifesto h2{font-size:clamp(58px,6.8vw,112px)}.manifesto-side>p{font-size:18px;color:#c0bbb2}.proof-list{list-style:none;margin:35px 0 22px;padding:0}.proof-list li{font-size:12px;padding:13px 0;border-top:1px solid var(--line)}.proof-list li::before{content:"✓";color:var(--gold);margin-right:11px}.manifesto-side>small{font-size:9px;color:#77746e}.services{background:#0b0d0d}.services-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.service-card{grid-column:span 4;min-height:390px;position:relative;padding:32px;background:linear-gradient(145deg,rgba(255,255,255,.035),transparent),var(--surface);border:1px solid rgba(255,255,255,.065);overflow:hidden;display:flex;flex-direction:column;transition:transform .55s var(--ease),border-color .4s}.service-card:nth-child(1),.service-card.featured{grid-column:span 6}.service-card.featured{background:linear-gradient(90deg,rgba(7,8,8,.95),rgba(7,8,8,.5)),url('assets/hero-noir.webp') 65% center/cover}.spotlight-card::before,.service-card::before,.pack-card::before,.product-card::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(380px circle at var(--mx,50%) var(--my,40%),rgba(226,201,140,.12),transparent 48%);opacity:0;transition:opacity .35s}.spotlight-card:hover::before,.service-card:hover::before,.pack-card:hover::before,.product-card:hover::before{opacity:1}.service-card:hover{transform:translateY(-7px);border-color:rgba(226,201,140,.28)}.card-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);position:relative}.card-top span:first-child{font:500 23px "Cormorant Garamond";color:var(--gold-hi)}.badge{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:50px;padding:6px 9px}.badge::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold-hi);box-shadow:0 0 9px var(--gold)}.service-card h3{font-size:clamp(35px,3.4vw,54px);line-height:.95;margin:48px 0 13px;position:relative}.service-card>p{max-width:420px;color:#aaa69e;font-size:13px;position:relative}.include-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.include-chips span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;padding:5px 8px;border:1px solid rgba(255,255,255,.09);color:#bbb6ad}.service-meta{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding-top:18px;margin-top:auto;position:relative}.service-meta span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.service-meta strong{font:500 30px "Cormorant Garamond"}.service-actions{display:flex;align-items:center;gap:18px;margin-top:20px;position:relative}.service-actions .reserve-link{flex:1;background:var(--ivory);color:var(--ink);border:0;min-height:44px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.add-subtle{border:0;background:none;color:#aaa69e;font-size:9px;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;border-bottom:1px solid var(--line);padding:4px 0}.add-subtle:hover{color:var(--gold-hi)}

/* transforms */
.transformations{background:#080909}.transformation-grid{display:grid;grid-template-columns:1.32fr .68fr;gap:14px}.transformation-card{position:relative;background:var(--surface);border:1px solid rgba(255,255,255,.065);overflow:hidden}.transformation-main{grid-row:span 2}.compare{height:280px;position:relative;overflow:hidden;background:#111}.transformation-main .compare{height:660px}.compare-side{position:absolute;inset:0;overflow:hidden}.compare-side img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .8s}.compare-side.before{right:58%;z-index:2}.compare-side.before img{width:238%;max-width:none;filter:grayscale(.9) brightness(.56);object-position:left center}.compare-side.after{left:42%}.compare-side.after img{width:172%;max-width:none;transform:translateX(-42%);filter:saturate(.95) contrast(1.07)}.compare-side span{position:absolute;z-index:2;top:18px;font-size:8px;letter-spacing:.16em;text-transform:uppercase;background:rgba(7,8,8,.74);padding:5px 8px}.before span{left:18px}.after span{right:18px}.compare>i{position:absolute;z-index:4;left:42%;top:0;bottom:0;width:1px;background:var(--gold-hi);box-shadow:0 0 24px rgba(226,201,140,.36);transition:left .65s var(--ease)}.compare>i b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--gold-hi);color:var(--ink);font:400 13px Manrope}.transformation-card:hover .compare>i{left:45%}.transformation-card:hover .compare-side.after img{transform:translateX(-42%) scale(1.025)}.transformation-info{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:25px}.transformation-info small{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.transformation-info h3{font-size:32px;line-height:1;margin:10px 0 4px}.transformation-info p{font-size:10px;color:var(--muted);margin:0}.swipe-hint{display:none}

/* experience */
.experience{background:linear-gradient(120deg,#0d0f0e,#080909)}.experience-layout{display:grid;grid-template-columns:5fr 6fr;gap:9vw;align-items:start}.experience-sticky{position:sticky;top:110px}.experience-sticky h2{font-size:clamp(58px,5.8vw,98px)}.experience-visual{height:min(48vh,490px);margin:44px 0 25px;position:relative;overflow:hidden;border:1px solid var(--line)}.experience-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,7,7,.9),transparent 65%)}.experience-visual img{width:100%;height:110%;object-fit:cover;object-position:75% center;transform:translateY(var(--parallax,0)) scale(1.04);filter:saturate(.72)}.experience-visual>div{position:absolute;z-index:2;inset:auto 25px 22px;display:flex;justify-content:space-between;align-items:end}.experience-visual span{font-size:9px;letter-spacing:.15em;color:var(--gold-hi)}.experience-visual strong{font:500 clamp(24px,3vw,48px)/1 "Cormorant Garamond"}.experience-sticky>p{font-size:11px;color:var(--muted);max-width:440px}.experience-sticky .button{margin-top:12px}.ritual-steps{list-style:none;padding:12vh 0 28vh;margin:0;counter-reset:step}.ritual-steps li{min-height:51vh;padding:56px 8px 40px;display:grid;grid-template-columns:70px 1fr;gap:25px;border-top:1px solid var(--line);opacity:.36;transition:opacity .6s,transform .6s var(--ease)}.ritual-steps li.is-active{opacity:1;transform:translateX(-8px)}.ritual-steps>li>span{font:500 38px/1 "Cormorant Garamond";color:var(--gold-hi)}.ritual-steps small{font-size:8px;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}.ritual-steps h3{font-size:clamp(42px,5vw,76px);line-height:.9;margin:20px 0}.ritual-steps p{max-width:560px;color:#b8b2aa;font-size:16px}

/* packs */
.packs{background:linear-gradient(145deg,#11100e,#0b0c0b 62%)}.packs-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.pack-card{position:relative;min-height:245px;padding:30px;background:var(--surface);border:1px solid rgba(255,255,255,.07);overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:20px;transition:transform .5s var(--ease),border-color .4s}.pack-card.featured{grid-row:span 3;min-height:760px;display:flex;flex-direction:column;background:radial-gradient(circle at 80% 10%,rgba(197,164,100,.17),transparent 30%),linear-gradient(145deg,#191813,#0d0e0d)}.pack-card:hover{transform:translateY(-5px);border-color:rgba(226,201,140,.3)}.pack-number{font:500 22px "Cormorant Garamond";color:var(--gold-hi)}.pack-card .badge{font-size:8px;text-transform:uppercase;letter-spacing:.1em;justify-self:end;align-self:start}.pack-card h3{font-size:clamp(36px,4vw,66px);line-height:.9;margin:28px 0 12px}.pack-card>div>p{font-size:12px;color:var(--muted);max-width:440px}.pack-includes{list-style:none;padding:16px 0 0;margin:0;border-top:1px solid var(--line)}.pack-includes li{font-size:11px;padding:7px 0;color:#c3beb5}.pack-includes li::before{content:"—";color:var(--gold);margin-right:9px}.pack-bottom{align-self:end;display:flex;align-items:end;justify-content:space-between;gap:20px;grid-column:1/-1;margin-top:auto}.pack-price strong{display:block;font:500 52px/1 "Cormorant Garamond"}.pack-price small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.pack-reserve{border:0;background:var(--ivory);color:var(--ink);padding:14px 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}

/* gallery */
.gallery{background:#060707;padding-bottom:clamp(110px,12vw,180px)}.gallery-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:60px}.gallery-head h2{text-align:right}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:330px 250px;gap:12px}.gallery-item{margin:0;position:relative;overflow:hidden;background:#111}.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,7,7,.75),transparent 55%);transition:opacity .5s}.gallery-item img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform .9s var(--ease),filter .7s}.gallery-item:hover img{transform:scale(1.045);filter:saturate(1)}.gallery-item:hover::after{opacity:.6}.gallery-item figcaption{position:absolute;z-index:2;left:20px;bottom:16px;font-size:8px;letter-spacing:.14em;text-transform:uppercase;transition:transform .5s var(--ease)}.gallery-item:hover figcaption{transform:translateY(-7px)}.gallery-item figcaption span{color:var(--gold-hi)}.gallery-a{grid-column:span 5;grid-row:span 2}.gallery-a img{object-position:center}.gallery-b{grid-column:span 4}.gallery-c{grid-column:span 3}.gallery-d{grid-column:6/span 3}.gallery-quote{grid-column:9/span 4;margin:0;padding:30px;background:linear-gradient(140deg,#181712,#0c0e0d);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.gallery-quote>span{font:500 50px "Cormorant Garamond";color:var(--gold-hi)}.gallery-quote p{font:italic 500 31px/1 "Cormorant Garamond"}.gallery-quote small{font-size:8px;color:var(--muted);letter-spacing:.13em}

/* shop */
.shop{background:#0b0d0c}.shop-layout{display:grid;grid-template-columns:5fr 7fr;gap:24px;align-items:start}.shop-feature{position:sticky;top:105px;height:740px;overflow:hidden;background:#111}.shop-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,6,6,.96),transparent 68%)}.shop-feature img{width:100%;height:100%;object-fit:cover;filter:saturate(.76)}.shop-feature>div{position:absolute;z-index:2;inset:auto 38px 35px}.shop-feature span{font-size:9px;color:var(--gold-hi);text-transform:uppercase;letter-spacing:.14em}.shop-feature h3{font-size:56px;line-height:.9;margin:14px 0 24px}.filters{display:flex;gap:5px;margin-bottom:14px;overflow:auto;scrollbar-width:none}.filter{border:1px solid rgba(255,255,255,.08);background:transparent;padding:11px 14px;white-space:nowrap;font-size:9px;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:background .3s,color .3s,border .3s}.filter sup{color:var(--gold);margin-left:4px}.filter.is-active{background:var(--ivory);color:var(--ink);border-color:var(--ivory)}.products-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-card{position:relative;min-height:430px;background:var(--surface);border:1px solid rgba(255,255,255,.06);overflow:hidden;transition:opacity .32s,transform .45s var(--ease),border-color .35s}.product-card.is-filtering{opacity:0;transform:translateY(12px) scale(.98)}.product-card[hidden]{display:none}.product-card:hover{transform:translateY(-5px);border-color:rgba(226,201,140,.24)}.product-visual{height:195px;position:relative;overflow:hidden;background:linear-gradient(145deg,#21221e,#0d0e0d)}.product-visual::before{content:"NOIR";position:absolute;right:-4px;bottom:-23px;font:500 76px "Cormorant Garamond";color:rgba(255,255,255,.035)}.product-bottle{position:absolute;left:50%;bottom:-6px;width:70px;height:130px;transform:translateX(-50%);border-radius:5px 5px 12px 12px;background:linear-gradient(100deg,#111 0%,#35372f 45%,#101211 70%);box-shadow:14px 17px 35px rgba(0,0,0,.5)}.product-bottle::before{content:"";position:absolute;left:16px;right:16px;top:-24px;height:27px;background:#171917;border-radius:3px 3px 0 0}.product-bottle::after{content:attr(data-mark);position:absolute;inset:34px 8px auto;text-align:center;padding:15px 2px;border-block:1px solid var(--gold-low);font:500 13px "Cormorant Garamond";color:var(--gold-hi)}.product-card[data-category="packs"] .product-bottle{width:125px;height:105px}.product-card[data-category="cabello"] .product-visual{background:radial-gradient(circle at 55% 40%,rgba(142,110,57,.25),transparent 35%),#101211}.product-card[data-category="barba"] .product-visual{background:radial-gradient(circle at 55% 40%,rgba(101,62,39,.3),transparent 38%),#101110}.product-info{padding:22px;position:relative}.product-label{display:flex;justify-content:space-between;font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.product-info h3{font-size:28px;line-height:.95;margin:16px 0 8px}.product-info>p{color:var(--muted);font-size:11px;min-height:54px}.product-ideal{font-size:9px!important;color:#c8c2b9!important;border-top:1px solid var(--line);padding-top:10px}.product-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.product-bottom strong{font:500 28px "Cormorant Garamond"}.add-button{border:0;background:var(--ivory);color:var(--ink);padding:11px 13px;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:background .25s}.add-button.is-added{background:var(--green);color:white}.filter-empty{padding:50px;text-align:center;color:var(--muted)}

/* reviews / faq / contact */
.reviews{background:#080909}.review-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin-bottom:120px}.review-metrics div{padding:28px;text-align:center;border-right:1px solid var(--line)}.review-metrics div:last-child{border:0}.review-metrics strong,.review-metrics small{display:block}.review-metrics strong{font:500 50px/1 "Cormorant Garamond";color:var(--gold-hi)}.review-metrics small{text-transform:uppercase;font-size:8px;letter-spacing:.12em;color:var(--muted)}.reviews-layout{display:grid;grid-template-columns:4fr 8fr;gap:7vw}.review-score{border-right:1px solid var(--line)}.review-score>strong{font:500 clamp(110px,13vw,190px)/.75 "Cormorant Garamond";display:block}.review-score>div{color:var(--gold);letter-spacing:.16em;font-size:11px;margin:25px 0 12px}.review-score>span{font-size:9px;color:var(--muted)}.reviews-copy h2{font-size:clamp(60px,6vw,96px);margin-bottom:60px}.review-cards{display:grid;grid-template-columns:1.1fr .9fr;gap:10px}.review-cards blockquote{margin:0;padding:30px;background:var(--surface);border:1px solid rgba(255,255,255,.06);min-height:260px;display:flex;flex-direction:column;justify-content:space-between}.review-cards blockquote:first-child{grid-row:span 2;min-height:530px}.review-cards blockquote p{font:italic 500 clamp(25px,2.5vw,39px)/1.08 "Cormorant Garamond"}.review-cards footer strong,.review-cards footer span{display:block}.review-cards footer strong{font-size:11px}.review-cards footer span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.faq{background:#0d0f0e}.faq-layout{display:grid;grid-template-columns:4fr 7fr;gap:9vw;align-items:start}.faq-heading{position:sticky;top:120px}.faq-heading h2{font-size:clamp(57px,6vw,96px);margin-bottom:30px}.faq-heading>p{max-width:390px;color:var(--muted);font-size:13px}.accordion{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;border:0;background:none;text-align:left;display:grid;grid-template-columns:40px 1fr 30px;align-items:center;gap:16px;padding:27px 0;cursor:pointer}.faq-question>span:first-child{font:500 20px "Cormorant Garamond";color:var(--gold)}.faq-question strong{font:500 clamp(22px,2.2vw,31px) "Cormorant Garamond"}.faq-icon{width:26px;height:26px;border:1px solid var(--line);border-radius:50%;position:relative}.faq-icon::before,.faq-icon::after{content:"";position:absolute;left:7px;right:7px;top:12px;height:1px;background:currentColor;transition:transform .35s}.faq-icon::after{transform:rotate(90deg)}.faq-question[aria-expanded="true"] .faq-icon::after{transform:rotate(0)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}.faq-answer>div{overflow:hidden}.faq-answer p{padding:0 52px 26px 56px;margin:0;color:var(--muted);font-size:13px}.faq-question[aria-expanded="true"]+.faq-answer{grid-template-rows:1fr}.contact{background:#080909}.contact-panel{min-height:650px;padding:clamp(45px,6vw,90px);display:grid;grid-template-columns:7fr 5fr;gap:7vw;align-items:center;position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(100deg,rgba(7,8,8,.96),rgba(7,8,8,.72)),url('assets/hero-noir.webp') center/cover}.contact-glow{position:absolute;width:500px;height:500px;left:35%;bottom:-50%;border-radius:50%;background:rgba(164,86,43,.15);filter:blur(80px)}.contact-copy{position:relative}.contact-copy h2{font-size:clamp(62px,6.7vw,110px)}.contact-copy>p{max-width:600px;color:#bcb6ad;margin:32px 0}.contact-actions{display:flex;gap:8px;flex-wrap:wrap}.contact-copy>small{display:block;color:var(--muted);font-size:9px;margin-top:13px}.contact-card{position:relative;padding:22px;background:rgba(16,19,18,.86);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(18px);box-shadow:0 30px 90px rgba(0,0,0,.35)}.map-art{height:190px;position:relative;overflow:hidden;background:linear-gradient(38deg,transparent 48%,rgba(226,201,140,.18) 49%,transparent 50%),linear-gradient(-35deg,transparent 45%,rgba(255,255,255,.06) 46%,transparent 47%),#121513}.map-art i{position:absolute;height:1px;width:140%;background:rgba(255,255,255,.07);transform:rotate(23deg)}.map-art i:nth-child(1){top:30%;left:-10%}.map-art i:nth-child(2){top:70%;left:-20%}.map-art i:nth-child(3){transform:rotate(-47deg);left:10%;top:20%}.map-art>span{position:absolute;left:51%;top:45%;width:38px;height:38px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--gold-hi);color:var(--ink);display:grid;place-items:center;font:600 20px "Cormorant Garamond"}.map-art>span::first-letter{transform:rotate(45deg)}.map-art>a{position:absolute;right:12px;bottom:10px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;background:rgba(7,8,8,.8);padding:6px 8px}.contact-card dl{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 8px}.contact-card dl div{border-top:1px solid var(--line);padding-top:13px}.contact-card dt{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--gold)}.contact-card dd{margin:8px 0 0;font-size:11px;color:#c0bbb2}.contact-card>p{font-size:9px;display:flex;align-items:center;gap:10px;margin:0 8px}

/* footer */
.site-footer{padding-top:80px;background:#050606;overflow:hidden;border-top:1px solid var(--line)}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between}.footer-top nav{display:flex;gap:24px}.footer-top nav a,.footer-bottom{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.footer-word{font:500 30vw/.62 "Cormorant Garamond";letter-spacing:-.09em;text-align:center;color:#0d0f0e;margin-top:80px;white-space:nowrap}.footer-bottom{padding:25px 0 30px;border-top:1px solid rgba(255,255,255,.04)}

/* overlays / cart */
[hidden]{display:none!important}.overlay-shade{position:absolute;inset:0;background:rgba(3,4,4,.78);backdrop-filter:blur(5px)}.mobile-menu,.cart-modal{position:fixed;z-index:1300;inset:0}.menu-panel,.cart-drawer{position:absolute;right:0;top:0;bottom:0;background:#0b0d0d;border-left:1px solid var(--line);animation:panelIn .55s var(--ease)}.menu-panel{width:min(640px,100%);padding:30px 42px;display:flex;flex-direction:column}.overlay-head,.cart-head{display:flex;align-items:center;justify-content:space-between}.overlay-head>span{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.menu-panel nav{display:flex;flex-direction:column;margin:auto 0}.menu-panel nav a{font:500 clamp(45px,8vh,77px)/1 "Cormorant Garamond";border-bottom:1px solid var(--line);padding:11px 0;transition:color .3s,padding .4s var(--ease)}.menu-panel nav a:hover{color:var(--gold-hi);padding-left:12px}.menu-panel nav a span{font:600 8px Manrope;color:var(--gold);margin-right:20px}.menu-card{padding:16px;border:1px solid var(--line);display:flex;align-items:center;gap:12px}.menu-card p{font-size:10px;margin:0}.menu-card a{margin-left:auto;font-size:9px;text-transform:uppercase;color:var(--gold-hi)}.menu-meta{display:flex;gap:24px;margin-top:20px;font-size:9px;color:var(--muted)}.cart-drawer{width:min(520px,100%);display:grid;grid-template-rows:auto 1fr auto}.cart-head{padding:28px 30px;border-bottom:1px solid var(--line)}.cart-head p{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin:0}.cart-head h2{font-size:42px;line-height:1;margin-top:6px}.cart-title-count{color:var(--muted);font-size:.55em}.cart-body{overflow:auto;padding:12px 30px}.cart-empty{height:100%;min-height:330px;display:grid;place-items:center;text-align:center}.cart-empty-symbol{margin:auto;width:72px;height:72px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font:500 40px "Cormorant Garamond";color:var(--gold-hi)}.cart-empty h3{font-size:32px;margin:22px 0 8px}.cart-empty p{color:var(--muted);font-size:11px}.cart-empty-links{display:flex;justify-content:center;gap:18px}.cart-empty a{font-size:9px;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:3px}.cart-group-title{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin:20px 0 0;padding-bottom:9px;border-bottom:1px solid var(--line)}.cart-item{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.07);display:grid;grid-template-columns:1fr auto;gap:11px}.cart-item-type{font-size:8px;color:var(--gold);text-transform:uppercase;letter-spacing:.1em}.cart-item h3{font-size:23px;margin:3px 0}.cart-item-unit{font-size:9px;color:var(--muted)}.cart-line-price{font:500 20px "Cormorant Garamond"}.cart-item-actions{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.quantity{display:flex;border:1px solid var(--line);align-items:center}.quantity button{width:32px;height:29px;border:0;background:none;cursor:pointer}.quantity span{min-width:25px;text-align:center;font-size:10px}.remove-item{border:0;background:none;color:var(--muted);font-size:9px;text-decoration:underline;cursor:pointer}.cart-footer{padding:22px 30px max(25px,env(safe-area-inset-bottom));background:#101312;border-top:1px solid var(--line)}.cart-total{display:flex;align-items:end;justify-content:space-between}.cart-total span{font-size:10px;text-transform:uppercase}.cart-total strong{font:500 35px "Cormorant Garamond"}.cart-note{font-size:9px;color:var(--muted);margin:5px 0 15px}.checkout{width:100%;min-height:48px;margin-top:7px}.whatsapp-checkout{background:#637a67;border-color:#637a67}.email-checkout{background:transparent}.checkout.is-disabled{opacity:.35;pointer-events:none}@keyframes panelIn{from{transform:translateX(100%)}to{transform:none}}.toast{position:fixed;z-index:1400;left:50%;bottom:27px;transform:translate(-50%,25px);opacity:0;pointer-events:none;background:var(--ivory);color:var(--ink);padding:12px 14px 12px 18px;box-shadow:0 18px 55px rgba(0,0,0,.4);display:flex;align-items:center;gap:25px;font-size:10px;transition:opacity .35s,transform .45s var(--ease)}.toast button{border:0;background:var(--ink);color:var(--ivory);padding:8px 10px;font-size:8px;text-transform:uppercase;cursor:pointer}.toast.is-visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}.mobile-reserve{display:none}

/* reveals */
.js [data-reveal]{opacity:0;transform:translateY(32px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:var(--delay,0ms)}.js [data-reveal="scale"]{transform:scale(.965) translateY(18px)}.js [data-reveal="split"]{transform:translateY(46px)}.js [data-reveal].is-visible{opacity:1;transform:none}
.no-js .intro-curtain{display:none}.no-js .hero-scene{clip-path:none}.no-js .hero-scene img{transform:none}.no-js .hero-enter{opacity:1;transform:none}

@media (max-width:1180px){:root{--shell:min(100% - 72px,1180px)}.desktop-nav{gap:18px}.hero-stats{width:64%}.services-grid .service-card{grid-column:span 6}.transformation-main .compare{height:590px}.experience-layout{gap:6vw}.shop-layout{grid-template-columns:4fr 6fr}.product-card{min-height:455px}.packs-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-rows:280px 220px}}
@media (max-width:900px){:root{--shell:calc(100% - 48px);--header:70px}.desktop-nav,.header-book{display:none}.menu-trigger{display:grid}.hero-content{grid-template-columns:1fr;padding-bottom:170px}.hero-title{font-size:clamp(66px,12.5vw,105px)}.availability{right:4%;top:18%}.hero-seal{width:100px;height:100px;right:6%;bottom:27%}.hero-stats{width:100%}.section-heading,.manifesto-grid{grid-template-columns:1fr;gap:40px}.section-heading>p{margin-left:20%}.transformation-main .compare{height:480px}.experience-layout{grid-template-columns:1fr}.experience-sticky{position:static}.experience-visual{height:420px}.ritual-steps{padding:70px 0 0}.ritual-steps li{min-height:auto;padding:42px 0;opacity:.6}.packs-grid{grid-template-columns:1fr}.pack-card.featured{grid-row:auto;min-height:550px}.gallery-grid{grid-template-rows:280px 220px 230px}.gallery-a{grid-column:span 7;grid-row:span 2}.gallery-b{grid-column:span 5}.gallery-c{grid-column:span 5}.gallery-d{grid-column:span 5;grid-row:3}.gallery-quote{grid-column:6/span 7;grid-row:3}.shop-layout{grid-template-columns:1fr}.shop-feature{position:relative;top:auto;height:520px}.reviews-layout{grid-template-columns:1fr}.review-score{border-right:0;border-bottom:1px solid var(--line);padding-bottom:50px}.faq-layout{grid-template-columns:1fr}.faq-heading{position:static}.contact-panel{grid-template-columns:1fr}.footer-top{align-items:flex-start}.footer-top nav{display:grid;grid-template-columns:1fr 1fr}}
@media (max-width:680px){:root{--shell:calc(100% - 40px)}body{font-size:14px;padding-bottom:68px}.section{padding-block:90px}h2{font-size:clamp(51px,15vw,72px)}.site-header{inset:2px 0 auto}.brand-sub{display:none}.header-actions{gap:5px}.icon-button{width:40px;height:40px}.hero{min-height:880px}.hero-scene img{object-position:66% center}.hero::before{background:linear-gradient(0deg,rgba(5,6,6,.99) 0%,rgba(5,6,6,.65) 58%,rgba(5,6,6,.28)),linear-gradient(90deg,rgba(4,5,5,.82),transparent)}.hero-content{padding-top:100px;padding-bottom:210px;align-content:center}.hero-title{font-size:clamp(57px,17vw,78px);line-height:.78}.hero-title .hero-accent{font-size:.39em;margin-top:14px}.hero-lead{font-size:14px;max-width:92%}.hero-ctas{align-items:stretch}.hero-ctas .button{width:100%}.hero-micro{font-size:9px}.availability{position:relative;top:auto;right:auto;margin-top:35px;width:max-content}.hero-seal{display:none}.hero-proof{left:0;bottom:154px;width:100%;justify-content:space-between;gap:15px}.hero-stats{grid-template-columns:1fr 1fr}.hero-stats div{padding:13px 20px}.hero-stats div:nth-child(3),.hero-stats div:nth-child(4){display:none}.marquee-section{padding:17px 0}.section-index{margin-bottom:25px}.section-heading{margin-bottom:55px}.section-heading>p{margin-left:0;font-size:14px}.manifesto-grid{gap:45px}.manifesto h2{font-size:clamp(49px,14vw,69px)}.manifesto-side>p{font-size:15px}.services-grid{display:block}.services-grid .service-card{margin-bottom:10px;min-height:380px;padding:25px}.service-card h3{font-size:40px}.service-actions{align-items:stretch;flex-direction:column}.service-actions .reserve-link{min-height:46px}.transformation-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:-20px;padding:0 20px 8px;scrollbar-width:none}.transformation-card,.transformation-main{flex:0 0 86vw;scroll-snap-align:center}.compare,.transformation-main .compare{height:470px}.transformation-info{display:block}.transformation-info .text-link{margin-top:18px}.swipe-hint{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:16px}.experience-sticky h2{font-size:clamp(51px,14vw,70px)}.experience-visual{height:270px;margin-top:30px}.experience-sticky .button{width:100%}.ritual-steps li{grid-template-columns:48px 1fr;padding:32px 0}.ritual-steps h3{font-size:42px;margin:12px 0}.ritual-steps p{font-size:13px}.pack-card,.pack-card.featured{min-height:460px;padding:25px;display:flex;flex-direction:column}.pack-card:not(.featured){min-height:410px}.pack-bottom{width:100%;align-items:flex-start;flex-direction:column}.pack-reserve{width:100%;min-height:46px}.gallery-head{display:block}.gallery-head h2{text-align:left}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:330px 210px 260px 230px}.gallery-a{grid-column:1/-1;grid-row:1}.gallery-b{grid-column:1;grid-row:2}.gallery-c{grid-column:2;grid-row:2}.gallery-d{grid-column:1;grid-row:3}.gallery-quote{grid-column:2;grid-row:3;padding:20px}.gallery-quote p{font-size:23px}.gallery-quote>span{font-size:40px}.gallery-item:last-of-type{grid-column:1/-1;grid-row:4}.shop-feature{height:470px}.shop-feature>div{inset:auto 25px 25px}.shop-feature h3{font-size:43px}.products-grid{grid-template-columns:1fr}.product-card{min-height:420px;display:grid;grid-template-columns:42% 58%}.product-visual{height:auto;min-height:230px}.product-info{padding:18px}.product-info h3{font-size:25px}.product-info>p{min-height:0}.product-bottom{align-items:flex-start;gap:9px;flex-direction:column}.add-button{width:100%}.review-metrics{margin-bottom:80px}.review-metrics div{padding:20px 8px}.review-metrics strong{font-size:38px}.reviews-copy h2{font-size:57px}.review-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:-20px;padding-inline:20px;scrollbar-width:none}.review-cards blockquote,.review-cards blockquote:first-child{flex:0 0 86vw;min-height:340px;scroll-snap-align:center}.review-cards blockquote p{font-size:29px}.faq-question{grid-template-columns:28px 1fr 28px;padding:23px 0}.faq-question strong{font-size:23px}.faq-answer p{padding:0 0 24px 44px}.contact-panel{width:calc(100% - 20px);padding:42px 24px;min-height:0}.contact-copy h2{font-size:55px}.contact-actions .button{width:100%}.contact-card dl{grid-template-columns:1fr 1fr;gap:18px}.footer-top{flex-direction:column;gap:35px}.footer-top nav{width:100%}.footer-word{font-size:32vw;margin-top:70px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:7px}.mobile-reserve{position:fixed;z-index:1100;display:flex;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));height:54px;background:#d9bd82;color:#090b0a;box-shadow:0 13px 45px rgba(0,0,0,.45);transition:transform .4s var(--ease),opacity .3s}.mobile-reserve>a{flex:1;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.06em}.mobile-cart{width:54px;border:0;border-left:1px solid rgba(0,0,0,.16);background:none;position:relative}.mobile-cart .cart-count{position:relative;top:auto;right:auto;margin:auto;background:var(--ink);color:var(--ivory);width:22px;height:22px;border-radius:50%}.is-locked .mobile-reserve{transform:translateY(140%);opacity:0}.menu-panel{padding:22px 20px}.menu-panel nav a{font-size:46px;padding:10px 0}.menu-card{display:grid;grid-template-columns:auto 1fr}.menu-card a{grid-column:1/-1;margin:0}.menu-meta{justify-content:space-between}.cart-head,.cart-body,.cart-footer{padding-inline:20px}.toast{bottom:75px;width:calc(100% - 30px);justify-content:space-between}.cursor-light{display:none}}
.is-closing .menu-panel,.is-closing .cart-drawer{animation:panelOut .3s ease-in forwards}.is-closing .overlay-shade{animation:shadeOut .3s ease forwards}@keyframes panelOut{to{transform:translateX(100%)}}@keyframes shadeOut{to{opacity:0}}
@media (max-width:680px){body:not(.is-beyond-hero) .mobile-reserve{transform:translateY(140%);opacity:0;pointer-events:none}}
@media (max-width:390px){:root{--shell:calc(100% - 32px)}.hero-title{font-size:55px}.hero{min-height:830px}.button{padding-inline:18px;gap:14px}.product-card{grid-template-columns:1fr}.product-visual{min-height:175px}.contact-card dl{grid-template-columns:1fr}.gallery-grid{grid-template-rows:300px 190px 240px 220px}.gallery-quote p{font-size:20px}}
@media (hover:hover) and (pointer:fine){.magnetic{transition:transform .22s ease-out}.service-card,.pack-card,.product-card,.transformation-card{transform-style:preserve-3d}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro-curtain{display:none}.hero-scene{clip-path:none;transition:none}.hero-scene img{transform:none;transition:none}.hero-enter,.js [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.hero-glow,.hero-sweep,.hero-seal svg,.marquee-track{animation:none!important}.marquee-track span:nth-child(2){display:none}.experience-visual img{transform:none}.ritual-steps li{opacity:1;transform:none}.cursor-light{display:none}.button,.service-card,.pack-card,.product-card,.compare img,.gallery-item img{transition-duration:.01ms!important}.page-progress span{transition:none}}

/* QA: touch targets, short viewports and off-screen animation budget */
.icon-button{width:44px;height:44px}
.add-subtle,.pack-reserve,.add-button,.filter{min-height:44px}
.quantity button{width:44px;height:44px}
.remove-item{min-height:44px;padding:10px 0}
.menu-panel{overflow-y:auto;overscroll-behavior:contain}
.is-locked .mobile-reserve{pointer-events:none}
.is-beyond-hero .hero-glow,.is-beyond-hero .hero-sweep,.is-beyond-hero .hero-seal svg{animation-play-state:paused}
@media (max-width:680px){.icon-button{width:44px;height:44px}}
@media (max-width:680px){
  .menu-panel nav a{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:baseline;font-size:clamp(40px,13vw,46px)}
  .menu-panel nav a span{margin-right:0}
  .menu-panel nav a:hover{padding-left:0}
}
@media (max-width:900px) and (max-height:700px){.menu-panel nav a{font-size:clamp(32px,7vh,44px);padding:7px 0}.menu-card{padding:12px}.menu-meta{margin-top:12px}}
@media (max-width:680px){
  .reviews-layout,.review-score,.reviews-copy{min-width:0;width:100%;max-width:100%}
  .review-cards,.transformation-grid{min-width:0;width:calc(100% + 40px);max-width:calc(100% + 40px);overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain}
  .review-cards blockquote,.review-cards blockquote:first-child,.transformation-card,.transformation-main{min-width:0;max-width:86vw}
}
@media (max-width:390px){
  .review-cards,.transformation-grid{width:calc(100% + 32px);max-width:calc(100% + 32px);margin-inline:-16px;padding-inline:16px}
}
@media (max-width:900px){
  .shop-layout,.shop-feature,.shop-catalog,.products-grid,.product-card{min-width:0;width:100%;max-width:100%}
  .filters{min-width:0;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain}
  .filter{flex:0 0 auto}
  .menu-panel{overflow-x:hidden}
  .menu-panel>*{min-width:0;max-width:100%}
  .menu-meta{flex-wrap:wrap;gap:10px 16px}
}

/* Functional controls: accessible before/after comparison and FAQ state */
.compare[role="slider"]{--compare-position:50%;touch-action:pan-y;cursor:ew-resize;user-select:none;-webkit-user-select:none}
.compare[role="slider"] img{-webkit-user-drag:none;pointer-events:none}
.compare[role="slider"]:focus-visible{outline:2px solid var(--gold-hi);outline-offset:4px}
.compare[role="slider"] .compare-side.after,.compare[role="slider"] .compare-side.before{inset:0}
.compare[role="slider"] .compare-side img{width:200%;max-width:none;height:100%;object-fit:cover;object-position:center}
.compare[role="slider"] .compare-side.before img{transform:none}
.compare[role="slider"] .compare-side.after img,.transformation-card:hover .compare[role="slider"] .compare-side.after img{transform:translateX(-50%)}
.compare[role="slider"] .compare-side.before{right:0;clip-path:inset(0 calc(100% - var(--compare-position)) 0 0);transition:clip-path .22s var(--ease)}
.compare[role="slider"]>.compare-handle{left:var(--compare-position);pointer-events:none}
.transformation-card:hover .compare[role="slider"]>.compare-handle{left:var(--compare-position)}
.compare[role="slider"].is-dragging .compare-side.before,.compare[role="slider"].is-dragging>.compare-handle{transition:none}
.faq-item.is-open .faq-answer{grid-template-rows:1fr}
@media (prefers-reduced-motion:reduce){.compare[role="slider"] .compare-side.before,.compare[role="slider"]>.compare-handle,.faq-answer{transition:none!important}}

/* ========================================================================== 
   V3 PREMIUM ART DIRECTION
   Consistent catalog grids, deeper surfaces and lighter motion primitives.
   ========================================================================== */

:root{
  --paper:#f4efe5;
  --ink-deep:#040505;
  --surface-raised:#151817;
  --line-soft:rgba(244,239,229,.075);
  --line-gold:rgba(226,201,140,.26);
  --gold-glow:rgba(197,164,100,.18);
  --shadow-card:0 24px 70px rgba(0,0,0,.34);
  --shadow-float:0 34px 100px rgba(0,0,0,.52);
  --card-pad:clamp(24px,2.25vw,36px);
}

body{
  background:
    radial-gradient(circle at 78% 12%,rgba(151,101,46,.055),transparent 28rem),
    var(--ink);
}

.section{overflow:clip}
.section>.shell{position:relative;z-index:1}
.services,.transformations,.packs,.shop,.faq,.contact{
  border-top:1px solid var(--line-soft);
}
.services,.packs{
  background-color:#090b0a;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),
    radial-gradient(circle at 82% 14%,rgba(197,164,100,.09),transparent 26rem);
  background-size:80px 80px,80px 80px,auto;
}
.transformations{
  background:
    radial-gradient(circle at 12% 45%,rgba(115,74,37,.09),transparent 30rem),
    linear-gradient(145deg,#060707,#0a0c0b 70%);
}
.shop{
  background:
    radial-gradient(circle at 90% 22%,rgba(197,164,100,.07),transparent 30rem),
    #090b0a;
}
.faq{
  background:
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),
    radial-gradient(circle at 18% 22%,rgba(197,164,100,.075),transparent 24rem),
    #0b0d0c;
  background-size:96px 100%,auto,auto;
}

.page-progress{height:3px;background:rgba(255,255,255,.025)}
.page-progress span{box-shadow:0 0 16px rgba(226,201,140,.65)}

.section-heading{position:relative}
.section-heading::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:clamp(-34px,-2.3vw,-22px);
  height:1px;
  background:linear-gradient(90deg,var(--line-gold),rgba(255,255,255,.03) 48%,transparent);
  transform-origin:left;
}

/* Buttons */
.button,.reserve-link,.pack-reserve,.add-button{
  isolation:isolate;
  border-radius:1px;
}
.button-primary{
  background:linear-gradient(115deg,#8d6b36 0%,#e8d29b 42%,#b68e4d 73%,#ead59f 100%);
  box-shadow:0 16px 50px rgba(197,164,100,.19),inset 0 1px rgba(255,255,255,.35);
}
.button-primary span,.button-ghost span{
  transition:transform .45s var(--ease),color .3s;
}
.button-primary:hover span,.button-primary:focus-visible span{
  transform:translate(3px,-3px);
}
.button-ghost{
  border-color:rgba(244,239,229,.2);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);
}
.header-book{
  background:rgba(8,10,10,.36);
  backdrop-filter:blur(12px);
}
.text-link{background-size:34px 1px}

/* Services: one visual grammar, no isolated photography */
.services-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.services-grid>.service-card,
.services-grid>.service-card:nth-child(1),
.services-grid>.service-card.featured{
  grid-column:auto;
  min-width:0;
  min-height:550px;
  height:100%;
  padding:var(--card-pad);
  display:grid;
  grid-template-rows:auto auto minmax(4.4em,1fr) auto auto auto;
  align-content:stretch;
  gap:0;
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 42%),
    linear-gradient(160deg,#151817,#0d0f0e 75%);
  border:1px solid var(--line-soft);
  box-shadow:0 1px rgba(255,255,255,.025) inset;
  transition:transform .6s var(--ease),border-color .4s,box-shadow .55s var(--ease),background .45s;
}
.services-grid>.service-card.featured{
  background:
    radial-gradient(circle at 82% 12%,rgba(226,201,140,.15),transparent 23rem),
    linear-gradient(145deg,#191a16,#0e100f 72%);
  border-color:var(--line-gold);
}
.service-card::after{
  content:"";
  position:absolute;
  z-index:0;
  width:176px;
  aspect-ratio:1;
  right:-42px;
  top:68px;
  border:1px solid rgba(226,201,140,.13);
  border-radius:50%;
  background:
    radial-gradient(circle,transparent 0 28%,rgba(226,201,140,.09) 28.5% 29%,transparent 29.5% 47%,rgba(255,255,255,.045) 47.5% 48%,transparent 48.5%),
    linear-gradient(90deg,transparent 49.6%,rgba(226,201,140,.12) 50%,transparent 50.4%);
  opacity:.8;
  transition:transform .8s var(--ease),opacity .4s;
  pointer-events:none;
}
.service-card>*{position:relative;z-index:1;min-width:0}
.service-card h3{
  margin:clamp(72px,7vw,108px) 0 14px;
  font-size:clamp(39px,3.5vw,57px);
  text-wrap:balance;
}
.service-card>p{
  max-width:none;
  min-height:4.4em;
  margin-bottom:18px;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.include-chips{align-content:start;min-height:61px;margin:0 0 23px}
.service-meta{margin-top:0;padding-top:20px}
.service-meta strong{font-size:34px;color:var(--paper)}
.service-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:17px;
  margin-top:18px;
}
.service-actions .reserve-link,.pack-reserve,.add-button{
  position:relative;
  overflow:hidden;
  background:var(--paper);
  transition:color .3s,background .3s,transform .4s var(--ease),box-shadow .4s;
}
.service-actions .reserve-link::after,.pack-reserve::after,.add-button::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:var(--metal);
  transform:translateX(-102%);
  transition:transform .48s var(--ease);
}
.service-actions .reserve-link:hover::after,.service-actions .reserve-link:focus-visible::after,
.pack-reserve:hover::after,.pack-reserve:focus-visible::after,
.add-button:hover::after,.add-button:focus-visible::after{transform:none}
.service-actions .reserve-link:hover,.pack-reserve:hover,.add-button:hover{
  box-shadow:0 12px 30px rgba(0,0,0,.25);
}
.service-card:hover{
  transform:translateY(-8px);
  border-color:rgba(226,201,140,.34);
  box-shadow:var(--shadow-card);
}
.service-card:hover::after{transform:translate(-8px,5px) rotate(9deg);opacity:1}

/* Transformations: same physical size, functional slider remains authoritative */
.transformation-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.transformation-card,.transformation-main{
  grid-row:auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  background:linear-gradient(155deg,#151817,#0c0e0d);
  border-color:var(--line-soft);
  box-shadow:0 1px rgba(255,255,255,.025) inset;
  transition:transform .55s var(--ease),border-color .4s,box-shadow .5s;
}
.transformation-card:hover{transform:translateY(-7px);border-color:var(--line-gold);box-shadow:var(--shadow-card)}
.compare,.transformation-main .compare{
  width:100%;
  height:auto;
  aspect-ratio:4/5;
  background:#0a0b0b;
}
.compare-side span{
  top:18px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(5,6,6,.72);
  backdrop-filter:blur(8px);
}
.compare[role="slider"]>.compare-handle{
  width:2px;
  background:linear-gradient(transparent,var(--gold-hi) 15% 85%,transparent);
  box-shadow:0 0 24px rgba(226,201,140,.3);
  transition:left .22s var(--ease);
}
.compare[role="slider"]>.compare-handle b{
  width:48px;
  height:48px;
  border:5px solid rgba(7,8,8,.82);
  background:var(--paper);
  box-shadow:0 0 0 1px var(--gold-hi),0 8px 30px rgba(0,0,0,.38),0 0 28px rgba(226,201,140,.22);
  font-size:14px;
}
.compare[role="slider"]:focus-visible>.compare-handle b{box-shadow:0 0 0 3px var(--gold-hi),0 10px 34px rgba(0,0,0,.45)}
.compare[role="slider"].is-dragging{cursor:grabbing}
.transformation-info{
  flex:1;
  align-items:flex-end;
  padding:27px;
  border-top:1px solid var(--line-soft);
}
.transformation-info h3{font-size:clamp(30px,2.8vw,43px)}

/* Packs: equal dimensions, aligned price and CTA */
.packs-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:1fr;
  gap:14px;
  align-items:stretch;
}
.packs-grid>.pack-card,.packs-grid>.pack-card.featured{
  min-width:0;
  min-height:560px;
  height:100%;
  padding:var(--card-pad);
  grid-row:auto;
  display:flex;
  flex-direction:column;
  gap:0;
  background:
    radial-gradient(circle at 87% 13%,rgba(226,201,140,.1),transparent 18rem),
    linear-gradient(150deg,#161917,#0d0f0e 72%);
  border:1px solid var(--line-soft);
  box-shadow:0 1px rgba(255,255,255,.025) inset;
  transition:transform .6s var(--ease),border-color .4s,box-shadow .55s;
}
.packs-grid>.pack-card.featured{
  border-color:var(--line-gold);
  background:
    radial-gradient(circle at 82% 12%,rgba(226,201,140,.17),transparent 21rem),
    linear-gradient(145deg,#1b1a15,#0e100f 72%);
}
.pack-card::after{
  content:"";
  position:absolute;
  width:230px;
  height:110px;
  top:38px;
  right:-45px;
  opacity:.32;
  background:
    repeating-radial-gradient(ellipse at center,transparent 0 12px,rgba(226,201,140,.28) 13px 14px,transparent 15px 24px);
  transform:rotate(-8deg);
  transition:transform .8s var(--ease),opacity .4s;
  pointer-events:none;
}
.pack-card>*{position:relative;z-index:1;min-width:0}
.pack-card>div:first-child{display:flex;flex-direction:column;flex:1}
.pack-card .badge{
  position:absolute;
  top:var(--card-pad);
  right:var(--card-pad);
  z-index:2;
}
.pack-card h3{
  max-width:80%;
  margin:clamp(78px,7vw,112px) 0 15px;
  font-size:clamp(43px,4.8vw,72px);
  text-wrap:balance;
}
.pack-card>div>p{
  min-height:3.8em;
  margin-bottom:20px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.pack-includes{
  min-height:150px;
  margin-top:auto;
  padding-top:19px;
}
.pack-includes li{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.035)}
.pack-bottom{
  width:100%;
  min-height:80px;
  padding-top:20px;
  border-top:1px solid var(--line-soft);
  align-items:flex-end;
  margin-top:24px;
}
.pack-price strong{color:var(--paper)}
.pack-reserve{min-height:48px;padding-inline:20px}
.pack-card:hover{transform:translateY(-8px);border-color:rgba(226,201,140,.36);box-shadow:var(--shadow-card)}
.pack-card:hover::after{transform:translate(-9px,4px) rotate(-4deg);opacity:.55}

/* Product catalog */
.filters{
  gap:7px;
  margin-bottom:16px;
  padding:3px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(5,6,6,.42);
}
.filter{
  position:relative;
  min-height:46px;
  border:0;
  padding-inline:17px;
  transition:background .35s,color .35s,transform .35s var(--ease);
}
.filter:hover{background:rgba(255,255,255,.045)}
.filter.is-active{
  background:linear-gradient(115deg,#e7d09a,#ac8548);
  box-shadow:0 9px 26px rgba(0,0,0,.24);
}
.products-grid{align-items:stretch;gap:12px}
.product-card{
  min-width:0;
  min-height:510px;
  height:100%;
  display:grid;
  grid-template-rows:220px minmax(0,1fr);
  background:linear-gradient(155deg,#151817,#0d0f0e);
  border-color:var(--line-soft);
  box-shadow:0 1px rgba(255,255,255,.025) inset;
  transition:opacity .32s,transform .55s var(--ease),border-color .35s,box-shadow .5s;
}
.product-card:hover{transform:translateY(-7px);border-color:var(--line-gold);box-shadow:var(--shadow-card)}
.product-visual{
  height:auto;
  min-height:0;
  border-bottom:1px solid var(--line-soft);
  background:
    linear-gradient(120deg,transparent 35%,rgba(255,255,255,.04) 49%,transparent 62%),
    radial-gradient(circle at 52% 55%,rgba(197,164,100,.13),transparent 38%),
    #101211;
}
.product-visual::after{
  content:"";
  position:absolute;
  left:28%;
  right:28%;
  bottom:13px;
  height:13px;
  border-radius:50%;
  background:rgba(0,0,0,.72);
  filter:blur(7px);
}
.product-bottle{z-index:1;bottom:9px;filter:drop-shadow(14px 18px 17px rgba(0,0,0,.34))}
.product-info{
  min-width:0;
  padding:23px;
  display:flex;
  flex-direction:column;
}
.product-label{gap:10px}
.product-label span:last-child{text-align:right}
.product-info h3{font-size:clamp(27px,2.2vw,34px);text-wrap:balance}
.product-info>p{
  min-height:3.4em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.product-ideal{min-height:auto!important;margin-top:auto}
.product-bottom{margin-top:15px}
.add-button{min-height:44px}
.add-button.is-added{
  background:var(--green);
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.14),0 0 28px rgba(127,155,130,.2);
}
@supports selector(.product-card:has(.is-added)){
  .product-card:has(.add-button.is-added){border-color:rgba(127,155,130,.7);box-shadow:0 0 0 1px rgba(127,155,130,.14),var(--shadow-card)}
}

/* Gallery */
.gallery{
  background:
    radial-gradient(circle at 74% 18%,rgba(197,164,100,.07),transparent 30rem),
    #050606;
}
.gallery-grid{gap:14px;grid-template-rows:clamp(290px,24vw,380px) clamp(230px,18vw,290px)}
.gallery-item,.gallery-quote{border:1px solid var(--line-soft);box-shadow:0 18px 50px rgba(0,0,0,.22)}
.gallery-item::before{
  content:"";
  position:absolute;
  z-index:3;
  inset:10px;
  border:1px solid rgba(244,239,229,.1);
  pointer-events:none;
  transition:border-color .4s,transform .6s var(--ease);
}
.gallery-item::after{background:linear-gradient(0deg,rgba(4,5,5,.84),transparent 62%)}
.gallery-item img{filter:saturate(.68) contrast(1.03);transition:transform 1.05s var(--ease),filter .75s}
.gallery-item:hover img{transform:scale(1.04);filter:saturate(.96) contrast(1.04)}
.gallery-item:hover::before{border-color:rgba(226,201,140,.34);transform:scale(.985)}
.gallery-item figcaption{left:26px;bottom:22px}
.gallery-quote{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 12%,rgba(226,201,140,.14),transparent 13rem),
    linear-gradient(140deg,#181712,#0c0e0d);
}
.gallery-quote::after{
  content:"N";
  position:absolute;
  right:-8px;
  bottom:-55px;
  font:500 180px/1 "Cormorant Garamond";
  color:rgba(255,255,255,.025);
}
.gallery-quote>*{position:relative;z-index:1}

/* FAQ */
.accordion{border-color:var(--line-gold)}
.faq-item{position:relative;transition:background .45s,border-color .35s}
.faq-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(226,201,140,.07),transparent 68%);
  opacity:0;
  transition:opacity .4s;
  pointer-events:none;
}
.faq-item:hover::before,.faq-item.is-open::before{opacity:1}
.faq-item.is-open{border-color:var(--line-gold)}
.faq-question{position:relative;z-index:1;padding-inline:18px;transition:color .3s}
.faq-question:hover,.faq-item.is-open .faq-question{color:var(--gold-hi)}
.faq-icon{transition:background .35s,border-color .35s,transform .45s var(--ease)}
.faq-item.is-open .faq-icon{background:var(--gold-hi);border-color:var(--gold-hi);color:var(--ink);transform:rotate(180deg)}
.faq-answer{position:relative;z-index:1}
.faq-answer p{max-width:720px;color:#b9b4aa;line-height:1.8}

/* Contact */
.contact{
  background:
    radial-gradient(circle at 14% 80%,rgba(197,164,100,.08),transparent 28rem),
    #060707;
}
.contact-panel{
  min-height:700px;
  border-color:var(--line-gold);
  background:
    linear-gradient(100deg,rgba(5,6,6,.985) 0%,rgba(5,6,6,.92) 48%,rgba(5,6,6,.64)),
    url('assets/hero-noir.webp') 67% center/cover;
  box-shadow:var(--shadow-float),inset 0 1px rgba(255,255,255,.055);
}
.contact-panel::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:10px;
  border:1px solid rgba(244,239,229,.085);
  pointer-events:none;
}
.contact-copy,.contact-card{z-index:2}
.contact-card{
  background:
    linear-gradient(145deg,rgba(255,255,255,.06),transparent 38%),
    rgba(13,16,15,.9);
  border-color:rgba(226,201,140,.2);
  box-shadow:0 35px 100px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.07);
}
.contact-card::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(255,255,255,.035);
  pointer-events:none;
}
.map-art{border:1px solid var(--line-soft)}
.map-art>a{
  border:1px solid rgba(226,201,140,.22);
  background:rgba(5,6,6,.88);
  transition:background .3s,color .3s,border-color .3s;
}
.map-art>a:hover,.map-art>a:focus-visible{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.contact-card dl div{transition:border-color .3s,transform .4s var(--ease)}
.contact-card dl div:hover{border-color:var(--gold-hi);transform:translateY(-2px)}

/* Menu and cart */
.overlay-shade{background:rgba(2,3,3,.82)}
.menu-panel,.cart-drawer{
  border-left-color:var(--line-gold);
  box-shadow:-35px 0 100px rgba(0,0,0,.48);
}
.menu-panel{
  isolation:isolate;
  background:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),
    radial-gradient(circle at 82% 16%,rgba(197,164,100,.13),transparent 24rem),
    #090b0a;
  background-size:72px 72px,72px 72px,auto,auto;
}
.menu-panel nav{position:relative}
.menu-panel nav a{position:relative;padding-inline:0;overflow:hidden}
.menu-panel nav a::after{
  content:"";
  position:absolute;
  right:0;
  bottom:-1px;
  width:22%;
  height:1px;
  background:var(--metal);
  transform:translateX(110%);
  transition:transform .5s var(--ease),width .5s var(--ease);
}
.menu-panel nav a:hover::after,.menu-panel nav a:focus-visible::after{transform:none;width:100%}
.menu-card{background:rgba(255,255,255,.025);border-color:var(--line-gold)}
.cart-drawer{
  width:min(560px,100%);
  background:linear-gradient(145deg,#101312,#080a09 72%);
}
.cart-head{background:rgba(255,255,255,.018);border-color:var(--line-gold)}
.cart-body{scrollbar-color:rgba(226,201,140,.3) transparent;overscroll-behavior:contain}
.cart-group-title{margin-top:24px;color:var(--gold-hi)}
.cart-item{
  margin:10px 0;
  padding:18px;
  border:1px solid var(--line-soft);
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  transition:transform .35s var(--ease),border-color .3s,background .3s;
}
.cart-item:hover{transform:translateX(-3px);border-color:var(--line-gold);background:rgba(255,255,255,.035)}
.quantity{background:#090b0a;border-color:rgba(226,201,140,.2)}
.quantity button{transition:background .25s,color .25s}
.quantity button:hover,.quantity button:focus-visible{background:var(--paper);color:var(--ink)}
.remove-item{transition:color .25s}.remove-item:hover{color:#e0b3a4}
.cart-footer{
  background:linear-gradient(180deg,#151817,#0d100f);
  border-color:var(--line-gold);
  box-shadow:0 -18px 55px rgba(0,0,0,.28);
}
.cart-total strong{font-size:42px;color:var(--gold-hi)}
.whatsapp-checkout{
  background:linear-gradient(115deg,#76917a,#536b58);
  box-shadow:0 13px 35px rgba(56,83,61,.25);
}
.cart-empty-symbol{position:relative;box-shadow:0 0 0 10px rgba(226,201,140,.025),0 0 40px rgba(226,201,140,.09)}
.toast{border:1px solid rgba(0,0,0,.12);box-shadow:0 22px 70px rgba(0,0,0,.52)}

/* Reveal hierarchy */
.js [data-reveal]{
  transform:translate3d(0,34px,0);
  transition:opacity .82s var(--ease),transform .92s var(--ease);
}
.js [data-reveal="scale"]{transform:translate3d(0,20px,0) scale(.975)}
.js [data-reveal="split"]{transform:translate3d(0,48px,0)}
.js [data-reveal].is-visible{transform:none}

@media (max-width:1180px){
  .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .services-grid>.service-card,.services-grid>.service-card:nth-child(1),.services-grid>.service-card.featured{grid-column:auto;min-height:535px}
  .transformation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .transformation-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.75fr)}
  .transformation-card:last-child .compare{aspect-ratio:16/10}
  .packs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .packs-grid>.pack-card,.packs-grid>.pack-card.featured{min-height:550px}
  .pack-card h3{font-size:clamp(43px,5vw,64px)}
  .gallery-grid{grid-template-rows:clamp(270px,30vw,340px) clamp(220px,23vw,270px)}
}

@media (max-width:900px){
  .section-heading::after{bottom:-25px}
  .transformation-card:last-child{grid-column:auto;display:flex}
  .transformation-card:last-child .compare{aspect-ratio:4/5}
  .packs-grid{grid-template-columns:1fr}
  .packs-grid>.pack-card,.packs-grid>.pack-card.featured{min-height:520px}
  .pack-includes{min-height:auto}
  .contact-panel{min-height:0}
  .gallery-grid{grid-template-rows:300px 240px 260px}
}

@media (max-width:680px){
  .services,.packs{background-size:64px 64px,64px 64px,auto}
  .services-grid{display:grid;grid-template-columns:1fr;gap:12px}
  .services-grid>.service-card,.services-grid>.service-card:nth-child(1),.services-grid>.service-card.featured{
    min-height:500px;
    margin:0;
    padding:25px;
  }
  .service-card h3{margin-top:70px;font-size:42px}
  .service-card>p{min-height:auto}
  .include-chips{min-height:auto}
  .service-actions{grid-template-columns:1fr;gap:8px}
  .add-subtle{justify-self:start;min-height:40px}

  .transformation-grid{
    display:flex;
    gap:12px;
    width:calc(100% + 40px);
    max-width:calc(100% + 40px);
  }
  .transformation-card,.transformation-main{display:flex;flex:0 0 86vw;max-width:86vw}
  .compare,.transformation-main .compare{aspect-ratio:3/4;height:auto}
  .compare[role="slider"]>.compare-handle b{width:46px;height:46px}
  .transformation-info{display:block;padding:23px}

  .packs-grid{display:grid;grid-template-columns:1fr;gap:12px}
  .packs-grid>.pack-card,.packs-grid>.pack-card.featured{
    min-height:500px;
    padding:25px;
    display:flex;
  }
  .pack-card h3{max-width:82%;margin-top:76px;font-size:46px}
  .pack-card>div>p{min-height:auto}
  .pack-bottom{min-height:auto;align-items:stretch;gap:16px}
  .pack-reserve{width:100%}

  .shop-feature{height:440px}
  .products-grid{display:grid;grid-template-columns:1fr;gap:12px}
  .product-card{
    min-height:520px;
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:210px minmax(0,1fr);
  }
  .product-visual{min-height:0}
  .product-info>p{min-height:auto}
  .product-bottom{flex-direction:row;align-items:center}
  .add-button{width:auto;min-width:145px}

  .gallery-grid{gap:10px;grid-template-rows:320px 220px 270px 235px}
  .gallery-item figcaption{left:21px;bottom:19px}
  .gallery-item::before{inset:7px}

  .faq-question{padding-inline:4px}
  .faq-answer p{padding-left:44px;padding-right:10px}

  .contact-panel{width:calc(100% - 20px);padding:46px 24px;background:linear-gradient(180deg,rgba(5,6,6,.86),rgba(5,6,6,.985)),url('assets/hero-noir.webp') 67% center/cover}
  .contact-card{backdrop-filter:none}
  .contact-panel::before{inset:7px}

  .menu-panel{background-size:58px 58px,58px 58px,auto,auto}
  .menu-panel nav a:hover,.menu-panel nav a:focus-visible{padding-left:0}
  .cart-drawer{height:100dvh}
  .cart-item{padding:16px}
  .cart-total strong{font-size:36px}
}

@media (max-width:390px){
  .services-grid>.service-card,.services-grid>.service-card:nth-child(1),.services-grid>.service-card.featured{min-height:480px;padding:22px}
  .service-card h3{font-size:39px}
  .pack-card h3{font-size:42px}
  .products-grid .product-card{min-height:500px;grid-template-rows:185px minmax(0,1fr)}
  .product-info{padding:20px}
  .product-bottom{align-items:stretch;flex-direction:column}
  .add-button{width:100%}
  .cart-head,.cart-body,.cart-footer{padding-inline:16px}
  .cart-item-actions{gap:12px;align-items:flex-end}
  .contact-panel{padding-inline:20px}
}

@media (hover:none){
  .service-card:hover,.pack-card:hover,.product-card:hover,.transformation-card:hover,.cart-item:hover{transform:none;box-shadow:none}
  .gallery-item:hover img{transform:none}
}

@media (prefers-reduced-motion:reduce){
  .service-card::after,.pack-card::after,.gallery-item::before,.faq-icon,.menu-panel nav a::after{transition:none!important}
  .service-card:hover::after,.pack-card:hover::after{transform:none}
  .service-card,.pack-card,.product-card,.transformation-card,.cart-item{transform:none!important;box-shadow:none}
  .compare[role="slider"]>.compare-handle{transition:none!important}
  .gallery-item img{transform:none!important}
}

/* ========================================================================== */
/* NOIR V4 — cinematic direction, ritual story and conversion surfaces        */
/* ========================================================================== */

body::after{
  content:"";
  position:fixed;
  z-index:9998;
  inset:0;
  pointer-events:none;
  opacity:.115;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");
  mix-blend-mode:soft-light;
}

.section-track{isolation:isolate}
.section-track::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:max(20px,calc((100vw - 1320px)/2));
  top:0;
  width:min(14vw,190px);
  height:1px;
  background:linear-gradient(90deg,var(--gold-hi),transparent);
  opacity:.38;
}

/* Hero: fewer loops, richer static depth. */
.hero{min-height:max(760px,100svh);background:#050606}
.hero::before{
  background:
    linear-gradient(90deg,rgba(3,4,4,.99) 0%,rgba(3,4,4,.9) 34%,rgba(4,5,5,.27) 66%,rgba(3,4,4,.56)),
    linear-gradient(0deg,rgba(4,5,5,.98),transparent 42%,rgba(5,6,6,.18));
}
.hero::after{
  box-shadow:inset 0 0 220px rgba(0,0,0,.76),inset 0 -120px 120px rgba(0,0,0,.44);
  background:linear-gradient(115deg,transparent 54%,rgba(226,201,140,.035) 54.2%,transparent 54.5%);
}
.hero-scene img{object-position:67% center;filter:saturate(.7) contrast(1.09) brightness(.88)}
.hero-glow{opacity:.7;animation-duration:10s;background:radial-gradient(circle,rgba(217,170,92,.18),transparent 63%)}
.hero-sweep{animation:none;opacity:.16}
.hero-line{height:67%;top:11%;background:linear-gradient(transparent,rgba(226,201,140,.35),transparent)}
.hero-copy{position:relative}
.hero-copy::before{
  content:"N / 01";
  position:absolute;
  left:-48px;
  top:3px;
  writing-mode:vertical-rl;
  color:rgba(226,201,140,.65);
  font:600 8px/1 Manrope;
  letter-spacing:.28em;
}
.hero-title{text-wrap:balance;text-shadow:0 18px 60px rgba(0,0,0,.38)}
.hero-title .hero-accent{
  display:inline-block;
  width:max-content;
  padding-right:.18em;
  color:transparent;
  background:linear-gradient(105deg,#f1e6cf 8%,#b58c49 52%,#efe1c2 88%);
  background-clip:text;
  -webkit-background-clip:text;
}
.hero-proof,.availability,.hero-stats{border-color:rgba(226,201,140,.18)}
.availability{box-shadow:0 24px 75px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.07)}
.hero-seal{filter:drop-shadow(0 10px 35px rgba(204,164,92,.17))}
.hero-stats{background:linear-gradient(110deg,rgba(10,12,11,.88),rgba(7,8,8,.68));box-shadow:-30px 0 80px rgba(0,0,0,.18)}
.hero-stats div{position:relative;overflow:hidden}
.hero-stats div::after{
  content:"";
  position:absolute;
  left:24px;
  bottom:0;
  width:32px;
  height:1px;
  background:var(--metal);
  transform:scaleX(.35);
  transform-origin:left;
  transition:transform .5s var(--ease);
}
.hero-stats div:hover::after{transform:scaleX(1)}

/* Stronger, uniform commercial grids. */
.services-grid,.packs-grid,.products-grid{align-items:stretch}
.service-card,.pack-card,.product-card{
  height:100%;
  isolation:isolate;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 20px 65px rgba(0,0,0,.16);
}
.service-card::before,.pack-card::before,.product-card::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(430px circle at var(--spot-x,70%) var(--spot-y,15%),rgba(226,201,140,.12),transparent 48%);
  transition:opacity .4s ease;
}
.service-card:hover::before,.pack-card:hover::before,.product-card:hover::after{opacity:1}
.service-card>p,.pack-card>div>p,.product-info>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.service-actions,.pack-bottom,.product-bottom{margin-top:auto}
.service-visual{
  position:absolute!important;
  z-index:1;
  top:72px;
  right:24px;
  width:150px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(226,201,140,.13);
  border-radius:50%;
  color:rgba(226,201,140,.5);
  background:radial-gradient(circle,rgba(226,201,140,.055),transparent 62%);
  pointer-events:none;
}
.service-visual::before,.service-visual::after{content:"";position:absolute;background:rgba(226,201,140,.14)}
.service-visual::before{width:1px;height:125%}.service-visual::after{width:125%;height:1px}
.service-visual strong{font:500 18px/1 "Cormorant Garamond";letter-spacing:.12em}
.service-visual i{position:absolute;inset:24px;border:1px solid rgba(255,255,255,.055);border-radius:50%}
.card-ideal{
  width:max-content;
  max-width:100%;
  min-height:0!important;
  margin:0 0 15px!important;
  padding:7px 10px;
  border:1px solid rgba(226,201,140,.16);
  color:#d2c6b2!important;
  background:rgba(255,255,255,.025);
  font-size:8px!important;
  line-height:1.35!important;
  letter-spacing:.09em;
  text-transform:uppercase;
  -webkit-line-clamp:2!important;
}
.pack-actions{display:flex;align-items:stretch;gap:8px}
.pack-actions .add-subtle{min-height:48px;padding-inline:14px}
.product-format{display:block;margin:-2px 0 11px;color:#9f988d;font-size:8px;letter-spacing:.11em;text-transform:uppercase}
.badge{
  box-shadow:inset 0 1px rgba(255,255,255,.09);
  backdrop-filter:blur(8px);
}
.service-price strong,.pack-price strong,.product-bottom strong{color:#eee2ca;text-shadow:0 8px 28px rgba(0,0,0,.3)}
.service-card.featured,.pack-card.featured{
  border-color:rgba(226,201,140,.43);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 90px rgba(0,0,0,.32),0 0 0 1px rgba(226,201,140,.07);
}
.service-card.featured::after,.pack-card.featured::after{opacity:.7}
.pack-ideal,.service-ideal{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin:14px 0 0;
  padding:7px 10px;
  border:1px solid rgba(226,201,140,.16);
  color:#d2c6b2;
  background:rgba(255,255,255,.025);
  font-size:8px;
  line-height:1.35;
  letter-spacing:.09em;
  text-transform:uppercase;
}

/* Transformations — the slider is the hero, copy is the frame. */
.compare-instruction{
  display:flex;
  align-items:center;
  gap:13px;
  margin:-22px 0 24px;
  color:#a7a198;
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.compare-instruction::before{content:"";width:34px;height:1px;background:var(--metal)}
.transformation-card{background:linear-gradient(150deg,#121514,#090b0a);border-color:rgba(226,201,140,.13)}
.compare::after{
  content:"ARRASTRA";
  position:absolute;
  z-index:7;
  left:50%;
  bottom:18px;
  translate:-50% 0;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(5,6,6,.72);
  color:#d8d0c3;
  font:600 7px/1 Manrope;
  letter-spacing:.16em;
  pointer-events:none;
  opacity:.72;
  transition:opacity .3s,transform .3s;
}
.compare:hover::after,.compare:focus-visible::after{opacity:0;transform:translateY(6px)}
.compare-side.before img{filter:saturate(.15) contrast(.88) brightness(.66) blur(.35px);transform:scale(1.045)}
.compare-side.after img{filter:saturate(.88) contrast(1.1) brightness(.98)}
.compare-side span{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(5,6,6,.72);
  backdrop-filter:blur(10px);
}
.compare-handle::before{box-shadow:0 0 24px rgba(226,201,140,.45)}
.compare[role="slider"]>.compare-handle b{
  border-color:rgba(226,201,140,.75);
  background:linear-gradient(145deg,#f1e6cf,#aa7e3c);
  color:#090a09;
  box-shadow:0 12px 35px rgba(0,0,0,.48),0 0 0 7px rgba(226,201,140,.08);
}

/* Six-scene Experience NOIR. */
.experience{
  overflow:clip;
  background:
    radial-gradient(circle at 12% 34%,rgba(183,137,70,.1),transparent 30rem),
    linear-gradient(115deg,#101311,#060808 62%);
}
.experience-intro{display:grid;grid-template-columns:1fr 1.35fr;gap:6vw;align-items:end;margin-bottom:8vh}
.experience-intro .section-index{grid-column:1/-1}
.experience-intro h2{margin:0;font-size:clamp(62px,7.6vw,128px);line-height:.76}
.experience-intro>p:last-child{max-width:500px;padding-bottom:8px;color:#aaa49b}
.experience-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr);gap:clamp(55px,8vw,130px)}
.ritual-stage{top:96px;padding-bottom:40px}
.ritual-stage__visual{
  height:min(70vh,720px);
  min-height:530px;
  margin:0 0 24px;
  border:1px solid rgba(226,201,140,.24);
  background:#090b0a;
  box-shadow:0 42px 120px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.06);
}
.ritual-stage__visual::before{
  content:"";
  position:absolute;
  z-index:5;
  inset:9px;
  border:1px solid rgba(255,255,255,.075);
  pointer-events:none;
}
.ritual-stage__visual::after{z-index:3;background:linear-gradient(0deg,rgba(4,5,5,.93),transparent 54%,rgba(3,4,4,.2))}
.ritual-scene{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  transform:scale(1.07);
  transition:opacity .7s ease,transform 1.25s var(--ease);
  pointer-events:none;
}
.ritual-scene.is-active{opacity:1;transform:scale(1)}
.ritual-scene img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.66) contrast(1.08) brightness(.8);transform:none}
.ritual-scene:nth-child(2) img,.ritual-scene:nth-child(6) img{object-position:58% center}
.ritual-scene:nth-child(3) img{object-position:58% center}
.ritual-scene:nth-child(4) img{object-position:67% center}
.ritual-scene--after img{object-position:76% center;filter:saturate(.82) contrast(1.08) brightness(.86)}
.ritual-stage__hud{
  position:absolute!important;
  z-index:6!important;
  inset:auto 28px 26px!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:8px 20px!important;
  align-items:end!important;
}
.ritual-stage__hud>span:first-child{grid-column:1;color:#e2c98c;font-size:10px;letter-spacing:.18em}
.ritual-stage__hud strong{grid-column:2;text-align:right;font-size:clamp(38px,5vw,72px);color:#f1ece2;letter-spacing:-.035em}
.ritual-meter{grid-column:1/-1;display:block!important;width:100%;height:1px;background:rgba(255,255,255,.16);overflow:hidden}
.ritual-meter i{display:block;width:100%;height:100%;background:var(--metal);transform:scaleX(var(--ritual-progress));transform-origin:left;transition:transform .7s var(--ease)}
.ritual-track{padding:7vh 0 23vh;position:relative}
.ritual-track::before{
  content:"";
  position:absolute;
  left:29px;
  top:8vh;
  bottom:24vh;
  width:1px;
  background:linear-gradient(var(--gold-hi),rgba(255,255,255,.09) 38%,rgba(255,255,255,.09));
  opacity:.5;
}
.ritual-step{position:relative;min-height:58vh!important;padding:14vh 0 8vh 92px!important;display:block!important;border:0!important;opacity:.24!important;transform:translateX(20px)!important}
.ritual-step::before{
  content:"";
  position:absolute;
  left:24px;
  top:calc(14vh + 7px);
  width:11px;
  height:11px;
  border:1px solid rgba(226,201,140,.56);
  border-radius:50%;
  background:#090b0a;
  box-shadow:0 0 0 8px rgba(226,201,140,.025);
  transition:background .4s,box-shadow .4s,transform .5s var(--ease);
}
.ritual-step.is-active{opacity:1!important;transform:none!important}
.ritual-step.is-active::before{background:var(--gold-hi);box-shadow:0 0 0 9px rgba(226,201,140,.09),0 0 28px rgba(226,201,140,.42);transform:scale(1.12)}
.ritual-step>span{display:block;margin-bottom:24px;font-size:clamp(58px,7vw,102px)!important;color:rgba(226,201,140,.26)!important;transition:color .5s}
.ritual-step.is-active>span{color:#e0c486!important}
.ritual-step small{display:block;margin-bottom:16px}
.ritual-step h3{margin:0 0 22px;font-size:clamp(48px,5.5vw,82px);text-wrap:balance}
.ritual-step p{max-width:530px;line-height:1.75}
.ritual-stage>p{display:flex;align-items:center;gap:12px;margin:0 0 15px}
.ritual-stage>p::before{content:"";width:28px;height:1px;background:var(--metal)}

/* Gallery and close. */
.gallery-grid{perspective:1200px}
.gallery-item{isolation:isolate;box-shadow:0 26px 80px rgba(0,0,0,.22)}
.gallery-item img{transition:transform 1s var(--ease),opacity .5s}
.gallery-item:hover img{transform:scale(1.045)}
.gallery-item figcaption{transform:translateY(8px);transition:transform .5s var(--ease)}
.gallery-item:hover figcaption{transform:none}
.gallery-quote{border-color:rgba(226,201,140,.18);background:linear-gradient(145deg,rgba(226,201,140,.08),rgba(255,255,255,.015))}
.gallery-action{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);color:#aaa49b}
.gallery-action p{margin:0;max-width:650px}
.contact-panel{grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);overflow:hidden}
.contact-image{position:absolute;z-index:0;inset:0;margin:0;opacity:.42}
.contact-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050606 0%,rgba(5,6,6,.91) 48%,rgba(5,6,6,.45)),linear-gradient(0deg,rgba(5,6,6,.88),transparent 65%)}
.contact-image img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.58) contrast(1.08);transform:scale(1.03)}
.contact-copy>small{display:block;margin-top:18px;color:#9b958b}

/* Premium assisted checkout. */
.cart-summary{margin:0 0 12px;color:#c1baad;font-size:9px;letter-spacing:.09em;text-transform:uppercase}
.cart-head small{display:block;max-width:370px;margin-top:7px;color:#918b82;line-height:1.55}
.cart-note{margin:11px 0 14px;color:#918b82;font-size:9px;line-height:1.5}
.cart-item-mark{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid rgba(226,201,140,.18);background:radial-gradient(circle at 50% 20%,rgba(226,201,140,.12),transparent),#0b0d0c;color:#e2c98c;font:500 18px/1 "Cormorant Garamond"}
.cart-item{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}
.cart-item .cart-line-price{grid-column:3;grid-row:1}
.cart-item .cart-item-actions{grid-column:1/-1}
.cart-item-main{display:flex;gap:14px;align-items:center;min-width:0}
.cart-item-copy{min-width:0}
.cart-item-code{display:block;margin-bottom:5px;color:#9d8a65;font-size:7px;letter-spacing:.14em;text-transform:uppercase}
.email-checkout{border:1px solid rgba(255,255,255,.12);background:transparent;color:#ddd6cb}
.email-checkout:hover{border-color:rgba(226,201,140,.38);background:rgba(226,201,140,.06)}

@media (max-width:1180px){
  .experience-layout{gap:55px}
  .ritual-stage__visual{min-height:480px;height:62vh}
  .ritual-step{padding-left:78px!important}
}

@media (max-width:900px),(max-height:700px){
  .experience-intro{grid-template-columns:1fr;margin-bottom:50px}
  .experience-intro .section-index{grid-column:auto}
  .experience-layout{display:block}
  .ritual-stage{position:relative;top:auto;padding:0}
  .ritual-stage__visual{height:min(74vw,620px);min-height:430px;margin-bottom:20px}
  .ritual-stage>p,.ritual-stage>.button{position:relative;z-index:2}
  .ritual-track{padding:70px 0 20px}
  .ritual-track::before{left:25px;top:78px;bottom:22px}
  .ritual-step{min-height:0!important;padding:45px 0 52px 72px!important;opacity:.55!important;transform:none!important}
  .ritual-step::before{left:20px;top:55px}
  .ritual-step>span{font-size:54px!important}
  .ritual-step h3{font-size:clamp(42px,8vw,66px)}
  .ritual-step.is-active{opacity:1!important}
  .contact-panel{grid-template-columns:1fr}
  .contact-image::after{background:linear-gradient(180deg,rgba(5,6,6,.55),#050606 69%)}
}

@media (max-width:680px){
  body::after{opacity:.08}
  .section-track::before{left:20px;width:55px}
  .hero{min-height:830px}
  .hero-copy::before{display:none}
  .hero-title{font-size:clamp(60px,18vw,86px);line-height:.77}
  .hero-stats{grid-template-columns:1fr 1fr}
  .hero-stats div{padding:14px 16px}
  .hero-stats div::after{left:16px}
  .compare-instruction{margin-top:-10px;line-height:1.6}
  .transformation-grid{display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:none!important;overflow:visible!important}
  .transformation-card,.transformation-main{max-width:none!important;width:100%;display:flex!important;flex:none!important}
  .swipe-hint{display:none}
  .compare::after{bottom:13px}
  .experience-intro h2{font-size:clamp(58px,17vw,88px)}
  .ritual-stage__visual{height:118vw;max-height:590px;min-height:410px}
  .ritual-stage__hud{inset:auto 20px 20px!important}
  .ritual-stage__hud strong{font-size:40px}
  .ritual-track{padding-top:42px}
  .ritual-track::before{top:52px}
  .ritual-step{padding:36px 0 42px 64px!important}
  .ritual-step::before{top:46px}
  .ritual-step>span{font-size:46px!important;margin-bottom:18px}
  .ritual-step h3{font-size:43px;margin-bottom:15px}
  .ritual-step p{font-size:14px}
  .gallery-action{align-items:flex-start;flex-direction:column}
  .contact-image{opacity:.32}
  .cart-item-main{align-items:flex-start}
  .cart-item-mark{width:38px;height:38px}
  .service-visual{width:125px;right:12px;top:68px}
  .pack-actions{flex-direction:column;width:100%}
  .pack-actions .add-subtle{width:100%}
}

@media (max-width:390px){
  .hero{min-height:790px}
  .hero-stats strong{font-size:18px}
  .hero-stats small{font-size:7px}
  .ritual-stage__visual{min-height:380px}
  .ritual-stage__hud strong{font-size:34px}
  .ritual-step{padding-left:58px!important}
  .ritual-track::before{left:20px}
  .ritual-step::before{left:15px}
}

@media (hover:none){
  .service-card::before,.pack-card::before,.product-card::after{display:none}
  .compare::after{opacity:.82}
}

@media (prefers-reduced-motion:reduce){
  body::after{display:none}
  .ritual-scene{transition:none;transform:none}
  .ritual-meter i,.ritual-step,.ritual-step::before,.hero-stats div::after,.compare::after{transition:none!important}
  .hero-glow,.hero-seal svg{animation:none!important}
}
