:root{--red:#b72a35;--navy:#0a1f66;--grey:#5f5f5f;--bg:#fff;--ink:#1f1f23;--muted:#5f5f5f;--rule:#e2e2e6;--tint:#f6f6f8}
@media (prefers-color-scheme:dark){:root{--red:#e0707a;--navy:#8fa6ff;--grey:#b5b5bd;--bg:#121216;--ink:#ececf0;--muted:#a8a8b2;--rule:#2e2e36;--tint:#1a1a20}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Futura,"Century Gothic","Avenir Next",Avenir,"Trebuchet MS",system-ui,sans-serif;font-size:clamp(1.02rem,.98rem + .2vw,1.15rem);line-height:1.65;-webkit-font-smoothing:antialiased}
.wrap{max-width:62rem;margin:0 auto;padding:0 1.25rem}
a{color:var(--navy);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px}
a:focus-visible{outline:2px solid var(--navy);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--bg);padding:.4rem .7rem;z-index:9}
header.site{border-bottom:1px solid var(--rule)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 2rem;padding-top:1.1rem;padding-bottom:1.1rem}
.brand img{display:block;height:4.6rem;width:auto}
@media (prefers-color-scheme:dark){.brand img{background:#fff;padding:.25rem .5rem;border-radius:4px}}
nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.6rem}
nav a{color:var(--ink);font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;padding:.2rem 0;border-bottom:2px solid transparent}
nav a:hover{text-decoration:none;border-bottom-color:var(--red)}
nav a[aria-current=page]{border-bottom-color:var(--red)}
main{padding:3.5rem 0 4rem}
h1,h2,h3,h4{line-height:1.2;margin:0 0 1rem;font-weight:500}
h1{font-size:clamp(2rem,1.5rem + 2.2vw,3.1rem);color:var(--red)}
h2{font-size:clamp(1.5rem,1.2rem + 1.1vw,2rem);color:var(--navy)}
h3{font-size:1.25rem;color:var(--grey)}
p{margin:0 0 1.15em}
.narrow{max-width:44rem}
.lede{font-size:1.25em;line-height:1.5}
.btn{display:inline-block;margin-top:.5rem;padding:.65rem 1.4rem;background:var(--navy);color:#fff;border-radius:3px;letter-spacing:.05em}
.btn:hover{text-decoration:none;opacity:.9}
@media (prefers-color-scheme:dark){.btn{background:var(--navy);color:#10131f}}
.panel{background:var(--tint);border-radius:6px;padding:2rem 1.75rem;margin:2.5rem 0}
.panel ul{margin:0;padding-left:1.2rem}.panel li{margin-bottom:.8rem}
blockquote{margin:3rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--rule)}
blockquote p{font-size:1.5em;line-height:1.35;color:var(--navy);margin-bottom:.4rem}
blockquote footer{color:var(--muted);font-size:.95rem}
.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,18rem));gap:2rem;margin-top:1.5rem}
.team figure{margin:0}.team img{display:block;width:100%;height:auto;border-radius:4px}
.team figcaption{margin-top:.7rem;font-size:1.05rem}
.qa h3{color:var(--navy);margin-top:2.25rem}
.qa p{max-width:46rem}
hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}
.res h3{margin-top:2rem}
.res li{margin-bottom:1rem}
.res ul{list-style:none;padding:0;margin:0;max-width:46rem}
footer.site{border-top:1px solid var(--rule);color:var(--muted);font-size:.92rem;padding:1.75rem 0 2.25rem}
footer.site .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem}
footer.site p{margin:0}
