/* Site footer, one design on every page. 14 Sep 2026.
   Replaces two footer variants (a full grid on 14 pages, a one-line strip on 12).
   Self-contained: both page types define the same :root variables, but the service
   pages do not load agency.css, so nothing here depends on it. */
.wr-foot{border-top:1px solid var(--line-soft,#1a1a21);background:var(--near,#0d0d10);color:var(--dim,#6b6875);padding:64px 0 36px;font-family:var(--body,"Inter",system-ui,sans-serif);font-size:.9rem;line-height:1.6}
.wr-foot a{color:var(--muted,#9d9aa6);text-decoration:none;transition:color .25s}
.wr-foot a:hover,.wr-foot a:focus-visible{color:var(--lime,#ccff33)}
.wr-foot__top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px 48px;margin-bottom:48px}
.wr-foot a.wr-foot__name{display:inline-block;font-family:var(--display,system-ui,sans-serif);font-weight:700;font-size:1.25rem;letter-spacing:-.01em;color:var(--paper,#f4f2ee);margin-bottom:12px}
.wr-foot a.wr-foot__name:hover{color:var(--paper,#f4f2ee)}
.wr-foot__blurb{color:var(--muted,#9d9aa6);font-weight:300;max-width:36ch;margin:0 0 24px}
.wr-foot h4{font-family:var(--mono,ui-monospace,monospace);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim,#6b6875);font-weight:400;margin:0 0 14px}
.wr-foot address{font-style:normal;color:var(--muted,#9d9aa6);margin:0 0 10px}
.wr-foot ul{list-style:none;margin:0;padding:0}
.wr-foot li a{display:inline-block;padding:5px 0;min-height:24px}
.wr-foot__phone{display:inline-block;padding:5px 0}
.wr-foot__legal{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line-soft,#1a1a21);font-size:.8rem}
.wr-foot__legal a{display:inline-block;padding:4px 0}
@media(max-width:900px){.wr-foot__top{grid-template-columns:1fr 1fr}.wr-foot__brandcol{grid-column:1/-1}}
@media(max-width:520px){.wr-foot__top{grid-template-columns:1fr}.wr-foot__legal{flex-direction:column;align-items:flex-start}}

/* The $150 audit link in the main nav, 14 Sep 2026. It lives in this file because footer.css
   is the one stylesheet every page loads; agency.css, nav.css and the inline page styles do not overlap. */
.nav a.nav__audit{color:var(--lime);font-weight:600}

/* SERVICES MENU AS FOUR STEPS, 14 Sep 2026. One dropdown replaces the Marketing and AI menus,
   which held about thirty links between them. Anchored to the left of its trigger rather than
   centred on it: the trigger sits near the left of the nav, and a centred four column panel
   would hang off the left edge of the window. */
.nav .nav__mega.nav__mega--steps{left:-60px;transform:translate(0,8px);grid-template-columns:repeat(4,minmax(170px,1fr));max-width:min(900px,calc(100vw - 28px));width:max-content}
.nav .nav__has:hover .nav__mega.nav__mega--steps,.nav .nav__has:focus-within .nav__mega.nav__mega--steps{transform:translate(0,0)}
.nav__mega--steps .nav__all a{display:inline-block;margin-right:26px}

/* PHONE MENU, built by /js/menu.js from the page's own nav. */
.hdr__burger{display:none}
@media(max-width:880px){
  .hdr__burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:44px;height:40px;margin-left:10px;padding:0 11px;background:none;border:1px solid var(--line,#2a2a33);border-radius:2px;cursor:pointer;flex:none;position:relative}
  .hdr__burger span{display:block;height:1.5px;background:var(--paper,#f4f2ee);transition:transform .25s,opacity .25s}
  .hdr__burger em{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .mnav-open .hdr__burger span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
  .mnav-open .hdr__burger span:nth-child(2){opacity:0}
  .mnav-open .hdr__burger span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
  .mnav-open .hdr{background:rgba(8,8,10,.97)}
  html.mnav-open,.mnav-open body{overflow:hidden}
}
.mnav{position:fixed;left:0;right:0;bottom:0;top:66px;z-index:99;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--black,#08080a);border-top:1px solid var(--line-soft,#1a1a21);font-family:var(--body,"Inter",system-ui,sans-serif)}
.mnav[hidden]{display:none!important}
.mnav__in{padding:18px 20px 40px;max-width:560px;margin:0 auto}
.mnav a{display:block;text-decoration:none;color:var(--paper,#f4f2ee)}
.mnav a.mnav__audit{background:var(--lime,#ccff33);color:#08080a;font-family:var(--display,system-ui,sans-serif);font-weight:700;font-size:1.05rem;padding:15px 18px;margin-bottom:18px;border-radius:2px}
.mnav__grp{border-top:1px solid var(--line-soft,#1a1a21);padding:14px 0 8px}
.mnav__ct{display:block;font-family:var(--mono,ui-monospace,monospace);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--lime,#ccff33);margin-bottom:6px}
.mnav__grp a{padding:9px 0}
.mnav__grp a b{display:block;font-weight:500;font-size:.98rem}
.mnav__grp a small{display:block;font-size:.8rem;color:var(--dim,#6b6875);margin-top:2px}
.mnav__all{border-top:1px solid var(--line-soft,#1a1a21);padding:10px 0}
.mnav__all a{color:var(--lime,#ccff33);font-size:.92rem;padding:9px 0}
.mnav a.mnav__top{font-family:var(--display,system-ui,sans-serif);font-weight:600;font-size:1.15rem;padding:14px 0;border-top:1px solid var(--line-soft,#1a1a21)}
.mnav a[aria-current]{color:var(--lime,#ccff33)}
.mnav a.mnav__tel{margin-top:22px;text-align:center;border:1px solid var(--lime,#ccff33);color:var(--lime,#ccff33);padding:14px;font-weight:600;border-radius:2px}
