/*
 Theme Name:   iwego child
 Description:  Theme iwego
 Author:       Iwego
 Template:     iwego
 Version:      1.0.1
*/

/************************************************/
/**                                            **/
/**                 GENERAL                    **/
/**                                            **/
/************************************************/


:root {
  --box-shadow : rgba(0, 0, 0, 0.15) 0px 2px 8px;
  --box-shadow-hover: rgba(0, 0, 0, 0.4) 0px 2px 8px;
  --font-principale: "Inter", sans-serif;
  --font-secondaire: "Abril Fatface", serif;
}

body {overflow-x: hidden;}
.section-carrousel-right {max-width: none; margin-left: 1rem; margin-right: 0;}
.img-cover {object-fit: cover; width: 100%; height: 100%;}
.img-contain {object-fit: contain; width: 100%; height: 100%;}
.no-underline {text-decoration: none;}
.btn-cta, a.btn-cta:visited {background-color: var(--couleur-principale); color: #fff; text-decoration: none; padding: 1rem 2rem;}
input, select, textarea, button {font-family: inherit; color: var(--couleur-texte);}
select, input[type="checkbox"] {appearance: none; -webkit-appearance: none; -moz-appearance: none;}
select {background-image: url("data:image/svg+xml;utf8,<svg  fill='dimgray' height='15' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'><!--!Font Awesome Free v6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--><path d='M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z'/></svg>"); background-repeat: no-repeat; background-position: right 1.5rem center;}
input[type="checkbox"] {border-radius: 0; padding: .6rem; margin-bottom: 0; border: .1rem solid var(--couleur-texte);}
input[type="checkbox"]:checked {background-color: var(--couleur-principale);}
::placeholder {color: var(--couleur-texte);}
img, video {display: block;}

.btn-border { border: .1rem solid var(--couleur-texte); border-radius: 999rem; color: var(--couleur-texte); font-size: 1.3rem; padding: .8rem 2rem; background-color: transparent; text-decoration: none; text-align: center;}
.btn-anim, .btn-anim-gutenberg a {position: relative; z-index: 1; overflow: hidden;}
.btn-anim::before, .btn-anim-gutenberg a::before {content: ""; position: absolute; width: 0%; height: 100%; background-color: var(--couleur-principale); top: 0; left: 0; border-radius: 999rem; z-index: -1; transition: all 230ms ease-in-out;}

.visually-hidden {position: absolute; width: 1px !important; height: 1px;  padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0);  white-space: nowrap;  border: 0;}

.no-margin-top{margin-top: 0;}
div#tarteaucitronRoot.tarteaucitronBeforeVisible:before{display:none;}


  @media (hover: hover) {
    .btn-anim:hover, .btn-anim-gutenberg:hover a {color: #fff; border-color: var(--couleur-principale);}
    .btn-anim:hover::before, .btn-anim-gutenberg:hover a::before {width: 100%;}
  }

  @media (min-width: 768px) {
    .main-container.section-container-right {margin-right: 0;}
    .section-carrousel-right {margin-right: 0; margin-left: 2rem;}
  }
  @media (min-width: 1100px) {
    .main-container.section-container-right {max-width: calc(100% - 9rem); margin-left: 9rem;}
    .section-carrousel-right  {margin-left: calc(8rem - 2rem);}
  }
  
  @media (min-width: 1300px) {
    .main-container.section-container-right {max-width: calc(100% - 10rem); margin-left: 10rem;}
    .main-container.large-container {max-width: calc(100% - 20rem);  margin-left: 10rem;  margin-right: 10rem;}
    .breadcrumb {margin-bottom: 6rem;}

  }

  @media (min-width: 1500px) {
    .main-container.section-container-right {max-width: calc(100% - 14rem); margin-left: 14rem;}
    .main-container.large-container {max-width: calc(100% - 28rem);  margin-left: 14rem;  margin-right: 14rem;}
    .section-carrousel-right {margin-left: calc(14rem - 2rem);}
  }

@media (min-width: 1800px) {
    .main-container.section-container-right {max-width: calc(100% - 22rem); margin-left: 22rem;}
    .main-container.large-container {max-width: calc(100% - 44rem);  margin-left: 22rem;  margin-right: 22rem;}
    .section-carrousel-right {margin-left: calc(20rem - 2rem);}
  }

  @media (max-width: 768px) {
    .mobile-hidden{display: none;}
  }
  
span.underline{text-decoration: underline;}
h2 strong{color:var(--couleur-principale);}
  
/************************************************/
/**                                            **/
/**                 HEADER                    **/
/**                                            **/
/************************************************/

.header-menu {justify-content: space-between; background-color: rgba(250, 250, 250, .8); padding: .8rem 2rem; backdrop-filter: blur(8px);}
header.sticky .header-menu {box-shadow: var(--box-shadow); padding: .8rem 2rem; }
header.sticky .header-menu nav a {font-size: 1.4rem;}
nav a {text-decoration: none; font-size: 1.5rem;}
#menu-principal {flex: none;}
.main-menu {column-gap: 2rem; justify-content: flex-start;}
nav li.nav-recherche a::before {content: "\f002"; font-weight: 900; font-family: "Font Awesome 6 free"; display: inline-block; margin-right: .6rem;}
nav li.nav-compte a::before {content: "\f2bd"; font-weight: 900; font-family: "Font Awesome 6 free"; display: inline-block; margin-right: .6rem;}

@media (min-width: 1000px) {
.header-menu {justify-content: center; }
}


@media (min-width: 1200px) {
  .header-logo {
      max-height: none;
      max-width: none;
      width: 100%;
      height: 5rem;
  }
}

/************************************************/
/**                                            **/
/**                 FOOTER                    **/
/**                                            **/
/************************************************/

footer {padding-top: 0;}
footer a {text-decoration: none;}
.footer-desktop {justify-content: center; row-gap: 3rem;}
footer .footer-copyright a {text-decoration: none;}
.footer-logo {display: flex; flex-direction: column; align-items: flex-start; gap: 1.2rem;}
.footer-linkedin {display: inline-flex; align-items: center; justify-content: center; width: 3.4rem; height: 3.4rem; border-radius: 50%; background-color: var(--couleur-texte); border: none; color: #fff; font-size: 1.5rem; line-height: 1; text-decoration: none; transition: background-color 230ms ease-in-out;}
.footer-linkedin:hover {background-color: var(--couleur-principale);}
.footer-linkedin  i{color: white;}

footer .footer-mobile {background-color: #f9f9f9;}
footer .footer-mobile .menu-item a {color: var(--couleur-principale);} 
footer .footer-mobile-bottom {background-color: rgba(255, 255, 255, .8); backdrop-filter: blur(8px); box-shadow: var(--box-shadow); margin: 0 auto 2.5rem; border-radius: 2.5rem;}
footer .mobile-menu.hamburger {padding: .5rem;}
footer .hamburger-box {height: 2rem; width: 2.5rem;}
footer .hamburger-box .line {background-color: var(--couleur-texte); border-radius: .2rem;}
footer .footer-mobile-bottom .mobile-agence i, footer .footer-mobile-bottom .mobile-contact i {color: var(--couleur-texte); font-size: 2.5rem;}

.footer-mobile-menu .footer-mobile-logo a {height: 5rem;}
.footer-mobile-menu ul.menu>li>a, .footer-mobile-contact a {font-weight: 500;}
.footer-mobile .footer-col ul li {padding: 2rem 0;}
.footer-mobile .footer-col ul li a {padding: .5rem 4rem;}

.hamburger-box.active .line:nth-child(1) {transform: translateY(9px) rotate(45deg);}
.hamburger-box.active .line:nth-child(3) {transform: translateY(-9px) rotate(-45deg);}

@media (min-width: 1000px) {
    .footer-desktop .footer-logo {
        margin-bottom: 0;
        display: flex;
    }
}

 .footer-desktop .footer-logo .footer-linkedin{margin: auto;}

footer .footer-cta-contact {display: none;}


@media (min-width: 1100px) {
  footer .footer-cta-contact {display: flex;  position: fixed; bottom: -10rem; right: 8rem; background-color: var(--couleur-principale); padding: .8rem 1.8rem 1rem 1rem; align-items: center; border-radius: 99.9rem; box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; transition: bottom 800ms ease-in-out, opacity 400ms ease-in-out, transform 230ms ease-in-out; opacity: .6;}
  footer .footer-cta-contact.is-visible {bottom: 3.5rem; opacity: 1;}
  footer .footer-cta-contact .cta-contact-img {border-radius: 50%; overflow: hidden; width: 4.5rem; max-height: 5rem;}
  footer .footer-cta-contact li:first-of-type {font-weight: 600; font-size: 1.5rem; color: #fff;}
  footer .footer-cta-contact li.list-before {color: #fff; font-size: 1.4rem; margin-top: .4rem;}
  footer .footer-cta-contact li.list-before::before {content: '->'; margin-right: .5rem; transition: all 230ms ease-in-out;}
  footer .footer-cta-contact:hover {box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 3px 0px; transform: scale3d(1.02, 1.02, 1.02);}

}

/************************************************/
/**                                            **/
/**                 ACCUEIL                    **/
/**                                            **/
/************************************************/

.intro-accueil {margin-top: 4rem; padding-left: 1rem;}
.intro-accueil h1 {margin-bottom: 0; margin-top: 0; font-size: 3rem; font-family: var(--font-principale);}
.intro-accueil .accueil-subtitle {font-weight: 300; font-size: 3rem;  font-family: var(--font-principale); margin-top: .2rem; margin-bottom: 1.2rem;}
.intro-accueil h3 {text-transform: uppercase; font-weight: 600; margin-top: 0.5rem; font-size: 1.6rem; margin-top: 2rem;}
.intro-accueil .intro-accueil-right {display: none;}


@media (min-width: 768px) {
  .intro-accueil {padding-left: 0;}

}

@media (min-width: 1100px) {
  .intro-accueil {margin-top: 8rem;}
  .intro-accueil h1, .intro-accueil .accueil-subtitle {font-size: 3.6rem;}
  .intro-accueil .intro-accueil-right {display: block;}
}
  
@media (min-width: 1800px) {
  .intro-accueil h1 {padding-left: 0;}
  .intro-accueil h3 {padding-left: 0;}
}

/************************************************/
/**                                            **/
/**                 SLIDER RTL                 **/
/**                                            **/
/************************************************/

.slider-rtl {margin-left: 2rem;}
.slider-rtl h2 {margin-left: 1rem; margin-right: 2rem; margin-bottom: 0; }
.slider-rtl .btn-slider-rtl {display: inline-block; margin-left: 1rem; margin-top: 1rem; margin-bottom: 1.5rem; position: relative; top: .5rem;}
.slider-rtl .btn-slider-rtl a {padding: .5rem 1rem; background-color: transparent; font-size: 1.3rem; color: var(--couleur-texte); border: .1rem solid var(--couleur-texte);}
.slider-rtl .btn-slider-rtl a::after {content: '->'; margin-left: .5rem; transition: all 230ms ease-in-out;}
.slider-rtl .slick-track {min-width: 100%;}
.slider-rtl .slick-slide {min-width: 30rem; transition: all .3s cubic-bezier(0,0,.5,1); margin: 1rem;}
.slider-rtl .slick-slide:last-of-type { margin-right: 16rem;}
.slider-rtl .slick-arrow, .slick-slider .slick-arrow {background-color: #e8e8e8; border-radius: 50%; height: 5.5rem; width: 5.5rem; z-index: 1; transition: all 200ms ease-in-out;}
.slider-rtl .slick-arrow.slick-arrow::before, .slick-slider .slick-arrow::before {font-weight: 900; font-family: "Font Awesome 6 free"; font-size: 3rem; color: #554f4b;}
.slider-rtl .slick-prev.slick-disabled::before, .slider-rtl .slick-next.slick-disabled:before {opacity: 1;}
.slider-rtl .slick-arrow.slick-next {right: 2rem;}
.slider-rtl .slick-arrow.slick-next:before {content: "\f054";}
.slider-rtl .slick-arrow.slick-prev {left: 2rem; opacity: 0; pointer-events: none;}
.slider-rtl .slick-arrow.slick-prev:before {content: "\f053";}
.slider-rtl .slick-arrow.slick-prev.is-visible {opacity: .7; pointer-events: auto; }
.slider-rtl .slick-arrow.slick-prev:hover, .slider-rtl .slick-arrow.slick-prev:focus, .slider-rtl .slick-arrow.slick-next:hover, .slider-rtl .slick-arrow.slick-next:focus {background-color: #e8e8e8; opacity: .9; color: #000;}



@media (hover: hover) {
    .slider-rtl .btn-slider-rtl:hover a {color: #fff; border-color: var(--couleur-principale);}
}


@media (min-width: 768px) {
  .slider-rtl {margin-left: 0;}
  .slider-rtl h2 {margin-left: 4rem; margin-right: 0;}
  .slider-rtl .slick-slide {transform: translateX(3rem);}
  .slider-rtl .btn-slider-rtl {margin-left: 4rem;}

}
@media (min-width: 1100px) {
  .slider-rtl h2 {margin-left: 9rem; margin-right: 1rem;}
  .slider-rtl .btn-slider-rtl {margin-left: 9rem;}
  .slider-rtl .slick-slide {transform: translateX(8rem);}
  .slider-rtl .slick-slide:last-of-type { margin-right: 12rem;}
  .slider-rtl .slick-slide:hover {transform: translateX(8rem) scale3d(1.01, 1.01, 1.01)}
}


@media (min-width: 1500px) {
  .slider-rtl h2 {display: inline-block; margin-left: 14rem; margin-bottom: 2rem; margin-right: 1rem;}
  .slider-rtl .btn-slider-rtl {margin-left: 0;  margin-top: 0; margin-bottom: 0;}
  .slider-rtl .slick-slide {transform: translateX(13rem);}
  .slider-rtl .slick-slide:last-of-type { margin-right: 16rem;}
  .slider-rtl .slick-slide:hover {transform: translateX(13rem) scale3d(1.01, 1.01, 1.01)}
}



@media (min-width: 1800px) {
  .slider-rtl h2 {margin-left: 22rem;}
  .slider-rtl .slick-slide {transform: translateX(21rem);}
  .slider-rtl .slick-slide:last-of-type { margin-right: 23rem;}
  .slider-rtl .slick-slide:hover {transform: translateX(21rem) scale3d(1.01, 1.01, 1.01)}
}

/************************************************/
/**                                            **/
/**                   SINGLES                  **/
/**                                            **/
/************************************************/


.single h1 {font-family: var(--font-secondaire); text-align: center; }
.single .descriptif {text-align: center; max-width: 70rem; margin-left: auto; margin-right: auto; margin-top: 4rem;}
.single .descriptif p, .single .descriptif li {font-size: 1.8rem;}
.single .descriptif ul {list-style: none; font-size: inherit;}
.single .descriptif li {position: relative; max-width: max-content; margin: auto;}
.single .descriptif li::before, .single .descriptif li::after {content: "-"; display: inline-block; position: absolute; color: var(--couleur-principale); top: 0; }
.single .descriptif li::before {left: -2rem;}
.single .descriptif li::after {right: -2rem;}
.single .title-mixte h2 strong, .archive .title-mixte h2 strong {color: var(--couleur-principale);}
.single .title-focus h2, .archive .title-focus h2 {font-weight: 600;}
.single .title-center, .archive .title-center {text-align: center;}
.single .thumbnail img {object-fit: cover; height: 100%; width: 100%; display: block;}
.single .intro-surtitre {font-size: 2rem; text-align: center; margin-bottom: 0;}


.single aside {width: 100%; order: 1;}
.single aside .sommaire-title { display: none; font-weight: 700; color: var(--couleur-principale); font-size: 2.2rem;}
.single aside .sommaire { display: none; margin-left: 0; list-style: none; }
.single aside .sommaire li {margin: 0;}
.single aside .sommaire li a {text-decoration: none; font-size: 1.8rem; margin-bottom: 1rem; padding: 1rem 0;}
.single aside .sommaire li a.active {font-weight: 700;}
.single aside .association {flex-direction: column; border-bottom: .1rem solid var(--couleur-texte); padding-bottom: 2rem;}
.single aside .association h3 {font-weight: 700; border-bottom: .1rem solid var(--couleur-texte); padding-bottom: 2rem;}
.single aside .association .btn-aside {padding: .8rem 2rem; text-decoration: none; border-radius: var(--border-radius); border: .1rem solid var(--couleur-texte); max-width: max-content; margin: .8rem 0;}
.single aside .association .btn-aside::after {content: '->'; margin-left: .5rem; color: var(--couleur-texte); transition: all 230ms ease-in-out;}
.single .section-cta h2, .single .section-cta .btn-cta {text-align: center; margin-left: auto; margin-right: auto;}

.single-btn-slider-rtl {display: inline-block; margin-left: 1rem; margin-top: 1rem; margin-bottom: 1.5rem; padding: .5rem 1rem; background-color: transparent;  font-size: 1.3rem; color: var(--couleur-texte);  border: .1rem solid var(--couleur-texte); border-radius: 99.9rem; position: relative; top: .5rem;}
.single-btn-slider-rtl::after, .btn-single-light::after {content: '->'; margin-left: .5rem; color: var(--couleur-texte); transition: all 230ms ease-in-out; text-wrap: nowrap;}


a.btn-single-light {padding: .8rem 2rem; background-color: transparent; font-size: 1.3rem; color: var(--couleur-texte); border: .1rem solid var(--couleur-texte); border-radius: 99.9rem;}
a.btn-external-link {background-color: var(--couleur-principale); border-radius: 99.9rem; color: #fff; padding: .8rem 2rem;}
a.btn-external-link::after {content:"\f178"; font-family: "Font Awesome 6 free"; font-weight: 900; margin-left: .8rem; color: #fff; display: inline-block; transform: rotate(310deg); transition: all 230ms ease-in-out;}
a.btn-external-link::before {background-color: var(--couleur-texte);}


@media (hover: hover) {
  .single aside .association .btn-aside:hover {margin-left: .5rem; box-shadow: inset 25em 0 0 0 var(--couleur-principale); color: #fff; border-color: var(--couleur-principale);}
  .single aside .association .btn-aside:hover::after { margin-left: .7rem; color: #fff;}
  .single-btn-slider-rtl:hover::after, .btn-single-light:hover::after {color: #fff;}
}

  
@media (min-width: 768px) {
.single-btn-slider-rtl {margin-left: 4rem;}
}

@media (min-width: 1025px) {
  .single aside {width: 40%; order: initial;}
  .single aside .aside-sticky {position: sticky; top: 15rem;}
  .single aside .sommaire-title, .single aside .sommaire {display: block;}
  .single aside .association {margin-top: 3rem; }
  .single .descriptif p, .single .descriptif li {font-size: 2rem;}
  }

@media (min-width: 1100px) {
  .single-btn-slider-rtl {margin-left: 9rem;}
}

@media (min-width: 1400px) {
  .single .title-focus h2, .archive .title-focus h2 {font-size: 3.3rem;}
  .single .intro-surtitre {font-size: 2.5rem;}
  .single-btn-slider-rtl {margin-left: 0;  margin-top: 0; margin-bottom: 0;}
  .single-post-division {margin-top: 10rem;}
}




/************************************************/
/**                                            **/
/**                 SINGLE BLOG                **/
/**                                            **/
/************************************************/



.single-post .single-intro {flex-direction: column; margin-bottom: 4rem;}
.single-post .single-intro h1 {order: 1;}
.single-post .single-presentation .temoignage-thumbnail.thumbnail {border-radius: var(--border-radius); overflow: hidden; margin-left: auto; margin-right: auto; }
.single-post aside .association h3 {color: var(--couleur-principale);}
.single-post .single-post-carrousel h2 {text-align: center; margin-bottom: 2rem; padding: 0 2rem;}


@media (min-width: 1025px) {
  .single-post .single-post-carrousel h2 {margin-bottom: 5rem;}
  }



@media (min-width: 1400px) {
  .single-post .single-intro {margin-bottom: 8rem;}
  .single-post .single-presentation .temoignage-thumbnail.thumbnail {width: 90rem;}

}


/************************************************/
/**                                            **/
/**              SINGLE TEMOIGNAGE             **/
/**                                            **/
/************************************************/


.single-temoignage .single-temoignage-intro {flex-direction: column; margin-bottom: 4rem;}
.single-temoignage .single-temoignage-intro h1 {order: 3; font-family: var(--font-principale); font-size: 2.5rem; margin-top: .8rem;}
.single-temoignage .single-temoignage-intro h2 {text-align: center; font-family: var(--font-secondaire); font-size: 3rem; margin-bottom: 0; margin-top: .5rem;}
.single-temoignage .single-temoignage-presentation .temoignage-thumbnail.thumbnail {border-radius: var(--border-radius); overflow: hidden; margin-left: auto; margin-right: auto; filter: grayscale(); width: calc(100% - 4rem);}
.single-temoignage .single-temoignage-accordeon {column-gap: 10rem; flex-wrap: wrap;}
.single-temoignage .single-temoignage-accordeon aside {width: 100%; order: 1;}
.single-temoignage .single-temoignage-accordeon aside .sommaire-title { display: none; font-weight: 700; color: var(--couleur-principale); font-size: 2.2rem;}
.single-temoignage .single-temoignage-accordeon aside .sommaire { display: none; margin-left: 0; list-style: none; }
.single-temoignage .single-temoignage-accordeon aside .sommaire li a {text-decoration: none; font-size: 1.8rem; margin-bottom: 1rem; padding: 1rem 0;}
.single-temoignage .single-temoignage-accordeon aside .sommaire li a.active {font-weight: 700;}
.single-temoignage .single-temoignage-accordeon aside .association {flex-direction: column; border-bottom: .1rem solid var(--couleur-texte); padding-bottom: 2rem;}
.single-temoignage .single-temoignage-accordeon .temoignage-accordeon-content {flex: 1;}
.single-temoignage .single-temoignage-accordeon .temoignage-accordeon-content h3 {font-weight: 700;}
.single-temoignage .single-temoignage-accordeon .temoignage-accordeon-content .sommaire-link {margin-bottom: 5.5rem;}
.single-temoignage .single-temoignage-carrousel h2 {text-align: center; margin-bottom: 2rem; padding: 0 2rem;}
.single-temoignage .single-temoignage-retour {background-color: #fff; border-radius: var(--border-radius); padding: 2rem;}
.single-temoignage .single-temoignage-retour p {text-align: center;}
.single-temoignage .single-temoignage-retour h2 {color: var(--couleur-principale); margin-top: 0; text-align: center; font-weight: 700;}

@media (hover: hover) {
.single-temoignage .single-temoignage-accordeon aside .sommaire li a:not(.active):hover {color: var(--couleur-principale);}
}

@media (min-width: 1025px) {
  .single-temoignage .single-temoignage-intro {margin-bottom: 8rem;}
  .single-temoignage .single-temoignage-carrousel h2 {margin-bottom: 5rem;}
  .single-temoignage .single-temoignage-intro h1 {font-size: 5rem;}
  .single-temoignage .single-temoignage-intro h2 {font-size: 5.8rem; margin-bottom: .5rem; }
  .single-temoignage .single-temoignage-accordeon aside {width: 40%; order: initial;}
  .single-temoignage .single-temoignage-accordeon aside .aside-sticky {position: sticky; top: 15rem;}
  .single-temoignage .single-temoignage-accordeon aside .sommaire-title, .single-temoignage .single-temoignage-accordeon aside .sommaire {display: block;}
  .single-temoignage .single-temoignage-accordeon .temoignage-accordeon-content h3 {font-size: 2.5rem;}
  .single-temoignage .single-temoignage-accordeon aside .association {margin-top: 3rem; }

}

@media (min-width: 1400px) {
  .single-temoignage .single-temoignage-presentation .temoignage-thumbnail.thumbnail {width: 90rem;}
  .single-temoignage .single-temoignage-retour {max-width: 80rem; padding: 5rem; }

}


/************************************************/
/**                                            **/
/**                 SINGLE METIER              **/
/**                                            **/
/************************************************/

.single-metier .single-metier-intro {flex-direction: column; margin-bottom: 4rem;}
.single-metier .single-metier-intro .sous-titre {order: -1; text-align: center; font-size: 2rem; margin-bottom: 0;}

.single-metier .single-metier-presentation {column-gap: 6rem; flex-wrap: wrap; align-items: center;}
.single-metier .single-metier-presentation .metier-thumbnail {width: 100%; border-radius: var(--border-radius); overflow: hidden; max-height: 45rem;}
.single-metier .single-metier-presentation .metier-presentation {flex: 1;}
.single-metier .single-metier-presentation .metier-presentation p {font-size: 1.6rem;} 


.single-metier .single-metier-contenu {display: flex; align-items: center; flex-direction: column; margin-top: 8rem;}
.single-metier .single-metier-contenu h2 {font-weight: 700; margin-bottom: 5rem;}

.single-metier .single-metier-contenu .metier-bloc {background-color: #fff; align-items: flex-start; column-gap: 4rem; row-gap: .5rem; padding: 3rem; border-radius: var(--border-radius); margin-bottom: 3rem; flex-wrap: wrap;}
.single-metier .single-metier-contenu .metier-bloc .metier-left {color: var(--couleur-principale); font-weight: 700; margin-top: 0;}
.single-metier .single-metier-contenu .metier-bloc .metier-right {flex: 1;}
.single-metier .single-metier-contenu .metier-bloc .metier-right p:first-of-type {margin-top: 0;}
.single-metier .single-metier-contenu .metier-bloc .btn-metier {margin-top: 2rem; padding: 1rem 3rem; text-decoration: none; border: .1rem solid var(--couleur-texte); border-radius: var(--border-radius); color: var(--couleur-texte);}


@media (hover: hover) {
  .single-metier .single-metier-contenu .metier-bloc .btn-metier:hover {border-color: transparent; color: #fff; box-shadow: inset 25em 0 0 0 var(--couleur-principale);}
}


@media (min-width: 1025px) {
  .single-metier .single-metier-intro {margin-bottom: 6rem;}
  .single-metier .single-metier-intro .sous-titre {font-size: 3rem;}
  .single-metier .single-metier-presentation .metier-thumbnail {width: 50%; }
  .single-metier .single-metier-contenu .metier-bloc {column-gap: 6rem; padding: 5rem; margin-bottom: 6rem;}
  .single-metier .single-metier-contenu .metier-bloc .metier-left {flex: 0 0 30%; font-size: 2.5rem; }
}

@media (min-width: 1500px) {
  .single-metier .single-metier-intro {margin-bottom: 8rem;}
}


/************************************************/
/**                                            **/
/**                 SINGLE POLE                **/
/**                                            **/
/************************************************/

.single-pole h1 {margin-bottom: .8rem;  }
.single-pole .titre-secondaire {text-align: center; font-size: 2rem; margin-top: .8rem; margin-bottom: 7rem;}
.single-pole .single-pole-atouts h2 {text-align: center;}
.single-pole .bloc-mots-cles {flex-wrap: wrap;}
.single-pole .single-pole-atouts .mot-cle-slide {box-shadow: var(--box-shadow); background-color: #fff; border-radius: var(--border-radius); overflow: hidden; padding: 4rem 2rem; margin: 2rem 1rem;}
.single-pole .single-pole-atouts .mot-cle-slide h3 {margin: 0; font-weight: 600; text-align: center; font-size: 2rem;}
.single-pole .single-pole-methodo .slick-track {display: flex !important; /*padding-inline-end: 5rem;*/}
.single-pole .single-pole-methodo .methodo-slide {display: flex !important; flex-direction: column; text-decoration: none; height: inherit; background-color: #fff; box-shadow: var(--box-shadow); overflow: hidden; border-radius: var(--border-radius); margin: 2rem 1rem;}
.single-pole .single-pole-methodo .methodo-left {background-color: var(--couleur-secondaire); padding: 1.5rem; justify-content: flex-start; align-items: center; width: 100%; min-height: 10rem;}
.single-pole .single-pole-methodo .methodo-left h3 {color: #fff; font-size: 1.8rem; margin: 0;}
.single-pole .single-pole-methodo .methodo-left span {display: block; color: #fff; font-size: 2.8rem; font-weight: 600; padding-right: 2rem;}
.single-pole .single-pole-methodo .methodo-right {padding: 1.5rem; flex: 1; flex-direction: column;}
.single-pole .single-pole-methodo .methodo-right p:first-of-type {margin-top: 0;}
.single-pole .single-pole-methodo .methodo-right p:last-of-type {margin-bottom: 0;}

.single-pole .single-pole-presentation {column-gap: 6rem; flex-wrap: wrap;}
.single-pole .single-pole-presentation .presentation-text {width: 100%;}
.single-pole .single-pole-presentation .presentation-thumbnail {background-position: center; background-size: cover; background-repeat: no-repeat; border-radius: var(--border-radius); width: 100%; height: 35rem;}
.single-pole .single-pole-presentation .btn-cta {margin-top: 2rem;}

.single-pole .single-pole-accordeon h2 {text-align: center;}
.single-pole .single-pole-projet .slick-track {display: flex !important;}
.single-pole .single-pole-projet .projet-link {display: flex !important; flex-direction: column; height: inherit; background-color: #fff; box-shadow: var(--box-shadow); border-radius: var(--border-radius); overflow: hidden; text-decoration: none;}
.single-pole .single-pole-projet .projet-taxonomie {display: inline-flex; align-items: center; background-color: var(--couleur-principale); color: #fff; font-size: 1.2rem; padding: .3rem .5rem; border-radius: 2.5rem;}
.single-pole .single-pole-projet .projet-description {margin-bottom: 0;}
.single-pole .single-pole-projet .projet-content {padding: 2rem;}
.single-pole .single-pole-projet .projet-taxonomies {flex-wrap: wrap; column-gap: .7rem; row-gap: .7rem;}
.single-pole .single-pole-projet .projet-title {font-weight: 600; font-size: 2.5rem; margin-bottom: 1.2rem; margin-top: 0;}
.single-pole .single-pole-projet .projet-logo {margin-top: auto; }
.single-pole .single-pole-projet .projet-logo img {width: 100%; padding: 2rem; object-fit: contain; margin-left: auto; margin-right: auto; max-height: 10rem;}
.single-pole .single-pole-projet .projet-logo img.logo-defaut {opacity: .3; max-height: 12rem;}

.single-pole .single-pole-hero {height: 50vh; align-items: center; padding: 3rem; justify-content: center; border-radius: var(--border-radius); background-repeat: no-repeat; background-position: center; background-size: cover; position: relative; overflow: hidden;}
.single-pole .single-pole-hero p {font-size: 2rem; color: #fff;  text-shadow: 1px 1px 1px rgba(0, 0, 0, .6), 1px 1px 15px rgba(0, 0, 0, .2), 0px 0px 35px rgba(0, 0, 0, .3); text-align: center; backdrop-filter: blur(1px); padding: .5rem;}
/*.single-pole .single-pole-hero::before {content: ""; background-color: rgba(0, 0, 0, .2); width: 100%; height: 100%; position: absolute; top: 0; left: 0;}*/

.single-pole .single-pole-prestations .slick-track {display: flex !important;}
.single-pole .single-pole-prestations .prestation-slide {text-decoration: none; height: inherit; background-color: #fff; box-shadow: var(--box-shadow);  overflow: hidden; border-radius: var(--border-radius); margin: 2rem 1rem ;}
.single-pole .single-pole-prestations .prestation-image-wrapper {width: 40%; background-repeat: no-repeat; background-position: center; background-size: cover;}
.single-pole .single-pole-prestations .prestation-vignette {height: 100%;}
.single-pole .single-pole-prestations .prestation-image {width: 100%; height: 100%; object-fit: cover;}
.single-pole .single-pole-prestations .prestation-content {width: 60%; padding: 2rem;}
.single-pole .single-pole-prestations .prestation-content .prestation-description {font-size: 1.4rem; margin-bottom: 0;}
.single-pole .single-pole-prestations .prestation-title {font-weight: 600; color: var(--couleur-principale); margin-top: 0; font-size: 1.5rem;}
.single-pole .single-pole-prestations .prestation-title::after {content: ''; display: block; height: .1rem; width: 80%; margin-top: 1rem; background-color: var(--couleur-texte);}

.single-pole .single-pole-autres {margin-bottom: 3rem;}
.single-pole .single-pole-autres h2 {text-align: center;}
.single-pole .single-pole-autres .pole-slide {text-decoration: none; color: inherit; display: flex; min-height: 25rem; width: 100%;}
.single-pole .single-pole-autres .pole-slide .pole-vignette {position: relative; overflow: hidden; border-radius: var(--border-radius); flex-direction: column; justify-content: center; padding: 0 2rem;  box-shadow: var(--box-shadow); transition: inherit; width: 100%;}
.single-pole .single-pole-autres .pole-slide .pole-vignette::before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,0.5) 40%, rgba(0,0,0,0.1) 60%, transparent 100%); z-index: 2; pointer-events: none; border-radius: 20px;}
.single-pole .single-pole-autres .pole-image-wrapper {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; overflow: hidden;}
.single-pole .single-pole-autres .pole-image {width: 100%; height: 100%; object-fit: cover;}
.single-pole .single-pole-autres .pole-content {position: relative; z-index: 3;}
.single-pole .single-pole-autres .pole-title {margin: 0 0 2rem 0; line-height: 1; font-size: 3rem; font-weight: 400; color: #fff; font-family: "Abril Fatface", serif; text-shadow: -1px -1px 1px rgba(255, 255, 255, .1), 1px 1px 1px rgba(0, 0, 0, .8);}
.single-pole .single-pole-autres .pole-title .pole-prefix {font-family: "Inter", sans-serif;font-weight: 300;}
.single-pole .single-pole-autres .pole-description {color: #fff; margin-bottom: 0; text-shadow: -1px -1px 1px rgba(255, 255, 255, .1), 1px 1px 1px rgba(0, 0, 0, .8); font-size: 1.8rem; }
.single-pole .single-pole-autres .bloc-autres-poles {flex-wrap: wrap; column-gap: 4rem; row-gap: 2.5rem;}
.single-pole .single-pole-autres .container-bloc-presentation-conflr {margin-top: 2.5rem; flex-wrap: wrap;}
.single-pole .single-pole-autres .container-bloc-presentation-conflr h3 {color: var(--couleur-principale); text-transform: uppercase; margin-top: 0;}

.single-pole .liste-bg ul {list-style: none; margin-left: 0;}
.single-pole .liste-bg li {background-color: #fff; padding: 2rem 4rem; margin-bottom: 2rem; border-radius: var(--border-radius);}
.single-pole .liste-bg li strong {color: var(--couleur-principale);}

.single-pole body, body.single-pole {scroll-snap-type: y mandatory; scroll-behavior: smooth;}
.single-pole .single-pole-parent-intro {flex-wrap: wrap; column-gap: 6rem; align-items: flex-start; margin-bottom: 5rem; min-height: calc(100vh - 300px);}
.single-pole .single-pole-parent-intro .pole-intro-left,
.single-pole .single-pole-parent-intro .pole-intro-right {width: 100%;}
.single-pole .single-pole-parent-intro h1 {margin: 0; text-align: center;}
.single-pole .single-pole-parent-intro .description-courte-pole {font-size: 1.8rem; margin-top: 2rem; text-align: center;}
.single-pole .single-pole-parent-intro .pole-intro-right {margin-top: 2rem;}
.single-pole .single-pole-parent-presentation h2 strong {color: var(--couleur-texte);}
.single-pole .single-pole-parent-text h2 strong {color: var(--couleur-texte);}

.single-pole-parent-marquee {height: 100vh; overflow: clip;}

#marquee-section {display: flex; overflow: scroll; height: 150vh; overflow: visible; view-timeline-name: --section-pin-tl;  view-timeline-axis: block;}

.marquee-wrap-sticky {height: 35vh; width: 100vw; position: sticky; top: 20vh; width: 100vw; overflow-x: hidden; }

.marquee-wrap { display: flex; justify-content: flex-start; align-items: center; will-change: transform; transform: translateZ(0); padding: 50px 10vw; height: 35vh; width: 250vmax; will-change: transform; animation: linear move forwards; animation-timeline: --section-pin-tl; animation-range: entry 60% contain 100%;}


.single-pole-parent-marquee .pole-enfant-link {text-decoration: none; margin: 0 3rem;}
.single-pole-parent-marquee .pole-enfant-link h3 {font-size: 1.8rem; font-weight: 600; }
.single-pole .single-pole-methodo .slick-slide:last-of-type { margin-right: 4rem;}

@keyframes move {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  50% {
    opacity: 1;
  }

  70% {
    opacity: 0;
  }

  80% {
    opacity: 0;
    transform: translateX(calc(-100% + 100vw));
  }
}


@media (hover: hover) {
.single-pole .single-pole-presentation .btn-cta:hover {box-shadow: inset 35em 0 0 0 var(--couleur-texte);}
}


@media (min-width: 768px) {
  .single-pole .single-pole-projet .projet-content {padding: 2rem 3rem;}
  .single-pole .single-pole-prestations .prestation-slide {margin: 2rem;}
  .single-pole .single-pole-prestations .prestation-content {width: 50%; padding: 3rem;}
  .single-pole .single-pole-prestations .prestation-image-wrapper {width: 50%;}
  .single-pole .single-pole-methodo .methodo-slide:hover {transform: translateX(3rem);}
  .single-pole .single-pole-hero {padding: 3rem 5rem;}
}

@media (min-width: 1025px) {
  .single-pole .single-pole-methodo .methodo-left, .single-pole .single-pole-methodo .methodo-right {padding: 2.5rem 1.5rem;}
  .single-pole .single-pole-projet .projet-logo {padding: 2rem 3rem;}
  .single-pole .single-pole-prestations .prestation-image-wrapper {height: inherit;}
  .single-pole .single-pole-autres .pole-slide {flex: 1; height: inherit; height: 30rem;}
  .single-pole .single-pole-autres .pole-title {font-size: 4rem;}
  .single-pole .single-pole-autres .pole-slide .pole-vignette {padding: 2rem 5rem;}
  .single-pole .single-pole-autres .container-bloc-presentation-conflr {margin-top: 4rem;}
  .single-pole .single-pole-autres .container-bloc-presentation-conflr h3 {font-size: 2rem;}
  .single-pole .single-pole-autres h2 {text-align: center; margin-bottom: 5rem;}
  .single-pole .single-pole-autres {margin-bottom: 5rem;}
  .single-pole .single-pole-parent-intro {align-items: center;}
  .single-pole .single-pole-parent-intro .pole-intro-left,
  .single-pole .single-pole-parent-intro .pole-intro-right {width: calc(50% - 3rem);}
  .single-pole .single-pole-parent-intro .pole-intro-right {margin-top: 0;}
  .single-pole-parent-marquee .pole-enfant-link h3 {font-size: 4rem;}
  .single-pole .single-pole-atouts .mot-cle-slide {flex: 1;}
  .single-pole .single-pole-methodo .slick-slide:last-of-type { margin-right: 12rem;}
  .single-pole .single-pole-parent-intro h1 {text-align: right;}
  .single-pole .single-pole-presentation .presentation-thumbnail {flex: 1; height: auto; width: auto;}
  .single-pole .single-pole-presentation .presentation-text {width: 55%;}
  .single-pole .single-pole-presentation .btn-cta {margin-top: 3rem;}
  .single-pole .single-pole-hero {height: 60vh;}
  .single-pole .single-pole-hero p { max-width: 70rem;  margin: 0 auto; font-size: 2.2rem; }

}
@media (min-width: 1100px) {
  .single-pole .single-pole-methodo .methodo-slide:hover {transform: translateX(8rem);}
}

@media (min-width: 1500px) {
    .single-pole .single-pole-atouts .mot-cle-slide {padding: 7rem 5rem; margin: 2rem 1.5rem;}
    .single-pole .single-pole-atouts .mot-cle-slide h3 { font-size: 4rem;}
    .single-pole .single-pole-autres .pole-slide .pole-vignette {padding: 4rem 7rem;}
    .single-pole .single-pole-parent-presentation.descriptif {margin-top: 10rem;}
    .single-pole .single-pole-parent-intro h1 {font-size: 8.8rem; text-align: right; line-height: 90%;}
    .postid-370.single-pole .single-pole-parent-intro h1 {font-size: 6rem;}
    .single-pole .single-pole-parent-intro .description-courte-pole {font-size: 2rem; text-align: right; margin-top: 4rem;  }
    .single-pole .single-pole-methodo .slick-slide:last-of-type { margin-right: 16rem;}
    .single-pole .single-pole-methodo .methodo-slide:hover {transform: translateX(13rem);}
    .single-pole .single-pole-methodo .methodo-slide {margin: 1rem; flex-direction: row;}
    .single-pole .single-pole-methodo .methodo-left {width: 40%; min-height: auto; }
    
}


@media (min-width: 1800px) {
  .single-pole .single-pole-prestations .prestation-vignette {align-items: center;}
  .single-pole .single-pole-prestations .prestation-content {padding: 3rem 5rem; width: 60%;}
  .single-pole .single-pole-prestations .prestation-image-wrapper {width: 40%;}
  .single-pole-parent-marquee {height: 45vh;}
  .marquee-wrap-sticky {top: 9vh; height: 30vh}
  .marquee-wrap {height: 30vh;}
  .single-pole .single-pole-methodo .methodo-slide:hover {transform: translateX(21rem);}
  .single-pole .single-pole-methodo .slick-slide:last-of-type { margin-right: 25rem;}
  .single-pole .single-pole-parent-intro {min-height: calc(100vh - 40rem);}
}



/*pour afficher barre plus facilement*/
.barre-sous-bouton {content: ""; display: block; width: 100%; height: 0.125rem; background-color: #c0c0c0; margin-top: 0.8rem; margin-bottom: 2.5rem;}


.zone-foire-questions .sommaire-link {margin-bottom: 13%;}
.zone-foire-questions .sommaire-link h3 {font-weight: bold;}


/************************************************/
/**                                            **/
/**                SINGLE EQUIPE               **/
/**                                            **/
/************************************************/


.single-equipe .single-equipe-presentation {column-gap: 6rem; flex-wrap: wrap;}
.single-equipe .single-equipe-presentation .equipe-thumbnail {margin: auto;}
.single-equipe .single-equipe-presentation .equipe-thumbnail img {height: 28rem; width: 28rem; border-radius: 50%; object-fit: cover;}
.single-equipe .single-equipe-presentation .equipe-presentation {width: 100%;}
.single-equipe .single-equipe-presentation .equipe-presentation p:first-child{margin-top: 0;}
.single-equipe .single-equipe-accordeon {flex-wrap: wrap; column-gap: 8rem; max-width: 90rem; align-items: center;}
.single-equipe .single-equipe-accordeon h2 {width: 100%; margin-bottom: 0;}  
.single-equipe .single-equipe-accordeon .container-bloc-accordeon {width: 100%;}
.single-equipe .single-equipe-accordeon .bloc-accordeon-img {width: 20rem; margin: 3rem auto 0;}

.container-bloc-carrousel-equipes .equipe-slide {border-radius: var(--border-radius); background-color: #fff; box-shadow: var(--box-shadow); margin: 2rem 1rem; display: flex !important; flex-direction: column; height: inherit; transition: all 230ms ease-in-out;}

.single-equipe.postid-792 .single-equipe-presentation .equipe-thumbnail img{border-radius:0;background-size: contain;height: auto;}


@media (min-width: 768px) {
  .single-equipe .single-equipe-presentation {max-width: 90rem;}
  .single-equipe .single-equipe-presentation .equipe-presentation {flex: 1; width: auto;}
  .single-equipe .single-equipe-presentation .equipe-thumbnail, .single-equipe .single-equipe-accordeon .bloc-accordeon-img {margin: 0;}
  .single-equipe .single-equipe-accordeon .container-bloc-accordeon {width: auto; flex: 1;}
}






/************************************************/
/**                                            **/
/**                 SINGLE PROJET              **/
/**                                            **/
/************************************************/

/* Styles des blocs projet déplacés dans les CSS de chaque bloc :
   bloc-projet-entete, bloc-projet-intro, bloc-projet-visuel-central,
   bloc-projet-citation, bloc-projet-complement, bloc-projet-grille,
   bloc-projet-slider-sync, bloc-projet-galerie */

/* Témoignage — reste en PHP dans single-projet.php */
.single-projet .single-projet-temoignage {border-radius: var(--border-radius); overflow: hidden; box-shadow: var(--box-shadow); align-items: center; flex-wrap: wrap;}
.single-projet .single-projet-temoignage .temoignage-text, .single-projet .single-projet-temoignage .temoignage-img {width: 100%;}
.single-projet .single-projet-temoignage .temoignage-text {padding: 3rem 2rem;}
.single-projet .single-projet-temoignage .temoignage-text h2 {margin-top: 0;}
.single-projet .single-projet-temoignage .temoignage-text .single-btn-slider-rtl {margin-top: 1.5rem;}
.single-projet .single-projet-temoignage .temoignage-img {max-height: 30rem;}
.single-projet .single-projet-temoignage .temoignage-img img {object-fit: cover; height: 100%; width: 100%; filter: grayscale();}

@media (hover: hover) {
.single-projet .single-projet-temoignage .temoignage-text a:hover span {margin-left: .3rem; margin-right: .3rem;}
}

@media (min-width: 1400px) {
  .single-projet .single-projet-temoignage .temoignage-text, .single-projet .single-projet-temoignage .temoignage-img {width: 50%;}
  .single-projet .single-projet-temoignage .temoignage-text {padding: 6rem;}
  .single-projet .single-projet-temoignage .temoignage-img {max-height: 40rem;}
}



/************************************************/
/**                                            **/
/**                      FORM                  **/
/**                                            **/
/************************************************/


.wpcf7-form{display:flex;flex-direction:column;}
.wpcf7-form .wpcf7-turnstile{order:2;}
.header-search-toggle {display: inline-flex; align-items: center; margin-left: 2rem; gap: 1.5rem;}
.search-icon-btn {background: none; border: none; font-size: 2rem; color: var(--couleur-texte, #333); cursor: pointer; padding: 0.5rem; transition: color 0.3s ease;}
.search-icon-btn:hover {color: var(--couleur-principale, #0073aa);}
.header-linkedin {display: inline-flex; align-items: center; justify-content: center; width: 3.6rem; height: 3.6rem; border-radius: 50%; background-color: var(--couleur-texte); border: none; color: #fff; font-size: 1.6rem; line-height: 1; text-decoration: none; transition: background-color 230ms ease-in-out;}
.header-linkedin:hover {background-color: var(--couleur-principale);}
.search-overlay {position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background-color: rgba(85, 85, 85, 0.5); z-index: 9999; overflow-y: auto; backdrop-filter: blur(7px); display: flex; align-items: center; justify-content: center; pointer-events: none;}
.header-linkedin:visited,.header-linkedin i{color: white;}


.search-overlay.is-open {pointer-events: auto;}
.search-overlay-content {max-width: 85%; width: 100%; padding: 2rem; background-color: rgba(248, 248, 248, 0.92); border-radius: var(--border-radius); backdrop-filter: blur(7px);}
.search-header {position: absolute; right: -1rem; top: -1rem; background-color: rgba(17, 24, 28, .8); border-radius: 50%; width: 3.5rem; height: 3.5rem; display: flex; justify-content: center; align-items: center; transition: all 230ms ease-in-out;}
.search-close-btn {background: none; border: none; font-size: 2rem; color: #fff; cursor: pointer; padding: 0.5rem; transition: color 0.3s ease;}
.search-input-wrapper {position: relative; margin-bottom: 2rem;}
.search-input-wrapper i {font-size: 1.6rem; color: var(--couleur-principale);}
.search-input {width: 100%; padding: 1.2rem 0; font-size: 1.6rem; font-family: inherit; border-width: 0 0 .2rem 0; border-color: var(--couleur-texte); outline: none; background-color: transparent; }
.search-input-icon {position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); color: #999; font-size: 1.5rem;}
.search-results {display: flex; flex-direction: column; }
.search-result-item {padding: 1rem 1.5rem; margin-bottom: 1rem; margin-top: 1rem; background: #f9f9f9; border-radius: .5rem; border-left: 4px solid var(--couleur-principale); transition: transform 0.2s ease, box-shadow 0.2s ease; text-decoration: none;}
.search-result-item h3 {margin: 0 0 0.5rem 0; font-size: 1.4rem; color: var(--couleur-texte, #333);}
.search-result-item h3 a {color: var(--couleur-texte); text-decoration: none;}
.search-result-item h3 a:hover {text-decoration: underline;}
.search-result-item .result-excerpt {color: var(--couleur-texte-alter); font-size: 1.2rem; margin: 0.5rem 0 0 0;}
.search-result-item .result-type {display: inline-block; padding: 0.3rem 0.8rem; background: var(--couleur-principale, #0073aa); color: #fff; font-size: 1rem; border-radius: 3px; margin-top: 0.5rem;}
.search-no-results {text-align: center; padding: 3rem; color: #999; font-size: 1.4rem;}
.search-loading {text-align: center; padding: 2rem; font-size: 2rem; color: var(--couleur-principale, #0073aa);}


form {display: flex; flex-wrap: wrap; gap: 2rem; max-width: 80rem;}
form input:not([type="checkbox"]), form select {border-radius: 99rem;}
form input:not([type="checkbox"]), form textarea, form select {padding: 1rem 1.5rem; font-size: 1.6rem; border: .1rem solid var(--couleur-texte); }
form textarea {width: 100%; border-radius: 1.2rem;}
form input:focus-visible, form textarea:focus-visible, form select:focus-visible {outline-color: var(--couleur-texte);}
form .form-row {display: flex; flex-wrap: wrap; gap: 2rem; width: 100%;}
form .form-column {min-width: calc(50% - 2rem); width: 100%;}
form input[type="checkbox"] + span {font-size: 1.3rem;}
form input[type="submit"] {padding: 1rem 2.5rem; background-color: var(--couleur-principale); color: #fff; border-radius: 99.9rem; display: block; border: 0; cursor: pointer;}
form .btn-submit {justify-content: flex-end;}

form span.first.last, form .form-row p { margin: 0;}


@media (min-width: 1025px) {
  .search-overlay-content {max-width: 80rem; padding: 2rem 3rem;}
  .search-input-wrapper i {font-size: 2.5rem; color: var(--couleur-principale);}
  .search-input {font-size: 3rem;}
  .search-header {right: -1.8rem; top: -1.8rem; width: 5rem; height: 5rem;}
  .search-close-btn {font-size: 4rem;}
  form .form-column {flex: 1;}


}

@media (hover: hover) {
    .search-header:hover {background-color: rgba(17, 24, 28, 1);}
    .search-result-item:hover {transform: translateX(5px); box-shadow: 0 3px 10px rgba(0,0,0,0.1);}
    form input[type="submit"]:hover {box-shadow: inset 25em 0 0 0 var(--couleur-texte);}

}



/************************************************/
/**                                            **/
/**                   ARCHIVES                 **/
/**                                            **/
/************************************************/


.archive .archive-header {margin-bottom: 4rem;}
.archive .archive-grid {flex-wrap: wrap; column-gap: 3rem; row-gap: 2rem; margin-bottom: 5rem;}
.archive .archive-grid .archive-wrapper, .blog .archive-grid .archive-wrapper {width: 100%; flex-direction: column; height: inherit; background-color: #fff; box-shadow: var(--box-shadow); border-radius: var(--border-radius); overflow: hidden; text-decoration: none;}
.archive .archive-grid .archive-content {padding: 2rem 3rem;}
.archive .archive-grid .archive-content h3 {font-weight: 600; font-size: 2.5rem; margin-bottom: 1.2rem; margin-top: 0; }
.archive .archive-grid .archive-taxonomies, .blog .archive-grid .archive-taxonomies {flex-wrap: wrap; column-gap: .7rem; row-gap: .7rem;}
.archive .archive-grid .archive-taxonomies span, .blog .archive-grid .archive-taxonomies span {display: inline-flex; align-items: center; background-color: var(--couleur-principale); color: #fff; font-size: 1.2rem; padding: .3rem .5rem; border-radius: 2.5rem;}
.archive .archive-grid .archive-thumbnail {width: 100%; height: 18rem; margin-top: auto;}

.blog .resume-post{margin-top: 1rem;}

@media (min-width: 768px) {
    .blog .bloc-filtre-cas, .post-type-archive-cas-dusage .bloc-filtre-cas {
        margin: 8rem 0 5.5rem;
        column-gap: 1rem;
        row-gap: 1rem;
    }
}

.archive .archive-grid .archive-content h3.temoignage-header {font-size: 1.6rem; font-weight: 300;}
.archive .archive-grid .archive-content h3 .temoignage-title {color: var(--couleur-principale); font-weight: 600;}
.archive .archive-grid .archive-content h3 .temoignage-author-name {font-weight: 600;}

.archive .archive-grid .archive-wrapper.equipe-link {padding: 2rem 3rem 0; margin: 0;}
.archive .archive-grid .archive-wrapper.equipe-link .archive-thumbnail {padding-bottom: 0; height: 21rem;}
.archive .archive-metier-grid .bloc-metiers-grid {flex-wrap: wrap; justify-content: center; max-width: 75rem; margin-right: auto; margin-left: auto;}
.archive .archive-metier-grid .bloc-metiers-grid .metier-link {flex: 1;}
.archive .archive-metier-grid h2 {color: var(--couleur-principale);}
.archive .archive-metier-grid .archive-metier-profil {margin-bottom: 3rem;}

.blog h1 {font-size: 3rem; font-weight: 400; margin-bottom: .67em;}
.blog .archive-grid .archive-wrapper {height: auto;}
.blog .element-item .post-content {min-height: auto;}
.blog .element-item h2 {-webkit-line-clamp: none; line-clamp: none;}
.blog .bloc-filtre-cas .btn-filtre-cas.is-checked {color: var(--couleur-principale);}
.blog .latest-post {background-color: #fff; box-shadow: var(--box-shadow); border-radius: var(--border-radius); overflow: hidden; text-decoration: none;}
.blog .latest-post .category {border-radius: 2.5rem; background-color: var(--couleur-principale);}
.blog .bloc-filtre-cas .btn-filtre-cas {border: .1rem solid var(--couleur-texte); border-radius: var(--border-radius); color: var(--couleur-texte);}

.archive.post-type-archive-pole .bloc-poles-grid {row-gap: 8rem;}
.archive.post-type-archive-pole .pole-parent-wrapper {flex-direction: column;  width: 80rem; margin: 0 auto;}
.archive.post-type-archive-pole .pole-parent-wrapper .parent-wrapper {margin: 0;}
.archive.post-type-archive-pole .pole-enfants-wrapper {flex-wrap: wrap; margin-top: 4rem; gap: 1.5rem 2rem;}
.archive.post-type-archive-pole .pole-enfants-wrapper .enfant-link-item {padding: .5rem 1rem; font-size: 1.4rem; color: var(--couleur-texte); border: .1rem solid var(--couleur-texte); border-radius: 99rem;}
.archive.post-type-archive-pole .pole-enfants-wrapper .enfant-link-item::after {content: '->'; margin-left: .4rem; color: var(--couleur-principale); transition: all 230ms ease-in-out;}
.archive.post-type-archive-pole .container-bloc-carrousel-poles .pole-slide .pole-vignette {padding: 3rem 2rem;}

.archive-projet-filters {margin-bottom: 6rem; gap: 2rem 5rem; justify-content: center; flex-wrap: wrap;}
.archive-projet-filters .archive-projet-filter {width: 100%;}
.archive-projet-filters #projet-categorie, .archive-projet-filters #projet-search {border-radius: 99.9rem; border: 0.1rem solid var(--couleur-texte); padding: 1rem 1.5rem; text-align: center; width: 100%; color: var(--couleur-texte); background-color: #fff;}
.archive-projet-filters #projet-categorie:focus-visible, .archive-projet-filters #projet-search:focus-visible {transform: scale3d(1.01, 1.01, 1.01); outline-color: var(--couleur-texte);} 
.archive-projet-filters #projet-categorie {-moz-appearance: none; -webkit-appearance: none; appearance: none; background-image: url("data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");  background-repeat: no-repeat; background-position-x: 96%; background-position-y: 50%;}

.archive-pagination {display: flex; column-gap: 1rem;  margin: 1.5rem;  flex-wrap: wrap; justify-content: flex-end;}
.archive-pagination button {border-radius: 50%; background-color: #fff; border: 1px solid var(--couleur-texte); width: 3rem;  height: 3rem;}
.archive-pagination button.is-active {border-color: var(--couleur-principale); background-color: var(--couleur-principale); color: #fff;}

@media (hover: hover) {
    .archive .archive-grid .archive-wrapper:hover {transform: scale3d(1.01, 1.01, 1.01); box-shadow: var(--box-shadow-hover);}
    .archive .archive-grid .archive-wrapper.equipe-link:hover .archive-content {color: #fff;}
    .blog .archive-grid .archive-wrapper:hover .archive-taxonomies span, .blog .latest-post:hover .category {background-color: var(--couleur-principale);}
    .archive .archive-metier-grid .bloc-metiers-grid .metier-item:hover  {transform: scale3d(1.01, 1.01, 1.01);}
    .archive.post-type-archive-pole .pole-enfants-wrapper .enfant-link-item:hover {margin-left: .5rem; box-shadow: inset 25em 0 0 0 var(--couleur-principale); color: #fff; border-color: var(--couleur-principale);}
    .archive.post-type-archive-pole .pole-enfants-wrapper .enfant-link-item:hover::after {margin-left: .7rem; color: #fff;}
    .blog .bloc-filtre-cas .btn-filtre-cas:hover {color: #fff; border-color: var(--couleur-principale);}
}


@media (min-width: 768px) {
  .archive .archive-grid {row-gap: 3rem;}
  .archive .archive-grid .archive-wrapper {width: calc(50% - 1.5rem);}
  

}
@media (min-width: 1025px) {
  .blog h1 {font-size: 5.8rem;}
  .archive.post-type-archive-pole .pole-parent-wrapper .parent-wrapper {height: 35rem;}
  .archive-projet-filters #projet-categorie, .archive-projet-filters #projet-search {width: 30rem;}
  .archive-projet-filters .archive-projet-filter {width: auto;}
}
@media (min-width: 1400px) {
  .archive .archive-header {max-width: 80rem; margin-bottom: 8rem;}
  .archive .archive-grid {row-gap: 4rem;}
  .archive .archive-grid .archive-wrapper {width: calc(33% - 1.8rem);}
  .archive .archive-grid .archive-thumbnail { height: 28rem;}
  .archive .archive-metier-grid .archive-metier-profil {max-width: 75rem; margin-right: auto; margin-left: auto; margin-bottom: 6rem;}
  .archive .archive-metier-grid .bloc-metiers-grid {row-gap: 3rem;}
  .archive.post-type-archive-pole .container-bloc-carrousel-poles .pole-slide .pole-vignette {padding: 0 7rem;}


}
@media (min-width: 1800px) {
.archive .archive-metier-grid .bloc-metiers-grid {max-width: 95rem;}
}


/************************************************/
/**                                            **/
/**                    PAGES                   **/
/**                                            **/
/************************************************/

.logo-contact img{width: 100%;height: auto;}

.btn-light a {padding: .5rem 1rem; background-color: transparent; font-size: 1.3rem; color: var(--couleur-texte); border: .1rem solid var(--couleur-texte);}
.btn-light a::after {content: '->'; margin-left: .5rem; color: var(--couleur-principale); transition: all 230ms ease-in-out;}
.title-page {margin-bottom: .3rem; }
.contact-map .btn-light a {font-size: 1.5rem; margin-top: 2rem;}
.contact-map .btn-light a::after {content: "\f879"; font-weight: 900; font-family: "Font Awesome 6 free"; }

.page-offres-intro {column-gap: 6rem;}
.page-offres-intro .offres-intro-left .title-page {padding-bottom: 0;}
.page-offres-intro .offres-intro-left p {font-size: 1.8rem;}
.page-offres-intro .offres-intro-left .title-page, .page-offres-intro .offres-intro-left p {text-align: center;}

.section-formules>div {display: flex; flex-wrap: wrap; align-items: center;}
.section-formules h2 {margin-left: .5rem; width: 100%; font-weight: 400;}
.section-formules .offres-formule-subtitle {margin-top: 0;}
.offres-tarifs .offres-tarifs-columns {justify-content: center;  margin-top: 6rem; row-gap: 1rem;}
.offres-tarifs .offres-tarifs-col {background-color: #fff; border-radius: 99rem; border: .1rem solid var(--couleur-texte);}
.offres-tarifs .offres-tarifs-col p {margin: 0; padding: 1rem 1.5rem; text-align: center; }
.offres-tarifs .offres-tarifs-legende {font-size: 1.3rem;}
.offres-formules {width: 100%;}
.offres-formules .formules-col {display: flex; background-color: #fff; border-radius: var(--border-radius); box-shadow: rgba(0, 0, 0, 0.15) 0px 1px 2px; position: relative; flex-direction: column; overflow: hidden;}
.offres-formules .formules-col h3 {margin-top: 0; font-weight: 700; margin-bottom: 0;}
.offres-formules .formules-col .formule-prix {font-weight: 700; font-size: 2.5rem; margin: .5rem 0; color: var(--couleur-principale);}
.offres-formules .formules-col .formule-prix em {display: inline-block; font-size: 1.4rem; color: #6b7280; font-weight: 500; font-style: normal;}
.offres-formules .formules-col .formule-prix-barre {color: #dc2626; margin-top: 0;}
.offres-formules .formules-col .formule-prix, .offres-formules .formules-col .formule-prix-barre, .offres-formules .formules-col .btn-formule, .offres-formules .formules-col ul, .offres-formules .formules-col p {padding-left: 2rem; padding-right: 2rem;}
.offres-formules .formules-col .btn-formule {margin-top: auto; margin-bottom: 2rem;}
.offres-formules .formules-col .btn-formule>div {display: block; width: 100%;}
.offres-formules .formules-col .btn-formule a {border-width: .1rem;}
.offres-formules .formules-col .btn-formule a::after {content: "->"; display: inline-block; margin-left: .8rem;}
.offres-formules .formules-col .formule-etiquette {border: .1rem solid #e5e7eb; background-color: var(--couleur-background); font-size: 1.2rem; padding: .3rem 1rem; border-radius: 99.9rem; margin: 0; max-width: max-content; text-wrap: nowrap; height: max-content; margin-left: auto;}
.offres-formules .formules-col ul {margin: 1.5rem 2rem 2.5rem;}
.offres-formules .formules-col ul li::marker {color: var(--couleur-principale);} 
.offres-formules .formules-col .formule-intitule>div {display: flex; gap: 1rem; background-color: var(--couleur-principale); padding: 2rem 2rem; margin-bottom: 1.5rem;}
.offres-formules .formules-col h3 {margin-top: 0; color: #fff;}
.offres-formules.offres-formules-secondaires {flex-wrap: wrap !important;}


.section-formules .offres-reassurance {flex-wrap: wrap !important;}
.section-formules .offres-reassurance .reassurance-col {display: flex; background-color: #fff; padding: 3rem; border-radius: var(--border-radius); box-shadow: rgba(0, 0, 0, 0.15) 0px 1px 2px; position: relative; flex-direction: column;}
.section-formules .offres-reassurance .reassurance-col h3 {margin-top: 0; font-weight: 700; margin-bottom: 0;}
.section-formules .offres-reassurance .reassurance-col::before {width: 2.5rem; height: 2.5rem; padding: .8rem; border: .1rem solid #e5e7eb; background-color: var(--couleur-background); border-radius: 1rem; margin-bottom: 2rem;}
.section-formules .offres-reassurance .reassurance-col-tarif::before {content: url('/wp-content/uploads/2026/02/smile.svg');}
.section-formules .offres-reassurance .reassurance-col-reac::before {content: url('/wp-content/uploads/2026/02/eclair.svg');}
.section-formules .offres-reassurance .reassurance-col-continu::before {content: url('/wp-content/uploads/2026/02/calendrier.svg');}
.section-formules .offres-reassurance .reassurance-col-multi::before {content: url('/wp-content/uploads/2026/02/multi.svg');}

.bloc-titre-columns { column-gap: 6rem;}
.bloc-titre-columns h1, .bloc-titre-columns .bloc-titre-subtitle {text-align: center;}

.section-agences .agences-columns .agence-col h3 {margin-bottom: .5rem;}

@media (hover: hover) {
  .btn-light a:hover::after {color: #fff;}
  .offres-formules .formules-col .btn-formule:hover a {color: #fff; border-color: var(--couleur-principale);}



}

@media (min-width: 768px) {
  .page-offres-intro .offres-intro-left .title-page, .page-offres-intro .offres-intro-left p {text-align: right;}
  .offres-formules.offres-formules-secondaires .formules-col, .offres-reassurance .reassurance-col {flex-basis: calc(50% - 2rem) !important;}
  .bloc-titre-columns h1, .bloc-titre-columns .bloc-titre-subtitle {text-align: right;}
}


@media (min-width: 1025px) {
  .section-agences .agences-columns {column-gap: 10rem; justify-content: center; margin-top: 4.5rem; max-width: 70rem; margin: 2rem auto; }
  .section-agences .agence-texte {max-width: 80rem; margin: auto; text-align: center;}
  .mentions-legales h2 {margin-top: 4rem;}
  .mentions-legales {max-width: 80rem; margin-left: auto; margin-right: auto;}
  .section-formules h2 {width: auto;}
  .offres-tarifs .offres-tarifs-col {max-width: max-content; background-color: #fff; border-radius: 99rem; border: .1rem solid var(--couleur-texte);}
  .bloc-titre-columns .bloc-titre-subtitle {font-size: 1.8rem;}


}

@media (min-width: 1300px) {
  .title-page {font-size: 8.8rem; margin-top: .5rem; padding-bottom: 2rem; line-height: 85%;}
  .contact-map {column-gap: 10rem;}

}

@media (min-width: 1500px) {
  .page-offres-intro .offres-intro-left p {font-size: 2rem;}
  .offres-formules.offres-formules-secondaires .formules-col, .offres-reassurance .reassurance-col {flex-basis: 0 !important;} 
}



/************************************************/
/**                                            **/
/**           ANIMATIONS D'APPARITION          **/
/**                                            **/
/************************************************/

/* --- Etats initiaux (masqué avant animation) --- */
.reveal {
  opacity: 0;
  transform: translateY(4rem);
  transition: opacity 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: opacity, transform;
}

.reveal-left {
  opacity: 0;
  transform: translateX(-4rem);
  transition: opacity 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: opacity, transform;
}

.reveal-right {
  opacity: 0;
  transform: translateX(4rem);
  transition: opacity 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: opacity, transform;
}

.reveal-scale {
  opacity: 0;
  transform: scale(0.92);
  transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: opacity, transform;
}

.reveal-fade {
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: opacity;
}

/* --- Etat visible (après intersection) --- */
.reveal.is-revealed,
.reveal-left.is-revealed,
.reveal-right.is-revealed,
.reveal-scale.is-revealed,
.reveal-fade.is-revealed {
  opacity: 1;
  transform: none;
}

/* --- Délais pour animations en cascade (stagger) --- */
.reveal-stagger > *:nth-child(1) { transition-delay: 0s; }
.reveal-stagger > *:nth-child(2) { transition-delay: 0.08s; }
.reveal-stagger > *:nth-child(3) { transition-delay: 0.16s; }
.reveal-stagger > *:nth-child(4) { transition-delay: 0.24s; }
.reveal-stagger > *:nth-child(5) { transition-delay: 0.32s; }
.reveal-stagger > *:nth-child(6) { transition-delay: 0.4s; }
.reveal-stagger > *:nth-child(7) { transition-delay: 0.48s; }
.reveal-stagger > *:nth-child(8) { transition-delay: 0.56s; }
.reveal-stagger > *:nth-child(9) { transition-delay: 0.64s; }
.reveal-stagger > *:nth-child(10) { transition-delay: 0.72s; }
.reveal-stagger > *:nth-child(11) { transition-delay: 0.8s; }
.reveal-stagger > *:nth-child(12) { transition-delay: 0.88s; }
.reveal-stagger > *:nth-child(n+13) { transition-delay: 0.96s; }

/* --- Animation spéciale pour les titres --- */
.reveal-title {
  opacity: 0;
  transform: translateY(2rem);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
  will-change: opacity, transform;
}

.reveal-title.is-revealed {
  opacity: 1;
  transform: none;
}

/* --- Animation ligne qui grandit (séparateurs) --- */
.reveal-line {
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
}

.reveal-line.is-revealed {
  transform: scaleX(1);
}

/* --- Animation d'entrée du header au chargement --- */
@keyframes headerSlideDown {
  from { opacity: 0; transform: translateY(-2rem); }
  to { opacity: 1; transform: translateY(0); }
}

#headermenu {
  animation: headerSlideDown 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

/* --- Animation smooth pour le sticky header --- */
header.sticky .header-menu {
  transition: box-shadow 0.3s ease, padding 0.3s ease;
}

/* --- Hover lift subtil pour les cards --- */
@media (hover: hover) {
  .archive-grid .archive-wrapper,
  .projet-slide,
  .equipe-slide,
  .prestation-slide,
  .methodo-slide,
  .temoignage-link {
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s ease;
  }
}


/* --- Breadcrumb fade-in --- */
.breadcrumb {
  animation: fadeInBreadcrumb 0.8s ease-out 0.3s both;
}

@keyframes fadeInBreadcrumb {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* --- Animation d'entrée du CTA footer (slide + léger scale) --- */
footer .footer-cta-contact {
  transform-origin: center bottom;
}
footer .footer-cta-contact.is-visible {
  animation: ctaFooterPop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
@keyframes ctaFooterPop {
  from {
    opacity: 0.6;
    transform: scale3d(0.92, 0.92, 1) translateY(1rem);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1) translateY(0);
  }
}

/* --- Overlay recherche : apparition fluide --- */
.search-overlay {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}
.search-overlay.is-open {
  opacity: 1;
  visibility: visible;
}
.search-overlay-content {
  opacity: 0;
  transform: scale(0.96);
  transition: opacity 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.05s,
              transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.05s;
}
.search-overlay.is-open .search-overlay-content {
  opacity: 1;
  transform: scale(1);
}
.search-result-item {
  animation: searchItemIn 0.3s ease backwards;
}
.search-results .search-result-item:nth-child(1) { animation-delay: 0.02s; }
.search-results .search-result-item:nth-child(2) { animation-delay: 0.05s; }
.search-results .search-result-item:nth-child(3) { animation-delay: 0.08s; }
.search-results .search-result-item:nth-child(4) { animation-delay: 0.11s; }
.search-results .search-result-item:nth-child(5) { animation-delay: 0.14s; }
.search-results .search-result-item:nth-child(n+6) { animation-delay: 0.17s; }
@keyframes searchItemIn {
  from {
    opacity: 0;
    transform: translateX(-0.5rem);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* --- Transitions sur cartes (mot-cle, pole, etc.) --- */
.single-pole .single-pole-atouts .mot-cle-slide,
.single-pole .single-pole-prestations .prestation-slide,
.single-pole .single-pole-methodo .methodo-slide,
.single-pole .single-pole-projet .projet-link {
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              box-shadow 0.35s ease;
}
.single-pole .single-pole-autres .pole-slide .pole-vignette {
  transition: transform 0.4s ease, box-shadow 0.35s ease;
}
@media (hover: hover) {
  .single-pole .single-pole-autres .pole-slide:hover .pole-vignette {
    transform: scale(1.02);
  }
}

/* --- Lien nav : léger décalage au focus/hover --- */
nav a {
  transition: color 0.25s ease, opacity 0.25s ease;
}

/* --- Désactivation pour les utilisateurs qui préfèrent pas d'animation --- */
@media (prefers-reduced-motion: reduce) {
  .reveal, .reveal-left, .reveal-right, .reveal-scale, .reveal-fade, .reveal-title, .reveal-line {
    opacity: 1;
    transform: none;
    transition: none;
  }
  #headermenu, .breadcrumb {
    animation: none;
    opacity: 1;
    transform: none;
  }
  footer .footer-cta-contact.is-visible {
    animation: none;
  }
  .search-overlay,
  .search-overlay-content {
    transition: none;
  }
  .single-pole-parent-marquee {
    height: auto;
  }
}


/************************************************/
/**     MARQUEE DÉFILANT - SINGLE POLE         **/
/************************************************/

.single-pole-parent-marquee {
  height: 400vh;
  position: relative;
}
.single-pole-parent-marquee .marquee-sticky {
  position: sticky;
  top: 0;
  height: 85vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.single-pole-parent-marquee .marquee-track {
  white-space: nowrap;
  will-change: transform;
  transform: translateX(100vw);
}
.single-pole-parent-marquee .marquee-scroll-hint {
  position: absolute;
  bottom: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  opacity: 0.7;
  animation: scroll-hint-fade 2s ease-in-out infinite;
  z-index: 2;
}
.single-pole-parent-marquee .marquee-scroll-hint svg {
  width: 28px;
  height: auto;
}
.single-pole-parent-marquee .marquee-scroll-hint .scroll-dot {
  animation: scroll-dot-move 2s ease-in-out infinite;
}
@keyframes scroll-dot-move {
  0%   { cy: 10; opacity: 1; }
  60%  { cy: 20; opacity: 0.2; }
  100% { cy: 10; opacity: 1; }
}
@keyframes scroll-hint-fade {
  0%, 100% { opacity: 0.7; }
  50%       { opacity: 0.3; }
}
.single-pole-parent-marquee .marquee-content {display: inline; font-size: 8rem; font-weight: 600; line-height: 1.1;}
.single-pole-parent-marquee .marquee-content * {display: inline; margin: 0;}
.single-pole-parent-marquee .marquee-track .marquee-sep {display: inline; font-size: 8rem;font-weight: 600; line-height: 1.1; padding: 0 5rem; color: var(--couleur-principale);}


@media (min-width: 1500px) {
  .single-pole-parent-marquee .marquee-content, .single-pole-parent-marquee .marquee-track .marquee-sep {font-size: 16rem;}
  .single-pole-parent-marquee .marquee-track .marquee-sep {padding: 0 8rem;}

}





/************************************************/
/**     MODALE - NOS OFFRES          **/
/************************************************/

.offre-modal-overlay {position: fixed; inset: 0; background-color: rgba(85, 85, 85, 0.5); backdrop-filter: blur(1px); z-index: 9998; opacity: 0; visibility: hidden; transition: opacity .3s ease, visibility .3s ease;}
.offre-modal-overlay.is-open {
        opacity: 1;
        visibility: visible; }
.offre-modal { position: fixed; top: 50%; left: 0; right: 0;  z-index: 9999; background-color: rgba(248, 248, 248, 0.92); backdrop-filter: blur(7px); border-radius: var(--border-radius); padding: 4rem 3rem 3rem; max-height: 92vh; overflow-y: auto;  transform: translateY(100%); transition: transform .4s cubic-bezier(.32,.72,0,1); max-width: calc(100% - 4rem); margin: 0 auto;}
.offre-modal-overlay.is-open .offre-modal {transform: translateY(-50%);}
.offre-modal .btn-submit > p {display: flex; flex-direction: row-reverse;}

.offre-modal-close {position: absolute; border: none; cursor: pointer; top: 1.6rem; right: 1.6rem; background-color: rgba(17, 24, 28, .8); border-radius: 50%; width: 3.5rem; height: 3.5rem; display: flex; justify-content: center; align-items: center;  transition: all 230ms ease-in-out; color: #fff; font-weight: 800; font-size: 2.2rem;}
.offre-modal-close:hover { background-color: rgba(17, 24, 28, 1); }
.offre-modal-title {font-size: 1.8rem; font-weight: 600; margin-top: 0; }


@media (min-width: 1025px) {
  .offre-modal-title {font-size: 3rem;}
  .offre-modal { padding: 5rem 5rem 4rem; max-width: 72rem;  }
}


/************************************************/
/**         SINGLE EQUIPE - CONTACTS          **/
/************************************************/

.equipe-contacts {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem;
  margin-top: 2rem;
}

/************************************************/
/**          CARTOUCHE AUTEUR - SINGLE         **/
/************************************************/

.cartouche-auteur {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.cartouche-auteur-inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  background-color: var(--couleur-principale);
  border-radius: var(--border-radius);
  padding: 3rem 2rem;
}

.auteur-photo {
  flex-shrink: 0;
  width: 10rem;
  height: 10rem;
}

.auteur-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  border: .3rem solid #fff;
}

.auteur-infos {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.auteur-header {
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

.auteur-nom {
  font-family: var(--font-principale);
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
}

.auteur-fonction {
  font-size: 1.3rem;
  font-weight: 500;
  color: white;
  margin: 0;
}

.auteur-contacts {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: .5rem;
}

.auteur-email:visited { color: white; }

.auteur-email {
  font-size: 1.3rem;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  border: .1rem solid rgba(255, 255, 255, .6);
  border-radius: 999rem;
  padding: .4rem 1.2rem;
  transition: all 230ms ease-in-out;
}

.auteur-email:hover {
  background-color: rgba(255, 255, 255, .2);
  border-color: #fff;
}

.auteur-linkedin {
  font-size: 1.3rem;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  border: .1rem solid rgba(255, 255, 255, .6);
  border-radius: 999rem;
  padding: .4rem 1.2rem;
  transition: all 230ms ease-in-out;
}

.auteur-linkedin:visited { color: #fff; }

.auteur-linkedin:hover {
  background-color: rgba(255, 255, 255, .2);
  border-color: #fff;
}

.linkedin-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background-color: var(--couleur-texte);
  border: none;
  color: #fff;
  font-size: 1.6rem;
  text-decoration: none;
  transition: background-color 230ms ease-in-out;
}

.linkedin-icon-btn:visited { color: #fff; }
.linkedin-icon-btn:hover { background-color: var(--couleur-principale); }

.auteur-introduction {
  font-size: 1.4rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, .9);
}

.auteur-introduction p { margin: 0;color: white; }

.btn-auteur {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  text-decoration: none;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--couleur-principale);
  background-color: #fff;
  border-radius: 999rem;
  padding: .8rem 2rem;
  position: relative;
  z-index: 1;
  overflow: hidden;
  transition: color 230ms ease-in-out;
}


.btn-auteur:visited{ color: var(--couleur-principale);}

.btn-auteur::before {
  content: "";
  position: absolute;
  width: 0%;
  height: 100%;
  background-color: var(--couleur-secondaire);
  top: 0;
  left: 0;
  border-radius: 999rem;
  z-index: -1;
  transition: width 230ms ease-in-out;
}

@media (hover: hover) {
  .btn-auteur:hover { color: #fff; }
  .btn-auteur:hover::before { width: 100%; }
}

@media (min-width: 768px) {
  .cartouche-auteur-inner {
    flex-direction: row;
    align-items: flex-start;
    padding: 3rem;
  }
}


