/* Isolated decorative component. Must not replace a marketing template without integrity-safe integration. */
.hl-intro-scene{position:relative;width:min(100%,340px);aspect-ratio:1;overflow:hidden;contain:layout paint;pointer-events:none}
.hl-intro-ring{position:absolute;inset:12%;border:1px solid #e3000f20;border-radius:50%}
.hl-intro-orbit{position:absolute;inset:0;transform-origin:center}
.hl-intro-payload{position:absolute;left:50%;top:50%;width:44%;height:44%;transform:translate(-50%,-50%) translateY(-48%)}
.hl-intro-image{display:block;width:100%;height:100%;object-fit:contain;position:relative;z-index:1}
.hl-intro-smoke{position:absolute;left:46%;top:57%;width:12%;height:12%;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff5e8,#d6d6e180,transparent 75%);opacity:0}
html.motion-ready:not(.motion-no-observer) .hl-orbit-launching .hl-intro-orbit{animation:hl-intro-orbit 4.8s cubic-bezier(.35,.05,.3,1) 1 both}
html.motion-ready:not(.motion-no-observer) .hl-orbit-launching .hl-intro-payload{animation:hl-intro-counter 4.8s cubic-bezier(.35,.05,.3,1) 1 both}
html.motion-ready:not(.motion-no-observer):not(.motion-paused) .hl-orbit-launching .hl-intro-smoke{animation:hl-intro-smoke 2.4s ease-out infinite}
.hl-intro-smoke:nth-of-type(2){animation-delay:-.8s!important}.hl-intro-smoke:nth-of-type(3){animation-delay:-1.6s!important}
.motion-offscreen .hl-intro-orbit,.motion-offscreen .hl-intro-payload,.motion-offscreen .hl-intro-smoke{animation-play-state:paused!important}
@keyframes hl-intro-orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes hl-intro-counter{from{transform:translate(-50%,-50%) translateY(-48%) rotate(0deg)}to{transform:translate(-50%,-50%) translateY(-48%) rotate(-360deg)}}
@keyframes hl-intro-smoke{0%{transform:translate(0,0) scale(.5);opacity:0}20%{opacity:.55}100%{transform:translate(-180%,280%) scale(2.4);opacity:0}}
html:not(.motion-ready) .hl-intro-scene *,html.motion-no-observer .hl-intro-scene *,html.motion-paused .hl-intro-scene *{animation:none!important}
@media(prefers-reduced-motion:reduce){.hl-intro-scene *{animation:none!important}.hl-intro-payload{transform:translate(-50%,-50%)!important}.hl-intro-smoke{display:none}}

/* Integrated homepage isolation: legacy .launch img assigns absolute coordinates
   and pixel dimensions. Keep the image entirely inside its relative payload. */
.hl-intro-scene .hl-intro-image,.launch .hl-intro-scene .hl-intro-image{position:relative;inset:auto;top:auto;right:auto;bottom:auto;left:auto;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;margin:0;object-fit:contain;transform:none}
