/* WordPress integration; shared corporate header/footer stay outside this scope. */
body.bs39-offers-page { background:#fff; color:#26375e; padding-bottom:0; }
body.bs39-corporate.bs39-offers-page:not(.bs39-home-preview) { padding-top:0!important; }
body.bs39-offers-page .hp-corporate-shell .hp-site-header { position:absolute; background:transparent; }
.bs39-offers { background:#fff; font-family:Montserrat,Arial,sans-serif; line-height:1.5; }
.bs39-offers :where(h1,h2,h3,p,figure) { margin:0; font-family:inherit; text-transform:none; }
.bs39-offers :where(button,input) { margin:0; letter-spacing:normal; }
.bs39-offers :where(button) { text-transform:none; }
.bs39-offers :where(img,svg) { vertical-align:middle; }
.bs39-offers svg { flex-shrink:0; }
.bs39-offers .container { max-width:none; }
.bs39-offers .container:not(.payment-schedule) { padding-inline:0; }
.bs39-offers [hidden] { display:none!important; }
.bs39-offers [id] { scroll-margin-top:126px; }
.bs39-offers :focus-visible { outline:2px solid #96ae4f; outline-offset:4px; }
.bs39-offers .offers-hero h1 { color:#fff; }
.bs39-offers .offers-hero h1 .hero-mobile-line + .hero-mobile-line::before { content:none; }
.bs39-offers .offers-form-fields { display:grid; gap:16px; }
.bs39-offers .lead-form form { display:grid; gap:16px; }
.bs39-offers .lead-form .bs39-check-row { margin:0; }
.bs39-offers .lead-form form p { margin:0; }
.bs39-offers .lead-form form br { display:none; }
.bs39-offers .lead-form .wpcf7-list-item { margin:0; }
.bs39-offers .lead-form .consent label { display:flex; align-items:flex-start; gap:8px; font-size:11px; line-height:1.4; }
.bs39-offers .lead-form input[type=checkbox] { flex:0 0 16px; width:16px; height:16px; appearance:auto; }
.bs39-offers .lead-form input[type=submit] { width:100%; height:58px; padding:0 44px; border:0; background:var(--navy); color:#fff; font-size:12px; font-weight:800; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14m-7-7 7 7-7 7'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 18px center; }
.bs39-offers .lead-form input[type=submit]:disabled { opacity:.6; }
.bs39-offers .lead-form .wpcf7-not-valid-tip { margin-top:5px; font-size:12px; }
.bs39-offers .lead-form .wpcf7-response-output { margin:15px 0 0; padding:12px; border-radius:9px; font-size:13px; }
.bs39-offers .lead-form .wpcf7-spinner { position:absolute; margin:15px 8px; }
.bs39-offers .calculator-error { grid-column:1/-1; margin:0; color:#ffe2c7; font-size:13px; }
.bs39-offers .schedule-download[aria-disabled=true] { opacity:.65; pointer-events:none; }
.bs39-offers .conditions-dialog { position:fixed; inset:0 0 0 auto; width:min(620px,48vw); max-width:100%; height:100dvh; max-height:100dvh; margin:0; padding:0; border:0; overflow:hidden; background:white; color:var(--navy); }
.bs39-offers .conditions-dialog::backdrop { background:rgb(7 18 38 / 58%); backdrop-filter:blur(7px); }
.bs39-offers .conditions-dialog .conditions-panel { width:100%; height:100%; }
.bs39-offers .conditions-panel-header button { font-size:28px; line-height:1; }
.bs39-offers .conditions-key-terms > div::before { content:'✓'; flex:none; color:#849d42; }
.bs39-offers .conditions-panel-scroll { min-height:0; }
.bs39-offers .scroll-to-top { font-size:24px; }
@media (min-width:901px) {
 .bs39-offers .offers-list { align-items:stretch; }
 .bs39-offers .offers-list .offer-detail { height:auto; }
 .bs39-offers .offers-list .offer-detail-copy { min-height:308px; overflow:visible; }
}
@media (max-width:900px) {
 .bs39-offers [id] { scroll-margin-top:90px; }
}
@media (max-width:700px) {
 body.bs39-offers-page { padding-bottom:calc(80px + env(safe-area-inset-bottom)); }
 .bs39-offers .conditions-dialog { inset:auto 0 0; width:100%; height:94dvh; border-radius:22px 22px 0 0; }
 .bs39-offers .conditions-dialog .conditions-panel { border-radius:0; }
 .bs39-offers .offers-hero-content { padding-top:100px; }
 .bs39-offers .scroll-to-top { bottom:88px; }
}
@media (prefers-reduced-motion:reduce) {
 html:has(.bs39-offers) { scroll-behavior:auto; }
 .bs39-offers *, .bs39-offers *::before, .bs39-offers *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
