/* Intelligence scene: the same round geometry at every screen size. */
.p-intelligence .p-intelligence-visual{
  --intel-x:0px;--intel-y:0px;
  aspect-ratio:1 / 1;
  isolation:isolate;
  background:radial-gradient(circle at 50% 50%,#315b8260 0%,#1a2b3e00 69%);
}
.p-intelligence .p-orbit{
  border-radius:50%;
  transform:translate(var(--intel-x),var(--intel-y));
  rotate:0deg;
  border-color:#9cb8d347;
}
.p-intelligence .p-orbit-1{inset:6%;}
.p-intelligence .p-orbit-2{inset:20%;border-style:dashed;border-color:#9cb8d35c;}
.p-intelligence .p-orbit-3{inset:34%;border-color:#60f2d24d;}
.p-intelligence .p-orbit:before{
  left:50%;top:0;width:6px;height:6px;transform:translate(-50%,-50%);background:#60f2d2;
  box-shadow:0 0 10px #60f2d2,0 0 24px #60f2d2aa;
}
.p-intelligence .p-orbit:after{
  content:'';position:absolute;left:50%;top:100%;width:3px;height:3px;border-radius:50%;transform:translate(-50%,-50%);
  background:#b6e9e3;box-shadow:0 0 12px #60f2d2;
}
.p-intelligence .p-intelligence-visual.is-visible .p-orbit-1{animation:intel-circle 42s linear infinite;}
.p-intelligence .p-intelligence-visual.is-visible .p-orbit-2{animation:intel-circle 59s linear reverse infinite;}
.p-intelligence .p-intelligence-visual.is-visible .p-orbit-3{animation:intel-circle 74s linear infinite;}
@keyframes intel-circle{to{rotate:360deg}}
.p-intelligence .p-intelligence-core{
  top:50%;left:50%;width:auto;display:flex;flex-direction:column;align-items:center;
  transform:translate(calc(-50% + var(--intel-x)),calc(-50% + var(--intel-y)));
  font-size:0;letter-spacing:normal;
}
.p-intelligence .p-intelligence-core:before{
  content:'';display:block;width:clamp(68px,6.7vw,100px);height:clamp(65px,6.5vw,97px);
  background:url('/assets/ips-logo-vertical.webp') center / contain no-repeat;
  filter:brightness(0) invert(1) drop-shadow(0 0 20px #60f2d230);
}
.p-intelligence .p-intelligence-core span{
  font-size:7px;letter-spacing:.17em;color:#c6d6e1;margin-top:9px;white-space:nowrap;
}
.p-intelligence .p-orbit-label{
  z-index:2;padding:12px 15px;background:#1a2b3edb;border:1px solid #83b7bd70;
  box-shadow:0 8px 30px #06152550,inset 0 1px #ffffff0a;
  backdrop-filter:blur(10px);color:#f1f1f2;white-space:nowrap;
}
.p-intelligence .p-orbit-label i{background:#60f2d2;box-shadow:0 0 9px #60f2d2;}
.p-intelligence .p-intelligence-visual.orbits-active .p-orbit-label{
  top:50%;left:50%;right:auto;bottom:auto;
  transform:translate3d(calc(var(--orbit-x,0px) - var(--orbit-anchor-x,0px)),calc(-50% + var(--orbit-y,0px)),0);
  will-change:transform;
}
.p-intelligence .p-intelligence-visual.orbits-active .p-orbit-label.orbit-anchor-right{flex-direction:row-reverse;}
.p-intelligence .p-intelligence-caption{bottom:-3%;color:#b1c4d2;}
@media(max-width:760px){
  .p-intelligence .p-intelligence-visual{width:min(100%,430px);margin:12px auto 34px;}
  .p-intelligence .p-intelligence-core:before{width:68px;height:66px;}
  .p-intelligence .p-intelligence-core span{font-size:6px;letter-spacing:.12em;}
  .p-intelligence .p-orbit-label{font-size:8px;padding:9px 10px;}
  .p-intelligence .p-orbit:before{width:4px;height:4px;}
}
@media(max-width:360px){
  .p-intelligence .p-intelligence-core:before{width:58px;height:56px;}
  .p-intelligence .p-orbit-label{font-size:7px;padding:8px 9px;}
}
@media(prefers-reduced-motion:reduce){
  .p-intelligence .p-intelligence-visual .p-orbit{animation:none!important;}
  .p-intelligence .p-intelligence-visual.orbits-active .p-orbit-label{will-change:auto;}
}

/* Preserve the semantic heading and reveal each line as if typed. */
.p-intelligence-copy h2{line-height:1.16}
.p-intelligence .p-typed-line{display:inline-block}
.js-motion .p-intelligence .p-type-ready .p-typed-line{clip-path:inset(-.25em 100% -.25em 0)}
.js-motion .p-intelligence .p-type-ready.p-typing .p-typed-line:first-child{animation:intel-type 1.45s steps(21,end) forwards}
.js-motion .p-intelligence .p-type-ready.p-typing .p-typed-line:last-child{animation:intel-type 1.1s steps(15,end) 1.5s forwards}
@keyframes intel-type{to{clip-path:inset(-.25em 0 -.25em 0)}}
@media(prefers-reduced-motion:reduce){.js-motion .p-intelligence .p-type-ready .p-typed-line{clip-path:none!important;animation:none!important}}
body.motion-paused .p-intelligence .p-type-ready .p-typed-line{clip-path:none!important;animation:none!important}
