/* WebPrime Studio — Asset 03: Hero / Slider Premium */
.wphero{
	--wph-bg:#0A0A0F;
	--wph-overlay:#050507;
	--wph-overlay-opacity:30%;
	--wph-gradient-strength:48%;
	--wph-nav:#fff;
	--wph-ambient-strength:18;
	--wph-ambient-move:18%;
	--wph-ambient-blur:90px;
	--wph-ambient-speed:26s;
	--wph-ambient-color:#fff;
	position:relative;
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	min-height:var(--wph-d-h);
	background:var(--wph-bg);
	color:#fff;
	overflow:hidden;
	isolation:isolate;
}
.wphero__slides{position:relative;width:100%;height:100%;min-height:inherit}
.wphero__slide{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	min-height:inherit;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	z-index:0;
	transition:opacity .65s cubic-bezier(.22,.61,.36,1),transform .65s cubic-bezier(.22,.61,.36,1);
}
.wphero__slide.is-active{
	position:relative;
	opacity:1;
	visibility:visible;
	pointer-events:auto;
	z-index:2;
}
.wphero.transition-fade .wphero__slide{transform:none}
.wphero.transition-slide .wphero__slide{transform:translateX(5%)}
.wphero.transition-slide .wphero__slide.is-active{transform:translateX(0)}
.wphero__media,.wphero__overlay,.wphero__gradient,.wphero__ambient{position:absolute;inset:0}
.wphero__media{z-index:0;background:var(--wph-bg)}
.wphero__media picture,.wphero__media img{display:block;width:100%;height:100%}
.wphero__media img{
	object-fit:var(--wph-fit,cover);
	object-position:var(--wph-d-fx) var(--wph-d-fy);
}
.wphero__placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:inherit;color:rgba(255,255,255,.58);background:linear-gradient(135deg,#11131a,#08090e)}
.wphero__overlay{z-index:1;background:color-mix(in srgb,var(--wph-overlay) var(--wph-overlay-opacity),transparent);pointer-events:none}
.wphero__gradient{z-index:2;pointer-events:none}
.wphero.gradient-left .wphero__gradient{background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.36) var(--wph-gradient-strength),transparent 76%)}
.wphero.gradient-right .wphero__gradient{background:linear-gradient(270deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.36) var(--wph-gradient-strength),transparent 76%)}
.wphero.gradient-bottom .wphero__gradient{background:linear-gradient(0deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.30) var(--wph-gradient-strength),transparent 76%)}
.wphero.gradient-none .wphero__gradient{display:none}

.wphero__content{
	position:absolute;
	z-index:4;
	left:var(--wph-d-x);
	top:var(--wph-d-y);
	transform:translateY(-50%);
	width:min(var(--wph-d-w),88%);
}
.wphero__copy{display:flex;flex-direction:column;align-items:stretch;gap:var(--wph-copy-gap,14px)}
.wphero.title-align-left .wphero__title{text-align:left;margin-left:0;margin-right:auto}
.wphero.title-align-center .wphero__title{text-align:center;margin-left:auto;margin-right:auto}
.wphero.title-align-right .wphero__title{text-align:right;margin-left:auto;margin-right:0}
.wphero.title-align-left .wphero__kicker{text-align:left;align-self:flex-start}
.wphero.title-align-center .wphero__kicker{text-align:center;align-self:center}
.wphero.title-align-right .wphero__kicker{text-align:right;align-self:flex-end}
.wphero.lead-align-left .wphero__lead{text-align:left;margin-left:0;margin-right:auto}
.wphero.lead-align-center .wphero__lead{text-align:center;margin-left:auto;margin-right:auto}
.wphero.lead-align-right .wphero__lead{text-align:right;margin-left:auto;margin-right:0}
.wphero.button-align-left .wphero__buttons{justify-content:flex-start}
.wphero.button-align-center .wphero__buttons{justify-content:center}
.wphero.button-align-right .wphero__buttons{justify-content:flex-end}
.wphero__underline{text-decoration-line:underline;text-decoration-skip-ink:auto}
.wphero__copy--laptop,.wphero__copy--tablet,.wphero__copy--mobile{display:none}
.wphero__eyebrow{margin:0;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.16em;text-transform:uppercase}
.wphero__title{margin:0;font-size:clamp(44px,5vw,78px);font-weight:650;line-height:.98;letter-spacing:-.055em;text-wrap:balance}
.wphero__lead{margin:0;max-width:680px;font-size:18px;line-height:1.5;text-wrap:pretty}
.wphero__buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.wphero.buttons-stack .wphero__buttons{flex-direction:column;align-items:flex-start}
.wphero .wphero__button,
.wphero .wphero__button:visited,
.wphero .wphero__button:hover,
.wphero .wphero__button:focus{
	--wph-btn-text:#111;
	--wph-btn-bg:#fff;
	--wph-btn-text-hover:#fff;
	--wph-btn-bg-hover:#7657FF;
	--wph-btn-border:transparent;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	color:var(--wph-btn-text)!important;
	background:var(--wph-btn-bg)!important;
	border:1px solid var(--wph-btn-border)!important;
	text-decoration:none!important;
	box-shadow:none!important;
	font-size:14px;
	font-weight:650;
	line-height:1;
	transition:transform .22s ease,color .22s ease,background .22s ease,border-color .22s ease;
}
.wphero .wphero__button:hover{
	color:var(--wph-btn-text-hover)!important;
	background:var(--wph-btn-bg-hover)!important;
	transform:translateY(-1px);
}
.wphero__button--secondary{--wph-btn-text:#fff;--wph-btn-bg:transparent;--wph-btn-border:#fff;--wph-btn-text-hover:#111;--wph-btn-bg-hover:#fff}


/* Bloque de contenido: presets simples + modo manual */
.wphero.d-block-left .wphero__content{left:6%;right:auto;transform:translateY(-50%)}
.wphero.d-block-center .wphero__content{left:50%;right:auto;transform:translate(-50%,-50%);margin-left:0;margin-right:0}
.wphero.d-block-right .wphero__content{left:auto;right:6%;transform:translateY(-50%)}
.wphero.d-block-manual .wphero__content{left:var(--wph-d-x);right:auto;transform:translateY(-50%)}

/* Movimiento ambiental v1.7.4 — movimiento real controlado por JS */
.wphero__ambient{
	position:absolute;
	inset:-14%;
	z-index:3;
	overflow:hidden;
	pointer-events:none;
	opacity:calc(var(--wph-ambient-strength,18) / 100);
	mix-blend-mode:screen;
	transform:translateZ(0);
}
.wphero.ambient-none .wphero__ambient{display:none}
.wphero__blob{
	position:absolute;
	display:block;
	border-radius:50%;
	pointer-events:none;
	will-change:transform;
	filter:blur(var(--wph-ambient-blur,90px));
	transform:translate3d(0,0,0);
}

/* Humo: 3 masas con formas diferentes */
.wphero.ambient-smoke .wphero__blob--1{
	width:64vw;height:28vw;left:-7%;top:10%;
	background:radial-gradient(ellipse at center,
		var(--wph-ambient-color,#fff) 0%,
		rgba(255,255,255,.62) 20%,
		rgba(255,255,255,.18) 46%,
		transparent 74%);
	opacity:.76;
}
.wphero.ambient-smoke .wphero__blob--2{
	width:52vw;height:22vw;right:-6%;bottom:4%;
	background:radial-gradient(ellipse at center,
		var(--wph-ambient-color,#fff) 0%,
		rgba(255,255,255,.48) 22%,
		rgba(255,255,255,.14) 50%,
		transparent 76%);
	opacity:.62;
}
.wphero.ambient-smoke .wphero__blob--3{
	width:42vw;height:18vw;left:30%;top:44%;
	background:radial-gradient(ellipse at center,
		var(--wph-ambient-color,#fff) 0%,
		rgba(255,255,255,.38) 24%,
		rgba(255,255,255,.10) 52%,
		transparent 78%);
	opacity:.54;
}

/* Luz flotante: 2 halos principales + uno tenue */
.wphero.ambient-glow .wphero__blob--1{
	width:40vw;height:40vw;left:3%;top:-10%;
	background:radial-gradient(circle at center,
		var(--wph-ambient-color,#fff) 0%,
		rgba(255,255,255,.42) 24%,
		rgba(255,255,255,.10) 52%,
		transparent 72%);
	opacity:.78;
}
.wphero.ambient-glow .wphero__blob--2{
	width:34vw;height:34vw;right:0%;bottom:-12%;
	background:radial-gradient(circle at center,
		var(--wph-ambient-color,#fff) 0%,
		rgba(255,255,255,.32) 28%,
		rgba(255,255,255,.08) 56%,
		transparent 74%);
	opacity:.68;
}
.wphero.ambient-glow .wphero__blob--3{
	width:24vw;height:24vw;left:42%;top:36%;
	background:radial-gradient(circle at center,
		var(--wph-ambient-color,#fff) 0%,
		rgba(255,255,255,.18) 30%,
		transparent 72%);
	opacity:.42;
}

@media(max-width:599px){
	.wphero__ambient{inset:-20%}
	.wphero.ambient-smoke .wphero__blob--1{width:120vw;height:55vw;left:-28%;top:18%}
	.wphero.ambient-smoke .wphero__blob--2{width:105vw;height:48vw;right:-30%;bottom:10%}
	.wphero.ambient-smoke .wphero__blob--3{width:90vw;height:40vw;left:10%;top:50%}
	.wphero.ambient-glow .wphero__blob--1{width:90vw;height:90vw;left:-20%;top:-10%}
	.wphero.ambient-glow .wphero__blob--2{width:78vw;height:78vw;right:-20%;bottom:-10%}
	.wphero.ambient-glow .wphero__blob--3{width:60vw;height:60vw;left:20%;top:40%}
}

.wphero__arrows{position:absolute;z-index:5;display:flex;gap:8px;right:28px;bottom:26px}
.wphero.nav-middle .wphero__arrows{inset:50% 20px auto 20px;transform:translateY(-50%);justify-content:space-between;pointer-events:none}
.wphero__arrow{
	width:44px;height:44px;border-radius:999px;border:1px solid color-mix(in srgb,var(--wph-nav) 40%,transparent);
	background:rgba(0,0,0,.18);color:var(--wph-nav);font-size:28px;line-height:1;cursor:pointer;
	display:grid;place-items:center;backdrop-filter:blur(8px);transition:background .2s ease,transform .2s ease
}
.wphero.nav-middle .wphero__arrow{pointer-events:auto}
.wphero__arrow:hover{background:rgba(0,0,0,.38);transform:scale(1.04)}
.wphero__dots{position:absolute;z-index:5;left:50%;bottom:28px;transform:translateX(-50%);display:flex;gap:7px}
.wphero__dot{width:8px;height:8px;padding:0;border:0;border-radius:99px;background:color-mix(in srgb,var(--wph-nav) 42%,transparent);cursor:pointer;transition:width .25s ease,background .25s ease}
.wphero__dot.is-active{width:24px;background:var(--wph-nav)}

@media(max-width:1199px) and (min-width:900px){
	.wphero{min-height:var(--wph-l-h)}
	.wphero__media img{object-position:var(--wph-l-fx) var(--wph-l-fy)}
	.wphero__content{top:var(--wph-l-y);width:min(var(--wph-l-w),88%)}
	.wphero.l-block-left .wphero__content{left:6%;right:auto;transform:translateY(-50%)}
	.wphero.l-block-center .wphero__content{left:50%;right:auto;transform:translate(-50%,-50%);margin-left:0;margin-right:0}
	.wphero.l-block-right .wphero__content{left:auto;right:6%;transform:translateY(-50%)}
	.wphero.l-block-manual .wphero__content{left:var(--wph-l-x);right:auto;transform:translateY(-50%)}
	.wphero__copy--desktop{display:none}.wphero__copy--laptop{display:flex}
}
@media(max-width:899px) and (min-width:600px){
	.wphero{min-height:var(--wph-t-h)}
	.wphero__media img{object-position:var(--wph-t-fx) var(--wph-t-fy)}
	.wphero__content{top:var(--wph-t-y);width:min(var(--wph-t-w),88%)}
	.wphero.t-block-left .wphero__content{left:6%;right:auto;transform:translateY(-50%)}
	.wphero.t-block-center .wphero__content{left:50%;right:auto;transform:translate(-50%,-50%);margin-left:0;margin-right:0}
	.wphero.t-block-right .wphero__content{left:auto;right:6%;transform:translateY(-50%)}
	.wphero.t-block-manual .wphero__content{left:var(--wph-t-x);right:auto;transform:translateY(-50%)}
	.wphero__copy--desktop{display:none}.wphero__copy--tablet{display:flex}
	.wphero__title{font-size:clamp(38px,7vw,60px)}
}
@media(max-width:599px){
	.wphero.mobile-height-fixed{min-height:var(--wph-m-h)}
	.wphero.mobile-height-screen{min-height:100svh}
	.wphero.mobile-height-auto{min-height:0}
	.wphero.mobile-height-auto .wphero__slide{position:relative;min-height:520px}
	.wphero__media img{object-position:var(--wph-m-fx) var(--wph-m-fy)}
	.wphero__content{top:var(--wph-m-y);width:min(var(--wph-m-w),88%)}
	.wphero.m-block-left .wphero__content{left:6%;right:auto;transform:translateY(-50%)}
	.wphero.m-block-center .wphero__content{left:50%;right:auto;transform:translate(-50%,-50%);margin-left:0;margin-right:0}
	.wphero.m-block-right .wphero__content{left:auto;right:6%;transform:translateY(-50%)}
	.wphero.m-block-manual .wphero__content{left:var(--wph-m-x);right:auto;transform:translateY(-50%)}
	.wphero__copy--desktop{display:none}.wphero__copy--mobile{display:flex}
	.wphero__title{font-size:clamp(34px,10vw,52px);line-height:1.01}
	.wphero__lead{font-size:15.5px}
	.wphero.hide-eyebrow-mobile .wphero__copy--mobile .wphero__eyebrow{display:none}
	.wphero.hide-lead-mobile .wphero__copy--mobile .wphero__lead{display:none}
	.wphero.hide-secondary-mobile .wphero__copy--mobile .wphero__button--secondary{display:none}
	.wphero__arrows{right:16px;bottom:18px}
	.wphero__dots{bottom:22px}
	.wphero__arrow{width:40px;height:40px}
	.wphero.gradient-left .wphero__gradient,.wphero.gradient-right .wphero__gradient{
		background:linear-gradient(0deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.30) 58%,transparent 88%)
	}
}
@media(prefers-reduced-motion:reduce){
	.wphero__slide,.wphero__button,.wphero__arrow,.wphero__dot{transition:none!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;
  }
}
