.asi-price-dialog{box-sizing:border-box;width:min(620px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:0 0 20px;border:1px solid #f2692e;border-top:4px solid #f2692e;border-radius:7px;background:#dedede;color:#142833;overflow:auto;overscroll-behavior:contain}
.asi-price-dialog::backdrop{background:rgba(20,30,40,.42)}
.asi-price-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:8px;background:rgba(20,30,40,.42);overflow:hidden}
.asi-price-overlay[hidden]{display:none!important}
.asi-price-overlay .asi-price-dialog{position:relative;display:block;flex:0 1 auto;max-width:100%;margin:0;pointer-events:auto;}
.asi-price-top{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;padding:8px 12px;background:#dedede}
.asi-price-close{min-width:82px;min-height:44px;padding:8px 12px;border:1px solid #536671;border-radius:3px;background:#fff;color:#142833;font:inherit;font-weight:700;cursor:pointer}
.asi-price-close:hover{background:#f2692e}.asi-price-dialog :focus-visible{outline:3px solid #142833;outline-offset:3px}
.asi-price-content{padding:0 22px}.asi-price-dialog h2{margin:0 0 12px;font-size:clamp(24px,4vw,32px);line-height:1.15;color:#142833;text-transform:none;letter-spacing:-.4px}
.asi-price-intro{margin:0 0 14px;line-height:1.5;font-size:16px}.asi-price-widget{min-height:570px;background:#dedede}
.asi-price-widget iframe{display:block;width:100%!important;min-width:0!important;height:570px;border:0!important;border-radius:0!important;box-shadow:none!important;background:#dedede}
.asi-price-fallback{margin:14px 0 0;font-size:14px}.asi-price-fallback a{color:#153c56;text-decoration:underline}.asi-price-status{font-size:14px;color:#142833}
body.asi-price-open{overflow:visible}
html.asi-price-open{overflow:visible!important;scrollbar-width:none}
html.asi-price-open::-webkit-scrollbar{display:none}
@media(max-width:600px){.asi-price-dialog{width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.asi-price-content{padding:0 12px}.asi-price-widget iframe{height:610px}.asi-price-dialog h2{font-size:26px}.asi-price-intro{font-size:15px}}
@media(prefers-reduced-motion:reduce){.asi-price-dialog{scroll-behavior:auto}}
/* Compact revision: light backdrop and a content-sized provider frame. */
.asi-price-dialog{width:min(500px,calc(100% - 24px));padding-bottom:12px;scrollbar-width:none;box-shadow:0 12px 40px rgba(20,40,51,.2)}
.asi-price-dialog::-webkit-scrollbar{display:none}
.asi-price-top{padding:7px 9px 2px}
.asi-price-close{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;width:28px;height:28px;padding:0;border:1px solid #536671;border-radius:50%;font-size:22px;line-height:1;}
.asi-price-content{padding:0 14px}
.asi-price-dialog h2{text-align:center;font-size:25px;margin:0 16px 8px;white-space:nowrap}
.asi-price-intro{text-align:center;font-size:14px;margin:0 0 10px}
.asi-price-widget{min-height:0}
.asi-price-widget iframe{height:570px;min-height:0!important;pointer-events:auto;}
@media(max-width:600px){.asi-price-dialog{width:calc(100% - 16px);padding-bottom:8px}.asi-price-content{padding:0 8px}.asi-price-dialog h2{font-size:23px;margin:0 18px 8px}.asi-price-intro{font-size:14px}.asi-price-widget iframe{height:610px}}
.asi-mobile-prices{display:none}
.prose a.contextual-price-link{color:#165b9b;font-weight:700;text-decoration:underline;text-decoration-color:#165b9b;text-underline-offset:2px}
.prose a.contextual-price-link:hover{color:#0b3044;text-decoration-color:#0b3044}
@media(max-width:820px){.asi-mobile-prices{display:block;position:fixed;z-index:9990;bottom:0;left:0;right:0;padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px));background:#142f42;visibility:hidden;opacity:0;transform:translateY(100%);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s}.asi-mobile-prices.is-visible{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.asi-mobile-prices a{display:block;min-height:46px;padding:11px 16px;border-radius:3px;background:#f2692e;color:#101820;text-align:center;font-size:16px;line-height:24px;font-weight:700;text-decoration:none}.asi-mobile-prices a:focus-visible{outline:3px solid white;outline-offset:2px}}
@media(prefers-reduced-motion:reduce){.asi-mobile-prices{transition:none}}

.asi-price-dialog,.asi-price-top,.asi-price-widget,.asi-price-widget iframe{background:#dedede!important}.asi-price-dialog{font-family:Arial,sans-serif}.asi-price-close{font-family:Arial,sans-serif}.asi-inline-price,.prose a.asi-inline-price{color:#0065be!important;font-weight:700!important;text-decoration:underline!important;text-decoration-color:#0065be!important;text-underline-offset:2px}.asi-mobile-prices a{color:white!important;background:#e64d0b!important}

/* Content-sized fallback; provider resize messages set the actual step height. */
.asi-price-widget iframe{height:430px}.asi-price-dialog{padding-bottom:6px}

/* Keep modest breathing room beneath the content-sized frame. */
.asi-price-dialog{padding-bottom:12px}

.asi-price-dialog,.asi-price-dialog h2{font-family:Arial,sans-serif!important}.asi-price-dialog{color:#10283a}.asi-price-dialog h2{font-weight:700}.asi-mobile-prices a{background:#b94213!important;color:#fff!important}

/* Keep warm frames laid out at their eventual width while remaining invisible. */
.asi-price-overlay[hidden].is-prepared{display:flex!important;visibility:hidden!important;pointer-events:none!important}
.asi-price-widget .bzWidget{height:auto!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}

/* Retain readable inline actions in the site's dark hero sections. */
.asi-hero a.asi-inline-price,.asi-page-hero a.asi-inline-price,.asi-quote-hero a.asi-inline-price{color:#fff!important;text-decoration-color:#f2692e!important}

/* Scout renders the complete native form; never constrain it to the old iframe height. */
.asi-price-overlay.is-scout .asi-price-dialog,.asi-price-overlay.is-buyerzone .asi-price-dialog{width:min(680px,calc(100% - 24px))}
.asi-scout-host,.asi-form-shell--scout{width:100%;min-width:0;height:auto;max-height:none;overflow:visible}
.asi-price-overlay.is-buyerzone .asi-price-widget iframe{height:625px}
@media(max-width:600px){.asi-price-overlay.is-scout .asi-price-dialog,.asi-price-overlay.is-buyerzone .asi-price-dialog{width:calc(100% - 16px)}}

/* Shadow-DOM vendor styles can override visibility; opacity and inert prevent warm-up leakage. */
.asi-price-overlay[hidden].is-prepared{opacity:0!important}
