@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,800;1,900&family=Barlow+Condensed:ital,wght@0,600;0,700;0,800;0,900;1,800;1,900&family=Bebas+Neue&family=Montserrat:ital,wght@0,800;0,900;1,800;1,900&display=swap');

:root {
  --font-body:'Barlow','Segoe UI',sans-serif;
  --font-condensed:'Barlow Condensed','Roboto Condensed',sans-serif;
  --font-display:'Montserrat','Barlow Condensed','Roboto Condensed',sans-serif;
  --font-industrial:'Bebas Neue','Barlow Condensed','Roboto Condensed',sans-serif;
}

html,body,button,input,textarea,select { font-family:var(--font-body); }
body { font-weight:400; }
p,li,input,textarea { font-family:var(--font-body); }
strong,b { font-weight:700; }

.nav a,.btn,.video-link,.outline-btn,.service-strip a {
  font-family:var(--font-condensed);
  font-weight:700;
  letter-spacing:.055em;
  text-transform:uppercase;
  white-space:nowrap;
}

.service-strip a {
  white-space:normal;
  text-align:center;
  line-height:1.15;
}

.eyebrow {
  font-family:var(--font-condensed);
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.hero-copy h1,.hero h1,.cta h2,.quote-band h2 {
  font-family:var(--font-display);
  font-weight:900;
  font-style:italic;
  text-transform:uppercase;
  line-height:.98;
  letter-spacing:-.032em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}

.section-intro h2,.home-section h2,.section-heading h2,.legal-copy h2 {
  font-family:var(--font-display);
  font-weight:900;
  font-style:normal;
  text-transform:uppercase;
  line-height:1.02;
  letter-spacing:-.022em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}

.service-card h3,.card h2,.card h3 {
  font-family:var(--font-industrial);
  font-weight:700;
  text-transform:uppercase;
  line-height:1.08;
  letter-spacing:.018em;
  overflow-wrap:normal;
  word-break:normal;
}

.service-card h3 { font-size:clamp(1.3rem,1.75vw,1.55rem); }
.card h2,.card h3 { font-size:1.65rem; }
.card a,.service-card a,.work-grid p {
  font-family:var(--font-condensed);
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.work-grid h3,.trust-row span,.testimonial cite,.footer strong {
  font-family:var(--font-condensed);
  font-weight:700;
  letter-spacing:.035em;
  text-transform:uppercase;
}

.footer,.testimonial,.card,.service-card p,.section-intro>p,.split p,.quote-band p {
  font-family:var(--font-body);
}

.footer strong { font-style:italic; }
.legal-copy { max-width:820px; }
.legal-copy h2 { margin:2rem 0 .65rem; font-size:clamp(1.35rem,2.5vw,1.8rem); }
.legal-copy p { color:#d5d5d5; font-size:1rem; line-height:1.75; }
.legal-copy a { color:var(--green); font-weight:700; }

@media(max-width:760px) {
  .hero-copy h1 { font-size:clamp(2.05rem,10.5vw,2.65rem); line-height:1; letter-spacing:-.025em; }
  .hero h1 { font-size:clamp(2.35rem,12vw,4rem); overflow-wrap:normal; }
  .section-intro h2,.home-section h2,.section-heading h2,.quote-band h2,.cta h2 { line-height:1.04; letter-spacing:-.015em; }
}

@media(max-width:440px) {
  .hero-copy h1 { font-size:clamp(1.9rem,9.8vw,2.25rem); letter-spacing:-.02em; }
  .nav a,.btn { letter-spacing:.04em; }
}
