*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
} 

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


body{
	font-family: 'Arial', sans-serif;
	font-size: 16px; 
}
p{
    color: #707173;
    line-height: 30px;
}
a{
	text-decoration: none;  
}
ul li{
	list-style: none;
}
input, textarea.form-input{
    outline: none;
    color: #707173;
}
h1 {
    font-size: 48px; 
}
h2 {
    font-size: 40px;
}
h1, h2{
    padding: 35px 0 38px;
}
h3 {
    padding: 15px 0;
}
.container{
    max-width: 1200px;
    width: 100%;
    margin: auto;
    padding: 0 20px;
} 
.top-head {
    background: #a80000;
    padding: 10px 40px;
}
.boxLogo-menu.fixed-top {
    position: fixed;
    width: 100%;
    background: #fff;
    z-index: 99;
    top: 0;
    transition: .3s all;
}
.box a,
.box {
    color: #fff;
    font-size: 14px;
}
.boxTop { 
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.adr-top {
    display: flex;
    align-items: center;
    gap: 20px;
}
.box {
    display: flex;
    align-items: center;
    gap: 15px;
}
.box img {
    width: 15px;
    height: 15px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}
i.fond-check.icon-foot .image {
    filter: brightness(0);
}
.logo-menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}
ul.col.nav-list {
    display: flex; 
    text-align: center;
}
.megaMenu {
    transform: scaleY(0);
    opacity: 0;
    visibility: hidden;
    position: absolute; 
    transform-origin: 0 0 0;
    transition: all 0.3s ease 0s;
    z-index: 9999 !important;  
    background: #ffff;
    padding: 20px;
}
.Desktop .nav-item:hover .megaMenu {
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
}
li.nav-submenu-item {
    margin: 10px 0;
}
ul.nav-submenu {
    background: #fff;
    text-align: left;
}
.megaMenu a {
    color: #707173 !important;
    text-transform: capitalize !important;
}

.boxCap .container {
    max-width: 1500px;
}
.boxLogo-menu .container{
    max-width: 1700px;
}
li.nav-item {
    padding: 0 9px;
}
.boxLogo-menu {
    background: #fff; 
}
.btn-site { 
    min-width: 168px; 
    display: flex;
}
a.btn {
    color: #fff;  
    background: #00417b;
    padding: 19px 30px;
    position: relative; 
    overflow: hidden;
    display: flex;
} 
span.span-btn {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
}
a.btn:before{
    position: absolute;
    content: '';
    background: #1f2025;
    width: 100%;
    height: 100%;
    left: -169px;
    top: 0;
    transition: .3s;
}
a.btn:hover:before{ 
    left: 0; 
    transition: .3s;
} 
li.nav-item a {
    color: #222222;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
}
li.nav-item a:hover{
    color: #a80000;
}
li.nav-item.active {
    border-bottom: 2px solid #a80000;
}
.btn-site .span-btn {
    position: relative;
}
.homeslider {
    position: relative;
}
.homeslider:before {
    position: absolute;
    content: '';
    background: url(../images/img/shape1.png);
    width: 55%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 1;
}
.slider {
    height: 800px;
    background: #f3f4f7;
}
.bg{
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.caption {
    position: absolute;
    top: 24%;
    display: flex; 
    padding: 0 30px;
    z-index: 9;
}
.cap {
    width: 50%;
    color: #fff;
    position: relative;
}
span.nom {
    font-size: 19px;
    font-weight: 600;
    text-transform: lowercase;
    position: relative;
}
span.nom:before{
    position: absolute;
    content: '';
    background: #00417b;
    width: 160px;
    height: 5px;
    top: 27px;
}
.titre-head {
    font-size: 80px;
    font-family: serif;
    font-weight: 600;
    line-height: 72px;
    padding: 30px 0 50px;
}
.caption p {
    color: #fff;
} 
.boxCap:before{
    position: absolute;
    content: '';
    background: #a80000;
    width: 55%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 97%;
}
.btn-site.btn-head {
    display: flex;
    gap: 20px;
    margin-top: 50px;
}
.btn-site.btn-head a.btn:before{
    left: -209px;
    background: #fff;
}
.btn-site.btn-head a.btn:hover:before{
    left: 0;
}
a.btn.btn-clr:hover span.span-btn{
    color: #222222;
}
.categerie {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 60px;
}
.section {
    padding: 120px 0;
}
.titre-cat, .box-tel {
    grid-column: span 2;
}
span.societe {
    font-size: 12px;
    font-weight: 600;
    border: 3px solid #eee9e3;
    padding: 10px 25px;
    position: relative;
}
span.societe:before {
    position: absolute;
    content: '';
    background: url(../images/img/before.png);
    width: 19px;
    height: 13px;
    background-size: cover;
    background-repeat: no-repeat;
    top: -9px;
    left: 44%;
}
p.service {
    color: #000;
    font-size: 45px;
    font-weight: 600;
    line-height: 50px;
    margin-top: 30px;
}
.image{
    width: 46px!important;
    height: 46px;
    object-fit: contain;
    position: relative;
    transform: rotateY(0deg);
    transition: .3s; 
}
.cat-item:hover .image,
.fond-check:hover .image,
.cage:hover .image{
    filter: brightness(0) invert(1);
    transform: rotateY(180deg);
    transition: .3s;
}
.cat-item {
    background: #f3f4f7;
    padding: 0 22px 45px;
    position: relative;
}
.fond-icon {
    background: #fff;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -35px;
    position: relative;
    box-shadow: 0 0 76px rgba(0, 0, 0, 0.06);
    transform: rotateY(0deg);
    transition: .3s;
}
.fond-icon:before{
    position: absolute;
    content: '';
    background: url(../images/img/icon-border.png);
    width: 93px;
    height: 58px;
    background-size: cover;
    background-repeat: no-repeat;
    top: 25px;
} 
.ligne {
    background: #a80000;
    width: 80px;
    height: 6px;
    transform: skewX(-25deg);
    margin-top: 15px;
    margin-bottom: 15px;
}
.ancre-cat {
    font-size: 18px;
    color: #000;
    padding: 20px 0 0;
    display: block;
    font-weight: 600;
}
.cat-item:hover .fond-icon,
.fond-check:hover,
.cage:hover i.fond-check.fond-box{
    transform: rotateY(180deg);
    background: #a80000;
    transition: .3s;
}
.icon-cat {
    position: absolute;
    right: 22px;
    top: 56px;
    filter: grayscale(1);
    opacity: 10%;
}
.bg.box-tel {
    margin-top: -35px;
    position: relative;
}
.bg.box-tel:before{
    position: absolute;
    content: '';
    background: url(../images/img/overlay.png);
    width: 380px;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
}
.telephone {
    padding: 63px 60px;
    position: relative;
}
.telephone span {
    font-size: 13px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
}
.appel {
    color: #fff;
    font-size: 26px;
    font-weight: 600;
    padding: 15px 0 30px;
}
.tel-blok a {
    font-size: 18px;
    color: #fff;
    font-weight: 600;
    background: #a80000;
    padding: 5px 10px;
    border-radius: 10px;
}
.blok-tel {
    display: flex;
    align-items: center;
    gap: 20px;
    position: relative;
}
.tel-blok {
    display: flex;
    flex-direction: column;
    gap: 8px; 
}
.boxCont-prest .tel-blok {
    min-width: 201px;
}
.tel-blok strong {
    color: #fff;
    font-weight: 300;
    font-size: 16px;
} 
.blok-tel img:hover,
.box-left .imgCheck img:hover{
    transform: rotateY(180deg);
    transition: .3s;
}
.lien a {
    color: #d1d1d1;
    font-size: 14px;
}
a.lien_.lien-bef{
    position: relative;
}
a.lien_.lien-bef:before,
a.lien_.lien-bef:after{
    position: absolute;
    content: '';
    background: #d1d1d1;
    width: 1px;
    height: 14px;
    transform: rotate(20deg);
    top: 2px;
    left: -20px;
}
a.lien_.lien-bef:before{ 
    top: 2px;
    left: -20px;
}
a.lien_.lien-bef:after{ 
    top: 2px;
    left: 97px;
}
.lien {
    display: flex;
    gap: 40px;
}
.reseau img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}
.reseau {
    display: flex;
    gap: 15px;
}
.box_text1 {
    display: flex;
    gap: 80px;
    position: relative;
    z-index: 1;
    background: #fff;
}
.box_text1:before{
    position: absolute;
    content: '';
    background: url(../images/img/home.png);
    width: 542px;
    height: 267px;
    background-size: cover;
    background-repeat: no-repeat;
    bottom: 0;
    right: 0;
}
.box_text1 .img1 img {
    width: 485px;
    height: 100%;
    display: block;
    background: #f3f4f7;
    position: relative;
}
.fond-check {
    background: #00417b;
    width: 70px;
    height: 70px;
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.textCheck span {
    font-size: 18px;
    font-weight: 600;
    padding: 0 0 10px;
    display: block;
}
.checkBox {
    display: flex;
    gap: 25px;
    position: relative;
}
.boxCheck .checkBox:nth-child(1) {
    border-bottom: 1px solid #dbdbdb;
    padding: 30px 0;
}
.boxCheck .checkBox:nth-child(2){
    padding: 35px 0 0;
} 
.img1 {
    position: relative;
    overflow: hidden;
    width: 50%;
}
.blok_text1 {
    width: 60%;
    position: relative;
    padding: 40px 40px 40px 0;
}
.img1::after {
    position: absolute;
    top: 0;
    left: -116%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}
.img1:hover::after {
    -webkit-animation: shine .70s;
    animation: shine .70s;
} 

@keyframes shine {
    100% {
        left: 120%;
    }
}
.blok_text1:before {
    position: absolute;
    content: '';
    background: #00417b;
    width: 30px;
    height: 73%;
    top: 50%;
    transform: translateY(-50%);
    left: -86px;
}
section.sectText2 {
    padding: 460px 0 80px;
    margin-top: -365px;
    position: relative;
    z-index: 0;
}
.sect_bg{
    background-color: #020202;
    background-image: url(../images/img/bg-sect.png);
    padding: 120px 0;
    position: relative;
}
section.sectDevis.sect_bg{
    position: relative;
}
section.sectDevis.sect_bg:before {
    position: absolute;
    content: "";
    background: rgb(255, 255, 255, 6%);
    width: 35%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}
.text2, .text2 p {
    color: #fff;
} 
span.societe.st-bl:before{
    filter: brightness(0) invert(1);
}
i.fond-check.fond-box {
    box-shadow: 0 0px 43px rgba(0, 0, 0, 0.02);
    background-color: #f3f4f7;
    border-radius: 0;
    width: 125px;
    height: 125px;
    margin: auto;
    position: relative;
    z-index: 1;
}
.text-box {
    border: 3px solid #e1e1e1;
    padding: 80px 20px 40px;
    margin-top: -50px;
    position: relative;
    z-index: 0;
}
.text-box span {
    font-size: 45px;
    font-weight: 600;
}
.box_cage {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    position: relative;
}
.cage {
    text-align: center;
}
.box-text3 {
    display: flex;
    gap: 80px;
    align-items: center;
    position: relative;
}
.img3 img {
    width: 285px;
    height: 600px;
    display: block;
}
.mesure {
    width: 50%;
}
.boxImg3 {
    display: flex;
    gap: 15px;
    position: relative;
}
.img1.img3:nth-child(1) {
    margin-top: -30px;
}
.img1.img3:nth-child(3) {
    margin-top: 30px;
}
.service_ {
    background: #a80000;
    padding: 35px;
    position: absolute;
    width: 180px;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
    z-index: 9;
}
.textService {
    color: #fff;
    font-size: 17px;
    margin-top: 20px;
    line-height: 24px;
}
.boxCheck.checkText3 .checkBox:nth-child(1) {
    border-bottom: none;
}
.box-left .imgCheck img {
    width: 65px;
    height: 65px;
    object-fit: contain;
    transform: rotateY(0deg);
    transition: .3s;
}
.checkText3 .checkBox:nth-child(2) {
    padding: 0;
}
.experience {   
  background: url(../images/img/bg-tel.webp);
  background-size: cover; 
  background-clip: text;
  color: transparent; 
  font-size: 23px;
  border: 2px solid #e1e1e1;
  padding: 5px 25px;
  font-weight: 600;
}
.experience span{
    font-size: 90px;
    font-weight: 600;
}
.boxCheck.checkText3 {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 30px;
}
.box-left {
    width: 100%;
}
.box-left .checkBox:nth-child(1){
    padding: 0 0 30px;
}
section.section.sect-prod,
section.sectText3{
    position: relative;
}
section.section.sect-prod:before{
    position: absolute;
    content: '';
    background: url(../images/img/shape2.webp);
    width: 30%;
    height: 540px;
    background-size: cover;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
}
section.sectText3:before{
     position: absolute;
    content: '';
    background: url(../images/img/shape3.png);
    width: 480px;
    height: 595px;
    background-size: cover;
    background-repeat: no-repeat; 
    bottom: 0;
    right: 0;
}
section.section.sectText4 {
    background-color: #00417b;
    background-image: url(../images/img/bg-sect4.png);
    width: 100%;
    height: 100%;
} 
.boxText4{
    color: #fff;
}
i.fond-tel {
    background: #1f2025;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}
i.fond-tel img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}
.boxText4 {
    display: flex;
    gap: 80px; 
}
.img1.img4.mesure img {
    background: #656668;
    display: block;
    width: 100%;
    height: 100%;
}
.text4 p {
    background: #fff;
    padding: 30px 35px 20px;
    position: relative;
    z-index: 9;
    width: 760px;
}
.boxText4 .blok-tel {
    margin-top: 36px;
}
.text2 .btn-site.btn-head {
    justify-content: center;
}
.blockText3.mesure .btn-site {
    margin-top: 25px;
}
.box-btn4 a.btn.btn-clr{
    background: #1f2025;
}
.box-btn4 {
    display: flex;
    align-items: center;
    gap: 30px;
}
section.section.sectText5{ 
    position: relative;
}
section.section.sectText5:before,
section.section.sectText5:after{
    position: absolute;
    content: '';
    background-repeat: no-repeat!important;
    background-size: cover!important;
}
section.section.sectText5:before{
    background: url(../images/img/sect-5.jpg);
    width: 100%;
    height: 100%;
    top: 0;
}
section.section.sectText5:after{ 
     background: url(../images/img/house.png);
    width: 307px;
    height: 315px;
     bottom: 0;
     right: 0;
     animation: anim infinite 5s;
}
.anim {
    right: 0;
    animation: anim infinite 6s; 
} 
@keyframes anim {
    0% { bottom: -10px; }
    25% { bottom: 0; }
    50% { bottom: 10px; }
    75% { bottom: 0px; }
    100% { bottom: -10px; }
}
.text_ {
    background: #fff;
    padding: 66px 40px 40px;
    position: relative; 
}
.text_:before {
    background-color: #fff;
    bottom: 99.92%;
    clip-path: polygon(50% 100%, 100% 0, 100% 100%, 0 100%, 0 0);
    content: "";
    height: 60px;
    left: 0;
    position: absolute;
    width: 100%;
}
.boxText5 {
    display: flex;
    gap: 40px;
    margin-top: 135px;
    position: relative;
    z-index: 1;
}
section.section.sectText5 span {
    display: block;
    max-width: fit-content;
    margin: auto; 
}
.imgText_ {
    border: 6px solid #a80000;
    border-radius: 50%;
    width: 145px;
    height: 145px;
    position: absolute;
    top: 0;
    transform: translate(-50%, -50%);
    left: 50%; 
    overflow: hidden;
}
.imgText_ img {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 50%;
     transition: 0.3s;
}
.imgText_:hover img{
    transform: scale(1.1);
}
.block-text_ .btn-site {
    margin-top: 30px;
    justify-content: center;
}
a.btn.btn-clr:before{
    background: #302f2f!important;
}
a.btn.btn-clr:hover span.span-btn{
    color: #fff!important;
}
.text7{
    color: #fff;
}
.boxDevis {
    display: flex;
    gap: 80px;
    position: relative;
}
.titre-formulaire {
    color: #fff;
    font-size: 26px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 30px;
}
.inp-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
input.form-input,
textarea.form-input {
    padding: 25px 20px;
    border-radius: .25rem;
    border: none;
}
textarea.form-input {
    margin-top: 15px;
    max-width: 100%;
    width: 100% !important;
    padding: 20px 20px 135px;
    font-family: inherit;
}
.text7.mesure .btn-site {
    margin-top: 30px;
}
.btn-devis {
    background: #a80000;
    border: none;
    padding: 20px;
    color: #fff;
    font-weight: 600;
    margin-top: 30px;
    cursor: pointer;
    width: 100%;
}
.btn-devis:hover{
    background: #1f2025; 
    transition: .3s;
}
.devis_formulaire.mesure {
    background-color: #00417b;
    padding: 60px;
    background-image: url(../images/img/pattern.png); 
}
.text7.mesure p {
    background: #fff;
    padding: 20px;
}
.cont-foot .checkBox:nth-child(1),
.cont-foot .checkBox:nth-child(2) {
    border-bottom: none;
    padding: 0;
}
.cont-foot .textCheck span {
    color: #fff;
}
.classe,
.cont-foot .textCheck a {
    color: #fff;
    font-size: 14px;
}
.cont-foot .boxCheck { 
    padding: 40px;
    display: flex;
    justify-content: space-between; 
    background-image: url(../images/img/bgTel-foot.webp);
    width: 100%;
    height: 100%;
    position: relative;
}
.cont-foot .boxCheck:before{
    position: absolute;
    content: '';
    background: #a80000;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 92%;
}
i.fond-check.icon-foot {
    background: #fff;
}
i.fond-check.icon-foot:hover img{
    filter: none;
}
.textCheck.tel-foot a {
    background: #00417b;
    padding: 5px 10px;
    border-radius: 3px;
}
.textCheck.tel-foot p {
    display: flex;
    gap: 10px;
} 
.prtBox-foot {
    padding: 80px 120px;
}
.box-foot {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 60px;
} 
.titre-foot {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 30px;
}
ul.services-footer a,
.block-rappel span,
.box-mention a {
    color: #cccccc;
    line-height: 35px; 
} 
.cage-foot a.logo { 
    display: block;
}
.cage-foot a.logo img { 
    background: #fff;
}
.block-rappel span {
    margin-bottom: 20px;
    display: block;
}
.rappel input.form-input {
    width: 100%;
    border-radius: 0;
}
.rappel input.btn-devis {
    margin-top: 15px;
}
.cage-foot li{
    position: relative;
    left: 25px;
}
.cage-foot li:before{
    position: absolute;
    content: '';
    background: url(../images/img/before.png);
    width: 12px;
    height: 8px;
    background-size: cover;
    background-repeat: no-repeat;
    top: 50%;
    transform: translateY(-50%);
    left: -25px;
}
a.logo img {
    width: 200px;
    height: 100px;
    object-fit: contain;
}
.copyright {
    color: #cccccc;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #464646;
    padding: 20px 0 0;
}
.copyright img {
    width: 150px;
    height: 25px;
    object-fit: contain;
}
.box-mention {
    display: flex;
    align-items: center;
    gap: 15px;
}
.footer.sect_bg {
    padding: 120px 0 20px;
}
.box_flex {
    display: flex;
    gap: 60px; 
    position: relative;
    z-index: 1;
}
.boxImg1.mesure img {
    width: 450px;
    height: 600px;
    display: block;
    background: #f3f4f7; 
}

.text1Prest.mesure{
    position: relative;
}
.text1Prest.mesure:before{
    position: absolute;
    content: '';
    background: #a80000;
    width: 30px;
    height: 230px; 
    left: -140px;
    top: 0;
}
.img2prest {
    margin-top: -130px;
    margin-left: 110px;
}
.img2prest img {
    width: 415px!important;
    height: 250px!important; 
    display: block!important;
}
.boxImg1.mesure {
    position: relative;
}
.text1Prest.mesure .box-left {
    display: flex;
    gap: 20px;
    margin-top: 30px;
}
.text1Prest.mesure .box-left .checkBox:nth-child(1) {
    padding: 0;
}
.text1Prest.mesure .checkBox {
    flex-direction: column;
    width: 100%;
    gap: 15px;
}
.cont-prest {
    border: 1px solid #a80000;
    padding: 20px;
    max-width: 968px;
    margin: auto;
    margin-top: 50px;
}
.boxCont-prest {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}
i.fond-tel.fond-check.port {
    background: #fff;
    box-shadow: 0px 0px 26px 0px rgba(0, 0, 0, 0.29);
    width: 50px;
    height: 50px;
    position: absolute;
    left: -26px;
}
i.fond-tel.fond-check.port:hover img{
    filter: none;
}
i.fond-tel.fond-check.port img {
    width: 22px;
    height: 22px;
    object-fit: contain;
}
.boxCont-prest .tel-blok a {
    border-radius: 0;
    padding: 20px 40px;
}
.boxCont-prest .tel-blok a:hover{
    background: #000;
    transition: .3s;
}
.text_cont {
    color: #707173;
    font-size: 18px;
}
.text_cont span{
    color: #a80000;
}
.figText h2 {
    font-size: 25px!important;
    padding: 30px 0 15px;
}
.img1.figImg{
    width: 100%;
}
.img1.figImg img {
    width: 100%;
    height: 255px;
    display: block;
    background: #ddd;
}
figure.bg.pret2 {
    position: relative;
    padding: 120px 0;
}
figure.bg.pret2:before,
figure.bg.pret2:after{
    position: absolute;
    content: ''; 
    height: 100%;
    top: 0;
}
figure.bg.pret2:before{ 
    background: #f3f4f7;
    width: 69%;
    right: 0;
    opacity: 94%;
}
figure.bg.pret2:after {
    background: #a80000;
    width: 31%;
    left: 0; 
    z-index: 0;
    opacity: 76%;
}
.figText {
    background: #f3f4f7;
    padding: 60px 20px 20px;
    border-top: 3px solid #a80000;
    margin-top: -70px;
    position: relative;
}
.figText:before{
    position: absolute;
    content: '';
    background: url(../images/img/icon-arrow.png);
    width: 42px;
    height: 64px;
    background-size: cover;
    background-repeat: no-repeat;
    right: 40px;
    top: 20px;
}
.bg-bl {
    background: #fff;
    padding: 20px;
}
i.fondIcon {
    background: #a80000;
    width: 90px;
    height: 87px;
    display: flex;
    justify-content: center;
    align-items: center; 
}
.icon-fig {
    position: absolute;
    top: 182px;
    z-index: 9;
    margin-left: 20px;
}
i.fondIcon:hover{
    background: #fff;
    transition: .3s;
}
i.fondIcon img {
    filter: brightness(0) invert(1);
}
i.fondIcon:hover img{
    filter: none;
}
.figText .btn-site {
    margin-top: 30px;
}
.figText .btn-site a.btn {
    width: 100%;
    justify-content: center;
}
.figText a.btn:before {
    display: none;
}
.figText a.btn:hover{
    background: #1f2025;
    transition: .3s;
}
section.figText6.sectText1 {
    padding: 120px 0 0;
}
.titre-prest {
    text-align: center;
    margin-bottom: 40px;
}
.prestations h1 {
    font-size: 35px;
}
.prestations h2{
    font-size: 30px;
}
.boxDevis.box-contact input.form-input,
.boxDevis.box-contact textarea.form-input {
    background: #F8F7FA;
}
.boxDevis.box-contact span.titre {
    color: #000;
    font-size: 40px;
}
.boxDevis.box-contact .devis_formulaire.mesure {
    background-image: none;
    background-color: transparent;
    padding: 0;
}
.titre-contact {
    color: #00417b;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 10px;
}
.boxDevis.box-contact .titre-formulaire {
    text-align: left;
}
.ContactezNous i.fond-check.icon-foot {
    background: #00417b;
}
.ContactezNous i.fond-check.icon-foot img{
    filter: brightness(0) invert(1);
}
.boxDevis.box-contact .cont-foot .textCheck span {
    color: #000;
}
.boxDevis.box-contact .classe, 
.boxDevis.box-contact .cont-foot .textCheck a {
    color: #707173;
    font-size: 16px;
}
.boxCheck.cont-box {
    background-image: none;
    flex-direction: column;
    gap: 40px;
    padding: 0;
}
.boxCheck.cont-box:before{
    background: none;
}
.boxCheck.cont-box .textCheck.tel-foot a {
    color: #fff;
} 
.p-cont {
    padding: 0 0 40px;
}
.boxDevis.box-contact {
    align-items: center;
    padding: 120px 0;
}
div#Map {
    width: 100%;
    height: 350px;
    border-radius: 10px;
    margin-bottom: 120px;
    z-index: 0;
    background: #F8F7FA;
}
.contact .cap,
.realisations .cap,
.mentions .cap,
.devis .cap {
    width: 100%;
}
.contact a.btn.btn-clr.cont-none,
.realisations a.btn.btn-clr.real-none {
    display: none;
}
a.swipebox img {
    width: 100%;
    height: 230px;
    object-fit: cover;
    display: block;
}
b.titre-album {
    width: 100%;
    font-size: 36px;
    color: #000;
    font-weight: bold;
    display: block;
    margin: 15px;
    text-align: center;
    text-transform: uppercase;
}
div#realisations .row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.Mobile div#realisations .row { 
    grid-template-columns: repeat(1, 1fr); 
}
.Tablet div#realisations .row { 
    grid-template-columns: repeat(3, 1fr); 
}
div#realisations {
    padding: 40px 0 80px;
}
/*----------------------------------------------------------
MENTIONS
---------------------------------------------------------*/
.mentions h2 {
    padding: 20px 0;
    font-size: 28px;
    font-weight: 600;
    text-transform: uppercase;
}
.mentions ol {
    max-width: 100%;
    width: 80%;
    margin: auto;
    padding: 0 0 30px;
}
body.Mobile.mentions ol {
    width: 100%; 
    padding:0 20px 20px;
}
.mentions h3 {
    font-size: 20px; 
    font-weight: 600;
}
.Mobile .top-head,
.Tablet .top-head {
    display: none;
}
button.navMobile {
    background: transparent;
    border: none;
    position: absolute;
    right: 20px;
}
.Mobile .btn-site.none-mob,
.Tablet .btn-site.none-mob {
    display: none;
}
.Mobile ul.col.nav-list,
.Tablet ul.col.nav-list{
    flex-direction: column;
    gap: 15px;
}
.Mobile .menu-top,
.Tablet .menu-top {
    position: fixed;
    width: 100%;
    background: #fff;
    z-index: 99;
    top: 135px;
    left: 0;
    padding: 25px;
    display: none;
}
.Mobile .menu-top.show, .Tablet .menu-top.show {
    display: block;
}
.Mobile .megaMenu, .Tablet .megaMenu {
    visibility: visible;
    opacity: 1;
    display: none;
    position: static;
    width: 100%;
    transform: none;
    border-radius: 0px;
}
.Mobile span.nav-click i::before, .Tablet span.nav-click i::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: url(../images/drop.png);
    background-size: cover;
    right: 10px;
}
.tel-mob a {
    background: #a80000;
    padding: 10px;
    border-radius: 5px;
    color: #fff;
}
.tel-mob {
    display: flex;
    position: absolute;
    width: 100%;
    justify-content: space-around;
    background: #f4f4f4;
    padding: 10px 0;
    gap: 10px;
    top: 86px;
    z-index: 99;
    left: 0;
}
.Mobile .logo-header,
.Tablet .logo-header {
    display: flex;
    align-items: center;
}
.Mobile .boxLogo-menu, .Tablet .boxLogo-menu {
    padding: 10px 0 10px;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 999;
}
.Mobile .slider,
.Tablet .slider{
    height: 600px; 
}
.Mobile .titre-head {
    font-size: 35px; 
    line-height: 46px;
    padding: 25px 0; 
}
.Mobile .cap, .Tablet .cap {
    width: 100%;
}
.Tablet ul.nav-submenu { 
    text-align: center;
}
.Mobile .btn-site.btn-head { 
    margin-top: 30px;
}
.Mobile .caption {
    padding: 0 20px 0 0;
}
.Mobile span.span-btn { 
    font-size: 13px; 
}
.Mobile a.btn{
    padding: 13px;
}
.Mobile .homeslider,
.Tablet .homeslider { 
    margin-top: 100px;
}
.Tablet .titre-head{
    font-size: 67px;
}
.Mobile .categerie { 
    grid-template-columns: repeat(2, 1fr); 
}
.Mobile .section, .Tablet .section {
    padding: 80px 0;
}
.Mobile p.service { 
    font-size: 32px; 
    line-height: 36px; 
}
.Mobile .cat-item p, .Tablet .cat-item p {
    display: none;
}
.Mobile .cat-item, .Tablet .cat-item { 
    padding: 0 22px;  
}
.Tablet p.service{
    font-size: 35px;
}
.Tablet .telephone, .Mobile .telephone {
  padding: 20px; 
}
.Mobile .bg.box-tel:before{
    width: 100%;
}
.Tablet h1 {
  font-size: 40px;
}
.Mobile .box_text1, .Tablet .box_text1 {
    flex-direction: column;
    gap: 80px;
}
.Mobile .img1, .Tablet .img1,
.Mobile .blok_text1, .Tablet .blok_text1{
    width: 100%;
    padding: 0;
}
img{
    object-fit: cover;
}
.Mobile .box_text1 .img1 img,
.Mobile .img1.img4.mesure img { 
    height: 250px; 
    width: 100%;
}
.Tablet .box_text1 .img1 img{
    height: 300px;
    width: 100%;
}
.Mobile h1 {
    font-size: 35px;
}
.Mobile .boxCheck {
    padding: 0 20px 40px;
}
.Tablet .blok_text1 {
  padding: 0 20px 40px !important;
}
.Mobile h2 {
    font-size: 27px;
}
.Mobile .box-text3, .Tablet .box-text3 {
    flex-direction: column; 
}
.Mobile .mesure, .Tablet .mesure {
    width: 100%;
}
.Mobile .img3 img, .Tablet .img3 img {
    width: 100%;
    height: 350px; 
}
.Mobile .boxCheck.checkText3 {
    flex-direction: column;
    padding: 0;
}
.Tablet .boxCheck.checkText3 { 
  gap: 0; 
}
.Mobile .text4 p, .Tablet .text4 p { 
    width: 100%;
    padding: 30px 20px;
}
.Mobile .box-btn4, .Mobile .boxText4,
.Tablet .box-btn4 {
    flex-direction: column;
}
.Mobile .box-btn4, .Tablet .box-btn4 {
    gap: 0;
    align-items: flex-start;
}
.Tablet .boxText4 { 
  gap: 40px;
}
.Tablet .text4.mesure .btn-site.btn-head{
    margin-top: 30px;
}
.Tablet h2 {
  font-size: 32px;
}
.Mobile .boxText5 {
    flex-direction: column;
    gap: 120px;
}
.Mobile .text_, .Tablet .text_ { 
    padding: 66px 20px 40px; 
}
.Mobile .sect_bg,
.Tablet .sect_bg{
    padding: 80px 0;
}
.Mobile .devis_formulaire.mesure, 
.Tablet .devis_formulaire.mesure{
    padding: 20px;
}
.Mobile .inp-grid { 
    grid-template-columns: repeat(1, 1fr); 
}
.Mobile .boxDevis, .Tablet .boxDevis {
    flex-direction: column;
}
.Mobile textarea.form-input { 
    padding: 18px 18px 40px;
}
.Mobile input.form-input {
    padding: 18px 20px; 
}
.Tablet textarea.form-input { 
  max-width: 100%; 
  padding: 20px 20px 95px;
}
.Mobile .box_cage { 
    grid-template-columns: repeat(1, 1fr); 
}
.Tablet .box_cage {  
  grid-template-columns: repeat(2, 1fr); 
} 
.Mobile .cont-foot .boxCheck { 
    flex-direction: column;
    padding: 20px !important;
    gap: 28px;
}
.Mobile .textCheck p {
    line-height: 17px;
}
.Mobile .textCheck.tel-foot p { 
    flex-direction: column;
}
.Mobile .classe, 
.Mobile .cont-foot,
.Mobile .textCheck a { 
    font-size: 16px;
    line-height: 21px;
}
.Tablet .cont-foot .boxCheck{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
} 
.Tablet .boxCheck .checkBox:nth-child(3) { 
  grid-column: span 2;
}
.Mobile section.sectText2,
.Tablet section.sectText2{
    margin-top: 0;
}
.Mobile .prtBox-foot,
.Tablet .prtBox-foot{
    padding: 80px 20px;
}
.Mobile .box-foot { 
    grid-template-columns: repeat(1, 1fr); 
}
.Tablet .box-foot { 
  grid-template-columns: repeat(2, 1fr); 
}
.Tablet .footer.sect_bg,
.Mobile .footer.sect_bg {
  padding: 80px 0 20px !important;
}
.Mobile .copyright,
.Mobile .box-mention {
    flex-direction: column;
    gap: 15px;
}
.Mobile ul.services-footer,
.Tablet ul.services-footer {
    left: 20px;
    position: relative;
}
.Mobile .cage-foot li,
.Tablet .cage-foot li{ 
    left: 0;
}
.Mobile section.section.sect-prod:before,
.Tablet section.section.sect-prod:before{
    width: 100%;
}
.Mobile img{
    width: 100%;
}
.Mobile .box_fig1.box_flex,
.Tablet .box_fig1.box_flex {
    flex-direction: column;
}
.Mobile .boxImg1.mesure img{
    height: 300px;
}
.Mobile .text1Prest.mesure .box-left { 
    justify-content: center;
    text-align: center;
}
.Tablet .boxImg1.mesure img {
  width: 100%;
  height: 300px; 
}
.Mobile .boxCont-prest {
    flex-direction: column;
    gap: 0;
}
.Mobile .tel-blok {
    margin-top: 20px;
}
.Mobile i.fond-tel.fond-check.port{
    top: 25px;
}
.Tablet .boxCont-prest { 
  gap: 40px;
}
.Tablet .boxCont-prest .tel-blok a { 
  padding: 20px 10px 20px 32px;
}
.Tablet .text_cont { 
  font-size: 16px;
}
.Mobile .boxFig2.box_flex {
    flex-direction: column;
}
.Mobile figure.bg.pret2,
.Tablet figure.bg.pret2 { 
    padding: 80px 0;
}
.Mobile .boxDevis.box-contact,
.Tablet .boxDevis.box-contact { 
    padding: 80px 0;
}
.Mobile .boxCheck.cont-box .checkBox {
    padding: 0 !important;
}
.Mobile .cont-foot .boxCheck.cont-box {
    padding: 0 !important;
}
.Mobile div#Map{
    height: 300px;
    margin-bottom: 80px;
}
div#Messages {
    text-align: center;
    background-color: #000;    
    padding: 10px;
    width: 100%;
    z-index: 9999;
    position: fixed;
    top: 0;
    left: 0;
}

div#Messages p {
    margin: 0;
    color: #fff;     
    font-size: 20px;
}
.Tablet div#Messages p,
.Mobile div#Messages p {
    font-size:14px;
}
.blog_pageIntrouvable {
    background: #fff;
    position: fixed;
    height: 100%;
    width: 100%;
    font-size: 18px;
    z-index: 10000 !important;
    text-align: center;
    top: 0;
    left: 0;
}
.blog_pageIntrouvable .d-flex {
    display: -ms-flexbox!important;
    display: flex!important;
    -ms-flex-pack: center!important;
    justify-content: center!important;
    -ms-flex-align: center!important;
    align-items: center!important;
}
.blog_pageIntrouvable span {
    color: #000;
    margin-top: 20px;
    display: block;
}

.blog_pageIntrouvable > div {
  height: 100%;
  color: #333
}
.blog_pageIntrouvable h1 {
    font-size: 200px;
    color: #000000;
}
.blog_pageIntrouvable p {
    font-size: 36px;
    line-height: 100%;
    margin-top: -21px;
    text-transform: uppercase;
    letter-spacing: 10px;
    color: #000000;
}
.blog_pageIntrouvable a {
    color: #a80000;
    font-weight: 600;
    text-decoration: underline;
}
.blog_pageIntrouvable a:hover {
    text-decoration: underline;
}
#noDesktop { display: none; }
@media(max-width: 767px) {
  .blog_pageIntrouvable {
    font-size: 14px;
  }
  .blog_pageIntrouvable a {
      display: block;
  }
  .blog_pageIntrouvable p {
      font-size: 17px;
      letter-spacing: 5px;
      margin-top: -10px;
  }
  .blog_pageIntrouvable h1 {
    font-size: 100px;
  }
}
.Mobile .blog_pageIntrouvable span { 
    line-height: 28px;
}
.cat-item p {
  color: #626262;
}
button.navMobile img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}
.boxDevis.devisGratuit {
    display: block;
}
.boxDevis.devisGratuit .devis_formulaire.mesure {
    width: 80%;
    margin: auto;
    margin-top: 120px;
    margin-bottom: 120px;
}
.Mobile .boxDevis.devisGratuit .devis_formulaire.mesure,
.Tablet .boxDevis.devisGratuit .devis_formulaire.mesure {
    width: 100%; 
    margin-top: 80px;
    margin-bottom: 80px;
}
li.nav-submenu-item.active span {
    border-bottom: 1px solid #a80000;
}
.Mobile .box-btn4 .tel-blok {
    margin-top: 0;
}
.Mobile .boxImg1.mesure img,
.Mobile .img2prest img {
    width: 100%!important;
}
.Mobile li.nav-item.active,
.Tablet li.nav-item.active { 
    padding: 0 0 10px;
}


.page-mention {
    padding: 100px 0;
}
.Mobile .page-mention {
    padding: 50px 0;
}
.tel-top {
    background: #00417b;
    padding: 10px;
    display: flex;
    gap: 5px;
}
.box-tel {
    display: flex;
    gap: 10px;
}
.text-agence {
    font-size: 11px;
    line-height: 2;
    color: #cccccc;
} 
.text-agence a{
    color: #cccccc;
}
.reseau.rs-mob {
    justify-content: center;
    margin-top: 20px;
}
.Mobile a.logo img,
.Tablet a.logo img {
    width: 120px;
    height: 70px; 
}