/* Preserve the existing video, NV mask, tracing contour, rain and portal scroll.
   Only the foreground text and its contrast layer move away from the centre. */
.home-page .hero { justify-content:flex-end; padding:120px 0 62px; }
.home-page .hero__in { text-align:left; }
.home-page .hero__in::before {
  left:-9%; top:-22%; width:min(750px,80vw); height:650px; transform:none;
  background:radial-gradient(ellipse closest-side at 38% 54%,#030609e6 10%,#03060980 55%,transparent 100%);
}
.home-page .hero h1 { max-width:620px; font-size:clamp(2.9rem,4.7vw,4.6rem); line-height:.99; letter-spacing:-.035em; }
.home-page .hero .line2 { color:var(--text); -webkit-text-stroke:0; }
.home-page .hero .typer { border:0; padding:0; animation:none; color:var(--text); -webkit-text-fill-color:currentColor; -webkit-text-stroke:0; }
.home-page .hero__sub { max-width:36ch; margin:20px 0 26px; font-size:1.03rem; font-weight:400; }
.home-page .hero__actions { justify-content:flex-start; }
.home-page .hero__kicker { display:none; }
.home-page .hero__status { margin-top:18px; }
.home-page .hero .scrollcue { display:none; }
.home-page .hero .btn--pulse { animation:none; }
.home-page .hero .btn--pulse::after { display:none; }
.home-page .hero .f3 { top:49%; left:8%; }
@media(max-width:850px) {
  .home-page .hero { padding-bottom:48px; }
  .home-page .hero h1 { font-size:clamp(2.5rem,6.2vw,4rem); }
}
@media(max-width:600px) {
  .home-page .stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-page .stat__l { overflow-wrap:anywhere; hyphens:auto; }
  .home-page .hero { min-height:100svh; padding:100px 0 38px; }
  .home-page .hero h1 { font-size:clamp(2.1rem,9.1vw,3.5rem); }
  .home-page .hero__sub { font-size:.94rem; max-width:33ch; margin:18px 0 22px; }
  .home-page .hero__in::before { left:-12%; top:0; width:110%; height:480px; }
  .home-page .hero__actions { gap:12px; }
  .home-page .hero__actions .btn { padding:12px 17px; font-size:.78rem; }
}
