.elementor-2654 .elementor-element.elementor-element-219c74c{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-2654 .elementor-element.elementor-element-f0a49cf{--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-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-2654 .elementor-element.elementor-element-695138d > .elementor-widget-container{margin:0px 0px 0px 40px;}.elementor-2654 .elementor-element.elementor-element-695138d{text-align:left;}.elementor-2654 .elementor-element.elementor-element-695138d img{width:100%;max-width:69%;}.elementor-2654 .elementor-element.elementor-element-08487bb{--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-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-2654 .elementor-element.elementor-element-6a79e24 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-2654 .elementor-element.elementor-element-6a79e24.elementor-element{--align-self:center;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-menu-toggle{margin:0 auto;border-radius:25px;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--main .elementor-item:focus{color:#fff;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-71203e4 );}.elementor-2654 .elementor-element.elementor-element-6a79e24 .e--pointer-framed .elementor-item:before,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-71203e4 );}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-item:before{border-radius:20px;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .e--animation-shutter-in-horizontal .elementor-item:before{border-radius:20px 20px 0 0;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .e--animation-shutter-in-horizontal .elementor-item:after{border-radius:0 0 20px 20px;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .e--animation-shutter-in-vertical .elementor-item:before{border-radius:0 20px 20px 0;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .e--animation-shutter-in-vertical .elementor-item:after{border-radius:20px 0 0 20px;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown a, .elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-menu-toggle{color:var( --e-global-color-astglobalcolor5 );fill:var( --e-global-color-astglobalcolor5 );}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-text );border-radius:15px 15px 15px 15px;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown a:hover,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown a:focus,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown a.highlighted{background-color:var( --e-global-color-71203e4 );}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown .elementor-item, .elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Roboto", Sans-serif;font-weight:500;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:15px;border-top-right-radius:15px;}.elementor-2654 .elementor-element.elementor-element-6a79e24 .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:15px;border-bottom-left-radius:15px;}.elementor-2654 .elementor-element.elementor-element-ef9c522{--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-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-2654 .elementor-element.elementor-element-94d12d3 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );border-radius:15px 15px 15px 15px;}.elementor-2654 .elementor-element.elementor-element-94d12d3 .elementor-button:hover, .elementor-2654 .elementor-element.elementor-element-94d12d3 .elementor-button:focus{background-color:var( --e-global-color-71203e4 );color:#FFFFFF;}.elementor-2654 .elementor-element.elementor-element-94d12d3 > .elementor-widget-container{margin:30px 40px 0px 0px;}.elementor-2654 .elementor-element.elementor-element-94d12d3.elementor-element{--align-self:flex-end;}.elementor-2654 .elementor-element.elementor-element-94d12d3 .elementor-button:hover svg, .elementor-2654 .elementor-element.elementor-element-94d12d3 .elementor-button:focus 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-2654 .elementor-element.elementor-element-f0a49cf{--width:25%;}.elementor-2654 .elementor-element.elementor-element-08487bb{--width:50%;}.elementor-2654 .elementor-element.elementor-element-ef9c522{--width:25%;}}@media(max-width:767px){.elementor-2654 .elementor-element.elementor-element-219c74c{--width:500px;--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;--flex-wrap:nowrap;}.elementor-2654 .elementor-element.elementor-element-695138d > .elementor-widget-container{margin:0px 0px 0px 10px;}.elementor-2654 .elementor-element.elementor-element-695138d img{width:100%;max-width:100%;}.elementor-2654 .elementor-element.elementor-element-ef9c522{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:50px;}}/* Start custom CSS for container, class: .elementor-element-219c74c *//* ============================================ MENÚ MÓVIL WORDPRESS - ELEMENTOR Versión optimizada con logo y botón de contacto (SOLO CSS) ============================================ */ /* ===== OCULTAR "IR AL CONTENIDO" (SKIP LINK) ===== */ .skip-link, .skip-to-content, .skip-to-main-content, a[href*="#main"], a[href*="#content"], .screen-reader-text.skip-link, .elementor-screen-only { display: none !important; visibility: hidden !important; opacity: 0 !important; position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; } /* ===== OCULTAR MENÚ HAMBURGUESA EN ESCRITORIO ===== */ @media (min-width: 1025px) { .elementor-menu-toggle, .elementor-menu-toggle.elementor-active, .elementor-nav-menu--dropdown.elementor-nav-menu__container { display: none !important; visibility: hidden !important; opacity: 0 !important; } } /* ===== OVERLAY DEL MENÚ MÓVIL (SOLO MÓVIL) - FONDO CLARO #f5f5f5 ===== */ @media (max-width: 1024px) { .elementor-nav-menu--dropdown.elementor-nav-menu__container { position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100vh !important; z-index: 999999 !important; background: rgba(245, 245, 245, 0.7) !important; backdrop-filter: blur(6px) !important; -webkit-backdrop-filter: blur(6px) !important; -webkit-backdrop-filter: none !important; overflow-y: auto !important; overflow-x: hidden !important; -webkit-overflow-scrolling: touch !important; padding: 0 !important; margin: 0 !important; transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.4s ease !important; display: flex !important; flex-direction: column !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="true"] { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; } } /* ===== LOGO EN EL MENÚ MÓVIL (AGrandado) ===== */ @media (max-width: 1024px) { .elementor-nav-menu--dropdown.elementor-nav-menu__container::before { content: '' !important; position: absolute !important; top: 25px !important; left: 20px !important; width: 180px !important; height: 75px !important; background-image: url('https://annamorafotografia.com/wp-content/uploads/2025/10/annamora_colors_ok-removebg-preview-e1761034025513.png') !important; background-size: contain !important; background-repeat: no-repeat !important; background-position: left center !important; z-index: 1000002 !important; pointer-events: auto !important; cursor: pointer !important; filter: brightness(0.9) !important; transition: transform 0.3s ease !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]::before { display: block !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="true"]::before { display: none !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container::before:hover { transform: scale(1.05) !important; } } /* ===== BOTÓN DE CERRAR FUNCIONAL (usando el toggle de Elementor) ===== */ @media (max-width: 1024px) { /* Ocultar el toggle original en su posición normal cuando el menú está abierto */ .elementor-menu-toggle.elementor-active { position: fixed !important; top: 25px !important; right: 20px !important; z-index: 1000003 !important; width: 48px !important; height: 48px !important; background: rgba(0, 0, 0, 0.08) !important; border: 1px solid rgba(0, 0, 0, 0.12) !important; border-radius: 12px !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; } .elementor-menu-toggle.elementor-active:hover { background: rgba(0, 0, 0, 0.12) !important; border-color: rgba(0, 0, 0, 0.18) !important; transform: rotate(90deg) scale(1.1) !important; } .elementor-menu-toggle.elementor-active svg { width: 22px !important; height: 22px !important; fill: #333333 !important; } /* Ocultar el icono de abrir cuando está activo */ .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open { display: none !important; } /* Mostrar solo el icono de cerrar cuando está activo */ .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close { display: block !important; } /* Ocultar el ::after que creamos antes */ .elementor-nav-menu--dropdown.elementor-nav-menu__container::after { display: none !important; } } /* ===== CONTENEDOR DEL MENÚ ===== */ .elementor-nav-menu--dropdown .elementor-nav-menu { list-style: none !important; margin: 0 auto !important; padding: 100px 20px 140px !important; width: 100% !important; max-width: 600px !important; position: relative !important; z-index: 1 !important; flex: 1 1 auto !important; } /* ===== ITEMS DEL MENÚ PRINCIPAL ===== */ .elementor-nav-menu--dropdown .elementor-nav-menu > li { margin: 0 0 8px 0 !important; padding: 0 !important; border-radius: 12px !important; background: rgba(255, 255, 255, 0.8) !important; border: 1px solid rgba(0, 0, 0, 0.08) !important; overflow: hidden !important; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; position: relative !important; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04) !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li:hover { background: rgba(255, 255, 255, 1) !important; border-color: rgba(0, 0, 0, 0.12) !important; transform: translateX(4px) !important; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08) !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li:last-child { margin-bottom: 0 !important; } /* ===== ENLACES DEL MENÚ PRINCIPAL ===== */ .elementor-nav-menu--dropdown .elementor-nav-menu > li > a { color: #333333 !important; text-align: left !important; display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 20px 24px !important; font-size: 19px !important; font-weight: 500 !important; letter-spacing: 0.3px !important; text-decoration: none !important; transition: all 0.3s ease !important; width: 100% !important; box-sizing: border-box !important; line-height: 1.5 !important; position: relative !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li > a::before { content: '' !important; position: absolute !important; left: 0 !important; top: 0 !important; bottom: 0 !important; width: 3px !important; background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.15) 100%) !important; opacity: 0 !important; transition: opacity 0.3s ease !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li > a:hover::before, .elementor-nav-menu--dropdown .elementor-nav-menu > li > a:focus::before { opacity: 1 !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li > a:hover, .elementor-nav-menu--dropdown .elementor-nav-menu > li > a:focus { color: #000000 !important; opacity: 1 !important; padding-left: 28px !important; } /* ===== BOTÓN TOGGLE DEL SUBMENÚ (FLECHA VISIBLE) - FIX COMPLETO ===== */ .elementor-nav-menu--dropdown .sub-arrow, .elementor-nav-menu--dropdown .dropdown-menu-toggle { color: rgba(0, 0, 0, 0.6) !important; font-size: 14px !important; cursor: pointer !important; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; flex-shrink: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 40px !important; height: 40px !important; margin-left: 12px !important; padding: 0 !important; background: rgba(0, 0, 0, 0.04) !important; border: 1px solid rgba(0, 0, 0, 0.08) !important; border-radius: 8px !important; visibility: visible !important; opacity: 1 !important; } /* Asegurar que la flecha SVG sea visible - FORZAR VISIBILIDAD */ .elementor-nav-menu--dropdown .sub-arrow svg, .elementor-nav-menu--dropdown .dropdown-menu-toggle svg { width: 18px !important; height: 18px !important; fill: rgba(0, 0, 0, 0.7) !important; stroke: rgba(0, 0, 0, 0.7) !important; stroke-width: 1.5 !important; transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; display: block !important; opacity: 1 !important; visibility: visible !important; pointer-events: none !important; } /* Si el SVG no funciona, usar símbolo de texto como fallback */ .elementor-nav-menu--dropdown .sub-arrow:empty::after, .elementor-nav-menu--dropdown .dropdown-menu-toggle:empty::after { content: '▼' !important; font-size: 12px !important; color: rgba(0, 0, 0, 0.7) !important; display: block !important; } /* Asegurar que el contenedor de la flecha sea visible */ .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > .sub-arrow, .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > .dropdown-menu-toggle { display: flex !important; visibility: visible !important; opacity: 1 !important; } .elementor-nav-menu--dropdown .sub-arrow:hover, .elementor-nav-menu--dropdown .dropdown-menu-toggle:hover { background: rgba(0, 0, 0, 0.08) !important; border-color: rgba(0, 0, 0, 0.12) !important; color: #000000 !important; } .elementor-nav-menu--dropdown .sub-arrow:hover svg, .elementor-nav-menu--dropdown .dropdown-menu-toggle:hover svg { fill: #000000 !important; stroke: #000000 !important; } /* Ocultar el segundo toggle si existe - FIX PARA SESSIONS */ .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > .dropdown-menu-toggle ~ .sub-arrow, .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > .sub-arrow ~ .dropdown-menu-toggle { display: none !important; } /* Si hay dos elementos span, ocultar el segundo */ .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a span.dropdown-menu-toggle ~ span.sub-arrow, .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a span.sub-arrow ~ span.dropdown-menu-toggle { display: none !important; } /* Mostrar solo el primer span que tenga clase sub-arrow o dropdown-menu-toggle */ .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > span.sub-arrow:not(:first-of-type), .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > span.dropdown-menu-toggle:not(:first-of-type) { display: none !important; } /* Asegurar que al menos uno sea visible - PRIORIDAD MÁXIMA */ .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > .sub-arrow:first-of-type, .elementor-nav-menu--dropdown .elementor-nav-menu > li.menu-item-has-children > a > .dropdown-menu-toggle:first-of-type { display: flex !important; visibility: visible !important; opacity: 1 !important; } /* Rotar flecha cuando el submenú está abierto */ .elementor-nav-menu--dropdown .menu-item-has-children > a[aria-expanded="true"] .sub-arrow svg, .elementor-nav-menu--dropdown .menu-item-has-children > a[aria-expanded="true"] .dropdown-menu-toggle svg, .elementor-nav-menu--dropdown .menu-item-has-children.open > a .sub-arrow svg, .elementor-nav-menu--dropdown .menu-item-has-children.open > a .dropdown-menu-toggle svg { transform: rotate(180deg) !important; } /* ===== SUBMENÚ (nivel 1) ===== */ .elementor-nav-menu--dropdown .sub-menu { list-style: none !important; margin: 0 !important; padding: 0 !important; background-color: rgba(0, 0, 0, 0.03) !important; max-height: 0 !important; overflow: hidden !important; transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), padding 0.5s ease !important; border-top: 1px solid rgba(0, 0, 0, 0.08) !important; margin-top: 0 !important; border-radius: 0 0 12px 12px !important; } .elementor-nav-menu--dropdown .sub-menu[aria-expanded="true"], .elementor-nav-menu--dropdown .sub-menu[aria-hidden="false"], .elementor-nav-menu--dropdown .menu-item-has-children.open > .sub-menu, .elementor-nav-menu--dropdown .menu-item-has-children > a[aria-expanded="true"] + .sub-menu { max-height: 2000px !important; padding: 8px 0 12px !important; margin-top: 0 !important; } /* ===== ITEMS DEL SUBMENÚ ===== */ .elementor-nav-menu--dropdown .sub-menu li { margin: 0 12px 4px !important; padding: 0 !important; border-radius: 8px !important; background: rgba(255, 255, 255, 0.6) !important; border: 1px solid rgba(0, 0, 0, 0.06) !important; transition: all 0.2s ease !important; } .elementor-nav-menu--dropdown .sub-menu li:hover { background: rgba(255, 255, 255, 0.9) !important; border-color: rgba(0, 0, 0, 0.1) !important; } .elementor-nav-menu--dropdown .sub-menu li:last-child { margin-bottom: 0 !important; } /* ===== ENLACES DEL SUBMENÚ ===== */ .elementor-nav-menu--dropdown .sub-menu a { color: rgba(0, 0, 0, 0.7) !important; text-align: left !important; display: block !important; padding: 14px 20px 14px 40px !important; font-size: 17px !important; font-weight: 400 !important; letter-spacing: 0.2px !important; text-decoration: none !important; transition: all 0.3s ease !important; width: 100% !important; box-sizing: border-box !important; line-height: 1.5 !important; position: relative !important; } .elementor-nav-menu--dropdown .sub-menu a::before { content: '•' !important; position: absolute !important; left: 20px !important; color: rgba(0, 0, 0, 0.3) !important; font-size: 20px !important; transition: all 0.3s ease !important; } .elementor-nav-menu--dropdown .sub-menu a:hover, .elementor-nav-menu--dropdown .sub-menu a:focus { color: #000000 !important; background-color: transparent !important; padding-left: 45px !important; } .elementor-nav-menu--dropdown .sub-menu a:hover::before { color: rgba(0, 0, 0, 0.6) !important; transform: scale(1.3) !important; } /* ===== BOTÓN HAMBURGUESA (toggle) - SOLO MÓVIL ===== */ @media (max-width: 1024px) { .elementor-menu-toggle:not(.elementor-active) { position: relative !important; z-index: 1000001 !important; cursor: pointer !important; background: transparent !important; border: none !important; padding: 10px !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: transform 0.3s ease !important; } .elementor-menu-toggle:not(.elementor-active):hover { transform: scale(1.1) !important; } .elementor-menu-toggle svg { width: 28px !important; height: 28px !important; fill: currentColor !important; } .elementor-menu-toggle:not(.elementor-active) .elementor-menu-toggle__icon--open { display: block !important; } .elementor-menu-toggle:not(.elementor-active) .elementor-menu-toggle__icon--close { display: none !important; } } /* ===== BOTÓN CONTACTA'M EN EL MENÚ MÓVIL - PERFECTAMENTE CENTRADO ===== */ @media (max-width: 1024px) { /* Reposicionar el botón original cuando el menú está abierto */ body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 { position: fixed !important; bottom: 30px !important; left: 50% !important; right: auto !important; transform: translateX(-50%) !important; z-index: 1000004 !important; width: calc(100% - 40px) !important; max-width: 600px !important; margin: 0 !important; padding: 0 !important; text-align: center !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 .elementor-button-wrapper { width: 100% !important; display: flex !important; justify-content: center !important; align-items: center !important; margin: 0 auto !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 .elementor-button { width: 100% !important; max-width: 100% !important; padding: 18px 32px !important; font-size: 16px !important; font-weight: 600 !important; letter-spacing: 1px !important; text-transform: uppercase !important; background: #00bfa5 !important; border: 2px solid #00bfa5 !important; border-radius: 12px !important; color: #ffffff !important; box-shadow: 0 4px 20px rgba(0, 191, 165, 0.25) !important; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; display: inline-block !important; text-align: center !important; margin: 0 auto !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 .elementor-button-content-wrapper { display: flex !important; justify-content: center !important; align-items: center !important; width: 100% !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 .elementor-button:hover { background: #028090 !important; border-color: #028090 !important; transform: translateY(-2px) !important; box-shadow: 0 6px 30px rgba(0, 191, 165, 0.35) !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 .elementor-button:active { transform: translateY(0) !important; } /* Ocultar el botón cuando el menú está cerrado en móvil */ body:not(:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"])) .elementor-element-94d12d3 { position: relative !important; bottom: auto !important; left: auto !important; right: auto !important; transform: none !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container { padding-bottom: 100px !important; } } /* ===== ESTADOS ACTIVOS ===== */ .elementor-nav-menu--dropdown .elementor-nav-menu > li.current-menu-item > a, .elementor-nav-menu--dropdown .elementor-nav-menu > li.current_page_item > a { color: #000000 !important; font-weight: 600 !important; background: rgba(0, 0, 0, 0.05) !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li.current-menu-item > a::before { opacity: 1 !important; } .elementor-nav-menu--dropdown .sub-menu li.current-menu-item > a { color: #000000 !important; background: rgba(0, 0, 0, 0.04) !important; } /* ===== PREVENIR OVERFLOW EN HEADER ===== */ .elementor-location-header, .elementor-header, .elementor-location-header .elementor-container, .elementor-location-header .elementor-row { overflow: visible !important; z-index: auto !important; } /* ===== BLOQUEAR SCROLL DEL BODY CUANDO EL MENÚ ESTÁ ABIERTO ===== */ @media (max-width: 1024px) { body.elementor-menu-open, html.elementor-menu-open { overflow: hidden !important; position: fixed !important; width: 100% !important; height: 100% !important; } } /* ===== Z-INDEX DE OTROS ELEMENTOS ===== */ .elementor-section, .elementor-column, .elementor-widget { z-index: auto !important; } body > *:not(.elementor-nav-menu--dropdown):not(.elementor-menu-toggle):not(.elementor-location-header) { position: relative; z-index: 0; } /* ===== MEJORAS PARA DISPOSITIVOS TÁCTILES ===== */ @media (max-width: 1024px) { .elementor-nav-menu--dropdown.elementor-nav-menu__container { padding-top: 0 !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li > a { padding: 22px 24px !important; font-size: 20px !important; min-height: 64px !important; } .elementor-nav-menu--dropdown .sub-menu a { padding: 16px 20px 16px 40px !important; font-size: 18px !important; min-height: 56px !important; } .elementor-nav-menu--dropdown .sub-arrow, .elementor-nav-menu--dropdown .dropdown-menu-toggle { width: 44px !important; height: 44px !important; } } /* ===== ANIMACIONES ===== */ @keyframes menuFadeIn { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } } @keyframes menuItemSlideIn { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } } @media (max-width: 1024px) { .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] { animation: menuFadeIn 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] .elementor-nav-menu > li { animation: menuItemSlideIn 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] .elementor-nav-menu > li:nth-child(1) { animation-delay: 0.1s !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] .elementor-nav-menu > li:nth-child(2) { animation-delay: 0.15s !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] .elementor-nav-menu > li:nth-child(3) { animation-delay: 0.2s !important; } .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] .elementor-nav-menu > li:nth-child(4) { animation-delay: 0.25s !important; } } /* ===== SCROLLBAR PERSONALIZADA ===== */ .elementor-nav-menu--dropdown.elementor-nav-menu__container::-webkit-scrollbar { width: 6px; } .elementor-nav-menu--dropdown.elementor-nav-menu__container::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.05); } .elementor-nav-menu--dropdown.elementor-nav-menu__container::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.2); border-radius: 3px; } .elementor-nav-menu--dropdown.elementor-nav-menu__container::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.3); } /* ===== FIXES ESPECÍFICOS PARA ELEMENTOR ===== */ .elementor-nav-menu--dropdown .elementor-item, .elementor-nav-menu--dropdown .elementor-sub-item { position: relative !important; } .elementor-nav-menu--dropdown .elementor-nav-menu i, .elementor-nav-menu--dropdown .elementor-nav-menu .fa { color: inherit !important; margin-right: 8px !important; } /* ===== MEJORAS DE ACCESIBILIDAD ===== */ .elementor-nav-menu--dropdown .elementor-nav-menu a:focus { outline: 2px solid rgba(0, 0, 0, 0.3) !important; outline-offset: 3px !important; border-radius: 4px !important; } /* ===== RESPONSIVE ADICIONAL ===== */ @media (max-width: 768px) { .elementor-nav-menu--dropdown.elementor-nav-menu__container::before { top: 20px !important; left: 15px !important; width: 150px !important; height: 65px !important; } .elementor-menu-toggle.elementor-active { top: 20px !important; right: 15px !important; width: 44px !important; height: 44px !important; } .elementor-menu-toggle.elementor-active svg { width: 20px !important; height: 20px !important; } .elementor-nav-menu--dropdown .elementor-nav-menu { padding: 90px 15px 120px !important; } .elementor-nav-menu--dropdown .elementor-nav-menu > li > a { font-size: 18px !important; padding: 20px 20px !important; } .elementor-nav-menu--dropdown .sub-menu a { font-size: 16px !important; padding: 14px 15px 14px 35px !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 { width: calc(100% - 30px) !important; bottom: 20px !important; } body:has(.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"]) .elementor-element-94d12d3 .elementor-button { padding: 16px 28px !important; font-size: 15px !important; } } /* ===== FIX PARA SMARTMENUS ===== */ .elementor-nav-menu--dropdown .sm-nowrap { position: static !important; display: block !important; width: 100% !important; min-width: 100% !important; max-width: 100% !important; left: auto !important; top: auto !important; margin: 0 !important; box-shadow: none !important; }/* End custom CSS */