/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500&family=Poppins:ital,wght@0,300;0,400;0,600;1,400&display=swap');


*:focus {
	outline: none !important
}
* {
	padding: 0;
	margin: 0;
}

html, body {
	height: 100%;
}
body {
	width: 100%;
	height: 100%;
	min-height: 100%;
	margin: 0;
	display: flex;
	flex-direction: column;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
	font-weight: 400;
    color: #000;
    background: #fff url("images/background.png") top left no-repeat;
	background-attachment: fixed;
	text-align: center;
	overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
    border: none;
	vertical-align: bottom;
}
a {
    text-decoration: none;
	transition: .3s ease;
}

sup.typo_exposants {
	vertical-align: text-top;
	font-size: .8em;
}

ul.spip li {
	list-style: disc;
	margin-left: 2em;
}

hr {
	display: block;
	clear: both;
	height: 2px;
	width: 100%;
	margin: 2em 0;
	padding: 0;
	color: #000d6f;
	background-color: #000d6f;
	border: none;
}

#top {
	position: fixed;
	bottom: 100px;
	right: 0;
    width: 50px;
    height: 50px;
	font-size: 40px;
	background-color: #000d6f;
    color: #fff;
	text-align: center;
	text-decoration: none;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
	display: none;
	line-height: 40px;
	cursor: pointer;
	z-index: 1000;
}
#top:hover{
	background-color: #333;
}

/* cache-cache */

#menu-wrapper #hamburger-menu, .menu-right-home, .home-resp, .social-bas {
	display: none;
	visibility: hidden;
	opacity: 0;
}

/* dans le vif du sujet *********************************************/

.logo {
	position: fixed;
	top: 10px;
	left: 10px;
	width: 190px;
	z-index: 30;
}

.menu {
	position: fixed;
	top: 200px;
	left: 45px;
	width: 150px;
	text-align: left;
	font: 500 1.6em 'Barlow Condensed';
	line-height: 1.5;
	z-index: 30;
}
.menu a.lien {
	width: 100%;
	color: #000d6f;
	transition: .25s linear;
}
.menu a.lien:hover, .menu a.lien.on {
	color: #000;
}
.menu .social {
	display: inline-block;
	width: 50px;
	margin-top: 30px;
}
.menu .social a img {
	width: 100%;
	margin-bottom: 10px;
	opacity: .7;
	transition: .25s linear;
}
.menu .social a:hover img {
	opacity: 1;
}

h1 {
	position: fixed;
	top: 0;
	left: 0;
	width: 94%;
	height: 60px;
	line-height: 60px;
	text-align: right;
	background: #45c6e2 url("images/background.png") top left no-repeat;
	background-attachment: fixed;
	z-index: 20;
	font-family: 'Barlow Condensed';
	font-size: 1.3em;
	font-weight: 400;
	margin: 0 !important;
	padding-right: 6%;
	color: #000;
	animation-duration: 3s;
}
h1 strong, h1.int strong {
	font-family: 'Poppins';
	color: #fff;
	font-weight: 600;
	margin-right: 10px;
}
h1.int {
	position: fixed;
	top: 0;
	right: 0;
	width: auto;
	height: 50px;
	line-height: 50px;
	text-align: right;
	background-color: #45c6e2;
	z-index: 20;
	font-family: 'Barlow Condensed';
	font-size: 1.3em;
	font-weight: 400;
	margin: 0 !important;
	padding: 0 40px;
	color: #000;
	animation-delay: .2s;
	clip-path: polygon(1.25% 0%, 100% 0%, 100% 100%, 0% 100%);
}
h1.int a span {
	color: #000;
}

nav {
	position: fixed;
	top: 60px;
	left: 248px;
	width: auto;
	z-index: 10 !important;
}
.bandeau {
	position: relative;
	display: block;
	width: 100%;
	height: 180px;
}
.bandeau img {
	clip-path: polygon(23% 0%, 100% 0%, 77% 100%, 0% 100%);
}
.bandeau .item {
	display: block;
	width: 180px;
	height: 180px;
}
.bandeau .item-5 {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	animation-delay: 1s;
}
.bandeau .item-14 {
	position: absolute;
	top: 0;
	left: 135px;
	z-index: 21;
	animation-delay: 1.25s;
}
.bandeau .item-13 {
	position: absolute;
	top: 0;
	left: 270px;
	z-index: 22;
	animation-delay: 1.5s;
}
.bandeau .item-15 {
	position: absolute;
	top: 0;
	left: 405px;
	z-index: 23;
	animation-delay: 1.75s;
}
.bandeau .item-16 {
	position: absolute;
	top: 0;
	left: 540px;
	z-index: 24;
	animation-delay: 2s;
}
nav .item a .titre-item {
	background-color: #45c6e2;
	color: #2d3d8c;
	padding: 5px 12px 10px;
	font: 500 1.3em 'Barlow Condensed';
	transition: .3s linear;
	margin: 0 !important;
}
nav a:hover h4 {
	color: #E7F9FF;
	background-color: #2d3d8c;
}

.menu-right {
	position: fixed;
	top: 60px;
	right: 0;
	display: block;
	width: 55%;
	height: 163px;
	background-color: #2d3d8c;
	padding: 17px 40px 0 0;
	text-align: right;
	z-index: 5 !important;
	animation-delay: 2s;
}
.menu-right a {
	display: inline-block;
	width: 100%;
	color: #fff;
	font: 500 1.4em 'Barlow Condensed';
	text-transform: uppercase;
	transition: .3s linear;
}
.menu-right a:hover, .menu-right a.on, .menu-right-int a:hover, .menu-right-int a.on, .menu-right-home a:hover, .menu-right-home a.on {
	color: #45c6e2;
}
.menu-right-int {
	position: fixed;
	top: 50px;
	right: 0;
	display: block;
	width: auto;
	background-color: #2d3d8c;
	color: #45c6e2;
	padding: 10px 40px;
	text-align: right;
	z-index: 5 !important;
	animation-delay: .5s;
	clip-path: polygon(1.25% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.menu-right-int a, .menu-right-home a {
	color: #fff;
	font: 500 1.1em 'Barlow Condensed';
	text-transform: uppercase;
	margin: 0 5px;
	transition: .3s linear;
}

main {
	display: block;
	width: auto;
	padding: 280px 40px 40px 270px;
	text-align: left;
	flex: 1;
	animation-delay: 2.5s;
	animation-duration: 3s;
}
.arg {
	font-size: 1.1em;
	line-height: 1.25;
	text-align: justify;
}
.arg p {
	margin: 0 0 1em;
}
.arg p:last-of-type {
	margin: 0!important;
}
.arg .right {
	display: block;
	text-align: right;
}
.arg .right a {
	color: #fff;
	background-color: #2D3D8C;
	padding: 6px 12px;
	font-weight: 600;
	transition: .25s linear;
}
.arg .right a:hover {
	background-color: #45C6E2;
}
main .cycle-slideshow {
	display: inline-block;
	width: 100%;
	font-family: Arial, Helvetica, sans-serif;
	color: #000;
}
/*main h2 {
	font-weight: 600;
	font-size: 1.8em;
	color: #000d6f;
	margin: 0 0 .5em;
	text-align: center;
}*/
.anim {
	position: relative;
}
.anim .texte {
	position: absolute;
	bottom: 20px;
	right: 0;
	display: inline-block;
	background-color: #E7F9FF;
	color: #000;
	padding: 15px;
	font-size: 16px;
	width: 85%;
	line-height: 1.3;
	transition: .25s linear;
	z-index: 2;
}
.anim h4 {
	position: absolute;
	top: 20px;
	left: 0;
	width: 80%;
	font: 500 1.3em 'Barlow Condensed';
	color: #fff;
	background-color: #2D3D8C;
	margin: 0;
	padding: 10px;
	text-align: right;
	transition: .2s linear;
	clip-path: polygon(1.5% 0%, 100% 0%, 100% 100%, 0% 100%);
	z-index: 2;
}
.anim img {
	opacity: .85;
	transition: .3s linear;
	clip-path: polygon(15% 0%, 100% 0%, 85% 100%, 0% 100%);
}
.anim:hover h4 {
	left: 7%;
	padding: 10px 20px 10px 0;
	background-color: #45C6E2;
}
.anim:hover .texte {
	right: 7%;
}
.anim:hover img {
	opacity: 1;
}

footer {
	margin: auto;
	width: 100%;
}
.agences {
	display: block;
	width: 100%;
	height: 110px;
	background-color: #E7F9FF;
    color: #2d3d8c;
	padding: 20px 0;
	line-height: 1.3;
	animation-delay: .5s;
	animation-duration: 1.5s;
}
.agences .agence {
	display: flex;
	flex-direction: column;
	justify-content: center;
	animation-delay: .5s;
	animation-duration: 1s;
}
.agences a {
	color: #000;
	font-size: 1.2em;
	font-weight: 600;
	transition: .25s linear;
}
.agences a:hover {
	color: #2d3d8c;
}
.agences strong {
	font-size: 1.2em;
	font-weight: 600;
	text-transform: uppercase;
}

.signature {
	display: block;
	width: 90%;
	padding: 1em 5%;
	background-color: #2D3D8C;
	color: #fff;
	font: 400 13px Verdana, sans-serif;
}
.signature a {
	color: #E7F9FF;
	text-decoration: underline;
	transition: .25s linear;
}
.signature a:hover {
	color: #fff;
	text-decoration: none;
}


/* interieur *********************************************************/
main.int {
	display: block;
	width: auto;
	padding: 140px 40px 40px 260px;
	text-align: left;
	flex: 1;
	animation-delay: 1s;
	animation-duration: 3s;
}
main.int .ariane {
	text-align: center;
	font-size: 1.2em;
	display: inline-block;
	background-color: #45C6E2;
	padding: 10px 20px;
	margin: 0 0 30px -8px;
	font-family: 'Barlow Condensed';
	font-weight: 500;
	clip-path: polygon(0% 0%, 100% 0%, 97% 100%, 0% 100%);
}
main.int .ariane strong {
	font: 600 1em 'Poppins';
	color: #fff
}
main.int .ariane a {
	color: #000;
	transition: .25s linear;
}
main.int .ariane a:hover {
	color: #2D3D8C;
}
main.int .ariane .argument {
	display: inline-block;
	width: 100%;
	text-align: right;
	color: #fff;
	font-weight: 500;
	font-size: 1.1em;
}
.contenu {
	display: inline-block;
	width: auto;
	margin-left: 40px;
	font-family: Arial, Helvetica, sans-serif;
	text-align: justify;
	line-height: 1.3;
}
.contenu .logo-article {
	float: right;
	width: 30%;
	margin: 0 0 0 40px;
}
.contenu p {
	margin: 0 0 .8em;
}
.contenu p:last-of-type {
	margin: 0 !important;
}
.contenu strong {
	color: #2D3D8C;
}
.contenu .surtitre {
	display: block;
	width: auto;
	background-color: #2D3D8C;
	padding: 10px 20px;
	font: 500 1.8em 'Barlow Condensed';
	color: #fff;
}
.contenu .chapo {
	display: block;
	width: auto;
	background-color: #E7F9FF;
	padding: 20px;
	font-size: 1.2em;
	margin-bottom: 2em;
}
.contenu .chapo h3 {
	color: #2D3D8C;
	font: 500 1.2em 'Barlow Condensed';
	margin: 0 0 1em;
}

.contenu h2.spip {
	color: #2D3D8C;
	font: 500 1.6em 'Barlow Condensed';
	margin: 1.5em 0 .5em;
}
.contenu h2.spip:first-of-type {
	color: #2D3D8C;
	font: 500 1.6em 'Barlow Condensed';
	margin: 0 0 .5em;
}

.contenu .aeration {
	display: inline-block;
	width: 100%;
	margin-top: 1.5em;
}

a .grille h4 {
	background-color: #2D3D8C;
	color: #fff;
	margin: 0 !important;
	padding: 15px;
	font-size: 1em;
	font-weight: 500;
	text-align: left;
	transition: .3s linear;
}
a:hover .grille h4 {
	background-color: #45C6E2;
	color: #000;
}
a .grille img {
	opacity: .8;
	transition: .3s linear;
}
a:hover .grille img {
	opacity: 1;
}
a .grille.biais img {
	clip-path: polygon(22% 0%, 100% 0%, 78% 100%, 0% 100%);
}
a .grille.biais.special img {
	margin-bottom: 1em;
}

/* pagination *-***************************************************************/
.pagination {
	margin: 1em 0;
}
.pagination .pagination-items {
	list-style: none;
	display: flex;
	flex-direction: row;
	justify-content: center;
	font-weight: 600;
}
.pagination .pagination-item {
	margin: 0em;
	flex-basis: 7.5%;
	display: flex;
	align-items: center;
}
.pagination .pagination_precedent_suivant .pagination-item {
	flex-basis: auto;
}
.pagination .pagination-item + .pagination-item {
	margin-left: 0.5em;
}
.pagination .pagination-item-label {
	display: block;
	flex-basis: 100%;
	background-color: #45C6E2;
	color: #fff;
	padding: 10px 15px;
	text-align: center;
	/*border-radius: .3em;*/
	transition: .25s ease;
	clip-path: polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);
}
.pagination .on .pagination-item-label,
.pagination a.pagination-item-label:hover,
.pagination a.pagination-item-label:focus,
.pagination a.pagination-item-label:active {
	background-color: #2D3D8C;
	color: #fff;
}
.pagination .pagination_precedent_suivant .disabled {
	visibility: hidden
}
.pagination .pagination-item.disabled {}
.pagination .pagination-item.disabled .pagination-item-label {
	background-color: #45C6E2;
	color: #fff;
	font-family: Arial, Helvetica;
	font-weight: bold;
	letter-spacing: 2px;
}

/* formulaire ****************************/
.formulaire_spip {
	display: inline-block;
	width: 100%;
	margin: 2em auto 0 auto;
}
label {
	display: inline-block;
	width: 17%;
	text-align: right;
	height: 30px;
	line-height: 30px;
	margin: 0 2% .8em 0;
	font: 400 1.1em 'Lato', sans-serif;
	color: #2D3D8C;
	text-transform: uppercase;
}
input.text {
	display: inline-block;
	width: 76%;
	height: 30px;
	line-height: 30px;
	padding: 10px 2%;
	background-color: rgba(69,198,226,0.3);
	border: 0;
	border-radius: 6px;
	margin-bottom: .8em;
	font-size: 1em;
	color: #000;
	font-family: Arial, Helvetica, sans-serif;
	transition: .25s linear;
}
textarea {
	display: inline-block;
	width: 76%;
	padding: 10px 2%;
	background-color: rgba(69,198,226,0.3);
	border: 0;
	border-radius: 6px;
	font-size: 1em;
	color: #000;
	font-family: Arial, Helvetica, sans-serif;
	transition: .25s linear;
}
input.text:focus, textarea:focus {
	background-color: #fff;
	border: none;
}
p.boutons {
	margin: 1em 0 0;
	text-align: right;
}
button {
	cursor: pointer;
	background-color: #2D3D8C;
	color: #fff;
	font-size: 1.25em;
	font-weight: 500;
	text-transform: uppercase;
	transition: .3s linear;
	border: 0;
	border-radius: 6px;
	padding: 10px 20px;
}
button:hover {
	background-color: #45C6E2;
}

p.formulaire_erreur{
	color: red;
	background: white;
	padding: 1rem;
	border: 1px solid red;
	border-radius: 3px;
}

/* responsive ************************************************************************/

@media (max-width: 1200px) {
	
	.logo, .menu {
		display: none;
		visibility: hidden;
		opacity: 0;
	}
	
	.menu-right {
		top: 60px;
		right: 0;
		padding: 24px 4% 0 0;
		width: 96%;
		height: 156px;
	}
	.menu-right a {
		font: 500 1.2em 'Barlow Condensed';
	}
	nav {
		left: 0px;
		padding-left: 40px;
		width: auto;
	}
	
	/* + revoir les pages intérieures aussi à ce niveau */
	
}

@media (max-width: 1038px) {
	
	body {
		background-image: none;
	}
	
	h1, h1.int {
		padding: 0 !important;
		text-align: center;
		width: 100%;
		background-image: none;
		height: 60px;
		line-height: 60px;
		clip-path: none;
	}
	h1 span, h1.int span {
		display: none;
		visibility: hidden;
		opacity: 0;
	}
	h1 strong, h1.int strong {
		margin-right: 0px;
	}
	main, main.int {
		padding: 280px 40px 40px 40px;
	}
    
}

@media (max-width: 932px) {
	
	nav {
		padding-left: 0px;
	}
	.menu-right a {
		font: 500 1.1em 'Barlow Condensed';
	}
	
}

@media (max-width: 910px) {
	
	nav, .menu-right, .menu-right-int {
		display: none;
		visibility: hidden;
		opacity: 0;
	}
	
	.menu-right-home {
		position: fixed;
		top: 60px;
		right: 0;
		display: block;
		visibility: visible;
		opacity: 1;
		width: auto;
		background-color: #2d3d8c;
		color: #45c6e2;
		padding: 10px 40px;
		text-align: right;
		z-index: 5 !important;
		animation-delay: .5s;
		clip-path: polygon(1.25% 0%, 100% 0%, 100% 100%, 0% 100%);
	}
	
	main {
		padding: 150px 40px 40px 40px;
		animation-delay: 1.5s;
		animation-duration: 2s;
	}
	
}

@media (max-width: 682px) {
	
	.menu-right-home {
		text-align: center;
		clip-path: none;
	}
	.menu-right-home a {
		font: 500 1.2em 'Barlow Condensed';
	}
	.menu-right-home small a {
		font: 500 1.2em 'Barlow Condensed';
	}
	
	main, main.int {
		padding: 180px 40px 40px 40px;
	}
	main.int .ariane {
		text-align: left;
		padding: 10px 20px;
		clip-path: none;
	}
	
	.anim {
		position: relative;
		margin-bottom: 30px;
	}
	.anim .texte {
		display: none;
		visibility: hidden;
		opacity: 0;
	}
	.anim h4 {
		top: 0;
		clip-path: none;
	}
	.anim img {
		opacity: .85;
		transition: .3s linear;
		clip-path: none;
	}
	.anim:hover h4 {
		left: 0;
		width: 95%;
		padding: 10px 5% 10px 0;
	}
	.anim:hover .texte {
		right: 0;
		width: auto;
	}
	.agences {
		height: auto;
	}
	.agences .agence {
		margin-bottom: 20px;
	}
	.agences .agence:last-of-type {
		margin-bottom: 0;
	}
	.social-bas {
		display: block;
		visibility: visible;
		opacity: 1;
		width: 90%;
		background-color: #E7F9FF;
		padding: 1.5em 5%;
	}
	.social-bas a img {
		width: 52px;
		margin: 0 8px;
		opacity: .8;
		transition: .25s linear;
	}
	.social-bas a:hover img {
		opacity: 1;
	}
	
	.contenu {
		width: auto;
		margin: 0 !important;
	}
	.contenu .logo-article {
		float: none;
		display: inline-block;
		width: 100%;
		margin: 0 0 1.5em;
	}
	.contenu h2.spip {
		text-align: center !important;
		line-height: 1.2 !important
	}
	.contenu .surtitre {
		font: 500 1.6em 'Barlow Condensed';
		text-align: center;
	}
	
	a .grille {
		margin-bottom: 1.5em;
	}
	a .grille.biais img {
		clip-path: none;
	}
	
	.signature {
		line-height: 1.4;
	}
	
	.contenu .chapo {
		text-align: left;
		margin-bottom: 1em;
	}
	
	label {
		width: 100%;
		text-align: left;
		height: auto;
		line-height: auto;
		margin: 0 0 .8em 0;
		font: 500 1.1em 'Lato', sans-serif;
	}
	input.text {
		display: inline-block;
		width: 98%;
		height: 30px;
		line-height: 30px;
		padding: 10px 0 10px 2%;
		margin: .8em;
	}
	textarea {
		display: inline-block;
		width: 98%;
		padding: 10px 0 10px 2%;
		background-color: rgba(69,198,226,0.3);
	}
	
}

