/* Divi Mobile Override v1.0.5 - absolute centered logo, fa-bars icon, stronger clickability */
:root{
  --dmo-bg:#000;
  --dmo-fg:#fff;
  --dmo-accent:#fff;
  --dmo-border:rgba(255,255,255,.12);
  --dmo-height:80px;   /* 25% taller */
  --dmo-z:2147483647;  /* top of stack */
}

.dmo--hidden{ display:none; }

.dmo{
  position:fixed; top:0; left:0; right:0; z-index:var(--dmo-z);
  background:var(--dmo-bg); color:var(--dmo-fg);
  box-shadow:0 8px 24px rgba(0,0,0,.4);
  pointer-events:auto;
}

.dmo__bar{
  height:var(--dmo-height);
  display:grid;
  grid-template-columns: 1fr auto 1fr; /* burger sticks to the right cell */
  align-items:center;
  padding:0 14px;
  position:relative;   /* establish containing block for absolute-centered logo */
  z-index:2;
}

/* Absolutely centered logo (ignores left/right widths) */
.dmo__logo{
  position:absolute; left:50%; transform:translateX(-50%);
  top:50%; transform-origin:center;
  display:inline-flex; align-items:center; justify-content:center;
  max-width:37.5vw;
  height:auto;
  z-index:3; pointer-events:auto;
  translate:0 -50%; /* vertical centering */
}
.dmo__logo img{
  display:block; height:auto; width:100%; max-width:37.5vw;
}

/* Burger (fa-bars) */
.dmo__toggle{
  grid-column:3;
  justify-self:end;
  width:48px; height:48px;
  display:inline-flex; flex-direction:column; gap:6px;
  align-items:center; justify-content:center;
  background:transparent; border:0; cursor:pointer;
  position:relative; z-index:3; pointer-events:auto;
}
.dmo__line{ display:block; width:26px; height:2px; background:var(--dmo-accent); }

/* Drawer */
.dmo__drawer{
  position:fixed; top:var(--dmo-height); left:0; right:0; bottom:0;
  background:var(--dmo-bg);
  transform:translateY(-8px); opacity:0; visibility:hidden;
  transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
  overflow:auto; -webkit-overflow-scrolling:touch;
  border-top:1px solid var(--dmo-border);
  z-index:1;
}
.dmo__drawer.is-open{ opacity:1; visibility:visible; transform:translateY(0); }

.dmo__menu{ list-style:none; margin:0; padding:16px; display:block; }
.dmo__item{ border-bottom:1px solid var(--dmo-border); }
.dmo__item:last-child{ border-bottom:0; }
.dmo__link{ display:block; padding:16px 6px; color:var(--dmo-fg); text-decoration:none; font-size:18px; }
.dmo__link:hover{ text-decoration:underline; }

/* Submenus */
.dmo__item--parent > .dmo__expander{
  width:40px; height:40px; border:1px solid var(--dmo-border); border-radius:8px; margin:10px 0;
  background:transparent; position:relative; float:right; cursor:pointer;
}
.dmo__item--parent > .dmo__expander:before,
.dmo__item--parent > .dmo__expander:after{
  content:""; position:absolute; left:0; right:0; margin:auto; background:var(--dmo-accent);
}
.dmo__item--parent > .dmo__expander:before{ width:16px; height:2px; top:19px; }
.dmo__item--parent > .dmo__expander:after{ width:2px; height:16px; top:12px; transition:transform .2s ease; }
.dmo__item[aria-expanded="true"] > .dmo__expander:after{ transform:scaleY(0); }
.dmo__sub{ list-style:none; margin:0; padding:0 0 10px 16px; display:none; }
.dmo__item[aria-expanded="true"] > .dmo__sub{ display:block; }

/* Neutralise common Divi header overlays (scoped to mobile width) */
@media (max-width: 980px){
  .dmo--hidden{ display:block; }
  #main-header,
  .et_mobile_menu,
  .et_pb_menu__menu,
  .et_header_style_left .mobile_menu_bar,
  .et_header_style_split .mobile_menu_bar,
  .et_header_style_centered .mobile_menu_bar,
  .et_pb_menu .et_mobile_nav_menu { display:none !important; }
  .et-l--header, .et-l--header .et_pb_section, .et-l--header .et_pb_row { z-index:1 !important; }
  #page-container{ padding-top: var(--dmo-height) !important; }
}

@media (min-width: 981px){
  .dmo{ display:none !important; }
}
