/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 30 2025 | 21:50:32 */
/* ============================================
   1. VARIABLES GLOBALES
============================================ */
:root {
  /* -------------------------
     🎨 Paleta Rio Grande (Verdes vibrantes)
  ------------------------- */
  --color-rio-grande-50: #fafce9;
  --color-rio-grande-100: #f3f8cf;
  --color-rio-grande-200: #e6f1a5;
  --color-rio-grande-300: #d3e670;
  --color-rio-grande-400: #b7d333;
  --color-rio-grande-500: #a0bc26; /* Base */
  --color-rio-grande-600: #7c961a;
  --color-rio-grande-700: #5f7318;
  --color-rio-grande-800: #4b5b19;
  --color-rio-grande-900: #414e19;
  --color-rio-grande-950: #212a09; /* Más oscuro */

  /* -------------------------
     🎨 Paleta Cerulean (Azules frescos)
  ------------------------- */
  --color-cerulean-50: #f0faff;
  --color-cerulean-100: #e0f4fe;
  --color-cerulean-200: #b9ebfe;
  --color-cerulean-300: #7cdcfd;
  --color-cerulean-400: #36ccfa;
  --color-cerulean-500: #0cb6eb; /* Base */
  --color-cerulean-600: #00a3df;
  --color-cerulean-700: #0175a3;
  --color-cerulean-800: #066286;
  --color-cerulean-900: #0b516f;
  --color-cerulean-950: #07344a; /* Más oscuro */

  /* -------------------------
     🎨 Paleta Violet Eggplant (Violetas profundos)
  ------------------------- */
  --color-violet-eggplant-50: #fdf6fd;
  --color-violet-eggplant-100: #fbebfc;
  --color-violet-eggplant-200: #f7d7f7;
  --color-violet-eggplant-300: #f0b7ef;
  --color-violet-eggplant-400: #e68ce2;
  --color-violet-eggplant-500: #d65fd1; /* Base */
  --color-violet-eggplant-600: #b940b1;
  --color-violet-eggplant-700: #9c3393;
  --color-violet-eggplant-800: #7d2b75;
  --color-violet-eggplant-900: #67285f;
  --color-violet-eggplant-950: #430f3d; /* Más oscuro */

  /* -------------------------
     🎨 Primary (Grises oscuros)
  ------------------------- */
  --color-primary-50: #f6f6f6;
  --color-primary-100: #e7e7e7;
  --color-primary-200: #d1d1d1;
  --color-primary-300: #b0b0b0;
  --color-primary-400: #888888;
  --color-primary-500: #6d6d6d; /* Base */
  --color-primary-600: #5d5d5d;
  --color-primary-700: #4f4f4f;
  --color-primary-800: #454545;
  --color-primary-900: #3d3d3d;
  --color-primary-950: #191919; /* Más oscuro */

  /* -------------------------
     🎨 Básicos
  ------------------------- */
  --color-white: #ffffff;
  --color-black: #000000;

  /* -------------------------
     🎨 Escala de grises
  ------------------------- */
  --color-gray-1: #333333;
  --color-gray-100: #2B2B2B;
  --color-gray-2: #4f4f4f;
  --color-gray-3: #828282;
  --color-gray-4: #bdbdbd;
  --color-gray-5: #e0e0e0;
  --color-gray-6: #f2f2f2;

  /* -------------------------
     🎨 Colores extra
  ------------------------- */
  --color-red: #e12d2d;
  --color-orange: #ff9012;
  --color-yellow: #f6c11e;
  --color-green-1: #00b84f;
  --color-green-2: #27ae60;
  --color-green-3: #6fcf97;
  --color-blue-1: #2f80ed;
  --color-blue-2: #2d9cdb;
  --color-blue-3: #56ccf2;
  --color-purple-1: #9b51e0;
  --color-purple-2: #bb6bd9;
  --color-manual: #f4ed0b; /* Amarillo manual */
	--color-beige: #FFF4E6;

  /* -------------------------
     🎨 Tipografías
  ------------------------- */
  --ff-mikado-regular: 'MikadoRegular', sans-serif;
  --ff-mikado-medium: 'MikadoMedium', sans-serif;
  --ff-coyni-regular: 'Coiny-Regular', sans-serif;
}

/* ============================================
   2. RESET BÁSICO
============================================ */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  font-family: var(--ff-mikado-regular);
  font-size: 16px;
  line-height: 22px;
  color: var(--color-gray-2);
}

body p,
.ui_form p{
    padding: 0;
    margin: 0;
}

/* Cada párrafo que sigue a otro párrafo recibe margin-bottom */
body p + p {
    margin-top: 15px; /* o margin-bottom si prefieres */
}
.ui_form p + p{
    margin-top: 0px; /* o margin-bottom si prefieres */
}

h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd { margin: 0; }
ul, ol { list-style: none; padding: 0; }
a { text-decoration: none; color: inherit; }

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
	width:100%;
	margin:0;
	padding:0;
  height: auto;
}

input, textarea, select, button {
  font: inherit;
  color: inherit;
  margin: 0;
  border: none;
  outline: none;
  background: none;
  padding: 0;
}

input:focus, textarea:focus, select:focus { outline: none; box-shadow: none; border-color: inherit; }

select { appearance: none; -webkit-appearance: none; -moz-appearance: none; }
button { cursor: pointer; background: none; border: none; }

table { border-collapse: collapse; border-spacing: 0; }

/* ============================================
   3. UTILIDADES GENERALES
============================================ */
body .ui_subtitulo_campo {
	color:#000!important;
	font-weight:500!important;
	font-size:14px!important;
	width:100%!important;
	max-width:100%!important;
}
/* -------------------------
   Posición
------------------------- */
.ui_pos-rel { position: relative; }
.ui_pos-abs {
  	position: absolute;
  	bottom: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
	object-fit: cover;
  	transition: transform 0.6s ease-in-out;
}
.ui_pos-abs.valor img {
	object-fit: auto;	
}
.ui_slide .ui_pos-abs * { 
	position: absolute;
	bottom: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
	object-fit: cover;
}
.ui_pos-abs .jet-listing-dynamic-image { width: 100%; height: 100%; }
.ui_pos-abs img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }

	.ui_hidden {
		overflow: hidden;
	}

/* -------------------------
   Overlay
------------------------- */
.ui_overlay { background-color: var(--color-black); transition: all .3s linear; }
.ui_overlay--15 { opacity: 0.15; }
.ui_overlay--20 { opacity: 0.20; }
.ui_overlay--25 { opacity: 0.25; }

/* GLOBAL */
/* .ui_card.productos .jet-listing-grid__item > div,
.ui_card.productos .jet-listing-grid__item > div > div,
.ui_card.productos .jet-listing-grid__item > div > div > div,
.ui_card.productos .jet-listing-grid__item > div > div > div > div {
	height: 100%;
	display: -webkit-flex;
	display: flex;
	align-items: bottom;
} */

/* -------------------------
   Espaciados fijos
------------------------- */
.ui_p-8 {padding:8px;}
.ui_pt-330 { padding-top: 330px; }
.ui_pt-163 { padding-top: 163px; }
.ui_pt-72 { padding-top: 72px; }
.ui_pt-42 { padding-top: 42px; }
.ui_pb-80 { padding-bottom: 80px; }
.ui_pt-219 { padding-top: 219px; }
.ui_pb-100 { padding-bottom: 100px; }
.ui_pb-109 { padding-bottom: 109px; }
.ui_py-7 { padding-top: 7px; padding-bottom: 7px; }
.ui_py-18 { padding-top: 18px; padding-bottom: 18px; }
.ui_px-24 { padding-left: 24px; padding-right: 24px; }
.ui_px-32 { padding-left: 32px; padding-right: 32px; }
.ui_px-202 { padding-left: 202px; padding-right: 202px; }
.ui_px-53 { padding-left: 53px; padding-right: 53px; }
.ui_pl-78 {	padding-left:78px; }
.ui_pr-112 { padding-right:112px; }
.ui_px-78 { padding-left: 78px; padding-right: 78px; }
.ui_pt-50 { padding-top: 50px; }
.ui_pt-64 { padding-top: 64px; }
.ui_py-80 {padding-top:80px; padding-bottom:80px;}
.ui_pt-80 {padding-top:80px}
.ui_p-32 { padding:32px; }
.ui_p-8 {padding: 8px;}
.ui_p-36 { padding:36px; }
.ui_p-16 { padding:16px; }
.ui_p-20 { padding:20px; }
.ui_pt-150 { padding-top: 150px; }
.ui_pt-154 { padding-top: 154px; }
.ui_pt-170 { padding-top: 170px; }
.ui_pt-174 { padding-top: 174px; }
.ui_pt-80 {padding-top:80px}
.ui_py-32 { padding-top: 32px; padding-bottom: 32px; }
.ui_py-42 { padding-top: 42px; padding-bottom: 42px; }
.ui_pt-20 { padding-top: 20px; }
.ui_pt-54 { padding-top: 54px; }
.ui_pb-40 { padding-bottom: 40px; }
.ui_pt-58 {padding-top: 58px;}
.ui_pb-60 { padding-bottom: 60px; }
.ui_pb-65 { padding-bottom: 65px; }
.ui_pb-70 { padding-bottom: 70px; }
.ui_pb-74 { padding-bottom: 74px; }
.ui_pb-76 { padding-bottom: 76px; }
.ui_pb-97{ padding-bottom: 97px;}
.ui_pb-79 { padding-bottom: 79px; }
.ui_pb-80 { padding-bottom: 80px; }
.ui_pb-90 { padding-bottom: 90px; }
.ui_px-10 {padding-left:10px;padding-right:10px;}
.ui_pb-53 { padding-bottom: 53px; }
.ui_px-12 { padding-left: 12px; padding-right: 12px; }
.ui_px-13 { padding-left: 13px; padding-right: 13px; }
.ui_py-6  { padding-top: 6px; padding-bottom: 6px; }
.ui_mb-6 { margin-bottom:6px; }
.ui_mb-12 { margin-bottom:12px; }
.ui_mb-16 { margin-bottom:16px; }
.ui_mb-25 { margin-bottom:25px; }
.ui_mt-14 { margin-top:14px; }
.ui_mb-65 { margin-bottom:65px; }
.ui_mb-63 { margin-bottom:63px; }
.ui_mb-35 { margin-bottom:35px; }
.ui_mb-136 { margin-bottom:136px; }
.ui_mb-146 { margin-bottom:146px; }
.ui_pt-74 { padding-top: 74px; }
.ui_pt-285 {padding-top: 285px;}
.ui_pt-48 { padding-top: 48px; }
.ui_mb-20 { margin-bottom: 20px; }
.ui_pb-84 {padding-bottom: 84px; }
.ui_lineclamp-2 {
	 display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* -------------------------
   Gaps
------------------------- */
.ui_gap-6 { gap: 6px; }
.ui_gap-7 { gap: 7px; }
.ui_gap-8 { gap: 8px; }
.ui_gap-10 { gap: 10px; }
.ui_gap-12 { gap: 12px; }
.ui_gap-14 { gap: 14px; }
.ui_gap-16 { gap: 16px; }
.ui_gap-18 { gap: 18px; }
.ui_gap-20 { gap: 20px; }
.ui_gap-22 { gap: 22px; }
.ui_gap-24 { gap: 24px; }
.ui_gap-26 { gap: 26px; }
.ui_gap-28 { gap: 28px; }
.ui_gap-32 { gap: 32px; }
.ui_gap-38 { gap: 38px; }
.ui_gap-40 { gap: 40px; }
.ui_gap-42 { gap: 42px; }
.ui_gap-50 { gap: 50px; }
.ui_gap-54 { gap: 54px; }
.ui_gap-60 { gap: 60px; }
.ui_gap-66 { gap: 66px; }
.ui_gap-68 { gap: 68px; }
.ui_gap-80 { gap: 80px; }
.ui_gap-97 { gap: 97px; }
.ui_gap-130 { gap: 130px; }
.ui_gap-171 { gap: 171px; }
.ui_gap-155 { gap: 155px; }
.ui_gap-186 { gap: 186px; }

/* -------------------------
   Bordes
------------------------- */
.ui_border-1-white-rounded-10 { border: 1px solid #fff; border-radius: 10px; }

/* -------------------------
   Bordes redondeados
------------------------- */
.ui_radius-100 { border-radius: 100px; }
.ui_radius-16 { border-radius: 16px; }
.ui_radius-24 { border-radius: 24px; }
.ui_radius-32 { border-radius: 32px; }
.ui_radius-33 { border-radius: 33px; }
.ui_radius-40 { border-radius: 40px; }
.ui_radius { border-radius: 50%; }

/* Contenedor flexible */
.ui_height,
.ui_height .jet-listing-dynamic-image,
.ui_height .swiper-slide {
  	display: flex;
  	align-items: flex-start;    
	justify-content: flex-start;   
	box-sizing: border-box;
  	width: auto; 
}

/* Imágenes globales */
.ui_height img,
.btn-eliminar--26,
.ui_height > img,
.ui_height .jet-listing-dynamic-image img,
.ui_height .swiper-slide img {
  width: auto;          /* no ocupar todo el ancho */
  height: auto;         
  max-height: 100%;     /* se ajusta al contenedor o variante de altura */
  object-fit: contain;  /* mantiene proporción */
  display: block;
  margin: 0;
  border: none;
}
body .btn-eliminar {
	display: -webkit-flex;
	display: flex;
	align-items: center;
	gap: 10px;
}
body .btn-eliminar img {
	height: 20px;
	background-image: contain;
}
/* Variantes de altura */
.ui_height--10 img,
.ui_height--10 > img { max-height: 10px; }

.ui_height--60 img,
.ui_height--60 > img { max-height: 60px; }

.ui_height--32 img,
.ui_height--32 > img { max-height: 32px; }

.ui_height--71 img,
.ui_height--71 > img { max-height: 71px; }

.ui_height--40 img,
.ui_height--40 > img { max-height: 40px; }

.ui_height--80 img,
.ui_height--80 > img { max-height: 80px; }

.ui_height--252 img,
.ui_height--252 > img { height: 252px; border-radius: 12px; overflow: hidden; object-fit: cover;  }

.ui_height--356 img,
.ui_height--356 > img { max-height: 356px; }

.ui_height--434 img,
.ui_height--434 > img { max-height: 434px; }

.ui_height--16 img,
.ui_height--16 > img { max-height: 16px; }

.ui_height--26 img,
.ui_height--26 > img { max-height: 26px; }

.btn-eliminar--26 img {
	max-height: 26px;
}

.ui_height--20 img,
.ui_height--20 > img { max-height: 20px; }

.ui_height--14 img,
.ui_height--14 > img { max-height: 14px; }

.ui_height--52 img,
.ui_height--52 > img { max-height: 52px; }

/* Alturas */
.ui_h--440 { height: 440px; }
.ui_h--444 { height: 444px; }
.ui_h--338 { height: 338px; }
.ui_h--299 { height: 299px; }
.ui_h--241 { height: 241px; }
body .ui_h--44 { height: 44px; }
.ui_h--22 { height: 22px; }
.ui_h--50 { height: 50px; }
body .ui_h--34 { height: 34px; }

/* Párrafos y textos */
body p, .ui_form p { margin: 0; padding: 0; }
body p + p { margin-top: 15px; }
.ui_form p + p { margin-top: 0; }

/* ============================================
   3a. UTILIDADES RESPONSIVE
============================================ */
@media (max-width: 1280px) {
	/* Variantes de altura */
	.ui_h--299 { height: 260px; }
	.ui_h--444 { height: 380px; }
	.ui_h--338 { height: 300px; }
	.ui_h--241 { height: 200px; }
	body .ui_h--44 { height: 40px; }
	.ui_h--22 { height: 20px; }
		
	.ui_height--26 img,
  	.ui_height--26 > img { max-height: 22px; }
	
	.ui_height--52 img,
    .ui_height--52 > img { max-height: 46px; }
	
	.ui_height--14 img,
  	.ui_height--14 > img { max-height: 12px; }
	
	/* -------------------------
	   Espaciados fijos
	------------------------- */
	.ui_pt-241 { padding-top: 180px; }
	.ui_pl-78 { padding-left: 60px; }
  	.ui_pr-112 { padding-right: 80px; }
	.ui_pb-109 { padding-bottom: 80px; }
	.ui_px-202 { padding-left: 160px; padding-right: 160px; }
	.ui_pt-150 { padding-top: 120px; }
	.ui_pb-90 { padding-bottom: 70px; }
	.ui_pt-74 { padding-top: 60px; }
	.ui_pt-285 { padding-top: 200px; }
	.ui_p-32 { padding: 24px; }
	.ui_pt-219 { padding-top: 160px; }
	.ui_pt-72 { padding-top: 60px; }
	.ui_py-42 { padding-top: 36px; padding-bottom: 36px; }
	.ui_pb-76 { padding-bottom: 64px; }
	.ui_mb-16 { margin-bottom: 14px; }
	.ui_mb-63 { margin-bottom: 50px; }
	.ui_mb-146 { margin-bottom: 110px; }
	.ui_mb-25 { margin-bottom: 22px; }
	.ui_mb-20 { margin-bottom: 18px; }
	.ui_pb-84 { padding-bottom: 70px; }
	.ui_mb-146 { margin-bottom: 110px; }
	.ui_pt-168 { padding-top: 130px; }
	.ui_pt-58 { padding-top: 48px; }
	.ui_pt-174 { padding-top: 140px; }
	.ui_pt-163 { padding-top: 130px; }
	.ui_pb-100 { padding-bottom: 80px; }
	.ui_pb-97 { padding-bottom: 75px; }
	
	/* -------------------------
	   Gaps
	------------------------- */
	.ui_gap-24 { gap: 10px; }
	.ui_gap-130 { gap: 60px; }
	.ui_gap-60 { gap: 48px; }
	.ui_gap-66 { gap: 50px; }
	.ui_gap-171 { gap: 30px; }
	.ui_gap-26 { gap: 22px; }
	.ui_gap-42 { gap: 34px; }
	.ui_gap-155 { gap: 100px; }
	.ui_gap-68 { gap: 48px; }
	.ui_gap-97 { gap: 72px; }
	.ui_gap-28 { gap: 22px; }
	
	body .btn-eliminar img {
		height: 18px;		
	}
}

@media (max-width: 1024px) {
  	/* -------------------------
	   Espaciados fijos
	------------------------- */
  	.ui_pt-330 { padding-top: 260px; }	
  	.ui_pb-80 { padding-bottom: 60px; }
  	.ui_py-18 { padding-top: 14px; padding-bottom: 14px; }
  	.ui_px-32 { padding-left: 26px; padding-right: 26px; }
	.ui_pt-50 { padding-top: 35px;}
	.ui_py-32 { padding-top: 26px; padding-bottom: 26px; }
	.ui_px-53 { padding-left: 30px; padding-right: 30px; }
	.ui_px-78 { padding-left: 48px; padding-right: 48px; }
	.ui_py-80 {padding-top:60px; padding-bottom:60px;}
  	.ui_pt-20 { padding-top: 16px; }
  	.ui_pt-54 { padding-top: 44px; }
	.ui_pb-90 { padding-bottom: 50px; }
	.ui_pb-60 { padding-bottom: 40px; }
  	.ui_pb-40 { padding-bottom: 32px; }
  	.ui_px-13 { padding-left: 10px; padding-right: 10px; }
  	.ui_py-6  { padding-top: 5px; padding-bottom: 5px; }
	.ui_p-36 { padding: 28px; }
	.ui_px-202 { padding-left: 120px; padding-right: 120px; }
	.ui_pb-109 { padding-bottom: 60px; }
	.ui_pl-78 { padding-left: 40px; }
    .ui_pr-112 { padding-right: 60px; }
	.ui_pt-42 { padding-top: 32px; }	
	.ui_pt-64 { padding-top: 42px; }
	.ui_pt-74 { padding-top: 45px; }
	.ui_pt-285 { padding-top: 150px; }	
	.ui_pb-74 { padding-bottom: 48px; }
	.ui_pb-70 { padding-bottom: 46px; }
	.ui_pb-79 { padding-bottom: 63px; }
	.ui_pb-65 { padding-bottom: 50px; }
	.ui_pb-53 { padding-bottom: 36px; }
	.ui_pt-154 { padding-top: 130px; }
	.ui_pt-170 { padding-top: 120px; }
	.ui_pt-150 { padding-top: 110px; }
	.ui_mb-35 { margin-bottom: 24px; }
	.ui_mb-136 { margin-bottom: 96px; }
	.ui_mb-35 { margin-bottom: 24px; }
	.ui_pt-219 { padding-top: 120px; }
	.ui_py-42 { padding-top: 30px; padding-bottom: 30px; }
	.ui_pt-72 { padding-top: 48px; }
	.ui_pb-76 { padding-bottom: 52px; }
	.ui_mb-16 { margin-bottom: 12px; }
	.ui_mb-63 { margin-bottom: 40px; }
	.ui_mb-146 { margin-bottom: 80px; }
	.ui_mb-25 { margin-bottom: 18px; }
	.ui_mb-20 { margin-bottom: 16px; }
	.ui_pb-84 { padding-bottom: 55px; }
	.ui_mb-146 { margin-bottom: 80px; }
	.ui_pt-168 { padding-top: 130px; }
	.ui_pt-58 { padding-top: 40px; }
	.ui_pt-174 { padding-top: 130px; }
	.ui_pt-163 { padding-top: 130px; }
	.ui_pb-100 { padding-bottom: 65px; }
	.ui_pb-97 { padding-bottom: 60px; }
	

  	/* Gaps */
	.ui_gap-8 { gap: 6px; }
	.ui_gap-10 { gap: 8px; }
  	.ui_gap-12 { gap: 10px; }
	.ui_gap-16 { gap: 14px; }
  	.ui_gap-18  { gap: 16px; }
	.ui_gap-20 { gap: 16px; }
  	.ui_gap-22 { gap: 18px; }
  	.ui_gap-24 { gap: 16px; }
	.ui_gap-60 { gap: 36px; }
	.ui_gap-66 { gap: 36px; }
  	.ui_gap-32 { gap: 24px; }
	.ui_gap-38 { gap: 24px; }
	.ui_gap-40 { gap: 32px; }
	.ui_gap-50 { gap: 40px; }
	.ui_gap-60 { gap: 40px; }
  	.ui_gap-80 { gap: 60px; }
  	.ui_gap-54 { gap: 32px; }
	.ui_gap-186 { gap: 120px; }
	.ui_gap-130 { gap: 30px; }
	.ui_gap-26 { gap: 18px; }
	.ui_gap-42 { gap: 28px; }
	.ui_gap-155 { gap: 60px; }
	.ui_gap-68 { gap: 32px; }
	.ui_gap-97 { gap: 48px; }
	.ui_gap-28 { gap: 18px; }


	/* 	Bordes redondeados */
	.ui_radius-24 {border-radius:20px;}
	.ui_radius-40 { border-radius: 32px; }
		
	/* 	variantes de altura */
	.ui_height--71 img,
  	.ui_height--71 > img { max-height: 56px; }
	
	.ui_height--14 img,
	.ui_height--14 > img { max-height: 10px; }
	
	.ui_height--26 img,
  	.ui_height--26 > img { max-height: 20px; }
	
	.ui_height--52 img,
    .ui_height--52 > img { max-height: 40px; }
	
	.ui_height--60 img,
	.ui_height--60 > img { max-height: 50px; }
	
	.ui_height--40 img,
  	.ui_height--40 > img { max-height: 32px; }
	
	.ui_height--80 img,
  	.ui_height--80 > img { max-height: 64px; }
	
	.ui_height--434 img,
	.ui_height--434 > img { max-height: 320px; }
	
	.ui_height--252 img,
  	.ui_height--252 > img { height: 200px; }
	
	.ui_height--16 img,
  	.ui_height--16 > img { max-height: 14px; }
	
	.ui_height--356 img,
  	.ui_height--356 > img { max-height: 260px; }
	
	body .btn-eliminar img {
		height: 16px;		
	}
	
	/* 	Altura */
	.ui_h--440 { height: 340px;	}
	.ui_h--299 { height: 220px; }
	.ui_h--444 { height: 320px; }
	.ui_h--444 { height: 340px; }
	.ui_h--338 { height: 250px; }
	.ui_h--241 { height: 170px; }
	.ui_pt-241 { padding-top: 120px; }
	body .ui_h--44 { height: 36px; }
	.ui_h--22 { height: 18px; }
	
	
		
	.ui_cover_individual { height: 360px; }
	
  	/* Bordes */
  	.ui_border-1-white-rounded-10 { border-radius: 8px; }
  	.ui_radius-40 { border-radius: 30px; }
	.ui_radius-32 { border-radius: 24px; }
	.ui_radius-33 { border-radius: 28px; }
}

@media (max-width: 767px) {
  	/* Espaciados */
  	.ui_pt-330 { padding-top: 200px; }
  	.ui_pb-80 { padding-bottom: 40px; }
  	.ui_py-18 { padding-top: 10px; padding-bottom: 10px; }
  	.ui_px-32 { padding-left: 15px; padding-right: 15px; }
	.ui_px-53 { padding-left: 20px; padding-right: 20px; }
	.ui_px-78 { padding-left: 20px; padding-right: 20px; }
	.ui_pl-78 { padding-left: 20px; }
	.ui_pb-90 { padding-bottom: 30px;}	
  	.ui_pr-112 { padding-right: 20px; }
	.ui_py-80 {padding-top:40px; padding-bottom:40px;}
	.ui_pt-50 { padding-top: 30px;}
	.ui_pb-60 { padding-bottom: 30px; }
	.ui_py-32 { padding-top: 20px; padding-bottom: 20px; }
 	.ui_pt-20 { padding-top: 12px; }
  	.ui_pt-54 { padding-top: 34px; }
  	.ui_pb-40 { padding-bottom: 26px; }
  	.ui_px-13 { padding-left: 8px; padding-right: 8px; }
  	.ui_py-6  { padding-top: 4px; padding-bottom: 4px; }
	.ui_p-36 { padding: 22px; }	
	.ui_px-202 { padding-left: 30px; padding-right: 30px; }
	.ui_pb-109 { padding-bottom: 50px; }
	.ui_pt-42 { padding-top: 24px; }
	.ui_pt-241 { padding-top: 80px; }
	.ui_pt-64 { padding-top: 30px; }
	.ui_pb-79 { padding-bottom: 55px; }
	.ui_pb-100 { padding-bottom: 45px; }
	.ui_pb-97 { padding-bottom: 40px; }
	.ui_pt-285 { padding-top: 110px; }
	.ui_pb-70 { padding-bottom: 40px; }
	.ui_pt-170 { padding-top: 110px; }
	.ui_mb-35 { margin-bottom: 16px; }
	.ui_pb-53 { padding-bottom: 24px; }
	.ui_mb-35 { margin-bottom: 16px; }
	.ui_mb-136 { margin-bottom: 0px; }
	.ui_pt-74 { padding-top: 40px; }
	.ui_py-42 { padding-top: 20px; padding-bottom: 20px; }
	.ui_pt-72 { padding-top: 36px; }
	.ui_pb-76 { padding-bottom: 36px; }
	.ui_mb-63 { margin-bottom: 10px; }
	.ui_mb-16 { margin-bottom: 10px; }
	.ui_mb-146 { margin-bottom: 60px; }
	.ui_mb-25 { margin-bottom: 15px; }
	.ui_mb-20 { margin-bottom: 12px; }
	.ui_pb-84 { padding-bottom: 40px; }
	.ui_mb-146 { margin-bottom: 30px; }
	.ui_pt-58 { padding-top: 32px; }
	
  	/* Gaps */
	.ui_gap-8 { gap: 4px; }
	.ui_gap-10 { gap: 6px; }
  	.ui_gap-12 { gap: 8px; }
	.ui_gap-16 { gap: 10px; }
  	.ui_gap-18  { gap: 12px; }
	.ui_gap-20 { gap: 12px; }
  	.ui_gap-22 { gap: 14px; }
  	.ui_gap-24 { gap: 12px; }
	.ui_gap-32 { gap: 18px; }
	.ui_gap-38 { gap: 16px; }
	.ui_gap-40 { gap: 24px; }
	.ui_gap-50 { gap: 20px; }
	.ui_gap-60 { gap: 20px; }
  	.ui_gap-68 { gap: 20px; }
	.ui_gap-80 { gap: 40px; }
  	.ui_gap-54 { gap: 20px; }
	.ui_gap-186 { gap: 40px; }
	.ui_gap-66 { gap: 20px; }
	.ui_gap-130 { gap: 30px; }
	.ui_gap-60 { gap: 24px; }
	.ui_gap-26 { gap: 14px; }
	.ui_gap-42 { gap: 20px; }
	.ui_gap-155 { gap: 30px; }
	.ui_gap-97 { gap: 24px; }
	.ui_gap-28 { gap: 14px; }
	
	/* 	Bordes redondeados */
	.ui_radius-24 {border-radius:16px;}
	.ui_radius-40 { border-radius: 24px; }
	
	/* 	Alturas */
	.ui_height--80 img,
  	.ui_height--80 > img { max-height: 52px; }
	
	.ui_height--16 img,
  	.ui_height--16 > img { max-height: 12px; }
	
	.ui_height--14 img,
  	.ui_height--14 > img { max-height: 8px; }
	
	.ui_height--52 img,
    .ui_height--52 > img { max-height: 36px; }
	
	.ui_height--26 img,
  	.ui_height--26 > img { max-height: 18px; }
	
	.ui_height--356 img,
  	.ui_height--356 > img { max-height: 200px; }
	
	.ui_height--434 img,
  	.ui_height--434 > img { max-height: 270px; }
	
	.ui_height--60 img,
  	.ui_height--60 > img { max-height: 40px; }
	
	body .btn-eliminar img {
		height: 14px;		
	}
	
	.ui_h--444 {height: 260px; }
	.ui_h--440 { height: 280px; }
	.ui_h--299 { height: 180px; }
	.ui_h--444 { height: 240px; }
	.ui_h--338 { height: 200px; }
	.ui_h--241 { height: 140px; }
	body .ui_h--44 { height: 32px; }
	.ui_h--22 { height: 16px; }
	
			
	.ui_cover_individual { height: 240px; }

	/* Bordes */
  	.ui_border-1-white-rounded-10 { border-radius: 6px; }
  	.ui_radius-40 { border-radius: 20px; }
	.ui_radius-32 { border-radius: 16px; }
	.ui_radius-33 { border-radius: 22px; }
	
	.ui_video_single .ui_pos-abs {
		position: relative;
	}
	
	.ui_height--252 img,
.ui_height--252 > img { height: auto; max-height: 180px; object-fit: contain;  }
}

/* ============================================
   4. CONTENEDORES
============================================ */
.ui_grupo_secciones {
  padding-left: 50px;
  padding-right: 50px;
  width: 100%!important;
  max-width: 100%;	
}

.ui_seccion {
  position: relative;
  left: -50px;
  width: calc(100% + 100px);
  padding-right: 50px;
  padding-left: 50px;
}

.ui_seccion--0px { padding-left: 0px; padding-right: 0px; }

@media (max-width: 1024px) {
  .ui_grupo_secciones { padding-left: 20px; padding-right: 20px; }
  .ui_seccion { left: -20px; width: calc(100% + 40px); padding: 0 20px; }
  .ui_seccion--0px { padding: 0; }
}

@media (max-width: 767px) {
  .ui_grupo_secciones { padding-left: 15px; padding-right: 15px; }
  .ui_seccion { left: -15px; width: calc(100% + 30px); padding: 0 15px; }
  .ui_seccion--0px { padding: 0; }  
}

/* ============================================
   5. CABECERA
============================================ */
.ui_cabecera_grupo {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 5;
  transition: transform 0.3s ease, background-color 0.3s ease;
  background-color: transparent;
  transform: translateY(0);
}
.ui_cabecera_grupo.oculto { transform: translateY(-100%); }
.ui_cabecera_grupo.activo { background-color: var(--e-global-color-24cf721); }
.ui_cabecera_grupo.oculto-fijo {
  transform: translateY(-100%) !important;
  background-color: transparent !important;
  display: none !important;
}
.ui_cabecera_grupo.fijo-tabla {
  transform: translateY(0) !important;
  background-color: var(--e-global-color-24cf721);
  display: block !important;
}

/* MEGA MENU */
.ui_megamenu .jet-mega-menu-mega-container__inner {
	display: block!important;
}

.ui_megamenu .jet-mega-menu-mega-container {
	transform: translatex(-50%);
	left:50%;
}
/* Mega menú a ancho completo */
.jet-mega-menu-mega-container {
  position: fixed !important; /* Lo sacamos del flujo normal */
  left: 0 !important;
  right: 0 !important;
  top: var(--menu-top-offset, 100%); /* Ajusta si tu menú está fijo */
  width: 100vw !important; /* Ocupa todo el viewport */
  max-width: 100vw !important;
  transform: none !important;
  --jmm-submenu-width: 100vw !important; /* Sobrescribimos variable interna de JetMenu */
  margin: 0 !important;
  padding: 0 !important;
  z-index: 9999;
	background-color: transparent;
}
.jet-mega-menu-mega-container * {
	background-color: transparent;
}
.jet-mega-menu-mega-container {
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;	
}

/* Aseguramos que el inner también se estire */
.jet-mega-menu-mega-container__inner {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
	background-color: transparent!important;
}
/* Forzar el inner a ocupar todo el ancho */
.jet-mega-menu-mega-container__inner {
  position: relative;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;	
}

.jet-mega-menu-mega-container__inner > .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.jet-mega-menu-mega-container__inner > div {
	max-width: 1314px;
	width: 100%;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-end;
	padding-top: 20px;
}
.jet-mega-menu-mega-container__inner > div > div {
	max-width: 1111px!important;
	width: 100%;
	margin:0!important;
	background-color: var( --color-white);
	border-radius: 20px!important;
	overflow: hidden;	
	box-shadow: -11px 10px 9px -9px rgba(0,0,0,0.16);
-webkit-box-shadow: -11px 10px 9px -9px rgba(0,0,0,0.16);
-moz-box-shadow: -11px 10px 9px -9px rgba(0,0,0,0.16);
}

@media (max-width: 1024px) {
  /* Mega menú desplegable tipo toggle: ocupar todo el ancho */
	.ui_megamenu .jet-mega-menu-container{
	  position: fixed !important;          /* Se sale del toggle y se pega a la ventana */
	  top: 100px !important;
		padding-left: 20px!important; 
		padding-right: 20px!important; /* Altura exacta de tu .ui_cabecera_grupo */
	  left: 0 !important;
	  width: 100vw !important;            /* Ocupar todo el ancho de la pantalla */
	  max-width: 100vw !important;
	  margin: 0 !important;	  
	  z-index: 9999 !important;
	  transform: none !important;
		background-color: transparent!important;
}
	
	.ui_megamenu .jet-mega-menu-list {
		background-color: var(--color-white)!important; 
		padding: 20px!important; 
		border-radius: 22px!important; 
	}

	.ui_megamenu .jet-mega-menu {
	  overflow: visible !important;        /* Evita que se corte en los lados */
	}
}

@media (max-width: 767px) {
  /* Mega menú desplegable tipo toggle: ocupar todo el ancho */
	.ui_megamenu .jet-mega-menu-container {	  
	  top: 80px !important;
		padding-left: 15px!important; 
		padding-right: 15px!important; /* Altura exacta de tu .ui_cabecera_grupo */	  
	}
	
	.ui_megamenu .jet-mega-menu-list {		
		padding: 15px!important; 
		border-radius: 22px!important; 
	}	
}


/* ============================================
   6. BOTONES
============================================ */
.ui_boton {
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	gap: 10px;
  	max-width: max-content;
  	width: 100%;  	
	height:50px;
  	padding-right: 6px;
	padding-left: 20px;
  	border-radius: 50px;
  	transition: all linear 0.3s;  
  	border: 1px solid var(--e-global-color-96cc877);
  	color: var(--color-white);
  	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
  	font-size: var( --e-global-typography-f12d52c-font-size );
  	line-height: var( --e-global-typography-f12d52c-line-height );
	cursor:pointer;
}

.ui_boton--between {
	justify-content: space-between;
}
.ui_boton--full {
	width: 100%;
	max-width: 100%;
}

/* se va a ir boton full en su lugar ui_w-100 */
.ui_w-100 {
	max-width: 100%;
	width: 100%;
}
/* se va air boton texto en su lugar ui_boton--texto */
.ui_boton--texto {
	padding: 6px 20px 6px 20px;	
}

/* EFECTOS */
.ui_boton-bounce,
.ui_boton--shortcode .ui_boton_cotizacion_wrapper { 
  transition: transform 0.3s;  	
/*   will-change: transform;
  backface-visibility: hidden;
  transform: translateZ(0); */
}

.ui_boton-bounce:hover,
.ui_boton--shortcode .ui_boton_cotizacion_wrapper:hover {
  animation: bounce-y 0.6s;
}

@keyframes bounce-y {
  0%   { transform: translateY(0); }
  30%  { transform: translateY(-10px); }
  50%  { transform: translateY(3px); }
  70%  { transform: translateY(-5px); }
  100% { transform: translateY(0); }
}



/* Boton - flecha efecto */
.ui_boton__icono img {
  transform-origin: center; 
}

.ui_boton:hover .ui_boton__icono img {
  animation: ui_chicleFlechaX 0.6s ease;
}

@keyframes ui_chicleFlechaX {
  	0%   { transform: translateX(0); }
  	30%  { transform: translateX(4px); }   
  	60%  { transform: translateX(-3px); }    
	80%  { transform: translateX(2px); }     	
	100% { transform: translateX(0); }     
}

/* Efecto rebote con hover */
.ui_card.juegos .ui_boton--rio-grande:hover ~ .ui_imagen img {
  animation: ui_chicleFlechaY 0.8s ease infinite;
}

@keyframes ui_chicleFlechaY {
  0%   { transform: translateY(0); }
  30%  { transform: translateY(4px); }   /* baja un poco */
  60%  { transform: translateY(-3px); }  /* sube un poco */
  80%  { transform: translateY(2px); }   /* rebote intermedio */
  100% { transform: translateY(0); }     /* vuelve a la posición inicial */
}

/* Efecto chicle con hover */
/* Animación de rebote vertical más suave */
@keyframes ui_chicleVertical {
  0%   { transform: translateY(0); }
  25%  { transform: translateY(-5px); }   /* menos desplazamiento */
  50%  { transform: translateY(0); }    
  75%  { transform: translateY(-3px); }   /* rebote más pequeño */    	
  100% { transform: translateY(0); }     
}

/* Mantener posición inicial de la imagen */
.ui_chicle__img img {
  display: inline-block;
  transform-origin: center bottom; /* rebote desde la base */
}

.ui_boton--violet, 
body .ui_boton--violet:hover,
body .ui_boton--violet:active,
body .ui_boton--violet:focus { 
	background-color: var(--color-violet-eggplant-600); 
	color: var(--color-white); 
}

.ui_boton--cerulean-600,
body .ui_boton--cerulean-600:hover,
body .ui_boton--cerulean-600:active,
body .ui_boton--cerulean-600:focus { 
	background-color: var(--color-cerulean-600);
	color: var(--color-white);
}

.ui_boton--cerulean-500, 
body .ui_boton--cerulean-500:hover,
body .ui_boton--cerulean-500:focus,
body .ui_boton--cerulean-500:active { 
	background-color: var(--color-cerulean-500); 
	color: var(--color-white); 
}

.ui_boton--rio-grande,
body .ui_boton--rio-grande:hover,
body .ui_boton--rio-grande:focus,
body .ui_boton--rio-grande:active {
	background-color: var(--color-rio-grande-400); 
	color: var(--color-white);
}
body .ui_card.juegos .ui_boton--rio-grande:hover {
	background-color: var( --color-rio-grande-600);
}
body .ui_card.juegos .ui_boton--rio-grande:hover img {
	filter: brightness(0.71);
}
.ui_boton--rio-grande-500,
body .ui_boton--rio-grande-500:hover,
body .ui_boton--rio-grande:focus,
body .ui_boton--rio-grande:active {
	background-color: var(--color-rio-grande-500); 
	color: var(--color-white);
}

.ui_boton--white, 
body .ui_boton--white:hover,
body .ui_boton--white:focus,
body .ui_boton--white:active {
	background-color: var( --color-white); 
	color: var(--color-violet-eggplant-600); 
}

.ui_boton--line-white, 
body .ui_boton--line-white:hover,
body .ui_boton--line-white:focus,
body .ui_boton--line-white:active {
	border:1px solid var( --color-white); 
	color: var( --color-white); 
	background-color: transparent;
} 

.ui_boton--line-red, 
body .ui_boton--line-red:hover,
body .ui_boton--line-red:focus,
body .ui_boton--line-red:active {
	border:1px solid #E12D2D; 
	color: #E12D2D; 
	background-color: transparent;
} 

.ui_boton--line-violet-600, 
body .ui_boton--line-violet-600:hover,
body .ui_boton--line-violet-600:focus,
body .ui_boton--line-violet-600:active {
	border:1px solid var( --color-violet-eggplant-600);
	color: var(--color-violet-eggplant-600); 
	background-color: transparent;
}

.ui_boton--line-violet-500, 
body .ui_boton--line-violet-500:hover,
body .ui_boton--line-violet-500:focus,
body .ui_boton--line-violet-500:active {
	border:1px solid var( --color-violet-eggplant-500);
	color: var(--color-black); 
	background-color: transparent;
}

.ui_boton.ui_boton--megamenu {
	justify-content: flex-start;
}
.ui_boton.ui_boton--megamenu:hover {
	background-color: #ECFBA4;
}

.ui_boton.ui_boton--megamenu img {
	filter: brightness(0) invert(0);
}

/* Variación de tipos de boton */
.ui_boton--categoria {
	height: 26px;
	padding: 0 16px;
	border-radius: 50px;
	background-color: var(--color-violet-eggplant-600);	
}

.ui_boton--categoria:hover {
	background-color: var(--color-violet-eggplant-600);
	color: var(--color-white);
}

.ui_boton > div { 
	display: flex; 
	justify-content: center; 
	align-items: center; 
}

/* Icono del Boton */
.ui_boton img { 
	width: 12px; 
	height: 10px; 
	object-fit: contain; 
}

.ui_boton__texto { 
	font-size: 16px; 
	font-weight: 500; 
	color: var(--e-global-color-061e592); 
}

/* Icono del Boton */
.ui_boton__icono * { 
	height: auto; 
	display: flex; 
	justify-content: center; 
	align-items: center; 
}

.ui_boton__icono {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: var(--color-white);
  transition: background 0.3s ease;	
}
.ui_boton--shortcode .ui_boton__icono {
	display: none;
}
.ui_boton__icono--34 {
	height: 34px;
	width: 34px;
}

.ui_boton:hover .ui_boton__icono--none img {
	animation: none;
} 

.ui_boton--white .ui_boton__icono {
	background-color: var(--color-violet-eggplant-600);
}

.ui_form--libro .ui_boton,
.ui_form--libro .ui_boton:hover { 
	color: var(--color-black)!important; 
	background-color: var(--color-rio-grande-400);
}
.ui_boton.ui_boton__articulo {
	padding:0;
	border-radius:50%;
	width:48px;
	max-width: 100%;
	height:48px;
	flex:none;
	justify-content: center;
}
@media (max-width: 1280px) {
	body .ui_megamenu .jet-mega-menu-toggle { 
		height:38px!important; 
		width: 38px!important;
		border-radius: 8px!important; 
	}  	
	.ui_boton {
    	height: 46px;
  	}
	.ui_boton--categoria {
    	height: 24px;
    	padding: 0 14px;    
  	}
	.ui_boton__icono--34 {
		width: 30px;
		height: 30px;
	}
}

@media (max-width: 1024px) { 
  	body .ui_megamenu .jet-mega-menu-toggle { 
		height:38px!important; 
		width: 38px!important;
		color: #fff!important;
		border-radius: 8px!important; 
	}  	
	
	body .ui_megamenu .jet-mega-menu-toggle svg {
		filter: brightness(0) invert(1);
	}
	
	.ui_boton {
    	height: 42px;
  	}
  	
	.ui_boton__icono { 
		width: 26px; 
		height: 26px; 
	}
	.ui_boton__icono--34 {
		width: 28px;
		height: 28px;
	}
	/* Ocultar el menú en móvil por defecto */
  	body .ui_megamenu .jet-mega-menu-container {
    	display: none!important;
	}

  	/* Mostrar el menú solo cuando JetMenu lo abre */
  	body .ui_megamenu .jet-mega-menu--dropdown-open .jet-mega-menu-container {
    	display: block!important;
  	}
	.ui_boton.ui_boton__articulo {
    	width: 40px;
    	height: 40px;
  	}
	
	.ui_boton--categoria {
    	height: 22px;
    	padding: 0 12px;    
  	}
}

@media (max-width: 767px) {	
  	body .ui_megamenu .jet-mega-menu-toggle { 
		height:34px!important; 
		width: 34px!important; 
	}
	
	.ui_boton {
    	height: 38px;
  	}
	
	.ui_boton__icono--34 {
		width: 24px;
		height: 24px;
	}
  	
	.ui_boton--100 { width: 100%; max-width: 100%; }
	
	.ui_boton--categoria {
    	height: auto;             	
		padding: 6px 12px;        
  	}
}

/* ============================================
   7. PÁGINA INICIO - BANNERS
============================================ */

/* ============================================
   INICIO - SLIDER
============================================ */
.ui_slide .jet-listing-grid__item {
	height: 100%;
}
.ui_slide .jet-slick-dots {
	bottom: 50px;
	justify-content: flex-end;
}
.ui_slide .jet-slick-dots li {
	background-color: rgba(255, 255, 255, 0.5);
}
.ui_slide .jet-slick-dots li.slick-active {
	width: 40px;
	background-color: var(--color-white);
}

/* ============================================
   DOTS COMUNES (SLIDER, PROMOCIONES, VIDEOS)
============================================ */
.ui_slide .jet-slick-dots li,
.ui_carousel.promociones .jet-slick-dots li,
.ui_carousel.promociones .slick-dots li,
.ui_videos_carousel .slick-dots li {
	width: 12px;
	height: 12px;
	border-radius: 12px;
	transition: all .3s linear;
}
body .jet-slick-dots,
body .slick-dots {
	position: absolute;
	width: 100%;
	max-width: calc(1212px + 100px);
	left: 50%;
	padding-left: 50px;
	padding-right: 50px;
	transform: translatex(-50%);
	display: -webkit-flex;
	display: flex;
	gap: 8px;
}
body .jet-slick-dots li,
body .slick-dots li {
	margin: 0 !important;
	cursor: pointer;
}

/* ============================================
   INICIO - CAROUSEL LOS MAS POPULARES
============================================ */
.ui_card.juegos .ui_imagen {
	display: block;
	transform-origin: bottom center; /* la base de la imagen es el piso */
}

/* EFECTO CHICLE - CARD JUEGO CSS/JS */
@keyframes ui_chicleVertical {
	0%   { transform: scaleY(1); }
	20%  { transform: scaleY(1.1); }
	40%  { transform: scaleY(0.95); }
	60%  { transform: scaleY(1.1); }
	80%  { transform: scaleY(0.98); }
	100% { transform: scaleY(1); }
}
.ui_card.juegos .ui_imagen img {
	transform-origin: center bottom;
}

/* EFECTO DE ENTRADA PARA ICONOS */
/* Colocas la clase .ui_efecto y el js */
.ui_efecto img {
  opacity: 0;
  transform: scale(1);
}

.ui_efecto.visible img {
  opacity: 1;
  animation: ui_chicleCircleSoft 1.2s cubic-bezier(.68,-0.55,.27,1.55) forwards;
}

@keyframes ui_chicleCircleSoft {
  0%   { transform: scale(1); }
  30%  { transform: scaleX(1.1) scaleY(0.9); }
  60%  { transform: scaleX(0.95) scaleY(1.05); }
  80%  { transform: scaleX(1.02) scaleY(0.98); }
  100% { transform: scale(1); }
}


/* ============================================
   INICIO - CAROUSEL VIDEOS - CLIENTES FELICES
============================================ */
.ui_videos_carousel {
	display: flex;	
	width: 100%;
	opacity: 0;
	transition: opacity 0.1s ease;
}

.ui_videos_carousel.active {
	opacity: 1;
}

.ui_video_item__box {
	width:100%;
	position: relative;
	overflow: hidden;
	height: 440px;
		
}

.ui_video_item img,
.ui_video_item video {
	width:100%;
	height:100%;
	border-radius: 16px;
}

.ui_video_cover,
.ui_video_thumb {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.ui_play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.ui_play_button {
	width: 80px;
	height: 80px;
	background-image: url('/wp-content/uploads/2025/09/icono_play.svg');
	background-repeat: no-repeat;
 	background-size:contain;
	border-radius: 50%;
	border: none;
	cursor: pointer;
}
.ui_chicle_icono {
	cursor: pointer;
}
.ui_play_button:hover,
.ui_chicle_icono:hover,
.ui_paginacion .jet-filters-pagination__item:hover,
.ui_blog_categorias .ui_arrow_next:hover {
	animation: ui_chicleCircleSoft 0.8s ease-out;
}

@keyframes ui_chicleCircleSoft {
	0%   { transform: scale(1); }
	30%  { transform: scaleX(1.1) scaleY(0.9); }
	60%  { transform: scaleX(0.95) scaleY(1.05); }
	80%  { transform: scaleX(1.02) scaleY(0.98); }
	100% { transform: scale(1); }
}

/* BOTON VIDEO UNICO */
/* Botón base */
.ui_play_button.unico {
  position: relative;
  width: 112px;
  height: 112px;
  border: none;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  overflow: visible;
}

/* Círculo contenedor (sin imagen: la imagen está en ::before que rota) */
.ui_play_circle.unico {
  position: absolute;
  inset: 0;
  display: block;
  transform-origin: center;
  will-change: transform;
  backface-visibility: hidden;
  /* el scale (chicle) se aplicará a este elemento, la rotación está en ::before */
}

/* Imagen y rotación: la animación de rotate va en ::before */
.ui_play_circle.unico::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/wp-content/uploads/2025/09/circulo_video_unico.svg") no-repeat center/contain;
  display: block;
  transform-origin: center;
  will-change: transform;
  backface-visibility: hidden;
  transform: translateZ(0);
  animation: ui_giro 8s linear infinite;
}

/* Wrapper del icono (fijo en el centro) */
.ui_play_icon_wrap.unico {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 25px;
  height: 28px;
  transform: translate(-50%, -50%) scale(1);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  will-change: transform;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}

/* Icono (usa la imagen que ya tienes) */
.ui_play_icon.unico {
  width: 100%;
  height: 100%;
  background-image: url('/wp-content/uploads/2025/09/circulo_video_unico_play.svg');
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
}

/* Animación de giro (sólo en ::before) */
@keyframes ui_giro {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* --- HOVER: pause rotation, chicle SEPARADO para cada elemento --- */
/* Pausa la rotación del ::before */
.ui_play_button.unico:hover .ui_play_circle.unico::before {
  animation-play-state: paused;
}

/* Chicle para el CÍRCULO (aplicado al elemento .ui_play_circle, no al ::before) */
.ui_play_button.unico:hover .ui_play_circle.unico {
  animation: ui_chicle_circle 0.6s ease;
  transform-origin: center;
  transform: scale(1); /* estado inicial explícito */
}

/* Chicle para el ICONO (aplicado al wrapper para mantener posición) */
/* keyframes incluyen translate(-50%,-50%) para no perder el centrado */
.ui_play_button.unico:hover .ui_play_icon_wrap.unico {
  animation: ui_chicle_icon 0.6s ease;
}

/* Keyframes del chicle — círculo (escala desde el centro) */
@keyframes ui_chicle_circle {
  0%   { transform: scale(1); }
  30%  { transform: scale(1.12, 0.92); }
  50%  { transform: scale(0.92, 1.12); }
  70%  { transform: scale(1.06, 0.94); }
  100% { transform: scale(1); }
}

/* Keyframes del chicle — icon wrapper (mantiene translate para centrado) */
@keyframes ui_chicle_icon {
  0%   { transform: translate(-50%, -50%) scale(1); }
  30%  { transform: translate(-50%, -50%) scale(1.12, 0.92); }
  50%  { transform: translate(-50%, -50%) scale(0.92, 1.12); }
  70%  { transform: translate(-50%, -50%) scale(1.06, 0.94); }
  100% { transform: translate(-50%, -50%) scale(1); }
}

/* ------------------ Responsive (mismos valores que tenías) ------------------ */
/* ≤ 1280px */
@media (max-width: 1280px) {
  .ui_play_button.unico { width: 96px; height: 96px; }
  .ui_play_icon_wrap.unico { width: 22px; height: 25px; }
}

/* ≤ 1024px (tablets) */
@media (max-width: 1024px) {
  .ui_play_button.unico { width: 80px; height: 80px; }
  .ui_play_icon_wrap.unico { width: 18px; height: 21px; }
}

/* ≤ 767px (móviles) */
@media (max-width: 767px) {
  .ui_play_button.unico { width: 64px; height: 64px; }
  .ui_play_icon_wrap.unico { width: 14px; height: 16px; }
}



/* MODAL */
.ui_video_modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.8);
	justify-content: center;
	align-items: center;
}

.ui_video_modal.active {
	display: flex;
}

.ui_video_modal_content {
	position: relative;
	width: 90%;
	max-width: 900px;
	aspect-ratio: 16/9;	

}
.ui_video_modal_content video {
	width: 100%;
	height: 100%;
	aspect-ratio: 16/9;
	display: block;
	border-radius: 32px;
	background-color: var(--color-black);
}

.ui_video_modal_close {
	position: absolute;
	top: -30px;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	right: -30px;
	background-image: url('/wp-content/uploads/2025/10/icon_close.svg');
	background-color: var( --color-rio-grande-400);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 14px;	
	cursor: pointer;
}

/* Slick Slider Videos */
.ui_videos_carousel.slick-initialized .slick-track {
	display: flex !important;
	gap: 16px;
}

.ui_videos_carousel.slick-initialized .slick-slide {
	height: auto !important;
	display: flex;
	justify-content: center;
	align-items: stretch;
}
.ui_galeria_vertical {
	height: 500px;
}
.ui_galeria_vertical *  {
	height:100%;
}
@media (max-width: 1280px) {
  .ui_video_item__box {
    height: 280px;
  }
	.ui_video_modal_content video {
    border-radius: 24px;
  }
	.ui_video_modal_close {
    top: -30px;
    right: -30px;
    width: 36px;
    height: 36px;
    background-size: 12px;
  }
	
	.ui_galeria_vertical {
	height: 450px;
}
}

@media (max-width: 1024px) { 
	.ui_video_item__box {
		height: 240px;
		
	 }
	.ui_video_modal_content video {
    border-radius: 16px;
  }
	
	.ui_video_modal_close {
    top: 5px;
    right: 5px;
    width: 32px;
    height: 32px;
    background-size: 11px;
  }
	
	.ui_videos_carousel.slick-initialized .slick-track {
    	gap: 12px;
  	}
	
	.ui_video_item img, 
	.ui_video_item video { 
		height: 320px; 
	}
	
	.ui_play_button { 
		width: 60px;
		height: 60px;
	}
	
	.ui_galeria_vertical {
	height: 420px;
}
}

@media (max-width: 767px)  { 
	.ui_videos_carousel {
		position:relative;
		left: -8px;
		width: calc(100% + 23px);
	}
	
	.ui_video_item__box {
    	height: 240px!important;
    	
  	}
	
	.ui_video_modal_content video {
    border-radius: 12px;
  }
	.ui_video_modal_close {
    top: 5px;
    right: 5px;
    width: 28px;
    height: 28px;
    background-size: 10px;
  }
	
	.ui_videos_carousel.slick-initialized .slick-track {
    	gap: 8px;
  	}
	
	.ui_video_item img, 
	.ui_video_item video { 
		height: 220px; 
	} 
	
	.ui_play_button {
		width: 45px;
		height: 45px;
	}
	
	.ui_videos_carousel .slick-arrow {
		display: none!important;
	}
	
	.ui_galeria_vertical {
	height: 280px;
}
}

/* Dots Videos */
.ui_videos_carousel .slick-dots {
	padding-top: 45px;
	justify-content: center;
	position: relative;
}

.ui_videos_carousel .slick-dots li {
	background-color: rgba(255, 255, 255, 0.5);
}

.ui_videos_carousel .slick-dots li.slick-active {
	width: 40px;
	background-color: var(--color-white);
}
.ui_carousel_video_nosotros .ui_videos_carousel .slick-dots li{
	background-color: rgba(61, 61, 61, 0.5);
}
.ui_carousel_video_nosotros .ui_videos_carousel .slick-dots li.slick-active {
	background-color: var(--color-primary-900);
}

.ui_carousel_video_nosotros .ui_videos_carousel .slick-arrow {
	background-color: var(--color-violet-eggplant-600);
}

.ui_carousel_video_nosotros .ui_videos_carousel .slick-next::before {
	background-image: url('/wp-content/uploads/2025/09/boton_soporte_violet.svg');
}

.ui_videos_carousel .slick-dots li button {
	display: none;
}

@media (max-width: 1024px) { 
	.ui_videos_carousel .slick-dots { padding-top: 28px; } 
}

@media (max-width: 767px)  { 
	.ui_videos_carousel .slick-dots { padding-top: 22px; } 
}

/* MODAL EVENTOS */
.ui_image_modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
	padding: 15px; 
    height: 100%;
    background: rgba(0,0,0,0.8);
    justify-content: center;
    align-items: center;
    flex-direction: column;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.ui_image_modal.active {
    display: flex;
    opacity: 1;
}

.ui_image_modal_close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
    z-index: 10000;
	display: none;
}

.ui_eventos_gallery_container {
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	gap: 33px;
}

.ui_modal_content {
    width: 100%;
    max-width: 711px;
    padding: 17px;
    background-color: var(--color-violet-eggplant-900);
    border-radius: 13px;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	gap: 30px;
	position: relative;
}

.ui_modal_content::before {
	content:'';
	position: absolute;
    top: -40px;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    right: -40px;
    background-image: url(/wp-content/uploads/2025/10/icon_close.svg);
    background-color: var(--color-rio-grande-400);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 14px;
    cursor: pointer;
}

.ui_gallery_main {
	height: 402px;
	position: relative;
	overflow: hidden;
	border-radius: 8px;
}

.ui_gallery_main img {
    width: 100%;    
	position: absolute;
	top:0;
	left:0;
	height:100%;
    display: block;
    object-fit: cover;   
}

/* Thumbnails */
/* Contenedor general de miniaturas */
.ui_gallery_thumbs {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

/* Estilos para cuando Slick NO está activado */
.ui_gallery_thumbs:not(.slick-initialized) div {
    flex: 1 0 calc(25% - 10px); /* 4 por fila máximo */
    max-width: calc(25% - 10px);
    height: 104px;
    opacity: 0.7;
    border-radius: 8px;
    position: relative;}

/* Imagen dentro de cada thumbnail */
.ui_gallery_thumbs img {
/*     position: absolute;
    left: 0;
    bottom: 0; */
    width: 100%;
    height: 100%;
    object-fit: cover;
    cursor: pointer;
    display: block;
    border-radius: 8px;
}

.ui_gallery_thumbs.slick-initialized {
    display: block !important;
}

/* Slick activa: los slides deben ocupar 25% del contenedor y altura fija */
.ui_gallery_thumbs.slick-initialized .slick-slide {    
    
    padding: 0 5px; /* gap entre slides */
    box-sizing: border-box;
	height: 104px;
	position:relative;		
}

.ui_gallery_thumbs.slick-initialized .slick-slide img {
    width: 100%;
    height: 100%;
	
/* 	position: absolute;
	top:0;
	left:0; */
	border-radius: 8px;
    object-fit: cover;       
	overflow: hidden;
	box-sizing: border-box;
}

/* Cards */
.ui_eventos_gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.eventos_card {
    cursor: pointer;
    width: calc(50% - 8px); /* 2 por fila */
    display: flex;
    flex-direction: column;
}

.eventos_card_image {
    position: relative;
    width: 100%;
    height: 338px;
	overflow: hidden!important;
	border-radius:16px;
}

.eventos_card_image::before {
	content: '';
	position:absolute;
	bottom:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index:1;
	opacity:0.7;
	/* Degradado: transparente al inicio, casi negro al final */
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.96) 96%);
}

.eventos_card_image img {
    position:absolute;
    top:0;
    left:0;
    width: 100%;
    height:100%;
    border-radius: 12px;
    display: block;
    object-fit: cover;
}

.eventos_card_text {
    position: absolute;
    bottom: 10px;
	width:100%;
    left:0;
    color: #fff;
	z-index:2;
    padding: 5px 10px;  
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;	
}

.ui_modal_title {
	font-family: var( --e-global-typography-77a6dd2-font-family ), Sans-serif;
    font-size: var( --e-global-typography-77a6dd2-font-size );
    font-weight: var( --e-global-typography-77a6dd2-font-weight );
	color: var( --color-white);
}

.eventos_card_title {
    font-family: var( --e-global-typography-36ca6ad-font-family ), Sans-serif;
    font-size: var( --e-global-typography-36ca6ad-font-size );
    line-height: var( --e-global-typography-36ca6ad-line-height );
}

.eventos_card_category {
    display: block;
    font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	text-transform: uppercase;
}

.ui_miniaturas {
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	gap: 15px;
}

@media (max-width: 1280px) {
    .eventos_card_image {
        height: 300px; 
    }
	.ui_gallery_main {
      height: 360px;   
	}
	
	.ui_gallery_thumbs:not(.slick-initialized) div {    
    	height: 90px;                
  	}
	
	.ui_gallery_thumbs.slick-initialized .slick-slide {    
    	height: 90px;
	}
	
	.ui_eventos_gallery_container {
    gap: 28px;
  }
}

/* Responsive */
@media (max-width: 1024px) {
    .eventos_card {
        width: calc(50% - 8px);
    }
	
	.eventos_card_image {
        height: 280px; 
    }
	
	.ui_gallery_main {
      height: 300px;   
	}
	
	.ui_gallery_thumbs:not(.slick-initialized) div {    
    	height: 80px;
  	}
	.ui_gallery_thumbs.slick-initialized .slick-slide {
		height: 80px;
	}
	
	.ui_eventos_gallery_container {
    gap: 22px;
  }
}

@media (max-width: 767px) {
    .eventos_card {
        width: 100%; 
    }    
	
	.eventos_card_image {
        height: 200px;     
	}
	
	.ui_gallery_main {
      height: 220px;   	
	}
	
	.ui_gallery_thumbs:not(.slick-initialized) div {    
    	height: 60px;
  	}
	
	.ui_gallery_thumbs.slick-initialized .slick-slide {
		height: 60px;
	}
	
	.ui_eventos_gallery_container {
    gap: 16px;
  }
}


/* ============================================
   EFECTO ZOOM
============================================ */
.ui_card.imagen {
	overflow: hidden;
	position: relative;
}
.ui_card.imagen .ui_imagen {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform-origin: center center;
	transition: transform 0.25s ease-out;
}

.ui_card.imagen:hover .ui_imagen {
	transform: scale(1.06);
}

/* ============================================
   INICIO - CAROUSEL CATALOGO
============================================ */
.ui_carousel.catalogo .jet-listing-grid__slider-icon,
.ui_carousel.catalogo .slick-arrow{
	background-color: var(--color-violet-eggplant-600);
	position: absolute;
	top: -90px;
	margin-top: 0px;
}
.ui_carousel.catalogo .jet-listing-grid__slider-icon,
.ui_carousel.catalogo .slick-arrow,
.ui_videos_carousel .slick-arrow { position: absolute; top: -84px; margin-top: 0px; }
.ui_carousel.catalogo .jet-listing-grid__slider-icon.prev-arrow,
.ui_carousel.catalogo .slick-prev,
.ui_videos_carousel .slick-prev {
	left: calc(100% - 130px);
}
.ui_carousel.catalogo .jet-listing-grid__slider-icon.next-arrow::before,
.ui_carousel.catalogo .slick-next::before,
.ui_videos_carousel .slick-next::before {
	content: '';
	position: absolute;
	right: calc(100% - 6px);
	z-index: 1;
	top: 50%;
	width: 22px;
	height: 36px;
	background-image: url("/wp-content/uploads/2025/09/boton_soporte_violet.svg");
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}
.ui_videos_carousel .slick-next::before {
	background-image: url("/wp-content/uploads/2025/09/boton_soporte_rio_grande.svg");
}

/* Hace que el movimiento sea continuo */
.ui_carousel.catalogo .slick-track,
.ui_carousel.promociones .slick-track{
  transition-timing-function: linear !important;
}

/* ============================================
   INICIO - CAROUSEL PROMOCIONES
============================================ */
.ui_carousel.promociones {
	position: relative;
}

.ui_carousel.promociones .jet-listing-grid__items {
	padding-right: 62px;
	padding-left: 62px;
}

.ui_carousel.promociones .jet-listing-grid__slider-icon,
.ui_carousel.promociones .slick-arrow {
	background-color: var(--color-violet-eggplant-600);
}

.ui_carousel.promociones .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translatey(-50%);
}

.ui_carousel.promociones .jet-listing-grid__slider-icon.prev-arrow,
.ui_carousel.promociones .slick-prev { left: 0; }

.ui_carousel.promociones .jet-listing-grid__slider-icon.next-arrow,
.ui_carousel.promociones .slick-next { right: 0; }

.ui_carousel.promociones .slick-dots {
	display: -webkit-flex;
	display: flex;
	justify-content: center;
}

.ui_carousel.promociones .jet-slick-dots,
.ui_carousel.promociones .slick-dots{
	padding-top: 22px;
}

.ui_carousel.promociones .jet-slick-dots li,
.ui_carousel.promociones .slick-dots li{
	background-color: rgba(21, 21, 21, 0.5);
}

.ui_carousel.promociones .jet-slick-dots li.slick-active,
.ui_carousel.promociones .slick-dots li.slick-active {
	width: 40px;
	background-color: var(--color-primary-900);
}

.ui_carousel.promociones .slick-dots li button {
	display: none;
}

/* Estado normal de las promociones */
.ui_card.promociones {
  opacity: 0.7;                 
  transition: opacity 0.1s ease-in-out, transform 0.2s ease-in-out; 
  transform: scale(1);          
  cursor: pointer;              
}

/* Hover */
.ui_card.promociones:hover {
  	opacity: 1;                      
	transform: scale(1.02);  
}

/* Opcional: efecto touch en móvil */
@media (hover: none) {
  .ui_card.promociones:hover {
    transform: scale(1);         /* desactiva scale en touch devices */
  }
}

@media (max-width: 1024px) {
	.ui_carousel.promociones .jet-listing-grid__items {
		padding-right: 46px;
		padding-left: 46px;
	}
}

@media (max-width: 767px) {
	.ui_carousel.promociones .jet-listing-grid__items {
		padding-right: 28px;
		padding-left: 28px;
	}
}

/* ============================================
   CAROUSEL GENERAL
============================================ */
.ui_carousel .jet-listing-grid__slider-icon, 
.ui_carousel .elementor-swiper-button, 
.ui_carousel .swiper-button,
.ui_buscador .jet-ajax-search .jet-ajax-search__navigate-button,
.ui_videos_carousel .slick-arrow,
.ui_carousel .slick-arrow {
	width: 60px;
	height: 60px;
	font-size: 0px;
	border: none;
	border-radius: 50%!important;
	background-size: 8px 14px;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: var(--color-rio-grande-400);
	transition: all linear .3s;
	z-index:3;
}

.ui_carousel .jet-listing-grid__slider-icon svg,
.ui_carousel .slick-arrow svg,
.ui_carousel .elementor-swiper-button svg { display: none; }

.ui_carousel .jet-listing-grid__slider-icon.prev-arrow,
.ui_carousel .slick-prev,
.ui_videos_carousel .slick-prev {
	background-image: url('/wp-content/uploads/2025/09/carousel_icon_left.svg');
}

.ui_carousel .jet-listing-grid__slider-icon.next-arrow,
.ui_carousel .slick-next,
.ui_videos_carousel .slick-next {
	background-image: url('/wp-content/uploads/2025/09/carousel_icon_right.svg');
	transform: scaleX(1);
}

.ui_videos_carousel .slick-next,
.ui_carousel .slick-next{
	right:0;
}

.ui_slide .jet-slick-dots {
	bottom: 35px;
	max-width: calc(1312px + 40px);
	padding-left: 50px;
	padding-right: 50px;
}

@media (max-width: 1024px) {
	/* Carousel general */
	.ui_videos_carousel .slick-prev,
	.ui_carousel.catalogo .jet-listing-grid__slider-icon.prev-arrow,
	.ui_carousel.catalogo .slick-prev {
		left: calc(100% - 98px);
	}
	
	.ui_videos_carousel .slick-next::before,
	.ui_carousel.catalogo .jet-listing-grid__slider-icon.next-arrow::before,
	.ui_carousel.catalogo .slick-next::before {
		right: calc(100% - 6px);
		width: 20px;
		height: 32px;
	}
	
	.ui_videos_carousel .slick-arrow,
	.ui_carousel.catalogo .slick-arrow,
	.ui_carousel.catalogo .jet-listing-grid__slider-icon { top: -88px; }

	.ui_carousel .jet-listing-grid__slider-icon, 
	.ui_carousel .slick-arrow,
	.ui_carousel .elementor-swiper-button, 
	.ui_carousel .swiper-button,
	.ui_buscador .jet-ajax-search .jet-ajax-search__navigate-button,
	.ui_videos_carousel .slick-arrow {
		width: 45px;
		height: 45px;
		background-size: 8px 14px;
	}	

	.ui_carousel.certificados .jet-listing-grid__items {
		padding-right: 80px;
		padding-left: 80px;
	}
	
	.ui_slide .jet-slick-dots {		
		padding-left: 20px;
		padding-right: 20px;
	}

	.ui_social_blog .elementor-share-btn {
		height: 40px !important;
		width: 40px !important;
	}
}

@media (max-width: 767px) {
	/* Carousel general */
	.ui_videos_carousel .slick-next::before,
	.ui_carousel.catalogo .slick-next::before,
	.ui_carousel.catalogo .jet-listing-grid__slider-icon.next-arrow::before {
		right: calc(100% - 8px);
		width: 18px;
		height: 24px;
	}
	
	.ui_carousel .jet-listing-grid__slider-icon, 
	.ui_carousel .slick-arrow, 
	.ui_carousel .elementor-swiper-button, 
	.ui_carousel .swiper-button,
	.ui_buscador .jet-ajax-search .jet-ajax-search__navigate-button,
	.ui_videos_carousel .slick-arrow {
		width: 35px;
		height: 35px;
		background-size: 8px 14px;
	}
	
	.ui_videos_carousel .slick-prev,
	.ui_carousel.catalogo .slick-prev,
	.ui_carousel.catalogo .jet-listing-grid__slider-icon.prev-arrow {
		left: calc(100% - 75px);
	}
	
	.ui_videos_carousel .slick-arrow,
	.ui_carousel.catalogo .slick-arrow,
	.ui_carousel.catalogo .jet-listing-grid__slider-icon { top: -54px; }
	
	.ui_carousel.catalogo .jet-listing-grid__items,
	.ui_carousel.promociones .jet-listing-grid__items{		
		margin:0px!important;		
	}
	
	.ui_carousel.promociones .jet-listing-grid__items {
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.ui_carousel.promociones .slick-next {
		right: 15px;
	}
	.ui_carousel.promociones .slick-dots {
		display: none!important;
	}

	.ui_carousel.certificados .jet-listing-grid__items {
		padding-right: 20px;
		padding-left: 20px;
	}
	
	.ui_carousel.certificados .jet-listing-grid__slider-icon.prev-arrow { left: 0px; }
	
	.ui_carousel.certificados .jet-listing-grid__slider-icon.next-arrow { right: 0px; }
	
	.ui_slide .jet-slick-dots {		
		padding-left: 15px;
		padding-right: 15px;
	}
}


/* ============================================
   INICIO - DESTACADO
============================================ */
.ui_numero_progresivo .elementor-counter-title {
	padding-top: 12px;
	border-top: 2px dashed var(--color-cerulean-600);
}

.ui_numero_progresivo.blanco .elementor-counter-title {	
	border-color: var(--color-white);
}

body .elementor-counter-number {
  display: inline-block;
	min-width: 3ch;
  font-variant-numeric: tabular-nums; /* hace que todos los números tengan el mismo ancho */
}

@media (max-width: 767px) {
	.ui_numero_progresivo .elementor-counter-title {
		padding-top: 8px;	
	}
	
	.ui_seccion__destacado .ui_gap-12 {
		gap:0px;
	}
	
	.ui_seccion__valores .ui_pt-48 {
		padding-top:10px;
	}
	
	.ui_seccion__destacado .ui_pb-53 {
		padding-bottom:10px;
	}
	
  	.destacado.ui_pos-abs { position: relative; }
}

/* ============================================
   8. ONDAS ANIMADAS VISIBLES
============================================ */
.ui_wave_html {
	position: absolute;
    bottom: calc(100% - 12px);
    left:0;
	z-index:2;
}

.ui_wave {     
     width: 100%;
     overflow: hidden;
     line-height: 0;
}

.ui_wave svg {
     display: block;
     width: 100%;
     height: 60px;    
}

.ui_wave path {
      animation: waveMorph 5s ease-in-out infinite;
     transition: fill 0.3s ease; 
}

.ui_wave--FFF4E6 path { fill: #FFF4E6; }
.ui_wave--0CB6EB path { fill: #0CB6EB; }
.ui_wave--FFF4E6 path { fill: #FFF4E6; }
.ui_wave--FFFFFF path { fill: #FFFFFF; }
.ui_wave--B940B1 path { fill: #B940B1; }

.ui_wave__mobile { display: none; }

@media (max-width: 1024px) {
    .ui_wave svg { height: 45px; }
}

@media (max-width: 767px) {
	.ui_wave__desktop { display: none; }
	.ui_wave__mobile { display: block; }    
}

 @keyframes waveMorph {
     0% {
         d: path("M0,160 Q40,100 80,160 Q120,220 160,160 Q200,100 240,160 Q280,220 320,160 Q360,100 400,160 Q440,220 480,160 Q520,100 560,160 Q600,220 640,160 Q680,100 720,160 Q760,220 800,160 Q840,100 880,160 Q920,220 960,160 Q1000,100 1040,160 Q1080,220 1120,160 Q1160,100 1200,160 Q1240,220 1280,160 Q1320,100 1360,160 Q1400,220 1440,160 V320 H0 Z");
    }
     50% {
         d: path("M0,160 Q40,220 80,160 Q120,100 160,160 Q200,220 240,160 Q280,100 320,160 Q360,220 400,160 Q440,100 480,160 Q520,220 560,160 Q600,100 640,160 Q680,220 720,160 Q760,100 800,160 Q840,220 880,160 Q920,100 960,160 Q1000,220 1040,160 Q1080,100 1120,160 Q1160,220 1200,160 Q1240,100 1280,160 Q1320,220 1360,160 Q1400,100 1440,160 V320 H0 Z");
    }
     100% {
         d: path("M0,160 Q40,100 80,160 Q120,220 160,160 Q200,100 240,160 Q280,220 320,160 Q360,100 400,160 Q440,220 480,160 Q520,100 560,160 Q600,220 640,160 Q680,100 720,160 Q760,220 800,160 Q840,100 880,160 Q920,220 960,160 Q1000,100 1040,160 Q1080,220 1120,160 Q1160,100 1200,160 Q1240,220 1280,160 Q1320,100 1360,160 Q1400,220 1440,160 V320 H0 Z");
    }
}

/* ============================
   INICIO - SECCIÓN BLOG
============================ */
.ui_boton__blog img {
  transform-origin: center;
}

.ui_boton__articulo:hover .ui_boton__blog img {
  animation: ui_chicleFlechaDiag 0.6s ease;
}

@keyframes ui_chicleFlechaDiag {
    0%   { transform: translate(0, 0); }
   25%  { transform: translate(2px, -2px); }  /* sube diagonal */
   50%  { transform: translate(-2px, 2px); }  /* baja diagonal */
   75%  { transform: translate(1px, -1px); }  /* sube un poco */
  100%  { transform: translate(0, 0); }       /* vuelve al centro */
}

.ui_card_blog_1 > div,
	.ui_card_blog_1 > div > div,
	.ui_card_blog_1 > div > div > div,
	.ui_card_blog_1 > div > div > div > div,
	.ui_card_blog_1 .ui_h--444 {
		height:100%;
}    

@media (max-width: 767px) {
	.ui_card_blog_1 .ui_h--444 {
		height:280px;
	}    
}

/* ============================
   FORMULARIOS GENERALES
============================ */
.ui_contacto {
	gap:10px;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
}

.ui_contacto__titulo {
	font-family: var( --e-global-typography-36ca6ad-font-family ), Sans-serif;
    font-size: var( --e-global-typography-36ca6ad-font-size );
    line-height: var( --e-global-typography-36ca6ad-line-height );
    color: var( --color-gray-100 );
}

.ui_form {
  	max-width: 100%;
	display: flex;
	flex-direction: column;	
	margin-bottom: 15px;
}

.ui_form--libro {
	gap: 32px;
	font-family: var( --e-global-typography-42d03a8-font-family ), Sans-serif;
    font-size: var( --e-global-typography-42d03a8-font-size );    
    line-height: var( --e-global-typography-42d03a8-line-height );
    color: var( --color-black );
}
.ui_form_block {
	gap: 25px;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
}
.ui_form--libro .ui_linea {
	width: 100%;
	height: 1px;
	background-color: rgba(0, 0, 0, 0.3);
}
.ui_form_box {
	display: flex;
	flex-direction: column;	
	gap: 48px;
}

.ui_form__block {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.ui_form__label {
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	color: var( --color-gray-100 );	
}

/* Agrupadores principales */
.ui_form__group {
	display: flex;
	flex-direction: column;
	gap: 12px;	
}

.ui_form__group--terms {
	font-family: var(--e-global-typography-48f2aa3-font-family), Sans-serif;
    font-size: var(--e-global-typography-48f2aa3-font-size);
    line-height: var(--e-global-typography-48f2aa3-line-height);
	color: var(--e-global-color-061e592); 
}

.ui_form__group--submit {
	text-align: left;
	max-width: max-content;
	position: relative;
}

/* Campos de fecha y código */
.ui_form__field--date,
.ui_form__field--code {
	display: flex;	
}

.ui_form__field--date p,
.ui_form__field--code p{
	font-size: var( --e-global-typography-42d03a8-font-size );
    font-weight: var( --e-global-typography-42d03a8-font-weight );
    line-height: var( --e-global-typography-42d03a8-line-height );
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
	color: var(--e-global-color-e755835);
	text-align: center;
}

body .ui_form__field--date {
	align-items: center;
	flex-direction: initial;
	justify-content: center;
}

.ui_form__field--date input {
	border: none;
	margin-left: 5px;
	outline: none;
	padding: 0px;
}

body .ui_form__field__title {
	font-family: var( --e-global-typography-77a6dd2-font-family ), Sans-serif;
    font-weight: var(--e-global-typography-88ad733-font-weight);    
	color: var(--color-black);
}

body .ui_form__field--code {
	align-items: center;
}

.ui_form__field.ui_form__field--submit-inline {
	width: max-content;
	flex: none;
}

.ui_form__group--submit p,
.ui_form__field--submit-inline p{
	display: flex;
	align-items: center; 
}

/* Títulos dentro del formulario */
.ui_form .book-title {	
	font-size: var( --e-global-typography-7deab66-font-size );
    font-weight: var( --e-global-typography-42d03a8-font-weight );
    line-height: var( --e-global-typography-42d03a8-line-height );
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
	color: var(--color-black);	
}

.ui_form .book-subtitle {
	font-size: var( --e-global-typography-42d03a8-font-size );    
    line-height: var( --e-global-typography-42d03a8-line-height );
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
	color: var(--color-black);	
	text-transform: uppercase;
}

/* Campo tipo archivo */
.ui_form__field.ui_form__field--file {
	background-color: rgba(0, 0, 0, 0.1);
	border-radius: 50px;
	padding: 18px 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-direction: row;
}

body .ui_form__field--file input {
	border: none;
	padding:0;
	outline: none;
	height: auto;
	background-color: transparent;
}

body .ui_form__field--file input[type="file"] {
    background: transparent;
    border: none;
    outline: none;
    padding: 0;
    cursor: pointer;
}

body .ui_form__field--file input[type="file"]::-webkit-file-upload-button,
body .ui_form__field--file input[type="file"]::file-selector-button {
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
	font-family: var(--e-global-typography-88ad733-font-family), Sans-serif;
	font-size: var(--e-global-typography-60a9f19-font-size);
    line-height: var(--e-global-typography-60a9f19-line-height);
    color: var(--e-global-color-e755835);
}

.ui_form__file {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	position: relative;
	padding-left: 36px;
}

.section-file {
	position:absolute;
	left: 0;
}

.ui_form__file p {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

/* Spinner CF7 */
body .wpcf7-spinner {
	margin-left: 0px;
	margin-right: 0px;
	width: 15px;
	height: 15px;
	position: absolute;
	left: calc(100% - 20px);
	overflow: hidden;
	display: none;
}

/* Filas de campos */
.ui_form__items {
	display: flex;
	flex-direction: column;
	gap:10px;
}

.ui_form__row {
  	display: flex;
  	gap: 12px;
  	flex-wrap: wrap;	
}

.ui_form__field {
  	display: flex;
  	flex-direction: column;
	flex:1;
}

/* Inputs, selects y textareas */
body .ui_input,
body .ui_select,
body .ui_textarea,
.ui_form select {
  	padding: 10px;
  	border: 1px solid var(--color-primary-200);
  	border-radius: 8px;
  	height: 46px;
  	width: 100%;
	font-family: var( --e-global-typography-42d03a8-font-family ), Sans-serif;
    font-size: var( --e-global-typography-42d03a8-font-size );    
    line-height: var( --e-global-typography-42d03a8-line-height );
    letter-spacing: var( --e-global-typography-42d03a8-letter-spacing );
    word-spacing: var( --e-global-typography-42d03a8-word-spacing );
    color: var( --color-gray-100 );
  	resize: vertical;
  	transition: border 0.2s ease;
}

body .ui_form--libro .ui_input,
body .ui_form--libro .ui_select,
body .ui_form--libro .ui_textarea,
body .ui_form--libro select {
	border-color: rgba(0, 0, 0, 0.5);
	color: var(--color-black);
}

body .ui_input:focus,
body .ui_select:focus,
body .ui_textarea:focus,
.ui_form select:focus {
  	border-color: var(--color-rio-grande-400);
  	outline: none;
	border-width: 1.5px;
}

body input[required]::placeholder {
	content: "*";
  	color: var( --color-primary-400)!important;
}

/* Select con flechita custom */
body .ui_select,
.ui_form select {
  background-image: url('/wp-content/uploads/2025/09/icon_select.svg');
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 11px;
}

/* Textarea grande */
.ui_textarea {
  min-height: 108px;  
}

/* Texto campos obligatorios */
.ui_required_text {
    font-family: var( --e-global-typography-42d03a8-font-family ), Sans-serif;
    font-size: var( --e-global-typography-637d01f-font-size );
    line-height: var( --e-global-typography-637d01f-line-height );
    color: var(--color-gray-100);
}

.ui_required_text::before {
  content: "(*)";
  color: var(--color-gray-100);
}

/* Checkbox personalizado */
.ui_checkbox_group .wpcf7-list-item-label {
	padding-left: 28px;
	display: inline-block;
	padding-top:2px;
}

.ui_form--libro .wpcf7-checkbox .wpcf7-list-item-label {
	padding-left: 28px;
}

.ui_form--libro .wpcf7-radio {
	display:flex;
	gap:44px;
}

.ui_form--libro .wpcf7-radio .wpcf7-list-item-label {
	padding-left: 8px;
}

.ui_checkbox_group input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 1px solid var(--color-rio-grande-600);
  border-radius: 4px;
  background-color: transparent;
  cursor: pointer;
  position: absolute;
  left: 0;
	top: 2px;
  vertical-align: middle;
  margin-right: 8px;
  transition: all 0.2s ease;
}
.ui_form--libro .ui_checkbox_group input[type="checkbox"] {
	border-color: var(--color-black);
}
.ui_checkbox_group input[type="checkbox"]:hover {
  border-color: var(--color-rio-grande-600);
}

.ui_checkbox_group input[type="checkbox"]:checked {
  background-color: transparent;
  border-color: var(--color-rio-grande-600);
}
.ui_form--libro .ui_checkbox_group input[type="checkbox"] {
	border-color: var(--color-black);
}

.ui_checkbox_group input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid var(--color-black);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

body .wpcf7-list-item-label {
	font-family: var(--e-global-typography-48f2aa3-font-family), Sans-serif;
    font-size: var(--e-global-typography-48f2aa3-font-size);
    line-height: var(--e-global-typography-48f2aa3-line-height);
    color: var(--e-global-color-cdaf920);
}

.ui_checkbox_group .wpcf7-list-item-label {
	font-size: 13px;
	color: var(--color-gray-100);
}

.ui_checkbox_group .wpcf7-list-item-label a {
	font-family: var( --e-global-typography-0a0578d-font-family ), Sans-serif;
	color: var(--color-rio-grande-600);
	text-decoration: underline;
}

body .wpcf7-list-item {
	margin:0px;
}

body .wpcf7-not-valid-tip {
	font-size: var( --e-global-typography-637d01f-font-size );
    line-height: var( --e-global-typography-637d01f-line-height );   
    color: var(--color-red);
}

body .wpcf7 form .wpcf7-response-output {
    margin: 0;
    padding: 10px;
    border: 1px solid var(--color-red)!important;
	font-family: var( --e-global-typography-42d03a8-font-family ), Sans-serif;
    font-size: var( --e-global-typography-42d03a8-font-size );
    font-weight: var( --e-global-typography-42d03a8-font-weight );
    line-height: var( --e-global-typography-42d03a8-line-height );
    letter-spacing: var( --e-global-typography-42d03a8-letter-spacing );
    word-spacing: var( --e-global-typography-42d03a8-word-spacing );
    color: var(  --color-red );    
	border-radius: 8px;
}

body .wpcf7 form .wpcf7-mail-sent-ok {
	border-color: #40C02B;
	color: #40C02B;
}

/* RadioButton */
input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 1px solid var(--color-violet-eggplant-600); /* morado */
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  position: relative;
  margin-right: 4px;
  vertical-align: middle;
  transition: border-color 0.3s ease;
}
.ui_form--libro input[type="radio"] {
	border-color: var(--color-black);
}
/* Círculo interno cuando está activo */
input[type="radio"]:checked::before {
  content: "";
  width: 12px;   /* círculo interno */
  height: 12px;
  background: var(--color-violet-eggplant-600);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.ui_form--libro input[type="radio"]:checked::before {
	background-color: var(--color-black);
}

body .wpcf7-radio,
body .wpcf7-radio label {
	display: -webkit-flex;
	display: flex;
	align-items: center;
}

body .wpcf7-radio {
	gap:20px;
}

body .wpcf7-radio span {
	color: var(--color-primary-900);
}
.ui_form--libro .ui_form__group--terms a {
	color: var(--color-black);
}
/* Botones */ 
.ui_form--libro .ui_boton {
	color: #fff;
}

/* Grupo final de formulario */
.ui_form__group--final {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

@media (max-width: 1280px) {
  body .ui_input,
  body .ui_select,
  body .ui_textarea,
  .ui_form select {
    height: 44px;
  }
}

@media (max-width: 1024px) {
  body .ui_input,
  body .ui_select,
  body .ui_textarea,
  .ui_form select {
    height: 42px;
  }
}

@media (max-width: 767px) {
	body .ui_input,
  	body .ui_select,
  	body .ui_textarea,
  	.ui_form select {
    	height: 40px;
  	}
	
  	.ui_form__field {
    	flex: 1 1 100%;
  	}
	
  	.ui_form--libro {
		gap: 30px;
  	}	
  
	.ui_form_box {
		gap: 22px;
  	}	
  	
	.ui_form_block {
		gap: 22px;
  	}	
  
	.ui_form__field.ui_form__field--file {
		flex-direction: column;
		padding: 15px;
  	}	
  	
	.book-title {
		font-size: 16px;
		line-height: 22px;
  	}
  
	body .ui_form__field--code {
		align-items: flex-start;
  	}
	
  	.ui_form__field--date p, .ui_form__field--code p {
		text-align: left;
	}
}

/* PROMOCIONES - DETALLE */
.ui_video_unico > div,
.ui_video_unico > div > div,
.ui_video_unico .ui_video_item__box {
	height:100%;
}

.ui_datos_lista ul li {
	padding-left: 20px;
	position: relative;
}

.ui_datos_lista ul li::before {
	content: '';
	position: absolute;
	left:0;
	top:50%;
	transform: translatey(-50%);
	width:5px;
	height: 5px;
	border-radius: 50%;
	background-color: var( --color-white);
}

/* ============================
   NOSOTROS
============================ */

/* ============================
   SCROLL HORIZONTAL PARA CATEGORIAS CON FLECHA
============================ */
.ui_blog_categorias.productos::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;                /* lado derecho */
  width: 50px;             /* ancho del degradado */
  height: 100%;             /* altura del contenedor */
  pointer-events: none;     /* no bloquea clicks */
  background: linear-gradient(to left, rgba(185, 64, 177, 1), rgba(185, 64, 177, 0)); /* celeste sólido a transparente */
  z-index: 2;              /* por encima de items si quieres */
}

.ui_blog_categorias {
  position: relative; 
  overflow: hidden;
}

.ui_blog_categorias .jet-listing-grid__items {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  scroll-behavior: smooth;
  gap: 16px;
  padding-right: 10px;
  padding-left: 8px;

  -ms-overflow-style: none;
  scrollbar-width: none;
}

.ui_blog_categorias .jet-listing-grid__items::-webkit-scrollbar {
  display: none;
}

.ui_blog_categorias.eventos .jet-listing-grid__items {
	gap: 8px;
}

.ui_blog_categorias .jet-listing-grid__item {
  flex: 0 0 auto;
}

.ui_blog_categorias a {
  text-decoration: none;  	
}

/* BOTONES CATALOGO */
.ui_blog_categorias.productos a {
  background-color: rgba(255,255,255,0.10);
  font-family: var(--e-global-typography-f12d52c-font-family), Sans-serif;
  font-size: var(--e-global-typography-f12d52c-font-size);
  line-height: var(--e-global-typography-f12d52c-line-height);
  color: var(--color-white);
  height:50px;
  border-radius:50px;
  padding: 0px 24px;
}

/* BOTONES BLOG CATEGORIA */
.ui_blog_categorias.blog a {
  background-color: transparent;
  font-family: var(--e-global-typography-f12d52c-font-family), Sans-serif;
  font-size: var(--e-global-typography-f12d52c-font-size);
  line-height: 30px!important;
  color: var(--color-black);
  height:32px;
  border-radius:8px;
  padding: 0px 10px;
}

/* Botón circular con flecha */
.ui_blog_categorias .ui_arrow_container {
  position: absolute;
  top: 50%;
  right: 2px;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
}

.ui_blog_categorias .ui_arrow_next {
  position: relative;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  border: none;
  background: var(--color-cerulean-600); /* celeste */
  background-image: url('/wp-content/uploads/2025/09/icon_flecha_derecha_blanco.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: 10px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: background 0.3s ease;
}

.ui_blog_categorias .ui_arrow_icon {
  font-size: 16px;
  line-height: 1;
  pointer-events: none;
}

/* Botón circular */
.ui_arrow_next {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #00aaff; /* color del círculo */
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
}

/* Flecha */
.ui_arrow_icon {
  display: block;
  width: 14px; 
  height: 14px;
  background-image: url('ruta/a/flecha-blanca.svg');
  background-size: contain;
  background-repeat: no-repeat;
}

/* Efecto chicle solo a la flecha */
.ui_arrow_next:hover .ui_arrow_icon {
  animation: ui_chicleFlechaX 0.6s ease;
}

/* Keyframes para el movimiento horizontal */
@keyframes ui_chicleFlechaX {
  0%   { transform: translateX(0); }
  30%  { transform: translateX(4px); }   
  60%  { transform: translateX(-3px); }    
  80%  { transform: translateX(2px); }     	
  100% { transform: translateX(0); }     
}

/* PONER ACTIVE A LAS TAXONOMIAS EN SU PAGINA CATALOGO*/
.ui_blog_categorias.productos .jet-listing-grid__item.active a,
.ui_blog_categorias.productos .jet-listing-grid__item a:hover{
	background-color: var(--color-white);
	color: var(--color-black);
	transition: none !important;
} 
.ui_blog_categorias.productos .jet-listing-grid__item.active a img,
.ui_blog_categorias.productos .jet-listing-grid__item a:hover img {
	filter: invert(60%) sepia(80%) saturate(500%) hue-rotate(170deg) brightness(95%);
} 
/* PONER ACTIVE A LAS TAXONOMIAS EN SU PAGINA BLOG*/
.ui_blog_categorias.blog .jet-listing-grid__item.active a,
.ui_blog_categorias.blog .jet-listing-grid__item a:hover{
	background-color: var( --color-cerulean-500);
	color: var(--color-white);
} 

/* PONER ACTIVE A LAS TAXONOMIAS EN SU PAGINA EVENTOS */
.ui_blog_categorias.eventos .jet-listing-grid__item.active a,
.ui_blog_categorias.eventos .jet-listing-grid__item a:hover{
	background-color: var(--color-rio-grande-400);
	color: var( --color-white);
	border-color: var(--color-rio-grande-400);
	transition: none !important;
} 
.ui_blog_categorias.eventos .jet-listing-grid__item.active a img,
.ui_blog_categorias.eventos .jet-listing-grid__item a:hover img {
    filter: brightness(0) invert(1);
}

/* CANTIDAD DE PRODUCTOS */
.ui_total_productos {
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-f12d52c-font-size );
    line-height: var( --e-global-typography-f12d52c-line-height );
	color: var(--color-black);
}

/* Media Queries */
@media (max-width: 1280px) {
  .ui_blog_categorias.productos a { padding: 12px 20px; height: 46px; }
	.ui_blog_categorias .ui_arrow_next {
		width: 40px;
		height: 40px;
		background-size: 9px;
	 }
}

@media (max-width: 1024px) {
  .ui_blog_categorias.productos a { padding: 2px 12px; height: 44px; }
	.ui_blog_categorias .ui_arrow_next {
    width: 35px;
    height: 35px;
    background-size: 8px;
  }
}

@media (max-width: 767px) {
  .ui_blog_categorias.productos a { padding: 3px 7px; height: 32px; font-size: 12px; }
	.ui_blog_categorias .jet-listing-grid__items {	  
	  gap: 5px;	  
	}
	.ui_blog_categorias .ui_arrow_next {
    width: 30px;
    height: 30px;
    background-size: 7px;
  }
}

/* ============================================
   BLOG - DETALLE
============================================ */
/* Títulos */
.ui_contenido_entrada h2,
.ui_contenido_entrada h3 {
 	margin-bottom: 12px; 
	padding-top: 16px;
	font-family: var( --e-global-typography-77a6dd2-font-family ), Sans-serif;
    font-size: var( --e-global-typography-77a6dd2-font-size );
    font-weight: var( --e-global-typography-77a6dd2-font-weight );
    line-height: var( --e-global-typography-77a6dd2-line-height );
	color: #162B27;
}
.ui_contenido_entrada h2:nth-of-type(n+2) {
 	margin-top: 16px; 
}
/* Párrafos */
/* Espacio entre párrafos, pero no al último */
body .ui_contenido_entrada p + p {
    margin-top: 12px; /* separación entre párrafos */
	margin-bottom: 0;
}
body .ui_contenido_entrada p:has(+ img),
body .ui_contenido_entrada p:has(+ h2),
body .ui_contenido_entrada p:has(+ div) {
  margin: 0;
}
body .ui_contenido_entrada p > img {
	margin-top: 41px;
  display: block; /* evita que la imagen se comporte como texto */
}
body .ui_contenido_entrada p img:only-child {
  margin-top: 10px; /* quita margen de la imagen */
}
/* Quitar margen inferior al último párrafo */
.ui_contenido_entrada p:last-child {
    margin-bottom: 0;
}
/* Si solo hay un párrafo, sin margen */
.ui_contenido_entrada p:only-of-type {
    margin-bottom: 0;
}
/* Evitar márgenes en párrafos vacíos (por saltos de línea) */
.ui_contenido_entrada p:empty {
    margin: 0;
    padding: 0;
}
/* Párrafo antes de una lista */
.ui_contenido_entrada p + ul {
  margin-top: 25px; /* espacio entre párrafo y lista */
}
body .ui_contenido_entrada p + ul,
body .ui_contenido_entrada p + ol {
  margin-top: 12px; /* espacio arriba de la lista */
}
/* Listas */
.ui_contenido_entrada ul {
  	list-style: disc;
  	margin-left: 40px;   
	padding: 0;
}
.ui_contenido_entrada li {
  margin-bottom: 8px;
}
/* Imágenes */
.ui_contenido_entrada img {
  width: 100%;
  height: auto;
  display: block;
  margin: 41px 0; /* arriba y abajo */  
}
body .ui_contenido_entrada p:has(img){
  margin: 0;  /* quita márgenes del contenedor */
}

/* =========================
   Contenedor principal
   ========================== */
.ui_contenido_entrada ul,
.ui_contenido_entrada ol {
  padding-left: 20px; /* sangría general */
  margin: 10px 0;
  line-height: 1.5;
}

/* =========================
   Caso 1: Lista numerada con subviñetas circulo
   ========================== */
.ui_contenido_entrada ol {
  list-style-type: decimal; /* 1,2,3 */
}

.ui_contenido_entrada ol li {
  margin-bottom: 8px;
}

/* Sublistas dentro de la numerada: círculos */
.ui_contenido_entrada ol li ul {
  list-style-type: disc; /* círculo */
  padding-left: 20px;
  margin-top: 4px;
}

.ui_contenido_entrada ol li ul li {
  margin-bottom: 4px;
}

/* =========================
   Caso 2: Lista principal con viñetas y sublista letras
   ========================== */
.ui_contenido_entrada ul {
  list-style-type: disc; /* círculo principal */
}

.ui_contenido_entrada ul li ul {
  list-style-type: lower-alpha; /* a, b, c... */
  padding-left: 20px;
  margin-top: 4px;
}

.ui_contenido_entrada ul li ul li {
  margin-bottom: 4px;
}

/* Mediaquieries */
@media (max-width: 1024px) {  
  .ui_contenido_entrada h2,
  .ui_contenido_entrada h3 {
    margin-top: 35px;
    margin-bottom: 10px;
  }
  .ui_contenido_entrada p {
    margin-bottom: 30px;
  }
  .ui_contenido_entrada p + ul {
    margin-top: 20px;
  }
  .ui_contenido_entrada ul {
    margin: 0 0 30px 30px;
  }
  .ui_contenido_entrada img {
    margin: 15px 0!important;
  }
	.ui_contenido_entrada h2:nth-of-type(n+2) {
	  margin-top: 28px;
	}
}

@media (max-width: 767px) {  
	 .ui_contenido_entrada h2,
	 .ui_contenido_entrada h3 {
		margin-bottom: 15px;
	 }
	 .ui_contenido_entrada p {
		margin-bottom: 10px;
	 }
	 .ui_contenido_entrada p + ul {
		margin-top: 15px;
	 }
	 .ui_contenido_entrada ul {
		margin: 0 0 15px 25px;
	 }
	 .ui_contenido_entrada img {
		margin: 15px 0;
	 }
	.ui_contenido_entrada h2:nth-of-type(n+2) {
		margin-top: 0px;
	}
	.ui_contenido_entrada h2, .ui_contenido_entrada h3 {
		padding-top: 10px;
		margin-top: 0px;
	}	
	.ui_contenido_entrada p {
		margin-bottom: 10px;
	}
	.ui_contenido_entrada ul,
	.ui_contenido_entrada ol {
		padding-left: 15px;
	}
	.ui_contenido_entrada ol li ul,
	.ui_contenido_entrada ul li ul {
		padding-left: 15px;
	 }
}


/* PLANTILLA - GRACIAS / ERROR */
@media (max-width: 767px) {
	.ui_seccion__gracias .ui_pb-40 {
		padding-bottom: 0px;
	}
}

/* ============================
   EVENTOS
============================ */
.ui_boton_evento {
	border: 1px solid #D1D1D1;
	height: 52px;
	border-radius: 16px;
	padding: 0 24px;
}

@media (max-width: 1280px) {
    .ui_boton_evento {
        height: 48px;
        padding: 0 20px;
        font-size: 15px;
        border-radius: 14px;
    }
}

@media (max-width: 1024px) {
    .ui_boton_evento {
        height: 44px;
        padding: 0 18px;
        font-size: 14px;
        border-radius: 12px;
    }
}

@media (max-width: 767px) {
    .ui_boton_evento {
        width: 100%;         
		height: 42px;
        padding: 0 7px;
        font-size: 14px;
        border-radius: 10px;
    }
}

/* ============================
   CONTACTO
============================ */
/* ACORDEON */
/* Contenedor del item */
.ui_accordion_item {
    margin-bottom: 16px;
	padding: 16px 20px;
    border: 1px solid #D8D8D8; /* borde cuando está cerrado */
    border-radius: 16px; /* bordes redondeados del bloque completo */
    overflow: hidden; /* para que los bordes redondeados corten contenido */
    background: var(--color-white); /* fondo blanco del bloque */
    transition: border 0.3s;
}

body .ui_accordion_item > div {
	gap: 10px!important;
	display:-webkit-flex!important;
	display: flex!important;
	flex-direction: column!important;
}

/* Item activo: quitar borde externo */
.ui_accordion_item.active {
    border-color: transparent;
}

/* Header del título */
.ui_accordion_header {
    cursor: pointer;
    padding-right: 0px; /* espacio para el círculo a la derecha */
    background: #fff; /* siempre fondo blanco */
    border-bottom: none;	
    position: relative;
    transition: background 0.3s;    
}

body .ui_accordion_header .jet-listing-dynamic-field__content {
	font-family: var( --e-global-typography-7deab66-font-family ), Sans-serif;
    font-size: var( --e-global-typography-7deab66-font-size )!important;
	color: #101828;
}

/* Contenido del bloque */
.ui_accordion_content {
    display: none;
    background: var( --color-white); /* siempre fondo blanco */
    overflow: hidden; /* animación suave */
}
.ui_accordion_content p {
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	color: #667085;
}

/* Círculo con signo + / - al final del título */
.ui_accordion_header::after {
    content: "+"; /* signo por defecto */
    position: absolute;
    right: 0;   /* a la derecha */
    top: 50%;
    transform: translateY(-50%);
	line-height: 16px;
    width: 20px;
	padding-left:1px;
	font-family: var( --e-global-typography-7deab66-font-family ), Sans-serif;
    font-size: var( --e-global-typography-7deab66-font-size )!important;
    height: 20px;
	text-align: center;
    border: 2px solid #414E19;
    border-radius: 50%;
    transition: all 0.3s;
    background-color: var( --color-white);
    color: #414E19;
}

/* Cuando el item está activo: cambia a - y circulo invertido */
.ui_accordion_item.active .ui_accordion_header::after {
    content: "-";    
}

/* CONTACTANOS */
.ui_contacto--contactanos {
	gap: 30px;	
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
}
.ui_contacto--contactanos .ui_contacto__block {
	gap: 20px;
	text-align: center; 
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	max-width: 300px;
	width: 100%;
	margin: 0 auto;
}
.ui_contacto--contactanos input[type=date], .ui_contacto--contactanos input[type=email], .ui_contacto--contactanos input[type=number], .ui_contacto--contactanos input[type=password], .ui_contacto--contactanos input[type=search], .ui_contacto--contactanos input[type=tel], .ui_contacto--contactanos input[type=text], .ui_contacto--contactanos input[type=url], .ui_contacto--contactanos select, .ui_contacto--contactanos textarea {
	border-radius:0;
	border: none;
	border-bottom: 1px solid rgba(74, 74, 73, 0.6);
	padding-left: 0px!important;
	font-size: var( --e-global-typography-7deab66-font-size );
	color: var(--color-black);
}

.ui_contacto--contactanos .ui_form__field label {
	text-transform: uppercase;
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-637d01f-font-size );
    line-height: var( --e-global-typography-637d01f-line-height );
    color: var(--color-black);
}

.ui_contacto__descripcion {
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	color: var(--color-black);
}


@media (max-width: 767px) {
    /* Header más compacto */
    .ui_accordion_header {
        padding: 8px 40px 8px 12px; /* menos padding */
        font-size: 14px; /* tamaño de fuente más pequeño */
    }

    /* Círculo más pequeño */
    .ui_accordion_header::after {
        width: 18px;
        height: 18px;
        line-height: 13px;
		padding-left:0px;
    }

    /* Contenido más compacto */
    .ui_accordion_content {
        padding: 8px 12px;
        font-size: 14px;
    }

    /* Espacio entre items reducido */
    .ui_accordion_item {
        margin-bottom: 8px;
    }
}

/* DATOS DE CONTACTO - TELEFONO*/
/* Si solo hay un widget, no tener borde */
.ui_dato_telefono > *:only-child {
    border-left: none;
}

/* Si hay más de uno, todos menos el primero tendrán border-left */
.ui_dato_telefono > *:not(:first-child) {
    border-left: 1px solid var(--color-black); /* ajusta color y grosor */
    padding-left: 15px; /* separación del contenido */
	margin-left: 15px;
}
.ui_dato_telefono.footer > *:not(:first-child) {
	border-color: var(--color-white);
}

@media (max-width: 767px) {
  	.ui_dato_telefono > *:not(:first-child) {
		padding-left: 10px; /* separación del contenido */
		margin-left: 10px;
	}
}

/* ============================
   PAGINACIÓN
============================ */
.ui_paginacion .jet-filters-pagination__link {
	width:50px;
	height:50px;
	border: 1px solid var( --color-violet-eggplant-600);
	color:var( --color-violet-eggplant-600);
	border-radius: 50%;	
	padding:0px!important;
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height:50px;
	text-align: center;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 10px;		
}

.ui_paginacion .jet-filters-pagination__current .jet-filters-pagination__link {
	background-color:var( --color-violet-eggplant-600);
	color: var(--color-white);
}

.ui_paginacion .jet-filters-pagination__item {
	margin: 0 9px!important;
}

.ui_paginacion .prev .jet-filters-pagination__link {
	background-image: url('/wp-content/uploads/2025/09/icon_flecha_izquierda_violet_600.svg');
	font-size:0px;	
}
.ui_paginacion .next .jet-filters-pagination__link {
	background-image: url('/wp-content/uploads/2025/09/icon_flecha_derecha_violet_600.svg');
	font-size:0px;	
}

/* ≤ 1280px (pantallas grandes como laptops) */
@media (max-width: 1280px) {
  .ui_paginacion .jet-filters-pagination__link {
    width: 44px;
    height: 44px;
    line-height: 44px;
    font-size: calc(var(--e-global-typography-0d14f9c-font-size) * 0.9);
    background-size: 9px;
  }
	
	.ui_paginacion .jet-filters-pagination__item {
		margin: 0 8px!important;
	}
}

/* ≤ 1024px (tablets) */
@media (max-width: 1024px) {
  .ui_paginacion .jet-filters-pagination__link {
    width: 38px;
    height: 38px;
    line-height: 38px;
    font-size: calc(var(--e-global-typography-0d14f9c-font-size) * 0.8);
    background-size: 8px;
  }
	
	.ui_paginacion .jet-filters-pagination__item {
	margin: 0 7px!important;
}
}

/* ≤ 767px (móviles) */
@media (max-width: 767px) {
  .ui_paginacion .jet-filters-pagination__link {
    width: 32px;
    height: 32px;
    line-height: 32px;
    font-size: calc(var(--e-global-typography-0d14f9c-font-size) * 0.7);
    background-size: 7px;
  }
	.ui_paginacion .jet-filters-pagination__item {
	margin: 0 6px!important;
}
}

/* FILTROS DOROPWONS */
/* Ocultar select nativo */
.ui-hidden {
    display: none !important;
}
.ui_filtro_tamano {
	background-color: var(--color-white);
	border-radius: 50px;
	padding: 12px 24px;
	max-width: max-content!important;
	width:100%;
}
.ui_filtro_tamano .jet-smart-filters-select {
	display:-webkit-flex!important;
	display: flex!important;
	align-items: center;
	gap: 16px;
}

.ui_filtro_tamano .jet-filter-label {
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	color: var(--color-primary-900);
	font-weight: normal;
}

/* Contenedor del select bonito */
.ui-select {
    position: relative;
    display: inline-block;
    width: auto; /* antes estaba 100% */
}

/* Caja principal del select */
.ui-select-styled {
    min-width: 150px; /* ancho mínimo para no verse muy pequeño */
    font-family: var(--e-global-typography-f12d52c-font-family), Sans-serif;
  	font-size: var(--e-global-typography-f12d52c-font-size);
  	line-height: var(--e-global-typography-f12d52c-line-height);
    cursor: pointer;
    position: relative;
	color: var(--color-primary-900);
}
.ui-select-styled,
.ui-select-styled:focus,
.ui-select-styled:active {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* Flecha personalizada */
.ui-select-styled::after {
    content: "";
	background-image: url('/wp-content/uploads/2025/09/icon_select.svg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 10px;
	height:6px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

/* Lista de opciones */
.ui-select-options {
    display: none;
    position: absolute;
    background: #fff;    
    width: 100%;
	top: calc(100% + 15px);
    max-height: 200px;
    overflow-y: auto;
    border-radius: 8px;
    z-index: 2;    
    padding: 0;
    list-style: none;
}

/* Items de la lista */
.ui-select-options li {
    padding: 10px 12px;
    cursor: pointer;
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	color: var(--color-primary-900);
}

/* Hover sobre items */
.ui-select-options li:hover {
    background-color: #f0f0f0;
}

/* Focus / active */
.ui-select-styled.active {
    border-color: #0073e6;
    box-shadow: 0 0 5px rgba(0, 115, 230, 0.3);
    outline: none;
}
@media (max-width: 767px) {
  	.ui_filtro_tamano, .ui-select-styled, .jet-select, .ui-select {		
		max-width: 100%!important;
		width:100%!important;
		flex-basis:100%!important;
	}
	
	.ui_filtro_tamano .jet-filter-label {
		flex: none;
	}
}

/* GALERIA VERTICAL CAROUSEL */
/* Contenedor principal */
.ui_gv_wrap { 
    display: flex;
    gap: 10px;
    align-items: stretch; 
    flex-wrap: nowrap; /* siempre horizontal */
    visibility: hidden; /* hasta que JS ajuste altura */
}

/* Imagen grande */
.ui_gv_main { 
    width: 86%;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.ui_gv_main .ui_gv_slide {
    flex: 1; /* ocupa toda la altura asignada */ 
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ui_gv_main img {
    width: 100%;
	border-radius: 32px;  
    height: 100%;
    object-fit: cover;
	background-color: var( --color-white);
}

/* Slick track */
.ui_gv_main .slick-track {
    height: 100%;
}

/* Thumbnails verticales */
.ui_gv_thumbs { 
    width: 14%; 
    display: flex;
    flex-direction: column;
    cursor: pointer; 
}

.ui_gv_thumbs .slick-slide {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 8px;
    box-sizing: border-box;
}

.ui_gv_thumbs .slick-slide:last-child {
    margin-bottom: 0;
}

.ui_gv_thumbs .ui_gv_thumb img {
    width: 100%;
    height: 84px;
    object-fit: cover;
	overflow: hidden;
    border-radius: 12px;   
    box-sizing: border-box;
    outline: none;
    border: none;
	background-color: var( --color-white);
}

.ui_gv_thumbs img::focus {
    outline: none;
    border: none;
}

/* Responsive: reducir tamaños sin romper layout */
@media (max-width: 1024px) {
    .ui_gv_thumbs .ui_gv_thumb img { height: 60px; }
}

@media (max-width: 767px) {
	.ui_gv_main img {		
		border-radius: 16px; 		
	}
    .ui_gv_main { width: 80%; }    
	.ui_gv_wrap {
		gap: 8px;
	}
    .ui_gv_thumbs { width: 20%; }
    .ui_gv_thumbs .ui_gv_thumb img { height: 50px; }
}

/* POP UP AYUDA */
/* ========= POP UP ========= */
#ui_popup_overlay {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.5);
  display: none;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: 9998;
}

#ui_popup_overlay.show {
  display: block;
  opacity: 1;
}

#ui_custom_popup {
  position: fixed;
  bottom: 20px;
  right: 20px;
  max-width: 400px;
  background: var(--color-violet-eggplant-600);
  border-radius: 32px;
  z-index: 9999;
  overflow: hidden;
  transform: translateX(calc(100% + 40px)); /* oculto fuera */
  opacity: 0;
  transition: transform 0.35s ease, opacity 0.35s ease;
}

#ui_custom_popup.show {
  transform: translateX(0);
  opacity: 1;
}

#ui_custom_popup:before {
  content:'';
  position: absolute;
  top:0; left:0;
  width: 100%; height: 100%;
  background-image: url('/wp-content/uploads/2025/10/pop-up-fondo.webp');
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.13;
  z-index: 0;
}

.ui_popup_inner {
  padding: 20px;
  position: relative;
  z-index: 1;
}

.ui_popup_title {
  margin-bottom: 10px;
  color: var(--color-white);
  width: 90%;
  font-family: var(--e-global-typography-d938f83-font-family), Sans-serif;
  font-size: var(--e-global-typography-d938f83-font-size);
  line-height: var(--e-global-typography-d938f83-line-height);
}

.ui_popup_title p { color: var(--color-white); }

.ui_popup_text {
  font-family: var(--e-global-typography-f12d52c-font-family), Sans-serif;
  font-size: var(--e-global-typography-f12d52c-font-size);
  line-height: var(--e-global-typography-f12d52c-line-height);
  color: var(--color-white);
  margin-bottom: 15px;
}

.ui_popup_footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ui_button_circle {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

.ui_button_circle img { width: 12px; height: 12px; }

.ui_popup_logo { display: block; }

#ui_popup_close {
  position: absolute;
  top: 20px; right: 20px;
  width: 28px; height: 28px;
  border-radius: 50%;
  background-color: var(--color-rio-grande-400);
  background-image: url('/wp-content/uploads/2025/10/icon_close.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px;
  cursor: pointer;
  font-size: 0;
}

.ui_boton.ui_h-44 .ui_boton__icono {
  height: 32px;
  width: 32px;
}

/* ========= RESPONSIVE ========= */

/* ≤1280px */
@media (max-width: 1280px) {
  #ui_custom_popup {
    max-width: 350px;
    bottom: 18px;
    right: 18px;
  }
  .ui_popup_inner { padding: 18px; }
  .ui_popup_title { font-size: 18px; line-height: 1.3; }
  .ui_popup_text { font-size: 14px; line-height: 1.4; }
  .ui_button_circle img { width: 11px; height: 11px; }
}

/* ≤1024px */
@media (max-width: 1024px) {
  #ui_custom_popup {
    max-width: 300px;
    bottom: 16px;
    right: 16px;
  }
  .ui_popup_inner { padding: 16px; }
  .ui_popup_title { font-size: 17px; }
  .ui_popup_text { font-size: 13px; }
  .ui_button_circle img { width: 10px; height: 10px; }
}

/* ≤767px (móvil) */
@media (max-width: 767px) {
  #ui_custom_popup {
    bottom: 20px;
    right: 20px;
    max-width: 100%;
    width: calc(100% - 16%);
    border-radius: 20px;
    transform: translateX(120%); /* más limpio en móvil */
  }

  #ui_custom_popup.show {
    transform: translateX(0);
  }

  .ui_popup_inner { padding: 12px; }
  .ui_popup_title { font-size: 16px; }
  .ui_popup_text { font-size: 12px; }
  .ui_button_circle img { width: 9px; height: 9px; }

  #ui_popup_close {
    top: 10px;
    right: 10px;
  }
}


/* ============================
   CSS – Estilos generales + Pop-up
============================ */
/* POP-UP confirmación */
.ui_popup_confirm {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.15);
  display: none;
  padding: 14px 18px;
  align-items: center;
  gap: 10px;
  z-index: 99999;
}
.ui_popup_confirm.open { display: flex; animation: fadeInUp 0.3s ease; }
.ui_popup_confirm_content {
	gap: 12px;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
}
.ui_popup_icon_box {
	display: -webkit-flex;
	display: flex;
	align-items: center;
	gap: 8px;
	justify-content: center;
}
.ui_popup_icon img { width: 24px; height: 24px; }
.ui_popup_texto { 
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-f12d52c-font-size );
    line-height: var( --e-global-typography-f12d52c-line-height );
	color:var( --color-black);
}

#ui_ver_lista {
  transition: none !important;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(15px); }
  to   { opacity: 1; transform: translateY(0); }
}
.ui_boton--shortcode .ui_btn_anadir_cotizacion {
	text-transform: uppercase;
}
.ui_btn_anadir_cotizacion:focus,
.ui_btn_anadir_cotizacion:active {
  background: none !important;  
  outline: none !important;
  box-shadow: none !important;
}

.ui_btn_anadir_cotizacion {
  transition: none !important;
}

/* LISTADO DE PRODUCTOS */
#lista-cotizacion {
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	gap: 26px;
}
.producto-cotizacion {
  display: flex;
	display: -webkit-flex;
	align-items: center;
  gap: 44px;
  background: var(--color-white);
  padding: 16px;
  border-radius: 16px;  
}
.producto-cotizacion > img { 	
	width: 20%;
	border-radius: 20px;
	height: auto;
	object-fit: cover;
	transition: transform 0.3s ease; /* animación suave */
}

.producto-info { flex: 1; display: flex; flex-direction: column; }

.producto-categoria { 
	display: flex; 
	align-items: center; 
	gap: 8px; 
	height: 40px;
	margin-bottom: 5px; 
	max-width: max-content;
	border-radius:50px; 
	color: var( --color-white);
	padding: 0 24px;
	background-color: #0CB6EB;
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-f12d52c-font-size );
    line-height: var( --e-global-typography-f12d52c-line-height );
}
.cat-icon { width: 20px; height: 20px; }
.producto-nombre {
	font-family: var( --e-global-typography-bcc894e-font-family ), Sans-serif;
    font-size: var( --e-global-typography-bcc894e-font-size );
    line-height: var( --e-global-typography-bcc894e-line-height );
	color:var( --color-black);
}
.producto-contador { 
	display: flex; 
	align-items: center; 
	gap: 8px; 
	max-width: max-content;
	margin: 8px 0; 
	border-radius: 10px;
	display: -webkit-flex;
	display: flex;
	overflow: hidden;
	border: 1px solid rgba(68, 68, 68, 0.2);
	font-family: var( --e-global-typography-0d14f9c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-0d14f9c-font-size );
    line-height: var( --e-global-typography-0d14f9c-line-height );
	color: #444444;
}

.producto-contador .btn-mas,
.producto-contador .btn-menos {
  width: 28px;
  height: 28px;
  line-height: 28px;
	text-align: center;
  border: none;
	outline: none;
  background: var( --color-white);
  cursor: pointer;
}
.producto-contador button:hover {
	color: inherit;
}
.producto-contador .cantidad { min-width: 20px; text-align: center; }
.producto_contador_box .cantidad_texto,
.producto-medidas-titulo {
	font-family: var( --e-global-typography-f12d52c-font-family ), Sans-serif;
    font-size: var( --e-global-typography-f12d52c-font-size );
    line-height: var( --e-global-typography-f12d52c-line-height );
	color:var( --color-black);
	display: block;
	text-transform:uppercase;
} 
.producto-medidas {
    display: flex;
	align-items: center;
    gap: 10px; /* espacio entre medidas */
}

.producto-medidas-lista {
	display: flex;
	align-items: center;
    gap: 10px; /* espacio entre medidas */
}

.producto-medidas .medida-item {
    padding-left: 10px; /* espacio desde el border */
    position: relative;
	display: -webkit-flex;
	display: flex;
	align-items: center;
}

.producto-medidas .medida-item + .medida-item {
    border-left: 1px solid #ccc; /* borde solo desde el segundo en adelante */
}
body .medida-item span {
	font-family: var( --e-global-typography-a9d6216-font-family ), Sans-serif!important;
    font-size: var( --e-global-typography-a9d6216-font-size )!important;
    line-height: var( --e-global-typography-a9d6216-line-height );
	display: inline-block;
	color: var(--color-black);
}
.medida-item img {
	width: 26px;
	height: 26px;
	object-fit: contain;
	filter: brightness(0) saturate(100%);
	margin-right: 7px;
}

@media (max-width: 1280px) {
  .producto-cotizacion {
    gap: 32px;
    padding: 14px;
  }
	.producto-categoria {
    height: 35px; /* Ajuste para pantallas grandes-medias */
  }
	.medida-item img {
    width: 22px;
    height: 22px;
    margin-right: 6px;
  }
}

@media (max-width: 1024px) {
  .producto-cotizacion {
    gap: 24px;
    padding: 12px;
  }
	.producto-categoria {
    height: 30px; /* Ajuste para tablets o pantallas medianas */
  }
	.medida-item img {
    width: 20px;
    height: 20px;
    margin-right: 5px;
  }
}

@media (max-width: 767px) {	
  .producto-cotizacion {
    gap: 16px;    
	  display: -webkit-flex;
	  display: flex;
	  flex-direction: column;
  }
	#lista-cotizacion {
		padding:0 20px;
	}
	.producto-cotizacion > img {
		width: 100%;
	}
	
	.producto-categoria {
    height: 25px; /* Ajuste para móviles */
  }
	
	.producto-info {
		display: -webkit-flex;
	  display: flex;
	  flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center; 
	}
	
	.producto-medidas {
		display: -webkit-flex;
	  display: flex;
		gap:10px;
	  flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center; 
	}
	
	.producto-medidas-lista {
		display: -webkit-flex;
	  display: flex;
		gap:10px;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		text-align: center; 
	}	
	
	.medida-item img {
    width: 18px;
    height: 18px;
    margin-right: 4px;
  }
	
}

/* ============================
   FOOTER
============================ */
.ui_isotipo_happy {
	position: absolute;	
	left:0;		
	z-index:2;
}

.ui_isotipo_happy.clientes {
	opacity:0.10;
	height: 90%;
	left:-5%;
	top:50%;
	transform: translatey(-50%);
}
.ui_isotipo_happy.valores {
	opacity:0.05;
	height: 82%;
	left:-6%;
	top:44%;
	transform: translatey(-50%);
}

.ui_isotipo_happy.footer {
	height: 98%;
	bottom:0;
	opacity:0.05;
}

.ui_isotipo_happy img {
	width: 100%;
	height: 100%;
	object-fit:contain;
}

body .ui_footer_menu ul li a {
	position: relative;
	padding-left: 0px; 
	width: 100%;
}

/* animación chicle con escala */
@keyframes ui_chicle_circle {
  0%   { transform: scale(1); }
  30%  { transform: scale(1.12, 0.92); }
  50%  { transform: scale(0.92, 1.12); }
  70%  { transform: scale(1.06, 0.94); }
  100% { transform: scale(1); }
}

body .ui_footer_menu ul li {
  position: relative;
}

body .ui_footer_menu ul li a {
  position: relative;
  display: inline-block;
  transition: padding-left 0.3s ease; /* transición suave */
}

body .ui_footer_menu ul li a::before {
  content: '';
  position: absolute;
  left: 0;  
	top: 2px;
  width: 15px;
  height: 15px;
  opacity: 0;
  background-image: url('/wp-content/uploads/2025/09/nosotros_nuestros_valores_icono.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}

body .ui_footer_menu ul li a:hover {
  padding-left: 20px!important; /* solo aparece en hover */
}

body .ui_footer_menu ul li a:hover::before {
  opacity: 1;
  animation: ui_chicle_circle 0.6s ease; /* efecto chicle */
}



@media (max-width: 1280px) {
  	.ui_isotipo_happy.clientes {
    	height: 70%;
    	left: -8%;
  	}
	.ui_isotipo_happy.footer {
    	height: 80%;
  	}
}

@media (max-width: 1024px) {	
	.ui_isotipo_happy.clientes {
		height: 55%;
		left: -10%;
	}
	
	.ui_isotipo_happy.footer {
		height: 65%;
	 }
}

@media (max-width: 767px) {	
	.ui_footer_menu ul{
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.ui_footer_menu ul li {
		display: -webkit-flex;
		display: flex;
		justify-content: center;
		max-width:max-content;
	} 	
	
	.ui_isotipo_happy.clientes {
    	height: 40%;
    	left: -12%;
  	}
	
	.ui_isotipo_happy.footer {
    	height: 45%;
  	}
}

/* MEGAMENU */
.ui_megamenu_wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  padding: 20px;
}

.ui_megamenu_col {
  display: flex;
  flex-direction: column;
}

.ui_megamenu_title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ui_megamenu_menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ui_megamenu_menu-item {
  margin: 4px 0;
}

.ui_megamenu_menu-link {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.ui_megamenu_wrapper img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  margin-right: 8px;
	filter: brightness(0) saturate(100%);
}

.ui_megamenu_menu-list ul {
  margin-left: 15px;
  border-left: 1px solid #ddd;
  padding-left: 10px;
}

/* Imagen de la tercera columna */
.ui_megamenu_image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* 📱 Móvil: acordeón */
@media (max-width: 767px) {
  .ui_megamenu_wrapper {
    grid-template-columns: 1fr;
  }

  .ui_megamenu_col {
    border-bottom: 1px solid #eee;
  }

  .ui_megamenu_title {
    cursor: pointer;
  }

  .ui_megamenu_title::after {
    content: '+';
    font-size: 20px;
  }

  .ui_megamenu_col.active .ui_megamenu_title::after {
    content: '−';
  }

  .ui_megamenu_col .ui_megamenu_menu-list {
    display: none;
    padding-top: 10px;
  }

  .ui_megamenu_col.active .ui_megamenu_menu-list {
    display: block;
  }
}





