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

@font-face {
	font-family: "MADE Canvas Light";
	src: url("../fonts/madecanvaslight.otf");
}

@font-face {
	font-family: 'Acumin Variable Concept Bold';
	src: url("../fonts/acuminariableconcept.otf");
}


	
body{
	font-family: "MADE Canvas Light";
	margin: 0px; 
	padding: 0px;
	max-width: 100%;
    max-height: 100%;
	background-color: black;
}

/*CC SECTION*/
.image-gauche {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100px; /* Ajustez la taille selon vos besoins */
  height: auto; /* Permet de maintenir le ratio d'aspect de l'image */
}

@media (max-width: 600px) {
  .image-gauche {
    width: 50px; /* Plus petite taille pour les petits écrans */
  }
}
/*fin CC SECTION*/


/*NAVIGATION SECTION*/

nav{
	background-color: transparent;
	position: sticky;
	top: 0;
	font-family: "MADE Canvas Light";
	display: flex;
	justify-content: space-between;
	padding: 10px;
	z-index: 1;
}

nav h1{
	display: flex;
	margin-left: 19px;
	cursor: pointer;
	top: 0;
}
	nav ul{
	display: flex;
	list-style: none;
	margin-right: 10px;
	color: white;
}

nav ul li{
	margin-right: 33px;
	margin-top: 10px;
	display: flex;
	cursor: pointer;
	position: sticky;
}

nav ul li:hover{
	color: darkred;
}

nav a:link{
	color: white;
	text-decoration: none;
}

nav a:visited{
	color: white;
}

.burger{
	display:none;
	color: white;
	width: 24px;
	height: 17px;
	position: absolute;
	top: 30px;
	right: 30px;
	cursor: pointer;
	}

.burgerclose{
	display: none;
	color:white;
	width: 24px;
	height: 17px;
	position: absolute;
	top: 30px;
	right: 30px;
	cursor: pointer;
	
}
/* Par défaut : Sous-menus normaux (affichage à droite ou en dessous) */
.dropdown-content {
    position: absolute;
    background-color: darkgrey;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1;
    left: 0; /* Sous-menus affichés normalement */
    margin-left: 0;
}

/* Sous-sous-menus (imbriqués) */
.dropdown-content .dropdown .dropdown-content {
    left: 100%; /* Sous-sous-menus s'affichent normalement à droite */
    top: 0;
    margin-left: 0;
}

/* POUR LES PETITS ÉCRANS (Menu burger activé) */
@media all and (max-width: 680px) {
    /* Sous-menus principaux */
    .dropdown-contents {
        left: -100%; /* Déplace les sous-menus à gauche du menu principal */
        right: auto;
        margin-left: 0;
    }

    /* Sous-sous-menus (imbriqués) sur petits écrans */
    .dropdown-content .dropdown .dropdown-content {
        left: -100%; /* Déplace les sous-sous-menus à gauche des sous-menus */
        top: 0;
    }
}


@media all and (max-width: 680px){
	
	.element{
		display: none;
	}

	.sections{
		position: fixed;
		top:0;
		right: 0;
		width: 100vh;
		height: 100vh;
		background-color: black;
		justify-content:right;
		z-index: 1;
		display:none;
	}
	
	.sections.open{
		transform: initial;
		display: flex;
		animation: transformMenu 300ms ease-in-out forwards;
	}
	
	.burger{
		display:block;
		cursor: pointer;
	}
	.burger:hover{
		color:darkred;
	}
	.section.open{
		transform: initial;
	}
	
	.sectionsmenu{
		flex-direction: column;
		margin-top: 4em;
		margin-right: 3em;
		align-items: flex-start;
	}
	
	.sectionsmenu li{
		margin-bottom: 20px;
		
	}
	
	.burgerclose{
		display: block;
		cursor:pointer;
		
	}
	
}
	
@keyframes transformMenu{
	0%{
		transform: translateX(100%);
	}
		
	100%{
		transform: initial;
	}
}
/*FIN NAVIGATION SECTION*/

/*HEADER SECTION */
header{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin-top: 30px;
	color: white;
}

hr{
	width: 25%;	
}
/*FIN HEADER SECTION */


/*INDEX SECTION */

#indexbody {
    background: url("../images/pant.jpg") no-repeat center center fixed;
    background-size: cover; /* Ajuste l'image pour qu'elle couvre tout l'écran */
}

.title-container2 {
    display: flex; /* Utilise Flexbox pour la disposition */
    justify-content: center; /* Centrage horizontal */
    align-items: center; /* Centrage vertical */
    text-align: center; /* Centrage horizontal du texte */
    height: 100vh; /* Prend toute la hauteur de la fenêtre */
    margin: 0; /* Retire les marges externes */
}

.title-link2 {
    font-weight: bold;
    text-decoration: none; /* Supprime le soulignement */
    transition: color 0.3s ease-in-out;
    font-size: clamp(3.5rem, 2vw, 2rem); /* Taille du texte responsive */
    font-size: cover;
    
    color: darkred;
    /* Appliquer l'effet négatif des couleurs 
    filter: invert(1); /* Négatif des couleurs et ajustement de la teinte */
}

.title-link2:hover {
	color: darkgray; /* Effet au survol (gris foncé) */
   /* filter: invert(1) hue-rotate(180deg) brightness(0.8); /* Ajout d'un léger assombrissement au survol */
}

/*FIN INDEX SECTION */

/*ABOUT SECTION */

#aboutbody{
	background: url("../images/pant.jpg")no-repeat center center fixed;
	background-size: cover;
}
.about-section{
	margin-top:150px;
	margin-bottom: 150px;
	font-family: "MADE Canvas Light";
	color: white;
}

.about-section .about{
	display: flex;
	flex-wrap:wrap;
	justify-content: center;
}

.about-section .about .aboutcolumn{
	max-width: 195px;
	margin-right: 20px;
}

.about-section .about .aboutcolumn .aboutdescription{
	text-align: justify
}

/* Mise en page générale */
.world {
    display: flex;
    justify-content: center;
    align-items: center;  /* Centrage vertical */
    position: relative;
    height: 100vh;         /* Prend toute la hauteur de la fenêtre */
}

/* Sphère principale */
.sphere {
    width: 40vw;             /* Taille dynamique basée sur la largeur de la fenêtre */
    height: 40vw;
    border: 1px dashed white;
    border-radius: 50%;
    animation: world 40s linear infinite;
    position: relative;
    display: flex;
    justify-content: center; /* Centrage horizontal du texte */
    align-items: center;     /* Centrage vertical du texte */
}

/* Sphères animées */
.spheres {
    width: 40vw;
    height: 40vw;
    border: 1px solid white;
    border-radius: 50%;
    animation: world2 40s linear infinite;
    transform-style: preserve-3d;
}

/* Sphères pseudo-elements */
.spheres::before, .spheres::after {
    width: 40vw;
    height: 40vw;
    border: 1px solid white;
    border-radius: 50%;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
}

/* Animation de la sphère */
.spheres::before {
    transform: rotateX(-66.6deg);
}

.spheres::after {
    transform: rotateX(66.6deg);
}

@keyframes world {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes world2 {
    0% {
        transform: rotateX(1deg) rotateY(1deg) rotateZ(1deg);
    }
    100% {
        transform: rotateX(360deg) rotateY(360deg) rotateZ(360deg);
    }
}

/* Texte animé centré dans la sphère */
.worldtexte {
    color: darkred;
    position: absolute;
    font-size: 5vw;         /* Taille dynamique en fonction de la largeur de l'écran */
    animation: worldtext 10s linear infinite;
    text-align: center;     /* Centrage du texte horizontalement */
    transform-origin: center;  /* Garantir le centrage de l'animation */
}

/* Animation du texte */
@keyframes worldtext {
    100% {
        transform: rotateY(360deg);
    }
}

/* Media queries pour les petits écrans (téléphones) */
@media (max-width: 768px) {
    .sphere, .spheres {
        width: 60vw;  /* Réduit la taille de la sphère pour les écrans plus petits */
        height: 60vw;
    }

    .worldtexte {
        font-size: 10vw;  /* Agrandit la taille du texte pour les écrans mobiles */
        margin-top: 0;    /* Enlève le décalage vertical du texte */
    }
}


/*FIN ABOUT SECTION */

/*CONTACT SECTION */
.contact-section{
	margin-top: 100px;
}
#contactbody{
	background: url("../images/pant.jpg")no-repeat center center fixed;
	background-size: cover;
}

.contact-section{
	margin-top: 100px;
}

.contact .contactcolumn{
	display: flex;
	justify-content: center;
	margin-top:40px;
	font-size: 20px;
}
.contact-section .contact .contactcolumn p{
	border-bottom: 1px solid black;
}

.contact-section .contact .contactcolumn p:hover{
	border-bottom-color: white;
}


.contact-section .contact .contactcolumn a:link{
	color: white;
	text-decoration: none;
}

.contact-section .contact .contactcolumn a:visited{
	color: white;
}
/*FIN CONTACT SECTION */

/*SECTION WORKS*/
.works-section {
    display: flex;
    justify-content: center;
    color: white;
}

/* Conteneur pour chaque ligne */
.work {
    margin-bottom: 10em;
    display: flex;
    flex-wrap: wrap; /* Permet de placer les images horizontalement et verticalement */
    gap: 20px; /* Espace entre les images */
}

/* Styles pour les images verticales */
.work1m img {
    width: 500px; /* Largeur fixe pour correspondre à l'image horizontale */
    height: 700px; /* Hauteur plus grande pour garder la proportion verticale */
    object-fit: cover;
}

/* Styles pour les images horizontales */
.work1 img {
    width: 500px; /* Correspond à la largeur des images verticales */
    height: 300px; /* Hauteur de la moitié des images verticales */
    object-fit: cover;
}
/* Conteneur pour empiler les images horizontales */
.work-column {
    display: flex;
    flex-direction: column;
    gap: 27.5px; /* Espace entre les images horizontales */
}

/* Effet au survol */
.work img:hover, .work1m img:hover {
    transition: 0.5s;
    opacity: 0.5;
}

/*FIN SECTION WORKS*/

/*HumanClimberEVO1*/	
.work-section{
	color: white;
}

.headerimage{
	width:100%;
	height: 100vh;
	background: url("../images/panoplie/PS24.jpg");
	background-size: cover;
	background-position: center; 
}

.title{
	margin-top: 1em;
	text-align: center;
	font-size: 5em;
}

.lowtittle{
	font-family: 'Acumin Variable Concept Bold';
	font-size: 8pt;
}

.description {
	font-family: "MADE Canvas Light";
	font-size: 20pt;
}

.projectdescription{
	margin-bottom: 5em;
	text-align: center;
}

.separation{
	border-top: 1px solid;
	width: 10%;
	margin-right: auto;
	margin-left: auto;
}

.projectinformations{
	display: flex;
	justify-content: center;
	text-align: center;
	margin-top: 5em;
}

.information{
	width: 20%;
}

.imageligne{
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}

.imageligne2{
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}

.imageligne2 img{
	display: block;
	width: 305px;
	background-size: cover;
	max-width: 100%;
    max-height: 100%;

}

.imageligne img{
	display: block;
	width: 475px;
	background-size: cover;
	max-width: 100%;
    max-height: 100%;
}

.image{
	margin-right: 20px;
	margin-left: 20px;
	}

@media all and (max-width: 680px){
	
	.work-section{
	}
	
	.title{
		margin-top: 1em;
		font-size: 4.5em;
		text-align: left;
	}
	.projectdescription{
		display: block;
		text-align: left;
		margin-bottom: 5em;
	}

	.projectinformations{
		display:block;
		text-align: left;
		margin-bottom: 5em;
	}
	.information{
		margin-bottom: 5em;
	}
	.description{
		font-size: 15pt;
	}
	.separation{
		display:none;
	}
	.imageligne{
		display: block;
		justify-content: center;
		margin-bottom: 40px;
	}
	.image{
		margin-bottom: 40px;
	}
	.row{
		margin:2em;
	}
	.projectimage{
		margin:1em;
	}
}
/*humanclimberevo1*/


/* Styles généraux pour les liens de navigation et les titres */
li a, .dropbtn {
    padding: 10px 16px;
    text-decoration: none;
    color: white;
    display: inline-block;
}

/* Styles pour les éléments de la liste déroulante */
li.dropdown {
    display: inline-block; /* Afficher les titres en ligne */
    position: relative; /* Nécessaire pour le positionnement absolu du contenu déroulant */
}

.dropdown-content {
    display: none; /* Cacher les menus déroulants par défaut */
    position: absolute;
    background-color: darkgrey;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

.dropdown-content a {
    padding: 12px 16px;
    text-decoration: none;
    color: black;
    text-align: left;
    display: block; /* Assure que chaque élément est affiché sur une nouvelle ligne */
}

.dropdown-content a:hover {
    color: darkred; /* Change la couleur au survol */
}

/* Afficher le menu déroulant uniquement lorsque la souris survole le titre parent */
.dropdown:hover > .dropdown-content {
    display: block;
}

/* Pour les sous-menus imbriqués */
.dropdown-content .dropdown {
    position: relative;
}

.dropdown-content .dropdown .dropdown-content {
    top: 0;
    left: -130%; /* Alignement du sous-menu à droite du parent */
    margin-left: 1px; /* Petite marge entre le parent et le sous-menu */
}

.dropdown-content .dropdown:hover .dropdown-content {
    display: block; /* Afficher le sous-menu lorsque l'utilisateur survole le parent */
}

/* Ajout d'un effet de transition pour les menus déroulants */
.dropdown-content, .dropdown-content .dropdown-content {
    transition: all 0.3s ease-in-out;
}


/*wortitle*/
@media only screen and (max-width: 500px) {
    .worktitle {
        margin-left: 100px; /* ajoute un espace à gauche */
    }
}
/*fin wortitle*/