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


/************************************************/
/**                                            **/
/**                  HEADER                    **/
/**                                            **/
/************************************************/

.tarteaucitronAlertBigTop::after { content: ''; background: url('/wp-content/uploads/2026/01/cookie-iwego.png'); height: 70px; width: 100px; position: absolute; right: 1.1em !important; margin: 0 auto !important; background-size: contain; background-repeat: no-repeat; }

div#tarteaucitronRoot.tarteaucitronBeforeVisible:before{display:none;}


.hamburger-menu {height: 40px;width: 40px;cursor: pointer;-moz-transform: scaleX(-1);-webkit-transform: scaleX(-1);-o-transform: scaleX(-1);transform: scaleX(-1);-ms-filter: fliph;filter: fliph;}
.bar-top, .bar-middle, .bar-bottom {height: 5px; background: var(--couleur-principale); border-radius: 5px; margin: 5px 0; box-shadow: rgba(27, 31, 35, 0.08) 0px 1px 0px, rgba(202, 229, 230, .6) 0px 1px 0px inset;}
.hamburger-menu .bar-middle{width: 80%;transition: width 0.2s;}
.hamburger-menu .bar-bottom{width: 50%;transition: width 0.2s;}
.hamburger-menu:hover .bar-middle{width: 100%;}
.hamburger-menu:hover .bar-bottom{width: 100%;}
footer a, .btn-cta a, .btn-cta, .btn-border, header a, a.underline {text-decoration: none;}

/*.carrousel-vignette.vignette-bg{text-decoration: none; background-color: var(--couleur-background-light);}*/


.btn-center{text-align: center; margin: 2rem auto;}

.menu-principal {position: fixed; top: 2rem; right: 2rem;}
.contenu-menu {width: 100%; height: 100%; position: fixed; transition: all 1s ease;top: 0;background: var(--couleur-secondaire);display: flex; right: -100%; z-index: 1; flex-direction: column; padding: 2rem 3rem; overflow: scroll;}
.contenu-menu .btn-close i {text-align: right; width: 100%; font-size: 2.5rem; transition: all 250ms ease-in-out;}
.contenu-menu .btn-close i:hover {transform: scale(1.1);}
.menu-principal .tel-menu a, header #menu-menu-copyright li a {color: var(--couleur-principale-light);}
.menu_show { right: 0!important;}
.contenu-menu > .elementor{margin: auto;}
#close-menu{cursor: pointer; color: #fff;}
.menu-deroulant {z-index: 100;}
.menu-deroulant>div {padding-bottom: 50px !important;}

.breadcrumb * {text-transform: uppercase; font-weight: 300; text-decoration: none;}
.breadcrumb .breadcrumb_last {text-decoration: underline;}

.main-nav .main-menu {flex-direction: column; margin-left: 2rem;}
.main-nav .main-menu a {color: #fff;}

header {background-color: var(--couleur-background);}
header.sticky {box-shadow: rgba(50, 50, 93, 0.05) 0px 2px 5px -1px, rgba(0, 0, 0, 0.1) 0px 1px 3px -1px;}
header>.logo-header {margin: auto;}
header>.logo-header img {max-height: none; max-width: none; height: 9rem; width: auto; margin: 2rem auto;}

header.sticky .menu-principal {top: 2rem;}
#headermenu.sticky .main-menu>li.menu-item>a {font-size: initial; padding: 1.5rem;}
.main-menu>li.menu-item>a {padding: 8px 0; margin: 6px 0;}

.menu-principal .hamburger-header-logo{ max-height: 12rem; width: auto; margin-left: auto; margin-right: auto; padding-bottom: 3rem;}
.menu-principal .content-menu-principal .sub-menu{display: block; position: inherit; margin-left: 0; border-left: 1px solid var(--couleur-principale-light); margin-bottom: 1rem;}
.menu-principal .tel-menu {color: #fff; margin: 3rem 0;letter-spacing: .04rem;}
.menu-principal .tel-menu i {font-size: 1.2rem; margin-right: 6px;}
.menu-principal .copyright-menu-principal ul{display: block;}
.menu-principal .copyright-menu-principal ul .menu-item{color: white;}

header .sub-menu li a {font-size: 1.5rem; font-weight: 300;}
header #menu-menu-copyright li { margin: 6px 0;}
header #menu-menu-copyright a {font-weight: 300; font-size: 1.4rem;}
header .sub-menu li a:hover, header #menu-menu-copyright a:hover {color: var(--couleur-principale);}



@media (min-width: 768px) {
    .contenu-menu {padding: 2rem 4rem 2rem 2rem; width: 30rem; text-align: right; }
    .menu-principal .tel-menu, header #menu-menu-copyright li {text-align: right;}
    .menu-principal .content-menu-principal .sub-menu{border-right: 1px solid var(--couleur-principale-light); border-left: none;}
    .menu-principal .hamburger-header-logo{margin-right: 0;}
    .contenu-menu .btn-close i {margin-left: 3rem; text-align: left;}
    }

@media (min-width: 1000px) {
    .menu-principal{top: 5rem; right: 5rem;}
    .contenu-menu {padding: 2rem 5.5rem 2rem 2rem; height: 100vh; overflow: auto;  }
}

/************************************************/
/**                                            **/
/**                  FOOTER                    **/
/**                                            **/
/************************************************/
 
footer {padding-bottom: 2rem;}
.footer-desktop {padding: 0 2rem 2rem;} 
.footer-desktop .footer-logo img {height: 12rem; max-height: none; max-width: none;}
footer .footer-desktop * {color: #fff;}
footer .footer-copyright {justify-content: center; margin-top: 2rem;}
footer .footer-copyright * {font-size: 1.3rem;}
footer .footer-arbo {align-items: center;}

.footer-col.footer-col-img {width: auto; flex: 1; column-gap: 2rem; align-items: center; flex-direction: column;}
.footer-col.footer-col-img img {max-width: 7rem; object-fit: contain;}

@media (min-width: 800px){
    footer .footer-arbo {flex: 1;}
    footer .footer-desktop {align-items: center;}
    .footer-col.footer-col-img {flex-direction: row;}
}



@media (min-width: 1000px) {
    .footer-desktop  {max-width: 90rem;}
    .footer-desktop .footer-col:first-of-type {flex: 1; width: auto;}
    .footer-col.footer-col-img {column-gap: 3rem;}
    .footer-desktop {padding: 0;} 
    .footer-desktop .footer-logo img {height: 14rem;}
    .footer-col.footer-col-img img {max-width: 9rem; }
}

@media (min-width: 1400px) {
    .footer-desktop {column-gap: 10rem;}
    .footer-desktop .footer-logo img {height: 16rem;}
}


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

@media (max-width: 768px) {
    .section-margin {margin-top: 7rem !important; margin-bottom: 7rem !important;}
    }




.btn-cta {background-color: var(--couleur-principale); color: #fff;}
.btn-cta, .btn-border {margin: 0; padding: 1.5rem 2.5rem; border-radius: 0; border: 1px solid var(--couleur-principale); text-align: center; width: 100%;}
.btn-cta:hover, .btn-border:hover {border-color: var(--couleur-tertiaire); box-shadow: inset 25em 0 0 0 var(--couleur-tertiaire); color: #fff;}


.slick-prev, .slick-next {width: 3.5rem; height: auto;}
.slick-prev:before, .slick-next:before {font-family: "Font Awesome 6 free" !important; font-weight: 900; color: var(--couleur-texte) !important; display: flex; justify-content: center; font-size: 5rem !important;} 
.slick-prev:before {content: url('/wp-content/themes/iwego-child/images/fleche-gauche.svg');} 
.slick-next:before {content: url('/wp-content/themes/iwego-child/images/fleche-droite.svg');}
.slick-dots {bottom: 1rem;}


.slick-prev, .slick-next {
    font-size: 3rem !important;
    color: var(--couleur-principale) !important;
  }
 .slick-prev .fas::before {
    content: "\f061";
  }
  .slick-next .fas::before {
    content: "\f060";
  }




a.underline {position: relative; padding: .5rem 0; letter-spacing: .02rem;}
a.underline::after {content: ''; background-color: var(--couleur-principale); height: 1px; width: 50%; display: block; margin-top: 6px; transition: inherit;}
a.underline:hover::after {width: 100%;}

.btn-guttenberg-underline a {background-color: transparent; letter-spacing: .02rem; padding: .2rem;}
.btn-guttenberg-underline a::after {content: ''; background-color: #fff; height: 1px; width: 50%; display: block; margin-top: 6px; transition: inherit;}
.btn-guttenberg-underline a:hover::after {width: 100%;}

@media (min-width: 768px) {
    .btn-border, .btn-cta {width: max-content;}
}

@media (min-width: 1000px) {
    .maxwidth800 { max-width: 80rem;}
}

/************************************************/
/**                                            **/
/**                   MODULES                  **/
/**                                            **/
/************************************************/

.container-bloc-accordeon {margin-left: 2rem; margin-right: 2rem;}
.container-bloc-accordeon h2 {color: var(--couleur-principale);}
.accordeon-toggle {background-color: var(--couleur-background);}
.accordeon-section {max-width: 80rem; margin: auto; width: 100%; border-bottom: 1px solid var(--couleur-principale-light);}

.accordeon-section .accordeon-content {padding: 0 0 2rem;}
.accordeon-section .accordeon-content p {margin-top: 0;}
.accordeon-toggle:after {font-size: 2.2rem;}


.section-cta {padding: 2rem; border-radius: var(--border-radius); margin-left: 2rem; margin-right: 2rem; width: auto;}
.section-cta h2 {font-weight: 300;}
.section-cta h2 strong {color: #fff; font-weight: inherit;}



@media (min-width: 768px) {
    .section-cta {padding: 4rem 6rem;}
}

@media (min-width: 1200px) {
    .section-cta {margin-left: auto; margin-right: auto; width: 100%;}
    .container-bloc-accordeon {margin-left: auto; margin-right: auto;}
    .section-cta h2 {font-size: 3rem;}
}


/************************************************/
/**                                            **/
/**           SINGLE REALISATION               **/
/**                                            **/
/************************************************/

.single-realisation img {height: 100%; width: 100%; object-fit: cover;}


.single-realisation-hero {width: 100%; position: relative; flex-direction: column;}
.single-realisation-hero .flex-container {width: 100%; justify-content: center; position: relative;}
.single-realisation-hero h1 {color: var(--couleur-principale); text-align: center; padding-left: 2rem; padding-right: 2rem;}
.single-realisation-hero .realisation-couverture {order: -1;}
.single-realisation-hero .realisation-couverture img {height: 40vh;}

.single-realisation-resume {row-gap: 2rem; justify-content: center; display: none; }
.single-realisation-resume ul {list-style: none; padding: 0; margin: 0;}
.single-realisation-resume .single-realisation-resume-left {column-gap: 2rem;}
.single-realisation-resume .single-realisation-resume-left .resume {width: calc(50% - 1rem);}
.single-realisation-resume .resume-info {font-weight: 700; margin: 0; font-size: 1.6rem;}
.single-realisation-resume-left, .single-realisation-resume-right {row-gap: 2.5rem; width: 100%;}
.single-realisation-resume-right {flex-direction: column;}
.single-realisation-resume-right ul {display: flex; gap: 15px;}
.single-realisation-resume-right .description-projet p:first-of-type {margin-top: 0;}
.single-realisation-resume .resume {flex-direction: column;}
.single-realisation-resume .resume-right {column-gap: 1.5rem;}
.single-realisation-resume .resume-info + p, .single-realisation-resume .resume-info + h4 {margin-top: 0;}

.single-realisation-galerie {gap: 20px;}
.single-realisation-galerie .realisation-galerie-img {height: 25rem; width: 100%;}
.single-realisation-galerie .realisation-galerie-img a {height: inherit; width: 100%;}

.single-realisation-citation {column-gap: 2rem;}
.single-realisation-citation .citation {font-size: 2rem; font-style: italic; line-height: 1.5;}
.single-realisation-right {flex: 1; max-height: 500px;}
.single-realisation-right a {width: 100%; height: 100%;}
.single-realisation-right img {width: 100%; height: 100%; object-fit: cover;}
.single-realisation-left {display: flex; flex-direction: column; justify-content: end; gap: 50px; width: 50%;}
.single-realisation-left p {margin: 0;}

.single-realisation-carousel {flex-direction: column; row-gap: 3rem;}
.single-realisation-carousel .carousel-zoom a {width: 100%;}
.single-realisation-carousel .carousel-zoom img {height: 40rem;}
.single-realisation-carousel .carousel-nav .slick-slide {margin: 0 1rem; cursor: pointer;}
.single-realisation-carousel .carousel-nav img {height: 5rem;}
.single-realisation-carousel .carousel-nav .slick-prev {left: 0;}
.single-realisation-carousel .carousel-nav .slick-next {right: 0;}

.single-realisation-complement {justify-content: center; background: var(--couleur-background-light);}
.single-realisation-complement .main-container {align-items: center; padding-top: 2rem; padding-bottom: 2rem;}
.single-realisation-complement .realisation-complement-infos, .single-realisation-complement .realisation-complement-img  {width: 100%;}
.single-realisation-complement p:first-of-type {font-weight: 700;}

.single-realisation-contact {flex-direction: column; gap: 60px;}
.single-realisation-contact div {justify-content: center; column-gap: 4rem; row-gap: 1.5rem;}
.single-realisation-contact button {border: 1px solid var(--e-global-color-text); width: 200px;}
.single-realisation-contact button a {display: block; padding: 18px 0;}
.single-realisation-contact button a:focus {outline: none !important;}
.single-realisation-contact button:nth-child(1) {background: var(--e-global-color-text);}
.single-realisation-contact button:nth-child(1) a {color: #fff;}
.single-realisation-contact button:nth-child(2) {background: #fff;}
.single-realisation-contact button:nth-child(2) a {color: var(--e-global-color-text);}
.single-realisation-contact button:hover a {font-weight: 800;}
.single-realisation-contact p {text-align: center;}
.single-realisation-contact span {font-size: 28px; font-weight: 500; padding-left: 7px; white-space: nowrap;}

.single-realisation-hero button.render-form {background-color: transparent; border: none; transition: all 150ms ease-in-out; }
.single-realisation-hero button.render-form:hover {color: var(--e-global-color-primary);}
.single-realisation-hero button.render-form::after { font-family: "Font Awesome 5 Free"; font-weight: 800; content: "\f304"; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; -webkit-font-smoothing: antialiased; padding-left: 8px; }
.single-realisation-hero .admin-modif-article {justify-content: center; margin-bottom: 50px;}

@media (min-width: 768px) {
    .single-realisation-resume-left {border-right: 1px solid var(--couleur-texte); width: calc(43% - 3rem); padding-right: 2rem;}
    .single-realisation-resume-right {width: calc(57% - 2rem); flex: 1;}
    .single-realisation-resume {column-gap: 4rem;}
    .single-realisation-galerie .realisation-galerie-img {width: calc(50% - 10px);}
    .single-realisation-left {width: calc(50% - 10px);}
    .single-realisation-carousel .carousel-nav img {height: 10rem;}
    .single-realisation-carousel .carousel-nav .slick-list {margin: 0 5rem;}
    .single-realisation-complement .realisation-complement-infos, .single-realisation-complement .realisation-complement-img  {width: 50%;}
    .single-realisation-complement .realisation-complement-infos {padding-left: 4rem;}
}


@media (min-width: 1000px) {
    .single-realisation-hero {margin-top: 6rem;}
    .single-realisation-hero .realisation-couverture {order: initial;}
    .single-realisation-hero h1 {position: absolute; background-color: var(--couleur-principale); color: #fff; top: -3rem; margin: 0 4rem; padding: .5rem 1rem;}
    .single-realisation-resume {column-gap: 6rem; max-width: 90rem;}
    .single-realisation-resume-left {padding-right: 3rem;}
    .single-realisation-carousel .carousel-nav img {height: 15rem; max-width: 20rem;}
    .single-realisation-carousel .carousel-zoom img {height: 65rem;}
    .single-realisation-carousel .carousel-zoom a {width: 100%;}
    .single-realisation-galerie .realisation-galerie-img {height: 65vh;}
    .single-realisation-complement .realisation-complement-infos {padding-left: 6rem;}

    .single-realisation-complement .main-container {padding-top: 0; padding-bottom: 0;}
    .single-realisation-right {flex: 1; max-height: 40rem; width: 60%;}
    .single-realisation-left {width: 40%;}
    .single-realisation-citation {column-gap: 5rem;}
    .single-realisation-hero .realisation-couverture img {height: 55vh;}
}



@media (min-width: 1400px) {
    .single-realisation-hero .realisation-couverture img {height: 70vh;}
    .single-realisation-contact .btn-border, .single-realisation-contact .btn-cta {min-width: 26rem;}
    .single-realisation-carousel .carousel-nav .slick-slide {margin: 0 2rem;}
    .single-realisation-citation .citation {font-size: 2.5rem;}
    .single-realisation-carousel {row-gap: 5rem;}
    .single-realisation-galerie .realisation-galerie-img {height: 75vh;}
    .single-realisation-right {max-height: 50rem;}
    .single-realisation-carousel .carousel-nav img {max-width: 30rem;}
    .single-realisation-hero h1 {margin: 0;}

}




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

.archive h1 {text-align: center; color: var(--couleur-principale);}
.bloc-filtre-cas {column-gap: 1.5rem; margin: 4rem 0;}
.bloc-filtre-cas .btn-filtre-cas {padding: 1.5rem 2.5rem; border: 1px solid transparent; text-align: center; cursor: pointer;}
.bloc-filtre-cas .btn-filtre-cas.is-checked {border-color: var(--couleur-tertiaire);}
.liste-articles .vignette-bg {background-color: var(--couleur-background-light); border-radius: var(--border-radius); overflow: hidden; margin-bottom: 2rem; width: 100%; text-decoration: none;}
.liste-articles .vignette-bg:hover {box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;}
.liste-articles .vignette-bg h3 {font-size: 2rem; margin-bottom: 0; font-weight: 600; padding: 0;}
.liste-articles .vignette-bg .bloc-realisation-detail {padding: 2rem 3rem;}
.liste-articles .vignette-bg .bloc-realisation-detail p { overflow: hidden;  display: -webkit-box; -webkit-line-clamp: 3;  line-clamp: 3;   -webkit-box-orient: vertical;}
.liste-articles .vignette-bg .bloc-realisation-img {height: 23rem; overflow: hidden;}
.liste-articles .vignette-bg .bloc-realisation-img img {height: 100%; width: 100%; object-fit: cover; transition: all 350ms ease-in-out;}
.liste-articles .vignette-bg:hover .bloc-realisation-img img {transform: scale(1.08);}

.liste-articles.liste-prestations {margin-bottom: 4rem;}
.liste-articles.liste-prestations .infos p {overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical;}
.liste-articles.liste-prestations .infos p:nth-child(n + 2) {display: none;}

@media (min-width: 768px) {
    .bloc-filtre-cas {margin: 6.5rem 0; column-gap: 3rem; justify-content: center;}
    .liste-articles .vignette-bg {width: calc(50% - 2rem); margin: 2rem 1rem; }
}

@media (min-width: 1000px) {
.archive .blog-title {max-width: 90rem; margin: 4rem auto;}
}


@media (min-width: 1400px) {
    .liste-articles .vignette-bg {width: calc(100% / 3 - 4rem); margin: 2rem; }
    .liste-articles.liste-prestations .vignette-bg {min-height: auto;}
    .archive h1 {margin-bottom: 5rem;}
    .liste-articles .vignette-bg .bloc-realisation-img {height: 22rem;}
    .liste-articles.liste-prestations {margin-top: 6rem;}
}







/************************************************/
/**                                            **/
/**            SINGLE PRESTATION               **/
/**                                            **/
/************************************************/

.single-prestation .breadcrumb {text-align: center;}
.single-prestation .bandeau-entete-right img {height: 100%; width: 100%; object-fit: cover; height: 40vh;}
.section-bandeau-entete .bandeau-entete-fleche {max-width: max-content; margin: 3rem auto 2rem;}
.section-bandeau-entete .bandeau-entete-fleche i {font-size: 3rem; color: var(--couleur-principale);}
.single-prestation .presta-bloc-choisir {column-gap: 6rem; background-color: var(--couleur-principale); border-radius: var(--border-radius); padding: 2rem; margin-left: 2rem; margin-right: 2rem; width: auto;}
.single-prestation .presta-bloc-choisir h2 {font-size: 3rem;}
.single-prestation .presta-bloc-choisir .choisir-detail *, .single-prestation .presta-bloc-choisir .underline {color: #fff;}
.single-prestation .presta-bloc-choisir .underline {margin-top: 2.5rem;}
.single-prestation .presta-bloc-choisir .underline::after {background-color: #fff;}
.single-prestation .bloc-carrousel-presta {margin-bottom: 5rem;}
.single-prestation .presta-bloc-choisir img {width: 15rem; margin: auto;}

.section-avantages-inconvenients {column-gap: 2rem; row-gap: 2rem;}
.section-avantages-inconvenients h2 {width: 100%; margin-bottom: 4.5rem; margin-top: 0;}
.section-avantages-inconvenients .bloc-avantage-inconvenient {background-color: var(--couleur-background-light); border-radius: var(--border-radius); padding: 2rem; flex-direction: column;}
.section-avantages-inconvenients .bloc-avantage-inconvenient h3 {text-transform: uppercase; color: var(--couleur-principale); margin-top: 0; text-align: center; margin-bottom: 1rem;}
.section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient, .section-avantages-inconvenients .bloc-avantage-inconvenient .avantage {height: 100%; flex-direction: column; padding-left: 2rem; position: relative;}
.section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient  {border-top: 1px solid var(--couleur-principale); padding-top: 1.5rem; }
.section-avantages-inconvenients .bloc-avantage-inconvenient .avantage {padding-bottom: 1.5rem;}
.section-avantages-inconvenients .bloc-avantage-inconvenient .avantage::before, .section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient::before {display: inline-block; font-size: 2rem; color: var(--couleur-principale); font-weight: 600; position: absolute; left: -1rem;}
.section-avantages-inconvenients .bloc-avantage-inconvenient .avantage::before {content: "+";  top: 1.5rem;}
.section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient::before {content: "-";  top: 3rem;}

@media (min-width: 800px) {
    .section-avantages-inconvenients .bloc-avantage-inconvenient {flex: 1 1 40rem;}
    .single-prestation .presta-bloc-choisir img {margin: 0;} 
    .single-prestation .presta-bloc-choisir .choisir-right {flex: 1;}
}

@media (min-width: 1000px) {
.single-prestation .bandeau-entete-right img {height: 100vh;}
.single-prestation h1 {text-align: left; margin: 2rem 0;}
.single-prestation .breadcrumb {text-align: left;}
}

@media (min-width: 1200px) {
    .section-avantages-inconvenients .bloc-avantage-inconvenient {padding: 4rem; max-width: 80rem; margin: 0 auto; flex: 1;}
    .section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient {margin-top: auto;}
    .section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient, .section-avantages-inconvenients .bloc-avantage-inconvenient .avantage {padding-left: 1rem; }
    .section-avantages-inconvenients .bloc-avantage-inconvenient .avantage::before, .section-avantages-inconvenients .bloc-avantage-inconvenient .inconvenient::before { left: -2rem;}
    .single-prestation .presta-bloc-choisir {margin-left: auto; margin-right: auto; width: 100%;}

}

@media (min-width: 1400px) {
    .single-prestation .presta-bloc-choisir {padding: 4rem 7rem;}
    .single-prestation .presta-bloc-choisir img {width: 23rem;}
    .single-prestation .presta-bloc-choisir h2 {margin-bottom: 4rem;}
    
}



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

.section-formulaire h2 {font-weight: 300; color: var(--couleur-principale); text-align: center;}
form h3 {font-size: 1.8rem; border-bottom: 1px solid var(--couleur-principale); border-right: 1px solid var(--couleur-principale); padding-bottom: 1.5rem; color: var(--couleur-principale);}
.gform_wrapper form legend, .gform_wrapper form label {display: none !important;}
form input[type="checkbox"]:focus {outline-color: var(--couleur-tertiaire) !important; box-shadow: none !important; border-color: var(--couleur-principale) !important;}
form input[type="checkbox"]::before {color: var(--couleur-tertiaire) !important;}
form input[type="checkbox"] + label {display: block !important; color: var(--couleur-principale) !important;}
form input[type="text"], form input[type="email"], form input[type="tel"], form textarea {border-top-width: 0 !important; border-left-width: 0 !important; border-color: var(--couleur-texte); border-radius: 0 !important; box-shadow: none !important;}
form input[type="text"]:focus, form input[type="email"]:focus, form input[type="tel"]:focus, form textarea:focus {border-color: var(--couleur-principale) !important;}
form .gfield_checkbox {flex-direction: row !important; column-gap: 6rem !important;}
form textarea {padding-left: 1rem !important;}
form input[type="submit"] {background-color: transparent !important; font-size: 2.1rem !important; letter-spacing: .02rem; color: var(--couleur-texte) !important; box-shadow: none !important; padding-left: 0 !important; padding-right: 0 !important;}
form .gform_footer {position: relative; max-width: max-content; margin: 2.5rem auto !important;}
form .gform_footer::after {content: ''; background-color: var(--couleur-principale); height: 1px; width: 50%; display: block; margin-top: 6px; transition: all 300ms ease-in-out; position: absolute; bottom: 0; left: 0;}
form .gform_footer:hover::after {width: 100%;}
form label, form input, form textarea {font-family: 'Roboto', sans-serif !important;}


.wp-block-contact-form-7-contact-form-selector .wpcf7-form {background-color: #fff; padding: 2rem; max-width: 90rem; margin: 0 auto;  position: relative; display: flex; flex-direction: column;}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .titre-section-contact:first-of-type {margin-top: 0;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .form-row {display: flex; flex-direction: column; gap: 1.5rem; margin-bottom: 1.5rem;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .form-row .form-column {flex: 1;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-radio .wpcf7-list-item {display: inline-block; margin-right: 2rem;margin-left: 0;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-radio .wpcf7-list-item label {display: flex; align-items: center; cursor: pointer; color: var(--couleur-texte);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-radio .wpcf7-list-item input[type="radio"] {margin-right: 0.5rem; cursor: pointer;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label {color: var(--couleur-texte);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="text"], .wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="email"], .wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="tel"] {width: 100%; padding: 1rem; border: 1px solid var(--couleur-texte); border-radius: 0; background-color: #fff; font-family: 'Roboto', sans-serif; font-size: 1.6rem; color: var(--couleur-texte);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="text"]:focus, .wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="email"]:focus, .wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="tel"]:focus {outline: none; border-color: var(--couleur-principale);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="text"]::placeholder, .wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="email"]::placeholder, .wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="tel"]::placeholder {color: var(--couleur-texte); opacity: 0.7;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form textarea {width: 100%; padding: 1rem; border: 1px solid var(--couleur-texte); border-radius: 0; background-color: #fff; font-family: 'Roboto', sans-serif; font-size: 1.6rem; color: var(--couleur-texte); resize: vertical; min-height: 15rem;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form textarea:focus {outline: none; border-color: var(--couleur-principale);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form textarea::placeholder {color: var(--couleur-texte); opacity: 0.7;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-checkbox .wpcf7-list-item label {display: flex; align-items: center; cursor: pointer; color: var(--couleur-principale);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"] {margin-right: 0.5rem; cursor: pointer;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label {color: var(--couleur-principale);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .row-rgpd {margin-top: 2rem;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit {margin-top: 2rem;    justify-content: center;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit input[type="submit"] {background-color: transparent; border: none; color: var(--couleur-principale); font-size: 1.8rem; font-weight: 400; cursor: pointer; padding: 0; font-family: 'Roboto', sans-serif; width: auto;font-weight: 700;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit input[type="submit"]:hover {opacity: 0.8;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit p {position: relative; max-width: max-content;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit p::after {content: ''; background-color: var(--couleur-principale); height: 1px; width: 50%; display: block; margin-top: 6px; transition: 230ms ease-in-out;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit p:hover::after {width: 100%;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit .wpcf7-spinner {position: absolute;}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .wpcf7-turnstile.cf-turnstile {  order: 999; align-self: flex-start;}

@media (min-width: 768px) {
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .form-row {flex-direction: row; gap: 2rem;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .form-row .form-column.full-width {flex: 1 1 100%;}
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .titre-section-contact{ font-size: 1.8rem;border-bottom: 1px solid var(--couleur-principale); border-right: 1px solid var(--couleur-principale);padding-bottom: 1.5rem; color: var(--couleur-principale);}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit input[type="submit"]:after {  content: ''; background-color: var(--couleur-principale);   height: 1px; width: 50%; display: block; margin-top: 6px;  transition: all 300ms ease-in-out;  position: absolute; bottom: 0;  left: 0;}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form .btn-submit input[type="submit"]:hover:after { width: 100%;}


@media (min-width: 1000px) {
    form {max-width: 90rem !important; margin-left: auto !important; margin-right: auto !important;}
    .section-formulaire h2 {font-size: 4rem;}
    form .gform_footer {margin: 4rem auto !important;}
}

@media (min-width: 1400px) {
    .section-formulaire h2 {font-size: 5rem;}
}






/************************************************/
/**                                            **/
/**      PARTICULIERS / PROFESSIONELS          **/
/**                                            **/
/************************************************/


.section-nous-choisir {column-gap: 6rem; background-color: var(--couleur-principale); border-radius: var(--border-radius); padding: 2rem; margin-left: 2rem; margin-right: 2rem; width: auto;}
.section-nous-choisir:not(.section-nous-choisir-vert) h2 {font-size: 3rem; color: var(--couleur-principale);}
.section-nous-choisir .bloc-nous-choisir {align-items: center !important; margin-bottom: 0;}
.section-nous-choisir .bloc-nous-choisir img {max-height: 18rem; margin: auto;}
.section-zones-intervention {align-items: center;}
.carte-openstreetmap {z-index: 1; border-radius: var(--border-radius); max-height: 30vh;  }
.section-zones-intervention h2 {color: var(--couleur-principale); margin-top: 0;}
.container-bloc-carte-openstreetmap .bloc-carte-intro {margin-top: 0;}

@media (min-width: 800px) {
    .section-nous-choisir img {margin: 0;} 
}


@media (min-width: 1200px) {
    .section-nous-choisir {margin-left: auto; margin-right: auto; width: 100%;}
    .section-zones-intervention {column-gap: 8rem;}
    .section-zones-intervention .bloc-carte-intro {flex: 1;}
    .section-zones-intervention .carte-openstreetmap {width: 50%; max-height: 100%; }
    .section-nous-choisir .bloc-nous-choisir img {margin: 0;}

}

@media (min-width: 1400px) {
    .section-nous-choisir {padding: 4rem 7rem;}
    .section-nous-choisir img {width: 23rem;}
    .section-nous-choisir h2 {margin-bottom: 4rem;}
    
}



/************************************************/
/**                                            **/
/**            GENERIQUE CARROUSELS            **/
/**                                            **/
/************************************************/

.slick-track {display: flex !important;}

.bloc-fleche {display: none;}
.bloc-fleche a.slick-arrow {width: 5rem;}

.vignette-bg.slick-slide {display: flex !important; flex-direction: column; height: inherit; margin: .5rem 2rem; background-color: var(--couleur-background-light); text-decoration: none; border-radius: var(--border-radius); overflow: hidden;}
.vignette-bg .carrousel-infos {flex-direction: column; padding: 1.5rem 2rem; flex: 1; text-decoration: none; }
.vignette-bg .realisation-thumbnail {overflow: hidden; height: 17rem; background-color: var(--couleur-principale-light);}
.vignette-bg img {transition: all 230ms ease-in-out; height: 100%; width: 100%; object-fit: cover;}
.vignette-bg h3 {margin-top: 0; margin-left: 0; margin-right: 0; margin-bottom: .8rem; font-size: 1.8rem;}
.vignette-bg .infos { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical;}
.vignette-bg .infos p {font-size: 1.5rem; font-weight: 300;}
.vignette-bg .carrousel-btn {margin-top: auto; width: auto; margin-bottom: 0;}
.vignette-bg:hover .carrousel-btn {opacity: 1;}
.vignette-bg:hover {box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;}
.vignette-bg:hover img {transform: scale(1.1);}

.carrousel-btn { padding: 0; font-size: 1.3rem; opacity: .8; transition: inherit; margin-left: 2rem; margin-right: 2rem; margin-top: 2rem;}
.carrousel-btn span {text-decoration: underline; color: var(--couleur-texte); }



@media (min-width: 768px) {
    .vignette-bg .realisation-thumbnail {height: 20rem;}
}

@media (min-width: 1000px) {
    .bloc-fleche {display: flex;}
    .carrousel-btn {margin-left: 0; margin-right: 0; margin-top: 2.5rem;}
    .bloc-post-sans-carrousel {margin: 0; column-gap: 0;}
    .bloc-post-sans-carrousel .vignette-bg {max-width: 45rem;}
    .section-carrousel-rtl>.carrousel-btn {margin-left: auto; max-width: calc(80% - 2rem);}

}

@media (min-width: 1400px) {
    .section-carrousel-rtl>.carrousel-btn {max-width: calc(70% - 2rem);}


}