:root {
    --color0: #fff;
    --color1: #b38c5d;
    --color2: #bf986a;
    --colorbg: #1C1616;
    --color3: #1C1616;
    --font1: "SpaceGrotesk";
    --font2: "Montserrat-Light";
    --light: #eeeeee;
    --radius: 5px;
    --taille_font: clamp(1.6rem, 0.8vw, 2.2rem);
}.description-iframe iframe {
    width: 100%;
}
.fd-avis_satisfaction {
    top: 66% !important;
}

div#fd-feedback-button {
    display: none !important;
}
button.btn-step1 {
    background: transparent !important;
    border: 0;
    float: left;
    text-decoration: underline;
}
.loader-wrapper {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: var(--colorbg);
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader {
    border-right: 3px solid rgba(123, 123, 123, 0.37);
    border-bottom: 3px solid rgba(123, 123, 123, 0.37);
    border-left: 3px solid rgba(123, 123, 123, 0.37);
    border-image: initial;
    border-top: 3px solid var(--color1);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: 2s linear 0s infinite normal none running spin;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.step {
    display: none;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.4s, transform 0.4s;
}

.step.active {
    display: block;
    opacity: 1;
    transform: translateY(0px);
}

.progress-bar {
    display: flex;
    margin: 25px auto 35px;
    user-select: none;
    width: 100%;
    position: relative;
    background: none;
    box-shadow: rgb(0, 0, 0) 0px 0px 0px;
    flex-direction: row;
    z-index: 1000;
}

.progress-step {
    position: relative;
    flex: 1 1 0%;
    text-align: center;
    color: rgb(187, 187, 187);
    font-weight: 600;
    cursor: pointer;
    transition: color 0.3s;
}

.progress-step.active {
    color: var(--color1);
    font-weight: 700;
}

.progress-step::before {
    content: "";
    display: block;
    margin: 0px auto 8px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: rgb(187, 187, 187);
    transition: background-color 0.3s;
}

.progress-step.active::before {
    background-color: var(--color1);
}

.progress-step:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 9px;
    right: -50%;
    width: 100%;
    height: 3px;
    background-color: rgb(187, 187, 187);
    z-index: -1;
    transition: background-color 0.3s;
}

.progress-step.active:not(:last-child)::after {
    background-color: var(--color1);
}

label {
    display: block;
    margin-bottom: 6px;
    font-weight: 600;
    color: rgb(34, 34, 34);
    user-select: none;
}

input[type="text"], input[type="email"], input[type="tel"], select, textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1.8px solid rgb(204, 204, 204);
    border-radius: 6px;
    transition: border-color 0.3s;
    font-family: inherit;
    box-sizing: border-box;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, select:focus, textarea:focus {
    border-color: rgb(0, 86, 179);
    outline: none;
    box-shadow: rgba(0, 86, 179, 0.3) 0px 0px 6px;
}

label.radio, label.checkbox {
    font-weight: 400;
    cursor: pointer;
    user-select: none;
    display: inline-block;
    margin-right: 15px;
    position: relative;
    padding-left: 24px;
}

label.radio input[type="radio"], label.checkbox input[type="checkbox"] {
    position: absolute;
    left: 0px;
    top: 3px;
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.step-buttons {
    text-align: right;
    margin-top: 25px;
}

.btn-step {
    margin-left: 10px;
    user-select: none;
    background: var(--color1);
    color: var(--color0);
    padding: 17px 21px;
    backdrop-filter: blur(3px);
    letter-spacing: 2px;
    font-size: 16px;
    position: relative;
    border-radius: var(--border-radius);
    transition: 0.3s linear;
    border: 1px solid rgba(255, 255, 255, 0.32);
}

.btn-step:hover:not(:disabled) {
    background-color: rgb(155, 119, 76);
}

.btn-step:disabled {
    background-color: var(--color1);
    cursor: not-allowed;
    box-shadow: none;
    margin: 0px;
    float: left;
}

input:invalid, select:invalid, textarea:invalid {
    border-color: rgb(229, 57, 53);
}

@media (max-width: 600px) {
    .progress-bar {
        flex-direction: column;
        max-width: 100%;
        display: none;
    }

    .progress-step:not(:last-child)::after {
        display: none;
    }

    .progress-step {
        margin-bottom: 18px;
    }
}

.flex {
    display: flex;
}

.row.accueil {
    align-items: center;
    position: relative;
    width: 100%;
    column-gap: 0%;
}

.text {
    flex-direction: column;
    gap: 3vh;
    flex: 1 1 0%;
    margin-right: 4%;
}

.photo-accueil {
    position: relative;
    display: flex;
    flex: 1 1 0%;
    gap: 7px;
    float: right;
}

.photo-accueil .photo-one, .photo-accueil .photo-two-inner {
    flex: 1 1 0%;
    display: flex;
    flex-direction: column;
}

.photo-accueil .photo-one {
    min-height: 71vh;
    text-align: center;
    display: flex;
    align-items: center;
}

.photo-accueil .photo-two-inner {
    min-height: 46vh;
    gap: 1vh;
}

.photo-accueil .photo-one img, .photo-accueil .photo-two-inner img {
    object-fit: cover;
    width: auto;
    height: 100%;
}

.photo-accueil .photo-two-inner {
    display: flex;
    flex-direction: column;
}

.photo-accueil .photo-two {
    flex: 1 1 0%;
}

section.photos {
    position: relative;
    width: 100%;
    background: var(--bg-facultatif);
    padding: 10vh 0px 0px !important;
}

.nos-photos {
    position: relative;
    width: 100%;
}

.nos-photos .gallery .gallery-item.large {
    grid-area: span 2 / span 2;
}

.nos-photos .gallery .gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    min-width: 100%;
    max-height: 100%;
}

.nos-photos .gallery .title-item-gallery {
    position: absolute;
    background-color: var(--color-light);
    color: var(--color-dark);
    padding: 10px;
    opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
    will-change: opacity, transform;
    pointer-events: none;
    z-index: 1000;
    max-width: max-content;
    white-space: nowrap;
}

.gallery-item {
    position: relative;
}

.nos-photos .gallery .title-item-gallery.show {
    opacity: 1;
    transition: opacity 0.3s;
}

.body-pageseo .row.ligne-photos.retrait, .body-page-1 .row.ligne-photos.retrait {
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    column-gap: 1%;
}

.photos-1 {
    width: 24.2%;
}

.body-page-1 .gallery, .body-pageseo .gallery {
    padding: 10vh 15vw 0px;
    position: relative;
    width: 100%;
}

.services .swiper-container {
    overflow: hidden;
    width: 100%;
}

.text-center {
    text-align: center;
}

.services .swiper-slide {
    overflow: hidden;
    margin: 0px 0px 7vh;
}

.service-container {
    overflow: hidden;
    width: 100%;
}

.service-container .swiper-slide {
    width: 32%;
}

.services_number {
    padding: 1px 0px;
    margin-right: 0px;
    display: inline-block;
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
    color: inherit;
    opacity: 0;
    text-indent: -50px;
    white-space: nowrap;
    will-change: text-indent, opacity, margin-right;
    transition: text-indent 0.4s ease-out, opacity 0.4s ease-out, margin-right 0.2s ease-out;
}

.service-title a {
    width: 100%;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    text-decoration: none;
    color: var(--color-dark);
    overflow-wrap: break-word;
}

.services_title_text {
    padding: 1px 0px;
    width: 100%;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.services .swiper-slide:hover .services_number {
    opacity: 1;
    text-indent: 0px;
    margin-right: 0.45em;
}

h3.service-title {
    text-transform: uppercase;
    font-size: 1.15em;
}

h3.service-title::before {
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    position: absolute;
    z-index: 1;
    bottom: 0px;
    left: 0px;
    background-color: rgb(238, 238, 238);
}

.services .swiper-slide:hover h3.service-title::after {
    width: 100%;
}

h3.service-title::after {
    content: "";
    display: block;
    height: 1px;
    width: 0px;
    z-index: 1;
    bottom: 0px;
    left: 0px;
    position: absolute;
    will-change: width;
    transition: width 0.4s;
    background-color: rgb(0, 0, 0);
}

.btnservices .link_icon {
    position: relative;
    vertical-align: middle;
    overflow: hidden;
    width: 2.3em;
    height: 2.3em;
    line-height: 2.23em;
    display: flex;
    text-align: center;
    text-decoration: none;
    color: var(--color-dark);
    box-sizing: border-box;
    border-radius: 0px;
    border: 1px solid var(--color2);
    will-change: border-color;
    transition: border-color 0.3s ease-out 0.1s;
    align-items: center;
    justify-content: center;
}

.btnservices .link_icon i {
    font-size: 9px;
}

.service-texte {
    display: flex;
    place-content: center space-between;
    align-items: center;
}

.services .swiper-slide:hover .link_icon {
    border-color: var(--color-dark);
}

.services {
    padding: 10vh 15vw;
    position: relative;
    width: 100%;
}

.bloctext {
    text-align: center;
    margin: 0px 0px 9vh;
}

.bloctext h2.h1 {
    text-align: center;
}

.flex1 {
    display: flex;
    justify-content: center;
    align-items: center;
}

section.photos {
    position: relative;
    width: 100%;
    padding: 10vh 0px 0px !important;
}

.nos-photos {
    position: relative;
    width: 100%;
}

.nos-photos .gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    padding: 0px 11%;
}

.service1 {
    width: 31%;
}

.page.clear.services {
    padding: 0px;
}

.table-container {
    overflow-x: auto;
    margin-bottom: 30px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px;
    border-radius: 8px;
}

table {
    width: 100%;
    border-collapse: collapse;
    background-color: white;
}

th, td {
    padding: 12px 15px;
    text-align: center;
    border: 1px solid rgb(221, 221, 221);
}

th {
    background-color: var(--color2);
    font-weight: bold;
}

tr:nth-child(2n) {
    background-color: rgb(249, 249, 249);
}

.feature-name {
    text-align: left;
    font-weight: bold;
    background-color: var(--color2);
}

.vehicle-name {
    background-color: rgb(0, 86, 179);
    color: white;
    font-weight: bold;
}

.devis-btn {
    background-color: rgb(0, 86, 179);
    color: white;
    border: none;
    padding: 8px 15px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: bold;
}

.devis-btn:hover {
    background-color: rgb(0, 61, 130);
}

.section-title {
    background-color: rgb(0, 86, 179);
    color: white;
    padding: 15px;
    text-align: center;
    margin: 30px 0px 20px;
    border-radius: 4px;
}

.company-name {
    text-align: start;
    font-size: 24px;
    margin: 20px 0px;
    font-weight: bold;
}

.main-page {
    overflow-x: hidden;
    position: relative;
}

html, body {
    height: 100%;
}

strong {
    font-family: var(--font2);
}

.AvisClientsList li::before {
    display: none;
}

.actualites .cell.photo::before {
    content: "";
    background: url("../images/dots-2.svg") center center / contain no-repeat;
    width: 111px;
    height: 105px;
    position: absolute;
    left: -48px;
    top: -24px;
    display: none;
    z-index: 1;
    filter: grayscale(1);
}

.div-rs {
}

.fluid-contenu .corps ul {
    list-style-type: disclosure-closed;
}

ul.particularites li::before {
    display: none;
}

.intervention ul li::before {
    display: none;
}

.pied .navf .menu_footer li::before {
    display: none;
}

body {
    width: 100%;
    margin: 0px;
    padding: 0px;
}

a {
    transition: color 300ms ease-out;
}

a img {
    border: none;
}

img {
    max-width: 100%;
}

ul, ol {
    list-style: inside none none;
    padding-left: 0px;
}

ul li, ol li {
    padding-left: 4px;
    filter: none;
    position: relative;
}

menu, dir {
    padding-left: 15px;
}

blockquote p {
    font-size: inherit;
}

table, table td, table th {
    font-size: inherit;
    border: 1px solid rgb(179, 169, 169);
}

table td {
    background: var(--color3);
}

.datepicker table {
    border: none;
}

main, section, article, aside, footer, header, nav, hgroup {
    display: block;
}

iframe {
    border: none;
}

[data-anim] {
    opacity: 0;
}

.row {
    margin-right: 0px !important;
    margin-left: 0px !important;
}

.home-text .row.recup-photos.gallery div {
    height: 100%;
}

.r-flex .row.recup-photos.gallery {
    height: 661px;
    position: relative;
    max-width: 520px;
    margin: auto;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 5px 25px;
}

.recup-photos .propor .propor-cont .imagecont {
    position: absolute;
    inset: 0px;
}

.circle-avis-container {
    position: absolute;
    width: 130px;
    height: 130px;
    border: 7px solid rgb(156, 156, 156);
    border-radius: 100%;
    z-index: 90;
    bottom: -45px;
    left: 20px;
    display: none;
}

.circle-avis-container .circle-avis {
    width: 43px;
    height: 43px;
    background-color: rgb(173, 173, 173);
    position: absolute;
    top: -23px;
    left: 23px;
    border-radius: 100%;
}

.rotating {
    animation: 3s linear 0s infinite normal none running rotating;
}

.circle-avis-container-2 {
    position: absolute;
    width: 56px;
    height: 56px;
    border: 8px solid rgb(172, 172, 172);
    border-radius: 100%;
    z-index: 1000;
    top: 65px;
    right: 20px;
    display: none;
}.description-iframe {
    width: 64%;
}

.circle-avis-container-2 .circle-avis-2 {
    width: 24px;
    height: 24px;
    background-color: rgb(185, 185, 185);
    border-radius: 100%;
    left: 0px;
    right: 0px;
    margin: 8px auto 0px;
    animation: 1s linear 0s infinite alternate none running circle-avis-2;
}

@keyframes circle-avis-2 {
    0% {
        margin: 8px auto 0px;
    }

    100% {
        margin: -85px auto 0px;
    }
}

@keyframes rotating {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes blinker {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes rotate {
    100% {
        transform: rotate(-360deg);
    }
}

@keyframes pulsing {
    0% {
        transform: scale(0.5, 0.5);
    }

    50% {
        transform: scale(1, 1);
    }

    100% {
        transform: scale(0.5, 0.5);
    }
}

@keyframes dashshape {
    0% {
        stroke-dashoffset: 0;
    }

    100% {
        stroke-dashoffset: 8000;
    }
}

.images-f::after {
    content: "";
    width: 180px;
    height: 170px;
    position: absolute;
    right: -41px;
    bottom: -41px;
    z-index: -1;
    filter: grayscale(1);
}

.images-f img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.recup-photos .propor .propor-cont .imagecont img {
    object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1 1 0%;
    height: 100%;
}

a.imagecont img {
    position: relative;
    transition: 0.5s;
}

.propor.pic-1 {
    position: relative;
    height: 100%;
    overflow: visible;
}

.propor.pic-1::before {
    position: absolute;
    left: -50px;
    top: 40px;
    width: 200px;
    height: 40%;
    content: "";
    background: var(--color1);
    z-index: -1;
    clip-path: polygon(0px 0px, 100% 0px, 100% 100%, 12% 100%);
}

.propor.pic-1::after {
    position: absolute;
    left: -50px;
    bottom: 40px;
    width: 200px;
    height: 40%;
    content: "";
    background: var(--color2);
    z-index: -1;
    clip-path: polygon(12% 0px, 100% 0px, 100% 100%, 0px 100%);
    padding-top: 0px !important;
}

.propor.pic-2 {
    height: 400px !important;
}

.recup-photos .propor::after {
    padding-top: 78%;
    display: block;
    content: "";
}

.recup-photos .propor .propor-cont {
    position: absolute;
    inset: 0px;
}

.recup-photos .propor .propor-cont .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.recup-photos .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
    width: 100%;
    height: 100%;
    background: url("../images/ico-zoom.svg") center center / 65px no-repeat rgba(0, 0, 0, 0.68);
    transform: translate(-50%, -50%);
}

.recup-photos .propor .propor-cont .imagecont:hover .masque {
    opacity: 0.8;
    transition: 0.5s;
}

.recup-photos .propor .propor-cont .imagecont:hover .imagefond {
    transform: scale(1.15);
}

.sudo-slider-p {
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgb(255, 255, 255);
}

.sudo-slider-p img {
    height: 190px;
    margin: 0px 40px;
}

.row.r-flex {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.row.r-flex h1 {
    text-align: start;
}

.row.r-flex article {
    padding-left: 20px;
}

.nopad {
    padding-left: 0px;
    padding-right: 0px;
}

.nopad-l {
    padding-left: 0px;
}

.nopad-r {
    padding-right: 0px;
}

.nomargin {
    margin: 0px;
}

.hide {
    display: none;
}

.center {
    text-align: center;
}

.right {
    text-align: right;
}

.col-md-9.col-lg-10.nopad.right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 100px;
}

.justify {
    text-align: justify;
}

.clear::after {
    content: "";
    display: block;
    clear: both;
}

.bold {
    font-weight: bold;
}

.underline {
    text-decoration: underline;
}

.relative {
    position: relative;
}

.map-top {
    width: 70%;
}

.row.relative.header1 {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    color: var(--color0);
    font-size: var(--taille_font);
    transition: 400ms;
    padding: 1vh 8vw;
    background: var(--color2);
}

.tete.fixed .row.relative.header1 {
    padding: 8px 8vw;
    display: none;
}

.telephone {
    display: flex;
    gap: 20px;
}

.tete.fixed .row.relative {
    padding: 11px 8vw;
    background: var(--color3);
}
header .tel-header .icones {
    width: 2rem;
    margin: 0.9rem 0 0 0.8rem;
    height: 2rem;
    fill: var(--color1)
}


header .tel-header {
    padding: 0;
    margin: auto;
    transition: all .2s linear 0;
    -webkit-transition: all .2s linear 0;
    -khtml-transition: all .2s linear 0;
    -o-transition: all .2s linear 0;
    /* width: 4.2rem; */
    position: relative
}

header .fixedMenu .tel-header {
    padding: 1.5rem 0 2.0rem
}

header .tel-header .t_affiche {
    width: 4.2rem;
    height: 4.2rem;
    font-size: 0;
    display: block!important;
    opacity: 1!important;
    min-width: auto;
    border: 2px solid var(--color1);
    border-radius: 50%
}

header .tel-header.callTracker .t_phone {
    color: var(--color0);
    background: var(--color2);
    text-align: center;
    position: absolute;
    line-height: normal;
    height: auto;
    padding: 0.5rem;
    top: 7.2rem;
    border-radius: 1.5rem;
    transition: all .2s linear 0;
    -webkit-transition: all .2s linear 0;
    -khtml-transition: all .2s linear 0;
    -o-transition: all .2s linear 0;
    width: 12.5rem;
    right: 50%;
    margin-right: -6.5rem;
    min-width: auto;
    font-size: 1.5rem
}

header .fixedMenu .tel-header.callTracker .t_phone {
    top: 6.8rem
}

header .tel-header.callTracker .t_phone::before {
    content: '';
    display: block;
    position: absolute;
    top: -25px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 1.2rem 1.6rem;
    left: 50%;
    border-color: transparent transparent #333635;
    margin-left: -1.3rem
}

.row.relative.header1 i {
    margin: 0px 10px 0px 0px;
    font-size: 15px;
}

.row.relative.header1::before, .row.relative.header1::after {
    display: none;
}

.row.relative.header {
    display: flex;
    align-items: center;
    padding: 2vh 8vw;
    transition: 400ms;
    background: black;
}

.newsList {
    float: none;
    display: flex;
    flex-flow: wrap;
    place-content: flex-start;
    align-items: flex-start;
    width: 100%;
}

.newsList .ligne-actus {
    flex: 0 0 auto;
    margin: 0px 0px 30px;
    float: none;
}

.actualites .date_post, .news .date_post {
    text-align: center;
    color: var(--color0);
    font-weight: 800;
    font-size: clamp(12px, 0.5vw, 14px);
    line-height: 18px;
    text-transform: uppercase;
    display: block;
    background-color: rgba(191, 152, 106, 0.41);
    position: absolute;
    left: 8px;
    top: 8px;
    padding: 7% 4% 4%;
    z-index: 50;
    margin: 0px;
    font-family: var(--font2);
}

.actualites .date_post span, .news .date_post span {
    display: block;
    line-height: 13px;
    min-width: 84px;
}

.actualites .date_post .s1, .news .date_post .s1 {
    line-height: 35px;
    padding-bottom: 5px;
    font-size: clamp(40px, 2vw, 50px);
}

.newsList .propor .propor-cont .imagecont .masque {
    background-color: rgba(250, 250, 250, 0.2);
    background-image: none;
}

.news .propor .propor-cont .imagecont:hover {
    transform: scale(1.15);
}

.newsList .propor {
    overflow: hidden;
}

.newsList .item .h3 {
    color: var(--color2);
    padding: 5px 0px 25px;
    margin: 0px;
}

.newsList .item:hover .h3 {
    color: var(--color1);
}

.newsList .item .h3 a:hover {
    text-decoration: none;
}

.item-news {
    position: relative;
}

.newsItem .photo img {
    object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    flex: 1 1 0%;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    border-radius: var(--border-radius);
}

.newsItem .photo {
    width: 100%;
    height: clamp(300px, 40vw, 650px);
    background-color: rgb(242, 242, 242);
    transition: 0.5s;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.newsItem .contenu-article {
    padding: 15px 0px 0px;
    min-height: 200px;
    margin: 0px;
}

.newsItem .div-rs .btn-partage {
}

.newsItem .div-rs .btn-partage .btnp {
    background-color: var(--color4);
}

.newsItem .div-rs .btn-partage .btnp:hover {
    background-color: var(--color1);
}

.newsItem .date_post {
    padding: 5% 3% 3%;
}

.news_avant_apres {
    display: table;
    width: 100%;
    text-align: center;
    margin: 0px;
    height: 100%;
}

.news_avant_apres a, .news_avant_apres a:visited {
    padding: 15px 30px;
    color: var(--color1);
    text-decoration: none;
    border: 1px solid var(--color4);
    display: block;
    height: 100%;
    font-family: var(--font_family_1);
    text-transform: uppercase;
}

.news_avant_apres > div {
    display: table-cell;
    float: none;
    padding: 0px;
    height: 100%;
}

.news_avant_apres a:focus, .news_avant_apres a:hover {
    border-color: var(--color3);
    text-decoration: none;
}

.news_avant_apres > div:last-child {
    right: -5px;
}

.news_avant_apres a:focus b, .news_avant_apres a:hover b {
    text-decoration: none;
    color: var(--color1);
}

.navButtons, .navButtons:visited {
    padding: 0px 0px 10px;
    color: var(--color2);
    transition: 0.8s;
    text-decoration: none;
    display: block;
}

.news_avant_apres a:focus span, .news_avant_apres a:hover span {
    color: var(--color2);
    text-decoration: none;
}

a.return-to-news, a.return-to-news:link, a.return-to-news:visited {
}

a.return-to-news:focus, a.return-to-news:hover {
}

.pagination > li {
    background: 0px 0px;
    padding-left: 0px;
}

.actualites .cell.texte .contenu .bloctext .h1 {
    text-align: left;
    margin: 0px;
}

.actualites .cell.texte .contenu .bloctext {
    margin: 0px 0px 3vh;
}

.pagination > li > a, .pagination > li > span {
    color: var(--color1);
    border-color: var(--color3);
}

.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {
    color: var(--color0);
    background-color: var(--color1);
    border-color: var(--color1);
}

.pagination > li > a:focus, .pagination > li > a:hover, .pagination > li > span:focus, .pagination > li > span:hover {
    color: var(--color0);
    background-color: var(--color3);
    border-color: var(--color3);
}

@media (min-width: 768px) {
    .dispaly_flex {
        display: flex;
    }

    .flex_child_2 {
        flex: 2 1 0%;
    }

    .flex_child_1 {
        flex: 1 1 0%;
    }
}

.actualites .cell.photo a {
    display: block;
}

.actualites .cell.texte .contenu .content {
    margin: 0px 0px 4rem;
}

.actualites .cell.photo.cover img {
    object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1 1 0%;
    height: 100%;
}

.actualites {
    width: 100%;
    position: relative;
    z-index: 8000;
    background-color: var(--color3);
    padding: 0vh 10% 6vh;
}

.actualites article {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.actualites .cell.photo {
    vertical-align: top;
    width: 50%;
    background-position: center center;
    border-radius: var(--border-radius);
    height: 50vh;
    max-height: 50vh;
    position: relative;
    background-size: cover !important;
}

.actualites .cell.texte {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    border-bottom: 2px solid var(--color0);
}

.actualites:last-child .cell.texte {
    border-bottom: none;
}

.actualites .cell.texte .contenu {
    padding: 3em 10%;
    text-align: justify;
    direction: ltr;
}

.actualites .cell.texte .contenu ul {
    padding: 0px;
    margin: 0px;
}

.actualites .cell.texte .contenu ul li {
    padding: 5px 0px 5px 20px;
    background: url("../images/puce.svg") 0px 9px no-repeat;
}

.actualites .cell.texte .contenu ul li .bouton-principal {
    display: block;
}

.view-btn-all {
    position: relative;
    display: table;
    margin: 20px auto;
}

.view-btn-all i {
    margin-left: 8px;
    font-size: 14px;
}

.actualites .date_post, .news .date-article {
    font-size: 15px;
    font-weight: 100;
    color: var(--color0);
}

.news .ligne-actus .date-article {
    margin-top: 18px;
    margin-bottom: 0px;
}

.news .ligne-actus .contenu-article {
    margin-top: 0px;
}

.news .contenu-article {
    margin-top: 21px;
}

.AvisClientsBg {
    padding: 0px 7%;
}

.bloctext h2.h1.text-left {
    text-align: left;
}

.AvisClientsBg.bg-optionnel-gris .h1 {
    color: var(--color0);
}

.etoiles .fa {
    color: rgb(255, 204, 0);
}

.AvisClientsList {
    padding: 0px;
}

.AvisClientsList li {
    list-style: none;
    background: 0px 0px;
    width: 100%;
}

.avisClientsBg .h {
    text-align: center;
}

.AvisClients, .AvisClients:link, .AvisClients:visited {
    position: relative;
    background-color: transparent;
    padding: 30px 20px 20px;
    height: 283px;
    margin-top: 50px;
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.08);
    width: 100%;
    text-align: center;
    text-decoration: none;
}

.AvisClients:active, .AvisClients:hover {
    border: 1px solid var(--color2);
}

.AvisClients .h {
    font-size: calc(var(--taille_font) * 2);
    color: var(--color2);
    text-transform: uppercase;
    text-align: left;
}

.AvisClients p {
    margin-bottom: 0px;
}

.AvisClients .blazy {
    font-size: 16px;
    color: var(--color0);
    width: 128px;
    margin: 0px auto 20px -64px;
    border-radius: 50%;
    position: absolute;
    top: -70px;
    left: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: var(--color4);
}

.AvisClientsBg .bx-pager {
    bottom: 17px;
}

.avisContent::before {
    content: "«";
    display: inline-block;
    margin-right: 5px;
}

.avisContent::after {
    content: "»";
    display: inline-block;
    margin-left: 5px;
}

.temoignageScroll {
    max-height: 109px;
    text-align: left;
    overflow: hidden;
}

.temoignageScroll .scrollbar-content {
    padding: 0px 10px 0px 0px;
    width: 100%;
}

.temoignageScroll .scrollbar-path-vertical {
    right: 0px;
}

.date_post {
    font-size: 12px;
    padding: 4px 0px;
    display: none;
}

.AvisClients i.fa-solid.fa-quote-left {
    opacity: 0.2;
    position: absolute;
    left: 2%;
    font-size: calc(var(--taille_font) * 3 );
    color: var(--color1);
}

.etoiles {
    padding-bottom: 10px;
    text-align: left;
}

.etoiles {
}

.AvisClientsBg .bx-controls.bx-has-pager {
    display: block;
    position: relative;
    height: 70px;
}

.livre-elements {
    padding: 0px;
    margin-bottom: 40px;
    text-align: center;
}

.livre-elements .blazy {
    margin: 0px auto 10px;
    border-radius: 50%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: var(--color4);
    width: 115px;
    height: 115px;
}

.livre-elements .pseudo {
    margin-bottom: 25px;
}

.livre-elements .date {
    margin-bottom: 10px !important;
}

.livre-elements .etoiles {
    margin-bottom: 16px !important;
}

.livre-elements .temoignage {
    text-align: center;
}

.livre-elements .temoignage::before {
    content: "«";
    display: inline-block;
    margin-right: 5px;
}

.livre-elements .temoignage::after {
    content: "»";
    display: inline-block;
    margin-left: 5px;
}

.divAvis {
    padding: 30px 20px;
    margin-bottom: 28px;
    background-color: var(--colorbg);
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.17);
}

.btn-avis {
    margin-bottom: 30px;
}

.modal-content a, .modal-content a:link, .modal-content a:visited {
    color: var(--color2);
}

.modal-header .h1 {
    text-align: center;
    margin-bottom: 40px;
    color: var(--color2);
    font-size: 1.6vw;
    font-weight: 700;
    text-shadow: none;
}

.modal {
    display: none;
    overflow: auto scroll;
    position: fixed;
    inset: 0px;
    outline: 0px;
    z-index: 9999;
    font-size: 16px;
    color: var(--color0);
}

.modal-backdrop.in {
    z-index: 0;
}

.modal-open .modal {
    z-index: 99997;
    background: rgba(0, 0, 0, 0.8);
    color: var(--color2);
    text-shadow: none;
    font-family: Arial, Helvetica, sans-serif;
}

.modal-content .btn-close {
    border: 0px;
    background: 0px 0px;
    padding: 0px;
    font-size: 21px;
    color: rgb(0, 0, 0);
    opacity: 0.2;
    line-height: 1;
}

.modal-content .form-control {
    min-height: 44px;
    border-radius: 2px;
}

.modal-content .btn-close:focus, .modal-content .btn-close:hover {
    opacity: 0.5;
}

.modal-content .submit-review {
    padding-right: 60px !important;
}

.modal-content label.control-label {
    display: none;
    padding-top: 0px !important;
}

.modal-content label.control-label.label-note, .modal-content label.control-label.label-photo {
    display: block;
    padding-top: 14px !important;
}

#add-review {
    text-align: center;
}

#add-review .form-group {
    text-align: left;
}

#add-review input[type="file"] {
    display: block;
    width: 100%;
    height: 50px;
}

#add-review #stars-existing {
    margin: 0px auto 10px;
    display: block;
    text-align: left;
    padding-top: 15px;
}

#add-review .form-group #captcha {
    height: 46px !important;
}

.formulaire #add-review .form-group .form-control, .formulaire #add-review .form-group input, .formulaire #add-review .form-group textarea {
    background: var(--color0);
    border: 1px solid rgb(204, 204, 204);
    color: var(--color2);
    border-radius: 2px;
}

.modal-content .form-control::placeholder {
    color: var(--color2) !important;
    opacity: 1;
}

#add-review .submit-review {
    float: none;
    display: block;
    background-image: none;
    margin: 15px auto !important;
    padding: 14px 15px !important;
}

#add-review .body-review {
    height: 100px;
}

#add-review .form-group.form-group-1 .col-md-10, #add-review .form-group.form-group-2 .col-md-10, #add-review .form-group.form-group-4 .col-md-10 {
    width: 100%;
}

#add-review .conditions, .modal-content .email-block {
    font-size: 10px;
    font-weight: 400;
    font-style: italic;
    text-align: justify;
    opacity: 0.6;
    display: block;
    clear: both;
    color: var(--color2) !important;
}

.AvisClientsBg {
    position: relative;
    z-index: 8000;
    background: var(--color3);
    text-align: center;
    padding: 11vh 10% 4vh;
}

.AvisClientsBg .row.flex {
    display: flex;
    align-items: center;
    width: 100%;
    flex-wrap: nowrap;
    justify-content: space-evenly;
}

.row.flex {
}

.AvisClientsBg .row.flex .text-right {
    float: right;
    width: 33%;
    position: relative;
}

.AvisClientsBg .bloctext {
    margin: 0px;
    width: 77%;
}

.AvisClientsBg .bx-wrapper {
    background: none;
}

.AvisClientsBg .contenu, .realisations .contenu {
    padding: 60px 15px 80px;
}

.news .propor, .realisations .galerie .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
}

.news .propor::after, .realisations .galerie .propor::after {
    padding-top: 78%;
    display: block;
    content: "";
}

.news .propor .propor-cont, .realisations .galerie .propor .propor-cont {
    position: absolute;
    inset: 0px;
}

.news .propor .propor-cont .imagecont, .realisations .galerie .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    transform: translateZ(0px);
}

.news .propor .propor-cont .imagecont .imagefond, .realisations .galerie .propor .propor-cont .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.news .propor .propor-cont .imagecont .masque, .realisations .galerie .propor .propor-cont .imagecont .masque {
    transition: 0.4s;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
    width: 100%;
    height: 100%;
    background: var(--color1) url(../images/ico-zoom.svg) no-repeat center center;
}

.news .propor .propor-cont .imagecont:hover .masque, .realisations .galerie .propor .propor-cont .imagecont:hover .masque {
    opacity: 0.8;
}

.news .propor .propor-cont .imagecont:hover .imagefond, .realisations .galerie .propor .propor-cont .imagecont:hover .imagefond {
    transform: scale(1.15);
}

.inline-block {
    display: inline-block;
    vertical-align: top;
}

.noflicker {
    transform: translateZ(0px);
}

.retrait {
    margin-left: -15px !important;
    margin-right: -15px !important;
}

.transition {
    transition: 400ms;
    transform: translateZ(0px);
}

.cover {
    background-size: cover !important;
}

.contain {
    background-size: contain !important;
}

hr.trait {
    height: 1px;
    margin: -0.5em 0px;
    padding: 0px;
    color: rgb(224, 224, 225);
    background-color: rgb(224, 224, 225);
    border: 0px;
}

.page-contenu img {
    margin: 10px;
}

body {
    color: var(--color0);
    font-family: var(--font2);
    font-size: var(--taille_font);
    background: var(--color3);
    letter-spacing: 0.5px;
}

.bixedBtn {
    position: fixed;
    top: 25%;
    cursor: pointer;
    right: 0px;
    left: initial;
    z-index: 99991;
    width: 120px;
}

.bixedBtn img {
    filter: brightness(0) invert(1);
}

.bixedBtn a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

a, a:link, a:visited {
    color: var(--color0);
    text-decoration: underline;
}

a:hover {
}

a:active {
    outline: 0px;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3 {
    color: var(--color2);
    font-family: var(--font1);
}

.body-catalogue-item .formulaire h2, .pied .formulaire h2, h1, .h1 {
    color: var(--color0);
    text-align: left;
    position: relative;
    font-size: calc(var(--taille_font) * 3 );
    margin-top: 0px;
    margin-bottom: 1vh;
    text-transform: uppercase;
}

.prestation .h1 {
    font-size: 30px;
}

.home-text .h1.sans-image.text-left {
    text-align: left;
}

.body-catalogue-item .formulaire h2::before, h1::before, .h1::before {
    content: "";
    width: 40px;
    height: 40px;
    background: url("../images/title.svg") 0% 0% / contain no-repeat;
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translate(-50%);
}

.home-text .h1.sans-image.text-left::before {
    left: 0px;
    margin: 0px;
    transform: translate(0px);
}

.centerservice {
    margin: 0px 33% !important;
}

section.section-2 {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 5% 10% 4%;
    background-color: var(--light);
}

section.section-2 h1 {
    margin: 0px;
}

.stats {
    display: flex;
    justify-content: center;
    gap: 20px;
    font-size: 20px;
    padding: 0% 0px;
    position: relative;
    align-items: center;
    width: 100%;
}

.stats .item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    justify-content: flex-start;
    width: 25%;
    padding: 20px;
}

.stats .item .chiffre {
    display: flex;
}

.stats .item p {
    position: relative;
    white-space: nowrap;
    color: var(--color2);
    font-size: 18px;
}

.stats .item span {
    color: var(--color2);
    font-size: 40px;
    opacity: 0.5;
}

.h2,h2 {
    font-size: calc(var(--taille_font) * 1.8);
}

.h3,h3 {
    font-size: calc(var(--taille_font) * 1.6);
}

h4 {
    font-size: calc(var(--taille_font) * 1.4)
}

h5 {
    font-size: calc(var(--taille_font) * 1.2)
}

h6 {
    font-size: calc(var(--taille_font) * 1)
}


h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .h1 a, .h2 a, .h3 a, h1 a:link, h2 a:link, h3 a:link, h4 a:link, h5 a:link, h6 a:link, .h1 a:link, .h2 a:link, .h3 a:link, h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited, .h1 a:visited, .h2 a:visited, .h3 a:visited {
    font-size: inherit;
    color: inherit;
    text-decoration: none;
}

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, .h1 a:hover, .h2 a:hover, .h3 a:hover {
    text-decoration: underline;
}

.titre-secondaire {
    position: relative;
    font-size: calc(var(--taille_font) * 1);
    line-height: 1.5;
    padding: 0px;
    margin: 0px 0 10px 0;
    color: var(--color2);
    font-family: var(--font2), sans-serif;
    display: block;
    text-transform: uppercase;
}

.hvr-shutter-out-horizontal {
    display: inline-block;
    vertical-align: middle;
    transform: translateZ(0px);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 1px;
    backface-visibility: hidden;
    position: relative;
    background-color: var(--color2);
    transition-property: color;
    transition-duration: 0.3s;
}

.hvr-shutter-out-horizontal.active {
    background-color: rgb(136, 6, 18);
}

.hvr-shutter-out-horizontal:hover, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:active, a.bouton-principal:hover, .bouton-principal:hover ,.body-page-1 .corps a.bouton-principal:hover {
    color: white;
    background: var(--color1);
    border-color: var(--color1);
}

.hvr-shutter-out-horizontal:hover::before, .hvr-shutter-out-horizontal:focus::before, .hvr-shutter-out-horizontal:active::before {
    top: 0%;
    width: 100%;
    height: 100%;
    right: 3%;
    border-right: 0px;
    opacity: 0;
}

.hvr-shutter-out-horizontal:hover::after, .hvr-shutter-out-horizontal:focus::after, .hvr-shutter-out-horizontal:active::after {
    width: 100%;
    z-index: -2;
}

a.bouton-principal, .bouton-principal {
    text-align: center;
    font-family: var(--font2), sans-serif;
    color: rgb(255, 255, 255);
    text-decoration: none;
    padding: 15px 20px;
    font-size: 16px;
    letter-spacing: 1px;
    transition: 0.3s linear;
    border-radius: var(--radius);
    border: 1px solid rgba(255, 255, 255, 0.36);
    margin: 0px;
    background: transparent;
}

.body-page-1 .corps a.bouton-principal {
    width: auto;
    margin: 14px 0px 0px;
    float: left;
    border: 1px solid;
    display: flex;
}

.hero-slider .slide-inner a.bouton-principal::before {
    display: none;
}

.encart-counter span {
}
a.bouton-principal1 b {
    text-transform: uppercase;
    text-align: center;
    font-size: 124%;
}

.bouton-principal1:hover {
    background: #977041;
}
a.bouton-principal1 {
    border: 1px solid;
    color: var(--color0);
    padding: 1.5vh .7vw;
    text-decoration: none;
    border-radius: var(--radius);
    background: var(--color2);
    position: absolute;
    z-index: 1000;
    top: 40vh;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 6vw;
    text-align: center;
    border: 0px;
}

a.bouton-principal1 img {
    width: auto;
    filter: invert(1);
    height: 6vh;
    margin: 0 0 1vh;
}

section.counter.reveal {
    position: relative;
    width: 100%;
    background: var(--color3) url(../images/ombre.png) no-repeat center bottom;
    overflow: hidden;
    padding-top: 19vh;
    padding-bottom: 19vh;
}

.compteurs {
    display: flex;
    justify-content: space-between;
}

.stats-num.count {
    display: block;
    z-index: 0;
    width: 100%;
    text-align: center;
    margin: 0px;
    font-size: clamp(6rem, 6vw, 4rem);
    position: relative;
    font-family: var(--font1);
    line-height: 1;
    color: rgba(191, 152, 106, 0.46);
    white-space: nowrap;
}

.counter {
}

.count-text {
    color: rgba(255, 255, 255, 0.75);
    position: relative;
    top: 3vh;
    display: flex;
    left: 0px;
    height: 100%;
    text-transform: none;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.encart-counter {
    display: flex;
    place-content: center;
    align-items: center;
    width: 25%;
    position: relative;
    flex-direction: column;
}

.encart-counter::before {
    content: "";
    position: absolute;
    width: 1px;
    top: 2vh;
    height: 100%;
    background: var(--color0);
    right: 0px;
    opacity: 0.3;
}

.encart-counter:last-child::before {
    display: none;
}

.encart-counter span, .encart-counter small {
    margin: 3vh 8% 0px;
    font-size: clamp(2rem, 2vw, 2rem);
    font-family: var(--font1);
}

.count-text {
    width: 100%;
}

.tete {
    position: fixed;
    left: 0px;
    right: 0px;
    z-index: 9999;
    background: transparent;
    padding: 0em 0%;
    display: flex;
    flex-direction: column;
    gap: 0px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    transition: 400ms;
}

.tete.fixed {
    box-shadow: rgba(0, 0, 0, 0.15) 0px 3px 9px;
}

.tete.fixed .fixedBtns {
    display: flex;
}

.tete .logo-site {
    margin: 0px;
}

.tete.fixed .logo-site {
}

.tete .logo-site img {
    width: 155px;
}

.tete.fixed .logo-site img {
    filter: none;
}

.tete .infos {
    background: transparent;
    display: flex;
    align-items: center;
}

.tete .infos .tel {
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    color: rgb(255, 255, 255);
    padding: 0px 20px 0px 30px;
    margin: 0px;
    font-family: var(--font2), sans-serif;
    background: url("../images/ico-tel.png") 0px center no-repeat;
    letter-spacing: 1px;
}

.tete .infos .tel a {
    color: inherit;
    text-decoration: none;
}

.widget-partage {
    display: none;
}

.btn-partage .btnp {
    width: 36px;
    height: 36px;
    border-radius: 36px;
    background-repeat: no-repeat;
    background-position: center center;
    display: flex;
    transition: 400ms;
    align-items: center;
    justify-content: center;
    border: 1px solid white;
}

.btn-partage .btnp i {
    color: white;
}

.btn-partage .btnp:hover {
    transform: rotate(360deg);
}

.btn-partage .btnp.btn-fb {
}

.btn-partage .btnp.btn-twitter {
}

.btn-partage .btnp.btn-google {
    background-image: url("../images/ico-google.png");
}

.btn-partage .btnp.btn-ami {
}

.btn-partage .btnp.btn-fb:hover {
}

.btn-partage .btnp.btn-twitter:hover {
}

.btn-partage .btnp.btn-google:hover {
    background-image: url("../images/ico-google-h.png");
}

.btn-partage .btnp.btn-ami:hover {
}

.sidebar-scroll-right .callTracker {
    width: 100%;
    height: 50px;
}

.callTracker {
    position: relative;
}

.callTracker span, .callTracker a {
    display: inline-block;
    text-align: left;
    min-width: 145px;
    padding: 0px;
    transition: 500ms;
    height: 100%;
    text-decoration: none;
}

.callTracker .t_phone {
    opacity: 0;
    display: none;
}

.callTracker .t_affiche {
    cursor: pointer;
}

.contact .coordonnees address p.tel.tel1.callTracker span {
    font-weight: bold;
    text-decoration: underline;
}

header .callTracker span, header .callTracker a {
    top: 5px;
}

header .callTracker .t_affiche {
    font-size: var(--taille_font);
    text-transform: uppercase;
}

.callTracker.active .t_phone {
    opacity: 1;
    display: inline-block;
}

.callTracker.active .t_affiche {
    opacity: 0;
    display: none;
}

.pied .callTracker a, .coordonnees .callTracker a {
    position: relative;
    left: 0px;
}

.pied .callTracker span.t_affiche {
}

ul li.niveau2, ol li.niveau2 {
    margin-left: 30px;
}

.tete .devis {
    transition: 400ms;
    display: inline-block;
    vertical-align: top;
    background: var(--color2);
    text-decoration: none;
    color: rgb(255, 255, 255);
    padding: 10px 20px;
    border: 1px solid rgba(253, 253, 253, 0.47);
    border-radius: var(--radius);
}

.tete .devis:hover {
    background: var(--color1);
    border-color: var(--color1);
}

.tete .btn-favoris {
    position: relative;
    background: url("../images/ico-favoris.png") center top no-repeat;
    vertical-align: top;
    width: 40px;
    height: 36px;
    margin: 0px 15px 0px 0px;
    display: none;
}

.zone-favoris {
    display: none;
    z-index: 9997;
    background: rgb(255, 255, 255);
    position: fixed;
    inset: 90px 0px 0px;
    padding: 40px 15px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 3px inset;
    text-align: center;
}

.zone-favoris .contenu {
    overflow-y: auto;
    height: 100%;
}

.zone-favoris h2 {
    color: rgb(0, 0, 0);
    font-size: 23px;
    margin: 10px 0px 5px;
}

.zone-favoris .soustitre {
    font-size: 21px;
    color: rgb(109, 109, 109);
    background: url("../images/trait.png") center bottom no-repeat;
    padding: 0px 0px 15px;
    margin: 0px 0px 50px;
}

.zone-favoris .item {
    position: relative;
    padding: 30px 0px 0px;
}

.zone-favoris .item h3 {
    color: var(--color1);
    margin: 20px 0px 5px;
}

.zone-favoris .item .droite {
    text-align: left;
}

.zone-favoris .item .prix {
    font-size: 35px;
}

.zone-favoris .item .prix sup {
    top: -9px;
    font-size: 19px;
}

.zone-favoris .item .retirer {
    background: url("../images/ico-fermer.png") center top no-repeat;
    display: inline-block;
    width: 14px;
    height: 14px;
    position: absolute;
    top: 0px;
    right: 0px;
    overflow: hidden;
    text-indent: 100px;
}

.zone-favoris .btn-fermer {
    color: rgb(0, 0, 0);
    display: inline-block;
    position: absolute;
    top: 15px;
    right: 15px;
    width: 50px;
    height: 50px;
    background: url("../images/ico-croix.png") center top / 100% 100% no-repeat;
}

.zone-favoris .btn-fermer:hover {
    opacity: 0.8;
}

.zone-catalogue {
    display: none;
    z-index: 9999;
    background: rgb(255, 255, 255);
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    height: auto;
    width: 100%;
    padding: 40px 0px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 3px inset;
}

.zone-catalogue .categorie {
    border-bottom: 1px solid rgb(224, 224, 224);
    padding: 35px 0px 0px;
}

.zone-catalogue .categorie:last-child {
    border-bottom: none;
}

.zone-catalogue .categorie .titre-cats {
    text-transform: uppercase;
    margin: 0px auto 20px;
    padding: 0px 0px 0px 25px;
    font-family: var(--font1);
}

.zone-catalogue .categorie .titre-cats a {
    color: inherit;
    text-decoration: none;
}

.zone-catalogue .categorie .titre-cats a:hover {
    text-decoration: underline;
}

.zone-catalogue .categorie .liste-cats {
    color: rgb(0, 0, 0);
    padding: 5px 0px 45px;
    list-style-type: none;
    margin: 0px;
    display: table;
    table-layout: fixed;
    width: 100%;
}

.zone-catalogue .liste-cats .menu-item a {
    display: inline-block;
    line-height: 1;
    text-decoration: none;
}

.zone-catalogue .liste-cats .menu-item a img {
    margin-top: 10px;
}

.zone-catalogue .liste-cats .menu-item a:hover {
    color: var(--color1);
}

.zone-catalogue .categorie .liste-cats li {
    display: table-cell;
    vertical-align: top;
    text-align: center;
}

.zone-catalogue .categorie .liste-cats li a, .zone-catalogue .categorie .liste-cats li a:visited {
    font-size: 20px;
    display: block;
    padding: 0px 0px 110px;
    color: inherit;
    text-decoration: none;
    background-position: center bottom;
    background-repeat: no-repeat;
}

.zone-catalogue .categorie .liste-cats li.active a, .zone-catalogue .categorie .liste-cats li a:hover {
    color: var(--color1);
}

.zone-catalogue .categorie .liste-cats li.active a:hover {
    cursor: default;
    text-decoration: none;
}

.zone-catalogue .btn-fermer {
    color: rgb(0, 0, 0);
    display: inline-block;
    position: absolute;
    top: 15px;
    right: 15px;
    width: 50px;
    height: 50px;
    background: url("../images/ico-croix.png") center top / 100% 100% no-repeat;
}

.zone-catalogue .btn-fermer:hover {
    opacity: 0.8;
}

.masque-noir {
    display: none;
    background: rgba(0, 0, 0, 0.8);
    position: fixed;
    inset: 90px 0px 0px;
    z-index: 9996;
    cursor: pointer;
}

.navh {
    margin: 0px;
    z-index: 8000;
}

.fixedBtns {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    display: none;
    transition: all .3s ease;
}

.fixedBtns a svg.icones {
    width: 3.5rem;
    height: 3.5rem;
}

.navh .menu_principal {
    margin: 0px;
    padding: 0px;
    list-style: outside none;
    display: flex;
    width: 100%;
    gap: 20px;
    justify-content: center;
}

.navh .menu_principal > li {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    padding: 0px;
    list-style: none;
    background: no-repeat;
    filter: none;
}

.navh .menu_principal > li::before {
    display: none;
}

.navh .menu_principal a::after {
    content: "";
    position: absolute;
    width: 0px;
    height: 1px;
    background: var(--color2);
    left: 0px;
    bottom: -10px;
    transition: 0.5s;
}

.fixed .navh .menu_principal a::after {
    background: var(--color2);
}

.navh .menu_principal a:hover::after, .navh .menu_principal li.active > a::after {
    width: 100%;
}

.navh .menu_principal > li:last-child {
    background: none;
}

.navh .menu_principal a, .navh .menu_principal a:visited {
    color: var(--color0);
    display: block;
    font-size: calc(var(--taille_font) * 1.05);
    text-decoration: none;
    transition: 400ms;
    letter-spacing: 1px;
    font-family: var(--font2);
}

.tete.fixed .navh .menu_principal a, .tete.fixed .navh .menu_principal a:visited {
    color: var(--color0);
}

.navh .menu_principal a:hover, .navh .menu_principal li.active > a, .tete.fixed .navh .menu_principal a:hover, .tete.fixed .navh .menu_principal li.active > a {
    color: var(--color2);
}

.navh .menu_principal li.active > a:hover {
    cursor: default;
}

.slogan {
    position: absolute;
    top: -37vh;
    color: rgb(255, 255, 255);
    text-align: center;
    width: 100%;
    margin: 0px 0px 10px;
}

.slogan h1 {
    text-align: center;
}

h1.slogan::before, .h1.slogan::before {
    content: "";
    width: 0px;
    height: 0px;
    background: none;
    position: absolute;
    bottom: inherit;
    left: inherit;
    margin-left: 0px;
    display: none;
}

.slogan .titre {
    font-size: 51px;
    font-family: var(--font1), sans-serif;
    text-transform: uppercase;
    line-height: 51px;
    margin: 0px 0px 10px;
}

.slogan .titre span {
    font-size: 48px;
}

.slogan .sous-titre {
    font-size: 30px;
    font-family: var(--font2), sans-serif;
    line-height: 26px;
}

.body-page-1 .slogan {
    top: -260px;
    text-align: left;
}

.video-accueil {
    position: absolute;
    top: 0px;
    width: 100%;
    height: 100%;
}

.video-accueil video {
    width: 100%;
    height: 100%;
    vertical-align: top;
    position: relative;
    top: 100px;
}

.banniere {
    position: relative;
    width: 100%;
    margin-left: 0px;
    height: 78vh;
    inset: 0px;
    background: url("../images/banner0001.jpg") top/ cover no-repeat !important;
}

.body-page-1 .banniere::before {
    content: none;
}

.banniere::before {
    content: "";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(rgba(0, 0, 0, 0.38), rgba(0, 0, 0, 0.3));
}

.body-page-1 .banniere {
    height: 100%;
    position: fixed;
}

.btn-descendre {
    width: 112px;
    height: 112px;
    background: url("../images/bg-descendre.png") center top no-repeat;
    position: absolute;
    top: -236px;
    left: 50%;
    margin-left: -56px;
    overflow: hidden;
    text-indent: 300px;
    white-space: nowrap;
}

.btn-descendre::before {
    content: "";
    width: 8px;
    height: 8px;
    background: var(--color1);
    border-radius: 8px;
    position: absolute;
    top: 40px;
    left: 53px;
    transition: 400ms;
}

.btn-descendre:hover::before {
    opacity: 0.4;
    top: 50px;
}

.fluid-contenu {
    position: relative;
    z-index: 8000;
    background: var(--colorbg);
    margin-top: 0px !important;
}

.fluid-contenu .corps {
    padding: 4em 10% 5em;
}

.slider-handle {
    background: url("../images/poignee.png") center top no-repeat;
    filter: grayscale(1);
}

.bx-wrapper .bx-loading {
    background: url("../images/bx_loader.gif") center center no-repeat rgb(255, 255, 255);
}

.bx-wrapper .bx-pager.bx-default-pager a {
    background-image: url("../images/miette.png");
}

.bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active, .bx-wrapper .bx-pager.bx-default-pager a:focus {
    background-image: url("../images/miette-h.png");
}

.bx-wrapper .bx-prev {
    background: url("../images/controls.png") 0px -32px no-repeat;
    filter: brightness(0) invert(1);
}

.bx-wrapper .bx-next {
    background: url("../images/controls.png") -43px -32px no-repeat;
    filter: brightness(0) invert(1);
}

.bx-wrapper .bx-controls-direction a {
    top: 48%;
}

.bx-wrapper .bx-controls-auto .bx-start {
    background: url("../images/controls.png") -86px -11px no-repeat;
}

.bx-wrapper .bx-controls-auto .bx-stop {
    background: url("../images/controls.png") -86px -44px no-repeat;
}

.services-container.services-flex {
    display: grid;
    gap: 10px;
    grid-template-rows: [row] auto [row] auto [row];
    width: 100%;
}

.services-container.services-flex .service-item {
    height: 22vw;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.nos-service.nbr-services- .text-center {
    position: relative;
    float: left;
    width: 100%;
    margin: 4vh 0px 0px;
}

.services-container.services-flex .service-item::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, black, transparent);
    z-index: 1;
    opacity: 0.8;
}

.services-container.services-flex .service-item .service-desc {
    position: absolute;
    bottom: 0px;
    width: 100%;
    text-align: left;
    padding: 2vw;
    text-shadow: black 0px 0px 9px;
    z-index: 9;
}

.services-container.services-flex .service-item .service-desc a {
    color: var(--color0);
    text-decoration: none;
    font-size: 0.7vw;
    text-transform: uppercase;
    letter-spacing: 0.1vw;
}

.services-container.services-flex .service-item .service-desc a:hover {
    letter-spacing: 0px;
}

.services-container.services-flex .service-item img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.services-container.services-flex .service-item * {
    transition: 0.4s ease-in-out;
}

.services-container.services-flex .service-item .service-desc h2 {
    color: white;
    font-size: 1.2vw;
}

.service-cont {
    height: 100%;
}

.services-container.services-flex .service-item:hover img {
    transform: scale(1.1);
    filter: brightness(0.8);
}

.services-container.services-flex .service-item.service-1 {
    grid-area: 1 / 1 / auto / 4;
}

.services-container.services-flex .service-item.service-2 {
    grid-area: 1 / 4 / auto / 7;
}

.services-container.services-flex .service-item.service-3 {
    grid-area: 2 / 5 / auto / 7;
}

.services-container.services-flex .service-item.service-4 {
    grid-area: 2 / 1 / auto / 3;
}

.services-container.services-flex .service-item.service-5 {
    grid-area: 2 / 3 / auto / 5;
}

.nos-service {
    background: var(--colorbg);
    position: relative;
    padding: 3vh 11% 13vh;
}

.r-img {
    width: 30%;
}

.r-img img {
    height: 100%;
}

.r-text {
    width: 70%;
}

.r-flex {
    display: flex;
}

.chiffres {
    position: relative;
    padding: 2vw 2% 3vw;
}

.chiffres::before {
    position: absolute;
    height: 600px;
    width: 600px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    bottom: -200px;
    z-index: 0;
    backdrop-filter: blur(5px);
}

.chiffres-items {
    display: flex;
    flex-flow: wrap;
    gap: 20px;
    justify-content: space-evenly;
    padding-top: 40px;
}

.chiffres-item {
    width: 47%;
    padding: 40px 11px;
    text-align: center;
    border: 1px solid rgba(165, 124, 39, 0.42);
}

.chiffres-item .chiffre-num, .chiffres-item span {
    font-size: 40px;
    font-weight: bold;
    color: var(--color2);
}

.chiffre-title {
    font-weight: lighter;
    color: white;
    font-family: var(--font2);
}

.atout-item__text {
    color: rgb(219, 211, 211);
    font-size: 15px;
    margin-top: 20px;
}

.atout {
    position: relative;
    padding: 17vh 10% 10vh;
    background: var(--color3) url(../images/ombre.png) no-repeat center bottom;
    overflow: hidden;
}

.atout.confiance h2 {
    text-align: center;
}

.atout.confiance {
    padding: 8vh 10% 9vh;
    background: #1c1616;
}

.confianceBoxes {
    /* display: flex; */
    /* gap: 15px; */
    /* justify-content: space-between; */
    margin-top: 70px;
}

.confianceBox {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.confiance-item_icon {
    height: 80px;
    width: 100%;
}

.confianceBox img {
    height: 150px;
    width: 200px;
    object-fit: contain;
}

.confianceBox:first-child img {
    /* width: 300px; */
}

.confianceBox:last-child img {
    /* width: 240px; */
}

.atout.confiance:before {
    display: none;
}

.atout h2.h1 {
    color: white;
}

.Atout-AT {
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.Atout-AT .swiper {
    overflow: hidden;
    position: relative;
    padding: 3% 0px 0px;
    height: 100%;
}

.atout-item-AT {
    filter: drop-shadow(rgba(0, 0, 0, 0.06) 0px 10px 40px);
    border: 1px solid rgba(255, 255, 255, 0);
    padding: 13px;
    height: 250px;
    transition: 0.4s ease-in-out;
    border-radius: var(--border-radius);
}

.atout-item_bg {
    position: absolute;
    inset: 0px;
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: 0.4s ease-in-out;
    z-index: -2;
    border-color: white;
}

.atout-item_icon {
    margin-top: -51px;
    margin-left: auto;
    margin-right: auto;
    transition: 0.4s ease-in-out;
    width: 90px;
    height: 90px;
    border-radius: 500px;
    display: flex;
    align-items: center;
    filter: grayscale(1);
    justify-content: center;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 20px;
}

.atout-item_icon img {
    width: 53px;
    object-fit: contain;
    height: auto;
}

.atout-item__title {
    text-align: center;
    font-family: var(--font1);
    color: var(--color2);
}

.atout-item__content {
    text-align: center;
    margin-top: 15px;
}

.atout-item-AT:hover {
}

.atout-item-AT:hover .atout-item_bg {
}

.atout-item_bg::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0;
    z-index: -1;
    transition: 0.4s ease-in-out;
}

.atout-item-AT:hover .atout-item_bg::before {
}

.atout-item-AT:hover h2 {
    color: var(--color0);
}

.atout-item-AT:hover p {
    color: rgb(221, 221, 221);
}

.atout-item-AT:hover .atout-item_icon {
    transform: scale(0.8);
}

.atout-item-AT:hover .atout-item_icon img {
    filter: brightness(0) invert(1);
}

.atout-item-AT .atout-item_icon img {
    filter: invert(85%) sepia(64%) saturate(66%) hue-rotate(6deg) brightness(108%) contrast(102%);
}

img.img-front {
}

.atout-item-AT:hover img.img-front {
    display: block;
}

.atout-item-AT:hover .atout-item_icon {
    background: var(--color2);
    filter: initial;
}

.atout::before, .intervention::before {
    content: "";
    border-bottom: 1px solid rgba(191, 152, 106, 0.36);
    width: 78%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 11%;
    right: 11%;
}

.body-gallery-4 .fluid-contenu .corps, .body-contact .fluid-contenu .corps {
    padding: 80px 0px 0px;
}

.body-contact.body-contact-132 .fluid-contenu .corps {
    padding: 0px;
}

.body-service-list .fluid-contenu .corps {
}

.base-container {
    flex-direction: column;
    flex: 1 1 0%;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    position: relative;
    overflow: hidden;
    padding: 8% 10% 5%;
    gap: 40px;
}

.nosServicesBg .section-line {
    width: 4px;
    height: 100px;
    background-color: var(--color1);
    position: absolute;
    inset: 0px auto auto 0px;
    margin-top: 140px;
    margin-left: 120px;
}

.services-block-wrap {
    width: 100%;
    display: flex;
    position: relative;
    z-index: 2;
    gap: 40px;
    flex-direction: column;
}

.description-services {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.description-services::before {
    width: 30px;
    height: 40px;
    background-color: var(--color1);
    position: absolute;
    left: 0px;
}

.description-services .h1 {
    margin-bottom: 20px;
    text-align: left;
}

.description-services .h1 .titre-secondaire {
    text-align: left;
}

.description-services .h1::before {
    left: 0px;
    transform: translate(0px, 0px);
    margin: 0px;
}

.description-services .paragraph-with-margin {
    margin: 15px 0px 25px;
    font-size: 18px;
}

.description-services .secondary-button.black-text.w-button {
    color: var(--color1);
    letter-spacing: 1px;
    background-color: var(--color0);
    border: 1px solid var(--color1);
    padding: 10px 20px;
    font-family: var(--font_family_1);
    font-weight: 400;
    line-height: 1.5em;
    transition: 0.3s;
    text-decoration: none;
}

.description-services .secondary-button.black-text.w-button:hover {
    background: var(--color1);
    color: var(--color0);
    text-decoration: none;
}

.card-wrapper {
    flex-direction: row;
    width: 100%;
    position: relative;
}

.card-wrapper .services-list {
    overflow: hidden;
    padding: 0px 0px 8em;
}

.service-content {
    column-gap: 30px;
    display: flex;
    width: 100%;
    position: relative;
}

.service-content:hover .service-description {
    transform: translate(-50%, -5%);
}

.service-image {
    width: 100%;
    height: 500px;
    max-width: 100%;
    flex: 0 0 auto;
    overflow: hidden;
    background: transparent;
    align-items: center;
    border-radius: var(--radius);
}

.service-image img {
    height: 100%;
    transition: 0.3s;
    width: 100%;
    object-fit: cover;
    border-radius: var(--radius);
}

.service-content:hover .service-image img {
    transform: scale(1.2);
}

a.link-cms {
    color: var(--color2);
    font-size: 18px;
    transition: 0.3s;
    text-align: center;
    letter-spacing: 1px;
    font-family: var(--font_family_2);
    line-height: 1.5;
    text-decoration: none !important;
}

p.paragraph-with-margin {
    margin-top: 20px;
    margin-bottom: 50px;
    overflow: hidden;
    height: 112px;
    line-height: 1.4;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
}

.service-description {
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px;
    display: flex;
    position: absolute;
    height: auto;
    align-items: center;
    width: 90%;
    background: var(--color0);
    text-align: center;
    gap: 10px;
    transition: 0.3s linear;
    overflow: hidden;
    border-radius: var(--radius);
    left: 50%;
    transform: translate(-50%);
    bottom: -5%;
    box-shadow: rgba(0, 0, 0, 0.17) 10px 10px 50px;
}

.service-description .link-with-line {
    position: relative;
    transition: 0.3s linear;
}

.service-description:hover .link-with-line {
    position: relative;
    opacity: 1;
    left: 0px;
}

.link-collection {
    color: var(--color0);
    text-transform: uppercase;
    margin-bottom: 10px;
    font-family: var(--font_family_1);
    font-size: 16px;
    display: inline-block;
    transition: 0.3s;
    text-decoration: none !important;
}

a.link-collection {
    color: var(--color1);
    text-transform: initial;
    letter-spacing: 1px;
    font-family: var(--font2);
    padding: 0px;
}

a.link-collection:hover {
    opacity: 1;
    letter-spacing: 2px;
}

.red-line {
    width: 0px;
    height: 1px;
    background-color: var(--color1);
    position: absolute;
    inset: auto auto 0px 0%;
    transition: 0.3s;
}

.service-content:hover .service-description .link-with-line .red-line {
    width: 100%;
    display: none;
}

.swiper-button-next-serv, .swiper-button-prev-serv {
    background: var(--color2);
    margin: 0px 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 40px;
    height: 40px;
    font-size: 13px;
    transition: 0.3s linear;
    color: var(--color0);
    border-radius: 50%;
}

.swiper-button-next-serv:hover, .swiper-button-prev-serv:hover {
    background: var(--color1);
    color: var(--color0);
}

.swiper-buttons {
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
}

.swiper-buttons {
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
}

.fluid-app {
    height: 700px;
    border-bottom: 1px solid rgb(255, 255, 255);
    background-color: rgb(12, 12, 12);
    background-image: url("../images/bg-app-homme.png"), url("../images/bg-app.jpg");
    background-repeat: no-repeat, repeat;
    background-position: 50% 0px, 50% 0px;
    padding: 10px 0px 0px;
    z-index: 8000;
    position: relative;
}

.fluid-app h2 {
    text-align: center;
    font-size: 31px;
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    margin: 20px 0px 5px;
}

.fluid-app .soustitre {
    text-align: center;
    color: var(--color1);
    font-size: 22px;
    line-height: 22px;
}

.fluid-app .liste-app {
    list-style-type: none;
    list-style-image: none;
    padding: 0px 0px 0px 40px;
    margin: 90px 0px 0px;
}

.fluid-app .liste-app li {
    background: url("../images/ico-puce.png") 0px center no-repeat;
    padding: 7px 0px 8px 25px;
    font-size: 18px;
    color: rgb(118, 119, 121);
}

.fluid-app .qrcode {
    text-align: center;
    text-transform: uppercase;
    margin: 160px 0px 0px;
    position: relative;
    color: rgb(255, 255, 255);
    font-size: 20px;
    letter-spacing: 2px;
}

.fluid-app .qrcode .fleche {
    width: 118px;
    height: 96px;
    background: url("../images/fleche.png") center top no-repeat;
    position: absolute;
    top: -80px;
    left: 45px;
}

.fluid-app .liste-boutiques {
    list-style-type: none;
    list-style-image: none;
    padding: 40px 0px 0px;
    margin: 0px;
    text-align: center;
}

.fluid-app .liste-boutiques li {
    display: inline-block;
    vertical-align: top;
    padding: 0px;
    background: none;
    border: 1px solid rgba(255, 255, 255, 0.27);
    border-radius: 8px;
}

.fluid-app .apps {
    position: absolute;
    top: 160px;
    right: -340px;
    width: 600px;
    height: 500px;
}

.fluid-app .apps::before {
    width: 733px;
    height: 63px;
    content: "";
    background: url("../images/ombre-app.png") center top no-repeat;
    z-index: -1;
    position: absolute;
    bottom: 0px;
    right: 160px;
}

.fluid-app .apps .app {
    position: absolute;
}

.fluid-app .apps .app.app1 {
    bottom: 0px;
    left: 0px;
    width: 389px;
    height: 429px;
    background: url("../images/app1.png") center top no-repeat;
}

.fluid-app .apps .app.app2 {
    bottom: 60px;
    left: 0px;
    width: 414px;
    height: 447px;
    background: url("../images/app2.png") center top no-repeat;
}

.fluid-app .apps .app.app3 {
    bottom: 120px;
    left: 0px;
    width: 456px;
    height: 477px;
    background: url("../images/app3.png") center top no-repeat;
}

.fluid-consultation {
    z-index: 8000;
    position: relative;
    padding: 120px 0px 0px;
    text-align: center;
    background: url("../images/bg-consultation.jpg") center top / cover no-repeat;
    height: 540px;
}

.fluid-consultation h3 {
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    font-size: 70px;
    text-shadow: rgba(0, 0, 0, 0.3) 0px 4px 0px;
    margin-bottom: 60px;
}

.fluid-consultation .bouton-principal {
    padding: 20px 100px 20px 30px;
}

.fluid-consultation a.bouton-principal::after {
    background: url("../images/ico-lien.png") center top no-repeat;
    width: 31px;
    height: 31px;
    right: 35px;
}

.recup-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
}

.propor.pic-1 img {
    object-position: center bottom;
}

.images-f {
    width: 100%;
    height: 100%;
}

.recup-photos .propor::after {
    display: block;
    content: "";
}

.recup-photos .propor .propor-cont {
    inset: 0px;
    height: 100%;
}

.recup-photos .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    transform: translateZ(0px);
}

.recup-photos .propor .propor-cont .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.recup-photos .propor .propor-cont .imagecont:hover .masque {
    opacity: 0.8;
}

.recup-photos .propor .propor-cont .imagecont:hover .imagefond {
    transform: scale(1.15);
}

.certifs {
    width: 100%;
    position: relative;
    z-index: 8000;
    padding: 5em 10% 5em;
    background-size: cover;
}

.certifs .cell.gauche {
    display: block;
}

.certifs .cell.gauche .contenu {padding-top: 20px;}

.certifs .cell.gauche .contenu ul {
    column-count: 2;
}

.certifs .cell.droite {
    position: relative;
    display: block;
    padding: 12px 0px;
    width: 100%;
    margin: auto;
    overflow: hidden;
}

.swiper-cont {
    display: flex;
    flex-direction: row;
    gap: 20px;
    justify-content: space-evenly;
}

.swiper-cont .swiper-slide {
    width: 16%;
    background: rgb(255, 255, 255);
}

.certifs .logo-certifs {
    position: relative;
    padding: 30px 13% 20px;
}

.certifs .swiper-slide {
    text-align: center;
    background: var(--color0);
}

.certifs .swiper-slide .img-swiper {
    position: relative;
    display: inline-block;
    border-radius: var(--border-radius);
    background-position: center center;
    background-repeat: no-repeat;
    height: 100px;
    background-size: 80%;
    width: 100%;
}

.certifs .swiper-slide img {
    width: 100%;
    height: auto;
    position: relative;
    display: block;
}

.certifs .swiper-button-next i, .certifs .swiper-button-prev i {
    font-size: 23px;
    color: var(--color0);
}

.swiper-button-next:hover, .swiper-button-prev:hover {
    opacity: 1;
    background: var(--color3);
    border-color: var(--color3);
}

.swiper-button-next:hover i, .swiper-button-prev:hover i {
    color: var(--color0);
}

.certifs .logo-certifs .row-certifs {
    position: relative;
    display: table;
    width: 100%;
}

.certifs .logo-certifs .row-certifs .certif-inline {
    position: relative;
    display: table-cell;
}

.certifs .logo-certifs .row-certifs .certif-inline > div {
    position: relative;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 60%;
    text-align: center;
}

.certifs .logo-certifs .row-certifs .certif-inline > div img {
    position: relative;
    overflow: hidden;
}

.swiper {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
}

.swiper-wrapper {
    display: flex;
}

.swiper-slide {
    text-align: center;
    font-size: var(--taille_font);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 30px;
}

.swiper-slide i {
    color: var(--color0);
    font-size: 17px;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* filter: brightness(0) invert(1); */
}

.atout-item_icon img {
    width: 50px;
    height: 50px;
    display: unset;
    filter: brightness(0) invert(1);
    object-fit: unset;
}

.swiper-button-next {
}

.swiper-button-prev {
}

.swiper-button-prev, .swiper-button-next {
    color: rgb(65, 78, 71);
}

.miettes {
    list-style-type: none;
    list-style-image: none;
    padding: 0px;
    margin: 0px;
    position: absolute;
    bottom: 20px;
    left: 0px;
    right: 0px;
    text-align: center;
}

.miettes li {
    display: inline-block;
    vertical-align: top;
    background: none;
    padding: 0px;
}

.miettes li a {
    width: 12px;
    height: 12px;
    border-radius: 12px;
    background: rgb(237, 2, 2);
    display: inline-block;
}

.miettes li a.active {
    background: rgb(0, 0, 0);
    cursor: default;
}

.realisations {
    position: relative;
    z-index: 8000;
    background: var(--colorbg);
    text-align: center;
    padding: 3vw 6%;
}

.realisations .contenu {
    padding: 0px;
}

.realisations .galerie .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
}

.realisations .galerie .propor::after {
    padding-top: 78%;
    display: block;
    content: "";
}

.realisations .galerie .propor .propor-cont {
    position: absolute;
    inset: 0px;
}

.realisations .galerie .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    transform: translateZ(0px);
}

.realisations .galerie .propor .propor-cont .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.realisations .galerie .propor .propor-cont .imagecont .masque {
    transition: 400ms;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
    width: 100%;
    height: 100%;
    background: url("../images/ico-zoom.png") center center no-repeat rgba(163, 14, 25, 0.7);
}

.realisations .galerie .propor .propor-cont .imagecont:hover .masque {
    opacity: 0.8;
}

.realisations .galerie .propor .propor-cont .imagecont:hover .imagefond {
    transform: scale(1.15);
}

.body-page-1 .realisations::before {
    position: absolute;
    background-image: url("../images/shape1.svg");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 780px;
    height: 620px;
    right: -150px;
    top: 40px;
}

.realisations .row.recup-photos.gallery {
    display: grid;
    grid-template: "item1 item3 item3" 240px "item1 item4 item4" 155px "item2 item4 item4" 240px / 2fr 1fr 1fr;
    gap: 2rem;
    margin: 0px auto;
}

.realisations .row.recup-photos.gallery .col-md-3:first-child {
    grid-area: item1;
}

.realisations .row.recup-photos.gallery .col-md-3:last-child, .realisations .row.recup-photos.gallery .col-md-3:nth-child(5) {
    grid-area: item5;
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(2) {
    grid-area: item2;
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(3) {
    grid-area: item3;
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(4) {
    grid-area: item4;
}

.realisations .row.recup-photos.gallery .col-md-3:nth-child(6) {
    grid-area: item6;
}

.realisations .recup-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
    height: 100%;
}

.realisations .row.recup-photos.gallery .col-md-3 {
    width: 100%;
    margin: 0px;
    padding: 0px;
}

.description-flex {
    display: flex;
    gap: 2%;
    margin: 0px 0% !important;
}

.description-flex h2 {
    margin: 0px 0px 4vh;
}

section.counter.reveal::before {
    content: "";
    border-bottom: 1px solid rgba(191, 152, 106, 0.36);
    width: 78%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 11%;
    right: 11%;
}

.intervention {
    position: relative;
    z-index: 8000;
    background: var(--color3) url(../images/ombre.png) no-repeat center bottom;
    padding: 15vh  10%;
}

.intervention .contenu {
}

.intervention h2 {
}

.intervention .zone {
}

.intervention .description {
    width: auto;
    color: var(--color0);
    text-align: left;
    line-height: 1.7;
}

.intervention ul {
    margin: 1vh 2%;
    list-style-type: disclosure-closed;
}

.intervention ul li {
    padding: 5px 0px 5px 8px;
}

.modal {
    z-index: 99999;
}

.modal-backdrop {
    z-index: 99998;
}

.modal-content .btn-inline {
    display: inline-block;
    background: rgb(255, 255, 255);
    border: 1px solid rgb(0, 0, 0);
    text-transform: uppercase;
    color: rgb(0, 0, 0);
    border-radius: 0px;
    font-size: 17px;
    text-decoration: none;
    transition: 400ms;
}

.modal-content .btn-inline:hover {
    color: rgb(255, 255, 255);
    background: rgb(0, 0, 0);
}

.pied {
    position: relative;
    z-index: 8000;
    background-image: url("../images/footer.jpg");
    background-repeat: no-repeat;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    background-size: cover;
    background-position: left center !important;
}

.pied::before {
    content: "";
    position: absolute;
    inset: 0px;
    background: black;
    opacity: 0.5;
}

.pied .bande1 {
    padding: 2em 11% 3em;
    background: rgba(27, 22, 22, 0.81);
}

.pied .bande1 .row1 {
    padding: 0px 0px 50px;
    margin-bottom: 30px;
}

.pied .bande1-2 {
    background: rgb(12, 12, 12);
    padding: 30px 10% 20px;
}

.pied .bande2 {
    padding: 1px 10%;
    background: var(--colorbg);
}

.pied h2 {
    font-size: 24px;
}

.pied h3 {
    color: var(--color1);
    font-size: 16px;
    text-transform: uppercase;
    background: url("../images/bg-titre2.png") 0px bottom no-repeat;
    padding: 0px 0px 20px;
}

.pied .navf .menu_footer {
    color: var(--color2);
    padding: 5px 0px 15px;
    list-style-type: none;
    margin: 0px;
}

.pied .navf .menu_footer li {
    display: block;
    padding: 0px 0px 8px;
    background: none;
    position: relative;
}

.pied .navf .menu_footer li:last-child {
    border: none;
}

.pied .navf .menu_footer li a, .pied .navf .menu_footer li a:visited {
    padding: 0px;
    text-decoration: none;
    filter: none;
    color: var(--color0);
}

ul li::before {
    display: inline-block;
    position: absolute;
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    left: -6px;
    top: 9px;
    width: 9px;
    height: 16px;
}

.pied .navf .menu_footer li.active a:hover, .pied .navf .menu_footer li a:hover {
    cursor: default;
    text-decoration: underline;
    color: var(--color0);
}

.pied .menu_referencement {
    color: var(--color2);
    list-style-image: none;
    list-style-type: none;
    margin: 0px;
    text-align: justify;
}

.pied .menu_referencement li {
    display: inline;
    padding: 0px;
    background: none;
    line-height: 1.7;
}

.pied .menu_referencement li::before {
    display: none;
}

.pied .menu_referencement li::after {
    content: " - ";
}

.pied .menu_referencement li:last-child::after {
    content: "";
}

.pied .menu_referencement li a, .pied .menu_referencement li a:visited {
    color: inherit;
    font-size: 16px;
    text-decoration: none;
}

.pied .menu_referencement li a:hover {
    color: var(--color1);
}

.pied .menu_referencement li.active a:hover {
    cursor: default;
    text-decoration: none;
}

.pied address {
    margin: 0px;
    padding: 5px 0px 0px;
    color: var(--color0);
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.pied address p {
    background-repeat: no-repeat;
    margin: 0px;
    background-position: 0px 0px;
}

.pied address p.tel.tel1 {
    font-weight: 100;
}

.pied address i {
    margin: 0px 10px 0px 0px;
    color: var(--color0);
}

.pied address p.tel.tel2 {
}

.pied address p.tel a {
    color: inherit;
    text-decoration: none;
}

.pied address p a {
    text-decoration: none;
    color: inherit;
}

.pied address p a:hover {
    text-decoration: underline;
}

.pied .scrollbars {
    margin: 15px 0px 0px;
    height: 34vh;
}

.pied .horaires {
    padding: 10px 0px 0px;
    margin: 0px;
    color: var(--color2) !important;
}

.pied .copyright-footer {
    margin: 5px 0px 0px;
    text-align: left;
}

#logoFD svg * {
    fill: var(--color0);
}

#logoFD svg {
    width: 190px;
}

.pied .btn-like {
    padding: 20px 0px 0px;
}

.pied .btn-partage {
    text-align: right;
    padding: 15px 0px 0px;
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}

.pied .bande1-2 p {
    padding-right: 20px;
}

.scrollbars {
    width: 100%;
    height: 51vh;
}

.page-contenu.page-contenu-home.clear.scrollbars {
    height: 400px;
}

.scrollbar-path-vertical, .scrollbar-path-horizontal {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.15);
    z-index: 100;
}

.scrollbar-path-horizontal {
    bottom: 5px;
    left: 0px;
    width: 100%;
    height: 5px;
}

.scrollbar-path-vertical {
    right: 5px;
    top: 0px;
    height: 100%;
    width: 2px;
}

.scrollbar-path-vertical {
}

.scrollbar-path-horizontal {
}

.scrollbar-handle {
    position: relative;
    top: 0px;
    left: 0px;
    background-color: var(--color2);
}

.scrollbar-path-vertical .scrollbar-handle {
    height: 20%;
    width: 100%;
}

.scrollbar-path-horizontal .scrollbar-handle {
    width: 20%;
    height: 100%;
}

.scrollbar-path-vertical, .scrollbar-path-horizontal, .scrollbar-handle {
    border-radius: 5px;
}

.scrollbar-content {
    padding: 0px 30px 0px 0px;
    float: none !important;
}

.prestation {
    width: 100%;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0.5rem 1.5rem;
    background: var(--color0);
    margin: 0px 0px 3rem;
}

.item-news.prestation .bloc-photo {
    position: relative;
    height: auto;
}

.item-news.prestation .bloc-photo.photo-empty, .item-news.prestation .photo {
    height: 40.5rem;
}

.item-news.prestation .contenu {
    background: var(--color3);
    padding: 5rem 4rem 2rem;
    position: relative;
    min-height: 17rem;
    border-width: 0px 1px 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-left-style: solid;
    border-right-color: rgba(255, 255, 255, 0.13);
    border-bottom-color: rgba(255, 255, 255, 0.13);
    border-left-color: rgba(255, 255, 255, 0.13);
    border-image: initial;
    border-top-style: initial;
    border-top-color: initial;
}

.item-news.prestation .contenu .text-liste-serive {
    min-height: 6.6rem;
    height: 6.6rem;
    overflow: hidden;
}

.item-news.prestation .contenu .lire-suite {
    padding: 1rem 0px 0px;
    text-align: center;
}

.item-news.prestation .bloc-titre {
    display: table;
    width: 100%;
    text-align: center;
    position: absolute;
    z-index: 11;
    left: 0px;
    bottom: -2.5rem;
}

.item-news.prestation .bloc-photo.sans-photo .bloc-titre {
    position: relative;
}

.item-news.prestation .bloc-titre .titre-news {
    display: block;
    margin: 0px auto;
    background: var(--color3);
    padding: 1.5rem 3.5rem 0;
    /* font-size: 1.8rem; */
    color: var(--color1);
}

.item-news.prestation .bloc-titre .titre-news span {
    text-transform: initial;
    color: white;
}

.item-news.prestation .miettes {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.centerservice {
    margin: 0px 33% !important;
}

.btn-service {
    text-align: center;
    margin: 1rem 0px;
}

.btn-service a.btn-show-more {
    display: inline-block;
    padding: 1.5rem 2.5rem 1.5rem 2rem;
}

.body-news-list .item-news {
    margin-bottom: 3rem;
}

.body-news-list .item-news:last-child {
    margin-bottom: 0px;
}

.body-news-list .btn-partage {
    margin: -1rem 0px 0px;
}

.header-news {
    text-align: center;
    margin: 0px 0px 8rem;
    display: table-cell;
    vertical-align: middle;
}

a.return-to-news {
    display: inline-block;
    color: var(--color2);
    font-size: var(--taille_font);
    padding: 2vh 1vw;
    font-family: var(--font_family_3);
    text-decoration: none;
}

a.return-to-news:hover {
    background-position: left 0.5rem center;
    color: var(--color0);
}

.header-news h1 {
    text-transform: uppercase;
    margin: 1.5rem 0px;
}

.header-news .date-poste {
    font-size: 2.4rem;
    opacity: 0.7;
    font-family: var(--font_family_1);
}

.news .item-news {
    width: 80%;
    margin: -13.5rem auto 0px;
}

.news .item-news .photo {
    height: clamp(30rem, 40vw, 45rem);
}

.news .item-news .contenu {
    padding: 4vw;
    color: var(--color2);
    text-align: justify;
}

.news .item-news .btn-partage {
}

.news .item-news .btn-partage .btnp {
    position: relative;
    top: -0.3rem;
}

.zone-titre-header {
    height: 35rem;
    width: 100%;
    display: table;
    position: relative;
}

.btn-avis {
    border: 0px;
    background: var(--color1);
    padding: 1.2rem 2.5rem;
    color: var(--color0);
    font-family: var(--font_family_3);
    text-align: center;
    text-transform: uppercase;
}

.btn-avis:hover {
    background: var(--color2);
}

.body-contact .corps h2 {
    color: var(--color2);
    text-transform: none;
    position: relative;
    margin-bottom: 40px;
}

.body-contact .corps h2::before {
    content: "";
    width: 50px;
    height: 2px;
    background: var(--color2);
    position: absolute;
    top: 45px;
    left: 0px;
}

.body-contact .tab-formulaire .cell.droite h2 {
    text-align: center;
    font-size: 34px;
    margin: 45px;
}

.body-contact .tab-formulaire .cell.droite h2::before {
    content: "";
    width: 50px;
    height: 3px;
    background: var(--color2);
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -37px;
    display: none;
}

.contact .tab-coordonnes {
    display: table;
    width: 100%;
    position: relative;
    z-index: 8000;
    padding: 8vh 11%;
}

.contact .tab-coordonnes .cell {
}

.contact .tab-coordonnes .cell.gauche {
    display: table-cell;
    vertical-align: top;
    width: 50%;
}

.contact .tab-coordonnes .cell.gauche .contenu {
    padding: 5% 0px 5% 0%;
}

.contact .tab-coordonnes .cell.centre {
    display: table-cell;
    vertical-align: top;
    width: 50%;
}

.contact .tab-formulaire {
    display: table;
    width: 100%;
    position: relative;
    z-index: 8000;
}

.contact .tab-formulaire .cell.gauche {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    background: url("../images/atout-bg1.jpg") center bottom no-repeat rgb(0, 0, 0);
}

.pageDevis .tab-formulaire .cell.gauche {
    background: url("../images/atout-bg1.jpg") center top no-repeat;
}

.contact .tab-formulaire .cell.droite {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    border-bottom: 1px solid rgba(230, 230, 230, 0.24);
}

.contact .tab-formulaire .cell.droite .contenu {
    padding: 90px 12%;
}

.contact .plan {
    font-size: 0px;
}

.contact .plan .block #googlemapapi, .contact .plan iframe {
    width: 100% !important;
    height: 590px !important;
}

.contact .coordonnees {
    /* padding: 0px 0px 20px; */
}

.contact .coordonnees h2 {
    margin-top: 20px;
}

.contact .coordonnees address p {
    padding: 0px 0px 10px;
    background-position: 0px 0px;
    background-repeat: no-repeat;
    position: relative;
    margin: 0px;
}

.contact .coordonnees i {
    margin: 10px 10px 0px 0px;
    color: var(--color2);
}

.contact .coordonnees address p.tel.tel1 {
    margin: 0px;
}

.contact .coordonnees address p.tel a {
    color: inherit;
    text-decoration: none;
}

.contact .coordonnees address p span.intitule {
    color: var(--color2);
    font-family: var(--font1);
}

.contact .coordonnees address p a {
    text-decoration: none;
    color: inherit;
}

.contact .coordonnees address p a:hover {
    text-decoration: underline;
}

.contact .formulaire .form-group .checkbox.label-rgpd {
    padding: 6px 0px 8px;
    text-align: justify;
    color: var(--color0);
}

.form-group .label-rgpd strong, .info-rgpd strong, .info-rgpd a, .info-rgpd a:visited {
    color: rgb(193, 23, 24);
}

.contact .formulaire .form-group .col-md-12 {
    padding: 0px;
}

.contact .description-contact {
    padding: 0px 0px 10px;
}

.contact .formulaire .form-group label.col-md-4 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.contact .formulaire .form-group div.col-md-8 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.contact .formulaire .form-group .col-md-4 {
    display: none;
}

.contact .formulaire .form-group .col-md-8 {
    width: 100% !important;
}

.contact .formulaire .control-label {
    text-align: left !important;
    font-weight: normal;
}

.contact .formulaire .form-group {
    margin-bottom: 8px;
    padding: 0px !important;
    margin-left: 0px !important;
    margin-right: 0px !important;
}

.form-group.index_7 {
    display: flex;
    width: 100%;
    flex-direction: row;
}

.form-group.index_7 .col-md-8 {
    display: flex;
    justify-content: start;
    align-items: center;
    left: 20px;
    gap: 50px;
}.contact .formulaire .form-group input[type=radio] {
    width: auto !important;
    /* top: 50%; */
    /* transform: translateY(-50%); */
    padding: 0 10px;
    display: block;
    left: 0;
}

.contact .formulaire .form-group .col-md-9 {
    width: 100% !important;
    padding: 0;
}

.form-group p.text-center {
    display: none;
}

.contact .formulaire .form-group .form-control {
    background: var(--color3);
    border: 1px solid rgb(200, 203, 207);
    color: var(--color0);
    box-shadow: none;
    border-radius: 0px;
    font-size: inherit;
    width: 100% !important;
    resize: auto !important;
}

.contact .formulaire .form-group textarea.form-control {
    position: static;
    height: 139px;
}

.body-catalogue-item .contact .formulaire .form-group textarea.form-control, .body-contact .contact .formulaire .form-group textarea.form-control {
    height: 118px;
}

.contact .formulaire .form-group input.form-control {
    height: 50px;
    line-height: 1;
    padding: 0px 12px;
}

.input-group-addon {
    border-radius: 0px;
}

.contact .formulaire .form-group select.form-control {
    height: 50px;
    line-height: 50px;
    padding: 5px 41px 5px 12px;
}

@media screen and (-webkit-min-device-pixel-ratio: 0),screen and (-moz-images-in-menus:0) {
    .form-horizontal select.form-control {
        -webkit-appearance:none!important;
        -moz-appearance: none!important;
        appearance: none;
        background-image: url(../images/image-select.svg)!important;
        background-repeat: no-repeat!important;
        background-position: right 15px center!important;
        line-height: normal!important;
        background-size: 22px auto!important
    }

    .form-horizontal select.form-control option {
        color: inherit
    }
}

.contact .formulaire .form-group input[name="captcha"] {
    display: inline-block;
    vertical-align: top;
    width: 31% !important;
    height: 50px !important;
    float: none !important;
    margin-right: 2% !important;
}

.contact .formulaire .form-group input[name="captcha"] + a {
    width: 35%;
    display: inline-block;
    margin-right: 2%;
    vertical-align: top;
}

.contact .formulaire .form-group #captcha {
    width: 100%;
    border-radius: 0px;
    padding: 0px;
    height: 50px !important;
}

.contact .formulaire .form-group input.btn-primary {
    position: relative;
    float: right;
    border-radius: var(--radius);
}

input[type="date"]::-webkit-calendar-picker-indicator {
    font-size: 20px;
}

.form-group.index_7 .col-md-9 {
    width: 100%;
    padding: 0px;
}

.contact .formulaire .form-group input.datepicker-AB {
    background-image: url("../images/calendar-silhouette-1.png");
    background-repeat: no-repeat;
    background-position: 99% center;
    width: 100% !important;
}

.contact .formulaire input.btn-primary {
    top: -60px;
}

.contact .formulaire .form-actions {
    font-size: 12px;
}

.contact a.btn.btn-default {
    float: right;
}

.body-error404 a.btn.btn-default, .contact .formulaire input.btn-primary, .contact a.btn.btn-default {
    padding: 15px 60px 15px 18px;
    font-family: var(--font1), sans-serif;
    text-transform: uppercase;
    background: var(--color2) url(../images/ico-envoyer.png) no-repeat 94% center;
    color: rgb(255, 255, 255);
    text-align: left;
    border-radius: 0px;
    font-size: 14px;
    border: none;
    text-decoration: none;
    transition: 400ms;
    float: right;
}

.body-error404 a.btn.btn-default:hover, .body-error404 a.btn.btn-default:active, .contact .formulaire input.btn-primary:hover, .contact .formulaire input.btn-primary:active, .contact a.btn.btn-default:hover, .contact a.btn.btn-default:active {
    background-color: var(--color1);
}

::-webkit-input-placeholder {
    color: rgb(255, 255, 255) !important;
}

.pageseo .formulaire .form-group input[name="captcha"] {
    width: 100% !important;
    margin-right: 0px !important;
    text-align: left !important;
}

.pageseo .formulaire .form-group input[name="captcha"] + a {
    position: absolute;
    width: 140px;
    top: 0px;
    right: 0px;
    margin-right: 0px !important;
}

.flex-seoContain {
    position: relative;
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}

.flex-seoContain .seo-content {
    width: 55%;
    padding-top: 1em;
}

.flex-seoContain .seo-content h1, .flex-seoContain .seo-form h2.h1 {
    text-align: left;
}

.flex-seoContain .seo-content h1::before, .flex-seoContain .seo-form h2.h1::before {
    left: 0px;
    margin-left: 0px;
    transform: translate(0px);
}

.flex-seoContain .seo-form {
    width: 44%;
    padding: 1em 3% 3em;
    background: var(--bg-facultatif);
}

.img-seo img {
    border-radius: var(--border-radius);
    width: 100%;
    height: 100%;
}

.imagecont.noflicker.img1 {
    display: block;
    margin: 1vh 0px 2vh;
    height: 30vh;
    overflow: hidden;
}

.flex-seoContain .seo-content img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.corps .page-contenu h2:first-of-type, .corps .gallery h2:first-of-type, .corps .seo-content h2:first-of-type, .corps .newsItem h2:first-of-type {
    position: relative;
    padding: 2vh 1vw;
    font-size: calc(var(--taille_font) + .1rem);
    line-height: calc(var(--taille_font) + 1rem);
    border: none;
    font-weight: 700;
    z-index: 1;
    margin-top: 0px;
    color: var(--color0);
}

.corps .page-contenu h2:first-of-type::before, .corps .gallery h2:first-of-type::before, .corps .seo-content h2:first-of-type::before, .corps .newsItem h2:first-of-type::before {
    content: "";
    position: absolute;
    background: var(--color2);
    width: 100%;
    height: 100%;
    opacity: 0.4;
    left: 0px;
    top: 0px;
    z-index: -1;
    border-radius: var(--border-radius);
}

.corps .page-contenu h2, .corps .gallery h2, .corps .seo-content h2, .corps .newsItem h2 {
    margin-bottom: 2vh;
}

.corps blockquote {
    font-size: inherit;
    background: var(--bg-facultatif);
    border-radius: var(--border-radius);
    border: 0px;
    padding: 3vh 2vw;
    margin: 3vh 0px;
}

.pageseo .formulaire .form-group input[name="captcha"] {
    width: 100% !important;
    margin-right: 0% !important;
    text-align: left !important;
}

.pageseo .formulaire .form-group input[name="captcha"] + a {
    position: absolute;
    width: 140px;
    top: 0px;
    right: 0px;
    margin-right: 0px !important;
}

.contact .formulaire .form-group .checkbox {
    padding: 7px 50px 5px 20px;
    float: left;
}

.contact .formulaire .form-group .checkbox .col-md-8 {
    width: auto !important;
}

.contact .formulaire .form-group input.datepicker {
    background: url("../images/ico-calendrier.png") 95% center no-repeat;
    filter: grayscale(1);
}

.flex-seoContain {
    position: relative;
    display: grid;
    width: 100%;
    flex-wrap: wrap;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}

.flex-seoContain .seo-content {
    width: 100%;
    padding-top: 1em;
}

.flex-seoContain .seo-content h1, .flex-seoContain .seo-form h2.h1 {
    text-align: left;
}

.flex-seoContain .seo-content h1::before, .flex-seoContain .seo-form h2.h1::before {
    left: 0px;
    margin-left: 0px;
}

.flex-seoContain .seo-form {
    width: 100%;
    padding: 0px;
    position: relative;
}

.img-seo img {
    width: 245px;
    height: auto;
}

.contact .formulaire .form-group.index_20 .col-md-4 {
    display: none;
}

.contact .formulaire .form-group.index_0, .contact .formulaire .form-group.index_2 {
    display: inline-block;
    width: 50%;
    padding-right: 15px !important;
}

.contact .formulaire .form-group.index_1, .contact .formulaire .form-group.index_3, .contact .formulaire .form-group.index_11, .contact .formulaire .form-group.index_18 {
    display: inline-block;
    width: 50%;
}

.input-group-btn > .btn {
    height: 50px;
    background: white;
    color: rgb(51, 51, 51);
    display: flex;
    align-items: center;
    padding: 9px;
    border-radius: 0px;
    border: 1px solid rgb(200, 203, 207);
}

.contact .formulaire .form-group.index_12, .contact .formulaire .form-group.index_13, .contact .formulaire .form-group.index_19, .contact .formulaire .form-group.index_20, .contact .formulaire .form-group.index_20, .formulaire .form-group.index_10, .formulaire .form-group.index_11, .formulaire .form-group.index_17, .formulaire .form-group.index_18 {
    display: flex !important;
    width: 100% !important;
}

.contact .formulaire .form-group.index_4 {
    width: 100% !important;
}

.contact .formulaire .form-group.index_12, .contact .formulaire .form-group.index_13, .contact .formulaire .form-group.index_19, .contact .formulaire .form-group.index_20, .contact .formulaire .form-group.index_22 {
    display: flex;
}

.contact .formulaire .form-group.index_22 {
    display: inline-block;
    width: 65%;
    padding-right: 15px !important;
}

.contact.pageDevis .formulaire .control-label {
    padding-left: 0px;
    font-weight: bold;
}

.contact.pageDevis .formulaire input[type="date"]::-webkit-inner-spin-button, .contact.pageDevis .formulaire input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0;
}

.contact.pageDevis .formulaire .form-group .col-md-12.choix + .col-md-12, .contact.pageDevis .formulaire .form-group .col-xs-12.choix + .col-md-12 {
    width: 100% !important;
}

.contact .formulaire .form-group.index_28 label, .contact .formulaire .form-group.index_20 label {
    display: inline-block;
    margin-right: 45px;
    margin-bottom: 0px;
}

.contact .formulaire .form-group.index_7 label, .contact .formulaire .form-group.index_7 label {
    display: inline-block;
    padding: 0px;
    width: 100%;
    font-size: calc(var(--taille_font) * 1.1);
    color: #f9f9f9;
    margin: 0px 0px 1vh;
}

.contact .formulaire .form-group.index_7 label {
    padding: 0;
    margin: 0;
    width: fit-content;
    display: flex;
}

label.control-label.col-md-4 {
    width: 15% !important;
    /* background: red; */
}

.contact.pageDevis .form-horizontal .checkbox, .contact.pageDevis .form-horizontal .radio {
    float: left;
    width: auto;
    text-align: left;
    position: relative;
    top: -1.5px;
    font-weight: normal;
}

.contact.pageDevis span.help-inline, .contact.pageDevis span.help-block {
    font-size: 1em;
    font-style: normal;
    display: inline-block;
    padding-top: 14px;
}

.contact.pageDevis .formulaire .calcul-btn {
    display: inline-block;
    width: 35%;
}

.contact.pageDevis .formulaire .hvr-shutter-out-horizontal {
    padding: 14px 10px;
    font-size: 15px;
    width: 100%;
    position: relative;
    top: -80px;
    border: 0px;
    color: rgb(255, 255, 255);
    font-family: var(--font1), sans-serif;
    text-transform: uppercase;
    background-color: rgb(13, 13, 13);
}

.contact.pageDevis .formulaire .hvr-shutter-out-horizontal::before {
    background-color: rgb(1, 1, 1);
}

label span.required {
    display: none;
}

.contact.pageDevis hr {
    margin-top: 35px;
    margin-bottom: 35px;
    border-top: 1px solid rgb(234, 234, 234);
}

#calculateurmodal #accordion .glyphicon, .service-wrapper #accordion .glyphicon {
    font-size: 15px;
    float: right;
}

#calculateurmodal .hvr-shutter-out-horizontal {
    border: 0px;
    font-family: var(--font1), sans-serif;
    font-size: 14px;
    font-weight: 400;
    padding: 18px 20px 15px;
    min-width: 168px;
    line-height: 19px;
    text-align: center;
    border-radius: 0px;
    text-transform: uppercase;
    color: rgb(255, 255, 255) !important;
    text-decoration: none !important;
}

#calculateurmodal .panel-heading {
    background-color: transparent;
    transition: 400ms;
    padding: 0px;
    color: rgb(255, 255, 255);
    border-radius: 0px;
}

#calculateurmodal .panel-heading.active, #calculateurmodal .panel-heading, #calculateurmodal .panel-heading:active {
    background-color: var(--color1);
}

#calculateurmodal .panel-heading h4 {
    font-size: 18px;
    font-weight: 400;
}

#calculateurmodal .panel-heading h4 a {
    text-decoration: none;
    width: 100%;
    display: inline-block;
    height: 100%;
    cursor: pointer;
    padding: 20px 30px 18px;
    color: rgb(255, 255, 255);
}

#calculateurmodal .panel-default > .panel-heading + .panel-collapse > .panel-body {
    border: 0px;
    padding-bottom: 0px;
    margin-bottom: 25px;
    margin-top: 5px;
}

#calculateurmodal .panel {
    box-shadow: none;
    border: 0px;
}

#calculateurmodal .modal-content label.control-label {
    display: inline-block;
    font-weight: 400;
    font-size: 17px;
    padding-top: 0px !important;
}

#calculateurmodal #accordion .form-control {
    margin-bottom: 15px;
    border: 1px solid rgb(191, 191, 191);
    border-radius: 0px;
    font-size: 16px;
    color: rgb(50, 52, 53);
    height: 41px;
}

.collapsible-link {
    position: relative;
}

.quantiteTotal {
    margin-top: 10px;
}

.quantiteTotalFlex {
    display: flex;
    align-items: center;
}

.quantiteTotalFlex span {
    display: inline-block;
    margin-left: 10px;
    font-weight: 700;
    font-size: 17px;
}

#calculateurmodal #accordion .quantiteTotalFlex .form-control, #collapse5 .quantiteTotal .form-control {
    margin-bottom: 0px !important;
}

.modal-content .btn-close {
    border: 0px;
    background: none;
    padding: 0px;
    font-size: 21px;
    color: rgb(0, 0, 0);
    opacity: 0.2;
    line-height: 1;
    outline: none;
}

.modal-content .btn-close:hover, .modal-content .btn-close:focus {
    opacity: 0.5;
}

.modal-content {
    font-family: var(--font2), sans-serif;
}

.menu-item.devis {
    background: var(--color2);
    padding: 0px;
}

.gallery .bas-galerie {
    text-align: center;
    padding: 40px 0px 0px;
}

.gallery .description-galerie {
    text-align: justify;
}

.gallery .multiple .ligne-photos .col-md-1, .gallery .multiple .ligne-photos .col-md-2, .gallery .multiple .ligne-photos .col-md-4, .gallery .multiple .ligne-photos .col-md-6 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.gallery .multiple .ligne-photos {
    margin-left: 0px !important;
    margin-right: 0px !important;
}

.gallery .ligne-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 15px;
}

.gallery .multiple .ligne-photos .propor {
    /* margin-bottom: 0px; */
}

.gallery .ligne-photos .propor::after {
    padding-top: 76%;
    display: block;
    content: "";
}

.gallery .ligne-photos .propor .propor-cont {
    position: absolute;
    inset: 0px;
}

.gallery .ligne-photos .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    transform: translateZ(0px);
    border-radius: var(--radius);
}

.gallery .ligne-photos .propor .propor-cont .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.gallery .ligne-photos .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
    width: 100%;
    height: 100%;
    background: url("../images/ico-zoom.png") center center no-repeat rgba(0, 0, 0, 0.7);
}

.gallery .ligne-photos .propor .propor-cont .imagecont:hover .masque {
    opacity: 1;
}

.gallery .ligne-photos .propor .propor-cont .imagecont:hover .imagefond {
    transform: scale(1.15);
}

.propor .propor-cont .imagecont img {
    object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1 1 0%;
    height: 100%;
}

.home-text .row.recup-photos.gallery .propor .propor-cont .imagecont img {
    width: 100%;
    height: 100%;
}

.gallery .nav {
    margin: 10px 0px;
    text-align: center;
}

.gallery .nav li {
    display: inline-block;
    margin-bottom: 10px;
}

.gallery .nav li {
    /* background: url("../images/sep.png") right center no-repeat; */
    padding: 0px 20px 0px 5px;
}

.gallery .nav li:last-child {
    background: none;
}

.gallery .nav li a {
    background: none;
    display: block;
    color: var(--color0);
    text-transform: uppercase;
    font-size: 14px;
    font-family: var(--font1), sans-serif;
    padding: 10px;
    text-align: center;
    border-radius: 0px;
    text-decoration: none;
}

.gallery .nav li a:hover, .gallery .nav li.active a {
    background: none;
    color: white;
    background: var(--color1);
}

.gallery .nav li.active a {
    cursor: default;
}

.gallery .tab-content {
    padding-top: 10px;
    padding-bottom: 10px;
}

.gallery .tab-content h2 {
    padding-left: 15px;
    margin-bottom: 20px;
}

.gallery .bas-galerie {
    text-align: center;
    padding: 40px 0px 0px;
}

.gallery .bas-galerie a.bouton-principal {
}

.gallery .bas-galerie a.bouton-principal::after {
    background-image: url("../images/ico-plus.png");
    width: 22px;
    height: 22px;
}

.etiquette {
    position: absolute;
    z-index: 9000;
}

.etiquette.favoris {
    background: url("../images/ico-coeur.png");
    top: 5px;
    right: 5px;
    width: 25px;
    height: 23px;
    transition: 400ms;
}

.item:hover .etiquette.favoris {
    background: url("../images/ico-coeur-h.png");
}

.mentions {
    padding: 0px 0px 10px;
    margin: 0px;
    list-style-type: none;
    list-style-image: none;
}

.mentions .mention {
    color: var(--color1);
    font-style: italic;
    text-align: center;
    font-size: 18px;
    margin: 0px;
    line-height: 21px;
    background-image: none;
}

.fil-arianne {
    border-bottom: 1px solid rgb(185, 184, 184);
    padding: 0px 0px 10px;
    font-size: 14px;
}

.fil-arianne a {
    text-decoration: none;
    color: inherit;
}

.fil-arianne a:hover {
    text-decoration: underline;
}

.fil-arianne span {
    color: var(--color1);
}

.cat-produit .fil-arianne {
    margin: 0px 0px 50px;
}

.cat-liste .titre-liste {
    background: rgb(63, 63, 63);
    border-radius: 3px;
    margin-bottom: 20px;
}

.cat-liste .titre-liste h2 {
    background: none;
    margin: 0px;
}

.cat-liste #filtres {
    display: block;
    padding: 20px 0px 0px;
    font-size: 14px;
    text-align: right;
    text-transform: uppercase;
}

.cat-liste #filtres form {
    display: inline-block;
}

.cat-liste #filtres form#form_ipp {
    padding-right: 0px;
}

.cat-liste #filtres form label, .cat-liste #filtres form b {
    font-weight: normal;
}

.cat-liste #filtres form label {
    background: url("../images/points.png") right 4px no-repeat;
    padding: 0px 10px 0px 0px;
}

.cat-liste #filtres p {
    margin: 0px;
}

.cat-liste #filtres select {
    height: 30px;
    line-height: 30px;
    padding: 5px;
    border: 1px solid rgb(204, 204, 204);
    margin: 0px 0px 0px 10px;
    background: transparent;
}

.cat-liste #pagination {
    padding: 8px 0px;
    text-align: right;
    border-top: 1px solid rgb(204, 204, 204);
    border-bottom: 1px solid rgb(204, 204, 204);
    margin: 30px 0px 0px;
}

.cat-liste #pagination ul {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
    list-style-image: none;
}

.cat-liste #pagination ul li {
    display: inline-block;
    width: 28px;
}

.cat-liste #pagination ul li a {
    background: rgb(245, 245, 245);
    text-align: center;
    display: block;
    height: 28px;
    line-height: 28px;
    font-weight: bold;
    font-size: 16px;
    text-decoration: none;
}

.cat-liste #pagination ul li a:hover, .cat-liste #pagination ul li.active a {
    background: rgb(237, 235, 235);
}

.filtres-catalogue {
    background: transparent;
    padding: 15px;
    margin: 0px 0px 15px;
}

.tooltip-inner {
    border-radius: 4px;
    color: var(--color0) !important;
    font-family: var(--font1) !important;
}

.filtres-catalogue button, .filtres-catalogue a.btn-reset {
    text-decoration: none;
    border: 1px solid rgb(154, 154, 154);
    display: block;
    background: none;
    text-align: center;
    text-transform: uppercase;
    color: var(--color0);
    width: 100%;
    font-size: 16px;
    padding: 12px 0px;
}

.filtres-catalogue button:hover, .filtres-catalogue a.btn-reset:hover {
    color: rgb(255, 255, 255);
    background: rgb(0, 0, 0);
    border: 1px solid rgb(0, 0, 0);
}

.filtres-catalogue h3 {
    text-transform: uppercase;
    font-size: 16px;
    color: var(--color0);
    padding: 5px 0px;
}

.filtres-catalogue p {
    line-height: 26px;
}

.filtres-catalogue p.range {
    padding: 10px 10px 20px;
}

.filtres-catalogue label {
    font-weight: normal;
    font-size: 16px;
    color: rgb(131, 131, 131);
    margin: 0px;
    padding: 0px 0px 0px 5px;
}

.filtres-catalogue input:disabled + label {
    font-weight: normal;
    font-size: 20px;
    color: rgb(210, 210, 210);
    margin: 0px;
    padding: 0px 0px 0px 5px;
    font-style: italic;
}

.filtres-catalogue input[type="submit"] {
    margin: 30px 0px 20px;
    transition: 400ms;
    background: var(--color1);
    font-size: 16px;
    color: rgb(255, 255, 255);
    text-align: center;
    display: block;
    width: 100%;
    border: none;
    padding: 13px 0px;
    text-transform: uppercase;
}

.filtres-catalogue input[type="submit"]:hover {
    background: rgb(0, 0, 0);
    color: rgb(255, 255, 255);
}

.modele-liste {
    padding: 0px;
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.encarts .modele-liste, .encarts2 .modele-liste, .encarts3 .modele-liste {
    padding: 0px;
    margin-left: 0px !important;
    margin-right: 0px !important;
}

.modele-liste .col-md-2, .modele-liste .col-md-3, .modele-liste .col-md-4, .modele-liste .col-md-6 {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

.modele-liste .item {
    margin-bottom: 30px;
    position: relative;
}

.modele-liste.cont-sliderfav .item {
    width: 100%;
    padding: 0px 20px;
}

.modele-liste.cont-sliderred .item {
    width: 100%;
    padding: 0px 20px;
}

.modele-liste.cont-slidernouv .item {
    width: 100%;
    padding: 0px 20px;
}

.modele-liste.cont-sliderfav .item .div-proportionnel-item, .modele-liste.cont-sliderred .item .div-proportionnel-item, .modele-liste.cont-slidernouv .item .div-proportionnel-item {
    width: 220px !important;
    display: inline-block;
}

.modele-liste .item .div-proportionnel-item {
    width: 100%;
    position: relative;
}

.modele-liste .item .div-proportionnel-item::after {
    padding-top: 80%;
    display: block;
    content: "";
}

.modele-liste .item .div-proportionnel-item .cont-propor {
    position: absolute;
    inset: 0px;
}

.modele-liste .item .div-proportionnel-item .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    transition: 400ms;
}

.modele-liste .item .div-proportionnel-item .imagecont:hover {
    opacity: 0.8;
}

.modele-liste .item .div-proportionnel-item .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover !important;
}

.modele-liste .item .noimage {
    background: url("../images/noim.jpg") center center no-repeat rgb(255, 255, 255);
}

.modele-liste .item .tableau {
    width: 100%;
}

.modele-liste .item h2, .modele-liste .item h3 {
    margin: 20px 0px 10px;
    font-size: 23px;
    text-transform: uppercase;
    text-align: center;
    padding: 0px;
}

.modele-liste .item h2 a, .modele-liste .item h3 a {
    color: var(--color1);
}

.modele-liste .item .prix-item {
    font-size: 24px;
    text-align: center;
    line-height: 23px;
}

.modele-liste .item .prix-item div {
    display: inline-block;
    vertical-align: top;
}

.modele-liste .item .prix-item div.ancien {
    text-decoration: line-through;
    color: rgb(158, 158, 158);
    position: relative;
    font-size: 24px;
}

.modele-liste .item .prix-item div.ancien::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 2px;
    right: 2px;
    border-bottom: 1px solid rgb(158, 158, 158);
    display: none;
}

.saluuut .item .prix-item {
    font-size: 22px;
    line-height: 23px;
}

.saluuut .item .prix-item div {
    display: inline-block;
    vertical-align: top;
}

.saluuut .item .prix-item div.ancien {
    color: rgb(158, 158, 158);
    position: relative;
    font-size: 24px;
}

.saluuut .item .prix-item div.ancien::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 2px;
    right: 2px;
    border-bottom: 1px solid rgb(158, 158, 158);
    display: inline-block;
}

.saluuut .mentions .mention {
    text-align: left;
    padding: 0px;
}

.cat-produit .btn-partage {
    text-align: right;
    position: absolute;
    top: 0px;
    right: 0px;
}

.cat-produit .btn-partage .btnp {
    width: 30px;
    height: 29px;
    margin: 0px 1px;
    background-repeat: no-repeat;
    background-position: center center;
    display: inline-block;
    transition: 400ms;
    vertical-align: top;
    cursor: pointer;
    filter: grayscale(1);
}

.cat-produit .btn-partage .btnp img {
    vertical-align: top;
}

.cat-produit .btn-partage .btnp:hover {
    transform: rotate(360deg);
    background: none;
}

.cat-produit .btn-partage .btnp.btn-fb {
    background-image: url("../images/ico-fb2.png");
}

.cat-produit .btn-partage .btnp.btn-twitter {
    background-image: url("../images/ico-twitter.png");
    background-color: var(--color1);
    background-size: 16px;
    background-repeat: no-repeat;
    background-position: center center;
}

.cat-produit .btn-partage .btnp.btn-google {
    background-image: url("../images/ico-google2.png");
}

.cat-produit .btn-partage .btnp.btn-pinterest {
    background-image: url("../images/ico-pinterest2.png");
}

.cat-produit .btn-partage .btnp.btn-tumblr {
    background-image: url("../images/ico-tumblr2.png");
}

.cat-produit .btn-partage .btnp.btn-ami {
    background-image: url("../images/ico-ami2.png");
}

.cat-produit .btn-partage .btnp.btn-fb:hover {
}

.cat-produit .btn-partage .btnp.btn-twitter:hover {
    background-image: url("../images/ico-twitter2-h.png");
}

.cat-produit .btn-partage .btnp.btn-tumblr:hover {
    background-image: url("../images/ico-tumblr2-h.png");
}

.cat-produit .btn-partage .btnp.btn-google:hover {
    background-image: url("../images/ico-google2-h.png");
}

.cat-produit .btn-partage .btnp.btn-pinterest:hover {
    background-image: url("../images/ico-pinterest2-h.png");
}

.cat-produit .btn-partage .btnp.btn-ami:hover {
}

.cat-produit .particularites {
    margin: 30px 0px;
    padding: 0px;
    list-style-type: none;
}

.cat-produit .particularites li {
    font-size: 18px;
    color: rgb(255, 255, 255);
    background: none;
    border-bottom: 1px solid;
    padding: 2vh 0px;
}

.cat-produit .particularites li span {
    color: white;
}

.cat-produit .item-titre {
    font-size: 25px;
    color: var(--color0);
    margin: 0px;
    max-width: 65%;
    font-family: arial;
    text-transform: uppercase;
}

.cat-produit .item-description {
    font-size: 17px;
    padding: 0px 0px 90px;
    color: var(--color0);
}

.cat-produit .item-prix {
    font-size: 28px;
    line-height: 28px;
    padding: 5px 0px 0px;
}

.cat-produit .item-prix div {
    display: inline-block;
    vertical-align: top;
}

.cat-produit .item-prix div.ancien {
    text-decoration: line-through;
    color: rgb(158, 158, 158);
    position: relative;
    font-size: 24px;
}

.cat-produit .item-prix div.ancien::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 2px;
    right: 2px;
    border-bottom: 1px solid rgb(158, 158, 158);
    display: none;
}

.cat-produit .equipements ul {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

.cat-produit .btn-retour {
    padding: 20px 0px 0px;
}

.cat-produit .btn-retour a {
    transition: 400ms;
    display: inline-block;
    text-decoration: none;
    border: 1px solid rgb(88, 88, 88);
    font-size: 16px;
    color: var(--color0);
    padding: 15px 30px 12px;
    text-transform: uppercase;
}

.cat-produit .btn-retour a:hover {
    background: rgb(0, 0, 0);
    color: rgb(255, 255, 255);
}

.cat-produit .titre-similaire {
    font-size: 28px;
    text-transform: uppercase;
    padding: 19px 0px 12px 15px;
    color: rgb(64, 63, 63);
    text-align: center;
    border: 1px solid rgb(200, 200, 200);
    margin: 70px 0px 50px;
}

.cat-produit .titre-desc {
    text-transform: none;
    font-size: calc(var(--taille_font) * 1.8);
    margin: 23px 0px 3vh;
}

.cat-produit .btn-envie {
    text-align: right;
}

.cat-produit .btn-envie a {
    transition: 400ms;
    display: inline-block;
    text-decoration: none;
    border: 1px solid rgb(88, 88, 88);
    font-size: 16px;
    color: rgb(0, 0, 0);
    padding: 15px 30px 12px 55px;
    text-transform: uppercase;
    background: url("../images/ico-envie.png") 30px center no-repeat;
}

.cat-produit .btn-envie a:hover, .cat-produit .btn-envie a.remove-from-wishlist {
    background: url("../images/ico-envie-h.png") 30px center no-repeat rgb(0, 0, 0);
    color: rgb(255, 255, 255);
}

.cat-produit {
    position: relative;
}

.cat-produit .cont-sliderthumb .div-proportionnel {
    width: 100%;
    position: relative;
}

.cat-produit .cont-sliderthumb .div-proportionnel::after {
    padding-top: 72%;
    display: block;
    content: "";
}

.cat-produit .cont-sliderthumb .div-proportionnel .cont-propor {
    position: absolute;
    inset: 0px;
}

.cat-produit .cont-sliderthumb .div-proportionnel .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    cursor: zoom-in;
}

.cat-produit .cont-sliderthumb .div-proportionnel .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.cat-produit .noimage {
    display: block;
    background: url("../images/noim.jpg") center center no-repeat rgb(255, 255, 255);
    width: 100%;
    height: 400px;
}

.cat-produit .sudo-slider-thumb {
    padding: 0px;
    text-align: center;
}

.cat-produit .noimage {
    background-image: url("../images/noim.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: rgb(255, 255, 255);
    background-size: auto !important;
}

.cat-produit .cont-miniatures {
    overflow: hidden;
    position: relative;
    margin: 30px 0px 0px;
}

.cat-produit .miniatures {
    width: 300000px;
}

.cat-produit .miniatures .miniature {
    width: 181px;
    float: left;
    margin-right: 30px;
    border: 1px solid rgb(204, 204, 204);
}

.cat-produit .miniatures .div-proportionnel {
    width: 100%;
    position: relative;
}

.cat-produit .miniatures .div-proportionnel::after {
    padding-top: 94%;
    display: block;
    content: "";
}

.cat-produit .miniatures .div-proportionnel .cont-propor {
    position: absolute;
    inset: 0px;
}

.cat-produit .miniatures .div-proportionnel .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
}

.cat-produit .miniatures .div-proportionnel .imagecont .imagefond {
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.cat-produit .cont-miniatures .precedent-miniatures {
    position: absolute;
    top: 50%;
    margin-top: -16px;
    left: 15px;
    display: none;
    width: 32px;
    height: 32px;
    background: url("../images/ico-thumb-g.png");
}

.cat-produit .cont-miniatures .suivant-miniatures {
    position: absolute;
    top: 50%;
    margin-top: -16px;
    right: 15px;
    display: none;
    width: 32px;
    height: 32px;
    background: url("../images/ico-thumb-d.png");
}

.cat-produit .cont-miniatures:hover .precedent-miniatures, .cat-produit .cont-miniatures:hover .suivant-miniatures {
    display: block;
}

.cat-produit .cont-sliderthumb a.customLinkThumb[data-target="prev"], .cat-produit .cont-sliderthumb a.customLinkThumb[data-target="next"] {
    z-index: 9000;
    position: absolute;
    top: 50%;
    display: none;
    width: 32px;
    height: 32px;
    margin-top: -16px;
}

.cat-produit .cont-sliderthumb a.customLinkThumb[data-target="prev"] {
    left: 0px;
    background: url("../images/ico-thumb-g.png");
}

.cat-produit .cont-sliderthumb a.customLinkThumb[data-target="next"] {
    right: 0px;
    background: url("../images/ico-thumb-d.png");
}

.cat-produit .cont-sliderthumb a.customLinkThumb[data-target="prev"]:hover, .cat-produit .cont-sliderthumb a.customLinkThumb[data-target="next"]:hover {
    opacity: 0.8;
}

.cat-produit .cont-sliderthumb:hover a.customLinkThumb[data-target="prev"], .cat-produit .cont-sliderthumb:hover a.customLinkThumb[data-target="next"] {
    display: block;
}

.cat-produit .controlsthumb {
    list-style-type: none;
    list-style-image: none;
    padding: 0px;
    margin: 0px;
    position: absolute;
    bottom: 10px;
    left: 0px;
    right: 0px;
    text-align: center;
}

.cat-produit .controlsthumb {
    display: none !important;
}

.cat-produit .controlsthumb ol {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

.cat-produit .controlsthumb ol li {
    display: inline-block;
    vertical-align: top;
    background: none;
    padding: 0px;
}

.cat-produit .controlsthumb ol li a {
    width: 12px;
    height: 12px;
    border-radius: 12px;
    background: rgb(237, 2, 2);
    display: inline-block;
    margin: 0px 5px;
}

.cat-produit .controlsthumb ol li.current a.active, .cat-produit .controlsthumb ol li.current a {
    background: rgb(0, 0, 0);
    cursor: default;
}

.cat-produit .controlsthumb ol li.current a {
    background: rgb(0, 0, 0);
    cursor: default;
}

.cat-produit .controlsthumb ol li a span {
    display: none;
}

.cat-produit .zone-leads {
    padding: 30px 0px 0px;
}

.cat-produit .form-question {
    padding: 20px 0px 0px;
}

.cat-produit .form-question select {
    width: 100%;
    border: 1px solid rgb(185, 185, 185);
    height: 48px;
    margin: 0px 0px 10px;
    line-height: 32px;
    padding: 5px 5px 5px 10px;
}

.cat-produit .form-question textarea {
    width: 100%;
    border: 1px solid rgb(185, 185, 185);
    padding: 10px;
    height: 280px;
    margin: 0px 0px 4px;
}

.cat-produit .form-question input[type="text"], .cat-produit .form-question input[type="email"], .cat-produit .form-question input[type="tel"] {
    width: 100%;
    border: 1px solid rgb(185, 185, 185);
    margin: 0px 0px 10px;
    height: 48px;
    line-height: 1;
    padding: 0px 10px;
}

.cat-produit .form-question input[type="submit"] {
    width: 43%;
    border: none;
    padding: 12px 0px 12px 20px;
    text-align: left;
    color: rgb(255, 255, 255);
    text-transform: uppercase;
    background: var(--color1) url(../images/ico-envoyer.png) no-repeat 90% center;
    transition: 400ms;
}

.cat-produit .form-question input[type="submit"]:hover {
    background-color: rgb(147, 12, 22);
    color: rgb(255, 255, 255);
}

.help-block {
    margin-top: 5px;
    margin-bottom: 10px;
    position: relative;
}

.cat-produit .form-question input[name="captcha"] {
    width: 35%;
}

.cat-produit .form-question #captcha3 {
    padding: 0px 4px;
    height: 48px !important;
}

.cat-produit .form-question #captchaRefresher {
    text-decoration: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0), screen and (-moz-images-in-menus:0) {
    .cat-produit .form-question select {
        appearance: none !important;
        background-image: url("../images/image-select.png") !important;
        background-repeat: no-repeat !important;
        background-position: right center !important;
        line-height: normal !important;
    }

    .cat-produit .form-question select option {
        color: inherit;
    }
}

.cat-produit .form-question ::-webkit-input-placeholder {
    color: rgb(97, 97, 97) !important;
}

.modal-backdrop.in {
    z-index: 99996;
}

.modal-open .modal {
    z-index: 999999;
}

.sidebar-left .btn-recherche {
    margin: 0px;
    overflow: hidden;
    text-indent: 100px;
    background: url("../images/ico-recherche.png") center center no-repeat;
    display: inline-block;
    vertical-align: top;
    width: 50px;
    height: 48px;
    position: absolute;
    top: 0px;
    right: 50px;
}

.sidebar-left .btn-favoris {
    position: absolute;
    margin: 0px;
    top: 0px;
    right: 0px;
    overflow: hidden;
    text-indent: 110px;
    background: url("../images/ico-favoris.png") center center no-repeat;
    display: inline-block;
    vertical-align: top;
    width: 50px;
    height: 48px;
}

.header-sidebars, .sidebar-left, .sidebar-right {
    background-color: rgb(255, 255, 255);
    letter-spacing: 1px;
}

.sidebar-left a, .sidebar-right a, .sidebar-bottom-controls a, .contactButton, .nav-item-active, .sidebar-form label, .sidebar-send-button, .sidebar-divider-text {
    color: rgb(255, 255, 255) !important;
}

.header-sidebars {
    height: 65px;
    z-index: 9999;
    position: fixed;
    left: 0px;
    right: 0px;
    top: 0px;
    width: 100%;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 3px 1px;
}

.header-sidebars .header-top {
    display: table;
    height: 65px;
    width: 100%;
    background: var(--color3);
}

.top-logo {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 9999;
    text-align: center;
    overflow-y: hidden;
}

.top-logo img {
    position: absolute;
    left: 16px;
    top: 6px;
    height: auto;
    width: 120px;
}

.deploy-left-sidebar {
    display: table-cell;
    background-color: rgb(193, 23, 24);
    background-size: auto 49%;
    background-image: url("../images/menu-mobile-3/nav.svg");
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center;
}

.deploy-right-sidebar {
    display: table-cell;
    background-color: var(--color1);
    background-size: auto 49%;
    background-image: url("../images/menu-mobile-3/nav.svg");
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center;
}

.deploy-right-mail {
    display: table-cell;
    background-color: var(--color1);
    background-size: auto 49%;
    background-image: url("../images/menu-mobile-3/mail.svg");
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center;
    position: absolute;
    right: 65px;
    top: 0px;
}

.deploy-right-call {
    display: table-cell;
    background-color: var(--color1);
    background-size: auto 49%;
    background-image: url("../images/menu-mobile-3/telephone.svg");
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center 16px;
    right: 130px;
    top: 0px;
    position: absolute !important;
}

.deploy-back-home {
    background-image: url("../images/menu-mobile-3/home.png");
    background-repeat: no-repeat;
    background-color: rgb(249, 250, 252);
    width: 50px;
    height: 50px;
    background-position: center center;
    float: right;
    margin-top: -50px;
}

.delete-right-sidebar {
    display: none;
    background-image: url("../images/menu-mobile-3/contact.png");
    background-repeat: no-repeat;
    background-color: rgb(249, 250, 252);
    width: 50px;
    height: 50px;
    background-position: center center;
    float: right;
    margin-top: -50px;
}

.sidebar-left {
    width: 270px;
    z-index: 9999;
    top: 0px;
    left: -270px;
    bottom: 0px;
    overflow: hidden;
    position: fixed;
    box-shadow: rgba(0, 0, 0, 0.1) 3px 0px 3px 0px;
    font-family: Helvetica !important;
}

.sidebar-scroll-left {
    padding-right: 20px;
    left: 0px;
    width: 310px;
    height: 100%;
    background-color: rgb(195, 28, 38);
    overflow: hidden scroll !important;
}

.sidebar-scroll-right {
    width: 275px;
    height: 100%;
    background-color: var(--colorbg);
    overflow: hidden !important;
}

.sidebar-right {
    background-repeat: repeat;
    position: fixed;
    overflow: hidden;
    z-index: 99999;
    right: -280px;
    top: 0px;
    bottom: 0px;
    width: 270px;
    margin-right: 10px;
    box-shadow: rgba(0, 0, 0, 0.1) -2px 0px 2px 0px;
    font-family: Helvetica !important;
}

.sidebar-decoration {
    background-image: url("../images/menu-mobile-3/sidebar-deco.png");
    background-repeat: repeat-x;
    height: 2px;
    margin-bottom: 15px;
}

.sidebar-left a, .sidebar-right a {
    text-decoration: none;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 1;
    color: rgb(255, 255, 255) !important;
}

.sidebar-header-left {
    height: 65px;
    background-color: rgb(193, 23, 24);
    position: relative;
}

.sidebar-left-logo {
    max-height: 75px;
    position: absolute;
    top: -2px;
    left: 8px;
    margin-right: 179px;
}

.sidebar-right-logo {
    top: 4px;
    right: 17px;
    width: 180px;
    float: right;
    height: auto;
    position: relative;
    display: none;
}

.close-sidebar-left {
    background-image: url("../images/menu-mobile-3/left-chevron.svg");
    background-size: 45%;
    background-repeat: no-repeat;
    background-position: center center;
    height: 65px;
    width: 65px;
    margin-left: 205px;
    display: block;
}

.sidebar-divider-text {
    font-size: 20px;
    padding-top: 15px;
    padding-left: 20px;
    padding-bottom: 15px;
    margin-bottom: 0px;
    background: rgb(0 0 0);
    color: rgb(255 255 255) !important;
}

.home-nav {
    background-image: url("../images/menu-mobile-3/home.png");
}

.info-nav {
    background-image: url("../images/menu-mobile-3/infoabout.png");
}

.folio-nav {
    background-image: url("../images/menu-mobile-3/bendedright.png");
}

.mail-nav {
    background-image: url("../images/menu-mobile-3/mail.svg");
}

.newsletter-nav {
    background-image: url("../images/menu-mobile-3/rss.png");
}

.call-nav {
    background-image: url("../images/menu-mobile-3/phonehook.svg");
}

.text-nav {
    background-image: url("../images/menu-mobile-3/speechbubble4.png");
}

.facebook-nav {
    background-image: url("../images/menu-mobile-3/facebook.png");
}

.twitter-nav {
    background-image: url("../images/menu-mobile-3/twitter.png");
}

.sidebar-bottom-controls {
    background-color: rgb(247, 142, 30);
}

.sidebar-bottom-controls p {
    margin-top: 3px;
}

.sidebar-bottom-controls a {
    font-size: 12px;
    background-repeat: repeat-y;
    text-align: center;
    float: left;
    width: 33%;
    line-height: 10px;
    display: block;
}

.facebook-bottom {
    display: block;
    padding-top: 26px;
    background-image: url("../images/menu-mobile-3/facebook.png");
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px;
}

.twitter-bottom {
    display: block;
    background-image: url("../images/menu-mobile-3/twitter.png");
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px;
}

.close-bottom-left, .close-bottom-right {
    display: block;
    padding-top: 26px;
    background-image: url("../images/menu-mobile-3/accessdenied.png");
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px;
}

.nav-item {
    font-size: 16.2px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background-size: 22px;
    background-color: rgb(201, 50, 59);
    height: 60px;
    line-height: 61.5px;
    background-repeat: no-repeat;
    padding-left: 60px;
    background-position: 20px center;
    margin-bottom: 1px;
}

.icon-active {
    position: absolute;
    background-image: url("../images/menu-mobile-3/left-sidebar/location.png");
    background-size: 10px 15px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 240px;
}

.icon-page {
    position: absolute;
    background-image: url("../images/menu-mobile-3/left-sidebar/gopage.png");
    background-size: 8px 11px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 240px;
}

.icon-drop {
    position: absolute;
    background-image: url("../images/menu-mobile-3/left-sidebar/godrop.png");
    background-size: 10px 8px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 239px;
}

.submenu a {
    text-shadow: rgb(0, 0, 0) 0px 2px 0px;
    background-image: url("../images/menu-mobile-3/sidebar-deco.png");
    background-repeat: repeat-x;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 25px;
    font-size: 10px;
    color: rgb(135, 135, 135);
    text-transform: uppercase;
    font-weight: 900;
}

.submenu a em {
    background-image: url("../images/menu-mobile-3/left-sidebar/gopage.png");
    background-size: 8px 11px;
    background-repeat: no-repeat;
    float: left;
    width: 10px;
    height: 15px;
    display: block;
    margin-top: 5px;
    padding-right: 35px;
}

.submenu a:first-child {
    background-image: none !important;
}

.submenu {
    display: none;
}

.submenu-active {
    display: block;
}

.sidebar-notifications a {
    margin-bottom: 15px;
    background-repeat: no-repeat;
    background-position: 0px center;
    padding-left: 38px;
    margin-left: 20px;
    font-size: 10px;
    color: rgb(135, 135, 135);
    font-family: var(--font2),sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 10px;
}

.sidebar-header-right {
    height: 65px;
    background-color: var(--color1);
    position: relative;
}

.close-sidebar-right {
    background-image: url("../images/menu-mobile-3/right-chevron.svg");
    background-size: 45%;
    background-repeat: no-repeat;
    background-position: center center;
    height: 65px;
    width: 65px;
    margin-left: 0px;
    display: block;
}

.sidebar-left .close-sidebar-left, .sidebar-right .close-sidebar-right {
    position: absolute !important;
}

.right-sidebar-copyright {
    margin: 20px 0px;
}

.footer-text a {
    padding-top: 10px;
    font-size: 10px;
    color: rgb(138, 138, 138);
}

.copyright-sidebar {
    font-size: 10px;
    text-align: center;
    text-transform: uppercase;
}

.menu-mobile-dynamique {
    margin: 0px;
    padding: 0px;
    list-style: inside none none;
}

.menu-mobile-dynamique li {
    width: 100%;
    margin-bottom: 1px;
    padding-left: 18px;
    position: relative;
    background: var(--color3);
}

.menu-mobile-dynamique .sub-menu li {
    background-color: transparent;
    margin-bottom: 0px;
}

.menu-mobile-dynamique .sub-menu li a {
    height: 42px;
    text-transform: none;
}

.menu-mobile-dynamique .sub-menu {
    background-image: linear-gradient(rgb(193, 22, 24), rgb(193, 22, 24));
    padding-top: 18px;
    padding-bottom: 18px;
}

.menu-mobile-dynamique li.parent {
    background-image: url("../images/menu-mobile-3/left-sidebar/gopage.svg");
    background-position: 241px 26.2px;
    background-repeat: no-repeat;
    background-size: 9px;
}

.menu-mobile-dynamique li a {
    display: table-cell;
    width: 270px;
    vertical-align: middle;
    line-height: 18px;
    font-size: 15.2px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background-size: 8px;
    text-transform: uppercase;
    color: rgb(255, 255, 255);
    height: 60px;
    background-repeat: no-repeat;
    padding-left: 0;
    background-position: 6px 20.9px;
    text-decoration: none !important;
}

.menu-mobile-dynamique li.menu-item.devis a {
    background-image: none;
}

.menu-item.devis a {
    padding: 0px;
    text-align: left;
    padding: 0 20px;
}

.menu-mobile-dynamique ul {
    list-style: inside none none;
    padding-left: 0px;
}

.menu-mobile-dynamique ul li a {
    background: none;
    color: rgb(190, 190, 190);
}

.small-notification p {
    margin: 10px 13px;
    padding-bottom: 2px;
    line-height: 18px;
}

.text-input {
    overflow: hidden;
    position: relative;
    font-size: 11px;
    color: rgb(102, 102, 102);
    width: 230px;
    margin-left: 20px;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px;
    display: block;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgb(61, 61, 61);
}

#contactEmail {
    margin-bottom: -5px !important;
}

#contactMessage {
    display: none;
}

#contactName {
    display: none;
    margin-bottom: 10px;
}

#left_label_name {
    overflow: hidden;
    position: relative;
    display: none;
    text-align: left;
    margin-left: 200px;
    font-size: 11px;
    color: rgb(140, 140, 140);
    opacity: 0.3;
    margin-top: -20px;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

#name_label {
    overflow: hidden;
    position: relative;
    display: none;
    margin-top: 20px;
    margin-left: 20px;
    font-family: var(--font2),sans-serif;
    font-size: 12px;
    color: rgb(197, 197, 197);
}

#email_label {
    margin-top: 20px;
    margin-left: 20px;
    font-size: 12px;
    color: rgb(197, 197, 197);
    display: block;
    overflow: hidden;
    position: relative;
}

#left_label_mail {
    display: block;
    overflow: hidden;
    position: relative;
    line-height: 18px;
    text-align: left;
    margin-left: 200px;
    font-size: 11px;
    color: rgb(140, 140, 140);
    opacity: 0.3;
    font-family: "Open Sans", sans-serif;
    margin-top: -20px;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

.contact-button-house {
    line-height: 18px;
    margin-bottom: 20px;
    font-size: 11px;
    display: block;
    overflow: hidden;
    position: relative;
    outline: none;
}

.contactButton {
    display: block;
    overflow: hidden;
    position: relative;
    margin-left: 20px;
    margin-top: 30px;
    height: 36px;
    font-family: var(--font2),sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    width: 230px;
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgb(61, 61, 61);
}

.buttonWrap {
    min-width: 43%;
    padding: 10px !important;
}

.contactSubmitButton {
    margin-right: 4px;
    float: left;
    margin-bottom: 20px;
    display: block !important;
    height: 36px !important;
}

.contactNameField {
    padding-bottom: 5px;
    font-size: 12px;
}

.contactField {
    font-size: 15px;
    overflow: hidden;
    position: relative;
    color: rgb(255, 255, 255);
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px;
}

.contactTextarea {
    font-size: 15px;
    overflow: hidden;
    position: relative;
    color: rgb(255, 255, 255);
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    margin-bottom: 20px;
    line-height: 18px;
    height: 90px;
    padding: 9px 12px;
}

.menu-mobile-dynamique input {
    appearance: none;
    border-radius: 0px;
}

.sidebar-form {
    display: none;
    margin-left: 20px;
    width: 230px;
    box-sizing: border-box;
}

.sidebar-form2 {
    display: none;
}

.sidebar-form label {
    font-size: 13px;
    color: rgb(197, 197, 197);
    text-transform: uppercase;
    padding-top: 10px;
    display: block;
    opacity: 0.8;
    border-radius: 0px !important;
}

.sidebar-form label span {
    text-transform: lowercase;
    float: right;
    opacity: 0.5;
}

.sidebar-form input {
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgb(61, 61, 61);
}

.sidebar-form textarea {
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgb(61, 61, 61);
    margin-bottom: 0px;
}

.sidebar-send-button {
    font-size: 13px;
    display: block;
    width: 100%;
    color: rgb(210, 210, 210);
    font-family: var(--font2),sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}

.success-subscribe {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
}

.sidebar-form {
    margin-bottom: 0px !important;
    margin-top: -10px !important;
}

.sidebar-form .formSuccessMessageWrap {
    width: 230px;
    margin-top: 20px;
    margin-bottom: 0px;
}

.sidebar-form .small-notification {
    margin-top: 20px;
}

.sidebar-form #emailError {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0px;
    height: 36px;
}

.sidebar-form #emailError p {
    text-align: center;
    color: rgb(255, 129, 129);
    margin: 8px 0px;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0px;
}

.sidebar-form #emailError2 {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0px;
    height: 36px;
}

.sidebar-form #emailError2 p {
    text-align: center;
    color: rgb(255, 129, 129);
    margin: 8px 0px;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0px;
}

.subscribe-notification {
    margin-left: 20px;
    width: 230px !important;
    border-radius: 0px !important;
    margin-bottom: -15px !important;
    margin-top: 20px !important;
    background-image: none !important;
}

.subscribe-notification p {
    text-align: center;
    margin: 20px 0px 8px;
    display: block;
    text-transform: uppercase;
    padding-left: 0px;
    background-image: none !important;
    color: rgb(255, 129, 129) !important;
}

.formValidationError {
    margin-bottom: -15px;
}

.sidebar-form .formValidationError div {
    width: 230px;
    height: 36px;
    border-radius: 0px !important;
    margin-top: 20px !important;
}

.sidebar-form .formSubmitButtonErrorsWrap {
    margin-bottom: 20px;
    overflow: visible !important;
}

.sidebar-form .formValidationError p {
    text-align: center;
    margin: 8px 0px;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0px;
    color: rgb(255, 129, 129) !important;
}

.menu-mobile-dynamique label {
    display: block;
    overflow: hidden;
    position: relative;
    border: 0px;
    outline: none;
}

.red-notification {
    background-color: rgba(219, 84, 84, 0.5);
    border-radius: 5px;
    border: 1px solid rgb(247, 142, 30);
}

.formValidationError .red-notification p {
    background-image: none !important;
    display: block !important;
    padding-left: 0px !important;
    text-align: center !important;
}

.no-bottom {
    margin-bottom: 0px !important;
}

.menu-mobile-dynamique .sub-menu {
    display: none;
}

.remonter {
    position: fixed;
    z-index: 9995;
    display: none;
    bottom: 10px;
    right: 10px;
    width: 44px;
}

.remonter button {
    display: block;
    padding: 6px 10px 11px;
    text-align: center;
    border: 0px;
    background: rgba(0, 0, 0, 0.05);
    border-radius: 3px;
}

.remonter button img {
    filter: brightness(0) invert(1);
}

.remonter button:hover {
    opacity: 0.8;
}

.deprecated-ie {
    text-align: center;
    color: rgb(0, 0, 0);
    background: rgb(238, 238, 238);
}

.deprecated-ie p {
    line-height: 30px;
    margin: 0px;
}

.deprecated-ie a {
    line-height: 30px;
    font-family: Helvetica, arial, sans-serif;
    font-size: 13px;
    color: rgb(0, 0, 0);
    text-decoration: underline;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .lightboxOverlay {
        overflow: scroll;
    }

    .lightboxOverlay::-webkit-scrollbar {
        width: 0px;
    }
}

::after, ::before, * {
    box-sizing: border-box;
}

.swiper-navigation {
    display: none;
}

.livre-ligne {
    margin-top: 40px;
}

div#BlocFichier_0 {
    margin: 0px !important;
}

.slider-selection {
    background: var(--color1);
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
    background-color: var(--color2);
}

.page-contenu.page-contenu-home {
    height: 450px;
    position: relative;
}

.item-news {
    position: relative;
}

.news.newsList p.date_post, .item-news p.date_post time {
    position: absolute;
    top: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--color1);
    color: var(--color0);
    padding: 20px;
    margin: 0px;
    font-family: var(--font1);
}

.item-news p.date_post {
    padding: 0px;
}

.news.newsList p.date_post .s1, .item-news p.date_post time .s1 {
    font-size: 30px;
    font-family: var(--font1);
}

span.btn-partage {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.bande_contact_footer {
    padding: 4% 28%;
}

.map-top p {
    margin: 0px;
}

.telephone p {
    margin: 0px;
}

.btn-service {
    text-align: center;
}

.contact {
    position: sticky;
    top: 0px;
}

svg.icones {
    fill: var(--color0);
    width: 1.5rem;
    height: 1.5rem;
}

svg.icones.icone-share {
    display: none;
}

.flex-address {
    display: flex;
    /* justify-content: end; */
}

header .flex-address {
    /* justify-content: end; */
}

p.title_footer {
    color: var(--color0);
    font-family: var(--font1);
    padding: 2vh 0 0;
    font-size: calc(var(--taille_font) * 1.7);
}

.home-text {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5%;
}

.container {
    width: 1200px;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.hero-style .container {
    position: relative;
    padding: 0px 10%;
}

.hero-slider {
    width: 100%;
    height: 700px;
    display: flex;
    position: relative;
    z-index: 0;
}

@media (max-width: 991px) {
    section.section-2, .realisations {
        padding: 3% 6%;
    }.scrollbar-content {
    padding: 0px 0 0px 0px;
    float: none !important;
}.AvisClientsBg .row.flex {
    display: block;
    align-items: center;
    width: 100%;
    flex-wrap: nowrap;
    justify-content: space-evenly;
    flex-direction: column;
}.description-iframe {
    width: 100%;
    }
    .confianceBoxes{
        flex-direction: column;
    }
    .confianceBox:first-child img, .confianceBox img ,.confianceBox:last-child img{
        height: 100px;
        width: 180px;
    }
    .row.accueil {
    display: flex;
    flex-direction: column;
}.encart-counter {
    min-height: 141px;
    background: #b38c5d2e;
    margin: 0 0 1vh;
    display: flex;
    gap: 0;
    width: 100%;
}
    a.bouton-principal, .bouton-principal {
    width: 100%;}
        .AvisClientsBg .row.flex .text-right {
    float: left;
    width: 100%;
    position: relative;
}section.counter.reveal {
    padding: 10vh 0vw 6vh;
    position: relative;
    width: 100%;
    background: transparent;
    z-index: 1000;
}
.compteurs {
    display: flex
;
    justify-content: space-between;
    flex-direction: column;
}
.photo-accueil .photo-one {
    min-height: 35vh;
}

.encart-counter span, .encart-counter small {
    font-size: 101%;
    margin: 0 3%;
}

.encart-counter::before {
    display: none;
}

.stats-num.count {
 font-size: clamp(4rem, 5vw, 6rem);
 }
.corps .page-contenu h2:first-of-type, .corps .gallery h2:first-of-type, .corps .seo-content h2:first-of-type, .corps .newsItem h2:first-of-type {
    position: relative;
    padding: 2vh 1vw;
    font-size: 18px;
    line-height: 1.1;
    border: none;
    font-weight: 700;
    z-index: 1;
    margin-top: 0px;
    color: var(--color0);
    text-align: left;
}
    .atouts {
        padding-top: 10%;
    }

    .bande_contact_footer {
        padding: 4% 5%;
    }

    .tete {
        display: none;
    }

    .chiffres-items {
        flex-direction: column;
        gap: 15px;
    }

    .chiffres-item {
        width: 100%;
    }

    .contact .formulaire input.btn-primary {
        top: 0px;
    }

    .stats {
        flex-wrap: wrap;
    }

    .stats .item p {
        white-space: normal;
    }

    .stats .item {
        width: 45%;
        border: 1px solid rgba(0, 0, 0, 0.14);
    }

    .service-image {
        height: 400px;
    }

    .hero-slider {
        height: 600px;
    }
}

.hero-slider .swiper-slide {
    overflow: hidden;
    color: rgb(255, 255, 255);
    position: relative;
    left: 0px;
    width: 100% !important;
}

.hero-slider .swiper-container {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
}

.hero-slider .slide-inner {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 1;
    background-size: cover;
    background-position: center center;
    display: flex;
    text-align: left;
    align-items: center;
}

.slide-inner.slide-bg-image .container {
    width: 75% !important;
    z-index: 2;
}

.hero-slider .slide-inner::before {
    content: "";
    position: absolute;
    inset: 0px;
    background: linear-gradient(black, transparent);
    z-index: 1;
}

.hero-slider .swiper-button-prev, .hero-slider .swiper-button-next {
    background: transparent;
    width: 55px;
    height: 55px;
    line-height: 53px;
    margin-top: -30px;
    text-align: center;
    border: 2px solid rgb(212, 211, 211);
    border-radius: 55px;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}

.hero-slider:hover .swiper-button-prev, .hero-slider:hover .swiper-button-next {
    transform: translateX(0px);
    opacity: 1;
    visibility: visible;
}

@media (max-width: 767px) {
    .body-catalogue-item .formulaire h2, .pied .formulaire h2, h1, .h1 {
        font-size: 20px;
    }

    section.section-2 {
        padding-top: 15%;
    }

    .description-services {
        flex-wrap: wrap;
    }

    .hero-slider .swiper-button-prev, .hero-slider .swiper-button-next {
        display: none;
    }
}

.hero-slider .swiper-button-prev {
    left: 25px;
    transform: translateX(50px);
}

.hero-slider .swiper-button-prev::before {
    font-family: "Font Awesome 5 Free";
    content: "";
    font-size: 15px;
    color: rgb(212, 211, 211);
    font-style: normal;
    display: inline-block;
    vertical-align: middle;
    font-weight: 900;
}

.hero-slider .swiper-button-next {
    right: 25px;
    transform: translateX(-50px);
}

.hero-slider .swiper-button-next::before {
    font-family: "Font Awesome 5 Free";
    content: "";
    font-size: 15px;
    color: rgb(212, 211, 211);
    font-style: normal;
    display: inline-block;
    vertical-align: middle;
    font-weight: 900;
}

.hero-slider .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    text-align: left;
    line-height: 12px;
    font-size: 12px;
    color: rgb(0, 0, 0);
    opacity: 0.3;
    background: rgb(255, 255, 255);
    transition: 0.2s;
}

.hero-style .slide-text p {
    font-size: calc(var(--taille_font) * 3.4);
    font-family: var(--font1);
    line-height: 1.25;
    color: rgb(255, 255, 255);
    margin: 0px 0px 25px;
    transition: 0.4s;
    text-align: left;
    text-wrap: balance;
    letter-spacing: 0px;
    text-transform: uppercase;
}
.hero-slider .swiper-pagination-bullet-active {
    opacity: 1;
}

.hero-slider .swiper-container-horizontal > .swiper-pagination-bullets, .hero-slider .swiper-pagination-custom, .hero-slider .swiper-pagination-fraction {
    bottom: 30px;
}

@media screen and (min-width: 992px) {
    .hero-slider .swiper-container-horizontal > .swiper-pagination-bullets, .hero-slider .swiper-pagination-custom, .hero-slider .swiper-pagination-fraction {
    }
}

.swiper-pagination {
    text-align: left;
}

.hero-slider .swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 50px;
    max-width: 1200px;
    padding: 0px 15px;
    margin: 0px auto;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}

@media (min-width: 767px) {
    .hero-slider .swiper-container-horizontal > .swiper-pagination-bullets {
        bottom: 30px;
    }
}

.hero-style {
    height: 100vh;
    transition: 0.4s;
}

@media (max-width: 991px) {
    .hero-style {
        height: 600px;
    }
}

@media (max-width: 767px) {
    .stats .item p {
        white-space: normal;
    }

    .hero-style {
        height: 500px;
    }
}

@media screen and (min-width: 992px) {
    .hero-style .container {
        padding-top: 118px;
        margin: inherit;
    }
}

.hero-style .slide-title .div {
    font-size: calc(var(--taille_font) *1.2);
    color: rgb(255, 255, 255);
    margin: 0px;
    transition: 0.4s;
    text-wrap: balance;
    text-align: left;
    font-family: var(--font2);
    text-transform: uppercase;
}
@media (max-width: 1599px){
    .hero-style .slide-text p{
        
        font-size: calc(var(--taille_font) * 2.4);
    }
    .atout ,.nos-service{
        padding: 7vh 5% 10vh;
    }

.fluid-contenu .corps {
    padding: 4em 5% 5em;
}

.atout.confiance ,.AvisClientsBg {
    padding: 8vh 5% 9vh;
}

.AvisClientsBg .contenu, .realisations .contenu {
    padding: 0;
}

.actualites {
    padding: 3vh 5% 6vh;
}

.intervention {
    padding: 15vh  5%;
}

.pied .bande1 {
    padding: 2em 5% 3em;
}

p.title_footer {
    font-size: 25px;
}

.pied .bande2 {
    padding: 1px 5%;
}
    .row.relative.header, .row.relative.header1 ,.tete.fixed .row.relative {
        padding: 1vh 3vw;
    }
    .body-catalogue-item .formulaire h2, .pied .formulaire h2, h1, .h1{
        
font-size: calc(var(--taille_font) * 1.5);
    }
}
@media (max-width: 1199px) {
    .hero-style .slide-title h2 {
        font-size: 75px;
    }
}

@media (max-width: 991px) {
    .hero-style .slide-title h2 {
        font-size: 50px;
        margin: 0px 0px 5px;
    }
}

@media (max-width: 767px) {
    .hero-style .slide-title h2 {
        font-size: 25px;
        margin: 0px 0px 5px;
        line-height: 30px;
    }
}


@media (max-width: 767px) {
    .hero-style .slide-text p {
        font-weight: normal;
        margin: 0px 0px 30px;
        font-size: 20px;
    }
}

.hero-style .slide-btns > a:first-child {
    margin-right: 10px;
}

.theme-btn, .theme-btn-s2 {
    background-color: rgb(255, 255, 255);
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    color: rgb(43, 59, 149);
    padding: 9px 32px;
    border: 0px;
    border-radius: 3px;
    text-transform: uppercase;
    display: inline-block;
    line-height: initial;
    transition: 0.4s;
}

a {
    text-decoration: none;
    transition: 0.2s;
}

.theme-btn-s2 {
    background-color: rgba(255, 255, 255, 0.9);
    color: rgb(19, 30, 74);
}

.theme-btn:hover, .theme-btn-s2:hover, .theme-btn:focus, .theme-btn-s2:focus, .theme-btn:active, .theme-btn-s2:active {
    background-color: rgb(43, 59, 149);
    color: rgb(255, 255, 255);
}

.theme-btn-s3 {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    color: rgb(255, 255, 255);
    text-transform: uppercase;
}

i.fa-chevron-circle-right {
    height: 22px;
    width: 22px;
}

a:hover {
    text-decoration: none;
    color: var(--color0);
}

@media (max-width: 991px) {
    .theme-btn, .theme-btn-s2, .theme-btn-s3 {
        font-size: 13px;
        padding: 15px 25px;
    }
}

@media (max-width: 767px) {
    .theme-btn, .theme-btn-s2 {
        padding: 13px 20px;
        font-size: 13px;
    }
}

.cta p.tel-header.bouton-principal.hvr-shutter-out-horizontal a {
    color: var(--color0);
    text-align: center;
}

.cta {
    display: flex;
    flex-wrap: wrap;
    place-content: space-around flex-start;
    align-items: stretch;
    column-gap: 10px;
    height: 100%;
    margin: 1em 0px 0px;
    justify-content: center;
}

.body-page-1 .cta {
    justify-content: start;
}

.cta a.bouton-principal::after {
    display: none;
}

.cta p.tel-header.bouton-principal.hvr-shutter-out-horizontal {
    text-align: left;
    font-family: var(--font2);
    color: var(--color0);
    text-decoration: none;
    margin: 0px;
    display: inline-grid;
    text-transform: inherit;
    overflow: hidden;
    place-content: center;
    align-items: center;
    font-size: 16px;
    background: var(--color2);
    letter-spacing: 1px;
    padding: 10px 20px;
    transition: 0.3s linear;
    border-radius: var(--radius);
    min-width: 210px;
    border: 1px solid var(--color2);
}

.cta p.tel-header.bouton-principal.hvr-shutter-out-horizontal:hover {
    color: var(--color0);
    background: var(--color1);
    border-color: var(--color1);
}

.cta p.tel-header.bouton-principal.hvr-shutter-out-horizontal span {
    font-size: 100%;
    text-align: center;
    min-width: auto;
}

header a.bouton-principal::before {
    background: red;
}

.cta a.bouton-principal:hover, button.bouton-principal:hover, .cta .tel-header:hover {
    background: var(--color1);
    border-color: var(--color1);
    opacity: 0.8;
}

.cta a.bouton-principal {
    background: transparent;
    border: 1px solid var(--color0);
    backdrop-filter: blur(10px);
    font-size: 16px;
}

.cta a.bouton-principal i ,.tab-coordonnes i{
    margin-right: 9px;
    font-size: 23px;
}

@media (max-width: 991px) {
    .remonter {
        display: none !important;
    }

    .centerservice2 {
        margin: 0px !important;
    }

    .centerservice {
        margin: 0px 25% !important;
    }

    .hero-style .slide-title .div {
        font-size: 15px;
        text-align: left;
    }

    .AvisClientsBg .contenu, .realisations .contenu {
        padding: 0px 15px 20px;
    }

    .container {
        max-width: none;
        width: auto;
    }

    .slide-inner.slide-bg-image .container {
        width: 100% !important;
        padding: 0 2%;
    }

    .sloganAcc {
        top: 50px;
        position: relative;
    }
.cta.hidden-sm.hidden-xs {
    display: none;
}
    .fluid-contenu .corps {
        padding: 3em 1%;
    }

    .gallery .description-galerie {
        padding: 0px 5% 40px;
    }

    .slogan {
        top: -260px;
    }

    .row.r-flex {
        display: flex;
        flex-direction: column;
    }

    .r-flex .row.recup-photos.gallery {
        display: none;
    }

    .row.r-flex article {
        padding: 0px;
    }

    .services-container.services-flex {
        display: flex;
        flex-wrap: wrap;
    }

    .services-container.services-flex .service-item .service-desc h2 {
        font-size: 18px;
    }

    .services-container.services-flex .service-item .service-desc a {
        font-size: 12px;
    }

    .services-container.services-flex .service-item .service-desc {
        padding: 20px 10px;
    }

    .services-container.services-flex .service-item {
        width: 100%;
        height: 260px;
    }

    .r-img {
        display: none;
    }

    .r-text {
        width: 100%;
    }

    .realisations .row.recup-photos.gallery {
        padding: 0px;
        display: grid;
        grid-template: "item1 item2" 150px "item3 item4" 150px / 1fr 1fr;
        gap: 10px;
    }

    .div-parts::before {
        & disp .contact .formulaire .form-group .col-md-4 {
            width: 100% !important;
        }

        & .contact .formulaire .form-group input.btn-primary {
            margin-top: 8px;
        }

        & .contact .formulaire .form-group .col-md-8 {
            width: 100% !important;
        }

        & .contact .formulaire .form-group input[name="captcha"] {
            width: 100% !important;
            margin-right: 0% !important;
            text-align: left !important;
        }

        & .contact .formulaire .form-group input[name="captcha"] + a {
            position: absolute;
            width: 140px;
            top: 0px;
            right: 0px;
            margin-right: 0px !important;
        }

        & .contact .formulaire .form-group .form-control {
            font-size: 12px;
        }

        & .contact .formulaire .form-group .checkbox {
            font-weight: normal;
            font-size: 12px;
        }

        & .contact .formulaire .form-group .checkbox .col-md-8 {
            margin-top: 2px;
        }

        & .lb-prev {
            background: url("../images/lightbox-g.png") left 48% no-repeat;
            opacity: 1 !important;
        }

        & .lb-next {
            background: url("../images/lightbox-d.png") right 48% no-repeat;
            opacity: 1 !important;
        }

        & .video-accueil {
            position: static;
            width: 100%;
            height: auto;
            margin-left: 0px;
        }

        & .banniere {
            height: 40vh;
            position: relative;
        }

        & .fluid-contenu {
            margin: 0px !important;
        }

        & .slogan {
            width: 100%;
            left: 0%;
            padding: 0px 30px;
            text-align: left;
            top: -130px;
        }

        & .miettes {
            bottom: 0px;
        }

        & .masque-noir {
            top: 0px;
        }

        & .body-page-1 .slogan {
            top: -200px;
        }

        & .slogan .titre {
            font-size: 32px;
            line-height: 30px;
        }

        & .slogan .titre span {
            font-size: 29px;
        }

        & .slogan .sous-titre {
            font-size: 20px;
            line-height: 20px;
        }

        & .cat-produit .btn-partage {
            position: static;
            padding: 10px 0px 0px;
        }

        & .cat-liste #filtres {
            padding: 20px 0px;
        }

        & .zone-favoris {
            top: 50px;
            position: absolute;
        }

        & .body-page-1 .slogan {
            top: -200px;
            text-align: center;
            width: 100%;
            left: 0px;
            padding: 0px 90px;
        }

        & .slogan .titre {
            font-size: 32px;
            line-height: 30px;
        }

        & .intervention {
            height: auto;
            padding: 5em 5% 4em;
        }

        & .intervention .zone {
        }

        & .fluid-consultation h3 {
            font-size: 50px;
        }

        & .pied .bande1 {
            padding: 60px 9% 9%;
        }

        & .gallery .description-galerie {
            padding: 0px 0px 40px;
            text-align: justify;
        }

        & .cat-produit .btn-envie a {
            padding: 15px 30px 12px 75px;
            text-align: left;
        }

        & .cat-produit .cont-miniatures .suivant-miniatures, & .cat-produit .cont-miniatures .precedent-miniatures {
            display: block;
        }

        & .fluid-contenu .corps {
            padding: 5em 5%;
        }

        & .cat-produit .cont-miniatures {
            display: none;
        }

        & .cat-produit .controlsthumb {
            display: block !important;
        }

        & .flex-seoContain {
            flex-wrap: wrap;
            grid-template-columns: 1fr;
            gap: 10px;
        }

        & .flex-seoContain .seo-content {
            width: 100%;
            background: transparent;
        }

        & .flex-seoContain .seo-form {
            width: 100%;
        }

        & .img-seo img {
            width: 100%;
            height: auto;
        }

        & .bande_contact_footer .row1 {
            padding: 5rem 11%;
        }

        & .contact .tab-formulaire {
            padding: 0px;
        }

        & .livre-elements {
            padding: 0px;
        }

        & a.img-seo.imagecont.noflicker.img1 {
            float: inherit;
            margin-left: 0px;
            margin-bottom: 15px;
            display: block;
        }
    }

    .actualites .cell.photo a {
        display: block;
    }

    .actualites .cell.photo.cover img {
        object-fit: cover;
        min-width: 100%;
        min-height: 100%;
        width: auto;
        flex: 1 1 0%;
        height: 100%;
    }

    .actualites {
        display: table;
        width: 100%;
        position: relative;
        z-index: 8000;
        padding: 6em 10%;
    }

    .actualites article {
        display: table;
        width: 100%;
    }

    .actualites .cell.photo {
        display: table-cell;
        vertical-align: top;
        width: 50%;
        background-position: center center;
        border-radius: var(--radius);
    }

    .actualites .cell.photo:hover {
        opacity: 0.95;
    }

    .actualites .cell.texte {
        display: table-cell;
        vertical-align: top;
        width: 50%;
        border-bottom: 2px solid var(--color0);
    }

    .actualites:last-child .cell.texte {
        border-bottom: none;
    }

    .actualites .cell.texte .contenu {
        padding: 3em 10%;
        text-align: justify;
        direction: ltr;
    }

    .actualites .cell.texte .contenu ul {
        padding: 0px;
        margin: 0px;
    }

    .actualites .cell.texte .contenu ul li {
        padding: 5px 0px 5px 20px;
        background: url("../images/puce.svg") 0px 9px no-repeat;
    }

    .actualites .cell.texte .contenu ul li .bouton-principal {
        display: block;
    }

    .view-btn-all {
        position: relative;
        display: table;
        margin: 20px auto;
    }

    .view-btn-all i {
        margin-left: 8px;
        font-size: 14px;
    }

    .actualites .date_post, .news .date-article {
        font-size: 12px;
        font-weight: 700;
    }

    .actualites .date_post .s1 {
    }

    .news .ligne-actus .date-article {
        margin-top: 18px;
        margin-bottom: 0px;
    }

    .news .ligne-actus .contenu-article {
        margin-top: 0px;
    }

    .news .contenu-article {
        margin-top: 21px;
    }

    .AvisClientsBg {
        position: relative;
        z-index: 8000;
        text-align: center;
        padding: 5% 10%;
    }

    .AvisClientsBg .bx-prev {
        left: -6vw;
    }

    @media (max-width: 767px) {
        .bande_contact_footer .row1 {
            padding: 5rem 0%;
        }

        .base-container {
            padding-top: 15%;
        }

        .atouts {
            padding: 4em 5% 5%;
        }
h2.atout-item__title {
    font-size: 17px;
}
        .atout-item {
            padding: 20px;
            background: transparent;
            flex-direction: column;
            align-items: center;
            text-align: center;
        }

        .atout-item i {
            font-size: 45px;
        }

        .actualites article {
            display: flex;
            flex-direction: column;
        }

        .actualites .cell.photo {
            width: 100%;
            height: 400px;
            position: relative;
        }

        .actualites .cell.texte {
            width: 100%;
            padding-top: 14%;
        }

        .actualites .cell.texte .contenu {
            padding: 5% 0px;
        }

        .actualites {
            padding: 5%;
        }

        .realisations .row.recup-photos.gallery {
            grid-template: "item1 item2" 100px "item3 item4" 100px / 1fr 1fr;
            gap: 10px;
        }

        .realisations .row.recup-photos.gallery .col-md-3 {
            padding: 0px;
            margin: 0px;
        }

        .stats .item {
            width: 100%;
            border: 1px solid rgba(0, 0, 0, 0.19);
        }

        .home-text {
            grid-template-columns: 1fr;
        }

        .hero-slider {
            height: 250px;
        }
    }

    .AvisClientsBg .bx-prev::before {
        display: inline-block;
        content: "";
        font-weight: 700;
        font-family: "Font Awesome 5 Free";
        font-size: 23px;
        color: var(--color0);
    }

    .AvisClientsBg .bx-next {
        right: -6vw;
    }

    .AvisClientsBg .bx-next::before {
        display: inline-block;
        content: "";
        font-weight: 700;
        font-family: "Font Awesome 5 Free";
        font-size: 23px;
        color: var(--color0);
    }

    .AvisClientsBg .bx-next, .AvisClientsBg .bx-prev {
        text-indent: initial;
        font-size: 0px;
        display: flex;
        align-items: center;
        text-decoration: none;
        margin-top: -55px;
        justify-content: center;
        opacity: 0.6;
        transition: 0.5s;
    }

    .AvisClientsBg .bx-next:hover, .AvisClientsBg .bx-prev:hover {
        opacity: 1;
    }

    .AvisClientsBg .contenu .bx-viewport {
        padding: 28px 0px 45px;
        display: block;
        height: auto !important;
    }

    .AvisClientsBg.bg-optionnel-gris .h1 {
        color: var(--color0);
    }

    .etoiles .fa {
        color: rgb(255, 204, 0);
    }

    .AvisClientsList {
        margin: 0px;
        padding: 0px;
    }

    .AvisClientsList li {
        list-style: none;
        background: 0px 0px;
    }

    .AvisClientsList li::before {
        content: none;
    }

    .avisClientsBg .h {
        text-align: center;
    }

    .AvisClients, .AvisClients:link, .AvisClients:visited {
        position: relative;
        padding: 2rem 9% 3rem;
        text-align: center;
        margin-top: 5vh;
        display: block;
        text-decoration: none;
    }

    .AvisClients:active, .AvisClients:hover {
        border-color: #ffffff3b;
    }

    .AvisClients .h {
        font-size: 21px;
        color: var(--color2);
        text-align: left;
        text-transform: uppercase;
        font-weight: 600;
        margin-bottom: 0px;
    }

    .AvisClients p {
        font-size: 15px;
        margin-bottom: 0px;
        padding-top: 15px;
    }

    .AvisClients .blazy {
        font-size: 16px;
        color: var(--color0);
        width: 128px;
        margin: 0px auto 20px -64px;
        border-radius: 50%;
        position: absolute;
        top: -70px;
        left: 50%;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-color: var(--color0);
    }

    .AvisClientsBg .bx-pager {
        bottom: 17px;
    }

    .avisContent::before {
        content: "«";
        display: inline-block;
        margin-right: 5px;
    }

    .avisContent::after {
        content: "»";
        display: inline-block;
        margin-left: 5px;
    }

    .temoignageScroll {
        max-height: 179px;
        text-align: left;
        overflow: hidden;
    }

    .temoignageScroll .scrollbar-content {
        padding: 0px 10px 0px 0px;
        width: 100%;
    }

    .temoignageScroll .scrollbar-path-vertical {
        right: 0px;
    }

    .date_post {
        font-size: 15px;
        padding: 4px 0px;
    }

    .date_post i {
        margin-right: 8px;
    }

    .AvisClientsBg .bx-controls.bx-has-pager {
        display: block;
        position: relative;
        height: 70px;
    }

    .livre-elements {
        padding: 0%;
        margin-bottom: 40px;
        text-align: center;
    }

    .livre-elements .livre-ligne {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        justify-content: space-between;
    }

    .livre-elements .blazy {
        margin: 0px auto 10px;
        border-radius: 50%;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-color: var(--color0);
        width: 115px;
        height: 115px;
    }

    .livre-elements .pseudo {
        margin-bottom: 6px;
        font-size: 21px;
        color: var(--color2);
        text-align: center;
        text-transform: uppercase;
        font-weight: 600;
    }

    .livre-elements .date {
        margin-bottom: 2px !important;
        color: var(--color2);
    }

    .livre-elements .etoiles {
        margin-bottom: 0px !important;
    }

    .livre-elements .temoignage {
        text-align: center;
        display: block;
        margin-top: 20px;
    }

    .livre-elements .temoignage::before {
        content: "«";
        display: inline-block;
        margin-right: 5px;
    }

    .livre-elements .temoignage::after {
        content: "»";
        display: inline-block;
        margin-left: 5px;
    }

    .divAvis {
        padding: 25px 27px;
        margin-bottom: 3rem;
        background-color: var(--bg-facultatif);
        border-radius: var(--border-radius);
        width: 48%;
        border: 1px solid rgb(213, 213, 213);
    }

    .btn-avis {
        margin-bottom: 30px;
        padding: 12px 20px;
        border: transparent;
        color: var(--color0);
        font-size: 15px;
        letter-spacing: 1px;
        transition: 0.3s linear;
    }

    @media (max-width: 767px) {
        .pad-xs {
            padding-left: 15px !important;
            padding-right: 15px !important;
        }

        .actualites .cell.photo {
            height: 200px;
        }

        .AvisClientsBg {
            padding: 5%;
        }

        .actualites a.bouton-principal {
            margin-bottom: 5px;
        }

        .tete {
            display: none;
        }

        .centerservice2 {
            margin: 0px !important;
        }

        .centerservice {
            margin: 0px !important;
        }

        .pad-xs-l {
            padding-left: 15px !important;
        }

        .pad-xs-r {
            padding-right: 15px !important;
        }

        .nopad-xs {
            padding-left: 0px !important;
            padding-right: 0px !important;
        }

        .nopad-xs-l {
            padding-left: 0px !important;
        }

        .nopad-xs-r {
            padding-right: 0px !important;
        }

        h1, .h1 {
            font-size: 20px;
            line-height: 1.2;
        }

        .atout-item-AT {
            height: 320px;
            width: 100%;
            background: #3b2f2587;
            padding: 16px 0;
        }

        .titre-secondaire {
            font-size: 16px;
            line-height: 24px;
        }

        .prestation .h1 {
            font-size: 18px;
        }

        .body-page-1 .slogan {
            position: static;
            background: var(--color1);
            width: 100%;
            text-align: center;
            padding: 15px;
        }

        .slogan .titre {
            font-size: 23px;
            line-height: 24px;
        }

        .banniere {
            height: 20vh;
            background-position: center center !important;
        }

        .slogan {
            top: -80px;
        }

        .slogan .titre span {
            font-size: 23px;
        }

        .slogan .sous-titre {
            font-size: 17px;
            line-height: 17px;
        }

        .fluid-contenu .corps {
            padding: 7% 5% 5%;
        }

        .body-gallery-4 .fluid-contenu .corps, .body-contact .fluid-contenu .corps {
        }

        .body-contact.body-contact-132 .fluid-contenu .corps {
            padding: 0px 15px;
        }

        .page-contenu, .intervention .description, .page-contenu.page-contenu-home {
            height: auto;
        }

        .recup-photos .col-md-4 {
            padding-left: 5px !important;
            padding-right: 5px !important;
        }

        .recup-photos {
            margin-left: -5px !important;
            margin-right: -5px !important;
        }

        .recup-photos .propor {
            margin-bottom: 5px;
        }

        .certifs {
            display: block;
        }

        .certifs h2 {
            margin-bottom: -10px;
        }

        .certifs .cell.gauche {
            display: block;
            width: 100%;
        }

        .certifs .cell.gauche .contenu {
            padding: 30px 15px 40px;
        }

        .certifs .cell.droite {
            display: block;
            width: 100%;
            border-top: 2px solid rgb(230, 230, 230);
        }

        .certifs .cell.droite .logo-certif {
            padding: 0px 15px;
            height: 130px;
            line-height: 130px;
        }

        .certifs .cell.droite .logo-certif img {
            max-height: 80%;
        }

        .services {
            display: block;
        }

        .services .cell.gauche {
            display: block;
            width: 100%;
            height: 180px;
        }

        .services .cell.droite {
            display: block;
            width: 100%;
        }

        .services .cell.droite .contenu {
            padding: 30px 15px 40px;
        }

        .realisations {
            display: block;
        }

        .intervention {
        display: block;
        }

        .realisations .titre-secondaire {
            display: inline-block;
            width: 100%;
        }

        .realisations .col-md-3 {
            padding-left: 5px !important;
            padding-right: 5px !important;
        }

        .realisations {
            padding: 15% 5% 5%;
        }

        .realisations .propor {
            margin-bottom: 5px;
        }

        .realisations .contenu {
        }

        .description-flex {
        display: block;
        }

        .intervention .zone {
        }

        .intervention .description {
            width: 100%;
        }

        .pied .bande1 {
            padding: 30px 20px 30px 30px;
        }

        .pied .btn-like {
            padding: 0px 0px 15px;
            text-align: center;
        }

        .pied .btn-partage {
            text-align: center;
            padding: 20px 0px 0px;
            justify-content: center;
        }

        .pied .copyright-footer {
            text-align: center;
        }

        .contact .tab-coordonnes {
            display: block;
        }

        .contact .tab-coordonnes .cell.gauche {
            display: block;
            width: 100%;
            border: none;
        }

        .contact .tab-coordonnes .cell.gauche .contenu {
            padding: 0px 15px 30px;
        }

        .contact .tab-coordonnes .cell.centre {
            display: block;
            width: 100%;
        }

        .contact .tab-formulaire {
            display: block;
        }

        .contact .tab-formulaire .cell.gauche {
            display: none;
        }

        .contact .tab-formulaire .cell.droite {
            display: block;
            width: 100%;
            border-bottom: 2px solid rgb(230, 230, 230);
        }

        .contact .tab-formulaire .cell.droite .contenu {
            padding: 2% 8%;
        }

        .contact .plan .block #googlemapapi, .contact .plan iframe {
            height: 250px !important;
        }

        .contact .coordonnees {
            padding: 0px;
        }

        .prestation {
        }

        .prestation .cell.photo {
            display: block;
            width: 100%;
            height: 180px;
        }

        .prestation .cell.texte {
            display: block;
            width: 100%;
        }

        .prestation .cell.texte .contenu {
            padding: 15% 15px 30px;
        }

        .mentions .mention, .saluuut .item .prix-item div.ancien {
            font-size: 14px;
        }

        .saluuut .item .prix-item {
            font-size: 25px;
        }

        .gallery .description-galerie {
            padding: 0px 0px 20px;
        }

        .body-gallery-4 .gallery .description-galerie {
            padding: 0px 15px 20px;
        }

        .gallery .ligne-photos .col-md-1, .gallery .ligne-photos .col-md-2, .gallery .ligne-photos .col-md-3, .gallery .ligne-photos .col-md-4, .gallery .ligne-photos .col-md-6 {
            padding-left: 5px !important;
            padding-right: 5px !important;
        }

        .gallery .ligne-photos {
            margin-left: -5px !important;
            margin-right: -5px !important;
        }

        .gallery .ligne-photos .propor {
            margin-bottom: 10px;
        }

        .gallery .nav {
            margin: 15px;
        }

        .gallery .nav li {
            padding: 0px 10px;
            display: block;
            background: rgb(247, 247, 247);
            margin-bottom: 5px;
        }

        .gallery .nav li:last-child {
            background: rgb(247, 247, 247);
        }

        .gallery .nav li a {
            padding: 8px 10px;
        }

        .gallery .tab-content {
            padding-top: 0px;
        }

        .fluid-consultation {
            height: 450px;
        }

        .fluid-consultation h3 {
            font-size: 25px;
        }

        .fil-arianne {
            font-size: 17px;
        }
    }

    @media (min-width: 768px) and (max-width: 991px) {
        .pad-sm {
            padding-left: 15px !important;
            padding-right: 15px !important;
        }

        .contact.pageDevis .formulaire .hvr-shutter-out-horizontal {
            top: -57px;
        }

        .pad-sm-l {
            padding-left: 15px !important;
        }

        .pad-sm-r {
            padding-right: 15px !important;
        }

        .nopad-sm {
            padding-left: 0px !important;
            padding-right: 0px !important;
        }

        .nopad-sm-l {
            padding-left: 0px !important;
        }

        .nopad-sm-r {
            padding-right: 0px !important;
        }

        h1, .h1 {
            font-size: 26px;
            line-height: 26px;
        }

        .titre-secondaire {
            font-size: 23px;
            line-height: 24px;
        }

        .intervention .zone {
        }

        .scrollbars {
            height: 240px;
        }

        .contact .tab-coordonnes .cell.droite {
            display: none;
        }

        .body-gallery-4 .fluid-contenu .corps, .body-contact .fluid-contenu .corps {
            padding: 8% 0px 0px;
        }

        .body-contact.body-contact-132 .fluid-contenu .corps {
            padding: 0px;
        }

        .prestation .cell.texte .contenu {
            padding: 40px 8%;
        }

        .body-contact .corps h2::before {
            display: none;
        }
    }

    @media (min-width: 991px) and (max-width: 1199px) {
        .remonter {
            display: none !important;
        }

        .hero-style .slide-title h2 {
            font-size: 40px;
        }

        .stats {
            flex-wrap: wrap;
        }

        .stats .item {
            border: 1px solid rgb(213, 213, 213);
        }

        .tete .infos {
            height: auto;
            padding: 7px 30px;
        }

        .btn-descendre {
            top: -165px;
        }

        .slogan {
            width: 39%;
            top: -125px;
        }

        .body-page-1 .slogan {
            top: -170px;
        }

        .slogan .titre {
            font-size: 32px;
            line-height: 30px;
        }

        .slogan .titre span {
            font-size: 29px;
        }

        .slogan .sous-titre {
            font-size: 20px;
            line-height: 20px;
        }

        .services a.bouton-principal {
            font-size: 11px;
        }

        .intervention .zone {
            width: 402px;
            height: 230px;
            top: 19%;
            background-size: contain;
        }

        .body-error404 a.btn.btn-default, .contact .formulaire input.btn-primary, .contact a.btn.btn-default {
            padding: 16px 20px;
            font-size: 12px;
        }

        .contact .coordonnees {
            padding: 0px;
        }

        .navh .menu_principal a, .navh .menu_principal a:visited {
            font-size: 12px;
            padding: 35px 12px 35px 5px;
        }

        .logo-demepool {
            width: 75%;
        }

        .body-contact .corps h2::before {
            display: none;
        }

        .cat-produit .btn-partage {
            position: static;
            padding: 10px 0px 0px;
        }
    }

    @media (min-width: 1200px) {
    }

    .infinite-scroll {
        padding: 0px 0px 50px;
        position: relative;
    }

    .infinite-scroll .btn, .infinite-scroll .btn:focus {
        border: 3px solid rgb(0, 0, 0);
        background: rgb(255, 255, 255);
        padding: 11px 20px;
        text-decoration: none;
        color: rgb(0, 0, 0);
        border-radius: 0px;
        text-transform: uppercase;
        font-family: var(--font2);
        transition: 400ms;
    }

    .infinite-scroll .btn:hover {
        background: rgb(0, 0, 0);
        color: rgb(255, 255, 255);
        border: 3px solid rgb(0, 0, 0);
    }

    .infinite-scroll .chargement {
        display: none;
        background: url("../images/chargement.gif") center top no-repeat;
        height: 32px;
        width: 32px;
        position: absolute;
        bottom: 0px;
        left: 50%;
        margin-left: -16px;
    }

    #pageLoader {
        position: fixed;
        inset: 0px;
        z-index: 99999;
        background-image: url("../images/pageLoader.gif");
        background-repeat: no-repeat;
        background-position: 50% 0px;
        background-color: rgba(255, 255, 255, 0.95);
    }

    .sk-circle {
        margin: -25px auto 0px -25px;
        width: 50px;
        height: 50px;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: scale(1.2);
    }

    .sk-circle .sk-child {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0px;
        top: 0px;
    }

    .sk-circle .sk-child::before {
        content: "";
        display: block;
        margin: 0px auto;
        width: 15%;
        height: 15%;
        background-color: var(--color1);
        border-radius: 100%;
        animation: 1.2s ease-in-out 0s infinite normal both running sk-circleBounceDelay;
    }

    .sk-circle .sk-circle2 {
        transform: rotate(30deg);
    }

    .sk-circle .sk-circle3 {
        transform: rotate(60deg);
    }

    .sk-circle .sk-circle4 {
        transform: rotate(90deg);
    }

    .sk-circle .sk-circle5 {
        transform: rotate(120deg);
    }

    .sk-circle .sk-circle6 {
        transform: rotate(150deg);
    }

    .sk-circle .sk-circle7 {
        transform: rotate(180deg);
    }

    .sk-circle .sk-circle8 {
        transform: rotate(210deg);
    }

    .sk-circle .sk-circle9 {
        transform: rotate(240deg);
    }

    .sk-circle .sk-circle10 {
        transform: rotate(270deg);
    }

    .sk-circle .sk-circle11 {
        transform: rotate(300deg);
    }

    .sk-circle .sk-circle12 {
        transform: rotate(330deg);
    }

    .sk-circle .sk-circle2::before {
        animation-delay: -1.1s;
    }

    .sk-circle .sk-circle3::before {
        animation-delay: -1s;
    }

    .sk-circle .sk-circle4::before {
        animation-delay: -0.9s;
    }

    .sk-circle .sk-circle5::before {
        animation-delay: -0.8s;
    }

    .sk-circle .sk-circle6::before {
        animation-delay: -0.7s;
    }

    .sk-circle .sk-circle7::before {
        animation-delay: -0.6s;
    }

    .sk-circle .sk-circle8::before {
        animation-delay: -0.5s;
    }

    .sk-circle .sk-circle9::before {
        animation-delay: -0.4s;
    }

    .sk-circle .sk-circle10::before {
        animation-delay: -0.3s;
    }

    .sk-circle .sk-circle11::before {
        animation-delay: -0.2s;
    }

    .sk-circle .sk-circle12::before {
        animation-delay: -0.1s;
    }

    @-webkit-keyframes sk-circleBounceDelay {
        0%, 80%, 100% {
            transform: scale(0);
        }

        40% {
            transform: scale(1);
        }
    }

    @keyframes sk-circleBounceDelay {
        0%, 80%, 100% {
            transform: scale(0);
        }

        40% {
            transform: scale(1);
        }
    }

    img.blazy {
        width: 100%;
        background-image: url("../images/bx_loader.gif");
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-color: rgb(246, 246, 246);
    }

    img.blazy.b-error {
        background-image: url("../images/noImage.png");
    }

    div.blazy {
        width: 100%;
        background-image: url("../images/bx_loader.gif");
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-color: rgb(255, 255, 255);
    }

    div.blazy img {
        width: 100%;
    }

    div.blazy.b-error {
        background-image: url("../images/noImage.png");
    }

    .blazy.imgLoaded {
        background-size: 100%;
    }

    #clear-filter-form {
        transition: none;
    }

    .zone-catalogue .categorie {
        min-height: 295px;
    }

    .slideUp {
        transform: scaleY(0);
        opacity: 0;
        visibility: hidden;
    }

    .slideDown {
        display: block;
        transform: scaleY(1);
        opacity: 1;
        visibility: visible;
    }

    .slide {
        line-height: normal;
        text-align: center;
    }

    .slide .blazy.imgLoaded {
        background-size: contain;
    }

    .btn {
        padding: 8px 12px 4px;
    }

    .contact .formulaire .form-group label.col-md-4 {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }

    .ancien {
        display: block;
        width: 100%;
    }

    .g-recaptcha {
        vertical-align: top;
        padding-right: 20px;
        float: left;
        width: 301px !important;
        height: 76px !important;
        margin-right: 2% !important;
    }

    .body-catalogue-item textarea.form-control {
        height: 196px !important;
    }

    @media (max-width: 575.98px) {
        #calculateurmodal .panel-default:last-child > .panel-heading + .panel-collapse > .panel-body {
            margin-bottom: 0px;
        }

        #calculateurmodal .panel-body {
            padding: 0px;
        }

        #calculateurmodal .h1 {
            margin-bottom: 30px;
        }

        .contact.pageDevis .formulaire .hvr-shutter-out-horizontal {
            width: 100%;
            position: static;
        }

        .contact.pageDevis .formulaire .calcul-btn {
            width: 100%;
            display: block;
            margin-bottom: 20px;
        }

        .contact.pageDevis .formulaire .form-group.index_25 {
            display: block;
            margin-bottom: 0px;
            width: 100% !important;
            padding-right: 0px !important;
        }

        .contact.pageDevis .formulaire .form-group.index_6, .contact .formulaire .form-group.index_12, .contact.pageDevis .formulaire .form-group.index_19 {
            margin-top: 15px;
        }

        .contact.pageDevis .form-horizontal .checkbox, .contact.pageDevis .form-horizontal .radio {
            top: -2.3px;
        }

        .contact .formulaire .form-group.index_4, .contact .formulaire .form-group.index_12, .contact .formulaire .form-group.index_13, .contact .formulaire .form-group.index_19, .contact .formulaire .form-group.index_20, .contact .formulaire .form-group.index_18 {
            font-size: 15px;
        }

        .contact.pageDevis fieldset h2 {
            margin-top: 35px !important;
        }

        .contact .formulaire .form-group.index_0, .contact .formulaire .form-group.index_2, .contact .formulaire .form-group.index_4, .contact .formulaire .form-group.index_8, .contact .formulaire .form-group.index_10, .contact .formulaire .form-group.index_15, .contact .formulaire .form-group.index_17 {
            display: block;
            width: 100%;
            padding-right: 0px !important;
        }

        .contact .formulaire .form-group.index_1, .contact .formulaire .form-group.index_3, .contact .formulaire .form-group.index_7, .contact .formulaire .form-group.index_9, .contact .formulaire .form-group.index_11, .contact .formulaire .form-group.index_16, .contact .formulaire .form-group.index_18 {
            display: block;
            width: 100%;
        }

        .contact.pageDevis .formulaire .form-group input.btn-primary {
            width: 100%;
            margin-top: 8px;
        }
        
        .contact .formulaire .form-group.index_20 {
            width: 100%;
            padding: 0px !important;
        }

        .control-label.col-xs-12.choix {
            margin-right: 0px !important;
            padding-top: 3px;
        }
    }

    #contactButtonsMobile > div:nth-child(1) > a {
        background: var(--color1) !important;
        color: rgb(255, 255, 255) !important;
    }

    #contactButtonsMobile > div:nth-child(2) > a {
        background: var(--color1) !important;
        color: rgb(255, 255, 255) !important;
    }

    #Capa_1 svg path *, #Capa_1 > g:nth-child(1) > path, #Capa_2 > g:nth-child(1) > path, #Capa_2 > path {
        fill: rgb(255, 255, 255) !important;
        color: rgb(255, 255, 255) !important;
    }
}
