* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font-main);
  background:
    radial-gradient(circle at top left, rgba(101, 240, 196, 0.12), transparent 32rem),
    radial-gradient(circle at top right, rgba(126, 167, 255, 0.12), transparent 34rem),
    linear-gradient(180deg, var(--color-bg), #05070c 70%);
  color: var(--color-text);
  min-height: 100vh;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font: inherit; }
::selection { background: rgba(101,240,196,0.3); }

.page-shell { min-height: 100vh; }
.container { width: min(var(--max-width), calc(100% - 40px)); margin: 0 auto; }
.section { margin-top: var(--section-gap); }
.section:first-of-type { margin-top: 0; }
.eyebrow {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  color: var(--color-accent);
  font-size: 0.78rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 700;
}
.eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--color-accent); opacity: 0.8; }
.section-title { font-size: clamp(2rem, 5vw, 4.6rem); line-height: 0.95; margin: 14px 0 18px; letter-spacing: -0.06em; }
.section-lead { color: var(--color-muted); font-size: clamp(1rem, 1.4vw, 1.18rem); line-height: 1.75; max-width: 760px; }
.muted { color: var(--color-muted); }
.small { font-size: 0.9rem; color: var(--color-muted); }
