/* Compact conversion first screen + independent quote card */
.hero{padding-top:22px}.hero-heading{margin-bottom:18px}.hero-heading .eyebrow{display:none}.hero h1{font-size:46px;margin-bottom:12px}.hero h1 span{display:inline;font-size:29px;margin-left:12px}.hero-panel{min-height:300px}.hero-panel .form-card{padding:24px 28px}.form-card h2{font-size:23px;margin-bottom:17px}.hero .form-card p{margin-bottom:8px}.hero .primary{min-height:54px}.hero-art{min-height:300px}.sticky-plate>.wrap{max-width:980px}.sticky-plate input{max-width:440px}.estimate-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px}.estimate-layout .form-card{margin:0}.estimate-card{background:#e9eff7;border-radius:24px;padding:28px;display:flex;flex-direction:column;align-items:flex-start}.estimate-card h3{font-size:25px}.estimate-art{object-fit:contain;width:170px;height:135px;align-self:center}.estimate-card p{font-size:13px;color:#617084;margin:18px 0 0}.estimate-price{display:block;font-size:42px;line-height:1.3;margin:8px 0}.estimate-card #estimate-result span{color:#617084}.estimate-card #estimate-breakdown{font-size:13px;margin:15px 0}.estimate-card .primary{width:100%;margin-top:10px}.v2-calc-head>.v2-art{display:none}.steps-list{list-style:none;padding:0}.steps-list li{display:flex;align-items:center;gap:16px;padding:14px 0}.steps-list li:before{background:linear-gradient(145deg,#ffac72,#ff681c);color:#fff;box-shadow:inset 2px 2px 4px #ffffff70,0 5px 12px #ff681c20;border-radius:14px;width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;font-weight:bold;font-size:22px}.steps-list li:nth-child(1):before{content:'1'}.steps-list li:nth-child(2):before{content:'2'}.steps-list li:nth-child(3):before{content:'3'}
@media(max-width:700px){.hero{padding-top:18px}.hero h1{font-size:34px}.hero h1 span{display:none}.hero-panel .form-card{padding:22px 20px}.estimate-layout{grid-template-columns:1fr}.estimate-card{padding:24px}.estimate-art{width:130px;height:110px}.sticky-plate input{min-width:0}.hero .form-card h2{font-size:23px}}
@media(min-width:701px) and (max-height:750px){.header{min-height:76px}.hero{padding-top:16px}.hero h1{font-size:40px}.hero-heading{margin-bottom:14px}.hero .lead{font-size:15px}.hero-panel .form-card{padding:20px 28px}.vehicle-switch{margin-bottom:12px}}
.sticky-plate .sticky-manual{background:none;color:#082e63;border:0;padding:10px;white-space:nowrap;font-size:13px}.prices-expand{display:block;margin:18px auto}.steps-list li::marker{content:''}
@media(max-width:700px){.sticky-plate>.wrap{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px}.sticky-plate .sticky-manual{font-size:11px;padding:5px}.sticky-plate button{padding:0 10px}.sticky-plate input{width:100%}}
.ext-insurer,.ext-insurer strong{min-width:0}.ext-insurer strong{overflow-wrap:anywhere}.ext-grid.insurers{grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr))}
@media(max-width:380px){.ext-grid.insurers{grid-template-columns:1fr}.hero{padding-top:12px}.hero h1{font-size:30px}.hero-heading{margin-bottom:12px}.hero-panel .form-card{padding:18px}.hero .form-card h2{margin-bottom:12px}.hero .lead{font-size:13px}}

/* V5: remove empty reserved height, keep form controls full-size. */
.estimate-layout{align-items:start}.estimate-card{padding:24px;position:relative}.estimate-art{width:110px;height:85px;align-self:flex-end;margin:-8px 0 -8px}.estimate-card h3{margin:0}.estimate-card #estimate-result{margin-top:8px;padding-top:0}.estimate-card #estimate-breakdown{margin:10px 0}.estimate-card p{margin-top:12px}#estimate-form{padding:28px}#estimate-form>.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.estimate-layout .form-card{min-height:0;height:auto}.hero-heading{margin-bottom:14px}.hero-panel .form-card{padding:22px 28px}
@media(max-width:700px){.hero{padding-top:14px}.hero h1{margin-bottom:8px}.hero-heading{margin-bottom:12px}.hero-panel{min-height:0}.hero-panel .form-card{padding:18px 20px}.hero .form-card h2{margin:0 0 14px}.hero .manual{padding:10px 0}.hero .primary{margin-top:12px}.hero .note{margin-top:2px}.vehicle-switch{margin-bottom:10px}#estimate-form{padding:24px 20px}#estimate-form>.fields{grid-template-columns:1fr}.estimate-card{padding:24px}.estimate-art{width:100px;height:80px}}
@media(max-width:380px){.hero{padding-top:10px}.hero-heading{margin-bottom:10px}.hero-panel .form-card{padding:16px}.hero .form-card h2{margin-bottom:12px}}
@media(max-width:380px) and (max-height:700px){.hero .note{display:none}.hero-heading{margin-bottom:8px}.hero .lead{line-height:1.4}.vehicle-switch{margin-bottom:8px}.hero-panel .form-card{padding:14px 16px}}
/* Narrow phones: keep the complete plate readable in the persistent form. */
@media(max-width:380px){
 .sticky-plate>.wrap{grid-template-columns:minmax(0,1fr) auto;gap:4px 8px}
 .sticky-plate input{grid-column:1;grid-row:1;max-width:none}
 .sticky-plate button[type=submit]{grid-column:2;grid-row:1}
 .sticky-plate .sticky-manual{grid-column:1/-1;grid-row:2;min-height:44px;padding:4px 10px;justify-self:center}
 section,form[id],.af-chapter{scroll-margin-top:128px}
}

/* Calculator refresh: every selector stays inside the approved editing boundary. */
#calculator .v2-calc-head{margin-bottom:28px;display:block}
#calculator h2{margin-bottom:14px}
#calculator .v2-calc-head p{max-width:780px;font-size:16px;line-height:1.6}
#calculator .estimate-layout{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px;align-items:stretch}
#calculator #estimate-form{padding:28px;display:flex;flex-direction:column;justify-content:space-between}
#calculator #estimate-form>.fields{gap:22px 18px}
#calculator .fields>div{min-width:0}
#calculator .fields label{display:block;margin-bottom:8px;font-size:14px}
#calculator .fields input,#calculator .fields select{width:100%;min-height:56px;background:#fbfcfe;border:1px solid #bfcbd9;border-radius:12px;color:var(--navy);font-size:16px;padding:12px 14px}
#calculator .fields input:disabled{opacity:.5;background:#eef1f5}
#calculator #estimate-form>p{margin:20px 0 0;font-size:14px;line-height:1.55;color:var(--muted)}
#calculator #estimate-form>.primary{max-width:none;width:100%;margin-top:22px;min-height:54px}
#calculator .estimate-card{background:#e4edf5;border-radius:24px;padding:26px 28px;align-items:stretch;overflow:hidden}
#calculator .estimate-badge{align-self:flex-start;border:1px solid #bacddd;border-radius:100px;padding:5px 12px;font-size:12px;font-weight:700;color:#426180}
#calculator .estimate-art{display:block;object-fit:contain;width:min(100%,300px);height:184px;align-self:center;margin:0 auto 8px}
#calculator .estimate-copy{margin-top:auto}
#calculator .estimate-card h3{font-size:24px;line-height:1.25;margin:0 0 12px;color:var(--navy)}
#calculator #estimate-result{background:transparent;padding:0;margin:0;border-radius:0;font-size:16px;line-height:1.6;color:var(--navy)}
#calculator #estimate-result:focus{outline:none}
#calculator .estimate-price{font-size:40px;line-height:1.15;margin:0 0 6px}
#calculator #estimate-result span{color:#526982;font-size:14px}
#calculator #estimate-breakdown{margin:12px 0 0;font-size:14px;color:#526982}
#calculator #estimate-breakdown:empty{display:none}
#calculator .estimate-card .primary{min-height:52px;margin-top:18px}
#calculator .estimate-disclaimer{font-size:13px;line-height:1.5;color:#526982;margin:18px 0 0}
#calculator .estimate-card[data-state=error] #estimate-result{color:#a03922}
.af-dark #calculator{background:transparent}
.af-dark #calculator #estimate-form{background:#1b304a}
.af-dark #calculator .fields input,.af-dark #calculator .fields select{background:#13263e;border-color:#4b617b;color:#edf2f8}
.af-dark #calculator .estimate-card{background:#243c57}
.af-dark #calculator .estimate-badge{border-color:#5a748e;color:#d5e4f3}
.af-dark #calculator .estimate-card h3,.af-dark #calculator #estimate-result{color:#edf2f8}
.af-dark #calculator .v2-calc-head p,.af-dark #calculator #estimate-form>p,.af-dark #calculator #estimate-result span,.af-dark #calculator #estimate-breakdown,.af-dark #calculator .estimate-disclaimer{color:#bdcddd}
.af-dark #calculator .primary{color:#082e63}
.af-dark #calculator .estimate-card[data-state=error] #estimate-result{color:#ffc0a8}
@media(max-width:900px){
 #calculator .estimate-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px}
 #calculator #estimate-form,#calculator .estimate-card{padding:24px}
 #calculator #estimate-form>.fields{grid-template-columns:1fr;gap:16px}
 #calculator .estimate-card{align-self:start}
}
@media(max-width:700px){
 #calculator .v2-calc-head{margin-bottom:20px}
 #calculator .v2-calc-head p{font-size:15px}
 #calculator .estimate-layout{grid-template-columns:1fr;gap:16px}
 #calculator #estimate-form,#calculator .estimate-card{padding:22px 20px;border-radius:22px}
 #calculator .estimate-card{position:relative;padding-top:22px}
 #calculator .estimate-art{width:220px;height:146px;margin:8px auto 12px}
 #calculator .estimate-card h3{font-size:22px}
 #calculator .estimate-disclaimer{margin-top:16px}
 #calculator .estimate-price{font-size:36px}
 #calculator #estimate-form>.primary{font-size:15px;padding:14px 10px}
}
#calculator{scroll-margin-top:128px}
#calculator .estimate-art{width:min(100%,340px);height:220px}
#calculator .primary{justify-content:center;text-align:center}
@media(max-width:700px){#calculator .estimate-art{width:220px;height:146px}}
/* Keep the complete range together at narrow card widths. */
#calculator .estimate-copy{container-type:inline-size;min-width:0}
#calculator .estimate-price{display:block;font-size:clamp(22px,8.8cqw,40px);white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.035em}
#calculator .fields :disabled{opacity:.5;cursor:not-allowed}
#calculator .fields :focus-visible,#calculator .primary:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.af-dark #calculator .fields :focus-visible,.af-dark #calculator .primary:focus-visible{outline-color:#c2ddff}
#city-prices .city-price-company{display:flex;align-items:center;gap:10px}#city-prices .city-price-company img{display:block;flex:0 0 32px;object-fit:contain}
