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

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

#content {margin-top: 15rem;}
ul li::marker {
  font-size: 1.5rem;
  color: var(--couleur-secondaire);
  font-weight: 500;
}
@media (min-width: 768px) {
  .max-width600{ max-width:600px; margin-left: auto; margin-right: auto; }
}
.titre-sep {position: relative;text-align: center;overflow: hidden; width: 60%; margin: auto;padding: 4rem 0;}
.titre-sep::before,.titre-sep::after {  content: ''; display: inline-block;  width: 30%;  height: 2px;  background-color: white;  position: absolute; top: 50%; }
.titre-sep::before { left: 0;}
.titre-sep::after {right: 0; }

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%;}
.section-carrousel-centre h2 { font-size: 4rem !important;}

.tarteaucitronAlertBigTop::after { content: ''; background: url('/wp-content/uploads/2025/07/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;}

.no-padding-top,.no-padding-top .bloc-texte-contenu {padding-top:0 !important;}

.li-white ul li::marker {
  font-size: 1.5rem;
  color:white;
  font-weight: 500;
}

@media (min-width: 1300px) {
    body:not(.home) #main-content {
        margin-top: 10vh;
    }
}

@media (max-width: 768px) {
    .mobile-hidden{display: none;}

    .titre-sep {font-size:3rem;width: 100%;}
    .titre-sep::before,.titre-sep::after {   width: 15%; }
    h2, .section-carrousel-centre h2 {font-size: 2.5rem !important;}
}

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


header#headermenu {background-color: transparent; position: fixed; width: 100%; }
header .header-menu {background-color: white; border-radius: 5rem; margin: 1.5rem auto; padding: 0 1.5rem; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; max-width: max-content; margin-left: auto; margin-right: auto;} 
header .header-logo {height: 3rem;}
header .main-menu {align-items: center; justify-content: flex-start; column-gap: 1.5rem;}
header .main-menu>li.menu-item>a {font-size: 1.4rem;}
header .main-menu>li.current_page_item>a {color: var(--couleur-secondaire-dark); font-weight: 500;}
header .main-menu>li.current_page_item>a:hover {color: var(--couleur-secondaire-dark);}
header .main-menu>li.menu-item:not(.current_page_item)>a:hover {color: var(--couleur-principale-light);}

header li.menu-item:first-of-type {margin-left: auto;}
header li.menu-item {flex: 1;}
header li.menu-contact, header li.menu-cta {margin-top: 1rem; margin-bottom: 1rem;  flex: 2; max-width: max-content;}
header li.menu-contact a, header li.menu-cta a { border-radius: 2.5rem;}
header li.menu-contact a {border: 1px solid var(--couleur-secondaire-light);}
header li.menu-contact a:hover {border: 1px solid var(--couleur-secondaire-dark);}
header li.menu-cta a { background-color: var(--couleur-principale-light);   font-weight: 600; color: #fff;border:1px solid var(--couleur-principale);}
header .main-menu>li.menu-cta.current_page_item>a {color: white;}
header li.menu-cta a:hover, header li.menu-cta.current_page_item>a:hover  {background-color: transparent;color:var(--couleur-principale-light);}

header li.active a{color:var(--couleur-secondaire);}
header .sub-menu {background-color: white; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px; border-radius: var(--border-radius);}
@media (min-width: 1000px) {
    header .header-menu {margin: 2.5rem auto;} 
    header .header-logo {height: 4rem;}

}

@media (min-width: 1200px) {

    header li.menu-contact {margin-left: 3.5rem;}
    header li.menu-item, header li.menu-contact, header li.menu-cta {flex: auto; max-width: none;}
    header .main-menu>li.menu-item>a {font-size: 1.5rem;}
}

@media (max-width: 768px) {
header#headermenu{display: none;}
}


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

.footer-mobile-bottom{background-color: white;border-radius: 50px;padding: 1rem 3rem;}
.hamburger-box .line{background-color: var(--couleur-secondaire);border-radius: var(--border-radius);}
.footer-devis-button{color:var(--couleur-secondaire);}
.container-footer-mobile-bottom i{color:var(--couleur-secondaire);}
.hamburger-box{height: 20px;}
.footer-devis-button{padding: 0;}
.tel-footer .fa-phone {background-color: var(--couleur-principale);color: white; padding: 10px;border-radius: 50px;}
.contact-tel .fa-envelope{font-size: 2.5rem;}

.hamburger-box.active{height: 24px;}
.hamburger-box.active .line:nth-of-type(3){width: 100%;}

.hamburger-box .line:nth-of-type(2){width: 80%;}
.hamburger-box .line:nth-of-type(3){width: 70%;}

@media (min-width: 768px) {
      .footer-desktop{max-width: 1000px;        align-items: center;}
    .footer-desktop .footer-logo img { max-width: none; max-height: none; width: 300px;height: auto;}
}
/******************************/
/************ ACCUEIL **********/
/******************************/


@media (min-width: 768px) {
    .bloc-metiers{position: relative;top: -20rem;}
    .home .bloc-carrousel{top: -15rem;position: relative;}
}

@media (max-height: 900px) {
    .bloc-metiers {top: -15rem; }
    .home .bloc-carrousel{top: -10rem;}
    .bandeau-accueil .wp-block-image img{max-width: 400px;}
}

@media (max-height: 650px) {
 .bandeau-accueil .wp-block-image img{max-width: 300px;}
}


.bloc-metiers .titre-sep{font-size: 4rem;}

.txt-white p, .txt-white li, .txt-white h3,
.container-bloc-texte-image p, .container-bloc-texte-image li, .container-bloc-texte-image h3{color: white;}
.container-bloc-texte-image .boutons-texte-image .btn-cta  {position: relative; padding: .5rem 0; letter-spacing: .02rem;font-size: 2rem;    transition: all 230ms ease-in-out;}
.container-bloc-texte-image .boutons-texte-image .btn-cta::after {content: ''; background-color: var(--couleur-principale); height: 1px; width: 50%; display: block; margin-top: 6px; transition: inherit;}
.container-bloc-texte-image .boutons-texte-image .btn-cta:hover::after {width: 100%;}
.container-bloc-texte-image .boutons-texte-image .btn-cta:hover{background-color: transparent;box-shadow: none;}

.bloc-entreprise h2{color: var(--couleur-secondaire);}
.bloc-entreprise .container-bloc-texte-image .boutons-texte-image .btn-cta {color: var(--couleur-secondaire);}
.bloc-entreprise .container-bloc-texte-image .boutons-texte-image .btn-cta::after{background-color: var(--couleur-secondaire);}


.compteurs-accueil .compteur-nombre,.compteurs-accueil .unite-nombre{color: var(--couleur-secondaire);}
.compteurs-accueil .bloc-compteur {position: relative; display: flex; gap: 2rem; }
.compteurs-accueil .compteur-item { position: relative; padding: 0 2rem;margin: 0;}


@media (max-width: 768px) {
.compteur-nombre, .unite-nombre{font-size: 3rem !important;}
}


.bloc-temoignage{background-color: var(--couleur-principale);padding: 2rem;}
.bloc-temoignage *{color: white;}
.bloc-temoignage h2{color: var(--couleur-secondaire);font-size: 3rem;font-weight: 900;}


@media (min-width: 768px) {
    .compteurs-accueil .compteur-item::before {content: ''; position: absolute;  top: 0;  left: 0; width: 1px;  height: 70%;  background-color: #BFBFBF; }
.compteurs-accueil .compteur-item:first-child::before {display: none;}
.bloc-prestation-mobile{display: none;}

.effect-bloc-texte {   position: relative;}
.effect-bloc-texte .container-bloc-texte-image { position: relative; z-index: 1; transition: transform 0.5s ease, z-index 0.5s ease; min-height: 800px; }
.effect-bloc-texte .container-bloc-texte-image:nth-of-type(1){margin-bottom: 200px;}
.effect-bloc-texte .container-bloc-texte-image.sticky { position: relative; z-index: 2; transition: transform 1s ease, z-index 1s ease; }
.effect-bloc-texte .container-bloc-texte-image.on-top { position: absolute;z-index: 10; width: 100%; transform: translateY(-125%); }
}


/************************************/
/********* ARCHIVE PRESTATION ******/
/***********************************/

.archive-list-prestation{margin-top: 3rem;}

.archive-list-realisation {display: flex; flex-wrap: wrap;}
.archive-list-realisation .carrousel-vignette { background-color: var(--couleur-principale-light); margin: 1rem 2rem; border-radius: var(--border-radius); overflow: hidden; display: flex !important; flex-direction: column; height: inherit; }
.archive-list-realisation .infos { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3;   line-clamp: 3; -webkit-box-orient: vertical; margin-bottom: 1.5rem; }
.archive-list-realisation .infos { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; margin-bottom: 1.5rem; }
.archive-list-realisation img { width: 100%; height: 100%; object-fit: cover; margin-left: auto; margin-right: auto; transition: all 350ms ease-in-out; }
.archive-list-realisation h3 { margin: 0; font-size: 1.8rem; font-weight: 400; color: #CAE5E6; }
.archive-list-realisation .infos * { color: #fff; }
@media (min-width: 1400px) {
  .archive-list-realisation .carrousel-vignette { width: calc(50% - 4rem); }
}


/************************************/
/********* CONTACT FORM *************/
/************************************/
.wpcf7-form { display: flex; flex-wrap: wrap;gap: 2rem; max-width: 800px;}
.wpcf7-form .form-row { display: flex;  flex-wrap: wrap; gap: 2rem; width: 100%;}
.wpcf7-form .form-row .form-column {flex: 1; min-width: calc(50% - 2rem);}
.wpcf7-form .form-row .form-column p{margin: 0;}
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],.wpcf7-form textarea {width: 100%; padding: 1.5rem 2rem !important; border: 1px solid var(--couleur-gris-clair); transition: border-color 0.3s ease, box-shadow 0.3s ease;font-size: 1.6rem;font-family: Lato, sans-serif; font-weight: 400;color: var(--couleur-texte);}
.wpcf7-form input[type="text"]:required,.wpcf7-form input[type="email"]:required,.wpcf7-form input[type="tel"]:required,.wpcf7-form textarea:required {border-color: #ff5733;}
.wpcf7-form input[type="text"]:focus,.wpcf7-form input[type="email"]:focus,.wpcf7-form input[type="tel"]:focus,.wpcf7-form textarea:focus { border-color: var(--couleur-principale); box-shadow: 0 2px 4px rgba(59, 166, 132, 0.3); outline: none;}
.wpcf7-form input::placeholder,.wpcf7-form textarea::placeholder { color: var(--couleur-texte); font-size: 1.6rem;}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item,.wpcf7-form .wpcf7-checkbox .wpcf7-list-item label{margin-left: 0 !important;}
.wpcf7-form input[type="checkbox"] { -webkit-appearance: auto;}

.wpcf7-form .form-row p { margin: 0;}

.wpcf7-checkbox label {position: relative;cursor: pointer;}
.wpcf7-checkbox input[type=checkbox] {position: absolute;visibility: hidden;width: 20px;height: 20px;top: 0;left: 0;}
.wpcf7-checkbox input[type=checkbox] + span:before {display: block;position: absolute;content: '';border-radius: 0;height: 20px;width: 20px;top: 0px;left: 0px;border: 1px solid var(--couleur-gris-clair);}
.wpcf7-checkbox input[type=checkbox] + span:after {display: block;position: absolute;content: "\2713";height: 20px;width: 20px;top: 0;left: 0;visibility: hidden;font-size: 18px;text-align: center;line-height: 20px;color:var(--couleur-principale);font-weight: bold;}
.wpcf7-checkbox input[type=checkbox]:checked + span:before {background: transparent;}
.wpcf7-checkbox input[type=checkbox]:checked + span:after {visibility: visible;}
.wpcf7-list-item-label {margin-left: 30px;display: inline-block;}

.wpcf7-response-output { margin-top: 1rem; padding: 1rem;  border-radius: var(--border-radius);}
.wpcf7-mail-sent-ok {background-color: var(--couleur-principale);color: white; border: 0;}
.wpcf7-validation-errors {background-color: #f8d7da; color: white; border: 0px;}


.wpcf7-form input[type="submit"]{ text-transform: uppercase; padding: 1rem 2.5rem;transition: box-shadow 350msease-in-out, color 200msease-in-out, background-color 200msease-in-out;background-color: var(--couleur-principale);
    color: white;border-radius: var(--border-radius);position: relative;    display: block;font-weight: 400;
    font-size: 1.6rem;border:0;cursor: pointer;}
.wpcf7-form input[type="submit"]:hover{box-shadow: inset 25em 0 0 0 var(--couleur-secondaire);}


