/*                 Importation des polices          */

@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&display=swap");

@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;400&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap");

* {
  scroll-behavior: smooth;
}

/*******************************************************/
/***************** propriete par defaut *****************/
/*******************************************************/

/* empeche el flottement de l'image si maintenu */
img {
  user-select: none;
  -webkit-user-drag: none;
}

li,
a {
  /* supression du style par defaut sur ces 2 balises */
  list-style: none;
  text-decoration: none;
  /* chaque txt sera en blanc par defaut sauf pr les elements importants */
  color: white;
}

/* dégradé a utiliser avec un "span" pour mettre du txt */

.degrader-gold {
  background: linear-gradient(to right, gold, #7d6f00);
  background-clip: border-box;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
/* utilisat° de border grey pr separer les grandes parties */
.border-grey {
  border-top: 1px solid rgba(132, 132, 132, 0.489);
  border-bottom: 1px solid rgba(132, 132, 132, 0.489);
}

body {
  color: white;
  /* permet de mettre un ptit dégradé a la page complete*/
  background: radial-gradient(circle at center, #2c2929 0%, #000000 100%);
  margin: 0;
}
/*******************************************/
/*****************   HEADER   **************/
/*******************************************/
header {
  box-sizing: border-box; /* permet de ne pas depasser les 100% */

  position: fixed; /* pr que le header reste en haut */
  z-index: 1;
  top: 0;
  height: 100px;
  width: 100%; /* mettre une taille fixe au header sinon il sera coupé */
  display: flex;
  justify-content: space-between; /* espace entre le titre et le menu */
  align-items: center; /* centre verticalement */
  padding: 10px 40px;

  background: radial-gradient(circle at center, #3a3300 0%, #000000 100%);
  background-color: rgb(255, 215, 0, 0.5);
  border-image: linear-gradient(to right, #000000, #fff700, #000000) 1;
  border-bottom: 1px solid rgb(41, 41, 41);
}

header img {
  transition: transform 2s ease-out;
}
header img:hover {
  transform: scale(1.1);
}

header ul a li {
  position: relative;

  padding-bottom: 5px; /* le surlignement s'appliquera en dessous */
}

header ul a li::after {
  content: ""; /* permet un ptit surlignement au survol de la list*/
  position: absolute; /* definition d'une position fixe pr que le surlignement bouge jms */
  width: 0;
  height: 2px; /* hauteur du surlignement */
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at center, #ffee03 0%, #000000 100%);

  transition: width 1s ease; /* largeur de l'animation de la ligne */
}

header ul a li:hover::after {
  width: 100%; /* pr que le surlignement prenne tt la largeur de chaque au moment du survol */
}

/* Liste de navigation à droite */
ul {
  list-style: none;
  display: flex;
  gap: 50px;
  margin: 0;
  padding: 0;
}

header ul a li {
  font-family: "Lato", sans-serif;
  font-weight: 700; /* Poids léger pour l'élégance */
  font-size: 20px;
}

/*******************************************/
/*****************   Fin   **************/
/*******************************************/

/*********************************************/
/*************** PENTHOUSE PARTIE ***********/
/*******************************************/

.presentation {
  padding: 20px;
}

.presentation a,
h2 {
  text-align: center;
  font-style: italic;
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

.presentation h2 {
  /* degrader gold pr le texte "le luxe...." */
  background: linear-gradient(to right, gold, #7d6f00);
  background-clip: border-box;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
/* ajt d'un margin bottom que pr le txt "decouvrir la serie sur netflix*/
.presentation h2:first-child {
  margin-top: 150px;

  /* pr que le surlignement commence au niveau du txt */
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

.presentation h2:first-child {
  position: relative;

  padding-bottom: 5px; /* le surlignement sera legerement un peu + en dessous */
}

.presentation h2:first-child::after {
  content: ""; /* permet un ptit surlignement au survol de la list*/
  position: absolute; /* definition d'une position fixe pr que le surlignement bouge jms */
  width: 0;
  left: -100px;

  bottom: 0;
  height: 2px; /* hauteur du surlignement */

  background: radial-gradient(circle at center, #ffee03 0%, #000000 100%);
  transition: width 1s ease; /* largeur de l'animation de la ligne */
}

.presentation h2:first-child:hover::after {
  /* pr que le surlignement commence un peu plus loin du txt */
  width: 160%;
}

.presentation a span h2 {
  position: relative;

  padding-bottom: 5px; /* le surlignement sera legerement un peu + en dessous */
}

.penthouse-pic {
  display: flex;
  justify-content: center;
  width: 100%;
}

.penthouse-pic img {
  border-radius: 10px;
  border: 3px solid rgba(41, 41, 41, 0.489);
  margin-bottom: 10%;
  background:
    linear-gradient(black, black) padding-box,
    linear-gradient(to right, #7c7801, #7c7801, #2a2f00, #1c2000, #121212)
      border-box;
  transition: transform 1s ease-out;
}

.penthouse-pic:hover img {
  /* Petit zoom */
  transform: scale(1.02);
  /* petit effet doré sur les bordures qd on passe dessus*/
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
}

/*********************************************/
/******************      FIN      ***********/
/*******************************************/

/*********************************************/
/**************** PARTIE RESUME *************/
/******************************7************/

#resume-scroll {
  margin-top: 5%;
  margin-bottom: 5%;
  text-align: center;
  letter-spacing: 2px;
  font-size: 40px;
  font-family: "Cinzel", serif;
  font-weight: 700;
}

.resume-container {
  display: flex;
  margin-bottom: 5%;
  justify-content: center;

  gap: 200px;
}

.box-resume {
  flex-direction: column;
  max-width: 600px;
}

.box-resume p {
  min-width: 600px;
  max-width: 600px;
  font-size: 20px;
}

.box-resume h3 {
  /*  STYLE*/
  font-style: italic;
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

.box-resume h3 {
  /* degrader gold */
  background: linear-gradient(to right, gold, #7d6f00);
  background-clip: border-box;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;

  padding-bottom: 5px; /* le surlignement sera legerement un peu + en dessous */
}

.box-resume a {
  color: white;
}

.box-resume a:hover {
  color: rgb(255, 255, 255);
  transition: 1s;
}

.box-resume .click {
  position: relative;

  padding-bottom: 5px; /* le surlignement sera legerement un peu + en dessous */
}

.box-resume .click::after {
  content: "";
  position: absolute; /* definition d'une position fixe pr que le surlignement ne bouge jms */
  width: 0;
  height: 2px; /* hauteur du surlignement */
  bottom: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.5);
  transition: width 1s ease; /* largeur de l'animation de la ligne */
}

.box-resume .click:hover::after {
  width: 42%;
}

.img-seol-a img {
  margin-bottom: 10%;
  transition: transform 2s ease-out;
  border-radius: 10px;
  border: 3px solid rgba(41, 41, 41, 0.489);
  background:
    linear-gradient(black, black) padding-box,
    linear-gradient(to right, #7c7801, #7c7801, #2a2f00, #1c2000, #121212)
      border-box;
}

.img-seol-a:hover img {
  /* Petit zoom */
  transform: scale(1.05);
  /* petit effet doré sur les bordures qd on passe dessus*/
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
}

/*                      */
/* box des personnages*/
/*                  */

.perso h2 {
  text-align: center;
  letter-spacing: 2px;
  margin-bottom: 5%;
  margin-top: 5%;

  font-size: 40px;
  font-family: "Cinzel", serif;
  font-weight: 700;
}

.personnages-container {
  display: flex;
  justify-content: center;

  gap: 110px;
  margin-top: 1%;
  border-radius: 10px;
  margin-bottom: 5%;
}
/* ajt d'effet de zoom qd je passe sur une image */
.perso-pic img {
  background:
    linear-gradient(black, black) padding-box,
    linear-gradient(to right, #7c7801, #7c7801, #2a2f00, #1c2000, #121212)
      border-box;
  transition: transform 1s ease-out;
}

.perso-pic:hover img {
  /* ptit effet de zoom */
  transform: scale(1.02);
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
}

.perso-container-bas {
  display: flex;
  justify-content: center;
  gap: 100px;
}

.personnage-carte {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* ajt du surlignement sur le nom des main perso */

.nom-perso a {
  position: relative;

  padding-bottom: 5px; /* le surlignement sera legerement un peu + en dessous */
}

/* test pr mettre un surlignement lorsqu'on passe sur les prenoms des perso comme dans le header */
.nom-perso a::after {
  content: ""; /* permet un ptit surlignement au survol de la list*/
  position: absolute; /* definition d'une position fixe pr que le surlignement ne bouge jms */
  width: 0;
  height: 2px; /* hauteur du surlignement */
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at center, #ffee03 0%, #000000 100%);
  transition: width 1s ease; /* largeur de l'animation de la ligne */
  /* background-color: rgb(255, 215, 0, 0.5); */
}

.nom-perso a:hover::after {
  width: 100%; /* pr que le surlignement prenne tt la largeur de chaque au moment du survol */
}

.nom-perso {
  color: rgb(255, 255, 255);

  /* Style police */
  font-family: "Playfair Display", serif;
  font-weight: 700;
  font-style: italic;
  font-size: 20px;

  text-align: center;
  margin: 10px 0 5px 0;
  margin-bottom: 20px;
}

.personnage-carte img {
  border: 3px solid rgba(41, 41, 41, 0.489);
  border-radius: 16px;

  /*border-bottom: 10px solid rgba(41, 41, 41, 0.489);*/
}

.description-perso {
  display: flex;
  gap: 130px;
}

.description-perso p {
  /*border: 3px solid rgba(41, 41, 41, 0.489);*/
  border-top: 0;

  border-radius: 10px;

  color: rgb(255, 255, 255);
  margin: 0;
  margin-bottom: 15%; /* laisse de l'espace pour mettre la border qui delimite les grande parties*/

  /* pr centrer le txt et qu'il prenne tt la place de la box */
  display: flex;
  text-align: center;
  align-items: center;

  /* alignement du txt */
  min-width: 230px;
  max-width: 230px;
  min-height: 100px;
  max-height: 100px;
}

.description-perso-seol-a p {
  /* border */
  border: 3px solid rgba(48, 48, 48, 0.489);
  border-radius: 10px;
  border-top: 0;

  margin: 0;
  margin-bottom: 15%; /* laisse de l'espace pour mettre la border qui delimite les grande parties*/

  /* centrer le txt dans la place pr prendre tt la place */
  display: flex;
  text-align: center;
  align-items: center;

  /* alignement du txt */
  min-width: 230px;
  max-width: 230px;
  min-height: 100px;
  max-height: 100px;
}

/* membres cles */

.membres-cles {
  display: flex;
  justify-content: center;
  margin-top: 3%;
  border-bottom: 1px solid rgba(132, 132, 132, 0.489);
}
.membres-cles p {
  margin-bottom: 5%;
  text-align: center;

  /* style */
  font-size: 20px;
  font-family: "Playfair Display", serif;
  font-weight: 700;
}

.membres-cles p {
  position: relative;
  padding-bottom: 5px;
}

.membres-cles p::after {
  content: "";
  position: absolute; /* definition d'une position fixe pr que le surlignement ne bouge jms */
  width: 0;
  height: 2px; /* hauteur du surlignement */
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at center, #958b00 0%, #000000 100%);
  transition: width 1s ease; /* largeur de l'animation de la ligne */
}

.membres-cles p:hover::after {
  width: 100%; /* pr que le surlignement prenne tt la largeur au moment du survol */
}

.oblic {
  /* Style */
  font-style: oblique;
  font-size: 20px;
  text-align: center;
}

/* Box saisons  */

.saisons-container {
  display: flex;
  flex-direction: column; /* empilage de tt les saisons */
  margin-top: -5%;
  max-width: 70%;
  margin: 0 auto;
  padding: 60px 20px;
}

.saisons-container h2 {
  letter-spacing: 2px;
  text-align: center;
  font-size: 40px;
  font-family: "Poppins", sans-serif;

  font-weight: 900;

  font-family: "Cinzel", serif;
  font-weight: 700;
  font-style: oblique;
  margin-bottom: 5%;
}

.saison-carte {
  background: radial-gradient(circle at center, #242424 0%, #000000 100%);
  border-radius: 6px;
  margin-bottom: 25px;
  padding: 30px;
  display: flex;
  align-items: center;
  gap: 30px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  border-left-width: 5px;
  border-left-style: solid;
}

/* --- BORDURE COLORÉ --- */

.border-yellow {
  display: flex;
  align-items: center;
  border: 5px solid transparent;
  border-radius: 15px;

  /* supperposition de 2 gradient pr permettre l'arrondi */
  background:
    linear-gradient(black, black) padding-box,
    linear-gradient(to right, #7c7801, #7c7801, #2a2f00, #1c2000, #121212)
      border-box;
}

.saison-etiquette {
  /* definition des tailles */
  width: 280px;
  height: 250px;

  /* Centrer horizontalement */
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;

  margin-left: 5%;
}

.cover-gap {
  height: 150px;
  margin-left: 10%;
  border: 1px solid;
  border-image: linear-gradient(to bottom, #000000, #b38728, #000000) 1;

  border-radius: 10px;
}

.saison-etiquette span {
  font-family: "Lato", sans-serif;
  font-size: 1.6rem;
  font-weight: 600;
  color: #ffffff;
}

.saison-etiquette span img {
  transition: transform 2s ease-out;

  border-radius: 10px;
  border: 1px solid rgba(85, 85, 85, 0.489);
}
.saison-etiquette span img:hover {
  display: flex;
  border-radius: 10px;
  transform: scale(1.08);
  box-shadow: 0 0 10px rgba(255, 217, 0, 0.5);
}
/* --- CONTENU TEXTE --- */
.saison-content {
  flex: 1; /* pr le decaler un peu */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.saison-content h2 {
  position: relative;

  padding-bottom: 5px; /* le surlignement sera legerement un peu + en dessous */
}

.saison-content h2::after {
  content: "";
  position: absolute; /* definition d'une position fixe pr que le surlignement ne bouge jms */
  width: 0;
  height: 2px; /* hauteur du surlignement */
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at center, #b38728 0%, #000000 100%);
  transition: width 1s ease; /* largeur de l'animation de la ligne */
}

.saison-content h2:hover::after {
  width: 100%;
}

a,
li {
  text-decoration: none;
  list-style-type: none;
}

.saison-content h2 {
  text-transform: uppercase;

  font-size: 1.4rem;
  color: #ffffff;

  margin-bottom: 12px;
  letter-spacing: 1px;
}

.description {
  text-align: center;

  min-width: 300px;
  max-width: 300px;
  color: #aeb4c0;
  font-size: 1rem;
  margin-bottom: 15px;
}

.highlight {
  text-align: center;
  color: #6e7681;
  font-style: italic;
  font-size: 1rem;
}

/*********************   FOOTER  ***************/
/*********************   FOOTER  ***************/
/*********************   FOOTER  ***************/

footer {
  padding: 10px;
  margin-top: 5%;
  height: 170px;
  border-top: 1px solid rgb(41, 41, 41);

  /* BG footer */
  background: radial-gradient(circle at center, #3a3300 0%, #000000 100%);
  background-color: rgb(255, 215, 0, 0.5);
  border-image: linear-gradient(to right, #000000, #fff700, #000000) 1;
  border-bottom: 1px solid rgb(41, 41, 41);
}

.fin-page h4 {
  position: relative;

  padding-bottom: 5px;
}

.fin-page h4 {
  /* centre */
  display: flex;
  justify-content: center;
  text-align: center;

  /* style */
  font-size: 25px;
  font-family: "Cinzel", serif;
}

.fin-page h4::after {
  content: "";
  position: absolute; /* definition d'une position fixe pr que le surlignement bouge jms */
  width: 0;
  height: 2px; /* hauteur du surlignement */
  bottom: 0;
  left: 0;
  background: radial-gradient(circle at center, #ffee03 0%, #000000 100%);
  transition: width 1s ease; /* duree de l'animation de la ligne */
}

.fin-page h4 :hover::after {
  width: 100%; /* pr que le surlignement prenne tt la largeur de chaque au moment du survol */
}

/*********************   REPONSIVE  ***************/
/*********************   REPONSIVE  ***************/
/*********************   REPONSIVE  ***************/

/* refaire les medias query pr les de slargeurs de 320 px 390

/* Partie Header */

@media (max-width: 768px) {
  header {
    justify-content: center;
  }
  header a img {
    position: absolute;
    top: -10px;
    left: -20px;
  }
  header ul {
    gap: 20px;
    margin-left: 20%;
  }
}

/*  Partie Penthouse  */

@media (max-width: 768px) {
  .penthouse-pic img {
    text-align: center;
    width: 90%;
  }

  .presentation h2:first-child::after {
    content: ""; /* permet un ptit surlignement au survol de la list*/
    position: absolute; /* definition d'une position fixe pr que le surlignement bouge jms */
    width: 0;
    height: 2px; /* hauteur du surlignement */
    bottom: 0;
    left: 50px; /* on deplace le surlignement pour qu'il commence au debut du txt */

    background: radial-gradient(circle at center, #ffee03 0%, #000000 100%);
    transition: width 1s ease; /* largeur de l'animation de la ligne */
  }

  .presentation h2:first-child:hover::after {
    width: 80%;
  }
}

/*  Partie Resume  */

@media (max-width: 768px) {
  .resume-container {
    flex-direction: column;
  }

  .box-resume p,
  h3,
  a {
    /* supression de la min-width de 600px qui etait definit plus haut */
    min-width: 0;
    max-width: 450px;
    margin: 20px auto;

    text-align: center;
  }

  .box-resume h3 {
    margin-top: 2%;
    margin-bottom: 2%;
  }

  .img-seol-a {
    display: flex;
    justify-content: center;
    margin-top: -35%; /* pr reduire le gap */
  }

  .box-resume .click::after {
    content: "";
    position: absolute; /* definition d'une position fixe pr que le surlignement ne bouge jms */
    width: 0;
    height: 2px; /* hauteur du surlignement */
    bottom: 0;
    left: 100px; /* deplacement du surlignement*/
    background-color: rgba(255, 255, 255, 0.5);
    transition: width 1s ease; /* duree de l'animation */
  }

  .box-resume .click:hover::after {
    width: 57%;
  }
  .box-resume a {
    margin-top: 5%;
  }
}

/* Partie Perso */
@media (max-width: 768px) {
  .personnages-container,
  .perso-container-bas {
    flex-direction: column; /* on empile les cartes sur mobile */
    gap: 10px;
  }

  .personnage-carte {
    margin-top: 5%;
  }
  .description-perso p {
    border: 3px solid rgba(54, 54, 54, 0.489); /* ptit changement de couleur de bordure prsk on ne les voit plus tres bien avec le dégradé appliqué au BG */
    border-top: 0;
  }
}

/* Partie Membres Cles */
@media (max-width: 768px) {
  .membres-cles .degrader-gold {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .membres-cles .oblic a {
    display: flex;
    justify-content: center;
    flex-direction: column;

    max-width: 150px;
    margin: 10px;
  }
  .membres-cles p:hover::after {
    width: 105%; /* surlignemenent bien aligné en version mobile*/
  }
}

/* Partie Saison */
@media (max-width: 768px) {
  .saison-carte {
    flex-direction: column;
  }

  .cover-gap {
    display: flex;
    justify-content: center;
    width: 150px;
    height: 0;

    border: 1px solid;

    border-image: linear-gradient(to right, #000000, #b38728, #000000) 1;

    border-radius: 10px;
  }
  .saison-content h2 {
    margin-left: 5%;
  }
}
