/* A concise hand-off from the preview to the contact form. */
.lead-modal { width:min(960px,calc(100vw - 40px)); max-width:960px; border:1px solid var(--line); border-radius:24px; }
.lead-modal>.modal-body { padding:0; }
.lead-modal>.modal-top { padding:18px 28px; align-items:center; position:sticky; top:0; z-index:2; background:#fff; border-radius:24px 24px 0 0; }
.lead-modal>.modal-top h2 { font-size:.9375rem; padding:0; font-weight:600; }
.lead-modal>.modal-top .icon-button { border-radius:12px; min-width:44px; min-height:44px; }
.lead-layout { display:grid; grid-template-columns:.92fr 1.08fr; }
.lead-story { padding:38px; background:#F0F8F4; border-radius:0 0 0 24px; }
.lead-brand { width:174px; height:auto; margin-bottom:32px; }
.lead-kicker { display:block; color:var(--green); font-size:.75rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; margin-bottom:18px; }
.lead-story h3 { font-size:2rem; line-height:1.22; font-weight:800; letter-spacing:-.045em; }
.lead-story>p { font-size:.875rem; line-height:1.8; margin-top:20px; max-width:345px; color:var(--muted); }
.lead-vehicle { margin-top:28px; background:#fff; border:1px solid #DFECE6; border-radius:16px; padding:20px 16px; display:flex; align-items:center; gap:12px; }
.lead-vehicle>span:first-child { display:flex; align-items:center; justify-content:center; min-width:44px; height:44px; border-radius:12px; background:var(--soft-sky); }
.lead-vehicle>div { min-width:0; flex:1; }
.lead-vehicle small { display:block; font-size:.75rem; line-height:1.5; letter-spacing:.02em; color:var(--muted); }
.lead-vehicle strong { font-family:var(--display); font-size:1.15rem; letter-spacing:.07em; display:block; line-height:1.4; margin:5px 0; }
.lead-vehicle p { font-size:.75rem!important; line-height:1.6; }
.lead-price { font-size:.75rem; font-weight:600; color:var(--green); background:var(--soft-mint); padding:6px 9px; border-radius:8px; }
.lead-benefits { list-style:none; padding:0; margin:28px 0 0; display:grid; gap:16px; }
.lead-benefits li { display:flex; align-items:center; gap:10px; font-size:.8125rem; line-height:1.6; }
.lead-benefits svg { color:var(--green); flex-shrink:0; }
.lead-form-side { padding:38px; min-width:0; }
.lead-form-side>.badge { font-size:.75rem; background:var(--soft-sky); color:var(--ink); margin-bottom:20px; border-radius:10px; padding:7px 11px; }
.lead-form-side>h3 { font-size:1.8rem; font-weight:800; line-height:1.25; letter-spacing:-.045em; }
.lead-form-side>p { font-size:.875rem; margin-top:15px; line-height:1.7; }
.lead-form { display:grid; gap:20px; margin-top:28px; }
.lead-form .field { gap:8px; }
.lead-form label { font-size:.875rem; }
.lead-form .input { height:54px; font-size:1rem; border-radius:12px; padding-inline:15px; }
.lead-form .btn { font-size:.9375rem; margin:3px 0 0; min-height:56px; padding-inline:16px; border-radius:12px; }
.lead-phone-input { display:flex; align-items:center; position:relative; }
.lead-phone-input .input { padding-left:87px; }
.lead-country { position:absolute; left:15px; font-size:.75rem; font-weight:600; border-right:1px solid var(--line); padding-right:11px; color:var(--muted); pointer-events:none; }
.lead-field-error { font-size:.8125rem; line-height:1.6; color:var(--check-ai-status-critical-foreground)!important; }
.lead-field-error:empty { display:none; }
.lead-purpose { font-size:.75rem; line-height:1.7; text-align:center; margin-top:-4px; color:var(--muted); }
.lead-demo-note { display:flex; align-items:flex-start; gap:10px; padding:16px; background:var(--soft-sky); border-radius:12px; border:0; }
.lead-demo-note>svg { margin-top:3px; color:var(--check-ai-status-information-foreground); flex-shrink:0; }
.lead-demo-note>p { font-size:.8125rem; line-height:1.7; margin:0; color:var(--check-ai-status-information-foreground); }
.lead-demo-note strong { font-weight:600; display:block; margin-bottom:2px; }
.lead-invitation { display:flex; align-items:center; justify-content:space-between; gap:28px; margin-top:40px; border:1px solid #D8EAE1; border-radius:24px; background:#ECF7F1; padding:34px 36px; }
.lead-invitation>div { flex:1; }
.lead-invitation h2 { font-size:1.3rem; margin:0 0 10px; line-height:1.3; }
.lead-invitation p { font-size:.9375rem; color:var(--muted); margin:0; line-height:1.7; }
.lead-invitation .btn { flex-shrink:0; font-size:.9375rem; border-radius:12px; min-height:52px; }
/* These styles retain the existing preview lock and submission behavior. */
.is-contact-locked .report-reading-layout { filter:blur(5px); user-select:none; pointer-events:none; opacity:.45; }
.is-contact-locked .lead-invitation { position:relative; z-index:1; box-shadow:0 -28px 65px 35px var(--snow); }
.lead-modal[open] { animation:lead-arrive .22s ease-out; }
@keyframes lead-arrive { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
.lead-form .lead-consent { display:flex; align-items:flex-start; gap:11px; min-height:44px; font-size:.8125rem; line-height:1.7; color:var(--ink); cursor:pointer; }
.lead-consent input { width:20px; height:20px; flex-shrink:0; margin:3px 0; accent-color:var(--check-ai-button-background); }
.lead-submit-status { font-size:.8125rem; line-height:1.7; color:var(--check-ai-status-information-foreground)!important; }
.lead-submit-status:empty { display:none; }
.lead-submit-status.is-error { color:var(--check-ai-status-critical-foreground)!important; }
.lead-form[aria-busy=true] .btn { opacity:.8; }
@media(max-width:900px) and (min-width:761px) {
 .lead-story,.lead-form-side { padding:30px; }
 .lead-layout { grid-template-columns:.9fr 1.1fr; }
 .lead-vehicle { flex-wrap:wrap; }
}
@media(max-width:760px) {
 .lead-modal { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); border-radius:20px; }
 .lead-modal>.modal-top { padding:14px 20px; border-radius:20px 20px 0 0; }
 .lead-modal>.modal-top h2 { font-size:.875rem; }
 .lead-layout { grid-template-columns:1fr; }
 /* Keep the previously approved compact mobile introduction. */
 .lead-story { padding:24px; border-radius:0; }
 .lead-story>p,.lead-story .lead-vehicle,.lead-story .lead-kicker { display:none; }
 .lead-story h3 { font-size:1.4rem; line-height:1.3; max-width:380px; }
 .lead-brand { width:160px; margin-bottom:18px; }
 .lead-benefits { display:none; }
 .lead-form-side { padding:28px 24px; }
 .lead-form-side>.badge { display:none; }
 .lead-form-side>h3 { font-size:1.4rem; }
 .lead-form-side>h3 br { display:none; }
 .lead-form-side>h3 br::after { content:' '; }
 .lead-form-side>p { font-size:.875rem; margin-top:12px; }
 .lead-form { margin-top:24px; gap:20px; }
 .lead-form .input { font-size:16px; height:54px; }
 .lead-form .btn { font-size:.875rem; min-height:56px; }
 .lead-form .lead-consent { font-size:.8125rem; }
 .lead-purpose { font-size:.75rem; }
 .lead-demo-note>p { font-size:.8125rem; }
 .lead-invitation { display:block; padding:28px; margin-top:32px; border-radius:20px; }
 .lead-invitation h2 { font-size:1.2rem; }
 .lead-invitation p { font-size:.875rem; }
 .lead-invitation .btn { width:100%; margin-top:24px; font-size:.875rem; }
}
@media(prefers-reduced-motion:reduce) { .lead-modal[open] { animation:none; } }

/* Optional email offers are a separate choice from the requested delivery. */
.lead-marketing { padding:13px 14px; border-radius:12px; background:var(--soft-sky); }
.lead-form .lead-marketing .lead-consent { margin:0; font-size:.8125rem; }
.lead-marketing>p { margin:3px 0 0 31px; font-size:.75rem; line-height:1.6; color:var(--muted); }
@media(max-width:760px){
 .lead-story{padding:18px 24px}
 .lead-story h3{display:none}
 .lead-story .lead-brand{margin:0}
}
