/* ── Polices ── */
@font-face {
  font-family: "Symphony Pro";
  src: url("typo/symphony-pro-regular.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Sanchez";
  src: url("typo/Sanchez-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Sanchez";
  src: url("typo/Sanchez-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}

/* ── Reset & Base ── */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  height: 100%;
  background-color: #e497ac;
  font-family: "Sanchez", serif;
  color: #301c0d;
}

.description a {
  color: #301c0d;
  text-decoration: underline;
}

/* ── Page Container ── */
.page {
  width: 100%;
  max-width: 1320px;
  height: 100vh;
  position: relative;
  margin: 0 auto;
}

/* ── Icône maison ── */
.home-link {
  position: fixed;
  top: 50px;
  right: 50px;
  z-index: 10;
  transition: opacity 0.3s ease;
  text-decoration: none;
  opacity: 0.8;
}

.home-link:hover {
  opacity: 0.5;
}

.home-icon {
  height: 25px;
  display: block;
}

/* Variables pour la grille */
:root {
  --marge: 50px;
  --gutter: 20px;
  --col: calc((100vw - var(--marge) * 2 - var(--gutter) * 11) / 12);
}

/* ── Petite photo (déborde col 1, centrée col 1-2) ── */
.portrait-petit {
  position: fixed;
  bottom: -150px;
  left: -350px;
  height: 175vh;
  width: auto;
  z-index: 2;
}

/* ── Grande photo (col 3 à 7) ── */
.portrait-grand-wrapper {
  position: absolute;
  top: 0px;
  left: calc(var(--marge) + (var(--col) + var(--gutter)) * 2);
  width: calc(var(--col) * 9 + var(--gutter) * 8); /* photo + texte */
  display: flex;
  flex-direction: row; /* ← côte à côte */
  align-items: flex-end; /* ← aligne en bas */
  gap: 20px;
  z-index: 1;
}

.portrait-grand {
  width: calc(var(--col) * 5 + var(--gutter) * 4);
  height: auto;
  flex-shrink: 0;
}

.description {
  font-family: "Sanchez", serif;
  font-size: 17px;
  line-height: 1.15;
  color: #301c0d;
  flex: 1;
  font-weight: normal;
  font-synthesis: none;
}
