/********** MACROS ***********************/
/*****************************************/
/*****************************************/
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,300&display=swap');














/*****************************************/
/********** GENERAL   ********************/
/*****************************************/
body{ margin:0; padding:0; font-family: 'Lato', sans-serif; font-size:16px; font-weight: 400; line-height:1.5; }
h1{  font-family: 'Lato', sans-serif; font-size:50px; line-height:1.2; font-weight:700; text-transform:uppercase; color:#254177; }
h2{  font-family: 'Lato', sans-serif;  font-size:30px; line-height:1.2; font-weight:700; color:#254177; }
h2 span{ color:#f39100; }
h3{   font-family: 'Lato', sans-serif;  font-size:24px; line-height:1.2; font-weight:700; color:#254177; }
.row-fluid [class*="span"]{min-height:0 !important;}
.container-fluid{ padding:0; }
.no-scroll { overflow-y: hidden; height: 100%; min-height: 100%; pointer-events: none;}

a > img.hs-cta-img{ max-width:100%; }

@media (min-width: 992px){
  .container { max-width: 900px; }
}

@media (max-width: 769px){
  h1{ font-size:40px; letter-spacing:3px !important; }
  h2{ font-size:30px; }
  h3{ font-size:24px; }
  body{ font-size:16px; }
}

@media screen and (max-width: 576px) {
  h1{ font-size:30px; }
  h2{ font-size:24px; }
  h3{ font-size:20px; }
  body{ font-size:16px; }

}


/****************************************************/
/********** FORMS                *******************/
/****************************************************/
input, textarea, select {width: 100%; border:none; color: #aaa9a9; background-color: #fff; border: 1px solid #d2d2d2; font-size: 13px; border-radius: 5px;min-height: 45px;}
form .hs-button.primary, 
form input[type="submit"], 
form input[type="button"] {cursor: pointer; text-decoration: none !important; text-transform: uppercase;display: inline-block;text-align: center;outline: none;margin-bottom: 20px;background-color:rgb(227,135,54);border-radius: 2px;border-width: 0px;padding: 13px 29px;line-height: 17px;font-size: 14px;color: #fff; }
form input[type="checkbox"] { width:auto; min-height:initial; }
form ul.inputs-list { list-style:none; }

form .legal-consent-container{ margin:20px 0; font-size:12px; }

/*****************************************/
/********** BACK TO TOP ******************/
/*****************************************/
#easy-top { background: rgba(0, 0, 0, 0.5); text-align: center; position: fixed; bottom: 15px; right: 15px; cursor: pointer; width: 38px; height: 38px; line-height: 38px; border-radius: 4px; padding: 4px; display: none; -webkit-transform: translateZ(0); transition: all .3s ease-out; }
#easy-top:hover { background: rgba(227,135,54,0.9); }
#easy-top:before { content: ''; height: 8px; width: 8px; display: block; border: 3px solid #fff; border-left-width: 0; border-bottom-width: 0; transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); -ms-transform: rotate(-45deg); position: absolute; top: 15px; left: 18px;}
#easy-top:after { content: ''; height: 16px; width: 3px; display: block; background: #fff; position: absolute; top: 17px; left: 22px; }

/*****************************************/
/********** TOP PANE  ***********************/
/*****************************************/
.custom_top-pane{ position: relative; height: 250px; background-repeat: no-repeat !important; background-position: center center !important; background-size: cover !important; background-attachment:fixed !important; padding: 50px 0;  align-items: center; justify-content: center;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
}
.custom_top-pane h1{ margin: 0 auto; width: 80%; text-align: center; color:#fff; line-height: 1.5;}
.custom_top-pane .custom_top-pane-image{ display:none; }

/*****************************************/
/********** SCROLL DOWN ******************/
/*****************************************/
a.scrollDown { color: #fff; letter-spacing: .1em; text-decoration: none; padding-top: 60px; position: absolute; bottom:-20px; left:calc(50% - 40px); z-index: 2; display: inline-block;  
-webkit-transform:translate(0, -50%);
-moz-transform:translate(0, -50%);
-o-transform:translate(0, -50%);
-ms-transform:translate(0, -50%);
transform:translate(0, -50%);
;  
-webkit-transition:opacity .3s;
-moz-transition:opacity .3s;
-o-transition:opacity .3s;
-ms-transition:opacity .3s;
transition:opacity .3s;
;}
a.scrollDown span { position: absolute; top: 0; left: 50%; width: 46px; height: 46px; margin-left: -23px; border: 1px solid #fff; border-radius: 100%; box-sizing: border-box;}
a.scrollDown span::after { position: absolute; top: 50%; left: 50%; content: ''; width: 16px; height: 16px; margin: -12px 0 0 -8px; border-left: 1px solid #fff; border-bottom: 1px solid #fff; box-sizing: border-box;  
-webkit-transform:rotate(-45deg);
-moz-transform:rotate(-45deg);
-o-transform:rotate(-45deg);
-ms-transform:rotate(-45deg);
transform:rotate(-45deg);
  }
a.scrollDown span::before { position: absolute; top: 0; left: 0; z-index: -1; content: ''; width: 44px; height: 44px; box-shadow: 0 0 0 0 rgba(255,255,255,.1); border-radius: 100%; opacity: 0; box-sizing: border-box;  
-webkit-animation:sdb03 3s infinite;
-moz-animation:sdb03 3s infinite;
-o-animation:sdb03 3s infinite;
-ms-animation:sdb03 3s infinite;
animation:sdb03 3s infinite;
 }

@-webkit-keyframes sdb03 {
  0% { opacity: 0; }
  30% { opacity: 1; }
  60% { box-shadow: 0 0 0 60px rgba(255,255,255,.1); opacity: 0; }
  100% { opacity: 0; }
}
@keyframes sdb03 {
  0% { opacity: 0; }
  30% { opacity: 1; }
  60% { box-shadow: 0 0 0 60px rgba(255,255,255,.1); opacity: 0; }
  100% { opacity: 0; }
}

/*****************************************/
/********** SCROLL TO SECTION ************/
/*****************************************/
.scrollTo{ background:none; border:solid 2px #FFF; color:#FFF; text-decoration:none; width:200px; padding:10px; border-radius:4px;}
.scrollTo:hover{ background:#FFF; color:#f39100;}

/*****************************************/
/******   SECTION FORM CONTACT    
**/
/*****************************************/
section.form_contact{ padding:20px 10%;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
section.form_contact .inner{padding-left:50px;}
section.form_contact .inner .title_form{ text-align: center; margin-bottom: 30px; font-size: 24px; line-height:1.2; }
section.form_contact .inner form {margin: auto; width: 100%;flex-flow: column;align-items: center; max-width: 450px;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
section.form_contact .inner form fieldset {margin:0; width:100%;}
section.form_contact .inner form fieldset label { display:none; }
section.form_contact .inner form fieldset input, 
section.form_contact .inner form fieldset textarea{ width:calc(100% - 20px); margin:0; }
section.form_contact .inner form input[type="submit"]{ border-radius:6px; font-size: 18px; border: none; cursor: pointer; background-color:rgb(227,135,54); color: #FFFFFF; display: block; margin: 15px auto; padding :10px 25px;}
section.form_contact .inner form input[type="submit"]:hover{ background: rgb(249,148,59);}
section.form_contact .inner form ul.hs-error-msgs { padding-left: 20px; margin: 0; font-size:10px; color:#e38736;}
section.form_contact .inner form ul.hs-error-msgs li label{ display:block; }
section.form_contact .inner form .hs_error_rollup{ display:none; }
section.form_contact .inner .desc_cta{ margin:30px auto 0; width: 100%;flex-flow: column;align-items: center; max-width: 450px;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
section.form_contact .inner .desc_cta .desc{ font-size:18px; line-height:1.3; text-align: justify; width:100%; }


/*****************************************/
/******   SECTION BLOG & SUCCESS STORY    
**/
/*****************************************/
section.office_items{ padding:20px 10%; }
section.office_items .inner{ margin:auto; text-align:center;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 flex-wrap:wrap; }
section.office_items .inner .office-contact{ width:300px; display:inline-block; vertical-align:top ; border: 1px solid #b1b1b1;border-radius: 5px;text-align: left;overflow: hidden; margin-right:20px; margin-bottom:20px; }
section.office_items .inner .office-contact .map{ margin:0; height:250px; }
section.office_items .inner .office-contact .content{ padding:20px;}

/*****************************************/
/********   TEAM MEMBERS                **/
/*****************************************/
.team{ padding:20px 0; }
.team > span {  max-width: 1200px; margin: auto; justify-content:center; flex-wrap: wrap;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
.team a{ text-decoration: none; color:#111;  
-webkit-transition:.4s;
-moz-transition:.4s;
-o-transition:.4s;
-ms-transition:.4s;
transition:.4s;
 }
.team .card { background: #FFF; width: 300px; flex-direction: column; justify-content: space-between; margin:20px;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
.team .card figure { text-align:center; margin:0; }
.team .card figure figcaption{ padding:0 10px;}
.team .card figure figcaption .titre{ font-size: 30px;line-height: 1.1; font-weight: 300;  margin:20px 0;} 
.team .card figure figcaption span{ display:block;} 
.team .card .social{ padding: 20px 0; align-items: center;justify-content: center;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
.team .card .social a { margin:0 10px; font-size:24px; color:#111; }
.team .card .task { padding: 15px 25px 0; margin-bottom: 0;justify-content: flex-end;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
.team .card .bottom-links { align-items: center;  
display:-webkit-flex ;display:-moz-flex ;display:flex ;
 }
.team .card .bottom-links a { flex: 1; text-align: center; font-size: 11px; font-weight: 300; padding: 14px; letter-spacing: 1px; }
.team .card .bottom-links a:first-child { border-right: solid 1px lightgray; }
.team .card .bottom-links a i { font-size: 17px; margin-right: 5px; }

.team .modal{ padding:0; display:none; position: fixed; z-index: 999999; left: 0;top: 0;width: 100%; height: 100%; overflow: auto; background-color: rgb(0,0,0); background-color: rgba(0,0,0,0.7); }
.team .modal-dialog .modal-content { width:500px; margin:auto; position:relative; }
.team .modal-dialog .modal-content .modal-body{ padding:20px; background:#FFF; margin-top:25px; text-align:center; }
.team .modal-dialog .modal-content .modal-body .role{  font-size: 17px; color: #8c8c8c; margin-bottom: 10px;}
.team .modal-dialog .modal-content .modal-body .desc{ text-align:justify;}
.team .modal-dialog .social{ display:inline-block; }
.team .modal-dialog .social a.icon{ display:inline-block; color:#FFF; text-align: center; font-size: 18px; border: solid thin #254177; border-radius: 50%; background: #254177; width: 30px; height: 30px; line-height:30px; }
.team .modal.in .modal-dialog{  
-webkit-transform:translate(0,10%);
-moz-transform:translate(0,10%);
-o-transform:translate(0,10%);
-ms-transform:translate(0,10%);
transform:translate(0,10%);
 }
.team .modal-dialog .modal-content button.close{ position:absolute; top:0; right:0; z-index:10000;font-size: 61px; background: #FFF; border:none; color: #000; opacity: 1;}

@media(max-width: 767px){
  .team .modal-dialog .modal-content { width:100%;}
.team .modal-dialog .modal-content .modal-body{margin-top:0px;}
}
/*******************************************/
/********   FORM SPONTANEOUS APPLICATION ***/
/*******************************************/
form { margin-bottom:50px; }
form fieldset{ margin:0 auto 20px !important; }
form ul.inputs-list.multi-container{ list-style:none; padding-left:0; margin-top: 0;}
form ul.inputs-list.multi-container li{ display:inline-block; margin:10px 5px 0; width:45%; }
form .hs_submit { text-align:center; }
form .hs_submit input[type="submit"]{ width:auto; margin:auto;}
form .hs_error_rollup{ display:none; }

/*****************************************/
/********   FOOTER                      **/
/*****************************************/
footer{ text-align:center; }

/*****************************************************/
/********** soaperformanceday - custom gallery  ******/
/*****************************************************/
.custom_gallery .hs_cos_gallery_thumbnails{ margin:0; padding:0; }
.custom_gallery .hs_cos_gallery_lightbox_thumbnails .hs_cos_gallery_slide{ width:25% !important; height:150px !important; margin:0 !important;}
.custom_gallery .hs_cos_gallery_lightbox_thumbnails .hs_cos_gallery_slide .slick-slide-inner-wrapper{ left:0 !important;}
.custom_gallery .hs_cos_gallery_lightbox_thumbnails .hs_cos_gallery_slide .slick-slide-inner-wrapper img{ width:100% !important; height:auto; min-height: 100%; }
@media (max-width: 768px){
  .custom_gallery .hs_cos_gallery_lightbox_thumbnails .hs_cos_gallery_slide{ width:33% !important; }
}   

@media (max-width: 480px){
  .custom_gallery .hs_cos_gallery_lightbox_thumbnails .hs_cos_gallery_slide{ width:50% !important; }
}