@charset "UTF-8";
/* CSS Document */

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

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

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

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

@font-face {
    font-family: 'pt_sansbold';
    src: url('../fonts/PTS75F-webfont.eot');
    src: url('../fonts/PTS75F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTS75F-webfont.woff') format('woff'),
         url('../fonts/PTS75F-webfont.ttf') format('truetype'),
         url('../fonts/PTS75F-webfont.svg#pt_sansbold') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'pt_sansregular';
    src: url('../fonts/PTS55F-webfont.eot');
    src: url('../fonts/PTS55F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTS55F-webfont.woff') format('woff'),
         url('../fonts/PTS55F-webfont.ttf') format('truetype'),
         url('../fonts/PTS55F-webfont.svg#pt_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root{
  --primColor : #00993c;
  --primColorRGB : 0,153,60;
  --secColor : #f7f7f7;
  --thirdColor : #e2e2e2;
}


html{ height: 100%;}
body{ margin:0; font-family:'pt_sansregular', sans-serif; font-size: 17px; line-height: 25px; text-align: justify; color: #4e4e4e; height: 100%; min-height: 100%; position: relative;}
header, section, footer, article, aside{ display:block;}
a{ color: inherit; text-decoration: none;
    transition:0.5s;
    -o-transition:0.5s;
    -webkit-transition:0.5s;
    -ms-transition:0.5s;
    -moz-transition:0.5s;
}
a.link{ color: var(--primColor); }
h1, h2, h3, h4, h5{ font-weight: normal; font-family: 'montserratextrabold';}
*{ box-sizing: border-box; }
#fancybox-wrap, #fancybox-outer, #fancybox-content{ box-sizing: content-box !important; }


.wrapper{ width: 100%; height: 100%; margin: auto; padding-top: 210px}
.container{ width: 98%; max-width: 1280px; margin: auto; overflow: hidden;}
.max1000{ width: 100%; max-width: 1000px; margin: auto; }
.text_content{ width: 100%; max-width: 950px; margin: auto; }
.text_wrapper{ max-width: 750px; margin: auto; }
.second_texte{ margin-top: 40px; }

header{ width: 100%; background: var(--secColor); position: absolute; top: 0; left: 0}
header .container{ overflow: visible; }
header .logo{ display: block; float: left; margin: 10px 0; width: 180px}
header .logo img{ display: block; border: 0; width: 100%; }

header .rightHeader{ float: right; padding-top: 15px; }
header .social_media ul.social a{
    background: #FFF; color: var(--primColor); border: solid 1px var(--primColor);
    width: 42px; height: 42px; line-height: 42px;
}

header .nav_bar{
    background:#FFF; border-top:solid 1px var(--thirdColor); border-bottom: solid 2px var(--primColor);
    height: 50px; line-height: 50px;
}
header nav{
    font-family: 'montserratbold'; font-size: 13px; text-transform: uppercase; color: #000;
}
header nav .container{ overflow: visible; }
header nav ul{ list-style-type: none; margin: 0; padding: 0;}
header nav ul li{ float: left; position: relative;}
header nav ul li a{
    display: block; height: 47px; line-height: 47px;
    padding: 0 17px; position: relative; 
}

header nav ul li a:hover, header nav ul li a.activ{ background: var(--primColor); color: var(--secColor); }
header nav ul li a:hover:after, header nav ul li a.activ:after{
   background: rgba(161,12,89,1);
}

header nav ul.sub-menu{
    width: 250px; position: absolute; left: 0; top: 47px; margin: 0;
    font-size: 14px; z-index: 1000; text-transform: none;
    border-bottom: solid 2px var(--primColor); background: #FFF; display: none;
    border-radius: 0 0 15px 15px; overflow: hidden; font-family: 'montserratregular';
}
header nav ul.sub-menu li{
    display: block; float: none; margin: 0;
    overflow: hidden;
    -webkit-transition: 200ms ease-in;
    -moz-transition: 200ms ease-in;
    -o-transition: 200ms ease-in;
    transition: 200ms ease-in;
}
header nav ul.sub-menu li+li{ border-top: solid 1px #EFEFEF; }
header nav ul.sub-menu li a{
    display: block; width: 250px; height: auto; line-height: 20px; padding: 10px; text-align: left; border-bottom: none;
}
header nav ul.sub-menu li a:after{ display: none; }
header nav ul.sub-menu a:hover{ background: var(--primColor); color: #FFF; }
header nav ul li:hover > ul.sub-menu{ display: block; }



header .showMenu{ display: none;}
header nav.phoneNav{ display: none;}

header.sticky{
    position: fixed; top: 0; left: 0; z-index: 1000;
    box-shadow: 0 0 7px rgba(0,0,0,0.2);
}
header.sticky .logo, header.sticky .social_media{ display: none; }
header.sticky .logo img{ display: block; border: none; max-width: 100%;}


/*BANNER*/
.bannerBlock{ width: 100%; height: auto; margin: auto; position: relative;}
.bannerBlock .banner{ position: absolute; width: 100%; height: 100%; top: 0; left: 0;}
.bannerBlock .banner:after{
  display: block; content: ""; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0;
  background: rgba(0, 0, 0, 0.2);
}
.bannerBlock .bannerContent{
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%; overflow: hidden;
}
.coverBlock .bannerContent{ align-items: flex-end; padding-bottom: 50px; }
.bannerContent .content{ width: 100%; }
.bannerBlock .bannerContent .container{ position: relative; }
.bannerBlock .bannerContent .one_half{padding: 0 60px;}
.bannerBlock .bannerContent h1{
  color: #FFF; font-size: 35px; text-align: left; line-height: 40px;
  font-family: 'montserratextrabold'; margin: 0 0 10px 0;
}
.bannerBlock .bannerContent p{
    margin: 0; text-align: left; color: #FFF; font-size: 19px; line-height: 29px; font-family: 'montserratlight';
}

.bannerBlock .banner .item, .bannerBlock .banner  .only_item{ width: 100%; height: 100%; position: absolute; top: 0; left: 0;}
.bannerBlock .banner .item+.item{ display: none;}
.bannerBlock .banner .item img, .bannerBlock .banner .only_item img{ display: block; width: 100%; height: 100%; object-fit: cover;}
.bannerBlock .dots{ width: 100%; position: absolute; bottom: 10px; text-align: center;}
.bannerBlock .dots a{
  display:inline-block; width:18px; height:18px; border: solid 1px #FFF;
  border-radius: 100%; position: relative; opacity: 0.4;
}
.bannerBlock .dots a:after{
  display: block; content: ''; width: 10px; height: 10px; transition: 0.3s;
  position: absolute; top: 3px; left: 3px; opacity: 0.4;
  border-radius: 100%; background: #FFF;
}
.bannerBlock .dots a+a{ margin-left:7px;}
.bannerBlock .dots a:hover,.bannerBlock .dots a.activ{ transform: scale(1.4); opacity: 0.6;}
.bannerBlock .dots a:hover:after,.bannerBlock .dots a.activ:after{opacity: 0.6;}
.bannerBlock .arrows{ width: 100%; position: absolute; top: 47%;}
.bannerBlock .arrows a{ display: block; color:#FFF; font-size: 50px; margin: 0 13px;}
.bannerBlock .arrows a.previous{ float: left;}
.bannerBlock .arrows a.next{ float: right;}


@media (max-width: 1200px) {
    .bannerBlock .bannerContent h1{ font-size: 40px; line-height: 50px; margin: 0 0 10px 0; }
    .bannerBlock .bannerContent p{ font-size: 19px; line-height: 25px; }
}
/*END OF BANNER*/


.back_img{
    position: absolute; top: 0; left: 0;
    width: 100%; height: 100%; overflow: hidden;
}
.back_img img{
  display: block; width: 100%; height: 100%;
  margin: auto; object-fit: cover;
}


.page_header{ position: relative; width: 100%; height: auto; text-align: center;}
.page_header img{ display: block; width: 100%;}

.breadcrumb{
  text-align: left; color: #FFF;
}
.breadcrumb ol{
  list-style-type: none; margin: 0; padding: 0;
  font-size: 13px;
}
.breadcrumb li{
  display: inline-block;
}
.breadcrumb li+li:before{
    padding: 0 8px;
    font-size: 12px; color: var(--primColor);
    content: ""; font-family: 'FontAwesome';
}
.breadcrumb a{ color: #FFF; }
.breadcrumb a:hover{ color:var(--primColor); }


.price{ font-size:21px; color:#000; line-height:30px }
.price span{color: var(--primColor); font-family: 'pt_sansbold'; font-size: 25px}

.buttons a, .buttons input{
  display: inline-block; padding: 0 35px; margin: 20px 0; text-transform: uppercase;
  height: 55px; line-height: 55px; border-radius: 30px;
  font-size: 15px; font-family: 'montserratlight'; border: solid 1px; position: relative;
}
.buttons a+a{ margin-left: 20px; }
.buttons .primButton{ background: var(--primColor); color: #FFF; border-color: var(--primColor);}
.buttons .primButton:hover{ background: #FFF; color: var(--primColor); }
.buttons .secButton{ background: var(--secColor); color: #FFF; border-color: var(--secColor); }
.buttons .secButton:hover{ background: #FFF; color: var(--secColor); }
.buttons .thirdButton{ background: var(--thirdColor); color: #000; border-color: var(--thirdColor); }
.buttons .thirdButton:hover{ background: var(--primColor); color: var(--thirdColor); }
.buttons .tranparentButton{  color: #FFF; border-color: #FFF; }
.buttons .tranparentButton:hover{ background: #FFF; color: var(--secColor); }
.buttons a.icon_button{ padding: 0 60px 0 20px;}

section{ }
section.pageSection{ padding-top: 150px !important;}
.grey_section{ background:var(--secColor); }

article{ padding: 35px 20px; }
article p{ margin: 0 0 20px;}
article p strong{ font-family: 'pt_sansbold'; font-weight: normal; }
article+article{ margin-top: 35px;}

p.intro{ color: var(--primColor); text-transform: uppercase; font-size: 21px; }

.title{ margin: 40px 0; position: relative;}
.title h2, .title h1{
    margin: 0; padding: 0; text-transform: uppercase;
    font-family: 'montserratextrabold'; font-size: 32px; line-height: 40px; color: #000;
    margin: 0; text-align: center;
}
.title h2:after, .title h1:after{
    display: block; content: ""; width: 120px; height: 2px; background: var(--primColor);
    margin: 5px auto;
}
.title p, .title h1 span{
    font-family: 'pt_sansregular'; font-size: 20px; color: var(--primColor);
    text-transform: uppercase; text-align: center; display: block;
}

h1{ text-transform: uppercase;}
.pageSection article h2{ font-size: 21px; line-height: 25px; color: #000; margin: 10px 0 20px 0; padding: 0; position: relative;}
.pageSection article h2:after{
    content: ''; display: block;
    width: 80px; height: 1px;
    background: #DB652F; margin-top: 10px;
}
h2.aside_title{ color: #000; font-size: 19px; text-transform: uppercase; }
.pageSection h1{ text-align: left;}

article h3{
  font-size: 19px; color: var(--primColor); margin: 20px 0 5px 0; text-transform: uppercase; text-align: left;
  font-family: 'pt_sansregular';
}


article h4{ font-size: 17px; color: #000; margin: 20px 0 5px 0; text-transform: uppercase;}

article .signature{ font-family: 'pt_sansbold'; }
article .signature span{ display: block; font-family: 'pt_sansregular' }

.block{ padding: 50px 0; }
.article+.article{ margin-top: 80px; }
.article .article_title{ margin: 30px 0; }
.article .article_title h2{
  font-family: 'montserratextrabold'; text-transform: uppercase; text-align: center;
  font-size: 23px; color: #000; margin: 0 0 5px 0;
}
.article_title p{ text-align: center; text-transform: uppercase; color: var(--primColor); }
.article .article_title.left_title h2, .article .article_title.left_title p{ text-align: left; }
.border_sep{ width: 100%; border-top: solid 1px #E1E1E1; margin-top: 30px; }


.blue_block{ background: var(--primColor); color: #FFF;}
.gradient_block{
  background-image: linear-gradient(45deg, var(--primColor) 10%, var(--secColor));
  color: #FFF;
}
.gradient_block .section_title, .gradient_block .section_title h2, .blue_block .section_title, .blue_block h2{ color: #FFF; }



/*fonctions*/
.fonctions{ margin:auto; width: 100%; max-width: 1100px;}
.fonction_item{ margin:10px }
.fonction_item h3{ text-align:center; color:#000; font-family:'montserratregular'; font-size:17px }
.fonction_item_img{
    width:100%; height:auto; background: #FFF; padding: 5px;
    position: relative; border-radius: 100%; overflow: hidden;
    box-shadow: 0 0 10px rgba(0,0,0,0.1); margin: auto;
}
.fonction_item_img img{ display:block; width: 100%; border-radius: 100%; overflow: hidden; }

.fonctions .carousel__button{ color:var(--primColor); }
.fonctions .carousel__button.is-next{ right:-20px }
.fonctions .carousel__button.is-prev{ left:-20px }
/*End of fonctions*/


.page_title{ width: 100%; height: auto; overflow: hidden; position: relative; padding-bottom: 30px; }
.page_title_content{ width: 100%; position: absolute; bottom: 20px; text-align:left;}
.page_title .back_img{
  position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}
.page_title .back_img img{ display: block; width: 100%; height: 100%; object-fit: cover; }
.page_title .back_img:after{
    display: block; content: ""; width: 100%; height: 100%; background-image: linear-gradient(to top, rgba(0,0,0, 0.5), rgba(0,0,0, 0.3), rgba(0, 0 , 0, 0));
    position: absolute; top: 0; left: 0;
}
.page_title_content p{ color: #FFF; text-transform: uppercase; font-size: 19px; font-family: 'montserratlight';  }



.page_title h1, .page_title h2{
  font-size: 31px; line-height: 37px; text-transform: uppercase;
  text-align: left; font-family: 'montserratbold'; color: #FFF;
}
.page_title h1:after, .page_title h2:after{
  display: block; content: ""; width: 75px; height: 2px;
  background: var(--primColor); margin-top: 5px;
}



/*features*/
.feature_item{ text-align: center; padding: 15px 15px 0 15px; height: 100%; }
.feature_item .icon{ margin-bottom: 10px; }
.feature_item .icon.font_icon{
    width: 100px; height: 100px; line-height: 100px; margin: auto;
    background: var(--primColor); border-radius: 100%; position: relative;
    color: #FFF; font-size: 40px;
}
.feature_item .icon.font_icon:before{
    display: block; content: ""; width: 90px; height: 90px;
    border-radius: 100%; border: solid 2px #FFF;
    position: absolute; left: 3px; top: 3px;
}
.feature_item .icon img{ display: block; max-height: 80px; margin: auto; }
.feature_item h3{ font-family: 'montserratbold'; font-size: 17px; line-height: 23px; text-align: center; color:#000 }

.left_features .feature_item{ padding: 10px; }
.left_features .feature_item, .features_icon_left .feature_item{ text-align: left; padding-left: 0; }
.left_features .feature_item .icon img{ margin: 0; height: 80px; }
.left_features .feature_item h3{ color: var(--primColor); font-family: 'montserratextrabold'; font-size: 19px; text-align: left; }
.left_features .feature_item{ font-size: 15px; line-height: 22px; }

.features_icon_left .feature_item .icon{
  float: left; margin-bottom: 0;
}
.features_icon_left .feature_item .icon img{ height: 80px; }
.features_icon_left .feature_item_content{ margin-left: 100px; }
.features_icon_left .feature_item{ font-size: 17px; }
.features_icon_left .feature_item h3{ color: var(--primColor); font-family: 'montserratextrabold'; font-size: 21px; text-align: left; margin: 0 0 10px 0;}
/*End of features*/

/*accessoires*/
.accessoires{}
.accessoires .one_third{ padding:15px }
.accessoire_item{
    border-radius: 30px; height: 100%;
    background: #FFF; box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
.accessoire_item_img{ padding:10px; position: relative;}
.accessoire_item_img img{
    max-width:100%; display:block; border-radius:25px; overflow:hidden;
    position: relative; border: solid 2px var(--primColor);
}
.accessoire_item_details{ padding:0 20px }
.accessoire_item h3{ text-align:center; }
/*End of accessoires*/



/*section_gallery*/
.section_gallery{ width: 100%; overflow: hidden; margin: 30px 0; }
.section_gallery.section_gallery_slick{ overflow:visible; }
.section_gallery_item{ display: block; position: relative; height: auto; display: block; margin: 3px; }
.section_gallery_item .section_gallery_img{
  width: 100%; height: 100%; overflow: hidden;
  position: absolute; top: 0; left: 0;
}
.section_gallery_item .section_gallery_img img{
  position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s
}
.section_gallery_item .section_gallery_img:after{
  display: block; content: ""; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0; background:rgba(var(--primColorRGB),0);
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s
}
.section_gallery .section_gallery_title{
  width: 100%; position: absolute; bottom: 0; left: 0;
  text-align: left; padding: 10px;
  background: rgba(0, 0, 0, 0.5);
}
.section_gallery_item .section_gallery_title h3{
  font-size: 11px; line-height: 15px; margin: 0; padding: 0; font-family: 'pt_sansbold';
  color: #FFF;
}
.section_gallery_item:hover .section_gallery_img img{ width: 110%; height: 110%; top: -5%; left: -5%; }
.section_gallery_item:hover .section_gallery_img:after{background:rgba(var(--primColorRGB),0.2);}
/*end of section_gallery*/



/*news*/
.news.home_news{ padding:80px 0; }
.news_list .one_third{ padding:20px }
.news_item{
  display: flex; flex-direction: column; height: 100%;
  border-radius: 8px; border: solid 1px rgba(0, 0, 0, 0.1); overflow: hidden;
  box-shadow: 0 0 10px rgba(0,0,0,0.05);
}
.news_item_content{ padding:20px 35px; margin-bottom:20px; }
.news_item_content p{ margin:0; font-size:16px; }
.news_item .news_date{ font-size: 16px; color:var(--thirdColor); }
.news_item .news_category{ font-size: 13px; color:var(--thirdColor); text-transform: uppercase; }
.news_item h2{ text-align: left; font-size: 19px; color:black; margin:0 0 10px 0; }
.news_item_footer{ margin-top:auto; padding: 0 35px; }
.read_more{
  border-top: solid 1px var(--thirdColor); padding: 15px 0;
  text-transform: uppercase; font-size: 13px;
  display: flex;
}
.read_more .icon{
  display: block; width: 30px; height: 30px; line-height: 30px;
  text-align: center; background: var(--primColor); color: white;
  margin-left: auto;
}

.news_item .news_img{ width: 100%; overflow: hidden; }
.news_item .news_img img{
  display: block; width: 100%; height: 300px;
  object-fit: cover; transition: 0.3s;
}
.news_item:hover .news_img img{ transform: scale(1.05); }

.no_news{ text-align: center; font-size: 23px; font-family: 'montserratbold'; color: #000; padding: 120px 0; }
.no_news_socials a{
    display: inline-block; width: 80px; height: 80px; line-height: 80px;
    border-radius: 100%; border: solid 1px var(--primColor); color: var(--primColor);
    font-size: 30px; margin: 10px;
}
.no_news_socials a:hover{ background: var(--primColor); color: #FFF; }
/*End of news*/


.pagination{ margin: 20px; text-align: center;}
.pagination a{
  display: inline-block; font-size: 15px; height: 35px; line-height: 35px; padding: 0 10px;
  background: #FFF; color: var(--primColor); border:solid 1px var(--primColor);
}
.pagination a:hover, .pagination a.activ{background: #FFF; color: #c1c1c1;}

.pagination a:hover, .pagination a.activ{background: var(--primColor); color: #FFF;}





/*gallery*/
.gallery{ margin: 20px 0; }
.gallery .img_box{
  height: auto; margin: 2px;
  position: relative; overflow: hidden;
}
.gallery .placeholder{
  display: block; width: 100%; height: auto; visibility: hidden;
}
.gallery .img_box figure{
  display: block; width: 100%; height: 100%;
  margin: 0; box-sizing: border-box; overflow: hidden;
  position: absolute; top: 0; left: 0;
}
.gallery .img_box figure img{ width: 100%; height: 100%; display: block; object-fit: cover;}
.gallery .img_box figure a{ display: block; width: 100%; height: 100%; }
.gallery .zoom_link{
  display: block; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0;
  text-align: center; color: var(--secColor); font-size: 50px;
  background: rgba(255,255,255,0.5);
  outline: 1px solid var(--secColor); outline-offset: -5px;
  transform:scale(0,0);
}
.gallery .img_box:hover > .zoom_link{
    transform:scale(1,1);
}
.gallery .zoom_link .icon{ width: 100%; height: 100%; display: table}
.gallery .zoom_link .icon span{ display: table-cell; vertical-align: middle;}

#fancybox-content, #fancybox-wrap{ box-sizing: content-box !important; }
/*end of gallery*/

.images_banner{ width: 100%; overflow: hidden; }
.images_banner .imgFull{ margin: 0; }


.tables{ display: table; width: 100%; }
.tables .row + .row{ margin-top: 30px; }
.tables .cell{ display: table-cell;}
.tables .title_cell{width: 30%;}
.tables .text_cell{ padding: 20px;}
.tables .title_cell .imgFull{ margin-top: 0; }
.tables .title_cell h2{
  text-transform: uppercase; text-align: left;
  color: #FFF; font-size: 20px; padding: 20px;
}
.tables .title_cell h2 span{ display: block; font-size: 30px; margin-bottom: 20px; }

.tables .pink_cell{ background: #fe0047; }
.tables .orange_cell{ background: #fca145; }
.tables .green_cell{ background: #5386E4; }

/*about_section*/
.about_section{ background:url(../img/about-img.jpg) no-repeat center fixed; }
/*about_section*/

/*parallax*/
.parallax{
    width: 100%; height: auto; padding: 50px 0; position: relative;
    color: #FFF; text-align: center; overflow: hidden; background-size: cover;
}
.parallax:before{
  width: 100%; height: 100%; content: "";
  position: absolute; top: 0; left: 0; background: rgba(0,0,0,0.4);
}
.parallax .content{position: relative; max-width: 950px; margin: auto; font-size: 17px; line-height: 27px; font-family: 'montserratregular'}
.parallax .title h2{ color:#FFF }
/*end of parallax*/





/*contact*/
.contact .map{ width: 100%; height: 450px; margin-bottom: 30px; }
.contact .map iframe, .contact .map #map{ width: 100%; height: 100%; }
.contact label{ display: block; float: left; padding: 10px 5px;}
.contact select{ border:solid #dfdfdf 1px; width:100%; padding:8px 15px; box-sizing: border-box;}
.contact .buttons{ float: right;}
.contact .buttons a.formLink{ display: inline-block; color: #b5cf2f; padding: 0 10px;}

.dateSelector{ position: relative;}
.dateSelector a{ display: block; position: absolute; top: 10px; right: 10px;}
.contact .g-recaptcha{ margin-bottom: 50px; }

.input{ padding: 10px; }
.input input, .input textarea, .input select{
  display: block; width:100%; border: none; background: #EEE;
  border-bottom:solid var(--primColor) 2px; padding:15px; box-sizing: border-box;
  border-radius: 10px;
}
.input input::placeholder, .input textarea::placeholder{ font-family: 'montserratregular'; font-size: 15px; }
.input textarea{ height: 200px; }
.contact .input input[type="submit"], .contact .input button{
  background: var(--primColor); color: #FFF; width: auto; position: relative;
  font-size: 21px; border: none; height: 40px; line-height: 40px; padding:0 30px; font-family: 'montserratbold';
  -webkit-border-radius: 20px; -moz-border-radius: 20px; -ms-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px;
}


/*End of contact*/

/*errorPage*/
.errorPage{text-align: center; padding: 50px 0;}
.errorPage h1{  text-align: center; font-size: 45px; line-height: 55px; padding-top: 50px; margin: 0;}
.errorPage h2{ font-size: 50px; line-height: 50px; color: var(--primColor);}
.errorPage h3{ color: black;}
/*end of errorPage*/

.construction_page{
  text-align: center; margin: 100px 0; color: #000; text-transform: uppercase;
  font-size: 30px; line-height: 35px; font-family: 'pt_sansbold'; color: black;
}

/*simpleList*/
.simpleList, .description_bdd ul{ list-style-type: none; overflow:hidden; margin: 0;}
.simpleList li, .description_bdd ul li{ position: relative; padding: 5px 0 5px 10px; box-sizing:border-box;}
.simpleList li:before, .description_bdd ul li:before{
  content: ''; font-family: 'FontAwesome';
  position: absolute; left: -5px; top: 6px; font-size: 15px;
  color: #FCE000;
}
/*end of simpleList*/

/*simpleTable*/
.simpleTable{ margin: 20px 0; width: 100%;}
.simpleTable th{ border: none; background: #DB652F; color: #FFF; font-weight: normal; padding: 15px 10px; text-align: center; color: #FFF;}

.simpleTable tr:nth-child(2n+2){background: #dcdddd;}
.simpleTable td{ padding: 10px; font-size: 15px;}
/*end of simpleTable*/


/*Accordeon*/
ul.accordeon{ list-style-type:none; margin: 30px 0; padding:0;}
ul.accordeon .accordeonLi{ margin:0; padding: 0; }
ul.accordeon .accordeonLi+.accordeonLi{ margin-top: 15px;}
ul.accordeon .accordeonLi a.accordeonLink{
  display: block; padding: 15px; background: var(--secColor);
  -webkit-border-radius: 15px; -moz-border-radius: 15px; -ms-border-radius: 15px; -o-border-radius: 15px; border-radius: 15px;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}
ul.accordeon a.accordeonLink h2, ul.accordeon a.accordeonLink h3{
  margin: 0; padding: 0; font-size: 17px;
  color: #000; font-family: 'montserratbold';
}
ul.accordeon .accordeonLi .icon{
  float: right; color: var(--primColor);
}
ul.accordeon .accordeonLi .icon img{ display: block; width: 100%; }
ul.accordeon .accordeonLi a.accordeonLink .toggle{
  height: 70px; line-height: 70px; float: right;
  font-size: 2em; color: var(--primColor); margin-left: 10px;
}
ul.accordeon .accordeonLi a.current{
  background: #FFF;
  box-shadow: 0 5px 5px rgba(0,0,0,0.1);
}
ul.accordeon .accordeonItem{ display:none; padding: 10px; margin: 0 0 5px 0;}
/*End of Accordeon*/



.msg_ok, .msg_ko{ margin-bottom: 10px; flex-wrap: nowrap !important;}
.msg_ok .icon{
    width: 50px; display: flex;
    background: #3c763d; color: #FFF; font-size: 25px; 
}
.msg_ok .msg_txt{
  background: #dff0d8; padding: 20px; font-size: 15px; line-height: 20px;
  border: solid 1px #3c763d; color: #3c763d; 
}

.msg_ko .icon{ 
  width: 50px; display: flex;
  background: #a94442; color: #FFF; font-size: 25px;
}
.msg_ko .msg_txt{
  background: #f2dede; padding: 20px; font-size: 15px; line-height: 20px;
  border: solid 1px #a94442; color: #a94442;
}

.requiredField{ background:#dd7171 !important; color:#7d0000;}
.requiredFieldTxt{ color:#cf0000; font-size: 11px; font-weight: bold; display: none;}

.imgFull{ display: block; margin: auto; margin-top: 10px; margin-bottom: 10px; max-width: 100%;}
.imgCenter{ display: block; margin: 10px auto; max-width: 100%;}
.imgLeft{ display: block; float: left; margin: 0 20px 20px 0}
.borderImg{ position: relative; }
.borderImg:after{
  display: block; content: ""; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0; box-sizing: border-box;
  border: solid 8px rgba(97,76,134,0.5);
}
.placeholder{ display: block; width: 100%; visibility: hidden;}


.row:after{ display: block; content: ""; clear: both; }
.row_flex{ display: flex;}
.flex_wrap{ flex-wrap: wrap; }
.row_flex:after{ display: block; content: ""; clear: both; }
.vcenter{
  -webkit-box-align: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items: center;
}
.hcenter{justify-content: center;}
.space_between{ justify-content: space-between; }
.one_half{ width: 50%; float: left;}
.one_third{ width: 33.33%; float: left;}
.one_fourth{ width: 25%; float: left;}
.two_third{ width: 66.66%; float: left;}
.three_fourth{ width: 75%; float: left; }
.one_fifth{ width: 20%; float: left; }
.one_sixth{ width: 16.66%; float: left; }



.padding5{ padding: 5px;}
.padding10{ padding: 10px;}
.padding20{ padding: 20px;}
.paddingLeft{ padding-left: 20px;}
.paddingRight{ padding-right: 20px;}
.clear{ clear: both;}
.clearRight{ clear: right;}


/*info_box*/
.info_box{
  width: 100%; height: 100%; background: rgba(0,0,0,0.5);
  position: fixed; top: 0; left: 0; display: none;
}
.info_box .row_flex{ width: 100%; height: 100%; }
.info_box .info_block{
  width: 950px; max-width: 80%; margin: auto; background: #FFF;
  position: relative;  padding-bottom: 25px; border: solid 2px var(--primColor);
  box-shadow: 0 0 20px rgba(0,0,0,0.5);
}
.info_box .close_btn{
  width: 34px; height: 34px; line-height: 30px; display: block;
  position: absolute; top: -17px; right: -17px;
  text-align: center; font-family: 'pt_sansbold';
  background: var(--primColor); color: #FFF; border:solid 2px #FFF ;
  border-radius: 100%;
}
.info_box .info_block_content{ padding: 30px;}
.info_box .info_block_content p{ margin: 0; padding: 0; }
.info_box .info_block_content p+p{ margin-top: 20px; }
.info_box .info_block_content .read_more{
  display: inline-block; padding: 5px 10px; margin-top: 20px;
  color: #FFF; text-transform: uppercase; border:solid 1px;
}
.info_box .info_block_content a{ color: #DB652F; }
.info_box .info_block_content a:hover{ color: var(--primColor); }
.info_box .loader{ text-align: center; color: var(--primColor); margin-top: 30px; }
.info_box .loader.hide{ display: none; }
/*end of info_box*/


footer{
  width: 100%; position: relative; font-size: 15px; line-height: 21px;
  background: #000; color: #FFF;
  text-align: left; padding: 40px 0 0;
}
footer .logo{ display: block; margin-bottom: 20px; }
footer .logo img{ display: block; margin:auto; width:180px; }
.footer_description{ text-align: justify; }
footer h2{ margin: 0 0 10px 0; color: #FFF; font-size: 21px;}


footer .copyright{ text-align: center;}

footer .contacts{ font-size: 13px; }
footer .contacts .contact_item{ padding: 15px 0; }
footer .contacts .icon{
  display: block;
  width: 35px; font-size: 20px; text-align: center; color: var(--primColor);
}
footer .contacts a:hover{ color: var(--primColor);  }
footer .contacts .text{ display: block; margin-left: 5px;}

footer .social{ margin: 10px 0; }
footer .social ul{
    list-style-type: none; margin: 0; padding: 0;
}
footer .social ul li{ display: inline-block;}
footer .social ul li+li{ margin-left: 5px;}
footer .social ul a{
    display: block; width: 50px; height: 50px; line-height: 50px;
    background:rgba(255,255,255,0.2) ; color: var(--primColor);
    text-align: center; font-size: 18px;
    -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;
}





.social_media{ text-align: right; }
.social_media ul.social{
    list-style-type: none; margin: 0; padding: 0;
}
.social_media ul.social li{ display: inline-block;}
.social_media ul.social li+li{ margin-left: 5px;}
.social_media ul.social a{
    display: block; width: 38px; height: 38px; line-height: 38px;
    background: var(--primColor); color: #FFF;
    text-align: center; font-size: 18px;
    -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;
}

.social a.facebook:hover{ background: #3b5998; color: #FFF;}
.social a.twitter:hover{ background: #55acee; color: #FFF;}
.social a.google-plus:hover{ background: #dd4b39; color: #FFF;}
.social a.linkedin:hover{ background: #007bb5; color: #FFF;}
.social a.youtube:hover{ background: #bb0000; color: #FFF;}
.social a.viadeo:hover{ background: #f6876d; color: #FFF;}
.social a.instagram:hover{ background: #bc2a8d; color: #FFF;}
.social a.pinterest:hover{ background: #bd081c; color: #FFF;}
.social a.soundcloud:hover{ background: #FE5000; color: #FFF;}
.social a.spotify:hover{ background: #1ed760; color: #FFF;}



/*animations*/
@keyframes blinker {
  100% {
    opacity: 0; transform: scale(3);
  }
}


.animation-element{
    opacity: 0; position: relative;
    transition:1s;
    -o-transition:1s;
    -webkit-transition:1s;
    -ms-transition:1s;
    -moz-transition:1s;
}
.animation-element.in-view{ opacity: 1;}

.animation-element.slide-left {
  -moz-transition: all 500ms linear;
  -webkit-transition: all 500ms linear;
  -o-transition: all 500ms linear;
  transition: all 500ms linear;
  -moz-transform: translate3d(-100px, 0px, 0px);
  -webkit-transform: translate3d(-100px, 0px, 0px);
  -o-transform: translate(-100px, 0px);
  -ms-transform: translate(-100px, 0px);
  transform: translate3d(-100px, 0px, 0px);
}

.animation-element.slide-right {
  -moz-transition: all 500ms linear;
  -webkit-transition: all 500ms linear;
  -o-transition: all 500ms linear;
  transition: all 500ms linear;
  -moz-transform: translate3d(100px, 0px, 0px);
  -webkit-transform: translate3d(100px, 0px, 0px);
  -o-transform: translate(100px, 0px);
  -ms-transform: translate(100px, 0px);
  transform: translate3d(100px, 0px, 0px);
}

.animation-element.slide-bottom {
  -moz-transition: all 500ms linear;
  -webkit-transition: all 500ms linear;
  -o-transition: all 500ms linear;
  transition: all 500ms linear;
  -moz-transform: translate3d(0, 30px, 0px);
  -webkit-transform: translate3d(0, 30px, 0px);
  -o-transform: translate(0, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate3d(0px, 30px, 0px);
}


.animation-element.slide-scale {
  -moz-transition: all 500ms linear;
  -webkit-transition: all 500ms linear;
  -o-transition: all 500ms linear;
  transition: all 500ms linear;
  transform: scale(0.9);
}


.animation-element.slide-left.in-view, .animation-element.slide-right.in-view, .animation-element.slide-bottom.in-view{
  -moz-transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate3d(0px, 0px, 0px);
}
.animation-element.slide-scale.in-view{ transform: scale(1); }


/*end of animations*/

/*soon*/
.soon_page{
  width: 100%; height: 100%; display: flex; position: relative; background: var(--secColor); font-size: 19px; line-height: 29px;
    -webkit-box-align: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items: center;
}
.soon_box{
  width: 100%; margin: auto; margin-top: 50px; margin-bottom: 50px;
  padding: 30px; background: white; border: solid 1px var(--primColor);
}


.soon_box header{ position: static; background: none; height: auto;}
.soon_box header .logo{ padding: 0 0 10px 0; float: none; margin: auto; width: 300px; }
.soon_box header .logo img{ display: block; margin: auto; width: 100%;}
.soon_box header h1{
  text-transform: uppercase; font-size: 50px; line-height: 60px; text-align: center;
}

.soon_box .construction{
  width: 100%; text-transform: uppercase;
  font-size: 30px; line-height: 50px; text-align: center;
  margin: 20px 0; font-family: 'montserratbold'; color: black;
}
/*End of soon*/
