/*
Theme URI:    https://fr.wordpress.org/themes/astra/
 Description:  Astra-child
 Author:       Ninon Delfosse - Studio bloomy
 Author URI:   http://studiobloomy.com
 Template:     astra
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  astra-child
*/

/* Assurez-vous que le contenu est visible une fois la page chargée */
body.loaded {
  display: block; /* Afficher le contenu une fois la page chargée */
}

body {
  display: none; /* Cache tout le contenu par défaut */
}

#content {
  flex: 1;
}

  .cta-footer .uagb-container-inner-blocks-wrap {
    margin-top: 0!important;
    margin-bottom: 0!important;
  }
  
.section-bloomy .cards .uagb-container-inner-blocks-wrap {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


.information .uagb-container-inner-blocks-wrap {
  margin-top: 0 !important; /* Remplace la marge par 0 pour ne pas l'appliquer dans .information */
  margin-bottom: 64px!important;
}


/* Marge en haut et en bas des blocs */
.section-bloomy .uagb-container-inner-blocks-wrap {
  margin-top: 120px !important; 
  margin-bottom: 120px !important; 
}

/* Marge en haut et en bas des blocs */
.section-bloomy-image .uagb-container-inner-blocks-wrap {
  margin-bottom: 80px !important;  
  margin-top: 140px !important; 
}

/* Marge en haut premieres sections pages services */
.first-section-services {
  padding: 120px 0 64px 0 !important; 
}

/* Marge en haut et en bas des blocs */
.uagb-container-inner-blocks-wrap {
  margin-bottom: 64px !important; 
}

/* marge en haut en en bas bloc article */
.single-post .uagb-container-inner-blocks-wrap:not(.information) {
  margin: 64px 0 !important;
}

/* Couleur du titre d'article au survol/focus */
h2.entry-title.ast-blog-single-element a {
  transition: color .25s ease;
}

h2.entry-title.ast-blog-single-element a:hover,
h2.entry-title.ast-blog-single-element a:focus,
h2.entry-title.ast-blog-single-element a:focus-visible {
  color: var(--ast-global-color-1) !important;
}

/* Titre UAGB : couleur au hover/focus */
.uagb-post__title.uagb-post__text a {
  transition: color .25s ease;
}

.uagb-post__title.uagb-post__text a:hover,
.uagb-post__title.uagb-post__text a:focus,
.uagb-post__title.uagb-post__text a:focus-visible {
  color: var(--ast-global-color-1) !important;
}

/* Ajouter des marges latérales sous 976px */
@media (max-width: 976px) {
  .uagb-container-inner-blocks-wrap {
    padding: 0 35px; /* Ajoute une marge de 20px sur les côtés */
  }
}

.intro-section .wp-block-uagb-container.uagb-block-0a5f509d {
  margin: 0 0 !important;
}

/* Header */

/* Aligner le contenu du header à 1320px max */
#masthead .ast-container {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

/* Logo */

img.custom-logo, img.astra-logo-svg {
  border-radius: 0; /* Coins arrondis */
}


.page-id-1920 .ast-transparent-header #ast-fixed-header .main-header-bar,
.page-id-1920 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-1920 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-1920 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-1920 #ast-fixed-header .main-header-bar,
.page-id-303 .ast-transparent-header #ast-fixed-header .main-header-bar,
.page-id-303 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-303 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-303 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-303 #ast-fixed-header .main-header-bar,
.page-id-36 .ast-transparent-header #ast-fixed-header .main-header-bar,
.page-id-36 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-36 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-36 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-36 #ast-fixed-header .main-header-bar,
.page-id-3 .ast-transparent-header #ast-fixed-header .main-header-bar,
.page-id-3 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-3 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-3 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-3 #ast-fixed-header .main-header-bar,
.page-id-2263 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-2263 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-2263 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-2263 #ast-fixed-header .main-header-bar,
.page-id-1937 .ast-transparent-header #ast-fixed-header .main-header-bar,
.page-id-1937 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-1937 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-1937 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-1937 #ast-fixed-header .main-header-bar,
.page-id-2226 .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-2226 .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-2226 .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.page-id-2226 #ast-fixed-header .main-header-bar {
    background: var(--ast-global-color-4) !important;
}

/* Cible la page des articles avec la classe 'blog' */
.blog .ast-transparent-header #ast-fixed-header .main-header-bar,
.blog .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.blog .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.blog .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.blog #ast-fixed-header .main-header-bar {
    background: var(--ast-global-color-4) !important;
}

/* Cible les pages d'archive (en cas de page archive d'articles) */
.archive .ast-transparent-header #ast-fixed-header .main-header-bar,
.archive .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.archive .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.archive .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.archive #ast-fixed-header .main-header-bar {
    background: var(--ast-global-color-4) !important;
}

/* Cibler toutes les pages des articles individuels (single post) */
.single-post .ast-transparent-header #ast-fixed-header .main-header-bar,
.single-post .ast-transparent-header.ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.single-post .ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.single-post .ast-primary-sticky-header-ast-primary-sticky-enabled .ast-main-header-wrap .main-header-bar.ast-header-sticked,
.single-post #ast-fixed-header .main-header-bar {
    background: var(--ast-global-color-4) !important;
}

/* Fin Header */

/* Page site en construction */
.uag-image-704, .uag-image-703 {
  border-radius: 0; /* Coins arrondis */
  margin-bottom: 3px;
}

.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-4c22d32e > .uagb-container-inner-blocks-wrap {
  margin-top: 128px !important;
}

/* Afficher le menu mobile uniquement sur les écrans de moins de 1024px */

/* Rajouter espace au dessus du menu mobile */
@media (max-width: 1024px) {
  main {
    padding-bottom: 64px; /* Ajuste la marge pour les petits écrans */
  }
}

@media (max-width: 1024px) {
  #mobile-menu-container {
      display: block; /* Afficher le menu mobile */
  }
}

/* Par défaut, afficher les éléments originaux et masquer les éléments abrégés du menu mobile */
.menu-item-mobile {
  display: none;
}

/* Pour les écrans de 600 pixels et moins, afficher les éléments abrégés du menu mobile et masquer les éléments originaux */
@media (max-width: 600px) {
  .menu-item {
      display: none;
  }
  .menu-item-mobile {
      display: inline-block;
  }
}

/* Styles de surbrillance généraux */
.highlight, .highlight-two, .custom-highlight, .custom-highlight-two {
  position: relative;
  display: inline-block; /* Assure que chaque mot se comporte comme une entité séparée */
  padding: 0 24px;
  border-radius: 48px;
}

.highlight-word {
  padding: 0 2px;
}

/* Réduire la taille des highlight sur mobile */
@media (max-width: 768px) {
.highlight, .highlight-two, .custom-highlight, .custom-highlight-two {
  padding: 0 12px;
  }
}

/* Styles de surbrillance généraux */
.highlight, .highlight-two, .custom-highlight-two {
  position: relative;
  display: inline-block;
  padding: 0 24px;
  border: 2px solid var(--ast-global-color-0);
  border-radius: 48px;
}

.highlight-before, .highlight-two-before, 
.custom-highlight-before, .custom-highlight-two-before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  border-radius: 48px;
  z-index: -1;
  transition: width 1s ease;
}

.custom-highlight-before, .custom-highlight-two-before {
  background-color: var(--ast-global-color-8);
  border-radius: 48px;
}

/* Surbrillance activée */
.custom-highlight-before.full, .custom-highlight-two-before.full {
  width: 100%;
}

/* Texte associé à la surbrillance */
.text-content, .text-content2 {
  opacity: 0;
  color: transparent;
  transition: color 0.5s ease, opacity 0.5s ease;
  position: relative;
  z-index: 1;
}

.custom-highlight-before.full + .text-content {
  opacity: 1;
  color: var(--ast-global-color-2);
}

/* Pour masquer le contenu lorsque la classe hide-content est appliquée au body */
body.hide-content {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

/* Animation boutons */
.uagb-buttons-repeater:hover .uagb-button__icon {
  transform: translateX(5px); /* Déplace l'icône de 5 pixels vers la droite lors du hover */
  transition: transform 0.3s ease; /* Ajoute une transition pour smooth l'animation */
}

/* Menu mobile */

/* Menu mobile sticky */
#mobile-menu-container {
  position: fixed; /* Fixer le menu mobile en bas */
  bottom: 0; /* Coller au bas de l'écran */
  left: 0; /* S'assurer qu'il commence bien à gauche */
  width: 100%; /* Utiliser toute la largeur de l'écran */
  background-color: var(--ast-global-color-8);
  color: var(--ast-global-color-2);
  text-align: center;
  z-index: 1000; /* Le menu mobile doit être au-dessus du menu des services */
  height: 80px; /* Hauteur du menu mobile */
  border-top: 1px solid #f4ddd4; /* Séparation visuelle */
}

/* Cacher le menu mobile lors du défilement */
.hidden {
  transform: translateY(100%) !important;
  opacity: 0 !important;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out !important;
}

/* Afficher le menu mobile lors du défilement vers le haut */
.sticky-visible {
  transform: translateY(0) !important;
  opacity: 1 !important;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out !important;
}

/* Pour les petits écrans */
@media (max-width: 600px) {
  .menu-item {
    display: none;
  }
  .menu-item-mobile {
    display: inline;
  }
}

/* Pour les grands écrans */
@media (min-width: 601px) {
  .menu-item-mobile {
    display: none;
  }
}

#mobile-menu-container ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  height: 80px; /* Hauteur du menu mobile */
  column-gap: 0; /* Supprimer tout espace entre les colonnes */
}

#mobile-menu-container li {
  flex: 1; /* Chaque onglet prendra 100% de la largeur disponible */
  display: inline-block;
  height: 100%; /* Assure que chaque onglet prend toute la hauteur */
}

#mobile-menu-container a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: inherit;
  font-size: 14px; /* Taille du texte */
  line-height: 1.2; /* Contrôle la hauteur de ligne du texte */
  position: relative;
  transition: background-color 0.3s, color 0.3s; /* Transition pour la couleur et l'arrière-plan */
  height: 100%; /* Faire en sorte que le lien prenne toute la hauteur de son parent */
  width: 100%; /* Assure que le lien prend toute la largeur de son parent */
  gap: 4px;
}

/* Effet d'état actif */
#mobile-menu-container .current-menu-item a,
#mobile-menu-container a.active {
  background-color: #f4ddd4; /* Couleur de fond pour les onglets actifs */
  color: var(--ast-global-color-3); /* Couleur du texte pour les onglets actifs */
  font-weight: bold;
}

/* Supprimer l'effet du cercle */
#mobile-menu-container a::before {
  content: none; /* Désactiver la pseudo-classe */
}

/* Survol */
#mobile-menu-container a:hover {
  background-color: var(--ast-global-color-2); /* Couleur de fond au survol */
  color: var(--ast-global-color-6); /* Couleur du texte au survol */
}

#mobile-menu-container a i {
  font-size: 20px;
  margin-bottom: 4px;
}

/* Fin menu mobile */


/* Styles pour les boutons au survol */
.wp-block-button__link.wp-element-button.smooth-corner-button:hover {
  background-color: var(--ast-global-color-0);
  color: var(--ast-global-color-5) !important; /* Couleur du texte au survol du bouton */
}

:where(body .is-layout-flex) {
  gap: 24px;
}

/* Onglet */
.uagb-block-21f7a91f.uagb-tabs__hstyle3-desktop > .uagb-tabs__body-wrap {
  border-top-right-radius: 12px !important;
  border-top-left-radius: 12px !important;
  border-bottom-right-radius: 12px !important;
  border-bottom-left-radius: 12px !important;
}

/* Titre */
.uagb-tabs__wrap ul.uagb-tabs__panel li.uagb-tab a, .uagb-block-21f7a91f.uagb-tabs__wrap ul.uagb-tabs__panel li.uagb-tab {
  border-top-left-radius: 12px ;
  border-top-right-radius: 12px ;
}

.ast-builder-menu-1 {
  display: flex!important;
  justify-content: space-around!important; /* Distribue l'espace de façon égale */
  flex-wrap: nowrap!important;
  padding: 0;
}

a.menu-link::before:hover {
  margin: 12px 18px;
}

/* Style de survol pour les onglets */
.uagb-tabs-list:not([aria-selected="true"]):hover {
  background-color: var(--ast-global-color-4) !important; /* Couleur de fond au survol */
  color: var(--ast-global-color-0) !important; /* Couleur du texte au survol */
}

/* Désactive le style de survol pour l'onglet déjà actif */
.uagb-tab[aria-selected="true"] .uagb-tabs-list:hover {
  background-color: var(--ast-global-color-2) !important; /* Couleur de fond de l'onglet actif */
  color: var(--ast-global-color-5) !important; /* Couleur du texte de l'onglet actif */
}

.uagb-tabs__wrap.uagb-tabs__hstyle1-desktop ul.uagb-tabs__panel, .uagb-tabs__wrap.uagb-tabs__hstyle2-desktop ul.uagb-tabs__panel, .uagb-tabs__wrap.uagb-tabs__hstyle3-desktop ul.uagb-tabs__panel, .uagb-tabs__wrap.uagb-tabs__hstyle4-desktop ul.uagb-tabs__panel, .uagb-tabs__wrap.uagb-tabs__hstyle5-desktop ul.uagb-tabs__panel {
  margin-left: 16px;
}

@media only screen and (max-width: 1083px) {
  .specialized-tabs-block {
    display: none !important;
  }
}

/* Accordeon */
.uagb-faq-content p {
  margin: 0;
}

.uagb-block-8d7d9964 .uagb-faq-item {
  background-color: var(--ast-global-color-1) !important; /* Couleur de fond des onglets */
}

h4.uagb-question {
  color: var(--ast-global-color-5) !important; /* Couleur des noms du domaine */
}

.uagb-block-8d7d9964 .uagb-faq-item[aria-expanded="true"] {
  background-color: var(--ast-global-color-2) !important; /* Couleur de fond des onglets actifs */
  color: var(--ast-global-color-5) !important; /* Couleur du texte des domaines */
}

/* Couleur texte hover */
.uagb-faq-questions-button:hover h4.uagb-question {
  color: var(--ast-global-color-0) !important;
}

.uagb-block-8d7d9964 .uagb-faq-item[aria-expanded="true"] .uagb-faq-icon-wrap svg {
  fill: var(--ast-global-color-5) !important;
}

/* Styles spécifiques pour l'icône de l'accordéon */
.uagb-block-8d7d9964 .uagb-faq-item .uagb-faq-icon-wrap svg {
  fill: var(--ast-global-color-5) !important;
}

/* Style de survol pour les onglets de l'accordéon */
.uagb-faq-questions-button:not(.uagb-faq-item-active):hover {
  background-color: var(--ast-global-color-4) !important; /* Couleur de fond au survol */
  color: var(--ast-global-color-0) !important; /* Couleur du texte au survol */
}

/* Désactive le style de survol pour l'onglet déjà actif */
.uagb-faq-item-active .uagb-faq-questions-button:hover, .uagb-faq-item-active .uagb-faq-questions-button:hover h4.uagb-question  {
  background-color: var(--ast-global-color-2) !important; /* Couleur de fond de l'onglet actif */
  color: var(--ast-global-color-5) !important; /* Couleur du texte de l'onglet actif */
}

@media only screen and (min-width: 1084px) {
  .competence-accordion {
    display: none !important;
  }
}

.ast-main-header-bar-alignment {
  height: 100%;
}

.main-header-menu {
  display: flex; /* Utilise flexbox pour que les éléments restent sur une seule ligne */
  justify-content: space-around; /* Distribue uniformément l'espace entre les éléments */
  flex-wrap: nowrap; /* Empêche les éléments de passer sur une nouvelle ligne */
}

/* Conteneur pour le texte et le rectangle */
.menu-link {
  position: relative;
  display: inline-block;
  transition: all 0.3s ease; /* Animation de transition pour tous les changements */
}

/* Rectangle arrondi vide pour les éléments du menu principal uniquement */
.main-navigation .menu-item > .menu-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 32px; /* Arrondir la bordure du rectangle */
  opacity: 0; /* Commence avec une opacité de zéro */
  transition: opacity 0.3s ease; /* Animation de transition pour l'opacité */
  height :100%
}

/* Effet de survol pour les éléments du menu principal uniquement */
.main-navigation .menu-item:hover > .menu-link::before {
  opacity: 1; /* Augmente l'opacité au survol */
}

/* Rectangle arrondi vide pour les éléments du sous-menu */
.main-navigation .sub-menu .menu-link {
  position: relative;
  display: inline-block;
  padding: 8px 16px;
}

.main-navigation .sub-menu .menu-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 0.5px solid var(--ast-global-color-1); /* Couleur de la bordure */
  border-radius: 16px; /* Arrondir la bordure du rectangle */
  opacity: 0; /* Commence avec une opacité de zéro */
  transition: opacity 0.3s ease; /* Animation de transition pour l'opacité */
}

/* Effet de survol pour les éléments du sous-menu */
.main-navigation .sub-menu .menu-item:hover > .menu-link::before {
  opacity: 1; /* Augmente l'opacité au survol */
}

/* Ajout d'un fond blanc arrondi pour le conteneur du sous-menu */
.main-navigation .sub-menu {
  border-radius: 0 16px 16px 16px; /* Arrondir les coins sauf en haut à gauche */
}

/* Supprimer le rectangle arrondi de l'élément parent quand le sous-menu est survolé */
.main-navigation .menu-item:hover > .menu-link::before,
.main-navigation .menu-item:hover .sub-menu:hover > .menu-link::before {
  opacity: 0;
}

/* Supprimer le rectangle arrondi de l'élément parent quand un élément du sous-menu est survolé */
.main-navigation .menu-item:hover > .menu-link:hover::before,
.main-navigation .menu-item:hover .sub-menu .menu-link:hover::before {
  opacity: 1;
}

.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item {
  line-height: 24px;
}

/* Fond menu coté tablette */
.ast-mobile-popup-drawer.active .ast-mobile-popup-inner, .ast-header-break-point .main-header-menu {
  background-color: var(--ast-global-color-5);
}

/* Marge icone */
span.uagb-svg-wrapper {
  margin-bottom: 16px !important;
}

/* Cacher le back-to-top lorsqu'il y a le menu mobile */
@media only screen and (max-width: 767px) {
  #ast-scroll-top {
    display: none !important;
  }
}

.content {
  font-size: 36px;
  font-weight: 900;
  color: var(--ast-global-color-5);
  padding-left: 0.25em;
  margin: 0;
  text-transform: uppercase;
  margin-top: 4px;
}

@media only screen and (max-width: 767px) {
  .content {
      font-size: 2rem !important;
      padding-left: 0.25em;
  }
}

.outer {
  overflow: hidden !important;
}

.outer div {
  display: inline-block;
}

.animation {
  font-family: 'Quicksand', sans-serif;
}

/* Texte de l'animation */
.text-scroll p {
  font-size: 40px!important;
  color: var(--ast-global-color-4);
}

/* Taille du texte pour les tablettes (entre 768px et 1024px) */
@media only screen and (max-width: 1024px) {
  .text-scroll h1, .entry-content h1 {
    font-size: 36px!important; /* Ajuste la taille pour les tablettes */
  }
}

/* Taille du texte pour les mobiles (moins de 768px) */
@media only screen and (max-width: 768px) {
  .text-scroll h1, .entry-content h1 {
    font-size: 28px!important; /* Ajuste la taille pour les mobiles */
  }
}

.loop {
  white-space: nowrap;
  animation: loop-anim 20s linear infinite;
  background-color: var(--ast-global-color-0); /* Couleur de fond */
}

@media only screen and (max-width: 767px) {
  .loop {
      animation: loop-anim 20s linear infinite;
  }
}

@keyframes loop-anim {
  0% {
      margin-left: 0;
  }
  100% {
      margin-left: -50% /* This works because of the div between "outer" and "loop" */
  }
}

/* Ajoutez une marge en bas à partir de la tablette (768 pixels et au-delà) */
@media only screen and (min-width: 768px) {
  .profile-picture .wp-image-374 {
    margin-bottom: 32px; /* Marge du bas */
  }
}

/* Formulaire */


.wpcf7 .wpcf7-submit:disabled {
  margin-top: 16px;
}

.wpcf7-form .required-field-indicator {
  color: var(--ast-global-color-6); /* Couleur * champs obligatoires */
}

input[type=email], input[type=number], input[type=password], input[type=reset], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
  background: var(--ast-global-color-5); /* Couleur de fond des champs de texte */
}

input {
  border-radius: 5px;
}

.wpcf7-form .wpcf7-checkbox, .wpcf7-form .wpcf7-radio {
    display: block;
    margin-bottom: 5px; /* Ajustez la valeur selon vos besoins */
}

.wpcf7-form .wpcf7-list-item {
  display: block;
  margin-bottom: 5px; /* marge en dessous des réponses */
}

.wpcf7-form .wpcf7-checkbox .wpcf7-list-item-label,
.wpcf7-form .wpcf7-radio .wpcf7-list-item-label {
  display: inline-block;
  margin-left: 5px;
}

.wpcf7-list-item {
  margin: 0;
}

label, legend {
  color: var(--ast-global-color-3);
}

label, legend {
 font-size: 17px;
}

.wpcf7 input[type=checkbox], .wpcf7 input[type=radio] {
  height: 1em;
}

/* Taille zone de texte message */
.wpcf7-form-control.wpcf7-textarea {
  width: 100%; /* Vous pouvez ajuster la largeur selon vos besoins */
  height: 150px; /* Ajustez la hauteur selon vos besoins */
}

/* Réinitialiser les marges des paragraphes */
.wpcf7-form p {
 margin-bottom: 0!important;
}

.last {
  margin-bottom: 20px!important; /* Ajoutez un espacement au-dessus si nécessaire */
}

/* Desktop (par défaut) */
.page-id-44 .wpcf7-form {
  padding: 40px !important;
}

/* Tablette + mobile */
@media (max-width: 1024px) {
  .page-id-44 .wpcf7-form {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}

  /* Si besoin, cibler aussi le conteneur interne */
  .page-id-44 .section-bloomy-contact .uagb-container-inner-blocks-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }


/* Centrage bouton */
.page-id-44 .wpcf7-form p:last-of-type {
    text-align: center;
}

/* Centrage bouton */
.page-id-44 .wpcf7-form .wpcf7-submit {
    display: inline-block;
}

.page-id-44 .wpcf7-form .wpcf7-submit label, legend {
    font-weight: 600!important;
}

/* Fin Formulaire */

/* Mes services */

/* Taille cards pour les écrans entre 671px et 768px */
@media (min-width: 672px) and (max-width: 768px) {
  .wp-block-uagb-container.solutions-buttons {
    display: flex;
    justify-content: space-between!important; /* Permet d'espacer les cartes */
    flex-wrap: nowrap!important; /* Empêche les cartes de passer à la ligne */
    flex-basis: calc((100% - 64px) / 3); /* Divise la largeur totale restante par 3 */
  }
}

/* Taille sous-titre solution a partir de 671px */
@media (min-width: 672px) {
  .solutions-buttons p.uagb-desc-text {
  font-size: 16px!important; /* Change la couleur en rose pour toutes les icônes */
}
}

/* Couleurs icones */
h4 .fas {
  color: var(--ast-global-color-6)!important; /* Change la couleur en rose pour toutes les icônes */
}

/* Couleurs separateurs */
.wp-block-uagb-separator__inner {
  color: var(--ast-global-color-0)!important; /* Change la couleur en rose pour toutes les icônes */
}

/* Couleurs puces */
ul li::marker {
  color: var(--ast-global-color-0); /* Remplacez par la couleur souhaitée pour les puces */
}

/* Espace entre les éléments de la liste, sauf dans #menu-menu-footer et #menu-mes-services */
ul li:not(#menu-menu-footer li):not(#menu-mes-services li):not(#menu-informations-legales li):not(#ast-hf-menu-1 li),
ol li:not(#menu-menu-footer li):not(#menu-mes-services li):not(#menu-informations-legales li):not(#ast-hf-menu-1 li) {
  margin-bottom: 8px; /* Ajustez la valeur selon vos besoins */
}

/* Processus */

/* Section "Mon accompagnement personnalisé" */

/* Étapes de processus */
.etapes-container {
  margin-top: 6%; /* Ajustez si nécessaire */
  display: grid;
  gap: 24px; /* Espace entre les étapes */
}

/* Sur tablette et écrans plus larges */
@media (min-width: 768px) {
  .etapes-container {
    grid-template-columns: 20% 1fr; /* Première colonne pour l'image, deuxième colonne pour le contenu */
    align-items: start; /* Alignement du contenu en haut de chaque étape */
  }
}

.etape {
  padding: 20px; /* Ajout de padding pour voir les limites du conteneur */
}

.step-icon img {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Sur mobile */
@media (max-width: 767px) {
.etapes-container {
  grid-template-columns: 1fr; /* Une seule colonne */
  padding: 0 10px; /* Réduire le padding sur les côtés */
}

.etape {
  padding: 10px; /* Réduire le padding pour les écrans plus petits */
}

.step-icon {
  width: 100%; /* Largeur maximale pour l'image sur mobile */
  margin-bottom: 10px; /* Espacement entre l'image et le contenu sur mobile */
}
}

.step-icon {
width: 20%; /* Largeur pour l'image sur les écrans larges */
margin-right: 5%;
}

.etape-content {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
}

/* Fin Section "Mon accompagnement personnalisé */

/* Section contact */
/* Lien contact */

.production-link {
  display: inline-flex;
  align-items: center;
}

.icon-wrapper {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-left: 8px;
}

@media (max-width: 921px) {
  .icon-wrapper { 
    margin-left: 8px !important; 
  }
}

/* Cercle */
.icon-wrapper::before {
  content: "";
  position: absolute;
  width: 26px;  /* taille du cercle plus grande */
  height: 26px;
  background-color: var(--ast-global-color-8); 
  border-radius: 12px;
  z-index: -1;
}

/* Page 3355 : retirer la marge à droite uniquement pour l'icône flèche droite */
.fas.fa-arrow-right,
.fa-solid.fa-arrow-right {
  margin-right: 1px !important;
}

/* Flèche */
.icon-wrapper i {
  color: var(--ast-global-color-0); /* la flèche devient verte */
  font-size:18px ;
}

.icon-wrapper i:hover {
  color: var(--ast-global-color-1); /* la flèche devient verte */
  font-size:18px ;
}



/* Hover du lien parent = changement de couleur du cercle */
.production-link:hover .icon-wrapper::before {
  color: var(--ast-global-color-5); /* ici la flèche devient blanche */
}

.section-contact, .section-production {
clear: both; /* Assure que ces sections commencent après toutes les autres sections */
}

/* Alignement à partir de tablette */
@media only screen and (max-width: 1024px) {
.section-contact, .section-production {
  display: flex;
  flex-direction: column; /* Aligne le contenu verticalement */
  justify-content: center; /* Centre le contenu verticalement */
  align-items: center; /* Centre le contenu horizontalement */
  text-align: center; /* Centre le texte */
}
}

.section-production {
display: flex;
justify-content: flex-end; /* Aligne horizontalement à droite */
align-items: center; /* Centre verticalement */
}

.contact-link, .production-link {
font-size: 24px; /* Taille de police */
font-weight: bold; /* Gras */
position: relative; /* Permet de positionner l'élément par rapport à son contenant */
text-decoration: none!important; /* Supprime le soulignement par défaut */
transition: color 0.3s ease; /* Transition pour la couleur du texte */
}

/* Lien contact mobile */
@media (max-width: 767px) {
.contact-link, .production-link {
  font-size: 19px; /* Taille de police */
}
}  

.contact-link::before, .production-link::before {
content: ''; /* Contenu vide pour créer la ligne */
position: absolute; /* Position absolue par rapport au lien */
bottom: -2px; /* Positionne la ligne sous le texte */
left: 0; /* Alignement à gauche */
width: 100%; /* Largeur de la ligne */
height: 3px; /* Épaisseur de la ligne */
background-color: var(--ast-global-color-0); /* Couleur de la ligne (même que le texte) */
transition: width 0.3s ease; /* Transition pour l'animation de disparition */
border-radius: 30px; /* Arrondi les coins de la ligne */
}

.contact-link:hover::before, .production-link:hover::before {
  width: 0; /* Réduit la largeur de la ligne à 0 au survol */
}

/* Fin lien contact */
/* Fin Section contact */

/* Liens services page à propos */
.service-link {
  font-size: 24px; /* Taille de police */
  line-height: 2.5em;
  font-weight: bold; /* Gras */
  position: relative; /* Permet de positionner l'élément par rapport à son contenant */
  text-decoration: none!important; /* Supprime le soulignement par défaut */
  transition: color 0.3s ease; /* Transition pour la couleur du texte */
  color: var(--ast-global-color-4) ;
}

.service-link:hover {
  color:  var(--ast-global-color-5);
}

.service-link::before {
  content: ''; /* Contenu vide pour créer la ligne */
  position: absolute; /* Position absolue par rapport au lien */
  bottom: -2px; /* Positionne la ligne sous le texte */
  left: 0; /* Alignement à gauche */
  width: 100%; /* Largeur de la ligne */
  height: 3px; /* Épaisseur de la ligne */
  background-color: var(--ast-global-color-4); /* Couleur de la ligne (même que le texte) */
  transition: width 0.3s ease; /* Transition pour l'animation de disparition */
  border-radius: 30px; /* Arrondi les coins de la ligne */
}

.service-link:hover::before {
  width: 0; /* Réduit la largeur de la ligne à 0 au survol */
  background-color: #f4ddd4 ;
}

/* 📱 Centrage des liens dans la section services uniquement en mobile (max 767px) */
@media (max-width: 767px) {
  .section-services {
    text-align: center;
  }

  .section-services .service-link {
    display: inline-block; /* Nécessaire pour être centré via text-align */
  }
}

/* Fin liens services page à propos */

/* Section realisations */

.section-realisations {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100%;
}

.section-realisations a {
  /* margin-bottom: 48px; /* Marge en bas du lien */
  display: inline-block; /* Assure que la marge est appliquée correctement */
}

/* Fin Section realisations */

/* Page Service */

.arrow-icon {
  display: inline-block; /* Permet de définir des dimensions et d'ajouter des marges/paddings */
  margin-left: 8px; /* Espace entre le texte et la flèche */
  font-size: 24px; /* Taille de la flèche */
  color: var(--ast-global-color-0); /* Couleur de la flèche */
  transition: transform 0.3s ease; /* Transition pour l'animation de transformation */
}

/* icone fleche mobile */
@media (max-width: 767px) {
  .arrow-icon {
    font-size: 19px; /* Taille de police */
  }
  }
  

.service-link .arrow-icon {
  color: var(--ast-global-color-4); /* Couleur de la flèche */
}

/* Transformation de la flèche au survol du lien */
.service-link:hover .arrow-icon {
  transform: translateX(5px); /* Décalage horizontal au survol */
  color: #f4ddd4 ; /* Couleur de la flèche */
}

/* Transformation de la flèche au survol du lien */
.production-link:hover .arrow-icon, .contact-link:hover .arrow-icon {
  transform: translateX(5px); /* Décalage horizontal au survol */
  color: var(--ast-global-color-1); /* Couleur de la flèche */
}

/* Fin page Service */

@media (min-width: 993px) {
  .ast-separate-container #primary,.ast-separate-container.ast-left-sidebar #primary,.ast-separate-container.ast-right-sidebar #primary {
      margin: 0!important;
      padding: 0;
  }
}

@media (min-width: 1200px) {
  .ast-plain-container.ast-no-sidebar #primary {
      margin-top: 0;
      margin-bottom: 0;
  }
}

.wp-block-uagb-container { 
  padding-left: 0!important;
  padding-right: 0!important;
}

.section-with-cards .cards  {
  background: var(--ast-global-color-5)!important;
}

.section-with-cards h2 {
  color: var(--ast-global-color-4)!important;
}

/* Style général pour les cards */
.cards {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  padding: 32px !important;
  box-sizing: border-box;
  background-color: var(--ast-global-color-5);
}

@media (max-width: 768px) {
  .wp-block-uagb-advanced-heading.uagb-block-bd10e1c1 {
      max-width: 90%; /* Limite la largeur à 90% */
      margin: 0 auto; /* Centre le conteneur */
      text-align: center; /* Centre le texte à l'intérieur */
  }
}

/* marge boutons */
.entry-content .wp-block-uagb-buttons {
  margin-bottom: 0px!important;
}

.service-block {
cursor: pointer; /* Change le curseur en main */
}

/* curseur cards page services */
.card-service1, .card-service2, .card-service3 {
  cursor: pointer; /* Change le curseur en main */
}

.card.active {
  background-color: var(--ast-global-color-6); /* Card active */
}

/* À propos */

.about a {
  color: var(--ast-global-color-6);
}

/* marge haut de page À propos */
.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-aad910ec > .uagb-container-inner-blocks-wrap {
  margin-top: 176px!important ;
}

/* Fin à propos */

.career .uagb-container-inner-blocks-wrap {
  border-radius: 16px; /* Coins arrondis */
  padding : 24px !important;
  width: 100%; /* Prendre toute la largeur du conteneur parent */
  box-sizing: border-box; /* Inclure le padding et les bordures dans la largeur totale */
  color: var(--ast-global-color-4);
}

.career h2 {
  color: var(--ast-global-color-4);
}

.career h3 {
  font-size: 4em;
  color: var(--ast-global-color-8);
}

.career a {
  color: var(--ast-global-color-6);
}

.career a:hover {
  color: #f4ddd4;
}

.title-icon {
  display: inline-block; /* Permet de définir des dimensions et d'ajouter des marges/paddings */
  margin-right: 8px; /* Espace après l'icone */
  font-size: 24px; /* Taille de la flèche */
  color: var(--ast-global-color-8); /* Couleur de la flèche */
  transition: transform 0.3s ease; /* Transition pour l'animation de transformation */
}

/* Ajuste la ligne pour être centrée sous le texte */
#ast-hf-menu-1 .menu-link {
  display: inline-flex;
  flex-direction: row;
}

/* Optional: Add scrollbar styling */
.projects-container::-webkit-scrollbar {
  height: 10px;
}

.projects-container::-webkit-scrollbar-thumb {
  background-color: #888; /* Scrollbar couleur */
  border-radius: 10px; /* Coins arrondis */
}

.projects-container::-webkit-scrollbar-track {
  background-color: #f0f0f0; /* Scrollbar track color */
}

/* Article */

/* Titre */
@media (min-width: 947px) {
  .ast-pagination { padding-bottom: 64px !important; }
}


@media (min-width: 947px) {
  .ast-pagination {
      padding-bottom: 64px!important;
  }
}

@media (min-width: 600px) and (max-width: 921px) {
  .ast-separate-container .ast-grid-3 .ast-article-post {
      width: 50% !important;
      padding: 1em!important;
  }
}

/* Alignement boutons voir le projet */
@media (max-width: 576px) {
  .post-content>.read-more {
    display: block!important; /* Réinitialise le display pour permettre un centrage */
    text-align: center!important; /* Centre horizontalement le contenu à l'intérieur */
    margin-bottom: 0;
  }
}

/* Alignement boutons voir le projet page d'accueil*/
@media (max-width: 576px) {
.uagb-post__inner-wrap {
  text-align: center!important;
}
}

.ast-separate-container .ast-article-inner {
  background-color: var(--ast-global-color-5);
  background-image: none;
}
/* Alignement des boutons du filtre */
.ast-post-filter ul {
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100%;
  max-width: 1320px;
  display: flex;
  flex-wrap: wrap; /* pour mobile */
  gap: 16px;
  padding: 0 16px;
  box-sizing: border-box;
}

@media only screen and (max-width: 1134px) {
  .ast-post-filter {
    display: none!important; /* Cache le conteneur complet avec les filtres */
  }
}

/* Boutons filtre */
li.ast-post-filter-single:not(.active) {
  background-color: var(--ast-global-color-4);
  border: 1px solid var(--ast-global-color-0);
}

.ast-post-filter-single.ast-button:not(.active):hover {
   background-color: var(--ast-global-color-4);
}

/* Image article */
.ast-article-post .post-thumb-img-content img:hover {
border-radius: 16px;
}

/* Fin article */

.uagb-block-cde9e8c9 .uagb-post__inner-wrap .uagb-post__taxonomy.highlighted, .uagb-block-af84defe .uagb-post__inner-wrap .uagb-post__taxonomy.highlighted {
  background-color: var(--ast-global-color-6);
  border-radius: 30px; /* Coins arrondis */
}

.uagb-block-cde9e8c9 .uagb-post__inner-wrap .uagb-post__taxonomy.highlighted a {
  color: var(--ast-global-color-2);
}

/* Accueil */

.page-id-3385 .section-bloomy .uagb-container-inner-blocks-wrap .uagb-block-78a9a417 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.uagb-post__image img .attachment-large .size-large {
transform: scale(1.1);
transition: transform .5s ease;
}

/* Article */
.uagb-block-af84defe.is-grid.uagb-post__items {
  row-gap: 0px!important; /* Gap par défaut */
  column-gap: 32px; /* Column gap */
}

/* À partir du format mobile */
@media (max-width: 767px) {
  .uagb-block-af84defe.is-grid.uagb-post__items {
    row-gap: 32px!important; /* Augmentation du row-gap sur mobile */
  }
}

/* Article */
@media (min-width: 768px) {
  .uagb-block-af84defe.is-grid.uagb-post__items {
    row-gap: 32px;
    column-gap: 32px;
  }
}

/* Bloc de service */

.service-block .uagb-buttons__wrap {
  margin-left: 8px;
}

.cards h3 {
  color: var(--ast-global-color-2);
}

/* Changement de couleur du bloc au survol */
.service-block:hover {
  background-color: var(--ast-global-color-6)!important; /* Couleur de fond au survol */
}

/* Changement de couleur du bouton au survol du bloc entier */
.service-block:hover .service-button {
  background-color: var(--button-color-block-hover); /* Couleur de fond au survol du bloc */
  color: var(--button-text-color-block-hover); /* Couleur du texte au survol du bloc */
}

/* Changement de couleur du bouton au survol direct */
.service-button:hover {
  background-color: var(--button-color-hover); /* Couleur de fond au survol du bouton */
  color: var(--button-text-color-hover); /* Couleur du texte au survol du bouton */
}

/* Titre */
h1,h2,h3,h4,h5,h6 {
margin: 0px !important;
}

/* Section fond vert */
/* Titre */
.dark h3, .dark h1, .dark  {
  color: var(--ast-global-color-4);
}

.dark h2 {
  color: var(--ast-global-color-8);
}
/* Fin section fond vert */

/* marge sous paragraphe/texte */
p, .entry-content p {
  margin-bottom: 0 ;
}

/* marge haut de page services */
.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-544f102a > .uagb-container-inner-blocks-wrap, .wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-97b8ab07 > .uagb-container-inner-blocks-wrap, .wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-1b6a8ad8 > .uagb-container-inner-blocks-wrap, .wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-9955ecb3 > .uagb-container-inner-blocks-wrap {
  margin-top: 128px!important ;
}

.entry-content .wp-block-uagb-buttons {
  margin-bottom: 8px;
}

ul .wp-block-list {
  margin : 0 !important;
}

.solution-details {
  position: relative;
  overflow: hidden; /* Empêcher tout contenu débordant pendant l'animation */
}

/* numéro - Desktop par défaut */
span.number {
  font-size: 3em; /* Taille de la police */
  color: var(--ast-global-color-8); /* Couleur */
  font-weight: bold; /* Rendre le texte plus épais pour plus de visibilité */
  display: inline-block; /* Assurez-vous que le span se comporte bien */
  margin-right: 16px; /* Espace à droite du numéro */
}

/* numéro - Tablette (≤ 921px) */
@media (max-width: 921px) {
  span.number {
    font-size: 2.2em;
  }
}

/* numéro - Mobile (≤ 767px) */
@media (max-width: 767px) {
  span.number {
    font-size: 1.8em;
  }
}

/* etapes pages services — taille par défaut (ordinateur) */
span.titre-etape {
  font-size: 36px !important;
}

/* Tablette (768px à 1024px) */
@media (max-width: 1024px) and (min-width: 768px) {
  span.titre-etape {
    font-size: 30px !important;
  }
}

/* Mobile (moins de 768px) */
@media (max-width: 767px) {
  span.titre-etape {
    font-size: 28px !important;
  }
}

/* Tablette */
@media (min-width: 768px) and (max-width: 1024px) {
  h1:not(.side-title .uagb-heading-text):not(.ast-container h1),
  h2:not(.side-title .uagb-heading-text):not(.entry-title):not(.widget-title):not(.ast-container h2),
  .h3:not(.uagb-heading-text.side-title):not(.ast-container h3) {
    text-align: center!important; /* Aligne les titres au centre sauf les side-title */
  }
}

/* Mobile */
@media (max-width: 576px) {
  h1, h2, h3, h4, h5, h6, .uagb-heading-text, .cards h2, .cards h3 {
      text-align: center; /* Centre les titres uniquement sur mobile */
  }
}

/* Section principal */


/* === HERO plein écran sans gouttières (Spectra/Astra) === */
.uagb-block-42aee81c.alignfull,
.hero-home.alignfull {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Retirer le max-width/padding que Spectra ajoute à l’intérieur */
.uagb-block-42aee81c.alignfull .uagb-container-inner-blocks-wrap {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* === Section HERO === */
.hero-home { position: relative; isolation: isolate; }
.full-height-block { min-height: clamp(75vh, 90vh, 100vh); position: relative; }
@media (max-width: 800px) { .full-height-block { min-height: auto; } }

/* Empêche un scroll horizontal si une image grossit au hover */
.random-images-section { overflow-x: clip; }

/* Images “volantes” */
.random-image {
  position: absolute;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 240px;
  height: 150px;
  opacity: 0.8;
  transition: opacity 0.5s ease, transform 0.5s ease;
  z-index: 0;
  border-radius: 16px;
}
.random-image:hover { opacity: 1; transform: scale(1.1); z-index: 20; }

@media (max-width: 1024px) {
  .random-image { width: 180px; height: 120px; z-index: -1; }
}
@media (max-width: 768px) {
  .random-image { display: none; }
  .random-images-section a { pointer-events: none; }
}
@media (min-width: 769px) {
  .random-images-section a { pointer-events: auto; }
}

/* Contenu */
.nowrap { white-space: nowrap; }

/* Rendre la card "content-overlay cards" plus légère */
.content-overlay.cards{
  /* version moderne basée sur ta variable Astra */
  background: color-mix(in srgb, var(--ast-global-color-5) 90%, transparent) !important;
  border:1px solid  var(--ast-global-color-0);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.content-overlay {
  position: relative;
  z-index: 10;
  display: grid;
  gap: 16px;
  max-width: 45%;
  margin: 10% auto 120px auto;
  padding: 0 1rem;
  justify-items: stretch;
}

@media (max-width: 1308px) and (min-width: 1025px) {
  .content-overlay { max-width: 60%; margin-top: 120px; margin-bottom: 96px; padding: 0 2rem; }
}
@media (max-width: 1024px) {
  .content-overlay { max-width: 80%; margin-top: 120px; margin-bottom: 64px; padding: 0 1.5rem; }
}
@media (max-width: 768px) {
  .content-overlay { max-width: 90%; margin-top: 120px; margin-bottom: 32px; padding: 0 1rem; }
}

/* Titres & texte */
.content-overlay h1 { font-size: 40px; text-align: center; width: 100%; }
@media (max-width: 1024px) { .content-overlay h1 { font-size: 36px; } }
@media (max-width: 768px)  { .content-overlay h1 { font-size: 28px; } }

.content-overlay p { font-size: 16px; line-height: 1.6; text-align: left; }
@media (max-width: 768px) { .content-overlay p { font-size: 14px; } }

/* Boutons */
.content-overlay .wp-block-uagb-buttons { margin-top: 0; }
/* hover mobile spécifique (si besoin) */
.wp-block-uagb-buttons .uagb-block-3a923dc0 .wp-block-button__link:hover {
  background: var(--ast-global-color-1);
}

/* Masquer le bouton “En savoir +” sur très petit écran */
@media (max-width: 450px) { .uagb-block-5a6555fd { display: none; } }

/* Fin section principal */


.entry-content > * {
  margin-bottom: 0; 
}

.uagb-post-grid.is-grid.uagb-equal_height_inline-read-more-buttons.uagb-post__image-position-top .uagb-post__text:nth-last-child(2) {
  padding-bottom: 80px;
}

/* ---------- Styles communs ---------- */
.svg-shape,
.svg-shape-tablette,
.svg-shape-mobile {
  width: 100%;
  height: auto;
  border-top: 3px solid var(--ast-global-color-0);
  position: relative;
  z-index: 2;
  border-radius: 0 !important;
  color: var(--ast-global-color-0);
  display: none; /* par défaut : cacher toutes les variantes */
}

/* ---------- Visibilité globale (UNE seule variante selon l’écran) ---------- */
/* Desktop > 1024 */
@media (min-width: 1025px) {
  .svg-shape { display: block; }
}

/* Tablette 768–1024 */
@media (min-width: 768px) and (max-width: 1024px) {
  .svg-shape-tablette { display: block; }
}

/* Mobile < 768 */
@media (max-width: 767px) {
  .svg-shape-mobile { display: block; }
}

/* ---------- Margins spécifiques UNIQUEMENT pour la page ID 275 ---------- */
/* Desktop > 1024 : pas de chevauchement */
@media (min-width: 1025px) {
  .page-id-275 .svg-shape { margin-bottom: 0; }
}

/* 922–1024 */
@media (min-width: 922px) and (max-width: 1024px) {
  .page-id-275 .svg-shape-tablette { margin-bottom: -70px; }
}

/* 768–921 */
@media (min-width: 768px) and (max-width: 921px) {
  .page-id-275 .svg-shape-tablette { margin-bottom: -55px; }
}

/* 490–767 (valeur par défaut) */
@media (min-width: 490px) and (max-width: 767px) {
  .page-id-275 .svg-shape-mobile { margin-bottom: -70px; }
}

/* 490–574 : ajuste */
@media (min-width: 490px) and (max-width: 574px) {
  .page-id-275 .svg-shape-mobile { margin-bottom: -50px; }
}

/* ≤ 489 */
@media (max-width: 489px) {
  .page-id-275 .svg-shape-mobile { margin-bottom: -45px; }
}

/* 401–439 : override fin (placé après pour prendre le dessus) */
@media (min-width: 401px) and (max-width: 439px) {
  .page-id-275 .svg-shape-mobile { margin-bottom: -40px; }
}

.text-scroll h1,
.category-container {
  margin-bottom: 32px !important;
}

/* Animation */

/* Animation */
.fade-in, .fade-in-left, .fade-in-right, .fade-in-up {
  opacity: 0;
  transform: scale(0.95); /* Réduction légère de l'échelle */
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Animation pour gauche, droite et haut */
.fade-in-left, .fade-in-right, .fade-in-up {
  transform: scale(0.95); /* Réduction au lieu de translate */
}

/* Une fois visible */
.fade-in.visible, .fade-in-left.visible, .fade-in-right.visible, .fade-in-up.visible {
  opacity: 1;
  transform: scale(1); /* Taille normale à l'affichage */
}

@media (max-width: 768px) {
  .fade-in-left, .fade-in-right, .fade-in-up {
    transform: none; /* Enlever la translation */
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1); /* Utilise seulement l'animation de fade-in */
  }
}

/* Ajouter un délai spécifique pour certains éléments */
.fade-in-delay-1 {
  transition-delay: 0.5s; /* Délai de 0,5 seconde avant le début de l'animation */
}

.fade-in-delay-2 {
  transition-delay: 1s; /* Délai de 1 seconde */
}

.fade-in-delay-3 {
  transition-delay: 1.5s; /* Délai de 1,5 seconde */
}

.fade-in-delay-4 {
  transition-delay: 2s; /* Délai de 2 seconde */
}

.fade-in-delay-5 {
  transition-delay: 2.5s; /* Délai de 2,5 seconde */
}
/* Fin ajouter un délai spécifique pour certains éléments */

/* Pour les états visibles */
.fade-in.visible, .fade-in-left.visible, .fade-in-right.visible, .fade-in-up.visible {
  opacity: 1;
  transform: translate(0, 0); /* Retour à la position d'origine avec une transition fluide */
}

/* Fin animation */

/* Footer */

h2.widget-title {
    margin-bottom: 8px!important;
    font-size: 20px;
}

/* Liens menu widget */
.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-title, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] h1, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-area h1, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] h2, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-area h2, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] h3, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-area h3, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] h4, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-area h4, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] h5, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-area h5, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] h6, .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"] .widget-area h6,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-title, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h1, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h1, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h2, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h2, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h3, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h3, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h4, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h4, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h5, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h5, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h6, .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h6,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-title, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h1, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h1, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h2, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h2, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h3, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h3, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h4, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h4, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h5, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h5, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h6, .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h6 {
    color: var(--ast-global-color-5)!important;
}

.uagb-block-4364a467 a {
    color: var(--ast-global-color-6)!important;
}

.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner a,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner a,
.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner a  {
    color: var(--ast-global-color-6)!important;
}

.widget ul {
    line-height: 2 !important;
}


.site-above-footer-wrap {
    padding-top: 32px!important;
    padding-bottom: 32px!important;
}

/* Cache le footer pour les écrans de 922px et en dessous */
@media (max-width: 947px) {
  footer {
      display: none; 
  }
}

/* Souligner les liens dans le footer */
footer a {
  text-decoration: none; /* Ajouter un soulignement */
  transition: color 0.3s ease; /* Ajoute une transition douce lors du survol */
  color: var(--ast-global-color-6); /* Couleur */
}

/* Style pour centrer verticalement la section */
.site-footer-above-section-1 {
  display: flex;
  align-items: center!important; /* Centrer verticalement */
  height: 100%; /* S'assurer que la section prend toute la hauteur disponible */
}

/* Style pour agrandir le texte dans la section du footer */
.site-footer-above-section-1 p {
  font-size: 18px; /* Taille de la police (ajuste selon ton besoin) */
  line-height: 1.5; /* Pour améliorer la lisibilité, ajuste la hauteur de ligne si nécessaire */
}

/* Style pour la couleur du soulignement des liens sociaux */
.ast-footer-social-1-wrap a {
  text-decoration: underline; /* Ajoute un soulignement */
  text-decoration-color: var(--ast-global-color-4) /* Change la couleur du soulignement (exemple : rose) */
}

/* Si tu veux une couleur différente au survol */
.ast-footer-social-1-wrap a:hover {
  text-decoration-color: var(--ast-global-color-6) /* Change la couleur du soulignement au survol */
}

.footer-social-item:hover {
  text-decoration:none ;
  transition: transform 0.3s ease;
}

.wp-block-uagb-container.uagb-block-e33cb521 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch; /* S'assure que tous les éléments prennent la même hauteur */
}
/* Titre Article */
.entry-header {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}

/* Article : portfolio */
/* Limiter la largeur à 1320px sur la page portfolio */
@media (min-width: 922px) {
main.site-main {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 1320px;
    margin:0 auto;
}
}

.ast-archive-entry-banner[data-post-type="post"] {
    text-align: center;
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 1320px;
    margin:0 auto;
}

/* Titre page projet */
.ast-article-inner {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}

.wp-block-uagb-container.cards .uagb-block-a75c8ca6, /* Aperçu du projet */
.wp-block-uagb-container.cards .uagb-block-1b28b049, /* Catégorie */
.wp-block-uagb-container.cards .uagb-block-6235b90e { /* Contexte */
  flex: 1; /* Permet à chaque bloc d'avoir une hauteur égale */
}

/* Tags projet */
.taxonomy-category.wp-block-post-terms a {
  text-decoration: none; /* Enlève le soulignement du lien */
  border: 1px solid var(--ast-global-color-0); /* Ajoute un contour d'un pixel avec la couleur souhaitée */
  border-radius: 30px; /* Crée un contour arrondi */
  padding: 4px 16px; /* Ajoute de l'espace autour du texte pour un effet de tag */
  display: inline-block; /* S'assure que chaque lien se comporte comme un élément inline bloquant */
  margin-right: 8px; /* Ajoute un petit espace entre les tags horizontalement */
  margin-bottom: 8px; /* Ajoute de l'espace entre les lignes de tags pour éviter le chevauchement */
  transition: border-color 0.3s ease; /* Ajoute une transition pour un effet plus doux au hover */
}

.taxonomy-category.wp-block-post-terms a:hover {
  color: var(--ast-global-color-5); /* Changement de couleur de texte au survol */
  background-color: var(--ast-global-color-1); /* Changement de couleur du fond au survol */
  border-color: var(--ast-global-color-1); /* Couleur de contour au survol */
  transition: all 0.3s ease; /* Transition douce pour un effet fluide */
}

.taxonomy-category.wp-block-post-terms span.wp-block-post-terms__separator {
  display: none; /* Enlève le séparateur de la virgule entre les liens */
}

/* Images */
img {
  border-radius: 16px; /* Coins arrondis */
}

.entry-content .wp-block-image  {
  margin: 0; /* Enlever marge inutile */
}

/* Vidéo */
.wp-block-column .first-column  {
  height: 530px; /* hauteur */
}

.video-wrapper {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px; /* Ajustez cette valeur pour changer le rayon des coins arrondis */
}

.video-wrapper iframe {
  width: 100%;
  height: 100%;
  border: none;
}

/* Portfolio */


.uagb-post-grid.is-grid.uagb-equal_height_inline-read-more-buttons.uagb-post__image-position-top .uagb-post__text:nth-last-child(2) {
    padding-bottom: 16px ;
}

/* Border radius sur les images dans les articles de blog */
.post-thumb-img-content img {
  border-radius: 16px!important;
}

.ast-separate-container .ast-article-inner {
    background-color: var(--ast-global-color-4)!important;
}

/* Bouton catégorie, hover, exclure l'élément actif */
.ast-post-filter-single.ast-button:not(.active):hover {
  color: var(--ast-global-color-0); /* Changement de couleur de texte au survol */
  background-color: var(--ast-global-color-4); /* Changement de couleur du fond au survol */
  transition: all 0.3s ease; /* Transition douce pour un effet fluide */
  border: 1px solid var(--ast-global-color-0);
}

/* Pagination, hover, exclure l'élément actif */
.ast-pagination .page-numbers:not(.current):hover {
  color: var(--ast-global-color-5); /* Changement de couleur de texte au survol */
  background-color: var(--ast-global-color-4); /* Changement de couleur du fond au survol */
  border-color: var(--ast-global-color-1); /* Couleur de contour au survol */
  transition: all 0.3s ease; /* Transition douce pour un effet fluide */
}

/* Menu des services sticky placé au-dessus du menu mobile */
.services-menu {
  position: fixed;
  bottom: 80px; /* Place-le juste au-dessus du menu mobile (80px étant la hauteur du menu mobile) */
  left: 0;
  width: 100%;
  z-index: 999; /* Assure que le menu des services est sous le menu mobile */
  background-color: var(--ast-global-color-0);
  display: flex;
  justify-content: space-around; /* Distribuer les éléments équitablement */
  align-items: center; /* Centrer verticalement les éléments */
  text-align: center;
  transition: bottom 0.3s ease-in-out, transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2); /* Légère ombre pour le contraste */
}

.services-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: space-between; /* Assure une distribution égale des éléments */
  align-items: center; /* Centrer verticalement les éléments dans la hauteur */
  width: 100%; /* Prendre toute la largeur disponible */
  gap: 0; /* Pas d'espace entre les éléments */
}

.services-menu li {
  flex: 1; /* Chaque élément prend une largeur égale */
  display: flex;
  justify-content: center; /* Centrer horizontalement chaque lien */
  align-items: center; /* Centrer verticalement chaque lien */
}

.services-menu a {
  text-decoration: none;
  color: var(--ast-global-color-5);
  white-space: nowrap; /* Empêche le texte de passer à la ligne */
  padding: 8px 0; /* Ajoute un peu d'espace autour des liens */
  width: 100%; /* Chaque lien prend toute la largeur de son parent */
  text-align: center; /* Centrer le texte des liens */
  border-top: 1px solid var(--ast-global-color-1); /* Séparation visuelle */
}

/* Cacher le menu des services lors du défilement */
.services-menu.hidden {
  bottom: 0 !important; /* Le menu des services descend à la place du menu mobile */
  transform: translateY(100%) !important;
  opacity: 0 !important;
  transition: bottom 0.3s ease-in-out, transform 0.3s ease-in-out, opacity 0.3s ease-in-out !important;
}

/* Afficher le menu des services lors du défilement vers le haut */
.services-menu.sticky-visible {
  bottom: 80px !important; /* Le menu des services reprend sa position initiale au-dessus du menu mobile */
  transform: translateY(0) !important;
  opacity: 1 !important;
  transition: bottom 0.3s ease-in-out, transform 0.3s ease-in-out, opacity 0.3s ease-in-out !important;
}

/* Style pour l'état actif du menu des services */
.services-menu a.active {
  background-color: var(--ast-global-color-1); /* Couleur de fond pour les onglets actifs */
  color: var(--ast-global-color-5); /* Couleur du texte pour les onglets actifs */
  font-weight: bold;
}

/* Style au survol */
.services-menu a:hover {
  background-color: var(--ast-global-color-2); /* Couleur de fond au survol */
  color: var(--ast-global-color-6); /* Couleur du texte au survol */
}

.services-menu ul li {
  margin-bottom: 0!important;
}

.ast-icon.icon-arrow svg {
  margin-left: 16px;
}

.uagb-block-47c0307f h2.wp-block-heading {
  font-size: 24px;
  color: var(--ast-global-color-4);
}

/* Centrer verticalement une image */
.wp-block-image {
  display: flex;
  justify-content: center; /* Centrage horizontal */
  align-items: center; /* Centrage vertical */
  height: 100%; /* Hauteur du conteneur */
}

.wp-block-image img {
  width: 100%; /* Pour que l'image prenne toute la largeur */
  height: 100%; /* Force l'image à prendre toute la hauteur du parent */
  object-fit: cover; /* Garde le ratio et remplit le bloc */
}

/* Supprimer row-gap lorsque le bloc est caché sur desktop */
@media (min-width: 1025px) {
  .wp-block-uagb-container.uagb-block-8306b876, .wp-block-uagb-container.uag-hide-desktop {
      display: none!important;
  }
}

.page-id-2465 { /* ID de la page Liens */
  height: 100vh; /* Hauteur exacte de la fenêtre */
  overflow: hidden; /* Empêche le défilement */
  color: var(--ast-global-color-0);
}

.page-id-2465 .main { 
  padding-bottom: 0!important;
}

/* Uniformiser la largeur des boutons */
@media only screen and (max-width: 767px) {
  .uagb-block-0ad30cc3.uagb-buttons__outer-wrap .uagb-buttons__wrap .wp-block-button {
      width: 65% !important;
  }
}

/* Couleur top bar header transparent */
.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar {
  background-color: var(--ast-global-color-8)!important;
}

.ast-theme-transparent-header .main-header-menu .menu-link {
  background-color: transparent!important;
}

/* Apparence titre details (page CGV) */
.wp-block-details summary {
  font-size: 30px!important; /* Taille du texte */
  font-weight: 700;
  color: var(--ast-global-color-2);
  font-family: 'Quicksand', sans-serif;
  line-height: 1.3em;
}

/* Marges h2 seulement si le détail est ouvert  */
details[open] summary {
  margin-bottom: 24px; /* Marge bas */
}

/* Marges h3 CGV */
details[open] h3.wp-block-heading {
  margin-top: 32px !important;
  margin-bottom: 16px!important;
}

/* Marges textes détails CGV */
.wp-block-details p{
  margin-block-start: 8px;
}

/* Couleur icônes listes */
.uagb-icon-list__source-wrap svg path {
  fill: var(--ast-global-color-1)!important;
}

#cmplz-document h2 {
  font-size: 30px!important;
  padding-bottom: 0;

}

/* Appliquer la marge aux titres sauf ceux dans .cmplz-service-header */
#cmplz-document h2,
#cmplz-document h3:not(.cmplz-service-header h3),
#cmplz-document h4 {
    margin-top: 32px !important;
    margin-bottom: 16px !important;
}

#cmplz-document .cmplz-subtitle {
  margin-bottom: 16px!important;
}

  /* Modifier la taille du texte des paragraphes avec la classe .cmplz-subtitle */
#cmplz-document p.cmplz-subtitle {
  font-size: 24px;
}

#cmplz-cookies-overview .cmplz-dropdown summary, #cmplz-document .cmplz-dropdown summary {
  background-color: var(--ast-global-color-5) !important;
  border-radius: 16px;
  padding: 32px;
  margin : 16px 0 !important;
}

#cmplz-cookies-overview .cmplz-dropdown, 
#cmplz-document .cmplz-dropdown, 
.editor-styles-wrapper .cmplz-unlinked-mode .cmplz-dropdown {
    background-color: transparent !important;
}

#cmplz-manage-consent-container.cmplz-manage-consent-container .cmplz-categories .cmplz-category .cmplz-category-header{
  background-color: var(--ast-global-color-5) !important;
  border-radius: 16px;
  padding: 32px;
  margin : 16px 0 !important;
}

/* Mobile (par défaut) */
.entry-content > .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap {
  margin-left: auto;
  margin-right: auto;
}

/* À partir de 600px : padding horizontal sur le contenu et le header */
@media (min-width: 600px) {
  /* Contenu */
  .entry-content > .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap,
  
  /* Header principal */
  .ast-builder-grid-row {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
}

/* Desktop (1024px et plus) */
@media (min-width: 1024px) {
  .uagb-is-root-container.alignfull > .uagb-container-inner-blocks-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Page mes services */

/* 🌐 Taille par défaut de l'icône dans la liste */
.uagb-icon-list__source-wrap svg {
  width: 24px !important; /* Largeur de l’icône en version desktop */
  height: 24px !important; /* Hauteur de l’icône en version desktop */
  flex-shrink: 0; /* Empêche l'icône de se réduire dans un flex container */
}

/* 📱 Tablette (écran ≤ 921px) : taille légèrement réduite */
@media (max-width: 921px) {
  .uagb-icon-list__source-wrap svg {
    width: 18px !important; /* Largeur sur tablette */
    height: 18px !important; /* Hauteur sur tablette */
  }
}

/* 📱 Mobile (écran ≤ 767px) : taille encore plus petite */
@media (max-width: 767px) {
  .uagb-icon-list__source-wrap svg {
    width: 16px !important; /* Largeur sur mobile */
    height: 16px !important; /* Hauteur sur mobile */
  }
}

/* Icones */

/* Ce qui est inclus – couleur des icônes (SVG) */
.uagb-block-78a9a417 .uagb-icon-list__source-wrap svg path{
  fill: var(--ast-global-color-8) !important;
  color: var(--ast-global-color-8)!important;
}

/* Icones - Desktop par défaut */
.page-id-36 h3 .fas, .page-id-36 h2 .fas, 
.page-id-3385 h3 .fas, .page-id-3385 h2 .fas {
  color: var(--ast-global-color-8)!important;
  font-size: 48px;
  margin-right: 16px;
}

.page-id-36 p.fas {
  color: var(--ast-global-color-0)!important;
  font-size: 16px!important;
  margin-right: 8px!important; /* Espace à droite du numéro */
}

/* Icones - Tablette (≤ 921px) */
@media (max-width: 921px) {
  .page-id-36 h3 .fas, .page-id-36 h2 .fas, 
  .page-id-3385 h3 .fas, .page-id-3385 h2 .fas {
    font-size: 36px;
  }

  .page-id-36 p.fas {
    font-size: 14px!important;
  }
}

/* Icones - Mobile (≤ 767px) */
@media (max-width: 767px) {
  .page-id-36 h3 .fas, .page-id-36 h2 .fas, 
  .page-id-3385 h3 .fas, .page-id-3385 h2 .fas {
    font-size: 28px;
  }

  .page-id-36 p.fas {
    font-size: 12px!important;
  }
}

span.obj {
  font-size: 18px;
  font-weight: 600;
  border: 1px solid var(--ast-global-color-8)!important;
  padding: 0.1em 0.4em 0.2em 0.4em; /* haut | droite | bas | gauche */
  border-radius: 40px;
  }

.wp-block-uagb-icon-list.uagb-block-aaf5519a .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg {
  width: 20px;
  height: 20px;
  font-size: 20px;
}

.highlight-pink {
  border: 1px solid var(--ast-global-color-8)!important;
  padding: 0.1em 0.4em 0.2em 0.4em; /* haut | droite | bas | gauche */
  border-radius: 40px;
}

.fa-solid, .fas {
  margin-right: 0.3em!important; /* espace avant l’icône */
}

/* Portfolio */

/* Footer */
.ast-hfb-header .site-footer {
    margin-top: 0!important;
}

/* Tablette uniquement : 768px à 1024px */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .uagb-block-84281435.uagb-buttons__outer-wrap .uagb-buttons__wrap {
    justify-content: right;
    align-items: center;
  }
}

/* Tablette uniquement : 768px à 1024px */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .uagb-block-b48d727a.uagb-buttons__outer-wrap .uagb-buttons__wrap {
    justify-content: right;
    align-items: center;
  }
}

.page-id-44 .site-logo-img img {
    filter: url(#ast-img-color-filter-2)!important;
}

.page-id-44 .uagb-icon-list__label {
    color: var(--ast-global-color-4)!important;
}

/* Couleur icônes listes */
.page-id-44 .uagb-icon-list__source-wrap svg path {
  fill: var(--ast-global-color-4)!important;
}


/* ========================================
   SOLUTION 2 : ALTERNATIVE MARGIN/PADDING
   (SOLUTION OPTIMISÉE - FONCTIONNE LE MIEUX)
   ======================================== */

/* Desktop - Colonne gauche avec extension sur toute la largeur gauche */
.page-id-44 .uagb-block-46b9fb2b, .page-id-44 .uagb-block-748ceddc {
  background: var(--ast-global-color-0);
  margin-top: -300px;
  padding-top: 0px !important;
  padding-right: 32px !important;
  }


/* Extension du fond vert vers la gauche avec pseudo-élément */
.page-id-44 .uagb-block-46b9fb2b::before, .page-id-44 .uagb-block-748ceddc::before {
  content: '';
  position: absolute;
  top: 0;
  right: 100%; /* S'étend vers la gauche */
  bottom: 0;
  width: 100vw; /* Prend toute la largeur de l'écran */
  background:  var(--ast-global-color-0);
  z-index: -1;
}

/* Mobile - Colonne gauche */
.page-id-44 .uagb-block-748ceddc, .page-id-44 .uagb-block-748ceddc {
  background:  var(--ast-global-color-0);
  margin-top: -120px;
  padding-top: 300px!important; /* Même principe pour mobile */
  position: relative;
}

/* Extension du fond vert vers la gauche pour mobile */
.page-id-44 .uagb-block-748ceddc::before, .page-id-44 .uagb-block-748ceddcc::before {
  content: '';
  position: absolute;
  top: 0;
  right: 100%;
  bottom: 0;
  width: 100vw;
  background:  var(--ast-global-color-0);
  z-index: -1;
}

/* Ajustement responsive pour mobile si le header est plus petit */
@media (max-width: 768px) {
  .page-id-44 .uagb-block-145abcc6 {
    margin-top: -100px; /* Header mobile souvent plus petit */
    padding-top: 300px!important; /* 100px + 40px d'espace */
  }
}

@media (max-width: 480px) {
  .page-id-44 .uagb-block-145abcc6 {
    margin-top: -80px; /* Header encore plus petit sur très petits écrans */
    padding-top: 120px; /* 80px + 40px d'espace */
  }
}

.section-bloomy-contact {
  margin-bottom: 0 !important;  
  margin-top: 80px !important; 
}

/* Tablette et mobile (max 1024px) */
@media (max-width: 1024px) {
  .section-bloomy-contact {

  }
}

/* Mobile uniquement (max 768px) */
@media (max-width: 768px) {
  .section-bloomy-contact {

  }
}


.page-id-44  .uagb-container-inner-blocks-wrap {
    margin-bottom: 0 !important;
}

body {
    overflow-x: hidden!important;
}

@media (max-width: 1024px) {
  .page-id-44 #ast-mobile-header {
    background-color: var(--ast-global-color-0)!important; /* ta couleur */
  }
}


@media (max-width: 921px) {
    .page-id-44 .ast-primary-header-bar.ast-primary-header {
        background-color: var(--ast-global-color-0);
        background-image: none;
    }
}

/* Extension du fond vert vers la droite avec pseudo-élément */
.uagb-block-0952e094 {
    position: relative;
}

.uagb-block-0952e094::after {
    content: '';
    position: absolute;
    top: 0;
    left: 100%; /* S'étend vers la droite */
    bottom: 0;
    width: calc(50vw - 70%); /* Calcule la distance jusqu'au bord droit */
    background: var(--ast-global-color-0);
    z-index: -1;
    }

    /* Couleurs icones réseaux sociaux page Contact */
    :where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-instagram, :where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-linkedin {
    background-color: var(--ast-global-color-4)!important;
    color: var(--ast-global-color-0)!important;
}


.wp-block-uagb-container .uagb-block-8090b9fb {
  padding-left: 16px!important;
  padding-right: 16px!important;
}


.uagb-slider-container.uagb-block-0e2f040a.uagb-slider-container .swiper-button-prev, .uagb-slider-container.uagb-block-0e2f040a.uagb-slider-container .swiper-button-next {
    color: var(--ast-global-color-3)!important;
    z-index: 1;
}