/* Menu movil: gana a la clase global .elementor .rm-nav */
@media (max-width:900px){
.rm-hd-inner{position:relative!important}
.elementor .rm-nav{display:none!important}
.elementor .rm-btn-wa{display:none!important}
.rm-burger{display:flex!important;margin-left:auto!important}
.rm-hd-bar.rm-nav-open .rm-nav{display:flex!important;position:absolute!important;top:calc(100% + 6px)!important;left:0!important;right:0!important;width:auto!important;flex-direction:column!important;align-items:stretch!important;background:#FFFFFF!important;border:1px solid #E7E7E3!important;border-radius:16px!important;padding:12px!important;gap:2px!important;box-shadow:0 18px 40px rgba(15,46,43,.12)!important;z-index:300!important;max-height:75vh!important;overflow:auto!important}
.rm-hd-bar.rm-nav-open .rm-hasdrop{width:100%!important;flex-direction:column!important;align-items:stretch!important;height:auto!important}
.rm-hd-bar.rm-nav-open .rm-drop{position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;width:100%!important;min-width:0!important;box-shadow:none!important;border:0!important;padding:2px 0 6px 6px!important}
.rm-hd-bar.rm-nav-open .rm-navlink{padding:10px 8px!important}
}

/* Titulares del hero en movil: el tamano fluido queda demasiado grande bajo 900px */
@media (max-width:900px){
.elementor .s-hero-h1{font-size:40px!important;line-height:1.12!important}
}
@media (max-width:560px){
.elementor .s-hero-h1{font-size:32px!important;line-height:1.15!important}
}

/* Hero apilado: flex-basis se convierte en altura al cambiar a columna */
@media (max-width:900px){
.elementor .s-hero-photo{flex:0 0 auto!important}
.elementor .s-hero-copy{flex:0 0 auto!important;max-width:100%!important}
}
