/* =================================
   VOYAGE EN POCHE — PAGE SPECIFIC STYLES
   Fichier : projects/simple/voyage-en-poche.css
================================= */

:root {
  --margin: 40px;
  --gap: 96px;
  --voy-bg: #0D0D1A;
  --voy-white: #ffffff;
}

.page-voyage {
  background-color: var(--voy-bg);
  color: var(--voy-white);
}

.page-voyage footer {
  mix-blend-mode: difference;
}

.page-voyage .nav-logo,
.page-voyage .nav-links a,
.page-voyage .footer-name,
.page-voyage .footer-copyright,
.page-voyage .footer-location,
.page-voyage .footer-contact {
  color: var(--voy-white);
}


/* =================================
   INTRO — 2 colonnes 50/50
================================= */

.voy-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 120px var(--margin) 0 var(--margin);
}

.voy-title {
  margin: 0;
  padding-right: 40px;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 96px;
  line-height: 0.95;
  letter-spacing: -0.04em;
  color: var(--voy-white);
}

.voy-body {
  margin: 0;
  padding-top: 8px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: var(--voy-white);
}


/* =================================
   GRILLE ZINE
   Marges latérales, gap 20px partout.
   Pages doubles (2-8) = 4 colonnes
   Pages simples (1,9) = même hauteur, largeur proportionnelle
   Grille 12 colonnes, on place chaque image manuellement.
   
   Rangée 1 : page1(simple) | page2(double) | page3(double)
   Rangée 2 : page4(double) | page5(double) | page6(double)  -- mais 4+5 = 1 rangée
   En réalité d'après le PDF :
   Rangée 1 : 1 | 2 | 3+4+5 (compressés verticalement)
   → structure réelle = grille auto avec object proportions
   
   Solution : on définit les colonnes en 12 unités
   1 colonne = (page - 2*margin - 11*gap) / 12
   Page simple = 2 colonnes
   Page double = 4 colonnes
================================= */

.voy-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
  margin-top: var(--gap);
  padding: 0 var(--margin);
  align-items: end;   /* aligne en bas — pages simples et doubles même ligne basse */
}

/* Toutes les pages */
.voy-page {
  display: block;
  width: 100%;
  height: auto;
}

/* Pages doubles — ratio 2480×1748 = ~1.42:1 */
.voy-page--double {
  aspect-ratio: 2480 / 1748;
  object-fit: cover;  /* remplit le ratio sans déformer */
}

/* Pages simples — même hauteur que les doubles
   ratio 1240×1748 = ~0.71:1
   largeur = 50% de la cellule pour avoir même hauteur */
.voy-page--simple {
  width: 50%;
  aspect-ratio: 1240 / 1748;
  object-fit: cover;
}

/* Page 1 ferrée à droite */
.voy-page--right {
  margin-left: auto;
}

/* Page 9 ferrée à gauche */
.voy-page--left {
  margin-right: auto;
}


/* =================================
   PHOTOS LIFESTYLE — avec marges
================================= */

.voy-photo-center {
  display: flex;
  justify-content: center;
  margin-top: var(--gap);
  padding: 0 var(--margin);
}

.voy-photo-center img {
  display: block;
  width: 40%;
  height: auto;
}

.voy-photo-duo {
  display: flex;
  gap: 20px;
  margin-top: var(--gap);
  padding: 0 var(--margin);
  align-items: flex-start;
  justify-content: center;   /* centré sur la page */
}

.voy-photo-duo img {
  display: block;
  width: 35%;
  height: auto;
}

/* Photo 3 décalée vers le bas */
.voy-photo-duo img:nth-child(2) {
  margin-top: 60px;
}


/* =================================
   META
================================= */

.voy-meta {
  display: flex;
  justify-content: center;
  gap: 40px;
  padding: 88px var(--margin) 100px var(--margin);
}

.voy-meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
}

.voy-meta-label {
  font-family: 'Krub', sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: var(--voy-white);
}

.voy-meta-value {
  font-family: 'Krub', sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: var(--voy-white);
}


/* =================================
   MOBILE
================================= */

@media (max-width: 768px) {

  :root {
    --margin: 20px;
    --gap: 56px;
  }

  .voy-intro {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 96px var(--margin) 0 var(--margin);
  }

  .voy-title {
    padding-right: 0;
    font-size: clamp(36px, 10vw, 60px);
    line-height: 0.96;
  }

  .voy-body {
    padding-top: 0;
    font-size: clamp(18px, 5vw, 24px);
    line-height: 1.3;
  }

  .voy-grid {
    grid-template-columns: 1fr 1fr;
  }

  .voy-photo-center img {
    width: 80%;
  }

  .voy-photo-duo {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .voy-meta {
    gap: 20px;
    padding: 40px var(--margin) 120px var(--margin);
  }

}