* { box-sizing: border-box; }
html, body { min-height: 100%; }
body { margin: 0; font-family: var(--font); color: var(--ink); background: var(--canvas); -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font: inherit; color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: var(--primary); text-decoration: none; }
button { cursor: pointer; }
input, select, textarea { width: 100%; border: 1px solid var(--line); background: var(--surface); border-radius: 12px; outline: none; transition: border-color .18s, box-shadow .18s; }
input, select { height: 48px; padding: 0 14px; }
textarea { padding: 14px; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 4px color-mix(in srgb, var(--primary) 14%, transparent); }
h1, h2, h3, p { margin-top: 0; }
h1 { letter-spacing: -.045em; }
code { padding: 2px 6px; border-radius: 6px; background: var(--surface-soft); }
[hidden] { display: none !important; }
.mobile-only { display: none; }
.muted { color: var(--muted); }
.eyebrow { display: inline-block; margin-bottom: 12px; color: var(--primary); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.spacer { flex: 1; }

@media (max-width: 860px) {
  .mobile-only { display: inline-grid; }
}
