@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root {
    --navy: #102b4e;
    --navy-deep: #071c35;
    --teal: #0d8877;
    --teal-dark: #08695d;
    --mint: #eaf7f3;
    --blue-soft: #edf3fb;
    --sand: #fff8ec;
    --paper: #ffffff;
    --ink: #172433;
    --muted: #607080;
    --line: #dbe4e8;
    --success: #167967;
    --shadow: 0 18px 50px rgba(16, 43, 78, .09);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; color: var(--ink); background: #f7faf9; font-family: 'DM Sans', Arial, sans-serif; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: 'Manrope', Arial, sans-serif; color: var(--navy); }
.container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.eyebrow { margin-bottom: 14px; color: var(--teal-dark); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.eyebrow.light { color: #8fe3d5; }
code { padding: 2px 5px; border-radius: 4px; color: var(--navy); background: #edf2f5; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .9em; }

@media (max-width: 640px) {
    .container { width: min(100% - 28px, 1160px); }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
