#hero{background:var(--bg);min-height:100vh;transform:translateY(var(--hero-y,0));--mx:50%;--my:50%;align-items:center;transition:transform .1s linear;display:flex;position:relative;overflow:hidden}#hero:before{content:"";-webkit-mask-image:radial-gradient(380px circle at var(--mx) var(--my), black 0%, #0006 30%, transparent 70%);mask-image:radial-gradient(380px circle at var(--mx) var(--my), black 0%, #0006 30%, transparent 70%);-webkit-mask-image:radial-gradient(380px circle at var(--mx) var(--my), black 0%, #0006 30%, transparent 70%);z-index:1;pointer-events:none;opacity:.6;background:linear-gradient(#ffffff05 1px,#0000 1px) 0 0/40px 40px,linear-gradient(90deg,#ffffff05 1px,#0000 1px) 0 0/40px 40px;transition:opacity .4s;position:absolute;inset:0}#hero-canvas{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-vignette{background:radial-gradient(ellipse at center, transparent 30%, var(--bg) 100%);pointer-events:none;z-index:1;position:absolute;inset:0}.hero-bloom{pointer-events:none;z-index:1;background:radial-gradient(circle 420px at var(--mx,50%) var(--my,50%), #ff1a1a2e 0%, #ff1a1a0f 40%, transparent 70%);opacity:0;mix-blend-mode:screen;transition:opacity .4s;position:absolute;inset:0}#hero:hover .hero-bloom{opacity:1}.hero-scanlines{pointer-events:none;z-index:2;opacity:.4;mix-blend-mode:multiply;background:linear-gradient(#0000 50%,#00000026 50%) 0 0/100% 4px;position:absolute;inset:0}.hero-content{z-index:4;max-width:720px;padding:120px 0 80px;position:relative}.hero-content>*{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(30px)}.hero-content.in>h1{opacity:1;transition-delay:.1s;transform:translateY(0)}.hero-content.in>.sub{opacity:1;transition-delay:.8s;transform:translateY(0)}.hero-content.in>.hero-actions{opacity:1;transition-delay:1.1s;transform:translateY(0)}.hero-content h1{letter-spacing:-.035em;color:var(--text);margin-bottom:28px;font-size:clamp(2.6rem,6.4vw,4.8rem);font-weight:700;line-height:1.05}.hero-content h1 .dim{color:var(--text-mid)}.hero-content .sub{color:var(--text-mid);max-width:620px;margin-bottom:36px;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}@media (max-width:768px){.hero-content h1{font-size:clamp(2.2rem,9vw,3.2rem)}.hero-content{padding:100px 0 60px}}
