@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Prompt:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');



body {
	font-family: 'Poppins', sans-serif;
	font-weight: 100;
	font-style: normal;
	color: white;
	margin: 0;
	padding: 0;
	background-image: url(/public/img/background.webp);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	user-select: none;
	cursor: default;

	a {
		color: inherit;
		text-decoration: none;
	}

	a:visited {
		color: inherit;
		text-decoration: none;
	}
}

body::after {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 1);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	z-index: -1;
	opacity: 0.5;
}

/* NAVBAR */


header {
	grid-area: header;
	color: white;
	text-align: center;
	line-height: 80px;
}


nav {
	backdrop-filter: blur(10px);
	box-shadow: 0px 0px 15px rgba(227, 228, 237, 0.3);
	border: 2px solid rgba(255, 255, 255, 0.18);
	margin: 3%;
	display: inline-block;
	justify-content: center;
	position: relative;
	z-index: 1000;
	border-radius: 10px;
}


#home {
	margin-top: auto;
	margin-bottom: -2.8%;
}

nav ul {
	list-style: none;
	display: flex;
	gap: 40px;
	margin: 0;
	padding-inline-end: 40px;
}

nav ul li a {
	padding: 20px 40px;
	transition: background-color 0.3s ease, transform 0.3s ease;
	border-radius: 10px;
	font-weight: bold;
	font-size: 20px;
}

nav ul li a:hover {
	background-color: rgba(255, 255, 255, 0.18);
	transform: scale(1.1);
}


/* BANNER */


banner {
	grid-area: banner;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;

}

banner h1 {
	font-size: 60px;
	font-weight: 500;
	background: linear-gradient(to right, #228B22, #c19a66, #228B22);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-block-end: 0px;
	margin-block-start: 40px;
	opacity: 1;

}

banner p {
	font-size: 30px;
	font-weight: 500;
	background: #edcdc2;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-block-end: 15px;
	margin-block-start: 10px;

}


/* MAIN */

main {
	grid-area: main;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;

}

.left-aside {
	grid-area: left-aside;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	font-size: medium;
}

left-aside ul {
	list-style: none;
	display: flex;
	gap: 2px;
	margin: 0;
	padding-inline-end: 40px;
	flex-direction: column;
}




/* Pour l'aside de gauche */
.left-aside {
	position: fixed;
	left: 5%;
	top: 45%;
	transform: translateY(-50%);
}


/* Pour l'aside de droite */
.right-aside {
	position: fixed;
	right: 5%;
	top: 45%;
	transform: translateY(-50%);
}

.right-aside {
	grid-area: right-aside;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
}




.low-content {
	grid-area: low-content;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
}

footer {
	grid-area: footer;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
}

.low-content {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	padding: 2rem;
}

.low-content ul {
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
}

.low-content li.experience {
	display: flex;
	align-items: center;
	gap: 2rem;
	list-style: none;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 15px;
	padding: 1rem;
	margin: 1rem 0;
	background: rgba(255, 255, 255, 0.05);
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: white;
	max-width: 800px;
	width: 100%;
	text-align: left;
}

.low-content h3 {
	font-size: 40px;
	font-weight: 500;
	background: linear-gradient(to right, #228B22, #c19a66, #228B22);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-block-end: 0px;
	margin-block-start: 40px;
	opacity: 1;
	border: rgba(255, 255, 255, 0.4) 2px solid;
	border-radius: 10px;
	padding: 10px;
	text-align: center;

}


.low-content li.experience h2 {
	margin: 0;
	font-size: 1.5rem;
}

.low-content li.experience p:first-of-type {
	margin: 0.5rem 0;
	font-size: 1rem;
	font-style: italic;
	color: rgba(255, 255, 255, 0.7);
}

.low-content li.experience p.middle {
	margin: 0.5rem 0;
	font-size: 1rem;
	font-style: italic;
	color: rgba(255, 255, 255, 0.85);
}

.low-content li.experience p:last-of-type {
	margin: 0.5rem 0;
	font-size: 1rem;
	font-style: italic;
	color: rgba(255, 255, 255, 0.7);
}

/* Image ronde avec effet de zoom */
.low-content li.experience img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	transition: transform 0.3s ease-in-out;
}

.low-content li.experience img:hover {
	transform: scale(1.3);
}


.toggle-button {
	margin-top: 10px;
	background: none;
	border: none;
	color: #00ffcc;
	font-weight: bold;
	cursor: pointer;
	text-decoration: underline;
	font-size: 18px;
	text-align: left;
	pointer-events: none;
	/* rend tout le bloc clickable */
}

/* Conteneur texte vertical */
.experience-text {
	display: flex;
	flex-direction: column;
	flex: 1;
}



























/* Grid */
.container {
	display:
		grid;
	grid-template-rows:
		150px auto 1fr auto 50px;
	grid-template-columns: 1fr 4fr 1fr;
	height: 100vh;
	grid-template-areas:
		"header header header"
		"left-aside banner right-aside"
		"left-aside main right-aside"
		"left-aside low-content right-aside"
		"footer footer footer";
	grid-gap: 20px;
	font-weight: 600;
	padding: 10px;
	font-size: 20px;
}





@media (max-width: 678px) {
	body {
		background-image: url(/public/img/backgroudPortable.webp);
	}

	.container {
		display: grid;
		grid-template-rows: auto auto auto auto auto auto auto;
		grid-template-columns: 1fr;
		grid-template-areas:
			"header"
			"banner"
			"main"
			"low-content"
			"left-aside"
			"right-aside"
			"footer";
		grid-gap: 10px;
		padding: 10px;
	}

	aside.left-aside,
	aside.right-aside {
		position: static !important;
		transform: none !important;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 1rem 0;
	}

	aside.left-aside ul.wrapper,
aside.right-aside ul.wrapper {
  display: grid;
  grid-template-columns: repeat(5, 60px);
  grid-template-rows: 60px;
  gap: 10px;
  justify-content: center;
}

	.left-aside ul,
	.right-aside ul {
		flex-direction: row;
		justify-content: center;
		padding: 0;
	}

	aside.left-aside ul.wrapper,
	aside.right-aside ul.wrapper {
		display: grid;
		grid-template-columns: repeat(3, 60px);
		grid-template-rows: repeat(2, 60px);
		gap: 10px;
		justify-content: center;
	}

	aside .icon {
		width: 60px;
		height: 60px;
		border-radius: 50%;
		background: white;
		display: flex;
		justify-content: center;
		align-items: center;
		aspect-ratio: 1;
	}

	aside .tooltip {
		font-size: 12px;
		position: absolute;
		top: -20px;
		background: black;
		color: white;
		padding: 2px 6px;
		border-radius: 4px;
		white-space: nowrap;
	}



	.menu-toggle {
		display: none;
		flex-direction: column;
		cursor: pointer;
		position: absolute;
		top: 20px;
		right: 30px;
		z-index: 2000;
	}

	.menu-toggle span {
		background: white;
		height: 3px;
		width: 25px;
		margin: 4px 0;
		border-radius: 5px;
		transition: 0.4s;
	}


	.menu-toggle {
		display: flex;
	}

	.nav-list {
		display: none;
		flex-direction: column;
		align-items: center;
		width: 100%;
		background-color: rgba(0, 0, 0, 0.8);
		position: absolute;
		top: 70px;
		right: 20px;
		border-radius: 10px;
		padding: 15px 20px;
		z-index: 9998;
		width: max-content;
		min-width: 160px;
		max-width: 90vw;
		word-break: break-word;
	}

	.nav-list.active {
		display: flex;
	}

	nav ul li a {
		padding: 15px;
		font-size: 18px;
	}


	.nav-list {
		display: none;
		flex-direction: column;
		align-items: center;
		width: 100%;
		background-color: rgba(0, 0, 0, 0.8);
		position: absolute;
		top: 70px;
		right: 20px;
		border-radius: 10px;
		padding: 15px 20px;
		z-index: 9998;
		width: max-content;
		min-width: 160px;
		max-width: 90vw;
		word-break: break-word;
	}

	.nav-list.active {
		display: flex;
	}

	nav ul li a {
		padding: 15px;
		font-size: 18px;
	}

	nav {
	backdrop-filter: blur(10px);
	box-shadow: 0px 0px 15px rgba(227, 228, 237, 0.3);
	border: 2px solid rgba(255, 255, 255, 0.18);
	margin: 3%;
	display: flex;
	justify-content: flex-start;
	position: relative;
	z-index: 1000;
	border-radius: 10px;
}
}