/* Enerfoam - Scoped Elementor Pro Header Layers (v0.1.2).
 * This preserves Elementor's native open/close and Woo AJAX behavior.
 * --ef-header-bottom is supplied by a ResizeObserver in header-layers.js.
 */
@media (max-width: 1024px) {
  html.ef-header-layer-ready {
    --ef-panel-top: var(--ef-header-bottom, 68px);
    --ef-panel-height: calc(100dvh - var(--ef-panel-top));
  }

  /* Keep the sticky sitepart above the drawer overlay. */
  html.ef-header-layer-ready .elementor-location-header {
    z-index: 15010 !important;
  }
  html.ef-header-layer-ready .elementor-element.elementor-element-71597690 {
    z-index: 15011 !important;
  }

  /* Account widget has a unique Elementor-provided ID. Do not target all drawers. */
  html.ef-header-layer-ready #off-canvas-ee04e6b6 {
    --e-off-canvas-height: var(--ef-panel-height) !important;
    position: fixed !important;
    inset-block-start: var(--ef-panel-top) !important;
    inset-block-end: 0 !important;
    top: var(--ef-panel-top) !important;
    bottom: 0 !important;
    height: var(--ef-panel-height) !important;
    max-height: var(--ef-panel-height) !important;
    box-sizing: border-box !important;
    z-index: 15000 !important;
  }
  html.ef-header-layer-ready #off-canvas-ee04e6b6 .e-off-canvas__main {
    top: 0 !important;
    bottom: 0 !important;
    --e-off-canvas-height: var(--ef-panel-height) !important;
    height: 100% !important;
    max-height: 100% !important;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  html.ef-header-layer-ready #off-canvas-ee04e6b6 .e-off-canvas__overlay {
    top: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    max-height: var(--ef-panel-height) !important;
  }

  /* Native Woo Menu Cart: preserve its own open/close, animations and checkout DOM. */
  html.ef-header-layer-ready .elementor-element-d014237a .elementor-menu-cart__container {
    top: var(--ef-panel-top) !important;
    bottom: 0 !important;
    height: var(--ef-panel-height) !important;
    max-height: var(--ef-panel-height) !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
    z-index: 15000 !important;
  }
  html.ef-header-layer-ready .elementor-element-d014237a .elementor-menu-cart__main {
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  /* The trigger must win its local stacking context over the account drawer. */
  html.ef-account-panel-open .ef-pro-account-trigger {
    position: relative;
    z-index: 15020 !important;
  }

  /* The account icon itself becomes the close affordance, in the same spot. */
  html.ef-account-panel-open .ef-pro-account-trigger .elementor-button-icon i,
  html.ef-account-panel-open .ef-pro-account-trigger .elementor-button-icon svg {
    visibility: hidden !important;
  }
  html.ef-account-panel-open .ef-pro-account-trigger .elementor-button-icon::after {
    content: "\00d7";
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font: 300 29px/1 Arial, sans-serif;
    color: #e8eff8;
    pointer-events: none;
  }
  html.ef-header-layer-ready .ef-pro-account-trigger .elementor-button {
    min-width: 44px;
    min-height: 44px;
    background: transparent !important;
  }
  html.ef-header-layer-ready .ef-pro-account-trigger .elementor-button-icon {
    display: inline-flex;
    position: relative;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    min-height: 24px;
  }

  /* Reduce redundant account navigation spacing only in this exact widget. */
  html.ef-header-layer-ready .elementor-element-3acdd145 .elementor-nav-menu a {
    padding-block: 11px !important;
  }
}

/* Mobile Woo side-cart fills the available width under the sticky header. */
@media (max-width: 767px) {
 html.ef-header-layer-ready .elementor-element-d014237a .elementor-menu-cart__container {
   inset-inline: 0 !important;
   left: 0 !important;
   right: 0 !important;
   width: 100vw !important;
   max-width: 100vw !important;
 }
 html.ef-header-layer-ready .elementor-element-d014237a .elementor-menu-cart__main {
   inset-inline: 0 !important;
   left: 0 !important;
   right: 0 !important;
   width: 100vw !important;
   max-width: 100vw !important;
   border-radius: 0 !important;
 }
}

/* v0.1.3: Scoped counts and logged-in/out account view. */
.elementor-element-d014237a .elementor-button-icon-qty[data-counter="0"],
.elementor-element-d014237a .elementor-button-icon-qty[data-counter="\06F0"],
.elementor-element-d014237a .elementor-button-icon-qty[data-counter="\0660"],
.elementor-element-d014237a.ef-cart-zero-counter .elementor-button-icon-qty {
  display: none !important;
}
html.ef-account-guest #off-canvas-ee04e6b6 .ef-account-links { display: none !important; }
html.ef-account-member #off-canvas-ee04e6b6 .ef-account-complete-login { display: none !important; }
#off-canvas-ee04e6b6 .ef-account-links { direction: rtl; text-align: right; }
.elementor-element-d014237a .ef-empty-cart-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-block-start: 22px;
  padding: 9px 18px;
  border-radius: 8px;
  background: #080e53;
  color: #fff;
  font-size: 16px;
  text-decoration: none;
}
.elementor-element-d014237a .ef-empty-cart-action:focus-visible {
  outline: 3px solid #42afd5;
  outline-offset: 3px;
}
