.elementor-2975 .elementor-element.elementor-element-15e344f{--display:flex;--position:absolute;--min-height:150px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:0px;--z-index:99;}body:not(.rtl) .elementor-2975 .elementor-element.elementor-element-15e344f{left:0px;}body.rtl .elementor-2975 .elementor-element.elementor-element-15e344f{right:0px;}.elementor-2975 .elementor-element.elementor-element-860d871{width:var( --container-widget-width, 0% );max-width:0%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:0%;--container-widget-flex-grow:0;z-index:5;}.elementor-2975 .elementor-element.elementor-element-860d871 img{filter:brightness( 38% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-2975 .elementor-element.elementor-element-c24c49c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;z-index:0;}.elementor-2975 .elementor-element.elementor-element-c24c49c.elementor-element{--align-self:center;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-menu-toggle{margin:0 auto;background-color:#FFFFFF00;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu .elementor-item{font-family:"PublicSans", Sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;font-style:normal;text-decoration:none;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item{color:#292824;fill:#292824;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item:focus{color:#929679;fill:#929679;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#929679;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed .elementor-item:before,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed .elementor-item:after{border-color:#929679;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#929679;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a, .elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-menu-toggle{color:#FFFFFF;fill:#FFFFFF;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown{background-color:#929679;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a:hover,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a:focus,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a.highlighted{background-color:#FF000000;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a{padding-left:50px;padding-right:50px;padding-top:25px;padding-bottom:25px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown li:not(:last-child){border-style:none;}.elementor-2975 .elementor-element.elementor-element-c24c49c div.elementor-menu-toggle{color:#FFFFFF;}.elementor-2975 .elementor-element.elementor-element-c24c49c div.elementor-menu-toggle svg{fill:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-2975 .elementor-element.elementor-element-15e344f{--content-width:1480px;}}@media(max-width:1024px){.elementor-2975 .elementor-element.elementor-element-15e344f{--min-height:150px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2975 .elementor-element.elementor-element-15e344f.e-con{--align-self:center;}.elementor-2975 .elementor-element.elementor-element-860d871{width:var( --container-widget-width, 36vw );max-width:36vw;margin:5vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) 5vw;padding:0vw 0vw 0vw 0vw;--container-widget-width:36vw;--container-widget-flex-grow:0;}.elementor-2975 .elementor-element.elementor-element-c24c49c{width:var( --container-widget-width, 15% );max-width:15%;margin:0vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) 80vw;padding:180px 0px 0px 0px;--container-widget-width:15%;--container-widget-flex-grow:0;z-index:1;--nav-menu-icon-size:28px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown{border-radius:0px 0px 0px 0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:0px;border-top-right-radius:0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:100px !important;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-menu-toggle{border-width:0px;}}@media(max-width:767px){.elementor-2975 .elementor-element.elementor-element-860d871{margin:14vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) 5vw;--container-widget-width:45vw;--container-widget-flex-grow:0;width:var( --container-widget-width, 45vw );max-width:45vw;}.elementor-2975 .elementor-element.elementor-element-c24c49c{width:var( --container-widget-width, 100% );max-width:100%;margin:0vw 0vw calc(var(--kit-widget-spacing, 0px) + 2vw) 65vw;padding:30vw 0vw 8vw 0vw;--container-widget-width:100%;--container-widget-flex-grow:0;--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );--nav-menu-icon-size:8vw;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed .elementor-item:before{border-width:0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 0px 0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:0px 0px 0 0;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:0px 0 0 0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 0px 0px 0;}.elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-underline .elementor-item:after,
					 .elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-overline .elementor-item:before,
					 .elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-double-line .elementor-item:before,
					 .elementor-2975 .elementor-element.elementor-element-c24c49c .e--pointer-double-line .elementor-item:after{height:0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-2975 .elementor-element.elementor-element-c24c49c .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}}/* Start custom CSS for theme-site-logo, class: .elementor-element-860d871 *//* Logotipo blanco solo en tablet y mobile */
@media (max-width: 1024px) {
    .elementor-widget-image img {
        filter: brightness(0) invert(1) !important;
    }
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-c24c49c *//* ==== MENÚ BASE (TU CÓDIGO, SIN CAMBIOS) ==== */
.my-nav-tres ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.my-nav-tres ul li { margin: 0; }

.my-nav-tres a {
  color: #55544B !important;   /* color inicial */
  text-decoration: none;
  transition: color 0.3s ease;
}

/* Texto blanco cuando sticky (escritorio) */
.my-nav-tres.elementor-sticky--effects a {
  color: #FFFFFF !important;
}

/* --- Solo escritorio --- */
@media (min-width: 1025px) {
  .my-nav-tres ul li:nth-child(4) {
    margin-left: 268px;
  }
}

/* =========================================================
   SOLO TABLET Y MÓVIL (≤1024): MENÚ VERTICAL + ICONO PEGADO
   ========================================================= */
@media (max-width: 1024px) {
  /* Estructura vertical y centrada */
  .my-nav-tres ul {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0;
    width: 100%;
  }

  .my-nav-tres ul li { width: 100%; }

  /* Enlaces como "botón" ancho completo, texto centrado */
  .my-nav-tres a,
  .my-nav-tres .elementor-nav-menu--dropdown a {
    display: inline-flex;             /* importante: para pegar icono al texto */
    align-items: center;
    justify-content: center;          /* centra texto + icono */
    gap: 8px;                         /* espacio exacto entre texto e icono */
    width: 100%;
    padding: 15px 16px !important;    /* ⬅️ 15px arriba/abajo */
    text-align: center;
    color: #FFFFFF !important;        /* mismo color de tu dropdown */
    line-height: 1.2;
  }

  /* Quita reservas de espacio que deja Elementor para el toggle */
  .my-nav-tres .elementor-nav-menu--dropdown a,
  .my-nav-tres .elementor-item {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* 🔽 ICONO DE SUBMENÚ PEGADO AL TEXTO (sin posición absoluta) */
  .my-nav-tres .sub-arrow,
  .my-nav-tres .elementor-sub-item-toggle,
  .my-nav-tres .elementor-menu-toggle .sub-arrow {
    position: static !important;      /* deja de ocupar espacio fuera del flujo */
    margin: 0 0 0 6px !important;     /* pegado a la derecha del texto */
    transform: none !important;
    display: inline-flex !important;
    align-items: center;
    vertical-align: middle;
  }

  /* Si Elementor coloca el toggle como hijo del <li>, fuerza layout en línea */
  .my-nav-tres li.menu-item-has-children > a,
  .my-nav-tres li.menu-item-has-children > .elementor-item {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
  }

  /* El “empuje” del item 4 solo es de escritorio */
  .my-nav-tres ul li:nth-child(4) {
    margin-left: 0 !important;
  }

  /* Separadores sutiles entre items (opcional) */
  .my-nav-tres ul li + li a {
    border-top: 1px solid rgba(255,255,255,0.15);
  }

  /* Submenús: centrados también + mismo padding vertical de 15px */
  .my-nav-tres .elementor-nav-menu--dropdown {
    text-align: center;
  }
  .my-nav-tres .elementor-nav-menu--dropdown a.elementor-sub-item {
    justify-content: center;
    padding: 15px 16px !important;    /* ⬅️ 15px arriba/abajo en submenús */
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-15e344f *//* ===== HEADER .my-nav-dos ===== */

/* Estado inicial: transparente */
.my-nav-dos {
  background-color: transparent !important;
  transition: background-color .3s ease, padding .25s ease;
}

/* Cuando Elementor aplica sticky */
.my-nav-dos.elementor-sticky--effects {
  background-color: #929679 !important; /* color oliva */
}

/* Ajuste opcional: reducir altura interna (solo si usas contenedores) */
.my-nav-dos.elementor-sticky--effects > .e-con {
  min-height: 80px;
}
.my-nav-dos > .e-con {
  transition: min-height .25s ease;
}

/* ===== Tablet y móvil (≤1024px): fondo siempre visible ===== */
@media (max-width: 1024px) {
  .my-nav-dos {
    background-color: #929679 !important; /* color oliva */
  }
  .my-nav-dos.elementor-sticky--effects {
    background-color: #929679 !important;
  }
  .my-nav-dos .elementor-nav-menu--dropdown {
    background-color: #929679 !important;
  }
}

/* ===== Escritorio (≥1025px): transparente al inicio + color al hacer scroll ===== */
@media (min-width: 1025px) {
  .my-nav-dos {
    background-color: transparent !important;
    transition: background-color .3s ease, padding .25s ease;
  }
  .my-nav-dos.elementor-sticky--effects {
    background-color: #929679 !important;
  }
  .my-nav-dos.elementor-sticky--effects > .e-con {
    min-height: 80px;
  }
  .my-nav-dos > .e-con {
    transition: min-height .25s ease;
  }
}

/* ============================
   DESKTOP/LAPTOP: LOGO CENTRADO
   ============================ */
@media (min-width:1025px){
  /* La sección del header como referencia de posicionamiento */
  .my-header { position: relative; }

  /* --- Logo SIEMPRE centrado en el header --- */
  /* Usa la clase 'm' (tu widget) o el .elementor-2975 .elementor-element.elementor-element-15e344f del widget de logo */
  .my-header .elementor-widget-site-logo,
  .my-header .m {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;               /* anula márgenes manuales */
    width: auto !important;             /* evita que Elementor lo estire */
    z-index: 3;                         /* por encima del fondo/menú */
  }

  /* El contenedor interno del widget no debe forzar ancho */
  .my-header .elementor-widget-site-logo .elementor-widget-container,
  .my-header .m .elementor-widget-container {
    width: auto !important;
  }

  /* Imagen del logo: jamás se deforma */
  .my-header .elementor-widget-site-logo img,
  .my-header .m img {
    display: block;
    width: 100%;               /* sigue el ancho del contenedor del logo */
    height: auto !important;   /* NO deformar */
    max-height: 72px;          /* ajusta 60–80px a gusto */
    max-width: clamp(180px, 14vw, 280px);
  }

  /* “Corredor” para que el menú no tape el logo */
  .my-header .my-nav-tres {
    padding-left: clamp(180px, 16vw, 340px);
    padding-right: clamp(180px, 16vw, 340px);
  }

  /* Si el header se vuelve sticky, mantenemos el centrado */
  .my-header.elementor-sticky--effects .elementor-widget-site-logo,
  .my-header.elementor-sticky--effects .m {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
}

/* =======================================================
   TABLET / MÓVIL: logo y toggle bien colocados (≤1024px)
   ======================================================= */
@media (max-width:1024px){
  /* El header es el marco de referencia */
  .my-header{ position: relative; }

  /* Logo a la izquierda, centrado verticalmente, sin estirarse */
  .my-header .elementor-widget-site-logo,
  .my-header .m{
    position: absolute !important;
    left: 16px;                      /* ajusta 12–24px a tu gusto */
    top: 50%;
    transform: translateY(-50%);
    margin: 0 !important;
    width: auto !important;
    z-index: 3;
  }
  .my-header .elementor-widget-site-logo img,
  .my-header .m img{
    height: auto !important;
    max-height: 44px;                /* tamaño del logo en tablet/móvil */
    width: auto;
  }

  /* Botón hamburguesa a la derecha, centrado verticalmente */
  .my-header .elementor-menu-toggle{
    position: absolute !important;
    right: 16px;                     /* ajusta 12–24px a tu gusto */
    top: 50%;
    transform: translateY(-50%);
    margin: 0 !important;
    width: 40px;
    height: 40px;
    line-height: 40px;
    z-index: 4;
  }

  /* El panel del menú pegado al header, sin huecos arriba */
  .my-nav-tres .elementor-nav-menu--dropdown{
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0;
  }

  /* IMPORTANTE: en móvil no necesitamos el “corredor” del logo */
  .my-header .my-nav-tres{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* =======================================================
   TABLET: Aumentar tamaño del icono del menú a 65px
   ======================================================= */
@media (min-width:768px) and (max-width:1024px){
  .my-header .elementor-menu-toggle {
    width: 80px !important;
    height: 80px !important;
    line-height: 65px !important;
    font-size: 46px !important; /* opcional: aumenta el símbolo dentro */
  }
}

/* =======================================================
   MÓVIL: Ajustar tamaño del icono del menú (hamburguesa)
   ======================================================= */
@media (max-width:767px){
  .my-header .elementor-menu-toggle {
    width: 55px !important;          /* 🔹 tamaño del botón */
    height: 55px !important;
    line-height: 45px !important;
    font-size: 42px !important;      /* 🔹 tamaño del icono interno */
    right: 14px;                     /* 🔹 distancia lateral del borde derecho */
    top: 50%;
    transform: translateY(-50%);
  }
}

/* ================================
   DESKTOP (≥1024px) – Dropdown
   ================================ */
@media (min-width:1024px){

  /* Fondo del panel desplegable */
  .my-nav-tres .elementor-nav-menu--dropdown{
    background-color:#929679 !important;
    text-align:left !important;      /* alinear columnas a la izquierda */
  }

  /* Enlaces del dropdown: texto blanco y a la izquierda */
  .my-nav-tres .elementor-nav-menu--dropdown a,
  .my-nav-tres .elementor-nav-menu--dropdown a.elementor-sub-item{
    color:#FFFFFF !important;         /* texto blanco */
    display:flex !important;          /* evita rarezas de alineación */
    align-items:center !important;
    justify-content:flex-start !important; /* nada centrado */
    text-align:left !important;       /* por si algún padre centra */
    white-space:normal !important;    /* permite saltos naturales si hay títulos largos */
  }

  /* Limpia márgenes/paddings raros que desalinean una columna */
  .my-nav-tres .elementor-nav-menu--dropdown .menu-item,
  .my-nav-tres .elementor-nav-menu--dropdown .elementor-item{
    margin:0 !important;
  }

  /* Hover opcional, un poco más oscuro sobre #929679 */
  .my-nav-tres .elementor-nav-menu--dropdown a:hover{
    background-color:#858a6c !important;
  }
}/* End custom CSS */