/* Boise score repair: extend the existing palette, imagery and page system. */
.hero { min-height: 630px; }
.hero .wrap { padding-block: 76px 96px; }
.hero h1 { max-width: 860px; font-size: clamp(3rem, 5.5vw, 5.4rem); line-height: 1.04; letter-spacing: -.04em; text-wrap: balance; }
.hero .intro { max-width: 480px; font-size: 18px; color: #f0f1ef; line-height: 1.65; }
.hero-call-note { max-width: 500px; margin-top: 22px; color: #e0e3df; font-size: 14px; line-height: 1.6; }
.hero-call-note a { font-weight: 800; color: #fff; text-underline-offset: 4px; }
.hero-foot { font-size: 13px; }
.quote-process { border-bottom: 1px solid var(--line); padding: 56px 0; }
.quote-process .wrap { display: grid; grid-template-columns: .8fr 1.2fr; gap: 56px; }
.quote-process h2 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.12; }
.quote-process p { margin-top: 18px; max-width: 350px; color: var(--muted, #c9cdc8); }
.quote-process ol { list-style: none; padding: 0; margin: 0; counter-reset: call-step; display: grid; gap: 22px; }
.quote-process li { position: relative; padding-left: 48px; counter-increment: call-step; }
.quote-process li::before { content: counter(call-step); position: absolute; left: 0; top: 2px; width: 30px; height: 30px; border: 1px solid var(--orange); border-radius: 50%; color: var(--orange); text-align: center; font-weight: 800; line-height: 28px; }
.quote-process li strong { display: block; font-size: 18px; }
.quote-process li span { display: block; margin-top: 3px; color: var(--muted, #c9cdc8); }
.call-group { display: grid; justify-items: center; gap: 12px; flex-shrink: 0; }
.call-number { color: inherit; font-size: 18px; font-weight: 800; text-underline-offset: 4px; }
.fleet-toggle { min-width: 76px; min-height: 48px; }
.fleet-header :focus-visible { outline: 3px solid var(--orange); outline-offset: 5px; }
.fleet-dropdown summary { scroll-margin-top: 18px; }
.map-placeholder { color: #26312a; background: #f2f4f1; }
.map-placeholder p { color: #37463e; }
.map-placeholder a { color: #263b32; font-weight: 600; }
@media (min-width: 1151px) { .fleet-navigation { gap: clamp(12px, 1.3vw, 22px); } }
@media (max-width: 850px) {
 .quote-process .wrap { grid-template-columns: 1fr; gap: 30px; }
 .quote-process { padding-block: 38px; }
 .quote-process p { max-width: 560px; }
}
@media (max-width: 560px) {
 .hero { min-height: 575px; align-items: flex-start; }
 .hero .wrap { width: calc(100% - 36px); padding-block: 40px 82px; }
 .hero h1 { font-size: clamp(2.4rem, 10.8vw, 3.2rem); line-height: 1.06; letter-spacing: -.035em; }
 .hero .eyebrow { margin-bottom: 19px; font-size: 12px; }
 .hero .intro { font-size: 16px; margin-top: 22px; }
 .hero-actions { margin-top: 24px; gap: 16px; }
 .hero-call-note { margin-top: 17px; font-size: 14px; }
 .hero-foot { bottom: 20px; font-size: 12px; }
 .quote-process h2 { font-size: 32px; }
 .quote-process li { padding-left: 44px; }
 .cta-inner .call-group { width: 100%; }
 .call-group .button { width: 100%; }
 .mobile-cta .button { gap: 12px; }
 .page-head h1, .detail-hero h1, .area-hero h1 { overflow-wrap: normal; text-wrap: balance; }
}
@media print { .quote-process { padding-block: 16px; } .quote-process .wrap { display: block; } .hero-call-note { color: black; } }
