.elementor-129 .elementor-element.elementor-element-e2629b8 .elementor-menu-toggle{margin-left:auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-129 .elementor-element.elementor-element-e2629b8{width:var( --container-widget-width, 20% );max-width:20%;--container-widget-width:20%;--container-widget-flex-grow:0;}}/* Start custom CSS for nav-menu, class: .elementor-element-e2629b8 */.elementor-nav-menu--main .elementor-nav-menu { gap: 38px; }
.elementor-nav-menu--main .elementor-item {
  font-family: "Plus Jakarta Sans", sans-serif; font-size: 16px; font-weight: 400; line-height: 1.3;
  color: #FFFFFF; fill: #FFFFFF; padding: 8px 0 !important; margin: 0; transition: color 0.25s;
}
.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item:focus,
.elementor-nav-menu--main .elementor-item.elementor-item-active { color: #ECBA79 !important; }
.elementor-nav-menu--main .elementor-item::after,
.elementor-nav-menu--main .elementor-item::before { background-color: #ECBA79 !important; height: 1px !important; }
.elementor-nav-menu--main .elementor-item::after { bottom: 0 !important; }
.elementor-nav-menu--main .sub-menu, .elementor-nav-menu--main .elementor-nav-menu--dropdown {
  background-color: #121C1A; border: 1px solid #446962; min-width: 220px;
}
.elementor-nav-menu--main .sub-menu a { color: #F9E8D2; padding: 12px 20px !important; font-size: 15px; }
.elementor-nav-menu--main .sub-menu a:hover { color: #ECBA79; background-color: rgba(176, 125, 59, 0.12); }
.elementor-menu-toggle {
  background-color: transparent !important; color: #F9E8D2 !important; fill: #F9E8D2 !important;
  font-size: 28px; padding: 6px; border: 0; border-radius: 0;
}
.elementor-menu-toggle:hover, .elementor-menu-toggle.elementor-active { color: #ECBA79 !important; fill: #ECBA79 !important; }
.elementor-menu-toggle svg { width: 28px; height: 28px; }
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  background-color: #121C1A !important; border-top: 1px solid #446962; margin-top: 18px !important;
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.45);
}
.elementor-nav-menu--dropdown .elementor-item, .elementor-nav-menu--dropdown .elementor-sub-item {
  font-family: "Plus Jakarta Sans", sans-serif; font-size: 18px; color: #F9E8D2 !important; background-color: transparent !important;
  padding: 18px 24px !important; border-bottom: 1px solid rgba(68, 105, 98, 0.5); justify-content: center;
}
.elementor-nav-menu--dropdown .elementor-item:hover, .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
.elementor-nav-menu--dropdown .elementor-sub-item:hover {
  color: #ECBA79 !important; background-color: rgba(176, 125, 59, 0.12) !important;
}/* End custom CSS */
/* Start custom CSS *//* Entrada suave con desenfoque al aparecer en pantalla.
   .ch-aparecer -> en cualquier imagen o bloque
   .ch-aparecer-fila -> en el contenedor de una fila con scroll horizontal (carrusel); sus hijos con .ch-aparecer entran en cascada
   .ch-aparecer-texto -> titulos, parrafos y botones: entrada mas corta y sutil
   .ch-intro / .ch-intro-logo -> capa de bienvenida con el logo grande al cargar la pagina
   .ch-intro-entrada -> contenido del hero que entra cuando se va la capa de bienvenida */
@keyframes ch-aparecer {
  from { opacity: 0; filter: blur(14px); transform: translateY(48px) scale(0.97); }
  to { opacity: 1; filter: blur(0px); transform: translateY(0) scale(1); }
}
@keyframes ch-aparecer-polaroid {
  from { opacity: 0; filter: blur(14px) sepia(0.18) contrast(0.96) brightness(0.98); transform: translateY(48px) scale(0.97); }
  to { opacity: 1; filter: blur(0px) sepia(0.18) contrast(0.96) brightness(0.98); transform: translateY(0) scale(1); }
}
@keyframes ch-aparecer-texto {
  from { opacity: 0; filter: blur(6px); transform: translateY(26px); }
  to { opacity: 1; filter: blur(0px); transform: translateY(0); }
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .ch-aparecer {
      animation: ch-aparecer linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 35%;
    }
    .ch-aparecer.ch-polaroid { animation-name: ch-aparecer-polaroid; }
    .ch-aparecer-fila { view-timeline-name: --ch-fila; }
    .ch-aparecer-fila .ch-aparecer { animation-timeline: --ch-fila; animation-range: entry 0% cover 30%; }
    .ch-aparecer-fila .ch-aparecer:nth-child(2) { animation-range: entry 6% cover 34%; }
    .ch-aparecer-fila .ch-aparecer:nth-child(3) { animation-range: entry 12% cover 38%; }
    .ch-aparecer-fila .ch-aparecer:nth-child(4) { animation-range: entry 18% cover 42%; }
    .ch-aparecer-fila .ch-aparecer:nth-child(5) { animation-range: entry 24% cover 46%; }
    .ch-aparecer-fila .ch-aparecer:nth-child(n+6) { animation-range: entry 30% cover 50%; }
    .ch-aparecer-texto {
      animation: ch-aparecer-texto ease-out both;
      animation-timeline: view();
      animation-range: entry 10% cover 22%;
    }
  }
}

/* Intro del hero: logo grande que aparece y se desvanece */
@keyframes ch-intro-capa {
  0%, 72% { opacity: 1; visibility: visible; }
  100% { opacity: 0; visibility: hidden; }
}
@keyframes ch-intro-logo {
  0% { opacity: 0; transform: scale(0.86); filter: blur(12px); }
  30% { opacity: 1; transform: scale(1); filter: blur(0px); }
  62% { opacity: 1; transform: scale(1.03); filter: blur(0px); }
  100% { opacity: 0; transform: scale(1.14); filter: blur(8px); }
}
@keyframes ch-intro-entrada {
  from { opacity: 0; transform: translateY(32px); filter: blur(8px); }
  to { opacity: 1; transform: translateY(0); filter: blur(0px); }
}
.ch-intro { animation: ch-intro-capa 3s ease-in-out forwards; }
.ch-intro-logo { animation: ch-intro-logo 2.7s cubic-bezier(0.22, 1, 0.36, 1) forwards; }
.ch-intro-entrada { animation: ch-intro-entrada 1.3s cubic-bezier(0.22, 1, 0.36, 1) 2.4s both; }
@media (prefers-reduced-motion: reduce) {
  .ch-intro { display: none; }
  .ch-intro-entrada { animation: none; }
}

/* Línea vertical que se dibuja hacia abajo al hacer scroll. Se activa con la clase .ch-linea-crece */
@keyframes ch-linea-crece {
  from { transform: scaleY(0); }
  to   { transform: scaleY(1); }
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .ch-linea-crece {
      transform-origin: top center;
      animation: ch-linea-crece linear both;
      animation-timeline: view();
      animation-range: cover 10% cover 55%;
    }
  }
}

#{
    filter: brightness(0.6);
}/* End custom CSS */