/*CSS reset*/
*
{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	line-height: 1;
}

/*Polices d'écriture spéciales*/
@font-face 
{
	font-family:  Economica;
	src: url(Economica-Regular.ttf);
}

/* Animations */
@keyframes anim-galerie
{
	from {top: 40px; opacity: 0;}
	to {top: 0; opacity: 1;}
}
/*Le style par défaut, valable sur smartphone et tout appareil format portrait !*/
body
{
	background: white;
	font-family: Economica, sans-serif;
	font-size: max(1.5em,1.1vw);
	text-align: justify;
	margin: 0;
	padding: 0;
	display: flex;
	flex-flow: column nowrap;
}
header
{
	text-align: center;
	order: 1;
}
h1
{
	margin : 0;
}
h1 img
{
	width: 90%;
}
h2, h3, h4, h5, h6
{
	margin-bottom: 0.3em;
	margin-top: 0.5em;
}
.reseaux
{
	order: 5;
	text-align: center;
}
.reseaux img
{
	width: 10%;
	margin: 5%;
	filter: grayscale(100%);
}
nav
{
	order: 4;
	text-align: center;
	font-size : max(2em,1.5vw);
}
.liens_navigation
{
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: grid;
	grid: auto auto auto / auto; /*3 lignes taille auto 1 colonne auto, les liens sont disposés verticalement sans séparateur*/
}
nav a
{
	display: inline-block;
	text-decoration: underline;
	color : black;
	transition: text-shadow 0.4s;
	padding: 3vh;
	border: 1px solid grey;
	border-radius: 3px;
	margin-top: 0.2em;
}
nav .separateur
{
	display: none; /* pour faire disparaître le | entre les liens */
}
nav a:hover
{
	text-shadow: grey 2px 2px 5px;
	color : black;
}
a
{
	color: black;
	text-decoration: undeline;
}
#carrousel
{
	order: 3;
	background-color: black;
	background-image: url(images/carrousel/verticales/nounouille.jpg);
	background-position: center;
	box-sizing: border-box;
	background-size: cover;
	min-height: 80vh;
	max-height: 80vh;
	margin: 0 0 0 0;
}
#carrousel_top
{
	width: 100%; /* Cet élément sert à faire des transitions sympas même sous firefox. C'est un calque qui se met au-dessus du carrousel pour faire un fondu avec l'opacité.*/
	box-sizing: border-box;
	min-height: 80vh;
	max-height: 80vh;
	background-position: center;
	background-size: cover;
	background-image: url(images/carrousel/verticales/camille.jpg);
	opacity: 0;
	transition: opacity 1s;
}
section
{
	order: 2;
	width:95%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1%;
	text-align: justify;
	list-style-position: inside;
}
ul ul
{
	list-style-type: circle;
	margin-left: 3%;
}
.en-tete_galerie
{
	font-size: max(1.8em,1.5vw);
	text-align: center;
}
#galerie
{
	order: 2;
	width: 95vw;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
}
.paire_de_colonnes
{
	display: flex;
	flex-direction: column;
	flex-basis: 50%;
	flex-wrap: wrap;
}
.colonne_galerie
{
	width: 100%;
	flex-grow: 0;
}
.colonne_galerie img	
{
	box-sizing: border-box;
	width: 98%;
	margin: 1% 1% 1% 1%;
	position: relative;
	animation-name: anim-galerie;
	animation-duration: 0.7s; //Note: le délai est fixé dans le php
	animation-timing-function: ease-out;
	animation-fill-mode: both;
}
#galerie_hub
{
	order: 2;
	display: grid;
	grid: 1fr 1fr / 1fr 1fr; //sur téléphone on a une grille 4 par 4 pour les catégories
}
.categorie
{
	display: inline-block;
	width: 45vw;
	min-height: 45vw;
	max-height: 45vw;
	font-size: 2em;
	color: white;
	text-decoration: none;
	margin: 4% auto 4% auto;
	padding: 0.6em;
	background-size: cover;
	box-shadow: 0px 10px 10px rgb(100,100,100);
	text-shadow: 2px 2px rgba(0,0,0,0.5);
	transition: transform 0.5s, box-shadow 0.5s, text-shadow 0.3s;
}
.categorie:hover
{
	transform: matrix(1.05, 0, 0, 1.05, 0, -3);
	box-shadow: 0px 20px 15px rgb(150,150,150);
	text-shadow: 2px 2px rgba(0,0,0,0.5), 0px 0px 50px white, 0px 0px 10px white; 0px 0px 2px white;
}

/*Formulaire de contact*/
form
{
	display: flex;
	flex-flow: column;
	line-height: 1.5;
	box-sizing: content-box;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
form img
{
	margin-left: auto;
	margin-right: auto;
	max-width: 300px;
}
form button
{
	width: 50%;
	min-height: 2em;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2%;
	margin-bottom: 2%;
	font-family: Economica;
	font-size: 1.5em;
}
input
{
	margin-bottom: 1;
	font-family: sans-serif;
	font-size: 1em;
}
textarea
{
	font-family: sans-serif;	
	font-size: 1em;
}

footer
{
	order: 6;
	text-align: center;
	position: relative;
	bottom: 0;
	height: 10%;
}
.liens_pied_de_page
{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1em;
	display: inline-block;
}
footer a
{
	padding: auto;
	text-decoration: underline;
	color: black;
}

/*Le style valable sur ordinateur !*/
@media screen and (orientation: landscape){
#carrousel
{
	background-image: url(images/carrousel/horizontales/vercors.jpg);
	min-height: 70vh;
	max-height: 70vh;	
}
#carrousel_top
{
	background-image: url(images/carrousel/horizontales/vercors.jpg);
	min-height: 70vh;
	max-height: 70vh;
}
}
@media screen and (orientation: landscape) and (min-width: 800px){
body
{
	display: block;
}
h1 img
{
	width: 50%;
}
.reseaux
{
	position: absolute;
	top: 0;
	left: 0;
}
.reseaux img
{
	height: 1.6em;
	width: 1.6em;
	margin: 0.2em;
}
nav
{
	text-align: center;
	font-size : clamp(1.3em,2.2vw,2.2vw);
	margin-left: auto;
	margin-right: auto;
}
.liens_navigation
{
	max-width: 70%;
	margin-left: auto;
	margin-right: auto;
	display: grid;
	grid: auto / 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}
nav .separateur
{
	display: inline-block;
	border: none;
	text-decoration: none;
	color : black;
	padding: 0.3em;
	margin: 0.1em;
}
nav a
{
	display: inline-block;
	border: none;
	text-decoration: none;
	color : black;
	padding: 0.3em;
	margin: 0.1em;
}
#carrousel
{
	background-color: black;
	background-image: url(images/carrousel/horizontales/vercors.jpg);
	background-position: center;
	background-size: cover;
	min-height: 70vh;
	max-height: 70vh;
	margin: 0;
}
#carrousel_top
{
	min-height: 70vh;
	max-height: 70vh;
	/* width: 100%; Cet élément sert à faire des transitions sympas même sous firefox. C'est un calque qui se met au-dessus du carrousel pour faire un fondu avec l'opacité.
	height: 100%; */
	background-image: url(images/carrousel/horizontales/vercors.jpg);
}
section
{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	text-align: justify;
}
#galerie
{
	width: 85vw;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	font-size: 1.3vw;
}
#galerie_hub
{
	margin: 0 auto 0 auto;
	display: block;
	width: 85%;
}

.categorie
{
	width: 100%;
	min-height: initial;
	max-height: initial;
	font-size: 2em;
	color: white;
	text-decoration: none;
	margin: 1% 0 1% 0;
	padding: 1em;
}
.paire_de_colonnes
{
	flex-direction: row;
}
.colonne_galerie
{
	width: 50%;
}
.colonne_galerie img	
{
	box-sizing: border-box;
	width: 98%;
	margin: 1% 1% 1% 1%;
}

form
{
	width: 70%;
}

footer
{
	font-size: 1.5em;
	text-align: center;
	position: relative
	bottom: 0;
	height: 10%;
	padding-top: 0.5em;
}
.liens_pied_de_page
{
	width: 30%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1em;
	display: grid;
	grid: auto/ 1fr 1fr;
}
footer a
{
	padding: auto;
	text-decoration: underline;
	color: black;
}
}