:root{--ink:#24231f;--paper:#f5f2eb;--muted:#74716a;--gold:#c6a65f;--gold-light:#e2cc98;--gold-dark:#8a6d34;--red:var(--gold);--red-dark:var(--gold-dark);--cream:#e7e0d4}
.site-header{background:rgba(36,35,31,.92);box-shadow:0 12px 36px rgba(31,28,23,.16)}
.button{border-color:var(--gold);border-radius:10px;background:var(--gold);box-shadow:none;color:#211e17;text-transform:none;letter-spacing:.025em}.button:hover{border-color:var(--gold-light);background:var(--gold-light);color:#211e17}
.hero{min-height:780px;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);background:linear-gradient(90deg,#eee9df 0,#f8f6f1 58%,#d9d1c5 100%)}
.hero h1,.section-heading h2,.expert-story h2,.conversion h2{text-transform:none;letter-spacing:-.045em}
.hero h1{max-width:690px;font-size:clamp(3.4rem,5.7vw,5.9rem);line-height:.96;font-weight:780}
.expert-portrait{width:min(100%,500px);height:560px;justify-self:end;border-radius:18px;filter:drop-shadow(0 18px 26px rgba(0,0,0,.18))}
.lede{max-width:610px;font-weight:500;line-height:1.58}
.eyebrow{letter-spacing:.14em;text-transform:none}
.microcopy{letter-spacing:.025em;text-transform:none}
.expert-portrait{height:610px;align-items:stretch;justify-content:stretch;border:1px solid rgba(255,255,255,.14);background:radial-gradient(circle at 50% 45%,rgba(166,93,80,.25),transparent 28%),linear-gradient(135deg,#3b3934,#24231f)}
.expert-portrait:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.05) 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.05) 50%,transparent 50.2%);background-size:78px 78px;opacity:.38}
.expert-portrait:after{display:none}
.hero-video-copy{position:absolute;z-index:3;right:28px;bottom:26px;left:28px;display:grid;gap:5px;color:#fff}
.hero-video-copy small{color:#d8c7bb;font-size:.6rem;font-weight:800;letter-spacing:.1em}
.hero-video-copy strong{max-width:430px;font-size:1.02rem;line-height:1.3}
.hero-video-copy span{color:#aaa79f;font-size:.58rem;letter-spacing:.08em}
.hero-video-button{position:absolute;z-index:4;top:45%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid #ffffffaa;border-radius:50%;background:rgba(25,24,21,.68);color:#fff;font-size:1.2rem;cursor:pointer}
.media-placeholder{position:absolute;z-index:2;top:18px;right:18px;margin:0!important;padding:6px 8px;border:1px dashed rgba(255,255,255,.38);color:#bbb8b1!important;font-size:.57rem!important;letter-spacing:.08em!important}
.authority b{font-size:1.75rem;font-weight:750}.authority span{text-transform:none;letter-spacing:.04em}
.section{padding-block:94px}.section-heading h2,.expert-story h2,.conversion h2{font-size:clamp(2.5rem,4.5vw,4.7rem);font-weight:760;line-height:1}
.video-section{background:#302f2a}.method{background:#635d53}.method-grid h3{text-transform:none}.results{background:#302f2a}.conversion{background:#71685e}.conversion-copy>p{color:#e9e3da}.direct-call small,.direct-call span{color:#ddd5cc}.route-card h3,.case-grid h3,.offer-card h3{text-transform:none}.mobile-cta{border:1px solid var(--gold-dark);background:#302f2a;color:var(--gold-light)}
@media(max-width:900px){.hero{min-height:0;grid-template-columns:1fr;grid-template-rows:auto auto auto}.expert-portrait{position:relative;right:auto;bottom:auto;transform:none;width:min(100%,620px);height:390px;justify-self:center;margin:34px auto 24px;opacity:1}.authority{margin-top:0}}
@media(max-width:640px){.hero{min-height:0}.hero h1{font-size:clamp(2.65rem,12.5vw,3.7rem);line-height:1;overflow-wrap:normal}.expert-portrait{width:100%;height:300px;margin:28px 0 18px;border-radius:14px}.hero-video-copy{right:18px;bottom:18px;left:18px}.hero-video-copy strong{font-size:.82rem}.hero-video-button{width:58px;height:58px}.authority b{font-size:1.3rem}.section{padding-block:66px}.section-heading h2,.expert-story h2,.conversion h2{font-size:clamp(2.2rem,10.5vw,3.3rem)}}

.diagnostic-flow{gap:0;padding:30px}.flow-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:28px}.flow-progress span{height:5px;overflow:hidden;border-radius:20px;background:#dedbd3;color:transparent}.flow-progress span.is-active{background:var(--gold)}.flow-step h3{margin:0 0 24px;font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.05}.flow-kicker{margin:0 0 8px;color:var(--gold-dark);font-size:.65rem;font-weight:900;letter-spacing:.12em}.flow-step fieldset{margin:0 0 22px;padding:0;border:0}.flow-step legend{margin-bottom:10px;font-size:.76rem;font-weight:850}.quiz-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quiz-options label{display:block}.quiz-options input,.appointment-date-option input,.appointment-time-grid input{position:absolute;opacity:0;pointer-events:none}.quiz-options span{min-height:54px;display:flex;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#faf9f6;font-size:.7rem;font-weight:850;cursor:pointer}.quiz-options input:checked+span{border-color:var(--gold-dark);background:#efe8d8;box-shadow:inset 0 0 0 1px var(--gold)}.quiz-options input:focus-visible+span,.appointment-date-option input:focus-visible+span,.appointment-time-grid input:focus-visible+span{outline:3px solid #c6a65f66;outline-offset:2px}.flow-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:26px}.flow-back{min-height:46px;border:0;background:transparent;color:#625f58;font-size:.7rem;font-weight:850;cursor:pointer}.field-error{min-height:22px;margin:12px 0 0;color:#8e351f;font-size:.72rem;font-weight:800}.request-note{margin:-10px 0 22px;color:#6d6c66;font-size:.78rem}.appointment-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:12px}.appointment-calendar,.appointment-times{min-width:0;padding:18px;border:1px solid var(--line);border-radius:12px;background:#faf9f6}.appointment-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.appointment-picker-head h4,.appointment-times h4{margin:0;font-size:1.2rem}.appointment-nav{display:flex;align-items:center;gap:7px}.appointment-nav button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#2d2a24;cursor:pointer}.appointment-nav button:disabled{opacity:.3}.appointment-nav span{font-size:.62rem;font-weight:800;white-space:nowrap}.appointment-weekdays,.appointment-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.appointment-weekdays{margin:18px 0 5px;color:#777;font-size:.55rem;font-weight:800;text-align:center}.appointment-date-option span{min-height:50px;display:grid;place-items:center;border:1px solid transparent;border-radius:7px;background:#fff;cursor:pointer}.appointment-date-option small{font-size:.48rem;text-transform:uppercase}.appointment-date-option b{font-size:.92rem}.appointment-date-option input:checked+span{border-color:var(--gold-dark);background:#efe8d8;box-shadow:inset 0 0 0 1px var(--gold)}.appointment-date-option input:disabled+span{opacity:.32;text-decoration:line-through;cursor:not-allowed}.appointment-times>p{min-height:38px;margin:12px 0;color:#6d6c66;font-size:.67rem}.appointment-time-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.appointment-time-grid label span{min-height:43px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:.75rem;font-weight:850;cursor:pointer}.appointment-time-grid input:checked+span{border-color:var(--gold-dark);background:#efe8d8;box-shadow:inset 0 0 0 1px var(--gold)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-grid label>span{color:#777;font-weight:500}.flow-review dl{display:grid;gap:1px;margin:0 0 20px;background:#dedbd3}.flow-review dl div{display:grid;grid-template-columns:125px 1fr;gap:15px;padding:12px;background:#faf9f6}.flow-review dt{color:#777;font-size:.6rem;font-weight:900;letter-spacing:.08em}.flow-review dd{margin:0;font-size:.78rem}.flow-success{text-align:center;padding:40px 0}.flow-success>span{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 20px;border:1px solid var(--gold);border-radius:50%;color:var(--gold-dark);font-size:1.6rem}.final-return{text-align:center;background:#f7f3ea}.final-return h2{max-width:760px;margin:0 auto;font-size:clamp(2.4rem,5vw,4.8rem);line-height:1}.final-return p:not(.eyebrow){max-width:680px;margin:22px auto 28px;color:#6d6c66}
@media(max-width:900px){.conversion{grid-template-columns:1fr}.conversion-copy{position:static}.appointment-layout{grid-template-columns:1fr}.diagnostic-flow{padding:26px}}
@media(max-width:640px){.conversion{padding-bottom:88px}.diagnostic-flow{padding:22px 14px}.quiz-options,.contact-grid{grid-template-columns:1fr}.flow-step h3{font-size:1.7rem}.flow-actions{align-items:stretch;flex-direction:column-reverse}.flow-actions .button,.flow-back{width:100%}.appointment-calendar,.appointment-times{padding:15px 10px}.appointment-date-grid,.appointment-weekdays{gap:2px}.appointment-date-option span{min-height:46px}.appointment-nav span{font-size:.56rem}.flow-review dl div{grid-template-columns:1fr;gap:3px}}
.diagnostic-flow .quiz-options input,.diagnostic-flow .appointment-date-option input,.diagnostic-flow .appointment-time-grid input{width:1px!important;height:1px!important;min-height:0!important;margin:0!important}
@media(max-width:640px){.routes{padding-block:44px}.routes .section-heading{margin-bottom:20px}.route-card{min-height:0!important;padding:18px 16px 46px!important}.route-card h3{margin:14px 0 7px!important;font-size:1.55rem!important;line-height:1!important}.route-card p{margin:0;font-size:.84rem;line-height:1.4}.route-card span{right:16px!important;bottom:14px!important}.route-card small{font-size:.66rem}}
.flow-progress{grid-template-columns:repeat(5,1fr)}
@media(max-width:640px){.diagnostic-flow .quiz-options{grid-template-columns:1fr 1fr}.diagnostic-flow .quiz-options span{min-height:64px;padding:10px;font-size:.64rem;line-height:1.25}.diagnostic-flow .flow-progress{gap:4px;margin-bottom:22px}.diagnostic-flow .flow-step h3{margin-bottom:18px}.diagnostic-flow .flow-step legend{margin-bottom:8px}.diagnostic-flow .flow-actions{margin-top:18px}}
@media(min-width:901px){.hero{min-height:650px;grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr);padding-top:118px;padding-bottom:24px}.hero h1{max-width:640px;font-size:clamp(3.25rem,4.7vw,4.6rem);line-height:.98}.hero .lede{margin:22px 0;font-size:1.05rem;line-height:1.5}.expert-portrait{width:min(100%,460px);height:440px!important}.hero-video-button{width:66px;height:66px}.hero-video-copy{right:22px;bottom:20px;left:22px}.hero-video-copy strong{font-size:.9rem}.authority article{padding-top:16px}.authority b{font-size:1.45rem}.authority span{font-size:.56rem}}
@media(min-width:901px){.section{padding-block:68px}.section-heading{margin-bottom:34px}.section-heading h2,.expert-story h2,.conversion h2{font-size:clamp(2.35rem,3.6vw,3.8rem);line-height:1.02}.section-heading.split{gap:42px}.route-card{min-height:215px;padding:26px 28px}.route-card h3{margin:30px 0 8px;font-size:clamp(1.7rem,2.35vw,2.35rem)}.route-card span{right:26px;bottom:22px}.method-grid article{grid-template-columns:84px 1fr;gap:24px;padding:24px 0}.method-grid b{font-size:2.25rem}.method-grid h3{font-size:clamp(1.9rem,2.8vw,2.9rem)}.expert-story{min-height:520px}.story-copy{padding-top:58px;padding-bottom:58px;padding-left:54px}.story-copy h2{font-size:clamp(2.25rem,3.5vw,3.7rem)}.story-copy li{padding:9px 0}.story-image:after{width:310px;height:420px}.case-grid article{padding:24px}.case-grid h3{min-height:48px;margin:26px 0 16px;font-size:1.2rem}.case-grid dl>div{padding:13px 0}.case-grid .case-result dd{font-size:1.2rem}.quote-band{padding-top:68px;padding-bottom:68px}.quote-band blockquote{font-size:clamp(2rem,3.35vw,3.35rem)}.quote-band>div{margin-top:30px}.offer-card>div{padding:38px}.offer-card aside{padding:38px}.offer-card h3{font-size:clamp(1.8rem,2.7vw,2.7rem)}.offer-card ul{margin-top:24px}.offer-card aside strong{font-size:2.25rem}.faq summary{min-height:62px;padding-top:19px;padding-bottom:17px}.conversion{gap:48px;padding-top:72px;padding-bottom:72px}.conversion h2{font-size:clamp(2.45rem,3.7vw,3.9rem)}.direct-call{margin-top:36px}.diagnostic-form{padding:28px}.final-return h2{font-size:clamp(2.3rem,3.7vw,3.8rem)}}
@media(min-width:901px){.hero{min-height:580px;padding-top:108px}.hero h1{font-size:clamp(3rem,4.15vw,4rem)}.expert-portrait{width:min(100%,430px);height:380px!important}.section{padding-block:60px}.route-card{min-height:198px}.expert-story{min-height:480px}.quote-band{padding-top:58px;padding-bottom:58px}.conversion{padding-top:62px;padding-bottom:62px}}
@media(min-width:901px){.hero .expert-portrait{margin-bottom:22px}}
