/* Lisibilité sur téléphone */
@media screen and (max-width: 768px) {
  /* Le thème réduisait les textes à 12 px environ : on revient à leur taille normale (16 px) */
  .text-root { --mobile-font-downscale: 1 !important; --tablet-font-downscale: 1 !important; }
  .text-root p, .text-root li { line-height: 1.6; }
  /* Les blocs animés qui entrent par la droite élargissaient la page : le téléphone dézoomait tout le site */
  .animation-fade-left { transform: none !important; }
  html, body { overflow-x: clip; }
}

/* Accueil : titre et sous-titre de la grande image, réduits sur téléphone */
@media screen and (max-width: 768px) {
  .heading-module-0a71d3f8-c3e7-4317-9fbf-9968b12ae50c h1 { line-height: 1.15; hyphens: manual; -webkit-hyphens: manual; }
  .heading-module-0a71d3f8-c3e7-4317-9fbf-9968b12ae50c .desktop-font-size-72 { font-size: 38px; }
  .heading-module-0a71d3f8-c3e7-4317-9fbf-9968b12ae50c .desktop-font-size-28 { font-size: 19px; line-height: 1.4; display: inline-block; margin-top: 10px; }
}

/* Contact : titre « Votre partenaire de proximité en Seine-et-Marne », réduit sur téléphone */
@media screen and (max-width: 768px) {
  .heading-module-5ff3b39f-3af9-46de-902d-2cf3bf50e7b7 h1 { line-height: 1.25; hyphens: manual; -webkit-hyphens: manual; }
  .heading-module-5ff3b39f-3af9-46de-902d-2cf3bf50e7b7 .desktop-font-size-48 { font-size: 28px; }
}

/* Harmonisation des tailles sur téléphone :
   titres de page 28-30 px, titres de section 25 px, sous-titres 21 px, texte 16 px, légendes 14 px */
@media screen and (max-width: 768px) {
  /* Boutons (« Obtenir un devis », « Demandez un devis », « Accepter »…) : 12 px -> 16 px */
  .button-button { font-size: 16px !important; }
  /* Légendes des photos de la galerie : 12 px -> 14 px */
  .image-gallery-title, .image-gallery-title span { font-size: 14px !important; line-height: 1.35; }
  /* Message d'accord avant d'afficher la carte Google : 24 px -> 18 px */
  .module-blocker-title { font-size: 18px !important; line-height: 1.35; }
  /* Contact : « Contactez-nous » à la même taille que le titre au-dessus */
  .heading-module-4085dc3c-dc93-426d-8867-e6378e610ddd h1 { font-size: 28px !important; }
}

/* Espacements verticaux harmonisés sur téléphone :
   ~50 px entre un texte et son image, ~70 à 100 px entre deux sections */
@media screen and (max-width: 768px) {
  /* Lignes vides laissées dans le contenu (paragraphes sans texte) */
  .spx-vide { display: none !important; }
  /* Marges haute et basse de chaque bloc de page (32 à 80 px selon les pages) ramenées à 32 px */
  main > .section-root .section-content > .grid-row-root { padding-top: 32px !important; padding-bottom: 32px !important; }
  main > .section-root .section-content .grid-row-root .grid-row-root { padding-top: 0 !important; padding-bottom: 0 !important; }
  /* Sections ajoutées (accueil, à propos, FAQ) */
  .spx { padding-top: 40px; padding-bottom: 40px; }
}

/* ---------- Version ordinateur : même logique d'harmonisation ----------
   titres de page 40 px, titres de section 33 px, sous-titres 28 px, introductions 20 px, texte 16 px */
.spx-vide { display: none !important; }
@media screen and (min-width: 769px) {
  /* Titres de page à la même taille (Contact, FAQ) */
  .heading-module-5ff3b39f-3af9-46de-902d-2cf3bf50e7b7 .desktop-font-size-48 { font-size: 40px; }
  .spx-faq-hero h1 { font-size: 40px; }
  /* Titres des sections ajoutées alignés sur ceux du site (33 px) */
  .spx h2 { font-size: 33px; }
  /* Textes d'introduction à 20 px (galerie et contact) */
  .heading-module-32050ed7-a864-4219-8f81-bc214bbae5bf .desktop-font-size-24 { font-size: 20px; }
  /* Message d'accord avant la carte Google */
  .module-blocker-title { font-size: 18px !important; line-height: 1.35; }
  /* Marges des sections : 32 à 80 px selon les pages -> 48 px partout */
  main > .section-root .section-content > .grid-row-root { padding-top: 48px !important; padding-bottom: 48px !important; }
  main > .section-root .section-content .grid-row-root .grid-row-root { padding-top: 0 !important; padding-bottom: 0 !important; }
  .spx { padding-top: 56px; padding-bottom: 56px; }
  /* Les grandes images d'en-tête (accueil, galerie) gardent leur hauteur d'origine */
  main > .section-root:has(.heading-module-0a71d3f8-c3e7-4317-9fbf-9968b12ae50c) .section-content > .grid-row-root { padding-top: 64px !important; padding-bottom: 64px !important; }
  main > .section-root:has(.heading-module-0a71d3f8-c3e7-4317-9fbf-9968b12ae50c) .spx-vide { display: block !important; }
  main > .section-root:has(.heading-module-32050ed7-a864-4219-8f81-bc214bbae5bf) .section-content > .grid-row-root { padding-top: 0 !important; padding-bottom: 0 !important; }
}
