:root {
  --padding: 80px;
  --gray: #86868B;
}

html, body{
	background: black;
	padding: 0;
	margin: 0;
	font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  
  width: 100%;
}

body{
	display: flex !important;
	flex-direction: column;
}

#header
{
	position: absolute;
	display: flex;
	top: 0;
	height: 10vh;
	width: 100%;
	color: white;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	font-size: 150%;
}

#header h1, #header h4
{
	margin: 0;
	padding: 0;
	flex-shrink: 0;
	line-height: 1;

}

#header h4{
	font-size: 70%;
}


h2
{
	padding: 0;
	margin: 0;
	font-size: 200%;
}


#partie1{
	background: black;
	height: 90vh;
	margin-top: 10vh !important;
	margin-bottom: 0;
	padding: 0;

}

@keyframes appear {
  from { transform: translateY(-50px); opacity: 0}
  to   { transform: translateY(0); opacity: 1}
}


#partie1 h1
{
	color: white;
  font-family: "Cal Sans", sans-serif;
  font-weight: 400;
  font-size: 300%;
  font-style: normal;
  text-align:center;
  filter: drop-shadow(0px 0px 20px #ffffff);
  position: relative;
  top: 10%;
  width: 90%;
  left: 5%;

animation: 3s appear;

}


#partie1 img{
	position: absolute;
	width: 100%;
	margin: 0;
	padding: 0;
	height: fit-content;
	bottom: 0;
	filter: drop-shadow(0px 0px 10px #808080);
}

#partie1 div
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	position: absolute;
	bottom: 2%;

	left: 50%;
	transform: translateX(-50%);
}

#partie1 p{
	color: white;
	margin: 0;
}
#partie1 ion-icon
{
	color: white
}


#partie2 {
	position: relative;
	background: black;
	color: white;
	text-align: center;
	z-index: 100;
	width: 100%;
	padding-block: var(--padding);
}



#partie2 img{
	width: 80%;
	position: relative;
	aspect-ratio: 1/1;
	border-radius: 15px;
}

#partie2 p{
	width: 60%;
	margin-left: 20%;
	margin-block: var(--padding);
	text-align: justify;
	padding: 0;
	color: var(--gray);
	font-size: 125%;
	line-height: 200%;
}

#partie2 span
{
	font-weight: bold;
	color: white;
}

#partie2 #flex{
	display: flex;
	flex-direction: row;
	width: 50%;
	position: relative;
	left: 25%;
	justify-content: space-around;
}

#partie2 .info
{
	width: 20%;
	background: var(--gray);
	color: white;
	padding: 10px;
	border-radius: 15px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

#partie2 .info p {
	color: white;
	line-height: normal;
	width: 100%;
	margin: 0 !important;
}
#partie2 #flex ion-icon {
	font-size: 200%;
}

#partie2 #flex p {
	margin: 0;
	padding: 0;
	padding-block: 5px;
	text-align: center;
	font-size: 125%;
	font-weight: bold;
}





#partie3, #partie3_ {
	position: relative;
	color: white;
	text-align: center;
	width: 100%;
	margin: 0;
	padding: 0;
	padding-bottom: var(--padding);


}

#partie3 img, #partie3_ img{
	filter: blur(5px);
	height: 100%;
	object-fit: cover;
	width: 100%;
	position: absolute;
	left: 0;

}

#partie3 h2, #partie3_ h2
{	position: relative;
	padding: 0;
	margin: 0;
	padding-top: var(--padding);
	padding-bottom: var(--padding);
	color: #94df66;
}

#partie3_ div
{
	display: flex;
	flex-direction: row;
	width: 72%;
	margin-left: 14%;
	justify-content: space-around;
}

#partie3 p,#partie3_ p
{	
	width: 100%;
	position: relative;
	padding: 0;
	margin: 0;
	text-align: center;
}

#partie3 span, #partie3_ span{
	font-family: "Cal Sans", sans-serif;
  font-weight: 400;
  font-size: 200%;
  font-style: normal;
  filter: drop-shadow(0px 0px 20px #ffffff);
}






#partie4 {
	position: relative;
	color: white;
	text-align: center;
	width: 100%;
	margin: 0;
	padding: 0;
	padding-bottom: var(--padding);


}

#grid{
	display: grid;
	width: 90%;
	margin-left: 5%;
	grid-template-columns: 60% 40%;
	gap:  calc(var(--padding)/2);
}

#p-liste
{
	display: flex;
	flex-direction: column;
	gap: calc(var(--padding)/2);
}

#partie4 #illustration{
	grid-column-start: 1;
	grid-column-end: 2;

	
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 15px;


}

#partie4 h2
{	position: relative;
	padding: 0;
	margin: 0;
	padding-top: var(--padding);
	padding-bottom: var(--padding);
	color: #ffd700;
}


#partie4 p
{	
	background: transparent;
	width: 100%;
	position: relative;
	padding: 0;
	margin: 0;
	text-align: justify;
	color: white;
}

#partie4 #liste
{
	display: flex;
	flex-direction: column;
	text-align: left;
	gap: 20px;
	width: 100%;

}


#partie4 #personne{
	display: grid;
	width: 70%;
	grid-template-columns: 20% 80%;
	gap: 5%;

}
#personne img
{
	width: 100%;
	aspect-ratio: 1/1;
	object-fit: cover;
	border-radius: 50%;
}

#personne p, #personne h3
{
	padding: 0 !important;
	background: transparent !important;
	margin: 0;
	left: 0;
}

#personne p{
	color: gray;
	font-size: 80%;
	font-style: italic;
	text-align: left;
}





#partie5 {
	position: relative;
	color: white;
	text-align: center;
	width: 100%;
	margin: 0;
	padding: 0;
	padding-bottom: var(--padding);

	display: flex;
	justify-content: space-around;
	flex-direction: row;




}


#partie5 h2
{	position: relative;
	padding: 0;
	margin: 0;
	color: white;
	display: none;
}


@media (min-width: 600px) {
  #partie5 a{
	border-radius: 30px;
	padding-inline: calc(var(--padding)/2);
	border: 2px solid white;
	background: white;
	color: black;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	gap: calc(var(--padding)/2);
	align-content: center;
	align-items: center;
	justify-items: center;

	text-decoration: none;
	font-style: none;

	font-size: 130%;

	transition: background 0.2s, color 0.2s;
}
@media (min-width: 900px) {
  #partie5 a{
	border-radius: 30px;
	padding-inline: calc(var(--padding)/2);
	border: 2px solid white;
	background: white;
	color: black;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	gap: calc(var(--padding)/2);
	align-content: center;
	align-items: center;
	justify-items: center;

	text-decoration: none;
	font-style: none;

	font-size: 130%;

	transition: background 0.2s, color 0.2s;
}
}

@media (min-width: 1500px) {
  #partie5 a{
	border-radius: 30px;
	padding-inline: 10%;
	border: 2px solid white;
	background: white;
	color: black;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	gap: calc(var(--padding)/2);
	align-content: center;
	align-items: center;
	justify-items: center;

	text-decoration: none;
	font-style: none;

	font-size: 130%;

	transition: background 0.2s, color 0.2s;
}
}




#partie5 a:hover, #partie5 a:active
{
	background: black;
	color: white;
}

#partie5 a:last-child:hover ion-icon
{
	filter: invert(100%);
}



#partie5 ion-icon
{
	font-size: 150%;
}

