.elementor-2766 .elementor-element.elementor-element-d992703{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-d7632b8{--display:flex;--min-height:70vh;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-9e226a3 *//* Importación de Google Material Symbols */
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@24,400,1,0');

/* Contenedor centrador */
.menu-container {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 auto 40px !important;
  padding-top: 0 !important;
  background: transparent !important;
}

/* Barra principal */
.menu-container .menu {
  --bgColorMenu: #5cc6d0;
  --duration: 0.5s;
  display: flex !important;
  flex-direction: row !important;
  width: 100% !important;
  max-width: 32em !important;
  font-size: 1.1em !important;
  padding: 0 1.5em !important;
  padding-top: 0 !important;
  position: relative !important;
  align-items: center !important;
  justify-content: space-around !important;
  background-color: var(--bgColorMenu) !important;
  border-radius: 0px 0px 20px 20px !important;
  box-sizing: border-box !important;
  border: none !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
  margin: 0 auto !important;
}

/* RESET TOTAL DEL BOTÓN */
.menu-container .menu button.menu__item,
.menu-container .menu .menu__item {
  all: unset !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0.8em 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-grow: 1 !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  position: relative !important;
  z-index: 10 !important;
  border-radius: 50% !important;
  line-height: 1 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  will-change: transform !important;
  transition: transform var(--timeOut, var(--duration)) !important;
}

.menu-container .menu button.menu__item:hover,
.menu-container .menu button.menu__item:focus,
.menu-container .menu button.menu__item:active,
.menu-container .menu button.menu__item.active {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Círculo de color */
.menu-container .menu button.menu__item::before {
  content: "" !important;
  z-index: -1 !important;
  width: 3.6em !important;
  height: 3.6em !important;
  border-radius: 50% !important;
  position: absolute !important;
  transform: scale(0) !important;
  background-color: transparent !important;
  transition: background-color var(--duration), transform var(--duration) !important;
  pointer-events: none !important;
}

/* Desplazamiento activo (Desktop) */
.menu-container .menu button.menu__item.active {
  transform: translate3d(0, 0.85em, 0) !important;
}

.menu-container .menu button.menu__item.active::before {
  transform: scale(1) !important;
  background-color: var(--bgColorItem) !important;
}

/* Íconos */
.menu-container .menu .menu__item .material-symbols-rounded {
  font-size: 26px !important;
  color: #ffffff !important;
  user-select: none !important;
  line-height: 1 !important;
  display: block !important;
  transition: transform 0.3s ease !important;
}

.menu-container .menu .menu__item.active .material-symbols-rounded {
  animation: menuIconPop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

@keyframes menuIconPop {
  0% { transform: scale(0.6); }
  50% { transform: scale(1.15); }
  100% { transform: scale(1); }
}

/* Curva hacia abajo (Desktop) */
.menu-container .menu .menu__border {
  left: 0 !important;
  top: calc(100% - 1px) !important;
  width: 9em !important;
  height: 2.1em !important;
  position: absolute !important;
  clip-path: url(#menu-clip) !important;
  -webkit-clip-path: url(#menu-clip) !important;
  will-change: transform !important;
  background-color: var(--bgColorMenu) !important;
  transform: translate3d(var(--border-left, 0), 0, 0) scaleY(-1) !important;
  transition: transform var(--timeOut, var(--duration)) !important;
  pointer-events: none !important;
  z-index: 5 !important;
}

.svg-container {
  width: 0 !important;
  height: 0 !important;
  position: absolute !important;
  overflow: hidden !important;
}

/* ======================================================
   AJUSTE MÓVIL: ÍCONOS AGRUPADOS Y CURVA 100% REDONDA
   ====================================================== */
@media screen and (max-width: 48em) {
  /* 1. Juntar los íconos al centro con buen margen a los lados */
  .menu-container .menu {
    width: 90% !important;
    max-width: 23em !important;      /* Agrupa los 5 botones en el centro */
    font-size: 0.88em !important;
    padding: 0 1.6em !important;     /* Colchón lateral clave: la curva nunca toca el borde */
    border-radius: 0 0 20px 20px !important;
    margin: 0 auto !important;
  }

  /* 2. Curva con proporción original para que sea suave y redondeada (sin picos) */
  .menu-container .menu .menu__border {
    width: 6.6em !important;
    height: 1.55em !important;
  }

  /* 3. Círculo activo que encaja exacto en la curva */
  .menu-container .menu button.menu__item::before {
    width: 3.15em !important;
    height: 3.15em !important;
  }

  /* 4. Caída centrada */
  .menu-container .menu button.menu__item.active {
    transform: translate3d(0, 0.72em, 0) !important;
  }

  /* 5. Íconos */
  .menu-container .menu .menu__item .material-symbols-rounded {
    font-size: 22px !important;
  }
}/* End custom CSS */