/* --- Patch lisibilité Services (espacements/typo uniquement) --- */
/* Ne modifie PAS les couleurs, ombres, bordures existantes */
/* Touche uniquement aux marges, line-height, padding pour améliorer la lisibilité */

:root {
  --svc-text: #ffffff;
  --svc-muted: #cfcfcf;
}

/* Conteneur principal de la page services */
main {
  max-width: 1100px;
  margin-inline: auto;
  padding: clamp(16px, 2vw, 32px);
}

/* Titres généraux (h1, h2, h3) */
h1, h2, h3 {
  color: var(--svc-text);
  line-height: 1.25;
  letter-spacing: 0.2px;
  margin: 0 0 12px 0; /* réduit les titres collés */
}

/* Paragraphes */
p {
  color: var(--svc-muted);
  font-size: 1rem;
  line-height: 1.6; /* lisibilité du corps de texte */
  margin: 8px 0 0 0; /* évite le "collé" sous le titre */
}

/* Grille de services */
.service-grid,
div[class*="grid"] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: clamp(16px, 2vw, 24px); /* espace régulier entre cartes */
  align-items: stretch;
}

/* Cartes de service */
.service-card,
a[class*="glass"] {
  padding: clamp(16px, 1.8vw, 24px); /* aère interne sans changer le look */
  border-radius: inherit; /* respecte le design existant */
  backdrop-filter: inherit;
}

.service-card h2,
.service-card h3,
a[class*="glass"] h2,
a[class*="glass"] h3 {
  margin-bottom: 8px;
}

.service-card p,
a[class*="glass"] p {
  margin-top: 6px;
}

.service-card .cta,
.service-card a[href*="en-savoir-plus"],
a[class*="glass"] span {
  display: inline-block;
  margin-top: 12px;
}

/* Titres de sections "Services Spécialisés / Interventions Spéciales" */
.section-title,
h2[class*="text-center"] {
  text-align: center;
  margin: clamp(24px, 3vw, 40px) 0 8px;
  line-height: 1.2;
}

.section-subtitle,
p[class*="text-center"] {
  text-align: center;
  margin: 0 0 clamp(16px, 2vw, 24px) 0;
  line-height: 1.4;
}

/* Mobile : un peu plus d'air */
@media (max-width: 640px) {
  p {
    line-height: 1.7;
  }

  .service-card,
  a[class*="glass"] {
    padding: 18px;
  }
}
