html, body {
  max-width: 100%;
  overflow-x: hidden;
}
@media (max-width: 768px) {

  html, body {
    max-width: 100%;
    overflow-x: hidden;
  }

  * {
 
		
    font-size: 30px !important;
  }

  h3 {
    font-size: 30px !important;
  }
  p {
    font-size: 18px;
    line-height: 1.6;
    text-align: justify !important;
}

li {
    text-align: justify !important;
}

.wp-block-page-blocks-info-box .description,
.wp-block-page-blocks-info-box [class*="description"] {
    text-align: justify !important;
}
}/* Menu : mettre "Prendre rendez-vous à l'agence" sur 2 lignes */
@media (min-width: 922px) {
    .menu-item a[href*="prendre-rendez-vous-a-lagence"] {
        max-width: 170px;
        white-space: normal;
        line-height: 1.2;
        text-align: center;
    }
}/* Justifier la description des blocs Info Box */
.justifier-texte .gb-infobox-description,
.justifier-texte p {
    text-align: justify !important;
}/* Réduction globale de la taille des textes sur mobile */
@media (max-width: 767px) {
  /* Titres principaux (H1, H2, H3) */
  h1 { font-size: 24px !important; }
  h2 { font-size: 20px !important; }
  h3 { font-size: 18px !important; }
  
  /* Textes de paragraphe et descriptions */
  body, p, .gb-infobox-description {
    font-size: 17px !important;
    line-height: 1.5 !important;
  }
}@media (max-width: 767px) {
  /* 1. Titres de section et formulaires */
  .wpforms-form h3, 
  h2, h3 {
    font-size: 20px !important;
  }

  /* 2. Formulaire WPForms (Labels et Champs) */
  div.wpforms-container .wpforms-form .wpforms-field-label {
    font-size: 14px !important;
  }
  div.wpforms-container .wpforms-form input[type="text"],
  div.wpforms-container .wpforms-form input[type="tel"] {
    font-size: 14px !important;
    padding: 6px 10px !important;
    height: auto !important;
  }

  /* 3. Boutons (Envoyer & Réserver un RDV) */
  .wpforms-submit-container button,
  .wp-block-button__link,
  a.button {
    font-size: 14px !important;
    padding: 8px 16px !important;
  }

  /* 4. Listes de services (Petits travaux, etc.) */
  .wp-block-list li,
  .gb-icon-list-items .gb-icon-list-item {
    font-size: 12px !important;
    line-height: 1.3 !important;
    margin-bottom: 12px !important;
  }
}@media (max-width: 767px) {
  /* 1. Titres principaux de section (ex: Nos services, Services supplémentaires) */
  h1, h2, .gb-headline-text {
    font-size: 22px !important;
    line-height: 1.2 !important;
  }

  /* 2. Titres des cartes (ex: Construction & Gros Œuvre) et éléments de liste */
  h3, h4, 
  .gb-container h3,
  .gb-icon-list-items .gb-icon-list-item,
  .gb-icon-list-text {
    font-size: 16px !important;
    line-height: 1.3 !important;
  }

  /* 3. Textes de description (ex: Nous réalisons vos projets...) */
  @media (max-width: 767px) {
    .gb-infobox-description,
    .gb-infobox-description p,
    .gb-infobox-description span {
        font-size: 16px !important;
        line-height: 1.5 !important;
        text-align: left !important;
        word-spacing: normal !important;
    
}

  /* 4. Liens et boutons (ex: En savoir plus ->) */
  a, 
  .gb-button, 
  .gb-button-text {
    font-size: 13px !important;
  }

  /* 5. Espacement vertical entre les éléments de liste */
  .gb-icon-list-items .gb-icon-list-item {
    margin-bottom: 10px !important;
  }@media only screen and (max-width: 767px) {
  /* Forcer la moitié de l'écran pour la section Hero */
  body.home article .entry-content > .gb-container:first-child,
  body.home article .entry-content > .wp-block-cover:first-child,
  body.home main > .gb-container:first-child,
  body.home .gb-container-hero {
    height: 50vh !important;
    min-height: 50vh !important;
    max-height: 50vh !important;
    overflow: hidden !important;
  }

  /* Redimensionner la vidéo en fond */
  body.home article .entry-content > .gb-container:first-child video,
  body.home article .entry-content > .wp-block-cover:first-child video,
  body.home .gb-container-hero video {
    height: 100% !important;
    max-height: 50vh !important;
    object-fit: cover !important;
  }
}/* Vidéo d'accueil */
.hero-video {
    height: 100vh;
    overflow: hidden;
}

.hero-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Tablette */
@media (max-width: 1024px) {
    .hero-video {
        height: 55vh;
    }
}

/* Téléphone */
@media (max-width: 600px) {
    .hero-video {
        height: 45vh;
    }
}@media (max-width: 1024px) {
  .hero-video,
  .hero-video video,
  .video-section,
  .video-section video {
    height: 55vh !important;
    min-height: 0 !important;
    max-height: 55vh !important;
  }

  .hero-video video,
  .video-section video {
    width: 100% !important;
    object-fit: cover !important;
  }
}@media (max-width: 767px) {
    .titre-video-accueil {
        font-size: 38px !important;
        line-height: 1.1 !important;
    }
}@media (max-width: 767px) {
    .titre-video-accueil .gb-headline-text,
    .titre-video-accueil h1,
    .titre-video-accueil h2,
    .titre-video-accueil h3 {
        font-size: 36px !important;
        line-height: 1.1 !important;
    }
}@media (max-width: 767px) {
    .gb-infobox-description,
    .gb-infobox-description p,
    .gb-infobox-description span {
        text-align: left !important;
        text-align-last: left !important;
        word-spacing: 0 !important;
        letter-spacing: 0 !important;
    }
}@media (max-width: 767px) {
  .contact-mobile .uagb-icon-list__label {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}