#carrier-onboarding { --vexo-red:#ed002b; background:#fff; color:#252a2e; font:15px/1.5 Arial,Helvetica,sans-serif; text-align:left; color-scheme:light; }
#carrier-onboarding * { box-sizing:border-box; }
#carrier-onboarding [hidden] { display:none !important; }
#carrier-onboarding a { color:inherit; text-decoration:none; }
#carrier-onboarding button, #carrier-onboarding input, #carrier-onboarding select, #carrier-onboarding textarea { font:inherit; }
#carrier-onboarding button, #carrier-onboarding summary { touch-action:manipulation; }
#carrier-onboarding a:hover { text-decoration:underline; text-underline-offset:4px; }
#carrier-onboarding .wrap { width:min(1140px, calc(100% - 80px)); margin-inline:auto; }
#carrier-onboarding summary { list-style:none; }
#carrier-onboarding summary::-webkit-details-marker { display:none; }
#carrier-onboarding .breadcrumb { padding-top:23px; color:#626a70; font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
#carrier-onboarding .breadcrumb span { padding-inline:10px; color:#677179; }
#carrier-onboarding .hero { display:grid; grid-template-columns:1.5fr 1fr; gap:50px; padding:39px 0 33px; align-items:end; }
#carrier-onboarding .eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 17px; font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
#carrier-onboarding .eyebrow::before { content:""; display:block; width:28px; height:3px; background:var(--vexo-red); }
#carrier-onboarding h1 { margin:0; font-size:clamp(34px,4.6vw,59px); line-height:1.02; letter-spacing:-.035em; font-weight:750; text-transform:uppercase; }
#carrier-onboarding h1 span { display:block; color:var(--vexo-red); }
#carrier-onboarding .hero-copy>p { color:#5c656b; font-size:14px; line-height:1.65; max-width:360px; margin:0 0 20px; }
#carrier-onboarding .hero-links { display:flex; flex-wrap:wrap; gap:22px; font-size:12px; font-weight:600; }
#carrier-onboarding .hero-links a { display:flex; align-items:center; gap:10px; border-bottom:1px solid #ced3d6; padding-bottom:7px; }
#carrier-onboarding .hero-links span { color:var(--vexo-red); font-size:18px; }
#carrier-onboarding .process { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #dfe3e6; border-bottom:1px solid #dfe3e6; padding:17px 0; gap:20px; }
#carrier-onboarding .process>div { display:flex; align-items:center; gap:13px; }
#carrier-onboarding .process>div+div { border-left:1px solid #dfe3e6; padding-left:28px; }
#carrier-onboarding .process .process-number { font-size:11px; font-weight:700; color:var(--vexo-red); }
#carrier-onboarding .process strong { display:block; font-size:12px; font-weight:600; }
#carrier-onboarding .process small { display:block; color:#626b72; font-size:11px; margin-top:2px; }
#carrier-onboarding .application-layout { display:grid; grid-template-columns:224px minmax(0,1fr); gap:36px; padding-block:36px 48px; align-items:start; }
#carrier-onboarding .side-label { color:#636d74; font-size:10px; letter-spacing:.13em; font-weight:700; text-transform:uppercase; margin:0 0 12px; }
#carrier-onboarding .section-nav { display:flex; flex-direction:column; }
#carrier-onboarding .section-nav button { display:grid; grid-template-columns:21px 1fr; align-items:center; text-align:left; color:#555f67; padding:13px 12px 13px 10px; background:transparent; border:0; border-left:2px solid transparent; border-bottom:1px solid #e3e6e9; font-size:12px; line-height:1.4; gap:11px; min-height:46px; }
#carrier-onboarding .section-nav button span { font-size:10px; color:#6b757d; }
#carrier-onboarding .section-nav button[aria-current="step"] { border-left-color:var(--vexo-red); background:#fff0f3; color:#252a2e; font-weight:600; }
#carrier-onboarding .section-nav button[aria-current="step"] span { color:var(--vexo-red); }
#carrier-onboarding .section-nav button:hover { background:#f3f5f6; color:#252a2e; }
#carrier-onboarding .requirements { margin-top:25px; padding-top:20px; border-top:1px solid #dfe3e6; }
#carrier-onboarding .requirements summary { display:flex; justify-content:space-between; gap:12px; font-size:12px; font-weight:600; }
#carrier-onboarding .requirements summary::after { content:"+"; color:#626b72; font-size:16px; line-height:18px; }
#carrier-onboarding .requirements[open] summary::after { content:"−"; }
#carrier-onboarding .requirements ul { list-style:none; padding:0; margin:12px 0 0; }
#carrier-onboarding .requirements li { color:#626b72; font-size:11px; padding:4px 0 4px 14px; position:relative; line-height:1.5; }
#carrier-onboarding .requirements li::before { content:"·"; color:var(--vexo-red); position:absolute; left:0; font-size:19px; top:-2px; }
#carrier-onboarding .support { margin-top:22px; padding-top:18px; border-top:1px solid #dfe3e6; }
#carrier-onboarding .support p { margin:0 0 7px; font-size:11px; color:#626b72; }
#carrier-onboarding .support a { display:block; font-size:12px; overflow-wrap:anywhere; padding-block:3px; }
#carrier-onboarding .application-panel { min-width:0; background:#fff; border:1px solid #dfe3e6; border-top:3px solid var(--vexo-red); padding:27px 30px 0; }
#carrier-onboarding .panel-meta { display:flex; justify-content:space-between; gap:15px; color:#626b72; font-size:10px; letter-spacing:.1em; text-transform:uppercase; margin-bottom:12px; }
#carrier-onboarding .panel-meta strong { color:#252a2e; font-weight:600; }
#carrier-onboarding .mobile-sections { display:none; }
#carrier-onboarding .form-card { margin:0; }
#carrier-onboarding .form-section>h3, #carrier-onboarding .sign-box>h3 { font-size:23px; font-weight:600; line-height:1.2; letter-spacing:-.02em; margin:0 0 9px; }
#carrier-onboarding .section-description { margin:0 0 24px; font-size:12px; color:#626b72; }
#carrier-onboarding .fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 20px; }
#carrier-onboarding .field { min-width:0; }
#carrier-onboarding .field label { display:block; color:#333b41; font-size:12px; font-weight:500; margin-bottom:7px; line-height:1.4; }
#carrier-onboarding .field .req::after { content:" *"; color:var(--vexo-red); }
#carrier-onboarding .field input, #carrier-onboarding .field select, #carrier-onboarding .field textarea { display:block; width:100%; border:1px solid #bfc7cc; background:#fff; color:#252a2e; border-radius:0; padding:11px 12px; min-height:44px; font-size:14px; }
#carrier-onboarding .field input::placeholder, #carrier-onboarding .field textarea::placeholder { color:#747d84; opacity:1; font-size:12px; }
#carrier-onboarding .field input:hover, #carrier-onboarding .field select:hover, #carrier-onboarding .field textarea:hover { border-color:#7b8790; }
#carrier-onboarding .field textarea { resize:vertical; min-height:95px; }
#carrier-onboarding .field input[type="file"] { font-size:11px; padding:8px; min-height:48px; }
#carrier-onboarding input::file-selector-button { color:#333b41; background:#edf0f2; border:0; font-size:11px; padding:7px 9px; margin-right:10px; }
#carrier-onboarding .field-wide, #carrier-onboarding .f12 { grid-column:1 / -1; }
#carrier-onboarding .checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding-bottom:9px; }
#carrier-onboarding .checks .check { display:flex; align-items:center; gap:9px; font-size:12px; border:1px solid #d2d8dd; padding:11px 10px; background:#fff; min-height:44px; }
#carrier-onboarding .checks .check:has(input:checked) { background:#fff0f3; border-color:var(--vexo-red); }
#carrier-onboarding input[type="checkbox"] { accent-color:var(--vexo-red); width:16px; height:16px; margin:1px 0 0; flex:none; }
#carrier-onboarding .notice { padding:16px 18px; background:#f3f5f6; border-left:2px solid #7b878f; font-size:12px; line-height:1.65; color:#555f67; margin:22px 0 16px; }
#carrier-onboarding .sign-box p { font-size:12px; color:#555f67; line-height:1.7; }
#carrier-onboarding .sign-box>p { margin:16px 0; }
#carrier-onboarding .sign-box .fields { margin:22px 0; }
#carrier-onboarding .sign-box>h3 { margin-bottom:18px; }
#carrier-onboarding .sign-box .check, #carrier-onboarding .sign-consent, #carrier-onboarding .carrier-authority label { display:flex; gap:11px; align-items:flex-start; font-size:12px; color:#333b41; line-height:1.65; margin:18px 0; }
#carrier-onboarding .carrier-authority { padding:16px 18px; border:1px solid #d2d8dd; margin:22px 0; }
#carrier-onboarding .carrier-authority h4 { margin:0 0 9px; font-size:13px; }
#carrier-onboarding .carrier-authority p { margin:0; }
#carrier-onboarding .carrier-authority label { margin-bottom:0; }
#carrier-onboarding .vexo-action { display:inline-flex; align-items:center; justify-content:center; gap:16px; padding:12px 16px; min-height:44px; color:#333b41; border:1px solid #bfc7cc; background:#fff; font-size:12px; font-weight:600; line-height:1.4; text-align:center; }
#carrier-onboarding .vexo-action:hover { background:#f1f3f5; text-decoration:none; }
#carrier-onboarding .vexo-action.primary { background:var(--vexo-red); border-color:var(--vexo-red); color:#fff; }
#carrier-onboarding .vexo-action.primary:hover { background:#cf0027; }
#carrier-onboarding .agreement-links { display:flex; gap:8px; flex-wrap:wrap; }
#carrier-onboarding .flow-status:not(:empty) { padding:14px; border:1px solid #bfc7cc; margin-top:15px; font-size:13px; }
#carrier-onboarding .form-actions { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:24px 0; margin-top:26px; border-top:1px solid #dfe3e6; }
#carrier-onboarding .form-actions small { font-size:11px; color:#626b72; }
#carrier-onboarding .form-actions .back { border:0; background:none; color:#333b41; font-size:12px; padding:12px 0; }
#carrier-onboarding .form-actions .next { margin-left:auto; }
#carrier-onboarding .form-actions .next span { font-size:19px; font-weight:400; }
#carrier-onboarding .panel-bottom { color:#626b72; font-size:10px; margin:0 -30px; background:#f5f6f7; padding:12px 30px; border-top:1px solid #dfe3e6; display:flex; justify-content:space-between; gap:10px; }
@media(max-width:930px) {
 #carrier-onboarding .wrap { width:calc(100% - 48px); }
 #carrier-onboarding .hero { gap:35px; grid-template-columns:1.3fr 1fr; }
 #carrier-onboarding .application-layout { grid-template-columns:190px minmax(0,1fr); gap:23px; }
 #carrier-onboarding .application-panel { padding-inline:23px; }
 #carrier-onboarding .fields { gap:16px; }
 #carrier-onboarding .panel-bottom { margin-inline:-23px; padding-inline:23px; }
}
@media(max-width:680px) {
 #carrier-onboarding .wrap { width:calc(100% - 36px); }
 #carrier-onboarding .breadcrumb { font-size:8px; letter-spacing:.035em; padding-top:19px; }
 #carrier-onboarding .hero { display:block; padding:27px 0 23px; }
 #carrier-onboarding .eyebrow { font-size:9px; margin-bottom:13px; gap:9px; }
 #carrier-onboarding h1 { font-size:clamp(32px,8.3vw,49px); }
 #carrier-onboarding .hero-copy>p { font-size:12px; margin:18px 0 14px; max-width:none; }
 #carrier-onboarding .hero-links { gap:22px; font-size:11px; }
 #carrier-onboarding .process { gap:10px; padding-block:14px; }
 #carrier-onboarding .process>div { align-items:flex-start; gap:6px; }
 #carrier-onboarding .process>div+div { padding-left:10px; }
 #carrier-onboarding .process strong { font-size:10px; line-height:1.4; }
 #carrier-onboarding .process small { display:none; }
 #carrier-onboarding .process .process-number { font-size:9px; line-height:1.55; }
 #carrier-onboarding .application-layout { display:flex; flex-direction:column; gap:0; padding:22px 0 30px; }
 #carrier-onboarding .application-sidebar { order:2; width:100%; }
 #carrier-onboarding .side-label, #carrier-onboarding .section-nav { display:none; }
 #carrier-onboarding .requirements { margin-top:22px; padding-top:18px; }
 #carrier-onboarding .requirements ul { display:grid; grid-template-columns:1fr 1fr; gap:2px 12px; }
 #carrier-onboarding .support { margin-top:14px; padding-top:14px; }
 #carrier-onboarding .support a { display:inline-block; margin-right:15px; }
 #carrier-onboarding .application-panel { width:100%; padding:20px 18px 0; }
 #carrier-onboarding .panel-meta { font-size:9px; margin-bottom:15px; }
 #carrier-onboarding .mobile-sections { display:block; margin-bottom:20px; }
 #carrier-onboarding .mobile-sections label { display:block; font-size:10px; color:#626b72; margin-bottom:6px; }
 #carrier-onboarding .mobile-sections select { width:100%; min-height:44px; padding:9px 10px; font-size:14px; border:1px solid #bfc7cc; background:#fff; color:#252a2e; border-radius:0; }
 #carrier-onboarding .form-section>h3, #carrier-onboarding .sign-box>h3 { font-size:21px; }
 #carrier-onboarding .section-description { font-size:11px; margin-bottom:20px; }
 #carrier-onboarding .fields { grid-template-columns:1fr; gap:16px; }
 #carrier-onboarding .field input, #carrier-onboarding .field select, #carrier-onboarding .field textarea { font-size:16px; }
 #carrier-onboarding .field label { font-size:12px; }
 #carrier-onboarding .checks { grid-template-columns:1fr; gap:6px; }
 #carrier-onboarding .checks .check { padding-block:10px; }
 #carrier-onboarding .form-actions { padding-block:19px; margin-top:24px; gap:12px; }
 #carrier-onboarding .form-actions small { display:none; }
 #carrier-onboarding .vexo-action { padding:12px 14px; font-size:11px; gap:12px; }
 #carrier-onboarding .panel-bottom { margin-inline:-18px; padding:11px 18px; font-size:9px; }
 #carrier-onboarding .panel-bottom span:last-child { display:none; }
}
@media(prefers-reduced-motion:reduce) { #carrier-onboarding * { scroll-behavior:auto; } }

/* Reset inherited legacy form geometry; field elements and names stay intact. */
#carrier-onboarding .wrap { max-width:none; padding:0; }
#carrier-onboarding .hero { position:static; min-height:0; margin:0; color:inherit; background:none; overflow:visible; }
#carrier-onboarding .hero::before, #carrier-onboarding .hero::after { display:none; }
#carrier-onboarding .hero>div { position:static; width:auto; max-width:none; }
#carrier-onboarding .hero-copy { padding:0; }
#carrier-onboarding .process { background:#fff; }
#carrier-onboarding .requirements { border-bottom:0; border-radius:0; padding-bottom:0; }
#carrier-onboarding .form-card { display:block; background:#fff; border:0; border-radius:0; padding:0; box-shadow:none; }
#carrier-onboarding .form-section { margin:0; padding:0; border:0; }
#carrier-onboarding .form-section h3 { text-transform:none; color:#252a2e; }
#carrier-onboarding .fields>.field { grid-column:auto; }
#carrier-onboarding .fields>.field-wide, #carrier-onboarding .fields>.f12 { grid-column:1 / -1; }
#carrier-onboarding .field { margin:0; }
#carrier-onboarding .field .req::after { position:static; }
#carrier-onboarding .sign-box { border:0; border-radius:0; padding:0; margin:0; background:#fff; }
#carrier-onboarding .notice { border-radius:0; }
#carrier-onboarding .review-certification { display:flex!important; align-items:flex-start; gap:11px; margin:18px 0; font-size:12px; line-height:1.65; color:#333b41; }
#carrier-onboarding .sign-box .btn { display:inline-flex; align-items:center; justify-content:center; width:auto; min-height:44px; border:1px solid #bfc7cc; border-radius:0; background:#fff; color:#333b41; padding:12px 14px; margin:0 8px 8px 0; font:600 12px/1.5 Arial,Helvetica,sans-serif; text-transform:none; letter-spacing:0; white-space:normal; }
#carrier-onboarding .sign-box #signSubmit { background:var(--vexo-red); border-color:var(--vexo-red); color:#fff; }
#carrier-onboarding .sign-box .btn::after { display:none; }
#carrier-onboarding button { cursor:pointer; border-radius:0; text-transform:none; letter-spacing:normal; }
#carrier-onboarding button:disabled { cursor:not-allowed; opacity:.55; }
#carrier-onboarding :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #bd0025; outline-offset:3px; }
#carrier-onboarding :is(input,select,textarea,h3) { scroll-margin-top:160px; }
#carrier-onboarding .form-actions .back { min-height:44px; }
#carrier-onboarding .form-actions .next { max-width:75%; }
#carrier-onboarding .flow-status.error { color:#a20727; background:#fff0f3; border-color:#d02a45; }
#carrier-onboarding .onboarding-availability:empty { display:none; }
#carrier-onboarding .signature-preview:empty { display:none; }
body.carrier-application .footer .flinks { gap:4px; }
@media(max-width:680px) {
 #carrier-onboarding .hero>div { width:100%; }
 #carrier-onboarding .mobile-sections select { font-size:16px; }
 #carrier-onboarding .sign-box .btn { max-width:100%; }
 #carrier-onboarding .panel-bottom { line-height:1.6; }
 body.carrier-application .footer h4 { margin-bottom:10px; }
 body.carrier-application .footer .flinks { gap:2px; }
 body.carrier-application .footer .flinks a { padding-block:5px; min-height:36px; }
}
