.hero { position:relative; overflow:hidden; min-height:88vh; display:flex; align-items:center; }
.hero-bg { position:absolute; inset:0; }
.hero-img { width:100%; height:100%; object-fit:cover; opacity:.4; }
.hero-title { text-align: center; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(to bottom, var(--color-surface), rgba(4,6,4,.8) 50%, var(--color-surface)); }
.hero-grid { position:absolute; inset:0; opacity:.08;
  background-image: linear-gradient(rgba(0,255,65,.3) 1px, transparent 1px),
                    linear-gradient(90deg, rgba(0,255,65,.3) 1px, transparent 1px);
  background-size: 40px 40px; }
.hero-content { position:relative; text-align:center; padding-top:8rem; padding-bottom:6rem; }
.hero-title { font-family:var(--font-mono); font-size:clamp(2.5rem,7vw,5rem); font-weight:900; line-height:1.1; margin-bottom:1.5rem; }
.hero-t1 { color:var(--color-fg); text-shadow:0 0 20px rgba(0,255,65,.4); }
.hero-t2 { color:var(--color-secondary); text-shadow:0 0 24px rgba(255,102,0,.65); }
.hero-desc { color:rgba(168,230,163,.55); font-size:.9rem; max-width:52ch; margin:0 auto 2.5rem; line-height:1.7; }
.hero-cta { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.prose p { color:rgba(168,230,163,.75); line-height:1.8; margin-bottom:1.2rem; font-size:.88rem; }
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
@media(max-width:900px){ .stats-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:600px){ .stats-grid { grid-template-columns:1fr 1fr; } }