*, *::before, *::after { box-sizing: border-box; }
html { text-size-adjust: 100%; -webkit-text-size-adjust: 100%; scroll-padding-top: 24px; }
body { margin: 0; font-family: "Space Grotesk", "Segoe UI", sans-serif; line-height: 1.55; color: #08111f; background: #f5f7f3; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, p { margin: 0; }
button, input { font: inherit; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }
img, svg { display: block; max-width: 100%; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #246a55; outline-offset: 4px; }
.landing-cta :focus-visible { outline-color: #b9f2db; }
button, .landing-button { min-height: 44px; }
.skip-link { position: absolute; left: 16px; top: -100px; z-index: 100; padding: 12px 20px; background: #08111f; color: #fff; }
.skip-link:focus { top: 12px; }
.noscript-note { padding: 20px; text-align: center; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
