:root{--charcoal:#262626;--deep:#181818;--gold:#bda363;--white:#fff;--grey:#9a9a97;--paper:#f1eee6;--line:rgba(255,255,255,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--charcoal);color:var(--white);font-family:"Helvetica Now Display",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.032em;line-height:.98}h2{font-size:clamp(2.7rem,5.2vw,5.8rem)}em{color:var(--gold);font-family:Helvetica,Arial,sans-serif;font-style:normal;font-weight:700}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;color:#000;padding:12px}.skip:focus{top:20px}.site-header{height:82px;padding:0 3vw;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--line);background:rgba(38,38,38,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:50}.wordmark{width:136px}.site-header nav{display:flex;gap:2.2rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.13em}.site-header nav a{color:#d3d0ca}.site-header nav a:hover{color:var(--gold)}.mini-cta{border:1px solid var(--gold);padding:.74rem .95rem;color:var(--gold);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.mini-cta:hover{background:var(--gold);color:var(--charcoal)}
.hero{height:calc(100svh - 82px);min-height:650px;position:relative;overflow:hidden;display:grid;align-items:end}.hero-image,.hero-wash{position:absolute;inset:0}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.hero-wash{background:linear-gradient(90deg,rgba(38,38,38,.98) 0%,rgba(38,38,38,.9) 38%,rgba(38,38,38,.28) 70%,rgba(38,38,38,.42)),linear-gradient(0deg,rgba(38,38,38,.66),transparent 48%)}.hero-copy{position:relative;z-index:2;width:min(94%,920px);padding:4.5vw 3vw 6.5vh}.kicker,.section-no{text-transform:uppercase;letter-spacing:.18em;font-size:.6rem;color:var(--gold);font-weight:700}.constraint{font-size:clamp(1.25rem,2.1vw,2.45rem);letter-spacing:-.02em;margin:1.6rem 0 .65rem;min-height:1.05em}.constraint b{color:var(--gold)}.constraint span{display:inline-block;transition:opacity .25s,transform .25s}.constraint span.out{opacity:0;transform:translateY(8px)}.hero h1{font-size:clamp(2.9rem,5.8vw,6.75rem);max-width:840px}.hero h1 em{display:inline-block}.hero-lead{font-size:clamp(.94rem,1.12vw,1.1rem);line-height:1.55;max-width:570px;margin:1.5rem 0;color:#e6e2da}.hero-actions{display:flex;align-items:center;gap:1.3rem;flex-wrap:wrap}.hero-actions>p{font-size:.67rem;color:#cbc7bd;letter-spacing:.04em}.hero-actions strong{color:#fff}.button{background:var(--gold);color:var(--charcoal);min-height:49px;padding:0 1.25rem;display:inline-flex;align-items:center;justify-content:space-between;gap:1.8rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.button:hover{background:#d6c28c}.button span{font-size:.96rem}.hero-index{position:absolute;z-index:2;right:3vw;bottom:2rem;display:flex;gap:1.4rem;font-size:.58rem;text-transform:uppercase;letter-spacing:.17em}.hero-index span:first-child{color:var(--gold)}
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:1.2rem 0}.marquee-track{display:flex;width:max-content;animation:marquee 30s linear infinite}.marquee span{font-family:Helvetica,Arial,sans-serif;color:#d8d5ce;font-size:1rem;font-style:normal;font-weight:600;margin:0 2.2rem}.marquee span:after{content:'•';color:var(--gold);margin-left:4.4rem}@keyframes marquee{to{transform:translateX(-50%)}}
.opening{padding:7.6rem 4vw;display:grid;grid-template-columns:.45fr 1.3fr .9fr;gap:5vw;border-bottom:1px solid var(--line)}.opening h2{font-size:clamp(2.6rem,4.5vw,5.25rem)}.gold-line{font-family:Helvetica,Arial,sans-serif;color:var(--gold);font-size:clamp(1.2rem,1.9vw,2rem);font-style:normal;font-weight:700;margin-top:1rem}.opening-copy{padding-top:3.2rem}.opening-copy p{font-size:.88rem;line-height:1.7;color:#bebbb3;margin-bottom:1.15rem}.opening-copy .large{font-size:1.06rem;line-height:1.55;color:#fff}
.diagnostic{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--gold);color:var(--charcoal)}.diagnostic-intro{padding:7rem 5vw}.diagnostic-intro .section-no{color:#fff}.diagnostic-intro h2{font-size:clamp(2.6rem,4.4vw,5rem);margin:2.35rem 0}.diagnostic-intro h2 em{color:#fff}.diagnostic-intro>p:last-child{max-width:490px;color:#3f3829;line-height:1.7;font-size:.9rem}.diagnostic-list{margin:0;padding:0;list-style:none;border-left:1px solid rgba(38,38,38,.28)}.diagnostic-list li{display:grid;grid-template-columns:55px 1fr;gap:1.45rem;padding:2.3rem;border-bottom:1px solid rgba(38,38,38,.28);min-height:25%}.diagnostic-list li:last-child{border-bottom:0}.diagnostic-list>li>span{color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.13em}.diagnostic-list h3{color:var(--charcoal);font-size:clamp(1.25rem,1.75vw,2rem);letter-spacing:-.02em;margin-bottom:.65rem}.diagnostic-list p{color:#40382a;line-height:1.65;max-width:520px;font-size:.83rem}
.voice{padding:7.8rem 5vw;text-align:center;background:var(--deep)}.voice blockquote{font-size:clamp(2.25rem,4.5vw,5.35rem);letter-spacing:-.032em;line-height:1.02;margin:0}.voice blockquote span{font-family:Helvetica,Arial,sans-serif;color:var(--gold);font-style:normal;font-weight:700}.voice>p{max-width:680px;color:#b9b6ae;line-height:1.8;margin:2.6rem auto 0;font-size:.9rem}
.fit{padding:7.5rem 4vw;display:grid;grid-template-columns:.35fr .9fr 1fr;gap:4vw}.fit-title h2{font-size:clamp(2.5rem,4.3vw,5rem)}.fit-grid{display:grid;grid-template-columns:1fr 1fr}.fit-grid article{border-top:1px solid var(--line);padding:1.35rem 1rem 2.7rem 0}.fit-grid article:nth-child(odd){margin-right:2rem}.fit-grid span{color:var(--gold);font-family:Helvetica,Arial,sans-serif;font-size:1rem;font-style:normal;font-weight:700}.fit-grid p{color:#bdbab2;font-size:.82rem;line-height:1.65;margin-top:.85rem}
.logo-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:3rem 0}.logo-band>.section-no{margin:0 4vw 2.4rem}.logo-viewport{overflow:hidden}.logo-track{display:flex;width:max-content;animation:logos 45s linear infinite}.logo-set{display:flex;align-items:center}.logo-set img{width:180px;height:65px;object-fit:contain;filter:brightness(0) invert(1);opacity:.82;margin:0 2.2rem}.logo-set img.rea{transform:scale(1.25)}@keyframes logos{to{transform:translateX(-50%)}}
.proof{padding:7.5rem 0 0}.proof-heading{padding:0 4vw 4.5rem;display:grid;grid-template-columns:.35fr 1.65fr;gap:4vw;align-items:start}.proof-heading h2{font-size:clamp(1.9rem,3.25vw,3.65rem);line-height:1.12;letter-spacing:-.024em;max-width:1080px}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.proof-grid figure{margin:0;aspect-ratio:1;position:relative;overflow:hidden}.proof-grid img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.proof-grid figure:hover img{transform:scale(1.035)}.proof-grid figcaption{position:absolute;inset:auto 0 0;padding:4rem 1.2rem 1.1rem;background:linear-gradient(transparent,rgba(0,0,0,.86));display:flex;justify-content:space-between;gap:1rem;align-items:end}.proof-grid b{font-size:.82rem}.proof-grid span{font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;color:#ccc9c1;text-align:right}
.about{display:grid;grid-template-columns:1.15fr .85fr;min-height:650px}.about-image{min-height:560px;overflow:hidden}.about-image img{width:100%;height:100%;object-fit:cover;object-position:68% 50%}.about-copy{padding:6rem 5vw;background:var(--deep)}.about-copy h2{font-size:clamp(3.1rem,5.3vw,6rem);margin:2.3rem 0}.about-copy p{max-width:540px;color:#bbb8b0;line-height:1.75;margin-bottom:1.15rem;font-size:.89rem}.about-copy p.large{color:#fff;font-size:1.08rem}
.booking{display:block;background:var(--charcoal);color:#fff;padding:7.4rem 5vw}.booking .section-no{color:var(--gold)}.booking-lead{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.booking-lead h2{font-size:clamp(3rem,5.15vw,5.9rem);margin-top:2.2rem}.booking-lead h2 span{color:var(--gold)}.booking-intro{max-width:570px}.booking-intro p{color:#bbb8af;font-size:.9rem;line-height:1.75;margin-top:1rem}.booking-intro .large{color:#fff;font-size:clamp(1.35rem,2vw,2rem);font-weight:700;letter-spacing:-.02em;line-height:1.25;margin-top:0}.booking-offer{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(480px,1.28fr);gap:2.2rem;align-items:start;margin-top:4.5rem}.booking-card{background:#1b1b1b;color:var(--gold);border:1px solid rgba(189,163,99,.5);padding:2.4rem}.price{color:var(--gold);font-size:clamp(4rem,7vw,6.2rem);letter-spacing:-.045em;line-height:.94}.booking-title{color:var(--gold);font-family:Helvetica,Arial,sans-serif;font-size:1.25rem;font-style:normal;font-weight:700;margin:1.55rem 0}.booking-card ul{list-style:none;padding:0;margin:0 0 1.8rem}.booking-card li{color:#d8c38b;border-top:1px solid rgba(189,163,99,.35);padding:.85rem 0;font-size:.75rem}.guarantee{border-top:1px solid rgba(189,163,99,.55);padding-top:1.25rem}.guarantee strong{color:#fff;font-size:.78rem}.guarantee p{color:#a7a39a;font-size:.66rem;line-height:1.6;margin-top:.55rem}.calendar-panel{background:#1b1b1b;border:1px solid rgba(255,255,255,.14);padding:1.5rem}.calendar-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;border-bottom:1px solid rgba(255,255,255,.14);padding:0 .35rem 1.2rem}.calendar-heading .section-no{margin:0}.calendar-heading>p:last-child{color:#aaa69d;font-size:.68rem;line-height:1.5;text-align:right;max-width:280px}.calendar-panel iframe{display:block;border:0;background:#262626;width:100%;min-height:720px}.calendar-fallback{color:#8f8b83;font-size:.65rem;margin:.8rem .35rem 0}.calendar-fallback a{color:var(--gold);border-bottom:1px solid rgba(189,163,99,.55)}
.questions{padding:7rem 5vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw}.questions h2{font-size:clamp(2.7rem,4.2vw,4.85rem);margin-top:2.3rem}.question-intro{color:#aaa79f;max-width:420px;font-size:.85rem;line-height:1.7;margin-top:1.8rem}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;cursor:pointer;padding:1.65rem 0;display:flex;justify-content:space-between;gap:2rem;font-size:.98rem}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{color:var(--gold);transition:transform .2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion .answer{max-width:760px;padding:0 3rem 1.8rem 0}.accordion .answer p{color:#bcb9b1;line-height:1.75;padding:0;font-size:.87rem;margin-bottom:1rem}.accordion .answer ul{color:#d4d1ca;margin:1rem 0 1.2rem;padding-left:1.2rem;font-size:.83rem;line-height:1.75}.accordion .answer li{padding-left:.3rem}
.next-path{background:var(--gold);color:var(--charcoal);padding:7rem 5vw;display:grid;grid-template-columns:.32fr 1fr .82fr;gap:5vw;align-items:start}.next-path .section-no{color:#fff}.next-heading h2{font-size:clamp(2.7rem,4.5vw,5.1rem)}.next-heading h2 span{color:#fff}.next-copy>p{color:#443b2b;font-size:.9rem;line-height:1.75;margin-bottom:1rem}.next-copy>p:first-child{color:var(--charcoal);font-size:1.12rem;font-weight:700;line-height:1.55}.next-actions{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;margin-top:2rem}.next-path .button{background:var(--charcoal);color:#fff}.next-path .button:hover{background:#111}.text-link{display:inline-flex;min-height:38px;align-items:center;border-bottom:1px solid currentColor;font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.final{text-align:center;padding:7.8rem 4vw;background:var(--deep)}.final>p{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;font-size:.6rem}.final h2{font-size:clamp(3.2rem,6.2vw,7.25rem);margin:1.65rem 0 2.7rem}.final .button{min-width:230px}footer{padding:4.2rem 4vw 2rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem;align-items:start}footer>img{width:175px}footer>p{font-family:Helvetica,Arial,sans-serif;color:#c5c2ba;font-style:normal;line-height:1.6;font-size:.82rem}footer>div{display:flex;flex-direction:column;gap:.8rem;font-size:.7rem}footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:1.5rem;color:#8f8d87;font-size:.57rem}
.scene{opacity:1;transform:none}.motion-ready .reveal-item{opacity:0;transform:translateY(24px);transition:opacity .72s ease,transform .82s cubic-bezier(.2,.8,.2,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready .reveal-item.revealed{opacity:1;transform:none}
@media(max-width:900px){.site-header nav{display:none}.hero{height:auto;min-height:820px}.hero-copy{padding:8rem 6vw 6rem}.hero-wash{background:linear-gradient(90deg,rgba(38,38,38,.96),rgba(38,38,38,.45)),linear-gradient(0deg,rgba(38,38,38,.9),transparent)}.opening{grid-template-columns:1fr;padding:7rem 6vw}.opening-copy{padding-top:1rem}.diagnostic{grid-template-columns:1fr}.diagnostic-list{border-left:0;border-top:1px solid rgba(38,38,38,.2)}.booking-lead,.booking-offer{grid-template-columns:1fr}.booking-intro{margin-top:2rem}.booking-offer{gap:1.5rem}.fit{grid-template-columns:1fr;padding:7rem 6vw}.proof-heading{grid-template-columns:1fr}.about{grid-template-columns:1fr}.about-image{height:65vw;min-height:480px}.questions{grid-template-columns:1fr}.questions h2{margin-bottom:1rem}.next-path{grid-template-columns:1fr}.next-copy{max-width:650px}footer{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.site-header{height:72px;padding:0 5vw}.wordmark{width:115px}.mini-cta{font-size:.59rem;padding:.68rem}.hero{min-height:690px}.hero-image img{object-position:68% 50%}.hero-copy{padding:4.2rem 6vw}.hero h1{font-size:clamp(2.72rem,10.8vw,4.05rem)}.constraint{font-size:1.3rem;margin-top:1.3rem}.hero-lead{font-size:.9rem}.hero-index{display:none}.button{width:100%}.opening,.diagnostic-intro,.voice,.fit,.proof,.about-copy,.booking,.questions,.next-path,.final{padding-top:4.7rem;padding-bottom:4.7rem}.diagnostic-list li{grid-template-columns:32px 1fr;gap:.9rem;padding:1.65rem 6vw}.booking-lead h2{font-size:clamp(2.65rem,11vw,4rem)}.booking-intro .large{font-size:1.25rem}.booking-offer{margin-top:3rem}.booking-card,.calendar-panel{padding:1.35rem}.calendar-heading{display:block}.calendar-heading>p:last-child{text-align:left;margin-top:.7rem}.calendar-panel iframe{min-height:760px;height:760px}.fit-grid{grid-template-columns:1fr}.fit-grid article:nth-child(odd){margin-right:0}.logo-set img{width:124px;height:46px;margin:0 1.2rem}.proof-heading{grid-template-columns:1fr;padding:0 6vw 3rem}.proof-heading h2{font-size:clamp(1.65rem,7vw,2.35rem)}.proof-grid{grid-template-columns:repeat(3,1fr);gap:2px}.proof-grid figcaption{padding:2rem .45rem .45rem}.proof-grid b{font-size:.48rem}.proof-grid span{display:none}.about-image{height:80vw;min-height:350px}.about-image img{object-position:74% 50%}.booking,.next-path{padding-left:6vw;padding-right:6vw}.questions{padding-left:6vw;padding-right:6vw}.accordion .answer{padding-right:0}.final{padding-left:6vw;padding-right:6vw}footer{grid-template-columns:1fr;padding:3.5rem 6vw 2rem}.motion-ready .reveal-item{transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track,.logo-track{animation:none}.motion-ready .reveal-item{opacity:1;transform:none;transition:none}.constraint span{transition:none}}

/* ===== Upgrade: new sections + motion ===== */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;pointer-events:none}.progress span{display:block;height:100%;background:var(--gold);transform-origin:0 50%;transform:scaleX(var(--p,0))}

/* hero load sequence */
.load-in{opacity:0;transform:translateY(18px);animation:rise .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--d,0ms)}
.mask-lines .line{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.mask-lines .line>span{display:inline-block;transform:translateY(105%);animation:lineUp 1s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--d,0ms)}
@keyframes rise{to{opacity:1;transform:none}}@keyframes lineUp{to{transform:none}}
.hero-image img{animation:heroZoom 2.8s cubic-bezier(.2,.8,.2,1) both;will-change:transform}
@keyframes heroZoom{from{transform:scale(1.1)}to{transform:scale(1)}}
.hero-image{transform:translate3d(0,var(--py,0),0)}
.scroll-cue{position:absolute;z-index:2;left:50%;bottom:1.6rem;width:1px;height:46px;background:rgba(255,255,255,.2);overflow:hidden}
.scroll-cue span{position:absolute;left:0;top:-50%;width:1px;height:50%;background:var(--gold);animation:cue 2s ease-in-out infinite}
@keyframes cue{to{top:110%}}
.constraint span{transition:opacity .3s,transform .3s,filter .3s}.constraint span.out{opacity:0;transform:translateY(10px);filter:blur(4px)}

/* buttons */
.button{position:relative;overflow:hidden;transition:background .25s}.button span{transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.button:hover span{transform:translate(3px,-3px)}.button[href="#book"]:hover span{transform:translate(0,3px)}
.button::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%)}
.button:hover::after{transform:translateX(120%);transition:transform .8s ease}
.mini-cta{transition:background .25s,color .25s}

/* marquee band */
.marquee{padding:1.35rem 0;background:var(--deep)}.marquee-track{animation:marquee 38s linear infinite}.marquee-set{display:flex}
.marquee span{margin:0 1.6rem;white-space:nowrap}.marquee span:after{margin-left:3.2rem}
.marquee:hover .marquee-track{animation-play-state:paused}

/* search section */
.search{padding:7.4rem 5vw 6.6rem;text-align:center;border-bottom:1px solid var(--line)}
.search h2{font-size:clamp(2.4rem,4.4vw,5rem);margin:2rem auto 3.2rem}
.search-bar{max-width:820px;margin:0 auto;background:var(--gold);color:var(--charcoal);display:flex;align-items:center;gap:1.1rem;padding:1.35rem 1.6rem;border-radius:999px;box-shadow:0 30px 70px -30px rgba(189,163,99,.55);text-align:left}
.search-bar svg{width:26px;height:26px;flex:none;fill:none;stroke:var(--charcoal);stroke-width:2.2;stroke-linecap:round}
.search-bar p{font-size:clamp(1.05rem,2vw,1.7rem);font-weight:700;letter-spacing:-.016em;min-height:1.3em;display:flex;align-items:center}
.caret{display:inline-block;width:2px;height:1.1em;background:var(--charcoal);margin-left:3px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.search-note{color:#bdbab2;font-size:.92rem;line-height:1.7;max-width:520px;margin:2.2rem auto 0}

/* problems grid */
.problems{padding:7.5rem 4vw;display:grid;grid-template-columns:.75fr 1.6fr;gap:5vw;align-items:start}
.problems-head{position:sticky;top:120px}.problems-head h2{font-size:clamp(2.5rem,4.2vw,4.9rem);margin:2.2rem 0 1.6rem}.problems-head>p:last-child{color:#bdbab2;font-size:.9rem;line-height:1.7;max-width:360px}
.problems-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.problems-grid article{background:var(--charcoal);padding:2rem 1.6rem 2.4rem;position:relative;min-height:290px;display:flex;flex-direction:column;transition:background .35s}
.problems-grid article::before{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.problems-grid article:hover{background:#2d2d2d}.problems-grid article:hover::before{transform:scaleX(1)}
.problems-grid .tag{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:.58rem;font-weight:700}
.problems-grid h3{font-size:clamp(1.25rem,1.6vw,1.65rem);letter-spacing:-.02em;line-height:1.12;margin:1.3rem 0 1rem}
.problems-grid p{color:#bdbab2;font-size:.82rem;line-height:1.65}
.problems-grid .any{background:var(--gold);color:var(--charcoal)}.problems-grid .any:hover{background:#c9b177}.problems-grid .any::before{background:var(--charcoal)}
.problems-grid .any .tag{color:#fff}.problems-grid .any p{color:#3f3829}.problems-grid .any .text-link{margin-top:auto;align-self:flex-start;padding-top:1.4rem}

/* diagnostic progress line */
.diagnostic-list{position:relative}
.diagnostic-list::before{content:"";position:absolute;left:-1px;top:0;width:3px;height:100%;background:#fff;transform-origin:50% 0;transform:scaleY(var(--dp,0))}
.diagnostic-list li{transition:background .4s}.diagnostic-list li.active{background:rgba(255,255,255,.12)}

/* booking */
.price small{font-size:.32em;letter-spacing:0;vertical-align:.95em;margin-right:.08em}
.booking-card{position:relative;overflow:hidden}
.booking-card::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(189,163,99,.14),transparent);animation:sheen 5.5s ease-in-out infinite}
@keyframes sheen{0%,60%{left:-60%}100%{left:130%}}

/* voice lines */
.voice blockquote .vline{display:block;font-family:inherit;color:inherit;font-weight:inherit}
.voice blockquote .vline.gold{font-family:Helvetica,Arial,sans-serif;color:var(--gold);font-weight:700}

/* proof wipe */
.proof-grid figure img{clip-path:inset(0 0 0 0);transition:clip-path 1.1s cubic-bezier(.7,0,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
.motion-ready .proof-grid figure.reveal-item{opacity:1;transform:none}
.motion-ready .proof-grid figure.reveal-item img{clip-path:inset(100% 0 0 0)}
.motion-ready .proof-grid figure.reveal-item.revealed img{clip-path:inset(0 0 0 0)}

/* about */
.about-image img{transform:scale(var(--as,1.08));transition:transform .1s linear}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:2.4rem 0 0;border-top:1px solid var(--line);padding-top:1.8rem;max-width:540px}
.stats dt{font-size:clamp(2rem,3vw,3rem);letter-spacing:-.032em;color:var(--gold);line-height:1}.stats dd{margin:.6rem 0 0;color:#a9a69e;font-size:.68rem;line-height:1.5}

/* accordion motion */
.accordion .answer{animation:open .45s cubic-bezier(.2,.8,.2,1)}@keyframes open{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.accordion summary{transition:color .2s}.accordion summary:hover{color:var(--gold)}

/* final */
.final h2{background:linear-gradient(90deg,#fff 0%,#fff 40%,var(--gold) 50%,#fff 60%,#fff 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}
@keyframes shine{from{background-position:100% 0}to{background-position:-150% 0}}

/* sticky mobile CTA */
.sticky-cta{display:none}
@media(max-width:900px){
  .problems{grid-template-columns:1fr;padding:6rem 6vw}.problems-head{position:static}.problems-grid{grid-template-columns:1fr 1fr}
  .sticky-cta{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:55;justify-content:space-between;align-items:center;gap:1rem;background:var(--gold);color:var(--charcoal);padding:.95rem 1.1rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;box-shadow:0 18px 40px -12px rgba(0,0,0,.6);transform:translateY(140%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
  .sticky-cta b{font-weight:700}.sticky-cta.show{transform:none}
  .scroll-cue{display:none}
}
@media(max-width:620px){
  .problems-grid{grid-template-columns:1fr}.problems-grid article{min-height:0}
  .search{padding:4.7rem 6vw}.search-bar{padding:1rem 1.2rem;gap:.8rem}.search-bar svg{width:20px;height:20px}.search-bar p{font-size:1rem}
  .stats{gap:.8rem}.stats dd{font-size:.6rem}
  footer{padding-bottom:6rem}
}
@media(prefers-reduced-motion:reduce){
  .load-in,.mask-lines .line>span,.hero-image img{animation:none;opacity:1;transform:none}
  .scroll-cue span,.caret,.booking-card::after,.final h2,.marquee-track{animation:none}
  .final h2{color:#fff;background:none}
  .motion-ready .proof-grid figure.reveal-item img{clip-path:none}
  .about-image img{transform:none}
}


.final h2 
.search-bar 
@media(max-width:620px){.hero h1{font-size:clamp(2.3rem,9.4vw,4.05rem)}}

/* ===== Simplified version ===== */
.site-header{transition:background .35s,border-color .35s}
.constraint{font-family:Helvetica,Arial,sans-serif}

/* Two hours: all black on gold */
.diagnostic-intro .section-no,.diagnostic-intro h2 em,.diagnostic-list>li>span,.diagnostic-list h3,.diagnostic-list p,.diagnostic-intro>p:last-child{color:var(--charcoal)}
.diagnostic-list::before{background:var(--charcoal)}
.diagnostic-list li.active{background:rgba(38,38,38,.07)}
.diagnostic-intro{padding:6rem 5vw}.diagnostic-list li{padding:1.9rem 2.3rem}

/* Booking */
.booking{padding:6.5rem 5vw}
.booking-lead{display:block;max-width:760px}
.booking-lead h2{font-size:clamp(2.7rem,4.8vw,5.2rem);margin:1.8rem 0 1.1rem}
.booking-lead .large{color:#d8d5ce;font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.5}
.booking-offer{margin-top:3rem}
.ask{margin-top:2.2rem;border:1px solid rgba(189,163,99,.5);padding:2rem 2.2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}
.ask h3{font-size:clamp(1.4rem,2vw,2rem);letter-spacing:-.02em}
.ask p{color:#bbb8af;font-size:.9rem;line-height:1.6;margin-top:.5rem}
.ask-actions{display:flex;gap:.8rem;flex-wrap:wrap}
.button.ghost{background:transparent;color:var(--gold);border:1px solid var(--gold)}
.button.ghost:hover{background:var(--gold);color:var(--charcoal)}

/* Work: logos + case studies */
.work{padding:6.5rem 0 0;border-top:1px solid var(--line)}
.work-heading{padding:0 4vw 2.6rem;display:grid;grid-template-columns:.35fr 1.65fr;gap:4vw;align-items:start}
.work-heading h2{font-size:clamp(1.9rem,3.25vw,3.65rem);line-height:1.1;letter-spacing:-.024em;max-width:980px}
.work .logo-viewport{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2.2rem 0;margin-bottom:3px}

/* FAQ */
.questions{padding:6rem 5vw}.questions h2{font-size:clamp(2.6rem,4vw,4.6rem)}

/* Closing: quote + final CTA */
.closing{padding:7rem 5vw;text-align:center;background:var(--deep)}
.closing blockquote{font-size:clamp(2.2rem,4.4vw,5.2rem);letter-spacing:-.032em;line-height:1.02;margin:0}
.closing .vline{display:block}.closing .vline.gold{color:var(--gold);font-weight:700}
.closing-copy{max-width:620px;margin:2.2rem auto 2.4rem;color:#bdbab2;font-size:.95rem;line-height:1.75}
.closing .button{min-width:230px}

/* Footer */
footer{padding:4.5rem 4vw 2rem;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:3rem;align-items:start;border-top:1px solid var(--line)}
.foot-brand img{width:170px}.foot-brand p{color:#c5c2ba;line-height:1.6;font-size:.88rem;margin:1.3rem 0 1.6rem}
.foot-col{display:flex;flex-direction:column}
.foot-col .section-no{margin-bottom:.8rem}
.foot-col a{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.95rem 0;border-bottom:1px solid var(--line);font-size:.95rem;transition:color .2s,padding .3s}
.foot-col a span{color:#8f8d87;font-size:.72rem;text-align:right;transition:color .2s}
.foot-col a:hover{color:var(--gold);padding-left:.4rem}.foot-col a:hover span{color:var(--gold)}
footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:1.5rem;color:#8f8d87;font-size:.65rem;display:flex;gap:1.2rem;flex-wrap:wrap}
footer small a{color:#b5b2aa}footer small a:hover{color:var(--gold)}
.is-hidden{display:none!important}

@media(max-width:900px){
  /* Logo + Book sit over the hero image on mobile */
  .site-header{position:fixed;left:0;right:0;top:0;background:transparent;border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
  .site-header.solid{background:rgba(38,38,38,.94);border-bottom-color:var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .hero{min-height:100svh}
  .hero-copy{padding-top:7.5rem}
  .work-heading{grid-template-columns:1fr}
  footer{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}
}
@media(max-width:620px){
  .booking{padding:4.7rem 6vw}
  .ask{padding:1.5rem}.ask-actions{width:100%}.ask-actions .button{width:100%}
  .work-heading{padding:0 6vw 2rem}
  .closing{padding:5rem 6vw}
  footer{grid-template-columns:1fr;padding:3.5rem 6vw 6.5rem;gap:2.2rem}
}
.booking-card::after{display:none}
@media(max-width:620px){.hero h1{font-size:clamp(2.2rem,8.4vw,4.05rem)}}

/* ===== Booking v3: button-led, Calendly pop-up, question form ===== */
.book-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:center}
.book-copy h2{font-size:clamp(2.7rem,4.8vw,5.2rem);margin:1.8rem 0 1.1rem}
.book-copy .large{color:#d8d5ce;font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.5}
.book-points{list-style:none;padding:0;margin:2rem 0 1.6rem;max-width:520px}
.book-points li{border-top:1px solid var(--line);padding:.9rem 0 .9rem 1.6rem;position:relative;color:#e2dfd8;font-size:.92rem}
.book-points li::before{content:"";position:absolute;left:0;top:1.25rem;width:.55rem;height:.3rem;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.guarantee-line{color:#a9a69e;font-size:.82rem;line-height:1.6;max-width:520px}.guarantee-line strong{color:#fff}
.book-card{background:#1b1b1b;border:1px solid rgba(189,163,99,.5);padding:2.6rem;display:flex;flex-direction:column;gap:.85rem}
.book-card .price{color:var(--gold);font-size:clamp(4rem,7vw,6.2rem);letter-spacing:-.045em;line-height:.94}
.book-card .booking-title{margin:.6rem 0 0;color:var(--gold);font-weight:700;font-size:1.2rem}
.book-meta{color:#a9a69e;font-size:.78rem;margin-bottom:1rem}
.button.wide{width:100%;font-family:inherit;border:0;cursor:pointer}
.button.ghost.wide{border:1px solid var(--gold)}
#toggle-ask span{transition:transform .3s}#toggle-ask.is-open span{transform:rotate(45deg)}
.book-small{color:#8f8b83;font-size:.66rem;margin-top:.3rem}
.ask-panel{margin-top:2.6rem;opacity:0;transform:translateY(-10px);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.8,.2,1);scroll-margin-top:100px}
.ask-panel.open{opacity:1;transform:none}
.ask-form{border:1px solid rgba(189,163,99,.5);background:#1b1b1b;padding:2.4rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem}
.ask-intro h3{font-size:clamp(1.6rem,2.4vw,2.4rem);letter-spacing:-.024em}
.ask-intro p{color:#bbb8af;font-size:.9rem;line-height:1.65;margin:.8rem 0 1.4rem}
.ask-quick{display:flex;flex-direction:column;gap:.6rem}
.ask-quick a{display:inline-flex;align-items:center;gap:.6rem;color:var(--gold);font-size:.85rem}.ask-quick a:hover{color:#fff}
.ask-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}
.ask-fields label{display:flex;flex-direction:column;gap:.45rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#cfcbc2}
.ask-fields label i{font-style:normal;text-transform:none;letter-spacing:0;color:#8f8b83}
.ask-fields .full{grid-column:1/-1}
.ask-fields input,.ask-fields textarea{font:inherit;font-size:.95rem;text-transform:none;letter-spacing:0;color:#fff;background:#262626;border:1px solid rgba(255,255,255,.18);padding:.85rem .9rem;border-radius:0;transition:border-color .2s}
.ask-fields input:focus,.ask-fields textarea:focus{outline:none;border-color:var(--gold)}
.ask-fields textarea{resize:vertical;min-height:120px}
.ask-submit{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.ask-submit .button{border:0;cursor:pointer;font-family:inherit}
.ask-status{color:#bbb8af;font-size:.8rem}.ask-status a{color:var(--gold);border-bottom:1px solid currentColor}
.ask-done{grid-column:1/-1;text-align:center;padding:1.5rem 0}.ask-done h3{font-size:2rem;letter-spacing:-.024em;color:var(--gold)}.ask-done p{color:#bbb8af;margin-top:.7rem}
.hp{position:absolute;left:-9999px}
.ic{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Footer icons */
.socials{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.4rem}
.socials a{width:44px;height:44px;border:1px solid rgba(189,163,99,.5);display:grid;place-items:center;color:var(--gold);transition:background .25s,color .25s,transform .25s}
.socials a:hover{background:var(--gold);color:var(--charcoal);transform:translateY(-2px)}
.socials .ic{width:20px;height:20px}
.foot-col a{justify-content:flex-start}.foot-col a .ic{color:var(--gold);margin-right:.2rem}.foot-col a span{margin-left:auto}

@media(max-width:900px){.book-wrap{grid-template-columns:1fr;gap:2.5rem}.ask-form{grid-template-columns:1fr;gap:1.8rem}}
@media(max-width:620px){.book-card,.ask-form{padding:1.5rem}.ask-fields{grid-template-columns:1fr}}
.foot-col a{align-items:center}
.ask-fields input,.ask-fields textarea{width:100%}
.work .logo-viewport{border-top:0;border-bottom:0}
body{letter-spacing:.008em}

/* Circle icons */
.foot-col a .ic,.ask-quick .ic{box-sizing:border-box;width:38px;height:38px;padding:9px;border:1px solid rgba(189,163,99,.65);border-radius:50%;color:var(--gold);stroke-width:1.8;transition:background .25s,color .25s,border-color .25s,transform .25s;margin-right:.55rem}
.foot-col a:hover .ic,.ask-quick a:hover .ic{background:var(--gold);border-color:var(--gold);color:var(--charcoal);transform:translateY(-1px)}
.foot-col a{padding:.7rem 0}
.foot-col a:hover{padding-left:0}
.ask-quick{gap:.7rem}
.mask-lines .line{padding-bottom:.2em;margin-bottom:-.2em}
h1,h2,h3,.search-note,.closing-copy,.book-copy .large{text-wrap:balance}
p{text-wrap:pretty}
.keep{white-space:nowrap}
.foot-col a{border-bottom:0;padding:.45rem 0}
.foot-col .section-no{margin-bottom:.6rem}

/* ===== v10: approved copy sections ===== */
.hero-avatar{font-size:clamp(1rem,1.3vw,1.22rem);line-height:1.45;max-width:600px;margin:1.4rem 0 0;color:#fff;font-weight:600;letter-spacing:-.005em}
.hero-lead{margin:.9rem 0 1.5rem}
.hero-price{font-size:.75rem!important}
.hero-guarantee{max-width:560px;margin-top:1rem;color:#cbc7bd;font-size:.8rem;line-height:1.55}.hero-guarantee strong{color:var(--gold)}

/* Problem clusters */
.search{padding-bottom:6rem}
.search .search-note{font-size:1.05rem;color:#e2dfd8;margin-top:3rem}
.clusters{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;max-width:1260px;margin:2.4rem auto 0;text-align:left}
.clusters article{border:1px solid rgba(189,163,99,.4);padding:1.8rem 1.5rem 1.6rem;transition:border-color .3s,background .3s}
.clusters article:hover{border-color:var(--gold);background:#2b2b2b}
.clusters .tag{color:var(--gold);font-size:.62rem;font-weight:700;letter-spacing:.16em}
.clusters h3{font-size:clamp(1.5rem,2vw,2rem);letter-spacing:-.02em;margin:.7rem 0 1.1rem;color:var(--gold)}
.clusters ul{list-style:none;padding:0;margin:0}
.clusters li{color:#d8d5ce;font-size:.86rem;line-height:1.5;padding:.55rem 0 .55rem 1.3rem;position:relative}
.clusters li::before{content:"";position:absolute;left:0;top:1.05rem;width:.45rem;height:1px;background:var(--gold)}
.clusters-note{max-width:560px;margin:2.4rem auto 0;color:#bdbab2;font-size:.95rem;line-height:1.7}

/* What you leave with */
.leave{padding:6.5rem 5vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:start}
.leave-head h2{font-size:clamp(2.6rem,4.2vw,4.8rem);margin-top:2rem}
.leave-list{list-style:none;margin:0;padding:0}
.leave-list li{display:grid;grid-template-columns:2.2rem 1fr;column-gap:.4rem;padding:1.2rem 0;border-top:1px solid var(--line)}
.leave-list li:last-child{border-bottom:1px solid var(--line)}
.leave-list li::before{content:"";grid-row:1/3;width:1.3rem;height:1.3rem;margin-top:.15rem;border-radius:50%;border:1px solid var(--gold);background:radial-gradient(circle,var(--gold) 0 30%,transparent 32%)}
.leave-list b{font-size:clamp(1.05rem,1.4vw,1.3rem);letter-spacing:-.015em}
.leave-list span{color:#bdbab2;font-size:.88rem;line-height:1.55;margin-top:.3rem}

/* Why work with me */
.why h2{font-size:clamp(2.1rem,3.4vw,3.8rem);line-height:1.08;letter-spacing:-.024em;max-width:900px}
.why-lead{color:#e2dfd8;font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.55;margin:1.6rem 0 1.4rem;max-width:720px}
.why-points{list-style:none;padding:0;margin:0 0 1.6rem;max-width:760px}
.why-points li{color:#bdbab2;font-size:.92rem;line-height:1.65;padding:.75rem 0;border-top:1px solid var(--line)}
.why-points b{color:var(--gold)}
.why-close{color:#e2dfd8;font-size:.98rem;line-height:1.7;max-width:720px}
.why-direct{color:#fff;font-weight:700;margin-top:1rem}
.work-heading{padding-bottom:3.5rem}

/* Who it's for */
.fit{padding:6.5rem 5vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:start;border-top:1px solid var(--line)}
.fit-head h2{font-size:clamp(2.6rem,4.2vw,4.8rem);margin-top:2rem}
.fit-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.fit-cols>div{padding:2rem 1.8rem}
.fit-yes{background:var(--gold);color:var(--charcoal)}
.fit-no{border:1px solid var(--line)}
.fit-cols h3{font-size:1.35rem;letter-spacing:-.015em;margin-bottom:1rem}
.fit-cols ul{list-style:none;padding:0;margin:0}
.fit-cols li{font-size:.9rem;line-height:1.5;padding:.6rem 0 .6rem 1.7rem;position:relative}
.fit-yes li::before{content:"";position:absolute;left:.1rem;top:.95rem;width:.6rem;height:.32rem;border-left:2px solid var(--charcoal);border-bottom:2px solid var(--charcoal);transform:rotate(-45deg)}
.fit-no li{color:#bdbab2}
.fit-no li::before,.fit-no li::after{content:"";position:absolute;left:.05rem;top:1.15rem;width:.75rem;height:2px;background:#8f8b83;transform:rotate(45deg)}
.fit-no li::after{transform:rotate(-45deg)}

/* Booking tweaks */
.book-meta{line-height:1.6}
.booking{border-top:1px solid var(--line)}

/* Closing */
.closing-small{color:#8f8b83;font-size:.72rem;margin-top:1rem;letter-spacing:.04em}
.closing .button{min-width:0}

@media(max-width:1100px){.clusters{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .leave,.fit{grid-template-columns:1fr;gap:2rem;padding:5rem 6vw}
  .fit-cols{grid-template-columns:1fr}
}
@media(max-width:620px){
  .clusters{grid-template-columns:1fr}
  .hero-copy{padding-bottom:3rem}
  .hero-avatar{font-size:.98rem}
  .hero-guarantee{font-size:.74rem}
}
li{text-wrap:pretty}
.book-copy .guarantee-line{margin-top:1.6rem}
@media(max-width:620px){.button{letter-spacing:.07em;gap:1rem}}
.hero-lead{font-size:clamp(1rem,1.25vw,1.18rem);color:#f0ede6;max-width:560px;margin:1.5rem 0 1.8rem}
.why-lead{margin-bottom:1.6rem}
.hero-proof{margin-top:1.1rem;color:#b9b5ac;font-size:.78rem;letter-spacing:.02em}
.book-slots{color:var(--gold);font-size:.8rem;line-height:1.5;margin-top:.4rem}
