/*
SOMMAIRE

00 - Accueil
01 - Société
02 - Contact
03 - FAQ
04 - Devis
05 - Services
06 - Agenda

*/



/*****************
** 00 - Accueil **
*****************/
body.home .expertise{
    margin-top: 70px
}
body.home .expertise .elipseBloc svg {
    top: 25%;
}
body.home .heroSection{
    position: relative;
    height: 100dvh;
}
body.home .heroSection::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../img/herotexture.png);
    background-repeat: no-repeat;
    background-size: cover;
}
body.home .heroSection::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 30px;
    background-image: url(../img/breadcumelement.png);
    background-repeat: no-repeat;
    background-size: cover;
}
body.home .heroSection .heroContent{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 35%;
    color: var(--color00);
}
    body.home .heroSection .heroContent p{
        width: 65%;
    }
    body.home .heroSection .heroContent .herospan{
        background: linear-gradient(0deg, rgba(27, 51, 52, 0.3), rgba(27, 51, 52, 0.3)), linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.16) 100%);
        box-shadow: 0px 1px 2px rgba(0, 165, 230, 0.55), 0px 0px 0px 3px rgba(0, 165, 230, 0.17);
        border-radius: 50px;
        padding: 4px 22px 4px 6px;
        font-size: 15px;
    }
    body.home .heroSection .heroContent .herospan .blue{
        background: linear-gradient(180deg, rgba(18, 40, 55, 0) -175%, rgba(74, 240, 255, 0.5) 140%), #00A5E6;
        border-radius: 50px;
        padding: 4px 10px;
        font-family: 'hm';
        transition: all .3s;
    }
    body.home .heroSection .heroContent .herospan:hover .blue{
        background: var(--vert);
    }
    body.home .heroSection .heroContent .herospan .texte{
        font-family: 'hm';
    }
    body.home .heroSection .heroContent .herospan .texte svg{
        margin-left: 10px;
        margin-bottom: 1px;
        transition: all .3s;
    }
    body.home .heroSection .heroContent .herospan:hover .texte svg{
        margin-left: 15px;
    }
    body.home .heroSection .heroContent .herospan .fullLink{
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 4;
    }
    body.home .heroSection .heroContent .confiance{
        color: var(--color05);
        font-size: 18px;
    }
    body.home .heroSection .heroContent .sliderPartenaire {
        width: 100%;
        height: 100px;
        position: relative;
        overflow: hidden;
        mask-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0));
    }
    @keyframes scrollLeft {
        to {
        left: -200px;
        }
    }
    body.home .heroSection .heroContent .item{
        width: 200px;
        height: 100px;
        border-radius: 6px;
        position: absolute;
        left: max(calc(200px * 8), 100%);
        animation-name: scrollLeft;
        animation-duration: 30s;
        animation-timing-function: linear;
        animation-iteration-count: infinite;
    }
    body.home .heroSection .heroContent .item1{
        animation-delay: calc(30s / 8 * (8 - 1) * -1);
    }
    body.home .heroSection .heroContent .item2{
        animation-delay: calc(30s / 8 * (8 - 2) * -1);
    }
    body.home .heroSection .heroContent .item3{
        animation-delay: calc(30s / 8 * (8 - 3) * -1);
    }
    body.home .heroSection .heroContent .item4{
        animation-delay: calc(30s / 8 * (8 - 4) * -1);
    }
    body.home .heroSection .heroContent .item5{
        animation-delay: calc(30s / 8 * (8 - 5) * -1);
    }
    body.home .heroSection .heroContent .item6{
        animation-delay: calc(30s / 8 * (8 - 6) * -1);
    }
    body.home .heroSection .heroContent .item7{
        animation-delay: calc(30s / 8 * (8 - 7) * -1);
    }
    body.home .heroSection .heroContent .item8{
        animation-delay: calc(30s / 8 * (8 - 8) * -1);
    }
    body.home .heroSection .heroContent .item img{
        filter: grayscale(100%);
        transition: all .3s;
    }
    body.home .heroSection .heroContent .item:hover img{
        filter: inherit;
    }
body.home .expertise ul {
    list-style-type: disc;
    margin: 0 !important;
    padding: 0 0 0 16px !important;
    color: var(--color02);
    font-family: 'hm';
}
body.home .chiffre .chiffreOne, body.home .chiffre .chiffreTwo{
    border-radius: 15px;
}
body.home .chiffre .chiffreOne{
    background-color: var(--color00);
}
body.home .chiffre .chiffreOne .texte{
    padding: 30px 30px 30px 40px;
}
body.home .chiffre .chiffreTwo{
    background-color: var(--vert);
    padding: 40px;
    justify-content: center;
}
body.home .chiffre .chiffreTwo .chiffreItem{
    font-size: 50px;
    line-height: 60px;
    color: var(--color00);
    font-family: 'hb';
}
body.home .chiffre .chiffreTwo .chiffreText{
    color: var(--color00);
}
body.home .whyBloc {
    margin-top: 70px;
    padding: 80px 0;
    background-image: url('../img/home-why-element.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
body.home .whyBloc .elipseBloc svg {
    top: 25%;
}
body.home .whyBloc::before {
    content: "";
    position: absolute;
    top: 0;
    transform: rotate(180deg);
    left: 0;
    width: 100%;
    height: 30px;
    background-image: url(../img/breadcumelement.png);
    background-repeat: no-repeat;
    background-size: cover;
}
body.home .whyBloc::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 30px;
    background-image: url(../img/breadcumelement.png);
    background-repeat: no-repeat;
    background-size: cover;
}
body.home .whyBloc .whyBlocItem{
    padding: 30px;
    border-radius: 15px;
    background-color: var(--color00);
    transition: all .3s;
}
body.home .whyBloc .whyBlocItem:hover{
    background-color: var(--color02);
}
body.home .whyBloc .whyBlocItem .numero{
    font-size: 50px;
    font-family: 'heb';
    color: var(--color02);
    transition: all .3s;
}
body.home .whyBloc .whyBlocItem:hover .numero{
    color: var(--color00);
}
body.home .whyBloc .whyBlocItem h3{
    font-size: 24px;
    font-family: 'heb';
    color: #5C5C5C;
    transition: all .3s;
}
body.home .whyBloc .whyBlocItem:hover h3{
    color: var(--color00);
}
body.home .whyBloc .whyBlocItem span.text{
    color: #5C5C5C;
    transition: all .3s;
}
body.home .whyBloc .whyBlocItem:hover span.text{
    color: var(--color00);
}
body.home .satisfaction, body.home .actu{
    margin-top: 70px;
}
body.home .satisfaction .elipseBloc{
    width: 55%;
}
body.home .satisfaction .elipseBloc svg{
    top: 25%;
}
body.home .satisfaction .sliderPartenaire{
    width: 100%;
    height: 100px;
    position: relative;
    overflow: hidden;
    mask-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0));
}
body.home .satisfaction .item img{
    transition: all .3s;
}
body.home .satisfaction .item1{
    animation-delay: calc(30s / 8 * (8 - 1) * -1);
}
body.home .satisfaction .item2{
    animation-delay: calc(30s / 8 * (8 - 2) * -1);
}
body.home .satisfaction .item3{
    animation-delay: calc(30s / 8 * (8 - 3) * -1);
}
body.home .satisfaction .item4{
    animation-delay: calc(30s / 8 * (8 - 4) * -1);
}
body.home .satisfaction .item5{
    animation-delay: calc(30s / 8 * (8 - 5) * -1);
}
body.home .satisfaction .item6{
    animation-delay: calc(30s / 8 * (8 - 6) * -1);
}
body.home .satisfaction .item7{
    animation-delay: calc(30s / 8 * (8 - 7) * -1);
}
body.home .satisfaction .item8{
    animation-delay: calc(30s / 8 * (8 - 8) * -1);
}
body.home .satisfaction .item{
    width: 200px;
    height: 100px;
    border-radius: 6px;
    position: absolute;
    left: max(calc(200px * 8), 100%);
    animation-name: scrollLeft;
    animation-duration: 30s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
body.home .sectionAvis .ti-reviews-container-wrapper .ti-inner{
    background: linear-gradient(180deg, rgba(245, 247, 250, 0.75) 0%, #F3F3F3 100%) !important;
    border: 2px solid #00A5E6 !important;
    border-radius: 10px !important;
}
body.home .sectionAvis .ti-reviews-container-wrapper .ti-inner span.ti-read-more .ti-read-more-active, body.home .sectionAvis .ti-reviews-container-wrapper .ti-name{
    color: var(--color02) !important;
    opacity: 1;
}
body.home .sectionAvis .ti-reviews-container-wrapper .ti-inner .ti-star {
    filter: hue-rotate(179deg) saturate(2);
}
body.home .sectionAvis .ti-reviews-container-wrapper .ti-review-header::before{
    border-top-color: var(--color02);
}
.ti-widget.ti-goog .ti-controls .ti-next:before, .ti-widget.ti-goog .ti-controls .ti-prev:before, .ti-widget.ti-goog .ti-controls .ti-next:after, .ti-widget.ti-goog .ti-controls .ti-prev:after{
    background-color: var(--color02) !important;
}
body.home .satisfaction::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: -webkit-fill-available;
    background-image: url(../img/satisfaction-element.svg);
    background-size: 170%;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    pointer-events: none;
    z-index: -1;
}





/*****************
** 01 - Société **
*****************/
body.page-template-page-societe section#content{
    padding: 70px 0 0 0;
}
body.page-template-page-societe .histoire img{
    border-radius: 15px;
}
body.page-template-page-societe .histoire .subTitle{
    color: var(--jaune);
}
body.page-template-page-societe .valeurs, body.page-template-page-societe .who, body.page-template-page-societe .moyen{
    margin-top: 80px;
}
body.page-template-page-societe .valeurs .elipseBloc{
    width: 55%;
}
body.page-template-page-societe .valeurs .elipseBloc svg{
    top: 25%;
}
body.page-template-page-societe .valeurs h3{
    font-size: 24px;
}
body.page-template-page-societe .valeurs .valeursItem{
    text-align: center;
}
body.page-template-page-societe .valeurs .valeursItem.blue .valeursItemBloc{
    background-color: rgba(0, 165, 230, 0.2);
    padding: 30px 25px;
    border-radius: 15px;
    height: 100%;
    transition: all .3s;
}
body.page-template-page-societe .valeurs .valeursItem.blue:hover .valeursItemBloc{
    background-color: rgba(0, 165, 230, 0.5);
    transform: scale(1.025);
}
body.page-template-page-societe .valeurs .valeursItem.green .valeursItemBloc{
    background-color: #BFF2CB;
    padding: 30px 25px;
    border-radius: 15px;
    height: 100%;
    transition: all .3s;
}
body.page-template-page-societe .valeurs .valeursItem.green:hover .valeursItemBloc{
    background-color: #89d89b;
    transform: scale(1.025);
}
body.page-template-page-societe .who .subTitle{
    color: var(--rouge);
}
body.page-template-page-societe section.footerContactBloc {
    margin-top: 90px;
}
body.page-template-page-societe .moyen div.texte p:nth-of-type(1), body.page-template-page-societe .moyen div.texte p:nth-of-type(3){
    margin-bottom: 5px;
}
body.page-template-page-societe .moyen div.texte strong, body.page-template-page-service .texteservice strong{
    color: var(--color01);
}
body.page-template-page-societe .moyen div.texte ul{
    list-style-type: disc;
    margin: 0 !important;
    padding: 0 0 0 16px !important;
}
body.page-template-page-societe .moyen .listMoyen{
    border: 2px solid var(--color02);
    background: linear-gradient(180deg, rgba(0, 165, 230, 0.65) 0%, #00A5E6 100%);
    border-radius: 10px;
    padding: 30px;
    color: var(--color00);
}
body.page-template-page-societe .moyen .listMoyen .listMoyenTitle{
    font-size: 24px;
    font-family: 'hb';
}
body.page-template-page-societe .moyen .listMoyen div ul{
    list-style-type: disc;
    margin: 0 !important;
    padding: 0 0 0 16px !important;
    font-size: 15px;
}


/*****************
** 02 - CONTACT **
*****************/
body.page-template-page-contact .contentPadding, body.page-template-page-devis .contentPadding{
    padding: 50px 0;
}
body.page-template-page-contact form{
    margin:  15px 0 0 0 !important;
}
body.page-template-page-contact form .forminator-label, body.page-template-page-contact form .forminator-description{
    display: none !important;
}
body.page-template-page-contact form input, body.page-template-page-contact form textarea{
    padding: 10px 14px !important;
    font-size: 15px !important;
    border: 1px solid var(--color02) !important;
    border-radius: 8px !important;
    color: var(--color02)!important;
}
body.page-template-page-contact form .forminator-row{
    margin-bottom: 22px !important;
}
body.page-template-page-contact form button.forminator-button{
    background-color: var(--color02);
    padding: 12px 22px 12px 22px !important;
    font-size: 17px !important;
	border-radius: 10px !important;
    color: #fff !important;
	transition: all 0.3s;
}
body.page-template-page-contact form button.forminator-button:hover {
	background-color: var(--color01);
	box-shadow: 0px 10px 15px rgba(0, 0, 0, 0.15);
}
body.page-template-page-contact .blocContact .content{
    background-color: var(--color00);
    padding: 45px;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
}
body.page-template-page-contact .contactForm{
    background-color: var(--color02);
    padding: 40px;
    border-radius: 15px;
}
    body.page-template-page-contact .contactForm iframe{
        margin: 0 0 30px 0 !important;
        max-height: 300px;
    }
    body.page-template-page-contact .contactForm a{
        color: var(--color00);
        font-size: 17px;
        font-family: "hm";
    }
    body.page-template-page-contact .contactForm a:hover{
        color: var(--color00);
    }
    body.page-template-page-contact .contactForm svg{
        color: var(--color00);
        transition: .3s;
    }
    body.page-template-page-contact .contactForm .contactInfo:hover svg{
        transform: scale(1.1);
    }
    body.page-template-page-contact .contactForm div.svg{
        padding: 8px;
        background-color: #017EB0;
        border-radius: 5px;
    }
    body.page-template-page-contact .contactForm hr{
        margin: 30px 0;
        border-color: #85ddff;
    }
    body.page-template-page-contact .contactForm div.svgRotate{
        width: fit-content;
        position: absolute;
        bottom: 30px;
        right: 30px;
        animation: rotateOscillation 6s ease-in-out infinite alternate;
    }
@keyframes rotateOscillation {
  from {
    transform: rotate(-50deg);
  }
  to {
    transform: rotate(50deg);
  }
}

/*****************
**** 03 - FAQ ****
*****************/
body.page-template-page-faq h2, body.page-template-page-faq h3{
    margin-bottom: 1rem;
}
body.page-template-page-faq h2{
    font-size: 3.3rem;
}
body.page-template-page-faq h3{
    font-size: 2rem;
    font-family: 'hb';
}
body.page-template-page-faq .infoBloc{
    background: var(--color00);
    border: 1px solid #CFCFCF;
    padding: 30px;
    border-radius: 15px;
    height: fit-content;
    position: sticky;
    top: 150px;
}
    body.page-template-page-faq .infoBloc a.bouton1{
        width: 100%;
        margin: 0px;
        cursor: pointer;
        background-color: var(--vert);
    }
    body.page-template-page-faq .infoBloc a.bouton1:hover{
        background-color: var(--color01);
    }
    body.page-template-page-faq .infoBloc span{
        font-family: 'heb';
    }

body.page-template-page-faq .faq-question {
    padding: 20px 30px;
    border-radius: 15px;
    border: 1px solid var(--color05);
    margin: 0 0 20px 0;
}
body.page-template-page-faq .faq-question .panel-title {
    font-size: 17px;
    font-family: 'hm';
    position: relative;
    margin: 0;
    display: block;
    cursor: pointer;
    transition: all .3s;
}
body.page-template-page-faq .faq-question:hover .panel-title, body.page-template-page-faq .faq-question .panel:checked ~ .panel-title{
    color: var(--vert);
}
body.page-template-page-faq input.panel{
 display: none;
}
body.page-template-page-faq .panel-content {
    font-size: 15px;
    color: var(--color01);
    width: 100%;
    padding: 0 !important;
    height: 0;
    overflow: hidden;
    z-index: 0;
    position: relative;
    opacity: 0;
    -webkit-transition: .4s ease;
    -moz-transition: .4s ease;
    -o-transition: .4s ease;
    transition: .4s ease;
}

body.page-template-page-faq .panel:checked ~ .panel-content{
    height: auto;
    opacity: 1;
    padding: 14px;
    padding: 15px 0 0 0 !important;
}
body.page-template-page-faq .faq-question .plus{
    margin-left: auto;
    transition: all .3s;
}
body.page-template-page-faq .faq-question:hover .plus{
    color: var(--vert);
}
body.page-template-page-faq .faq-question .panel:checked ~ .plus{
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    color: var(--vert);
}



/*****************
*** 04 - DEVIS ***
*****************/
body.page-template-page-devis .blocContact{
    background-color: rgba(0, 165, 230, 0.2);
    border-radius: 15px;
    padding: 50px;
}
body.page-template-page-devis .blocContact .contactForm{
    padding: 30px;
    border-radius: 10px;
    background-color: #EFF8FF;
}
body.page-template-page-devis div.formBloc div.forminator-row label.forminator-label, body.page-template-page-devis div.formBloc .forminator-label{
    display: none !important;
}
body.page-template-page-devis div.formBloc div.forminator-row .forminator-col input, body.page-template-page-devis div.formBloc div.forminator-row .forminator-col textarea{
    width: 100%;
    font-family: 'hm' !important;
    padding: 10px 6px 10px 0;
    border: 0px;
    border-bottom: 2px solid rgba(0, 0, 0, .2);
    color: var(--color01);
    background-color: transparent;
    outline: none;
    transition: all .3s;
}
body.page-template-page-devis div.formBloc div.forminator-row .forminator-col input:hover,
body.page-template-page-devis div.formBloc div.forminator-row .forminator-col textarea:hover {
    border-bottom-color: var(--color02); /* Par exemple une couleur secondaire */
    color: var(--color02);
}
body.page-template-page-devis div.formBloc div.forminator-row .forminator-col input:focus,
body.page-template-page-devis div.formBloc div.forminator-row .forminator-col textarea:focus {
    border-bottom-color: var(--color02); /* Couleur différente pour focus */
    color: var(--color02);
}
body.page-template-page-devis .formTitle{
    color: var(--color01);
    font-family: 'hb';
    font-size: 18px;
}
body.page-template-page-devis form .forminator-row:nth-of-type(4), body.page-template-page-devis form .forminator-row:nth-of-type(6) {
    margin-bottom: 6px !important;
    margin-top: 40px;
}
body.page-template-page-devis .formTitle p{
    margin: 0;
}
body.page-template-page-devis form .checkBox .forminator-radio input[type="radio"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 24px !important;
    height: 24px !important;
    border: 2px solid var(--color02) !important;
    border-radius: 4px !important;
    outline: none !important;
    cursor: pointer !important;
    position: relative !important;
    clip-path: none !important;
}
body.page-template-page-devis form .checkBox .forminator-radio input[type="radio"]:checked {
    background-color: var(--color02) !important;
    border-color: var(--color01) !important;
}
body.page-template-page-devis form .forminator-radio-bullet{
    display: none !important;
}
body.page-template-page-devis form div#radio-1 span{
    font-family: 'hm' !important;
}
body.page-template-page-devis form div#radio-2 label {
    display: inline-block;
    margin: 0 8px 8px 0;
    padding: 16px;
    font-family: 'hm' !important;
    color: rgba(0, 0, 0, 0.4);
    border: 2px solid rgba(0, 0, 0, 0.4);
    border-radius: 8px;
    transition: all .3s;
}
body.page-template-page-devis form div#radio-2 .forminator-radio:has(input[type="radio"]:checked) {
    color: var(--color00);
    border: 2px solid var(--color02);
    background-color: var(--color02);
}
body.page-template-page-devis form div#radio-2 span{
    margin: 0;
}
body.page-template-page-devis form button.forminator-button-submit {
    position: relative !important;
    font-family: 'hm' !important;
    font-size: 18px !important;
    border: 0 !important;
    color: var(--color00) !important;
    padding: 14px 52px 14px 24px !important;
    background-color: var(--color02) !important;
    background-image: linear-gradient(var(--color01) 50%, transparent 0) !important;
    background-size: 100% 200% !important;
    background-position: 0 -100% !important;
    background-repeat: no-repeat !important;
    border-radius: 10px !important;
    transition: all .3s !important;
}
body.page-template-page-devis form button.forminator-button-submit:hover {
    background-color: var(--color01) !important;
}
body.page-template-page-devis form .forminator-button-submit::before {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background: url(../img/iconSend.png) no-repeat center center;
    background-size: contain;
}
.forminator-ui#forminator-module-111.forminator-design--default .forminator-repeater-field {
    background: none !important;
    box-shadow: none !important;
}
body.page-template-page-devis form #checkbox-2 .forminator-checkbox-box{
    width: 44px;
    height: 24px;
    background-color: var(--color04) !important;
    border-radius: 12px;
    position: relative;
    margin-right: 10px;
    flex: none;
    transition: background-color 0.3s;
}
body.page-template-page-devis form #checkbox-2 .forminator-checkbox input[type="checkbox"]:checked + .forminator-checkbox-box{
    width: 44px;
    height: 24px;
    background-color: var(--color02) !important;
    border-radius: 12px;
    position: relative;
    border-color: var(--color02);
    margin-right: 10px;
    transition: background-color 0.3s;
}
body.page-template-page-devis form #checkbox-2 .forminator-checkbox .forminator-checkbox-box::before{
    display: none;
}
body.page-template-page-devis form #checkbox-2 .forminator-checkbox .forminator-checkbox-box::after{
    content: "";
    width: 18px;
    height: 18px;
    background-color: white;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    transition: transform 0.3s;
}
body.page-template-page-devis form #checkbox-2 .forminator-checkbox input[type="checkbox"]:checked + .forminator-checkbox-box::after{
    transform: translateX(20px);
}
body.page-template-page-devis form #checkbox-2 .forminator-checkbox-label{
    font-size: 16px;
    font-family: 'hm';
}
div.formBloc div.forminator-row #upload-1 button.forminator-button{
    display: inline-block;
    padding: 12px 20px;
    background-color: #FAFAFF;
    color: var(--color02);
    border: 1px dashed var(--color02);
    border-radius: 10px;
    cursor: pointer;
    text-align: center;
    transition: all 0.3s ease;
    min-width: 180px;
    text-align: center;
}
body.page-template-page-devis form #group-1 .forminator-action-buttons{
    display: none;
}



/*****************
* 05 - Services *
*****************/
body.page-template-page-service .texteservice, body.page-template-page-actualite .texteservice{
    margin-top: 70px;
}
body.page-template-page-service .serviceList, body.home .serviceList{
    border-radius: 15px;
    overflow: hidden;
}
body.page-template-page-service .serviceItem, body.home .serviceItem{
    overflow: hidden;
    border-radius: 15px;
}
body.page-template-page-service .serviceItemBloc img, body.home .serviceItemBloc img{
    height: 420px;
    border-radius: 15px;
    transition: all .5s;
}
body.page-template-page-service .serviceItemBloc:hover img, body.home .serviceItemBloc:hover img{
    transform: scale(1.05);
}
body.page-template-page-service .serviceItemBloc div.img::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(180deg, #000000 -6.32%, rgba(0, 0, 0, 0) 100%);
    transition: all .5s;
    z-index: 2;
}
body.home .serviceItemBloc div.img::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(0deg, #000000 -6.32%, rgba(0, 0, 0, 0) 100%);
    transition: all .5s;
    z-index: 2;
}
body.page-template-page-service .serviceItemBloc:hover div.img::after{
    height: 50%;
    background: linear-gradient(180deg, #000000 -6.32%, rgba(0, 0, 0, 0) 100%);
}
body.home .serviceItemBloc:hover div.img::after{
    height: 50%;
    background: linear-gradient(0deg, #000000 -6.32%, rgba(0, 0, 0, 0) 100%);
}
body.page-template-page-service .serviceItemBloc h2{
    position: absolute;
    top: 20px;
    left: 20px;
    width: 90%;
    font-size: 26px;
    color: var(--color00);
    z-index: 2;
}
body.home .serviceItemBloc h2{
    position: absolute;
    bottom: 20px;
    left: 20px;
    width: 90%;
    font-size: 26px !important;
    color: var(--color00);
    z-index: 2;
}
body.page-template-page-service .serviceList .swiper-button-next, body.page-template-page-service .serviceList .swiper-button-prev{
    background-color: var(--color02);
    border: 3px solid #EFF8FF;
    padding: 10px;
    width: 50px;
    height: 50px;
    bottom: 0;
    top: inherit;
}
body.home .serviceList .swiper-button-next, body.home .serviceList .swiper-button-prev{
    background-color: var(--rouge);
    border: 3px solid #EFF8FF;
    padding: 10px;
    width: 50px;
    height: 50px;
    bottom: 0;
    top: inherit;
}
body.page-template-page-service .serviceList .swiper-button-next::after, body.page-template-page-service .serviceList .swiper-button-prev::after, body.home .serviceList .swiper-button-next::after, body.home .serviceList .swiper-button-prev::after{
    font-size: 26px;
    color: #EFF8FF;
}
body.page-template-page-service .serviceList .swiper-button-prev{
    left: 0;
    border-radius: 0 15px 0 15px;
}
body.page-template-page-service .serviceList .swiper-button-next{
    right: 0;
    border-radius: 15px 0 15px 0;
}
body.home .serviceList .swiper-button-prev{
    left: 0;
    border-radius: 0 15px 0 15px;
}
body.home .serviceList .swiper-button-next{
    right: 0;
    border-radius: 15px 0 15px 0;
}
body.page-template-page-service .serviceList a.fullLink, body.home .serviceList a.fullLink{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
}

body.single-service .contentPadding{
    padding: 70px 0;
}
body.single-service .contentPadding h2{
    font-size: 35px;
}
body.single-service .contentPadding h3{
    font-size: 22px;
    color: var(--color00);
}
body.single-service .contentPadding .serviceWhy{
    background: linear-gradient(180deg, rgba(0, 165, 230, 0.65) 0%, #00A5E6 100%);
    border: 2px solid #00A5E6;
    border-radius: 10px;
    padding: 40px;
}
body.single-service .contentPadding .serviceWhy ul{
    color: var(--color00);
}
body.single-service section#content ul {
    list-style-type: disc;
    margin: 0 !important;
    padding: 0 0 0 16px !important;
}




/*****************
*** 06 - Agenda **
*****************/
body.page-template-page-actualite .texteservice .subTitle{
    color: var(--jaune);
}
body.page-template-page-actualite .blocActuItem, body.home .blocActuItem{
    margin-bottom: 25px;
}
body.page-template-page-actualite .blocActuItem .blocActuImg, body.home .blocActuItem .blocActuImg{
    height: 260px;
    border-radius: 10px;
    margin-bottom: 10px;
}
body.home .blocActuItem .blocActuImg{
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
    transition: all .3s;
}
body.home .blocActuItem:hover .blocActuImg{
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.3);
}
body.page-template-page-actualite .blocActuItem .blocActuImg::after, body.home .blocActuItem .blocActuImg::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: var(--color01);
    opacity: .35;
    transition: all .3s;
    z-index: 2;
}
body.page-template-page-actualite .blocActuItem:hover .blocActuImg::after, body.home .blocActuItem:hover .blocActuImg::after{
    background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
}
body.page-template-page-actualite .blocActuImg span{
    position: absolute;
    bottom: 0;
    left: 0;
    background: var(--jaune);
    border: 3px solid #EFF8FF;
    padding: 6px 14px;
    border-radius: 0px 10px;
    color: var(--color00);
    font-size: 15px;
    z-index: 3;
}
body.home .actu .blocActuImg span{
    position: absolute;
    top: 0;
    left: 0;
    background: var(--jaune);
    border: 3px solid #EFF8FF;
    padding: 6px 14px;
    border-radius: 10px 0px;
    color: var(--color00);
    font-size: 15px;
    z-index: 3;
}
body.home .actu .blocActuText{
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--color00);
    padding: 6px 10px;
    z-index: 2;
    border-radius: 0 0 10px 10px;
    width: 100%;
}
body.page-template-page-actualite .blocActuText h2{
    font-size: 20px;
}
body.page-template-page-actualite .blocActuText h2, body.home .blocActuText h2{
    font-size: 18px !important;
    font-family: 'hb';
}
body.page-template-page-actualite .blocActuItem .fullLink, body.home .blocActuItem .fullLink{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
}
body.single article{
    padding: 70px 0;
}
body.single article time{
    padding: 10px 14px;
    border: 1px solid rgba(152, 179, 255, 0.34);
    border-radius: 8px;
    color: var(--color02);
    font-family: 'hm';
    font-size: .9rem;
    width: fit-content;
    margin-bottom: 10px;
}
body.single article h2{
    font-size: 32px;
    margin-top: 20px;
}
body.single article .article-img{
    border-radius: 15px;
}



/*RESPONSIVE
01 - DESKTOP */
@media screen and (min-width: 1400px), (min-device-width: 1400px) {
    .footerContactBloc .footerContactText{
        width: 50%;
    }
}

@media screen and (max-width: 1400px), (max-device-width: 1400px) {
    body.page-template-page-societe .who .cover{
        order: 2;
        width: 100%;
    }
    body.page-template-page-societe .who .text{
        width: 100%;
    }
    body.home .expertise {
        margin-bottom: 70px;
    }
}

@media screen and (max-width: 1300px), screen and (max-device-width: 1300px) {
    body.home .heroSection .heroContent{
        width: 100%;
    }
}

/*02 MINI-DESKTOP */
@media screen and (max-width: 1200px), screen and (max-device-width: 1200px) { 
    body.page-template-page-societe .valeurs .elipseBloc{
        width: 80%;
    }
    body.home .chiffre .imgGauche{
        display: none !important;
    }
}



/*02 TABLETTE*/
@media screen and (max-width: 992px), screen and (max-device-width: 992px) {
    header.header .blocBouton{
        display: none !important;
    }
    footer .blocFooterLink hr {
        margin: 18px auto;
    }
    section.footerContactBloc div.footerContactImg{
        display: none;
    }
    section.footerContactBloc .footerContactText{
        z-index: 4;
    }
    body.page-template-page-contact .blocContact .content {
        border-top-right-radius: 15px;
        border-top-left-radius: 15px;
        border-bottom-left-radius: 0px;
    }
    body.page-template-page-contact .contactForm {
        border-top-right-radius: 0px;
        border-top-left-radius: 0px;
    }
    body.page-template-page-contact .contactForm .socialLink{
        justify-content: start !important;
    }
    body.page-template-page-societe .valeurs .elipseBloc{
        width: 100%;
    }
    body.page-template-page-societe .moyen .listMoyen{
        margin-top: 30px;
    }
    body.page-template-page-service .texteservice div.cover{
        display: none;
    }
    body.single-service .contentPadding .article-img{
        margin-top: 30px;
    }
    .headerPage .text {
        width: 90%;
    }
    .headerPage .text H1{
        font-size: 2.2rem;
    }
    body.home .expertise {
        margin-bottom: 40px;
    }
    body.home .expertise .cover{
        margin-top: 25px;
    }
    body.home .chiffre .ciffreTwoItem{
        margin-bottom: 10px;
    }
    body.home .chiffre .chiffreOne .cover{
        max-height: inherit !important;
    }
}



/*03 MINI-TABLETTE et MOBILE */
@media screen and (max-width: 767px), screen and (max-device-width: 767px) { 
    body.page-template-page-faq .faq-question .plus{
        display: none;
    }
    .headerPage{
        height: 290px;
    }
    section.footerContactBloc .footerContactText{
        align-items: center;
        text-align: center;
    }
    .elipseBloc .elipse{
        display: none;
    }
    body.home .domaine .elipseBloc{
        text-align: center;
    }
    body.home .domaine a.bouton4{
        margin: 0 auto 10px auto;
    }
    body.home .chiffre .ciffreTwoItem{
        align-items: center;
    }
    body.home .satisfaction .elipseBloc {
        width: 100%;
    }
    footer .blocFooterLink .btnContact{
        align-items: center;
    }
}

@media screen and (max-width: 580px), screen and (max-device-width: 580px) {
    body.home .chiffre .chiffreOne .cover {
        display: none;
    }
    body.home .heroSection .heroContent h1 {
       font-size: 2.2rem;
    }
    body.home .heroSection .heroContent p {
        width: 100%;
    }
    body.home .heroSection .heroContent .herospan, body.home .heroSection .heroContent .confiance, body.home .heroSection .heroContent .sliderPartenaire{
        display: none !important;
    }
}

@media screen and (max-width: 500px), screen and (max-device-width: 500px) {
    body.page-template-page-societe .who .cover video{
        height: 225px;
    }
    body.page-template-page-contact h2, body.page-template-page-devis .content h2, body.page-template-page-faq h2{
        font-size: 34px !important;
        text-align: center;
    }
    body.page-template-page-societe .footerContactBloc h2 {
        font-size: 34px !important;
    }
    body.page-template-page-societe h2{
        font-size: 34px !important;
    }
    body.page-template-page-devis .blocContact {
        padding: 20px;
    }
    body.page-template-page-devis .content .titre{
        font-size: 16px;
    }
    .headerPage .text h1{
        font-size: 1.8rem;
    }
    body.single-service .contentPadding h2 {
        font-size: 25px;
    }
    body.single-service .contentPadding {
        padding: 30px 0;
    }
    section.footerContactBloc {
        margin-top: 20px !important;
        padding: 25px !important;
    }
    header {
        padding: 14px 10px;
    }
    body.home h2{
        font-size: 36px !important;
    }
    body.home .expertise div.bouton{
        flex-wrap: wrap !important;
    }
}

@media screen and (max-width: 400px), screen and (max-device-width: 400px) {
    header{
        width: 97%;
    }
}