html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, 
p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, 
img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, hr, 
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, 
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figure, figcaption, hgroup, 
menu, footer, header, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	box-sizing:border-box;
}
strong {font-weight: bold;}
body, html {
	width:100%;
	background:#FFF;
}
html, input, select, textarea {
	font-family: "Lato", sans-serif;
	color:#4c4d4f;
	font-size:1em;
	line-height: 1.4em;
	font-weight: 300;
}
    

a:focus { 
	outline:0;  /* Enlève le pointille sur les liens (notamment visible sur les supports mobiles*/
}

div#global {
	position:relative;
	height:100%;
	background:#FFF /*url("../img/public/contenu_fond_bg.png") no-repeat bottom right*/;
}
.general_content {
	width:92%;
	max-width:1600px;
	padding:0;
	margin:0 auto;
	/*display:table;*/ /* enlever le 05/10/2023 car cela genait la gestion du overflow-x pour les tableaux (table dans le contenu) trop large*/
	/*display: inline-table;*/
	position:relative;
}


/* HEADER */


div#header_top {position:relative; width:100%; margin:0; padding:8px 0; display:table; background:#1e1e1e;}
div#header_top_menu_content {position:relative;display:table;max-width:1400px;}
div#header_top_menu {position:relative; float:right;width:410px;display:table;}
div#header_top_menu p {float:left;font-size:1em;font-weight:400; color:#FFF;}
div#header_top_menu a { color:inherit; text-decoration:none; padding:15px 20px 15px 35px;}
div#header_top_menu p.header_top_demarche a { background:url(../img/public/picto_top_demarche.png) center left no-repeat;}
div#header_top_menu p.header_top_agenda a { background:url(../img/public/picto_top_agenda.png) center left no-repeat;}
div#header_top_menu p.header_top_recherche a { background:url(../img/public/picto_top_recherche.png) center left no-repeat;}


div#header_cadre {position:fixed; z-index:99; width:100%; min-height:115px;margin:0; padding:0; top:0; display:table; background:#fff; border-bottom:4px solid var(--cg_orange);}
div#header_cadre_bottom {position:relative; height:189px;}



div#header_logo {position:absolute; width:400px; top:42px; padding:0; z-index:101; overflow:hidden;}

div#header_logo img { width:auto; max-width:100%;}

div#header_logo_left {float:left;width:50%;}
div#header_logo_right {float:right;width:50%;padding:60px 0 0 0;text-align: right;}

div#header_logo_left img {max-width:210px;}

div#header_logo_right img {max-width:161px;}

header {position:relative; float:right; display:table; padding:51px 0;margin:0; width:calc(100% - 500px);}


div#header_content {position:relative;width:100%;margin:0 auto;}


div#header_right {position:relative;width:100%;}



/* MENU */

div#header_nav{width:100%; margin:0; padding:0;}
div#header_nav_content {width:100%;}


div#menu_cadre {
	position:relative;
	float:right;
	width:100%;
}

div#menu{
	position:relative;
	width:100%;
	margin:0 auto;
	font-family: 'Lato', sans-serif;
}

/* aspect menu au scroll */
.header_scroll div#header_cadre {min-height:90px;}
.header_scroll div#header_logo {display:block;width:450px;}
.header_scroll header {padding:5px 0 25px 0; width:calc(100% - 500px);}

.header_scroll div#header_logo_left img {max-width:105px;}
.header_scroll div#header_logo_right {padding:25px 0 0 0;}
.header_scroll div#header_logo_right img {max-width:100px;}



/* MENU RESPONSIVE */


div#header_responsive {display:none;position:relative;float:right;width:130px;}

#menu_responsive {font-size:1em; font-weight:300;}

.header_scroll .menu_item_name {color: var(--cg_orange);}
.header_scroll .menu_item_picto a.picto_menu_r::before, .header_scroll .menu_item_picto a.picto_menu_r::after, .header_scroll .menu_item_picto a.picto_menu_r span { background:var(--cg_orange);}

#header_coord_r {
	padding:0 10px 15px 20px;
	margin:15px 0 0 0;
}

#header_coord_r p { padding:5px 0 5px 40px;margin:5px 0;width: 100%;}
#header_coord_r p.header_coord_nom {padding:5px 0 5px 0;}
#header_coord_r a { color:inherit; text-decoration:none;}

.menu_list_r .mm-navbar.menu_r_titre {
	padding:0 10px !important;
	border-bottom-style:none;
}
.menu_list_r li.niveau1 {font-size:0.9em;padding:5px 0 5px 0;color:#243746;}
#menu_responsive li.niveau2, #menu_responsive li.niveau3, #menu_responsive li.niveau4 {font-size:0.9em;padding:10px 0;}
.menu_list_r li.niveau1:hover, .mm-listview li:hover {background:#e4e3e3;}

#header_social_r:hover, #header_coord_r:hover {background:none;}


.menu_avec_picto {position:relative;width:100%;overflow:hidden; padding:10px 0 10px 50px;}

p.header_coord_adresse {font-size:0.9em;
	background:url(../img/public/footer_adresse.png) left center no-repeat;
	background-size:26px;color:#243746;
}
p.header_coord_tel {font-size:0.9em;
	background:url(../img/public/footer_tel.png) left center no-repeat;
	background-size:26px;color:#243746;
}
p.header_coord_mobile {font-size:0.9em;
	background:url(../img/public/footer_tel.png) left center no-repeat;
	background-size:26px;color:#243746;
}
p.header_coord_mail {font-size:0.9em;
	background:url(../img/public/footer_email.png) left center no-repeat;
	background-size:26px;color:#243746;
}

#header_social_r {
	overflow:hidden;
	padding:0 10px 15px 20px;
	margin:15px 0;
}

div#header_social {
	position:relative;
	float:right;
}
p.header_social_img {
	float:left;
	width:26px;
	height:26px;
	margin: 0 14px 0 0;
	padding:0;
}
p.header_social_img img {	
	filter: grayscale(1);
	-webkit-filter: grayscale(1); /* Safari 6.0 - 9.0 */
	-moz-filter: grayscale(1);
    -o-filter: grayscale(1);
    -ms-filter: grayscale(1);
}
p.header_social_img img:hover {
	filter: grayscale(0);
	-webkit-filter: grayscale(0); /* Safari 6.0 - 9.0 */
	-moz-filter: grayscale(0);
    -o-filter: grayscale(0);
    -ms-filter: grayscale(0);
}


/* MIDDLE */
div#middle {padding:0; overflow: hidden;}
div#middle_content {
	margin:0 auto;
	padding:0 0 0 0;
}
.contenu {
    position: relative;
    margin: 0 auto;
    overflow: hidden;
}

div#page_context {position:relative; margin:20px auto; padding:30px 0; background:url(../img/public/context_title_background.jpg) center no-repeat;}
div#page_context a {text-decoration:none; color:inherit;}
.context_title {color:#023247; font-size:1.4em; font-weight: bold; text-transform: uppercase; float:left; margin:4px 10px 0 0;}
div#page_context p.context_sstitle {color:#FFF; font-size:1.6em; font-weight: bold; text-transform: uppercase; float:left;}


.h1_cadre {position:relative;width:100%;padding:10px 0 20px 0;margin:0; text-transform:uppercase;}


/* FIL ARIANE */
.fil_ariane {position:relative;margin:0 auto; padding:8px 20px 5px 20px;font-size:0.9em;text-align:right;background:#ededed;}
.fil_ariane a {position:relative;width:100%; text-decoration: none; color:#1e1e1e;}
.fil_ariane a:hover { color:var(--cg_orange);}
/*.ariane_actif {font-weight:bold;}*/
.ariane_classic {color:#1e1e1e;}
.ariane_sep {color:#1e1e1e;}
.ariane_menu_end {font-weight:bold;}

/* DERNIERES ACTUALITES*/


div#blog_cadre {position:relative; margin:25px auto;width: 92%;max-width: 1600px;}

div#blog_title {margin:0 0 20px 0;}

div#blog_list {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
}

.blog_list_item {grid-column:span 1;}

.blog_list_item.blog_first {padding-right:50px;}
.blog_list_item.blog_other {padding-left:50px;}

.blog_vignette {overflow:hidden; border-radius: 0.3em;}
.blog_vignette img {
    max-width: 100%;
    border-radius: 0.3em;
    width: 100%;
    object-fit: cover;
    object-position: top;
	-webkit-transition: all 1.5s ease; /* Safari et Chrome */
	-moz-transition: all 1.5s ease; /* Firefox */
	-ms-transition: all 1.5s ease; /* Internet Explorer 9 */
	-o-transition: all 1.5s ease; /* Opera */
	transition: all 1.5s ease;
}
.blog_first .blog_vignette,
.blog_first .blog_vignette img {height:545px;}
.blog_other .blog_vignette,
.blog_other .blog_vignette img {width:271px;height:200px;}

.blog_item_hide {display:none;}

.blog_item a {text-decoration:none; color:inherit;}
.blog_other .blog_item {margin:0 0 40px 0;}


.blog_item:hover .blog_vignette img {
	-webkit-transform:scale(1.10); /* Safari et Chrome */
	-moz-transform:scale(1.10); /* Firefox */
	-ms-transform:scale(1.10); /* Internet Explorer 9 */
	-o-transform:scale(1.10); /* Opera */
	transform:scale(1.10);
}




.blog_tag {margin:0 0 0 25px !important;}
.blog_info {position:relative;}
.blog_txt {background:#fafafa; padding:40px 25px 25px 25px; margin:-15px 0 0 0;}
.blog_first .blog_info {margin:-90px 0 0 0;width:80%;}
.blog_other .blog_info {margin:-120px 0 0 30%;width:70%;}

.blog_nom {font-size:1.4em; font-weight:bold;margin:0 0 10px 0;}
.blog_resume {font-size:1em; text-align:justify;}


.blog_item:hover .blog_vignette img {
	-webkit-transform:scale(1.10); /* Safari et Chrome */
	-moz-transform:scale(1.10); /* Firefox */
	-ms-transform:scale(1.10); /* Internet Explorer 9 */
	-o-transform:scale(1.10); /* Opera */
	transform:scale(1.10);
}
.blog_item:hover .blog_txt {background:#000;}
.blog_item:hover .blog_nom {color:var(--cg_orange);}
.blog_item:hover .blog_resume {color:#FFF;}

div#blog_voir_plus {position: relative; margin:25px auto 0 auto;}
div#blog_voir_plus a {text-decoration:none; font-size:1.2em; font-weight:400; display:table; margin:0 auto;}




/* SLIDER AGENDA */

div#agenda_cadre {
	position:relative;
	margin:0 auto;
	padding:50px 0 100px 0;
	background:url('../img/public/agenda_bg_top.jpg') center top no-repeat,url('../img/public/agenda_bg_bottom.jpg') center bottom no-repeat,#fde9d2;	
}
div#agenda_title {text-align: center; margin:40px 0;}
div#agenda_list .bx-wrapper {padding:0 90px 50px 90px !important;}

div#agenda_list .bx-wrapper .bx-pager, div#agenda_list  .bx-wrapper .bx-controls-auto {
    bottom: 0 !important;
	max-width: calc(100% - 180px);
}

.bx-wrapper .bx-controls-direction a {top: calc(50% - 70px) !important;}

div#agenda_list .bx-wrapper .bx-prev {
	left: 20px;
	width:60px;
	height:140px;
	background: url('../img/public/slider_arrows_prev.png') center left no-repeat;
	background-size:100%;
	opacity: 0.5;
}
div#agenda_list .bx-wrapper .bx-prev:hover,
div#agenda_list .bx-wrapper .bx-prev:focus {
	background: url("../img/public/slider_arrows_prev.png") center left no-repeat;   
	background-size:100%;
  	opacity: 1;
}
div#agenda_list .bx-wrapper .bx-next {
	right: 20px;
	width:60px;
	height:140px;
	background: url("../img/public/slider_arrows_next.png") center right no-repeat;
	background-size:100%;
	opacity: 0.5;
}

div#agenda_list .bx-wrapper .bx-prev {left: 15px;}
div#agenda_list .bx-wrapper .bx-next {right: 15px;}

div#agenda_list .bx-wrapper .bx-next:hover,
div#agenda_list .bx-wrapper .bx-next:focus {
	background: url("../img/public/slider_arrows_next.png") center right no-repeat;
	background-size:100%;
	opacity: 1;
}


div#agenda_list {max-width:1600px; margin:0 auto;}
.agenda_item {padding:0 15px;}
.agenda_item a {text-decoration:none; color:inherit;}
.agenda_vignette {overflow:hidden; border-radius: 0.3em;}
.agenda_vignette img {
    max-width: 100%;
    border-radius: 0.3em;
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: center;
	-webkit-transition: all 1.5s ease; /* Safari et Chrome */
	-moz-transition: all 1.5s ease; /* Firefox */
	-ms-transition: all 1.5s ease; /* Internet Explorer 9 */
	-o-transition: all 1.5s ease; /* Opera */
	transition: all 1.5s ease;
}

.agenda_item:hover .agenda_vignette img {
	-webkit-transform:scale(1.10); /* Safari et Chrome */
	-moz-transform:scale(1.10); /* Firefox */
	-ms-transform:scale(1.10); /* Internet Explorer 9 */
	-o-transform:scale(1.10); /* Opera */
	transform:scale(1.10);
}

.agenda_info{margin:-15px 0 0 0; padding:0 10px;}

.tag_item {position:relative;display:table;background:#f7931d;border-radius:0.1em; width:auto; margin:0 0 20px 0;padding:0;}
.tag_item:before {content: "";position:absolute;width:20px; height:20px;bottom:-14px;background:url('../img/public/tag_bottom.png') bottom left no-repeat;}
.tag_item a { padding:5px 10px 3px 10px;display:table; text-decoration:none; color:#FFF;font-size:0.9em;}

.agenda_date {color:var(--cg_orange);font-weight:bold;}
.agenda_nom {font-size:1.2em; font-weight:bold;}

.agenda_item:hover .agenda_date {color:#000;}
.agenda_item:hover .agenda_nom {color:var(--cg_orange);}

div#agenda_voir_plus {position: relative; margin:25px auto 0 auto;}
div#agenda_voir_plus a {text-decoration:none; font-size:1.2em; font-weight:400; display:table; margin:0 auto;}


/* GOOGLE MAP */
div#map_titre {color:#FFF;font-size:1.4em;margin:15px auto;width:100%;text-align:center;}
div#map {
	position:relative;
	height:400px;
	width:100%;
	z-index:1;
}

div#gm_infobulle {
	width:200px;
	overflow:hidden;
	text-align:center;
}
.gm_nom {
	font-size:1.2em;
	margin:5px 0;
	font-weight:500;
}

/*div#gm_infobulle img { width:100%;}*/

.gm_tel {font-size:1.3em;font-weight:600;}


/* FOOTER */

footer {width:100%;padding:0;margin:50px auto 0 auto; background:#231f20;}

div#footer_sitemap {padding:50px 0; color:#FFF; background:url(../img/public/footer_bg.jpg) center no-repeat;}

div#footer_top {position:relative; width:100%; padding:35px 0; margin:0 auto; background:var(--cg_bleu);}

div#footer_sitemap_content {display:grid;grid-template-columns:repeat(4, 1fr);grid-column-gap: 30px; grid-row-gap: 30px;}
.footer_sitemap_column {grid-column:span 2; font-size:1.1em; max-width:450px;}

.footer_sitemap_title { font-size:1.3em; font-weight:bold; text-transform: uppercase; margin:0 0 25px 0;}
.footer_sitemap_title:after {
    content: "";
    position: relative;
    width: 50%;
	max-width:100px;
	left:0;
	bottom:-7px;
	border-bottom:4px solid #FFF;
	transform: scaleX(1);  
  	transition: transform 150ms ease-in-out;
	display:table;
}

.footer_menu_niveau1 a {text-transform: uppercase; margin:0 0 6px 0;}
.footer_menu_niveau1 a:after {
    content: "";
    position: relative;
    width: 50%;
	left:0;
	height:2px;
	transform: scaleX(0);  
  	transition: transform 150ms ease-in-out;
	display:table;
	border-bottom:3px solid #FFF;
	
}
.footer_menu_niveau1 a:hover:after {transform: scaleX(1);} /* apparition du border à partir du milieu */


.footer_menu_item a {color:inherit; display:table; text-decoration:none;}

.footer_contact_info {margin:25px 0 0 0;}


div#footer_legal {width:100%; padding:10px 60px; margin:0;font-size: 0.9em;color:#FFF;}
div#footer_legal_link {position:relative;overflow: hidden; text-align: center;}
div#footer_legal_link a {color:#FFF; text-decoration:none;}


@media screen and (max-width : 1350px) {
	div#header_logo { width:380px;}
	.header_scroll div#header_logo { width:250px;}
	header, .header_scroll header {width:calc(100% - 420px);}
	div#header_logo_right img {	max-width: 140px;}
}
@media screen and (max-width : 1250px) {
	
	div#header_logo { width:250px;top: 44px;}
	div#header_logo_left img {	max-width: 105px;}
	div#header_logo_right {padding:25px 0 0 0;}
	div#header_logo_right img {	max-width: 100px;}
	header, .header_scroll header {width:calc(100% - 300px);}
	header {padding:5px 0 25px 0;}
	
	div#header_cadre_bottom { height: 117px;}
	
}
@media screen and (max-width : 1100px) {	
	
	div#footer_menu {padding:60px 0 0 0;}
	
}
@media screen and (max-width : 1000px) {
	
	div#header_logo {top: 40px;}
	div#header_responsive {display:block;padding: 10px 0 0 0;}
	div#header_right {display:none;}	
	header, .header_scroll header {padding: 5px 0 0 0;}
	
	
	/* ACTUALITES */
	
	div#blog_cadre {margin:25px 0 25px 4%;width: 100%;}
	
	div#blog_list {	
		display: flex;
		flex-wrap: nowrap;
		padding: 10px 0;
		max-width: 1600px;
		margin: 0 auto;
		overflow-x: auto;
	}
	.blog_list_item.blog_first {display:none;}
	.blog_item_hide {display:block;}
	.blog_list_item.blog_other{
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-column-gap: 10px;
		grid-row-gap: 0; padding-right:4%; padding-left:0;
	}
	.blog_item { 
		grid-column: span 1;
		padding: 20px 20px 50px 0;
		background: #FFF;
		border-radius: 0.3em;
		min-width: 400px;
	}
	
	.blog_other .blog_info {margin:-80px 0 0 10%;width:90%;}
	
	div#blog_voir_plus {position:absolute;bottom:15px;left:calc(50% - 150px);}
	
}
@media screen and (max-width : 959px) {	
	
	.footer_top_column {grid-column:span 3;}
	.footer_logo {grid-column:span 6;grid-column-gap: 30px; grid-row-gap: 30px;}
	.footer_logo_btn {grid-column:span 1;}
	.footer_logo img {grid-column:span 1;}
	
}
@media screen and (max-width : 900px) {	
		
	div#footer_legal_logo, div#footer_legal_link {float:none; margin:0 auto; width:100%;text-align: center;}
}


@media screen and (max-width : 800px) {	
	
	.fil_ariane {padding: 5px 0; font-size:0.9em;}
}
@media screen and (max-width : 650px) {	
	.contenu {margin: 0 auto;}
	div#page_context {padding:20px 0;margin: 20px auto 0 auto; font-size:0.8em;}
	
}
@media screen and (max-width : 600px) {
	div#header_social {display:none;}
}
@media screen and (max-width : 550px) {	
	.menu_item_name {display:none;}	
	div#header_responsive {width: 80px;}
}
@media screen and (max-width : 500px) {		
	
	div#header_top_menu {position:relative; float:none;width:340px;margin:0 auto;}
	div#header_top_menu p {font-size:0.9em;}
	div#header_top_menu a { color:inherit; text-decoration:none; padding:15px 10px 15px 25px;}
	div#header_top_menu p.header_top_demarche a,
	div#header_top_menu p.header_top_agenda a,
	div#header_top_menu p.header_top_recherche a { background-size:20px;}
	
	.h1_cadre {text-align:center;}
	
	div#page_context {font-size:0.6em;}
	.context_title {margin: 2px 10px 0 0;}	
	
	div#footer_legal a {float:none;margin:10px auto;width: 100%;}
	
	.footer_logo_btn {grid-column:span 2;text-align: center;}
	.footer_logo img {grid-column:span 2;margin: 0 auto;}
	
	
	/* ACTUALITES */
	.blog_list_item.blog_other {grid-column-gap: 30px;}
	.blog_item { padding: 20px 10px 50px 0;	min-width: 280px;}
	.blog_other .blog_info { margin: -17px 0 0 0; width: 100%;}
	.blog_other .blog_tag {margin: 0 0 0 5px !important;}

	.blog_txt { background: #FFF; padding: 40px 5px 25px 5px; margin: -15px 0 0 0;}
	
	/* AGENDA */
	
	div#agenda_list .bx-wrapper {padding:0 0 50px 0 !important;}
	div#agenda_list .bx-wrapper .bx-pager, div#agenda_list  .bx-wrapper .bx-controls-auto {	max-width: 100%;}
	
	div#agenda_list .bx-wrapper .bx-controls-direction a {top: 98% !important;}

	div#agenda_list .bx-wrapper .bx-prev,
	div#agenda_list .bx-wrapper .bx-next {width:30px;height:30px;}
	div#agenda_voir_plus {margin: 40px auto 0 auto;}
	
}
@media screen and (max-width : 450px) {	
	footer {font-size:0.8em;}
}
@media screen and (max-width : 400px) {		
	div#header_top_menu {float:none;width:100%;margin: 0 auto;max-width: 290px;}
	div#header_top_menu p {font-size:0.7em;}
	
}
@media screen and (max-width : 350px) {	
	
	div#header_top_menu p {font-size:0.65em;}
	
	div#header_logo, .header_scroll div#header_logo { width:220px;}
	div#header_logo_left img {	max-width: 105px;}
	div#header_logo_right {padding:25px 0 0 0;}
	div#header_logo_right img, .header_scroll div#header_logo_right img {	max-width: 90px;}
	header, .header_scroll header {width:calc(100% - 280px);}
	
}