
iframe[src^="https://www.google.com/maps/"]
{
	width: 100%;
}

@media (max-width: 1024px)
{
	.desktop
	{
		display: none !important;
	}
}

@media (min-width: 1025px)
{
	.mobile
	{
		display: none !important;
	}
}


#top-1 > ul > hr
{
 display: none;
}

/* === All Size === */

body
{
	margin: 0;
	font-family: Roboto;
	color: #022C43;
}

ul,p,h1,h2,h3,h4,h5,h6,dd,
.fields-container,
.field-entry
{
	list-style: none;
	padding: 0;
	margin: 0;
}

a
{
	text-decoration: none;
	color: inherit;
}

img
{
	max-width: 100%;
	max-height: 100%;
	height: auto !important;
}

section
{
	position: relative;
	font-size: 0;
}

.adresse,
.telephone,
.fax,
.email
{
	padding-left: 2em;
	display: table;
	position: relative;
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 1em;
}

.adresse::before,
.telephone::before,
.fax::before,
.email::before
{
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 0;
    color: #7AC143;
    font-size: 0.89em;
}

.email::before
{
	content: "\f0E0";
}

.adresse::before
{
    content: "\f041";
}

.telephone::before
{
    content: "\f095";
}

.fax::before
{
    content: "\f1ac";
}

.fa-facebook-square::before
{
	color: #3B5998;
}

.fa-twitter::before
{
	color: #00ACED;
}

.fa-youtube::before
{
	color: #FF0000;
}

.fa-instagram::before
{
	color: #000000;
}

section > *,
.max-width > *
{
	font-size: 16px;
}

.pagination
{
	background-color: #F2F4F5;
	line-height: 1.3;
	font-size: 20px;
	display: table;
	margin: auto;
}

.pagination ul
{

}

.pagination li
{
	display: inline-block;
   text-align: center;
   margin: 0 0.5em;
   padding: 0.5em;
}

li.hidden-phone:not(.active),
.field-entry.date,
.activites .fields-container
{
	display: none;
}

#main ul.pagination > li::after {
display: none;
}

.pagination li.disabled
{
	opacity: 0.4;
}

.pagination li span::before
{
	font-family: "Font Awesome 5 Pro";

}

.pagination .icon-angle-double-left::before
{
	content: "\f100";
}

.pagination .icon-angle-left::before
{
	content: "\f104";
}

.pagination .icon-angle-right::before
{
	content: "\f105";
}

.pagination .icon-angle-double-right::before
{
	content: "\f101";
}

.pagination li.active
{
	border-bottom: 2px solid #7AC143;
	padding-bottom: calc(0.5em - 2px);
}

@media (min-width: 850px)
{
	.pagination
	{
		font-size: 18px;
	}

	.pagination li.hidden-phone:not(.active)
	{
			display: inline-block;
	}
}

@media (min-width: 1025px) and (max-width: 1570px)
{
	.pagination
	{
		font-size: 1.15vw;
	}
}

#main .pagination ul > li::after{
display: none;
}

#main .item-image img{
width: 100%;
}

#main :not(.page-header) .pagination  a:not(.button-vert),
#main :not(.page-header) .item-image a:not(.button-vert){
border-bottom: none;
}

.goog-te-combo
{
	display: block;
}

.max-width
{
	max-width: 1260px;
	width: 90%;
	margin: auto;
	overflow: hidden;
	font-size: 0;
}

.title,
#main .blog h1
{
	color: #022C43;
    font-size: 33px;
    line-height: 1.1;
    position: relative;
    padding-left: 0.5em;
    margin-bottom: 0.71em;
    margin-top: 40px;
    font-weight: normal;
}

.item-title,
.activites #main .item-content .page-header h2
{
    font-size: 32px;
    display: block;
    line-height: 1.38;
    position: relative;
    margin-bottom: 0.5625em;
    margin-top: 40px;
}

.title::before,
.blog h1::before,
.item-title::before,
.equipe #main .blog-item .page-header::before
{
    content: "";
    position: absolute;
    background: #7AC143;
    width: 0.11em;
    min-width: 6px;
    height: 73%;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}

.item-title::before
{
	height: 100%;
}

@media (min-width: 500px)
{
	.title,
	#main .blog h1
	{
		font-size: 6.6vw;
	}
}

@media (min-width: 860px)
{
	.title,
	#main .blog h1
	{
		font-size: 57px;
	}
}


#logo
{
    width: 135px;
    background: #fff;
    margin: 0;
    position: absolute;
    padding: 10px;
    box-sizing: border-box;
    z-index: 21;
}

#logo .img-container
{
	position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 100%;
}

#logo .img-container img
{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
}

#menu-mobile-btn
{

}

#top-1 .top > *,
#top-1 .menu,
#secondary_menu > ul,
#footer .item-title
{
	display: none;
}

#top-1
{
	background: #0577B7;
	padding: 24px 5%;
	margin-left: 135px;
	color: #292929;
	z-index: 20;
}

#top-1 .email
{
	line-height: 1;
	margin: 0;
}

#top-1 .email::before
{
	display: none;
}

#menu-mobile-btn
{
    font-size: 16px;
    color: #fff;
    width: 54px;
    display: block;
    text-align: center;
    margin-left: auto;
}

#menu-mobile-btn > i
{
	color: #7AC143;
	display: block;
	font-size: 34px;
}

#top-1 .phone
{
	padding-left: 45px;
}

#top-1 .fa-phone
{
    color: #7AC143;
    margin-right: 1em;
}



#top-1 > ul > li
{
	display: flex;
    align-items: center;
    flex-wrap: wrap;
}

#top-1 > ul > li > *
{
	font-weight: bold;
	color: #fff;
	font-size: 18px;
	text-decoration: none;
	cursor: pointer;
}

#top-2 .bkg
{
	width: 100%;
	max-height: 510px;
	overflow: hidden;
}

#top-2 .bkg img
{
	width: 100%;
}

#top-1 > ul > li ul
{
	display: none;
	text-align: left;
}

#top-1 .menu li > ul
{
	border-left: 5px solid #7AC143;
	background-color: #F2F4F5;
	color: #022C43;
}




/* Page secondaire */
#main
{
	margin-bottom: 85px;
	overflow: visible;
}

#main

#main > *
{
    color: #355669;
    font-size: 18px;
    line-height: 1.83;
    max-width: 660px;
}

#main > .full-widht
{
	 width: 100%;
    max-width: none;
}

#main .blog .category-desc
{
	margin-bottom: 60px;
}

body:not(.home) .bkg
{
	height: 20vh;
	position: relative;
    overflow: visible;
	background-image: url(../images/header-secondaire-salle-de-classe.jpg);
	background-position: bottom;
}

.bkg .max-width
{
    height: 0;
    overflow: visible;
    position: relative;
    max-width: 2000px;
}

.bkg #secondary_menu > ul
{
	top: 0;
    position: absolute;
    right: 0;
}

#secondary_menu > ul
{
    grid-gap: 2px;
    font-size: 22px;
    color: #022C43;
    margin-left: auto;
    font-weight: bold;
    max-width: 500px;
    background: #70b344;
}

/* Nouvelles */

.moduletable.voir-tous
{
    text-align: center;
    display: table;
    margin: 30px auto 0 auto;
}

.moduletable.nouvelles .item-title
{
	font-weight: normal;
}


.moduletable.voir-tous a,
.mod-articles-category-readmore a,
#main .blog .readmore a
{
    font-weight: bold;
    font-size: 16px;
    padding-bottom: 1em;
    border-bottom: 1px solid #7AC143;
    z-index: 9999;
    display: table;
    margin-top: 2.5em;
    text-decoration: none;
}

.moduletable.voir-tous a:hover,
.mod-articles-category-readmore a:hover,
#main .blog .readmore a:hover
{
	color: #52802F;

}

.moduletable.voir-tous a
{
	margin: 0;
}

.moduletable.voir-tous a:hover,
{
	color: #52802F;
	transition-duration: 0.3s;
}


.moduletable.boites ul
{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    grid-gap: 30px;
}

.moduletable.boites ul



@media only screen and (max-width: 500px)
{
    .moduletable.boites ul
    {
		  grid-template-columns: 1fr;
    }
}

.moduletable.boites ul > li,
.category-module.activite li,
.activites .item-content
{
	padding-bottom: 40px;
	background-color: #F2F4F5;
	display: table;
	height: auto;
	width: 100%;
}

body.IE .moduletable.boites ul > li
{
	 width: 30%;
    display: inline-block;
    margin: 1%;
    vertical-align: top;
}

.category-module.activite li,
.activites .item-content
{
    display: block;
    margin-bottom: 30px;
    padding: 40px 0;
}

.category-module.activite .item-title,
.activites #main .item-content .page-header h2
{
	margin-top: 0;
	display: inline-block;
	vertical-align: top;
	font-weight: normal;
}

@media (min-width: 1025px) and (max-width: 1250px)
{
	.category-module.activite .item-title
	{
		font-size: 2.56vw;
	}
}

.category-module.activite .item-title::before
{
	display: none;
}

.category-module.activite .mod-articles-category-date,
.activites .item-content .article-info
{
    color: #15242C;
    font-size: 16px;
    font-family: Fira Sans;
    font-weight: bold;
    display: table;
    text-transform: uppercase;
    position: relative;
    text-align: center;
    width: auto;
    box-sizing: border-box;
    padding: 0 !important;
    padding-bottom: 20px !important;
    margin: auto;
    line-height: 1.1;
}

.category-module.activite .mod-articles-category-date::after,
.activites .item-content .article-info::after
{
    position: absolute;
    content: "";
    height: 4px;
   	width: 100%;
    background: #7AC143;
    bottom: 0;
    right: 0;
}

.category-module.activite .mod-articles-category-date .day,
.activites .item-content .day
{
	display: block;
	font-size: 3.1em;
}

.category-module.activite .right,
.activites .item-content .page-header
{
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
}

.category-module.activite .mod-articles-category-readmore a,
.button-vert,
.activites #main .readmore a,
#footer .email
{
    border: 0;
    background-color: #7AC143;
    padding: 1em 2em;
    font-size: 16px;
    font-weight: bold;
    color: #022C43;
    display: table;
	transition: background-color 0.3s, color 0.1s;
	margin-top: 50px;
	text-decoration: none !important;
}

.activites #main .readmore,
.activites #main .item-content .page-header
{
	display: inline-block;
	vertical-align: top;
}

.activites #main .readmore
{
	position: absolute;
	top: 40px;
	right: 0px;
}

.activites #main .item-content .page-header
{
	width: calc(100% - 370px);
}

.activites #main .readmore a
{
	margin: 0;
}


@media (min-width: 1025px) and (max-width: 1460px)
{
	.activites #main .item-content .page-header h2
	{
		font-size: 28px;
	}

	.activites #main .item-content .page-header
	{
		width: calc(100% - 160px);
	}

	.activites #main .readmore
	{
		display: block;
		margin-top: 30px;
		margin-left: 150px;
		position: relative;
		top: auto;
		right: auto;
	}
}

@media (max-width: 850px)
{
		.activites #main .item-content .page-header h2
	{
		font-size: 28px;
	}

	.activites #main .item-content .page-header
	{
		width: calc(100% - 160px);
	}

	.activites #main .readmore
	{
		display: block;
		margin-top: 30px;
		margin-left: 150px;
		position: relative;
		top: auto;
		right: auto;
	}
}

@media (max-width: 500px)
{
		.activites #main .item-content .page-header
		{
			width: 100%;
		}

		.activites #main .readmore
		{
			margin: 0;
		}

		.activites #main .readmore a
		{
			margin-left: 0;
			margin: auto;
		}
}

.category-module.activite .mod-articles-category-readmore a:hover,
.button-vert:hover,
#footer .email:hover,
.activites #main .readmore a:hover
{
	background-color: #52802F;
	color: #fff;
}

.moduletable.boites ul > li .item-wrapper-inner > *,
.category-module.activite li .item-wrapper-inner > *,
.activites .item-content > *
{
	padding: 0 30px;
}

.moduletable.boites .item-img img,
.category-module.activite .item-img img
{
	width: 100%;
}







/* Desktop */



#secondary_menu > ul > li a
{
    padding: 0 6em 0 4em;
    line-height: 85px;
    background-color: #7AC143;
    display: block;
    background-position: 1em center;
    background-repeat: no-repeat;
    background-size: 1.5em auto;
    position: relative;
    height: 100%;
    box-sizing: border-box;
}

#secondary_menu > ul > li a::after
{
	position: absolute;
	content: "\f061";
	right: 2em;
	font-family: "Font Awesome 5 Pro";
	font-weight: 100;
	top: 50%;
	transform: translateY(-50%);
}

body:not(.menu-open) #secondary_menu > ul > li:hover a
{
/*	background-color: #52802F;
	color: #fff;
	border-color: #52802F;*/
}

body:not(.menu-open) #secondary_menu > ul > li:hover + li a
{
	/*border-color: #52802F;*/
}

.mod-articles-category-date
{
	font-size: 18px;
	font-weight: bold;
	line-height: 1.1;
}

#content-2 > .right
{
    display: block;
    background: #F2F4F5;
    margin-top: 50px;
    padding: 50px;
    box-sizing: border-box;
}


@media (min-width: 1025px) and (max-width: 1130px)
{
	#content-2 .left .title
	{
		font-size: 4.6vw;
	}
}


.moduletable.menu-social li
{
	position: relative;
}

.moduletable.menu-social li a
{
	font-size: 32px;
	line-height: 2;
	border-bottom: 1px solid #7AC143;
	margin-left: 2em;
	font-family: inherit;
}

.moduletable.menu-social li a::before
{
    left: 0;
    position: absolute;
    font-family: "Font Awesome 5 Brands";
}

#content-3
{
	background: #7AC143;
	padding: 130px 0;
}

.moduletable.single-article
{

}

.moduletable.single-article .item-img
{
display: none;
}

.moduletable.single-article .item-title
{
    padding-left: 5%;
    margin-left: 5%;
    border-left: 6px solid #559443;
    font-size: 43px;
    line-height: 1.48;
    font-weight: normal;
    margin: 0 0 1em 0;
}

.moduletable.single-article .item-title::before
{
	display: none;
}

.moduletable.single-article .item-content
{
	color: #022C43;
	opacity: 0.75;
	font-size: 18px;
	line-height: 1.8;
	margin: 0 0 50px 5%;
}

.moduletable.single-article .readmore
{
	color: #022C43;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	padding-bottom: 1em;
	border-bottom: 1px solid;
	display: table;
	margin-left: 5%;
}

#content-4
{
	background: #F3F3F4;
	padding: 65px 0;
}

#content-4 > * > div
{
   box-sizing: border-box;
 	color: #022C43;
 	font-size: 43px;
 	line-height: 1.18;
 	position: relative;
 	text-align: center;
}

#content-4 > * > div:first-child
{
	margin-bottom: 1em;
	padding-bottom: 1em;
	text-align: left;
}

#content-4 > * > div:first-child::after
{
    content: "";
    opacity: 0.2;
    background-color: #022C43;
    width: 100px;
    height: 2px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    bottom: 0;
}

#footer
{
	background-color: #0577B7;
	color: #fff;
	font-size: 18px;
	padding: 60px 0;
	text-align: center;
}

#footer .info
{
	text-align: left;
	display: table;
	margin: auto;
	margin-bottom: 30px;
}

#footer .image
{
	max-width: 400px;
	display: inline-block;
	margin: auto;
}

@media (min-width: 1025px) and (max-width: 1250px)
{
	#footer .email
	{
			font-size: 1.25vw;
	}
}

#footer .email::before
{
	color: inherit;
	font-size: inherit;
	position: relative;
	margin-right: 1.25em;
}


/* === Blog === */

.equipe #main .moduletable h2
{
	color: #022C43;
    font-size: 32px;
    font-weight: normal;
    margin-bottom: 0.5em;
}

.equipe #main .newsflash
{
    width: calc(100% + 30px);
    left: -1vw;
    position: relative;
    text-align: left;
    margin-bottom: 50px;
    font-size: 0;
}

.equipe #main .newsflash ~ .newsflash
{
	margin-bottom: 0;
}

.equipe #main .item
{
	 width: 100%;
    max-width: 350px;
    margin: 0 15px 30px 15px;
    min-width: 30%;
    display: inline-block;
    vertical-align: top;
    font-size: 18px;
}

.equipe #main .item .item-title
{
    font-size: 24px;
    color: #022C43;
    font-weight: normal;
    margin: 0;
}

.equipe #main .item .item-title,
.equipe #main .item .item-content
{
    padding-left: 5%;
    width: 100%;
    box-sizing: border-box;
}

.equipe #main .field-value
{
    color: #022C43;
    font-weight: bold;
    margin: 0.5em 0;
    display: block;
}

.equipe #main .email
{
	padding-left: 0;
}

.equipe #main .email::before
{
	display: none;
}

#main > .blog .blog-item
{
    margin: 0;
    position: relative;
}

body.IE #main > .blog .blog-item
{
	    display: inline-block;
    width: 49%;
    margin-bottom: 60px;
    min-width: 360px;
}

.equipe #main .item .page-header > *
{
    font-size: 24px;
    font-weight: normal;
    line-height: 1.4;
    position: relative;
    margin: 0 0 0.5em 0;
}

#main > .blog .page-header::before
{
	height: 80%;
}

.equipe #main .item-image
{
	display: none;
}

#main .blog h1
{
    font-weight: normal;
    margin: 1.4em 0;
    display: block;
}

.nouvelle #main .page-header h2 a
{
	 font-size: 32px;
    font-weight: normal;
    line-height: 1.38;
    color: #022C43;
}

.nouvelle #main .published
{
	font-size: 18px;
	font-weight: bold;
	line-height: 1.66;
	color: #022C43;
}

.nouvelle #main .blog-item
{
	 font-size: 18px;
    line-height: 1.83;
    color: #355669;
    margin-bottom: 60px;
    padding-bottom: 60px;
    border-bottom: 1px solid #dce1e5;
}

#main :not(.page-header) > * > a:not(.button-vert)
{
	/*text-decoration: underline #7AC143;*/
	    color: #022C43;
    padding-bottom: 2px;
    border-bottom: 1px solid #7AC143;
    display: inline;
    font-weight: bold;
}

.activites #main .readmore a.btn {
display: table;
margin: 0px;
padding: 1em 2em;
}

.com-content-article__body,
.category-desc
{
	color: #355669;
	font-size: 18px;
	line-height: 1.83;
}



/* === Mobile === */

/* == Mobile Only */
@media (max-width: 1024px)
{
	body.menu-open
	{
		overflow: hidden;
	}

	body.menu-open .skiptranslate
	{
		display: none;
	}

	body.menu-open .skiptranslate + #logo,
	body.menu-open .skiptranslate + #logo + #top-1
	{
		position: fixed;
		top: 0;
	}

	.menu-open #main
	{
		z-index: -1;
	}

	.menu-open #logo
	{
		width: 98px;
	}

	.menu-open #top-1
	{
		height: 50px;
		margin: 0;
		position: fixed;
	}

	.menu-open #top-1::after
	{
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    background-color: inherit;
    height: inherit;
    width: 100%;
    padding: inherit;

	}

	.menu-open #top-1 .email,
	.menu-open #top-1 .phone
	{
		display: inline-block;
	}

	.menu-open #top-1 .menu
	{
	    display: block;
	    position: fixed;
	    background: inherit;
	    z-index: 11;
	    left: 0;
	    top: 158px;
	    width: 100%;
	    max-height: calc(100% - 220px);
	    overflow-y: scroll;
	}

	.menu-open #top-1 > ul > li > *
	{
	    padding: 1.5em;
	    width: 100%;
	}

	.menu-open #menu-mobile-btn
	{
	    z-index: 12;
	    position: fixed;
	    padding: inherit;
	    top: 0;
	    right: 0;
	}

	.menu-open #menu-mobile-btn > *
	{
		color: inherit;
	}

	.menu-open #menu-mobile-btn > *::before
	{
		content: "\f00d";
	}

	.menu-open #secondary_menu > ul
	{
	    position: fixed;
	    top: 98px;
	    width: 100%;
	    height: 63px;
	    left: 0;
	    max-width: none;
	    display: flex;
	    justify-content: space-between;
	    align-items: stretch;
	}

	.menu-open #secondary_menu > ul > li
	{
		display: block;
    	position: relative;
    	width: 100%;
    	height: 100%;
    	margin: auto;
	}



	.menu-open #secondary_menu > ul > li a
	{
    	color: transparent;
    	position: absolute;
    	top: 0;
    	left: 0;
    	right: 0;
    	bottom: 0;
    	background-position: center center;
    	background-size: auto 50%;
    	padding: 0;

	}

	.menu-open #top-1 .right
	{
	    display: block;
	    background: #fff;
	    height: 1em;
	    padding: calc(30px - 0.5em) 0;
	    width: 100%;
	    left: 0;
	    top: 98px;
	    position: fixed;
	    z-index: 13;
	    text-align: center;
	}

	.menu-open #top-1 .menu li.open > ul
	{
		display: block;
	    padding-top: 0;
	    padding-bottom: 0;
	    border-left: 5px solid #7AC143;
	    background-color: #F2F4F5;
	}

	.menu-open #top-1 .menu li.open > ul a
	{
	    color: #022C43;
    	display: block;
    	padding: 0.8em 0;
	}
}






/* Small Desktop */
@media (min-width: 1025px)
{
	.separator
	{
		pointer-events: none;
	}

	#secondary_menu > ul
	{
		display: block;
		font-size: 1.5vw;
    	max-width: 40vw;
    	background-color: transparent;
		overflow: hidden;
	}

	#secondary_menu > ul > li
	{
		transform: translateX(calc(100% - 3.5em));
		transition: transform 1s;
	}

	#secondary_menu > ul > li:hover
	{
		transform: translateX(0);
	}

	#secondary_menu > ul > li:not(:first-child) a
	{
		border-top: 2px solid #70b344;
	}

	#menu-mobile-btn
	{
		display: none;
	}

	#top-2 .bkg
	{
    	position: absolute;
    	z-index: -1;
    	min-width: calc(100% - 500px);
    	height: auto;
    	max-height: none;
    	width: 100%;
    	overflow: hidden;
    	font-size: 0;
 	}

 	#top-2 .bkg.top
 	{
 		top: 0;
 	}

 	#top-2 .bkg.bottom
 	{
 		bottom: 0;
 	}

 	#top-2 .bkg.v-center
 	{
 		top: 50%;
 		transform: translateY(-50%);
 	}

 	#top-2 .bkg.left
 	{
 		left: 0;
 	}

 	#top-2 .bkg.right
 	{
		right: 0;
 	}

 	#top-2 .bkg.h-center
 	{
 		left: 50%;
 		transform: translateX(-50%);
 	}

 	#top-2 .bkg.h-center.v-center
 	{
		top: 50%;
    	left: 50%;
    	transform: translate(-50%, -50%);
 	}

	#top-2
	{
	    background-position: center;
	    background-size: cover;
	    position: relative;
	    overflow: hidden;
	}


	#top-2 .bkg img
	{
	    width: 100%;
    	height: auto;
    	max-height: 100%;
	}

	#top-1 > .menu
	{
	    display: flex;
	    justify-content: space-between;
	    align-items: stretch;
	    width: 100%;
	    margin: 0px;
	    height: 80px;
	    padding: 0 50px;
	    box-sizing: border-box;
	   	background-color: #0577B7;
	}

	#top-1
	{
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    background: none;
    padding-left: 220px;
    width: 100%;
    border-bottom: 5px solid #0E91E6;
	}

	#top-1 .top
	{
	   	display: block;
    	font-size: 0;
    	position: relative;
	}

	#top-1 .left
	{
    	background-color: #F2F4F5;
    	box-sizing: border-box;
    	display: block;
    	width: 100%;
    	padding: 20px 30px;
    	min-height: 140px;
	}

	#top-1 .right
	{
		width: 100%;
	    position: relative;
	    display: block;
	    text-align: right;
	    padding: 20px 30px;
	    box-sizing: border-box;
	    text-align: center;
	}

	#top-1 .slogan
	{
	    font-size: 24px;
	    line-height: 33px;
	    width: 100%;
	    display: inline-block;
	    padding-right: 10%;
	    box-sizing: border-box;
	    vertical-align: middle;
	    font-weight: bold;
	}

	#top-1 .slogan::after
	{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
	}

	#top-1 .email
	{
    padding: 15px 45px;
    border-right: 2px solid #F2F4F5;
	}

	#top-1 .phone
	{
	    padding: 15px 0;
	    padding-left: 30px;
	}

	#top-1 :not(.email) + .phone
	{

border-right: 0;
    border-left: 2px solid #F2F4F5;
    margin-left: 30px;
    padding-left: 30px;
	}

	#top-1 .top a:not(.goog-logo-link)
	{
    font-size: 18px;
    font-weight: bold;
    display: inline-block;
    top: -10px;
    position: relative;
	}

	#google_translate_element
	{
    	display: inline-block;
    	width: 190px;
	}

	#google_translate_element
	{
		background-color: #F2F4F5;
		padding: 10px;
		border-radius: 10px;
	}

	#google_translate_element .goog-te-combo
	{
		background: #fff;
   	margin: 0 auto 5px auto;
    	border-radius: 5px;
    	height: 2em;
	}

	#top-1 > .menu
	{
	    padding: 0 3%;
	}

	#top-1 > ul > li > *
	{

		flex-flow: wrap-reverse;

		flex-wrap: wrap;
		position: relative;
		height: 100%;
		display: flex;
		justify-content: center;
		flex-direction: column;
		text-align: left;
	}

	#top-1 > ul > li:hover ul
	{
    position: absolute;
    top: 100%;
    display: block;
    width: 94%;
    left: 3%;
    height: auto;
    column-count: 3;
    padding: 1em;
	 box-sizing: border-box;
	}

	#top-1 .menu li > ul > li
	{
		display: inline-block;
		width: 100%;
		position: relative;
		border-bottom: 1px solid rgba(21, 36, 44, 0.1);
	}

	#top-1 .menu li > ul > li::after
	{
		    position: absolute;
    transition: .4s;
    content: '';
    width: 0;
    bottom: -1px;
    height: 2px;
    background: #15242C;
    right: 0;
    left: auto;
	}

	#top-1 .menu li > ul > li:hover::after
	{
		width: 100%;
    	left: 0;
	}

	#top-1 .menu li > ul > li::before
	{
	display: block;
    content: "\f054";
    font-family: "Font Awesome 5 Pro";
    color: #7AC143;
    font-weight: 500;
    position: absolute;
    left: 0;
    right: auto;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    margin: 0;
    height: auto;
    opacity: 1;
    background: transparent;
	}

	#top-1 > ul > li.parent li > *
	{
		padding: 2em 0 2em 1em;
    	display: block;
	}

	#top-1 > ul > hr
	{
		width: 0px;
    margin: 0;
    padding: 0;
    height: 80%;
    top: 10%;
    position: relative;
    border: 0;
    border-left: 2px solid rgba(255,255,255,.1);
    display: block;
	}
	#top-1 > ul > hr:last-child
	{
		display: none;
	}




	#top-1 > ul > li:not(:hover):not(:first-child)::after
	{
		content: "";
		position: absolute;
		height: 50%;
		width: 2px;
		left: -1px;
		top: 50%;
		transform: translateY(-50%);
		background: #fff;
		opacity: 0.1;
	}

	#top-1 > ul > li:hover + li::after
	{
			display: none;
	}

	body:not(.home) .bkg
	{
		height: 350px;
		box-sizing: border-box;
		z-index: 10;
	}

	#main > *
	{
		max-width: 900px;
		width: calc(55vw - 35px);
	}

}

/* Desktop */
@media (min-width: 1249px)
{

	#secondary_menu > ul
	{
		font-size: 22px;
		max-width: 500px;
	}

	#top-1 .left
	{
	    display: inline-block;
    	padding: 30px 50px;
    	width: calc(100% - 600px);
    	vertical-align: top;
    	min-height: 140px;
	}

	#top-1 .right
	{
    	width: 570px;
    	position: absolute;
    	right: 0;
    	top: 50%;
    	display: block;
    	transform: translateY(-50%);
    	text-align: center;
    	padding: 0;
	}

	#top-1 > ul > li > *
	{
		font-size: 18px;
	}

	#top-1 > .menu
	{
	    padding: 0 3%;
	}
}



.top-space
{
	margin-top: 50px;
}



@media (max-width: 1249px)
{





}











@media (min-width: 500px)
{
	.category-module.activite .mod-articles-category-date,
	.activites .item-content .article-info
	{
		width: 150px;
		padding: 0 !important;
		display: inline-block;
	}

	.category-module.activite .mod-articles-category-date::after,
	.activites .item-content .article-info::after
	{
		width: 4px;
		height: 100%;
	}

	.category-module.activite .right,
	.activites .item-content .page-header
	{
		width: calc(100% - 160px);
	}
}

@media (min-width: 900px)
{

}

@media (min-width: 1250px)
{

	#top-1 .right > *:not(:last-child)
	{

	}

	#top-1 .email
	{
		display: inline-block;
    	padding: 15px 45px;
    	border-right: 2px solid #F2F4F5;
	}

}

@media (min-width: 1025px)
{

	body.menu-open
	{
		overflow: initial;
	}
	.top-space
	{
		margin-top: 80px;
	}

	#logo
	{
		width: 220px;
	}

	#logo .img-container img
	{
		width: 144px;
	}

	.moduletable.voir-tous
	{
	    position: absolute;
    	top: 0;
    	right: 0;
    	margin: 40px 0 0 0;
	}

	#content-2 .moduletable.voir-tous
	{
		top: auto;
    	bottom: 0;
    	left: 0;
	}

	#content-2 > .left
	{
	    width: calc(100% - 500px);
	    display: inline-block;
	    float: left;
		padding-bottom: 50px;
	}

	.moduletable.single-article .item-img
	{
		display: inline-block;
	    width: 40%;
	    box-sizing: border-box;
	    vertical-align: top;
	    padding-right: 5%;
	}

	.moduletable.single-article .item-wrapper
	{
		width: 50%;
    	display: inline-block;
    	vertical-align: top;
	}

	#content-2 > .right
	{
	    width: 100%;
	    max-width: 445px;
	    display: inline-block;
	    float: right;
	    background: #F2F4F5;
	    margin-top: 50px;
	    padding: 45px;
	    box-sizing: border-box;
	}

	#content-4 > * > div
	{
	    display: inline-block;
	    width: 50%;
	 	vertical-align: middle;
	}

	#content-4 > * > div:first-child
	{
		border-right: 2px solid #e5e9ec;
    	padding-right: calc(5% - 2px);
    	margin-bottom: 0;
    	padding-bottom: 0;
	}

	#content-4 > * > div:first-child::after
	{
		display: none;
	}

	#content-4 > * > .image
	{
		padding-left: calc(5%);
	}

	#footer .info,
	#footer .image
	{
		display: inline-block;
    	width: 50%;
    	vertical-align: top;
	}

	#footer .info
	{
		display: inline-grid;
    	grid-template-columns: 1fr 1fr;
    	padding-right: 60px;
	}

	#main
	{
		margin-bottom: 130px;
		min-height: 355px;
	}

	#top-1 > ul > li:hover ul
	{
		content: "";
		display: block;
	}
}

@media (min-width: 1025px) and (max-width: 1249px)
{


	#logo
	{
		top: 30px;
	}

	#top-1 .right
	{
    position: absolute;
    top: 0;
    right: 0;
    background: #fff;
    text-align: right;
	}

	#top-1 .left
	{
		display: block;
    position: relative;
    padding-top: 142px;
	}

	#top-1 .slogan
	{

	}
}

@media (min-width: 1025px)
{
	#top-1 .left
	{
		    display: flex;
    align-items: center;
    flex-wrap: wrap;
	}

	#top-1 .left .slogan
	{
		flex-flow: wrap-reverse;
    flex-wrap: wrap;
    position: relative;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: left;
	}
}

@media (min-width: 1360px)
{
	body.home #logo
	{
		width: 320px;
	}

	body.home #logo .img-container img
	{
		width: auto;
	}

	body.home #top-1
	{
		padding-left: 320px;
	}

	body.home #top-1 > ul > li:hover ul
	{
		left: 320px;
		    width: calc(97% - 320px);
	}
}

body:not(.home) .bkg
{
	display: none;
}

#main
{
	padding-top: 65px;
}

/* Joomla 5 start */
.label-warning {
display: none;
}

.equipe #main .moduletable ul li {
padding-left: 0px;
}

.equipe #main .moduletable ul li:after {
display: none;
}

.activites #main .item-content {
font-size: 0px;
}
/* Joomla 5 end */