.landing-hero{position:relative;padding:80px 0 96px;background:linear-gradient(90deg,rgba(9,9,11,.94),rgba(9,9,11,.85)),url('/assets/img/gold-horizon-warm-v2.jpg') center/cover}
.landing-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:center;gap:64px}
.landing-intro{min-width:0}
.landing-conversion{min-width:0}
.landing-conversion>.cta-proof{margin-top:18px}
@media(max-width:760px){.landing-conversion{width:100%;max-width:540px;justify-self:center}}
.landing-intro h1{font-size:clamp(2.35rem,4.2vw,3.45rem);font-weight:600;letter-spacing:-.04em;line-height:1.17;margin:0;max-width:18ch;text-wrap:balance}
.landing-pen-underline{position:relative;display:inline-block;white-space:nowrap}
.landing-pen-underline svg{position:absolute;left:-.02em;bottom:-.17em;width:calc(100% + .04em);height:.24em;color:var(--gold);pointer-events:none}
.landing-description{font-size:1.06rem;line-height:1.7;color:#b6b6bd;max-width:46ch;margin:26px 0 0}
.lead-panel{min-width:0;padding:26px;background:#18181b;border:1px solid #3b3526;border-radius:22px;box-shadow:0 24px 80px #0005;scroll-margin-top:110px}
.lead-panel form{display:grid}
.lead-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:32px;margin-bottom:16px}
.lead-access-label{font-size:.76rem;font-weight:600;line-height:1.4;color:#f0ce6e}
.lead-stage{display:grid;gap:28px}
.lead-panel fieldset{display:grid;grid-template-rows:1fr auto;gap:20px;border:0;padding:0;margin:0;min-width:0}
.lead-enhanced .lead-stage{gap:0}
.lead-enhanced .lead-stage fieldset{grid-area:1/1;align-self:stretch}
/* Equal-sized panels keep every field against the same CTA. Consent lives below it. */
.lead-enhanced .lead-stage fieldset[hidden]{display:grid!important;visibility:hidden;pointer-events:none}
.lead-step-title{font-size:1.4rem;letter-spacing:-.035em;font-weight:600;line-height:1.3;margin:0 0 10px;text-wrap:pretty}
.lead-step-copy{font-size:.88rem;line-height:1.55;color:#b6b6bd;margin:0;text-wrap:pretty}
.lead-step-copy strong{color:#e4e4e7;font-weight:600}
.lead-field{display:grid;gap:6px;min-width:0}
.lead-field label{font-size:.8rem;font-weight:600}
.lead-field input,.lead-field select{font:inherit;font-size:1rem;width:100%;min-width:0;min-height:48px;background:#101013;color:#fafafa;border:1px solid #505057;border-radius:10px;padding:10px 12px;color-scheme:dark}
.lead-field input::placeholder{color:#93939d}
.lead-field input:focus-visible,.lead-field select:focus-visible{outline:2px solid #f0ce6e;outline-offset:3px}
.lead-field [aria-invalid=true]{border-color:#ffb2a7}
.lead-phone{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px}
.lead-support{display:grid;align-items:center;margin-top:12px;min-height:30px}
.lead-support>*{grid-area:1/1}
.lead-enhanced .lead-support>[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
.lead-consent{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.75rem;line-height:1.5;color:#b6b6bd}
.lead-consent input{width:16px;height:16px;flex:none;margin:0;accent-color:#d4a937}
.lead-consent label{padding-block:4px}
.lead-consent input[aria-invalid=true]{outline:2px solid #ffb2a7;outline-offset:2px}
.lead-message{margin:6px 0 0;min-height:1.4em;color:#ffb2a7;font-size:.78rem;line-height:1.4;text-align:center}
.lead-panel form[aria-busy=true] .lead-message{color:#f0ce6e}
.lead-submit{width:100%;min-height:48px;margin-top:12px}
.lead-submit:disabled{cursor:wait;opacity:.75}
.lead-back{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:0;background:none;color:#b6b6bd;font:inherit;font-size:.76rem;line-height:1.5;cursor:pointer;padding:6px 0}
.lead-back:hover{color:#fafafa}
.lead-reassurance{display:flex;justify-content:center;margin:0;font-size:.75rem;line-height:1.5;color:#b6b6bd;text-align:center}
.landing-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.landing-split .section-heading{max-width:19ch}
.landing-split p{margin-top:0}
.landing-discovery{background:#101013}
.landing-discovery .section-heading{max-width:none;margin:0 auto 48px;text-align:center;text-wrap:balance}
.landing-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;text-align:center}
.landing-benefits li{min-width:0;padding:4px 24px;border-left:1px solid #49402b}
.landing-benefits li:first-child{border-left:0}
.landing-benefits h3{margin:0 0 14px;color:#f0ce6e;font-size:1.2rem;font-weight:600;letter-spacing:-.025em;line-height:1.4}
.landing-benefits p{max-width:34ch;margin:0 auto;color:#b6b6bd;font-size:.96rem;line-height:1.65;text-wrap:pretty}
@media(max-width:760px){.landing-discovery .section-heading{margin-bottom:36px}.landing-benefits{grid-template-columns:1fr;gap:28px}.landing-benefits li{padding:0 0 28px;border-left:0;border-bottom:1px solid #49402b}.landing-benefits li:last-child{padding-bottom:0;border-bottom:0}.landing-benefits h3{margin-bottom:10px}}
.landing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;list-style:none;padding:0;margin:44px 0 0}
.landing-steps li{border-top:1px solid #5e4c22;padding-top:24px}
.step-number{display:block;color:#f0ce6e;font-size:1.55rem;font-weight:600;line-height:1}
.landing-steps p{font-size:1rem;color:#b6b6bd;margin:20px 0 0;line-height:1.7}
.landing-questions details{border-bottom:1px solid #35353b}
.landing-questions details:first-child{border-top:1px solid #35353b}
.landing-questions summary{position:relative;cursor:pointer;padding:24px 36px 24px 0;font-size:1.06rem;font-weight:600;list-style:none}
.landing-questions summary::-webkit-details-marker{display:none}
.landing-questions summary::after{content:'+';position:absolute;right:4px;top:22px;font-size:1.35rem;font-weight:400;color:#f0ce6e}
.landing-questions details[open] summary::after{content:'−'}
.landing-questions p{font-size:.96rem;color:#b6b6bd;line-height:1.75;margin:0;padding-bottom:24px}
.landing-close{text-align:center;border-top:1px solid #303035;background:#101013}
.landing-close .section-heading{max-width:24ch;margin-inline:auto}
.landing-close .button{margin-top:20px}
@media(max-width:960px){.landing-hero-grid{gap:32px}.landing-split{gap:40px}.lead-panel{padding:26px}.landing-intro h1{font-size:2.7rem}}
@media(max-width:760px){.landing-hero{padding:40px 0 60px}.landing-hero-grid,.landing-split{grid-template-columns:minmax(0,1fr);gap:36px}.landing-intro h1{font-size:clamp(2.1rem,8vw,3rem);max-width:22ch}.landing-description{font-size:1rem}.landing-steps{grid-template-columns:1fr;gap:30px}.landing-steps li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:20px}.landing-steps p{margin:0}.landing-split .section-heading{max-width:24ch}.lead-panel{max-width:540px;width:100%;justify-self:center}.lead-panel legend{font-size:1.4rem}}
@media(max-width:380px){.lead-panel{padding:22px 18px}.lead-phone{grid-template-columns:100px minmax(0,1fr);gap:8px}.lead-field input,.lead-field select{padding-inline:10px}.lead-submit{padding-inline:12px;gap:8px}}

/* Keep the back control; omit its empty row on the first step. */
.lead-topline:has(.lead-back[hidden]){display:none}
/* Halve the lower inset and the unused status space; errors retain their full space. */
.lead-panel{padding-bottom:13px}
.lead-message:empty{min-height:.7em;margin-top:3px}
@media(max-width:380px){.lead-panel{padding-bottom:11px}}
