/* MatCode typography refinement — production override, 2026-09-09 */
:root {
  --matcode-heading-tracking: -0.026em;
  --matcode-display-tracking: -0.028em;
  --matcode-body-tracking: 0.006em;
  --matcode-ui-tracking: 0.012em;
}

html {
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
button,
input,
select,
textarea {
  font-family: var(--font-raleway, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif);
}

body {
  letter-spacing: var(--matcode-body-tracking);
}

button,
input,
select,
textarea {
  letter-spacing: var(--matcode-ui-tracking);
}

h3 {
  letter-spacing: -0.012em;
}

.gravity-hero-title {
  letter-spacing: var(--matcode-display-tracking) !important;
  line-height: 0.92 !important;
}

@media (min-width: 768px) {
  .gravity-hero-title {
    font-size: clamp(60px, 6.25vw, 96px) !important;
  }
}

.gravity-content-section h2,
.gravity-local-section h2,
.gravity-faq-heading h2,
.brief-section-title,
.site-footer h2 {
  letter-spacing: var(--matcode-heading-tracking) !important;
  line-height: 0.96 !important;
}

.gravity-hero-aside p,
.gravity-content-section p,
.gravity-local-section p,
.gravity-faq-heading p,
.gravity-faq-item p,
.brief-section-copy,
.site-footer p,
.site-footer li {
  letter-spacing: var(--matcode-body-tracking);
}

.gravity-hero-aside p,
.gravity-content-section p,
.gravity-local-section p,
.gravity-faq-heading p,
.gravity-faq-item p,
.brief-section-copy {
  line-height: 1.58;
}

.gravity-nav,
.gravity-cta,
.gravity-hero-action,
.gravity-product-action,
.brief-inline-contact,
.brief-form-card button,
.brief-form-card input,
.brief-form-card select,
.brief-form-card textarea,
.footer-contact-pill,
.footer-legal-link {
  letter-spacing: var(--matcode-ui-tracking);
}

.gravity-kicker,
.font-mono,
.gravity-hero-services,
.site-footer h3 {
  letter-spacing: 0.2em !important;
}

@media (max-width: 767px) {
  :root {
    --matcode-heading-tracking: -0.018em;
    --matcode-display-tracking: -0.022em;
    --matcode-body-tracking: 0.004em;
  }

  .gravity-hero-title {
    line-height: 0.94 !important;
  }

  .gravity-content-section h2,
  .gravity-local-section h2,
  .gravity-faq-heading h2,
  .brief-section-title,
  .site-footer h2 {
    line-height: 1 !important;
  }
}
