
body{
  font-family:var(--font-ui);
  color:var(--text);
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), transparent 30%),
    var(--grid-glow),
    var(--bg);
  line-height:1.6;
  min-height:100vh;
}
.site-shell{overflow:hidden}
main{display:block}
.container{
  width:min(calc(100% - 2rem), var(--container));
  margin-inline:auto;
}
.section{
  position:relative;
  padding:var(--space-9) 0;
}
.section--tight{padding:var(--space-7) 0}
.section--cta{padding-top:0;padding-bottom:var(--space-9)}
.section-intro{
  max-width:840px;
  margin-bottom:var(--space-7);
}
.section-intro h2{
  font-size:clamp(2rem,4vw,3.5rem);
  line-height:1.05;
  letter-spacing:-.04em;
  margin-bottom:1rem;
}
.section-intro p{
  font-size:1.05rem;
  color:var(--muted);
}
.eyebrow{
  display:inline-flex;
  gap:.6rem;
  align-items:center;
  font-size:.85rem;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--primary);
  margin-bottom:1rem;
}
.eyebrow::before{
  content:"";
  width:2rem;
  height:1px;
  background:currentColor;
}
h1,h2,h3,h4{
  font-family:var(--font-display);
  letter-spacing:-.03em;
  line-height:1.05;
}
h1{
  font-size:clamp(2.8rem, 6vw, 5.8rem);
  margin-bottom:1.2rem;
}
h2{font-size:clamp(2rem,4vw,3.2rem)}
h3{font-size:1.4rem;margin-bottom:.8rem}
p{color:var(--muted)}
.lead{
  font-size:clamp(1.05rem, 2vw, 1.3rem);
  max-width:64ch;
}
.text-link{
  display:inline-flex;
  gap:.5rem;
  align-items:center;
  color:var(--primary);
  font-weight:700;
}
.text-link::after{content:"→"}
.glass-panel{
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:var(--radius-lg);
  backdrop-filter:blur(18px);
}
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.6rem;
  border-radius:999px;
  padding:1rem 1.3rem;
  font-weight:700;
  border:1px solid transparent;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
.button:hover{transform:translateY(-2px)}
.button--primary{
  background:var(--grad-strong);
  color:#07101b;
  box-shadow:0 16px 32px rgba(102,214,255,.28);
}
.button--secondary{
  border-color:var(--line-strong);
  background:rgba(255,255,255,.04);
}
.button--sm{padding:.8rem 1rem;font-size:.95rem}
.panel-label{
  color:var(--primary);
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:700;
  margin-bottom:1.2rem;
}
.pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
}
.pill{
  padding:.7rem 1rem;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  color:var(--text);
  font-size:.95rem;
}
