/* Typography-only overlay. Keep the existing online CSS, scripts and HTML structure. */
:root {
  --muratori-body-size: 1rem;
  --muratori-action-size: 0.8125rem;
  --muratori-note-size: 0.875rem;
  --muratori-caption-size: 0.75rem;
  --muratori-footer-size: 0.9375rem;
}
body .body-copy,
body main p.text-sm,
body .hero-content > p:not(.eyebrow),
body .field {
  font-size: var(--muratori-body-size);
}
body .field {
  line-height: 1.5;
}
body .button {
  font-size: var(--muratori-action-size);
}
body .eyebrow,
body .nav-link {
  font-size: var(--muratori-caption-size);
}
body .hero-caption,
body .image-tag {
  font-size: var(--muratori-caption-size);
}
body .image-tag {
  max-width: calc(100% - 32px);
}
body .service-card a[href*='contatti'] {
  font-size: var(--muratori-action-size);
}
body #quote-form > label {
  font-size: var(--muratori-body-size);
}
body #quote-form > label.flex,
body #quote-form #security-status,
body #quote-form #upload-help,
body #quote-form #turnstile-widget ~ p,
body #quote-form #form-feedback,
body #quote-form noscript p,
body #quote-form #retry-connection {
  font-size: var(--muratori-note-size);
  line-height: 1.7;
}
body main p.text-xs,
body main p.text-\[11px\] {
  font-size: var(--muratori-note-size);
}
body main .hero-bottom p {
  font-size: var(--muratori-caption-size);
}
body footer .footer-link {
  font-size: var(--muratori-footer-size);
  line-height: 1.75;
  min-height: 40px;
  padding-block: 4px;
  color: rgb(255 255 255 / 0.75);
}
body footer > .shell:not(.footer-bottom) .text-sm,
body footer address {
  font-size: var(--muratori-footer-size);
  line-height: 1.75;
  color: rgb(255 255 255 / 0.75);
}
body footer .footer-bottom {
  font-size: var(--muratori-action-size);
  line-height: 1.85;
  color: rgb(255 255 255 / 0.75);
}
@media (min-width: 640px) and (max-width: 1023px) {
  body footer > .shell.grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  body main .hero-bottom p {
    font-size: var(--muratori-caption-size);
  }
}
@media (max-width: 479px) {
  body .button {
    padding-inline: 16px;
    gap: 16px;
    letter-spacing: 0.025em;
  }
  body .hero-content {
    padding-bottom: 260px;
  }
  body .hero-caption {
    bottom: 195px;
    left: 24px;
    right: 24px;
  }
  body .hero-bottom .shell {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  body .hero-bottom .shell > div {
    gap: 14px;
  }
  body .hero-bottom p {
    line-height: 1.5;
  }
}
