/* Compatibility fixes for new ACF-powered header/footer.
   Original site classes are retained; this file avoids editing archived CSS. */
.header_bg_bt::after {
  background: var(--stroyenergy-hero-tint, rgba(26, 36, 59, .7));
  opacity: .7;
  pointer-events: none;
}
.header_bg_bt.header_page_bg::after { display: none; }
.header_bg_bt.no-hero { height: auto; min-height: 70px; }
.header_bg_bt.no-hero::after { display: none; }
.header_bg_bt > .navbar,
.header_bg_bt > .container { position: relative; z-index: 2; }
.header_position_1 .stroyenergy-header-logo { display: inline-block; max-width: 100%; }
.stroyenergy-header-logo img { max-width: 100%; height: auto; }
.stroyenergy-header-email { display: block; font-size: 16px; }
.header_nav .sub-menu { list-style: none; }
.header_nav .dropdown-menu { margin: 0; }
.header_nav .dropdown-menu .dropdown-menu { top: 0; left: 100%; }
.header_nav .menu-item-has-children:hover > .dropdown-menu,
.header_nav .menu-item-has-children:focus-within > .dropdown-menu,
.header_nav .menu-item-has-children.is-expanded > .dropdown-menu { display: block; }
.header_nav .menu-item-has-children { position: relative; }
.header_nav .nav-submenu-toggle {
  display: none; font: inherit; background: none; border: 0;
  padding: 8px 12px; cursor: pointer; color: inherit;
}
.ns-footer__logo img { max-width: 150px; height: auto; }
.ns-footer__navigation { margin: 12px 0; }
.ns-footer__navigation ul { display: flex; flex-wrap: wrap; gap: 16px; list-style: none; padding: 0; margin: 0; }
.ns-footer__navigation a { color: inherit; }
.site-header .header_bg .row { min-height: 80px; }
@media (max-width: 991px) {
  .header_bg_bt:not(.header_page_bg) { height: auto; min-height: 440px; }
  .header_nav .nav-submenu-toggle { display: inline-block; vertical-align: middle; }
  .header_nav .menu-item-has-children > .dropdown-menu { display: none; position: static; float: none; width: 100%; box-shadow: none; }
  .header_nav .menu-item-has-children.is-expanded > .dropdown-menu { display: block; }
  .header_bg .row > div { vertical-align: middle; }
  .ns-footer__navigation ul { display: block; }
}
@media (max-width: 767px) {
  .header_bg .row { padding: 12px 0; }
  .header_bg .row > div { display: block; width: 100%; text-align: center; margin-bottom: 8px; }
  .header_bg_bt:not(.header_page_bg) { min-height: 320px; }
  #header_slider { height: auto; padding: 60px 40px 80px 0; }
}

/* The custom property is present only when the page has a mobile image. */
@media (max-width: 767px) {
  .header_bg_bt:not(.header_page_bg):not(.no-hero) {
    background-image: var(--stroyenergy-mobile-hero) !important;
  }
}
