/*
Theme Name: Nadira Kaimova
Theme URI: https://nadirakaimova.com/
Template: generatepress
Author: David Gutierrez
Author URI: https://nadirakaimova.com/
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 3.6.1.1771784373
Updated: 2026-02-22 13:19:33

*/

html, * {
    box-sizing: border-box;
}

.menu_container .text_wrapper p span::after{
    content: "";
    display: inline-block;
    width: 14px; /* Ajusta el tamaño aquí */
    height: 14px;
    margin-left: 6px; /* Separación entre el texto y el icono */
    vertical-align: middle;
    position: relative;
    top: -1px; 
    background-color: currentColor; 
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E") no-repeat center / contain;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu {
    margin-top: 25px !important;
    backdrop-filter: blur(10px);
    background: #ffffffa6;
	border-top:solid 1px var(--soft-soil);
    box-shadow:rgb(0 0 0 / 62%) 0 450px 9999px 265px;
	padding:60px 0;
}

.menu_container .text_wrapper p span{
    text-transform:uppercase!important;
}

.menu_container ul{
	display:flex!important;
	align-items:center;
	justify-self:center;
	justify-items:center;
}

.loop_item_megamenu {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    min-height:300px;
    width: 33%;
    display:flex;
    align-items:start;
    justify-content:flex-end;
    flex-direction:column;
    padding:20px;
}

.loop_item_megamenu img{
    position:absolute;
    object-fit:cover;
    width:100%;
    height:100%;
    top:0;
    left:0;
    z-index:0;
}

.loop_item_megamenu h5{
    font-size:0.8em;
	background-color: rgba(43,38,35,0.7);
    color: var(--base-3);
    position: absolute;
    right: 15px;
    text-transform: uppercase;
    top: 15px;
    width: fit-content;
    border-radius: 5px;
    padding: 5px 10px
}

.loop_item_megamenu h2, .loop_item_megamenu span, .loop_item_megamenu a{
    z-index:1;
}

.loop_item_megamenu .location{
	 font-weight: bold;
    margin-bottom: 10px
}

.loop_item_megamenu h2{
    font-size:1.3em;
    font-weight:bold;
	color: var(--cloud-white);
    margin-bottom: 5px
}

.loop_item_megamenu span, .loop_item_megamenu a{
    letter-spacing: 0.05em;
    font-size: 12px!important;
    line-height: 1.2em;
	color: var(--cloud-white)
}

.loop_item_megamenu a{
	align-items: center;
    background-color: rgba(43,38,35,0.5);
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-left-style: solid;
    border-left-width: 1px;
    border-right-style: solid;
    border-right-width: 1px;
    border-top-style: solid;
    border-top-width: 1px;
    color: #ffffff;
    column-gap: 0.5em;
    display: inline-flex;
    text-decoration: none;
    border-radius: 10px;
    padding: .5rem 1rem
}

.overlay_megamenu_loop_item{
    position:absolute;
    left:0;
    bottom: 0;
    right:0;
    width: 100%;
    height: 100%;
    margin: 0;
    background: linear-gradient(to bottom, transparent, black);
}
ul.work_list li {
  border-bottom: solid 1px;
  padding: 8px 0;
}

ul.work_list li:last-child {
  border-bottom: none;
  padding: 8px 0;
}

.post_tags_text {
  text-overflow: ellipsis;
}

/* ACORDEONES EN LA SECCIÓN DE CURSOS */

.accordion_cursos {
  width: 100%;
  padding: 0 10px;
  border-radius: 10px;
}

.accordion_cursos h3 {
  margin: 0;
  padding: 0;
}

.accordion_cursos button:hover,
.accordion_cursos button:focus {
  background-color: transparent !important;
  color: var(--deep-earth);
}

/* Contenedor del Grid */
.contenedor-pilares {
  column-count: 2; /* Divide en 2 columnas */
  column-gap: 20px; /* Espacio entre columnas */
}

/* Ajuste para cada tarjeta */
.tarjeta-pilar {
  display: inline-block; /* Evita que la tarjeta se parta entre columnas */
  width: 100%;
  margin-bottom: 20px; /* Espacio vertical entre tarjetas */
  break-inside: avoid;
}

.masking_image{
	mask-image:linear-gradient(to top, transparent 5%, black 50%);
}

/* --- 1. ESTADO INICIAL (Transparente en el Home) --- */

.nadira-header {
  background-color: transparent;
  transition:
    background-color 0.4s ease,
    box-shadow 0.4s ease;
}
/* Ocultar el logo de color por defecto */
.nadira-header .logo-color {
  display: none;
}

/* --- 2. ESTADO SCROLL (Fondo Crema) --- */
.nadira-header.header-scrolled {
  background-color: var(--cloud-white); /* El color crema de tu marca */
  padding: 15px 0;
  transition: all 0.5s ease;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
}
/* Intercambio de logos */
.nadira-header.header-scrolled .logo-blanco {
  display: none;
}
.nadira-header.header-scrolled .logo-color {
  display: block;
}

/* --- REGLAS EXCLUSIVAS PARA PÁGINAS INTERNAS --- */
/* El selector :not(.home) aplica esto a todo el sitio EXCEPTO el inicio */

/* 1. Evitar que el header se coma el contenido */
body:not(.home) {
  /* Ajusta este valor a la altura real de tu header (ej. 80px, 100px, 120px) */
  padding-top: 100px;
}

/* 2. Forzar el estado sólido (crema) permanentemente */
body:not(.home) .nadira-header {
  background-color: #f4f2ec !important;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08) !important;
}

/* 3. Mostrar siempre el logo de color y ocultar el blanco */
body:not(.home) .nadira-header .logo-blanco {
  display: none !important;
}
body:not(.home) .nadira-header .logo-color {
  display: block !important;
}

/* 4. Forzar el color oscuro en los enlaces del Mega Menu */
body:not(.home)
  .nadira-header
  #mega-menu-wrap-primary
  #mega-menu-primary
  > li.mega-menu-item
  > a.mega-menu-link {
  color: #333333 !important;
}

/* Cambiar color de los enlaces del Mega Menu al hacer scroll */
.nadira-header.header-scrolled
  #mega-menu-wrap-primary
  #mega-menu-primary
  > li.mega-menu-item
  > a.mega-menu-link {
  color: #333333 !important;
}

/* --- 3. ESTILO DEL DROPDOWN DE IDIOMAS --- */
.nav-idiomas-custom {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  font-weight: 600;
  font-size: 14px;
  color: inherit;
}
.nav-idiomas-custom li {
  display: none;
}
.nav-idiomas-custom li a {
  color: white;
  text-transform:uppercase;
}
.header-scrolled .nav-idiomas-custom li a {
  color: var(--deep-earth);
}
.header-scrolled .nav-idiomas-custom li.current-lang {
  color: var(--deep-earth);
}

.upper_menu {
  display: block;
  transition: all 0.2
    linear(
      0 0%,
      0 1.8%,
      0.01 3.6%,
      0.03 6.35%,
      0.07 9.1%,
      0.13 11.4%,
      0.19 13.4%,
      0.27 15%,
      0.34 16.1%,
      0.54 18.35%,
      0.66 20.6%,
      0.72 22.4%,
      0.77 24.6%,
      0.81 27.3%,
      0.85 30.4%,
      0.88 35.1%,
      0.92 40.6%,
      0.94 47.2%,
      0.96 55%,
      0.98 64%,
      0.99 74.4%,
      1 86.4%,
      1 100%
    );
  height: 50px;
  opacity: 1;
}
.header-scrolled .upper_menu {
  height: 0;
  opacity: 0;
  transition: all 0.2s ease;
  overflow: hidden;
}

body:not(.home) .header-scrolled .upper_menu {
  transition: all 0.5s ease;
  height: auto;
  opacity: 1;
  overflow:visible;
}

.nav-idiomas-custom li.current-lang {
  display: flex;
  align-items: center;
  gap: 6px;
  color: white;
  cursor: pointer;
  transition: all 1s ease;
}
.nav-idiomas-custom li.current-lang::after {
  content: "\f347";
  font-family: "dashicons";
  font-size: 12px;
}
.nav-idiomas-custom:hover li {
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all 1s ease;
  z-index: 10;
}
.nav-idiomas-custom:hover li:not(.current-lang) {
  position: absolute;
  top: 100%;
  right: 0; /* Alineado a la derecha */
  min-width: 100%;
}
.nav-idiomas-custom img {
  width: 20px !important;
  height: auto;
}

/* El escenario principal */
.hero-parallax-stage {
  background-color: #000; /* Color de seguridad */
}

/* Reglas compartidas para las capas de imagen */
.layer-bg,
.layer-subject,
.layer-foreground {
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.hero-parallax-stage:before {
  content: "";
  position: absolute;
  background: linear-gradient(
    to bottom,
    rgb(0 0 0 / 80%) 0%,
    rgb(0 0 0 / 0%) 40%
  );
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100vh;
  z-index: 2;
}

.hero-parallax-stage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Ajuste para que Nadira y las plantas queden ancladas abajo */
.layer-subject img,
.layer-foreground img {
  object-position: bottom center;
}

.layer-subject {
  z-index: 3; /* Encima del fondo, debajo del texto */
}

/* --- EL TEXTO GRANDE DEL FONDO --- */
.layer-bg-text {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* Centrado perfecto inicial */
  width: 19%;
  text-shadow: 0px 5px 4px rgba(0, 0, 0, 0.25);
  z-index: 2; /* Detrás de Nadira */
  pointer-events: none;
}

.layer-bg-text h1 {
  color: var(--cloud-white); /* Blanco semi-transparente */
  white-space: nowrap; /* Evita que el texto se rompa en dos líneas */
  margin: 0;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.highlights_list h3 {
  margin-bottom: 8px !important;
}

.highlights_list div {
  border-bottom: solid 1px;
}

.highlights_list div:last-child {
  border-bottom: none;
}

.highlights_list div h3 button:hover,
.highlights_list div h3 button:focus {
  background-color: transparent;
  color: var(--soft-soil);
}

.table_high div p {
  border-bottom: solid 1px var(--global-color-12);
  margin: 0;
  padding: 10px 20px;
}

.table_high div p:nth-child(odd) {
  background: #a8584226;
}

.table_high div p:first-child {
  background: transparent;
}

.table_high div p:last-child {
  border-bottom: none;
}

/* --- EL CTA DE SCROLL FLOTANTE --- */
.scroll-cta-pulse {
  transform: translateX(-50%);
  z-index: 10;
  color: #ffffff;
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  animation: pulse-scroll 2s infinite;
}

/* 1. El contenedor del texto en su estado contraído */
.texto-revelable {
  position: relative;
  max-height: 140px; /* Ajusta este valor para mostrar más o menos texto inicial */
  overflow: hidden;
  transition: max-height 0.5s ease; /* La animación suave de expansión */
}

/* 2. La máscara de degradado (El efecto de desvanecimiento) */
.texto-revelable::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(
    to bottom,
    transparent 20%,
    var(--cloud-white) 90%
  );
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* 3. El estado expandido (Cuando hacemos clic) */
.tarjeta-expandible.abierta .texto-revelable {
  max-height: 1500px; /* Un número grande para que quepa todo el texto */
}

/* Ocultamos el degradado cuando está abierto */
.tarjeta-expandible.abierta .texto-revelable::after {
  opacity: 0;
}

/* Ajuste visual para el botón */
.btn-ver-mas {
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  color: var(--deep-earth); /* Color terracota o el que uses */
}

/* Opcional: Para asegurarnos de que la imagen central no se deforme */
.seccion-flotante-wrapper > .gb-image {
  display: block;
  margin: 0 auto;
  position: relative;
  z-index: 1; /* Queda detrás de las tarjetas (que tienen z-index 10) */
}

/* Color de los bullets inactivos */
.swiper-pagination-bullet {
  background-color: #cccccc;
  opacity: 0.7;
}

/* Color del bullet activo (Cámbialo al color principal, ej. Terracota) */
.swiper-pagination-bullet-active {
  background-color: var(--global-color-12);
  opacity: 1;
}

/* Darle un poco de respiro debajo de las tarjetas */
.slider-movil .swiper-pagination {
  position: relative;
  margin-top: 20px;
}

/* --- 1. EL CÍRCULO PRINCIPAL --- */
.pista-orbita {
    position: relative;
    width: 100%;
    max-width: 480px; /* Tamaño máximo del círculo */
    aspect-ratio: 1 / 1; /* Lo mantiene perfectamente redondo */
    margin: 0 auto;
    border-radius: 50%;
    border: 1px dashed rgba(168, 88, 66, 0.3); /* Una línea sutil para marcar la órbita */
    
    /* La animación de giro del padre (40 segundos, infinito) */
    animation: giro-reloj 40s linear infinite;
}

/* Si el usuario pasa el mouse, el círculo se detiene para que lea con calma */
.pista-orbita:hover,
.pista-orbita:hover .item-satelite {
    animation-play-state: paused;
}

/* --- 2. LAS TARJETAS (LOS SATÉLITES) --- */
.item-satelite {
    position: absolute;
    width: fit-content; /* Espacio suficiente para el icono y el texto */
    text-align: center;
    background: #ffffff;
    padding: 10px;
    border-radius: 12px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    
    /* La animación de contra-giro para que no queden de cabeza */
    animation: contra-giro 40s linear infinite;
}

/* Estilos de los elementos internos */
.item-satelite img, .item-satelite svg {
    width: 7vw !important;
    height: auto !important;
    margin-bottom: 5px;
}
.item-satelite h4 {
    font-size: 0.85rem; /* Pequeño pero legible */
    line-height: 1.2;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* --- 3. LAS COORDENADAS EXACTAS (La Geometría) --- */
/* Posicionamos cada uno en un punto del círculo (x, y) */
.item-satelite:nth-child(1) { top: 0%; left: 50%; }     /* Las 12:00 */
.item-satelite:nth-child(2) { top: 25%; left: 93.3%; }  /* Las 2:00 */
.item-satelite:nth-child(3) { top: 75%; left: 93.3%; }  /* Las 4:00 */
.item-satelite:nth-child(4) { top: 100%; left: 50%; }   /* Las 6:00 */
.item-satelite:nth-child(5) { top: 75%; left: 6.7%; }   /* Las 8:00 */
.item-satelite:nth-child(6) { top: 25%; left: 6.7%; }   /* Las 10:00 */

/* --- 1. ESTADO NORMAL DEL SVG --- */
.item-satelite svg {
    /* Una transición súper suave como mantequilla */
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), filter 0.5s ease;
    
    /* Le damos una sombrita base casi invisible para darle profundidad */
    filter: drop-shadow(0px 2px 4px rgba(0,0,0,0.08));
}

/* Transición para las líneas y rellenos internos del SVG */
.item-satelite svg path,
.item-satelite svg circle,
.item-satelite svg rect {
    transition: all 0.4s ease;
}

/* --- 2. EL ESTADO HOVER (Cuando pasas el mouse por la tarjeta) --- */
.item-satelite:hover svg {
    /* El icono crece un 15% y sube 5px (levitación) */
    transform: scale(1.15) translateY(-5px);
    
    /* La sombra se expande y toma un tono cálido (Ajusta este RGB al color de tu marca) */
    filter: drop-shadow(0px 8px 12px rgba(168, 88, 66, 0.25)); 
}

/* Cambiamos el color interno del SVG al hacer hover */
.item-satelite:hover svg path,
.item-satelite:hover svg circle,
.item-satelite:hover svg rect {
    /* Si tus SVGs están hechos con líneas usa stroke, si son formas rellenas usa fill */
    fill: #A85842;
}

/* --- 4. LOS KEYFRAMES DE ANIMACIÓN --- */
@keyframes giro-reloj {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

@keyframes contra-giro {
    /* translate(-50%, -50%) es vital para que se centren exactamente en su coordenada antes de rotar */
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to   { transform: translate(-50%, -50%) rotate(-360deg); }
}

@keyframes pulse-scroll {
  0% {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
  50% {
    transform: translateX(-50%) translateY(10px);
    opacity: 0.5;
  }
  100% {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
}

.tarjeta-bento-evento:first-child{
    aspect-ratio:9/13;
}
.tarjeta-bento-evento:nth-child(1) {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
}

.tarjeta-bento-evento{
	min-height:260px;
}

/* Tarjeta 2: Columna 2. Baja desde la fila 1 hasta la 3 */
.tarjeta-bento-evento:nth-child(2) {
    grid-column: 2 / 3;
    grid-row: 1 / 3;
}

/* Tarjeta 3: Columna 3. Se queda solo en la fila 1 (La de arriba) */
.tarjeta-bento-evento:nth-child(3) {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
}

/* Tarjeta 4: Columna 3. Se queda solo en la fila 2 (Justo debajo de la 3) */
.tarjeta-bento-evento:nth-child(4) {
    grid-column: 3 / 4;
    grid-row: 2 / 3;
}

/* --- 4. TARJETA 3 (Dividida 50/50) --- */
.tarjeta-bento-evento:nth-child(3),
.tarjeta-bento-evento:nth-child(4) {
    background-repeat: no-repeat !important;
    /* Tu color de fondo ajustado desde GB Pro o aquí: */
    background-color: #F8F5F2 !important; 
}

/* Le decimos a tu contenedor de textos que ocupe la mitad inferior exacta */
.tarjeta-bento-evento:nth-child(3), .tarjeta-bento-evento:last-child   {
    display: flex;
    flex-direction: column;
}

/* 1. Blindamos el contenedor principal */
.form-newsletter-nadira {
    width: 100%;
    box-sizing: border-box;
    /* overflow: hidden; (Descomenta esto solo como último recurso si sigue molestando) */
}

/* 2. Domamos el span invisible de Contact Form 7 */
.form-newsletter-nadira .wpcf7-form-control-wrap {
    display: block !important; /* Le quitamos el inline-block maldito */
    width: 100%;
}

/* 3. Forzamos los inputs para iOS y navegadores móviles */
.form-newsletter-nadira input.input-fluido {
    width: 100% !important; 
    max-width: 100%;
    box-sizing: border-box !important; /* La regla de oro: el padding se calcula hacia adentro */
    -webkit-appearance: none; /* ¡Clave para Safari! Quita los estilos inflados de Apple */
    margin: 0; /* Limpiamos márgenes fantasma */
}

/* Opcional: Aseguramos que los grupos tengan separación en móvil y no se salgan */
.campo-grupo {
    width: 100%;
    margin-bottom: 5px;
}

.campo-grupo p{
	margin-bottom: 10px;
}

.campo-grupo input, .campo-grupo textarea{
    border:solid 1px var(--soft-soil)
}

@media (max-width: 1300px) {
      .layer-bg-text {
        top: 43% !important;
        text-align: left !important;
        left: 40% !important;
        width: 70% !important;
    }
}

@media (max-width: 768px) {
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu {
	padding:15px 0;
}
	.menu_container ul{
		flex-direction:column;
	}
	
	.loop_item_megamenu {
    min-height: 180px;
    width: 100%;
    flex-direction:column;
	padding:13px;
	margin:8px 0;
	}

	.layer-bg-text {
        width: 80% !important;
    }
	
	.item-satelite img, .item-satelite svg {
    width: 0.75em !important;
}
	
	.pista-orbita {
        border: none;
        aspect-ratio: auto;
        animation: none; /* Apagamos la rotación */
        display: flex;
        flex-wrap: wrap;
        gap: 15px;
        justify-content: center;
    }
    
    .item-satelite {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        animation: none !important;
        width: 45%; /* Quedan en 2 columnas perfectas */
    }
  .work_list {
    margin: 0;
  }
  .contenedor-pilares {
    column-count: 1;
  }
  .slider-movil {
    padding-left: 20px !important;
    padding-right: 20px !important;
    overflow: hidden !important;
  }

  /* 2. El Envoltorio: Matamos los márgenes negativos de GenerateBlocks que empujan todo a la izquierda/derecha */
  .slider-movil .swiper-wrapper {
    flex-wrap: nowrap !important;
    display: flex !important;
    gap: 0 !important;
    margin-left: 0 !important; /* ¡Adiós al desborde izquierdo! */
    margin-right: 0 !important; /* ¡Adiós al desborde derecho! */
  }

  /* 3. Las Tarjetas: Ancho fijo para que Swiper no se confunda */
  .slider-movil .swiper-slide {
    width: 94% !important; /* Aquí controlas qué tan grande se ve la tarjeta principal */
    max-width: 100vw !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    height: auto !important;
  }

  /* 4. Limpieza profunda del bloque reutilizable */
  .slider-movil .swiper-slide > .gb-inside-container {
    max-width: 100% !important;
    width: 100% !important;
  }

  .nadira-header.header-scrolled
    #mega-menu-wrap-primary
    #mega-menu-primary
    > li.mega-menu-item
    > a.mega-menu-link {
    color: var(--cloud-white) !important;
  }

  body:not(.home)
    .nadira-header
    #mega-menu-wrap-primary
    #mega-menu-primary
    > li.mega-menu-item
    > a.mega-menu-link {
    color: var(--cloud-white) !important;
  }
	
	.tarjeta-bento-evento:first-child{
         aspect-ratio:unset!important;
    }
    .grid-bento-eventos {
        /* En celular volvemos a una sola columna infinita */
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }
    
    /* Le quitamos las coordenadas forzadas para que se apilen normal de arriba a abajo */
    .tarjeta-bento-evento {
        grid-column: 1 / -1 !important;
        grid-row: auto !important;
        min-height: 350px!important; /* O la altura que prefieras en móvil */
    }
}

/* Estilos tienda */

.woocommerce ul.products li.product .button{
    margin-top:0;
    padding: 5px 20px;
    font-size: .8em!important;
    width:100%;
}

.woocommerce ul.products li.product{
    background: white;
    padding: 10px;
    border-radius: 10px;
    box-shadow: var(--soft-soil) 0px 10px 20px -17px;
    transition: box-shadow 0.3s ease-in-out;
}

.woocommerce ul.products li.product:hover{
    box-shadow: var(--soft-soil) 0px 0px 20px -17px;
    transition: box-shadow 0.3s ease-in-out;
}

.woocommerce ul.products li.product .price{
    font-size: 1.2em;
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link{
    margin-bottom: 0!important;
}

.wc-columns-container .products, .woocommerce .related ul.products, .woocommerce .up-sells ul.products{
    grid-gap: 20px!important;
}

/* Ocultar el checkbox nativo de Filter Everything */
.wpc-filters-main-wrap li.wpc-term-item input[type=checkbox],
.wpc-filters-main-wrap li.wpc-term-item input[type=radio] {
    display: none !important;
}

/* Alinear el texto y el contador en la misma línea */
.wpc-filters-widget .wpc-term-item {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    cursor: pointer;
}

/* Estilo para el nombre de la categoría: Línea vertical izquierda y texto */
.wpc-term-item-content-wrapper {
    border-left: 3px solid var(--olive); /* Ajustar al código HEX exacto del turquesa */
    padding-left: 10px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    color: var(--soft-soil);
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
}

.wpc-term-item-content-wrapper a{
    color: var(--deep-earth);
}

/* Interacción al pasar el cursor */
.wpc-term-item-content-wrapper a:hover {
    color: var(--global-color-12);
}

/* Estado activo (cuando la categoría está seleccionada) */
.wpc-term-selected .wpc-term-item-content-wrapper a{
    color: var(--olive);
    font-weight: bold!important;
}

/* Estilo para la píldora del contador */
.wpc-term-count {
    background-color: #5e56523d; /* Ajustar al color arena/crema exacto */
    color: var(--deep-earth);
    border-radius: 100%;
    padding: 2px 8px;
    font-size: 11px;
    font-weight: 600;
    aspect-ratio: 1/1;
    max-height: fit-content;
    width: fit-content!important;
}

.wpc-filters-main-wrap li.wpc-term-item label{
	align-items:center;
}

/* Estilo minimalista para el campo de búsqueda */
.wpc-search-field {
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
}

/* Tipografía de los títulos de cada filtro (Categorías, Destacados) */
.wpc-filter-title {
    color: var(--global-color-12);
    font-size: 1em;
    font-weight: 700;
    margin-bottom: 10px!important;
    text-transform: uppercase;
	letter-spacing:8%;
}

.wpc-filters-section{
	margin:1em 0!important;
}

h2.widget-title {
    font-family: var(--global-font-1);
    color: var(--global-color-12);
    font-size: 1em;
    font-weight: 700;
    margin-bottom: 10px!important;
    text-transform: uppercase;
	letter-spacing:8%;
}

.wc-block-product-filters__overlay-content h3 {
    font-family: var(--global-font-1);
    color: var(--global-color-12);
    font-size: 1em;
    font-weight: 700;
    margin-bottom: 10px!important;
    text-transform: uppercase;
	letter-spacing:8%;
}

.wc-block-product-filters__overlay-content span {
    font-size: .8em;
}

.wc-block-product-filter-price-slider .text input[type=text]{
	max-width:80px!important;
	font-size:.7rem!important;
	padding:0px 10px!important;
	text-align:center;
}

.wc-block-product-filter-chips__item:hover{
	background:#5e56523d;
	color:var(--olive);
}

.wc-block-product-filters__overlay-content button.wp-block-button__link{
	background:var(--global-color-12);
	color:var(--cloud-white);
	border-radius:0;
	font-size:.8rem!important;
}

/* Reestructuración del widget de Productos Vistos Recientemente (A prueba de variaciones) */

.woocommerce ul.product_list_widget li {
    display: block !important; /* Eliminamos el grid */
    position: relative;
    padding-left: 80px !important; /* 65px de la imagen + 15px de espacio */
    min-height: 65px; /* Mantiene la altura mínima de la imagen */
    margin-bottom: 15px !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #eaeaea;
    color: var(--global-color-12); /* Hace que el guion "-" herede el color terracota */
}

/* Ocultar el borde en el último elemento de la lista */
.woocommerce ul.product_list_widget li:last-child {
    border-bottom: none;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Restaurar el comportamiento normal del enlace */
.woocommerce ul.product_list_widget li a {
    display: block !important;
}

/* Posicionar la miniatura fija a la izquierda */
.woocommerce ul.product_list_widget li img {
    position: absolute;
    top: 0;
    left: 0;
    width: 65px !important;
    height: 65px !important;
    object-fit: cover;
    border-radius: 6px;
    margin: 0 !important;
    float: none !important;
}

/* Estilización del título a la derecha */
.woocommerce ul.product_list_widget li a .product-title {
    display: block;
    font-size: .88rem;
    letter-spacing:normal!important;
    font-weight: 600;
    color: var(--deep-earth); 
    line-height: 1.3;
    transition: color 0.3s ease;
    text-decoration: none;
}

.woocommerce ul.product_list_widget li a .product-title:hover {
    color: var(--olive); /* Turquesa */
}

/* El precio ahora fluye de forma natural en una sola línea */
.woocommerce ul.product_list_widget li .amount,
.woocommerce ul.product_list_widget li ins,
.woocommerce ul.product_list_widget li del {
    font-size: 13px;
    color: var(--global-color-12); /* Terracota */
    font-weight: 500;
    text-decoration: none;
}

.menu-item.xoo-wsc-menu-item{
	display:inline-block;
}

.woocommerce-bacs-bank-details h2, .woocommerce-bacs-bank-details h3, .woocommerce-customer-details h2, .woocommerce-order-details h2{
    font-family:poppins;
}

.woocommerce-bacs-bank-details h2,.woocommerce-customer-details h2, .woocommerce-order-details h2{
    text-align:left;
    text-transform:uppercase;
    font-size:1.2rem;
    color:var(--deep-earth);
}

.woocommerce-bacs-bank-details h3{
    text-transform:uppercase;
    font-size:1rem;
}

.woocommerce-bacs-bank-details{
    margin:20px 0;
    border: 1px solid var(--soft-soil);
    border-radius:20px;
    padding:20px;
}

/* Limpiar el contenedor principal y aplicar Flexbox */
section.woocommerce-bacs-bank-details {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-top: 40px;
}

/* Título principal centrado */
section.woocommerce-bacs-bank-details h2 {
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
}

/* Ocultar los subtítulos de nombre de cuenta (ej. "NADIRA KAIMOVA:", "NEQUI:") para evitar redundancia */
section.woocommerce-bacs-bank-details h3 {
    display: none !important;
}

/* Estilo de cada tarjeta individual (Bancolombia, Nequi, etc.) */
section.woocommerce-bacs-bank-details ul {
    flex: 1 1 250px; /* Permite que las tarjetas se adapten al ancho disponible */
    background-color: white; /* Tono crema */
    border: 1px solid #e0dcd2;
    border-radius: 12px;
    padding: 10px 20px !important;
    margin: 0 0 20px 0 !important;
    list-style: none !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.03);
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Reset de las etiquetas de cada línea (Banco, Número de cuenta) */
.woocommerce-bacs-bank-details ul li {
    display: flex;
    flex-direction: column;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 11px;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Estilo para los valores ingresados */
.woocommerce-bacs-bank-details ul li strong {
    font-size: 16px;
    color: #333;
    font-weight: 600;
    margin-top: 4px;
    text-transform: none;
    letter-spacing: normal;
}

/* Destacar específicamente el nombre del banco o app */
.woocommerce-bacs-bank-details ul li.bank_name strong {
    color:var(--global-color-12);
    font-size: 20px;
}

.woocommerce-order table.shop_table td, .woocommerce table.shop_table th{
    padding: 10px!important;}
.woocommerce ul.products li.product{
	justify-content:space-around!important;
}
.woocommerce a.button{
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
}

/* ===================================================
   POSICIONAMIENTO EXTERNO DE CONTROLES SWIPER
   =================================================== */


/* Contenedor Maestro Vertical Flex */
.carrusel-master-nadira {
    display: flex;
    flex-direction: column;
    position: relative;
    padding-bottom: 40px; 
    width: 100%;
    max-width: 100%;
    min-width: 0; /* Obliga a Flexbox/Grid a respetar los límites de la pantalla */
    box-sizing: border-box;
    overflow-x: hidden; /* Corta de raíz cualquier desbordamiento horizontal */
}

/* Blindaje extra para el contenedor interno de Swiper */
.carrusel-master-nadira .swiper {
    width: 100%;
    min-width: 0;
}
/* 1. Cabecera de Navegación (Top Right) */
.carrusel-header-nav {
    display: flex;
    justify-content: flex-end; /* Alinea flechas a la derecha */
    gap: 12px; /* Separación entre flechas */
    margin-bottom: 15px; /* Separación de las imágenes */
    position: relative;
    height: 45px;
}

/* Reset de flechas para vivir en la cabecera (sacar del absolute) */
.carrusel-master-nadira .swiper-button-next,
.carrusel-master-nadira .swiper-button-prev {
    position: static !important; /* QUITAMOS EL POSICIONAMIENTO ABSOLUTO */
    margin: 0 !important;
    width: 42px !important;
    height: 42px !important;
    color: #a85842 !important; /* Terracota */
    background-color: #f7f4ef; /* Crema */
    border: 1px solid #e0dcd2;
    border-radius: 10%;
    transition: all 0.3s ease;
}

/* Ícono de flecha nativo centrado y más pequeño */
.carrusel-master-nadira .nadira-arrow::after {
    font-size: 16px !important;
    font-weight: bold;
}

/* Efecto hover en flechas */
.carrusel-master-nadira .nadira-arrow:hover {
    background-color: var(--surface-cards); /* Turquesa */
    transform: scale(1.08);
}

/* 2. Paginación por Fuera (Bottom Center) */
.carrusel-master-nadira .swiper-pagination {
    position: relative !important; /* SACAMOS DEL POSICIONAMIENTO ABSOLUTO */
    bottom: 0 !important;
    margin-top: 25px; /* Separación de las fotos */
    text-align: center;
    width: auto !important; /* Obliga a los puntos a ser horizontales */
    margin-left: auto;
    margin-right: auto;
}

/* Estilo de los puntos (Bullets) */
.carrusel-master-nadira .swiper-pagination-bullet {
    background-color: #a85842 !important; /* Terracota inactivo */
    opacity: 0.3;
}

.carrusel-master-nadira .swiper-pagination-bullet-active {
    background-color: #1e878f !important; /* Turquesa activo */
    opacity: 1;
    width: 22px;
    border-radius: 10px;
}

/* Convertir la lista HTML en un contenedor Flexbox */
.lista-especialidades-guia ul {
    list-style: none !important; /* Quitamos los puntos nativos */
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-wrap: wrap; /* Para que bajen de línea si hay muchas */
    gap: 8px; /* Espacio entre las píldoras */
}

/* Darle estilo de "Etiqueta" a cada ítem de la lista */
.lista-especialidades-guia ul li {
    background-color: #f7f4ef; /* Tu color crema base */
    color: #a85842; /* Tu color terracota */
    font-size: 13px;
    padding: 4px 12px;
    border-radius: 20px; /* Bordes redondeados tipo píldora */
    border: 1px solid #e0dcd2;
    line-height: 1.4;
}
