.elementor-46 .elementor-element.elementor-element-3edfb91{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:10px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-46 .elementor-element.elementor-element-0f48688{--display:flex;--min-height:80px;--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;}.elementor-46 .elementor-element.elementor-element-3090013{--display:flex;--justify-content:center;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-46 .elementor-element.elementor-element-9d6855f{text-align:center;}.elementor-46 .elementor-element.elementor-element-9d6855f img{width:40%;max-width:100%;}.elementor-46 .elementor-element.elementor-element-5985567{--display:flex;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-46 .elementor-element.elementor-element-2774772 .elementor-nav-menu .elementor-item{font-family:"Outfit", Sans-serif;font-size:14px;font-weight:600;}.elementor-46 .elementor-element.elementor-element-2774772 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-e8e5d4b{--display:flex;--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;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-46 .elementor-element.elementor-element-7268966 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Outfit", Sans-serif;font-weight:500;text-transform:uppercase;fill:#FFFFFF;color:#FFFFFF;box-shadow:0px 5px 10px 0px rgba(231, 225, 223, 0.2);border-radius:12px 12px 12px 12px;padding:16px 42px 16px 42px;}.elementor-46 .elementor-element.elementor-element-d2e7cbf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-46 .elementor-element.elementor-element-6e4b7a2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-46 .elementor-element.elementor-element-abf5b20.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-46 .elementor-element.elementor-element-abf5b20 img{width:50%;}}@media(max-width:767px){.elementor-46 .elementor-element.elementor-element-0f48688{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-46 .elementor-element.elementor-element-2774772 .elementor-nav-menu--main .elementor-item{padding-left:12px;padding-right:12px;}.elementor-46 .elementor-element.elementor-element-e8e5d4b{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-46 .elementor-element.elementor-element-d2e7cbf{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-46 .elementor-element.elementor-element-6e4b7a2{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:020px;--padding-right:0px;}.elementor-46 .elementor-element.elementor-element-abf5b20{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;text-align:start;}.elementor-46 .elementor-element.elementor-element-abf5b20 img{width:60%;}.elementor-46 .elementor-element.elementor-element-8a334c6{width:var( --container-widget-width, 20% );max-width:20%;--container-widget-width:20%;--container-widget-flex-grow:0;}}@media(min-width:768px){.elementor-46 .elementor-element.elementor-element-3090013{--width:20%;}.elementor-46 .elementor-element.elementor-element-5985567{--width:60%;}.elementor-46 .elementor-element.elementor-element-e8e5d4b{--width:20%;}}/* Start custom CSS for container, class: .elementor-element-3edfb91 */.elementor-46 .elementor-element.elementor-element-3edfb91 {
    /* Posicionamiento flotante sobre el Hero */
    position: absolute;
    top: 0;              /* Espacio desde el borde superior */
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;             /* Ancho de cápsula flotante */
    max-width: auto;
    z-index: 999;           /* Asegura que quede sobre el Hero */

    /* Efecto Cristal (Glassmorphism) */
    background: rgba(0, 0, 0, 0.15); /* negro translúcido */
    backdrop-filter: blur(12px);            /* Difuminado de fondo */
    -webkit-backdrop-filter: blur(12px);    /* Soporte para Safari */
    
    /* Bordes y profundidad */
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

/* 1. Estado inicial del Header (Transparente) */
.elementor-46 .elementor-element.elementor-element-3edfb91 {
    background-color: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    box-shadow: none !important;
    transition: background-color 0.4s ease-in-out, box-shadow 0.4s ease-in-out !important;
}

/* 2. Estado del fondo del Header al hacer scroll */
.elementor-46 .elementor-element.elementor-element-3edfb91.elementor-sticky--effects {
    background-color: #fdfaf5 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
}

/* 3. Cambio de color de los enlaces del menú al hacer scroll */
/* Esto asume que usas el widget Nav Menu estándar de Elementor */
.elementor-46 .elementor-element.elementor-element-3edfb91.elementor-sticky--effects .elementor-nav-menu--main .elementor-item {
    color: #1a1a1a !important; /* Negro oscuro */
    transition: color 0.4s ease-in-out;
}

/* 4. Cambio de color al pasar el cursor al hacer scroll (Rojo marca) */
.elementor-46 .elementor-element.elementor-element-3edfb91.elementor-sticky--effects .elementor-nav-menu--main .elementor-item:hover {
    color: #be1622 !important; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-924628d *//* Estilos del menú móvil a pantalla completa */
.mobile-nav__wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  /* Cambiamos a translateY para que venga desde abajo */
  transform: translateY(100%);
  transition: transform 500ms ease-in-out, visibility 500ms ease-in-out;
  visibility: hidden;
  display: flex;
  justify-content: center;
}

.mobile-nav__wrapper.expanded {
  transform: translateY(0%);
  visibility: visible;
}

/* Ocultamos el overlay oscuro porque el menú ahora será a pantalla completa */
.mobile-nav__overlay {
  display: none;
}

/* Contenedor principal del menú */
.mobile-nav__content {
  width: 100%;
  height: 100%;
  background-color: #fdfaf5; /* Color crema basado en tu referencia */
  z-index: 10;
  position: relative;
  overflow-y: auto;
  padding: 60px 20px; /* Más espacio en la parte superior */
  display: flex;
  flex-direction: column;
  align-items: center; /* Centra todo horizontalmente */
}

/* Botón de cerrar (X) */
.mobile-nav__close {
  position: absolute;
  top: 25px;
  right: 30px;
  font-size: 36px;
  color: #1a1a1a; /* Color oscuro para contrastar con el fondo claro */
  cursor: pointer;
  font-weight: 300;
  line-height: 1;
}

/* Contenedor del Logo */
.logo-box {
  margin-bottom: 50px;
  display: flex;
  justify-content: center;
}

.logo-box img {
  max-width: 180px;
  height: auto;
}

/* Lista de enlaces */
.mobile-nav__container {
  width: 100%;
}

.mobile-nav__content .main-menu__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: center; /* Centra el texto de los enlaces */
}

/* Eliminamos los bordes superior e inferior para un look más limpio */
.mobile-nav__content .main-menu__list li {
  margin-bottom: 20px;
}

.mobile-nav__content .main-menu__list a {
  display: inline-block;
  color: #2c3e50; /* Gris oscuro elegante */
  font-size: 20px; /* Tamaño de letra más grande */
  font-family: "Georgia", serif; /* Tipografía serif estilo clásico */
  font-weight: 400;
  text-decoration: none;
  transition: color 300ms ease;
}

.mobile-nav__content .main-menu__list a:hover {
  color: #c91c36; /* Color rojo/granate al pasar el cursor */
}

/* Estilos del menú móvil a pantalla completa */
.mobile-nav__wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  transform: translateY(100%);
  transition: transform 500ms ease-in-out, visibility 500ms ease-in-out;
  visibility: hidden;
  display: flex;
  justify-content: center;
}

.mobile-nav__wrapper.expanded {
  transform: translateY(0%);
  visibility: visible;
}

.mobile-nav__overlay {
  display: none;
}

.mobile-nav__content {
  width: 100%;
  height: 100%;
  background-color: #fdfaf5;
  z-index: 10;
  position: relative;
  overflow-y: auto;
  padding: 60px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.mobile-nav__close {
  position: absolute;
  top: 25px;
  right: 30px;
  font-size: 36px;
  color: #1a1a1a;
  cursor: pointer;
  font-weight: 300;
  line-height: 1;
}

.logo-box {
  margin-bottom: 40px; /* Reducido un poco para hacer espacio a los botones */
  display: flex;
  justify-content: center;
}

.logo-box img {
  max-width: 180px;
  height: auto;
}

/* --- NUEVO: Contenedor y Botones --- */
.mobile-nav__buttons {
  display: flex;
  flex-direction: column;
  gap: 12px; 
  width: 100%;
  max-width: 260px; /* Controla el ancho de los botones tipo píldora */
  margin-bottom: 25px; 
}

.mobile-btn {
  display: block;
  width: 100%;
  padding: 12px 20px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 50px; /* Bordes completamente redondeados[cite: 3] */
  transition: all 300ms ease;
  font-family: inherit;
}

/* Botón superior (Sólido)[cite: 3] */
.mobile-btn--solid {
  background-color: #be1622; /* Rojo similar a la referencia */
  color: #ffffff;
  border: 2px solid #be1622;
}

/* Botón inferior (Contorno)[cite: 3] */
.mobile-btn--outline {
  background-color: transparent;
  color: #be1622;
  border: 2px solid #be1622;
}

/* --- NUEVO: Línea separadora --- */
.mobile-nav__divider {
  width: 120px; /* Línea corta centrada[cite: 3] */
  height: 1px;
  background-color: #d1c8b4; /* Color arena/dorado sutil[cite: 3] */
  margin-bottom: 25px; 
}

/* Lista de enlaces */
.mobile-nav__container {
  width: 100%;
}

.mobile-nav__content .main-menu__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: center;
}

.mobile-nav__content .main-menu__list li {
  margin-bottom: 20px;
}

.mobile-nav__content .main-menu__list a {
  display: inline-block;
  color: #2c3e50;
  font-size: 19px;
  font-family: "Georgia", serif; /* Fuente elegante[cite: 3] */
  font-weight: 400;
  text-decoration: none;
  transition: color 300ms ease;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d2e7cbf */.elementor-46 .elementor-element.elementor-element-d2e7cbf {
    /* Posicionamiento flotante sobre el Hero */
    position: absolute;
    top: 0;              /* Espacio desde el borde superior */
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;             /* Ancho de cápsula flotante */
    max-width: auto;
    z-index: 999;           /* Asegura que quede sobre el Hero */

    /* Efecto Cristal (Glassmorphism) */
    background: rgba(0, 0, 0, 0.15); /* negro translúcido */
    backdrop-filter: blur(12px);            /* Difuminado de fondo */
    -webkit-backdrop-filter: blur(12px);    /* Soporte para Safari */
    
    /* Bordes y profundidad */
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

/* 1. Estado inicial del Header (Transparente) */
.elementor-46 .elementor-element.elementor-element-d2e7cbf {
    background-color: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    box-shadow: none !important;
    transition: background-color 0.4s ease-in-out, box-shadow 0.4s ease-in-out !important;
}

/* 2. Estado del fondo del Header al hacer scroll */
.elementor-46 .elementor-element.elementor-element-d2e7cbf.elementor-sticky--effects {
    background-color: #fdfaf5 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
}

/* 3. Cambio de color de los enlaces del menú al hacer scroll */
/* Esto asume que usas el widget Nav Menu estándar de Elementor */
.elementor-46 .elementor-element.elementor-element-d2e7cbf.elementor-sticky--effects .elementor-nav-menu--main .elementor-item {
    color: #1a1a1a !important; /* Negro oscuro */
    transition: color 0.4s ease-in-out;
}

/* 4. Cambio de color al pasar el cursor al hacer scroll (Rojo marca) */
.elementor-46 .elementor-element.elementor-element-d2e7cbf.elementor-sticky--effects .elementor-nav-menu--main .elementor-item:hover {
    color: #be1622 !important; 
}/* End custom CSS */