/* Fixed sky and service glow, with an independent star in CSS perspective. */
.hero-cover-image{animation:none;transform:none;will-change:auto;pointer-events:none}
.hero-scene{position:absolute;inset:0;width:100%;height:100%;z-index:-2;opacity:0;pointer-events:none}
.hero-scene-ready .hero-scene{opacity:1}
.hero-scene-ready .hero-cover-image{opacity:0}
.hero-hotspots{position:absolute;inset:0;z-index:3;pointer-events:none}
.hero-hotspot{position:absolute;pointer-events:auto;background:transparent;border:0;border-radius:12px;padding:0;cursor:pointer;isolation:isolate}
.hero-hotspot::before{content:'';position:absolute;inset:-8px -12px;background:radial-gradient(ellipse,#b2e2ff30 0%,#6ab9ff10 45%,transparent 72%);opacity:0;transition:opacity .2s;pointer-events:none}
.hero-hotspot::after{content:'';position:absolute;left:var(--spark-x);top:var(--spark-y);width:21px;height:21px;background:radial-gradient(circle,#fff 0%,#f4fcff 8%,#bce7ff 23%,#7abfff00 70%);filter:drop-shadow(0 0 5px #fff) drop-shadow(0 0 13px #8dccff);clip-path:polygon(50% 0,58% 40%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 40%);transform:translate(-50%,-50%) scale(.5);opacity:0;transition:opacity .2s,transform .25s;pointer-events:none}
.hero-hotspot.is-lit::before,.hero-hotspot:focus-visible::before{opacity:1}
.hero-hotspot.is-lit::after,.hero-hotspot:focus-visible::after{opacity:1;transform:translate(-50%,-50%) scale(1)}
.hero-hotspot:focus-visible{outline:1px solid #d0ecff;outline-offset:4px;box-shadow:0 0 20px #9dd4ff65}
.service-card:hover h3,.service-card:focus-within h3{color:#dae7ff;text-shadow:0 0 18px #8eb6ff80,0 0 40px #397bff50}
@media(max-width:1000px),(hover:none){.hero-hotspots{display:none}}
@media(prefers-reduced-motion:reduce){.hero-hotspot::before,.hero-hotspot::after{transition:none}}
/* A separate chrome star pivots in perspective over a fixed background plate. */
.hero-star-pivot{position:absolute;z-index:-2;pointer-events:none;perspective:900px;perspective-origin:50% 50%;opacity:0}
.hero-layers-ready .hero-star-pivot{opacity:1}
.hero-star-object{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform-origin:50% 50%;backface-visibility:hidden;will-change:transform;filter:drop-shadow(0 0 15px #b9ddff40)}
.hero-star-object>img{position:absolute;left:-.85837%;top:-2.51012%;width:101.71674%;height:107.44939%;max-width:none;object-fit:fill;pointer-events:none;user-select:none}
@media(prefers-reduced-motion:reduce){.hero-star-object{will-change:auto}}

/* A quiet specular sweep crosses only the alpha-masked star every three seconds. */
.hero-star-sheen{position:absolute;left:-.85837%;top:-2.51012%;width:101.71674%;height:107.44939%;pointer-events:none;mask-image:url('/assets/hero-star-cutout.png');-webkit-mask-image:url('/assets/hero-star-cutout.png');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mix-blend-mode:screen;overflow:hidden}
.hero-star-sheen-light{position:absolute;left:-30%;top:-100%;width:160%;height:300%;background:linear-gradient(90deg,transparent 20%,#d5eeff00 35%,#e8f5ff55 44%,#fff 50%,#e8f5ff55 56%,#d5eeff00 65%,transparent 80%);opacity:0;transform-origin:50% 50%;will-change:transform,opacity}
@media(prefers-reduced-motion:reduce){.hero-star-sheen{display:none}}
