/* 
selecteur (s) {
    propriété : valeur; 
    propriété : valeur; 
    propriété : valeur; 
}
*/

body {
    color: rgb(0, 0, 0);
    display: block;
    height: auto;
    font-family: 'Mukta', sans-serif;
    margin: 50px;
    font-size: clamp(14px, 4vw, 18px);

}

/* Grille de base pour les images */
.images {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    grid-gap: 20px;
}


@media (min-width: 700px) {
    .images {
        grid-template-columns: repeat(3, 1fr);
        justify-items: center;
    }
}


/* Cibler les balises <a> dans .images */
.images a {
    display: block;
}

/* Réglages pour les balises <a> spécifiques */
.images-hokusai a,
.images-esad a,
.images-specimen a {
    grid-template-columns: 1fr;
}

.row-5{
    grid-row: 5;
}

@media (min-width: 700px){
    .row-5{
        grid-row: auto;
    }
}

.images-hokusai {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 20px;
    row-gap: 30px;
}

@media (min-width:450px) {
    .images-hokusai {
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media (min-width:700px) {
    .images-hokusai {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}
.propos {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 20px;
    
}

@media (min-width:450px) {
    .propos {
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media (min-width:700px) {
    .propos {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}
.images-hezky {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* Optional, adjust as needed */
    grid-template-columns: 1fr;
    column-gap: 30px;
    row-gap: 30px;
  }

  .image-responsive,
.video {
  flex: 1 0 300px; /* Each item takes an equal portion of the available space, with a minimum of 300px */
  max-width: 300px; /* Ensure images and video don't exceed 300px width */
  margin: 10px; /* Optional, add spacing between items */
}

.images-specimen {
    display: grid;
    justify-content: center;
    grid-template-columns: 1fr;
    column-gap: 30px;
    row-gap: 30px;
}

@media (min-width:450px) {
    .images-specimen {
        display: grid;
        grid-template-columns: 1fr;
    }
}
@media (min-width:700px) {
    .images-specimen {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
    }
}

@media (min-width: 450px) {
    .rectangle-bis {
      grid-column-start: 1;
      grid-column-end: span 2;
    }
  }
  
  @media (min-width: 700px) {
    .rectangle-bis {
      grid-column-start: 2;
      grid-column-end: span 2;
    }
  }

  @media (min-width: 450px) {
    .rectangles {
      grid-column-start: 1;
      grid-column-end: span 2;
    }
  }
@media (min-width:700px) {
    .rectangles {
        grid-column-start: 1;
        grid-column-end: span 2;
    }
}
@media (min-width:700px) {
    .photo-cathedrale {
        grid-column-start: 2;
        grid-column-end: span 2;
    }
}

.navigation {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    text-align: center;
    justify-content: center;
    padding-left: 10px;
}
@media (min-width:700px) {
    .navigation {
        display: grid;
        grid-template-columns: 1fr 1fr 4fr;

    }
}

.contact-p {
    padding-top: 20px;
    text-decoration: none;
}
  
  .rectangles:hover {
    opacity: 1;
    filter: none;
  }
  
  
  .rectangle-bis:hover {
    opacity: 1;
  }
  
  
  img:hover {
    opacity: 1;
    filter: none;
  }
  

h1.centered-title {
    text-align: center;
    color: rgb(210, 11, 94);
    font-family: 'Cinzel Decorative', cursive;
    font-size: clamp(30px, 4vw, 50px);
}
h1.lefted-title {
    text-align: left;
    color: rgb(0, 0, 0);
    font-family: 'Cinzel Decorative', cursive;
    font-size: clamp(15px, 4vw, 25px);
}

h1 a {
    
    text-decoration: none;
    color: currentColor;
}

h2 {
    color: rgb(0, 0, 0);
    text-align: left;
    font-size: clamp(15px, 4vw, 25px);
    font-family:'Mukta', sans-serif;
}

h2 a {
    text-decoration: none;
    color: currentColor;
}

p a {
    text-decoration: underline;
    color: currentColor;  
}

.instagram a {
    text-decoration: underline;
    color: currentColor;
}

.instagram {
max-width: 40em;
margin-top: 5%; 
}

.margin {
  margin-top: 5%;  
}

.titre-projet {
    color: rgb(210, 11, 94);
    text-align: center;
    font-size: clamp(20px, 4vw, 40px);
    font-family: 'Cinzel Decorative', serif;
}

.sous-titre {
    text-align: left;
    font-family: 'Mukta', sans-serif;
    color: rgb(0, 0, 0);
    font-size: clamp(16px, 4vw, 25px);
    margin-left: 20px;
}
.retour {
    text-align: center;
    font-family: 'Mukta', sans-serif;
    color: rgb(210, 11, 94);
    font-size: clamp(15px, 4vw, 18px);
    margin-left: 20px;
}
.rose {
    color: rgb(210, 11, 94);  
}

.mentions-legales {
color: rgb(199, 199, 199);
font-size: clamp(6px, 3vw, 12px);
text-align: center;
}
img {
    max-width: 100%;
    margin: auto;
    border-radius: 5px; 
}
/* CSS pour les images en plein écran */
.fullscreen-image {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
  }
  
  .fullscreen-image img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
  }

.paragraphe {
    
    margin-right: 20px;
    max-width: 40em;
}

.videos {
    display: grid;
    height: auto;
    justify-content: center;
    row-gap: 30px;
    max-width: 100%;
    margin: auto;
}

.video video {
    width: 100%; /* Make the video element fill its container (div.video) */
    height: auto; /* Maintain the video's aspect ratio */
  }

  .video-container {
  position: relative;
  padding-bottom: 56.25%; /* Ratio 16:9 */
  height: 0;
  overflow: hidden;
  max-width: 100%; /* Pour éviter qu'elle dépasse */
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}