* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--beer-canvas); color: var(--beer-ink); font: 15px/1.55 var(--beer-font); -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }
button:focus-visible, a:focus-visible, select:focus-visible, input:focus-visible { outline: 3px solid var(--beer-amber-500); outline-offset: 3px; }
button:disabled { opacity: .46; cursor: not-allowed; }
img { max-width: 100%; }
svg.icon { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.75; flex: 0 0 auto; }
[hidden] { display: none !important; }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.16; }
h1, h2 { font-family: var(--beer-display); letter-spacing: -.025em; }
h1 { font-size: clamp(28px, 3.2vw, 42px); margin-bottom: 8px; }
h2 { font-size: clamp(20px, 2.4vw, 27px); margin-bottom: 12px; }
h3 { font-size: 17px; margin-bottom: 8px; }
p { margin-bottom: 12px; }
::selection { background: #f5d790; color: var(--beer-pine-900); }
