/* Scoped, drop-in visual component: does not modify existing site typography, buttons, prices or forms. */
.im-orbit-feature {
  --im-gold: #d4ba82;
  position: relative;
  isolation: isolate;
  width: 100%;
  height: clamp(270px, 37vw, 470px);
  overflow: hidden;
  background: transparent; /* inherit existing deep-teal hero */
  border: 0; /* no framed photo */
  margin: 0;
}
.im-orbit-feature__art {
  position: absolute;
  inset: -30% -15% -30% -15%;
  display: grid;
  place-items: center;
  pointer-events: none;
  transform: translate3d(var(--im-pointer-x,0px),var(--im-pointer-y,0px),0);
  transition: transform 700ms cubic-bezier(.2,.7,.2,1);
  -webkit-mask-image: radial-gradient(ellipse 65% 52% at center, #000 42%, transparent 98%);
  mask-image: radial-gradient(ellipse 65% 52% at center, #000 42%, transparent 98%);
}
.im-orbit-feature__svg { width: min(100%, 1120px); height: 100%; display: block; overflow: visible; }
.im-orbit-feature__ring, .im-orbit-feature__sphere-grid { transform-origin: center; transform-box: fill-box; }
.im-orbit-feature__ring--one { animation: im-ring-one 92s linear infinite; }
.im-orbit-feature__ring--two { animation: im-ring-two 134s linear infinite reverse; }
.im-orbit-feature__ring--three { animation: im-ring-three 111s linear infinite; }
.im-orbit-feature__ring--four { animation: im-ring-one 169s linear infinite reverse; }
.im-orbit-feature__ring--five { animation: im-ring-two 207s linear infinite; }
.im-orbit-feature__sphere-grid { animation: im-grid-turn 125s ease-in-out infinite alternate; }
@keyframes im-ring-one { to { transform: rotate(360deg); } }
@keyframes im-ring-two { to { transform: rotate(-360deg); } }
@keyframes im-ring-three { to { transform: rotate(360deg); } }
@keyframes im-grid-turn { to { transform: rotate(13deg); } }
.im-orbit-feature__motion {
  position: absolute;
  z-index: 1;
  right: clamp(12px,3vw,24px);
  bottom: 15px;
  border: 1px solid rgba(212,186,130,.53);
  background: rgba(4,26,29,.72);
  color: #ead9b4;
  border-radius: 999px;
  padding: 8px 13px;
  font: 600 11px/1.3 system-ui,sans-serif;
  letter-spacing: .07em;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.im-orbit-feature__motion:hover { background: rgba(4,26,29,.94); }
.im-orbit-feature__motion:focus-visible { outline: 2px solid #f5e0b4; outline-offset: 4px; }
.im-orbit-feature.is-paused .im-orbit-feature__ring,
.im-orbit-feature.is-paused .im-orbit-feature__sphere-grid { animation-play-state: paused; }
.im-orbit-feature__sr {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
@media (max-width: 650px) {
  .im-orbit-feature { height: clamp(255px, 75vw, 365px); }
  .im-orbit-feature__art { inset: -23% -49% -35%; }
  .im-orbit-feature__motion { bottom: 6px; font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .im-orbit-feature__ring,.im-orbit-feature__sphere-grid { animation: none !important; }
  .im-orbit-feature__art { transition: none !important; transform: none !important; }
}

/* Integration into The Celestial hero */
.business-page .business-hero.has-orbit{padding-top:0;background:var(--rich,#28686A)}
.business-hero.has-orbit .im-orbit-feature{height:clamp(300px,40vw,520px);margin:0 0 clamp(4px,1vw,14px)}
.business-hero.has-orbit .im-orbit-feature__motion{font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase}
@media (max-width:650px){.business-hero.has-orbit .im-orbit-feature{height:clamp(255px,78vw,360px)}}
/* Soft edges instead of hard cuts: rings fade out before the top of the hero and before the headline */
.business-hero.has-orbit .im-orbit-feature__art{-webkit-mask-image:linear-gradient(180deg,transparent 7%,#000 21%,#000 70%,transparent 93%);mask-image:linear-gradient(180deg,transparent 7%,#000 21%,#000 70%,transparent 93%)}
.business-hero.has-orbit .im-orbit-feature__art{inset:-8% -12%}
@media (max-width:650px){.business-hero.has-orbit .im-orbit-feature__art{inset:-6% -45%}}
