@import url('https://fonts.googleapis.com/css?family=Raleway:300,400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Comfortaa:300,400,700');
@import url('https://fonts.googleapis.com/css?family=Montserrat:300,400,500,600,700');
body {
    background: #fff;
    font-size: 15px;
    font-family: 'Raleway', sans-serif;
    color: #515151;
    line-height: 24px
}

a {
    color: #ad0202;
    text-decoration: underline;
    transition: all .4s
}

a:active,
a:hover,
a:focus {
    color: #ad0202;
    text-decoration: none
}

.red {
    color: #fa1424
}

.image-right {
    float: right;
    margin: 22px 0 10px 15px
}

.image-left {
    float: left;
    margin: 0 15px 10px 0
}

h1,h2,h3,h4,h5,h6,
.h1,.h2,.h3,.h4,.h5,.h6 {
    line-height: 1em;
    text-transform: none;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
}

h1,.h1 {
    font-size: 46px;
    line-height: 48px;
    color: #000;
}

h2,.h2 {
    font-size: 30px;
    color: #ad0202;
    line-height: 37px;
}

h3,.h3 {
    font-size: 29px;
    line-height: 35px;
    color: #000
}

h4,.h4 {
    font-size: 28px;
    color: #ad0202;
    line-height: 33px;
}

h5,.h5 {
    font-size: 24px;
    line-height: 29px;
    color: #000
}

h6,.h6 {
    font-size: 20px;
    color: #ad0202;
    line-height: 25px;
}

iframe.iframe-page {
    border: none;
    margin: 10px 0;
}

hr {
    border-color: #e5e5e5
}

section.topbar {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    color: #fff;
    font-size: 16px;
    padding: 6px 0;
    border-bottom: 1px solid #484747
}

section.topbar .topnav {
    float: left;
}

section.topbar .social {
    float: right;
}

.topnav img {
    margin-right: 11px;
    padding-left: 0;
}

.is-sticky nav.main-nav {
    background: rgb(30, 30, 30)
}

#ContainerBlockSocial {
    display: inline-block;
    float: none
}

.social a.facebook::before {
    content: "\f09a"
}

.social a.instagram::before {
    content: "\f16d"
}

.social #ContainerBlockSocial.addthis_toolbox .at300b.addthis_32x32_style.addthis_button_google_plusone::before {
    content: "\f0d5";
}

.social #ContainerBlockSocial.addthis_toolbox .at300b.addthis_button_email::before {
    content: "\f003";
}

.social #ContainerBlockSocial.addthis_toolbox .at300b.addthis_button_facebook::before {
    content: "\f09a";
}

.social #ContainerBlockSocial.addthis_toolbox .at300b > span {
    display: none
}

.social a.facebook::before {
    content: "\f09a"
}

.social #ContainerBlockSocial.addthis_toolbox .at300b.addthis_32x32_style.addthis_button_google_plusone_share::before {
    content: "\f0d5"
}

.social #ContainerBlockSocial.addthis_toolbox .at300b.addthis_32x32_style.addthis_button_google_plusone #___plusone_0,
footer.bottom .social #ContainerBlockSocial.addthis_toolbox .at300b.addthis_32x32_style.addthis_button_google_plusone iframe {
    position: absolute!important;
    left: 0!important;
    right: 0!important;
    top: 3px!important;
    opacity: 0
}

.social #ContainerBlockSocial.addthis_toolbox .at300b::before,
.social a.facebook::before,
.social a.instagram::before {
    font-family: 'FontAwesome';
    speak: none;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    display: block;
    -webkit-font-smoothing: antialiased
}

.social #ContainerBlockSocial.addthis_toolbox .at300b,
.social .facebook,
.social .instagram {
    display: inline-block;
    font-size: 0px;
    cursor: pointer;
    margin: 0 0 0 5px;
    position: relative;
    z-index: 1;
    color: #adadad;
    text-decoration: none;
    transition: color .4s;
    float: none;
    text-align: center;
}

.social #ContainerBlockSocial.addthis_toolbox .at300b:hover,
.social a.facebook:hover,
.social a.instagram:hover {
    color: #930815
}

nav.main-nav {
    position: relative;
    z-index: 100;
    box-shadow: none;
    transition: background .4s, box-shadow .4s
}

nav.main-nav .sf-menu {
    text-align: right;
    align-self: auto;
    float: right;
}

nav.main-nav .mobile-nav {
    display: none;
    text-align: right;
    align-self: center
}

nav.main-nav .mobile-nav a {
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
    color: #fff;
    line-height: 40px;
    font-size: 24px;
    overflow: hidden
}

nav.main-nav .mobile-nav i.fa {
    background: #ad0202;
    text-align: center;
    color: #fff;
    width: 40px;
    line-height: 40px;
    border-radius: 50%;
    display: inline-block
}

nav.main-nav .mobile-nav:hover i.fa {
    background: #fff;
    color: #000
}

nav.main-nav .logo {
    position: relative;
    float: left;
    top: 8px
}

nav.main-nav .logo img.big {
    position: absolute;
    visibility: visible;
    opacity: 1;
    transition: opacity .4s, visibility 0 linear 0s, top .4s
}

.is-sticky nav.main-nav .logo {
    position: relative
}

header.top .container {
    position: relative;
    height: 100%
}

header.top .banner,
header.top .banner #slideshow {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: 0!important;
    width: auto;
    height: auto
}

header.top .slogan {
    font-weight: 500;
    position: absolute;
    top: 25px;
    right: 15px;
    color: #fff;
    font-size: 24px;
    text-transform: uppercase;
    text-align: right;
    text-shadow: 0px 4px 8.9px rgba(0, 0, 0, 0.91);
    line-height: 1.45em;
    z-index: 1;
    font-family: 'Montserrat', sans-serif;
}

header.top.big .slogan {
    font-size: 45px;
    top: 50%;
    text-align: center;
    margin-top: -175px;
    right: 0;
    left: 0;
}

header.top .slogan p {
    margin: 0
}

header.top .slogan a img {
    margin-right: 12px;
}

header.top:not(.big) .slogan a {
    font-size: 24px;
    padding: 5px 10px;
    margin: 10px 0;
}

header.top .slogan a:hover {
    background: #fff;
    color: #000
}

header.top {
    position: relative;
    height: 600px;
}

header.top.big {
    height: 910px
}

header.top.small {
    height: 400px
}

header.top .container {
    position: relative;
    height: 100%
}


/*header.top .banner #slideshow .camera_overlayer {box-shadow: inset 0 0 400px rgba(0,0,0,1);  }*/

header.top .banner:after {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(0, 0, 0, 0.30);
    z-index: 0;
}

header.top .slogan a {
    font-family: 'Raleway', sans-serif;
    font-size: 36px;
    line-height: 31px;
    text-shadow: none;
    display: inline-block;
    text-decoration: none;
    color: #fff;
    font-weight: 500;
    background: #d80b1f;
    box-shadow: none;
    transition: box-shadow .4s;
    margin-top: 25px;
    padding: 19px 31px;
    border-radius: 30px;
}

header.top .banner,
header.top .banner #slideshow {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: 0!important;
    width: auto;
    height: auto
}

section.banner .fluid_container #slideshow .camera_prev,
section.banner .fluid_container #slideshow .camera_next {
    position: absolute;
    background-color: rgb(236, 34, 50, 0.5);
    color: #fff;
    width: 52px;
    height: 50px;
    transition: all .4s;
}

section.banner .fluid_container #slideshow .camera_prev:hover,
section.banner .fluid_container #slideshow .camera_next:hover {
    background: #ec2232;
}

section.banner .fluid_container #slideshow .camera_prev span,
section.banner .fluid_container #slideshow .camera_next span {
    display: none;
}

section.banner .fluid_container #slideshow .camera_prev::before,
section.banner .fluid_container #slideshow .camera_next::before {
    font-family: 'FontAwesome';
    font-size: 24px;
    line-height: 50px;
    text-align: center;
    display: block;
}

section.banner .fluid_container #slideshow .camera_prev::before {
    content: '\f104';
}

section.banner .fluid_container #slideshow .camera_next::before {
    content: '\f105';
}

section.banner .fluid_container #slideshow > div > .camera_caption {
    display: none;
}

header.top .banner #slideshow .camera_overlayer {
    box-shadow: inset 0px 94px 200px rgba(0, 0, 0, 1);
}

section.home-content {
    position: relative
}

section.page-content {
    position: relative;
    padding-bottom: 20px;
}

article.content {
    position: relative;
    padding: 50px 0 30px
}

section.home-content article.content {
    padding: 80px 0 15px!important
}

article.content header.page-title {
    padding-bottom: 10px
}

article.content header.page-title h1 {
    position: relative;
    margin: 0 0 20px;
    padding-bottom: 60px;
    border-bottom: 1px solid #cfd0d7;
}

article.content header.page-title h1 .subtitle1 {
    color: #ad0202;
    font-weight: 600;
    font-size: 55px
}

article.content header.page-title + h2 {
    margin-top: 0;
    margin-bottom: 30px
}

article.content p {
    margin: 0 0 15px
}

article.content ul {
    list-style: outside disc;
    margin-left: 0;
    padding: 0
}

article.content ul li {
    position: relative;
    left: 1em;
    margin-left: 1em;
    padding-right: 1em
}

article.content ul ul {
    list-style-type: circle
}

article.content .table-style {
    position: relative;
    margin: 0 0 15px
}

article.content img {
    height: auto;
    max-width: 100%;
    outline: none;
}

p.logos-links img {
    border: 1px solid rgba(0, 0, 0, 0.35);
    padding: 8px;
    margin: 20px 5px;
}

article.content .table-style th {
    background: #ad0202;
    color: #fff
}

article.content .table-style th,
article.content .table-style td {
    border: 1px solid #ad0202;
    padding: 4px 5px
}

td.prix {
    width: 15%
}

section.home-content .photo {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 35%;
}

section.home-content .photo .img-box > img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

section.home-content {
    position: relative;
}

section.home-content .photo {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 35%;
    background: #000;
}

section.home-content .photo .img-box a > img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(100%);
    opacity: 0.73;
}

section.home-content .photo .img-box > img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}

section.contactform {
    position: relative;
}

section.photos {
    position: relative;
}

section.photos .holder.top {
    display: none!important;
}

section.photos .mcePxmGallery > br {
    display: none;
}

section.photos .highslide-gallery {
    min-height: 0!important
}

.home-content-box {
    position: relative;
    padding: 45px 0px 65px;
}

section.box-home {
    position: relative;
    background: url(../images/bg-box.jpg) center right no-repeat;
    padding: 114px 0px;
    color: #5b5b5b;
    text-align: left;
    background-size: cover;
}

section.box-home .box-content {
    float: left;
    display: inline-block;
    position: relative;
}

section.box-home h3 {
    margin: 0px;
    position: relative;
    text-transform: uppercase;
    color: #1f1f1f;
    font-size: 45px;
    text-align: left;
    margin-bottom: 50px;
    padding-top: 50px;
    font-weight: bold;
}

section.box-home h3::before {
    content: '';
    position: absolute;
    left: 0px;
    top: 0px;
    height: 2px;
    width: 240px;
    background: #d80b1f;
}

section.box-home p {
    color: #000;
}

section.box-home .boutton {
    background: #ad0202;
    text-decoration: none;
    color: #fff;
    text-transform: uppercase;
    font-size: 24px;
    line-height: 1;
    padding: 15px 15px;
    margin-top: 40px;
    border-bottom: none;
    display: inline-block;
}

section.box-home .boutton:hover {
    background: #1f1f1f;
}

.number-responsive {
    display: none
}

footer.bottom {
    position: relative;
    color: #fff;
    background: #1e1e1e;
}

footer.bottom section.address {
    padding: 83px 0px;
    width: 50%;
}

footer.bottom section.address h2 {
    position: relative;
    font-size: 20px;
    color: #8b8a8a;
    text-transform: uppercase;
    margin: 0 0 25px;
    line-height: 30px;
    padding-bottom: 25px;
    border-bottom: 1px solid #353535;
    width: 85%;
    padding-top: 10px;
}

.link1 {
    position: absolute;
    right: 0;
    top: 0;
    background: url(../images/map.jpg) no-repeat center bottom;
    height: 100%;
    width: 50%;
}

.googlemaps .googlemaps_v2 label.modal-label {
    font-size: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
}

footer .bloc1 {
    display: inline-block;
    position: relative;
    float: left;
}

footer .bloc2::before {
    content: '';
    position: absolute;
    left: 92px;
    top: 6px;
    height: 38px;
    width: 1px;
    background: #353535;
}

footer .bloc2 {
    display: inline-block;
    position: relative;
    padding-left: 150px;
    display: inline-block;
    position: relative;
}

.c1 {
    display: inline-block;
    position: relative;
    float: left;
}

.c2 {
    padding-left: 40px;
    display: inline-block;
    position: relative;
}

footer span.openingDay {
    height: 31px;
    line-height: 31px;
    display: inline-block;
    border: 1px solid #787878;
    text-align: center;
    width: 31px;
}

.open-contact span.openingDay {
    display: inline-block;
    width: 34px;
    text-align: left;
    position: relative;
}

.open-contact .openingDay::after {
    content: ':';
    position: absolute;
    right: 1px;
}

footer.maps {
    position: relative;
    height: 350px;
    overflow: hidden;
    background: #eee
}

footer.maps a:first-of-type {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
    font-size: 0
}

.googlemaps_v2 label.modal-label {
    cursor: pointer;
    font-weight: 400;
    text-decoration: underline;
    margin: 0;
    z-index: 99;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
}

footer.maps .googlemaps_v2 label.modal-label {
    cursor: pointer;
    font-weight: 400;
    text-decoration: underline;
    margin: 0;
    z-index: 99;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
    font-size: 0
}

.googlemaps_v2 .modal__inner iframe {
    position: absolute;
    width: 100% !important;
    height: 100% !important;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    filter: grayscale(100%);
    transition: filter .4s;
}

footer.maps iframe {
    position: absolute;
    width: calc(100vw + 200px);
    height: 550px;
    left: -100px;
    right: -100px;
    top: -100px;
    bottom: -100px;
    filter: grayscale(100%);
    transition: filter .4s;
}

footer.maps:hover iframe {
    filter: grayscale(35%)
}

footer.bottom2 {
    border-top: 4px solid #ad0202;
}

.googlemaps_v2 label.modal-label {
    text-decoration: underline;
    color: #ad0202;
}

.googlemaps_v2 label.modal-label:hover {
    color: #ad0202;
    text-decoration: none;
}

#scrollTopBtn {
    background: #ad0202!important;
    ;
    color: #fff!important;
    bottom: 33px!important;
    z-index: 100!important
}

#scrollTopBtn:hover {
    background: #000!important;
}

div.cc-cookies {
    width: 100%
}

.formError,
.formError *,
#fancybox-wrap,
#fancybox-wrap * {
    box-sizing: content-box
}

div#_atssh {
    bottom: 0
}

.cc-cookies {
    background: #ad0202!important;
    color: #fff!important
}

.cc-cookies a.cc-cookie-accept,
.cc-cookies-error a.cc-cookie-accept,
.cc-cookies a.cc-cookie-decline,
.cc-cookies-error a.cc-cookie-decline,
.cc-cookies a.cc-cookie-reset {
    background: #000!important;
    color: #fff!important;
    margin: 0 10px
}

.cc-cookies a:hover.cc-cookie-accept,
.cc-cookies-error a:hover.cc-cookie-accept,
.cc-cookies a:hover.cc-cookie-decline,
.cc-cookies-error a:hover.cc-cookie-decline,
.cc-cookies a:hover.cc-cookie-reset {
    background: #fff!important;
    color: #000!important
}

.img-box {
    width: 100%;
    height: 100%
}

@media only screen and (max-width: 1400px) {
    section.satisfaction .photo .img-box > img {
        width: auto;
        height: 100%;
        object-fit: cover;
        right: 0;
    }
}

@media only screen and (max-width: 1199px) {
    header.top.big {
        height: 600px
    }
    header.top.big .slogan {
        font-size: 47px
    }
    section.box-home .box-content {
        max-width: 360px;
    }
    section.box-home .boutton {
        font-size: 15px;
    }
    section.box-home h3 {
        font-size: 22px;
    }
}

@media only screen and (max-width: 991px) {
    nav.main-nav ul.sf-menu {
        display: none
    }
    nav.main-nav .mobile-nav {
        display: inline-block;
        margin-left: auto;
        float: right;
        margin: 25px 0;
    }
    article.content header.page-title h1 .subtitle1 {
        font-size: 35px;
    }
    header.top {
        height: 350px
    }
    header.top.small {
        height: 300px
    }
    header.top.big {
        height: 450px
    }
    header.top .container {
        position: static;
        height: auto
    }
    header.top .slogan,
    header.top.big .slogan {
        text-align: center;
        position: absolute;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        font-size: 24px;
        transform: none;
        padding: 15px;
        background: #ad020263;
        text-shadow: none;
        transition: background .4s
    }
    header.top .slogan:hover,
    header.top.big .slogan:hover {
        background: #ad0202;
    }
    header.top .slogan br {
        display: none
    }
    header.top .slogan a {
         font-size: 18px;
        padding: 5px 10px;
        margin: 5px 0;
    }
    article.content,
    section.home-content article.content {
        padding: 40px 0 30px!important
    }
    section.home-content article.content header.page-title h1 {
        margin: 0 0 25px;
        padding-bottom: 30px
    }
    h1,
    .h1 {
        font-size: 29px
    }
    .number-responsive {
        display: inline-block;
    }
    .number {
        display: none
    }
    footer .bloc2 {
        padding-left: 0px;
        display: block;
    }
    footer .bloc1 {
        display: block;
        float: none;
    }
    .c2 {
        padding-top: 15px;
        padding-left: 0px;
        display: block;
    }
    .c1 {
        display: block;
        float: none;
    }
    footer .bloc2::before {
        display: none;
    }
    .link1 {
        background-size: cover;
    }
}

@media only screen and (max-width: 767px) {
    .image-right,
    .image-left {
        float: none;
        margin: 10px auto;
        max-width: 100%;
        height: auto;
        display: table
    }
    /*h1,.h1{font-size:32px}*/
    section.box-home {
        background: url(../images/bg-box.jpg) center no-repeat;
    }
    header.top .slogan,
    header.top.big .slogan {
        font-size: 16px
    }
    article.content img {
        max-width: 100%;
        height: auto
    }
    table {
        position: relative;
        width: 100%;
        display: table;
        border: none
    }
    table > tbody > tr {
        width: 100%;
        display: table
    }
    table > tbody > tr > td {
        width: 100%!important;
        display: table-row;
        float: left
    }
    footer.bottom section.address {
        width: 100%;
    }
    .home-content-box {
        padding: 28px 0px 48px;
    }
    .link1 {
        background: url(../images/map.jpg) no-repeat bottom;
        height: 100%;
        width: 100%;
        top: auto;
        background-size: cover;
    }
}

@media only screen and (max-width: 480px) {
    article.content header.page-title h1 .subtitle1 {
        font-size: 33px;
    }
    section.box-home h3 {
        font-size: 17px;
    }
    nav.main-nav .logo img.big {
        max-width: 225px
    }
    section.topbar {
        font-size: 13px;
    }
    h1,
    .h1 {
        font-size: 18px
    }
    h2,
    .h2 {
        font-size: 23px;
        line-height: 33px;
    }
    h3,
    .h3 {
        font-size: 22px;
        line-height: 30px;
    }
    h4,
    .h4 {
        font-size: 21px;
        line-height: 28px;
    }
    h5,
    .h5 {
        font-size: 20px;
        line-height: 25px;
    }
    h6,
    .h6 {
        font-size: 18px;
        line-height: 23px;
    }
    #scrollTopBtn {
        bottom: 30px !important;
    }
}

@media only screen and (max-width: 350px) {
    .topbar .col-sm-6.col-xs-8 {
        width: 100%!important
    }
    .topbar .col-sm-6.col-xs-4 {
        width: 100%!important
    }
}