/* MIDEAS navigation repair for static Weebly export */
#topnav { overflow: visible !important; position: relative; z-index: 1000; }
#topnav ul { overflow: visible !important; }
#topnav ul li.wsite-menu-item-wrap { position: relative; }

/* Desktop first-level dropdown */
#topnav li.wsite-menu-item-wrap > .wsite-menu-wrap {
  display: none !important; position: absolute !important; left: 0 !important; top: 100% !important;
  z-index: 99999 !important; width: 180px !important; margin: 0 !important; padding: 0 !important;
}
#topnav li.wsite-menu-item-wrap:hover > .wsite-menu-wrap,
#topnav li.wsite-menu-item-wrap.mideas-open > .wsite-menu-wrap { display: block !important; }
#topnav .wsite-menu-wrap > .wsite-menu { display: block !important; width: 180px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
#topnav .wsite-menu-subitem-wrap { position: relative !important; width: 180px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
#topnav .wsite-menu-subitem-wrap > a.wsite-menu-subitem { display: block !important; float: none !important; box-sizing: border-box !important; width: 180px !important; margin: 0 !important; padding: 13px 15px 12px !important; white-space: normal !important; }
#topnav .wsite-menu-subitem-wrap > .wsite-menu-wrap { display: none !important; position: absolute !important; left: 180px !important; top: -1px !important; z-index: 100000 !important; width: 180px !important; margin: 0 !important; padding: 0 !important; }
#topnav .wsite-menu-subitem-wrap:hover > .wsite-menu-wrap,
#topnav .wsite-menu-subitem-wrap.mideas-open > .wsite-menu-wrap { display: block !important; }
#topnav .wsite-menu-arrow { display: inline !important; float: right; margin-left: 8px; }
#topnav .wsite-menu a.wsite-menu-subitem:hover { border-bottom: 1px solid #ddd !important; }

/* Mobile menu */
#mideas-mobile-toggle { display: none; }
@media screen and (max-width: 767px) {
  #topnav-wrap, #header-wrap, #banner-wrap, #main-wrap, #footer-wrap { min-width: 0 !important; width: 100% !important; }
  #topnav-wrap .container { width: 100% !important; min-width: 0 !important; box-sizing: border-box; }
  #topnav-wrap table { width: 100% !important; }
  #topnav { float: none !important; width: 100% !important; height: auto !important; overflow: visible !important; display: none; }
  #topnav-wrap.mideas-mobile-open #topnav { display: block !important; }
  #topnav > ul.wsite-menu-default { display: block !important; float: none !important; width: 100% !important; height: auto !important; overflow: visible !important; }
  #topnav > ul.wsite-menu-default > li.wsite-menu-item-wrap { display: block !important; float: none !important; width: 100% !important; padding: 0 !important; border-bottom: 1px solid #e5e5e5; }
  #topnav > ul.wsite-menu-default > li > a.wsite-menu-item { display: block !important; float: none !important; width: 100% !important; box-sizing: border-box !important; padding: 14px 18px !important; margin: 0 !important; }
  #topnav li.wsite-menu-item-wrap > .wsite-menu-wrap,
  #topnav .wsite-menu-subitem-wrap > .wsite-menu-wrap { position: static !important; width: 100% !important; left: auto !important; top: auto !important; box-shadow: none !important; }
  #topnav li.wsite-menu-item-wrap > .wsite-menu-wrap { display: none !important; }
  #topnav li.wsite-menu-item-wrap.mideas-open > .wsite-menu-wrap { display: block !important; }
  #topnav .wsite-menu-wrap > .wsite-menu,
  #topnav .wsite-menu-subitem-wrap,
  #topnav .wsite-menu-subitem-wrap > a.wsite-menu-subitem { width: 100% !important; box-sizing: border-box !important; }
  #topnav .wsite-menu-subitem-wrap { display: block !important; float: none !important; border-top: 1px solid #eee; }
  #topnav .wsite-menu-subitem-wrap > a.wsite-menu-subitem { padding: 12px 22px !important; margin: 0 !important; }
  #topnav .wsite-menu-subitem-wrap > .wsite-menu-wrap { display: none !important; }
  #topnav .wsite-menu-subitem-wrap.mideas-open > .wsite-menu-wrap { display: block !important; }
  #topnav .wsite-menu-subitem-wrap .wsite-menu-subitem-wrap > a.wsite-menu-subitem { padding-left: 36px !important; }

  #mideas-mobile-toggle {
    display: flex !important; align-items: center; justify-content: center; gap: 4px;
    width: 100%; min-height: 48px; box-sizing: border-box; border: 0; border-bottom: 1px solid #dedede;
    background: #fff; color: #5e5e5e; cursor: pointer; font: 600 14px Arial, sans-serif;
  }
  #mideas-mobile-toggle span { display: block; width: 18px; height: 2px; background: #5e5e5e; }
  #mideas-mobile-toggle b { margin-left: 7px; font-weight: 600; }
  #topnav-wrap.mideas-mobile-open #mideas-mobile-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  #topnav-wrap.mideas-mobile-open #mideas-mobile-toggle span:nth-child(2) { opacity: 0; }
  #topnav-wrap.mideas-mobile-open #mideas-mobile-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
}


/* MIDEAS native mobile menu V6 - independent of Weebly JS */
@media screen and (max-width: 767px) {
  #mideas-mobile-menu {
    display:block !important;
    width:100%;
    box-sizing:border-box;
    background:#fff;
  }
  #mideas-mobile-menu > summary {
    list-style:none;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 16px;
    box-sizing:border-box;
    border:0;
    border-bottom:1px solid #ddd;
    cursor:pointer;
    font:600 14px Arial,sans-serif;
    color:#5e5e5e;
  }
  #mideas-mobile-menu > summary::-webkit-details-marker { display:none; }
  #mideas-mobile-menu > summary .mideas-menu-icon { margin-right:8px; font-size:20px; line-height:1; }
  #mideas-mobile-menu > summary .mideas-menu-close { display:none; }
  #mideas-mobile-menu[open] > summary .mideas-menu-open { display:none; }
  #mideas-mobile-menu[open] > summary .mideas-menu-close { display:inline; }

  #mideas-mobile-menu .mideas-mobile-list {
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    width:100%;
    box-sizing:border-box;
  }
  #mideas-mobile-menu > .mideas-mobile-list { border-bottom:1px solid #ddd; }
  #mideas-mobile-menu .mideas-mobile-item {
    margin:0 !important;
    padding:0 !important;
    border-top:1px solid #eee;
    list-style:none !important;
  }
  #mideas-mobile-menu .mideas-mobile-item:first-child { border-top:0; }

  #mideas-mobile-menu .mideas-mobile-item > a,
  #mideas-mobile-menu .mideas-mobile-item > details > summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:46px;
    box-sizing:border-box;
    padding:12px 18px;
    color:#555;
    background:#fff;
    text-decoration:none;
    font:14px Arial,sans-serif;
    cursor:pointer;
  }
  #mideas-mobile-menu .mideas-mobile-item > details > summary {
    list-style:none;
  }
  #mideas-mobile-menu .mideas-mobile-item > details > summary::-webkit-details-marker {
    display:none;
  }
  #mideas-mobile-menu .mideas-mobile-arrow {
    font-size:22px;
    line-height:14px;
    margin-left:10px;
  }
  #mideas-mobile-menu .level-1 > .mideas-mobile-item > a,
  #mideas-mobile-menu .level-1 > .mideas-mobile-item > details > summary {
    padding-left:30px;
    background:#fafafa;
  }
  #mideas-mobile-menu .level-2 > .mideas-mobile-item > a,
  #mideas-mobile-menu .level-2 > .mideas-mobile-item > details > summary {
    padding-left:44px;
    background:#f7f7f7;
  }
  #mideas-mobile-menu .level-3 > .mideas-mobile-item > a,
  #mideas-mobile-menu .level-3 > .mideas-mobile-item > details > summary {
    padding-left:58px;
  }

  /* The old JS-generated V2 mobile button is not used in V6. */
  #mideas-mobile-toggle { display:none !important; }
  #topnav-wrap #topnav { display:none !important; }
}

@media screen and (min-width:768px) {
  #mideas-mobile-menu { display:none !important; }
}
