/* Scrollprise v33.5.11 · Dynamic Intelligence identity
   Motion language adapted from React Bits Strands. */

.sp-intelligence-idle-stage{
  position:relative;
  min-height:330px;
  display:grid;
  place-items:center;
  margin:12px 0 0;
  overflow:hidden;
  border-radius:24px;
  opacity:1;
  transform:translateY(0) scale(1);
  transition:min-height .58s cubic-bezier(.2,.8,.2,1),opacity .38s ease,margin .58s cubic-bezier(.2,.8,.2,1),transform .5s cubic-bezier(.2,.8,.2,1);
}
.sp-intelligence-ambient{
  position:absolute;
  inset:8% 7%;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 50%,rgba(6,182,212,.055),transparent 52%),
    radial-gradient(ellipse at 42% 52%,rgba(124,58,237,.045),transparent 46%),
    radial-gradient(ellipse at 58% 48%,rgba(249,115,22,.03),transparent 42%);
  filter:blur(22px);
}
.sp-intelligence-logo{
  position:relative;
  z-index:2;
  color:#111;
}
.sp-intelligence-logo--hero{
  width:min(560px,82%);
  min-height:250px;
  display:grid;
  grid-template-rows:170px auto auto;
  align-content:center;
  justify-items:center;
  gap:8px;
}
.sp-intelligence-strands{
  position:relative;
  width:100%;
  height:100%;
  background:transparent;
  pointer-events:none;
}
.sp-intelligence-wordmark{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:10px;
  white-space:nowrap;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.sp-intelligence-wordmark strong,
.sp-intelligence-wordmark span{
  font-family:inherit;
  font-size:15px;
  line-height:1;
  font-weight:950;
}
.sp-intelligence-wordmark span{font-weight:650;color:#525755}
.sp-intelligence-logo--hero>small{
  color:#999b98;
  font-size:8px;
  font-weight:850;
  letter-spacing:.16em;
}

/* Compact destination: hidden until results exist. */
.sp-intelligence-logo--compact{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  align-items:center;
  gap:10px;
  width:min(100%,330px);
  max-height:0;
  margin:0;
  overflow:hidden;
  opacity:0;
  transform:translateY(10px);
  pointer-events:none;
  transition:max-height .5s cubic-bezier(.2,.8,.2,1),margin .5s cubic-bezier(.2,.8,.2,1),opacity .32s ease,transform .45s cubic-bezier(.2,.8,.2,1);
}
.sp-intelligence-logo--compact .sp-intelligence-strands{height:62px}
.sp-intelligence-logo--compact .sp-intelligence-wordmark{
  display:block;
  white-space:normal;
  letter-spacing:.11em;
  line-height:1.1;
}
.sp-intelligence-logo--compact .sp-intelligence-wordmark strong,
.sp-intelligence-logo--compact .sp-intelligence-wordmark span{
  display:block;
  font-size:10px;
  line-height:1.15;
}
.sp-intelligence-logo--compact .sp-intelligence-wordmark span{margin-top:3px}

#vibe-check.sp-intelligence-has-results .sp-intelligence-idle-stage{
  min-height:0;
  height:0;
  margin:0;
  opacity:0;
  transform:translateY(-12px) scale(.96);
  pointer-events:none;
}
#vibe-check.sp-intelligence-has-results .sp-intelligence-logo--compact{
  max-height:92px;
  margin:20px 0 21px;
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}

/* Light UI integration */
.vibe-guide-intro .sp-intelligence-logo--compact{
  padding:0;
  border:0;
  background:transparent;
}

@media(max-width:960px){
  .sp-intelligence-idle-stage{min-height:280px}
  .sp-intelligence-logo--hero{width:min(620px,90%);grid-template-rows:145px auto auto;min-height:220px}
}
@media(max-width:700px){
  .sp-intelligence-idle-stage{min-height:230px;margin-top:8px}
  .sp-intelligence-logo--hero{width:94%;grid-template-rows:118px auto auto;min-height:190px}
  .sp-intelligence-wordmark{gap:7px;letter-spacing:.11em}
  .sp-intelligence-wordmark strong,.sp-intelligence-wordmark span{font-size:11px}
  .sp-intelligence-logo--hero>small{font-size:7px}
  #vibe-check.sp-intelligence-has-results .sp-intelligence-logo--compact{margin:16px 0}
}
@media(prefers-reduced-motion:reduce){
  .sp-intelligence-idle-stage,.sp-intelligence-logo--compact{transition:none!important}
}


/* v33.5.13 — zero-rAF SVG motion engine
   No WebGL, canvas, ResizeObserver or JavaScript animation loop. */
.sp-intelligence-strands{
  contain:layout paint size;
  isolation:isolate;
}
.sp-intelligence-svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
.sp-intelligence-path{
  fill:none;
  stroke:url(#sp-intelligence-gradient-hero);
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
  opacity:.92;
}
.sp-intelligence-svg--compact .sp-intelligence-path{
  stroke:url(#sp-intelligence-gradient-compact);
}
.sp-intelligence-path--1{
  stroke-width:4.4;
  stroke-dasharray:22 7 14 8;
  animation:sp-intelligence-dash-a 7.2s linear infinite;
}
.sp-intelligence-path--2{
  stroke-width:3.2;
  stroke-dasharray:12 9 19 8;
  opacity:.78;
  animation:sp-intelligence-dash-b 8.4s linear infinite;
}
.sp-intelligence-path--3{
  stroke-width:2.4;
  stroke-dasharray:8 6 11 10;
  opacity:.58;
  animation:sp-intelligence-dash-c 9.6s linear infinite;
}
.sp-intelligence-flow{
  transform-box:fill-box;
  transform-origin:center;
  will-change:transform;
}
.sp-intelligence-flow--1{animation:sp-intelligence-float-a 5.6s ease-in-out infinite alternate}
.sp-intelligence-flow--2{animation:sp-intelligence-float-b 6.8s ease-in-out infinite alternate}
.sp-intelligence-flow--3{animation:sp-intelligence-float-c 7.4s ease-in-out infinite alternate}

/* Glow without SVG filters: two light CSS shadows on the tiny SVG only. */
.sp-intelligence-svg{
  filter:drop-shadow(0 0 3px rgba(6,182,212,.26)) drop-shadow(0 0 7px rgba(124,58,237,.10));
}
.sp-intelligence-svg--compact{
  filter:drop-shadow(0 0 2px rgba(6,182,212,.22));
}

@keyframes sp-intelligence-dash-a{to{stroke-dashoffset:-100}}
@keyframes sp-intelligence-dash-b{to{stroke-dashoffset:100}}
@keyframes sp-intelligence-dash-c{to{stroke-dashoffset:-100}}
@keyframes sp-intelligence-float-a{from{transform:translate3d(-1.5%,0,0)}to{transform:translate3d(1.5%,-1%,0)}}
@keyframes sp-intelligence-float-b{from{transform:translate3d(1%,1%,0)}to{transform:translate3d(-1%,0,0)}}
@keyframes sp-intelligence-float-c{from{transform:translate3d(-.7%,-.8%,0)}to{transform:translate3d(.7%,.8%,0)}}

.sp-intelligence-logo--hero,
.sp-intelligence-logo--compact{
  transform:translateZ(0);
}

@media(max-width:700px){
  .sp-intelligence-path--1{stroke-width:3.4}
  .sp-intelligence-path--2{stroke-width:2.6}
  .sp-intelligence-path--3{stroke-width:2}
}
@media(prefers-reduced-motion:reduce){
  .sp-intelligence-path,.sp-intelligence-flow{animation:none!important}
  .sp-intelligence-svg{filter:none!important}
}
