* { box-sizing: border-box; }
html { font-size: var(--type-root); }
body { margin: 0; background: var(--color-paper); color: var(--color-text); font-family: var(--font-body); line-height: var(--type-line-copy); }
header, footer { max-width: 76rem; margin-inline: auto; padding: var(--space-6); display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); }
header { border-bottom: var(--control-border-width) solid var(--color-rule); }
.brand { display: flex; }
.brand img { width: 9rem; height: auto; }
nav { display: flex; gap: var(--space-4); }
nav a { color: var(--color-text); text-decoration: none; min-height: var(--control-target-min); display: inline-flex; align-items: center; }
nav a[aria-current] { text-decoration: underline; text-underline-offset: .35em; }
main { max-width: 46rem; margin-inline: auto; padding: var(--space-16) var(--space-6); }
h1 { font-size: var(--type-heading); line-height: var(--type-line-heading); letter-spacing: var(--type-tracking-display); margin: var(--space-4) 0 var(--space-6); }
h2 { font-size: var(--type-card-title); line-height: var(--type-line-body); margin: 0 0 var(--space-3); }
p { margin: 0 0 var(--space-4); }
.updated { font-size: var(--type-body-small); color: var(--color-text-soft); }
.intro { font-size: var(--type-lede); color: var(--color-text-soft); }
section { margin-top: var(--space-10); }
a { color: var(--color-ink); text-underline-offset: .15em; overflow-wrap: anywhere; }
a:hover { color: var(--color-ink-hover); }
a:focus-visible { outline: var(--control-focus-width) solid var(--color-ink); outline-offset: var(--control-focus-offset); }
ul { padding-left: var(--space-6); }
li { margin-block: var(--space-2); }
footer { border-top: var(--control-border-width) solid var(--color-rule); flex-wrap: wrap; font-size: var(--type-body-small); }
.skip { position: absolute; left: var(--space-4); top: var(--space-4); padding: var(--space-3); background: var(--color-paper); transform: translateY(-200%); }
.skip:focus { transform: none; }
@media (max-width: 600px) { html { font-size: var(--type-root-mobile); } main { padding-top: var(--space-10); } }
