/*--------------------------FONTS---------------------------*/


@font-face { font-family: PP Mondwest; src: url('PPMondwest-Bold.ttf'); } 
@font-face { font-family: PP Mondwest; font-weight: bold; src: url('PPMondwest-Bold.ttf');}

@font-face { font-family: PP Mori; src: url('PPMori-Book.ttf'); } 
@font-face { font-family: PP Mori; font-weight:normal; src: url('PPMori-Book.ttf');}

@font-face { font-family: PP Mori-Italic; src: url('PPMori-BookItalic.ttf'); } 
@font-face { font-family: PP Mori-Italic; font-weight:normal; src: url('PPMori-BookItalic.ttf');}



h2 {
    font-size: 1.5rem;
    font-family: PP Mori, sans-serif;
    margin-block-start: 0;
    margin-block-end: 0;
}

h3 {
    font-size: 1rem;
    font-family: PP Mori, sans-serif;
    margin-block-start: 0;
    margin-block-end: 0;
}

h4 {
    font-size: 1.5rem;
    font-family: PP Mori-Italic, sans-serif;
    margin-block-start: 0;
    margin-block-end: 0;
}

h5 {
    font-size: 1rem;
    font-family: PP Mori-Italic, sans-serif;
    margin-block-start: 0;
    margin-block-end: 0;
}

h6 {
    font-size: 0.75rem;
    font-family: PP Mori, sans-serif;
    margin-block-start: 0;
    margin-block-end: 0;
    position: 0 0 -1rem 0;

}

/*--------------------------END-FONTS---------------------------*/



/*--------------------------STRUCTURE---------------------------*/

.body {
    display: flex;
    margin:5rem;
    padding:0 5rem 0 0;
    list-style:none;
    align-content: flex-start;


}

/*.groupe-2 {
    display: flex;
    justify-content: space-between;
}*/

/*.navigation ul {
    display: flex;
    justify-content: space-between;
    padding-inline-start: 0px;
}*/

.navigation ul{
padding:0 40px 0 40px;
}

.navigation ul li {
    list-style:none;
    margin: 0;
    padding: 0;
    align-content: flex-start;
}

.navigation {
    width:100%
}

.details {
    width:100%

}

#groupe-1 {
    margin: 0 40px 0 0;
    max-width: 50%;

}

#structure-centrale {
    display: flex;
    justify-content: space-between;

}

#photos {
    max-width: 50%;
    padding:0 0.5rem 0 0;
}

#photos img {
    height: 100%;
    width: 100%;
    display: block;
    object-fit: cover;
    padding:0 0 1rem 0;

}


/* ---------------END IMAGE SLIDER-------------------- */


/*--------------------------END-STRUCTURE---------------------------*/


/* -----------------DETAILS-STRUCTURE-------------------- */

.detail-solo {
    display: flex;
    padding: 0rem 0rem 0 0;
}

.detail-nom {
    width: 50%;
    padding: 0rem 0rem;
}

.detail-type {
    width: 50%;
    padding: 0rem 0rem;
}

/*.detail-lieu {
    width:25%;
    padding: 0rem 0rem;
}*/

/*.agenda-rapide-nom {
    width: 45%;
    padding: 1rem 2rem;
}*/



/*#agenda a{
    color:black;
    text-decoration:none;
}

#agenda a:hover{
    font-family: PP Mondwest, sans-serif;
    text-decoration:dashed;
    color: black;
    font-size: 1.5rem;
}*/

/* -----------------END-DETAILS-STRUCTURE--------------------- */



/*-------------------INTERACTION NAVIGATION----------------------*/

.navigation a{
    font-family: PP Mori, sans-serif;
    text-decoration:none;
    color:black;
}

/* TEST OBJECTIF : activ --> changer la typo dans la navigation quand on est sur la page
.navigation a.activ {
    font-family: PP Mori-Italic, sans-serif;
}*/

/* TEST OBJECTIF : quand on survole le mot la typo change*/
.navigation a:hover{
    /*font-family: PP Mondwest, sans-serif;*/
    font-size: 1.5rem;
    text-decoration: underline;
}

.navigation a:visited{
    color:black;
    text-decoration:none;
}

/*-----------END-INTERACTION NAVIGATION------------*/




/*-------------------INTERACTION NAVIGATION----------------------*/

.navigation a{
    font-family: PP Mori, sans-serif;
    text-decoration:none;
    color:black;
}

/* TEST OBJECTIF : activ --> changer la typo dans la navigation quand on est sur la page
.navigation a.activ {
    font-family: PP Mori-Italic, sans-serif;
    font-size: 1.5rem;
} */

/* TEST OBJECTIF : quand on survole le mot la typo change
.navigation a:hover{
    font-family: PP Mondwest, sans-serif;
    font-size: 1.5rem;
}*/

.navigation a:visited{
    color:black;
    text-decoration:none;
}

/*-----------END-INTERACTION NAVIGATION------------*/


/*-------------------INTERACTION DETAILS----------------------*/

.details ul li {
    list-style:none;
    margin: 0;
    padding: 0;
    align-content: flex-start;
    font-family: PP Mori, sans-serif;
    font-size: 1rem;
}

.details a{
    font-family: PP Mori, sans-serif;
    text-decoration:none;
    color:black;
}

/* TEST OBJECTIF : activ --> changer la typo dans la navigation quand on est sur la page
.navigation a.activ {
    font-family: PP Mori-Italic, sans-serif;
}*/

/* TEST OBJECTIF : quand on survole le mot la typo change*/
.details a:hover{
    text-decoration: underline;
}

.details a:visited{
    color:black;
    text-decoration:none;
}

/*-----------END-INTERACTION DETAILS------------*/

/* -----------------AGENDA-------------------- */


.agenda{
    margin:0 0 0 40px;
}

.agenda-rapide-line {
    display: flex;
    justify-content: space-between;

}

.agenda-rapide-nom {
    width: 75%;
}

.agenda-rapide-type {
    width: 22%;
}

#agenda a{
    color:black;
    text-decoration:none;
}

#agenda a:hover{
    font-family: PP Mondwest, sans-serif;
    text-decoration:dashed;
    color: black;
    font-size: 1.5rem;
}

/* -----------------END-AGENDA-------------------- */


/* -----------------IMAGE-ALEATOIRE-------------------- */

#hover-image-container {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    pointer-events: none;
    z-index: 999;
}

#hover-image {
    max-width: 400px;
    max-height: 400px;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* -----------------END-IMAGE-ALEATOIRE-------------------- */


/* =========================================================
   AJOUT : MOBILE / TABLETTE (<1100px)
   Colonne 1 (#groupe-1) en premier, puis colonne 2 (#photos)
   (annule l'affichage côte à côte)
========================================================= */

@media (max-width: 1099px) {

    #structure-centrale {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }

    /* Texte en premier */
    #groupe-1 {
        max-width: 100%;
        margin: 0 2rem 2rem 0;
        order: 1;
    }

    /* Images en dessous */
    #photos {
        max-width: 100%;
        padding: 0;
        order: 2;
    }

    /* Images fluides */
    #photos img {
        width: 100%;
        height: auto;
        object-fit: cover;
    }
}


/* =========================================================
   AJOUT NON DESTRUCTIF : ANTI-FLASH CHARGEMENT (Solution 1)
   - Ne touche pas aux images de galerie (#photos img).
   - Agit seulement sur l'image flottante (#hover-image).
   - Nécessite que le JS mette data-ready="1" quand l'image est prête.
========================================================= */

#hover-image[data-ready="0"] {
    visibility: hidden;
}

#hover-image[data-ready="1"] {
    visibility: visible;
}

/* =========================================================
   MOBILE : espace en bas pour permettre le scroll
   (images en fixed, texte/navigation scroll)
========================================================= */
@media (max-width: 1099px) {
    body {
      padding-bottom: 100vh;
    }
  }

  /* =========================================================
   AJOUT NON DESTRUCTIF – SOLUTION 1 (ANTI-FLASH)
   - Cible uniquement les images flottantes
   - Aucun impact sur typographies ou structure
========================================================= */

#hover-image,
.project-container img {
    visibility: hidden;
}

#hover-image.is-ready,
.project-container img.is-ready {
    visibility: visible;
}

/* =========================================================
   AJOUT DEMANDÉ : MARGES MOBILE (<1100px)
   - Réduit de moitié la marge gauche (40px -> 20px)
   - Met la marge droite identique à la gauche
   - Cible la navigation + la liste (works/curations)
   - Ne touche pas au desktop
========================================================= */

@media (max-width: 1099px) {

    /* La source de ta "marge" actuelle vient de: .navigation ul { padding: 0 40px; } */
    .navigation ul {
        padding: 0 0 0 20px;
    }

    /* Sécurité : si certains blocs de liste ont des padding/marges implicites */
    .details {
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
    }

    /* Évite les décalages dus aux styles user-agent sur <ul> selon navigateurs */
    .details ul {
        padding-left: 0;
        padding-right: 0;
    }
}
