/* NINEWORKS mobile menu + footer refinement — 2026-08-22 */

/* Official NINEWORKS wordmark applied sitewide. */
html body .site-header>a.site-logo,
html body .site-header .site-logo{
  display:inline-flex!important;
  flex:0 0 auto!important;
  width:clamp(190px,13vw,220px)!important;
  min-width:190px!important;
  height:31px!important;
  align-items:center!important;
  overflow:hidden!important;
  background:url('../nineworks-logo.svg?v=20260824-4') left center/contain no-repeat!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  letter-spacing:0!important;
  text-indent:-9999px!important;
  white-space:nowrap!important;
  transform:none!important;
}

/* --------------------------------------------------------------------------
   FOOTER — official wordmark + cleaner editorial information architecture
   -------------------------------------------------------------------------- */
html body .site-footer{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:64px max(24px,calc((100vw - 1440px)/2)) 30px!important;
  border-top:1px solid #dededa!important;
  background:#f5f5f3!important;
  color:#111!important;
}

html body .site-footer__head{
  display:grid!important;
  grid-template-columns:minmax(190px,260px) minmax(0,1fr)!important;
  gap:clamp(52px,6vw,112px)!important;
  align-items:start!important;
  padding:0 0 42px!important;
}

html body .site-footer__brand{
  display:block!important;
  width:196px!important;
  height:27px!important;
  overflow:hidden!important;
  background:url('../nineworks-logo.svg?v=20260824-4') left center/contain no-repeat!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  letter-spacing:0!important;
  text-indent:-9999px!important;
  white-space:nowrap!important;
}

html body .site-footer__links{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  column-gap:clamp(22px,2.8vw,48px)!important;
  row-gap:0!important;
  justify-content:stretch!important;
  width:100%!important;
  max-width:none!important;
  color:#5f5f5f!important;
}

html body .site-footer__links a{
  display:flex!important;
  align-items:center!important;
  min-height:42px!important;
  padding:0!important;
  border-bottom:1px solid #dcdcd7!important;
  color:#5f5f5f!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.2!important;
  transition:color .2s ease,border-color .2s ease!important;
}

html body .site-footer__links a:hover,
html body .site-footer__links a:focus-visible{
  color:#111!important;
  border-bottom-color:#111!important;
}

html body .site-footer__legal{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
  gap:7px 42px!important;
  width:min(100%,980px)!important;
  max-width:980px!important;
  padding:0 0 34px!important;
  color:#777!important;
  font-size:13px!important;
  line-height:1.7!important;
}

html body .site-footer__legal p{
  margin:0!important;
  min-width:0!important;
}

html body .site-footer__legal strong{
  color:#222!important;
  font-weight:600!important;
}

html body .site-footer__legal a{
  color:inherit!important;
  text-decoration:none!important;
}

html body .site-footer__phone{
  display:inline!important;
  margin-left:18px!important;
}

html body .site-footer__bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  margin:0!important;
  padding:18px 0 0!important;
  border-top:1px solid #d8d8d3!important;
  color:#929292!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}

html body .site-footer__social{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
}

html body .site-footer__social a{
  color:inherit!important;
  text-decoration:none!important;
}

html body .site-footer__social a:hover,
html body .site-footer__social a:focus-visible{
  color:#111!important;
}

@media(max-width:980px){
  html body .site-header>a.site-logo,
  html body .site-header .site-logo{
    width:184px!important;
    min-width:184px!important;
    height:25px!important;
  }

  html body .site-footer{
    padding:52px 20px 28px!important;
  }

  html body .site-footer__head{
    grid-template-columns:1fr!important;
    gap:30px!important;
    padding-bottom:34px!important;
  }

  html body .site-footer__brand{
    width:184px!important;
    height:25px!important;
  }

  html body .site-footer__links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:24px!important;
  }

  html body .site-footer__legal{
    grid-template-columns:1fr!important;
    gap:7px!important;
    width:100%!important;
    max-width:760px!important;
  }
}

@media(max-width:680px){
  html body .site-header>a.site-logo,
  html body .site-header .site-logo{
    width:164px!important;
    min-width:164px!important;
    height:23px!important;
  }

  html body .menu-overlay{
    overflow-y:auto!important;
    padding-top:calc(var(--header-height,68px) + 18px)!important;
    padding-right:20px!important;
    padding-bottom:26px!important;
    padding-left:20px!important;
    gap:22px!important;
    grid-template-rows:auto auto!important;
    align-content:start!important;
  }

  html body .menu-nav{
    align-self:start!important;
  }

  html body .menu-nav .menu-nav__main,
  html body .menu-nav>a.menu-nav__main{
    display:block!important;
    width:fit-content!important;
    margin:0!important;
    padding:0!important;
    font-size:24px!important;
    font-weight:600!important;
    line-height:1.16!important;
    letter-spacing:-.04em!important;
  }

  html body .menu-nav>.menu-nav__main + .menu-nav__main{
    margin-top:8px!important;
  }

  html body .menu-nav__group{
    margin:8px 0 12px!important;
  }

  html body .menu-nav__sub{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:0!important;
    margin:5px 0 0!important;
    padding:0!important;
  }

  html body .menu-nav__sub a{
    display:block!important;
    width:auto!important;
    margin:0!important;
    padding:2px 0!important;
    font-size:13px!important;
    font-weight:400!important;
    line-height:1.45!important;
    letter-spacing:-.015em!important;
  }

  html body .menu-footer{
    margin-top:10px!important;
    padding-top:16px!important;
    border-top:1px solid rgba(255,255,255,.16)!important;
    gap:10px!important;
    font-size:11px!important;
    line-height:1.5!important;
  }

  html body .menu-social{
    gap:16px!important;
    font-size:11px!important;
  }

  html body .site-footer{
    padding:40px 18px 24px!important;
  }

  html body .site-footer__head{
    gap:26px!important;
    padding-bottom:30px!important;
  }

  html body .site-footer__brand{
    width:172px!important;
    height:24px!important;
  }

  html body .site-footer__links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:18px!important;
  }

  html body .site-footer__links a{
    min-height:39px!important;
    font-size:13px!important;
  }

  html body .site-footer__legal{
    padding-bottom:26px!important;
    font-size:12px!important;
    line-height:1.65!important;
  }

  html body .site-footer__phone{
    display:block!important;
    margin-top:3px!important;
    margin-left:0!important;
  }

  html body .site-footer__bottom{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:12px!important;
    padding-top:16px!important;
    font-size:11px!important;
  }
}

@media(max-width:390px){
  html body .menu-nav .menu-nav__main,
  html body .menu-nav>a.menu-nav__main{
    font-size:23px!important;
  }

  html body .menu-nav__sub a{
    font-size:12.5px!important;
  }

  html body .site-footer__links{
    column-gap:14px!important;
  }
}

/* --------------------------------------------------------------------------
   MOBILE-ONLY HAMBURGER / 2026-08-24
   Desktop uses the full primary navigation. The menu trigger must never appear
   beside JOIN / MY NINEWORKS on desktop.
   -------------------------------------------------------------------------- */
@media(min-width:761px){
  html body .site-header .menu-trigger,
  html body .site-header button.menu-trigger,
  html body .menu-trigger[data-menu-trigger]{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

@media(max-width:760px){
  html body .site-header .menu-trigger,
  html body .site-header button.menu-trigger,
  html body .menu-trigger[data-menu-trigger]{
    display:grid!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}
