
@import url('https://fonts.googleapis.com/css2?family=Mulish:ital,wght@0,200..1000;1,200..1000&display=swap');

:root {
    --black: #000;
    --white: #fff;
    --primary: #4599d5;
    --second: #242424;
    --back: #72b2e0;
    --color-text:#2f3241;
    --gris: #e5e9ed;
}

body {
    padding: 0px;
    margin: 0px;
    font-family: "Mulish", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
    font-weight: normal;
    overflow-x: hidden;
}

ul {
    padding: 0px;
    margin: 0px;
}

a {
    text-decoration: none !important
}

.header {
    width: 100%;
    position: relative;
    overflow: hidden;
    max-width: 1440px;
    margin: 0 auto;
    max-height: calc(100vh - 100px);
    background: var(--second);
    padding: 40px 0px;
}
.bottom_header{

    max-width: 1440px;
    
    margin: 0 auto;
}
.bottom_header img{max-width:100%}
.phone_header{
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
    color: #fff;
    padding: 14px 30px;
    background: var(--back-2);
    font-size: 22px;
    padding-right: 20px;
}

.phone_header:after{
    content:"";
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 50px 61px 0;
    border-color: transparent #29282d transparent transparent;
    transform: rotate(0deg);
    position: absolute;
    left: -49px;
    top: 0;
}

.title_header {
    margin: 0;
    display: flex;
}
.title_header span{
    display: block;
    font-size: 21px;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    margin-right: 20px;
    text-shadow: 1px 1px 7px #000;
}
.title_header b{
    font-size: 86px;
    color: #fff;
    line-height: 68px;
    text-shadow: 1px 1px 33px #000;
}
.top {
    margin: 0 auto;
    padding: 7px 0px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 11;
    background: url(../images/droite.png) no-repeat;
    background-size: auto 100%;
    background-position: top right;
    height: 100%;
    width: 100%;
    max-width: 241px;
    color: #fff;
    padding-top: 80px;
    padding-right: 15px;
    font-size: 17px;
}
.top span{
    display: block;
    font-size: 17px;
    margin-top: 10px;
    max-width: 150px;
    float: right;
}
.top img{
    display: block;
    float: right;
    margin-top: 10px;
    clear: both;
}
.top>div:first-child a{
    padding: 0px 6px;
    transition: 0.3s ease all;
    display: block;
    text-align: right;
    font-size: 25px;
    font-weight: 900;
    color: #fff;
}
.top>div:first-child a:hover{
    transform: scale(0.8);
}
.top>.right-top{display: flex;align-items: center;}
.top>div p{
    margin: 0;
    font-size: 19px;
    color: #000;
    position: relative;
    padding-right: 15px;
}

.banner {
    position: relative;
    height: calc(100vh - 250px);
    max-height: 520px;
    z-index: 0;
}
.banner>div{
 animation: zoom 8s ease infinite alternate;
 background: url(../images/banner.jpg) no-repeat;
 background-position: top;
 background-size: cover;
 transform: scale(1.1);
 height: 100%;
 width: 100%;
}

.banner {

    width: 75%;

    float: right;

    overflow: hidden;
}


@keyframes zoom {
    0% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1.0);

    }
}


.banner img {
    max-width: 100%;
    opacity: 0;
}

.logo a{display: block;}
.flex-header{
    position: absolute;
    left: 15px;
    top: 100px;
    padding: 0;
    z-index: 2;
    display: flex;
    width: 100%;
}
.logo {

    width: 100%;
}
.flex-header_title{
    border-top: 6px solid #fff;
    padding-left: 80px;
    padding-top: 15px;
}
.logo>div{
}

.logo img {
    position: relative;
    z-index: 1;
    max-width: 100%;
    display: block;
}

.block_insta{
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    position: relative;
    top: -32px;
    background: url(../images/forme.png) no-repeat;
    background-position: right 0px;
    padding-top: 24px;
    padding-right: 10px;
}
.block_insta>div a{
    display: flex;
    align-items: center;
    transition: 0.3s ease all;
    color: var(--primary);
}
.block_insta>div a:hover{
    color:var(--second)
}
.block_insta>div a img{
    transition:0.3s ease all;
}
.block_insta>div a:hover img{
    transform: scale(0.8) rotate(5deg);
}
.block_insta span{
    margin-right: 15px;
    font-size: 15px;
    font-weight: 600;
    text-align: right;
    line-height: 14px;
}


.top a.phone:last-child{
   font-size: 24px;
   color: #000;
   margin: 0;
   text-align: right;
   padding: 0;
   display: block;
   font-weight: 800;
}
.top a:hover{
}
.border-block-bottom{
   width: 100%;
   max-width: 1440px;
   margin: 0 auto 30px;
   height: 30px;
   position: relative;
   overflow: hidden;
}
.border-block-bottom:after{content:"";position: absolute;width: 35%;height: 100%;background: #1663a1;left: -40px;top: 0;transform: skewX(-40deg);}
/* end header */

/* menu */

.navbar-nav .nav-item {
    display: block;
    transition: 0.5s ease all;
}

.navbar-nav .nav-item.dropdown:hover .dropdown-menu {
    display: block;
}

.dropdown-menu {
    left: 100%;
    top: 0;
    background: var(--primary);
    border: 0;
    border-radius: 0;
    margin: 0;
    padding: 10px;
}


.page .navbar-nav .nav-item:last-child {
    margin: 0
}

.navbar .navbar-nav .nav-item .nav-link {
    padding: 10px 40px 5px;
    color: #fff;
    white-space: nowrap;
    transition: 0.3s ease all;
    font-size: 17px;
    text-align: left;
    font-weight: normal;
    text-transform: uppercase;
    font-weight: 500;
}

.navbar .navbar-nav .nav-item .nav-link:hover {
    background: var(--second);
    color: #fff;
}

.navbar-nav .nav-item:hover>.nav-link {
    background: var(--second);
    color: #fff;
}

.bloc-menu.fixed {
    top: 0;
    left: 0;
    position: fixed;
    background: var(--primary);
    padding: 15px;
}

.bloc-menu.fixed .btn-menu {
    display: table;
    padding: 0;
    max-width: 100%;
}
.open{
}

.bloc-menu.fixed .btn-menu img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(272deg) brightness(110%) contrast(101%);
}

.bloc-menu {
    position: absolute;
    z-index: 11;
    left: 40px;
    top: 30px;
    cursor: pointer;
    transition: 0.3s ease all;
}
.bloc-menu.open{
    position: fixed;
    padding: 15px;
}
.bloc-menu.open img{filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(272deg) brightness(110%) contrast(101%);}
.btn-menu {
    display: block;
    margin: 0 auto;
    padding: 0;
    transition: 0.3s ease all;
}

.btn-menu:hover {
    transform: scale(0.8);
}
.menubox.activemenu {
    transform: none;
}
.menubox {
    position: fixed;
    margin: 0;
    top: 0;
    left: 0;
    z-index: 10;
    transition: 0.3s ease all;
    background: var(--primary);
    padding: 150px 40px 100px;
    transform: translatex(-102%);
}

.menubox.fixed {
    top: 0;
    bottom: initial;
}


.inner-menubox {
    transition: 0.3s ease all;
    position: relative;
}

.navbar {
    padding: 0;
    position: relative;
    z-index: 1;
}

.navbar-nav {
    margin: 0px !important;
    padding: 12px 15px;
    z-index: 9;
    width: 100%;
    flex-wrap: wrap;
}

.navbar-nav:first-child {
    flex-direction: column;
}

.navbar-nav:last-child {
    padding: 0;
}



/****** end menu ***/
.page .block-text-center{
    margin-top: 100px;
}
.block-text-center{
    max-width: 780px;
    margin: 100px auto;
    padding: 60px 15px;
    position: relative;
}
.block-text-center img{max-width:100%}
.block-text-center h2 span{
    display: block;
    text-align: center;
    font-size: 23px;
    font-weight: 900;
    position: relative;
}
.block-text-center h2{
    display: table;
    margin: 0 auto;
    position: relative;
    color: #000;
    font-size: 23px;
    font-weight: 900;
}
.block-text-center h2:after{content:"";position: absolute;width: calc(100% + 120px);height: calc(100% + 120px);left: -60px;top: -60px;background: url(../images/forme3.png) , url(../images/forme4.png);background-repeat: no-repeat;background-position: 0% 0% , 100% 100%;}
.block-text-center h2 span:nth-child(2){
    font-size: 30px;
    font-weight: 700;
}
.block-text-center h2 span:nth-child(3){
    color: #8f8ca4;
    text-align: right;
    font-size: 21px;
    position: relative;
    left: 60px;
}
.block_title{
    max-width: 1210px;
    margin: 0 auto;
    position: relative;
    font-size: 17px;
    font-weight: normal;
    background: url(../images/img.jpg) no-repeat;
    background-position: bottom;
    display: flex;
    justify-content: flex-end;
    padding: 318px 40px 51px;
}
.block_title p{
    font-size: 18px;
    max-width: 440px;
    margin: 0 auto 30px;
    font-weight: 300;
    color: #fff;
}
.btn-rdv{
    background: var(--second);
    padding: 13px 50px;
    display: table;
    margin-top: 21px;
    border-radius: 31px;
    font-size: 21px;
    color: #fff;
    font-weight: 600;
    transition: 0.3s ease all;
    border-style: solid;
    border-width: 4px;
    border-color: rgb(139, 138, 152);
    border-radius: 31px;
    background-color: rgb(99, 98, 112);
    box-shadow: 1px 1px 20px 0px #ffffff70;
}
.btn-rdv:hover{

    box-shadow: 1px 1px 56px 11px #ffffff70;
    
    color: var(--back);
    
    background: var(--primary);
}
.block_title p b{
    font-size: 30px;
}
.block_title p s{
    font-size: 18px;
    text-decoration: none;
}
.bottom_block{
    position: relative;
    padding: 0;
    display: table;
    margin: 0 auto 50px;
    border-top: 10px solid var(--primary);
    padding: 10px 20px;
}
.link_plus{
    color: var(--primary) !important;
    transition: 0.3s ease all;
    font-size: 38px;
    text-align: center;
    font-weight: 800;
    display: table;
    line-height: 37px;
}
.link_plus:hover{
    padding: 0px 40px;
}

.link_plus span{
    display: block;
    text-align: center;
    font-size: 25px;
    font-weight: 800;
}


.text_center {
    max-width: 950px;
    margin: 0px auto 0px;
    font-weight: 400;
    position: relative;
    z-index: 1;
    font-size: 17px;
    text-align: left;
}

.text_center p {
    color: #000;
    text-align: left;
    margin: 0 auto;
}
.text_center h2{
    font-size: 19px;
    font-weight: 800;
    display: block;
    margin-bottom: 15px;
}
.page .text_center p.border-text{display:none}

.text_center p.border-text{
    border-left: 32px solid var(--primary);
    font-size: 16px;
    line-height: 18px;
    padding-left: 15px;
    max-width: 100%;
    text-align: left;
}

.text_center>div {
    margin: 0 auto;
    position: relative;
    z-index: 1;
}


.flex-block-2 .bloc-text {
    position: relative;
    margin: 0;
    max-width: 530px;
    padding-left: 80px;
}

.flex-block-2 .bloc-text h2 {
    font-weight: 600;
    color: #fff;
    display: block;
    padding-right: 0;
    margin-bottom: 20px;
    font-size: 22px;
}
.flex-block-2 .bloc-text h2 span{
    position: absolute;
    left: -112px;
    top: 110px;
    transform: rotate(-90deg);
    font-size: 61px;
    font-weight: 700;
}
.flex-block-2.block-second .bloc-text h2{
}
.flex-block-2 .bloc-text h2 img{
    margin-right: 20px;
}

.flex-block-2 .bloc-text h2 b:nth-child(2) {
    font-weight: 700;
    font-size: 25px;
}

.flex-block-2 .bloc-text p {
    font-size: 17px;
    color: #fff;
    font-weight: 400;
}


.flex-block-2 {
    max-width: 1440px;
    margin: 0 auto 0px;
    background: url(../images/back.jpg) no-repeat;
    background-size: cover;
}

.flex-block-2 .col-sm-4{
    background: var(--second);
    padding: 80px 40px;
    max-width: 400px;
    position: relative;
}

.flex-block-2 .col-sm-4:before{content:"";position: absolute;width: 25px;height: 50px;background: #fff;top: -19px;left: 55px;transform: skewY(-16deg);}

.flex-block-2 .col-12:last-child {
    position: relative;
    text-align: center;
    z-index: 2;
}

.back2 {
    position: relative;
    z-index: 2;
}

.nopadding {
    padding: 0px
}





.flex-block-3 {
    max-width: 1200px;
    overflow: hidden;
    margin: 0 auto 100px;
}
.flex-block-3>div{
    align-items: center;
}
.flex-block-3 h2{
    display: block;
    text-align: left;
    font-size: 21px;
    font-weight: 700;
    margin: 0;
    color: #1e76bd;
    border: 10px solid #1e76bd;
    padding: 65px 30px;
}
.flex-block-3>div p{color: #1e76bd;font-size: 18px;text-align: justify;max-width: 550px;margin: 0 auto;padding: 0px 15px;}
.flex-block-3 .col-12:last-child {
    position: relative;
    text-align: center;
    justify-content: flex-end;
}
.flex-block-3 .col-12:last-child>div{position:relative;transition: 0.3s ease all;display: flex;align-items: center;justify-content: center;}
.flex-block-3 .col-12:last-child>div:hover:before{
    width: 100%;
    height: 50%;
}

.flex-block-3 .bloc-text {
    position: relative;
    margin: 0;
    text-align: left;
}

.flex-block-3 .bloc-text a{

    border: 5px solid #d6d6e2;

    display: table;

    padding: 15px 40px;

    height: 100px;

    display: flex;

    align-items: center;

    margin: 0px 10px;

    transition: 0.3s ease all;
}
.flex-block-3 .bloc-text a img{
    transition:0.3s ease all;
}
.flex-block-3 .bloc-text a:hover{
    background: var(--primary);
}
.flex-block-3 .bloc-text a:hover img{
    transform: scale(0.8);
}
.flex-block-3 .bloc-text h2 {
    font-weight: 600;
    padding: 0;
    position: relative;
    display: table;
    font-size: 35px;
    margin-bottom: 0;
    letter-spacing: 1px;
    font-weight: 800;
    margin-bottom: 10px;
}
.flex-block-3 .bloc-text h2 + b{font-size: 18px;font-weight: 800;display: block;margin-bottom: 10px;}
.flex-block-3 .bloc-text h2:before{content:"";width: 150px;position: absolute;height: 90px;background: #d3d3d3;border: 33px solid #fff;top: -18px;left: -160px;}

.flex-block-3 .bloc-text p {
    font-size: 17px;
    color: #000;
    text-align: left;
    font-weight: 500;
    margin-bottom: 0;
    position: relative;
}



/****** back bloc***/


.block-depuis-ans{
    display: table;
    margin: 0px auto;
    padding: 80px 0px;
    color: var(--primary);
    background: url(../images/forme.png) no-repeat;
    width: 100%;
    max-width: 390px;
    overflow: hidden;
}
.block-depuis-ans h2{
    display: table;
    margin: 0 auto;
}
.block-depuis-ans span{
    display: block;
    font-weight: 900;
    font-size: 23px;
}
.block-depuis-ans span:nth-child(2){
    font-size: 160px;
    line-height: 120px;
}
.block-depuis-ans span:last-child{
    text-align: right;
}
.block_icones>div {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
}


.flex-block_icones .d-flex {
    justify-content: space-between;
    flex-wrap: wrap;
}

.block_icones>div .col-12 {
    width: calc(100% / 4);
    max-width: 293px;
    flex: calc(100% / 4);
    margin: 0 auto 20px;
    padding: 0px 14px;
    overflow: hidden;
    background: url(../images/forme2.png) no-repeat;
    height: 293px;
    text-align: center;
}

.block_icones>div .col-12:hover .img img {
    transform: scale(0.8) rotate(5deg);
}

.block_icones {
    margin-bottom: 100px;
    margin-top: 100px;
}

.link-block_icones {
    position: absolute;
    width: calc(100% - 30px);
    height: 100%;
    left: 15px;
    top: 0;
    cursor: pointer;
}

.block_icones>div .col-12:hover .img:after {
    border-width: 0 0 0px 0px;
}

.block_icones>div .col-12:hover .img:before {
    width: 100%;
}

.block_icones>div .col-12:hover .img:after {
    width: 100%;
}

.block_icones>div h2 {
    font-size: 26px;
    text-align: left;
    text-shadow: none;
    transition: 0.3s ease all;
    font-weight: 900;
    letter-spacing: 0;
    display: block;
    position: relative;
    margin: 0;
    color: var(--gris);
    margin: 0;
    padding: 10px 0px;
    text-align: center;
}

.block_icones>div h2 span {
    color: var(--back)
}

.block_icones>div p {
    color: #fff;
    font-weight: 300;
    font-size: 18px;
    line-height: 21px;
    text-align: center;
    max-width: 200px;
    margin: 0 auto;
}

.block_icones img {
    display: block;
    margin: 0;
    max-width: 100%;
}

.block_icones .img img {
    transition: 0.3s cubic-bezier(0, 0.8, 1, 1) all;
    position: relative;
    z-index: 1;
    margin: 0 auto;
}

.block_icones .img {
    position: relative;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px auto 0px;
}

.block_icones .img a {
    display: block;
    overflow: hidden;
    position: relative;
    clear: both;
}


.rubrique{
    max-width: 1400px;
    margin: 0 auto 0px;
    background: url(../images/back.jpg) no-repeat;
    padding-top: 40px;
    background-size: cover;
}
.rubrique>div {
    margin: 0 auto;
    flex-wrap: wrap;
    padding: 100px 20px;
    max-width: 1200px;
    justify-content: space-between;
}
.rubrique>div .col-12{
    margin-bottom: 60px;
    flex: calc(50% - 20px);
    max-width: calc(50% - 20px);
    width: calc(50% - 20px);
    position: relative;
}
.title-rubrique-block{
    height: 450px;
}
.title-rubrique-block:after{content:"";position: absolute;width: 100%;height: 100%;left: 0;bottom: 0;background: url(../images/titre.png) no-repeat;background-size: contain;background-position: right bottom;z-index: 1;}

.rubrique>div.title-rubrique-block h2{
    position: relative;
    z-index: 0;
    top: -15px;
    background: none !important;
}
.link-rubrique {
    position: absolute;
    width: calc(100% - 30px);
    height: 100%;
    left: 15px;
    top: 0;
    cursor: pointer;
    z-index: 1;
}

.rubrique>div .col-12:hover .img img {
    transform: scale(1.1);
}

.rubrique>div .col-12:hover h2:not(.title-rubrique-block h2) {
    background: var(--second);
}
.block-second .rubrique>div .col-12:hover h2{
    background: var(--primary);
}
.rubrique>div h2 {
    color: #fff;
    font-size: 24px;
    text-shadow: none;
    font-weight: normal;
    transition: 0.3s ease all;
    padding: 0;
    margin-bottom: 0;
    font-weight: 900;
    display: flex;
    align-items: flex-start;
    position: relative;
    padding: 15px 10px;
}

.rubrique>div h2 b {font-size: 80px;border-left: 9px solid var(--back);margin: 0px 10px;padding: 0px 10px;}
.rubrique>div h2 span{
    font-size: 34px;
}
.rubrique img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}

.rubrique .img img {
    transition: 0.3s ease all;
}

.rubrique .img {}

.text-rubrique b{
    display: block;
    font-size: 20px;
    margin-bottom: 20px;
}
.text-rubrique{
    margin: 0;
    padding: 0;
    position: relative;
    padding-left: 60px;
}
.text-rubrique:before{content:"";width: 40px;position: absolute;display: block;height: 49px;background: #fff;left: 0;top: 0;}
.text-rubrique p{
    font-size: 17px;
    font-weight: 500;
    color: #fff;
    text-align: justify;
}
.rubrique img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}
.bottom_img_rubrique{
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.bottom_img_rubrique img{
    margin: 0;
    position: relative;
    top: 36px;
}
.rubrique .img img {
    transition: 0.3s cubic-bezier(0, 0.8, 1, 1) all;
    position: relative;
    z-index: 1;
    max-width: 100%;
    width: 100%;
}
.rubrique .img {
    position: relative;
    margin: 0;
    display: flex;
    justify-content: space-between;
}
.rubrique .img:after{content:"";width: 30px;height: 130px;background: var(--second);position: absolute;left: -16px;top: 40px;z-index: 3;}
.title-img{
    background: #36353d;
    margin: 0;
    text-align: center;
    padding: 15px;
    font-size: 18px;
    font-weight: 400;
    position: relative;
}
.title-img span{
    position: relative;
}
.title-img span:before{content:"";background:var(--second);width: 11px;position: absolute;height: 11px;border-radius: 50%;left: -28px;top: 5px;}
.title-img span:after{content:"";background: var(--second);width: 11px;position: absolute;height: 11px;border-radius: 50%;right: -28px;top: 5px;}
.rubrique .img>div{
    width: calc(50% - 16px);
}
.rubrique .img a{
    display:block;
    overflow: hidden;
    position: relative;
    z-index: 3;
}

.btn-devis {
    display: table;
    background: var(--second);
    color: #fff;
    padding: 55px 30px;
    line-height: 31px;
    margin: 0 auto;
    transition: 0.3s ease all;
    position: relative;
    top: -100px;
}
.btn-devis:after{content:"";background: var(--back);position: absolute;width: 30px;height: 40px;left: calc(50% - 15px);bottom: -40px;}
.btn-devis:hover{
    background: var(--second);
    padding: 55px 50px;
    color: #fff;
}
.btn-devis:hover b{color:#fff}
.btn-devis *{
    display: block;
    text-align: center;
    text-decoration: none;
    font-weight: 800;
}
.btn-devis span {
    font-size: 27px;
    font-weight: 800;
}
.btn-devis  s {
    font-size: 22px;
}
.btn-devis b{
    font-size: 39px;
}
.btn-devis b:last-child{
    font-size: 35px;
    color: var(--primary);
    font-weight: 900;
}
.btn-devis b:last-child:before{content:"";width: 50px;height: 10px;background: var(--back);display: block;margin: 23px auto;}


.page .btn-devis{
    top: initial;
    margin: 50px auto 100px;
}

.title_photo{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
    color: #fff;
    font-size: 18px;
}

.link-fb{
    display: flex;
    margin: 0 auto 60px;
    align-items: center;
    justify-content: center;
}
.marchantp{
    max-width: 200px;
}

.link-fb a{
    transition: 0.3s ease all;
    display: flex;
    align-items: center;
    color: #000;
    font-size: 23px;
}
.link-fb a img{
    transition: 0.3s ease all;  
}
.link-fb a span{
    padding: 0px 15px;
    font-weight: 600;
}
.link-fb a:hover img{
    transform: scale(0.9);
}
.block_flex_images {
    max-width: 1300px;
    margin: 0 auto 120px;
    text-align: center;
    position: relative;
    z-index: 1;
}
.block_flex_images_container {
    justify-content: space-between;
    margin: 0;
    position: relative;
    z-index: 2;
    margin: 0 auto;
}
.block_flex_images_container h2{
    font-size: 20px;
    text-align: left;
    font-weight: 900;
    margin-bottom: 10px;
}

.block_flex_images_container p{
    text-align: justify;
    color: #000;
}
.block_flex_images_container p a{color: #000 !important;}
.block_flex_images_container>div {
    padding: 0px 15px;
    position: relative;
    width: calc(100% / 3);
    max-width: calc(100% / 3);
    flex: calc(100% / 3);
}

.block_flex_images_container div img {
    max-width: 100%;
    transition: 0.3s ease all;
}

.link-realisations {
    color: #fff;
    font-size: 27px;
    font-weight: 800;
    display: table;
    margin: 0;
    padding: 109px 40px;
    transition: 0.3s ease all;
    position: absolute;
    left: 0;
    top: 0;
    text-align: left;
    background: #8d8c9a;
    display: flex;
    align-items: center;
    justify-content: center;
}
.link-realisations a{
    padding: 0px 14px;
    transition: 0.3s ease all;
    display: inline-block;
}
.link-realisations a:hover{
    transform: scale(0.8);
}
.link-realisations>div{
    background: #8d8c9a;
}
.link-realisations>div span{
    display: block;
    text-align: center;
    font-size: 20px;
    display: block;
    font-weight: 400;
    line-height: 29px;
    margin-bottom: 30px;
}
.link-realisations>div span b{
    font-size: 27px;
    display: block;
    font-weight: 400;
}
.link-realisations u{
    display: block;
    text-decoration: none;
    font-size: 40px;
    line-height: 31px;
}

.link-realisations:hover {
    color: #fff;
}



/****** bloc-avis-client  ***/

.bloc-avis-client {
    position: relative;
    padding: 0px 15px 0px;
    max-width: 950px;
    margin: 0 auto;
}

.container_avis_client {
    position: relative;
    max-width: 980px;
    margin: 100px auto 70px;
}


.bloc-avis-client_inner {
    width: 100%;
    padding: 0px 20px;
    margin-bottom: 0;
}
.link-avis{
    display: table;
    margin: 0 auto 0px;
    color: #fff;
    font-size: 22px;
    font-weight: 400;
    transition: 0.3s ease all;
    padding: 15px;
}
.link-avis:hover{
    background:var(--primary);
    color: #fff;
    padding: 15px 50px;
}
.bottom_title {
    padding: 0;
    color: #000;
    display: table;
    margin: 0 auto 80px;
    padding-right: 0;
    text-align: center;
}
.bottom_title a{transition:0.3s ease all;}
.bottom_title a:hover{
    transform:scale(0.9)
}
.bottom_title span {display: table;font-size: 24px;font-weight: 600;position: relative;color: #000;}
.bottom_title span img{
    display: block;
    position: relative;
    top: 6px;
    text-align: right;
    left: calc(100% - 195px);
}
.bottom_title img {
    max-width: 100%;
    margin: 10px auto;
}

.bloc-avis-client .flex-block--inner .col-12 {
    padding: 0px 22px;
    margin: 0 auto;
    width: calc(100% / 3);
    max-width: calc(100% / 3);
    flex: calc(100% / 3);
}


.bloc-avis-client .flex-block--content h2 {
    font-size: 16px;
    color: #fff;
    font-weight: 900;
    display: block;
    padding: 0;
    margin-bottom: 0;
    background-size: 100% 100%;
    text-align: left;
    margin-bottom: 0;
}
.bloc-avis-client .flex-block--content h2 span{
    font-weight: 500;
    font-size: 18px;
    color: #848391;
    display: block;
    text-align: center;
    font-style: italic;
    padding: 15px;
}
.bloc-avis-client .flex-block--content p {
    font-size: 16px;
    color: #000;
    text-align: center;
    font-weight: 500;
    font-style: italic;
}

.bloc-avis-client .flex-block--content h2 b {
    font-size: 25px;
    display: block;
    font-weight: 500;
    background: var(--second);
    text-align: center;
    padding: 10px;
    margin: 0 auto;
    position: relative;
}
.bloc-avis-client .flex-block--content h2 b:before{content:"";background: #9493a5;width: 10px;position: absolute;left: -10px;height: calc(100% - 15px);top: 7.5px;transform: skewY(-5deg);}
.bloc-avis-client .flex-block--content h2 b:after{content:"";background: #9493a5;width: 10px;position: absolute;right: -10px;height: calc(100% - 15px);top: 7.5px;transform: skewY(-5deg);}
.bloc-avis-client .flex-block--content {
    position: relative;
    margin: 0 auto 50px;
    padding: 0px 10px;
}
.bloc-avis-client .flex-block--content img{
    margin: 0 auto 30px;
}
.bloc-avis-client_img{
    height: 210px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-bottom: 20px;
}
.link_insta{
    display: table;
    margin: 0 auto 100px;
}
.link_insta a{
    transition: 0.3s ease all;
}
.link_insta a:hover{


}





/****** page interne ***/


.text {
    color: #000;
    max-width: 1200px;
    margin: 0px auto 50px;
    background: #fff;
    padding: 0px 15px;
    position:relative;
    z-index: 2;
}

.textdiv {
    margin: 30px auto 30px;
    padding: 10px 15px;
    line-height: 31px;
    font-size: 17px;
    text-align: justify;
    position: relative;
    z-index: 1;
}


/****** text images ***/
.flex-block {
    position: relative;
    transition: 0.5s ease all;
    background-size: cover;
}

.flex-block-1 {
    max-width: 1000px;
    margin: 0px auto 80px;
    background-position: right;
    padding: 70px 15px 0px;
}
.flex-block-1>div{}
.page .flex-block-1 h1{display:none}
.flex-block-1 h1  {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    margin: 0 0px 30px;
    width: 100%;
    max-width: max-content;
    z-index: 1;
    color: var(--color-text);
}
.flex-block-1 h1 span:nth-child(1){
    font-size: 25px;
    color: var(--primary);
    font-weight: 500;
}
.flex-block-1 h1 span:nth-child(3){
    font-weight: 500;
}
.flex-block-1 h1 b{
    font-size: 30px;
    font-weight: 900;
    display: table;
    position: relative;
}
.flex-block-1 p {
    font-size: 18px;
    margin: 0;
    font-weight: 500;
    margin: 0 auto;
    position: relative;
    line-height: 23px;
    margin-bottom: 50px;
}

.flex-block-1 .flex-block_text {
    margin: 0 auto;
    padding: 0;
}

.back2 {
    position: relative;
    z-index: 2;
    padding-top: 40px;
}
#bloc-1{
    margin-bottom: 46px;
}
#bloc-1:after{content:"";}
.page #bloc-1 p{
    display: none;
}
.page #bloc-1{align-items:center}
.flex-block>div {
    display: flex;
    margin: 0 auto;
    flex-wrap: wrap;
    padding: 0;
    position: relative;
    z-index: 2;
}

.flex-block-2>div{
    justify-content: space-between;
}
/****** Contact ***/

.fluid-contact {
    position: relative;
    color: var(--white);
    margin: 60px auto 0px;
    max-width: 1440px;
    padding: 20px 25px;
    z-index: 2;
    background: url(../images/contact.jpg) no-repeat;
    background-size: cover;
}
.contact {
    color: var(--white);
    font-size: 17px;
    background-repeat: no-repeat;
    width: 100%;
    position: relative;
    z-index: 1;
}


.col-contact .phone {
    color: #fff !important;
    font-size: 30px;
    font-weight: 900;
    padding: 0px;
    display: block;
    margin: 0;
    position:relative;
    text-align: right;
    border: none !important;
    padding: 0px !important;
}
.col-contact .phone:last-child{
}


.col-contact {
    text-align: center;
    color: var(--white);
    padding: 0;
    justify-content: space-between;
}
.text-carte{font-size: 18px;font-weight: 500;max-width: 150px;text-align: left;line-height: 22px;margin-left: 15px;}

.col-contact p {
    color: #fff;
    letter-spacing: 0;
    font-weight: 600;
    font-size: 17px;
    margin: 0px 0px;
    position: relative;
    text-align: left;
    margin-right: 40px;
}


.adresse-block {
    margin: 0px auto;
}
.col-contact>div:last-child{position: relative;display: flex;align-items: flex-end;}
/****** end Contact ***/


/****** footer ***/

.boxfooter {
    overflow: hidden;
    padding: 15px 0px;
    z-index: 1;
    position: relative;
    max-width: 1440px;
    margin: 0 auto;
}

.footerlink {
    color: #d0d0d0;
    font-size: 10px;
    font-family: verdana;
    text-align: right;
}

.footerlink ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    display: inline-block;
}

.footerlink ul li {
    display: inline-block;
}

.footerlink ul li a {
    text-decoration: none !important;
    transition: 0.3s ease all;
    color: #aaa;
    padding: 0px 10px;
}

.footerlink ul li a:hover {
    color: var(--second);
}

.inlineblock {
    display: inline-block;
}

.footerlink ul {
    padding: 0px;
    margin: 0px;
    list-style: none;
    background: none;
}

.boxfooter>div {
    width: 100%;
    margin: 0;
}


/****** footer ***/



/****** end page interne ***/


@media (max-width: 1280px) {
    .navbar .navbar-nav .nav-item .nav-link {
        text-align: center;
    }

    .navbar-nav:after {
        height: 100%;
    }
}

@media (min-width:991px) {
    .navbar-expand-lg .navbar-collapse {
        display: block !important;
    }

    .page .logo img {
        max-width: 65%;
    }

    .page .header .banner {
        height: 450px;
        min-height: 450px;
        background-position: center;
    }
}





@media (max-width: 1200px) {
    .flex-block-1>div{
        padding: 0px 40px;
    }
    .flex-block-1{padding: 50px 0px;}
}
@media (max-width: 991px) {
    .flex-block>div .col-12 {
        flex: 0 0 100%;
        max-width: 100%;
        top: 0 !important;
    }
    .btn-contact span{text-align:center}
    .flex-block-3 h2{
        text-align: center;
        margin-bottom: 25px;
    }
    .btn-contact{
        margin: 35px auto !important;
    }
    .back2{padding-top:0}
    .flex-block>div .col-12 img{max-width:100%;margin: 0 auto;display: block;}
    .bloc-avis-client .flex-block--inner .col-12{
        width: 100%;
        max-width: 100%;
        flex: 100%;
    }
    .rubrique .img{
        margin: 0 auto 0px;
        display: block;
        max-width: 310px;
    }
    .flex-block-3 .bloc-text{
        margin: 0 auto;
    }
    .flex-block-3 .col-12:last-child>div{padding-left:0}
    .rubrique>div{
        flex-wrap: wrap;
        flex-direction: column-reverse;
        padding-top: 16px;
        padding-bottom: 0;
    }
    .rubrique .img>div{
        width: calc(50% - 5px);
    }
    .flex-rubrique .d-flex{
        margin-top: 40px;
        width: 100%;
        flex-direction: column;
    }
    .block-text-center{
        max-width: 100%;
        padding: 42px 11px;
        overflow: hidden;
        margin: 20px auto;
    }
    .block-text-center h2 span{
        font-size: 22px;
    }
    .ligne{display:none}
    .rubrique{
        padding: 0;
        overflow: hidden;
        margin-top: 10px;
        margin-bottom: 0;
        padding-bottom: 100px;
    }
    .block-depuis-ans{
        max-width: calc(100vw - 50px);
        margin: 0 auto;
        background-size: contain;
    }
    .block_icones{
        margin: 40px auto 20px;
    }
    .block_icones>div .col-12{
        width: 100%;
        flex: 100%;
        max-width: 293px;
        margin: 0 auto 32px;
    }
    .block-text-center h2 span:nth-child(2){
        font-size: 21px;
    }
    .block-text-center h2 span:nth-child(3){left:0;text-align: center;}
    .text_center{
        padding: 0px 20px;
        text-align: center;
        border: none;
        margin-bottom: 50px;
    }
    .text_center h2{text-align:left}
    .rubrique:before{display:none}
    .rubrique>div .col-12{
        width: 100%;
        max-width: 100%;
        flex: 100%;
        padding: 0;
    }
    .rubrique>div .col-12:last-child{
        top: 0;
    }

    .flex-block-1 {
        background: #fff;
        margin: 0;
        height: auto;
        min-height: initial;
        padding: 0px 15px;
    }
    .flex-block-1 p{
        width: 100%;
        margin: 0;
        max-width: 100%;
        text-align: center;
        border: none;
        padding: 0;
    }
    .flex-block-1 p:after{display:none}
    .navbar .navbar-nav .nav-item .nav-link:before {
        display: none
    }

    .navbar {
        padding: 0px
    }

    .navbar-nav:after {
        display: none
    }

    .navbar-nav .nav-item .nav-link {
        text-align: left
    }

    .inner-menubox {
        padding: 0;
        background: none;
        left: 0;
        width: 100%;
        border: none;
    }
    .collapse:not(.show){
        display: block;
    }
    .fluid-contact {
        padding: 0px 20px;
        margin-top: 40px;
    }

    .navbar-nav {
        align-items: center;
        flex-direction: column;
    }

    .navbar-nav:first-child {
        padding-bottom: 0;
    }
    .menubox.fixed .navbar-nav{
        flex-direction: column;
    }
    .navbar-nav:last-child {
        background: none;
        max-width: 100%;
        margin: 0 !important;
        padding-top: 0;
    }
    .navbar .navbar-nav .nav-item .nav-link{
        padding: 5px 10px;
    }

    .adresse-block {
        display: block !important;
        max-width: 100%;
        padding: 0;
    }
    .col-contact .link-contact{
        margin-top: 15px;
    }
    .adresse-block >div:first-child{
        width: 100%;
        padding: 0;
    }
    .col-contact>div:last-child{
        top: 0;
        margin-top: 0;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .col-contact>div:last-child:after{display:none}
    .col-contact{
        margin: 0;
        width: 100%;
        flex-direction: column;
    }
    .text:after{display:none}
    .menubox:before, .menubox:after{display:none}
    .menubox {
       width: 100%;
       top: 0;
       border: none;
       padding: 100px 20px;
   }
   .text{
    margin: 0 auto;
    box-shadow: none;
}

.top {
    top: 50px;
    align-items: flex-start;
    left: 0;
    width: 100%;
    margin-bottom: 20px;
}

.col-contact .phone,
.col-contact p {
    text-align: center;
    justify-content: center;
    margin-top: 15px;
    display: block;
}
.col-contact .btn-contact{
    float: none !important;
    margin: 0 auto !important;
}
.fluid-contact:after {
    display: none;
}

.contact {
    padding: 40px 00px 0px;
    text-align: center;
    height: auto;
    max-width: 100%;
}
.contact:after{
    position: relative;
    right: 0;
    top: 0;
}
.logo img {
    margin: 0 auto;
}

.logo {
    padding: 0px 20px;
    width: 100%;
    display: block;
    left: 0;
    max-width: 100%;
    background: none;
    position: absolute;
    width: 100%;
    height: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.logo>div{
    max-width: 100%;
    width: 100%;
    min-width: 100%;
    box-shadow: none;
    padding: 0;
    left: 0;
}

.logo a {
    padding: 0px;
    margin-bottom: 0;
}

.top {
    display: none;
}

.header {
    position: relative;
    padding-top: 0;
    top: 0;
    margin-top: 49px;
    margin-bottom: 0;
    max-height: initial;
    border: none;
    padding: 0;
}
.bottom_header{display:none}
.header .d-flex{
    display: block !important;
    height: auto;
    overflow: hidden;
    margin-bottom: 0;
    position: relative;
    top: 0;
    left: 0;
}
.bloc-menu a{
    display: block;
    padding: 0;
    top: 9px;
    left: 4px;
    position: relative;
    transform: none !important;
}
.flex-block-1 h1{
    left: 0;
    background: none;
    text-align: center;
    padding: 0;
    margin: 40px auto 30px;
}
#bloc-1:after{display:none}
.flex-block-1 h1 span:nth-child(3){
    left: 0;
    margin: 0;
}
.flex-block-1 h1 b {
    display: block;
}
.bloc-menu{
    top: 0;
    left: 0;
    width: 100% !important;
    position: fixed;
    top: 0px;
    width: 100%;
    background: var(--primary) !important;
    height: 55px;
    overflow: hidden;
    z-index: 13;
    padding: 3px 8px !important;
}
.bloc-menu.fixed{
    padding: 0px;
}
.bloc-menu.fixed .btn-menu{margin: 0;padding: 0;}
.bloc-menu img{
    position: relative;
    left: 0;
    top: 0;
    width: 36px !important;
    filter: brightness(0) saturate(100%) invert(100%) sepia(9%) saturate(7438%) hue-rotate(242deg) brightness(122%) contrast(88%);
}
.btn_scroll{display:none}
.banner {
    width: 100%;
    max-width: 100%;
    height: 450px;
}

.banner-header{
    max-width: 100%;
}

.header:before {
    display: none
}

.header:after {
    display: none
}

.top>div p{
    display: none;
}
.top  {
}
.top a{
    display: none;
}
.top .phone{
    display: block;
    color: #fff !important;
    margin: 0 !important;
    font-size: 23px !important;
    white-space: nowrap;
}
.top a.phone:last-child{
    background: none;
    width: auto;
    height: auto;
    padding: 1px 10px;
    display: none;
}
.top>div:first-child{
    background: none;
}
}

@media (max-width: 767px) {
    .flex-block-1 h1{
        left: 0;
        text-align: center;
        margin-bottom: 25px;
        font-size: 18px;
    }
    
    .flex-block-1 h1 span:nth-child(3){
        text-align: center;
        font-size: 25px;
        font-weight: 800;
    }
    .flex-block-1>div{
        padding: 0;
        display: block;
    }
    .header .banner {
        height: 250px;
        background-position: 88% 0%;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    .rubrique>div h2{
        left: 0;
        font-size: 23px;
        padding: 13px 0px;
    }
    .title-rubrique-block:after{
        width: 300px;
        height: 250px;
        position: relative;
        display: block;
        margin: 0 auto 30px;
    }
    .title-rubrique-block h2 {}
    .title-rubrique-block h2 b{
        font-size: 35px !important;
    }
    .link-rubrique{
        right: -59px;
        top: 47px;
    }
    .flex-block .col-12 {
        left: 0;
        top: 0;
        border: none;
        display: block;
    }
    .flex-block-2 .col-sm-4{
        padding: 55px 20px 80px;
    }
    .flex-block-3 .bloc-text:after{
        right: -8px;
    }
    .flex-block-2 .bloc-text h2 span{
        font-size: 49px;
        left: -76px;
        top: 85px;
    }
    .back2 {
        border: none;
        padding: 0px;
    }

    .footerlink {
        text-align: center;
    }
    .flex-block-3 .bloc-text h2:before{display: none;}
    .block_title{
        margin: 0px auto 50px;
        background-position: top;
        padding: 260px 15px 40px;
    }
    .block_title p{text-align: center;text-shadow: 1px 1px 8px #000;}
    .block_title:after{display:none}
    .flex-block-3 .bloc-text h2 span{
        font-size: 25px;
    }
    .btn-rdv{
        margin: 20px auto 0px;
    }
    .flex-block-3 .col-12:last-child{
        padding: 0;
        justify-content: center;
    }
    .link_plus{
        position: relative;
        left: 0;
        top: 0;
        margin: 0px auto 19px;
        display: table;
        transform: none;
    }
    .block_flex_images_container{flex-wrap:wrap;top: 0;}
    .block_flex_images_container>div{
        width: 100%;
        max-width: 310px;
        flex: 100%;
        margin: 0 auto 15px;
    }
    .link-fb{
        margin-bottom: 0;
        flex-direction: column;
    }
    .block_flex_images{
        margin: 0 auto 50px;
    }
    .link-fb a{
        margin-bottom: 15px;
    }
    .link-realisations{
        padding: 40px 15px !important;
    }
    .bottom_block{
        padding: 15px 0px 0px;
    }
    .flex-block {
        margin: 0px auto;
        padding: 15px 0px;
        left: 0px !important;
    }
    .border-block-bottom{
        margin-bottom: 20px;
    }
    .flex-block-3{
        padding: 40px 15px;
        margin-bottom: 20px;
    }
    .flex-block-3>div p{
        margin-bottom: 20px;
    }
    .bloc-avis-client_inner{
        margin-bottom: 0;
    }
    .link-avis{
        text-align: center;
        font-size: 16px;
        font-weight: 700;
    }
    .bottom_title{
        flex-direction: column;
        margin-bottom: 15px;
        text-align: center;
    }
    .bottom_title span{
        font-size: 18px;
        font-weight: 700;
    }
    .bottom_title span img{
        top: 0;
        left: 0;
        margin: 15px auto 19px;
    }
    .container_avis_client{margin-top: 0;margin-bottom: 0;}
    .flex-block-1{box-shadow: none;padding-top: 0;padding: 0px 10px;}
    .rubrique>div .col-12 {
        width: 100%;
        flex: 100%;
        max-width: 320px;
        margin: 0 auto 30px;
        padding: 0;
    }
    .title-rubrique-block{
        height: 250px;
    }
    .rubrique .img:after{display:none}
    .item_rubrique{
        padding: 60px 15px 0px;
    }

    .flex-block-1 .back2 {
        padding: 0;
    }

    .col-contact {
        width: 100%;
        margin-bottom: 0;
        font-size: 15px;
        flex-direction: column;
        padding: 15px;
    }

    .col-contact .phone {
        text-align: center;
    }

    .col-contact p {
        text-align: center;
        padding: 0;
        max-width: 190px;
    }
    .col-contact p:nth-child(2){
        max-width: 240px;
        margin: 15px auto;
    }
    .col-contact .link-contact{
        margin: 10px auto !important;
    }
    .col-contact p:after{display:none}
    .menubox:after {
        display: none;
    }

    .fluid-contact {
        min-height: auto;
        margin: 0px;
        padding: 40px 15px;
        margin-bottom: 20px;
        margin-top: 30px;
        background: var(--second);
    }

    .logo img {
        top: 0;
        margin: 0 auto;
        max-width: 100%;
    }

    .logo {padding: 15px 15px 10px;align-items: center;position: relative;height: auto;}
    .flex-header_title{
        position: absolute;
        right: 0;
        bottom: 0;
        padding: 15px;
    }
    .title_header b{
        font-size: 45px;
        line-height: 38px;
    }
    .contact {
        text-align: center;
        margin-bottom: 0;
        padding-bottom: 0;
        padding-top: 0;
    }

    .boxfooter img {
        margin: 0 auto 15px;
        display: block;
        max-width: 100%;
    }
}


/* rotate caret on hover */

::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 0px rgba(0, 0, 0, 0.3);
    background-color: #999;
}

::-webkit-scrollbar {
    width: 0px;
    background-color: #999;
}

::-webkit-scrollbar-thumb {
    background-color: var(--black);
    border: 0px solid #555555;
}
.btn-contact {
    cursor: pointer;
    font-weight: 600;
    text-align: left;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0;
    background: var(--back);
    max-width: max-content;
    padding: 25px 40px;
    transition: 0.3s ease all;
    display: block;
    background-position: 0px center;
    padding-left: 55px;
    padding-right: 30px;
    color: #000;
}
.btn-contact:after{content:"";background: var(--back);position: absolute;height: 80%;width: 25px;left: 100%;transition: 0.3s ease all;bottom: 0;}
.btn-contact:before{content:"";width: 45%;position: absolute;height: 100%;background: #fff;right: 0;top: 0;transition: 0.3s ease all;}
.btn-contact b{
    font-size: 61px;
    font-weight: bolder;
    line-height: 45px;
    position: relative;
}
.btn-contact:hover:after{
    width: 0px;
}
.btn-contact:hover:before{
    background: var(--second);
    width: 100%;
}
.btn-contact span {
    display: block;
    position: relative;
    font-size: 28px;
    font-weight: 900;
}

.col-contact .btn-contact {
    height: auto;
    display: table;
    width: auto;
    border-bottom: 1px solid #000;
    font-size: 17px;
    margin: 0;
    clear: both;
    color: #000;
    padding: 0;
    background: none;
    box-shadow: none;
    text-transform: uppercase;
    font-weight: 900;
    margin: 0 auto;
}
.col-contact .btn-contact:after{
    display: none;
}
.col-contact .link-contact {
    color: #fff;
    transition: 0.3s ease all;
    display: inline-block;
    padding: 0px 4px;
    font-size: 18px;
    border-bottom: 1px solid #fff;
    font-weight: 700;
    margin-right: 40px;
}

.col-contact .link-contact:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
    padding: 0px 10px;
}

.btn-contact:hover {
    background: var(--second);
    text-decoration: none;
    color: #fff;
    padding-left: 30px;
}

.col-contact .btn-contact:hover {
    background: var(--primary);
    padding: 0px 15px;
    left: 0;
    top: 0;
    width: auto;
    color: #fff;
}

.footer-ico {
    max-width: 110px !important;
}

#bloc-3{
    margin: 50px 0 150px;
    text-align: center;
}

#bloc-3 .container{
    max-width: 700px;
}

#bloc-3 h2{
    font-size: 24px;
    font-weight: 800;
    margin: 50px 0 30px;
}

#bloc-3 p{
    font-size: 17px;
    margin-bottom: 0;
}

#bloc-3 p a,
.block_flex_images_container p a,
.flex-block p a{
    color: inherit;
    font-weight: 700;
    text-decoration: underline dotted 1px !important;
}

#bloc-3 p a:hover,
.block_flex_images_container p a:hover,
.flex-block p a:hover{
    text-decoration: none !important;
}

#content{
    margin: 20px 0 50px;
}

#content .container{
    width: 100%;
    max-width: 1440px;
    margin: auto;
}
#content .corp{
    padding: 0 15px;
}
#content h1{    
    font-size: 28px;
    text-align: center;
    margin: 80px 0;
    font-weight: 800;
    line-height: 30px;
}
#content h1 small{
    color: var(--primary);
    display: block;
}
#content .chapo{
    background: url(../images/back.jpg) no-repeat top center/cover;
    color: #fff;
    text-align: center;
    font-size: 15px;
    padding: 30px 15px;
    margin: 50px auto;
    line-height: 25px;
    font-weight: 600;
}

#content h2{
    font-size: 20px;
    margin: 40px 0 20px;
    font-weight: 800;
}

#content h3{
    display: flex;
    align-items: center;
    color: inherit;
    font-size: 17px;
    margin:20px 0 10px;
    font-weight: 700;
}
#content h3:before {
    color: var(--primary);
    margin-right: 10px;
    font-size: 10px;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f0c8";
}
#content p{
    font-size: 16px;
    text-align: justify;
}
#content strong{
    color: inherit;
    font-weight: 700;
}
#content ul{
    padding-left: 20px;
    margin: 15px auto;
    list-style: none;
}
#content ul li{
    font-size: 16px;
    margin:5px 0;
}
#content ul li:before {
    color: var(--primary);
    margin-right: 10px;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f054";
}
#content p a,
#content li a{
    color: inherit;
    font-weight: 700;
    text-decoration: underline dotted 1px !important;
}
#content p a:hover,
#content li a:hover{
    text-decoration: none !important;
}
#content hr{
    margin: 40px auto;
}
#content .slogan{
    font-size: 24px;
    font-weight: 800;
    margin: 40px auto;
    text-align: center;
}

#content .slogan small{
    display: block;
    font-weight: 600;
}

#content .center{text-align: center !important;}

#content .imgD,
#content .imgG,
#content .diapoD,
#content .diapoG{
    display: flex;
    margin: 80px auto;
    justify-content: space-between;
}

#content .imgG,
#content .diapoG{
    flex-direction: row-reverse;
}

#content .imgD>div,
#content .imgG>div,
#content .diapoD>div,
#content .diapoG>div{
    width: 100%
}

#content .imgD>div:last-child,
#content .diapoD>div:last-child,
#content .imgG>div:last-child,
#content .diapoG>div:last-child{
    max-width: 600px;
}

#content .imgD>div:last-child img,
#content .imgG>div:last-child img,
#content .diapoD>div:last-child img,
#content .diapoG>div:last-child img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#content .bloc-txt{
    box-shadow: 0 0 10px #0002;
    padding: 20px;
    margin: 40px auto;
}

#content .imgD>div:first-child,
#content .imgG>div:first-child,
#content .diapoD>div:first-child,
#content .diapoG>div:first-child{
    padding: 20px 50px;
}

#content .bloc-txt>*:first-child,
#content .imgD>div:first-child>*:first-child,
#content .imgG>div:first-child>*:first-child,
#content .diapoD>div:first-child>*:first-child,
#content .diapoG>div:first-child>*:first-child{
    margin-top: 0;
}

#content .bloc-txt>*:last-child,
#content .imgD>div:first-child>*:last-child,
#content .imgG>div:first-child>*:last-child,
#content .diapoD>div:first-child>*:last-child,
#content .diapoG>div:first-child>*:last-child{
    margin-bottom: 0;
}

#content .diapoD .slick-list,
#content .diapoG .slick-list,
#content .diapoD .slick-track,
#content .diapoG .slick-track{
    height: 100%;
}

#content .breadcrumb{
    background: initial;
    justify-content: center;
    font-size: 14px;
    margin-bottom: 30px;
}
#content .breadcrumb a{
    color:var(--primary);
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.3s;
}

#content #foot-page{
    background: var(--primary);
    border-radius: 5px;
    color: #fff;
    padding: 30px 15px;
    margin: 15px auto;
}

#content #foot-page a{
    color: inherit;
}

#content #foot-page p{
    margin: 0;
    text-align: center;
}

.box-tel{
    color: inherit !important;
    text-decoration: none !important;
}
.box-tel:hover{
    color: inherit !important;
    text-decoration: none !important;
}

#content .bouton{
    background: var(--primary);
    border: solid 3px var(--primary);
    border-radius: 5px;
    color: #fff;
    display: table;
    text-align: center;
    font-weight: 600;
    padding: 10px 30px;
    margin: 15px auto;
    transition: .5s;
}

#content .bouton:hover{
    background: #fff;
    color: var(--primary);
    text-decoration: none;
}

@media(max-width: 991px){
    #content .imgD,
    #content .imgG,
    #content .diapoD,
    #content .diapoG{
        flex-direction: column-reverse;
        align-items: center;
    }
    #content .imgG>div:last-child, 
    #content .imgD>div:last-child,
    #content .diapoG>div:last-child, 
    #content .diapoD>div:last-child{
        margin: 30px auto;
        width: 100% !important;
        max-width: 100%;
        height: auto !important;
    }

    #content .imgD>div:first-child,
    #content .imgG>div:first-child,
    #content .diapoD>div:first-child,
    #content .diapoG>div:first-child{
        padding: 0;
    }
}