/* Public brand and native accessibility. No change to console/admin styles. */
:root{--navy:#102a43;--navy-2:#183b56;--teal:#1955a5;--teal-dark:#12417f;--mint:#eaf2ff;--blue-pale:#eaf2ff;--text:#3e5265;--muted:#536678;--line:#ced9e3;--surface-tint:#eff5fc;--success:#116747}
.public-site,.public-service{font-size:1rem}
.public-site .button-primary,.public-service .button-primary{background:#1955a5;color:#fff;box-shadow:0 4px 12px #1955a51c}
.public-site .button-primary:hover,.public-service .button-primary:hover{background:#12417f}
.public-site .brand-mark,.public-service .svc-brand>span{background:#1955a5;color:#fff}
.public-site .brand-light .brand-mark{background:#fff;color:#1955a5}
.public-site .brand-light .brand-copy small{color:#dce8f4}
.public-site .hero-section{background:linear-gradient(135deg,#fff 0%,#f1f6ff 100%)}
.public-site .page-hero,.public-site .guide-hero{background:linear-gradient(130deg,#f6f9ff,#eaf2fc)}
.public-site .hero-copy h1>span{color:#1955a5}
.public-site .visual-orbit{border-color:#bfd1ed}
.public-site .visual-card-icon,.public-site .visual-check,.public-site .quick-start-mark{background:#e8f5ee;color:#116747}
.public-site .guide-card-body h2{font-size:1.13rem;margin:0 0 10px;line-height:1.45}
.public-site :is(.hero-search,.filter-form,.field) :is(input,textarea)::placeholder,.public-service input::placeholder{color:#536678;opacity:1}
.public-site :is(input:not([type=checkbox]):not([type=radio]),textarea,select),.public-service :is(input:not([type=checkbox]):not([type=radio]),textarea,select){border-color:#7c8e9f}
.public-site .hero-search input{border:0}
.public-site .hero-search:focus-within{outline:3px solid #1955a5;outline-offset:3px}
.public-site :is(input,textarea,select,button,a,summary):focus-visible,.public-service :is(input,textarea,select,button,a,summary):focus-visible{outline:3px solid #1955a5;outline-offset:3px;box-shadow:0 0 0 6px #fff}
.public-site .site-footer :focus-visible{outline-color:#fff;box-shadow:0 0 0 6px #102a43}
.public-site :is(.prose,.step-body,.step-detail,.notice p,.svc-muted) a{text-decoration:underline;text-underline-offset:.18em}
.public-site :is(.wizard-option,.checklist-item):focus-within{outline:3px solid #1955a5;outline-offset:3px}
.public-site input[type=checkbox],.public-site input[type=radio],.public-service input[type=checkbox],.public-service input[type=radio]{accent-color:#1955a5}
.public-site #svc-chat-launch{background:#1955a5;color:#fff}
.public-site #svc-chat-close{min-width:44px;min-height:44px}
.public-site #svc-chat{max-height:calc(100dvh - 32px);overflow:auto}
.public-site :is(.progress-copy,#wizard-step-label){color:var(--text)}
.public-site [data-progress-panel] .progress-copy{scroll-margin-block:110px}
.public-site :is(a,button,summary,input,textarea,select,[tabindex]),.public-service :is(a,button,summary,input,textarea,select,[tabindex]){scroll-margin-block:110px 100px}
.public-site .source-item>span,.public-site .official-link>span{min-width:0;overflow-wrap:anywhere}
.public-site .site-footer .footer-bottom{padding-right:var(--footer-access-clearance,260px)}
.public-service{min-height:100svh}
.access-launch{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:240;display:flex;align-items:center;justify-content:center;gap:8px;min-width:48px;min-height:48px;padding:10px 14px;border:2px solid #fff;border-radius:999px;background:#102a43;color:#fff!important;box-shadow:0 3px 15px #102a4338;font:700 .875rem/1.3 Arial,sans-serif;text-decoration:none!important;max-width:calc(100vw - 36px)}
.access-launch svg{width:26px;height:26px;flex:none;stroke:currentColor;stroke-width:2;fill:none}
.access-launch:hover{background:#1955a5}
#access-dialog{width:min(32rem,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:24px;border:1px solid #7c8e9f;border-radius:20px;background:#fff;color:#102a43;overflow:auto;overscroll-behavior:contain;box-shadow:0 20px 80px #102a4340;font:1rem/1.65 Arial,sans-serif;text-align:start}
#access-dialog::backdrop{background:#102a4373}
.access-dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
#access-dialog h2{font-size:1.45rem;line-height:1.4;margin:0}
#access-close{flex:none;min-width:44px;min-height:44px;display:grid;place-items:center;border:1px solid #7c8e9f;border-radius:10px;background:#fff;color:#102a43;font-size:1.6rem;line-height:1}
#access-dialog p{color:#3e5265;line-height:1.65}
#access-form fieldset{min-width:0;margin:18px 0;padding:0;border:0}
#access-form legend{font-weight:700;margin-bottom:8px}
.access-sizes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.access-sizes label{display:flex;align-items:center;justify-content:center;gap:5px;min-height:48px;padding:6px;border:1px solid #7c8e9f;border-radius:9px;cursor:pointer;font-size:.85rem}
.access-sizes label:has(input:checked){background:#eaf2ff;border-color:#1955a5}
#access-dialog input{accent-color:#1955a5;width:18px;height:18px;flex:none}
.access-option{display:flex;align-items:center;gap:12px;min-height:48px;border-bottom:1px solid #ced9e3;cursor:pointer}
#access-reset{margin-top:20px;min-height:44px}
#access-dialog .access-hint{font-size:.875rem;margin-top:20px}
#access-status{min-height:1.65em;margin-bottom:12px}
#access-dialog .access-statement{display:inline-block;min-height:44px;padding-block:9px;color:#12417f;text-decoration:underline;text-underline-offset:3px}
html.access-links :is(.public-site,.public-service) a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:.18em!important}
html.access-motion *,html.access-motion *::before,html.access-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.access-contrast :is(body,.site-main,.site-header,.site-footer,.svc-top,.svc-public,.section,.page-hero,.guide-hero,.hero-section,.quick-start-card,.visual-card,.category-card,.guide-card,.sidebar-card,.notice,.progress-panel,.wizard-card,.wizard-option,.checklist-item,.form-card,.empty-state,.source-item,.official-link,.svc-card,.svc-chat,.svc-consent,.svc-message,#access-dialog){background:#fff!important;color:#111!important;border-color:#333!important;box-shadow:none!important}
html.access-contrast body :is(p,small,h1,h2,h3,h4,span,strong,b,li,legend,label){color:inherit!important}
html.access-contrast body :is(a,.text-button,.footer-privacy-choice){color:#003b86!important;text-decoration:underline!important}
html.access-contrast body :is(input,textarea,select,button,summary){background:#fff!important;color:#111!important;border:1px solid #333!important}
html.access-contrast body :is(.button-primary,#svc-chat-launch,.access-launch){background:#111!important;color:#fff!important;border:2px solid #fff!important;outline:1px solid #111}
html.access-contrast body :is(.button-primary,.access-launch) span{color:inherit!important}
html.access-contrast body input::placeholder,html.access-contrast body textarea::placeholder{color:#444!important}
html.access-contrast :focus-visible{outline:3px solid #003b86!important;box-shadow:0 0 0 6px #fff!important}
html[data-access-size="150"] .header-inner,html[data-access-size="200"] .header-inner{flex-wrap:wrap;padding-block:12px}
html[data-access-size="150"] .header-inner .desktop-nav,html[data-access-size="200"] .header-inner .desktop-nav{display:none}
html[data-access-size="150"] .mobile-menu-toggle,html[data-access-size="200"] .mobile-menu-toggle{display:grid}
html[data-access-size="200"] .site-header{position:relative}
html[data-access-size="200"] :is(.hero-grid,.guide-layout,.guide-hero-grid,.trust-grid,.wizard-options){grid-template-columns:minmax(0,1fr)}
html[data-access-size="200"] :is(.guide-grid,.category-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:880px){.access-launch{padding:10px;width:48px;height:48px}.access-launch>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.public-site .site-footer .footer-bottom{padding-right:0}html[data-access-size="200"] :is(.guide-grid,.category-grid,.footer-top,.how-grid){grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){#access-dialog{padding:18px}.access-sizes{grid-template-columns:repeat(2,minmax(0,1fr))}.public-site .header-inner .brand-copy strong{overflow-wrap:anywhere}html[data-access-size="150"] .header-inner .brand-copy small,html[data-access-size="200"] .header-inner .brand-copy small{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.access-launch,#access-dialog,button,input,textarea,select{border:2px solid ButtonText!important}.access-launch{background:ButtonFace!important;color:ButtonText!important}a{color:LinkText}}
@media print{.access-launch,#access-dialog{display:none!important}}
.public-site .search-suggestions [aria-selected=true]{background:#eaf2ff;outline:2px solid #1955a5;outline-offset:-3px}
.public-site .search-suggestions{max-height:min(22rem,55svh);overflow:auto}

.public-site .how-number{color:#536678}
.public-site #svc-chat-launch{font-size:.9375rem;line-height:1.4;max-width:calc(100vw - 108px);white-space:normal;text-align:start}
.public-site #svc-consent{bottom:calc(88px + env(safe-area-inset-bottom));max-height:calc(100dvh - 112px);overflow:auto}
@media(max-width:880px){.public-site .footer-bottom{padding-block-end:var(--footer-tools-bottom-clearance,110px)}}
.public-site :is(h1,h2,h3,h4,p,a,button,legend,strong,small),.public-service :is(h1,h2,h3,h4,p,a,button,legend,strong,small){overflow-wrap:anywhere}

#access-dialog:not([open]){display:none}
html.access-contrast .footer-bottom{color:#111!important}
