:root {
  color-scheme: light;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #202936;
  background: #f5f7fa;
  line-height: 1.65;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-size: 1rem;
}

.container {
  width: min(100% - 2rem, 48rem);
  margin-inline: auto;
}

.site-header {
  padding: 3rem 0 2.5rem;
  background: #e9f0f8;
  border-bottom: 1px solid #d4deea;
}

.eyebrow {
  margin: 0 0 .5rem;
  color: #405b78;
  font-size: .875rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

h1, h2 { line-height: 1.2; }
h1 { margin: 0; font-size: clamp(2rem, 7vw, 3rem); }
h2 { margin: 0 0 .75rem; font-size: 1.35rem; }

.lede {
  max-width: 40rem;
  margin: .75rem 0 0;
  color: #405064;
  font-size: 1.125rem;
}

main { padding-block: 2rem; }
section { margin-bottom: 2rem; }
p { margin: 0 0 1rem; }
ol { padding-left: 1.5rem; }
li { padding-left: .25rem; margin-bottom: .5rem; }

a { color: #0758a5; text-underline-offset: .18em; }
a:hover { color: #063e75; }
a:focus-visible { outline: 3px solid #e59c18; outline-offset: 3px; }

code {
  padding: .1rem .3rem;
  background: #e9edf2;
  border-radius: .2rem;
  font-size: .95em;
}

.updated { color: #536172; font-size: .95rem; }
.page-link { padding-top: .5rem; font-weight: 700; }
footer { padding-block: 1rem 2rem; color: #536172; font-size: .9rem; }
footer p { border-top: 1px solid #d4deea; padding-top: 1rem; }

@media (prefers-reduced-motion: no-preference) {
  a { transition: color 120ms ease-in-out; }
}
