html, body {
	width: 100%;
	margin: auto;
	height: 100%;
	padding: 0;
}

body {
	position: relative;
	font-family: Verdana;
	font-size: 1em;
	margin: 0;
	padding: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
}

* {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
	outline:none;
}

#conteneur {
  position: relative;
  min-height: 100vh; /* 100vh = 100% de "viewport height" */
}

h1 {
	font-size: 2.1em;
	font-weight: normal;
	padding-bottom: 10px;
	border-bottom: 2px dotted #000;
	margin-bottom: 40px;
}

header {
	display:flex;
	flex-wrap: wrap;
	padding:30px;
	background: #EEE;
	box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
}

header .rafraichir {
	flex-basis:25%;
}
header .rafraichir a, footer .bouton-accueil a {
	display: inline-block;
	padding: 15px 20px;
	border-radius: 5px;
	background: #E8E8E8;
	color: #555;
	transition: all 0.5s;
}
header .rafraichir a:hover, footer .bouton-accueil a:hover {
	background: #555;
	color: #E8E8E8;
	padding: 15px 25px;
}

header .titre {
	flex-basis:75%;
	text-align:right;
	font-size:2.2em;
}

@media screen and (max-width: 800px) {
	header  {
		flex-direction: column-reverse;
	}
	header .rafraichir, header .titre {
		flex-basis: 100%;
		text-align: center;
		padding: 15px;
	}
}

main {
	max-width: 1200px;
	margin: 30px auto 0 auto;
}


ul {
	display: flex;
	flex-wrap: wrap;
	max-width: 1200px;
	margin: 50px auto 50px auto;
	list-style-type:none;
	padding:0;
}
ul li {
	position: relative;
	display:inline-block;
	/* flex-basis: 20%; */
	height: 400px;
	text-align:center;
	font-size:1em;
	transition:all 0.3s;
	margin-right: 1%;
}
ul li:nth-child(1), ul li:nth-child(5) { flex-basis: 23.5%; }
ul li:nth-child(2), ul li:nth-child(3), ul li:nth-child(4) { flex-basis: 16%; }
ul li a, ul li span { display: block; width: 100%; background: #EEE; }

ul li:nth-child(1) a, ul li:nth-child(5) a, ul li:nth-child(3) a {
	position: absolute;
	top: 50%;
	bottom: 50%;
	transform: translate(0, -50%);
	height: 150px;

}
ul li:nth-child(3) a {
	height: 276px;
}
/*
ul li:nth-child(2) span, ul li:nth-child(4) span {
	position: absolute;
	top: 50%;
	bottom: 50%;
	width: 100%;
	display: block;
	height: 150px;
	border: 1px solid blue;
}
ul li:nth-child(2) span {
	transform: translate(0, -100%);
}
ul li:nth-child(4) span {
	transform: translate(50, -50%);
}
*/
ul li:nth-child(2) a, ul li:nth-child(4) a {
	position: absolute;
	height: 275px;
}
ul li:nth-child(2) a { top: 0; }
ul li:nth-child(4) a { bottom: 0; }

ul li a:hover {
	background:rgba(117, 117, 117, 0.5);
	/*color:#EBEBEB;*/
	z-index: 0;
}

/* ul li span:nth-child(2) { */
ul li a+span {
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
}
/*
ul li span:nth-child(1):hover+ul li span:nth-child(2) {
	background:#757575;
	color:#EBEBEB;
	border: 3px solid red;
}
*/
ul li a:hover+span {
	/*background:#757575;
	color:#EBEBEB;*/
	background: none;
	color:#FFF;
	z-index: 0;
}


a.classe-hover { background:rgba(117, 117, 117, 0.5); } 
span.classe-hover { color:#FFF; background:none; cursor: pointer; }
a.classe-not-hover { background:#EEE; }
span.classe-not-hover { color:#000; background:#EEE; }

/*
ul li a {
	text-decoration:none;
	color:#000;
	background:#FFFFFF;
	transition:all 0.3s;
}
*/
ul li i {
	display:block !important; /* prioritaire */
	font-size:60px;
}



footer {
	position: absolute; /* Pour que le footer reste en bas de page si le contenu central contient peu de choses */
	bottom: 0; /* idem */
	width: 100%; /* idem */
	display:flex;
	flex-wrap: wrap;
	padding:30px 30px 17px 30px;
	background: #EEE;
}

footer .bouton-accueil {
	flex-basis:30%;
}

div.copyright {
	flex-basis:70%;
	text-align:right;
	color:#888;
	font-size:1.2em;
	padding-top: 15px;
}