:root { --navy:#071a2b; --ink:#102132; --muted:#526575; --yellow:#f5b800; --line:#dbe3e9; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#f5f7f8; font:1rem/1.75 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; text-underline-offset:4px; overflow-wrap:anywhere; }
a:focus-visible,summary:focus-visible { outline:3px solid #a77800; outline-offset:5px; }
.wrap { width:min(1180px,calc(100% - 40px)); margin:auto; }
header { background:white; border-bottom:1px solid var(--line); }
header .wrap { min-height:82px; display:flex; justify-content:space-between; align-items:center; gap:24px; padding-top:14px; padding-bottom:14px; }
.brand { display:inline-flex; align-items:center; gap:12px; min-width:0; text-decoration:none; }
.brandmark { display:block; width:68px; height:48px; flex:0 0 68px; object-fit:contain; }
.brandname { color:var(--navy); font-size:1.125rem; font-weight:750; letter-spacing:-.025em; line-height:1.25; min-width:0; overflow-wrap:anywhere; text-wrap:balance; }
.back-link { display:inline-flex; align-items:center; min-height:44px; font-size:.875rem; font-weight:700; }
main { max-width:800px; margin:60px auto 80px; padding:0 20px; }
.eyebrow { color:#796020; font-size:.8125rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
h1 { color:var(--navy); font-size:clamp(2.5rem,6vw,3.7rem); line-height:1.1; letter-spacing:-.04em; margin:12px 0 18px; }
h2 { font-size:1.35rem; line-height:1.4; margin:0 0 14px; color:var(--navy); }
p { margin:0 0 18px; }
.updated { color:var(--muted); font-size:.875rem; }
.intro { color:var(--muted); font-size:1.125rem; }
.notice { margin:28px 0; padding:22px 24px; border-left:4px solid var(--yellow); background:white; }
.notice p:last-child { margin:0; }
.toc { margin:28px 0 40px; padding:22px 24px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.toc strong { display:block; margin-bottom:10px; }
.toc ul { display:grid; grid-template-columns:1fr 1fr; gap:4px 25px; list-style:none; padding:0; margin:0; }
.toc a { display:block; padding:7px 0; font-size:.875rem; }
section { padding:28px 0; border-bottom:1px solid var(--line); scroll-margin-top:24px; }
section ul { margin:0 0 18px; padding-left:24px; }
section li { margin-bottom:8px; }
address { font-style:normal; }
.provider { padding:18px 0; border-top:1px solid var(--line); }
.provider:first-of-type { margin-top:20px; }
.provider h3 { margin:0 0 10px; font-size:1rem; }
.provider p:last-child { margin-bottom:0; }
footer { background:#041320; padding:35px 0; color:#b8cad8; font-size:.875rem; }
.footer-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin-bottom:14px; }
.footer-links a { display:inline-flex; align-items:center; min-height:44px; }
footer p { margin-bottom:0; }
.skip-link { position:fixed; top:12px; left:12px; z-index:10; background:var(--yellow); padding:12px 20px; transform:translateY(-160%); }
.skip-link:focus { transform:translateY(0); }
@media(max-width:600px) { header .wrap { flex-wrap:wrap; gap:12px; } .brand { gap:10px; } .brandmark { width:56px; height:40px; flex-basis:56px; } .brandname { font-size:1rem; } .wrap { width:calc(100% - 28px); } main { margin-top:38px; padding:0 18px; } .toc ul { grid-template-columns:1fr; } .notice,.toc { padding:18px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print { header,.toc,footer,.skip-link { display:none; } body { background:white; color:black; } main { max-width:none; margin:0; } section { break-inside:avoid; } a { text-decoration:none; } }
