/* Finitions globales : lecture, toucher et alignement sur tous les écrans. */
html { overflow-x: clip; }

img { max-width: 100%; }

a, button, summary, input, textarea, select { -webkit-tap-highlight-color: transparent; }

a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 3px solid #0a7892;
  outline-offset: 3px;
}

.hero-contact,
.contact-details,
.footer-links,
.legal-content,
.seo-keywords { overflow-wrap: anywhere; }

.quick-response { line-height: 1.45; }

@media (max-width: 720px) {
  .hero-contact {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
    line-height: 1.45;
  }

  .hero-contact a:last-child { min-width: 0; }

  .section-heading h2 { max-width: 11ch; }

  .reviews-heading h2 { letter-spacing: -0.7px; }

  .review-access .button,
  .review-form button,
  .more-reviews,
  .review-card .review-more { min-height: 32px; }

  .contact-details { max-width: 290px; margin-left: auto; margin-right: auto; }
}
