/* Keep the complete canonical Life Core in both opening and proposition. */
.brand-intro .intro-life-background {
  position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;
  transition:opacity 1.6s cubic-bezier(.2,.65,.25,1);
}
.brand-intro .intro-life-background canvas { display:block;width:100%;height:100%; }
.brand-intro.is-holding .intro-life-background.is-life-background-ready { opacity:.28; }
.brand-intro .intro-morph { z-index:1; }
.brand-intro .brand-intro-lockup { z-index:2; }
.service-hero .scene-inner { isolation:isolate;background:var(--noe-bg); }
.service-hero .hero-visual {
  position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;
  margin:0;z-index:0;pointer-events:none;
}
.service-hero .hero-orb { inset:0;-webkit-mask-image:none;mask-image:none; }
.service-hero .hero-visual::after {
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,#090e14 0%,#090e14f5 30%,#090e1499 42%,transparent 59%),
    linear-gradient(0deg,#090e14 0%,transparent 24%,transparent 80%,#090e1494 100%);
}
.service-hero .hero-grid { position:relative;z-index:2;grid-template-columns:1fr;pointer-events:none; }
.service-hero .hero-copy { width:55%;pointer-events:auto; }
.service-hero .hero-bottom { z-index:3; }
.service-hero .orb-label {
  z-index:2;font-size:10px;padding:8px 11px;color:#e0c8b5;
  border-color:#f3c39a1c;background:#090e143d;backdrop-filter:blur(8px);
}
.service-hero .orb-label i { width:4px;height:4px;background:#eeb990; }
.service-hero .orb-label-a { left:56%;top:28%; }
.service-hero .orb-label-b { right:8%;top:45%; }
.service-hero .orb-label-c { left:59%;bottom:32%; }
.service-hero .orb-caption { z-index:2;left:auto;right:7%;bottom:29%;transform:none;color:#c5aa93; }
.service-hero .living-orb-fallback {
  background:radial-gradient(circle at 69% 43%,#952356 0%,#ee4547 12%,#ffa25b 22%,#090e1400 32%);
}
@media(min-width:1650px) {
  .service-hero .hero-copy { width:53%; }
}
@media(min-width:981px) {
  .service-hero .hero-grid { top:-16px; }
}
@media(max-width:1180px) and (min-width:981px) {
  .service-hero .hero-copy { width:58%; }
  .service-hero .orb-label-a { left:57%; }
  .service-hero .orb-label-c { left:61%; }
}
/* Keep the existing small-screen content legible; mobile design remains separate. */
@media(max-width:980px) {
  .service-hero .hero-copy { width:68%; }
  .service-hero .orb-label-a { left:60%; }
  .service-hero .orb-label-b { right:5%; }
  .service-hero .orb-label-c { left:62%; }
}
@media(prefers-reduced-motion:reduce) {
  .brand-intro .intro-life-background { transition:none; }
}
@media(max-width:700px) {
  .service-hero .hero-copy { width:100%; }
  .service-hero .hero-visual { opacity:.35; }
}
