/* Persistent appearance controls: light is the default; .site-dark is toggled by the header control. */
.theme-toggle{min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--navy);font:inherit;font-size:11px;font-weight:850;cursor:pointer;white-space:nowrap}.theme-toggle span{margin-right:5px;font-size:14px}
body.site-dark{--navy:#e7f2ff;--navy2:#142943;--teal:#79b8ff;--teald:#acd3ff;--mint:#203650;--lime:#b4d4ff;--cream:#0c1724;--white:#1b2c40;--text:#f3f8ff;--muted:#bfd0e2;--line:#3a5a7b;--shadow:0 24px 70px rgba(0,0,0,.34);background:#0c1724;color:var(--text)}
body.site-dark .header,body.site-dark .mobile-nav,body.site-dark .subnav{background:rgba(20,37,57,.98);color:var(--text)}body.site-dark .header summary i{background:var(--text)}body.site-dark .theme-toggle{background:#172b42;color:var(--text);border-color:#5d85ae}body.site-dark .soft,body.site-dark .quote-page{background:#0c1724}body.site-dark .back,body.site-dark .card,body.site-dark .detail-card,body.site-dark .filters,body.site-dark .regions article{background:#1b2c40;color:var(--text);border-color:var(--line)}body.site-dark .card:hover{border-color:#82bbff;box-shadow:0 20px 45px rgba(0,0,0,.3)}body.site-dark .quick,body.site-dark .quick a,body.site-dark .steps,body.site-dark .steps article{border-color:var(--line)}body.site-dark .quick a:hover{background:#1b2c40}body.site-dark .split{background:#203650}body.site-dark .split.reverse{background:#192f49}body.site-dark .split p:not(.eyebrow),body.site-dark .lead,body.site-dark .extra b,body.site-dark .detail-card>p,body.site-dark .detail-card dd,body.site-dark .regions p,body.site-dark .contact-grid>div:first-child>p:not(.eyebrow),body.site-dark .policy p{color:var(--muted)!important}body.site-dark .extra b{background:#1b2c40;border-color:var(--line)}body.site-dark .filters button{color:#d0dff0}body.site-dark .filters button:hover,body.site-dark .filters button.active{background:#356ba2;color:#fff}body.site-dark .subnav a{border-color:var(--line)}body.site-dark .form-grid input,body.site-dark .form-grid select,body.site-dark .form-grid textarea,body.site-dark .upload input{background:#122237;color:var(--text);border-color:#527295}body.site-dark .consent,body.site-dark .upload small{color:var(--muted)}body.site-dark .notice.loading{background:#233d5d;color:#dcecff}body.site-dark .notice.success{background:#164a42;color:#c9f6df}body.site-dark .notice.error{background:#48252b;color:#ffd9dd}body.site-dark .trust-card{background:#1b2c40;color:var(--text)}body.site-dark .trust-card p,body.site-dark .trust-card>a{border-color:var(--line)}body.site-dark .trust-strip{background:#192f49;color:#c6d8eb}body.site-dark .map.big{background:radial-gradient(circle,rgba(121,184,255,.35),#142943)}
body.site-dark .navy,body.site-dark .task-section,body.site-dark .area-band,body.site-dark .not-sure{background:#102642;color:#f3f8ff}body.site-dark .task-section .eyebrow,body.site-dark .area-band .eyebrow,body.site-dark .not-sure .eyebrow{color:#8fc4ff}body.site-dark .task-list{border-color:#355777}body.site-dark .task-list li{border-color:#294864;color:#edf5ff}body.site-dark .task-list span{color:#8fc4ff}body.site-dark .page-hero{background:linear-gradient(135deg,#102642,#1c4a78);color:#f3f8ff}body.site-dark .page-hero>p:not(.eyebrow),body.site-dark .area-band p:not(.eyebrow),body.site-dark .not-sure p:not(.eyebrow){color:#c2d7ed}body.site-dark .footer{background:#081522}
.field-error{display:block;margin-top:7px;padding:9px 11px;border-left:3px solid #c73c47;border-radius:5px;background:#fff0f1;color:#9b1d2a;font-size:11px;font-weight:750;line-height:1.45;text-transform:none}.form-grid input.invalid,.form-grid select.invalid,.form-grid textarea.invalid,.upload input.invalid{border-color:#c73c47!important;background:#fffafa!important;box-shadow:0 0 0 3px rgba(199,60,71,.12)}body.site-dark .field-error{background:#48252b;color:#ffd9dd}body.site-dark .form-grid input.invalid,body.site-dark .form-grid select.invalid,body.site-dark .form-grid textarea.invalid,body.site-dark .upload input.invalid{background:#28171b!important;border-color:#ff7a85!important;box-shadow:0 0 0 3px rgba(255,122,133,.16)}
.footer-contact{display:grid;grid-template-columns:1.25fr auto;align-items:center;gap:28px;margin:0 0 34px;padding:26px 28px;border:1px solid #28405f;border-radius:14px;background:linear-gradient(120deg,#10294d,#0c1f39)}.footer-contact b{display:block;color:#fff;font-size:20px}.footer-contact p{margin:7px 0 0;color:#a8bdd8;font-size:12px;line-height:1.6}.footer-contact-actions{display:flex;flex-wrap:wrap;gap:10px}.footer-contact a{min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #5487c5;border-radius:8px;color:#fff;font-size:11px;font-weight:850}.footer-contact a.primary{border-color:#5b9bf3;background:#4b87dc}.footer-bottom .theme-toggle{min-height:32px;padding:0 9px;border-color:#3b5270;background:transparent;color:#c5d4e6;font-size:10px}body.site-dark .footer-contact{border-color:#355777;background:linear-gradient(120deg,#102642,#0a1b2e)}
.footer-brand .footer-phone{display:block;width:max-content;margin-top:12px;padding-top:12px;border-top:1px solid #28405f;color:#c7e1ff;font-weight:800;letter-spacing:.02em}
/* Shared button motion: polished feedback without distracting movement. */
button,.button,.theme-toggle,.filters button,.footer-contact a{transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}button:not(:disabled):hover,.button:hover,.theme-toggle:hover,.filters button:hover,.footer-contact a:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(8,26,51,.16)}button:not(:disabled):active,.button:active,.theme-toggle:active,.filters button:active,.footer-contact a:active{transform:translateY(0) scale(.98);box-shadow:none}button:disabled{cursor:not-allowed;opacity:.68}@media(prefers-reduced-motion:reduce){button,.button,.theme-toggle,.filters button,.footer-contact a{transition:none!important}button:not(:disabled):hover,.button:hover,.theme-toggle:hover,.filters button:hover,.footer-contact a:hover,button:not(:disabled):active,.button:active,.theme-toggle:active,.filters button:active,.footer-contact a:active{transform:none}}
@media(max-width:650px){.footer-contact{grid-template-columns:1fr;padding:22px}.footer-contact b{font-size:18px}.footer-contact-actions{display:grid;grid-template-columns:1fr 1fr}.footer-contact a{width:100%}}
@media(max-width:590px){.header{gap:10px}.header>.theme-toggle{width:40px;min-width:40px;padding:0;font-size:0}.header>.theme-toggle span{margin:0;font-size:16px}}
