/*═══════════════════════════════════════════════════════════════════════════
  D-C — CSS « Particuliers » (2026-08-11, voir ROADMAP.md et ETAT.md,
  clôture D-C). Gabarit page-particuliers.php : page composée (pas de
  maquette ni de pattern Gutenberg de référence), vocabulaire Carnet
  (section, wrap, bandes de couleur, eyebrow, stamp, boutons) — voir
  DECISIONS.md, D-C préparation. Chargé automatiquement par functions.php §8
  sur le gabarit résolu "page-particuliers" (vérifié empiriquement avant
  d'écrire ce fichier).
═══════════════════════════════════════════════════════════════════════════*/

.particuliers-hero h1{ font-size:var(--text-4xl); max-width:16ch; margin-top:var(--space-4); }
.particuliers-hero__lede{ font-size:var(--text-lg); color:var(--color-ink-2); max-width:56ch; margin-top:var(--space-5); }

.particuliers-mecanique h2{ font-size:var(--text-3xl); max-width:20ch; margin-top:var(--space-4); }
.particuliers-mecanique__grid{ display:grid; grid-template-columns:1fr; gap:var(--space-8); margin-top:var(--space-10); }
.particuliers-mecanique__grid h3{ font-size:var(--text-xl); }
.particuliers-mecanique__grid p{ font-size:var(--text-base); margin-top:var(--space-3); max-width:52ch; }
.particuliers-mecanique__stamps{ display:flex; flex-wrap:wrap; gap:var(--space-3); margin-top:var(--space-10); }
.particuliers-mecanique__stamps .stamp{ border-color:var(--color-teal-soft); color:var(--color-teal-soft); }
.particuliers-mecanique__note{ font-size:var(--text-sm); color:var(--color-teal-soft); max-width:60ch; margin-top:var(--space-8); }

.particuliers-mariages h2{ font-size:var(--text-2xl); margin-top:var(--space-3); }
.particuliers-mariages p{ font-size:var(--text-base); max-width:56ch; margin-top:var(--space-3); }

.particuliers-cta h2{ font-size:var(--text-3xl); margin-top:var(--space-4); }
.particuliers-cta__lede{ font-size:var(--text-lg); max-width:52ch; margin-top:var(--space-5); }
.particuliers-cta__actions{ margin-top:var(--space-8); }

@media (min-width:768px){
  .particuliers-mecanique__grid{ grid-template-columns:repeat(2,1fr); }
}


/* ═══════════════════════════════════════════════════════════════════════════
   EDV-V3-PARTICULIERS-V1 — vague 3, point #16 d'ANALYSE-MAQUETTE2.md
   (2026-08-21). Trois corrections de mise en page sur /particuliers/, toutes
   additives : ce bloc est en fin de feuille, il gagne la cascade sur les
   règles de même spécificité écrites plus haut. Aucun gabarit PHP n'est
   nécessaire pour ces règles-ci (le tampon « Environ 10 € par personne » est,
   lui, posé dans page-particuliers.php par le même lot).

   Constat mesuré le 2026-08-21 (HTML réellement servi + feuille réellement
   servie, lus par n8n) : contrairement à ce que supposait #16, .wrap n'est
   grille nulle part — les tampons et la note SONT bien en pleine largeur dans
   le DOM. Ce qui « penche », c'est que le haut de la bande est en deux
   colonnes pendant que tout le bas s'entasse à gauche (trois puces courtes,
   puis une note plafonnée à 60ch). D'où le parti pris ci-dessous : ne pas
   « réparer » une largeur qui n'est pas cassée, mais donner au bas de bande
   le même rythme deux colonnes que le haut.

   1. Bande « Une soirée, deux rôles » : tampons à gauche, note à droite,
      sur la même ligne de grille, à partir de 768px.
   2. « Mariages » : un h2 + un paragraphe à max-width:56ch dans une bande
      pleine largeur laissaient environ 60 % de vide à droite. Passage en
      éditorial 5/7 (titre à gauche, texte à droite) — aucun contenu ajouté.
   3. Le prix (« environ 10 € par personne ») restait noyé au milieu du
      paragraphe « Pour l'invité » : il devient le premier tampon de la
      rangée, en crème pour le distinguer des trois tampons de contrainte.
   ═══════════════════════════════════════════════════════════════════════ */

.particuliers-mecanique__stamps .stamp--prix{
  border-color:var(--color-cream);
  color:var(--color-cream);
}

@media (min-width:768px){

  /* 1 — le bas de la bande reprend les deux colonnes du haut */
  .particuliers-mecanique .wrap{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    column-gap:var(--space-8);
    align-items:start;
  }
  .particuliers-mecanique .wrap > .eyebrow,
  .particuliers-mecanique .wrap > h2,
  .particuliers-mecanique__grid{ grid-column:1 / -1; }
  .particuliers-mecanique__stamps{ grid-column:1; }
  .particuliers-mecanique__note{ grid-column:2; margin-top:var(--space-10); max-width:none; }

  /* 2 — Mariages en éditorial deux colonnes */
  .particuliers-mariages .wrap{
    display:grid;
    grid-template-columns:5fr 7fr;
    column-gap:var(--space-10);
    align-items:start;
  }
  .particuliers-mariages .wrap > .eyebrow{ grid-column:1; grid-row:1; }
  .particuliers-mariages .wrap > h2{ grid-column:1; grid-row:2; }
  .particuliers-mariages .wrap > p:not(.eyebrow){
    grid-column:2;
    grid-row:1 / span 2;
    margin-top:0;
    max-width:none;
    font-size:var(--text-lg);
  }
}


/* ═══════════════════════════════════════════════════════════════════════════
   EDV-A10-ATELIERS-DEGUSTATION-V1 — /particuliers/ (2026-08-25)

   Rubrique « Les ateliers de dégustation », insérée entre la mécanique de la
   soirée (bande teal) et Mariages (bande crème). Bande kraft : elle rappelle
   le hero, ce qui signe que les ateliers appartiennent à la même offre
   particuliers plutôt qu'à une famille nouvelle.

   Le cadre photo est carré, comme les cartes de la page Entreprises depuis
   A-8 : les images de « photo AUTRES » sont en 1024×1024, un cadre 4/3 y
   aurait recadré du sujet pour rien.

   La carte sans vignette n'est pas un trou : c'est un cadre teinté portant la
   goutte de la charte. Décision Romain du 2026-08-25 — voir tout de suite ce
   qui reste à photographier vaut mieux qu'un repli silencieux sur la photo de
   présentation.
   ═══════════════════════════════════════════════════════════════════════ */

.particuliers-ateliers__lede{
  max-width:64ch;
  font-size:var(--text-lg);
  color:var(--color-ink-2);
}

.particuliers-ateliers__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-6);
  margin-top:var(--space-10);
}

@media (min-width:600px){
  .particuliers-ateliers__grid{ grid-template-columns:repeat(2,1fr); }
}
@media (min-width:960px){
  .particuliers-ateliers__grid{ grid-template-columns:repeat(3,1fr); }
}

.ateliers-card{
  display:flex;
  flex-direction:column;
  background:var(--color-cream);
  border:var(--border-hair);
  border-radius:var(--radius-sm);
  overflow:hidden;
}

.ateliers-card__lien{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  padding:0 0 var(--space-5);
  color:inherit;
  text-decoration:none;
}
.ateliers-card__lien:hover h3{ text-decoration:underline; }

.ateliers-card__photo{
  aspect-ratio:1 / 1;
  overflow:hidden;
  background:var(--color-line-soft);
}
.ateliers-card__photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Carte sans « photo AUTRES » : cadre teinté + goutte, jamais de repli
   silencieux sur la photo de présentation (arbitrage du 2026-08-25). */
.ateliers-card__photo--vide{
  display:grid;
  place-items:center;
  background:var(--color-kraft);
  border-bottom:var(--border-hair);
}
.ateliers-card__photo--vide svg{
  width:22%;
  height:auto;
  fill:var(--color-teal-deep);
  opacity:.22;
}

.ateliers-card h3{
  margin:var(--space-5) var(--space-5) 0;
  font-family:var(--font-display);
  font-size:var(--text-xl);
  line-height:1.15;
}

.ateliers-card__angle{
  margin:var(--space-3) var(--space-5) 0;
  color:var(--color-ink-2);
  font-size:var(--text-sm);
}

.ateliers-card__facts{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-4);
  margin:var(--space-5) var(--space-5) 0;
  padding-top:var(--space-4);
  border-top:var(--border-hair);
}
.ateliers-card__facts div{ min-width:0; }
.ateliers-card__facts dt{
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--color-ink-3);
}
.ateliers-card__facts dd{
  margin:2px 0 0;
  font-family:var(--font-mono);
  font-size:var(--text-sm);
}

.ateliers-card__more{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:auto var(--space-5) 0;
  padding-top:var(--space-5);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--color-teal-deep);
}
.ateliers-card__more .icon{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.ateliers-card__reserver{
  margin:0;
  padding:var(--space-4) var(--space-5);
  border-top:var(--border-hair);
  background:rgba(0,0,0,.02);
}
.ateliers-card__reserver a{
  font-size:var(--text-sm);
  font-weight:700;
  color:var(--color-bordeaux);
}

.particuliers-ateliers__note{
  max-width:60ch;
  margin-top:var(--space-8);
  color:var(--color-ink-2);
  font-size:var(--text-sm);
}

.particuliers-ateliers__actions{ margin-top:var(--space-8); }


/* ═══════════════════════════════════════════════════════════════════════
   EDV-PARTICULIERS-BADGE-CTA-V1 — /particuliers/ (2026-08-26)

   Deux ajouts demandés par Romain le 2026-08-26 :
   1. le badge « Wine tasting · Eau de Vigne · Organic » en tête de page ;
   2. un bouton « Faire une réservation » juste sous ce bloc — celui du bas
      reste en place, il ferme la page.

   Le badge est servi en WebP détouré : le fichier d'origine avait un fond
   blanc #FAFAFA qui, posé sur la bande kraft, aurait fait un carré rapporté.
   Fond supprimé et trait recoloré à l'encre de la charte, donc il se pose sur
   n'importe quelle bande sans halo.

   Taille bornée en px et non en %, pour que le badge ne devienne pas un
   panneau sur grand écran : c'est une signature, pas une illustration.
   ═══════════════════════════════════════════════════════════════════════ */

.particuliers-hero__badge{
  display:block;
  width:min(100%, 180px);
  height:auto;
  margin:0 auto var(--space-8);
}

@media (min-width:600px){
  .particuliers-hero__badge{ width:min(100%, 240px); }
}
@media (min-width:960px){
  .particuliers-hero__badge{ width:min(100%, 280px); }
}

.particuliers-hero__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-5);
  margin-top:var(--space-8);
}

/* Le tampon de prix porte désormais la fourchette du barème et non plus un
   ordre de grandeur : « De 10 à 20 € par personne » tient sur deux lignes en
   mobile, on l'empêche juste de se couper n'importe où. */
.particuliers-mecanique__stamps .stamp--prix{
  text-wrap:balance;
}
