.s8lar-hero {
  --s8lar-accent: #ddfa71;
  position: relative; isolation: isolate; overflow: hidden;
  width: 100%; min-height: 100vh; min-height: 100svh;
  box-sizing: border-box; display: grid; place-items: center;
  background: #050605; color: #fff;
  padding: clamp(4rem, 12vh, 8rem) 1.5rem;
  font-family: system-ui, sans-serif;
}
.s8lar-hero *, .s8lar-hero *::before, .s8lar-hero *::after { box-sizing: border-box; }
.s8lar-hero__canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
.s8lar-hero::after {
  content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: radial-gradient(ellipse at center, rgba(0,0,0,.91) 0%, rgba(0,0,0,.72) 30%, rgba(0,0,0,.08) 75%);
}
.s8lar-hero__content { position: relative; z-index: 2; text-align: center; max-width: 48rem; width: 100%; }
.s8lar-hero__eyebrow { letter-spacing: .25em; font-size: .75rem; font-weight: 700; color: var(--s8lar-accent); }
.s8lar-hero h1 { color: #fff; font-size: clamp(3rem, 8vw, 6.5rem); letter-spacing: -.065em; line-height: 1.04; margin: 1.25rem 0; overflow-wrap: anywhere; }
.s8lar-hero__description { color: #f0f0ee; font-size: clamp(1rem, 2vw, 1.2rem); line-height: 1.65; max-width: 32rem; margin: 0 auto 2rem; }
.s8lar-hero__cta { display: inline-flex; align-items: center; gap: 2rem; min-height: 48px; padding: 1rem 1.5rem; border-radius: 999px; background: var(--s8lar-accent); color: #111; text-decoration: none; font-weight: 700; }
.s8lar-hero__cta:hover { background: #efffb1; color: #111; }
.s8lar-hero__motion { display: block; margin: 1.5rem auto 0; border: 1px solid #aaa; border-radius: 999px; padding: .6rem 1rem; min-height: 44px; background: #111; color: #fff; cursor: pointer; font: inherit; font-size: .8rem; }
.s8lar-hero__motion[hidden] { display: none; }
.s8lar-hero a:focus-visible, .s8lar-hero button:focus-visible { outline: 3px solid white; outline-offset: 5px; }
@media (forced-colors: active) { .s8lar-hero__canvas, .s8lar-hero::after { display: none; } .s8lar-hero__cta { border: 1px solid ButtonText; } }
