@charset "UTF-8";
/* CSS Document */

/*paramètres généraux*/

body, html {
margin: 0; 
padding: 0; 
background-color: #090909; 
color: #F9F9F9; 

font-family: "Mozilla Headline", sans-serif; 
webkit-font-smoothing: antialiased; 
display: flex; 
flex-direction: column; 

font-family: "Mozilla Headline", sans-serif;
font-optical-sizing: auto;
font-weight: 600;
font-style: normal;
font-variation-settings: "width" 100;
}

.container{
    display: flex; 
    width: 100%; 
    height: calc(100vh - 30px); 
    overflow: hidden;
}

/*header*/

.sticky-header {
	width: 100%;
	height: 30px;
	position: sticky;
	top: 0;
	background-color: #F9F9F9;
	color: #0DFF00;
	display: flex;
	align-items: center;
	z-index: 100;
	overflow: hidden;
}

.sticky-header p {
	font-family: "Mozilla Headline";
	font-size: 1.5rem;
	letter-spacing: 0.04em;
	color: #090909;
}

span {
font-family: "Mozilla Headline";
}


/* animation du texte */

.scrolling-text {
	display: inline-block;
	width: 100%;
	animation: scroll-text 18s linear infinite; 
	white-space: nowrap; 
}


@keyframes scroll-text {
    0% {
transform: translateX(0); 
    }
    100% {
transform: translateX(-50%);
    }
}

/*structure*/

.container {
	display: flex; 
	flex: 1;
	overflow-y: auto; 
}

.left-section {
	width: 30%; 
	padding: 0px 30px;
	box-sizing: border-box; 
	overflow-y: auto; 
	height: 100vh; 

	scroll-timeline-name: -left-scroll;
	scroll-timeline-axis: block;
}

.left-section section {
	margin-top: 30rem;
}


.right-section {
	width: 70%;
	height: calc(100vh – 30px); 
	overflow: hidden; 
	display: flex;
	align-items: center; 
	justify-content: center; 
}

/*caroussel de droite*/

.carousel{
	width: 70%;
	height: 100vh;
	overflow: hidden;
	position: fixed; 
}

.carousel .slides{
	display: flex;
	align-content: flex-end;
	width: 300%;
	height: 100vh;
	animation: slideAnimation 14s infinite;
}

@keyframes slideAnimation{
	0%{transform: translateX(0);}
	33.33%{transform: translateX(-33.33%);}
	66.66%{transform: translateX(-66.66%);}
	100%{transform: translateX(0);}
}

.carousel .slide{
	width: 33.33%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.carousel .slide img{
	max-width: 100%;
	max-height: 83%;
	object-fit: contain;
}


/*style de texte*/

.focus-text {
	font-family: "Mozilla Headline";
	font-size: 3rem;
	line-height: 1.1;
	color: #444;
	margin: 0;
	letter-spacing: 0.04em; 
}

.description {
	font-family: "Mozilla Headline";
	font-size: 1.1rem;
	margin-top: 1.5rem;
	margin-left: 1.3rem;
	margin-right: 0.5rem;
	line-height: 1.6rem; 
	font-weight: 200; 
}


/*animer h2*/

.project {
	view-timeline-name: --project; 
	view-timeline-axis: block; 
}

.focus-text { 
	animation-name: reveal-title; 
	animation-duration: 1s; 
	animation-timeline: --project; 
	animation-range: entry 0% cover 50%; 
	animation-fill-mode: both;
}

@keyframes reveal-title {
	from {
		filter: blur(30px);
		opacity: 0;
		transform: translateY(60px) scale(0.6);
		color: #444;
  	}
	to {
		filter: blur(0);
		opacity: 1;
		transform: translateY(0) scale(1);
		color: #0DFF00;
  	}
}


/*scrollbar*/

.left-section::-webkit-scrollbar {
display: none;

}

/* partie son*/

.audio-controls {
	margin-top: 50px;
	padding: 15px;
	width: 100%;
}

.audio-button {
	display: block;
	width: 40%;
	padding: 10px;
	margin-bottom: 30px;
	background-color: #090909;
	border: 2px solid #F9F9F9;
	color: #F9F9F9;
	font-family: "Mozilla Headline";
	font-size: 1.3rem;
	cursor: pointer; 
	transition: background-color 0.3s;
}

.audio-button:hover {
	background-color: #00FFFF;
	border: 2px solid #00FFFF;
	color: #F9F9F9;
}

/*sliders*/

.slider-container {
	margin-bottom: 0.8rem;
}

.slider-container label {
	display: block;
	font-family: "Mozilla Headline";
}

input[type= "range"] {
	accent-color: #0DFF00;
}

/*bouton voir img sur texte*/

.button-container {
	display: flex;
	gap: 20px;
	margin: 20px 0;
}
.btn-wrapper {
	position: relative; 
}


.btn {
	width: 35px;
	height: 35px;
	background-color: #090909;
	border: 2px solid #00FFFF;
	border-radius: 50%; 
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #00FFFF;
	font-family: "Mozilla Headline";
	font-size: 1.2rem;
	transition: transform 0.2s, background-color 0.2s;
	padding: 0; 
}

.btn:hover {
transform: scale(1.1); 
background-color: #00FFFF;
color: #090909;
border-color: #00FFFF;
}


/*img masquées*/

.hover-image {
	display: none;
	position: absolute;
	z-index: 9999; 
	width: 200px; 
	height: auto;
	top: 80px;
	left: 30px;
	box-shadow: 0 10px 30px #090909;
	transition: opacity 0.5s ease;
	pointer-events: none; 
}


.btn-wrapper:hover .hover-image {
	display: block;
}


/*boite gif scroll*/

.anim-scroll{
	display:flex;
	justify-content: center;
	margin-top: 6rem;
}


/*signature*/

.closing-section {
	height: 25vh;
	display: inline-flex;
	align-items: flex-end;
	margin-bottom: 4vh;
}
.closer {
	font-size: 0.9rem;
	font-weight: 200;
	color: #D9D9D9;
}

