@import url("./tokens.css");
@import url("./components.css");
@import url("./responsive.css");

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--white); color: var(--ink); font-family: var(--font-body); -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button, summary, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
svg { display: block; }
::selection { background: var(--blue); color: white; }
.container { width: min(calc(100% - 40px), 1200px); margin-inline: auto; }
.section-pad { padding-block: 88px; }
.section-label { margin: 0 0 12px; color: var(--blue); font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.section-heading h2 { margin: 0; font-size: clamp(30px, 3.1vw, 44px); line-height: 1.2; letter-spacing: -.04em; }
.section-heading > p:last-child { max-width: 650px; margin: 16px auto 0; color: var(--muted); line-height: 1.8; }
.section-heading.centered { text-align: center; }
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }
.reveal.visible { opacity: 1; transform: none; }
.delay-one { transition-delay: .08s; }.delay-two { transition-delay: .16s; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .reveal { opacity: 1; transform: none; transition: none; } }
