/* YesSir Services public header edge containment — version 917.
   Keeps Home visible at the left edge and the 1,000+ Reviews badge visible at
   the right edge without changing CRM navigation or public-site workflows. */

html,body{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}

.v6-top-header,.v6-nav,.moving-trust{
  width:100%!important;
  max-width:100vw!important;
}

.moving-trust{
  overflow:hidden!important;
  contain:paint;
}

@media (min-width:1181px){
  .v6-nav{
    overflow:hidden!important;
  }

  .v6-nav .wide{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) max-content!important;
    align-items:center!important;
    width:100%!important;
    max-width:1600px!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:0 clamp(8px,1vw,18px)!important;
    gap:5px!important;
    overflow:visible!important;
  }

  .v6-menu{
    display:flex!important;
    flex:1 1 auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }

  .v6-menu>a,.v6-menu>.nav-dd{
    flex:0 1 auto!important;
    min-width:0!important;
    margin:0!important;
  }

  .v6-menu>a,.v6-menu .nav-dd-toggle{
    min-width:0!important;
    min-height:46px!important;
    padding:0 clamp(3px,.52vw,9px)!important;
    font-size:clamp(9px,.68vw,12px)!important;
    letter-spacing:0!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .v6-menu>a:first-child{
    padding-left:6px!important;
  }

  .v6-nav-review{
    display:block!important;
    flex:0 0 auto!important;
    min-width:max-content!important;
    max-width:none!important;
    margin:0!important;
    padding:0 4px!important;
    overflow:visible!important;
    color:#fff!important;
    font-size:clamp(9px,.7vw,12px)!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    text-align:right!important;
  }
}

@media (min-width:600px) and (max-width:1180px){
  .mobile-home-about-contact-links.ys-mobile-main-tabs,
  .mobile-home-about-contact-links.ys-mobile-main-tabs a{
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    text-indent:0!important;
    text-overflow:clip!important;
  }

  .moving-track{
    margin-left:0!important;
    padding-left:14px!important;
    transform:none!important;
  }
}

/* Version 949: forced public header/navigation seam and secure CRM button.
   Desktop/tablet only. Avoid separate GPU layers and bridge each row by a
   controlled overlap so the scrolling page can never appear between rows. */
.ys-header-crm-login,
.ys-header-crm-login:link,
.ys-header-crm-login:visited{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 18px;
  border:2px solid #050505;
  border-radius:999px;
  background:#050505;
  color:#fff;
  font:950 14px/1 Arial,sans-serif;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 4px 12px rgba(0,0,0,.22);
  box-sizing:border-box;
}
.ys-header-crm-login:hover,
.ys-header-crm-login:focus{
  background:#202020;
  border-color:#202020;
  color:#fff;
  outline:2px solid rgba(244,197,66,.65);
  outline-offset:2px;
}

@media (max-width:599px){
  .ys-header-crm-login{display:none!important;}
}

@media (min-width:600px){
  html,body{
    margin-top:0!important;
    padding-top:0!important;
  }

  .ys-service-rotator,
  .v6-top-header,
  .v6-nav,
  .moving-trust{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    position:relative!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
    backface-visibility:visible!important;
  }

  .ys-service-rotator{margin-top:0!important;margin-bottom:0!important;z-index:4004!important;}
  .v6-top-header{margin-top:-2px!important;margin-bottom:0!important;z-index:4003!important;}
  .v6-nav{margin-top:-2px!important;margin-bottom:0!important;z-index:4002!important;}
  .moving-trust{margin-top:-2px!important;margin-bottom:0!important;z-index:4001!important;}

  /* Remove the older top cover strips; the downward strips below are more
     reliable when the desktop navigation row is hidden on tablet. */
  .v6-top-header::before,
  .v6-nav::before,
  .moving-trust::before{display:none!important;}

  .ys-service-rotator::after,
  .v6-top-header::after,
  .v6-nav::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-5px;
    height:6px;
    pointer-events:none;
    z-index:20;
  }
  .ys-service-rotator::after{background:#ffdf00;}
  .v6-top-header::after{background:#006b2f;}
  .v6-nav::after{background:#006b2f;}

  .v6-contact .ys-header-crm-login{flex:0 0 auto;}
}

@media (min-width:600px) and (max-width:1180px){
  .v6-contact .ys-header-crm-login{
    width:100%!important;
    min-height:40px!important;
    padding:9px 8px!important;
    font-size:12px!important;
  }
}

/* Version 950: interactive navigation guarantee.
   Seam cover strips remain visual-only and can never intercept website links. */
@media (min-width:901px){
  .v6-nav,
  .v6-nav .wide,
  .v6-menu,
  .v6-menu > a,
  .v6-menu .nav-dd,
  .v6-menu .nav-dd-toggle,
  .v6-menu .nav-dd-menu{
    pointer-events:auto!important;
  }
  .ys-service-rotator::after,
  .v6-top-header::after,
  .v6-nav::after{
    pointer-events:none!important;
  }
}
