/*
/*

	CSS - IDMG

 * Kameleo T2 Template Graphical configuration
 */

/*** --- TABLE OF CONTENT ---

	01. Default value
		-- Titles & typography
		-- List-styles
		-- Tables
		-- Forms
	02. Links and buttons
		-- links styles
		-- buttons styles
	03. Structures global
		-- logo
		-- hd (header default parameters)
		-- bd (body default parameters)
		-- ft (footer default parameters)
	04. Navigation
		-- main navigation
		-- second navigation
		-- third navigation
		-- annexe navigation
		-- footer navigation
	05. languages links
	05. languages links
	06. Objects styles
		-- Objects styles default
		-- Full background color objects
		-- Columns object
		-- Text divided columns
	07. Regions
		-- region Image top content
		-- region Introduction content
		-- region Slider
		-- region Main content
		-- region Prefooter content
		-- region Footer content
	08. Blog
	09. Events
	10. Gallery
	11. Shop
		-- basket button
		-- shop page general
		-- shop listing with link to details pages
		-- shop product details page
		-- shop listing with all details
		-- basket pages
		-- shop confirmation page
	12. Specific pages styles
		-- homepage
		-- color pages
	13. Powered	
		-- copyright
		-- login kameleo
	14. Social medias
	15. Mobiles version
	16.	Mediaqueries
		
*/


/*** --- VARIABLE DE PAGE ---

	.default:page par défaut
	.home:page d'accueil
	.annexe:page annexe
	
	.menuCouleur01:menu couleur 01
	.menuCouleur02:menu couleur 02
	.menuCouleur03:menu couleur 03
	.menuCouleur04:menu couleur 04


/*** --- VARIABLE DE PARAGRAPHE --- (css dans le point "06. Objects styles" )
 
	.default:style de paragraphe par défaut
	.mainColorBg:full largeur background
	.column:une petite colonne
	.textdivided: texte divisée en deux colonnes
 
*/

/*****  01. Default value *****/

html {
	height: 100%;
	font-size: 100%;
}

body {
	
	height: 100%;

/*  -- define the font of the page here -- 
	(linehgiht, color, size etc... You can specify the font for the titles later)
*/
	font-family: 'Flama-Light', sans-serif;
    font-size: 100%; /* Better to use % here and then rem for the content */
    line-height: 1.5rem; /* Better to use PX here but you could use PX, PT, % or EM */
    font-weight: 400!important;
    
    /* font and color */
    color: #000;
	
	/* background of the page */

	background-color:#fff;

	-webkit-font-smoothing: antialiased !important;
	-moz-osx-font-smoothing: grayscale !important;
			
/*	-- uncomment this for an image background --

	background-image:url(../img/texture.png);
	background-repeat:no-repeat;
	background-size:auto auto;
	background-position:center center; 
	
*/   
}

/* specify additional backgrounds here */

div#w0 {
    height: 100%;
}

div#w1 {
    height: 100%;
	/*background: transparent url(../img/bg_bottom.png) center bottom repeat-x;
    uncomment if you want to set a footer image on all width of the browser */
}

div#w2 {
    height: 100%;
}


/* -- Titles & typography -- */

/* Titles default */
#cn h1, #cn h2, #cn h3, #cn h3 a, #ft h2, #cn h4{
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */
    color: #000; /* color of all title */
    margin-bottom: 16px;
    text-transform:none;
    font-size: 1.4375rem;
    line-height: 1.875rem;
    border:none;

    text-transform: none;    
    padding:0;
    box-sizing:border-box;
    text-align: left;
}

#cn h3, #cn h3 a, #cn .event h2 a, #cn h4{
	color: #000;
	font-size: 1.125rem;
	line-height: 1.6875rem;
	text-decoration: none;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */
}


#cn h3{
	margin-bottom: 4px;
}


#cn h2.title_section{
	padding:0 10px;
	box-sizing: border-box;
}

#cn h1, #cn .slider h2 { /* -- page title -- */
	width: 100%;
    margin: 0;
    font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */    
	font-size:1.25rem;
    line-height: 1.75rem;
    position: relative;
    padding: 0;
    z-index: 20;
}

.sticky #cn h1, .mobile #cn h1 {
	margin-bottom: 0;
	line-height: 20px;
	font-size: 1.25rem;
}

#cn h1 span {
	font-weight: 400!important;
    font-family: 'Flama-Light';
}

#cn .slider h2 {
	color: #fff;
	text-shadow: 1px 1px 5px rgba(0,0,0,0.2);
}

.home #cn h1{
	width: 100%;
	padding:0;
}

#cn #header_image_container h1{
	text-align: left;
}

#cn .code.object .topbar_center .kategorie-title-container h1{
	margin-bottom: 0;
}

#cn div#bd #mainContent div.noMargin.object {
	padding-bottom: 10px;
}


/* Text editor typography default */

#cn u, #cn .object u{ /* -- underline / highlight -- */
	text-decoration:none;
	font-size: 1.125rem;
}

#ft .object u, #cn .object#id-71 u, #cn .object#id-72 u{
	margin: 0 4px;
}

#cn .object strong{ /* -- bold / strong -- */
	/* font-weight:700; */
}

#cn .object em{ /* -- italic -- */
	font-style: italic;
}

p { /* -- paragraphs -- */
	margin:	0 0 10px 0;
}

strong, b {
	font-family: 'Flama-Bold';
	font-weight: 400!important;
}

/* -- List-styles -- */

.object ul{
	list-style: disc;
	margin-left:35px;
	margin-bottom:20px;
	display: inline-block;
}

/* -- Tables -- */

.object table tr td {
	border: 1px solid #cacaca;
	padding:5px 8px;
	min-width:120px;
}

/* special table styles */

.object table{
	margin:20px 0;
}

.object table tr:first-of-type td{ /* styles of the first line of the table */
	background-color:#dddddd;
	/* font-weight:700; */
}

.object table tr td:first-of-type{ /* styles of the first column of the table */
	/* font-weight:700; */
}

/* -- Forms --*/

form.kSiteForm fieldset{
	margin-bottom:15px;
}

form.kSiteForm select {
    height: 40px;
    padding: 0px 10px;
}

.ui-datepicker{
	z-index:50!important; /*put the calender before the other elements*/
}

form.kSiteForm label{
	/* font-weight:700; */
	padding-bottom: 4px;
}

form.kSiteForm .captcha input, form.kSiteForm input.text, form.kSiteForm textarea, form.kSiteForm select, #mc_embed_signup input.email {
	color:#2E3D4A;
   	font-size:1rem;

   	background-color: #fff;
   	
	border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;

    -webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s  linear;
	-o-transition: all 0.15s  linear;
	transition: all 0.15s  linear;
}

form.kSiteForm input.text:focus, form.kSiteForm textarea:focus, form.kSiteForm select:focus, 
#mc_embed_signup input.email:focus, form.kSiteForm input.text:hover, 
form.kSiteForm textarea:hover, form.kSiteForm select:hover, #mc_embed_signup input.email:hover {
	border-color: #2E3D4A;
	moz-box-shadow: 0px 0px 10px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 0px 10px rgba(0,0,0,0.4);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.4);
}

/***** 02. Links and buttons *****/

a, a:link, a:visited,
.navPost-prev a, .navPost-prev a {
	color:#000;
	text-decoration:underline;
}

.linkListing a, .linkListing a:link {

}

.p-id-6 a, .p-id-6 a:link, .p-id-6 a:visited, .p-id-4 a, .p-id-4 a:link, .p-id-4 a:visited {
	text-decoration:none;
}

a:hover, a:focus, a:active,
.navPost-prev a:hover, .navPost-prev a:hover {
	text-decoration: none;
}


/* -- buttons style -- */
.object a.button, div#bd .object a.button, div#ft a.button, .container.buttons #btSubmit,
 input.kButton.continue, #mainNav li.contactNav a, div#bd #introContent .object a,
.slider_container .object a.button, div#mainNavCt a.button {
	position: relative;
	color: #fff;
	text-transform:none;
	font-weight:400;
	text-decoration:none;
	font-size: 1rem;
	line-height: 1.25rem;
    display: inline-block;
    position:relative;
    padding: 12px 10px;
   	height:auto;
   	width:auto;
   	text-align: center;
   	cursor:pointer;
   	box-sizing:border-box;

   	background-color: #000;

   	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;


    /* Rectangle Copy 3: */

	border: none;

	margin:10px 10px 0 0;

    -webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s  linear;
	-o-transition: all 0.15s  linear;
	transition: all 0.15s  linear;
}

.object a.button:hover, div#bd .object a.button:hover, div#ft a.button:hover, .container.buttons #btSubmit:hover, 
.container.buttons #btSubmit:focus, input.kButton.continue:hover, div#bd #introContent .object a:hover,
.slider_container .object a.button:hover, div#mainNavCt a.button:hover{
	color: #fff;
 	background-color: rgba(4,47,73,1);

 	padding: 12px 10px;
 	margin:10px 10px 0 0;
}

/*

.object a.button:hover::after, div#bd .object a.button:hover::after, div#ft a.button:hover::after, #mainNav li.contactNav a:hover::after, div#bd #introContent .object a:hover::after,
div#bd .object a.download.button:hover::after, .home .bloglist.object .blog .content a:hover::after{
	margin: 0 0 0 20px;
}
*/


.home .bloglist.object .blog .content a, .home .bloglist.object .blog .content a:hover {
	margin-top: 10px;
}

/** Arrow button **/

.anchorList li a, div#bd .image.object.porteCTA h2{
	position: relative;
}

.anchorList li a::after, div#bd .image.object.porteCTA h2::after {
    content: "";
    position: absolute;
    top: 50%;
    left: auto;
    right: 30px;
    width: 8px;
    height: 8px;
    margin-top: -5px;

    display: block;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    background-color: transparent;

    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);

    -webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}


.anchorList li a::after{
	right: 10px;
    margin-top: -8px;

	-webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
 }

/***/


.home #header_image_container .object a.button{
	-moz-box-shadow: 0px 0px 10px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 0px 10px rgba(0,0,0,0.4);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.4);
	padding: 20px 30px;
}

/* GoTo button (on the homepage) */
a#goTo{
	width: 0px;
    height: 0px;
    padding: 70px 0px 0px 70px;
    overflow: hidden;
    display: block;
    margin: 50px auto 0px;
    position: absolute;
    bottom: -10px;
    left: 50%;
    margin-left:-37px;
    z-index: 20;
}

a#goTo:before{
	content:"";
	background: url(../img/goTo_btn.png) center center no-repeat;
    background-size: 20px 20px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all  0.2s linear;
	-ms-transition: all  0.2s  linear;
	-o-transition: all  0.2s  linear;
	transition: all  0.2s  linear;
}

div#w0 a#goTo:hover:before{
	margin-top: 20px;
}


/* goTop button */


div#ft #goTop{
	position: absolute;
	right:120px;
	top: 0;
}

div#ft #goTop a{
	background-image:url(../img/icon_white.png);
	background-repeat:no-repeat;
	background-size:51px 205px;
	background-position: right bottom;
	padding:100px 80px 0 0;
	display:inline-block;
	color:#fff;
	font-size: 0.875rem;
	text-transform: uppercase;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */	
	text-decoration: none;
	border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;

	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity  0.2s linear;
	-ms-transition: opacity  0.2s  linear;
	-o-transition: opacity  0.2s  linear;
	transition: opacity  0.2s  linear;
}

div#ft #goTop a:hover{
	cursor:pointer;
	opacity:0.5;
}

/*****	03. Structures global *****/

div#cn {
    position:relative;
    z-index:10;
    min-height: calc(100vh - 187px);
}

div.cn {
    background: transparent;
	width:1500px;
	padding:30px 0 0 0;
	margin:0;
}

#hd div.cn{
	position: relative;
	padding: 0;
}

#bd div.cn.titlePage, #introContent div.cn, #mainContent div.cn, #prefooterContent div.cn, div#ft #promesseContent div.cn{
	max-width: 1500px;
	z-index: 5;
}

#bd div.cn.titlePage{
	padding-top: 80px;
}

div.cn.titlePage{
	padding-bottom: 0
}

/* -- logo --*/

#logoKPA a {	
	top: 0; 
	left:0;
	display: block;
}

#logoKPA img{
	width: 124px;
	height: 100px;
}

strong#logo_footer{
	position: relative;
}

strong#logo_footer a {
	position: relative;
    padding: 0;
    width: auto;
    height: auto;
}

strong#logo_footer img{
	width: 80px;
	height: 71px;
	position: relative;
    left: 0px;
}

/** social **/

#hd .reseaux_sociaux{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	margin-left: 20px;
}

.reseaux_sociaux a{
	margin-left: 15px;
	text-decoration: none;
	display: inline-block;
    vertical-align: middle;
    line-height: 0;
}

.reseaux_sociaux i{
	font-weight: 400!important;
	-webkit-font-smoothing: antialiased !important;
	-moz-osx-font-smoothing: grayscale !important;

	-webkit-transition: color 0.2s linear;
	-moz-transition: color 0.2s linear;
	-ms-transition: color 0.2s linear;
	-o-transition: color 0.2s linear;
	transition: color 0.2s linear;
}

.reseaux_sociaux i{
	font-size: 1.3125rem;
	color: #000;
}

.reseaux_sociaux i.fa-instagram{
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */
}

.reseaux_sociaux i:hover{
	color: rgba(4,47,73,1);
}

/* -- hd (header default parameters) -- */
div#hd {
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;

	justify-content: center;
	-ms-flex-pack: center;

	height:auto;
	position:relative;
	background-color: #fff;
	margin-top: 0;
	z-index: 50;
}

div#hd .cn .stickyMenu{
	position: fixed;
}

.topbar.sticky{
	box-shadow: 0 2px 9px 0 rgba(0,0,0,0.11);
}

.mobile #undefined-sticky-wrapper{
	height: auto!important;
}


.admin .topbar{
	top:44px!important;
}

#topNav{
	background-color: rgba(222,236,246,1);
	padding: 10px 0;
}

#topNav .cn img{
	display: inline-block;
	vertical-align: middle;
	max-width: 22px;
	width: auto;
	max-height: 19px;
	height: auto; 
	margin: 0 10px;
}

#topNav .contact_info a{
	margin: 0 0 0 20px;
	font-size: 0.875rem;
	line-height: 1.0625rem;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */	
	text-decoration: none;

	-webkit-transition: color 0.2s linear;
	-moz-transition: color 0.2s linear;
	-ms-transition: color 0.2s linear;
	-o-transition: opacity 0.2s linear;
	transition: color 0.2s linear;
}

#topNav .contact_info a i{
	color:#000;
	margin-right: 8px;
	font-size: 1rem;
	opacity: 0.5;

	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

#topNav .cn .contact_info a:hover{
	color: rgba(4,47,73,1);
}

#topNav .cn .contact_info a:hover i{
	opacity: 1;
	color:rgba(4,47,73,1);
}


/* -- bd (body default parameters) --*/

div#bd{
	text-align:center; /* to center the columns objects in display inline-block */
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center 70px;
	position: relative;
	width: 100%;

	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content: center;
	-ms-flex-pack: center;
}

div#bd div#bd_bg{
	background: none;
	padding:0; /* padding bottom to push the footer at the bottom of the page (the padding-bottom should be the same value than the footer height bellow) */
	width:calc(100% - 20px);
	margin:0 10px;
	max-width: 1500px;

	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content: center;
	-ms-flex-pack: center;
}

.home div#bd div#bd_bg{ 
	padding-top: 44px;
}

.projektPage .grid{
	padding-top: 44px;
}

/* -- Main column and secondary column -- */

div#bd .col_container{
	width: 100%;
	position: relative;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	z-index: 10;
}

#bd .main_column{
	width: 100%;
	width: 60%;
	margin-left: 20%;
/*    margin-top: 136px;*/
}

/*
.projekt_details .main_column {
    margin-top: 0 !important;
}
*/

/*
#mainDetails_project_container {
    margin-top: 136px;
}
*/

.projekt_details #mainContent .secondaryText::after {
    display: none;
}

 .p-id-2 #bd .main_column {
    margin-top: 0;
}




.p-id-7  #bd .main_column{
	width: 80%;
}


.home #bd .main_column, .projektPage #bd .main_column{
	width: 100%;
	margin-left: 0;
}

#bd .left_column{
	background-color: #d3d3d3;
	padding:60px 10px 0 10px;
	box-sizing: border-box;
}

#bd .right_column{
	background-color: #d3d3d3;
	padding:60px 10px 0 10px;
	box-sizing: border-box;
}


/* -- ft (footer default parameters) --*/
div#ft {
	position:relative;
	clear: both;
	z-index:5;
	width:100%;
}

div#ft div.cn{
	border: none;
	height: auto;
	position:relative;
	z-index: 10;
	padding-bottom: 31px;
    padding-top: 26px;
}


/***** 04. Navigation *****/

/* navigation */

div #bloc_menu{
    background:#1A1A1A;
    width:50vw;
    position:fixed;
    left:50%;
    margin-left: 420px;
    right:auto;
    top:0px;
    bottom:0;
    z-index:50;
}

.admin div #bloc_menu{
	top:44px;
}

div #bloc_menu.close{
	opacity: 0;
}

.menuNav{
	position: absolute;
	top:34px;
	right: 100px;
	z-index: 20;
}

#bloc_menu .menuNav{
	left: 40px;
	right: auto;
	top: 39px;
    width: 347px;
}

.menuNav a{
	display: inline-block;
	padding: 10px;
}

.menuNav span {
  display: block;
  width: 24px;
  height: 3px;
  margin-bottom: 4px;
  line-height: 0;
  position: relative;
  
  background: #000;
  opacity: 1;
  z-index: 1;
}

.menuNav.burger{
	width: 44px;
	opacity: 1;
	-webkit-transition: opacity 0.1s linear;
	-moz-transition: opacity  0.1s linear;
	-ms-transition: opacity  0.1s  linear;
	-o-transition: opacity  0.1s  linear;
	transition: opacity  0.1s  linear;
	position: absolute;
	z-index: 40;

	top: 34px;
	right: -65px;
	box-sizing: border-box;
	margin:0;
	padding: 0;
	border: none;
}

.menuNav.burger:hover{
	opacity: 0.5;
}

/** close button **/

a.menuClose{
	display: inline-block;
    position: relative;
    width: 28px;
    height: 28px;
    transition: transform .25s ease-in-out;
    z-index: 50;
    float: right;
}

a.menuClose:hover {
    transform: rotate(180deg);
}

a.menuClose:before {
    content: "";
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width:20px;
    height: 0;
    border-top: 3px solid #fff;
    transform: rotate(45deg);
    transform-origin: center;
}

a.menuClose:after {
    content: "";
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width:20px;
    height: 0;
    border-top: 3px solid #fff;
    transform: rotate(-45deg);
    transform-origin: center;
}


/* -- Main navigation -- */

div#mainNavCt {
    float:none;
    position:relative;
    z-index: 1;
    width: auto;
    height: 100%;
    background: none;
}

ul#mainNav, ul#selektionProjects{
    margin: 0;
    text-align: left;
    background: none;
}

ul#mainNav li{
	display: block;
}

ul#mainNav li a, ul#selektionProjects li a{
    font-size:1rem;
    color:#fff;
    font-weight:400;
    height:auto;
    padding:5px 40px;
    float:none;
    line-height:1.4375rem;
    text-transform:none;
    display: inline-block;
    position: relative;
    text-decoration: none;

    -webkit-transition: color 0.2s linear;
    -moz-transition: color 0.2s linear;
    -ms-transition: color 0.2s linear;
    -o-transition: color 0.2s linear;
    transition: color 0.2s linear;
}

/*
ul#mainNav li.last{
	padding-top: 22px;
}
*/

/*
ul#mainNav li.projektPage{
	padding-bottom: 22px;
}
*/


ul#selektionProjects li ul li a{
	font-weight: 400!important;
	line-height: 1.25rem;
	padding: 3px 40px;
}

ul#mainNav >li >a:hover,
ul#selektionProjects >li >a:hover,
ul#selektionProjects li li a:hover, ul#selektionProjects li ul li:hover a{
	color: rgba(255,255,255,0.5)
}

ul#mainNav li.on a,
ul#selektionProjects li.on a,
ul#selektionProjects li.current >a{
	font-family: 'Flama-Bold';
	font-weight: 400!important;
}


/*
ul#selektionProjects li.on a, ul#selektionProjects li ul{
	margin-bottom: 22px;
}
*/

/** anchors **/


ul.anchorList{
	width: 100%;
	max-width: 1500px;
	margin:0 auto;
	padding:10px 10px 60px 10px;
	box-sizing: border-box;

    display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content:flex-start;
	-ms-flex-pack: left;
}

.anchorList li{
	display:inline-block;
}

.anchorList li a{
	padding:6px 30px 6px 0;
	margin-right: 30px;
	font-size: 1rem;
	line-height: 1.5625rem;

	min-width: 120px;
	text-align: left;

	text-transform: uppercase;
	font-weight:400;
	display:block;
	color: #2E3D4A;
	text-decoration: none;

	border-top: 3px solid #d3d3d3;
	border-bottom: 3px solid #d3d3d3;

}

.anchorList li a:hover{ /* style of the main navigation on hover or when the menu is activated */
	opacity:0.5;
	text-decoration:none;
}

/* -- second navigation -- */

/* dropdown menu */

ul#mainNav{
	margin:0;
	width: auto;
	display: inline-block;
}

ul#mainNav li ul {
    position: absolute;
    overflow: hidden;
	padding: 0 0;
	margin: 0;
	z-index:10;	
	width: 290px;
	left:0px;
	top: 82px;
	background-color: #fff;
	border-top: 1px solid #d3d3d3;
}

ul#mainNav li ul li, ul#mainNav li ul li.default {
	padding: 0;
	float:none;
	border: none;
	background:none;
	display:block;
	text-align:left;
	margin-top: -1px;
}

#hd ul#mainNav li ul li a{
	color: #000;
	padding: 10px 20px;
	font-size: 0.9375rem;
	letter-spacing: 0;
	line-height: 10px;
}

#hd ul#mainNav li ul li:not(.last) a::after{
	content:'';
	position: absolute;
	height: 1px;
	left:20px;
	right:20px;
	bottom:0;
	background-color:rgba(222,236,246,1);
}

ul#mainNav >li >ul li a:hover, ul#mainNav >li.on ul li a
ul#colorNav li ul li a:hover, ul#colorNav li ul li.on a{
	color: #000;
	background-color: rgba(222,236,246,1);
}

/* simple sec navigation */
div#secNavCt {
	width: 100%;
    left: 0;
    display: block;
    overflow: hidden;
    text-align:left;
}


.secNavCt{
	height: 100%;

	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;

	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;
}

ul#secNav{
	width: 100%;
	text-align: left;
	margin:0;
	width: 310px;
    padding: 0px 25px;
    box-sizing: border-box;

    border-right: 2px solid #ECECEC;
}

ul#secNav li{ 
	display:block;
	width:100%; 
}

ul#secNav li a {
	color: #fff;
	font-size: 1.125rem;
	text-decoration: none;
    font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */    
	text-align:left;
    line-height:1.375rem;
    width:auto; 
	display: block;
    position: relative;
	padding:8px 10px;

	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-ms-transition: all 0.2s  linear;
	-o-transition: all 0.2s  linear;
	transition: all 0.2s  linear;
}

ul#secNav li a:hover{ 
	opacity: 0.5;
	padding:8px 5px 8px 25px;
}

#cn ul#secNav li.on a {
	opacity: 0.6;
}

ul#secNav li.hidemenu{
	display: none;
}

/* -- third navigation -- */

ul#thirdNav {
	margin-bottom: 60px;
}

ul#thirdNav li{
	display: inline-block;
	padding:0 5px;
}

ul#thirdNav li a{
	display: block;
	padding: 10px;
	text-transform: uppercase;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */	
	text-decoration: none;
	border: 1px solid #2E3D4A;
	padding: 10px 10px;

	-webkit-transition: all 0.2s linear;
	-moz-transition: all  0.2s linear;
	-ms-transition: all 0.2s  linear;
	-o-transition: all 0.2s  linear;
	transition: all 0.2s  linear;
}

ul#thirdNav li a:hover{
	background-color:#2E3D4A;
	color: #fff;
}

/* -- annexe navigation -- */
#annexNavCt {
	position: absolute;
    right:0;
    top: 0;
    padding-top: 24px;
    vertical-align: top;
}
#annexe{
	display: inline-block;
	text-align:right;
	float:none;
	width:auto;
	box-sizing:border-box;
	padding: 0;
	vertical-align: top;
}

#annexe li {
	display:inline-block;
	text-transform: none; /* puts all words in uppercase in main menu (change to none if you want lowcase) */
	vertical-align:top;
}

#annexe li a, #annexNavCt a.button { /* style of the main navigation links */
	font-size: 1.0625rem;
    text-transform: none;
    line-height: 1.25rem;
    font-weight: 400!important;
    display: inline-block;
    vertical-align: top;
    color: #2F3E4B;
    padding: 16px 10px;
    opacity: 1;

    margin:0;

    text-decoration: none;
    -webkit-transition: opacity 0.1s linear;
    -moz-transition: opacity 0.1s linear;
    -ms-transition: opacity 0.1s linear;
    -o-transition: opacity 0.1s linear;
    transition: opacity 0.1s linear;
}

#annexe li a:hover, #annexe li.on a, #annexNavCt a.button:hover{
	opacity:0.5;
	text-decoration:none;
}

/* -- footer navigation -- */

/***** 05. languages links *****/

ul#lang {
    height:auto;
    max-width:280px;
    width: calc(100% - 80px);
    margin:0 40px 30px 40px;
    padding:0;
    border-bottom: 1px solid #fff;
    box-sizing: border-box;

    display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
}

ul#lang li{
    float: none;
    display: inline-block;
    margin:0;
    padding:0;
}

ul#lang li.fr{
	order: 2;
}

ul#lang li.de{
	margin-left: -5px;
	order: 1;
}

ul#lang li a{
    color: #fff;
	font-weight:400;
    font-size: 0.875rem;
    line-height: 1.0625rem;

    font-style: normal;
    text-transform: uppercase;
    float: none;
    display: inline-block;
    padding:14px 5px;
    background: none;
    text-decoration: none;
}


ul#lang li.fr a{
	padding-right:0px;
}


ul#lang li.fr::before{
	content:'|';
    color: #fff;
	padding:0 2px;
}


ul#lang li a:hover, ul#lang li.active a{
    font-family: 'Flama-Bold';
    font-weight: 400!important;
}

/***** 06. Objects styles *****/

/* -- Objects styles default --*/

div.object { /* all paragraph object default */
	margin: 0 0 20px 0;
}

div#bd .object{	/* all paragraph in #bd */
	margin:0;
	text-align: left;
	width: 100%;
	padding:0 0 50px 0;
	box-sizing: border-box;
}

/***/

div#bd .object >div, div#bd .object.hasaccordion h2{
	width:100%;
	max-width:1500px;
	margin:0px auto;
	padding:0 0;
	box-sizing:border-box;
}

div#bd .image.object img{ /* paragraph image */
	max-width:100%;
	height:auto;
	display:inline-block;
	width:auto;
	width: 100%;
	align-self: flex-start;
}

div#bd .text.object{
	width: calc(100% - 20px);
	margin:0 10px;
	padding-bottom: 40px;
	text-align: justify;
}

div#bd .standard.object >div{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;

	justify-content: center;
	-ms-flex-pack: center;

	justify-content:space-between;
	-ms-flex-pack: justify;
}

div#bd .standard.object >div h2{
	width: 100%;
	padding: 0;
}

div#bd .object.image div, div#bd .object .mapContainer.content >div{
	margin: 0 10px;
	max-width: calc(100% - 20px);
}

div#bd .object .mapContainer.content >div{
	overflow: hidden;
}

div#bd .object .wrapimg{
	width:calc(33.33% - 20px);
	margin:0 10px;
	line-height: 0;
}


div#bd .object .wrapimg{
	order: 1;
}

div#bd .object .wrapobject{
	width:calc(66.66% - 20px);
	margin:0 10px 0 10px;
	text-align: left;
	order:2;
}

div#bd .standard.object{
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 20px;
}

/*
div#bd .standard.object::after{
	content:'';
	position: absolute;
	left:10px;
	right:10px;
	bottom:0;
	width: calc(100% - 20px);
	height:2px;
	background-color:#E6E6E6;
}
*/


.p-id-7 div#bd .standard.object.last::after{
	display: none;
}

.p-id-7 div#bd .standard.object,
.p-id-5 div#bd .standard.object {
	padding-bottom: 30px;
}

div#bd .object.column .wrapobject, div#bd .object.column .wrapimg{
	width:100%;
	padding:0;
}

div#bd .object.column .wrapobject{
	order:2;
	margin: 0 0;
	border-bottom: none;
}

div#bd .object.column h2{
	font-size: 1.25rem;
	line-height: 1.75rem;
	margin-bottom: 5px;
}

div#bd .object.column .wrapimg{
	order:1;
	line-height: 0;
	margin: 0 0 10px 0;
}

div#bd .object.column{
/*	font-size: 0.9375rem;
	line-height: 1.4375rem;*/
}


div#bd .object .wrapimg img{
	max-width:100%;
	height:auto;
}

div#bd .object.column_demi img{
	width: 100%;
}

div#bd #introContent .object.column_demi img{
	width: auto;
	height: auto;
}


div#bd .standard.object >div .clr{
	display: none;
}

/* video multimedia object */
.multimedia.object iframe{
	max-width:100%;
	max-height:540px;
}

/* --  background color objects -- */

div#bd .object.mainColorBg, div#bd .object.mainColorBg h2,
div#bd .object.mainColorBg .wrapobject{
	background-color: rgba(222,236,246,1);
}

div#bd .text.object.mainColorBg, div#bd .standard.object.mainColorBg{
	padding-top:80px;
}

div#bd div.text.object.mainColorBg + div.object:not(.mainColorBg), 
div#bd div.standard.object.mainColorBg + div.object:not(.mainColorBg){
	padding-top: 80px;
}


div#bd .last.object.mainColorBg{
	margin-bottom: 80px;
}


div#bd #mainContent .standard.object.mainColorBg.porteCTA{
	background-color: transparent;
}

div#bd .object.mainColorBg.porteCTA{
	padding:0;
}


/* full image in background */
	
div#bd .image.object.mainColorBg{
	height:380px; /* define the height of your full background image*/
	padding:0;
}

div#bd .image.object.mainColorBg >div {
    background-size: cover;
    width: 100%;
    max-width:100%;
    height: 100%;
    background-position: center center;
    display: table;
    position:relative;
}

div#bd .image.object.mainColorBg >div h2 {
    color: #fff;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    text-shadow: 1px 1px 10px rgba(0,0,0,0.5);  /* shadow on the text for the visibility */ 
    position:relative;
    z-index:10;
    width:100%;
}

/* filter on the image */
div#bd .image.object.mainColorBg >div::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background-color:#000; /* color of the filter */
	opacity:0; /* opactiy of the filter */ 
}

/**
.home div#hd .slider .object >div::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background-image: -webkit-linear-gradient(rgba(0,0,0,0.50) 5%, rgba(0,0,0,0.15) 28%, rgba(0,0,0,0.10) 80%);
	background-image: -o-linear-gradient(rgba(0,0,0,0.50) 5%, rgba(0,0,0,0.15) 28%, rgba(0,0,0,0.10) 80%);
	background-image: linear-gradient(rgba(0,0,0,0.50) 5%, rgba(0,0,0,0.15) 28%, rgba(0,0,0,0.10) 80%);
}
**/

/*
div#ft #footerContent::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index: 1;
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-o-transform: rotate(180deg);

	background-image: -webkit-linear-gradient(left, rgba(232,232,232,0.50) 5%, rgba(232,232,232,0.84) 32%, #E8E8E8 66%);
	background-image: -o-linear-gradient(left, rgba(232,232,232,0.50) 5%, rgba(232,232,232,0.84) 32%, #E8E8E8 66%);
	background-image: linear-gradient(to right, rgba(232,232,232,0.50) 5%, rgba(232,232,232,0.84) 32%, #E8E8E8 66%);
}
*/

/* -- hasaccordion -- */


.accordion{
	margin:0 auto;
	max-width: 1000px;

}

#cn div#bd #mainContent div.object.hasaccordion{
	border-bottom:1px solid rgba(149,159,166,0.25);
	padding:20px 0 20px 0;
	margin:0;
	width: 100%;
}

div.accordion{
	margin-bottom: 50px;
	width: 100%;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	border-top:1px solid rgba(149,159,166,0.25);
}

div#bd .object.hasaccordion h2{
	padding:10px 0 12px 0;
	position: relative;
}

div#bd .object.hasaccordion .content{
	padding:0 0 0 20px;
	box-sizing:border-box;
}


/** Accordeon ouverture avec bouton plus **/

#cn div#bd #mainContent div.object.hasaccordion span {
	border-radius: 50%;
	width: 24px;
	height: 24px;
	display: inline-block;
	vertical-align: middle;
	background-color: transparent;
	border: 1px solid #aaaaaa;
	position: relative;
	margin-right: 10px;
	margin-top: -6px;
}

#cn div#bd #mainContent div.object.hasaccordion span::after {
	content: " ";
	position: absolute;
	display: block;
	background-color: #aaaaaa;
	height: 1px;
	margin-top: -1px;
	top: 50%;
	left: 6px;
	right: 6px;
	z-index: 9;
}

#cn div#bd #mainContent div.object.hasaccordion span::before {
	content: " ";
	position: absolute;
	display: block;
	background-color: #aaaaaa;
	width: 2px;
	margin-left: -1px;
	left: 50%;
	top: 6px;
	bottom: 6px;
	z-index: 9;
	opacity: 1;
	-webkit-transition: opacity 0.1s linear;
	-moz-transition: opacity 0.1s linear;
	-ms-transition: opacity 0.1s linear;
	-o-transition: opacity 0.1s linear;
	transition: opacity 0.1s linear;
}

#cn div#bd #mainContent div.object.hasaccordion.open span::before{
	opacity: 0;
}

/*  Accordeon ouverture avec arrow *

.hasaccordion h2::after{
	content:"";
	position: absolute;
	top:50%;
	left:auto;
	right: 3px;
	width:8px;
	height: 8px;
	margin-top: -8px;
	margin-left: -8px;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);

	display: block;
	
	border-left:2px solid #000;
	border-bottom:2px solid #000;
	background-color: transparent;
}

.hasaccordion.open h2::after{
	background-image:url(../img/moins_btn.svg);
	border-color: #D9D9D9;
	background-size: 15px 3px;
}

***/

/* -- Columns object -- */


div#bd .object.column, div#ft .object.column{
	margin:0 10px 36px 10px;
	padding:0 0;
	box-sizing:border-box;
	vertical-align:top;
    

	max-width: calc(500px - 24px);
}

div#bd .object.column,
div#bd .object.noColumn {
    border-bottom: 1px solid #E6E6E6;
/*    background-color: blue;*/
}

.p-id-6 .separator {
    border-bottom: none !important;
}

.p-id-6 div#bd .object.noColumn {
	border-bottom: none !important;
}

.p-id-6 .separator.odd {
    margin-bottom: 40px !important;
    padding-bottom: 0 !important;
}

.p-id-6 .image.odd {
    border-bottom: none !important;
}

/*attention id changement de langue*/
.p-id-4 div#bd .object.column,
.p-id-11 div#bd .object.noColumn{
    border-bottom: none !important;
}

div#bd .object.demi, div#ft .object.demi{
	width:calc(100%/2 - 20px);
	max-width: calc(900px/2 - 20px);
	display: block;
}

div#bd .object.tiers, div#ft .object.tiers{
	width:calc(100%/3 - 20px);
	max-width: calc(900px/3 - 20px);
	display: block;
}

div#bd .object.quart, div#ft .object.quart{
	width:calc(100%/4 - 20px);
	max-width: calc(900px/4 - 20px);
	display: block;
}


div#bd .image.object.column h2{
	padding:0;
}

div#bd #mainContent .standard.object.column_demi >div,
div#bd .standard.object.porteCTA >div{
	-moz-box-shadow: 0px 0px 7px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0px 0px 7px rgba(0,0,0,0.2);
    box-shadow: 0px 0px 7px rgba(0,0,0,0.2);

    -webkit-transition: all 0.2s linear;
	-moz-transition: all  0.2s linear;
	-ms-transition: all 0.2s  linear;
	-o-transition: all 0.2s  linear;
	transition:  all 0.2s  linear;

	padding:0;
}

div#bd #mainContent .standard.object.column_demi >div{
	min-height: 455px;
	position: relative;
}

#cn div#bd .object.column_demi h2{
	margin-bottom: 15px;
	text-transform: uppercase;
}

div#bd .image.object.porteCTA{
 	position: relative;
 	padding:0;
 	margin-bottom: 40px;
 	box-shadow: 2px 2px 9px 0 rgba(0,0,0,0.11);
 	height: 320px;
 	background-color: #fff;
 }

 div#bd .image.object.porteCTA img{
 	height: 260px;
 	width: 100%;
 	object-fit:cover;
 	margin-bottom: 86px;
 }

 div#bd .image.object.porteCTA a{
 	line-height: 0;
 	position: absolute;
 	top:0;
 	left:0;
 	bottom:0;
 	right:0;

 	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.2s linear;

 	-moz-box-shadow: 0px 0px 16px rgba(0,0,0,0);
    -webkit-box-shadow: 0px 0px 16px rgba(0,0,0,0);
    box-shadow: 0px 0px 16px rgba(0,0,0,0);
 }

 div#bd .object.porteCTA >div a:hover {
	-moz-box-shadow: 0px 0px 16px rgba(0,0,0,0.4);
    -webkit-box-shadow: 0px 0px 16px rgba(0,0,0,0.4);
    box-shadow: 0px 0px 16px rgba(0,0,0,0.4);
    cursor: pointer;
}

/*
 .home div#bd .object.porteCTA::before{
 	content:'';
 	position: absolute;
 	top:0;
 	left:0;
 	right: 0;
 	bottom: 0;
	background-image: -webkit-linear-gradient(rgba(0,0,0,0.20) 36%, rgba(0,0,0,0.45) 58%);
	background-image: -o-linear-gradient(rgba(0,0,0,0.20) 36%, rgba(0,0,0,0.45) 58%);
	background-image: linear-gradient(rgba(0,0,0,0.20) 36%, rgba(0,0,0,0.45) 58%);
 }
*/

div#bd .object.column_demi .wrapimg, div#bd .object.porteCTA .wrapimg,
div#bd .object.column_demi .wrapobject, div#bd .object.porteCTA .wrapobject{
	width: 100%;
	text-align: left;
}

div#bd .object.porteCTA .wrapobject {
	padding: 30px 35px 25px 35px;
	z-index: 10;
	position: relative;
}

div#bd .object.porteCTA .wrapimg, div#bd .object.porteCTA .wrapimg img{
	line-height: 0;
}

div#bd .object.porteCTA .wrapimg img{
	height: 220px;
	width: 100%;
	object-fit:cover;
}

div#bd .object.porteCTA >div{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
}


div#bd .object.porteCTA .wrapimg{
	order:1;
	position: relative;
	margin:0;
}

div#bd .image.object.porteCTA h2{
	position: absolute;
	bottom:0;
	
	background-color:#fff;
	order:2;
	margin: 0;
	left: 0;
	padding: 30px 40px;
	font-size: 1.1875rem;
	line-height:1.625rem;
	z-index: 10;
	width: 100%;
	pointer-events: none;
}

/* -- fond blanc -- */

div#bd .object.whiteBg{
	background-color:#fff;
	padding-top:60px;
}

/* -- Text divided columns -- */

div#bd .object.textdivided >div{
	-webkit-columns: 2 280px;
     -moz-columns: 2 280px;
          columns: 2 280px;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;

    text-align:justify;
/*
    -webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
*/

	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;



}

.object.textdivided p, .object.textdivided ul{
	margin-bottom: 1.375rem;
	-webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.object.textdivided ul{
	margin-bottom: 1.375rem;
}

.object.textdivided p:last-of-type {
	margin-bottom: 0;
}

div#bd .object.textdivided h2 {
    width:100%;
    text-align:left;
    padding:0 10px;
    max-width: 900px;
    margin: 0px auto 16px auto;
}


/****/

div#bd div#bd_bg .container_first_object >div.smallSize{
	width:75%;
	float:left;
}

div#bd div#bd_bg .container_first_object ul{
	width:25%;
	float:left;
}

/***** 07. Regions *****/


/* -- region Image top content (top content with background) -- */

div#header_image_container{
    width: 100%;
    max-width:calc(100% - 20px);
	margin:0 10px 50px 10px;
    overflow:hidden;
    position:relative;
    z-index: 10;
}

div#header_image_container .header_image_backgroundImage{
	width:100%;
	height: 680px;
	height: auto;
	overflow:hidden;
	position:static;
	box-sizing:border-box;

	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;

	
/* -- Background image here -- */
	background-image:none; /* insert your image here */
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
}


.blog div#header_image_container, .blog div#header_image_container .header_image_backgroundImage{
	height: 300px;
	min-height:300px;
}

.mainMenu div#header_image_container .header_image_backgroundImage::after{
	display: none;
}

#header_image_container{
	padding:0;
	position:relative;
	z-index:20;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;
}

#header_image_container div.headerContainer{
    width: 100%;
    max-width: 900px;
    max-width: 100%;
    margin:0 auto;
    padding:0px 10px;
    padding: 0;
    box-sizing: border-box;
    z-index: 10;

    display: flex;
    display: -ms-flexbox;
    display: -webkit-flex;
    align-items: center;
    justify-content: flex-start;
    -ms-flex-pack: left;
    flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
}

#bd #header_image_container .object{
    width: 100%;
    height: 680px;
    height: auto;
	color: #fff;
	padding:0;

    font-size: 1.0625rem;
    line-height: 1.625rem;
    text-align:left; 
    margin:0px auto;
    font-weight: 400!important;

    left:0;
    right: 0;
    top:0;
    bottom: 0;
}

#bd #header_image_container .object >div{
	max-width: 100%;
	width: 100%;
	margin:0;
}

#bd #header_image_container .image.object{
	position: absolute;
	position: relative; 
}

#bd #header_image_container .object .wrapobject, #bd .slider .object .wrapobject{
	max-width: 500px;
	position: relative;
}

#bd #header_image_container .object h2{
	font-size:1.5rem;
	line-height: 2rem;
	font-weight: 400!important;
	color:#fff;
	text-align:left;
	margin-bottom:10px;
}

#bd #header_image_container .object h2::before{
	display: none;
}

/**/

/** breadcrumb **/

#breadcrumbContent{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content: center;
	-ms-flex-pack: center;
	width: 100%;
}

#breadcrumbContent .cn{
	padding:0 10px 0 10px;
	box-sizing: border-box;
	margin-bottom: 0;
	text-align: left;
}

#breadcrumbContent .cn::after{
	content:'';
	position: absolute;
	left:10px;
	right:10px;
	bottom:0;
	height: 1px;
	background-color:rgba(0,0,0,0.2);
}

#breadcrumbContent .breadcrumb{
	background-color: transparent;
	padding:10px 10px;
	margin:0;
	display: inline-block;
}

#breadcrumbContent span{
	color:#575657;
	font-weight: 400!important;
}

#breadcrumbContent .breadcrumb a{
	text-decoration: none;
	font-weight: 400!important;
}

#breadcrumbContent .breadcrumb a:hover{
	text-decoration: underline;
}

.blog #breadcrumbContent{
	display: none;
}

#breadcrumbContent .breadcrumb i{
	margin:0 10px;
	color:rgba(0,0,0,0.2);
}

#breadcrumbContent #home_icon a{
	padding: 5px;
    display: inline-block;
    opacity:1;
    -webkit-transition: opacity 0.1s linear;
	-moz-transition: opacity  0.1s linear;
	-ms-transition: opacity  0.1s  linear;
	-o-transition: opacity  0.1s  linear;
	transition: opacity  0.1s  linear;
}

#breadcrumbContent #home_icon a:hover{
	opacity: 0.6;
}

/* -- region Introduction content -- */


#bd #introContent .cn{
	box-sizing:border-box;
	position: relative;
	z-index: 20;
	padding-top: 0;
	padding-bottom: 0;
	justify-content:space-between;
	-ms-flex-pack: justify;
}

.blog #bd #introContent .cn{
	min-height: 0;
	padding-bottom: 0;
}


.home #bd #introContent h2{
	color: #292929;
	font-size: 1.0625rem;
	line-height: 1.375rem;
	margin-bottom: 6px;
}

#bd #introContent .object{
	font-size:1.1875rem;
	line-height: 1.75rem;
	position: relative;
}

/* -- region mainContent -- */

.blog div#bd #mainContent div#bd .object.first{
	padding-top:0;
}

/* -- region Footer content -- */

div#ft #footerContent{
	position: relative;
	box-sizing:border-box;
	width: 100%;
}

div#ft #footerContent h2{
	width: 100%;
	font-size: 1.0625rem;
	line-height: 1.875rem;
	margin-bottom: 7px;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */	
	margin-bottom: 7px;
	padding: 0;
}

div#ft #footerContent .cn{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 

	flex-wrap: wrap;
	-ms-flex-wrap: wrap;

	justify-content: space-between;
	-ms-flex-pack: left;
}


div#ft #footerContent .cn .object, strong#logo_footer {
	padding-left:0;
	box-sizing:border-box;
	text-align: left;
	width:calc(50% - 10px);
	line-height: 1.4375rem;
	margin: 0;
	padding: 0;
	pointer-events:auto;
	font-weight: 400!important;
}

div#ft #footerContent .cn .object p{
	margin:0;
}

div#ft #footerContent .cn .object strong{
	display: block;
	margin: -6px 0 0 0;
}

div#ft #footerContent .cn .object a{
	font-weight: 400!important;
	text-decoration: none;
	display: inline-block;
}

strong#logo_footer{
	margin: 0 10px;
	width:calc(20% - 20px);
}

div#ft #footerContent .cn .powered.object{
	text-align: left;
	width: 50%;
	margin:4px 10px 0 10px;
    display: flex;
    justify-content: space-between;
}

div#ft #footerContent .cn .map.object{
	width: 100%;
	padding:0;
	margin: 50px 0 0 0;
}

div#ft #footerBg{
	background-color: #fff;
	padding:80px 0 40px 0;
	box-sizing:border-box;
	min-height:220px;
}

.newsletterContent form.kSiteForm, div#ft .newsletterContent h2{
	display:inline-block;
	vertical-align:middle;
	clear:none;
}

#cn .newsletterContent h2, #ft .newsletterContent h2{
	margin:0 20px 0 0;
	font-size:1rem;
	display:inline-block;
	width: auto;
	position: relative;
    top: 3px;
}

.newsletterContent form.kSiteForm input.text{
	border: 3px solid #2E3D4A;
    height: 26px;
    min-width:180px;
    padding: 5px 10px;
}

.newsletterContent form.kSiteForm{
	min-width: 330px;
	margin:0;
}

.newsletterContent{
	display:inline-block;
	vertical-align: middle;
}

.newsletterContent .object{
	margin:0;
}

.newsletterContent .form.object #btSubmit{
	float:left;
	font-size: 1rem;
    padding: 5px 12px;
    height: 42px;
    border: 3px solid #2E3D4A;
}

.newsletterContent form.kSiteForm label.error{
	position:absolute;
}

.newsletterContent form.kSiteForm label{
	color:#2E3D4A;
	font-weight:400;
	font-size: 0.9rem;
}


.newsletterContent .form.object fieldset{
    float: left;
    text-align: left;
}

div#ft .footerNav ul#footerNav-main li{
	display: inline-block;
	width: auto;
}

div#ft .footerNav ul#footerNav-main li{
	color:#947a59;
}

#hd .newsletterContent{
	float:right;
	text-align:right;
	padding-top:40px;
	padding-right: 20px;
	width:auto;
}

#hd .newsletterContent h2{
	top: 7px;
}

#hd .newsletterContent .object a{
	padding:10px;
	display: inline-block;
	text-transform: uppercase;
	font-weight:700;
	font-size: 1.188rem;
    color:#000;
    opacity: 1;
    -webkit-transition: color 0.2s linear;
	-moz-transition: color 0.2s linear;
	-ms-transition: color 0.2s  linear;
	-o-transition: color 0.2s  linear;
	transition: color 0.2s  linear;
}

#hd .newsletterContent .object a:hover{
	text-decoration:none;
	color:#2E3D4A;
}

.newsletterContent{
	width:455px;
}

/***** SLIDER -- documentation ici http://kenwheeler.github.io/slick/ --  *****/

.slider_container{
	position: relative;
	width: 100%;
	max-width: 1220px;
	padding:0 10px;
	box-sizing: border-box;

	margin: 0 auto;
	z-index:10;
}

#bd .slider{
	background-color:#c2c0bc;
	width: 100%;
	margin:0 auto;
	height: auto;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
}


#bd .slider .object{
	padding:0;
	margin:0;
	position: relative;
	z-index: 20;
}

div#bd .slider .object >div {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 10px;
    box-sizing: border-box;

    justify-content:flex-start;
	-ms-flex-pack: left;
}

.home div#bd .slider .object{
	min-height:450px;
	height: 35vh;
	overflow: hidden;
	position: relative;
	background-size: cover;
	background-repeat:no-repeat;
	background-position: center center;

	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;

	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
}

.home div#bd .slider .object::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background: linear-gradient(187.65deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%);
}

#bd .slider .object .wrapimg{
	display: none;
}

#bd .slider .object .wrapobject{
	z-index: 20;
	color: #fff;
	box-sizing:border-box;
}

#bd .slider .object .wrapobject a.button, #bd .slider .object .wrapobject a.button::after{
	text-shadow: none;
	margin: 10px 0;
	background-color: #fff;
	color: #000;
}



#cn .slider h2::before{
	display: none;
}

#cn .slider .image.object h2{
	max-width: 630px;
    margin: auto;
    display: block;
}


#bd .slider .object .wrapobject::after{
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    width: 100%;
	height: 100%;
	padding:40px 40px;
    display: block;
    background-color: rgba(7,77,120,0.9);
    z-index: -1;
}


/* slick dots */
	
ul.slick-dots{
	position:absolute;
	bottom:24px;
	left:50%;
	transform:translateX(-50%);
	margin:0 auto;
	text-align: left;
	display: block!important;
	
	z-index: 10;
    width: 100%;
    max-width: 1000px;
}

ul.slick-dots li{
	list-style-type:circle!important;
	display:inline-block;
	margin:0px auto;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 11px;
    height: 11px;
    padding: 0;
    margin: 0 6px;
    border: 1px solid #fff;
    cursor: pointer;
    background-color: transparent;
    background-image: none;
    outline: none;

    box-shadow: 2px 2px 4px 0 rgba(0,0,0,0.1);

   border-radius: 150px;
	-moz-border-radius: 150px;
	-webkit-border-radius: 150px;
}


.slick-dots li.slick-active button {
	background-color: #fff;
    border: none;
}

.slick-prev, .slick-next{
	position: absolute;
	background-color: transparent; 
	top: 50%;
	left:50px;
	transform:translateY(-50%);
	display: block;
	width: 48px;
	height: 66px;
	cursor: pointer;
	border: none;
	outline: none;
	color:transparent;
	z-index: 20;

	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity  0.2s linear;
	-ms-transition: opacity  0.2s  linear;
	-o-transition: opacity  0.2s  linear;
	transition: opacity  0.2s  linear;
}

.slick-next {
  right:50px;
  left: auto;
}

.slick-prev::after, .slick-next::after{
	content:"";
	position: absolute;
	top:50%;
	left:50%;
	width:16px;
	height: 16px;
	margin-top: -8px;
	margin-left: -8px;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);

	display: block;
	
	border-top:3px solid #fff;
	border-left:3px solid #fff;
	background-color: transparent;
}

.slick-next::after{
	margin-left: -11px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}

.slick-prev:hover, .slick-next:hover{
	opacity:0.5;
}
		
/****/


/** slider sponsors **/

#sliderLogoContent{
	-moz-box-shadow:0 0 14px rgba(0,0,0,0.16);
    -webkit-box-shadow: 0 0 14px rgba(0,0,0,0.16);
    box-shadow: 0 0 14px rgba(0,0,0,0.16);
}

#sliderLogoContent .cn{
	padding: 60px 0 60px 0;
}


.slider_sponsors {
	width: 1500px;
	margin:0px auto;
	padding:40px 0;
}

#sliderLogoContent .slick-slider{
	position: relative;
}

.slider_sponsors .object img{
	display:inline-block;
	float:none;
	margin:auto;
	max-width:85%;
	max-height:76px;
	width:auto;
	height:auto;
	vertical-align:middle;
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
}

.slider_sponsors .object a{
	margin:auto;
	height:60px;
	width:100%;
}

.slider_sponsors .object{
	text-align:center;
	padding:0 0px;
	box-sizing:border-box;
	display:block;
	margin:0;
	position:relative;
	line-height:50px;
}

#bd .slider_sponsors .object{
	padding-bottom: 0;
}

.slider_sponsors .object >div{
	text-align:center;
	height:100px;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
}

.slider_sponsors .slick-prev{
	left:-50px;
	background-color: transparent;
}

.slider_sponsors .slick-next{
	right:-50px;
	background-color: transparent;
}

.slider_sponsors .slick-prev::before, .slider_sponsors .slick-prev::after,
.slider_sponsors .slick-next::before, .slider_sponsors .slick-next::after {
	border-color:#545454;
}

div#bd .slider_sponsors .image.object img{
	max-width: 156px;
}

		
/*-- region Main content  --*/

div#bd #mainContent{
	position: relative;
	z-index: 10;
}

div#bd #mainContent .cn{
	padding-bottom: 0;
}

div#bd #mainContent, div#bd #introContent, #ft #footerContent, .bottomNav,
div#bd #mainContent .cn, div#bd #mainContent .portes, div#bd #mainContent .cn, div#bd #introContent .cn, div#bd #mainContent .cn.secondaryText > .content{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content: center;
	-ms-flex-pack: center;
}


div#bd #mainContent{
	justify-content: flex-start;
	-ms-flex-pack: left;
}

div#ft #promesseContent div.cn h2{
	width: 100%;
	display: block;
	text-align: left;
}

div#ft #promesseContent div.cn .image.object >div{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;
}

div#ft #promesseContent div.cn .image.object h2{
	order:2;
	text-align: center;
	font-size: 1.125rem;
	line-height: 1.375rem;
	margin:0;
}

div#ft #promesseContent div.cn .image.object img{
	order: 1;
	margin-bottom: 25px;
}

div#ft #promesseContent .image.object{
	background-color: #fff;
	padding: 56px 20px;
	border-bottom:6px solid rgba(35,56,104,0.2);
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;
}

div#bd #mainContent .portes .standard.object.porteCTA{
	background: #D8D8D8;
	box-shadow: 2px 2px 8px 0 rgba(0,0,0,0.26);
	border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    overflow: hidden;
    margin-top: -120px;
}



/* portes */

div#bd #mainContent .portes{
	justify-content:center;
	-ms-flex-pack: center;
}

/** prefooter content **/

#bd #prefooterContent{
	position: relative;
	background-color: #F9F9F9;
	box-shadow: inset 0 7px 30px 0 rgba(0,0,0,0.05);
	
	/* image de fond prefooter 

	background-image:url(../img/prefooter_bg.jpg);
	background-position: center center;
	background-size: cover;
	
	*/
}

/* 

#bd #prefooterContent::after{
	content:'';
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:rgba(0,0,0,0.2)
}

*/


#bd #prefooterContent .object{
	position: relative;
	z-index: 10;
}



/***** 08. BLOG *****/

/* -- Blog listing on homepage -- */

.home .blog{
	margin-bottom:60px;
}

/****/
.blog div#bd{
	padding-top:0px;
}

.blog #paging{
	text-align: left;
}

.home div#bd .bloglist.object{
	margin:0px auto;
	text-align:center;
	box-sizing:border-box;
    width: 100%;
	background-image: none;
	padding:80px 0;
	
	background-color: #F9F9F9;
    box-shadow: inset 0 7px 30px 0 rgba(0,0,0,0.05);
}

.home div#bd .bloglist.object >div{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	align-items: center;
	justify-content: center;
	-ms-flex-pack: center;

	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;

	-ms-flex-align: start;
	-ms-grid-row-align: flex-start;
	align-items: flex-start;

	max-width: 1500px;
}

.home #cn .bloglist.object h2{
	width: 100%;
    margin: 0 auto 20px auto;
    padding:0 10px;
    box-sizing: border-box;
    text-transform: uppercase;
}

.home .bloglist.object .blog{
    vertical-align: top;
    margin:0 10px;
    width: calc(33.33% - 20px);
    box-sizing:border-box;
    text-align: left;
    padding:0;
    min-height: 450px;
    font-size: 0.9375rem;
    line-height: 1.375rem;
}


.home .bloglist.object .blog .header >a{
	display: block;
	height: 250px;
	background-position: center center;
	background-size: cover;
	margin-bottom: 10px;
}

.home .bloglist.object .blog a{

	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity  0.2s linear;
	-ms-transition: opacity  0.2s  linear;
	-o-transition: opacity  0.2s  linear;
	transition: opacity  0.2s  linear;
}


.home .bloglist.object .readmore-wrapper{
	display: block;
	width: 100%;
	padding: 20px;
	margin-top: 20px;
	box-sizing: border-box;
}

.home .bloglist.object .blog .header h3 a:hover, .home .bloglist.object .blog .header h3 a:focus, .home .bloglist.object .blog .header h3 a:active{
	text-decoration:none;
	opacity: 0.6;
}

.home #cn .blog .blogListTitle em{
	color:#fff;
	display:block;
	font-size: 0.875rem;
	line-height: 1.4375rem;
	margin-bottom: 2px;
	text-align: left;
	text-shadow:none;
	font-style: normal;
}

.home #cn .blog .blogListTitle{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
}

.home div#bd #bd_bg #mainContent div.event.list .readmore-wrapper.content{
	display: block;
	text-align: center;
	padding: 20px;
    margin-top: 20px;
}

.home div#bd #bd_bg #mainContent div.event.list .readmore-wrapper.content a{
	display: inline-block;
}


.home #cn .blog .blogListTitle h3{
	order:2;
	margin-bottom: 10px;
}

.home #cn .blog .blogListTitle h3 a{
	text-decoration: none;
}


.home #cn .blog .blogListTitle em{
	order:1;
	width: 100%;
	color: rgba(0,0,0,0.8);
}


/* block listing page */

.blog #cn div.blog h2{
	margin-bottom:0;
}

.blog #cn div.blog .header{
	overflow:hidden;
	padding-bottom:12px;
	margin:0 auto;
}

.blog #mainContent .cn{
	padding-top: 20px;
}

.newsPage #mainContent .standard.object .wrapimg{
	width: calc(33.33% - 20px);

	background-size: cover;
	background-position: center center;
}

.newsPage #mainContent .standard.object .wrapimg img{
	width: 100%;
	height: auto;
}

.newsPage #mainContent .standard.object .wrapobject{
	position: relative;
}

.newsPage #mainContent .standard.object a.button{
	position: absolute;
	right: 0;
	bottom:0;
}

/* background on the blog object in the bloglist */

.blog #cn div#bd #mainContent{
	margin:0 auto;
	padding:0;
	box-sizing: border-box;
}

#cn div#bd #mainContent .object.blog{
	padding:0 0;
	margin-bottom:50px;
	border-bottom: 1px solid #d3d3d3;
	
	margin:0 0 50px 0;
}

.blog div#bd .object.blog .content{
	text-align:justify;
}

.blog div#bd .object.blog .content img{
	float:right;
	margin:0 0 20px 50px;
	max-height:250px;
	max-width:40%;
	width:auto;
	height:auto;	
}

.blog div#cn h1{
	max-width: 100%;
}

.blog:not(.blog_details) div#cn #introContent h1{
	font-size: 1rem;
	color: #525252;
	padding-top: 20px;
}

/*
.topbar_center h1 {
    margin-bottom: -26px !important;
}
*/

.topbar_center p {
    margin-bottom: -2px !important;
}


/***/


#cn div.blog .details{
	display: block;
}

.blog div#bd .blog .content a.readmore{
	float:left;
	text-decoration: underline;
	border:none;
	margin:0;
	padding: 0;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */
}

.blog div#bd .blog .content a.readmore:hover{
	text-decoration: none;
}

.blog div#bd .blog .content hr{
	display: none;
}

.blog div#bd .object{
	padding: 0 0 36px 0;
}

.blog div#bd .last.object{
	padding-bottom: 100px;
}

/* Blog details page */

.blog_details div#cn h1{
	text-align: center;
	display: block;
	width: 100%;
}

.blog_details .navPost-back, .blog_details #cn div.blog .header{
	text-align: center;
}

.blog_details .navPost-back a{
	color: #aaaaaa;
}

.blog_details div#bd .navPost{
	text-align: center;
}

.blog_details div#bd .object.blog .content img{
	max-height:500px;
	max-width:100%;
	display: inline-block;
	margin: 0 0 0 0;
	float: none;
}

.blog_details div#bd .object.blog  >div .wrapimg{
	width: 100%;
	display: block;
	text-align: center;
	margin-bottom: 30px;
}


/* hide the top page title if necessary !! be carefull, there could be 2 H1 on the blog details page */
.blog_details #header_image_container h1{
	display:none;
}
/**/
	
.blog_details .blog.detail.object div.detail{
	display: block;
    vertical-align: top;
    width: 100%;
    padding: 0 10px 30px 10px;
    box-sizing: border-box;
}

.blog_details div#bd .blog.object img{
	margin-bottom:10px;
}


/** button preview and next **/

.navPost-prev, .navPost-next{
	display: inline-block;
	width:auto;
	padding-top:20px;
}


/*****  09. Events  *****/

div#bd .object.event{
	padding-top:40px;
}

div#bd #bd_bg #mainContent div.event.list{
	text-align: center;
}

.home div#bd #bd_bg #mainContent div.event.list{
	padding:80px 0;
	text-align: left;
}

div#bd #mainContent div.event.list.object ul{
	padding: 0;
	width: 100%;
    max-width: 1500px;
    margin: 0px auto;
}

div#bd #mainContent div.event.list.object ul li.event{
	padding:0 10px;
	margin-bottom: 14px;
	box-sizing: border-box;
	text-align: left;
}

div#bd #mainContent div.event.list.object .object.event ul{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	border-bottom: 1px solid #d3d3d3;
	padding-bottom: 14px;
}

div#bd #mainContent div.event.list.object .object.event ul >li{
	align-items: flex-start;
}

div#bd .event.list.object ul{
	list-style: none;
	margin:0;
}

.home #cn .event.object >h2{
	max-width: 1500px;
	padding:0 10px 20px 10px;
	box-sizing: border-box;
	margin:0 auto;

	font-size: 1.4375rem;
    line-height: 1.875rem;
    text-transform: uppercase;
}

div#bd .object .event-list-container{
	max-width: 1500px;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	justify-content: center;
	-ms-flex-pack: center;
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
}

.event-list-container .event{
	margin: 0 10px 40px 10px;
    width: calc(33.33% - 20px);
    box-sizing: border-box;
}

.event-list-container .event b.date{
	font-size: 0.875rem;
    line-height: 1.4375rem;
    margin-bottom: 5px;
    display: inline-block;
    color: rgba(0,0,0,0.8);
}

.event-list-container .event p{
	margin:0;
	font-size: 0.9375rem;
    line-height: 1.375rem;
}

#cn .event-list-container .event h2{
	margin:0 0 5px 0;
}


.event-list-container .event img{
	max-width: 100%;
	height: auto;
}

/** Events détails **/

div#bd div#bd_bg .detail.object .block{
	margin-bottom:60px;
}


div#bd .object.event li.date{
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */	
	text-transform: uppercase;

	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
}

div#bd .object.event li.date .eventDateEnd{
	margin-left: 10px;
}

div#bd .object.event .eventDateStart .year{
	display: none;
}

div#bd .object.event .title a {
    font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */   	
	font-style:normal;
    color: #000;
    font-size: 1.125rem;
    text-decoration: none;
    background-color: transparent;
    padding: 0 5px;
    display: block;
}

div#bd .object.event .title a:hover{
	opacity: 0.5;
}

.event .dates{
	padding-bottom: 0;
}

div#bd .object.event .eventDateStart >span.day{
	text-transform: uppercase;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */	
	box-sizing: border-box;
}

div#bd .object.event .place{
	color:#848484;
}

div#bd .object.event .title a::before, div#bd .object.event .place::before{
	content: '-';
	margin-right: 5px;
	font-weight:400;
}

div#bd .object.event .eventDateStart .time{
	display: none;
}

div#bd .object.event .map p{
	margin-top:10px;
}

div#bd .object.event #kamGallery{
	margin-top:60px;
}

.event_details div#bd .object .wrapimg{
	width:100%;
	margin-bottom: 20px;
}

.addthis_sharing_toolbox{
	padding-top:70px;
	padding-bottom:10px;
}

.event_details div#bd #mainContent .object.first{
	padding-top:0;
}

.event_details div#bd #mainContent .object .wrapobject{
	width: 100%;
}

/***** 10. Gallery *****/

#kamGallery{
	width: 100%;
    margin: 0 auto 60px auto;
    max-width: 1200px;
}

#kamGallery ul{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;

	margin:0;
	padding:0 10px 0 10px;
}

#kamGallery ul li{
	width: calc(25% - 24px);
	margin:0 12px 24px 12px;
	display: inline-block;
	float: none;
}

#kamGallery ul li a{
	display:block;
	position: relative;
	line-height: 0;
}

#kamGallery ul li a::before{
	content:'';
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:#000;
	opacity: 0.05;

	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity 0.2s linear;
	-ms-transition: opacity 0.2s linear;
	-o-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}

#kamGallery ul li:hover a::before{
	background-color: #000;
	opacity: 0.3;
}

.event.detail.object #kamGallery ul{
	margin-left: -12px;
}

#kamGallery ul li img{
	width: 100%;
	height: auto;
	margin: 0;
	max-width: 100%;
}

/***** 11. Shop *****/

/* -- basket button -- */

#hd .panier{
	position:absolute;
	right:20px;
	top:15px;
	height:75px;
	max-width:135px;
	display:block;
	z-index:50;
}

#kScart{
	cursor:pointer;	
	background:url(../img/panier.png) right 16px no-repeat;
	height:116px;
}

#kScart li div.Im img{ 
	margin-left: 4px;
    width: auto;
    max-width: 95%;
    max-height: 90px;
}

#kScart ul{
	border:none;
	background: url(../img/arrow_nav.png) 20px top no-repeat;
	padding:0;
	margin:0;
}

#kScart ul strong, #kScart ul em{
	font-size:0.8em;	
}

#kScart ul li{
	border-bottom:1px solid #e0256a;
	color:#e0256a;
	background-color:rgba(255,255,255,1);
	padding:10px 0 10px 0;

}

#kScart li div{
	padding-left:70px;
	display:inherit;
}

#kScart h2.scart span{
	margin:0;
	background:none;
}

#kScart h2{
	text-transform: uppercase;
    font-size: 1.1rem;
    text-decoration: none;
    color: #fff;
    padding: 24px 60px 0 0px;
    text-align:right;
    line-height: 20px;
    visibility:hidden;
}

#hd .panier p{
	 top:-22px;
	 margin:0;
}

#hd .panier p span, #hd .panier .emptyBasket{
	display:none;	
}

#hd .panier p span.totart{
	display: inline-block;
    background:url(../img/scart_number_bg.png)center center no-repeat;
    padding: 7px 8px 9px 8px;
    color:#fff;
    font-weight:700;
    position:absolute;
    top:0;
    right:-12px;
    font-size:0.7em;
}

#kScart li div.Im{
	padding:0 10px 0 5px;
	width:55px;
	height:auto;
}

#kScart a.sCartOrder{
	position: absolute;
    top: 0px;
    overflow: hidden;
    width: 0px;
    height: 0px;
    display: none;
    padding: 75px 0px 0px 155px;
    margin: 0px;
    background:none;
}

#kShopScart{
	width:100%;
}


/* -- Shop page general -- */
	
.kShop{
	max-width:960px;
	margin:60px auto 60px auto;
}
	
/* -- shop listing with link to details pages -- */

.kProductInfos, .kProductDetailMore{
	background:none;
	text-align:left;
}

.kProduct{
	padding-bottom:30px;
	margin-bottom:40px;
	border-bottom:1px solid rgba(0,0,0,.1);
	-webkit-transition: all 0.3s ease-in;
	-moz-transition: all 0.3s ease-in;
	-ms-transition: all 0.3s ease-in;
	-o-transition: all 0.3s ease-in;
	transition: all 0.3s ease-in;
}

.kProduct:hover{
	border-bottom:3px solid #a12c30;
	cursor:pointer;
	box-shadow:none;
}

.kProduct a:link{
	display:inline-block;
	width:auto;
}

.kProduct img{
	max-width:100%;
	height:auto;
	max-height:150px;
	width:auto;
	float:none;
	display:inline-block;
}

.kProduct u.new{
	margin-left: 90%;
}

.kProductDetail{
	width:100%;
}


#cn .kProductInfos h3, #cn .kProductDetail .kProductDetailInfos h1{
    font-weight: normal;
    font-style: normal;
    font-size: 1.250rem;
    color: #c14142;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.kProduct p.price span, .kProductDetail p.price span,
.kProduct a:link p.price.action .normal, .kProductDetail p.price.action .normal{
    font-weight: normal;
    font-style: normal;
    font-size: 1.4rem;
    color: #c14142;
    margin-bottom: 35px;
    text-transform: uppercase;
    margin-top:5px;
    display:inline-block;
}

/* -- shop product details page -- */

.shop_product .kProductDetailImg{
	width:25%;
	margin-right:5%;
	float:left;
	text-align:left;
}

.shop_product .kProductDetailInfos{
	width:20%;
	float:right;
}

.kProductDetailInfos .mark {
    padding-right:3px;
}

.shop_product .kProductInfos, .shop_product .kProductDetailMore{
	background: none;
    width: 40%;
    float: left;
    margin:0;
    padding:0;
}

/* -- shop listing with all details (without link to see the product details) -- */

/* -- basket pages -- */

.basket h3{
	font-size:1.2em;
	margin:20px 0 10px 0;
}

.messageToSeller textarea#messageOrder{
	width:100%;
}

.basket .content02{
	display:none;
}

.basket a.kButton.continue{
	text-decoration:none;
}

.basket .gender{
	display:inline-block;
	vertical-align:top;
	margin:0 20px 10px 0;
}

.basket label{
	font-weight:400;
}

.basket .container{
	margin-bottom:10px;
}

#content #klikandpay a{
	display:none;
}

/* -- shop confirmation page --*/


/***** 12. Specific pages styles *****/

/* -- homepage (for homepage different from the other pages) -- */  

.home div#hd {
	height:auto;
}

/* comment this to remove the full height image-background : */

.home div#hd{
	height:100%;
}


.home div#header_image_container .header_image_backgroundImage{
	padding:0 0;
	display:flex;
} 

/*/

/* for FIXED BACKGROUND uncomment this :

	.home div#header_image_container .header_image_backgroundImage{
		position:fixed;
		background-position:right top;
	}

*/

/****/

/*** DATABASE ***/

#logoKPA img, .sticky.home #logoKPA img{
	width: 80px;
	height: auto;

	-webkit-transition: all 0.1s linear;
    -moz-transition: all 0.1s linear;
    -ms-transition: all 0.1s linear;
    -o-transition: all 0.1s linear;
    transition: all 0.1s linear;
}

.sticky #logoKPA img {
	width: 80px;
}

.mobile #logoKPA img {
    width: 60px;
}

#id-10 #logoKPA {
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
}

#id-10 #logoKPA img {
    width: 124px;
}

#id-69{
	display: none;
}

.grid{ 
	width: 1500px;
	counter-reset: grid-item;
}

.projektPage .grid{
	margin-top: 40px;
	width:100%;
	max-width:1500px;
	margin:0px auto;
}

div#bd .code.object >div.grid{
	padding-bottom: 50px;
}

.grid-item { width: 300px; }
.grid-item--width2 { width: 400px; }

.grid-item img{
	width: 100%;
	height: auto;
}

div#bd .code.object .grid-item{
	font-size: 1rem;
	line-height: 1.1875rem;
	width: calc(20% - 20px);
	margin:0 10px 20px 10px;
}

div#bd .code.object #kamGallery .grid-item{
	width: calc(50% - 20px);
}


.grid-item ul{
	margin:0;
	width: 100%;
}

.grid-item ul li{
	display: inline-block;
}

.grid-item ul li a, .tag_categories a{
	color: rgba(0,0,0,0.35);
	text-decoration: none;
	font-size: 0.8125rem;
	line-height: 1.125rem;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */
}

.grid-item ul li a{
	margin-right: 5px;
}

.grid-item ul li span, .tag_categories span{
	color: rgba(0,0,0,0.35);
	text-decoration: none;
	font-size: 0.8125rem;
	line-height: 1.125rem;
	font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */
}

.grid-item ul li span{
	margin-right: 5px;
}

.projekt_item{
	width: 100%;
	margin-bottom: 20px;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;

	justify-content:flex-start;
	-ms-flex-pack: left;
}

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

.projekt_item .projekt_item_image{
	width: calc(20% - 20px);
	margin: 0 10px 0 10px;
	background-color: #fff;
}

.projekt_item .projekt_item_image a{
	display: block;
	height: 100%;
	width: 100%;
	line-height: 0;
	background-color: #fff;
}

.projekt_item_image{
	width: 100%;
/*	min-height: 150px; */
	background-size: cover;
	background-position: center center;

	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity  0.2s linear;
	-ms-transition: opacity  0.2s  linear;
	-o-transition: opacity  0.2s  linear;
	transition: opacity  0.2s  linear;
}

a:hover .projekt_item_image{
	opacity: 0.7;
}

.projekt_item_details{
	width: calc(60% - 20px);
	margin: 0 10px 0 10px;
	border-bottom: 1px solid #E6E6E6;
	position: relative;
	padding-bottom: 20px;
    box-sizing: border-box;
}

.projekt_item:last-of-type {
	margin-bottom: 27px;
}

.projekt_item:last-of-type .projekt_item_details{
	border: none;
}

div#bd .code.object >div.projekt-listing_container{
	max-width: 100%;
	margin: 0;
}

.projekt_item_details a, .projekt_item_details a:link, .projekt_item_details a:visited, .newsPage #mainContent .standard.object a.button, .newsPage #mainContent .standard.object a.button:link, .newsPage #mainContent .standard.object a.button:visited{
	position: absolute;
    right: 0;
    bottom: 20px;
    text-decoration: none;
    font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */    
	padding: 0;
    color: #000;
    background-color: transparent;
    margin: 0;
    display: inline-block;
    vertical-align: middle;
}

/* -- Details project -- */

.topbar_right >div{
	margin-bottom:0;
	line-height: 23px;
}

.topbar_right >div{
	padding-top: 10px;
	padding-bottom: 10px;
}

.sticky .topbar_right >div{
	padding-top: 1px;
	padding-bottom: 0;
}

.code .topbar .topbar_right{
	padding: 35px 0 0 0;
}

.sticky .code .topbar .topbar_right{
	padding: 30px 0 28px 0;
}

.code.object .prev_project a, .code.object .next_project a{
	display: inline-block;
	text-decoration: none;
	cursor: pointer;
}

.tag_categories a{
	font-size: 0.875rem;
}

.prev_project a, .next_project a{
    padding-left: 18px;
    background-image: url(../img/previous-arrow.svg);
    background-size: 11px auto;
    background-position: left top 8px;
    background-repeat: no-repeat;
}

.next_project a{
	background-image: url(../img/next-arrow.svg);
}

.prefooter_details .next_project a{
	padding-left: 0;
	padding-right: 18px;
	background-position: right top 8px;
}

.projekt_item_details a.weiterlesen::before, .newsPage #mainContent .standard.object a.button::before {
    content: "";
    width: 11px;
    display: inline-block;
    height: 8px;
    background-image: url(../img/next-arrow.svg);
    background-size: 11px auto;
    margin-right: 5px;
    vertical-align: middle;
}

.prefooter_details .next_project::before{
	display: none;
}


/***/

.topbar_container {
/*	height: 129px;*/
	position: relative;
	z-index: 9;

	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}

.sticky .topbar_container, .mobile .topbar_container {
	height: 136px;
}

.topbar{
/*    padding: 30px 0 31px;*/
	width: 100%;
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	line-height: 0.75rem;

/*	position: fixed;*/
    width: calc(100% - 160px);
    max-width: 1500px;
/*	padding-top: 44px;*/
    height: 136px;
    background: #fff;
    top: 0;

    -webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
}

.sticky .topbar, .mobile .topbar {
	height: 136px;
	padding-top: 0;
}

.topbar >div, .grid #logoKPA{
	margin:0 10px;
	padding: 31px 0 21px 0;
/*
	border-top:2px solid #E6E6E6;
	border-bottom:2px solid #E6E6E6;
*/
	margin-bottom: 44px;
}

.sticky .topbar >div, .sticky .grid #logoKPA{
	border-color: transparent;
}

.sticky .topbar >div.topbar_left {
	padding: 31px 0 21px 0;

}

.mobile .topbar >div.topbar_left,
.mobile .topbar >div {
    padding: 0;
}

.sticky .topbar >div {
	padding: 31px 0 21px 0;
}

.topbar_right,
.prefooter_details .prev_project, .prefooter_details .next_project,
.prefooter_details .no_prev_project, .prefooter_details .no_next_project {
	width: calc(40% - 20px);
}

.topbar_left {
    width: calc(23% - 20px);
}


@media only screen and (min-width: 1500px) {
	.topbar_left {
		width: calc(22.5% - 20px);
	}
}

.prefooter_details .next_project{
	text-align: right;
}

.code.object .topbar_center p {
    padding-bottom: 3px;
}

.code.object .topbar_center p, #cn .code.object .topbar_center h1 {
    line-height: 1.5875rem;
}

.topbar_center {
	width:calc(80% - 290px);
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
    align-content: flex-end;

	align-items: flex-end;
}

.code.object .topbar_center, .footer_col2{
	width:calc(60% - 20px);
}

body.projektPage:not(.projekt_details) .code.object .topbar_center{
	width:calc(70% - 20px);
}


.footer_col2{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content:space-between;
	-ms-flex-pack: justify;
	margin: 8px 10px 0 10px;
}

.home div#bd .code.object, .projektPage div#bd .code.object{
	padding-bottom: 0;
}

.code.object .topbar_center p{
	width: 100%;
	font-size: 1.25rem;
	line-height: 2.875rem;
	margin:0;
	font-weight: 400!important;
}

.code.object .topbar_center p, #cn .code.object .topbar_center h1{
	line-height: 1.5rem;
	margin:0;
}

.sticky .code.object .topbar_center p, .sticky #cn .code.object .topbar_center h1 {
	line-height: 24px;
	font-size: 1.25rem;
}

.second.image.project{
	width: 100%;
	height: auto;
}


#details_projet #mainDetails_project_container .first.image.project{
	background-size: cover;
	background-position: center center;
	width: 100%;
/*	height: 680px; */
}

#details_projet #mainDetails_project_container .second.image.project img{
	max-width: 100%;
	height: auto;
}

#details_projet #kamGallery {
	width: 100%;
	max-width: 1500px;
	padding-top:60px;
}

#details_projet #kamGallery ul{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	margin:0;
	padding:0;

	max-width: 1200px;
	margin:0 auto;
}

#details_projet #kamGallery ul li{
	width: calc(33.33% - 20px);
	margin:0 10px 20px 10px;
	list-style: none;
}

div#bd #details_projet .object.textdivided h2,
div#bd #details_projet .object.textdivided h3,
div#bd #details_projet .object.textdivided h4,
div#bd #details_projet .object.textdivided hr{
  column-span: all;
  margin: 2.0625rem 0 1.375rem 0;
  padding:0;
}

div#bd #details_projet .object.textdivided h4{
	font-size: 1rem;
	line-height: 1.5rem;
}

#details_projet .object.textdivided h3:first-of-type {
	margin-top: 0;
}

.prefooter_details{
	width: calc(100% - 20px);
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex;
	justify-content:space-between;
	-ms-flex-pack: justify;
	align-items: center;
	margin-top: 60px;
}

.prefooter_details a{
	display: inline-block;
}

.tag_categories a{
	padding:0;
}

.prefooter_details{
	padding: 30px 0;
	box-sizing: border-box;
	border-top: 1px solid #E6E6E6;
}


/** intro details **/

#mainDetails_project_container{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	justify-content: center;
	-ms-flex-pack: center;
}

#mainDetails_project_container .image.project{
	width:calc(100% - 20px);
	margin:60px 10px 0 10px;
	text-align: center;
	position: relative;
	padding-top: 60px; 
}

#mainDetails_project_container .first.image.project{
	max-width: 1500px;
	margin-top: 0;
	padding-top: 0;
}

#mainDetails_project_container .image.project img{
	width: 100%;
	height: auto;
	max-width: 100%;
}

#cn .secondaryText h2, #cn .linkListing h2, #cn .secondaryText p, #cn .linkListing p{
	
	width: 100%;
	padding: 0 10px 0 10px;
	margin-bottom: 20px;
	box-sizing: border-box;
}

#cn .secondaryText .object.tiers.column p {
	padding-left: 0;
	padding-right: 0;
}

.secondaryText, div#bd .secondaryText .object.column{

}

#cn .linkListing h2{
	margin:0 0 20px 0;
}

#cn .linkListing ul{
	width: 100%;
	max-width: calc(100% - 20px);	
	margin:0 10px;
	list-style: none;
}

#cn .linkListing ul li a{
	color: rgba(0,0,0,0.35);
	text-decoration: none;
	font-weight: 400!important;
}

/* #cn div#bd #mainContent #mainDetails_project_container .cn.secondaryText {
	margin-bottom: 60px;
} */

#cn div#bd #mainContent #mainDetails_project_container .cn.linkListing {
	padding: 0;
	margin-bottom: 0;
	box-sizing: border-box;
}

div#bd #mainContent #mainDetails_project_container .cn{
	width: 60%;
	margin:0;
}

.intro_details{
	width: 100%;
	padding:0 0;
	margin-bottom: 0;
	position: relative;
}

div#bd .object.separator {
	position: relative;
	margin-bottom: 50px;
}

#details_projet .mainText::before, #details_projet .secondaryText::after, div#ft #footerContent .cn::before, #mainDetails_project_container .image.project:not(.first)::before, .object.separator::before {
	content: "";
	position: absolute;
	left: 10px;
	right: 10px;
	bottom:0;
	width: calc(100% - 20px);
	height: 1px;
	background-color: #E6E6E6;
}

.object.separator::before {
	width: 100%;
	left: 0;
	right: 0;
}

#details_projet .mainText::before, #cn div#bd #mainContent #mainDetails_project_container .cn.linkListing::before, #mainDetails_project_container .image.project::before{
	bottom: auto;
	top:0;
}

#details_projet .mainText::before, #mainDetails_project_container .image.project:not(.first)::before{
	left: 0;
	right: 0;
	width: 100%;
}

div#ft #footerContent .cn::before{
	bottom: auto;
	top: 0;
}

.intro_details >div{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 
	flex-wrap:wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-flow: row wrap;
	margin-bottom: 10px;
}

.intro_details .column{
	width:calc(50% - 20px);
	margin:0 10px;
}

.intro_details span.column{
	padding-right: 100px;
	box-sizing: border-box;
}

.first.image.project, div#bd .mainText, .second.image.project{
	width:calc(100% - 20px);
	margin:0 10px 0 10px;
	padding:0;
}

div#bd .mainText {
	position: relative;
	padding-top: 60px;
	padding-bottom: 0;
	margin-top: 60px;
}

.mainText ul{
	font-family: 'Flama-Light';
	font-weight: 400!important; 
	margin-top: 0;
}

.mainText ul li{}
}

.intro_details .col_right{
	font-weight: 400
}



/***** 13. Powered *****/

div#ft .powered{
	background-color: transparent;
}

/* -- copyright -- */

div#copyright {
	font-size: 0.875rem;
	color:#474747;
	width: auto;
	border: none;
	float: none;
	display: block;
	vertical-align: middle;
	line-height: 1.125rem;
    display: flex;
	font-family: 'Flama-Light';
}

/*
div#copyright :first-child {
    margin-right: 10px
}
*/

div#copyright br {
    display: none;
}

/* -- login kameleo -- */

div#loginAndPowered {
	float:right;
	display: block;
	margin:5px 0 5px 0;
}

div#ft #footerContent .cn .object div#loginAndPowered a{
	margin: 0;
}

div#loginAndPowered{
	width: 163px;
	display: none;
}

.admin div#loginAndPowered{
	width: 130px;
}

body.p-id-6 div#loginAndPowered{
	display: block;
}

a#kPowered {
	padding: 14px 0 0 130px;
}

div#ft div#kLogin {
	padding: 14px 0 0 30px;
	margin: 0;
}

div#kLogin:hover {
	background-color: rgba(0,0,0, .3);
	-moz-box-shadow: 0 0 5px rgba(255,255,255, .5); /* shadow on image */
	-webkit-box-shadow: 0 0 5px rgba(255,255,255, .5);
	box-shadow: 0 0 5px rgba(255,255,255, .5);
}

/* Login light color */

	a#kPowered {
		background: transparent url(../../../../standards/img/login_w.png)  -31px top no-repeat;
	}
	
	div#ft div#kLogin {
		background: transparent url(../../../../standards/img/login_w.png) top left no-repeat;
	}

/* or */

/* Login dark color (comment or uncomment) */
	a#kPowered {
		background: transparent url(../../../../standards/img/login_b.png)  -31px top no-repeat;
	}
	
	div#ft div#kLogin {
		background: transparent url(../../../../standards/img/login_b.png) top left no-repeat;
	}

/**/


/** Formulaires **/

div#confirmationModal{
	max-width: 900px;
	width: calc(100% - 60px);
	margin:0!important;
	transform: translateX(-50%);
}

	
/***** 14. Social medias  *****/

.social{
	text-align: left;
    width: auto;
    display:inline-block;
    vertical-align:middle;
}

#ft .social{
	margin-bottom: 20px;
}

.social ul li{
	display:inline-block;
	vertical-align:middle;
	max-width:40px;
	line-height: 0;
	padding:0px 10px;
	opacity:1;
	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity  0.2s linear;
	-ms-transition: opacity  0.2s  linear;
	-o-transition: opacity  0.2s  linear;
	transition: opacity  0.2s  linear;
}

.social ul li:hover{
	opacity:0.5;
}

.social ul li img{
	max-width:100%;
	height:auto;
}

/***** 15. Mobiles version *****/

/*attention id à ajouter changement langue*/

body.mobile {
    font-size: 87.5%; /* Better to use % here and then rem for the content */
    line-height: 1.25rem; /* Better to use PX here but you could use PX, PT, % or EM */
}

.mobile.p-id-19:not(.projekt_details) .topbar_container {
	margin-bottom: 20px;
}

.mobile.p-id-19 .projekt_item .projekt_item_image {
    display: none; 
}

.mobile .projekt_item_details {
    width: 100%;
}

.mobile div#bd .mainText {
    margin-top: 20px;
    padding-top: 25px !important;
}

.mobile #mainDetails_project_container .image.project {
    margin: 0 10px 0 10px;
    padding-top: 25px;
}

.mobile #details_projet #kamGallery {
    padding-top: 20px;
}

.mobile .projektPage .grid {
    padding-top: 20px;
}

.mobile .prefooter_details .next_project,
.mobile .prefooter_details .prev_project {
    width: 50%;
    line-height: 1.125rem;
}

.mobile .prev_project a, .mobile .next_project a{
	background-size: 11px;
    background-position: left top 5px;
}

.mobile .prefooter_details .next_project a{
	background-size: 11px;
	background-position: right top 5px;
}

.mobile .prefooter_details .next_project strong,
.mobile .prefooter_details .prev_project strong {
	display: block;
}

.mobile .intro_details span.column {
    padding-right: 0;
}

.mobile #mainNav {
    display: inherit !important;
}

.mobile #bloc_menu .menuNav {
    left: 114px;
    top: 0px;
    z-index: 20;
}

.mobile div#mainNavCt {
    padding-top: 40px;
}

.mobile a.menuClose {
    float: none;
}

.mobile #logomobile a {
    background-image: url(../img/logo_new.svg);
    background-position: 20px center;
    background-repeat: no-repeat;
    margin-left: 0px;
    margin-top: 0px;
    height: auto;
	background-size: auto 70px;
    padding: 29px 0 0 130px;
}

.mobile .code .topbar .topbar_right {
    width: calc(100% - 20px);
    padding-top: 0;
}

.mobile .topbar {
	width: 100%;
	height: auto;
	position: relative;
}

.mobile.sticky .topbar {
	position: fixed;
}

.mobile .topbar_left {
	width: 65px;
	width: 100%;
}

.mobile .code.object .topbar_center {
/*	width: calc(100% - 240px);*/
    width: 50%;
}

.mobile.p-id-7 #bd .main_column {
    width: 100% !important;
}

/*
.mobile .code.object .topbar_center h1,
.mobile .code.object .topbar_center p {
    line-height: 1.4 !important;
    font-size: 0.9rem !important;
}
*/

.last.standard {
    border-bottom: none !important;
}

.mobile div#bd .object >div {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
}

.mobile .menuNav.burger {
    right: 11px;
    top: 24px;
}

.mobile #details_projet .topbar >div {
    margin: 0 10px 27px 10px;
}

.mobile .topbar_container >.topbar >.topbar_left,
.mobile .topbar_container >.topbar >.topbar_center {
    margin: 0 20px 27px 20px;
}

/*attention id changement langue*/
.mobile .topbar >div {
    margin: 0 10px 27px 10px !important;

    margin: 0 10px 20px 10px !important;
    border-bottom: 1px solid #E6E6E6;
    padding: 0 0 20px!important;
}
.mobile .topbar .topbar_center {
	margin-bottom: 0!important;
}
.mobile.projekt_details .code.object .topbar_center {
	border-bottom: none;
}
.mobile.p-id-5 #mainContent .object {
    margin: 0 10px;
}
.mobile.p-id-5 #mainContent .content .wrapobject {
    width: calc(100% - 20px);
}

.mobile .intro_details .column {
    width: 100% !important;
}

.mobile .topbar_container {
	height: auto;
}

.mobile #details_projet #mainDetails_project_container .first.image.project{
	height: auto;
	margin-bottom: 20px;
	margin-bottom: 0;
}

/* -- Mobile navigation --*/

.mobile div#mobile-nav div#top-bar{
	background-color:transparent;
	position: relative;
	padding:0;
	height: 88px;
}

.mobile a#togglemenu{
	background-image:url(../img/menu_btn_grey.png);
	background-position:center center;
	background-size:30px auto;
	background-repeat:no-repeat;
	display:block;
	padding:88px 0 0 60px;
	width:0;
	height:0;
	overflow:hidden;
	background-color:transparent;
}

.mobile div#mobile-nav{
	padding:0;
}

.mobile #annexe{
	display: none;
}

.mobile ul#mobileNav{
	top: 88px;
}

.mobile ul#mobileNav, .mobile #mobile-secnav{
	background-color:#000;
	padding:0;
}

.mobile div#bd div#bd_bg #secNav{
	display:none;
}

.mobile #mobile-secnav{
	margin:0;
}

.mobile ul#mobileNav li a, .mobile #mobile-secnav li a{
    text-transform: uppercase;
    font-size: 1rem;
    font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */    
	color: #fff;
    padding: 15px 20px;
    font-style: normal;
    display: block;
    border-bottom:1px solid #fff;
}

.mobile ul#mobileNav li a:hover, .mobile ul#mobileNav li.on a{
	background-color:rgba(0,0,0,0.2);
}

.mobile #mobile-secnav a.showNav{
	padding:10px 20px;
    text-transform: uppercase;
    font-size: 0.8rem;
    margin:0;
    font-family: 'Flama-Bold';
	font-weight: 400!important;
	/* font-weight: 700;	 */    
	color: #fff;
    font-style: normal;
}

.mobile #annexNavCt a.button{
	min-width: 120px;
    padding: 10px;
    text-align: center;
}

.mobile #annexNavCt{
	padding-top: 0;
	right: 10px;
}

.mobile .secNavCt{
	display: none;
}

/* -- languages mobile -- */

.mobile ul#mobileNav li.lan li, .mobile ul#mobileNav li.lan li a{
	display:inline-block;
	line-height:20px;
	border-bottom:none;
}

.mobile ul#mobileNav li.lan li a:hover{
	background-color:#000;
}

/* -- titles mobile -- */

.mobile #cn h1 br, .mobile #cn h2 br{
	display:none;
}

.mobile #cn #bd h2, .blog.mobile #cn h1{
	font-size:1rem;
	line-height: 1.25rem;
	margin-bottom:8px;
}

.mobile #cn h2::before, .mobile #ft h2::before {
    content: '';
    width: 24px;
    height: 30px;
    top: 0;
}

/* -- structures global mobile -- */

.mobile div#bd div#bd_bg, .mobile div#ft #footerContent .cn{
	width: 100%;
	max-width: calc(100% - 20px);
	margin:0 10px;
}

.mobile div#bd div#bd_bg div.cn,
.mobile div#bd #mainContent #mainDetails_project_container .cn{
	padding: 0;
	width: 100%
}

/*attention id changement langue*/
.mobile.p-id-6 div#bd #mainContent,
.mobile.p-id-7 div#bd #mainContent,
.mobile.p-id-11 div#bd #mainContent{
    margin: 0 10px;
}

.home.mobile div#bd div#bd_bg #introContent div.cn{
	justify-content:space-between;
	-ms-flex-pack: justify;
}

.mobile div#hd{
	display:block;
	height:auto;
	margin: 0;
}

.mobile #bd #introContent .cn{
	padding-bottom: 40px;
}

.mobile.blog #bd #introContent .cn{
	padding-bottom: 0;
}

.home.mobile #bd #introContent .cn .object{
	margin:0 0 30px 0;
	padding: 0;
	width: 100%;
}

.home.mobile #bd #introContent .cn .object.first::after{
	display: none;
}

.mobile #hd .topbar{
    z-index: 2000;
    font-size: 0.85rem;
    width: 100%;
    padding-top: 19px;

/*    display: none;*/
}

.mobile .topbar_center h1, .mobile .topbar_center p {
    line-height: 1rem !important;
    font-size: 0.9375rem !important;
    line-height: 1.125rem !important;
    font-size: 1rem !important;
}

.mobile .code.object .topbar_center p {
	padding-bottom: 4px;
}

.mobile #hd .topbar >div {
    margin-bottom: 27px;
}

.mobile #hd #topNav .bottomNav, .mobile #topNav .localisation_top, .mobile #topNav .email_top,
.mobile #hd .bottomNav{
	display: none;
}

.mobile #hd .topbar #logo, .mobile #hd #dateEvent, .mobile #hd .langAndCurrency, .mobile #hd .social{
	display:none;
}

.mobile #topNav {
    background-color: transparent;
    padding: 5px;
}

.mobile #hd div.cn{
	padding: 0;
	margin:0 10px;
}

.mobile #topNav .cn a{
	margin:0;
}


.mobile div#bd .object .wrapobject, .mobile div#bd .object .wrapimg{
	width:100%;
	margin:0;
}

.mobile div#bd .object .wrapimg{
	order:1;
	margin-bottom: 15px;
}

.mobile.newsPage #mainContent .standard.object .wrapimg{
	width: auto;
}

.mobile div#bd .object .wrapobject{
	order:2;
}

.mobile div#bd .object .wrapimg img{
	width: 100% !important;
	height:auto;
	width:auto;
	/*max-height:300px;*/
}

.mobile div#bd .object.porteCTA .wrapimg img{
	width: 100%;
}

.mobile div#bd .object, .mobile div#bd .standard.object {
	padding: 25px 0 15px !important;
	box-sizing:border-box;
	margin-bottom: 0;
}

.mobile.home div#bd .object {
	padding: 0;
}

.mobile.p-id-11 div#bd  .first.image{
    padding: 0;
}

.mobile.p-id-19 #mainContent .first.object {
    padding-top: 0 !important;
}

.mobile #cn div#bd #mainContent div.noMargin.object,
.mobile #bd #mainContent .first.standard{
    padding-top: 0;
}

.mobile.p-id-6 .separator {
    /*display: none;*/
}

.mobile div#bd .object .mapContainer.content >div {
    margin: 0;
    max-width: 100%;
}

.mobile div#bd .code.object >div{
	margin:0;
	width: 100%;
	max-width: 100%;
}

.mobile div#bd .text.object{
	width: 100%;
	margin:0;
}

.mobile div#bd .object.textdivided >div{
	margin:0;
}

.mobile div#bd .image.object.mainColorBg{
	height: 270px;
}

.mobile #colorBgContent{
	border-top:1px solid #d3d3d3;
}

.mobile #colorBgContent .texte_sur_fond_blanc .text.object{
	padding:30px 0;
}

.mobile #cn div#bd .image.object.porteCTA h2{
	left: 0;
	margin-bottom: 0;
	padding: 30px;
    text-align: left;
}

.mobile div#bd .image.object.column_demi img{
	max-width: calc(100% - 20px);
}

.mobile div#bd .object.porteCTA .wrapimg{
	width:100%;
	margin:0;
}

.mobile .anchorList li a{
	padding: 5px 10px;
	font-size:0.9rem;
}

.mobile .anchorList{
	padding: 10px 0;
}

.mobile .topbar #header_right{
	display: flex;
	display: -ms-flexbox; 
	display: -webkit-flex; 

	right: 10px;
	top: -5px;
}

.mobile #mainDetails_project_container .image.project img{
	max-height: 100%;
	margin-bottom: 20px;
}

.mobile #mainDetails_project_container .first.image.project {
    padding-top: 0 !important;
}

/****/

.mobile #bd #prefooterContent{
	margin: 0;
	bottom:0;
}

.mobile #bd #prefooterContent .text.object >div{
	padding: 30px 10px;
}

.mobile #bd #prefooterContent .object h2{
	padding: 0;
}


/***/

.home.mobile div#hd .slider .object >div, .home.mobile  #hd .slider{
	height: auto;
}

.home.mobile div#bd #mainContent .object.porteCTA a.button{
	min-width: 0px;
}

/* -- regions mobile -- */

/***/

.mobile #header_image_container h1{
	top: 0px;
    box-sizing: border-box;
    padding: 0 20px;
    left: 0;
    margin: 0 0 10px 0;
    line-height: 28px;
    font-size: 1.5rem;
}

.mobile div#header_image_container .header_image_backgroundImage{
	background-position: right center;
}

.mobile div#header_image_container, .mobile div#header_image_container, .mobile div#header_image_container .header_image_backgroundImage{
	height:35vw;
	margin:0;
}

.mobile div#header_image_container{
	padding-top:0;
	margin-top:0;
	height: auto;
}

.mobile #cn div#header_image_container .object h2{
	font-size: 2rem;
	margin-bottom: 20px;
	line-height: 42px;
}

/****/


.mobile #bd .main_column{
	padding-top: 19px;
    -webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s  linear;
	-o-transition: all 0.15s  linear;
	transition: all 0.15s  linear;
}

.mobile.home #bd .main_column{
	padding-top: 5px;
}

.mobile.sticky #bd .main_column {
	padding-top: 0;
}

.mobile div#bd .object a.button::after, .mobile #cn .blog a.readmore::after{
	margin: 0px 0 0px 10px;
}

.mobile.newsPage #cn u, .mobile.newsPage #cn .object u {
	font-size: 0.875rem;
}

.mobile.newsPage p {
	margin: 0;
}

.mobile.newsPage p:last-of-type {
	margin-bottom: 5px;
}

.mobile.newsPage #mainContent .standard.object a.button, .mobile.newsPage #mainContent .standard.object a.button:link, .mobile.newsPage #mainContent .standard.object a.button:visited{
	position: relative; 
	right: auto;
	bottom: 0;
	margin: 15px 0 10px;
	display: block;
	text-align: left;
}

.mobile .navPost-back a{
	color:#2E3D4A;
}

.mobile .navPost-prev a, .mobile .navPost-next a{
	float:left;
	padding:8px 10px;
	font-size: 0.8rem
}

.mobile .navPost-back a, .mobile .navPost-prev a, .mobile .navPost-next a{
	color: #000;
}

.mobile .navPost-back a:hover{
	text-decoration: underline;
}

.mobile .navPost-prev a:hover, .mobile .navPost-next a:hover{
	text-decoration: underline;
}

.mobile .navPost-prev{
	float:left;
	padding:0;
}

.mobile .navPost-next{
	float:right;
	padding:0;
}

/** Homepage mobile **/

.mobile div#bd div#bd_bg .container_first_object >div.smallSize{
	width:100%;
}

.mobile.home div#header_image_container, .mobile.home div#header_image_container .header_image_backgroundImage{
	height:auto;
	min-height:100px;
}

.mobile .header_image_backgroundImage .object{
	color: #fff;
    position: static;
    padding: 0;
    margin: 0;
    width: 100%;
    font-size: 1.1rem;
    line-height: 24px;
    max-width: 100%;
    max-width:100%;
}

.mobile #cn #header_image_container h1{
	font-size: 1.5rem;
	line-height: 2rem;
}

.home.mobile div#bd #mainContent{
	padding-bottom:0;
}

.mobile.home #header_image_container {
	padding: 15px 20px;
	font-size: 1rem;
}

.home.mobile div#bd #mainContent .cn::after{
	width:calc(100% - 220px);
}

.home.mobile div#bd div#bd_bg #mainContent div.cn{
	padding:0 0 30px 0;
}

.mobile #cn h1{
	margin-bottom: 0;
}

.mobile #cn #introContent h1{
	margin-bottom: 20px;
}


.home.mobile div#bd .object.column_demi{
	width: 100%;
	text-align: center;
	padding:0 0 20px 0;
}

.home.mobile div#bd .object.column_demi >div{
	margin: 0 auto;
    width: auto;
    display: inline-block;
}

/** Shop **/

.mobile .kShop{
	width:100%;
	box-sizing:border-box;
	padding:0 20px;
}

/** formulaire **/
	
.mobile .container.buttons #btSubmit{
	width:auto!important;
	height:auto!important;
	padding:8px 10px!important;
}

.mobile form .container.buttons::after{
	top:-5px;
}

.mobile form .container.buttons{
	position:relative;
}

/* -- Footer mobile -- */

.mobile div#ft div.cn{
	padding:25px 10px;
}

.mobile div#ft #footerContent{
	padding:0;
}

.mobile div#ft #footerContent .cn .object{
    width: calc(100%/2 - 20px);
    margin: 0 20px 0 0;
	box-sizing:border-box;
	max-width: 100%;

	font-size:0.875rem;
	line-height: 1.25rem;
}

.mobile div#ft #footerContent .cn .object h2{
	margin-bottom: 0;
}


.mobile div#ft .footerNav{
	width:100%;
	float: right;
	text-align:left;
}

.mobile strong#logo_footer{
	display:inline-block;
	vertical-align:top;
	margin:0;
	width: 25%;
}

.mobile .footer_col2{
	width: 75%;
	margin:0;
}

.mobile strong#logo_footer a{
	position:static;
	margin:0;
	background-position:center; top;
	background-size: 100% auto;
	float:left;
}

.mobile div#ft #footerContent .cn .object.powered{
	margin: 0;
	padding: 0;
	text-align: left;
    width: 100%;
    float: left;
    min-height: 10px;
}

.mobile div#bd .code.object #kamGallery .grid-item {
    width: 100%;
}

.mobile #kamGallery {
    margin: 0 auto 10px auto;
}

.mobile div#bd .code.object .grid-item {
    margin: 0 10px 20px;
    width: calc(100% - 20px);
    font-size: 0.875rem;
    line-height:1.25rem;
}

.mobile .code.object .grid {
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
}

.mobile div#ft .footerNav ul li a{
	font-size: 0.8rem;
}

.mobile #id-10 #logoKPA img {
    width: 94px;
}

.mobile .social{
	text-align: right;
    width: 100%;
    float: left;
    display: block;
    box-sizing: border-box;
    padding: 0;
}

.mobile .grid #logoKPA, #id-10 #logoKPA {
    padding: 14px 0 10px 0;
    border-top: 0;
}

.mobile div#ft #goTop{
	z-index: 20;
	top: 0px;
	bottom:auto;
}

.mobile div#ft #footerBg{
	padding:30px 0 40px 0;
}

/* -- blog mobile -- */

.blog.mobile div#bd #mainContent{
	padding-top:0;
}

.blog.mobile .blog a.readmore{
	padding: 10px 10px;
}

.blog.mobile #cn div#bd .object.blog{
	padding:0px 0px 40px 0;
}

.blog_details.mobile div.detail{
	width:100%;
}

.blog.mobile #cn div.blog .details{
	float:none;
	width:100%;
	text-align:left;
}

.blog.mobile #cn div.blog h2 {
    margin-bottom: 10px;
    float: none;
    width: 100%;
}

.blog.mobile #cn div.blog img{
	margin-bottom:20px;
	margin-right: 20px;
	max-width:50%;
}

.blog.mobile #cn .blog a.readmore{
	margin-left:0;
}

.blog.mobile div#bd .object.blog .content img{
	max-width: 100%;
	margin: 0 0 20px 0;
	float:none;
}

.blog.mobile div#bd .object.blog .content{
	width:100%;
}


/* blog details mobile */

.blog_details.mobile div#bd .object .wrapimg{
	width:100%;
	margin-bottom:0px;
}

.blog_details.mobile .blog.detail.object div.detail{
	padding:0;
}

.blog_details.mobile div#bd .object.blog .content .wrapimg img{
	max-height:500px;
	max-width:100%;
	margin: 0;
}

.blog_details.mobile .multimedia.object iframe{
	max-height: 470px;
}

/** home blog list **/

.home.mobile div#bd .bloglist.object{
	padding:40px 20px 60px 20px;
}

.mobile div#bd #mainContent .bloglist.object.first{
	padding-top:40px;
}

.home.mobile .bloglist.object .blog img{
	max-height: 27vw;
	width:auto;
}

/** event **/

.event_details.mobile div#bd .object .wrapimg{
	width:100%;
}

.addthis_sharing_toolbox{
	padding-top: 40px;
}

/* Slider mobile */

.mobile .slider{
	display:block;
	width:100%;
}

.mobile #cn .slider h2{
	font-size: 1.625rem;
	line-height: 32px;
}

.mobile #hd .slider .object .wrapobject{
	font-size: 1.25rem;
}

.mobile div#bd .slider .object{
	width:100%;
	box-sizing: initial;
	margin:0;
}

.mobile div#bd .slider .object >div{
	width:auto;
	max-width:100%;
}

.mobile.home .bloglist.object .blog .header{
	text-align: left;
}

.mobile div#bd .slider_sponsors .object{
	padding:0;
}

/* table */

.mobile div#bd #mainContent table{
	width:100%;
}

.mobile div#bd #mainContent .table_scroll{
	overflow-x:auto;
	overflow-y:hidden;
}

/** mobile newsletter **/

.mobile .newsletterContent .form.object fieldset{
	float:left!important;
}

.mobile .newsletterContent .container.buttons #btSubmit{
	padding: 5px 12px!important;
    height: 42px!important;
}

.mobile .newsletterContent form.kSiteForm input.text{
	height: 42px!important;
}

.mobile .newsletterContent{
	margin-bottom:20px;
}

/** blue circle header **/

.mobile #hd .object .wrapobject::after{
	width: 80vw;
	height: 80vw;
	background-size: 100% auto;
	min-width: 600px;
	min-height: 600px;
}

.mobile #hd .slider .object .wrapobject{
	max-width: 50vw;
	min-width: 300px;
}

/***/

.mobile .code.object .topbar_center, body.mobile.projektPage:not(.projekt_details) .code.object .topbar_center, .mobile .topbar_center {
	width: 100%!important;
}

.mobile div#copyright {
	font-size: 0.75rem;
}

.mobile .prefooter_details {
	margin-top: 15px;
}

/** Mediaqueries **/



@media only screen and (max-width: 1950px){
	div.cn, div#bd div#bd_bg{
		width: calc(100% - 160px);
		max-width:1500px;
		margin:0 80px;
	}

	div #bloc_menu{
		margin-left: 180px;
	}
}


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

	div#bd .code.object .grid-item{
		width: calc(25% - 20px);
	}

	/* .topbar_left, .topbar_right, .projekt_item .projekt_item_image{
		width: calc(270px - 20px);
	} */

	.topbar_center {
		width: calc(80% - 290px);
	}

	.code.object .topbar_center{
		width: calc(100% - 560px);
	}

	body.projektPage:not(.projekt_details) .code.object .topbar_center{
		width: calc(100% - 290px);
	}

	.projekt_item_details{
		width: calc(100% - 290px);
	}

	div#bd .object.tiers, div#ft .object.tiers {
    	width: calc(100%/3 - 20px);
		max-width: calc(100%/3 - 20px);
	}

	#details_projet .mainText::after{
		width: 100%;
		left:0;
		right:0;
	}

	div#bd #mainContent #mainDetails_project_container .cn{
		width: 80%;
	}
}

@media only screen and (max-width: 1300px){
	div #bloc_menu {
	    margin-left: 0px;
	}

	div.cn, div#bd div#bd_bg, div#ft #footerContent .cn{
	    width: calc(100% - 120px);
	    margin: 0 60px;
	}

	.topbar {
		width: calc(100% - 120px);
	}

	.menuNav.burger{
		right: -50px;
	}	

	.code.object .prev_project a, .code.object .next_project a{
		font-size: 0.75rem;
	}

	div#bd .code.object .grid-item{
		width: calc(33.33% - 20px);
	}

	#bd .main_column{
		width: 100%;
		margin:0;
	}
    
/*
    #bd .main_column {
        margin-top: 136px;
        background-color: blue;
    }
*/
    
/*
     .p-id-2 #bd .main_column {
        margin-top: 0;
    }
*/

	.code .topbar .topbar_right{
		display: none;
	}

	.code.object .topbar_center{
		width: calc(100% - 290px);
	}

	div#bd .code.object #kamGallery .grid-item {
	    width: calc(50% - 20px);
	}
}

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

	/* div.cn, #bd div.cn.titlePage, #introContent div.cn, #mainContent div.cn, #prefooterContent div.cn, div#ft #promesseContent div.cn{
		max-width: 100%;
		width: 100%;
		margin:0;
	} */

	#cn h1, div#bd .object.textdivided h2{
		width: 100%;
		max-width: 100%;
	}

	/* div#bd .object >div, .slider_sponsors, .code.object .grid{
		width: 100%;
		max-width: calc(100% - 20px);
		margin-left: 10px;
		margin-right: 10px;
	} */

	div#bd .code.object #details_projet{
		margin:0;
	}

	div#bd .object.column_demi >div, div#bd .object.porteCTA >div,
	div#ft .object.column_demi >div, div#ft .object.porteCTA >div{
		max-width: 100%;
		margin: 0;
	}

	 div#bd .object .event-list-container,.home div#bd .bloglist.object >div{
	 	margin:0;
	 	max-width: 100%;
	 }

	 .menuNav.burger{
	 	right: 5px;
	 }


	.code.object .topbar_center{
	 	order:3;
	 	width: calc(100% - 310px);
	}

	
}


@media only screen and (max-height: 900px){
	div#bd{
		background-position: center top 100px;
	}
}


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

	div#bd .code.object .grid-item{
		width: calc(50% - 20px);
	}

	div#bd .code.object #kamGallery .grid-item{
		width: calc(100% - 20px);
	}

	.mobile div#ft .footerNav{
		float:none;
		width:100%;
		text-align:left;
	}

	.mobile div#ft #footerContent .cn #stayConnected{
		width: 100%;
	}

	.mobile .social, .mobile div#ft #footerContent .cn #stayConnected{
		text-align: left;
	}

	.mobile div#bd .object.textdivided >div {
	    -webkit-columns: 1;
	    -moz-columns: 1;
	    columns: 1;
	    -webkit-column-gap: 0;
	    -moz-column-gap: 0;
	    column-gap: 0;
	}

	.home.mobile div#bd div#bd_bg #mainContent div.cn{
		padding-top: 0;
	}

	.home .bloglist.object .blog, .home.mobile .bloglist.object .blog .blogListTitle,
	.event-list-container .event{
		width:100%;
		padding:0;
		max-width: 500px;
	}
}
	
@media only screen and (max-width: 650px){
	
	div#bd .code.object .grid-item{
		width: calc(100% - 40px);
	}
	
	.mobile.home .bloglist.object .blog .header, .home .bloglist.object .blog .content,
	.home.mobile #cn .bloglist.object .blog .blogListTitle em, .home.mobile #cn .bloglist.object .blog .blogListTitle h3{
		text-align: center;
		padding:0;
	}

	.home.mobile #cn .bloglist.object .blog .blogListTitle h3{
		width: 100%;
	}

	.mobile #cn #header_image_container .object h2{
		font-size: 1.25rem;
    	margin:0px;
    	line-height: 30px;
    	padding: 0;
	}

	.mobile div#header_image_container, .mobile div#header_image_container, .mobile div#header_image_container .header_image_backgroundImage, .mobile #bd .header-image-textBlock{
	    height: auto;
	    min-height: 0px;
	}

	.mobile div#bd .object.column, div#bd .object.column_demi{
		width:100%;
	}

	.mobile div#bd .image.object.column_demi img{
		max-width:100%;
	}

	.home.mobile #bd #introContent .cn .first.object{
		font-size: 1rem;
		line-height: 1.5rem;
	}

	.mobile div#bd #mainContent .object.column_demi, .mobile div#bd #mainContent .object.porteCTA,
	.mobile div#ft .object.column_demi, .mobile  div#ft .object.porteCTA{
		width:100%;
		margin:0 0 30px 0;
		padding:0 0 50px 0;
		box-sizing:border-box;
		vertical-align:top;
	}

}

@media only screen and (max-width: 550px){
	.mobile div#bd .object .wrapimg{
		width:100%;
	}
	
	.wrapobject{
		width:100%;
		float:none;
	}
	
	.mobile div#bd .object.column{
		width:100%;
		max-width:100%;
		padding-top:0;
	}
	
	.mobile div#bd .object.textdivided >div {
	    -webkit-columns:1;
	    -moz-columns: 1;
	    columns: 1;
	    -webkit-column-gap:0;
	    -moz-column-gap: 0;
	    column-gap:0;
	    text-align: left;
	}

	.mobile div#bd .image.object.mainColorBg{
		margin-bottom:40px;
	}

	.mobile .multimedia.object iframe{
		height:240px;
	}

	div#ft #goTop a{
		background-image: none;
		padding:10px 0;
		font-size: 0.75rem;
	}

	.home #bd #introContent .cn .object.first::after{
		display: none;
	}

	.home #bd #introContent .cn .standard.object .wrapobject, .home #bd #introContent .cn .standard.object .wrapobject h2,
	.home #bd #introContent .cn .standard.object .wrapimg{
		text-align: left;
		padding: 0;
	}
}


@media only screen and (max-width: 490px){
	
	.blog.mobile #cn div.blog img{
		margin-bottom:0;
		margin-right: 0;
		max-width:100%;
		width:auto;
		float:none;
	}

	.mobile .newsletterContent{
		width:100%;
	}

	.mobile .navPost-prev, .mobile .navPost-next{
		width: 100%;
		display: block;
	}

	.mobile .navPost-prev{
		margin-bottom: 15px;
	}
}

@media only screen and (max-width: 470px){
	.mobile div#ft #footerContent .cn .object{
		width: 100%;
		padding: 20px 0 0 0;
	}

	.mobile div#ft #goTop{
		top:30px;
		bottom:auto;
	}

	#ft .newsletterContent h2{
		margin-bottom:10px;
	}
	
	.mobile .social{
		text-align: left;
	}
}
