/* =========================================================
   No-JavaScript replacements (pure HTML + CSS version)
   ========================================================= */
/* Logo: the theme hid it until JS measured the header */
.q_logo a { visibility: visible !important; height: 50px; }
@media only screen and (max-width: 1000px) { .q_logo a { height: 80px; } }
/* Desktop dropdown menus: open on hover / keyboard focus */
nav.main_menu li:hover > .second,
nav.main_menu li:focus-within > .second { visibility: visible !important; opacity: 1 !important; overflow: visible !important; height: auto !important; }
nav.main_menu .second .inner { height: auto !important; }
/* Mobile menu: CSS-only open/close (checkbox) */
.nojs-menu-toggle { position: absolute; opacity: 0; pointer-events: none; }
.mobile_menu_button label.nojs-menu-label { display: block; cursor: pointer; }
body:has(#nojs-menu:checked) nav.mobile_menu { display: block !important; height: auto !important; max-height: none !important; overflow: visible !important; }
body:has(#nojs-menu:checked) nav.mobile_menu > ul { display: block !important; }
nav.mobile_menu ul.sub_menu { display: block !important; }
nav.mobile_menu .mobile_arrow { display: none !important; }
/* Blocks that waited for JS to fade/slide in */
.wpb_animate_when_almost_visible { opacity: 1 !important; animation: none !important; }
[class*="element_from_"] > div, .element_transform > div { opacity: 1 !important; transform: none !important; }
.elementor-invisible { visibility: visible !important; }
/* Static replacement for sliders */
.nojs-hero { position: relative; background-size: cover; background-position: center; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; padding: 40px 16px; text-align: center; min-height: 420px; }
.nojs-hero img { max-width: min(90%, var(--w, 100%)); height: auto; }
.nojs-hero .nojs-hero-text { color: #fff; font-size: clamp(16px, 2.2vw, 26px); line-height: 1.5; text-shadow: 0 1px 4px rgba(0,0,0,.6); }
@media (max-width: 1000px) { .nojs-hero { min-height: 260px; } }
