/* Billing uses the shared Inter type scale, native controls and Rijmaatje brand asset. */
.verification-billing-page{padding-bottom:72px;overflow-wrap:anywhere}
.verification-billing-page :where(section,aside,form,header,figure,div){min-width:0}
.vb-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);align-items:center;gap:48px;padding-block:32px 30px}
.vb-hero--compact{display:block;padding-bottom:28px}
.vb-hero-copy{max-width:740px}
.vb-back{margin-bottom:24px}
.vb-back>.icon{transform:rotate(180deg)}
.vb-hero .eyebrow{display:flex;margin-bottom:14px}
.vb-hero h1{max-width:700px;margin:0 0 20px;text-wrap:balance}
.vb-lead{max-width:660px;margin:0;color:#526174;font-size:var(--text-lead);line-height:var(--line-reading)}
.vb-brand-scene{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-height:300px;margin:0;padding:20px 16px 12px;isolation:isolate;overflow:clip}
.vb-brand-orbit{position:absolute;inset:12px 20px 28px;border-radius:50%;background:#e9f1ff;z-index:-2}
.vb-brand-orbit::after{content:'';position:absolute;inset:24px -9px;border:1px dashed #a9c4ef;border-radius:50%;transform:rotate(-24deg);z-index:-1}
.vb-brand-car{position:absolute;top:0;left:50%;transform:translateX(-50%) rotate(-5deg)}
.vb-brand-car .brand-mascot{display:block;width:120px;height:145px;filter:drop-shadow(0 14px 16px #173c7210)}
.vb-demo-profile{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;width:100%;max-width:345px;margin-top:120px;padding:20px;background:#fff;border:1px solid #d7e3f4;border-radius:22px;box-shadow:0 16px 36px #17335b10;transform:rotate(2deg)}
.vb-demo-school,.vb-school-symbol{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#edf3ff;color:var(--detail-blue,#2458e8)}
.vb-demo-school>.icon,.vb-school-symbol>.icon{width:24px;height:24px}
.vb-demo-profile strong{display:block;margin-block:2px 4px}
.vb-demo-profile p{margin:0;color:#526174;font-size:var(--text-small)}
.vb-demo-label{grid-column:2;display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px 9px;border:1px solid #cce4d9;border-radius:8px;background:#f0faf5;color:#176344;font-size:var(--text-caption);font-weight:var(--weight-semibold)}
.vb-demo-label>.icon{width:16px;height:16px}
.vb-brand-scene figcaption{max-width:320px;margin-top:16px;color:#526174;text-align:center;font-size:var(--text-caption);line-height:var(--line-body)}
.vb-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0 0 30px;padding:0;list-style:none;border:1px solid var(--detail-rule,#dce3ee);border-radius:18px;background:#fff;overflow:hidden}
.vb-steps li{display:flex;align-items:center;gap:12px;min-height:70px;padding:14px 18px;color:#526174}
.vb-steps li+li{border-left:1px solid var(--detail-rule,#dce3ee)}
.vb-steps li>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:#f1f4f8;color:#526174;font-size:var(--text-small);font-weight:var(--weight-semibold)}
.vb-steps li strong{font-size:var(--text-small)}
.vb-steps li[aria-current=step]{background:#edf3ff;color:#174e9e}
.vb-steps li[aria-current=step]>span{background:var(--detail-blue,#2458e8);color:#fff}
.vb-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(285px,.75fr);align-items:start;gap:28px}
.vb-main-column{display:grid;gap:22px}
.vb-choice-card,.vb-purchase-card,.vb-status-card,.vb-status-aside,.vb-summary{padding:30px}
.vb-card-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}
.vb-card-heading h2,.vb-purchase-card>h2{margin:0 0 10px}
.vb-card-heading p{margin:0;color:#526174;line-height:var(--line-reading)}
.vb-card-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:15px;background:#edf3ff;color:var(--detail-blue,#2458e8)}
.vb-card-icon>.icon{width:23px;height:23px}
.vb-choice-form,.vb-purchase-form{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.verification-billing-page .form-field{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}
.verification-billing-page .form-field>label{font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--detail-navy,#102c53)}
.verification-billing-page .form-field :where(input,select){box-sizing:border-box;width:100%;min-height:50px;padding:12px 14px;border:1px solid #b8c6d9;border-radius:12px;background:#fff;color:var(--detail-navy,#102c53);font:inherit;font-size:16px;line-height:1.4}
.verification-billing-page .form-field :where(input,select)[aria-invalid=true]{border-color:#a8303d;background:#fffafb}
.verification-billing-page .form-field-hint{margin:0;color:#526174;font-size:var(--text-small);line-height:var(--line-reading)}
.verification-billing-page .field-error{margin:0;color:#922b39;font-size:var(--text-small);line-height:var(--line-reading)}
.vb-choice-form .primary-button,.vb-checkout{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px}
.vb-form-note{margin:0;color:#526174;font-size:var(--text-small);line-height:var(--line-reading)}
.vb-search-link{margin-top:24px}
.vb-empty{padding:18px;border-radius:12px;background:#f5f7fb;color:#526174}
.vb-summary{position:sticky;top:24px;border-top:4px solid var(--detail-blue,#2458e8)}
.vb-summary-top{position:relative;padding-right:42px}
.vb-summary-top .eyebrow{margin:0 0 12px;color:#526174}
.vb-summary-top h2{margin:0}
.vb-summary-mark{position:absolute;right:0;top:0;display:grid;place-items:center;width:38px;height:38px;border:1px solid #d7e4fa;border-radius:13px;background:#edf3ff;color:var(--detail-blue,#2458e8)}
.vb-summary-mark>.icon{width:21px;height:21px}
.vb-draft-label{display:inline-flex;max-width:100%;margin-top:18px;padding:6px 9px;border:1px solid #ead7b4;border-radius:8px;color:#73531b;background:#fff8eb;font-size:var(--text-caption);font-weight:var(--weight-semibold)}
.vb-price{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-block:26px 24px}
.vb-price strong{font-size:var(--text-display);line-height:var(--line-heading);letter-spacing:-.04em;color:var(--detail-navy,#102c53);font-variant-numeric:tabular-nums}
.vb-price>span{color:#526174;font-size:var(--text-small)}
.vb-offer-facts{display:grid;gap:16px;margin:0;padding:22px 0;border-top:1px solid var(--detail-rule,#dce3ee);border-bottom:1px solid var(--detail-rule,#dce3ee)}
.vb-offer-facts>div{display:grid;grid-template-columns:minmax(68px,.55fr) minmax(0,1.45fr);gap:12px;align-items:start}
.vb-offer-facts dt{color:#526174;font-size:var(--text-small)}
.vb-offer-facts dd{margin:0;font-size:var(--text-small);line-height:var(--line-reading)}
.vb-configuration-note{margin-top:22px;padding:16px;border:1px solid #d4e3f8;border-radius:12px;background:#f1f6ff}
.vb-configuration-note strong{display:block;margin-bottom:8px}
.vb-configuration-note p,.vb-summary-note{margin:0;color:#435670;font-size:var(--text-small);line-height:var(--line-reading)}
.vb-summary-note{margin-top:20px}
.vb-stripe-note{display:flex;align-items:flex-start;gap:10px;margin-top:22px;color:#526174}
.vb-stripe-note>.icon{flex:0 0 18px;width:18px;height:18px;margin-top:2px}
.vb-stripe-note p{margin:0;font-size:var(--text-small);line-height:var(--line-reading)}
.vb-meaning-card{display:flex;align-items:flex-start;gap:18px;padding:26px 8px 10px}
.vb-meaning-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #d4e3f8;border-radius:14px;background:#fff;color:var(--detail-blue,#2458e8)}
.vb-meaning-icon>.icon{width:21px;height:21px}
.vb-meaning-card h2{margin:0 0 12px}
.vb-meaning-card p{margin:0 0 16px;color:#526174;line-height:var(--line-reading)}
.vb-selected-school{display:flex;align-items:flex-start;gap:16px;padding:20px;border:1px solid #dce5f0;border-radius:16px;background:#f8faff}
.vb-selected-school h3{margin:0}
.vb-small-label{margin:0 0 6px;color:#526174;font-size:var(--text-caption)}
.vb-school-city{display:flex;align-items:flex-start;gap:5px;margin:9px 0 0;color:#526174;font-size:var(--text-small)}
.vb-school-city>.icon{width:15px;height:15px;flex:0 0 15px;margin-top:3px}
.vb-registration{margin:10px 0 0;color:#526174;font-size:var(--text-small)}
.vb-selected-school .text-link{display:inline-flex;margin-top:14px;font-size:var(--text-small)}
.vb-change-school{display:inline-flex;margin:14px 0 26px;font-size:var(--text-small)}
.vb-purchase-card>.form-field-hint{margin-block:0 24px}
.vb-private-contact{display:grid;gap:20px;padding-top:4px}
.vb-private-contact>.form-field-hint{margin:0}
.vb-private-label{display:flex;align-items:center;gap:7px;margin:0;color:#174e9e;font-size:var(--text-small);font-weight:var(--weight-semibold)}
.vb-private-label>.icon{width:17px;height:17px}
.vb-consent-section{padding-top:22px;border-top:1px solid var(--detail-rule,#dce3ee)}
.vb-consent{align-items:flex-start;line-height:var(--line-reading)}
.vb-consent input{flex:0 0 18px;width:18px;height:18px;margin-top:4px;accent-color:var(--detail-blue,#2458e8)}
.vb-consent>span{min-width:0}
.vb-policy-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:14px;padding-left:30px}
.vb-policy-links a{color:#174e9e;font-size:var(--text-small);text-underline-offset:3px}
.vb-checkout:disabled{cursor:not-allowed;opacity:1;background:#e8edf5;border-color:#d6deea;color:#526174;box-shadow:none}
.vb-errors{margin:0 0 24px;padding:18px;border:1px solid #edc7ca;border-left:4px solid #a8303d;border-radius:12px;background:#fff7f7;color:#7f2430}
.vb-errors h2{margin:0 0 12px;font-size:var(--text-card)}
.vb-errors ul{margin:0;padding-left:20px}
.vb-errors li+li{margin-top:7px}
.vb-errors a{color:inherit;text-underline-offset:3px}
.vb-status-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.75fr);align-items:start;gap:28px}
.vb-status-card h2{margin:0 0 16px}
.vb-status-symbol{display:grid;place-items:center;width:64px;height:64px;margin-bottom:26px;border:1px solid #d5e3f8;border-radius:21px;background:#edf3ff;color:var(--detail-blue,#2458e8)}
.vb-status-symbol>.icon{width:31px;height:31px}
.vb-status-symbol.is-active{background:#edf9f3;border-color:#cae6d8;color:#176344}
.vb-status-body{margin:0;color:#526174;line-height:var(--line-reading)}
.vb-reference{display:grid;gap:7px;margin:24px 0 0;padding:16px;border:1px solid var(--detail-rule,#dce3ee);border-radius:12px;background:#f8faff}
.vb-reference dt{font-size:var(--text-small);color:#526174}
.vb-reference dd{margin:0;overflow-wrap:anywhere;font-size:var(--text-small);font-variant-numeric:tabular-nums}
.vb-status-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:28px}
.vb-status-actions .primary-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px}
.vb-status-aside>.vb-selected-school{margin:-6px -6px 22px;padding:18px}
.vb-status-aside>p{margin:0 0 22px;color:#526174;font-size:var(--text-small);line-height:var(--line-reading)}
.vb-unavailable{display:flex;align-items:flex-start;gap:18px;padding:30px}
.vb-unavailable h2{margin:0 0 14px}
.vb-unavailable p{max-width:640px;margin:0 0 24px;color:#526174;line-height:var(--line-reading)}
.verification-billing-page :where(input,select){max-width:100%;min-width:0}
.verification-billing-page :where(a,button,input,select):focus-visible{outline:3px solid var(--detail-blue,#2458e8);outline-offset:3px}
@media(max-width:900px){.vb-hero{gap:28px;grid-template-columns:minmax(0,1.15fr) minmax(230px,.8fr)}.vb-layout{gap:22px;grid-template-columns:minmax(0,1.1fr) minmax(270px,.85fr)}.vb-choice-card,.vb-purchase-card,.vb-summary,.vb-status-card,.vb-status-aside{padding:24px}.vb-steps li{gap:9px;padding:12px}.vb-status-layout{gap:22px;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr)}}
@media(max-width:720px){.verification-billing-page{padding-bottom:48px}.vb-hero{grid-template-columns:1fr;gap:16px;padding-block:24px}.vb-hero--compact{padding-bottom:24px}.vb-hero h1{margin-bottom:16px}.vb-brand-scene{min-height:245px;max-width:370px;width:100%;justify-self:center}.vb-brand-car .brand-mascot{width:100px;height:120px}.vb-demo-profile{margin-top:100px}.vb-layout,.vb-status-layout{grid-template-columns:1fr;gap:22px}.vb-summary{position:static}.vb-steps{margin-bottom:24px}.vb-steps li{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;min-height:98px}.vb-meaning-card{padding-top:6px}.vb-status-actions{align-items:stretch}.vb-status-actions .primary-button{flex:1 1 100%}}
@media(max-width:420px){.vb-choice-card,.vb-purchase-card,.vb-summary,.vb-status-card,.vb-status-aside,.vb-unavailable{padding:20px}.vb-card-heading{gap:12px}.vb-card-icon{flex-basis:40px;width:40px;height:40px;border-radius:12px}.vb-selected-school{padding:15px;gap:12px}.vb-school-symbol{flex-basis:40px;width:40px;height:40px;border-radius:12px}.vb-demo-profile{padding:16px}.vb-steps li{padding:12px 10px}.vb-steps li strong{font-size:var(--text-caption)}.vb-meaning-card{gap:12px;padding-inline:0}.vb-policy-links{padding-left:0}.vb-offer-facts>div{grid-template-columns:1fr;gap:5px}.vb-unavailable{gap:12px}.vb-price strong{font-size:var(--text-title)}}
@media(prefers-reduced-motion:reduce){.vb-brand-car,.vb-demo-profile{transform:none}.vb-brand-car{left:auto;position:relative}.vb-brand-scene{padding-top:8px}.vb-demo-profile{margin-top:0}}

.vb-handoff{max-width:780px;padding-block:40px 72px}.vb-handoff .vb-status-card p{line-height:var(--line-reading)}.vb-portal-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--detail-rule,#dce3ee)}.vb-portal-form button{min-height:48px;white-space:normal}

/* A compact product summary keeps the school, monthly cost and cancellation route in view. */
.verification-billing-page .vb-included-benefits{display:grid;gap:11px;padding:20px 0 0;margin:20px 0 0;border-top:1px solid var(--line,#dce4ee);list-style:none}
.verification-billing-page .vb-included-benefits>li{display:flex;align-items:flex-start;gap:9px;color:var(--ink,#173759);font-size:14px;line-height:1.6}
.verification-billing-page .vb-included-benefits .icon{flex:0 0 17px;width:17px;height:17px;margin-top:3px;color:var(--blue,#1659e8)}
.verification-billing-page .vb-cancellation-note{padding:14px 0 0;margin:16px 0 0;border-top:1px solid var(--line,#dce4ee);color:var(--muted,#66778b);font-size:14px;line-height:1.65}
.verification-billing-page .vb-private-contact input{font-size:16px;min-height:50px}
.verification-billing-page .vb-checkout{min-height:50px;font-size:16px}
