/* Home hero only; shared service heroes and form behavior stay in the shell. */
.hh{height:clamp(720px,85vh,800px);min-height:720px;padding:48px 0;text-align:center;display:flex;align-items:center}
.hh::before{background:rgba(0,0,0,.55)}
.hh .hh__media>picture,.hh .hh__media>img{display:none}
.hh .hh__media video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none;filter:none}
.hh .hh__in{width:calc(100% - 48px);max-width:1160px;padding:0;display:flex;flex-direction:column;align-items:center;gap:0}
.hh__copy{width:100%;min-width:0}
body .hh .hh__eyebrow{font-size:13px;letter-spacing:.12em;line-height:1.5;margin:0 0 20px}
body .hh h1{font-size:64px;line-height:1.03;font-weight:900;font-stretch:68%;font-variation-settings:"wdth" 68;letter-spacing:-.025em;margin:0 0 24px;max-width:none;text-align:center;text-transform:uppercase}
.hh h1 span{display:block;white-space:nowrap}
body main .hh p.hh__sub{font-size:20px;line-height:1.5;margin:0 auto 36px;max-width:800px}
.hh form.home-quote.home-quote{width:100%;max-width:1160px;padding:32px;border-radius:12px;background:var(--white);color:var(--ink);text-align:left;scroll-margin-top:120px}
.hh form.home-quote.home-quote .est__top{display:flex;justify-content:space-between;font-size:14px;line-height:1.4;margin:0 0 12px}
.hh form.home-quote.home-quote .est__bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 24px}
.hh form.home-quote.home-quote .est__bar i{height:4px;background:var(--surface)}
.hh form.home-quote.home-quote .est__bar i.is-on{background:var(--orange)}
.hh form.home-quote.home-quote[data-step="1"] .est__step.is-on{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px) auto;align-items:center;gap:32px}
.hh form.home-quote.home-quote h3{font:700 24px/1.3 var(--font-body);letter-spacing:0;text-transform:none;margin:0 0 8px}
body main .hh .home-quote__intro p.est__hint{font-size:15px;line-height:1.4;color:var(--ink-soft);margin:0}
.hh form.home-quote.home-quote .field{margin:0;min-width:0}
.hh form.home-quote.home-quote .field>span{font-size:16px;line-height:1.4;margin:0 0 6px}
.hh form.home-quote.home-quote .field :is(input,select){font-size:16px;min-height:48px;width:100%;min-width:0;border-radius:8px}
.hh form.home-quote.home-quote .field>.home-quote__help{display:block;font-size:14px;line-height:1.4;color:var(--ink-soft);margin:8px 0 0}
.hh form.home-quote.home-quote .btn{min-height:48px;padding:12px 24px}
.hh form.home-quote.home-quote .est__row{margin-top:16px}
.hh form.home-quote.home-quote fieldset{min-width:0}
body main .hh p.hh__note{font-size:15px;line-height:1.4;margin:20px 0 0;color:var(--white);text-align:center}
.hh__note span{color:var(--orange)}
main .hh button.hh__pause.hh__pause{position:absolute;right:20px;bottom:20px;left:auto;width:32px;height:32px;min-height:32px;padding:6px;border:1px solid rgba(255,255,255,.5);border-radius:8px;background:rgba(255,255,255,.15)!important;backdrop-filter:none;color:var(--white)!important;cursor:pointer}
.hh__pause::after{content:"";position:absolute;inset:-6px}
.hh__pause svg{display:block;width:18px;height:18px}
.hh__pause:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media(max-width:767.98px){
 .hh{height:auto;min-height:0;max-height:none;padding:48px 0 64px}
 body .hh h1{font-size:40px;line-height:1.06}
 body main .hh p.hh__sub{margin-bottom:28px}
 .hh form.home-quote.home-quote{padding:32px 24px}
 .hh form.home-quote.home-quote[data-step="1"] .est__step.is-on{grid-template-columns:minmax(0,1fr);gap:24px}
 body main .hh .home-quote__intro p.est__hint{font-size:16px}
 .hh form.home-quote.home-quote .field>.home-quote__help{font-size:16px}
 body main .hh p.hh__note{font-size:16px}
 .hh form.home-quote.home-quote .btn{width:100%}
 .hh form.home-quote.home-quote .nee-condition>div{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Override the shell's global type locks only within this home hero. */
body .hh h1{font-size:64px!important;line-height:1.03!important}
body .hh form.home-quote.home-quote h3{font-size:24px!important;font-weight:700!important;line-height:1.3!important}
body main .hh p.hh__sub{font-size:20px!important}
body main .hh .home-quote__intro p.est__hint{font-size:15px!important}
body main .hh p.hh__note{font-size:15px!important}
@media(max-width:767.98px){
 body .hh h1{font-size:40px!important;line-height:1.06!important}
 body .hh h1{white-space:nowrap;font-variation-settings:"wdth" 62;letter-spacing:-.045em}
 body main .hh .home-quote__intro p.est__hint,body main .hh p.hh__note{font-size:16px!important}
}
/* Expanded steps grow naturally and remain reachable below the sticky header. */
.hh:has(.home-quote[data-step="2"]),.hh:has(.home-quote[data-step="3"]){height:auto;min-height:720px;padding:48px 0}
@media(max-width:767.98px){.hh:has(.home-quote[data-step="2"]),.hh:has(.home-quote[data-step="3"]){min-height:0;padding:48px 0 64px}}
body main .hh p.hh__eyebrow{font-size:13px!important;letter-spacing:.12em}
.hh form.home-quote.home-quote .field>.home-quote__help{font-weight:400}
