:root {
	--fade: #F2F2F2;
	--white: #FFFFFF;
	--green: #07E400;
}

body {
	overflow-x: auto;
}

html, body {
  overscroll-behavior: none;
}


.header-fixed-custom {
	background: #FFFFFF !important;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
}

.header-fixed-custom.is-sticky {
	background: #E5E5E5 !important;
}

.logo-hide-on-scroll {
	position: relative;
}

.logo-hide-on-scroll:after {
	background: #FFFFFF !important;
	content: '';
	height: 100%;
	position: absolute;
	right: -100%;
	top: 0;
	width: 100%;
	z-index: 200;
	
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
}

.header-fixed-custom.is-sticky .logo-hide-on-scroll:after {
	background: #E5E5E5 !important;
	right: -50px;
}

.header-fixed-custom:hover .logo-hide-on-scroll:after {
	right: -100%;
}

.video-transparent {
	mix-blend-mode: multiply;
	/*transform: scale(1.8);*/
	transform: scale(1.4);
}

.same-height {
	height: 100%;
}

.same-width {
	width: 100%;
}

.video-scale-2 {
	    transform: scale(1.2);
}


.fade-bg-video video {
	mix-blend-mode: multiply !important;
}

.fade-bg-video-light {
	mix-blend-mode: lighten !important;
}



/* carrusel 3d */
/* Contenedor con perspectiva */
.carousel-3d-wrapper {
	perspective: 1000px;
	/*width: 100%;
	max-width: 500px;*/
	/*padding: 40px 20px;*/
	box-sizing: border-box;
}

/* Carrusel 3D */
.carousel-3d {
	position: relative;
	/*width: 100%;*/
	/*height: 180px;*/
	transform-style: preserve-3d;
	transition: transform 0.8s ease;
}

/* Cada slide */
.carousel-item {
	position: absolute;
	top: 50%;
	left: 50%;
	/*width: 100%;*/
	
	/*max-width: 420px;
	max-width: 360px;*/
	max-width: 100%;

	/*height: 120px;*/
	transform-style: preserve-3d;

	/*background: #ffffff;*/
	/*border-radius: 16px;*/
	/*box-shadow: 0 20px 40px rgba(0, 0, 0, 0.35);*/
	
	/*display: flex;
	justify-content: center;
	align-items: center;*/

	/*padding: 0 20px;*/

	box-sizing: border-box;
	/*text-align: center;
	font-size: 20px;
	font-weight: 600;
	color: #111827;*/

	transform: translate(-50%, -50%);

	/* Solo el activo visible */
	opacity: 0;
	pointer-events: none;
	/*transition: opacity 0.35s ease;*/
	transition: opacity 1s ease;
}

/* Slide activo */
.carousel-item.is-active {
	opacity: 1;
	pointer-events: auto;
}
/***/

.elementor-widget-video .elementor-wrapper iframe, .elementor-widget-video .elementor-wrapper video {
	background-color: transparent !important;
}

/* flip-box-custom */
/* CONTENEDOR */
.flip-box-custom{
  perspective: 1000px;
  position: relative;
}

/* EL QUE ROTA */
.flip-box-custom .flip-inner{
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transition: transform .6s cubic-bezier(.2,.8,.2,1);
  will-change: transform;
}

/* ESTADO: volteado */
.flip-box-custom.is-flipped .flip-inner{
  transform: rotateY(180deg);
}

/* CARAS */
.flip-box-custom .front-cover,
.flip-box-custom .back-cover{
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform-style: preserve-3d;
  /* evita “flicker” por subpixel */
  transform: translateZ(0);
}

/* FRONT visible por defecto */
.flip-box-custom .front-cover{
  transform: rotateY(0deg) translateZ(0);
}

/* BACK volteada para que al rotar el inner quede de frente */
.flip-box-custom .back-cover{
  transform: rotateY(180deg) translateZ(0);
}

/* Botones (si quieres) */
.boton-flip{ display:none; cursor:pointer; }
.boton-flip.is-active{ display:block; }
/***/

.header-responsive .header-iso {
	opacity: 0;
}

.marquesina {

}
.marquesina .swiper-wrapper {
	transition-timing-function: linear !important;
}

.marquesina .swiper-container {
	overflow: hidden;
}

.boton-flotante {
	right: -190px !important;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
}
.boton-flotante-parent:hover .boton-flotante {
	right: 0px !important;
}



/* inicio hp scroll */
/* Wrapper */
.hp-hscroll{
  --hp-offset-left: 100px;
  --hp-gap: 10px;
  position: relative;
}

/* Track (scroll real) */
.hp-hscroll__track{
  display: flex;
  gap: var(--hp-gap);
  overflow-x: auto;
  overflow-y: hidden;
  padding-left: var(--hp-offset-left);
  padding-right: 12px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* Firefox */
  
  max-width: 100%;
  min-width: 0;
}
.hp-hscroll__track::-webkit-scrollbar{ display:none; }

/* Items (ejemplo, ajusta a tu diseño) */
.hp-hscroll__item{
  flex: 0 0 auto !important;
  
  /*width: 400px;  
  min-width: 400px;*/

  width: 360px;  
  min-width: 360px;

  /* ajusta */
  /*border-radius: 16px;
  padding: 18px;
  background: #f3f3f3;*/
}

/* Custom small scrollbar 50% */
.hp-hscroll__bar {
	/*width: 50%;*/
	width: 70px;

	height: 4px;
	background: #F1FFE880;
	margin: 12px auto 0;
	border-radius: 999px;
	position: relative;
}
.hp-hscroll__bar.hscroll-dark {
	background: #E5E5E5;
}
.hp-hscroll__thumb{
	height: 100%;
	
	/*width: 20%;*/
	width: 30px;
	
	/*background: #F1FFE8;*/
	background: var(--green);

	border-radius: 999px;
	position: absolute;
	left: 0;
	transform: translateX(0);
	transition: transform 0.08s linear;
}
.hp-hscroll__bar.hscroll-dark .hp-hscroll__thumb {
	background: #1B4544;
}
/* fin hp scroll */




.visible-xs {
	display: none !important;
}

/* Medium & mobile devices (phone, tablets, 768px and less) */
@media screen and (max-width: 767px) {
	.visible-xs {
		display: block !important;
	}

	.hidden-xs {
		display: none !important;
	}
}

/* Mobile devices (tablet, 768px and up) */
@media (min-width: 768px) {

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

	/* header */
	.header-responsive .column-menu {
		left: 0;
		transition: all 0.2s ease-in-out;
	}
	.header-responsive .header-iso {
		opacity: 0;
		transition: all 0.3s ease-in-out;
	}
	.header-responsive.is-sticky {
		/*opacity: 0.5;*/
	}
	.header-responsive.is-sticky .column-menu {
		left: -58%;
	}
	.header-responsive.is-sticky:hover {
		/*opacity: 1;*/
	}
	
	.header-responsive.is-sticky .header-iso {
		background: var(--e-global-color-7dd62d5);
		opacity: 1;
	}
	
	.header-responsive.is-sticky:hover .header-iso {
		opacity: 0;
		background: none;
	}
	.header-responsive.is-sticky:hover .column-menu {
		left: 0;
	}
	/***/
	.video-scale-2 {
	    transform: scale(1.3);
	}
	
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	.video-scale-2 {
			transform: scale(1.3);
	}
}

/* XXL Extra large devices (HD-4K, 1400px and up) */
@media (min-width: 1400px) {
	.video-scale-2 {
			transform: scale(1);
	}
}