/* Site-wide components loaded by every page, alongside styles.css. */

/* eight nav items need a tighter gap before the mobile breakpoint */
@media(max-width:1150px){.desktop-nav{gap:20px;font-size:12px}}

/* the pricing bridge placed near the end of each service page */
.price-bridge{padding:clamp(56px,6.5vw,90px) var(--pad);display:flex;align-items:center;
  justify-content:space-between;gap:40px;flex-wrap:wrap;border-top:1px solid var(--line)}
.price-bridge p{max-width:660px;margin:0;
  font:500 clamp(19px,2.1vw,30px)/1.34 Manrope,Arial,sans-serif;letter-spacing:-.022em}
.price-bridge em{font-style:normal;color:#6f8f00}
.price-bridge .button{flex:0 0 auto}
@media(max-width:800px){.price-bridge{flex-direction:column;align-items:flex-start;gap:26px}}

/* the mobile menu now carries 11 items; it has to fit a short phone and scroll
   if it still does not. Without this the last link is sliced by the viewport. */
@media(max-width:800px){
  .mobile-menu{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
    padding-bottom:40px}
  .mobile-menu a{font-size:clamp(21px,6.2vw,30px);padding:11px 0}
}

/* MANUFACTURING is 6px too wide for the sector rows on a 320px phone */
@media(max-width:360px){
  .departments h3{font-size:clamp(15px,4.7vw,20px)}
}

/* footer: the sticky Book-a-free-audit bar sat on top of the last footer rows */
@media(max-width:800px){
  footer{padding-bottom:104px}
}

/* secondary footer links, kept out of the main columns so they do not read as a wall */
.footer-extra{display:flex;flex-wrap:wrap;gap:10px 26px;margin:0 0 40px;
  font:500 10px "DM Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}
.footer-extra a{color:var(--muted)}
.footer-extra a:hover{color:var(--ink)}

/* the compact footer was one run-on row; give it real columns and breathing room */
.compact-footer nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:12px 34px;align-content:start}
@media(max-width:800px){
  .compact-footer nav{grid-template-columns:1fr 1fr;gap:12px 20px}
}
