/*
Wireframe: 07
Version: 1.0
Update: 2020.03.03
*/

/*--------------------------------------------------
>> TABLE OF CONTENTS:
----------------------------------------------------
# Fonts
# General
# Navigation
    ## Superfish
    ## Mobile navigation
--------------------------------------------------*/

/*--------------------------------------------------
# Fonts
--------------------------------------------------*/
@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-SemiBold.woff2') format('woff2'),
        url('../fonts/Montserrat-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-SemiBoldItalic.woff2') format('woff2'),
        url('../fonts/Montserrat-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Italic.woff2') format('woff2'),
        url('../fonts/Montserrat-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Medium.woff2') format('woff2'),
        url('../fonts/Montserrat-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-MediumItalic.woff2') format('woff2'),
        url('../fonts/Montserrat-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-BoldItalic.woff2') format('woff2'),
        url('../fonts/Montserrat-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Bold.woff2') format('woff2'),
        url('../fonts/Montserrat-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Regular.woff2') format('woff2'),
        url('../fonts/Montserrat-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Exo 2';
    src: url('../fonts/Exo2-BoldItalic.woff2') format('woff2'),
        url('../fonts/Exo2-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Exo 2';
    src: url('../fonts/Exo2-Bold.woff2') format('woff2'),
        url('../fonts/Exo2-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


body {
        background: url(../images/bg-body.jpg)no-repeat center top fixed;
    background-size: cover;
    color: #333333;
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    line-height: 25px;
}
a {
    color: #c81318;
    text-decoration: underline;
}
button, input, select, textarea,a{
      outline: none !important;
}
a:active, a:hover, a:focus {
    color: #202453;
    text-decoration: underline;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Exo 2', sans-serif;
    line-height: 1.2em;
    text-transform: uppercase;
    font-weight: 700;
    color: #202453;
}
h1 {
    font-size: 40px;
}
h2 {
    font-size: 30px;
  color:#c81318;
}
h3 {
    font-size: 26px;
}
h4 {
    font-size: 24px;
}
h5 {
    font-size: 22px;
}
h6 {
    font-size: 20px;
}
hr {
	border-color: #202453;
}
/*cookies***/
.btn-gdpr:hover{
            background: #202453!important;
            color: #fff!important;
}
.btn-gdpr .btn-agree:hover,.btn-gdpr .btn-params:hover{
                background: #c81318 !important;
                color: #fff!important;
            }
/****/
header.top.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #fff;
    transform: translateY(-100%);
    transition: transform .6s;
    border-bottom: 2px solid #142a7e;
}
header.top.sticky .header-grid .header-center .logo a svg {
    fill: #fff;
}
header.top.sticky a {
    color: #000;
}
header.top.sticky .header-grid {
    height: auto;
    padding: 5px 0;
}

header.top.sticky.sticky-appear {
    transform: translateY(0);
}
.has-lightbox header.top.sticky.sticky-appear {
    transform: translateY(-100%);
}

.logo-nav nav.mobile-nav {
    display: none;
}
.logo-nav nav.mobile-nav  {
	color: white !important;
	border: 1px solid white;
	background: #000;
	padding: 0;
	border-radius: 0;
	position: fixed;
	right: 10px;
	top: 40px;
	font-size: 22px;
	width: 45px;
	height: 45px;
	line-height: 45px;
	text-align: center;
	z-index: 80;
	text-decoration: none;
}
.logo-nav nav.mobile-nav a {
	color: white;
}

/************/
.topbar {
    position: relative;
    z-index: 1;
    background: #202453;
    min-height: 50px;
    display: grid;
    align-items: center;
  padding: 5px 0;
}

.topbar .adr {
	color: #fff;
    text-decoration: none;
    display: inline-block;
    background: url(../images/icon-map.png) no-repeat left center;
    padding-left: 20px;
   float: right;
}
.topbar .tel.work {
    color: #fff;
    display: inline-block;
    background: url(../images/icon-tel.png) no-repeat left center;
    padding-left: 26px;
  font-size: 20px;
}
.topbar .tel.work a {
    color: #fff;
    text-decoration: none;
   font-size: 20px;
      font-weight: 700;
}
.topbar .tel.work a:hover {
    color: #c81318;
}
div#logo .logo {
	max-width: 100%;
}
div#logo {
    display: inline-block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 15px;
    z-index: 10;
}
/*div#sticky-wrapper {
    height: auto!important;
}*/

.logo-nav {
    z-index: 2;
    position: relative;
    background: url(../images/bg-top.jpg)no-repeat center top;
    background-size: cover;
    min-height: 211px;
    display: grid;
    align-items: center;
}
/*--------------------------------------------------
# Navigation
--------------------------------------------------*/

/*--------------------------------------------------
## Superfish
--------------------------------------------------*/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu li {
	position: relative;
}
.sf-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 99;
}
.sf-menu > li {
	/*float: left;*/
	display: inline-block;
}
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}

.sf-menu a {
	display: block;
	position: relative;
}
.sf-menu ul ul {
	top: 0;
	left: 100%;
}
.sf-menu a {
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 700;
  padding: 70px 15px 15px;
  color: #333333 !important;
  line-height: 1em;
  transition: all 0.4s;

}
.sf-menu li:last-child a{
  
  padding-right:0;
}
.sf-menu li:first-child a{
  
  padding-left:0;
}
.sf-menu ul li:first-child a {
    padding-left: 1em!important;
}
nav.main-nav li#menu_21{
	margin-left: 443px;
}
.is-sticky nav.main-nav li#menu_21 {
    margin-left: 0px;
}
a#prestations {
    pointer-events: none;
}

/****/
.is-sticky nav.main-nav {
    margin: 0;
    background: #e3e3e3;
    z-index: 99;
    left: 0;
    right: 0;
    width: auto!important;
    text-align: center;
    border-bottom: 2px solid #0000003b;
    padding: 5px 0;
}
.is-sticky nav.main-nav .sf-menu>li>a {
    padding-top: 17px !important;
}
.sf-menu li {
	white-space: nowrap;
}
.sf-menu > li {
    margin-left: 0px;
}
.sf-menu > li > a {
    position: relative;
    z-index: 1;
}

.sf-menu > li > a:hover::before,
.sf-menu > li.sfHover > a::before, .sf-menu > li.selected > a::before, .sf-menu > li.active > a::before {
    /*transform: translate(-50%, -50%) rotate(45deg) scale(1);*/
}
.sf-menu ul {
	background:white;
	padding: 15px 10px;
	min-width:180px;
	text-align: left;
}
.sf-menu ul a {
    font-weight: normal;
    text-transform: none;
    color: #222!important;
    padding: .5em 1.5em .5em 1em;
    transition: color .4s, padding .4s
}
.sf-menu ul a:hover,
.sf-menu ul .selected a, .sf-menu ul .active a {
    color: #c81318 !important;
    padding-right: 1em;
    padding-left: 1.5em;
}
.sf-menu ul a:hover::before,
.sf-menu ul .selected a::before, .sf-menu ul .active a::before {
    transform: translateY(-50%) rotate(-45deg) scale(1);
}
.sf-menu>li>a:hover,
.sf-menu>li.sfHover>a, .sf-menu>li.selected>a, .sf-menu>li.active>a {
  color: #c81318 !important;
}
/*** arrows (for all except IE7) **/
.sf-arrows .sf-with-ul {
}
/* styling for both css and generated arrows */
.sf-arrows .sf-with-ul::after {
  content: '\f107';
font-family: FontAwesome;
font-size: 15px;
line-height: 1em;
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
transition: color .4s;
}
.sf-arrows > .active > .sf-with-ul::after, .sf-arrows > .selected > .sf-with-ul::after, .sf-arrows > .sfHover > .sf-with-ul::after, .sf-arrows > li:hover > .sf-with-ul::after, .sf-arrows > li > .sf-with-ul:focus::after, .sf-menu ul li a:hover, .sf-menu ul li.active > a, .sf-menu ul li.selected > a, .sf-menu ul li.sfHover > a {
	color: #fff;
}
/*--------------------------------------------------
## Mobile navigation
--------------------------------------------------*/
.site-overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	opacity: 0;
	transform: translate3d(100%,0,0);
	transition: opacity 0.4s, transform 0s 0.4s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
/* Close Button */
.close-button {
	width: 1.5em;
	height: 1.5em;
	position: absolute;
	right: 1em;
	top: 1em;
	overflow: hidden;
	text-indent: 1em;
	font-size: 0.75em;
	border: none;
	background: transparent;
	color: transparent;
}
.close-button::before,
.close-button::after {
	content: '';
	position: absolute;
	width: 3px;
	height: 100%;
	top: 0;
	left: 50%;
	background: #fff;
	transition: background .4s;
}
.close-button::before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.close-button::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.close-button:hover::before,
.close-button:hover::after {
	background: #ed9503;
}
/* Menu */
.menu-wrap {
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	z-index: 1001;
	width: 260px;
	height: 100%;
	background: #000;
	box-shadow: 0 0 20px rgba(0,0,0,.8);
	padding: 40px 20px 20px;
	transform: translateX(-100vw);
	transition: transform 0.4s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.mobile-menu {
	transform: translateX(500px);
}
.mobile-menu > ul,
.mobile-menu .language {
	display: block;
	transform: translateX(-1000px);
}
.mobile-menu,
.mobile-menu > ul,
.mobile-menu .language {
	transition: transform 0s 0.4s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.mobile-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
    font-size: .75em;
    letter-spacing: 0.2em;
}
.mobile-menu ul ul {
    font-size: 1em;
	background: rgba(0,0,0,.15);
	margin-top: 5px;
	margin-bottom: -5px;
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li:first-child {
	border-top: none;
}
.mobile-menu > ul ~ ul li:first-child {
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li {
	padding: 5px 0;
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li li {
	position: relative;
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li li::before {
	content: '\f105';
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
	position: absolute;
	color: rgba(255,255,255,.5);
	z-index: 5;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
}
.mobile-menu a {
    text-transform: uppercase;
	padding: 5px 10px;
	display: block;
    color: #fff;
	text-decoration: none;
	font-weight: bold;
	transition: background .4s;
}
.mobile-menu a:hover, .mobile-menu .selected > a, .mobile-menu .active > a {
	background: #c81318;
}
.mobile-menu li li a {
	padding-left: 25px;
}
/* Language menu */
.mobile-menu .language {
    text-align: center;
    margin-top: 15px;
}
.mobile-menu .language a {
    text-transform: uppercase;
	padding: 5px 10px;
	display: inline-block;
    color: #fff;
	text-decoration: none;
	font-weight: bold;
}
/* Shown menu */
.show-menu .menu-wrap {
	transform: translate3d(0,0,0);
	transition: transform 0.8s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.show-menu .mobile-menu,
.show-menu .mobile-menu ul,
.show-menu .mobile-menu .language {
	transform: translate3d(0,0,0);
	transition: transform 0.8s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.show-menu .mobile-menu ul,
.show-menu .mobile-menu .language {
	transition-duration: 0.9s;
}
.show-menu .site-overlay {
	opacity: 1;
	transition: opacity 0.8s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transform: translate3d(0,0,0);
}
/********************/
.logo-nav .mobile-nav {
    display: none;
}
.logo-nav .mobile-nav  {
	color: white !important;
	border: 1px solid white;
	background: #000;
	padding: 0;
	border-radius: 0;
	position: fixed;
	right: 10px;
	top: 10px;
	font-size: 22px;
	width: 45px;
	height: 45px;
	line-height: 45px;
	text-align: center;
	z-index: 80;
	text-decoration: none;
}
.logo-nav .mobile-nav a {
	color: white;
}
section.banner {
    position: relative;
    margin: 0;
    height: 642px;
}
section.banner.small {
    height: 500px;
}
.diy-slideshow {
    position: absolute !important;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 0;
}
/****************************************/
.fixed-bar {
    position: fixed;
    z-index: 99;
    top: 32vh;
    width: 46px;
    right: 0;
}
.fixed-bar i {
    font-style: normal !important;
}
/**  facebook_plugin **/
.facebook_plugin{
    position: relative;
    right: 0px;
    height: 50px;
    z-index: 11;
    -webkit-transition: all .8s ease;
    -o-transition: all .8s ease;
    transition: all .8s ease;
    background:#c81318 url(../images/icon-fb.png)no-repeat center top;
    width: 52px;
    font-family: FontAwesome;
    color: #fff;
    text-align: center;
    font-size: 20px;
    display: grid;
    align-content: center;
    margin-bottom: 2vh;
  border-radius:5px 0 0 5px;
}
.facebook_plugin a{
   color: #fff;
      text-decoration: none !important;
  width: 52px;
      line-height: 50px;
    height: 50px;
}
.facebook_plugin:hover{
    background:  #202453 url(../images/icon-fb.png)no-repeat center top;
    color:#fff;
}
.fa-facebook-f:before,.fa-instagram:before,.fa-google:before {
     content: ""!important; 
}
/**  insta_plugin **/
.instagram_plugin {
    position: relative;
    right: 0px;
    height: 50px;
    z-index: 11;
    -webkit-transition: all .8s ease;
    -o-transition: all .8s ease;
    transition: all .8s ease;
    background:#c81318 url(../images/icon-insta.png)no-repeat center top;
    width: 52px;
    content: "\f16d";
    font-family: FontAwesome;
    color: #fff;
    text-align: center;
    font-size: 20px;
    display: grid;
    align-content: center;
    margin-bottom: 2vh;
   border-radius:5px 0 0 5px;
}
.instagram_plugin a{
   color: #fff;
  width: 52px;
      line-height: 50px;
    height: 50px;
}
.instagram_plugin:hover{
   background:  #202453 url(../images/icon-insta.png)no-repeat center top;
    color:#fff;
}

/**  google_plugin **/
.google_plugin {
    position: relative;
    right: 0px;
    height: 50px;
    z-index: 11;
    -webkit-transition: all .8s ease;
    -o-transition: all .8s ease;
    transition: all .8s ease;
    background: #c81318 url(../images/icon-google.png)no-repeat center top;
    width: 52px;
    content: "\f16d";
    font-family: FontAwesome;
    color: #fff;
    text-align: center;
    font-size: 20px;
    display: grid;
    align-content: center;
    margin-bottom: 2vh;
   border-radius:5px 0 0 5px;
}
.google_plugin a{
  color: #fff;
      width: 52px;
      line-height: 50px;
    height: 50px;
  text-decoration: none;
}
.google_plugin:hover{
 background:  #202453 url(../images/icon-google.png)no-repeat center top;
    color:#fff;
}
/****************/
.marketing-wrapper2 {
    left: 50%;
    transform: translate(-50%);
    position: absolute;
    bottom: 0;
    margin-bottom: 144px;
    text-align: center;
    z-index: 1;
}
.marketing-wrapper2 .call-to-action:hover {
    background: #202453;
    text-decoration: none;
}
.marketing-wrapper2 .call-to-action {
    color: #fff;
    font-weight: 700;
    background: #c81318;
    font-size: 25px;
    text-transform: uppercase;
    line-height: 86px;
    padding: 0;
    border-radius: 0;
    display: table;
    margin: 0 auto;
    float: none;
    width: 409px;
    text-decoration: none;
}
/************ Content ***************/
section.home-content.content {
    position: relative;
    padding: 32px 0 119px;
    margin: 153px  0 0;
}
section.content.second {
    position: relative;
    padding: 32px 0 0;
    margin: 50px 0 0;
}
section.home-content.content:before,section.content.second:before {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    background: #c81318;
    height: 100%;
    width: auto;
    left: 50%;
    z-index: -1;
    margin-left: 151px;
    max-height: 468px;
}
section.home-content .grid-home .photo-home ,section.content.second .grid-home .photo-home{
    order: 2;
}
section.home-content.content .photo-home img:hover,section.content.second .photo-home img:hover{
    transform: scale(1.1);
}
section.home-content .grid-home ,section.content.second .grid-home{
    display: grid;
    grid-template-columns: 48% auto;
    grid-gap: 106px;
    clear: both;
    align-items: start;
}
section.home-content.content .photo-home img ,section.content.second .photo-home img {
    transition: all .4s;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
section.content.home-content h1{
    margin: 0;
    padding: 48px 0 77px;
}
section.content.second h2{
    margin: 0;
    padding: 45px 0 37px;
  font-size: 40px;
}
.fullsite {
	overflow: hidden;
}
/**********/
section.content.first {
    padding: 31px 0;
    position: relative;
      z-index: 1;
}
section.content.first:before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    background: #202453;
    height: 100%;
    width: auto;
    right: 50%;
    z-index: -1;
    margin-right: 154px;
  max-height: 475px
}
section.content.first  h2 {
    padding: 39px 0 77px;
    font-size: 40px;
    margin: 0;
}
section.content.first .grid-home {
    display: grid;
    grid-template-columns: 44% auto;
    grid-gap: 97px;
    clear: both;
}

section.content.first .grid-home .photo-home img {
    transition: all .4s;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
section.content.first .photo-home img:hover {
    transform: scale(1.1);
}
section.content-wrapper.content h2 {
    margin: 0;
    padding: 0 0 54px;
}
/**************boxs************/
section.boxes {
    padding: 171px 0 80px;
    position: relative;
    text-align: center;
}
section.boxes .bx-home.box {
    position: relative;
    margin: 0;
    display: table;
    height: auto !important;
    min-height: 338px;
}
section.boxes .bx-txt{
    text-align: center;
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 0;
    z-index: 1;
   transition: all 0.4s;
      display: grid;
    align-items: stretch;
  background:rgb(32 36 83 / 80%);
}
section.boxes .bx-home:hover .bx-txt {
      min-height: 171px;
    bottom: 84px;
   background: rgb(200 19 24 / 80%);
}

section.boxes .bx-img {
    position: relative;
    height: 100%;
    width: 100%;
}
section.boxes .pictos-slider {
    display: grid;
    grid-template-columns: auto auto auto;
    column-gap: 38px;
    row-gap: 22px;
}
section.boxes .bx-img img.img-responsive.center-block {
    width: 100%;
    height: 100%;
    object-fit: cover;
        min-height: 338px;
}
section.boxes h2 {
	color: #fff;
	padding: 0;
	font-size: 20px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 0;
	min-height: 64px;
	display: grid;
	align-items: center;
	height: auto !important;
}
section.boxes .bx-home:hover h2 {
    background: transparent;
}

section.boxes .btn-bx {
    color: #c81318;
    font-weight: 700;
    width: 112px;
    height: 46px;
    background: #fff;
    margin:0 auto 24px;
    font-size: 15px;
    display: none;
    text-transform: uppercase;
    line-height: 46px;
    padding: 0 5px;
}
section.boxes .bx-home:hover .btn-bx,section.boxes .bx-home:hover p {
    display: block;
}

section.boxes a.link-box {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
    z-index: 2;
}
/*****gallery******/
section.gallery-home {
    position: relative;
    padding:94px 0 178px;
    overflow: hidden;
}

section.gallery-home .container {
    max-width: 100%;
    width: 100%;
    padding: 0;
}
section.gallery-home .holder {
    display: none;
}

section.gallery-home #galhome .imgthumbpos {
    padding: 0;
    float: none;
    opacity: 1!important;
    display: inline-block !important;
}
section.gallery-home #galhome .highslideContainer a.highslide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
section.gallery-home #galhome a.highslide {
    display: block;
    width: 100%;
    height: 100%;
    background: transparent;
    position: relative;
    text-decoration: none;
    outline: none;
}
section.gallery-home #galhome .highslideContainer {
    height: auto;
}
section.gallery-home #galhome a.highslide::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
    box-sizing: border-box;
    color: transparent;
    font-family: Arial;
    line-height: 42px;
    font-size: 24px;
    border-radius: 0;
    margin: 0;
    -ms-transform: scale(0, 0);
    -webkit-transform: scale(0, 0);
    transform: scale(0, 0);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    border: none;
    background: rgb(200 19 24 / 80%);
}

section.gallery-home .holder.top.topgalhome,section.gallery-home .highslide-gallery .highslideContainer a.highslide::before{
  	display:none;
}
.highslide-gallery .highslideContainer a.highslide:hover img {
    opacity: 1 !important;
}
section.gallery-home #galhome .highslideContainer a.highslide:hover::after{
    transform: scale(1);
}
section.gallery-home .slick-initialized .slick-slide {
    margin: 0;
}
section.gallery-home .slick-slider {
    margin: 0;
      min-height: auto !important;
}
section.gallery-home .marques-slider {
    margin: 0px!important;
  padding: 0;
}
section.gallery-home .slick-dots{
         position: absolute;
        bottom:-62px;
        margin: 0;
    }
section.gallery-home .slick-dots li{
        width: 13px;
        margin: 0 6px;
    }
section.gallery-home .slick-dots li button{
        width: 13px;
        height: 13px;
  border: none;
    }
section.gallery-home .slick-dots li button:before {
    font-size: 10px;
    background: rgb(0 0 0 / 60%);
    border: none;
    width: 13px;
    height: 13px;
    content: ""!important;
    border-radius: 50%;
    opacity: 1;
  border:none;
}
section.gallery-home .slick-dots li.slick-active button:before{
        background: #000000;
         opacity: 1;
    }


/*--------------------------------------------------
# footer
--------------------------------------------------*/
footer.bottom {
    background: url(../images/bg-footer.jpg)no-repeat center top;
    padding: 89px 0 58px;
    position: relative;
    background-size: cover;
    z-index: 0;
    border-bottom: 23px solid #202453;
}

footer.bottom .grid-footer {
    display: grid;
    grid-template-columns: auto auto auto auto;
    grid-gap: 25px;
}
footer.bottom .bloc-center {
    margin: 61px auto 0;
}
footer.bottom .logo-footer img {
    max-width: 100%;
    height: auto;
}
footer.bottom .footer-adr {
    text-decoration: none;
    display: inline-block;
    background: url(../images/footer-map.png) no-repeat left 5px;
    padding-left: 22px;
      margin: 11px 0 0;
}
footer.bottom .tel.cell {
    background: url(../images/footer-tel.png) no-repeat left 5px;
    padding-left: 22px;
    display: grid;
    align-items: center;
}
footer.bottom .tel.cell a{
    font-size: 20px;
   font-weight: 700;
  text-decoration: none;
  color:#333333;
}
footer.bottom .tel.cell a:hover {
    color:#c81318!important;
    
  text-decoration: none;
}

#scrollTopBtn:hover {
    background-color: rgba(0,0,0,1)!important;
    color: white!important;
}
#scrollTopBtn {
    right: 50%!important;
    margin-right: -20px!important;
    bottom: 117px!important;
    background: #202453 !important;
}
/*****/
footer.bottom .social-footer {
    text-align: center;
}
footer.bottom .networks_linking {
    display: inline-block;
    margin: 66px 0 0;
}
footer.bottom .networks_linking a {
    font-size: 28px;
    color: #fff!important;
        width: 52px;
    height: 50px;
    line-height: 50px;
    vertical-align: top;
    display: inline-block;
    text-align: center;
    position: relative;
    border-radius: 50%;
    background: #202453;
    margin-left: 10px;
}
footer.bottom .networks_linking a:hover {
      background: #c81318;
    color: #fff !important;
}
footer.bottom .networks_linking .fa {
    font-weight: 300;
}
footer.bottom .fa-facebook:before, footer.bottom .fa-instagram:before, footer.bottom .fa-google:before, footer.bottom .fa-linkedin:before {
    content: ""!important;
}
footer.bottom a.networks_facebook {
    background: #202453 url(../images/icon-fb.png)no-repeat center top;
}
footer.bottom a.networks_facebook:hover {
    background: #c81318 url(../images/icon-fb.png)no-repeat center top;
}
footer.bottom a.networks_google {
    background: #202453 url(../images/icon-google.png)no-repeat center top;
}
footer.bottom a.networks_google:hover {
    background: #c81318 url(../images/icon-google.png)no-repeat center top;
}
footer.bottom a.networks_instagram {
    background: #202453 url(../images/icon-insta.png)no-repeat center top;
}
footer.bottom a.networks_instagram:hover {
    background: #c81318 url(../images/icon-insta.png)no-repeat center top;
}
.social-footer {
    text-align: right;
}
/*----social---*/
.social{
    text-align: center;
}
.footer-nav div#ContainerBlockSocial p.title {
    display: none;
}
.footer-nav {
    text-align: center !important;
    padding: 15px 0;
    background: #c81318;
    color: #fff;
}
.footer-nav p {
    padding: 0;
    color: #000!important;
    font-size: 15px;
  margin:0;
}
 .footer-nav p small a{
    padding: 0;
    color:#fff!important;
}
 .footer-nav p small a:hover{
    color: #000!important;
}
.footer .social{
    float: left!important;
    margin: 25px 0;
}

/*********/
.footer-nav div#ContainerBlockSocial .title {
    display: none;
}

/*/social*/
.footer-nav div#ContainerBlockSocial .title {
    display: none;
}
.footer-nav div#ContainerBlockSocial {
    font-size: 18px!important;
    float: none;
    clear: both;
    margin-top: 10px;
    text-align: center;
    display: block;
}
.footer-nav div#ContainerBlockSocial>span {
        display: none;
}
.footer-nav  .dummy .at300bs,.footer-nav  .at300bs, .footer-nav  .at15t {
    overflow: hidden;
    height: 22px !important;
    width: 22px !important;
    background: transparent!important;
    line-height: 22px !important;
    display: inline-block!important;
    text-align: center!important;
    }
#ContainerBlockSocial .at300b .at300bs:after{
    -webkit-transition: all .4s,font-size 0s;
    -o-transition: all .4s,font-size 0s;
    transition: all .4s,font-size 0s;
    color: #fff;
    font-family: 'FontAwesome';
}
.footer-nav .addthis_default_style .addthis_separator, .footer-nav .addthis_default_style .at300b,.footer-nav .addthis_default_style .at300bo, .footer-nav .addthis_default_style .at300m, .footer-nav .addthis_default_style .at300bs{
    float: none!important;
    background: transparent;
    display: inline-block;
}
.footer-nav .addthis_default_style .at300b, .footer-nav .addthis_default_style .at300bo, .footer-nav .addthis_default_style .at300m {
    padding: 0 2px!important;
}
.footer-nav .at15t_email::after {
    content: '\f0e0' !important;
    }
.footer-nav  .at15t_facebook::after {
    content: '\f09a' !important;
    }
.footer-nav  .at15t_twitter::after {
    content: '\f099' !important;
    }
.footer-nav  .at15t_linkedin::after {
    content: '\f0e1' !important;
    }

.footer-nav  .at300bs:hover:after{
    color: #000!important;
}
.footer-nav  .dummy .at300bs:hover, .footer-nav  .at300bs:hover, .footer-nav  .at15t:hover{
    opacity: 1!important;
}

.footer-nav p small {
    font-size: 100%;
}
div#_atssh{
    display: none;
}
div#ContainerBlockSocial>span {
        display: none!important;
}
/**********/
section.content {
    padding: 60px 0;
    position: relative;
}
section.content h1, section.content h2, section.content h3, section.content h4, section.content h5, section.content h6 {
    margin-bottom: 25px;
    margin-top: 0;
}
article div.text-resize ul li {
    background: url(../images/bullet.png) no-repeat left center;
    line-height: inherit;
    padding-left: 20px;
    list-style: none;
    margin-left: -20px;
    text-align: left;
}
section.content.content-pag .page {
    position: relative;
    z-index: 0;
}
section.content .box-light, section.content .box-dark, section.content .box-border-right, section.content .box-border-left {
    padding: 15px;
    margin: 0 0 20px;
}

section.content .box-border-right, section.content .box-border-left {
    background: rgba(0,0,0,0.1);
}
section.content .box-border-left {
  border-left: 8px solid #c81318;
}
section.content .box-border-right {
  border-left: 8px solid #c81318;
}
.box-light {
    background: rgba(0,0,0,0.1);
    padding: 15px;
    margin: 0 0 20px;
}
.box-dark {
    background: #c81318;
    padding: 15px;
    margin: 0 0 20px;
   color: #fff;
}

section.content .box-dark h1,section.content .box-dark h2,section.content .box-dark h3,section.content .box-dark h4,section.content .box-dark h5,section.content .box-dark h6{
    color: #fff;
}
section.content .box-dark a{
    color: #000;
}

/****************** modules ************/
section.news {
    position: relative;
}
section.news.news-home {
    padding: 0 40px 102px;
}
.newsTemplate section.news {
    padding-top: 0;
}
section.news #AllNews {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 23px;
}
section.news #AllNews figure.Item {
    position: relative;
    background: #ccc;
    color: #fff;
    display: grid  !important;
    grid-template-rows: 307px 1fr;
}
section.news #AllNews figure.Item:before {
  content:"";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgb(32 36 83 / 73%);
  opacity : 0;
  transition: opacity .6s;
  z-index: 2;
  pointer-events: none;
}
section.news #AllNews figure.Item:hover:before {
  opacity : 1;
  transition: opacity .6s;
}
section.news #AllNews figure.Item .photo {
    transition: opacity .6s;
}
section.news #AllNews figure.Item:hover .photo {
    opacity: .7;
}
section.news #AllNews figure.Item .photo.nophoto {
}
section.news #AllNews figure.Item .photo.nophoto img {
    object-fit: scale-down;
    object-position: center top;
}
section.news #AllNews figure.Item:hover .photo.nophoto {
}
section.news #AllNews figure.Item .photo img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
}
section.news #AllNews figure.Item figcaption {
    z-index: 10;
    background: rgb(200 19 24 / 70%);
    padding: 40px 35px 50px;
}
section.news #AllNews figure.Item:hover figcaption {
  background: transparent;
}
section.news #AllNews figure.Item figcaption h3 {
    margin: 0 0 20px;
  color: #fff;
}
section.news #AllNews figure.Item figcaption h3 span {
    font-size: 36px;
    line-height: 1.2em;
    letter-spacing: 0;
    text-transform: none;
    font-weight: bold;
    display: inline-block;
    border-bottom: 1px solid #fff;
}
section.news #AllNews figure.Item figcaption h3 span:last-child {
    text-transform: none;
    font-weight: bold;
    font-size: 26px;
    letter-spacing: 0;
    border: none;
}
section.news #AllNews figure.Item figcaption p{
	font-size: 15px;
  line-height: 24px;
  letter-spacing: 0.015em;
  color: white;
}
section.news #AllNews figure.Item figcaption a.button {
    display: inline-block;
	font-size: 15px;
    font-weight: bold;
	background: #202453;
	text-transform: uppercase;
    color: #fff;
    padding: 11px 30px;
    text-decoration: none;
    margin-top: 17px;
  	letter-spacing: 0.05em;
}
section.news #AllNews figure.Item:hover figcaption a.button {

	background: #c81318;
	text-transform: uppercase;
    color: #fff;
 

}
section.news #AllNews figure.Item figcaption a.button::after {
   /* content: '';*/
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 20;
}
/*section.news #AllNews figure.Item:hover figcaption a.button {
    color: #fff;
    background: #b5a46d;
}*/
section.news.news-home #AllNews {
    display: block;
}
section.news.news-home .slick-slide {
    margin: 0 11px;
}
section.news.news-home .slick-dots li{
    width: 12px;
    height: 12px; 
    margin: 0 4px;
}
section.news.news-home .slick-dots{
     position: absolute;
    bottom: -40px;
    margin: 0;
}
section.news.news-home .slick-dots li button:before{
    font-size: 12px;
    background: transparent;
    border: 1px solid #ed9503;
    width: 12px;
    height: 12px; 
    content: ""!important;
    border-radius: 50%;
}
section.news.news-home .slick-dots li.slick-active button:before,section.news.news-home .slick-dots li button:before{
    opacity: 1;
}
section.news.news-home .slick-dots li.slick-active button:before{
    background: #ed9503;
}
img.img-news {
    float: right;
    margin: 0 0px 15px 25px;
    max-height: 170px;
}
.fa-level-up:before {
    content: "\f148" !important;
}
section.boxes a.link, section.content a.link {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    outline: none;
    font-size: 0;
    z-index: 2;
    height: 500px;
}
/***avis***/
.guestbook-score .gb-rating :checked ~ label::after,.guestbook-score .gb-rating label::after{
    color: #c81318;
}
.guestbook-score .gb-rating :checked ~ label::after,.guestbook-score .gb-rating label::after{
    color: #c81318;
}
section.content .guestbook-score .gb-rating{
    line-height: 15px;
    position: relative;
    display: inline-block;
    vertical-align: bottom;
}
.guestbook-score .gb-rating input {
    position: absolute;
    opacity: 0;
}
.guestbook-messages{
    margin-top: 100px;
}
.guestbook-score .gb-rating :checked ~ label::after {
    color: #222222!important;
}
form.contactForm input[type=radio], form.contactForm input[type=checkbox] {
    min-height: 10px;
}

.guestbook-score .gb-rating label {
    position: relative;
    display: inline-block;
    float: right;
    cursor: pointer;
    margin: 0 5px 0 0;
    font-size: 0
}
.guestbook-score .gb-rating label:after{
    color: #222222;
}
.guestbook-score .gb-rating label::after {
    content: '\f006';
    font-family: 'FontAwesome';
    font-size: 20px!important;
    transition: color .4s;
}
.guestbook-score .gb-rating label::after{
    font-size: 18px;
}
section.content .guestbook-messages .gb-content .gb-entry {
    border-color: #c81318;
    background: #f2f2f2;
    margin: 15px 0 15px 0;
    padding: 15px;
    border-top: 1px solid #c81318;
    border-left: 1px solid #c81318;
    border-right: 1px solid #c81318;
  color: black;
}
section.content  .guestbook-messages .gb-content .gb-entry .gb-info .gb-author-name a {
    text-decoration: none;
}
section.content article div#Guestbook .gb-entry-score .fullStar, section.content article div#Guestbook .gb-entry-score .emptyStar {
    line-height: 27px;
    margin: 0 0px;
}

div#contact-field-id_mail{
    float: right;
    margin-right: 2px;
}
section.content form.contactForm .two-column{
    width: 49.5%;
      display: inline-block;
}
section.content .contactForm .contact-field-item .contact-field-element .form-field{
    border: 1px solid #c81318;
    border-radius: 5px;
}
section.content .contactForm .contact-field-item .contact-field-element .form-field:focus{
    background: white;
    border-color: #c81318;
}
section.content .gb-entry-score .fullStar, section.content .gb-entry-score .emptyStar, section.content article div#Guestbook .gb-entry-score .fullStar, section.content article div#Guestbook .gb-entry-score .emptyStar {
    color:#c81318;
}
section.content .fa-star-o:before{
    content: "\f006";
    color: #c81318;
}
.guestbook-messages .gb-content{
    text-align: left;
}
section.content form.contactForm label {
    padding: 0;
    display: inline-block!important;
    color: #222222;
}
/***************/
.vcard-header .box_googlemapsv2,.vcard-header iframe {
    height: 500px;
}
section.content.content-pag {
    position: relative;
    background: #333 url(../images/bg-footer-form.jpg) center no-repeat fixed;
    background-size: cover;
    padding: 100px 0;
    color: #fff;
}
section.content.content-pag:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0,0,0,.7);
}
section.content.content-pag .contactForm .contact-field-item .contact-field-element .form-field {
    background: none;
    border-bottom: 1px dashed #fff!important;
    padding: 15px 0;
    color: #fff;
    border: none;
}
section.content.content-pag .contactForm .contact-field-item .contact-field-element .form-field:focus {
     border-bottom: 1px dashed #c81318!important;
}
section.content.content-pag .contactForm fieldset {
    margin: 0 100px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 25px;
}
section.content.content-pag .contactForm > div, section.content.content-pag .contactForm .contact-field-item.fullwidth {
    grid-column: 1 / 3;
}
section.content.content-pag .contactForm .gdpr_policy {
    text-align: center;
    margin: 0;
}
section.content.content-pag .contactForm .g-recaptcha {
    float: none;
    display: block;
    text-align: center;
}
section.content.content-pag .contactForm .contact-submit, section.content.content-pag .contactForm .g-recaptcha {
    float: none;
    display: table;
    text-align: center;
    margin: 0 auto;
}
section.content.content-pag .contactForm .contact-field-item .contact-field-element .form-field::placeholder {
    color: #fff;
}
section.content.content-pag form.contactForm label,section.content.content-pag form.contactForm label a {
    padding: 0;
    display: inline-block!important;
    color: #fff;
}
i.fas.fa-map-marker-alt.fa-3x,i.fas.fa-envelope.fa-3x {
    color: #c81318 !important;
}
main.content-wrapper {
    padding: 40px 0 20px;
}
/*--------------------------------------------------
# partenaires
--------------------------------------------------*/
section.partenaires {
	position: relative;
	padding: 50px 0 178px;
}
section.partenaires h2 {
	position: relative;
	text-align: center;
	margin: 0 0 45px;
}
section.partenaires .logos-grid {
	margin: 0 -15px;
	padding: 0;
}
section.partenaires .logo {
	position: relative;
	margin: 0;
}
section.partenaires .slick-slide {
 	margin: 0 15px;
}
section.partenaires .logo img {
	width: 100%;
	height: 100%;
	object-fit: scale-down;
	background: #fff;
  	padding: 15px;
}
section.partenaires .slick-dots{
         position: absolute;
        bottom:-62px;
        margin: 0;
    }
section.partenaires .slick-dots li{
        width: 13px;
        margin: 0 6px;
    }
section.partenaires .slick-dots li button{
        width: 13px;
        height: 13px;
  border: none;
    }
section.partenaires .slick-dots li button:before {
    font-size: 10px;
    background: rgb(0 0 0 / 60%);
    border: none;
    width: 13px;
    height: 13px;
    content: ""!important;
    border-radius: 50%;
    opacity: 1;
  border:none;
}
section.partenaires .slick-dots li.slick-active button:before{
        background: #000000;
         opacity: 1;
    }

/****************************************/

@media only screen and (max-width: 1199.98px){

nav.main-nav li#menu_21 {
	margin-left: 337px;
}
.sf-menu a {
	padding: 70px 9px 15px;
	font-size: 14px;
}
  /*********/
  section.home-content.content, {
      margin: 50px 0;
  }
  section.home-content .grid-home ,section.content.first .grid-home,section.content.second .grid-home{
      grid-gap: 40px;
  }
  /*********/
  section.boxes {
      padding: 50px 0;
  }
  section.boxes .pictos-slider {
      column-gap: 25px;
  }
  /*******/
  section.gallery-home {
      padding: 50px 0 80px;
  }
}
@media only screen and (max-width : 991.98px) {
  
  /************/
 	div#logo {
      display: block;
      position: relative;
      left: 0;
      transform: none;
      top: 0;
      z-index: 10;
      text-align: center;
      margin: 0;
  }
 nav.main-nav li#menu_21 {
      margin-left: 0;
  }  
  
  section.banner {
      height: 500px;
  }
.sf-menu a {
	padding: 15px 19px;
}
  /***************/
  section.home-content .grid-home,section.content.first .grid-home,section.content.second .grid-home {
      display: block;
  }
  section.home-content .photo-home,section.content.first .grid-home .photo-home,section.content.second .grid-home .photo-home{
      float: none;
      margin: 0 auto;
      display: table;
  }
  section.home-content.content {
	margin: 0;
	padding: 50px 0;
}
  .first-list {
	margin-bottom: 0;
}
  /************/
  section.boxes .bx-home:hover .bx-txt::before {
      left: 15px;
      right: 15px;
      top: 15px;
      bottom: 15px;
  }
  section.boxes h2 {
      font-size: 16px;
  }
  section.boxes .pictos-slider {
      grid-template-columns: auto auto;
  }
  /***********/
 
  footer.bottom {
      padding: 50px 0;
  }
  footer.bottom .grid-footer {
	grid-template-columns: auto auto;
}
  /****/
  .image-right,
    .image-left {
        float: none;
        margin: 10px auto;
        max-width: 100%;
        height: auto;
        display: block;
    }
  section.news #AllNews {
      grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width : 767.98px) {
  /**************/
  .topbar .adr, .topbar .tel.work {
      background-position: center top;
      padding: 25px 0 0;
      float: none;
      display: block;
      text-align: center;
  }
 .logo-nav .mobile-nav {
      display: block;
  }
   .logo-nav  nav.main-nav {
        display: none!important;
    }
  .logo-nav {
      display: grid;
      align-content: center;
  }
  section.banner {
      height: 400px;
  }
.vcard-header .box_googlemapsv2, .vcard-header iframe {
      height: 300px;
  }
  /******/
  section.content.second {
	margin: 0;
}
  /*********************/
  footer.bottom .grid-footer {
      display: block;
  }
  footer.bottom .footer-adr,footer.bottom .tel.cell {
      display: block;
      background-position:center top;
      padding: 25px 0 0;
    text-align: center;
  }
  .social-footer {
      text-align: center;
  }
  footer.bottom .networks_linking {
      margin: 15px 0;
  }
  footer.bottom {
      padding: 50px 0;
      text-align: center;
  }
  footer.bottom .bloc-center {
      margin: 0;
  }
  /**************/
  .mcePxmGallery .highslide-gallery {
      grid-template-columns: repeat(2, 1fr)!important;
  }
  /*******************************/
    section.news #AllNews {
        grid-template-columns: 1fr;
    }
    section.news #AllNews figure.Item {
        grid-template-rows: 200px 1fr;
    }
   img.img-news {
      float: none;
      max-width: 100%;
      display: table;
      margin: 0 auto 20px;
  }
  
  /************/
  section.content.content-pag .contactForm fieldset {
      display: block;
      margin: 0;
  }
  /*******/
  section.content form.contactForm .two-column{
      width: 100%;
      display: inline-block;
      margin-bottom: 10px;
  }
  div#contact-field-id_mail {
      float: none;
      margin-right: 0;
  }
  /********************/
  section.content .contact-info-grid .container,section.content .contact-grid {
   display: block;
  }
  section.content .contact-grid .form {
	padding: 15px 0;
}
}
@media only screen and (max-width: 480.98px) {
  
 
  .marketing-wrapper2 .call-to-action {
      font-size: 20px;
      width: 240px;
  }
  .street-address {
	display: block;
}
  /***********/
  section.boxes .pictos-slider {
      display: block;
  }
section.boxes .bx-home.box {
  margin: 0 auto 15px;
}
  /**page contact***/
     .content .contactForm .g-recaptcha, section.content .contactForm .g-recaptcha,.contactForm .g-recaptcha {
        float: none;
        transform: scale(.76);
        left: inherit;
        margin-left: 0;
        transform: scale(.7);
        margin-top: 10px;
        transform-origin: left top;
        display: block;
    }
    .content .contactForm .gdpr_policy label {
        display: inline !important;
    }
    .content form.contactForm input[type=checkbox]{
        vertical-align: bottom;
    }

}