
/* East-West Electric | mobile hierarchy and Services navigation | 2026-11-09 */
@media (max-width:767px) {
  .ewe-mobile-hero-eyebrow {
    font-family:Inter,Arial,sans-serif!important;
    font-size:13px!important;
    font-weight:650!important;
    letter-spacing:.085em!important;
    line-height:1.5!important;
    text-transform:uppercase!important;
    color:#829ab1!important;
    margin:0 0 14px!important;
    padding:0!important;
  }
  .ewe-mobile-hero-title {
    font-family:Inter,Arial,sans-serif!important;
    font-size:clamp(34px,10.1vw,42px)!important;
    font-weight:780!important;
    letter-spacing:-.036em!important;
    line-height:1.12!important;
    text-wrap:balance;
    margin:0 0 12px!important;
    padding:0!important;
  }
  .ewe-mobile-hero-subtitle {
    font-family:Inter,Arial,sans-serif!important;
    font-size:clamp(17px,4.55vw,19px)!important;
    font-weight:500!important;
    line-height:1.42!important;
    letter-spacing:-.012em!important;
    margin:0 0 22px!important;
    padding:0!important;
  }
  .ewe-mobile-hero-secondline {
    font-size:clamp(27px,8vw,34px)!important;
    font-weight:750!important;
    line-height:1.14!important;
    letter-spacing:-.024em!important;
  }
  .ewe-mobile-hero-lead {
    font-family:Inter,Arial,sans-serif!important;
    font-size:16.5px!important;
    font-weight:400!important;
    line-height:1.58!important;
    letter-spacing:-.006em!important;
    overflow-wrap:break-word;
  }
  /* A parent widget can carry typography defaults; the text node is authoritative. */
  .ewe-mobile-hero-lead strong {font-weight:650!important}
  #site-menu.ewe-popup-open {overflow-y:auto!important;overscroll-behavior:contain}
  #site-menu .ewe-mobile-service-toggle {
    width:100%!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    gap:15px!important;
    min-height:44px!important;
    background:transparent!important;border:0!important;
    padding:8px 18px!important;margin:0!important;
    font:inherit!important;font-size:inherit!important;font-weight:inherit!important;
    color:inherit!important;cursor:pointer!important;
  }
  #site-menu .ewe-mobile-service-toggle::after {
    content:"";width:8px;height:8px;display:block;
    border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;
    transform:translateY(-2px) rotate(45deg);
    transition:transform .2s ease;
  }
  #site-menu .ewe-mobile-service-toggle[aria-expanded="true"]::after {transform:translateY(2px) rotate(225deg)}
  #site-menu .ewe-mobile-service-toggle:focus-visible,
  #site-menu .ewe-mobile-service-category summary:focus-visible,
  #site-menu .ewe-mobile-services-panel a:focus-visible {
    outline:2px solid #f66f24!important;outline-offset:2px!important;border-radius:5px
  }
  #site-menu .ewe-mobile-services-panel[hidden]{display:none!important}
  #site-menu .ewe-mobile-services-panel {
    box-sizing:border-box!important;
    display:block!important;
    width:min(calc(100% - 44px),420px)!important;
    max-width:420px!important;
    margin:0 auto 15px!important;
    padding:10px 13px!important;
    background:rgba(35,57,111,.055)!important;
    border:1px solid rgba(35,57,111,.14)!important;
    border-radius:12px!important;
    box-shadow:0 6px 18px rgba(15,36,66,.04)!important;
    overflow:visible!important;
    text-align:left!important;
  }
  #site-menu .ewe-mobile-services-panel a {
    display:block!important;
    padding:10px 12px!important;
    color:#23396f!important;
    font-family:Inter,Arial,sans-serif!important;
    font-weight:550!important;
    font-size:15px!important;
    line-height:1.4!important;
    text-decoration:none!important;
    border-radius:7px!important;
    background:transparent!important;
  }
  #site-menu .ewe-mobile-services-panel a:hover,
  #site-menu .ewe-mobile-services-panel a:active {background:rgba(35,57,111,.07)!important}
  #site-menu .ewe-mobile-service-category {border-top:1px solid rgba(35,57,111,.09)}
  #site-menu .ewe-mobile-service-category summary {
    display:flex;justify-content:space-between;align-items:center;
    list-style:none;cursor:pointer;
    min-height:43px;padding:9px 12px;color:#23396f;
    font:600 15px/1.35 Inter,Arial,sans-serif;
  }
  #site-menu .ewe-mobile-service-category summary::-webkit-details-marker{display:none}
  #site-menu .ewe-mobile-service-category summary::after {
    content:"";height:7px;width:7px;margin-left:10px;flex:0 0 auto;
    border-right:1.6px solid #5874b6;border-bottom:1.6px solid #5874b6;
    transform:translateY(-2px) rotate(45deg);transition:transform .2s ease;
  }
  #site-menu .ewe-mobile-service-category[open] summary::after {transform:translateY(2px) rotate(225deg)}
  #site-menu .ewe-mobile-service-childlinks {
    border-left:2px solid rgba(88,116,182,.25);
    margin:0 4px 10px 15px;padding-left:7px;
  }
  #site-menu .ewe-mobile-service-childlinks a {
    font-weight:450!important;font-size:14px!important;
    padding:8px 12px!important;
  }
}
@media(prefers-reduced-motion:reduce){
 #site-menu .ewe-mobile-service-toggle::after,
 #site-menu .ewe-mobile-service-category summary::after{transition:none!important}
}

/* Navy mobile drawer contrast and legacy H1 override */
@media(max-width:767px){
 html body h1.ewe-mobile-hero-title,
 html body .ewe-mobile-hero-title.ewe-commercial-h1-match{
   font-size:clamp(34px,10.1vw,42px)!important;
   font-weight:780!important;
   line-height:1.12!important;
   letter-spacing:-.036em!important;
 }
 #site-menu .ewe-mobile-service-toggle{
   color:#fff!important;
   font-family:Inter,Arial,sans-serif!important;
   font-size:18px!important;
   font-weight:500!important;
   line-height:1.4!important;
 }
 #site-menu .ewe-mobile-services-panel{
   background:rgba(255,255,255,.075)!important;
   border:1px solid rgba(255,255,255,.22)!important;
   box-shadow:0 8px 22px rgba(8,25,61,.09)!important;
 }
 #site-menu .ewe-mobile-services-panel a{
   color:#fff!important;
 }
 #site-menu .ewe-mobile-service-category{
   border-color:rgba(255,255,255,.15)!important;
 }
 #site-menu .ewe-mobile-service-category summary{
   color:#fff!important;
 }
 #site-menu .ewe-mobile-service-category summary::after{
   border-color:rgba(255,255,255,.85)!important;
 }
 #site-menu .ewe-mobile-service-childlinks{
   border-left-color:rgba(255,255,255,.36)!important;
 }
 #site-menu .ewe-mobile-services-panel a:hover,
 #site-menu .ewe-mobile-services-panel a:active{
   background:rgba(255,255,255,.14)!important;
 }
}

/* Native Electrical Services page has a separate mobile drawer */
@media(max-width:767px){
 #ewe-drawer .ewe-native-mobile-service-toggle {
  width:100%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:15px!important;
  padding:13px 10px!important;border:0!important;background:transparent!important;
  color:rgba(255,255,255,.95)!important;cursor:pointer!important;
  font:500 18px/1.35 Inter,Arial,sans-serif!important;
 }
 #ewe-drawer .ewe-native-mobile-service-toggle::after{
  content:"";display:block;width:8px;height:8px;
  border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transition:transform .2s ease;
 }
 #ewe-drawer .ewe-native-mobile-service-toggle[aria-expanded="true"]::after{transform:translateY(2px) rotate(225deg)}
 #ewe-drawer .ewe-native-mobile-service-options[hidden]{display:none!important}
 #ewe-drawer .ewe-native-mobile-service-options{
  display:block!important;width:calc(100% - 32px)!important;
  box-sizing:border-box!important;margin:3px auto 15px!important;
  padding:9px 12px!important;background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.2)!important;border-radius:12px!important;
 }
 #ewe-drawer .ewe-native-mobile-service-options a{
  display:block!important;color:#fff!important;text-decoration:none!important;
  font:500 15px/1.35 Inter,Arial,sans-serif!important;
  text-align:left!important;padding:11px 12px!important;
  border-radius:6px!important;
 }
 #ewe-drawer .ewe-native-mobile-service-options a+a{border-top:1px solid rgba(255,255,255,.12)}
 #ewe-drawer .ewe-native-mobile-service-toggle:focus-visible,
 #ewe-drawer .ewe-native-mobile-service-options a:focus-visible{
  outline:2px solid #f66f24!important;outline-offset:2px!important;
 }
 #ewe-drawer .ewe-drawer-panel{overflow-y:auto!important;overscroll-behavior:contain}
}
