* { box-sizing: border-box; } html { min-width: 0; background: var(--canvas); color: var(--text); font-family: var(--sans); font-size: 100%; line-height: 1.55; scroll-behavior: auto; text-size-adjust: 100%; } body { min-width: 0; min-height: 100vh; margin: 0; overflow-wrap: anywhere; background: var(--canvas); } button, input, textarea, select { font: inherit; } a { color: var(--cyan); overflow-wrap: anywhere; text-decoration-color: color-mix(in srgb, currentcolor 55%, transparent); text-underline-offset: 0.18em; } a:hover { color: var(--text); text-decoration-color: currentcolor; } a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, [tabindex]:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; } ::selection { background: var(--amber); color: #14100a; } h1, h2, h3, p, dl, ul, ol, figure { margin-block: 0; } h1, h2, h3 { color: var(--text); font-weight: 680; letter-spacing: -0.025em; line-height: 1.08; text-wrap: balance; } p, li, dd, dt, a { max-inline-size: 72ch; } svg, img, video, canvas { display: block; max-inline-size: 100%; } .skip-link { position: fixed; z-index: 10; inset: var(--space-2) auto auto var(--space-2); min-block-size: 44px; padding: var(--space-1) var(--space-2); transform: translateY(-160%); background: var(--amber); color: #171006; font-weight: 700; transition: transform var(--transition); } .skip-link:focus { transform: translateY(0); } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.001s !important; animation-duration: 0.001s !important; animation-iteration-count: 1 !important; } }