/* WebPrime Sections v1.3.0 */
.wps-section{
	--wps-section-bg:#0A0A0F;--wps-card:#101014;--wps-text:#FFFFFF;--wps-muted:#A5A5AE;--wps-accent:#7657FF;--wps-accent-2:#A98CFF;
	position:relative;background:var(--wps-section-bg);color:var(--wps-text);overflow:hidden;
}
.wps-section.is-full-bleed{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.wps-section.bg-soft:before,.wps-section.bg-grid:before{content:"";position:absolute;inset:0;pointer-events:none}
.wps-section.bg-soft:before{background:radial-gradient(circle at 18% 10%,color-mix(in srgb,var(--wps-accent) 6%,transparent),transparent 28%),radial-gradient(circle at 84% 14%,color-mix(in srgb,var(--wps-accent-2) 4%,transparent),transparent 24%)}
.wps-section.bg-grid:before{opacity:.055;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:46px 46px}
.wps-shell{position:relative;z-index:1;width:100%;margin:0 auto}
.wps-section.content-full .wps-shell{max-width:none!important}
.wps-header{margin:0}
.wps-section.is-header-centered .wps-header{margin-left:auto;margin-right:auto}
.wps-section.is-header-centered .wps-lead{margin-left:auto;margin-right:auto}
.wps-kicker{margin:0 0 10px;font-size:11px;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--wps-accent) 72%,white)}
.wps-title{margin:0;color:var(--wps-text);font-size:clamp(34px,3.3vw,54px);line-height:1.02;letter-spacing:-.045em;font-weight:680}
.wps-lead{max-width:720px;margin-top:14px;margin-bottom:0;color:var(--wps-muted);font-size:16px;line-height:1.55}
.wps-mobile{display:none}
.wps-grid{display:grid}
.wps-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;border-style:solid;border-width:1px;border-color:rgba(255,255,255,.10);background:linear-gradient(145deg,rgba(255,255,255,.014),rgba(255,255,255,0)),var(--wps-card);box-shadow:0 10px 28px rgba(0,0,0,.16);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.wps-section.is-hover-zoom .wps-card:hover{transform:translateY(-5px) scale(1.007)}
.wps-section.is-hover-light .wps-card:hover{border-color:color-mix(in srgb,var(--wps-accent) 42%,rgba(255,255,255,.16));box-shadow:0 18px 42px rgba(0,0,0,.24),0 0 28px color-mix(in srgb,var(--wps-accent) 7%,transparent)}
.wps-card__wash{position:absolute;z-index:-1;width:280px;height:280px;left:var(--wps-x,80%);top:var(--wps-y,5%);transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;opacity:0;filter:blur(18px);background:radial-gradient(circle,color-mix(in srgb,var(--wps-accent) 18%,transparent),transparent 70%);transition:opacity .3s ease}
.wps-section.is-glow .wps-card:hover .wps-card__wash{opacity:1}
.wps-card__dots{display:none;position:absolute;right:2px;top:2px;width:150px;height:92px;pointer-events:none;opacity:.38;mask-image:radial-gradient(circle at 86% 10%,#000 0 34%,transparent 78%)}
.wps-section.is-dots .wps-card__dots{display:block}
.wps-card__dots:before,.wps-card__dots:after,.wps-card__dots i{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.34) 1px,transparent 1.2px);background-size:13px 13px;animation:wpsDots 14s linear infinite}
.wps-card__dots:after{opacity:.35;background-size:19px 19px;animation-duration:22s;animation-direction:reverse}
.wps-card__dots i:nth-child(1){opacity:.20;animation-duration:18s}.wps-card__dots i:nth-child(2){opacity:.15;animation-duration:26s;animation-direction:reverse}.wps-card__dots i:nth-child(3){opacity:.10;animation-duration:32s}
@keyframes wpsDots{to{background-position:42px 26px}}
.wps-card__top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.wps-card__icon{display:grid;place-items:center;border-radius:14px;border:1px solid color-mix(in srgb,var(--wps-accent) 34%,transparent);background:color-mix(in srgb,var(--wps-accent) 9%,transparent);color:color-mix(in srgb,var(--wps-accent) 68%,white)}
.wps-card__icon i,.wps-card__icon svg{fill:currentColor}
.wps-card__eyebrow{font-size:10px;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#7F8394}
.wps-card__title{margin:0;color:var(--wps-text);font-size:clamp(22px,1.75vw,29px);line-height:1.10;letter-spacing:-.03em;font-weight:680}
.wps-card__desc{margin:11px 0 18px;color:var(--wps-muted);font-size:15px;line-height:1.54;max-width:660px}
.wps-card__metric{margin:2px 0 18px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.075);background:rgba(5,6,11,.52);display:flex;flex-direction:column;justify-content:center}
.wps-card__metric-head{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#878A99}
.wps-live{display:flex;align-items:center;gap:5px;color:#74CF9F}.wps-live i{width:5px;height:5px;border-radius:50%;background:#66D99C;animation:wpsPulse 1.9s ease-in-out infinite}
@keyframes wpsPulse{50%{transform:scale(1.3);opacity:.65}}
.wps-card__metric-body{display:flex;align-items:center;gap:18px;margin-top:10px}.wps-value{font-size:25px;line-height:1;font-weight:720;letter-spacing:-.04em;min-width:64px;transition:.16s ease}.wps-value.is-changing{opacity:.35;transform:translateY(2px)}
.wps-activity-line{flex:1;height:30px;display:flex;align-items:center;gap:4px}.wps-activity-line span{display:block;flex:1;height:2px;border-radius:999px;background:color-mix(in srgb,var(--wps-accent) 70%,white);opacity:.45;animation:wpsActivity 2.6s ease-in-out infinite}
.wps-activity-line span:nth-child(2){animation-delay:-.8s}.wps-activity-line span:nth-child(3){animation-delay:-1.4s}.wps-activity-line span:nth-child(4){animation-delay:-.3s}.wps-activity-line span:nth-child(5){animation-delay:-1.9s}
@keyframes wpsActivity{0%,100%{transform:scaleY(1);opacity:.25}50%{transform:scaleY(6);opacity:.85}}
.wps-card__metric-note{margin-top:8px;font-size:10px;color:#6F7281}
.wps-card__visual{margin:2px 0 18px;width:100%;overflow:hidden;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:#07070B}.wps-card__visual img,.wps-card__visual video{width:100%;height:100%;display:block;object-fit:cover}
.wps-card__link{margin-top:auto;min-height:44px;display:inline-flex;align-items:center;gap:8px;color:#EEEAFD;text-decoration:none;font-size:13px;font-weight:650}.wps-card__link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.wps-card:hover .wps-card__link svg{transform:translateX(3px)}

@media(max-width:767px){
	.wps-desktop{display:none!important}.wps-mobile{display:block!important}
	.wps-title{font-size:clamp(30px,9vw,42px)}.wps-lead{font-size:15px}
	.wps-section.is-hover-zoom .wps-card:hover{transform:none}
	.wps-section.is-mobile-hide-visuals .wps-card__metric,.wps-section.is-mobile-hide-visuals .wps-card__visual{display:none!important}

	/* Default: single-column reading */
	.wps-section.mobile-stack .wps-grid{grid-template-columns:1fr!important}

	/* Optional compact 2x2 */
	.wps-section.mobile-compact2 .wps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
	.wps-section.mobile-compact2 .wps-card{min-height:0!important;padding:18px!important}
	.wps-section.mobile-compact2 .wps-card__top{margin-bottom:12px}
	.wps-section.mobile-compact2 .wps-card__icon{width:40px!important;height:40px!important;border-radius:11px}
	.wps-section.mobile-compact2 .wps-card__title{font-size:17px;line-height:1.12}
	.wps-section.mobile-compact2 .wps-card__eyebrow{font-size:8px}
	.wps-section.mobile-compact2 .wps-card__link{font-size:12px;min-height:40px}
	.wps-section.mobile-compact2.is-mobile-compact-text .wps-card__desc{font-size:12.5px;line-height:1.4;display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
	.wps-section.mobile-compact2 .wps-card__dots{width:96px;height:70px}

	/* Optional horizontal swipe */
	.wps-section.mobile-swipe .wps-grid{
		display:grid!important;
		grid-auto-flow:column;
		grid-auto-columns:min(84vw,360px);
		grid-template-columns:none!important;
		overflow-x:auto;
		scroll-snap-type:x mandatory;
		scroll-padding-left:2px;
		padding-bottom:8px;
		-webkit-overflow-scrolling:touch;
	}
	.wps-section.mobile-swipe .wps-card{scroll-snap-align:start;min-height:300px!important}
	.wps-section.mobile-swipe .wps-grid::-webkit-scrollbar{height:4px}
	.wps-section.mobile-swipe .wps-grid::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:999px}
}
@media(prefers-reduced-motion:reduce){
	.wps-card,.wps-card__dots:before,.wps-card__dots:after,.wps-card__dots i,.wps-live i,.wps-activity-line span,.wps-value{animation:none!important;transition:none!important}
}
\n\n/* WebPrime Sections 1.4.2 hotfix additions */
.wps-section{--wps-cta-text:#EEEAFD;--wps-cta-text-hover:#B9A8FF;--wps-cta-bg:#18181F;--wps-cta-bg-hover:#7657FF}
.wps-section.grid-left .wps-grid{margin-left:0;margin-right:auto}.wps-section.grid-center .wps-grid{margin-left:auto;margin-right:auto}.wps-section.grid-right .wps-grid{margin-left:auto;margin-right:0}
.wps-section.density-compact .wps-card__top{margin-bottom:12px}.wps-section.density-compact .wps-card__desc{margin:8px 0 12px}.wps-section.density-normal .wps-card__top{margin-bottom:16px}.wps-section.density-normal .wps-card__desc{margin:10px 0 16px}.wps-section.density-airy .wps-card__top{margin-bottom:20px}.wps-section.density-airy .wps-card__desc{margin:13px 0 20px}
.wps-section .wps-card__link,.wps-section .wps-card__link:visited,.wps-section .wps-card__link:hover,.wps-section .wps-card__link:focus{color:var(--wps-cta-text)!important;background:transparent!important;text-decoration:none!important;box-shadow:none!important;outline:none!important}
.wps-section .wps-card__link:hover{color:var(--wps-cta-text-hover)!important}
.wps-section.cta-pill .wps-card__link,.wps-section.cta-solid .wps-card__link{align-self:flex-start;padding:9px 14px;border-radius:999px!important;background:var(--wps-cta-bg)!important}
.wps-section.cta-pill .wps-card__link:hover,.wps-section.cta-solid .wps-card__link:hover{background:var(--wps-cta-bg-hover)!important;color:var(--wps-cta-text-hover)!important}.wps-section.cta-solid .wps-card__link{border-radius:10px!important}
@media(min-width:900px){.wps-card{min-height:var(--wps-studio-desktop,220px)!important}}
@media(max-width:899px) and (min-width:600px){.wps-card{min-height:var(--wps-studio-tablet,210px)!important}}
@media(max-width:599px){.wps-card{min-height:var(--wps-studio-mobile,0px)!important}}


/* WebPrime Studio · Transiciones premium entre secciones · v1.10.1
   Lógica corregida:
   - Curva superior = la sección actual entra por encima de la anterior.
   - Curva inferior = el COLOR DE LA SIGUIENTE SECCIÓN entra desde abajo,
     como una nueva capa con esquinas superiores redondeadas.
*/
.wp-curve-top{
  border-top-left-radius:var(--wp-section-radius,32px);
  border-top-right-radius:var(--wp-section-radius,32px);
  margin-top:calc(var(--wp-section-overlap,0px) * -1);
  position:relative;
  z-index:3;
  overflow:hidden;
}

/* No redondeamos el borde inferior de la sección actual:
   eso era lo que producía la curva "al revés". */
.wp-curve-bottom{
  position:relative;
  z-index:2;
  overflow:visible!important;
  padding-bottom:var(--wp-transition-depth,28px);
}

/* Esta capa representa visualmente el inicio de la SIGUIENTE sección. */
.wp-curve-bottom::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:var(--wp-transition-depth,28px);
  background:var(--wp-transition-next,#fff);
  border-top-left-radius:var(--wp-section-radius,32px);
  border-top-right-radius:var(--wp-section-radius,32px);
  pointer-events:none;
  z-index:10;
}

/* El solapamiento inferior ahora hace que la capa de transición suba,
   no que la sección actual se redondee hacia abajo. */
.wp-curve-bottom::after{
  transform:translateY(calc(var(--wp-section-overlap,0px) * -1));
}

@media(max-width:599px){
  .wp-curve-no-mobile.wp-curve-top{
    border-top-left-radius:0!important;
    border-top-right-radius:0!important;
    margin-top:0!important;
  }
  .wp-curve-no-mobile.wp-curve-bottom{
    padding-bottom:0!important;
  }
  .wp-curve-no-mobile.wp-curve-bottom::after{
    display:none!important;
  }
}
