/* Shared design system */
*{box-sizing:border-box;margin:0}
body{font:17px/1.65 var(--b);color:var(--fg);background:#fff;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--h);font-weight:400;line-height:1.12;letter-spacing:-.015em;color:var(--ink)}
p{max-width:62ch;margin-top:.9rem}
a{color:inherit}
.w{width:min(1240px,100% - 3rem);margin:auto}
.bar{background:var(--ink);color:#fff;position:sticky;top:0;z-index:9;border-bottom:1px solid #ffffff1f}
.bar .w{display:flex;align-items:center;justify-content:space-between;min-height:70px}
.logo{font:400 1.45rem/1 var(--h);text-decoration:none}
.logo b{font-weight:600}
nav{display:flex;gap:2rem;align-items:center}
nav a{text-decoration:none;font-size:.95rem;opacity:.82}
nav a:hover,nav a[aria-current]{opacity:1}
nav a[aria-current]{box-shadow:0 2px 0 #a9cdf2;padding-bottom:4px}
.bar .btn:hover{background:#fff;color:var(--ink);border-color:#fff}
.tg{display:none;background:none;border:1px solid #ffffff77;color:#fff;padding:.45rem .9rem;font:inherit}
@keyframes in{from{opacity:0;transform:translateY(14px)}}
footer{background:#06142a;color:#9db3cf;padding:3.4rem 0 1.8rem;font-size:.95rem}
footer .g{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:3rem}
footer a{display:block;text-decoration:none;margin-top:.45rem}
footer a:hover{color:#fff}
footer .logo{color:#fff;margin:0}
.copy{margin-top:2.6rem;padding-top:1.3rem;border-top:1px solid #ffffff22;font-size:.88rem}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*{animation:none!important}}
