:root{--navy:#0b2545;--blue:#13538a;--accent:#1d7fc4;--bg:#fff;--bg-alt:#f3f6fa;--text:#1b2733;--muted:#53606d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:var(--bg);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:var(--blue)}a:focus-visible,.button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.container{width:min(1080px,100% - 2rem);margin-inline:auto}.header{background:var(--navy);color:#fff}.header-inner{justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex}.brand{font-weight:700}.header nav a{color:#fff;margin-left:1.25rem;text-decoration:none}.header nav a:hover{text-decoration:underline}.header nav a.signin{border:1px solid #ffffffb3;border-radius:6px;padding:.35rem .8rem}.header nav a.signin:hover{background:#ffffff1f;text-decoration:none}.skip-link{color:var(--navy);z-index:100;background:#fff;padding:.5rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{top:.5rem;left:.5rem}.narrow{max-width:40rem}@media (max-width:520px){.header-inner{flex-wrap:wrap}.header nav a{margin-left:0;margin-right:.9rem}}.hero{background:linear-gradient(135deg, var(--navy), var(--blue));color:#fff;padding-block:clamp(3rem,10vw,7rem)}.hero h1{max-width:20ch;margin:0 0 1rem;font-size:clamp(2rem,5vw,3.25rem);line-height:1.15}.lead{max-width:60ch;margin:0 0 2rem;font-size:1.2rem}.button{color:var(--navy);background:#fff;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;display:inline-block}.section{padding-block:clamp(2.5rem,7vw,4.5rem)}.section.alt{background:var(--bg-alt)}.section h2{color:var(--navy);margin:0 0 1.5rem}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.card{background:#fff;border:1px solid #d7dfe8;border-radius:8px;padding:1.25rem}.card h3{color:var(--navy);margin:0 0 .5rem}.card p{color:var(--muted);margin:0}.note{color:var(--muted);font-size:.95rem}.footer{background:var(--navy);color:#cfd9e6;padding-block:1.5rem;font-size:.9rem}
