/* ==========================================================================
   Kamai Event — Section « Tarifs » (#tarifs).
   Grille de prix (nombre d'impressions → tarif) + mentions (impressions seules,
   cadre +29 €, frais de déplacement selon le lieu) + CTA devis.
   Placée après #prestations. Dépend de css/tokens.css.
   ========================================================================== */
.tarifs{
  background:var(--ivory); padding:7rem 1.8rem;
  border-top:1px solid rgba(197,165,114,.18);
}
.tarifs__inner{ max-width:720px; margin:0 auto; }

/* ---- En-tête ---- */
.tarifs__head{ max-width:640px; margin:0 auto 3rem; text-align:center; }
.tarifs .eyebrow{
  font-family:var(--sans); font-size:.72rem; letter-spacing:.34em;
  text-transform:uppercase; color:var(--ink-soft); margin-bottom:1.1rem;
}
.tarifs h1,
.tarifs h2{
  font-family:var(--serif); font-weight:500; line-height:1.06;
  font-size:clamp(2rem,4vw,3rem); color:var(--ink); margin:0 0 1rem;
}
/* Variante page dédiée (tarifs.html) : marge haute pour passer sous le header fixe */
.tarifs--page{ padding-top:8.5rem; }
.tarifs .lead{ color:var(--ink-soft); font-size:1.02rem; line-height:1.7; }

/* ---- Grille de prix ---- */
.tarifs__table{ width:100%; border-collapse:collapse; }
.tarifs__table thead th{
  font-family:var(--sans); font-weight:500; font-size:.7rem; letter-spacing:.2em;
  text-transform:uppercase; color:var(--ink-soft); text-align:left;
  padding:0 .2rem 1rem; border-bottom:1px solid rgba(10,10,10,.18);
}
.tarifs__table thead th:last-child{ text-align:right; }
.tarifs__table tbody td{
  padding:1.05rem .2rem; border-bottom:1px solid rgba(10,10,10,.07);
  font-family:var(--sans); font-weight:300; font-size:1rem; color:var(--ink);
}
.tarifs__table tbody td:last-child{
  text-align:right; white-space:nowrap;
  font-family:var(--serif); font-weight:600; font-size:1.2rem; color:var(--ink);
}
.tarifs__table tbody tr{ transition:background-color .25s ease; }
.tarifs__table tbody tr:hover{ background:rgba(197,165,114,.09); }

/* ---- Mentions ---- */
.tarifs__notes{ list-style:none; margin:2.4rem 0 0; padding:0; }
.tarifs__notes li{
  position:relative; padding-left:1.4rem; margin-bottom:.7rem;
  font-family:var(--sans); font-weight:300; font-size:.95rem;
  line-height:1.6; color:var(--ink-soft);
}
.tarifs__notes li::before{               /* losange doré */
  content:""; position:absolute; left:.1rem; top:.5em;
  width:6px; height:6px; background:var(--gold); transform:rotate(45deg);
}
.tarifs__notes strong{ font-weight:500; color:var(--ink); }

/* ---- CTA ---- */
.tarifs__cta-wrap{ text-align:center; margin-top:2.6rem; }
.tarifs__cta{
  display:inline-flex; align-items:center; justify-content:center;
  font-family:var(--sans); font-size:.82rem; letter-spacing:.18em; text-transform:uppercase;
  padding:1.05rem 2.4rem; border:1px solid var(--gold); color:var(--ink);
  text-decoration:none; position:relative; overflow:hidden; z-index:0;
}
.tarifs__cta::before{
  content:""; position:absolute; inset:0; background:var(--gold);
  transform:scaleX(0); transform-origin:left; z-index:-1;
  transition:transform .45s cubic-bezier(.6,0,.2,1);
}
.tarifs__cta:hover::before{ transform:scaleX(1); }

/* Lien retour (page dédiée) */
.tarifs__back{
  display:block; text-align:center; margin-top:1.8rem;
  font-family:var(--sans); font-size:.78rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-soft); text-decoration:none; transition:color .25s ease;
}
.tarifs__back:hover{ color:var(--gold); }

@media (max-width:600px){
  .tarifs{ padding:4.5rem 1.4rem; }
  .tarifs__table tbody td{ font-size:.95rem; }
  .tarifs__table tbody td:last-child{ font-size:1.1rem; }
}
