/* base / reset + tokens (hardcoded, no variables) */
html, body { background-color: #121212; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: #ffffff; font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
::selection { background-color: #f5c518; color: #000000; }

body .wrapper { width: 100%; overflow-x: hidden; }
body .wrapper article { display: block; max-width: 1280px; margin: 0 auto; padding: 0 16px; }

body .wrapper a { color: #5799ef; text-decoration: none; transition: color 0.15s ease; }
body .wrapper a:hover { color: #8bb8f4; }

body .wrapper h1, body .wrapper h2, body .wrapper h3 { margin: 0; font-weight: 600; line-height: 1.15; }

/* shared section title with counter badge */
body .wrapper .section-title { font-size: 22px; font-weight: 600; color: #ffffff; display: flex; align-items: center; gap: 10px; letter-spacing: 0.2px; }
body .wrapper .section-title .count-badge { font-size: 12px; font-weight: 600; color: rgba(255, 255, 255, 0.55); background-color: #1f1f1f; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 20px; padding: 2px 9px; line-height: 1.6; }

@media (min-width: 768px) {
  body .wrapper article { padding: 0 24px; }
  body .wrapper .section-title { font-size: 26px; }
}
body .wrapper .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
