/* Logo Motion 3D — JujuyConectado Pro 7.6.9 */
.jc-brand{
  perspective:1100px;
  transform-style:preserve-3d;
}
.jc-logo-stage{
  position:relative;
  display:inline-grid;
  place-items:center;
  transform-style:preserve-3d;
  isolation:isolate;
  will-change:transform,filter;
  transform-origin:center center;
  -webkit-tap-highlight-color:transparent;
}
.jc-logo-stage > img{
  grid-area:1/1;
  display:block;
  backface-visibility:visible;
  transform-style:preserve-3d;
  pointer-events:none;
}
.jc-logo-depth{
  position:absolute!important;
  inset:0;
  width:100%!important;
  height:100%!important;
  object-fit:contain;
  opacity:.14;
  filter:brightness(.68) saturate(.78);
  z-index:-1;
}
.jc-logo-depth:nth-of-type(2){transform:translateZ(-2px) translateX(1px)}
.jc-logo-depth:nth-of-type(3){transform:translateZ(-4px) translateX(2px)}
.jc-logo-depth:nth-of-type(4){transform:translateZ(-6px) translateX(3px)}
.jc-logo-depth:nth-of-type(5){transform:translateZ(-8px) translateX(4px)}
.jc-logo-depth:nth-of-type(6){transform:translateZ(-10px) translateX(5px)}
.jc-logo-stage::before{
  content:"";
  position:absolute;
  inset:5% -8%;
  z-index:4;
  pointer-events:none;
  opacity:0;
  transform:translateX(-135%) skewX(-18deg) translateZ(10px);
  background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.12) 44%,rgba(255,255,255,.78) 50%,rgba(255,255,255,.14) 57%,transparent 66%);
  mix-blend-mode:screen;
  border-radius:24px;
}
.jc-logo-stage::after{
  content:"";
  position:absolute;
  left:12%;right:12%;bottom:-8px;
  height:10px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(15,79,174,.28),rgba(15,79,174,0) 72%);
  transform:translateZ(-14px) scaleX(.86);
  opacity:.42;
  pointer-events:none;
}
.jc-logo-stage.is-intro{
  animation:jc-logo-intro 3.8s cubic-bezier(.18,.72,.18,1) both;
}
.jc-logo-stage.is-intro::before{
  animation:jc-logo-shine 3.8s ease-in-out both;
}
.jc-logo-stage.is-ready{
  animation:jc-logo-float 6.5s ease-in-out .35s infinite;
}
.jc-logo-stage.is-replay{
  animation:jc-logo-replay 2.35s cubic-bezier(.18,.72,.18,1) both!important;
}
.jc-logo-stage.is-replay::before{
  animation:jc-logo-shine 2.35s ease-in-out both;
}
@keyframes jc-logo-intro{
  0%{opacity:0;transform:rotateX(-9deg) rotateY(-24deg) scale(.93) translateY(7px);filter:drop-shadow(0 1px 1px rgba(15,79,174,0))}
  14%{opacity:1;transform:rotateX(-5deg) rotateY(5deg) scale(.98) translateY(2px);filter:drop-shadow(-4px 6px 8px rgba(15,79,174,.10))}
  48%{opacity:1;transform:rotateX(4deg) rotateY(185deg) scale(1.025) translateY(-2px);filter:drop-shadow(9px 13px 16px rgba(15,79,174,.23))}
  82%{transform:rotateX(-2deg) rotateY(340deg) scale(1.006) translateY(-1px);filter:drop-shadow(-3px 8px 11px rgba(15,79,174,.17))}
  93%{transform:rotateX(1deg) rotateY(364deg) scale(1.012) translateY(-1px)}
  100%{opacity:1;transform:rotateX(0) rotateY(360deg) scale(1) translateY(0);filter:drop-shadow(0 5px 8px rgba(15,79,174,.14))}
}
@keyframes jc-logo-replay{
  0%{transform:rotateX(0) rotateY(0) scale(1);filter:drop-shadow(0 5px 8px rgba(15,79,174,.14))}
  48%{transform:rotateX(4deg) rotateY(185deg) scale(1.025);filter:drop-shadow(9px 12px 15px rgba(15,79,174,.22))}
  88%{transform:rotateX(-1deg) rotateY(352deg) scale(1.008)}
  100%{transform:rotateX(0) rotateY(360deg) scale(1);filter:drop-shadow(0 5px 8px rgba(15,79,174,.14))}
}
@keyframes jc-logo-shine{
  0%,24%{opacity:0;transform:translateX(-135%) skewX(-18deg) translateZ(10px)}
  38%{opacity:.2}
  57%{opacity:.88;transform:translateX(125%) skewX(-18deg) translateZ(10px)}
  70%,100%{opacity:0;transform:translateX(145%) skewX(-18deg) translateZ(10px)}
}
@keyframes jc-logo-float{
  0%,100%{transform:translateY(0) rotateX(0) rotateY(0);filter:drop-shadow(0 4px 7px rgba(15,79,174,.11))}
  50%{transform:translateY(-1.2px) rotateX(.8deg) rotateY(-.8deg);filter:drop-shadow(0 7px 10px rgba(15,79,174,.15))}
}
@media (hover:hover) and (pointer:fine){
  .jc-brand:hover .jc-logo-stage{
    animation:none;
    transform:rotateX(3deg) rotateY(-7deg) translateY(-1px) scale(1.018);
    transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .55s;
    filter:drop-shadow(0 8px 12px rgba(15,79,174,.18));
  }
}

/* Intro PWA v8.1.7 — el logo emerge detrás del buscador, se desplaza a la izquierda y aparece el eslogan. */
.jc-app-intro{
  position:fixed;
  inset:0;
  z-index:2147483646!important;
  width:100vw;
  height:100dvh;
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  overflow:hidden;
  background:linear-gradient(145deg,#eef7ff 0%,#ffffff 52%,#fff6eb 100%);
  opacity:1;
  visibility:visible;
  transition:opacity .55s ease,visibility .55s ease;
}
.jc-app-intro.is-leaving{opacity:0;visibility:hidden}
.jc-app-intro__inner{
  position:relative;
  width:min(92vw,760px);
  height:190px;
  display:grid;
  place-items:center;
}
.jc-app-intro__search{
  position:absolute;
  z-index:5;
  left:50%;
  top:50%;
  width:min(76vw,510px);
  height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 17px 0 20px;
  border:1px solid #d7e0eb;
  border-radius:14px;
  background:#fff;
  color:#7b8794;
  box-shadow:0 16px 36px rgba(22,52,88,.14);
  transform:translate(-50%,-50%);
  animation:jc-intro-search 6.3s cubic-bezier(.2,.72,.2,1) both;
}
.jc-app-intro__search span{font-size:clamp(.82rem,2.8vw,1rem)}
.jc-app-intro__search b{font-size:25px;color:#0f4fae;font-weight:500}
.jc-app-intro__identity{
  position:absolute;
  z-index:3;
  left:50%;
  top:50%;
  width:min(88vw,700px);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.jc-app-intro__logo{
  width:min(43vw,230px);
  max-height:145px;
  object-fit:contain;
  opacity:0;
  transform:translateX(105px) scale(.72);
  filter:drop-shadow(0 14px 20px rgba(15,79,174,.18));
  animation:jc-intro-logo-slide 6.3s cubic-bezier(.18,.72,.18,1) both;
}
.jc-app-intro__tagline{
  max-width:460px;
  margin:0;
  overflow:hidden;
  color:#0f4fae;
  font-size:clamp(1rem,3.5vw,1.34rem);
  font-weight:750;
  line-height:1.22;
  letter-spacing:-.02em;
  white-space:nowrap;
  opacity:0;
  transform:translateX(-28px);
  animation:jc-intro-tagline-follow 6.3s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes jc-intro-search{
  0%,12%{opacity:0;transform:translate(-50%,-50%) scale(.94)}
  20%,48%{opacity:1;transform:translate(-50%,-50%) scale(1)}
  60%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}
  72%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.04)}
}
@keyframes jc-intro-logo-slide{
  0%,19%{opacity:0;transform:translateX(105px) scale(.72) rotate(0deg)}
  29%{opacity:.18;transform:translateX(82px) scale(.79) rotate(0deg)}
  43%{opacity:1;transform:translateX(34px) scale(.94) rotate(0deg)}
  58%{opacity:1;transform:translateX(0) scale(1) rotate(0deg)}
  73%{opacity:1;transform:translateX(0) scale(1) rotate(360deg)}
  82%{opacity:1;transform:translateX(0) scale(1) rotate(360deg)}
  100%{opacity:1;transform:translateX(0) scale(1.78) rotate(360deg)}
}
@keyframes jc-intro-tagline-follow{
  0%,48%{opacity:0;transform:translateX(-28px);max-width:460px}
  61%,78%{opacity:1;transform:translateX(0);max-width:460px}
  88%,100%{opacity:0;transform:translateX(12px);max-width:0}
}
@media(max-width:560px){
  .jc-app-intro__inner{height:190px}
  .jc-app-intro__identity{flex-direction:row;gap:10px;text-align:left;width:min(94vw,520px)}
  .jc-app-intro__logo{width:min(34vw,145px);transform:translateX(75px) scale(.72)}
  .jc-app-intro__tagline{max-width:none;font-size:clamp(.72rem,3.15vw,.94rem);white-space:nowrap;transform:translateX(-18px)}
  @keyframes jc-intro-logo-slide{
    0%,19%{opacity:0;transform:translateX(75px) scale(.72) rotate(0deg)}
    29%{opacity:.18;transform:translateX(58px) scale(.79) rotate(0deg)}
    43%{opacity:1;transform:translateX(24px) scale(.94) rotate(0deg)}
    58%{opacity:1;transform:translateX(0) scale(1) rotate(0deg)}
    73%{opacity:1;transform:translateX(0) scale(1) rotate(360deg)}
    82%{opacity:1;transform:translateX(0) scale(1) rotate(360deg)}
    100%{opacity:1;transform:translateX(0) scale(1.68) rotate(360deg)}
  }
  @keyframes jc-intro-tagline-follow{
    0%,48%{opacity:0;transform:translateX(-18px);max-width:360px}
    61%,78%{opacity:1;transform:translateX(0);max-width:360px}
    88%,100%{opacity:0;transform:translateX(8px);max-width:0}
  }
}
@media(max-width:370px){
  .jc-app-intro__identity{gap:7px}
  .jc-app-intro__logo{width:118px}
  .jc-app-intro__tagline{font-size:.69rem}
}

@media (prefers-reduced-motion:reduce){
  .jc-logo-stage,
  .jc-logo-stage.is-intro,
  .jc-logo-stage.is-ready,
  .jc-logo-stage.is-replay,
  .jc-app-intro__logo,
  .jc-app-intro__title,
  .jc-app-intro__tagline,
  .jc-app-intro__bar,
  .jc-app-intro__bar::after{
    animation:none!important;
    transform:none!important;
    transition:none!important;
    opacity:1!important;
  }
  .jc-logo-depth{display:none!important}
  .jc-app-intro{display:none!important}
}


/* v9.1.2 — Intro torbellino aprobado */
.jc-app-intro--vortex{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:100vh!important;z-index:2147483646!important;background:#0a0b18;overflow:hidden;opacity:1;transition:opacity .6s ease}
.jc-app-intro--vortex.is-leaving{opacity:0;pointer-events:none}
.jc-vortex-stage{position:relative;width:100%;height:100%;min-height:520px;overflow:hidden;background:radial-gradient(circle at 22% 82%,rgba(0,116,255,.24),transparent 36%),radial-gradient(circle at 78% 18%,rgba(239,43,123,.23),transparent 34%),linear-gradient(145deg,#050611 0%,#0b0b1d 55%,#070812 100%)}
.jc-vortex-stage:before{content:"";position:absolute;inset:-25%;background:conic-gradient(from 0deg,transparent 0 16%,rgba(39,135,255,.16) 20%,transparent 28% 47%,rgba(239,43,123,.17) 53%,transparent 62% 100%);filter:blur(35px);animation:jcVortexBg 8s linear infinite;opacity:.8}
@keyframes jcVortexBg{to{transform:rotate(360deg)}}
.jc-vortex-logo{position:absolute;z-index:3;width:min(29vw,300px);height:min(29vw,300px);display:grid;place-items:center;filter:drop-shadow(0 14px 30px rgba(0,0,0,.38));opacity:0}
.jc-vortex-logo img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.jc-vortex-logo--jc{left:-34vw;bottom:-34vh;animation:jcLogoIn 5.0s cubic-bezier(.2,.75,.2,1) forwards}
.jc-vortex-logo--solos{right:-34vw;top:-34vh;animation:jcSolosIn 5.0s cubic-bezier(.2,.75,.2,1) forwards}
@keyframes jcLogoIn{0%{opacity:0;transform:translate(0,0) scale(.45) rotate(-18deg)}10%{opacity:1}43%{opacity:1;left:50%;bottom:50%;transform:translate(-54%,54%) scale(.82) rotate(0)}58%{opacity:1;left:50%;bottom:50%;transform:translate(-50%,50%) scale(.72) rotate(360deg)}68%{opacity:.95;left:50%;bottom:50%;transform:translate(-50%,50%) scale(.62) rotate(720deg)}79%,100%{opacity:0;left:50%;bottom:50%;transform:translate(-50%,50%) scale(.18) rotate(1080deg)}}
@keyframes jcSolosIn{0%{opacity:0;transform:translate(0,0) scale(.45) rotate(18deg)}10%{opacity:1}43%{opacity:1;right:50%;top:50%;transform:translate(54%,-54%) scale(.82) rotate(0)}58%{opacity:1;right:50%;top:50%;transform:translate(50%,-50%) scale(.72) rotate(-360deg)}68%{opacity:.95;right:50%;top:50%;transform:translate(50%,-50%) scale(.62) rotate(-720deg)}79%,100%{opacity:0;right:50%;top:50%;transform:translate(50%,-50%) scale(.18) rotate(-1080deg)}}
.jc-vortex-ring{position:absolute;z-index:2;left:50%;top:50%;width:min(58vw,560px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%) scale(.1);opacity:0;animation:jcVortex 5.0s ease-in-out forwards;background:repeating-conic-gradient(from 0deg,rgba(255,255,255,0) 0 7deg,rgba(37,133,255,.82) 10deg 13deg,rgba(255,255,255,0) 17deg 25deg,rgba(239,43,123,.86) 29deg 32deg,rgba(255,255,255,0) 37deg 47deg);filter:blur(1px) drop-shadow(0 0 34px rgba(118,67,255,.85));mask:radial-gradient(circle,transparent 0 14%,#000 28% 66%,transparent 76%)}
@keyframes jcVortex{0%,38%{opacity:0;transform:translate(-50%,-50%) scale(.1) rotate(0)}48%{opacity:.4;transform:translate(-50%,-50%) scale(.65) rotate(140deg)}62%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(650deg)}75%{opacity:.85;transform:translate(-50%,-50%) scale(1.13) rotate(1120deg)}84%,100%{opacity:0;transform:translate(-50%,-50%) scale(.15) rotate(1450deg)}}
.jc-vortex-spark{position:absolute;z-index:1;left:50%;top:50%;width:min(70vw,720px);aspect-ratio:1;transform:translate(-50%,-50%);opacity:0;animation:jcSpark 5.0s ease-in-out forwards;background:radial-gradient(circle,rgba(255,255,255,.96) 0 2%,rgba(236,47,152,.55) 8%,rgba(74,97,255,.30) 23%,transparent 58%);filter:blur(7px)}
@keyframes jcSpark{0%,46%{opacity:0;transform:translate(-50%,-50%) scale(.1)}60%{opacity:1;transform:translate(-50%,-50%) scale(.7)}74%{opacity:.9;transform:translate(-50%,-50%) scale(1)}84%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}
.jc-vortex-message{position:absolute;z-index:4;inset:0;display:grid;place-content:center;text-align:center;padding:24px;opacity:0;transform:scale(.82);animation:jcMessage 5.0s ease-out forwards}
.jc-vortex-message strong{display:block;font-size:clamp(36px,7vw,92px);line-height:.98;letter-spacing:-.045em;background:linear-gradient(90deg,#ff3c92,#9c4bff 46%,#3a87ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 8px 30px rgba(115,57,255,.20)}
.jc-vortex-message span{display:block;margin-top:18px;font-size:clamp(15px,2vw,23px);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.72)}
@keyframes jcMessage{0%,79%{opacity:0;transform:scale(.82)}88%{opacity:1;transform:scale(1.04)}94%,100%{opacity:1;transform:scale(1)}}
@media(max-width:640px){.jc-vortex-logo{width:43vw;height:43vw}.jc-vortex-ring{width:86vw}.jc-vortex-stage{min-height:100dvh}.jc-vortex-message strong{font-size:clamp(38px,13vw,62px)}.jc-vortex-message span{font-size:12px;letter-spacing:.12em}}


/* v9.4.6 — inicio instantáneo sin flash previo */
html.jc-preintro body{overflow:hidden}
html.jc-preintro .jc-app-intro--vortex{opacity:1;visibility:visible}

/* v9.4.9 — shell inmediato: evita cualquier frame del Home antes de la animación */
.jc-app-intro--bootstrap{display:none!important}
html.jc-preintro .jc-app-intro--bootstrap{display:grid!important}
html.jc-transition-armed body{overflow:hidden!important}
html.jc-transition-armed body::after{content:"";position:fixed;inset:0;z-index:2147482990;background:#0a0b18;pointer-events:none}
html.jc-vortex-active body::after{display:none!important}

/* v9.5.54.13 — Splash APP por encima de todo el shell fijo. */
html.jc-preintro .jc-app-intro,
html.jc-vortex-active .jc-app-intro,
.jc-app-intro--vortex{
  position:fixed!important;
  inset:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  z-index:2147483646!important;
  isolation:isolate!important;
}
html.jc-preintro body::before{
  z-index:2147483645!important;
}


/* ==========================================================
   v9.5.54.21 — Intro PWA: JC + CCJ + S&S se fusionan en tornado
   ========================================================== */
.jc-app-intro--vortex{background:#08111f!important;}
.jc-vortex-stage{
  background:
    radial-gradient(circle at 12% 88%,rgba(42,135,255,.25),transparent 34%),
    radial-gradient(circle at 14% 12%,rgba(32,190,143,.20),transparent 31%),
    radial-gradient(circle at 88% 12%,rgba(239,43,123,.22),transparent 32%),
    linear-gradient(145deg,#06101d 0%,#0b1730 52%,#08101f 100%)!important;
}
.jc-vortex-logo{width:min(25vw,260px);height:min(25vw,260px);z-index:4;}
.jc-vortex-logo--jc{left:-30vw;bottom:-28vh;animation:jcThreeJcIn 5.6s cubic-bezier(.2,.75,.2,1) forwards!important;}
.jc-vortex-logo--ccj{left:-30vw;top:-28vh;animation:jcThreeCcjIn 5.6s cubic-bezier(.2,.75,.2,1) forwards!important;}
.jc-vortex-logo--solos{right:-30vw;top:-28vh;animation:jcThreeSolosIn 5.6s cubic-bezier(.2,.75,.2,1) forwards!important;}
@keyframes jcThreeJcIn{
  0%{opacity:0;left:-30vw;bottom:-28vh;transform:scale(.42) rotate(-18deg)}
  9%{opacity:1}
  41%{opacity:1;left:50%;bottom:50%;transform:translate(-54%,54%) scale(.78) rotate(0)}
  58%{opacity:1;left:50%;bottom:50%;transform:translate(-50%,50%) scale(.66) rotate(540deg)}
  72%{opacity:.92;left:50%;bottom:50%;transform:translate(-50%,50%) scale(.48) rotate(1080deg)}
  82%,100%{opacity:0;left:50%;bottom:50%;transform:translate(-50%,50%) scale(.10) rotate(1510deg)}
}
@keyframes jcThreeCcjIn{
  0%{opacity:0;left:-30vw;top:-28vh;transform:scale(.42) rotate(-12deg)}
  9%{opacity:1}
  41%{opacity:1;left:50%;top:50%;transform:translate(-54%,-54%) scale(.78) rotate(0)}
  58%{opacity:1;left:50%;top:50%;transform:translate(-50%,-50%) scale(.66) rotate(-540deg)}
  72%{opacity:.92;left:50%;top:50%;transform:translate(-50%,-50%) scale(.48) rotate(-1080deg)}
  82%,100%{opacity:0;left:50%;top:50%;transform:translate(-50%,-50%) scale(.10) rotate(-1510deg)}
}
@keyframes jcThreeSolosIn{
  0%{opacity:0;right:-30vw;top:-28vh;transform:scale(.42) rotate(18deg)}
  9%{opacity:1}
  41%{opacity:1;right:50%;top:50%;transform:translate(54%,-54%) scale(.78) rotate(0)}
  58%{opacity:1;right:50%;top:50%;transform:translate(50%,-50%) scale(.66) rotate(540deg)}
  72%{opacity:.92;right:50%;top:50%;transform:translate(50%,-50%) scale(.48) rotate(1080deg)}
  82%,100%{opacity:0;right:50%;top:50%;transform:translate(50%,-50%) scale(.10) rotate(1510deg)}
}
.jc-vortex-ring{animation:jcThreeVortex 5.6s ease-in-out forwards!important;}
@keyframes jcThreeVortex{
  0%,34%{opacity:0;transform:translate(-50%,-50%) scale(.08) rotate(0)}
  45%{opacity:.36;transform:translate(-50%,-50%) scale(.58) rotate(170deg)}
  61%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(760deg)}
  76%{opacity:.88;transform:translate(-50%,-50%) scale(1.12) rotate(1390deg)}
  86%,100%{opacity:0;transform:translate(-50%,-50%) scale(.12) rotate(1860deg)}
}
.jc-vortex-spark{animation:jcThreeSpark 5.6s ease-in-out forwards!important;}
@keyframes jcThreeSpark{0%,43%{opacity:0;transform:translate(-50%,-50%) scale(.1)}61%{opacity:1;transform:translate(-50%,-50%) scale(.72)}76%{opacity:.96;transform:translate(-50%,-50%) scale(1.08)}87%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.55)}}
.jc-vortex-tornado{
  position:absolute;left:50%;top:50%;z-index:3;width:min(44vw,420px);height:min(52vw,500px);opacity:0;
  transform:translate(-50%,-48%) scale(.16) rotate(0);
  clip-path:polygon(15% 0,85% 0,63% 100%,37% 100%);
  background:repeating-conic-gradient(from 0deg,rgba(35,134,255,.08) 0 8deg,rgba(35,134,255,.88) 11deg 15deg,rgba(255,255,255,.05) 18deg 27deg,rgba(239,43,123,.82) 30deg 34deg,rgba(37,201,148,.65) 38deg 42deg,rgba(255,255,255,.03) 46deg 58deg);
  filter:blur(1.2px) drop-shadow(0 0 34px rgba(91,92,255,.74));
  animation:jcThreeTornado 5.6s cubic-bezier(.16,.75,.2,1) forwards;
}
@keyframes jcThreeTornado{0%,38%{opacity:0;transform:translate(-50%,-48%) scale(.12) rotate(0)}49%{opacity:.55;transform:translate(-50%,-48%) scale(.62) rotate(250deg)}64%{opacity:1;transform:translate(-50%,-48%) scale(1) rotate(980deg)}77%{opacity:.92;transform:translate(-50%,-48%) scale(.88) rotate(1620deg)}87%,100%{opacity:0;transform:translate(-50%,-48%) scale(.08) rotate(2180deg)}}
.jc-vortex-message{animation:jcThreeMessage 5.6s ease-out forwards!important;}
.jc-vortex-message strong{font-size:clamp(32px,6.2vw,82px)!important;line-height:1.02!important;}
.jc-vortex-message span{margin-top:14px!important;}
@keyframes jcThreeMessage{0%,78%{opacity:0;transform:scale(.84)}87%{opacity:1;transform:scale(1.035)}94%,100%{opacity:1;transform:scale(1)}}
@media(max-width:640px){
  .jc-vortex-logo{width:37vw;height:37vw;}
  .jc-vortex-tornado{width:72vw;height:82vw;}
  .jc-vortex-message strong{font-size:clamp(31px,10.8vw,52px)!important;}
  .jc-vortex-message span{font-size:10.5px!important;letter-spacing:.09em!important;}
}


/* ==========================================================
   v9.5.54.22 — AURORA ORBIT
   Tres logos visibles -> orbita tricolor -> fusion luminosa
   ========================================================== */
.jc-app-intro--vortex{
  background:#eef9ff!important;
  color:#0b3767!important;
}
.jc-vortex-stage.jc-orbit-stage{
  min-height:100dvh!important;
  background:
    radial-gradient(circle at 8% 18%,rgba(37,179,255,.38),transparent 28%),
    radial-gradient(circle at 88% 16%,rgba(239,61,145,.25),transparent 29%),
    radial-gradient(circle at 18% 88%,rgba(255,149,42,.28),transparent 31%),
    radial-gradient(circle at 82% 84%,rgba(117,83,255,.20),transparent 29%),
    linear-gradient(135deg,#edfbff 0%,#eef4ff 38%,#fff3e8 69%,#f7efff 100%)!important;
}
.jc-vortex-stage.jc-orbit-stage:before{
  content:"";
  position:absolute;
  inset:-22%;
  opacity:.78;
  background:
    conic-gradient(from 20deg at 50% 50%,
      rgba(23,116,220,0) 0 12%,rgba(26,171,234,.23) 18%,rgba(23,116,220,0) 29% 38%,
      rgba(255,134,26,.22) 46%,rgba(255,255,255,0) 56% 66%,rgba(224,49,140,.18) 75%,rgba(255,255,255,0) 88% 100%);
  filter:blur(48px);
  animation:jcAuroraSweep 9s linear infinite!important;
}
.jc-vortex-stage.jc-orbit-stage:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:radial-gradient(circle,rgba(17,74,132,.13) 1px,transparent 1.4px);
  background-size:24px 24px;
  mask-image:linear-gradient(to bottom,transparent,rgba(0,0,0,.34) 28%,rgba(0,0,0,.18) 72%,transparent);
  opacity:.32;
}
@keyframes jcAuroraSweep{to{transform:rotate(360deg) scale(1.06)}}

/* Los tres logos tienen un tramo largo y claro antes de fusionarse. */
.jc-vortex-logo{
  left:50%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  z-index:5!important;
  display:grid!important;
  place-items:center!important;
  opacity:0;
  filter:drop-shadow(0 12px 22px rgba(18,67,116,.18)) drop-shadow(0 0 15px rgba(255,255,255,.95))!important;
  will-change:transform,opacity;
}
.jc-vortex-logo:before{
  content:"";
  position:absolute;
  inset:9%;
  z-index:-1;
  border-radius:50%;
  opacity:.38;
  filter:blur(25px);
}
.jc-vortex-logo img{position:relative;z-index:2;max-width:100%!important;max-height:100%!important;object-fit:contain!important;display:block!important}
.jc-vortex-logo--jc{width:min(25vw,270px)!important;height:min(25vw,270px)!important;animation:jcAuroraJc 6.8s cubic-bezier(.2,.72,.18,1) forwards!important}
.jc-vortex-logo--jc:before{background:#1699ff}
.jc-vortex-logo--ccj{width:min(30vw,325px)!important;height:min(30vw,325px)!important;animation:jcAuroraCcj 6.8s cubic-bezier(.2,.72,.18,1) forwards!important}
.jc-vortex-logo--ccj:before{background:linear-gradient(135deg,#159cff,#ff8d19,#2cb96e)}
.jc-vortex-logo--solos{width:min(28vw,300px)!important;height:min(28vw,300px)!important;animation:jcAuroraSolos 6.8s cubic-bezier(.2,.72,.18,1) forwards!important}
.jc-vortex-logo--solos:before{background:#ed3d91}

@keyframes jcAuroraCcj{
  0%{opacity:0;transform:translate(calc(-50% - 118vw),calc(-50% - 82vh)) scale(.35) rotate(-8deg)}
  10%{opacity:1;transform:translate(calc(-50% - 29vw),calc(-50% - 24vh)) scale(1.04) rotate(0)}
  34%{opacity:1;transform:translate(calc(-50% - 29vw),calc(-50% - 24vh)) scale(1.04) rotate(0)}
  49%{opacity:1;transform:translate(calc(-50% + 22vw),calc(-50% - 12vh)) scale(.94) rotate(82deg)}
  63%{opacity:1;transform:translate(calc(-50% + 13vw),calc(-50% + 18vh)) scale(.82) rotate(176deg)}
  75%{opacity:.98;transform:translate(-50%,-50%) scale(.62) rotate(352deg)}
  82%,100%{opacity:0;transform:translate(-50%,-50%) scale(.10) rotate(570deg)}
}
@keyframes jcAuroraJc{
  0%{opacity:0;transform:translate(calc(-50% - 120vw),calc(-50% + 92vh)) scale(.34) rotate(-12deg)}
  10%{opacity:1;transform:translate(calc(-50% - 29vw),calc(-50% + 22vh)) scale(1) rotate(0)}
  34%{opacity:1;transform:translate(calc(-50% - 29vw),calc(-50% + 22vh)) scale(1) rotate(0)}
  49%{opacity:1;transform:translate(calc(-50% - 2vw),calc(-50% - 27vh)) scale(.92) rotate(104deg)}
  63%{opacity:1;transform:translate(calc(-50% + 19vw),calc(-50% - 6vh)) scale(.82) rotate(198deg)}
  75%{opacity:.98;transform:translate(-50%,-50%) scale(.62) rotate(382deg)}
  82%,100%{opacity:0;transform:translate(-50%,-50%) scale(.10) rotate(602deg)}
}
@keyframes jcAuroraSolos{
  0%{opacity:0;transform:translate(calc(-50% + 120vw),calc(-50% - 86vh)) scale(.34) rotate(12deg)}
  10%{opacity:1;transform:translate(calc(-50% + 29vw),calc(-50% - 22vh)) scale(1) rotate(0)}
  34%{opacity:1;transform:translate(calc(-50% + 29vw),calc(-50% - 22vh)) scale(1) rotate(0)}
  49%{opacity:1;transform:translate(calc(-50% - 22vw),calc(-50% + 14vh)) scale(.92) rotate(94deg)}
  63%{opacity:1;transform:translate(calc(-50% - 19vw),calc(-50% - 8vh)) scale(.82) rotate(188deg)}
  75%{opacity:.98;transform:translate(-50%,-50%) scale(.62) rotate(372deg)}
  82%,100%{opacity:0;transform:translate(-50%,-50%) scale(.10) rotate(592deg)}
}

/* Orbitas suaves de tres colores: un lenguaje visual distinto al tornado anterior. */
.jc-orbit-tracks{position:absolute;z-index:2;left:50%;top:50%;width:min(58vw,650px);aspect-ratio:1;transform:translate(-50%,-50%);opacity:0;animation:jcOrbitTracks 6.8s ease-in-out forwards;pointer-events:none}
.jc-orbit-tracks span{position:absolute;inset:12%;border-radius:50%;border:3px solid transparent;filter:drop-shadow(0 0 10px currentColor)}
.jc-orbit-tracks span:nth-child(1){color:#139ee8;border-top-color:#139ee8;border-bottom-color:rgba(19,158,232,.30);transform:rotate(18deg) scaleX(1.18)}
.jc-orbit-tracks span:nth-child(2){color:#ff8b1d;border-right-color:#ff8b1d;border-left-color:rgba(255,139,29,.28);transform:rotate(72deg) scaleY(.86)}
.jc-orbit-tracks span:nth-child(3){color:#e53c91;border-top-color:#e53c91;border-right-color:rgba(229,60,145,.26);transform:rotate(132deg) scaleX(.88)}
@keyframes jcOrbitTracks{
  0%,31%{opacity:0;transform:translate(-50%,-50%) scale(.62) rotate(0)}
  41%{opacity:.38;transform:translate(-50%,-50%) scale(.86) rotate(70deg)}
  61%{opacity:.9;transform:translate(-50%,-50%) scale(1) rotate(360deg)}
  75%{opacity:.72;transform:translate(-50%,-50%) scale(.72) rotate(720deg)}
  84%,100%{opacity:0;transform:translate(-50%,-50%) scale(.20) rotate(930deg)}
}

/* Fusion luminosa central, sin forma de tornado. */
.jc-orbit-core{position:absolute;left:50%;top:50%;z-index:4;width:min(34vw,360px);aspect-ratio:1;transform:translate(-50%,-50%) scale(.08);opacity:0;border-radius:50%;animation:jcOrbitCore 6.8s cubic-bezier(.17,.72,.18,1) forwards;pointer-events:none}
.jc-orbit-core:before,.jc-orbit-core:after{content:"";position:absolute;inset:0;border-radius:50%}
.jc-orbit-core:before{background:conic-gradient(from 0deg,#1aa7ed,#35bc72,#ff9b20,#eb3a91,#7458ff,#1aa7ed);filter:blur(4px);animation:jcCoreSpin 1.05s linear infinite}
.jc-orbit-core:after{inset:18%;background:radial-gradient(circle,#fff 0 20%,rgba(255,255,255,.96) 28%,rgba(190,239,255,.68) 47%,transparent 72%);box-shadow:0 0 56px rgba(74,162,255,.48)}
.jc-orbit-core span{position:absolute;z-index:2;left:50%;top:50%;width:16%;height:62%;border-radius:999px;transform-origin:50% 0;background:linear-gradient(to bottom,rgba(255,255,255,.96),transparent);filter:blur(2px)}
.jc-orbit-core span:nth-child(1){transform:rotate(0deg);background:linear-gradient(to bottom,#1aa7ed,transparent)}
.jc-orbit-core span:nth-child(2){transform:rotate(120deg);background:linear-gradient(to bottom,#ff9721,transparent)}
.jc-orbit-core span:nth-child(3){transform:rotate(240deg);background:linear-gradient(to bottom,#e63d92,transparent)}
@keyframes jcCoreSpin{to{transform:rotate(360deg)}}
@keyframes jcOrbitCore{
  0%,47%{opacity:0;transform:translate(-50%,-50%) scale(.08)}
  58%{opacity:.35;transform:translate(-50%,-50%) scale(.56)}
  72%{opacity:1;transform:translate(-50%,-50%) scale(1)}
  80%{opacity:1;transform:translate(-50%,-50%) scale(.48)}
  86%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.46)}
}
.jc-orbit-aurora{position:absolute;z-index:1;left:50%;top:50%;width:min(84vw,900px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;opacity:0;background:radial-gradient(circle,rgba(255,255,255,.92),rgba(101,210,255,.28) 24%,rgba(255,150,38,.16) 43%,rgba(229,60,145,.12) 57%,transparent 72%);filter:blur(12px);animation:jcOrbitAurora 6.8s ease-in-out forwards}
@keyframes jcOrbitAurora{0%,39%{opacity:0;transform:translate(-50%,-50%) scale(.4)}61%{opacity:.56;transform:translate(-50%,-50%) scale(.86)}76%{opacity:.92;transform:translate(-50%,-50%) scale(1.06)}87%,100%{opacity:0;transform:translate(-50%,-50%) scale(1.38)}}

.jc-vortex-message{z-index:7!important;color:#0b3767!important;animation:jcAuroraMessage 6.8s ease-out forwards!important}
.jc-vortex-message strong{font-size:clamp(34px,6.2vw,82px)!important;line-height:1.02!important;letter-spacing:-.035em!important;background:linear-gradient(90deg,#0b65b6 0%,#0da3d5 30%,#f07822 63%,#cf3c92 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;text-shadow:0 8px 28px rgba(46,113,170,.14)!important}
.jc-vortex-message span{margin-top:15px!important;color:#315d87!important;font-size:clamp(12px,1.55vw,18px)!important;letter-spacing:.09em!important;font-weight:800!important;text-transform:none!important}
@keyframes jcAuroraMessage{0%,80%{opacity:0;transform:translateY(12px) scale(.94)}88%{opacity:1;transform:translateY(0) scale(1.025)}94%,100%{opacity:1;transform:translateY(0) scale(1)}}

/* La intro v22 no usa los elementos visuales del tornado histórico. */
.jc-vortex-ring,.jc-vortex-spark,.jc-vortex-tornado{display:none!important}
html.jc-transition-armed body::after{background:#eef9ff!important}

@media(max-width:640px){
  .jc-vortex-logo--ccj{width:47vw!important;height:47vw!important}
  .jc-vortex-logo--jc{width:40vw!important;height:40vw!important}
  .jc-vortex-logo--solos{width:43vw!important;height:43vw!important}
  .jc-orbit-tracks{width:88vw}
  .jc-orbit-core{width:56vw}
  .jc-orbit-aurora{width:118vw}
  .jc-vortex-message{padding:22px!important}
  .jc-vortex-message strong{font-size:clamp(32px,10.7vw,50px)!important}
  .jc-vortex-message span{max-width:86vw;margin-inline:auto!important;font-size:10.5px!important;line-height:1.35!important;letter-spacing:.035em!important}
}
@media(max-width:390px){
  .jc-vortex-logo--ccj{width:49vw!important;height:49vw!important}
  .jc-vortex-logo--jc{width:42vw!important;height:42vw!important}
  .jc-vortex-logo--solos{width:45vw!important;height:45vw!important}
}
