/* Shared accessibility foundation. No opt-in widget is needed. */
:root { --muted:#505b66; }
.hero .eyebrow, .page-intro .eyebrow, .workspace-dialog .eyebrow,
.brand small, .wordmark small, .admin-wordmark small, .radar-head,
.property-body small, .mini-label, .object-brand small, .object-kicker,
.object-section-label, .kicker, .admin-title p, .request-grid>div>span,
.source-overview span, .section-heading span, .monitor-main small { color:#775b32; }
:focus-visible { outline:3px solid #1768b4 !important; outline-offset:4px !important; box-shadow:0 0 0 6px #fff !important; }
.ap-skip { position:fixed; inset-block-start:8px; inset-inline-start:12px; transform:translateY(-180%); z-index:10000; padding:12px 20px; background:#fff; color:#102744; border:2px solid #102744; border-radius:6px; font:700 1rem/1.5 Arial,sans-serif; }
.ap-skip:focus { transform:none; }
.ap-access-footer { padding:18px 24px; background:#102744; color:white; text-align:center; font:1rem/1.5 Arial,sans-serif; }
.ap-access-footer a { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.site-footer-accessibility { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.ap-statement { max-width:800px; padding:32px 24px 64px; margin:auto; font:1.125rem/1.8 Arial,sans-serif; color:#102744; overflow-wrap:anywhere; }
.ap-statement h1 { font-size:2rem; line-height:1.3; } .ap-statement h2 { font-size:1.4rem; }
.ap-statement a { color:#174f86; text-decoration:underline; }
.ap-statement nav { display:flex; flex-wrap:wrap; gap:20px; }
button, input, select, textarea { scroll-margin-block:110px; }
main, h1, h2, [id] { scroll-margin-block-start:110px; }
input, select, textarea { max-width:100%; }
input:focus-visible, select:focus-visible, textarea:focus-visible { border-color:#1768b4 !important; }
[aria-invalid="true"] { border-color:#9b1c1c !important; box-shadow:0 0 0 2px rgba(155,28,28,.2) !important; }
.screen[aria-hidden="true"] { display:none !important; }
.page-intro h1, .property-head h1 { font-size:clamp(42px,4vw,58px); line-height:1.03; letter-spacing:-.045em; margin:0; font-weight:720; color:var(--navy); }
.checkout-form>h1 { font-size:clamp(34px,4vw,46px); color:var(--navy); margin:0 0 25px; }
.account-main>h1 { font-size:clamp(34px,4vw,50px); color:var(--navy); margin:0; }
.report-hero h1 { font-size:clamp(32px,4vw,42px); line-height:1.08; margin:7px 0 10px; }
.object-language select { min-width:60px; min-height:36px; }
@media (max-width:600px) {
 .site-header { height:auto !important; min-height:82px; flex-wrap:wrap; gap:10px !important; padding:12px 16px !important; }
 .site-header nav { flex-wrap:wrap; gap:12px; }
 .header-actions { flex-wrap:wrap; }
 footer { flex-wrap:wrap; gap:16px; }
 .hero-actions, .trust-row { flex-wrap:wrap; }
 .workspace-dialog { max-height:calc(100dvh - 40px); }
}
@media (prefers-reduced-motion:reduce) {
 *, *::before, *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
@media (forced-colors:active) {
 button, input, select, textarea { border:1px solid ButtonText !important; }
 :focus-visible { outline:3px solid Highlight !important; box-shadow:none !important; }
}
