
/* VERSION 77 - WORKING MOBILE MENU OVERLAY
   Desktop layout stays unchanged.
   Mobile gets one clean working menu.
*/
#ys-working-mobile-menu-button,
#ys-working-mobile-menu-panel,
#ys-working-mobile-menu-backdrop {
  display:none;
}

.ys-mobile-menu-button,
.mobile-menu-toggle {
  display:none !important;
}

@media (max-width:900px) {
  /* Hide broken old mobile/mega menu on phones only */
  header nav,
  nav,
  .nav,
  .navbar,
  .main-nav,
  .menu,
  .mega-menu,
  .dropdown-menu,
  .sub-menu,
  .submenu,
  .landing-pages,
  .service-areas,
  .services-menu {
    display:none !important;
  }

  #ys-working-mobile-menu-button {
    display:block !important;
    position:fixed !important;
    top:12px !important;
    right:12px !important;
    z-index:1000000 !important;
    background:#f4c542 !important;
    color:#111 !important;
    border:2px solid #111 !important;
    border-radius:10px !important;
    padding:12px 14px !important;
    font:700 16px Arial, sans-serif !important;
    box-shadow:0 5px 18px rgba(0,0,0,.25) !important;
  }

  #ys-working-mobile-menu-backdrop {
    position:fixed !important;
    inset:0 !important;
    background:rgba(0,0,0,.45) !important;
    z-index:999998 !important;
  }

  #ys-working-mobile-menu-panel {
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    width:88% !important;
    max-width:360px !important;
    height:100vh !important;
    overflow:auto !important;
    background:#ffffff !important;
    z-index:999999 !important;
    padding:18px !important;
    box-shadow:-8px 0 28px rgba(0,0,0,.35) !important;
    font-family:Arial, sans-serif !important;
  }

  body.ys-menu-open #ys-working-mobile-menu-panel,
  body.ys-menu-open #ys-working-mobile-menu-backdrop {
    display:block !important;
  }

  #ys-working-mobile-menu-panel h2 {
    color:#06233d !important;
    margin:0 0 12px !important;
    font-size:22px !important;
  }

  #ys-working-mobile-menu-panel .ys-menu-close {
    background:#c62828 !important;
    color:#fff !important;
    border:0 !important;
    width:100% !important;
    padding:12px !important;
    border-radius:10px !important;
    font-weight:900 !important;
    margin-bottom:12px !important;
  }

  #ys-working-mobile-menu-panel a {
    display:block !important;
    background:#075fbd !important;
    color:#fff !important;
    text-decoration:none !important;
    text-align:left !important;
    padding:14px !important;
    border-radius:10px !important;
    margin:8px 0 !important;
    font-weight:900 !important;
    min-height:46px !important;
    line-height:1.25 !important;
  }

  #ys-working-mobile-menu-panel a.green { background:#0a9d4b !important; }
  #ys-working-mobile-menu-panel a.gold { background:#f4c542 !important; color:#111 !important; }
  #ys-working-mobile-menu-panel a.dark { background:#06233d !important; }

  body.ys-menu-open {
    overflow:hidden !important;
  }
}

@media (min-width:901px) {
  #ys-working-mobile-menu-button,
  #ys-working-mobile-menu-panel,
  #ys-working-mobile-menu-backdrop {
    display:none !important;
  }
}


/* VERSION 246 - one clean mobile menu only. Removes duplicate body/mobile menu. */
@media (max-width:900px){
  .mobile-menu-toggle, body > .mobile-menu-toggle, .mobile-menu-open .v6-menu, .mobile-menu-open nav, .v6-menu, .v6-nav .wide > .v6-menu, header .v6-menu{display:none!important;}
  body{overflow-x:hidden!important;-webkit-text-size-adjust:100%;}
  main,.main,.container,.wrap,.content,.card,.module-card{max-width:100%!important;box-sizing:border-box!important;}
  input,select,textarea,button,.btn{font-size:16px!important;max-width:100%!important;box-sizing:border-box!important;}
}

/* VERSION 265 - homepage + mobile website display cleanup */
html, body { max-width:100%; overflow-x:hidden; }
@media (max-width:900px){
  body{font-size:16px!important;line-height:1.5!important;padding-bottom:64px!important;}
  .wide,.container{width:100%!important;max-width:100%!important;padding-left:14px!important;padding-right:14px!important;}
  .v6-top-header .wide{display:grid!important;grid-template-columns:1fr!important;text-align:center!important;gap:8px!important;padding:10px 12px!important;}
  .v6-logo{display:flex!important;justify-content:center!important;}
  .v6-logo img,.logo img{height:auto!important;max-height:86px!important;max-width:240px!important;margin:auto!important;}
  .v6-tagline{border-left:0!important;padding-left:0!important;font-size:16px!important;line-height:1.25!important;}
  .v6-contact{display:block!important;text-align:center!important;}
  .v6-phone{font-size:25px!important;line-height:1.15!important;}
  .v6-contact .btn{width:100%!important;margin-top:8px!important;}
  .v6-nav{display:none!important;}
  .moving-trust{font-size:13px!important;}
  .moving-track{animation:none!important;white-space:normal!important;display:block!important;padding:10px 8px!important;text-align:center!important;}
  .moving-track span{display:inline-block!important;margin:4px 8px!important;font-size:13px!important;}
  .v6-hero{padding:24px 0!important;background-position:center!important;}
  .v6-hero-grid,.hero-grid,.grid-2,.grid-3,.cards,.module-grid,.footer-grid{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;}
  .v6-hero h1,h1{font-size:31px!important;line-height:1.08!important;letter-spacing:0!important;text-align:center!important;}
  .v6-hero p,.hero p{font-size:16px!important;text-align:center!important;}
  .v6-icons{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;margin:16px 0!important;}
  .v6-icon .circle{width:44px!important;height:44px!important;font-size:20px!important;}
  .v6-hero-actions,.hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  .v6-hero-actions .btn,.hero-actions .btn,.btn{width:100%!important;min-width:0!important;min-height:46px!important;padding:13px 14px!important;}
  .v6-form,.lead-panel,.card,.v6-dark-card,.ba-card{width:100%!important;max-width:100%!important;border-radius:14px!important;padding:16px!important;}
  .v6-form h2,h2{font-size:25px!important;text-align:center!important;}
  input,select,textarea,button{font-size:16px!important;min-height:44px!important;}
  textarea{min-height:105px!important;}
  .section{padding:34px 0!important;}
  .gallery,.before-after-grid{grid-template-columns:1fr!important;}
  .ba-slider{height:245px!important;}
  .v6-footer-banner .wide{display:grid!important;grid-template-columns:1fr!important;text-align:center!important;gap:12px!important;}
  .v6-footer-banner img,.footer-logo{margin:auto!important;max-width:220px!important;height:auto!important;}
  footer .footer-grid{grid-template-columns:1fr!important;text-align:center!important;}
  .sticky-mobile{display:grid!important;grid-template-columns:1fr 1fr!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:900000!important;}
  .sticky-mobile a{display:block!important;padding:13px 6px!important;font-size:15px!important;}
  img,video,iframe{max-width:100%!important;height:auto;}
  iframe{min-height:260px;}
}
@media (max-width:480px){
  .v6-icons{grid-template-columns:1fr!important;}
  .v6-hero h1,h1{font-size:28px!important;}
  .v6-phone{font-size:22px!important;}
  .wide,.container{padding-left:12px!important;padding-right:12px!important;}
}


/* VERSION 266 - restore visible Home / About Us / Contact Us mobile home bar */
#ys-mobile-home-bar{display:none;}
@media (max-width:900px){
  #ys-mobile-home-bar{
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr!important;
    position:sticky!important;
    top:0!important;
    z-index:899999!important;
    background:#06233d!important;
    border-top:2px solid #f4c542!important;
    border-bottom:2px solid #f4c542!important;
    box-shadow:0 4px 12px rgba(0,0,0,.18)!important;
  }
  #ys-mobile-home-bar a{
    color:#fff!important;
    text-decoration:none!important;
    text-align:center!important;
    font-weight:900!important;
    font-family:Arial,sans-serif!important;
    padding:12px 6px!important;
    font-size:14px!important;
    line-height:1.1!important;
    border-right:1px solid rgba(255,255,255,.22)!important;
  }
  #ys-mobile-home-bar a:last-child{border-right:0!important;}
  #ys-mobile-home-bar a:active{background:#075fbd!important;}
  body.ys-menu-open #ys-mobile-home-bar{display:none!important;}
}

/* VERSION 269 - move mobile home/action bars from bottom to the top. Data-safe UI only. */
@media (max-width:900px){
  body{
    padding-top:104px!important;
    padding-bottom:0!important;
  }
  #ys-mobile-home-bar{
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr!important;
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:950000!important;
    min-height:46px!important;
    background:#06233d!important;
    border-top:0!important;
    border-bottom:2px solid #f4c542!important;
    box-shadow:0 4px 14px rgba(0,0,0,.20)!important;
  }
  .sticky-mobile{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    position:fixed!important;
    top:46px!important;
    bottom:auto!important;
    left:0!important;
    right:0!important;
    z-index:949999!important;
    box-shadow:0 5px 18px rgba(0,0,0,.18)!important;
  }
  .sticky-mobile a{
    display:block!important;
    text-align:center!important;
    padding:12px 8px!important;
    font-size:15px!important;
    line-height:1.1!important;
    min-height:44px!important;
  }
  #ys-working-mobile-menu-button{
    top:102px!important;
    right:10px!important;
    z-index:1000000!important;
  }
  .v6-header,.topbar,.v6-top-header,header{
    position:relative!important;
    z-index:1!important;
  }
  body.ys-menu-open #ys-mobile-home-bar,
  body.ys-menu-open .sticky-mobile{
    display:none!important;
  }
}
@media (min-width:901px){
  body{padding-top:0!important;padding-bottom:0!important;}
  #ys-mobile-home-bar{display:none!important;}
}

/* VERSION 271 - public YesSir-only menu cleanup. Keeps CRM/admin access hidden in admin-only footer widget. */
.v6-nav .v6-menu a.crm-login-link,
.v6-nav .v6-menu a[href*="crm/"],
.v6-nav .v6-menu a[href*="platform-access.html"]{
  display:none!important;
}
@media (max-width:900px){
  #ys-working-mobile-menu-panel a[href*="crm/"],
  #ys-working-mobile-menu-panel a[href*="platform-access.html"]{
    display:none!important;
  }
}


/* VERSION 277 - remove duplicate fixed top quick bar; keep desktop navigation unchanged */
@media (max-width:900px){
  body{padding-top:0!important;}
  #ys-mobile-home-bar{display:none!important;}
}
