/* Elementor Offcanvas V3 CSS - corrected stacking order so panel covers hamburger */
.eow3-widget-wrap{ position: relative; display: inline-block; }

.eow3-hamburger{
  width:var(--hamburger-width,40px);
  height:30px;
  display:inline-block;
  cursor:pointer;
  position:relative;
  z-index: 9998; /* lower than overlay/panel so panel covers it */
}
.eow3-hamburger span{
  display:block;
  height:var(--hamburger-bar-height,3px);
  margin:6px 0;
  background:#000;
  border-radius:2px;
  transition: all .3s ease;
}

/* Overlay and panel sit above the hamburger */
.eow3-overlay{
  position:fixed;
  top:0; bottom:0; left:0; right:0;
  display:flex;
  align-items:stretch;
  justify-content:flex-end;
  pointer-events:none;
  z-index: 9999; /* above hamburger */
}
.eow3-overlay[data-side="left"]{ justify-content:flex-start; }

.eow3-panel{
  width:var(--eow3-width,320px);
  max-width:100%;
  height:100%;
  transform:translateX(100%);
  transition:transform .35s ease;
  pointer-events:auto;
  position: relative;
  z-index: 10000; /* highest, so it covers hamburger */
}
.eow3-overlay[data-side="left"] .eow3-panel{ transform:translateX(-100%); }
.eow3-overlay.active{ background: rgba(0,0,0,0.4); pointer-events:auto; }
.eow3-overlay.active .eow3-panel{ transform:translateX(0); background: var(--eow3-bg,#fff); box-shadow:0 0 30px rgba(0,0,0,0.2); }
.eow3-panel-inner{ overflow:auto; height:100%; }

/* prevent body scroll when open */
body.eow3-noscroll{ overflow:hidden; }
