/* Sections et gabarits de pages */

/* ---------- Accueil : masthead ---------- */
.masthead {
  position: relative; margin-top: calc(var(--header-h) * -1);
  height: calc(100svh - var(--bar-h)); min-height: 560px; max-height: 1100px;
  color: var(--blanc); overflow: hidden; background: var(--marine);
}
.masthead__medias { position: absolute; inset: 0; display: grid; grid-template-columns: 1fr; }
.masthead__media { position: relative; overflow: hidden; }
.masthead__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.masthead__media + .masthead__media { display: none; }
@media (min-width: 900px) {
  .masthead__medias { grid-template-columns: 1fr 1fr; }
  .masthead__media + .masthead__media { display: block; }
}
.masthead::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(to bottom, rgb(26 34 56 / 0.45) 0%, rgb(26 34 56 / 0) 22%),
    linear-gradient(to top, rgb(26 34 56 / 0.62) 0%, rgb(26 34 56 / 0.08) 48%, rgb(26 34 56 / 0) 70%);
}
.masthead__contenu {
  position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
  padding: 0 var(--marge) clamp(40px, 9vh, 96px); text-align: center;
}
.masthead__wordmark { width: min(60vw, calc(40svh * 1.281), 520px); color: var(--blanc); }
.masthead__wordmark svg { width: 100%; height: auto; }
html.dock-on .masthead__wordmark { visibility: hidden; }
.masthead__ctas { display: flex; gap: 10px; margin-top: clamp(24px, 4vh, 40px); }
.masthead__legende {
  position: absolute; z-index: 2; right: var(--marge); top: calc(var(--header-h) + 16px);
  writing-mode: vertical-rl; font-size: 12px; font-weight: 500; letter-spacing: 0.02em; opacity: 0.85; display: none;
}
@media (min-width: 900px) { .masthead__legende { display: block; } }

/* ---------- Entrées Femme / Homme / Accessoires ---------- */
.entrees { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gouttiere); }
.entree { position: relative; display: block; overflow: hidden; background: var(--pierre); color: var(--blanc); aspect-ratio: 3 / 4; }
.entree--large { grid-column: 1 / -1; aspect-ratio: 16 / 10; }
.entree img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 700ms var(--ease); }
.entree::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgb(26 34 56 / 0.55), rgb(26 34 56 / 0) 45%); }
.entree__label { position: absolute; z-index: 2; left: var(--s4); bottom: var(--s4); font-size: clamp(20px, 1.4vw + 14px, 30px); font-weight: 650; font-stretch: 112%; letter-spacing: -0.01em; }
.entree__compte { display: block; font-size: 13px; font-weight: 500; font-stretch: 100%; opacity: 0.85; letter-spacing: 0; margin-top: 2px; }
@media (hover: hover) { .entree:hover img { transform: scale(1.03); } }
@media (min-width: 900px) {
  .entrees { grid-template-columns: repeat(3, 1fr); }
  .entree--large { grid-column: auto; aspect-ratio: 3 / 4; }
}

/* ---------- Chapitres de lignes ---------- */
.chapitre__tete { display: grid; gap: var(--s4); margin-bottom: var(--s6); }
.chapitre__lockup { overflow-wrap: anywhere; }
.chapitre__accroche { font-size: clamp(17px, 0.5vw + 15px, 21px); max-width: 34ch; font-weight: 450; }
.chapitre__meta { display: flex; align-items: center; gap: var(--s5); flex-wrap: wrap; }
.chapitre__compte { font-size: 14px; color: var(--ardoise); }
.chapitre__medias { display: grid; grid-template-columns: 1fr; gap: var(--gouttiere); margin-bottom: var(--s6); }
.chapitre__medias .ratio:nth-child(2) { display: none; }
@media (min-width: 900px) {
  .chapitre__tete { grid-template-columns: 1fr auto; align-items: end; }
  .chapitre__medias { grid-template-columns: 1fr 1fr; }
  .chapitre__medias .ratio:nth-child(2) { display: block; }
}
.chapitre--sombre { background: var(--marine); color: var(--blanc); }
.chapitre--sombre .chapitre__compte, .chapitre--sombre .carte__ligne { color: rgb(255 255 255 / 0.68); }
.chapitre--sombre .carte__media { background: #232c46; }
.chapitre--sombre .badge { background: var(--blanc); }
.chapitre--sombre .rail__nav button { border-color: rgb(255 255 255 / 0.35); color: var(--blanc); }
.chapitre--sombre .rail__nav button:hover:not(:disabled) { background: var(--blanc); color: var(--marine); }
.chapitre--sombre .carte__pastilles button[aria-pressed="true"] { box-shadow: inset 0 0 0 1.5px var(--blanc); }

/* ---------- Toutes les lignes ---------- */
.lignes { display: grid; gap: var(--s6); }
.lignes__liste li { border-top: 1px solid var(--trait); }
.lignes__liste li:last-child { border-bottom: 1px solid var(--trait); }
.lignes__lien { display: flex; align-items: center; gap: var(--s4); padding: var(--s4) 0; }
.lignes__vignette { width: 56px; aspect-ratio: 2 / 3; flex: none; overflow: hidden; background: var(--pierre); }
.lignes__vignette img { width: 100%; height: 100%; object-fit: cover; }
.lignes__nom { font-size: clamp(30px, 3.4vw + 10px, 64px); font-weight: 750; font-stretch: 112%; letter-spacing: -0.015em; line-height: 1.05; flex: 1; transition: color var(--d-micro) var(--ease); }
.lignes__nombre { font-size: 14px; color: var(--ardoise); font-variant-numeric: tabular-nums; }
.lignes__visuel { display: none; }
@media (min-width: 1000px) {
  .lignes { grid-template-columns: 1.3fr 1fr; align-items: start; gap: var(--s8); }
  .lignes__vignette { display: none; }
  .lignes__lien { padding: var(--s3) 0; }
  .lignes__liste:hover .lignes__nom { color: var(--trait-ui); }
  .lignes__liste .lignes__lien:hover .lignes__nom, .lignes__liste .lignes__lien:focus-visible .lignes__nom { color: var(--marine); }
  .lignes__visuel { display: block; position: sticky; top: calc(var(--header-h) + 24px); }
  .lignes__visuel img { transition: opacity 240ms var(--ease); }
}

/* ---------- Portées par vous : témoignages réels ---------- */
.temoignages { background: var(--pierre); }
.temoignages__tete { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--s3) var(--s5); margin-bottom: var(--s7); }
.temoignages__resume { display: inline-flex; align-items: center; gap: 10px; margin: 0; font-size: 15px; font-weight: 550; font-variant-numeric: tabular-nums; }
.temoignages__corps { display: grid; gap: var(--s7); align-items: center; }
.temoignages__photo { position: relative; margin: 0; aspect-ratio: 4 / 5; overflow: hidden; background: var(--pierre-fonce); }
.temoignages__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 28%; }
.temoignages__photo figcaption {
  position: absolute; left: 12px; bottom: 12px; padding: 5px 10px; border-radius: var(--r-badge);
  background: var(--blanc); color: var(--marine); font-size: 12px; font-weight: 650;
}
.temoignages__textes { display: grid; gap: var(--s7); min-width: 0; }
.temoignage { display: grid; gap: var(--s5); justify-items: start; margin: 0; }
.temoignage__icone { display: block; width: 46px; color: var(--marine); }
.temoignage__icone svg { width: 100%; height: auto; }
.temoignage__citation { margin: 0; }
.temoignage__citation p {
  margin: 0; max-width: 22ch; font-size: clamp(26px, 1.8vw + 17px, 44px); font-weight: 620; font-stretch: 106%;
  line-height: 1.14; letter-spacing: -0.012em; text-wrap: balance;
}
.temoignage__auteur { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; margin: 0; font-size: 14px; color: var(--ardoise); }
.temoignage__auteur strong { color: var(--marine); font-weight: 650; }
.temoignage__produit {
  display: grid; grid-template-columns: 52px 1fr auto; gap: 14px; align-items: center; width: 100%; max-width: 520px;
  padding: 10px 16px 10px 10px; background: var(--blanc); transition: box-shadow var(--d-micro) var(--ease);
}
.temoignage__produit:hover { box-shadow: inset 0 0 0 1px var(--marine); }
.temoignage__produit-media { aspect-ratio: 2 / 3; overflow: hidden; background: var(--pierre); }
.temoignage__produit-media img { width: 100%; height: 100%; object-fit: cover; }
.temoignage__produit-nom { display: block; font-weight: 600; font-size: 15px; }
.temoignage__produit-prix { display: block; font-size: 14px; color: var(--ardoise); font-variant-numeric: tabular-nums; }
.temoignage__lire { font-size: 14px; font-weight: 600; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.temoignage--second { gap: var(--s3); padding-top: var(--s6); border-top: 1px solid var(--trait-ui); }
.temoignage--second .temoignage__citation p { max-width: 38ch; font-size: clamp(19px, 0.5vw + 16px, 23px); font-weight: 500; font-stretch: 100%; line-height: 1.35; letter-spacing: 0; }
.temoignage__couleurs { display: inline-flex; flex-wrap: wrap; gap: 12px; }
.temoignage__couleurs span { display: inline-flex; align-items: center; gap: 6px; color: var(--marine); }
.temoignage__couleurs i { width: 14px; height: 14px; border-radius: 50%; background: var(--c); box-shadow: inset 0 0 0 1px rgb(26 34 56 / 0.2); }
.temoignages__appel {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s4);
  padding: var(--s5); background: var(--blanc);
}
.temoignages__appel p { margin: 0; max-width: 44ch; font-size: 15px; }
.temoignages__appel strong { display: block; font-size: 17px; margin-bottom: 2px; }
@media (min-width: 1000px) {
  .temoignages__corps { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--s8); }
}

/* ---------- Histoire (aperçu) ---------- */
.histoire { background: var(--marine); color: var(--blanc); }
.histoire__inner { display: grid; gap: var(--s6); align-items: center; }
.histoire__media { aspect-ratio: 4 / 5; overflow: hidden; background: #232c46; }
.histoire__media img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 6%; }
.histoire__filet { width: 48px; height: var(--liseré); background: var(--or-clair); margin-bottom: var(--s5); }
.histoire__titre { margin-bottom: var(--s5); }
.histoire__texte { font-size: clamp(17px, 0.5vw + 15px, 20px); color: rgb(255 255 255 / 0.86); max-width: 40ch; }
@media (min-width: 900px) { .histoire__inner { grid-template-columns: 1fr 1fr; gap: var(--s8); } }

/* ---------- Service ---------- */
.service { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s6) var(--s5); }
.service__item h3 { font-size: 16px; font-weight: 650; margin-bottom: 6px; }
.service__item p { font-size: 14px; color: var(--ardoise); margin: 0; }
.service__item::before { content: ""; display: block; width: 28px; height: var(--liseré); background: var(--marine); margin-bottom: var(--s4); }
@media (min-width: 900px) { .service { grid-template-columns: repeat(4, 1fr); } }

/* ---------- Collection ---------- */
.plp-tete { padding-top: var(--s6); padding-bottom: var(--s5); display: grid; gap: var(--s4); }
.plp-tete__titre { display: flex; align-items: baseline; gap: var(--s4); flex-wrap: wrap; }
.plp-tete__compte { font-size: 14px; color: var(--ardoise); font-variant-numeric: tabular-nums; }
.plp-ligne { display: grid; gap: var(--s5); padding-top: var(--s6); }
.plp-ligne__medias { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gouttiere); }
@media (min-width: 900px) { .plp-ligne { grid-template-columns: 1fr 1fr; align-items: end; } }
.barre-outils {
  position: sticky; top: var(--header-h); z-index: 20; background: var(--blanc);
  border-bottom: 1px solid var(--trait); margin-bottom: var(--s5);
}
.barre-outils__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--s4); min-height: 60px; }
.barre-outils__btn { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 4px; font-weight: 600; font-size: 15px; }
.barre-outils select { appearance: none; border: 0; background: transparent; font-weight: 600; font-size: 15px; padding: 10px 26px 10px 6px; cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231a2238' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 6px center; }
.filtres-actifs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: var(--s5); }
.filtres-actifs button { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border-radius: var(--r-pilule); background: var(--pierre); font-size: 13px; font-weight: 600; }
.tuile-campagne { position: relative; grid-column: span 2; overflow: hidden; background: var(--marine); color: var(--blanc); min-height: 100%; }
.tuile-campagne img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.tuile-campagne::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgb(26 34 56 / 0.7), rgb(26 34 56 / 0) 55%); }
.tuile-campagne__texte { position: absolute; z-index: 2; left: var(--s5); right: var(--s5); bottom: var(--s5); display: grid; gap: var(--s3); justify-items: start; }
.tuile-campagne__titre { font-size: clamp(34px, 3vw + 14px, 64px); font-weight: 850; font-stretch: 125%; line-height: 0.95; letter-spacing: -0.02em; }
.groupe-filtre + .groupe-filtre { margin-top: var(--s6); }
.groupe-filtre legend { font-weight: 650; font-size: 15px; margin-bottom: var(--s3); }

/* ---------- Fiche produit ---------- */
.pdp { display: grid; gap: var(--s5); padding-top: var(--s4); }
.pdp__fil { margin-bottom: var(--s3); }
.galerie { position: relative; }
.galerie__piste { display: grid; grid-auto-flow: column; grid-auto-columns: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-inline: calc(var(--marge) * -1); }
.galerie__piste::-webkit-scrollbar { display: none; }
.galerie__item { scroll-snap-align: start; position: relative; aspect-ratio: 2 / 3; background: var(--pierre); overflow: hidden; border: 0; padding: 0; cursor: zoom-in; display: block; width: 100%; }
.galerie__item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.galerie__vide { display: grid; place-items: center; align-content: center; gap: var(--s3); padding: var(--s6); text-align: center; color: var(--ardoise); font-size: 15px; cursor: default; }
.galerie__vide strong { color: var(--marine); font-size: 17px; }
.galerie__bas { display: flex; align-items: center; gap: var(--s4); margin-top: var(--s4); }
.galerie__compteur { font-size: 13px; color: var(--ardoise); font-variant-numeric: tabular-nums; }
.pdp__infos { display: grid; gap: var(--s5); align-content: start; }
.pdp__ligne { font-size: 14px; font-weight: 600; color: var(--ardoise); }
.pdp__ligne:hover { color: var(--marine); text-decoration: underline; text-underline-offset: 3px; }
.pdp__titre { margin-top: 4px; }
.pdp__prix-ligne { display: flex; align-items: center; justify-content: space-between; gap: var(--s4); flex-wrap: wrap; margin-top: var(--s3); }
.pdp__prix { font-size: 20px; font-weight: 550; font-variant-numeric: tabular-nums; }
.pdp__note { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; }
.pdp__note:hover span:last-child { text-decoration: underline; text-underline-offset: 3px; }
.pdp__badges { display: flex; gap: 6px; flex-wrap: wrap; margin-top: var(--s3); }
.pdp__badges .badge { background: var(--pierre); }
.pdp__achat { display: grid; gap: var(--s3); }
.pdp__reassurance { display: grid; gap: 8px; font-size: 14px; }
.pdp__reassurance li { display: flex; gap: 10px; align-items: flex-start; }
.pdp__reassurance .icone { width: 18px; height: 18px; margin-top: 2px; color: var(--ardoise); }
.pdp__section-titre { font-size: var(--fs-h2); font-weight: 600; margin-bottom: var(--s5); }
.avis-resume { display: grid; gap: var(--s5); }
.avis-liste { display: grid; gap: var(--s5); }
.avis-item { display: grid; gap: var(--s3); padding-bottom: var(--s5); border-bottom: 1px solid var(--trait); }
.avis-item__tete { display: flex; justify-content: space-between; gap: var(--s4); font-size: 14px; color: var(--ardoise); }
.avis-item__auteur { color: var(--marine); font-weight: 650; }
.avis-item__photo { width: 120px; aspect-ratio: 3 / 4; overflow: hidden; background: var(--pierre); }
.avis-item__photo img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 1100px) {
  .pdp { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s8); align-items: start; }
  .pdp__fil { grid-column: 1 / -1; margin-bottom: 0; }
  .galerie__piste { grid-auto-flow: row; grid-template-columns: 1fr 1fr; grid-auto-columns: auto; overflow: visible; margin-inline: 0; gap: var(--gouttiere); }
  .galerie__piste .galerie__item:first-child:nth-last-child(odd) { grid-column: 1 / -1; }
  .galerie__bas { display: none; }
  .pdp__infos { position: sticky; top: calc(var(--header-h) + 24px); }
  .avis-resume { grid-template-columns: 1fr 2fr; gap: var(--s8); }
}

/* Guide des tailles */
.tableau-tailles { width: 100%; font-size: 14px; font-variant-numeric: tabular-nums; }
.tableau-tailles th, .tableau-tailles td { padding: 12px 10px; text-align: left; border-bottom: 1px solid var(--trait); }
.tableau-tailles thead th { font-weight: 650; background: var(--pierre); }
.tableau-tailles tbody th { font-weight: 600; }
.tableau-tailles td { color: var(--ardoise); }
.tableau-defile { overflow-x: auto; }

/* ---------- Pages éditoriales ---------- */
.page-tete { padding-top: var(--s7); padding-bottom: var(--s6); }
.page-tete__titre { max-width: 16ch; }
.page-tete__intro { font-size: clamp(17px, 0.6vw + 15px, 21px); max-width: 46ch; margin-top: var(--s5); color: #2b3247; }
.manifeste { background: var(--marine); color: var(--blanc); }
.manifeste__texte { font-size: clamp(26px, 2.4vw + 14px, 52px); font-weight: 650; font-stretch: 108%; line-height: 1.1; letter-spacing: -0.015em; max-width: 22ch; }
.manifeste__texte + .manifeste__texte { margin-top: var(--s6); color: rgb(255 255 255 / 0.62); }
.bloc-2 { display: grid; gap: var(--s6); align-items: center; }
@media (min-width: 900px) { .bloc-2 { grid-template-columns: 1fr 1fr; gap: var(--s8); } .bloc-2--inverse > :first-child { order: 2; } }
.bloc-2__texte h2 { margin-bottom: var(--s4); }
.bloc-2__texte p { color: #2b3247; }
.casting { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--gouttiere); }
@media (min-width: 900px) { .casting { grid-template-columns: repeat(4, 1fr); } }
.faq-groupe + .faq-groupe { margin-top: var(--s8); }
.faq-groupe h2 { margin-bottom: var(--s4); }
.aide-grille { display: grid; gap: var(--s7); }
@media (min-width: 1000px) { .aide-grille { grid-template-columns: 240px 1fr; gap: var(--s8); } .aide-nav { position: sticky; top: calc(var(--header-h) + 24px); align-self: start; } }
.aide-nav ul { display: grid; gap: 4px; }
.aide-nav a { display: block; padding: 8px 0; font-weight: 600; color: var(--ardoise); }
.aide-nav a:hover, .aide-nav a[aria-current="true"] { color: var(--marine); }
.contact-grille { display: grid; gap: var(--s7); }
@media (min-width: 1000px) { .contact-grille { grid-template-columns: 1fr 1.2fr; gap: var(--s8); } }
.contact-canal { padding: var(--s5); border: 1px solid var(--trait); display: grid; gap: var(--s3); align-content: start; }
.contact-canal + .contact-canal { margin-top: var(--gouttiere); }
.contact-canal h2 { font-size: 18px; }
.formulaire { display: grid; gap: var(--s5); }
.formulaire__rangee { display: grid; gap: var(--s5); }
@media (min-width: 700px) { .formulaire__rangee { grid-template-columns: 1fr 1fr; } }
.succes { padding: var(--s5); background: var(--pierre); display: grid; gap: var(--s2); }

/* 404 et page mot de passe */
.page-erreur { position: relative; min-height: calc(100svh - var(--bar-h) - var(--header-h)); display: grid; align-items: end; color: var(--blanc); overflow: hidden; background: var(--marine); }
.page-erreur img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.page-erreur::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgb(26 34 56 / 0.82), rgb(26 34 56 / 0.25) 60%, rgb(26 34 56 / 0.1)); }
.page-erreur__contenu { position: relative; z-index: 2; padding-block: var(--s8); display: grid; gap: var(--s5); justify-items: start; }
.page-erreur__code { font-size: 14px; font-weight: 600; opacity: 0.8; font-variant-numeric: tabular-nums; }
.page-erreur__titre { font-size: clamp(36px, 4vw + 16px, 72px); font-weight: 750; font-stretch: 112%; line-height: 1; letter-spacing: -0.015em; max-width: 14ch; }
.page-erreur__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.page-erreur__recherche { display: flex; gap: 8px; width: min(100%, 480px); }
.page-erreur__recherche input { flex: 1; min-width: 0; min-height: 50px; border-radius: var(--r-pilule); border: 1px solid rgb(255 255 255 / 0.5); background: rgb(255 255 255 / 0.12); color: var(--blanc); padding: 0 20px; font-size: 16px; }
.page-erreur__recherche input::placeholder { color: rgb(255 255 255 / 0.75); }
.mdp { min-height: 100svh; display: grid; grid-template-rows: 1fr auto; background: var(--marine); color: var(--blanc); position: relative; overflow: hidden; }
.mdp__fond { position: absolute; inset: 0; }
.mdp__fond img { width: 100%; height: 100%; object-fit: cover; opacity: 0.34; }
.mdp__fond::after { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 45%, rgb(26 34 56 / 0.55), rgb(26 34 56 / 0.2) 70%); }
.mdp__contenu { position: relative; z-index: 2; display: grid; place-items: center; align-content: center; gap: var(--s5); padding: var(--s8) var(--marge); text-align: center; }
.mdp__wordmark { width: min(56vw, 360px); color: var(--blanc); }
.mdp__form { display: flex; gap: 8px; width: min(100%, 460px); }
.mdp__form input { flex: 1; min-width: 0; min-height: 52px; border-radius: var(--r-pilule); border: 0; padding: 0 20px; font-size: 16px; color: var(--marine); }
.mdp__pied { position: relative; z-index: 2; padding: var(--s5) var(--marge); display: flex; justify-content: space-between; gap: var(--s4); font-size: 13px; color: rgb(255 255 255 / 0.75); flex-wrap: wrap; }
.mdp__pied button { text-decoration: underline; text-underline-offset: 3px; }

/* Chapitres : image de campagne + produits de la ligne */
.chapitre__corps { display: grid; gap: var(--s5); }
.chapitre__media { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: var(--pierre); }
.chapitre--sombre .chapitre__media { background: #232c46; }
.chapitre__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.chapitre__produits { display: grid; gap: var(--s5); align-content: end; min-width: 0; }
@media (min-width: 1100px) {
  .chapitre__corps { grid-template-columns: 5fr 7fr; gap: var(--s7); align-items: end; }
  .chapitre__produits .rail__piste { grid-auto-columns: calc((100% - var(--gouttiere)) / 2); margin-inline: 0; padding-inline: 0; scroll-padding-inline: 0; }
}
