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

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

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

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

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

@font-face {
    font-family: 'latobold';
    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#latobold') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html{ height: 100%;}
body{ margin:0; font-family:'latoregular', sans-serif; font-size: 17px; line-height: 28px; 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: #2a3a7f; }
h1, h2, h3, h4, h5{ font-weight: normal; font-family: 'latobold';}
*{ box-sizing: border-box; }


.wrapper{ width: 100%; height: 100%; margin: auto;}
.container{ width: 95%; max-width: 1280px; margin: auto; overflow: hidden;}
.max1000{ width: 100%; max-width: 1000px; margin: auto; }
.text_wrapper{ max-width: 750px; margin: auto; }

header{ width: 100%; z-index: 1000; position: absolute; top: 0; left: 0;}
header .container{ overflow: inherit; }
header .logo{ display: block; float: left; margin: 20px 0 0; width: 130px;}
header .logo img{ display: block; border: 0; width: 100%; }

header .rightHeader{ float: right; padding-top: 10px; }

header .languages{ float: right; text-align: left; margin-top: 7px; font-size: 12px;}
header .languages ul{ margin: 0; padding: 0; list-style-type: none;}
header .languages ul li{ margin: 0; padding: 0; position: relative;}
header .languages a{ display: block; height: 28px; line-height: 28px; padding: 0 8px; border: solid 1px rgba(255,255,255,0); color: #FFF;}
header .languages a:after{ content: ""; color: #f8a248; font-family: "FontAwesome"; margin-left: 8px;}
header .languages a img{ display: block; float: left; margin: 3px 8px 0 0;}
header .languages a:hover{ border:solid 1px rgba(255,255,255,0.3);}
header .languages ul ul{ display: none; position: absolute; top: 28px; left: 0; z-index: 1000; background: #2a3a7f; width: 110px;}
header .languages ul ul li+li{ border-top: solid 1px #333;}
header .languages ul ul a:after{ content: "";}
header .languages ul ul a{border: none; color: #efefef}
header .languages ul ul a:hover{ border: none;}
header .languages ul li:hover > ul{ display: block;}

header nav{
    font-family: 'latoregular'; font-size: 15px; text-transform: uppercase; color: #FFF;  text-align: right;
    margin-top: 20px;
}
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+li{ margin-left: 30px; }
header nav ul li a{
    display: block; height: 33px; line-height: 35px;
    padding: 0 2px; position: relative;
}
header nav ul li a:after{
  display: block; content: ""; width: 100%; height: 3px;
  position: absolute; top: -2px; left: 0;
  background: rgba(42,58,127,0); transition: 0.3s;
  transition:0.5s;
    -o-transition:0.5s;
    -webkit-transition:0.5s;
    -ms-transition:0.5s;
    -moz-transition:0.5s;
}
header nav ul li a:hover:after, header nav ul li a.activ:after{
   background: rgba(42,58,127,1);
}


header nav ul.subMenu{
    width: 250px; position: absolute; left: 0; top: 33px; margin: 0;
    font-size: 15px; z-index: 1000; text-transform: none;
    border-bottom: solid 2px #f8a248; background: rgba(0,0,0,0.6); display: none;
}
header nav ul.subMenu 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.subMenu li+li{ border-top: solid 1px rgba(255,255,255,0.2); }
header nav ul.subMenu li a{ display: block; width: 250px; height: 35px; line-height: 35px; padding: 0 10px; text-align: left; border-bottom: none; color: #FFF;}
header nav ul.subMenu li a:after{ display: none; }
header nav ul li a:hover{ color: #f8a248; }
header nav ul li:hover > ul.subMenu{ display: block; }

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

header.sticky{
    position: fixed; background: #000;
}
header.sticky .logo{ width: 100px; margin: 10px 0; }
header.sticky nav{
    margin: 0;
}


header ul.top_nav{
    list-style-type: none; padding: 0; color: #FFF;
    float: right; clear: both; font-family: 'latolight'; font-size: 13px;
}
header ul.top_nav li{ display: inline-block;}
header ul.top_nav li+li{ margin-left: 15px;}
header ul.top_nav a{ display: inline-block;}
header ul.top_nav a .icon{ font-size: 23px; display: inline-block; margin-right: 3px; }

.slider{ width: 100%; height: 100%; margin: auto; position: relative; background: #000;}
.slider .banner{position: absolute; width: 100%; height: 100%; top: 0; left: 0; overflow: hidden;}
.slider .banner .item{
  width: 100%; height: 100%;
  position: absolute; top: 0; left: 0;
}
.slider .banner .item+.item{ display: none;}
.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;
}
.back_img:after{
  display: block; width: 100%; height: 100%;
  content: ""; background: rgba(0,0,0,0.3);
  position: absolute; top: 0; left: 0;
}
.slider .layers{
  display: table; width: 100%; height: 100%;
}
.slider .layers .content{
  display: table-cell; width: 100%; height: 100%; position: relative;
  vertical-align: middle; color: #FFF; text-align: left;
}
.slider .layers .box{ width: 650px;}
.slider .layers h1, .slider .layers h2{
  font-size: 47px; line-height: 50px; font-family: 'latoblack';
  text-transform: uppercase;
  color: #FFF; margin: 0;
}
.slider .color1{ color: #f8a248 }
.slider .layers h1 .paragraph{
  font-size: 21px; line-height: 45px; margin: 0 0 10px 0; text-transform: uppercase; font-family: 'latolight';
  display: block;
}



.slider .dots{ width: 100%; position: absolute; bottom: 30px; padding: 0 30px; box-sizing:border-box;}
.slider .dots a{
  display:inline-block; width:15px; height:15px; background: #FFF;
  border-radius: 100%; -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%;
}
.slider .dots a+a{ margin-left:5px;}
.slider .dots a:hover,.slider .dots a.activ{ background: #f8a248;}


.slider .arrow{
    width: 62px; height: 30px; margin: auto;
    position: absolute; left: 0; right: 0; bottom: 5px;
    z-index: 1500; text-align: center;
}


.buttons a{
  display: inline-block; padding: 7px 20px; margin: 20px 0; text-transform: uppercase;
  font-size: 21px; font-family: 'latolight'; border: solid 1px;  
  -webkit-border-radius: 5px; border-radius: 5px;
}
.buttons a.yellow_button{ background: #f8a248; color: #000; border-color: #f8a248;}
.buttons a.yellow_button:hover{ background: none; color: #f8a248; }
.buttons a.blue_button{ background: #2a3a7f; color: #FFF; border-color: #2a3a7f;}
.buttons a.blue_button:hover{ background: none; color: #2a3a7f; }
.buttons a.white_button{ color: #063348; border-color: #063348; }
.buttons a.white_button:hover{ background: #063348; color: #FFF; }

section{ }
section.pageSection{ padding-top: 150px !important;}

article{ padding: 0 20px; }
article p{ margin: 0 0 20px;}
article+article{ margin-top: 35px;}
article.last_article { margin-bottom: 100px; }

p.intro{ color: #063348; text-transform: uppercase; font-size: 21px; }

.title{ margin: 50px 0; position: relative; text-align: center;}
.title h2{
    margin: 0; padding: 0; text-transform: uppercase;
    font-family: 'latobold'; font-size: 31px; line-height: 40px; color: #000;
    margin: 0;
}
.title h2 span{ color: #2a3a7f;}
.title h2:after{
    display: block; content: ""; width: 128px;
    border-top: solid 1px #f8a248; margin: auto;
    margin-top: 10px;
}
.title .text{
    margin-top: 10px; color: #AAA;
    font-family: 'latolight'; font-size: 25px; line-height: 31px;
    text-transform: uppercase; text-align: center;
}

.tab_title{ margin: 30px 0 5px 0; text-align: center;  position: relative;}
.tab_title h2{
    margin: 0; padding: 0; font-size: 20px;
    font-family: 'latobold'; color: #000;
    text-align: center;
}
.tab_title h2 span{ color: #f8a248;}
.tab_title h2:after{
    display: block; content: ""; width: 128px;
    margin: auto; border-top: solid 1px #f8a248;
    margin-top: 10px;
}

.page_title{ width: 100%; height: auto; overflow: hidden; position: relative; padding-bottom: 30px; }
.page_title_content{ margin-top: 200px; position: relative; }
.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 h1, .page_title h2{
  font-size: 29px; line-height: 33px; color: #FFF;
  text-align: center; font-family: 'latoregular';
}


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: #f8a248; margin-top: 10px;
}
h2.aside_title{ color: #000; font-size: 19px; text-transform: uppercase; }
.pageSection h1{ text-align: left;}

article h3{ font-size: 21px; color: #063348; margin: 20px 0 5px 0; text-transform: uppercase; text-align: left;}
article h3:after{
    content: ''; display: block;
    width: 80px; height: 1px;
    background: #f8a248; margin-top: 3px;
}

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

.black_bg{ background: #000; color: #B9B9B9; padding: 30px 0; }
.black_bg article h2, .black_bg article h3{ color: #FFF; }
.black_bg article h2 span{ color:#f8a248  }
.black_bg .data_stats_item  .data_stats_number{ color: #FFF;}


.breadcrumb{
  text-align: right; padding: 5px 0; border-bottom: solid 1px #f8a248;
}
.breadcrumb ol{
  list-style-type: none; margin: 0; padding: 0 20px;
  font-size: 13px;
}
.breadcrumb li{
  display: inline-block;
}
.breadcrumb li+li:before{
    padding: 0 8px;
    font-size: 12px; color: #2a3a7f;
    content: ""; font-family: 'FontAwesome';
}
.breadcrumb a{ color: #2a3a7f; }
.breadcrumb a:hover{ color: #063348; }

/*savoir_faire*/
.savoir_faire .row_flex{ flex-wrap: wrap; }
.savoir_faire_item{
  text-align: center; height: 100%; padding: 20px;
}
.savoir_faire_item .icon{ width: 100px; height: 100px; margin: auto; }
.savoir_faire_item .icon img{ display: block; width: 100%; }
.savoir_faire_item h3{ color: #f8a248; text-align: center; font-family: 'latolight'; }
.savoir_faire_item h3:after{ display: none; }
/*end of savoir_faire*/


/*services*/
.services .one_half{ padding: 20px; }
.services .one_third{ padding: 0 5px; }
.services h2{ text-align: center; text-transform: uppercase; color: #f8a248; }
.services_row{ flex-wrap: wrap; margin-top: 100px;}
.services .services_item{
  background: #000; color: #FFF; position: relative;
  height: 100%;
}
.services .services_item .icon{
  width: 150px; height: 150px; margin: auto;
  border:solid 4px #f8a248; padding: 30px; background: #000;
  position: absolute; left: 0; right: 0; top: -75px;
  -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%;
}
.services .services_item .icon img{ display: block; width: 100%; }
.services .services_content{
  padding: 80px 30px 30px; position: relative;
}
.services .services_item_no_icon .services_content{ padding: 30px; }
.services .studio_item .services_content{ height: 300px; font-size: 15px; line-height: 22px; }
.services .services_content h3{
  color: #FFF; text-align: center; margin-bottom: 30px;
  font-family: 'latolight';
}
.services .services_content h3:after{ margin: auto; margin-top: 10px; }
.services .services_content .buttons{
  position: absolute; bottom: 0; left: 30px
}
.services .services_content .buttons a{ font-size: 15px; padding: 0 10px; }
.services .studio_item .img img{ display: block; width: 100%; }
/*end of services*/

/*data_stats*/
.data_stats{ margin-top: 20px; }
.data_stats .row_flex{ flex-wrap: wrap;}
.data_stats .row_flex .one_third{ flex-shrink: 0; flex-grow: 0; }
.data_stats_item{
  position: relative; color: #f8a248; height: 100%;
  margin: 0 10px; padding-bottom: 60px; text-align: center;
}
.data_stats_item .icon{
  font-size: 50px; margin: auto; margin-bottom: 10px;
}
.data_stats_item h3{
  margin: 0; padding: 0; font-size: 15px; line-height: 1; text-align: center;
  color: #f8a248;
}
.data_stats_item h3:after{ display: none; }
.data_stats_item .data_stats_number{
  font-size: 45px; margin-bottom: 10px; color: #2a3a7f
}
.data_stats_item .data_stats_number sup{ font-size: 17px; line-height: 1 }
/*end of data_stats*/


/*features*/
.features{ text-align: center; }

.features_item{ display: block; color: #FFF; height: auto; position: relative; margin: 5px 8px;}
.features_item .features_img{
  width: 100%; height: 100%; overflow: hidden;
  position: absolute; top: 0; left: 0;
}
.features_item .features_img img{
  position: absolute; top: 0; left: 0; width: 100%;
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s
}
.features_item .features_img:after{
  display: block; content: ""; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0; background:rgba(0,0,0,0.3);
}
.features .item_title{
  width: 100%; position: absolute; bottom: 0; left: 0;
  padding: 0 20px 30px;
}
.features_item h2{
  font-size: 23px; margin: 0; padding: 0; text-align: left;
  color: #FFF; text-transform: uppercase;
  text-shadow: 0 0 5px #000;
}
.features_item .item_title .plus_icon{
  width:45px; height:45px; position: relative; margin-right: 8px;
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s
}
.features_item .item_title .plus_icon:before{
  display: block; content: ""; width: 5px; height: 100%;
  position: absolute; top: 0; left: 20px;
}
.features_item .item_title .plus_icon:after{
  display: block; content: ""; width: 100%; height: 5px;
  position: absolute; top: 20px; left: 0;
}
.features_item:hover .features_img img{
  width: 110%; top: -5%; left: -5%;
  transform: rotate(-2deg);
}
.features_item:hover .plus_icon{
  -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); -o-transform: rotate(180deg); -moz-transform: rotate(180deg); transform: rotate(180deg);
}

.features_item_blue{border-left: solid 10px #2a3a7f;}
.features_item_blue .item_title .plus_icon:before, .features_item_blue .item_title .plus_icon:after{ background: #2a3a7f; }

.features_item_yellow{border-left: solid 10px #f8a248;}
.features_item_yellow .item_title .plus_icon:before, .features_item_yellow .item_title .plus_icon:after{ background: #f8a248; }

.features_item_green{border-left: solid 10px #339900;}
.features_item_green .item_title .plus_icon:before, .features_item_green .item_title .plus_icon:after{ background: #339900; }

.features_item_dark{border-left: solid 10px #063348;}
.features_item_dark .item_title .plus_icon:before, .features_item_dark .item_title .plus_icon:after{ background: #063348; }

.features_item_light{border-left: solid 10px #f8a248;}
.features_item_light .item_title .plus_icon:before, .features_item_light .item_title .plus_icon:after{ background: #f8a248; }

.features_item_pink{border-left: solid 10px #fe0047;}
.features_item_pink .item_title .plus_icon:before, .features_item_pink .item_title .plus_icon:after{ background: #fe0047; }
/*end of features*/

/*Actualites*/
.tabs_nav{
  width: 100%;
  text-transform: uppercase; font-family: 'latolight'; font-size: 15px;
  border-top:solid 1px #c7c7c7; border-bottom:solid 1px #c7c7c7; 
}
.tabs_nav ul{
  list-style-type: none; margin: auto; padding: 0;
}
.tabs_nav ul li{height: 50px; line-height: 50px;}
.tabs_nav ul li a{
  display: block; height: 50px; line-height: 50px;
  background: #FFF; padding: 0 20px; position: relative;
}
.tabs_nav ul li a:after{
  display: block; content: ""; width: 100%; height: 3px;
  background: rgba(33,158,188,0); position: absolute; top: 0; left: 0;
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s
}
.tabs_nav ul li .icon{
  display: inline-block; margin-right:5px;
  color: #2a3a7f; font-size: 21px;
}
.tabs_nav ul li+li a{ border-left:none; border-left: solid 1px #c7c7c7;}
.tabs_nav ul li a.activ, .tabs_nav ul li a:hover{
  background: #f0f0f0;
}
.tabs_nav ul li a.activ:after, .tabs_nav ul li a:hover:after{
  background: rgba(33,158,188,1)
}
.liste_actualites{ padding: 20px 60px; }
.actualite_item{ background: #FFF; margin: 0 2px 20px 2px; }
.actualite_box{ padding: 15px; position: relative; height: 300px; }
.actualite_box h2{
  font-size: 15px; text-align: left; margin: 0; color: #000;
  text-transform: uppercase; margin-bottom: 15px;
}
.actualite_box h2:before{
  display: block; content: ""; width: 100%; height: 1px;
  background: #f8a248;
}
.actualite_box p{ margin: 0; padding: 0; font-size: 17px; }
.actualite_box .buttons{
  position: absolute; bottom: 0;
}
.actualite_box .buttons a{ font-size: 15px; line-height: 19px; }
.actualite_item .imgFull{ width: 100%; }

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

.liste_actualites .slick-prev, .liste_actualites .slick-next{
    font-size: 0; line-height: 0;
    display: block; position: absolute; top: 37%;
    width: 50px; height: 50px; padding: 0;
    cursor: pointer; color: transparent; background: transparent; border: none;
    -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;  
}
.liste_actualites .slick-next{
    right: 0; background: url(../img/slickArrowRight.png) no-repeat
}
.liste_actualites .slick-prev{
    left: 0; background: url(../img/slickArrowLeft.png) no-repeat
}


.actualite_page .title{ margin-bottom: 10px; }
.actualite_page .date{
  float: left; text-transform: uppercase; font-family: 'latolight';
  height: 40px; line-height: 40px;
}
.actualite_page .description{ margin-top: 30px; }
.actualite_page .description img{ max-width: 100%; margin: auto; margin-bottom: 10px; }
.actualites_photos a{ display: block; margin: 15px;}
.actualites_photos a img{ display: block; border: none; width: 100%; }
.video_block iframe{ width: 100%; height: 400px; margin: 10px 0; }

.actualite_page .description p, .actualite_page .description span{
  font-family:'latoregular' !important; font-size: 19px !important; line-height: 31px !important;
    -webkit-font-smoothing: antialiased; -moz-font-smoothing: grayscale; -ms-font-smoothing: grayscale; -o-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale; font-smoothing: grayscale; 
}

.share_block{ float: right;}
.share_block .share_button{
  display: inline-block; width: 40px; height: 40px; overflow: hidden;
  color: #FFF; text-align: center; line-height: 40px;
  -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;

}
.share_block .share_button+.share_button{ margin-left: 4px;}
.share_block i{ font-size: 19px;}
.share_block span{
  display: block; height: 0; width: 0;
  overflow: hidden;
}
.share_block .facebook-share{
  background: #3b5998;
}
.share_block .twitter-share{
  background: #55acee;
}
.share_block .whatsapp-share{
  background: #4dc247; display: none;
}
.share_block .linkedin-share{
  background: #007bb5;
}
/*End Of Actualites*/


/*Cards*/
.card_page{ margin-bottom: 50px; }
.cards, .cards .filters{ margin-bottom: 30px; }
.cards .filter_item{ flex: auto; }
.cards .filter_item+.filter_item{ margin-left: 20px; }
.cards .filter_item .input input, .cards .filter_item .input select{
  width: 100%; height: 40px; border: none; border-left: solid 3px #2a3a7f; background: #e4e4e4;
  color: #222; text-transform: uppercase; display: block; padding: 0 10px;
}

.cards .filter_item .input select{
  width: 100%; height: 40px; border: none; border-left: solid 3px #2a3a7f; background: url('../img/selectArrowIcon.gif') no-repeat right, #e4e4e4;
  color: #222; text-transform: uppercase; display: block; padding: 0 10px;
}



.cards .select{ position: relative;}

.cards .select select{
  -webkit-appearance :none; -moz-appearance :none; -ms-appearance :none; -o-appearance :none; appearance :none;
  display: block; border: solid 1px #bababb; width: 100%;
  padding: 0 45px 0 15px;
}
.cards .filter_search{flex: initial; margin-left: 20px;}
.cards .search_submit{
  display: block; background: #2a3a7f; color: #FFF; padding: 0 10px;
  text-align: center; height: 40px; line-height: 40px;
}
.cards .search_submit span{
  display: none; margin-right: 5px; text-transform: uppercase;
}

.card{
  background: #FFF; height: auto;
  box-shadow: 0 0 5px #CCC; margin: 10px;
}
.card_img{ position: relative; overflow: hidden; }
.card_img img, .card_page_img img{ display: block; width: 100%; }
.card_img .img{
  position: absolute; top: 0; left: 0;
  object-fit: cover; height: 100%;
}
.card_img:after, .card_page_img:after{
  display: block; content: ""; width: 10px; height: 100%;
  position: absolute; top: 0; left: 0; background: #2a3a7f;
}
.card_box{ position: relative; padding: 15px; height: 100%; }
.card_box h2{ font-size: 21px; text-transform: uppercase; color: #000; text-align: left; margin: 0; }
.card_box h2:after{
  display: block; content: ""; height: 1px;
  background: #063348;
}
.card_details{
  margin-top: 15px; font-size: 15px; line-height: 25px;
  text-align: left;
}
.card_details strong{ font-family: 'latobold'; color: #000; font-weight: normal; }
.card_box .buttons{
  position: absolute; bottom: 0;
}
.card_box .buttons a{
  text-transform: none; font-size: 15px; font-family: 'latoregular';
  padding: 0 15px;
}

.card_page_img{
  position: relative; height: auto; overflow: hidden;
}
.card_page_img ul.social{
  list-style-type: none; margin: 0; padding: 0; width: 100%;
  position: absolute; bottom: 15px; text-align: center;
}
.card_page_img ul.social li{ display: inline-block; padding: 0 2px; }
.card_page_img ul.social li a{
  display: block; width: 50px; height: 50px; line-height: 50px;
  background: #f8a248; color: #000; font-size: 23px;
  -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;
}
.card_page .card_details{ font-size: 19px; line-height: 35px; }
.description_bdd, .description_bdd p, .description_bdd span{
  font-family: 'latoregular' !important;
  font-size: 19px !important; line-height: 30px !important;
}
.description_bdd a{ color: #2a3a7f; }
.description_bdd a:hover{ color: #f8a248 }

.search_card_img{ width: 20%; float: left; }
.search_card_details{ width: 80%; float: left; }


.similars_card{
  display: block; height: auto; overflow: hidden;
  position: relative; margin: 10px;
}
.similars_card_img{
  display: block; border:none; width: 100%; object-fit: cover;
  position: absolute; top: 0; left: 0;
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s
}
.similars_card:hover .similars_card_img{ width: 110%; top: -5%; left: -5%; transform: rotate(-2deg);}
.similars_card_title{
  width: 100%; position: absolute; bottom: 0; left: 0;
  padding: 50px 10px 10px; color: #FFF; text-align: left;
  background: linear-gradient(rgba(6,51,72,0), rgba(6,51,72,0.9));
  
}
.similars_card_title h4{font-size: 15px; text-transform: uppercase; margin: 0; padding: 0; color: #FFF;}

.no_result{
  text-align: center; margin: 20px 0;
  text-transform: uppercase; color: #000;
}

.card_buttons{ margin-left: auto; padding: 20px 0 20px 20px; font-size: 15px;}
.card_buttons a{
  display: inline-block; padding: 2px 10px; border: solid 1px; 
  -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px;  border-radius: 5px;
  background: #2a3a7f; color: #FFF; border-color: #2a3a7f; margin-bottom: 10px;
}
.card_buttons a:hover{background: none; color: #2a3a7f; }
.card_buttons .request_sent{
  display: inline-block; background: #f8a248; color: #000; padding: 2px 15px; border: solid #f8a248 1px; margin-bottom: 10px;
  -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px;
}


.similar_cards{ margin-top: 50px; text-align: center; flex-wrap: wrap; }
.similar_card{ padding: 20px; }
.similar_card_link{
  display: block; width: 190px;
}
.similar_card_img_block{ width: 170px; height: 170px; position: relative;}
.similar_card_img_block:before{
  display: block; content: ""; width: 180px; height: 180px; background: rgba(33,158,188,0.2);
  position: absolute; left: -5px; bottom: 0;
  -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;
  -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s;
}
.similar_card_img{
  width: 100%; height: 100%; overflow: hidden; margin: auto; position: relative;
  -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;
}
.similar_card_img:after{
  display: block; content: ""; width: 100%; height: 100%;
  position: absolute; top: 0; left: 0; box-sizing: border-box;
  -webkit-border-radius: 100%; -moz-border-radius: 100%; -ms-border-radius: 100%; -o-border-radius: 100%; border-radius: 100%;
  border: solid 10px rgba(255,255,255,0.2);
}

.similar_card_img img{
  display: block; 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;
  position: absolute; top: 0; left: 0;
}
.similar_card h4{
  margin-top: 10px;
  font-family: 'latoregular'; font-size: 15px; text-transform: capitalize;
}

.similar_card_link:hover .similar_card_img_block:before{
  background: rgba(254,182,7,0.5); width: 190px; height: 190px; left:-10px;
}
.similar_card_link:hover .similar_card_img img{ width: 110%; height: 110%; left: -5%; top: -5%; }
/*End of Cards*/

/*reclamer_popup*/
.reclamer_popup, .networkInvite_popup{
  width: 100%; height: 100%; background: rgba(0,0,0,0.7);
  position: fixed; top: 0; left: 0; z-index: 6000; display: none;
}
.reclamer_popup.show, .networkInvite_popup.show{ display: flex; }
.reclamer_popup_block{
  width: 100%; max-width: 500px; background: #FFF;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  line-height: 1;
}
.reclamer_popup_title{
  height: 30px; line-height: 30px;
  padding: 0 10px;  font-size: 19px; color: #FFF;
  background: #2a3a7f;
  position: relative;
}
.reclamer_popup_title .close{
  display: block; width: 30px; height: 30px;
  position: absolute; top: 0; right: 0;
  text-align: center;
}
.reclamer_popup_block form{ padding: 0 20px; margin-bottom: 20px; font-size: 15px; }
/*End of reclamer_popup*/

.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: #063348; border:solid 1px #063348;
}
.pagination a:hover, .pagination a.activ{background: #FFF; color: #c1c1c1;}

.pagination a:hover, .pagination a.activ{background: #063348; color: #FFF;}

.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; }

/*parallax*/
.parallax{
    width: 100%; height: auto; margin: 30px 0; padding: 50px 0; position: relative;
    color: #FFF; text-align: center; font-size: 19px; line-height: 30px; overflow: hidden;
    background: url('../img/parallax.jpg') no-repeat fixed;
    background-size: cover;
}
.parallax:before{
  width: 100%; height: 100%; content: "";
  position: absolute; top: 0; left: 0;
  background: rgba(0,0,0,0.7);
}

.parallax .content{position: relative; max-width: 800px; margin: auto; padding: 0 20px;}
.parallax .header_title h2{
  font-size: 32px; line-height: 40px; color: #FFF;  margin: 0;
  text-transform: uppercase; font-family: 'latoregular';
}
.parallax p{ font-size: 21px; line-height: 28px; margin-top: 10px; color: #FFF; }
/*end of slogan_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 input{ border:solid #dfdfdf 1px; width:100%; padding:10px 15px; box-sizing: border-box;}
.contact select{ border:solid #dfdfdf 1px; width:100%; padding:8px 15px; box-sizing: border-box;}
.contact input[type="file"]{ width: auto;}
.contact textarea{border:solid #dfdfdf 1px; width:100%; padding:10px 15px; height:100px; box-sizing: border-box; margin-top: 20px;}
.contact .buttons{ float: right;}
.contact .buttons a.formLink{ display: inline-block; color: #b5cf2f; padding: 0 10px;}
.contact input[type="submit"], .contact button{
  background:#f8a248; color:#000; border:none; margin:10px 0; padding:8px 20px; font-size:13px; width: auto;
  text-transform: uppercase;
  -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px;
}

.contact .borderSep{ margin: 20px 0; border-bottom: solid 1px #dfdfdf;}
.dateSelector{ position: relative;}
.dateSelector a{ display: block; position: absolute; top: 10px; right: 10px;}
.contact .g-recaptcha{ margin-bottom: 50px; }

.input+.input{ margin-top: 20px; }
.input input, .input textarea, .input select{
  display: block; width:100%;
  border:solid #dfdfdf 1px; padding:10px 15px; box-sizing: border-box;
}
.input input[type="submit"]{
  background: #2a3a7f; color: #FFF; text-transform: uppercase;
  font-size: 21px; border: none;
}

/*End of contact*/

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

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

/*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 13px; box-sizing:border-box;}
.simpleList li:before, .description_bdd ul li:before{
  content: ''; font-family: 'FontAwesome';
  position: absolute; left: -7px; top: 6px; font-size: 13px;
  color: #f8a248;
}
/*end of simpleList*/

/*simpleTable*/
.simpleTable{ margin: 20px 0; width: 100%;}
.simpleTable th{ border: none; background: #f8a248; 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: 0 auto; padding:0;}
ul.accordeon .accordeonLi{ margin:0; padding: 0; }
ul.accordeon .accordeonLi+.accordeonLi{ margin-top: 2px;}
ul.accordeon .accordeonLi a.accordeonLink{
  display: block; background: #ededed; padding: 0 15px; border: solid 1px #ededed;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}
ul.accordeon .accordeonLi a.accordeonLink h2{
  color: #484848; margin: 0; padding: 12px 0; font-size:17px;
  border:none; font-family: 'latoregular'; line-height: 1;
}
ul.accordeon .accordeonLi a.accordeonLink i{ display: block; height: 40px; line-height: 40px; float: right; font-size: 20px; color: #f8a248; margin-left: 10px;}
ul.accordeon .accordeonLi a.accordeonLink:hover, ul.accordeon .accordeonLi a.current{ color: #FFF; border: solid 1px #f8a248; }
ul.accordeon .accordeonLi a.accordeonLink:hover i, ul.accordeon .accordeonLi a.current i, ul.accordeon .accordeonLi a.accordeonLink:hover h3, ul.accordeon .accordeonLi a.accordeonLink.current h2{ color: #f8a248;}
ul.accordeon .accordeonItem{ display:none; padding: 10px; margin: 1px 0 5px 0; background: #FFF;}
/*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; 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;}
.row_flex:after{ display: block; content: ""; clear: both; }
.flex_wrap{ flex-wrap: wrap; }
.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_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;}


footer{ width: 100%; position: relative;
  background: #000; color: #FFF;
  text-align: left; padding-bottom: 30px;
}

footer{ width: 100%; position: relative;
  background: #000; color: #FFF;
  text-align: left; padding: 30px 0;
}
footer h3{ margin: 0 0 5px 0; color: #FFF; font-size: 15px; text-transform: uppercase;}
footer .site_map{border-bottom: solid 1px #f8a248; padding-bottom: 20px; }
footer .site_map h3 a:hover{ color: #FFF; }
footer .site_map ul{ list-style-type: none; margin: 0; padding: 0; font-size: 12px; line-height: 14px; }
footer .site_map ul li+li{ margin-top: 7px; }
footer .site_map ul a:hover{ color: #f8a248; }
footer nav{
  margin: 0 0 20px 0;
}
footer nav a{ display: block; text-transform: uppercase; font-size: 12px; color: #FFF;}
footer nav a:hover{ color: #FFF;}

footer .logo{ width: 150px; }
footer .copyright{
    text-align: left;
    font-size: 14px; line-height: 20px;
}
footer .copyright .copy{ margin-top: 10px; }

footer .contacts{ line-height: 20px; font-size: 15px; }
footer .contacts .icon{
  clear: left; float: left; display: block;
  width: 30px; font-size: 21px; text-align: center;
  padding: 5px 0; color: #f8a248;
}
footer .contacts a{font-weight: bold;}
footer .contacts a:hover{ color: #f8a248;  }
footer .contacts .text{ display: block; margin-left: 40px; padding: 5px 0; }

footer .social{ text-align: right; }
footer .social ul{
    list-style-type: none; margin: 0; padding: 0;
    float: right;
}
footer .social ul li{ display: inline-block;}
footer .social ul li+li{ margin-left: 5px;}
footer .social ul a{
    display: block; width: 40px; height: 40px; line-height: 40px;
    background: rgba(255,255,255,0.2); color: #f8a248;
    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;}


/*animations*/
.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, 100px, 0px);
  -webkit-transform: translate3d(0, 100px, 0px);
  -o-transform: translate(0, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate3d(0px, 100px, 0px);
}

.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);
}
/*end of animations*/
