@import url('https://fonts.googleapis.com/css2?family=Open+Sans&family=Roboto:wght@300;400&display=swap');


:root{
	--hauteur-menu: 60px;
}
* {
	margin: 0px;
	padding: 0px;
	font-family: Open Sans, sans-serif;
	color: #8d8d8d;
}

/* Style the header with a grey background and some padding */
.header {
	overflow: hidden;
	background-color: #f1f1f1;
	padding: 20px 10px;
  }
  
  /* Style the header links */
  .header a {
	float: left;
	color: black;
	text-align: center;
	padding: 12px;
	text-decoration: none;
	font-size: 18px;
	line-height: 25px;
	border-radius: 4px;
  }
  
  /* Style the logo link (notice that we set the same value of line-height and font-size to prevent the header to increase when the font gets bigger */
  .header a.logo {
	font-size: 25px;
	font-weight: bold;
  }
  
  /* Change the background color on mouse-over */
  .header a:hover {
	background-color: #ddd;
	color: black;
  }
  
  /* Style the active/current link*/
  .header a.active {
	background-color: dodgerblue;
	color: white;
  }

/*Structure*/

h1{
	font-family: Roboto, sans-serif;
	padding: 15px 15px;
}
h2{
	font-family: Roboto, sans-serif;
	padding: 15px 15px;
}
h3{
	font-family: Roboto, sans-serif;
	padding: 15px 15px;
}

p{
	font-family: Open Sans, sans-serif;
}

/* Menu */

nav {
	width: 100%;
	font-size: 200%;
	position: sticky;
	top: 0;
}
nav > ul {
	display: flex;
	text-align: center;
	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.3);
	height: var(--hauteur-menu);
}
nav ul {
	list-style-type: none;
}
nav > ul > li {
	background-color: white;
	position: relative;
	height: 100%;
	flex: 1;
}
nav > ul > li:hover > a{
	color: #2169EC;
}
nav > ul > li > a {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
li a {
	text-decoration: none;
	color: #8d8d8d;
}
.menu-deroulant > a:after{
	content: '❯';
	font-size: 15px;
	margin-left: 7px;
	display: inline-block;
}
.menu-deroulant:hover > a:after{

	animation: rotationFleche 0.2s linear forwards;
	
}
@keyframes rotationFleche {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(45deg);
	}
	100%{
		transform: rotate(90deg);
	}
}
.sous-menu {
	margin-top: var(--hauteur-menu);
	width: 100%;
	text-align: left;
	overflow: hidden;
	max-height: 0;
	border-radius: 2px;
	background-color: white;
	z-index: 10;
}
.sous-menu > li > a > img {
	height: 20px;
	width: 20px;
	padding-right: 5px;
}
.menu-deroulant:hover > .sous-menu {
	animation: apparitionSousMenu 1s forwards;
}
@keyframes apparitionSousMenu {
	0% {
		box-shadow: 0px 3px 3px 1px rgba(0,0,0,0);
		border-top: 3px solid #2169EC;
	}
	30% {
		box-shadow: 0px 3px 3px 1px rgba(0,0,0,0.3);
	}
	100% {
		max-height: 50em;
		border-top: 3px solid #2169EC;
		box-shadow: 0px 3px 3px 1px rgba(0,0,0,0.3);
	}
}
.sous-menu > li:hover {
	background-color: rgba(33, 105, 236, 0.3);
	
}
.sous-menu > li > a {
	align-items: center;
	display: flex;
	height: 50px;
	padding-left: 20px;
	width: 100%;
	margin-top:12px;
	margin-bottom:12px;
}
.sous-menu > li:hover > a {
	color: white;
	
}

/*Disposition pages */
.container {
  display: grid; 
  grid-template-columns: 0.7fr 1.6fr 0.7fr; 
  grid-template-rows: 1fr 1fr 1fr; 
  gap: 0px 0px; 
  grid-template-areas: 
    ". middle ."
    ". middle ."
    ". middle ."; 
}
.middle { grid-area: middle; }

#accueil{
	text-align: center;
	font-size: 0px;
	margin-top: 35px;
}
#accueil > a {
	margin-left: 0px;
	z-index: 1;
}

#accueil > a > img{
	width: 30%;
	max-height: 100%;
	max-width: 400px;
	opacity:1; filter:alpha(opacity=100);
}

#accueil > a:hover {
	z-index: 2;
}
#accueil > a > img:hover{
	animation: zoomimage 0.3s forwards;
}

@keyframes zoomimage {
	/*0% {		
	}
	30% {
		
	}*/
	100% {
	opacity:1; filter:alpha(opacity=100);
	width: 40%;
	-webkit-transform:scale(1.1); /* Safari et Chrome */
	-moz-transform:scale(1.1); /* Firefox */
	-ms-transform:scale(1.1); /* Internet Explorer 9 */
	-o-transform:scale(1.1); /* Opera */
	transform:scale(1.1);

	}
}
	
/* tableaux */
.table-fill {
  background: white;
  border-radius:3px;
  border-collapse: collapse;
  height: 320px;
  margin: auto;
  max-width: 100%;
  padding:5px;
  width: 100%;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);  
  animation: float 5s infinite;
}
 
th {
  color:#D5DDE5;
  background:#0e43a4;
  border-bottom:4px solid #9ea7af;
  border-right: 1px solid #343a45;
  font-size:130%;
  font-weight: 100;
  padding:24px;
  text-align:left;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
  vertical-align:middle;
}

th:first-child {
  border-top-left-radius:3px;
}
 
th:last-child {
  border-top-right-radius:3px;
  border-right:none;
}  
tr {
  border-top: 1px solid #C1C3D1;
  border-bottom: 1px solid #C1C3D1;
  color:#666B85;
  /* font-size:16px; */
  font-size:80%;
  font-weight:normal;
  /* text-shadow: 0 1px 1px rgba(256, 256, 256, 0.1); */
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);

}
 
tr:hover td {
  background:rgba(33, 105, 236, 0.3);
  color:#FFFFFF;
  border-top: 1px solid #22262e;
}
 
tr:first-child {
  border-top:none;
}

tr:last-child {
  border-bottom:none;
}
 
tr:nth-child(odd) td {
  background:#EBEBEB;
}
 
tr:nth-child(odd):hover td {
  background:rgba(33, 105, 236, 0.3);
}

tr:last-child td:first-child {
  border-bottom-left-radius:3px;
}
 
tr:last-child td:last-child {
  border-bottom-right-radius:3px;
}
 
td {
  background:#FFFFFF;
  padding:20px;
  text-align:left;
  vertical-align:middle;
  font-weight:300;
  /* font-size:18px; */
  font-size:100%;
  text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2);
  border-right: 1px solid #C1C3D1;
}

td:last-child {
  border-right: 0px;
}

th.text-left {
  text-align: left;
}

th.text-center {
  text-align: center;
}

th.text-right {
  text-align: right;
}

td.text-left {
  text-align: left;
}

td.text-center {
  text-align: center;
}

td.text-right {
  text-align: right;
}

.information {
	display: flex;
	align-items: stretch;
}

.contact {
	float:left;
}
.contact > ul > li{
list-style-type: none;
padding: 8px 8px;
}

.contact > ul > li > a>  img {
	max-width:1em;
	height: auto; 
	vertical-align: middle;
}
.plan{
	margin-left: 400px;
	float:right;
}

/*Responsive mobile*/
@media screen and (max-width: 1000px)
{

/* Menu */

nav {
	width: 100%;
	/* font-size: 18px; */
	font-size: 200%;
	position: sticky;
	top: 0;
	margin-top:5px;
	margin-bottom:5px;
}
nav > ul {
	display: flex;
	text-align: center;
	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.3);
	height: var(--hauteur-menu);
}
nav ul {
	list-style-type: none;
}
nav > ul > li {
	background-color: white;
	position: relative;
	height: 100%;
	flex: 1;
}
nav > ul > li:hover > a{
	color: #2169EC;
}
nav > ul > li > a {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
li a {
	text-decoration: none;
	color: black;
}
.menu-deroulant > a:after{
	content: '❯';
	font-size: 15px;
	margin-left: 7px;
	display: inline-block;

}
.menu-deroulant:hover > a:after{
	animation: rotationFleche 0.2s linear forwards;
}
@keyframes rotationFleche {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(45deg);
	}
	100%{
		transform: rotate(90deg);
	}
}
.sous-menu {
	margin-top: var(--hauteur-menu);
	width: 100%;
	text-align: left;
	overflow: hidden;
	max-height: 0;
	border-radius: 2px;
	background-color: white;

}
.sous-menu > li > a > img {
/* 	height: 20px;
	width: 20px; */
	height: auto;
	width: 05%;
	padding-right: 5px;
}
.menu-deroulant:hover > .sous-menu {
	animation: apparitionSousMenu 1s forwards;
}
@keyframes apparitionSousMenu {
	0% {
		box-shadow: 0px 3px 3px 1px rgba(0,0,0,0);
		border-top: 3px solid #2169EC;
	}
	30% {
		box-shadow: 0px 3px 3px 1px rgba(0,0,0,0.3);
	}
	100% {
		max-height: 50em;
		border-top: 3px solid #2169EC;
		box-shadow: 0px 3px 3px 1px rgba(0,0,0,0.3);
	}
}
.sous-menu > li:hover {
	background-color: rgba(33, 105, 236, 0.3);
	
}
.sous-menu > li > a {
	align-items: center;
	display: flex;
	height: 50px;
	padding-left: 20px;
	width: 100%;
	margin-top:12px;
	margin-bottom:12px;

}
.sous-menu > li:hover > a {
	color: white;	
}	

#accueil > a > img{
	width: 500px;
	max-height: 100%;

}

tr {
  font-size:150%;
}


.information{
	display: inherit;
	align-items:initial;
	text-align: left;
}

.contact {
	float:inline-start;
}

.plan{
	margin-left:initial;
	float:inline-end;
}

}
/* Add media queries for responsiveness - when the screen is 500px wide or less, stack the links on top of each other */
@media screen and (max-width: 500px) {
  .header a {
    float: none;
    display: block;
    text-align: left;
  }
  
 .menu-deroulant > a:after{
	content: '❯';
	font-size: 15px;
	height: 50px;
	margin-left: 7px;
	display: inline-block;
}

.sous-menu {
	margin-top: var(--hauteur-menu);
	width: 100%;
	text-align: left;
	overflow: hidden;
	max-height: 0;
	border-radius: 2px;
	background-color: white;
}
.sous-menu > li > a > img {
	height: auto;
	width: 05%;
	padding-right: 5px;
}

.sous-menu > li > a {
	align-items: center;
	display: flex;
	height: 50px;
	padding-left: 20px;
	width: 100%;
	margin-top:12px;
	margin-bottom:10px;
}


}