html{
    height: 100%;
    min-height: 100%;
    /*overflow-x: hidden;*/
}

body{
    min-height: 100%;
    overflow-x: hidden;
}

.full_test{
    position:absolute;
    z-index:9999999999999;
    background:#000;
    width:100%;
    height:100%;
    top:0;
    left:0;
    opacity: 0;
}

#pano{
    height: 100% !important;
    width: 100% !important;
    min-height: 100%;
}

html.htlm_fix_overflow{
    /*overflow: hidden;*/
}

body{
    font-size:16px;
    line-height:30px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color:#40464A;
    background: #f3f3f3;
    position: relative;
}

.mobile{
    display: none !important;
}

.desktop{

}

a{
    text-decoration:none;
    color:#d32927;
}

a:hover{
    /*text-decoration:underline;*/
}

h1, h2, h3, h4, h5, h6{
    clear:none;
    line-height:1em;
    font-family: 'Montserrat', sans-serif;
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong{
    font-weight: 600;
}

h1{   
    font-size:19px;
    padding-bottom:43px;
    padding-top:0px;
    text-transform:uppercase;
}

h2{
    font-size:20px;
    line-height: 24px;
    padding-bottom: 28px;
    padding-top: 25px;
    text-transform:uppercase;
    font-weight: bold;
}

h3{
    font-size: 18px;
    line-height: 22px;
    padding-bottom: 10px;
    padding-top: 25px;
    font-weight: bold;
}

h4{
    font-size: 22px;
    line-height: 30px;
    padding-bottom: 20px;
    padding-top: 25px;
}

hr{
    border: none;
    border-bottom: 1px solid #999999;
    padding: 0;
    margin: 25px 0;
}

.entry ul{
    list-style: disc outside;
    margin-left: 20px;
    line-height: 1.2em;
    padding-bottom: 20px;
}

.entry > ul {
    padding-top: 0;
    padding-bottom: 10px;
    padding-left: 0;
    
}

.entry li > ul{
    padding-top: 8px;
}

.entry ol{
    list-style: decimal outside;
    margin-left: 20px;
    line-height: 1.2em;
    padding-bottom: 20px;
}

.entry > ol{
    padding-top: 0;
    padding-bottom: 10px;
    padding-left: 13px;
}

.entry li{
    padding-bottom:8px;
    padding-left: 4px;
}

.entry li:last-child{
    padding-bottom: 0;  
}

.entry p, .entry div{
    padding-bottom:20px;
}

.entry table{
    margin-top:10px;
    margin-bottom:10px;
}

.entry table thead{
    text-transform:uppercase;
    font-size:16px;
    font-weight:bold;
}

.entry table thead td{
    padding:4px 5px;
}

.entry table tbody{
}

.entry table tbody td{
    padding:4px 5px;
    vertical-align: top;
}

.entry table tbody td:first-child{
    border-left: none;
}

.entry > *:last-child{
    padding-bottom: 0;
}

.entry sup{
    line-height:0;
}

.entry img{
    max-width: 100%;
    height:auto;
}

address{
    font-style:normal;
    padding-bottom:5px;
}

sup {
    vertical-align: super !important;
    font-size: smaller !important;
}

sub {
    vertical-align: sub !important;
    font-size: smaller !important;
}

.alignleft{
    float:left;
    padding-top:5px;
    padding-right:10px;
}

.alignright{
    float:right;
    padding-top:5px;
    padding-left:10px;
}

.aligncenter{
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.alignleft{
    padding-right:20px;
}

img.alignright{
    padding-left:20px;
}

.center{
    margin:0 auto;
    position:relative;
    max-width: 1200px;
    padding: 0 30px;
}

#header_mobile{
    display: none;
}

.media_sociaux{
    display:flex;
    justify-content: flex-start;
}

.media_sociaux a{
    background-size: 31px 30px !important;
    width:31px;
    height:30px;
    margin:0;
}

.media_sociaux .facebook_url{
    background: url(../images/facebook.png) no-repeat top left;
    transition: 0.2s all ease;
}

.media_sociaux .facebook_url:hover{
    background: url(../images/facebook_hover.png) no-repeat top left;
}

.media_sociaux .twitter_url{
    background: url(../images/twitter.png) no-repeat top left;
}

.media_sociaux .twitter_url:hover{
    background: url(../images/twitter_hover.png) no-repeat top left;
}

.media_sociaux .linkedin_url{
    background: url(../images/linkedin.png) no-repeat top left;
}

.media_sociaux .linkedin_url:hover{
    background: url(../images/linkedin_hover.png) no-repeat top left;
}

.media_sociaux .pinterest_url{
    background: url(../images/pinterest.png) no-repeat top left;
}

.media_sociaux .pinterest_url:hover{
    background: url(../images/pinterest_hover.png) no-repeat top left;
}

.media_sociaux .youtube_url{
    background: url(../images/youtube.png) no-repeat top left;
}

.media_sociaux .youtube_url:hover{
    background: url(../images/youtube_hover.png) no-repeat top left;
}

.media_sociaux .instagram_url{
    background: url(../images/instagram.png) no-repeat top left;
}

.media_sociaux .instagram_url:hover{
    background: url(../images/instagram_hover.png) no-repeat top left;
}

body .gform_wrapper .top_label .gfield_label,
body .gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label,
body .gform_wrapper .field_sublabel_below div[class*=gfield_time_].ginput_container label{
    display: none;
}

body .gfield_description.validation_message,
body .validation_message{
    padding: 10px !important;
}

body .gform_wrapper .description,
body .gform_wrapper .gfield_description,
body .gform_wrapper .gsection_description,
body .gform_wrapper .instruction{
    font-size: 12px;
    line-height: 1.2em;
}

body .entry .gform_wrapper,
body .entry .gform_wrapper div{
    padding-bottom: 0 !important;
    margin-top: 0 !important;
}

body .gform_wrapper{
    margin-bottom: 0 !important;    
}

body .gform_wrapper .gform_heading{
    margin: 0 !important;
}

body .gform_body{
    margin-right: -8px;
    margin-left: -8px;
    width: calc(100% + 16px) !important;
}

body .gform_wrapper .gform_title{
    text-transform: uppercase !important;
    font-size: 30px !important;
    line-height: 1.1em !important;
    font-weight: 400 !important;
    margin: 0 !important;
    padding-bottom: 20px !important;
    padding-top: 0 !important;
}

body .entry .gform_wrapper li{
    padding-left: 0;
    padding-bottom: 0;
}

body .gform_wrapper li.gfield.gfield_error.gfield_contains_required{
    padding-right: 0 !important; 
}

body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half){
    max-width: 100% !important;
}

body .gform_wrapper ul li.gfield,
body .gform_wrapper .top_label div.ginput_container{
    margin-top: 0 !important;
}

body .gform_wrapper li.gfield.field_description_below+li.gsection{
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
}

body .gform_wrapper .gform_footer{
    padding-top: 0;
    margin-top: 0;
}

body .gform_wrapper ul.gform_fields{
    display: flex;
    flex-wrap: wrap;
}

body .gform_wrapper ul.gform_fields li.gfield{
    padding-right: 0 !important;
    margin-right: 8px !important;
    margin-left: 8px !important;
    width: 100%;
    padding-bottom: 20px;
}

body .gform_wrapper ul.gform_fields li.gfield.gsection{
    padding-bottom: 0;
}

body .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body .gform_wrapper textarea{
    background: #eaeaea !important;
    padding: 10px 10px !important;
    border: none !important;
    -moz-appearance: none;
    -webkit-appearance: none;
    outline: none !important;
    width: 100%;
    display: block;
}

body .gform_wrapper input[type=submit]{
    background: #b81f30;
    border-radius: 4px;
    padding: 12px 19px 11px;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 16px !important;
    color: #fff;
    display: inline-block;
    cursor: pointer;
    border: none;
    min-height: 0 !important;
}

body .gform_wrapper input[type=submit]:hover{
    background: #d52034;
}

body .gf_half{
    width: calc(50% - 16px) !important;
}

body .gf_third{
    width: calc(33.33% - 16px) !important;
}

body .gf_quarter{
    width: calc(25% - 16px) !important;
}

body .gf_phone{
    width: calc(30% - 16px) !important;
}

body .gf_extension{
    width: calc(20% - 16px) !important;
}

body .ui-datepicker{
    background: #fff;
    border: 1px solid #ccc;
    padding: 5px 30px;
}

#footer{
    display:none;
}

#content_all{
     position: relative;
     width:100%;
     min-height: 100%;
     overflow-x: hidden;
}

/*.home #content_all,*/
body.page-template-template-parcours{
    overflow: hidden;
    height: 100%;
}

body.page-template-template-360{
    height: 100%;
    min-height: 100%;
}

.page-template-template-360 #content_all,
.page-template-template-parcours #content_all{
    overflow: hidden;
    height: 100%;
}

.page-template-template-parcours.no_overflow,
.page-template-template-parcours.no_overflow #content_all{
    overflow-y: auto;
    height: auto;
}

/*tour virtuel*/
#header{
    position: fixed;
    top:0;
    right: 10px;
    width: calc(100% - 20px);
    z-index: 500;
    display: flex;
    justify-content: space-between;
    transition: z-index 0s 0.5s;
}

.hasScrollBar #header{
    right: 30px;
    width: calc(100% - 40px);
}

.page-template-template-parcours #header{
    z-index: 3000;
}

.page-template-template-360 #header:after{
    content: "";
    position: absolute;
    top: 0;
    left: -10px;
    width: 437px;
    height: 100%;
    background: transparent linear-gradient(90deg, #FFFFFF 0%, #ffffff 50%, #ffffff00 100%) 0% 0% no-repeat padding-box;
    opacity: 0.60;
    z-index: -1;
}

.page-template-template-360.menu_open #header:after{
    display: none;
}

.page-template-template-parcours #logo{
    visibility: hidden;
}

.page-template-template-parcours.no_overflow #logo{
    visibility: visible;
}

#header a{
    color: #000;
}

#header #logo img{
    width: 158px !important;
    height: auto !important;
    margin-top: 10px;
    margin-left: 10px;
}

#header_right{
    display: flex;
    height: 38px;
    align-items: flex-start;
}

#header_right a{
    color: #fff;
    font-size: 20px;
    text-transform: uppercase;
    padding: 11px 20px;
    margin: 0 5px;
    border-radius: 0 0 4px 4px;
    transition: all ease 0.2s;
    font-size: 14px;
    line-height: 16px;
    font-family: 'Montserrat';
    display: block;
    transition: all ease 0.2s;
}

#header_right a:hover{
    /*background: #fff;
    color: #000;*/
}

#header_right #concours_link{
    background: #484340;
    margin-right: 0;
}

#header_right #inscription_link{
    background: #b81f30;
}

#header_right #concours_link:hover,
#header_right #inscription_link:hover{
    padding: 13px 20px;
}

#header_right #menu_link,
#header_right #menu_link_open{
    padding: 5px 10px !important;
    background: url(../images/menu.svg) no-repeat right 10px center;
    background-color: rgba(0,0,0,0.42);
    font-size: 12px;
    line-height: 14px;
    border-radius: 0;
    width: 80px;
    box-sizing: border-box;
    margin-top: 6px;
    margin-right: 0px;
}

#header_right #menu_link:hover{
    background-color: rgba(0,0,0,0.80);
}

#header_right #menu_link_open{
    display: none;
    width: 90px;
    background: url(../images/close.svg) no-repeat right 10px center transparent;
}

.page-template-template-360{
    position: relative;
}

.page-template-template-360.fancybox-active,
.page-template-template-parcours.fancybox-active{
    height: 100% !important;
    overflow: hidden !important;
}

.page-template-template-360.compensate-for-scrollbar{
    margin-right: 0 !important;
}
/*
.page-template-template-360 .fancybox-content{
    max-width: 500px;
}

.page-template-template-360 .fancybox-stage img{
    width: 100% !important;
    height: auto;
    margin-top: 20px;
    display: block;
}
*/

.fancybox-slide--html{
    padding: 0 !important;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--html .fancybox-content{
    width  : 1200px;
    /*height : 450px;*/
    max-width  : 80%;
    /*max-height : 60%;*/
    margin: 0;
    background: transparent;
    color: #fff;
    padding: 34px;
}

.fancybox-container .fancybox-close-small{
    padding: 0;
    width: 34px;
    height: 34px;
}

.fancybox-container .fancybox-close-small svg{
    color: #fff;
    opacity: 1;
}

.text_popup{
    
}

.popup_titre{
    color:#fff;
    font-weight: bold;
    font-size: 30px;
    line-height: 36px;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
}

.popup_sous_titre{
    font-size: 12px;
    line-height: 14px;
    color: #AFAFAF;
    /*text-transform: uppercase;*/
}

.fancybox-button.fancybox-button--close{
    background: transparent;
    color: #fff;
}

.navigation_popup{
    display: flex;
    justify-content: space-between;
    padding-top: 20px;
}


.popup-custom-prev.disabled,
.popup-custom-next.disabled{
    visibility: hidden;
}

.popup-custom-prev,
.popup-custom-next{
    font-size: 15px;
    line-height: 18px;
    font-family: 'Montserrat';
    color:#fff;
    text-transform: uppercase;
    color:#AFAFAF;
    display: block;
    cursor: pointer;
}

.popup-custom-next{
    text-align: right;
}

.popup-custom-prev .popup-custom-titre,
.popup-custom-next .popup-custom-titre{
    font-size: 16px;
    line-height: 19px;
    font-family: 'Montserrat', sans-serif;
    color: #fff;
}

.fancybox-content .videowrapper{
    position: relative;
}

.fancybox-inner .fancybox-caption{
    max-width: 1416px;
    margin: auto;
    width: 75%;
    padding: 0 !important;
    font-size: 30px;
    line-height: 36px;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    display: none !important;
}

.fancybox-infobar,
.fancybox-button--zoom,
.fancybox-button--thumbs
{
    display: none !important;
}

.page-template-template-360 .fancybox-navigation{
    display:none;
}

.open_video{
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    z-index: -10;
}
/*
.open_video:after{
    content: "";
    background: url(../images/play.svg) no-repeat center;
    position: absolute;
    background-size: 88px 88px;
    width: 88px;
    height: 88px;
    top: calc(50% - 44px);
    left: calc(50% - 44px);
}
*/
.open_video:before{
    content: "";
    width: 88px;
    height: 88px;
    background: #b81f30;
    z-index: 1;
    position: absolute;
    top: calc(50% - 44px);
    left: calc(50% - 44px);
    border-radius: 100%;
}

.open_video:after{
    content: "";
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 46px solid #ffffff;
    z-index: 2;
    position: absolute;
    top: calc(50% - 30px);
    left: calc(50% - 16px);
}

.open_video.hide{
    display: none;
}

.btn{
    padding: 30px 60px;
    background: #fff;
    color: #000;
    border-radius: 10px;
    font-size: 20px;
    line-height: 1.2em;
    text-transform: uppercase;
    transition: all ease 0.2s;
}

.btn:hover{
    background: #000;
    color: #fff;
}

body.home,
body.home #content_all,
body.home #cont_accueil,
body.home #accueil{
    height: 100% !important;
}

#cont_accueil{
    overflow:hidden !important;   
}

#cont_accueil,
#cont_accueil_bg{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow-y: auto;
    position:relative;
}

#cont_accueil_bg{
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    z-index: -1;
    transition: all ease 10s;
}

.bg_zoom.grow{
    transform: scale(1.2);
}


#accueil{
    background: transparent linear-gradient(137deg, #FFFFFF 0%, #FFFFFF00 30%);
    display: flex;
    overflow: hidden !important;
    z-index: 10;
}

#accueil > div{
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    width: 100%;
    height: 100%;
    padding: 0 30px;
    margin: auto;
    display: flex;
    box-sizing: border-box;
    padding: 20px;
}

#accueil .entry{
    color: #fff;
    text-transform: uppercase; 
    font-size: 70px;
    line-height: 80px;
    font-weight: 900;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 0px;
}

#accueil #navigation{
    align-self: center;
    padding-top: 40px;
}

#accueil .btn{
    margin: 20px;
    border-radius: 4px;
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    font-family: 'Montserrat';
    color: #FFFFFF;
    text-transform: uppercase;
    padding: 15px 10px;
    width: 257px;
    box-sizing: border-box;
    display: inline-block;
    text-align: center;
}

#accueil .btn:first-child{
    background: #b81f30;
}

#accueil .btn:last-child{
    background: #484340;    
}

#accueil .btn:first-child:hover{
    background: #d52034;
}

#accueil .btn:last-child:hover{
    background: #605a55;
}

#bandeau_annonce{
	background: url(../images/bg.jpg) no-repeat center;
	background-size: cover;
	color: #fff;
	text-align: center;
	margin: 0 auto;
	padding: 35px 20px 30px;
	text-transform: uppercase;
	margin-top:20px;
	-webkit-box-shadow: 0px 7px 13px 7px rgba(0,0,0,0.19); 
	box-shadow: 0px 7px 13px 7px rgba(0,0,0,0.19);
    width: 691px;
    height: 186px;
	box-sizing: border-box;
	position:relative;
}

#bandeau_annonce h3{
	font-size: 37px;
	line-height: 1.1em;
	padding-top: 0;
	padding-bottom: 15px;
	margin-top: 0;
	margin-bottom: 0;
	font-weight: bold;
}

#bandeau_annonce h4{
	font-size: 24px;
	line-height: 1.1em;
	padding-top: 0;
	margin-top: 0;
    padding-bottom: 30px;
}

#bandeau_annonce p{
	font-size: 18px;
	line-height: 1.1em;
	padding-bottom: 0;
}

#bandeau_annonce .full_stack{
	position: absolute;
	top:0;
	left: 0;
	width:100%;
	height: 100%;
}

#menu_box,
#menu_box_kisoques{
    position: fixed;
    top: 0;
    left: 0;
    z-index: -999;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /*transition: margin-left 0.5s;*/
    height: 100%;
    /*background: transparent linear-gradient(274deg, #b81f30 0%, #484340 100%) 0% 0%;*/
    background: url(../images/bg_degrade.svg) no-repeat center;
    background-size: cover !important;
    color: #000;
    /*padding: 20px;*/
    box-sizing: border-box;
    width: 100%;
    /*margin-left: -100%;*/
    text-align: center;
    text-transform: uppercase;
    opacity: 0;
    transition: opacity 0.5s, z-index 0s 0.5s;
}

#menu_box.open,
#menu_box_kisoques.open{
    z-index:3000;
    opacity: 1;
    transition: opacity 0.5s;
}

#menu_box #menu-principal a,
#menu_box_kisoques .menu-kiosques-container a{
    font-size: 18px;
    line-height: 22px;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 2.7px;
    color: #fff;
    display: block;
    padding: 25px 20px;
}

#menu_box_kisoques .menu-kiosques-container a {
    font-size: 15px;
    line-height: 19px;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 2.7px;
    color: #fff;
    display: block;
    padding: 15px 20px;
}

.inside_a{
    position: relative;
}

.description_menu{
    position: absolute;
    top: -9px;
    right: -26px;
    background: #b81f30;
    border-radius: 100%;
    width: 22px;
    height: 22px;
    font-size: 14px;
    line-height: 22px;
    font-family: 'Montserrat';
}

#menu_box_elem,
#menu_box_elem_kiosques{
    /*flex-direction: column; */
    justify-content: center;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    padding: 0 30px;
    /* margin: auto; */
    display: flex;
    position: relative;
    overflow-y: auto;
    height: 100vh;
}

#menu_box_elem_kiosques{
    overflow-x: hidden;
}

#bg,
#bg_kiosques{
    font-weight: 900;
    font-size: 100px;
    line-height: 100px;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 0px;
    color: #ffffff;
    text-transform: uppercase;
    opacity: 0.09;
    text-align: left;
    padding-left: 0;
    position: absolute;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
}

#test{
    height: 131px;
}

.stickIt #logo{
    visibility: hidden !important;
}

/*body quand menu ouvert*/
.menu_open,
.menu_open_kiosque{
    overflow:hidden !important;
}

.menu_open #header,
.menu_open_kiosque #header{
    z-index: 3500;
    transition: z-index 0s;
}

.menu_open #header #concours_link,
.menu_open #header #inscription_link,
.menu_open_kiosque #header #concours_link,
.menu_open_kiosque #header #inscription_link{
    display: none;

}

#concours_link{
    display:none !important;
}

.menu_open #header_right #menu_link,
.menu_open_kiosque #header_right #menu_link{
    display: none;
}

.menu_open #header_right #menu_link_open,
.menu_open_kiosque #header_right #menu_link_open{
    display: block;    
}

.menu_open #logo,
.menu_open_kiosque #logo{
    opacity: 0;
}

.close{
    position: absolute;
    top: 20px;
    right: 20px;
    width: 14px;
    height: 14px;
    font-weight: bold;
    font-size: 30px;
    color: #fff;
    background: url(../images/close_black.svg) no-repeat;
    background-size: 14px;
    transition: all ease 0.2s;
}
/*
.close:hover{
    filter: invert(27%) sepia(6%) saturate(608%) hue-rotate(161deg) brightness(94%) contrast(94%);
}
*/
.hotspot_content .close{
    background: url(../images/close.svg) no-repeat;
}

#concours_box,
#inscription_box{
    position: fixed;
    top: 0;
    right: 0;
    z-index: 3500;
    
    transition: margin-right 0.5s ease, width 0.2s ease 0.5s, padding 0.2s ease 0.5s;
    height: 100%;
    background: #ffffff;
    /*color: #fff;*/
    box-sizing: border-box;
    width: 0;
    margin-right: -100%;
    overflow-y: auto;
    overflow-x:hidden;
}

#concours_box .flex,
#inscription_box .flex{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    min-height: 100%;
    padding: 20px 20px 20px;
    box-sizing: border-box;
}

#concours_box img,
#inscription_box img{
    width: 100%;
    height: auto;
    margin-top: 0;
    margin-bottom: 15px;
}

#concours_box h3,
#inscription_box h3,
.hotspot_content h3{
    font-weight: bold;
    font-size: 24px;
    line-height: 26px;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    padding-top: 0;
    padding-bottom: 15px;
}

#concours_box h4,
#inscription_box h4,
.hotspot_content h4{
    font-weight: normal;
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0.8px;
    padding-top:0;
    padding-bottom: 10px;
}

#concours_box .center_flex,
#inscription_box .center_flex,
.hotspot_content .center_flex{
    margin: auto 0;   
}


#concours_box .center_flex > *:last-child,
#inscription_box .center_flex > *:last-child,
.hotspot_content .center_flex > *:last-child{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

#concours_box .entry,
#inscription_box .entry,
.hotspot_content .entry{
    font-size: 14px;
    line-height: 26px;
    font-family: 'Montserrat';
    padding-bottom: 40px;
}

.hotspot_content .entry{
    padding-bottom: 0;
}

#concours_box .btn,
#inscription_box .btn,
.hotspot_content .btn{
    background: #b81f30;
    border-radius: 4px;
    color: #fff;
    font-size: 16px;
    line-height: 19px;
    font-family: 'Montserrat';
    text-transform: uppercase;
    display: block;
    padding: 10px 20px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
}

#concours_box .btn:hover,
#inscription_box .btn:hover,
.hotspot_content .btn:hover{
    background: #d52034;
}


#concours_box.open,
#inscription_box.open{
    margin-right: 0;
    width: 400px;
    transition: padding 0.2s, width 0.2s ease, margin-right 0.5s ease 0.2s;
}

#concours_box .entry,
#inscription_box .entry{

}

.loading{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    color: #484340;
    z-index: 2000;
    opacity: 0;
    z-index: -999;
}

.box_loading{
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
    display: flex;
}

.box_loading:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    filter: brightness(50%) grayscale(100%);*/
}

.loading_content{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
}

.loading_content h2{
    font-weight: Bold;
    font-size: 80px;
    line-height: 100px;
    padding-bottom: 10px;
    padding-top: 0;
}

.loading_content p{
    font-weight: bold;
    font-size: 22px;
    line-height: 27px;
    font-family: 'Montserrat', sans-serif;
    color: #b81f30;
    text-transform: uppercase;
}

.this_is_a_360_wow{
    position: fixed;
    bottom: 40px;
    opacity: 1;
    left: calc(50% - 47px);
    width: 98px;
    height: 65px;
    background-size: cover;
    background-image: url(../images/360-virtual-icon.svg);
    z-index: 99;
    opacity: 1;
}

.this_is_a_360_wow.anim{
    bottom: -98px;
    /*opacity: 0;*/
    animation-name: anim360;
    animation-duration: 4.5s;
    animation-iteration-count: 1;
    animation-timing-function: ease;
}

.this_is_a_360_wow.done{
    bottom: -98px;
    opacity: 0;
}

@keyframes anim360{
    0% {bottom: 40px; opacity: 1;}
    80% {bottom: 54px; opacity: 1;}
    100% {bottom: -98px; opacity: 0;}
}

#pano #krpanoSWFObject{
    z-index: 1;
}
/*
#shadow_krpano{
    z-index: 10 !important;
}
*/
.page-template-template-360 .loading.loopblack{
    opacity: 1;
    z-index: 2000;
}

.page-template-template-360 .loading.loopblack h2,
.page-template-template-360 .loading.changescene h2{
    animation-name: bougetitle;
    animation-duration: 1s;
}

.page-template-template-360 .loading.loopblack .box_loading:before,
.page-template-template-360 .loading.changescene .box_loading:before{
    animation-name: opacityscreen;
    animation-duration: 1s;
}

.page-template-template-360 .loading.loadingpage{
    animation-name: loadingpage;
    animation-duration: 2s;
}

.page-template-template-360 .loading.changescene{
    animation-name: changescene;
    animation-duration: 2s;
}

.spinner {
  margin: 20px auto;
  width: 50px;
  height: 40px;
  text-align: center;
  font-size: 10px;
}

.spinner > div {
  background-color: #d00846;
  height: 100%;
  width: 6px;
  display: inline-block;
  
  -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
      margin: 0 1px;
}

.spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.spinner .rect3 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

.spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% { -webkit-transform: scaleY(0.4) }  
  20% { -webkit-transform: scaleY(1.0) }
}

@keyframes sk-stretchdelay {
  0%, 40%, 100% { 
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }  20% { 
    transform: scaleY(1.0);
    -webkit-transform: scaleY(1.0);
  }
}

.swiper-button-prev,
.swiper-button-next{
    width: 59px !important;
    height: 121px !important;
    outline:none !important;
    /*transform: translateY(-61px);*/
    display:none !important;
}

.swiper-button-prev.visible,
.swiper-button-next.visible{
    display:block !important;
}

.swiper-button-prev{
    background: url(../images/back.png) no-repeat top left;
    left: -18px !important;
}

.swiper-button-next{
    background: url(../images/next.png) no-repeat top left;
    right: 0 !important;
}

.swiper-button-prev:after{
    display:none;
}

.swiper-button-next:after{
    display:none;
}

.swiper-button-disabled,
.swiper-button-disabled.visible{
    display:none !important;
}

.hotspot_label{
    padding: 6px 15px 6px 42px !important;
    background: transparent linear-gradient(90deg, #b81f30 0%, #d52034 100%) 0% 0% no-repeat !important;
    border: none !important;
    border-radius: 23px 4px 4px 23px;
    width: auto !important;
    height: 46px !important;
    box-sizing: border-box !important;
    min-width: 120px !important;
    max-width: 254px !important;
}

.hotspot_label *{
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 17px !important;
    font-family: 'Montserrat' !important;
    color:#fff !important;
    position: static !important;
    padding: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.hotspot_label:after{
    content: "";
    position: absolute;
    top:calc(50% - 12px);
    left: 9px;
    background:url(../images/ic_account_balance_24px.svg) no-repeat center;
    background-size: 24px 24px;
    width: 24px;
    height: 24px;
}

.hotspot_label.video_ico{
    background: transparent linear-gradient(90deg, #c72a73 0%, #cb2d8a 100%) 0% 0% no-repeat !important;
}

.hotspot_label.video_ico:after{
    background:url(../images/ic_play_arrow_24px.svg) no-repeat center;    
}

.hotspot_label > div > div{
    display: flex !important;
    height: 100% !important;
}

.hotspot_label > div > div > div{
    margin: auto 0 !important;
}

@keyframes loadingpage {
  0% {z-index:2000; opacity: 1;}
  50% {opacity: 1;}
  99% {opacity: 0; z-index:2000;}
  100% {z-index: -999;}
}

@keyframes changescene {
  0% {z-index:2000; opacity: 0;}
  33% {opacity: 1;}
  66% {opacity: 1;}
  99% {opacity: 0; z-index:2000;}
  100% {z-index: -999;}
}

@keyframes bougetitle {
  0% {margin-left:-200%;}
  100% {margin-left:0;}
}

@keyframes opacityscreen {
  /*0% {filter:brightness(100%) grayscale(100%)}
  100% {filter:brightness(50%) grayscale(100%)}*/
}

.kiosque{
    position: absolute;
    bottom: 0;
    left: 27px;
    width: 300px;
    z-index: 100;
    display: flex;
    flex-direction: column;
    transform: translateY(calc(100% - 60px));
    transition: all ease 0.5s;
}

.kiosque.open{
    transform: translateY(0px);
}

.kiosque > div > a{
    background: rgba(0,0,0,0.42);
    color: #fff;
    padding: 12px 44px 12px 13px;
    display: block;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 16px;
    font-family: 'Montserrat';
    position: relative;
    transition: all ease 0.2s;
}

.kiosque > div > a:hover{
    background: rgba(0,0,0,0.80);
}

.kiosque.open > div > a{
    margin-bottom: 10px;
}

.kiosque > div > a:after{
    content: "";
    position: absolute;
    top:calc(50% - 12px);
    right: 16px;
    background:url(../images/ic_arrow_drop_down_24px.svg) no-repeat center;
    background-size: 24px 24px;
    width: 24px;
    height: 24px;
}

.kiosque.open > div > a:after{
    transform: rotate(180deg);
}

.kiosque > div > a span{
    position: absolute;
    border-radius: 100%;
    color: #fff;
    background: #b81f30;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 22px;
    height: 22px;
    top:-5px;
    right: -5px;
}

.kiosque .kiosque_content{
    margin-bottom: 7px;
    position: relative;
    display: flex;
}

.kiosque .kiosque_texte{
    padding: 8px 15px 8px 5px;
    background: #fff;
    flex-grow: 1;
    border-radius: 0px 4px 4px 0px;
}
    
.kiosque_titre{
    font-size: 12px;
    line-height: 14px;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    padding-bottom: 2px;
}

.kiosque_sub_title{
    font-size: 12px;
    line-height: 14px;
    font-family: 'Montserrat';
}

.kiosque_titre,
.kiosque_sub_title{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 228px;
}

.kiosque_img{
    background-size: cover !important;
    background-position: center !important;
    background-color: #fff !important;
    border-radius: 100%;
    width: 47px;
    height: 47px;
    position: relative;
    align-self: center;
    /*display:none;*/
}

.kiosque_img:after{
    content: "";
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: linear-gradient(90deg, transparent 50%, #ffffff 50%);
}

.kiosque .kiosque_content .kiosque_link{
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
}

.kiosque .kiosque_list{
    margin-bottom: 20px;    
}

.info_general{
    position: absolute;
    bottom: 20px;
    right: 23px;
    z-index: 100;
    text-align: right;
}

.info_general .info_general_content{
    margin-bottom: 0;
    background: rgba(0,0,0,0.47);
    color: #fff;
    display: flex;
    align-items: center;
    padding-right: 12px;
}

.info_general_content > *{
    color: #fff;
}

.audio_link{
    padding: 5px 44px 5px 11px;
    font-size: 14px;
    line-height: 16px;
    position: relative;
}

.audio_link:after{
    content:"";
    background: url(../images/ic_volume_off_24px.svg) no-repeat center;
    background-size: 14px 14px !important; 
    width: 14px;
    height: 14px;
    position: absolute;
    right: 10px;
    top: calc(50% - 7px);
}

.audio_link.open:after{
    background: url(../images/ic_volume_up_24px.svg) no-repeat center;
    background-size: 12px 12px !important; 
}

.audio_file{
    position: absolute;
    z-index: -9999;
    display: none;
}

.st-custom-button{
    background: url(../images/ic_share_24px.svg) no-repeat center;
    background-size: 12px 14px;
    width: 12px;
    height: 14px;
    cursor: pointer;
}

.navigation_tool{
    position: absolute;
    /*positionner selon le header height*/
    top: 110px;
    left: 20px;
    z-index: 100;
    color: #fff;
    width: 30%;
}

.st-logo,
.st-disclaimer,
.st-btn{
    display: none !important;
}

.st-btn[data-network=email],
.st-btn[data-network=facebook],
.st-btn[data-network=linkedin],
.st-btn[data-network=twitter]{
    display: inline-block !important;
}

.st-btns{
    padding: 0 !important;
    left: auto !important;
    top: auto !important;
    bottom: 98px !important;
    right: 30px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.st-close {
    right: 30px !important;
    bottom: 30px !important;
    height: 40px !important;
    padding: 10px !important;
    width: 40px !important;
}

.st-close img{
    height: 20px !important;
    width: 20px !important;
    display: block !important;
}


.navigation_tool a{
    padding: 10px;
    color: #fff;
    padding: 5px 16px 5px 23px;
    background: url(../images/menu.svg) no-repeat 6px center;
    background-color: rgba(0,0,0,0.42);
    font-size: 12px;
    line-height: 14px;
    border-radius: 0;
    text-transform: uppercase;
    box-sizing: border-box;
    transition: all ease 0.2s;
}

.navigation_tool a:hover{
    background-color: rgba(0,0,0,0.80);
}
    
.navigation_tool h2{
    padding-top: 0;
    padding-bottom: 0;
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 2px;
    color: #FFFFFF;
    text-transform: uppercase;
    font-weight: bold;
    padding-left: 3px;
}

.navigation_shadow{
    position: absolute;
    top: -50%;
    left: -200%;
    width: 100%;
    height: 200%;
    z-index: 1000;
    box-shadow: 400px 0px 200px -38px rgba(0,0,0,0.5);
    border-radius: 100%;
    transition: left 0.5s;
}

.navigation_shadow.open{
    left: -100%;
}

.navigation{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;
    margin-left: -100%;
    transition: margin-left 0.5s;
    height: 100%;
    width: 30%;
    min-width: 400px;
    max-width: 500px;
    overflow-y: auto;
    overflow-x: hidden;
}

.navigation.open{
    margin-left: 0;
}

.navigation > span{
    background: #000;
    color: #fff;
    padding: 10px;
}

.navigation_tirroir{
    width: 100%;
    overflow-y: auto;
}

.navigation_tirroir > div{
    background: rgba(255,255,255,072);
    color: #fff;
    margin-bottom: 8px;
    display: flex;
    align-items: stretch;
    width: calc(100% - 10px);
    position: relative;
    transition:all ease 0.2s;
}

.navigation_tirroir > div .bg_navigation{
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    width: 140px;
    flex-shrink:0;
}

.navigation_tirroir > div.active .bg_navigation{
    display: none;
}

.navigation_tirroir > div:hover{
    width: 100%;
}

.navigation_tirroir > div:hover span{
    padding-left:43px;
}

.navigation_tirroir > div.active:after{
    content: "";
    background: url(../images/ic_beenhere_24px.svg);
    width: 36px;
    height: 44px;
    background-size: 36px 44px;
    top: 50%;
    right: 16px;
    position: absolute;
    transform: translateY(-22px);
}
    
.navigation_tirroir > div.active{
    text-align: center;
}

.navigation_tirroir p{
    font-size: 12px;
    line-height: 15px;
    color: #ffffff;
    padding-left: 20px;
    padding-bottom: 7px;
    text-transform: uppercase;
}

.navigation_tirroir span{
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0.8px;
    color: #484340;
    text-transform: uppercase;
    padding: 37px 37px;
    flex-grow: 99;
    transition: all ease 0.2s;
    font-family: 'Montserrat', sans-serif;
}

.navigation_tirroir > div.active span{
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.1px;
    padding: 33px 44px;
    width: 100%;
}

.navigation_tirroir .navigation_link{
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
}

#navigation_promotion{
    background: #b81f30;
    color: #fff;
    font-size: 16px;
    line-height: 19px;
    font-family: 'Montserrat';
    text-transform: uppercase;
    text-align: center;
}

#navigation_promotion a,
#navigation_promotion span{
    color:#fff;
}

#navigation_promotion span{
    text-align: center;
}

#navigation_promotion .bg_navigation{
    display: none;
}

.navigation_arrow{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    z-index: 100;
    background: #000;
    color: #fff;
    background: rgba(0,0,0,0.47);
    transform: rotate(-90deg) translate(50%, 0%);
    transform-origin: 100% 100%;
    text-align: center;
    transition: all ease 0.2s;
}

.navigation_arrow a{
    padding: 5px 37px 7px;
    transition: all ease 0.2s;
}

.navigation_link_arrow{
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    line-height: 22px;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.navigation_arrow span{
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
    font-family: 'Montserrat';
    letter-spacing: 0.6px;
    display: block;
    padding-bottom: 2px;
    text-transform: none;
}

.navigation_arrow:hover{
    background: rgba(0,0,0,0.75);
    transform: rotate(-90deg) translate(calc(50% + 18px), 0%);
}

.navigation_arrow:hover a{
    padding: 8px 37px 22px;
}

.hotspot{
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1000;
    background: #b81f30;
    color: #fff;
    height: 100%;
    margin-right: -100%;
    transition: margin-right 0.5s;
    width: 400px;
}

.hotspot.open{
    margin-right: 0px;
}

.hotspot > div{
    display: none;
    height: 100%;
    height: 100vh; /* Use vh as a fallback for browsers that do not support Custom Properties */
    height: calc(var(--vh, 1vh) * 100);
}

.hotspot > div.show_this_one{
    display: flex;
}

.hotspot .hotspot_content {
    color: #fff;
    overflow-y: auto;
}

.hotspot .hotspot_content.active .flex{
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px 20px 20px;
    box-sizing: border-box;
    min-height: 100%;
}

.hotspot .hotspot_content.active{
    display: block !important;
    height: 100%;
}


.hotspot .hotspot_content .entry{
    color: #fff;
}

.hotspot .hotspot_content .entry a{
    color: #fff;
    text-decoration: underline;
}
/*
.hotspot .hotspot_content > *{
    padding-bottom: 20px;
}
*/
.loading > div,
.kiosque > div,
.info_general > div,
.hotspot > div > div,
.navigation_tool > h2,
.navigation_arrow > a{
    display: none;
}

.loading > div.active,
.kiosque > div.active,
.info_general > div.active,
.hotspot > div > div.active,
.navigation_tool > h2.active,
.navigation_arrow > a.active{
    display: block;
}

#single_space,
#parcours_space{
    padding-top: 120px;
    display: flex;
    height: auto !important;
}

#single_space #single_filter,
#parcours_space #parcours_filter{
    padding: 50px 20px 20px 30px;
    width: 300px;
    flex-shrink: 0;
}

#fix_slideshow{
    width: calc(100% - 350px);
    padding-bottom: 40px;
    overflow: hidden;
    /*max-width: 1050px;*/
    position: relative;
}

#single_space #single_content{
    padding: 20px;
}

#questionnaire{
    /*position: fixed;
    top:0;
    left: 0;*/
    width: 100%;
    height: 100vh;
    z-index: 2000;
    overflow-y: auto;
    display: flex;
    align-items: center;
    overflow-x: hidden;
}

#questionnaire.close{
    display: none;
}

.question{
    /*position: absolute;
    top:0;
    left: 0;*/
    width: 100%;
    padding: 20px 53px;
    box-sizing: border-box;
    transition: opacity ease 0.5s;
    opacity: 0;
    z-index: -90;
    color: #fff;
    display:none;
    margin: auto;
    min-height: 400px;
}

.question.active{
    transition: opacity ease 0.5s;
    opacity: 1;
    z-index: 99;
    display:flex;
}

.question .col{
    /*width: 50%;*/
}

.question .col:first-child{
    min-width: 50%;
    padding-right: 30px;
}

.question h2{
    font-size: 100px;
    line-height: 100px;
    font-weight: bold;
    padding-top: 15px;
    padding-bottom: 0;
}

.question label{
    font-size: 18px;
    line-height: 22px;
    font-family: 'Montserrat', sans-serif;
    display: flex;
}

.fake_checkbox{
    width: 16px;
    height: 16px;
    background: #FFFFFF;
    border-radius: 4px;
    margin-right: 17px;
    display: inline-block;
    margin-top: 3px;
    cursor: pointer;
    position: relative;
}

.question label.checked .fake_checkbox:after{
    content:"";
    position: absolute;
    top: -5px;
    left: -2px;
    background: url(../images/ic_check_24px.svg);
    background-size: 24px 24px;
    width: 24px;
    height: 24px;
}

.question label input{
    padding: 0 !important;
    margin:  0 !important;
    visibility: hidden;
}

.question ul{
    margin-bottom: 30px;
    padding-top: 64px;
}

.question li{
    padding-bottom: 20px;
}

.question .next_question{
    background: #40464A;
    border-radius: 4px;
    font-size: 16px;
    line-height: 19px;
    font-family: 'Montserrat';
    padding: 8px 27px;
    color: #fff;
    text-transform: uppercase;
    transition: all ease 0.2s;
}

.question .next_question:hover{
    background: #000;
}

.step{
    display: flex;
}

.block_number{
    width: 37px;
    height: 37px;
    line-height: 37px;
    border-bottom: 2px solid rgba(255,255,255,0.45);
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    margin-right: 10px;
    text-align: center;
    color: #fff;
    font-weight: bold;
}

.block_number.en_cours{
    border-bottom: 2px solid #fff;
}

#parcours_filter ul{
    display: flex;
    flex-direction: column;
}

.liste_parcours{
    order: 99;
}

.liste_parcours a{
    font-weight: bold;
    font-size: 14px;
    line-height: 17px;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    position: relative;
    color: #40464A;
    display: block;
    padding-top: 8px;
    padding-bottom: 8px;
    transition: all ease 0.2s;
}

.liste_parcours a:hover,
.liste_parcours.active a{
    color: #b81f30;
}

.liste_parcours.active a:before{
    content: "";
    position: absolute;
    top: 8px;
    left: -30px;
    width: 0; 
    height: 0; 
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #b81f30;
}

#parcours_content{
    margin-left: 0;
    margin-right: 0;
    overflow: visible;
    width: calc(70%);
    max-width: 1000px;
}

#parcours_content.mobile_slider .parcours_content_slide {
    margin-bottom: 30px;
}

#parcours_content.mobile_slider .parcours_content_slide .img_principal img{
    width: 100% !important;   
}

#fix_slideshow {
    
}

#parcours_filter h1,
#fix_slideshow h1{
    position: absolute;
    top:0;
    left: 0;
    z-index: -1;
    font-size: 100px;
    line-height: 100px;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    color: #FFFFFF;
    text-transform: uppercase;
}

.swiper-container {
    /*width: 75%;*/
    /*calc(100% - 320px);*/
}

.swiper-slide{
    width: 100% !important;
}

.swiper-container .img_principal{
    margin-top: 72px;
    position: relative;
    display: block;
}

.swiper-container .img_principal img{
    width: calc(100% - 32px) !important;
    padding-top: 10px;
    padding-bottom: 10px;
    height: auto !important;
    display: block;
    transition: all ease 0.2s;
}

.swiper-container .swiper-slide-active .img_principal img{
    width: 100% !important;
    padding-top: 0;
    padding-bottom: 0;
}

.swiper-container .img_principal:before{
    content: "";
    width: 88px;
    height: 88px;
    background: #b81f30;
    z-index: 1;
    position: absolute;
    top: calc(50% - 44px);
    left: calc(50% - 44px);
    border-radius: 100%;
}

.swiper-container .img_principal:after{
    content: "";
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 46px solid #ffffff;
    z-index: 2;
    position: absolute;
    top: calc(50% - 30px);
    left: calc(50% - 16px);
}

.swiper-slide.call_action_slideshow .img_principal:before,
.swiper-slide.call_action_slideshow .img_principal:after{
    display:none;
}

.promotion_slideshow{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
}

.promotion_slideshow a{
	color: #fff;
	text-decoration: underline;
}

.promotion_slideshow h2{
    color: #fff;
    text-transform: uppercase;
    padding-bottom: 10px;
    font-size: 40px;
    line-height:45px;
    padding-top:0;
}

.swiper-container .promotion_slideshow h3{
    font-size: 20px;
    line-height: 19px;
    padding-bottom: 10px;
}

.promotion_slideshow .btn.cta_inner{
    margin-top:15px;
    display: inline-block;
    padding: 10px 20px;
    margin: 15px 0 0;
}

.promotion_slideshow .btn.cta_inner{
    background-color: #484340;
}

.promotion_slideshow .btn.cta_inner:hover{
    background-color: #605a55;
}

.promotion_slideshow .entry{
    line-height: 1.2em;
}

.parcours_content_fancybox{
    display: none;
}

.parcours_content_slide_info{
    padding-left: 33px;
}

.parcours_content_slide_info_texte,
.box_text_popup{
    display: flex;
    margin-top: 14px;
    align-items: center;
}

.parcours_content_slide_info_texte img,
.box_text_popup img{
    width: 46px;
    height: 46px;
    margin-right: 14px;
    display: block;
    border-radius: 100%;
}

.swiper-container h3{
    font-size: 20px;
    line-height: 19px;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    padding-top: 0;
    padding-bottom: 0;
}

.swiper-container .author{
    font-size: 16px;
    line-height: 19px;
    font-family: 'Montserrat';
    padding-top: 3px;
}

.videowrapper{
    position: relative;
    padding-bottom: 56.25% !important; 
    padding-top: 25px !important;
    height: 0 !important;
    overflow:hidden;
}

.videowrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/**********************builder***************************************/

.shadow {
    z-index: 50;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.shadow.shadow-10,
.shadow.bottom_to_top.shadow-10{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.1) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.1) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.1) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-20{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.2) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.2) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.2) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-30{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.3) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.3) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-40{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.4) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.4) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.4) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-50{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.5) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.5) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.5) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-60{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.6) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.6) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.6) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-70{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.7) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.7) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-80{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.8) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.8) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.8) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-90{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.9) 0%, rgba(255,255,255,0) 50%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.9) 0%,rgba(255,255,255,0) 50%);
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%,rgba(255,255,255,0) 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-10.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.1) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.1) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.1) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-20.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.2) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.2) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.2) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-30.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.3) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.3) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-40.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.4) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.4) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.4) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-50.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.5) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.5) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.5) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-60.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.6) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.6) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.6) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-70.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.7) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.7) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-80.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.8) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.8) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.8) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.shadow.shadow-90.full_shadow{
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.9) 0%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.9) 0%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}

.bg_range{
    background-size: cover;
    background-position: center center;
    padding: 25px 0;
    position:relative;
    box-sizing: border-box;
}

.bg_range.no_pad{
    padding: 0;
}

.bg_range.pad_top_0{
    padding-top: 0;
}

.bg_range.pad_top_25{
    padding-top: 25px;
}

.bg_range.pad_top_50{
    padding-top: 50px;
}

.bg_range.pad_top_75{
    padding-top: 75px;
}

.bg_range.pad_top_100{
    padding-top: 100px;
}

.bg_range.pad_bottom_0{
    padding-bottom: 0;
}

.bg_range.pad_bottom_25{
    padding-bottom: 25px;
}

.bg_range.pad_bottom_50{
    padding-bottom: 50px;
}

.bg_range.pad_bottom_75{
    padding-bottom: 75px;
}

.bg_range.pad_bottom_100{
    padding-bottom: 100px;
}

.bg_range:before{
    content:"";
}

.bg_range:after{
    content:"";
    clear:both;
}

.range{
    display: flex;
    justify-content: space-between;
    justify-content: flex-start;
    box-sizing: content-box;
    margin: 0 auto;
    flex-wrap: wrap;
    position: relative;
    /*padding: 0 20px;*/
    z-index: 60;
}

.range.full_screen{
    width: 100%;
    padding: 0;
}

.range.full_screen.pad{
    width: calc(100% - 60px);
    padding-left: 30px;
    padding-right: 30px;
}

.range .range{
    width: auto !important;
    padding-left: 0;
    padding-right: 0;
}

.range .range.full_screen{
    width: 100% !important;
}

.range img{
    max-width: 100%;
    height: auto;
    vertical-align: top;
}

.range .colonne{
    box-sizing: border-box;
    position: relative;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    margin-left: 20px;
    margin-right: 20px;
}

.range .colonne.centre_vertical {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.range .colonne h1:first-child,
.range .colonne h2:first-child,
.range .colonne h3:first-child,
.range .colonne h4:first-child,
.range .colonne h5:first-child{
    padding-top: 0;
}

.range .colonne:first-child{
    /*padding-right: 10px;*/
}

.range .colonne:last-child{
    /*padding-left: 10px;*/
}

.range .colonne.largeur-25{
    width: calc(25% - 40px);
}

.range .colonne.largeur-33{
    width: calc(33.33% - 40px);
}

.range .colonne.largeur-50{
    width: calc(50% - 40px);
}

.range .colonne.largeur-67{
    width: calc(66.66% - 40px);
}

.range .colonne.largeur-75{
    width: calc(75% - 40px);
}

.range .colonne.largeur-100{
    width: 100%;
}

.range.full_screen .colonne.largeur-100{
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.range .colonne.absolute {
    position: absolute;
}

.range .colonne.colonne_vide{
    padding-left: 0;
    padding-right: 0;
}

.range .colonne.largeur-25.no_marge{
    width:25%;
    margin: 0;
}

.type_employe .range .colonne.largeur-33,
.range .colonne.largeur-33.no_marge{
    width:calc(100% / 3);
    margin: 0;
}

.range .colonne.largeur-50.no_marge{
    width:50%;
    margin: 0;
}

.range .colonne.largeur-67.no_marge{
    width:66.66%;
    margin: 0;
}

.range .colonne.largeur-75.no_marge{
    width:75%;
    margin: 0;
}

.range .colonne.largeur-100.no_marge{
    width:100%;
    margin: 0;
}

.hauteur_auto{
    min-height: auto;
}

.hauteur_100vh {
    min-height: 100vh;
}

.range .colonne.image{
    margin-left: 20px;
    margin-right: 20px;
}

.range .colonne.image.background_simple{
    margin-left: 0;
    margin-right: 0;
}

.range .colonne.image.background{
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom:  0 !important;
}

.range .colonne .legende{
    /*position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 44px 51px;*/
    font-size: 40px;
    line-height: 48px;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: #fff;
    padding: 40px;
    font-weight: bold;
}

.range .colonne .legende.avec_texte {
    text-transform: none;
}

.range .colonne .legende.avec_texte h2{
    text-align: center;
}

.range .colonne.slide .shadow,
.range .colonne.image .shadow{
    display: none;
    background: -moz-linear-gradient(bottom, rgba(0,0,0,0.7) 0%, rgba(255,255,255,0) 80%); 
    background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.7) 0%,rgba(255,255,255,0) 80%); 
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%,rgba(255,255,255,0) 80%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 ); 
}
 
.range .colonne .lightbox.lightbox_absolute{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 55;
    outline: none;
}

.range .colonne .full_yolo{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 55;
    outline: none;
}

.range .colonne .lightbox{
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    transition: all ease 0.2s;
}

.range .colonne .lightbox:hover{
    transform: scale(1.2);
}

.range .texte_simple > h2{
    text-align: center;
}

.range .texte_simple > h2.align_left {
    text-align: left;
}

.range .texte_simple > h2.align_right{
    text-align: right;
}

.range .entry{
    font-size: 14px;
    line-height: 26px;
}

.gallery{
    margin-left: -5px !important;
    margin-right: -5px !important;
}

.gallery a{
    display: block;
    overflow: hidden;
}

.gallery br{
    display: none;   
}

.gallery img {
    border: none !important;
    padding-bottom: 0 !important;
    transition: all ease 0.2s;
}

.gallery img:hover{
    transform: scale(1.1);
}

.gallery .gallery-item{
    padding: 5px !important;
    box-sizing: border-box;
    margin-top: 0 !important;
}

.gallery.gallery-columns-3 .gallery-item{
    width: 33.3333% !important;
}

/**********************builder***************************************/


#evenements_principal{
    flex-grow: 1;
}

#evenements_principal .evenements_fiche{
    width: 100%;
    padding: 0;
}

#evenements_principal .evenements_fiche_info{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

#evenements_principal .evenements_fiche_info .btn{
    flex-grow: 0;
    flex-shrink: 0;
    margin-bottom: 28px;
}

#evenements_principal .evenements_fiche_info_texte{
    margin-bottom: 28px;
    margin-right: 20px;
}

#evenements_resume{
    width: 320px;
    padding-right: 45px;
    padding-bottom: 46px;
}

#evenements_resume h2{
    font-size: 30px;
    line-height: 34px;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    padding-top: 0;
    padding-bottom: 30px;
    font-weight: bold;
}

#evenements_resume .entry{
    font-size: 14px;
    line-height: 20px;
}

#evenement_entete .center{
    display: flex;
    /*align-items: center;*/
    margin-top: 191px;
    position: relative;
    flex-direction: column;
}

#evenements_flex{
    display: flex;
    align-items: center;
    margin-top: 77px;
}

#evenement_entete h1{
    /*position: absolute;
    top: -67px;
    left:200px;*/
    z-index: -1;
    font-size: 100px;
    line-height: 100px;
    font-weight: bold;
    color: #fff;
    text-align: left;
    margin-right: 0;
    position: absolute;
    width: calc(100% - 20px);
    top: 0;
    max-width: 1200px;
    left: 50%;
    transform: translate(-50%);
    padding-left:20px;
    
}

#evenements_liste{
    display: flex;
    margin-left: -25px;
    flex-wrap: wrap;
    margin-right: -25px;
}

#evenements_secondaire h2{
    font-weight: bold;
    font-size: 20px;
    line-height: 24px;
    font-family: 'Montserrat', sans-serif;
    padding-bottom: 15px;
    text-transform: uppercase;
}

.evenements_fiche{
    padding: 0 25px 40px;
    width: 50%;
    box-sizing: border-box;
}

.evenements_fiche_img{
    position: relative;
    overflow: hidden;
}

.evenements_fiche_img img{
    width: 100%;
    height: auto;
    display: block;
    transition: all ease 0.2s;
}

.evenements_fiche_img a:hover img{
    transform: scale(1.1);
}

.evenements_fiche_date{
    position: absolute;
    bottom: 0;
    left: 0;
    background: #b81f30;
    color: #fff;
    font-size: 16px;
    line-height: 19px;
    text-transform: uppercase;
    padding: 5px 10px;
}

.evenements_fiche_info_texte{
    display: flex;
    margin-top: 0;
    align-items: flex-start;
    margin-bottom: 28px;
}

.evenements_fiche_info_texte img{
    width: 46px;
    height: 46px;
    margin-right: 14px;
    display: block;
    border-radius: 100%;
}

.evenements_fiche_info_texte h3{
    font-size: 20px;
    line-height: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    padding-top: 0;
    padding-bottom: 0;
}

.evenements_fiche_info_texte h3 a{
    color:#40464A;
}

.evenements_fiche_info_texte .author{
    font-size: 16px;
    line-height: 19px;
    font-family: 'Montserrat';
    padding-top: 3px;
}

.evenements_fiche_info .btn{
    background: #b81f30;
    padding: 12px 14px 11px;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 16px;
    font-weight: normal;
    color: #fff;
    border-radius: 4px;
    display: inline-block;
}

.evenements_fiche_info .btn:hover{
    background: #d52034;
}

.evenements_fiche_info{
    margin-top: 14px;
}

.conteneur_secondaire{
    background: #fff;
    position: relative;
    padding-top: 45px;
    padding-bottom: 0;
}

.conteneur_secondaire:before{
    content: "";
    position: absolute;
    top:0;
    right: calc(50% - 25px);
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;  
    border-top: 23px solid #f3f3f3;
}

#evenement_entete .center{
    margin-bottom: 100px;
}

.single-evenements .evenements_fiche_info_texte h3{
    text-transform: none;
    font-size: 16px;
    line-height: 16px;
    font-family: 'Montserrat';
}

.single-evenements .evenements_fiche_info_texte .author{
    font-size: 14px;
    line-height: 16px;
    padding-bottom: 10px;
}

.single-evenements .evenements_fiche_date{
    position: static;
    padding: 8px 10px;
    margin-bottom: 20px;
    display: inline-block;
}

.single-evenements .evenements_fiche_info_texte{
    margin-bottom: 50px;
}

#img_before_content{
    margin-bottom: 30px;
}

#img_before_content img{
       width: 100%;
       height: auto;
       display: block;
}

#call_action{
    background: #fff;
}

#call_action .cont_btn{
    text-align: center;
}

#call_action .btn{
    background: #484340;
    border-radius: 4px;
    padding: 11px 19px;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 16px;
    color: #fff;
    margin-top: 35px;
    display: inline-block;
}

#call_action .btn:hover{
    background: #605a55;
}

#builder .btn,
.btn.cta_inner{
    background: #b81f30;
    border-radius: 4px;
    padding: 12px 19px 11px;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 16px;
    color: #fff;
    margin: 35px auto 0 0;
    display: inline-block;
}

#builder .btn:hover,
.btn.cta_inner:hover{
    background: #d52034;
}

.liste_documents{
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}

.liste_documents_element{
    width: calc(50% - 20px);
    margin: 0 10px 10px;
    padding: 27px 20px;
    background: #F7F7F7;
    box-sizing: border-box;
    transition: all ease 0.2s;
}

.document_link{
    display: flex;
    color: #40464A;
}

.liste_documents_element:hover{
    background: #c0c0c0;
}

.liste_documents_element .liste_documents_element_img{
    margin-right: 22px;
    width: 35px;
    height: 35px;
    flex-shrink: 0;
}

.liste_documents_element .liste_documents_element_titre{
    font-weight: Bold;
    font-size: 16px;
    line-height: 16px;
    font-family: 'Montserrat', sans-serif;
    padding-bottom: 2px;
    display: block;
    text-transform: uppercase;
}

.liste_documents_element .liste_documents_element_soustitre{
    font-size: 14px;
    line-height: 16px;
    display: block;
}


/*ie stuf**/
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
     #concours_box .flex, #inscription_box .flex{
        display: block;
        padding-top: 60px;
     }
     
     #menu_box_elem{
        margin: 0;
        display: block;
     }
     
     #evenement_entete .center{
        display:block;
     }
     
     #evenements_resume{
        width: 100%;
     }
     
     #accueil > div{
        height: 100vh;
     }
}

/*appel à l'action*/
#appel_action{
    display: flex;
    align-items: center;
    justify-content: space-between;
    align-items: stretch;
    position:relative;
    background: #cd163e;
    margin-top: 0;
}


#appel_action strong{
    font-weight: 700;
}

#appel_action .center{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#appel_action.appel_action_no_image .half:first-child{
    display: none;
}

#appel_action .half{
    
}

#appel_action .half:first-child{
    padding-left: 30px;
    padding-right: 100px;
    flex-shrink: 0;
    padding-bottom:0;
}

#appel_action #appel_action_left,
#appel_action .half:nth-child(2) #mc_embed_signup,
#mc-embedded-subscribe-form div{
    padding-bottom:0;
}

#mc_embed_signup_scroll div:last-child{
    display:none;
}

#appel_action .half:first-child img{
    vertical-align: bottom;
    margin-top: -34px;
    width: 100%;
    height: auto;
}

#appel_action .half:nth-child(2){
    padding-bottom: 23px;
    padding-top: 40px;
}

#appel_action.appel_action_no_image .half:nth-child(2){
    margin: 0 auto;
}

#appel_action .half:nth-child(2) #mc_embed_signup{
    max-width: 800px;
}

#appel_action.appel_action_no_image .half:nth-child(2) #mc_embed_signup{
    margin: 0 auto;
}

#appel_action.appel_action_no_image .entry{
    text-align: center;
}

#appel_action.appel_action_no_image{
    text-align: center;
}

#appel_action .center{
    width: 1200px;
    padding: 0;
}

#appel_action .btn_gris{
    width: 121px;
    text-align: center;
}

#appel_action .entry > *:last-child{
    padding-bottom: 0;
}

#appel_action .entry p{
    padding-bottom:20px;
}
/*
#appel_action .entry{
    font-size: 25px;
    color: #fff;
    text-transform: uppercase;
    line-height: 35px;
    padding-bottom:20px;
}
*/

#appel_action .center{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#appel_action_left{
    text-align: right;
}

#appel_action .entry {
    font-size: 40px;
    color: #fff;
    text-transform: none;
    line-height: 1.2em;
    padding-bottom: 20px;
}

#appel_action .btn{
    color: #fff !important;
    background: #3f3732;
    text-transform: uppercase;
    line-height: 1em;
    font-size: 16px;
    padding: 18px 40px;
    text-decoration: none;
    display: inline-block;
    border: none;
    cursor: pointer;
    margin-top: 0 !important;
}

#appel_action .btn:hover{
    background: rgb(11, 11, 11);
}


#mc_embed_signup #mce-EMAIL{
    background: #950d2b;
    border: 1px solid #950d2b;
    color: #fff;
    padding: 12px 20px;
    text-transform: uppercase;
    width: calc(100% - 260px);
    min-width: 216px;
    margin-bottom: 20px;
    outline:none;
}

#mc_embed_signup input{
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    line-height: 20px !important;
}

.page-template-template-parallax-fondation #mc_embed_signup #mce-EMAIL{
    background: #333636;
    border: 1px solid #333636;
}

#mc_embed_signup #mce-EMAIL:focus{
    border: 1px solid #3f3732;
}

#mc_embed_signup input[type=submit] {
    margin-bottom: 20px;
    width: 190px;
}

#mc_embed_signup ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #fff;
}

#mc_embed_signup ::-moz-placeholder { /* Firefox 19+ */
  color: #fff;
}

#mc_embed_signup :-ms-input-placeholder { /* IE 10+ */
  color: #fff;
}

#mc_embed_signup :-moz-placeholder { /* Firefox 18- */
  color: #fff;
}

.mc-field-group{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#mc_embed_signup input[type=submit] {
    color: #fff !important;
    background: #3f3732;
    text-transform: uppercase;
    line-height: 1em;
    font-size: 16px;
    padding: 18px 40px;
    text-decoration: none;
    display: inline-block;
    border: none;
    cursor: pointer;
}

#mc_embed_signup input[type=submit]:hover, #appel_action_left .btn:hover {
    background: rgb(11,11,11);
}

#input_3_1{
    text-decoration: none;
    background: #950d2b !important;
    border: 1px solid #950d2b !important;
    color: #fff !important;
    padding: 18px 40px !important;
    text-transform: uppercase !important;
    width: 100% !important;
    min-width: 216px !important;
    max-width: 500px !important;
    margin-bottom: 10px !important;
    outline:none !important;
}

#input_3_1:focus{
    border: 1px solid #3f3732 !important;
}

#gform_submit_button_3{
    color: #fff !important;
    background: #3f3732 !important;
    text-transform: uppercase;
    line-height: 1em;
    font-size: 16px;
    padding: 18px 40px;
    text-decoration: none;
    display: inline-block;
    border: none;
    cursor: pointer;
}

#gform_submit_button_3:hover{
    background: rgb(11,11,11);
}

#appel_action .center #gform_submit_button_59:hover{
    background: #000 !important;
}

#gform_wrapper_3 .gform_footer,
#gform_wrapper_3 .gform_page_footer{
    margin-top: 0 !important;
    padding-top: 0 !important;
}

#gform_wrapper_3 ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #fff !important;
}

#gform_wrapper_3 ::-moz-placeholder { /* Firefox 19+ */
  color: #fff !important;
}

#gform_wrapper_3 :-ms-input-placeholder { /* IE 10+ */
  color: #fff !important;
}

#gform_wrapper_3 :-moz-placeholder { /* Firefox 18- */
  color: #fff !important;
}

#gform_wrapper_3 .gform-body{
    margin-right: 0;
    margin-left: 0;
    width: 100% !important;
}

/* fin appel à l'action*/

/*story*/
.page-template-template-histoire #evenements_flex{
	flex-direction: column;
	align-items: flex-start;
	max-width: 1200px;
	width: 100%;
	margin: 77px auto 0;
}

.page-template-template-histoire #evenements_resume{
	max-width: 100%;
	width: auto;
	padding: 0;
}

.page-template-template-histoire #evenements_principal{
	max-width: 100%;
}

#story_sous_titre{
	text-transform: uppercase;
	font-weight: 20px;
	line-height: 1.2em;
	padding-bottom: 20px;
	font-weight: bold;
}

#story{
	padding-bottom: 20px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#story .story_item{
	width: calc(33.33333% - 10px);
	width: calc(25% - 10px);
	padding-bottom: 20px;
}

#story .story_item a{
	display: block;
	position: relative;
}

#story .story_item .count_story{
    position: absolute;
    bottom: 30px;
    background: #000;
    border-radius: 18px;
    padding: 10px 10px 10px 15px;
    color: #fff;
    text-decoration: none;
    left: 50%;
    transform: translateX(-50%);
    text-transform: uppercase;
    font-size: 15px;
    line-height: 1em;
    min-width: 100px;
}

#story .story_item .count_story:after{
    content: "";
    position: absolute;
    top: calc(50% - 10px);
    right: 10px;
    background: url(../images/ic_play_arrow_24px.svg) no-repeat center;
    background-size: 20px 20px;
    width: 20px;
    height: 20px;
}

.story_item{
	transition: all ease 0.2s;
}

.story_item:hover{
	margin-top: -10px;
	padding-bottom: 10px;
}

.story_item_texte{
	line-height: 1.2em;
}

.story_item_texte .story_item_texte_auteur{
	padding-top: 8px;
	margin-top: 0;
	padding-bottom: 5px;
	text-transform: uppercase;
}

.story_item img{
	max-width: 100%;
	height: auto;
    transition: all ease 0.2s;
}

.story_item:hover img{
	box-shadow: 4px 4px 10px -2px #bbb7b7;
}

.videowrapper_invert{
    position: relative;
    padding-bottom: 56.25% !imp	ortant;
	padding-bottom: 177.77% !important; 
    padding-top: 0 !important;
    height: 0 !important;
    overflow:hidden;
	width: 100%;
	margin: 0 auto;
}

.videowrapper_invert iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.swiper-slide-active .videowrapper_invert{
	max-width: 300px;
}

.page-template-template-histoire .swiper-slide{
	width: 260px !important;
	padding: 20px;
	transition: all ease 0.5s;
	box-sizing: content-box;
}

.page-template-template-histoire .swiper-slide.swiper-slide-active{
	width: 300px !important;
	padding: 0;
}

.page-template-template-histoire .box_text_popup{
	position: absolute;
    bottom: 0;
    left: 0;
	margin-bottom: 10px;
}

.page-template-template-histoire .swiper-button-prev,
.page-template-template-histoire .swiper-button-next{
	display: none !important;
}

@media only screen
and (min-height : 1200px){
	.page-template-template-histoire .fancybox-slide--video .fancybox-content,
	.page-template-template-histoire .fancybox-slide--html .fancybox-content{
		width: 1400px !important;
	}
	
	.page-template-template-histoire .swiper-slide{
		width: 460px !important;	
	}
	
	.page-template-template-histoire .swiper-slide.swiper-slide-active{
		width: 500px !important;
	}
	
	.swiper-slide-active .videowrapper_invert{
		max-width: 500px;
	}
}

@media only screen
and (max-width : 1024px){
	#story .story_item{
		width: calc(50% - 10px);
	}
}

@media only screen
and (max-width : 740px){
	.swiper-container-popup .swiper-wrapper{
		flex-direction: row;
	}
	
	.page-template-template-histoire .box_text_popup{
		left: 20px;
	}
}

@media only screen
and (max-width : 1024px){
	.page-template-template-histoire .swiper-button-prev,
	.page-template-template-histoire .swiper-button-next{
		display: block !important;
		width: 30px;
		height: 62px;
		display: flex !important;
		align-items: center;
		justify-content: center;
		color: #fff !important;
		position: fixed;
		margin-top: -30px;
	}
	
	.page-template-template-histoire .swiper-button-prev{
		background: url(../images/left.png) no-repeat center;
		background-size: cover;
		left: 0;
	}
	
	.page-template-template-histoire .swiper-button-next{
		background: url(../images/right.png) no-repeat center;
		background-size: cover;
		right: 0;
	}
	
	.page-template-template-histoire .swiper-button-next:after,
	.page-template-template-histoire .swiper-button-prev:after{
		font-size: 15px;
	}
	
	.page-template-template-histoire .swiper-button-prev:after{
		padding-right: 5px;
	}
	
	.page-template-template-histoire .swiper-button-next:after{
		padding-left: 5px;
	}
}

@media only screen
and (max-width : 450px){
	#story .story_item{
		width: 100%;
	}
	
	.page-template-template-histoire .swiper-slide,
	.page-template-template-histoire .swiper-slide.swiper-slide-active{
		width: 260px !important;
		padding: 0 !important;
	}
	
	.swiper-slide-active .videowrapper_invert{
		max-width: 260px;
	}	
}

/*fin story*/


.cky-consent-container,
.cky-btn-revisit-wrapper{
    display: none !important;
}