/* Final shared header layer. Scope every rule to the header, never page content. */
@media (min-width:1025px){
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element.elementor-element-904590c,.ewe-element.ewe-element-904590c){
    --container-widget-height:initial;
    --justify-content:center;
    --align-items:center;
    --padding-top:0px;
    --padding-bottom:0px;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:center!important;
    height:auto!important;
    min-height:0!important;
    margin-top:25px!important;
    margin-bottom:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    transform:none!important;
  }
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element.elementor-element-6af9023,.ewe-element.ewe-element-6af9023),
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element.elementor-element-6af9023,.ewe-element.ewe-element-6af9023)>:is(.elementor-widget-container,.ewe-widget-container),
  :is(header.elementor-271,header.ewe-271) :is(.elementor-nav-menu--main,.ewe-nav-menu--main){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:auto!important;
    min-height:0!important;
    margin-block:0!important;
    padding-block:0!important;
    overflow:visible!important;
  }
  :is(header.elementor-271,header.ewe-271) :is(.elementor-nav-menu--main,.ewe-nav-menu--main)>ul{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-block:0!important;
  }
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element.elementor-element-9ffd978.elementor-hidden-desktop,.ewe-element.ewe-element-9ffd978.ewe-hidden-desktop),
  :is(header.elementor-271,header.ewe-271) :is(.elementor-menu-toggle,.ewe-menu-toggle){display:none!important}
  /* Legacy button margins reduced its flex height and shifted Contact above the row. */
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element.elementor-element-23aa125,.ewe-element.ewe-element-23aa125)>:is(.elementor-widget-container,.ewe-widget-container){
    margin-block:0!important;
    height:auto!important;
    min-height:0!important;
  }
  .ewe-site-header .ewe-nav-shell{align-items:center}
  .ewe-site-header .ewe-desktop-nav>.ewe-nav-list{align-items:center;justify-content:center}
}

/* Explicit opaque surfaces for every level, including nested service flyouts. */
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) :is(.menu-item-has-children,.ewe-nav-item){position:relative!important}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) :is(.sub-menu,.ewe-dropdown){
  position:absolute!important;
  top:100%!important;
  left:0!important;
  min-width:280px!important;
  width:max-content!important;
  max-width:min(360px,calc(100vw - 32px))!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:8px!important;
  background:#fff!important;
  background-color:#fff!important;
  border:1px solid #e5e9ef!important;
  border-radius:6px!important;
  box-shadow:0 14px 36px rgba(12,19,38,.18)!important;
  z-index:2147482000!important;
}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) :is(.sub-menu,.ewe-dropdown)>li{
  width:100%!important;
  margin:0!important;
  background:#fff!important;
}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) :is(.sub-menu,.ewe-dropdown) a{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  padding:13px 16px!important;
  line-height:1.35!important;
  white-space:normal!important;
  background:#fff!important;
}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.sub-menu,.ewe-dropdown) a:is(:hover,:focus-visible){background:#f3f5f8!important}
:is(header.elementor-271,header.ewe-271) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) .sub-menu .sub-menu{
  top:0!important;
  left:100%!important;
  min-width:300px!important;
}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) :is(.menu-item-has-children,.ewe-nav-item).ewe-header-expanded>:is(.sub-menu,.ewe-dropdown){
  display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;
}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) :is(.elementor-element.elementor-element-6af9023 .elementor-nav-menu--main,.ewe-element.ewe-element-6af9023 .ewe-nav-menu--main,.ewe-desktop-nav) :is(.menu-item-has-children,.ewe-nav-item).ewe-header-dismissed>:is(.sub-menu,.ewe-dropdown){
  display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) [data-ewe-subtoggle]{cursor:pointer;flex-shrink:0}
:is(header.elementor-271,header.ewe-271,.ewe-site-header) [data-ewe-subtoggle]:focus-visible{outline:2px solid #f66f24;outline-offset:5px}

@media (max-width:1024px){
  /* Keep the existing native mobile opener. Suppress only the redundant nav burger. */
  :is(header.elementor-271,header.ewe-271) :is(.elementor-menu-toggle,.ewe-menu-toggle){display:none!important}
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element-9ffd978,.ewe-element-9ffd978){
    display:flex!important;align-items:center!important;justify-content:center!important;
    visibility:visible!important;opacity:1!important;pointer-events:auto!important;
  }
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element-9ffd978,.ewe-element-9ffd978) a{
    display:flex!important;align-items:center!important;justify-content:center!important;
    min-width:48px!important;min-height:48px!important;touch-action:manipulation;
  }
  :is(header.elementor-271,header.ewe-271) :is(.elementor-element-9ffd978,.ewe-element-9ffd978) img{width:44px!important;height:auto!important}
  :is(header.elementor-271,header.ewe-271) :is(.elementor-nav-menu--main,.ewe-nav-menu--main){display:none!important}
  #menuhopin{visibility:hidden!important;pointer-events:none!important}
  #ewe-interior-native-drawer .ewe-int-panel{height:100dvh;min-height:100dvh;box-sizing:border-box;overscroll-behavior:contain}
  .ewe-drawer-panel{box-sizing:border-box;overscroll-behavior:contain}
  :is(.ewe-int-close,.ewe-drawer-close,[data-ewe-menu-open]){touch-action:manipulation}
}
@media (prefers-reduced-motion:reduce){
  :is(#ewe-interior-native-drawer,.ewe-drawer) *{transition:none!important}
}
