*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--ieq-font-body); color: var(--ieq-text);
       font-size: 17px; line-height: 1.6; background: #fff; }
h1,h2,h3 { font-family: var(--ieq-font-display); font-weight: 800; line-height: 1.1; letter-spacing: -0.02em; }
a { color: inherit; }
.container { max-width: var(--ieq-maxw); margin: 0 auto; padding: 0 24px; }
.section { padding: 96px 0; }
.mono { font-family: var(--ieq-font-mono); }
:focus-visible { outline: 3px solid var(--ieq-cyan); outline-offset: 2px; border-radius: 4px; }
.btn { display:inline-flex; align-items:center; gap:.5rem; padding:.85rem 1.4rem;
       border-radius: 999px; font-weight:600; text-decoration:none; border:1px solid transparent; }
.btn-accent { background: var(--ieq-cyan); color: var(--ieq-surface-dark); }
.btn-ghost { background: transparent; border-color: rgba(255,255,255,.35); color:#fff; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

@font-face { font-family:"Inter"; src:url("../fonts/Inter-Variable.woff2") format("woff2");
             font-weight:100 900; font-display:swap; }
@font-face { font-family:"JetBrains Mono"; src:url("../fonts/JetBrainsMono-Variable.woff2") format("woff2");
             font-weight:100 800; font-display:swap; }
