.vn-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 #ff6622;border-top:4px solid #ff6622;border-radius:7px;background:#f7f7f5;color:#142833;overflow:auto;overscroll-behavior:contain}
.vn-price-dialog::backdrop{background:rgba(20,30,40,.42)}
.vn-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}
.vn-price-overlay[hidden]{display:none!important}
.vn-price-overlay .vn-price-dialog{position:relative;display:block;flex:0 1 auto;max-width:100%;margin:0;pointer-events:auto;}
.vn-price-top{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;padding:8px 12px;background:#f7f7f5}
.vn-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}
.vn-price-close:hover{background:#ff6622}.vn-price-dialog :focus-visible{outline:3px solid #142833;outline-offset:3px}
.vn-price-content{padding:0 22px}.vn-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}
.vn-price-intro{margin:0 0 14px;line-height:1.5;font-size:16px}.vn-price-widget{min-height:570px;background:#f7f7f5}
.vn-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:#f7f7f5}
.vn-price-fallback{margin:14px 0 0;font-size:14px}.vn-price-fallback a{color:#153c56;text-decoration:underline}.vn-price-status{font-size:14px;color:#142833}
body.vn-price-open{overflow:visible}
html.vn-price-open{overflow:visible!important;scrollbar-width:none}
html.vn-price-open::-webkit-scrollbar{display:none}
@media(max-width:600px){.vn-price-dialog{width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.vn-price-content{padding:0 12px}.vn-price-widget iframe{height:610px}.vn-price-dialog h2{font-size:26px}.vn-price-intro{font-size:15px}}
@media(prefers-reduced-motion:reduce){.vn-price-dialog{scroll-behavior:auto}}
/* Compact revision: light backdrop and a content-sized provider frame. */
.vn-price-dialog{width:min(500px,calc(100% - 24px));padding-bottom:12px;scrollbar-width:none;box-shadow:0 12px 40px rgba(20,40,51,.2)}
.vn-price-dialog::-webkit-scrollbar{display:none}
.vn-price-top{padding:7px 9px 2px}
.vn-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;}
.vn-price-content{padding:0 14px}
.vn-price-dialog h2{text-align:center;font-size:25px;margin:0 16px 8px;white-space:nowrap}
.vn-price-intro{text-align:center;font-size:14px;margin:0 0 10px}
.vn-price-widget{min-height:0}
.vn-price-widget iframe{height:570px;min-height:0!important;pointer-events:auto;}
@media(max-width:600px){.vn-price-dialog{width:calc(100% - 16px);padding-bottom:8px}.vn-price-content{padding:0 8px}.vn-price-dialog h2{font-size:23px;margin:0 18px 8px}.vn-price-intro{font-size:14px}.vn-price-widget iframe{height:610px}}
.vn-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){.vn-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}.vn-mobile-prices.is-visible{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.vn-mobile-prices a{display:block;min-height:46px;padding:11px 16px;border-radius:3px;background:#ff6622;color:#101820;text-align:center;font-size:16px;line-height:24px;font-weight:700;text-decoration:none}.vn-mobile-prices a:focus-visible{outline:3px solid white;outline-offset:2px}}
@media(prefers-reduced-motion:reduce){.vn-mobile-prices{transition:none}}

.vn-price-dialog,.vn-price-top,.vn-price-widget,.vn-price-widget iframe{background:#f7f7f5!important}.vn-price-dialog{font-family:Poppins,Arial,sans-serif}.vn-price-close{font-family:Arial,sans-serif}.vn-inline-price,.prose a.vn-inline-price{color:#0065be!important;font-weight:700!important;text-decoration:underline!important;text-decoration-color:#0065be!important;text-underline-offset:2px}.vn-mobile-prices a{color:white!important;background:#e64d0b!important}

/* Content-sized fallback; provider resize messages set the actual step height. */
.vn-price-widget iframe{height:430px}.vn-price-dialog{padding-bottom:6px}

/* Keep modest breathing room beneath the content-sized frame. */
.vn-price-dialog{padding-bottom:12px}

/* Reduce the subtitle-to-progress gap; form step owns its natural height. */
.vn-price-intro{margin-bottom:4px!important}

/* Static hero cards hug the existing hosted frame, without a transparent tail. */
.ocs-form-card,.ows-form-card{min-height:0!important;height:auto!important;background:#f7f7f5!important}
.ocs-form-card #formTargetDiv,.ows-form-card #formTargetDiv{min-height:0!important}
.ocs-form-card iframe,.ows-form-card iframe{display:block;vertical-align:top}
