.elementor-73 .elementor-element.elementor-element-e4b5898{--display:flex;--min-height:78px;--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;--justify-content:space-between;--align-items:center;}.elementor-73 .elementor-element.elementor-element-e4b5898:not(.elementor-motion-effects-element-type-background), .elementor-73 .elementor-element.elementor-element-e4b5898 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0A0AF2;}.elementor-73 .elementor-element.elementor-element-3d8bafd img{width:42px;}.elementor-73 .elementor-element.elementor-element-d05ebb6{--display:flex;--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;--justify-content:flex-end;--align-items:center;}.elementor-73 .elementor-element.elementor-element-d05ebb6.e-con{--align-self:center;}.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;}.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );padding-top:6px;padding-bottom:6px;}.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-73 .elementor-element.elementor-element-5099b38{--e-nav-menu-horizontal-menu-item-margin:calc( 26px / 2 );z-index:100;}.elementor-73 .elementor-element.elementor-element-5099b38 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:26px;}.elementor-73 .elementor-element.elementor-element-482a498{margin:0px 26px calc(var(--kit-widget-spacing, 0px) + 0px) 26px;}.elementor-73 .elementor-element.elementor-element-98645f5{--e-off-canvas-height:100vh;--e-off-canvas-content-overflow:auto;--e-off-canvas-overlay-opacity:1;}.elementor-73 .elementor-element.elementor-element-98645f5 .e-off-canvas__content{background-color:var( --e-global-color-primary );}.elementor-73 .elementor-element.elementor-element-98645f5 .e-off-canvas__overlay{background-color:rgba(0,0,0,.8);}.elementor-73 .elementor-element.elementor-element-d25e48c{--display:flex;}.elementor-73 .elementor-element.elementor-element-d25e48c:not(.elementor-motion-effects-element-type-background), .elementor-73 .elementor-element.elementor-element-d25e48c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;}.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );padding-top:6px;padding-bottom:6px;}.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-73 .elementor-element.elementor-element-8cd5215{--e-nav-menu-horizontal-menu-item-margin:calc( 26px / 2 );z-index:100;}.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:26px;}.elementor-73 .elementor-element.elementor-element-7686ea5{margin:0px 26px calc(var(--kit-widget-spacing, 0px) + 0px) 26px;}.elementor-73 .elementor-element.elementor-element-36a0b57 .elementor-button{background-color:var( --e-global-color-primary );}.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-73 .elementor-element.elementor-element-d05ebb6{--width:100%;}}@media(max-width:1024px){.elementor-73 .elementor-element.elementor-element-3e3a168{text-align:start;width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;}.elementor-73 .elementor-element.elementor-element-3e3a168 img{width:60%;}.elementor-73 .elementor-element.elementor-element-d05ebb6{--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-73 .elementor-element.elementor-element-98645f5{--e-off-canvas-justify-content:flex-end;--e-off-canvas-align-items:flex-start;--e-off-canvas-width:300px;}.elementor-73 .elementor-element.elementor-element-d25e48c{--min-height:280px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main .elementor-item{padding-top:6px;padding-bottom:6px;}.elementor-73 .elementor-element.elementor-element-8cd5215{--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-73 .elementor-element.elementor-element-8cd5215 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-73 .elementor-element.elementor-element-7686ea5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:767px){.elementor-73 .elementor-element.elementor-element-e4b5898{--justify-content:space-between;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-73 .elementor-element.elementor-element-3e3a168 img{width:100%;}.elementor-73 .elementor-element.elementor-element-d05ebb6{--width:19%;--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;--justify-content:center;--align-items:flex-end;}.elementor-73 .elementor-element.elementor-element-d05ebb6.e-con{--align-self:flex-end;}.elementor-73 .elementor-element.elementor-element-5099b38.elementor-element{--align-self:flex-end;}.elementor-73 .elementor-element.elementor-element-8cd5215.elementor-element{--align-self:center;}}/* Start custom CSS for theme-site-logo, class: .elementor-element-3d8bafd */.logo img {
  transition: transform 0.3s ease;
  cursor: pointer;
}

.logo:hover img {
  transform: translateY(-1px);
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-5099b38 */.menu .elementor-nav-menu a {
  position: relative;
  text-decoration: none;
  padding-bottom: 6px;
}

.menu .elementor-nav-menu a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background: #FFFFFF;
  transition: width 0.3s ease;
}

.menu .elementor-nav-menu a:hover::after,
.menu .elementor-nav-menu .current-menu-item a::after {
  width: 100%;
}


/* Quitar pointer/subrayado de Elementor */
.menu .elementor-nav-menu a.elementor-item:after,
.menu .elementor-nav-menu a.elementor-item:before {
  display: none !important;
}

/* Subrayado animado nuestro — solo items principales */
.menu .elementor-nav-menu > li > a.elementor-item {
  position: relative;
  padding-bottom: 6px;
}
.menu .elementor-nav-menu > li > a.elementor-item::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0; bottom: 0;
  width: 0; height: 1px;
  background: #FFFFFF;
  transition: width 0.3s ease;
}
.menu .elementor-nav-menu > li > a.elementor-item:hover::after {
  width: 100%;
}

/* Panel dropdown */
.menu .elementor-nav-menu .sub-menu {
  display: block !important;
  position: absolute !important;
  top: calc(100% + 14px) !important;
  left: 0 !important;
  min-width: 300px !important;
  background: rgba(10,10,10,0.95) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 8px !important;
  padding: 14px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-6px) !important;
  transition: opacity 0.25s, transform 0.25s, visibility 0.25s !important;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5) !important;
  z-index: 9999 !important;
  pointer-events: none !important;
}

/* Mostrar al hover */
.menu .elementor-nav-menu li.menu-item-has-children:hover .sub-menu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: all !important;
}

/* Items del dropdown */
.menu .elementor-nav-menu .sub-menu li a {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 12px 14px !important;
  border-radius: 6px !important;
  color: #FFFFFF !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: none !important;
  text-decoration: none !important;
  transition: background 0.2s, padding-left 0.25s !important;
  background: transparent !important;
}

.menu .elementor-nav-menu .sub-menu li a:hover {
  background: rgba(255,255,255,0.04) !important;
  padding-left: 18px !important;
}

/* Numeración con counter */
.menu .elementor-nav-menu .sub-menu {
  counter-reset: dropdown-counter;
}
.menu .elementor-nav-menu .sub-menu li {
  counter-increment: dropdown-counter;
}
.menu .elementor-nav-menu .sub-menu li a::before {
  content: "0" counter(dropdown-counter) !important;
  display: inline-block !important;
  font-family: 'Poppins', sans-serif !important;
  font-style: italic !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  min-width: 18px !important;
  flex-shrink: 0 !important;
}

.e-n-menu-content,
.elementor-nav-menu--main .elementor-nav-menu .sub-menu,
.elementor-nav-menu--dropdown {
  z-index: 99999 !important;
}

.e-header,
header.elementor-section,
header .elementor-container {
  z-index: 99999 !important;
  position: relative !important;
}

/* Puente invisible entre item y dropdown */
.menu .elementor-nav-menu li.menu-item-has-children::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 20px;
  background: transparent;
}


/* Icono hamburguesa */
.elementor-menu-toggle {
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 4px !important;
  padding: 6px !important;
  background: transparent !important;
  transition: border-color 0.3s, background 0.3s !important;
}

.elementor-menu-toggle:hover {
  border-color: #641DF5 !important;
  background: rgba(100,29,245,0.08) !important;
}

.elementor-menu-toggle i {
  font-size: 20px !important;
  color: #FFFFFF !important;
}

/* Panel del menú desplegado */
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  background: rgba(10,10,10,0.98) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 0 0 8px 8px !important;
  padding: 8px 0 !important;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5) !important;
}

/* Items del menú desplegado */
.elementor-nav-menu--dropdown a.elementor-item {
  color: #FFFFFF !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 14px 24px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  transition: background 0.2s, padding-left 0.25s !important;
}

.elementor-nav-menu--dropdown a.elementor-item:hover {
  background: rgba(255,255,255,0.04) !important;
  padding-left: 30px !important;
  color: #FFFFFF !important;
}

/* Último item sin borde */
.elementor-nav-menu--dropdown li:last-child a.elementor-item {
  border-bottom: none !important;
}

/* Submenú de Servicios en móvil */
.elementor-nav-menu--dropdown .sub-menu {
  background: rgba(20,9,30,0.98) !important;
  border-left: 2px solid #641DF5 !important;
  margin-left: 24px !important;
  border-radius: 0 !important;
  padding: 4px 0 !important;
}

.elementor-nav-menu--dropdown .sub-menu a {
  color: rgba(255,255,255,0.75) !important;
  font-size: 12px !important;
  padding: 10px 20px !important;
  letter-spacing: 0.08em !important;
  border-bottom: none !important;
}

.elementor-nav-menu--dropdown .sub-menu a:hover {
  color: #FFFFFF !important;
  background: rgba(100,29,245,0.08) !important;
  padding-left: 26px !important;
}

/* Dropdown inline en móvil — no flotante */
@media (max-width: 1024px) {
  /* Desactivar dropdown personalizado de escritorio */
  ul.sub-menu.elementor-nav-menu--dropdown,
  ul#sm-17780684158003162-2 {
    position: static !important;
    width: 100% !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    float: none !important;
    background: transparent !important;
    border: none !important;
    border-left: 2px solid #641DF5 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-radius: 0 !important;
    padding: 4px 0 !important;
    margin-left: 24px !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Quitar flechita */
  ul.sub-menu.elementor-nav-menu--dropdown::before,
  ul#sm-17780684158003162-2::before {
    display: none !important;
  }
}

/* Ocultar botones Contacto y Academy en móvil — 
   los pondremos dentro del menú *//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-482a498 */.contacto .lf-btn-contacto {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;
}

.contacto .lf-bracket {
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 600;
  font-size: 14px;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  transition: transform 0.3s ease;
}

.contacto .lf-label {
  color: #FFFFFF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.contacto .lf-arrow {
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  transition: transform 0.3s ease;
}

.contacto .lf-btn-contacto::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1.5px;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%);
  transition: width 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.contacto .lf-btn-contacto:hover .lf-bracket:first-of-type {
  transform: translateX(-3px);
}

.contacto .lf-btn-contacto:hover .lf-bracket:last-of-type {
  transform: translateX(3px);
}

.contacto .lf-btn-contacto:hover .lf-label {
  transform: translateY(-1px);
}

.contacto .lf-btn-contacto:hover .lf-arrow {
  transform: translate(3px, -3px);
}

.contacto .lf-btn-contacto:hover::after {
  width: 100%;
}

.menu .lf-btn-contacto:hover .lf-arrow {
  transform: translate(3px, -3px);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fbc7796 */.menuu .lf-btn-academy {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;
}

.menuu .lf-bracket-ac {
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 600;
  font-size: 14px;
  color: #1DE9FF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.menuu .lf-label-ac {
  color: #FFFFFF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.menuu .lf-arrow-ac {
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  color: #1DE9FF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.menuu .lf-btn-academy::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1.5px;
  background: #1DE9FF;
  box-shadow: 0 0 8px rgba(29, 233, 255, 0.6);
  transition: width 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.menuu .lf-btn-academy:hover .lf-bracket-ac:first-of-type {
  transform: translateX(-3px);
}

.menuu .lf-btn-academy:hover .lf-bracket-ac:last-of-type {
  transform: translateX(3px);
}

.menuu .lf-btn-academy:hover .lf-label-ac {
  transform: translateY(-1px);
}

.menuu .lf-btn-academy:hover .lf-arrow-ac {
  transform: translate(3px, -3px);
}

.menuu .lf-btn-academy:hover::after {
  width: 100%;
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-8cd5215 */.menu .elementor-nav-menu a {
  position: relative;
  text-decoration: none;
  padding-bottom: 6px;
}

.menu .elementor-nav-menu a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background: #FFFFFF;
  transition: width 0.3s ease;
}

.menu .elementor-nav-menu a:hover::after,
.menu .elementor-nav-menu .current-menu-item a::after {
  width: 100%;
}


/* Quitar pointer/subrayado de Elementor */
.menu .elementor-nav-menu a.elementor-item:after,
.menu .elementor-nav-menu a.elementor-item:before {
  display: none !important;
}

/* Subrayado animado nuestro — solo items principales */
.menu .elementor-nav-menu > li > a.elementor-item {
  position: relative;
  padding-bottom: 6px;
}
.menu .elementor-nav-menu > li > a.elementor-item::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  left: 0; bottom: 0;
  width: 0; height: 1px;
  background: #FFFFFF;
  transition: width 0.3s ease;
}
.menu .elementor-nav-menu > li > a.elementor-item:hover::after {
  width: 100%;
}

/* Panel dropdown */
.menu .elementor-nav-menu .sub-menu {
  display: block !important;
  position: absolute !important;
  top: calc(100% + 14px) !important;
  left: 0 !important;
  min-width: 300px !important;
  background: rgba(10,10,10,0.95) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 8px !important;
  padding: 14px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-6px) !important;
  transition: opacity 0.25s, transform 0.25s, visibility 0.25s !important;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5) !important;
  z-index: 9999 !important;
  pointer-events: none !important;
}

/* Mostrar al hover */
.menu .elementor-nav-menu li.menu-item-has-children:hover .sub-menu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: all !important;
}

/* Items del dropdown */
.menu .elementor-nav-menu .sub-menu li a {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 12px 14px !important;
  border-radius: 6px !important;
  color: #FFFFFF !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: none !important;
  text-decoration: none !important;
  transition: background 0.2s, padding-left 0.25s !important;
  background: transparent !important;
}

.menu .elementor-nav-menu .sub-menu li a:hover {
  background: rgba(255,255,255,0.04) !important;
  padding-left: 18px !important;
}

/* Numeración con counter */
.menu .elementor-nav-menu .sub-menu {
  counter-reset: dropdown-counter;
}
.menu .elementor-nav-menu .sub-menu li {
  counter-increment: dropdown-counter;
}
.menu .elementor-nav-menu .sub-menu li a::before {
  content: "0" counter(dropdown-counter) !important;
  display: inline-block !important;
  font-family: 'Poppins', sans-serif !important;
  font-style: italic !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  min-width: 18px !important;
  flex-shrink: 0 !important;
}

.e-n-menu-content,
.elementor-nav-menu--main .elementor-nav-menu .sub-menu,
.elementor-nav-menu--dropdown {
  z-index: 99999 !important;
}

.e-header,
header.elementor-section,
header .elementor-container {
  z-index: 99999 !important;
  position: relative !important;
}

/* Puente invisible entre item y dropdown */
.menu .elementor-nav-menu li.menu-item-has-children::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 20px;
  background: transparent;
}


/* Icono hamburguesa */
.elementor-menu-toggle {
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 4px !important;
  padding: 6px !important;
  background: transparent !important;
  transition: border-color 0.3s, background 0.3s !important;
}

.elementor-menu-toggle:hover {
  border-color: #641DF5 !important;
  background: rgba(100,29,245,0.08) !important;
}

.elementor-menu-toggle i {
  font-size: 20px !important;
  color: #FFFFFF !important;
}

/* Panel del menú desplegado */
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  background: rgba(10,10,10,0.98) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 0 0 8px 8px !important;
  padding: 8px 0 !important;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5) !important;
}

/* Items del menú desplegado */
.elementor-nav-menu--dropdown a.elementor-item {
  color: #FFFFFF !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 14px 24px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  transition: background 0.2s, padding-left 0.25s !important;
}

.elementor-nav-menu--dropdown a.elementor-item:hover {
  background: rgba(255,255,255,0.04) !important;
  padding-left: 30px !important;
  color: #FFFFFF !important;
}

/* Último item sin borde */
.elementor-nav-menu--dropdown li:last-child a.elementor-item {
  border-bottom: none !important;
}

/* Submenú de Servicios en móvil */
.elementor-nav-menu--dropdown .sub-menu {
  background: rgba(20,9,30,0.98) !important;
  border-left: 2px solid #641DF5 !important;
  margin-left: 24px !important;
  border-radius: 0 !important;
  padding: 4px 0 !important;
}

.elementor-nav-menu--dropdown .sub-menu a {
  color: rgba(255,255,255,0.75) !important;
  font-size: 12px !important;
  padding: 10px 20px !important;
  letter-spacing: 0.08em !important;
  border-bottom: none !important;
}

.elementor-nav-menu--dropdown .sub-menu a:hover {
  color: #FFFFFF !important;
  background: rgba(100,29,245,0.08) !important;
  padding-left: 26px !important;
}

/* Dropdown inline en móvil — no flotante */

/* Ocultar botones Contacto y Academy en móvil — 
   los pondremos dentro del menú *//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7686ea5 */.contacto .lf-btn-contacto {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;
}

.contacto .lf-bracket {
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 600;
  font-size: 14px;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  transition: transform 0.3s ease;
}

.contacto .lf-label {
  color: #FFFFFF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.contacto .lf-arrow {
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  transition: transform 0.3s ease;
}

.contacto .lf-btn-contacto::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1.5px;
  background: linear-gradient(135deg, #641DF5 0%, #FF2079 100%);
  transition: width 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.contacto .lf-btn-contacto:hover .lf-bracket:first-of-type {
  transform: translateX(-3px);
}

.contacto .lf-btn-contacto:hover .lf-bracket:last-of-type {
  transform: translateX(3px);
}

.contacto .lf-btn-contacto:hover .lf-label {
  transform: translateY(-1px);
}

.contacto .lf-btn-contacto:hover .lf-arrow {
  transform: translate(3px, -3px);
}

.contacto .lf-btn-contacto:hover::after {
  width: 100%;
}

.menu .lf-btn-contacto:hover .lf-arrow {
  transform: translate(3px, -3px);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8ac5e3d */.menuu .lf-btn-academy {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;
}

.menuu .lf-bracket-ac {
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-weight: 600;
  font-size: 14px;
  color: #1DE9FF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.menuu .lf-label-ac {
  color: #FFFFFF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.menuu .lf-arrow-ac {
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  color: #1DE9FF;
  display: inline-block;
  transition: transform 0.3s ease;
}

.menuu .lf-btn-academy::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1.5px;
  background: #1DE9FF;
  box-shadow: 0 0 8px rgba(29, 233, 255, 0.6);
  transition: width 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.menuu .lf-btn-academy:hover .lf-bracket-ac:first-of-type {
  transform: translateX(-3px);
}

.menuu .lf-btn-academy:hover .lf-bracket-ac:last-of-type {
  transform: translateX(3px);
}

.menuu .lf-btn-academy:hover .lf-label-ac {
  transform: translateY(-1px);
}

.menuu .lf-btn-academy:hover .lf-arrow-ac {
  transform: translate(3px, -3px);
}

.menuu .lf-btn-academy:hover::after {
  width: 100%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e4b5898 */.elementor-sticky--active {
  background: rgba(10, 10, 10, 0.92) !important;
  backdrop-filter: blur(50px) !important;
  -webkit-backdrop-filter: blur(50px) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.06) !important;
  transition: background 0.3s ease, backdrop-filter 0.3s ease !important;
}/* End custom CSS */