html{
	position: relative;
	min-height: 100%;
}

body{
	border: 0;
	margin: 0;
	font-family: 'Dosis';
	background-image: url('../img/ciel.jpg');
}

a{
	color: blue;
}

h1{
	font-size: 2.6vw;
}

h2{
	font-size: 3vw;
}

h3{
	font-size: 2.2vw;
}

h4{
	font-size: 1.8vw;
}

@media screen and (max-width: 600px) {
	h1{
		font-size: 7vw;
		padding: 1vw;
	}
	
	h2{
		font-size: 6vw;
		padding: 1vw;
	}
	
	h3{
		font-size: 5.5vw;
		padding: 1vw;
	}
	
	h4{
		font-size: 5vw;
		padding: 1vw;
	}
	
	.desc p{
		font-size: 4vw;
		padding: 1vw;
	}
}



header{
	background-color: white;
}

ul, ol{
	padding-left: 2.5vw;
	margin: 0;
}

p{
	padding: 0;
	margin: 1vw 0;
}

@media screen and (max-width: 600px){
	ul, ol{
		padding-left: 5vw;
		margin: 0;
	}
	
	p{
		padding: 1vw;
		margin: 2vw 0;
	}
}



/* FONT */


/* latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 400;
  src: url('HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7Ml2xME.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* HEADER */

header{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.titre{
	padding-left: 5%;
}

.titre a{
	color: black;
	text-decoration: none;
}

.desc{
	padding-right: 5%;
	text-align: right;
}

.desc p{
	font-size: 1.2vw;
}

@media screen and (max-width: 600px){
	.desc {
		padding-top: 2vw;
	}
	
	.desc p{
		font-size: 3vw;
	}
}




/* CONTENU */

.center{
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.shadowText{
	text-shadow: 0 0 0.5vw black;
}

.contenu{
	padding: 1.6vw 1.7vw 11vw 1.7vw;
}

.withFlex{
	display: flex;
	flex-direction: row;
	justify-content: left;
}

.whitePage{
	box-shadow: 0 0 1vw black;
    background-color: white;
	padding: 0.2vw 1.7vw;
	border-radius: 0.5vw;
}

.withLinks{
	margin-left: auto;
	padding: 0.2vw 1.8vw 1.6vw 1.8vw;
	border-radius: 0.5vw;
	width: 80%;
	box-shadow: 0 0 1vw black;
    background-color: white;
}

.links{
	position:relative;
	width: 20%;
	margin-right: auto;
	padding: 0;
}

.links ul{
	padding: 0;
	list-style: none;
}

.contenu p:not(.codeArea), li{
	font-size: 1.6vw;
}

@media screen and (max-width: 600px) {
	.withFlex{
		flex-direction: column;
		flex-justify: center;
		margin: 0;
	}
	
	.contenu{
		margin-right: 0;
		padding: 1.6vw 1.7vw 26vw 1.7vw;
	}
	
	.shadowText{
		text-shadow: 0 0 1.5vw black;
	}
	
	.links{
		width: 100%;
		padding: 0;
		float: none;
		margin-right: 0;
		position: relative;
	}
	
	.links li{
		padding-right: 0;
	}
	
	.withLinks{
		float: left;
		width: auto;
		position: relative;
		margin-left: 0;
		padding-bottom: 4vw;
	}
	
	.contenu p:not(.codeArea), li{
		font-size: 4vw;
	}
}



/* DIVERS  */

#randPic{
	text-align: center;
	max-height: 16vw;
	background-color: white;
	border: 1vw solid white;
	border-radius: 1vw;
}

.divPic {
	position: relative;
	width: min-content;
	display: flex;
	text-align: center;
}

.div-btn {
	flex-flow: column;
}

.img-btn {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	width: 3vw;
	padding: 0 0 0.5vw 0.5vw;
	cursor: pointer;
}

@media screen and (max-width: 600px){
	#randPic{
		max-height: 40vw;
		border: 2.5vw solid white;
		border-radius: 2.5vw;
	}
	
	.img-btn{
		width: 6vw;
	}
}

.docTable{
	text-align: left;
	border: 0.15vw solid gray;
	border-radius: 0.5vw;
	padding: 0.5vw 1vw;
	border-spacing: 0;
	margin: auto auto;
	max-width: 55vw;
	table-layout: fixed;
	overflow-x: auto;
}

.docTable td{
	padding: 0.5vw 1vw;
	border-top: 0.15vw solid gray;
	font-size: 1.6vw;
}

.docTable th{
	padding: 0.5vw 1vw;
	font-size: 1.6vw;
}

.imageTable{
	text-align: center;
	padding: 0.5vw 1vw;
	border-spacing: 0;
	margin: auto auto;
	max-width: 55vw;
	table-layout: fixed;
	overflow-x: auto;
}

.imageTable td{
	padding: 0.2vw 1.5vw;
	width: 40vw;
	font-size: 1.6vw;
}

.imageTable img{
	max-height: 15vw;
	max-width: 15vw;
}

.lienMort{
	color: red;
}

.blanc{
	color: white;
}

.comment{
	opacity: 0.6;
	font-family: monospace;
}

.comment a{
	font-family: monospace;
	color: black;
}

.goUp{
	position: fixed;
	bottom: 2vw;
	right: 3.5vw;
	width: 3vw;
	height: 3vw;
	background-color: white;
	border-radius: 1.5vw;
	z-index: 1;
}

.icon{
	width: 1.2vw;
}

.galerie{
	text-align: center;
	padding-bottom: 1.5vw;
}

.galerie a{
	text-decoration: none;
}

.galerie img{
	width: 22vw;
	margin: 0.2vw;
}

@media screen and (max-width: 600px){
	.docTable{
		border: 0.4vw solid gray;
		border-radius: 0.9vw;
		padding: 0.5vw 1vw;
		max-width: 80vw;
	}

	.docTable td{
		padding: 2vw 4vw;
		border-top: 0.4vw solid gray;
		font-size: 3.5vw;
	}

	.docTable th{
		padding: 2vw 4vw;
		font-size: 3.5vw;
	}
	
	.imageTable{
		text-align: center;
		padding: 0.5vw 1vw;
		border-spacing: 0;
		margin: auto auto;
		max-width: 55vw;
		table-layout: fixed;
	}

	.imageTable td{
		padding: 0.2vw 1.5vw;
		font-size: 4vw;
		width: 40vw;
	}

	.imageTable img{
		max-height: 50vw;
		max-width: 30vw;
	}
	
	.goUp{
		position: fixed;
		bottom: 3vw;
		right: 5vw;
		width: 8vw;
		height: 8vw;
		background-color: white;
		border-radius: 4vw;
	}
	
	.icon{
		width: 3vw;
	}
	
	.galerie img{
		width: 85vw;
		margin: 0.4vw;
	}
}



/* ZONES DE TEXTE */

.codeArea{
	border: 0.15vw solid gray;
	border-radius: 0.5vw;
	margin: 0.5vw 0;
	font-family: monospace;
	padding: 0.6vw;
	background-color: #F4F4F4;
	font-size: 1.4vw;
}

.successArea{
	border: 0.15vw solid darkgreen;
	border-radius: 0.5vw;
	margin: auto auto;
	padding: 0.6vw;
	background-color: lightgreen;
}

.failArea{
	border: 0.15vw solid darkred;
	border-radius: 0.5vw;
	margin: auto auto;
	padding: 0.6vw;
	background-color: lightcoral;
}

.importantArea{
	border: 0.15vw solid darkblue;
	border-radius: 0.5vw;
	margin: auto auto;
	padding: 0 0.6vw;
	background-color: lightblue;
}

@media screen and (max-width: 600px){
	.codeArea{
		border: 0.4vw solid gray;
		border-radius: 0.9vw;
		margin: 0.5vw 0;
		padding: 1.2vw;
		font-size: 3.2vw;
	}

	.successArea{
		border: 0.4vw solid darkgreen;
		border-radius: 0.9vw;
		padding: 1.2vw;
	}

	.failArea{
		border: 0.4vw solid darkred;
		border-radius: 0.9vw;
		padding: 1.2vw;
	}

	.importantArea{
		border: 0.4vw solid darkblue;
		border-radius: 0.9vw;
		padding: 0 1.2vw;
	}
}



/* TABLE MODIFICATIONS */

.changeTable{
	text-align: left;
	border: 0.15vw solid black;
	border-radius: 0.5vw;
	padding: 0.5vw 0.9vw;
	border-spacing: 0;
	margin: auto auto;
	max-width: 80vw;
	table-layout: fixed;
	background-color: white;
	box-shadow: 0 0 1vw black;
}

.leftCol{
	padding-right: 8vw;
}

.changeTable td{
	padding-top: 0.3vw;
	padding-bottom: 0.3vw;
	border-top: 0.15vw solid gray;
	font-size: 1.6vw;
}

.changeTable th{
	padding-bottom: 0.3vw;
	font-size: 1.6vw;
}

@media screen and (max-width: 600px){
	.changeTable{
		border: 0.4vw solid black;
		border-radius: 0.9vw;
		padding: 1vw 2vw;
		border-spacing: 0;
		margin: auto auto;
		max-width: 90vw;
		box-shadow: 0 0 1vw black;
	}

	.leftCol{
		padding-right: 8vw;
	}

	.changeTable td{
		padding: 0.8vw 0;
		border-top: 0.15vw solid gray;
		font-size: 4vw;
	}

	.changeTable th{
		padding-bottom: 0.8vw;
		font-size: 4vw;
	}
}





/* MENU SAUT DE PAGE */

.sautPage{
	border: 0.15vw solid gray;
	border-radius: 0.5vw;
	margin: auto auto;
	text-align: center;
}

.sautPage td{
	padding: 1vw 0.9vw;
	max-width: 15vw;
	font-size: 1.6vw;
}

.sautPage a{
	text-decoration: none;
}

.sautTitre{
	color: black;
}

@media screen and (max-width: 600px){
	.sautPage{
		border: 0.4vw solid gray;
		border-radius: 0.9vw;
	}
	
	.sautPage td{
		padding: 3vw 2.5vw;
		max-width: 15vw;
		font-size: 3.5vw;
	}
}





/* FOOTER */

.footer{
	background-color: lightgray;
	color: black;
	position: absolute;
    left: 0;
    bottom: 0;
    height: 9vw;
	width: 100%;
	text-align: center;
	box-shadow: 0 0 0.5vw black;
}

.footer p{
	font-size: 1.2vw;
}

@media screen and (max-width: 600px){
	.footer p{
		font-size: 3vw;
	}
	.footer{
		height: 24vw;
		box-shadow: 0 0 1vw black;
	}
}




/* BARRE DE NAVIGATION */

.menu{
	background-color: lightgray;
	font-size: 4vw;
}

.menu ul{
	padding-left: 0;
	margin: 0;	
}

nav{
    background-color: white;
}

nav ul{
    list-style-type: none;
    display: flex;
}

nav ul li{
    flex: 1 1 auto;
    text-align: center;
    position: relative;
}

nav a{
    display: block;
    color: black;
    border-bottom: 0.15vw solid transparent;
    padding: 0.8vw 0px;
	text-decoration: none;
}

nav a:hover{
    color: blue;
	background-color: #C9C9C9;
    border-bottom: 0.15vw solid blue;
	text-decoration: none;
}

.souscategorie{
    display: none;
    box-shadow: 0 0.1vw 0.15vw gray;
    background-color: white;
    position: absolute;
    width: 100%;
    z-index: 1000;	
}

nav > ul li:hover .souscategorie{
    display: flex;
    flex-flow: column wrap;
}
.souscategorie li{
    flex: 1 1 auto;
    text-align: left;
}
.souscategorie a{
    padding: 0.8vw;
    border-bottom: none;
	border-left: 0.15vw solid transparent;
	text-decoration: none;
}
.souscategorie a:hover{
    border-bottom: none;
	border-left: 0.15vw solid blue;
    background-color: #F9F9F9;
}

.categorie{
	margin: 0;
}

.iconBurger{
	display: none;
}

/*position the label*/
label {
  position: relative;
  display: block;
  cursor: pointer;
}

/*show the submenu when input is checked*/
input:checked~ul.submenu {
  display: block;
}

/* When the screen is less than 600 pixels wide, hide all links, except for the first one ("Home"). Show the link that contains should open and close the topnav (.icon) */
@media screen and (max-width: 600px) {
	.categorie > li {
		display: none;
	}
	
	.categorie .iconBurger {
		float: right;
		display: block;
		width: 100%;
	}
	
	.centerFlex{
		flex-direction: column;
	}
}


@media screen and (max-width: 600px) {
	.menu.responsive{
		position: relative;
		margin-bottom: 7vw;
	}
	
	.menu.responsive li.iconBurger {
		position: absolute;
		float: right;
		background-color: lightgray;
		border-bottom: 0;
		font-size: 4vw;
	}
	
	.menu.responsive li {
		float: none;
		display: block;
		text-align: center;
		border-bottom: 0.1vw solid #BCBCBC;
		font-size: 4vw;
	}
	
	.menu.responsive .categorie{
		float: none;
		display: block;
		width: 100%;
	}
	
	.menu.responsive .souscategorie {
		position: relative;
	}
	
	.souscategorie{
		display: block;
		box-shadow: 0;
	}
}



/* BOUTON */

.bouton{
	display:block;
	padding: 0.6vw;
	border-left: 0.4vw solid gray;
	background-color: lightgray;
	text-transform: uppercase;
	text-align: left;
	color: black;
	font-size: 1.6vw;
	margin: 0 1.6vw 1.6vw 0;
	text-decoration: none;
	box-shadow: 0 0 1vw black;
	border-radius: 0.2vw;
}

.bouton:hover{
	border-left: 0.4vw solid blue;
	background-color: #C9C9C9;
	color: blue;
}

@media screen and (max-width: 600px){
	.bouton{
		margin: 0 0 1.6vw 0;
		font-size: 3.8vw;
		border-left: 1vw solid gray;
		padding: 1.4vw;
		border-radius: 0.4vw;
	}
	
	.bouton:hover{
		border-left: 1vw solid blue;
	}
}