/*
 * VOIX_REFONTE_2026_10_13 — pages publiques Podcasts & Talkshows (liste, onglet Podcasts, fiche d'un épisode).
 * S'ajoute à css/billetterie.css (classes bil-*, variables --bil-* posées sur .bil) : seulement ce qui manque.
 * Maquettes validées le 13/10/2026 (Talkshows, Fiche-episode, Podcasts, en 1440 et 390).
 * Toutes les classes commencent par « voix- ». Fond d'attente des images : bleu nuit, jamais noir.
 */
#voix-app.bil, #voix-fiche.bil { display: block; background: var(--bil-creme); }
.voix { --voix-attente: #0B1E44; --voix-texte-pale: #C9D2E3; --voix-encre-fiche: #24324D; }
.voix-seul-tel, .voix-seul-tel-bloc { display: none; }
.voix-seul-ordi-flex { display: inline-flex; }
.voix-seul-ordi-bloc { display: flex; }
.voix-image--absente { visibility: hidden; }
/* Vignette YouTube hqdefault : 4:3 avec bandes noires incrustées autour de l'image 16:9. L'image est dimensionnée sur
   son cadre (unités de conteneur) pour que seule la partie 16:9 se voie, quelle que soit la hauteur du billet. */
.voix-billet__visuel, .voix-mini__visuel, .voix-une__visuel, .voix-video__affiche { container-type: size; }
.voix img.voix-image--yt43 { position: absolute; top: 50%; left: 50%; width: max(100cqw, 177.78cqh); max-width: none; height: auto; min-height: 0; aspect-ratio: 4 / 3; object-fit: fill; transform: translate(-50%, -50%); }
.voix-disque { position: absolute; top: 50%; left: 50%; display: flex; align-items: center; justify-content: center; width: 68px; height: 68px; margin: -34px 0 0 -34px; border-radius: 50%; background: var(--bil-or); color: var(--bil-marine); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4); }
.voix-disque--grand { width: 86px; height: 86px; margin: -43px 0 0 -43px; }
.voix-duree { position: absolute; right: 14px; bottom: 14px; padding: 4px 10px; border-radius: 999px; background: rgba(7, 21, 48, 0.85); color: #FFFFFF; font-size: 12.5px; font-weight: 600; line-height: 1.3; }
.voix-message__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
#voix-app ~ .we-footer-v4, #voix-fiche ~ .we-footer-v4 { margin-top: 0 !important; }

/* ---------- Couverture ---------- */
.voix-couv .bil-couv__photo { object-position: 50% 35%; }
.voix-couv__chiffres { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0; font-size: 14.5px; color: var(--voix-texte-pale); }
.voix-couv__chiffres strong { color: #FFFFFF; font-weight: 600; }
.voix-couv__chiffres:empty { display: none; }

/* Carte « À la une » avec image (épisode ou podcast) */
.voix-une { display: flex; flex-direction: column; overflow: hidden; border: 1px solid rgba(226, 201, 119, 0.45); border-radius: 22px; background: rgba(7, 21, 48, 0.84); box-shadow: 0 30px 60px rgba(0, 0, 0, 0.35); color: #FFFFFF; text-decoration: none; transition: transform 0.25s ease; --bil-anneau: var(--bil-or-clair); }
a.voix-une:hover { transform: translateY(-3px); }
.voix-une--podcast { cursor: pointer; }
.voix-une__visuel { position: relative; display: block; height: 252px; overflow: hidden; background: var(--voix-attente); }
.voix-une__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.voix-une__corps { display: flex; flex-direction: column; gap: 12px; padding: 22px 26px 26px; }
.voix-une__haut, .voix-une__bas { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.voix-une__haut .bil-kick { font-size: 11.5px; color: var(--voix-texte-pale); }
.voix-une__titre { font-family: var(--bil-serif); font-size: 26px; line-height: 1.16; overflow-wrap: anywhere; }
.voix-une__pointilles { margin: 4px 0; border-top: 2px dashed rgba(226, 201, 119, 0.4); }
.voix-une__date { font-size: 13.5px; color: var(--voix-texte-pale); }
.voix-une__action { flex-shrink: 0; min-height: 50px; padding: 0 24px; font-size: 15.5px; }
.voix-une .bil-officiel--sombre { border: 1px solid rgba(226, 201, 119, 0.6); }

/* ---------- Panneaux Talkshows / Podcasts ---------- */
.voix-episodes { scroll-margin-top: 96px; }
.voix-panneau[hidden] { display: none; }
.voix-format button { min-height: 44px; }
.voix-recherche { display: flex; align-items: center; }
.voix-recherche .voix-seg { flex: 1 1 0; }
.voix-recherche .voix-seg--quoi { flex: 1.6 1 0; }
.voix-recherche .bil-recherche__envoyer { flex: none; }
.voix-recherche .voix-seg:last-of-type { border-right: 0; }
.voix-seg[hidden] { display: none; }
.voix-seg--quoi > svg { display: none; }
.voix-seg__select { width: 100%; min-height: 24px; padding: 0 22px 0 0; border: 0; border-radius: 0; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235B6780' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right center / 14px no-repeat; font: 400 15.5px var(--bil-sans); color: var(--bil-encre-3); cursor: pointer; appearance: none; -webkit-appearance: none; }
.voix-seg__select:focus { outline: none; }
.voix-seg:focus-within { border-radius: 999px; outline: 3px solid var(--bil-marine); outline-offset: 2px; }
.voix-puces { margin-bottom: 14px; }
.voix-tri-zone { gap: 6px; font-size: 14px; color: var(--bil-encre-3); }
.voix-tri-libelle { display: inline-flex; }
.voix-tri, .voix-puce-select select { min-height: 44px; padding: 0 30px 0 14px; border: 1px solid #DCD3BC; border-radius: 999px; background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23091C3B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center / 14px no-repeat; font: 500 14px var(--bil-sans); color: var(--bil-encre); cursor: pointer; appearance: none; -webkit-appearance: none; }
/* position: relative : le libellé masqué (.bil-masque, en position absolue) reste dans la rangée qui défile ;
   sans cela il sortait de l'écran et élargissait la page à 556 px sur téléphone (recette du 13/10). */
.voix-puces, .voix-puce-select { position: relative; }
.voix-puce-select { padding: 0; border: 0; }
.voix-puce-select[hidden] { display: none !important; }
.voix-puce-select select { min-height: 44px; }

/* ---------- Billets à talon (épisodes et podcasts) ---------- */
.voix-billet { position: relative; grid-template-columns: 150px minmax(0, 1fr) 196px 267px; min-height: 150px; }
.voix-billet .bil-billet__titre { font-size: 27px; line-height: 1.12; color: inherit; text-decoration: none; }
.voix-billet .bil-billet__jour { font-size: 56px; }
.voix-billet__infos-tel, .voix-billet__ecouter-tel { display: none; }
.voix-billet__date { font-size: 13px; color: var(--bil-encre-3); }
.voix-billet__visuel { position: relative; display: block; width: 267px; height: 100%; min-height: 150px; overflow: hidden; background: var(--voix-attente); }
.voix-billet .voix-billet__photo { width: 100%; height: 100%; min-height: 0; }
.voix-billet__visuel .voix-duree { display: none; }
.voix-billet__resume { display: -webkit-box; overflow: hidden; font-size: 15px; line-height: 1.45; color: var(--bil-encre-2); -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.voix-billet--audio { min-height: 176px; cursor: pointer; }
.voix-billet--audio .bil-billet__talon { gap: 6px; }
.voix-billet--audio .bil-billet__talon svg { color: var(--bil-or-clair); }
.voix-billet--audio .bil-billet__heure { margin-top: 0; }
.voix-billet--audio .voix-billet__visuel { min-height: 176px; }
.voix-billet--audio .bil-bouton { position: relative; z-index: 2; }
.voix-billet--actif { box-shadow: 0 0 0 2px var(--bil-or), 0 22px 44px rgba(9, 28, 59, 0.12); }

/* Visuel de repli d'un podcast sans image : initiales du fournisseur et ondes */
.voix-repli { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: inherit; overflow: hidden; background: linear-gradient(135deg, var(--voix-attente) 0%, var(--bil-marine) 60%, #1A2E52 100%); }
.voix-repli__ondes { position: absolute; right: 0; bottom: 30px; left: 0; display: flex; align-items: flex-end; justify-content: center; gap: 5px; height: 46px; opacity: 0.55; }
.voix-repli__barre { width: 4px; border-radius: 2px; background: var(--bil-or); }
.voix-repli__initiales { position: relative; margin-bottom: 28px; font-family: var(--bil-serif); font-size: 64px; font-style: italic; line-height: 1; color: var(--bil-or-clair); }
.voix-une .voix-repli__initiales { font-size: 88px; }

/* ---------- Lettre, appel, lecteur ---------- */
.voix-news--carte { max-width: none; margin: 26px 0 0; padding: 34px 40px; border: 1px solid #E8DFC6; border-radius: 22px; background: #FFFFFF; }
.voix-news--carte .bil-news__titre { font-size: 28px; }
.voix-news--carte .bil-news__formulaire input { background: var(--bil-creme); }
.voix-news[hidden] { display: none; }

/* Conteneur collé au bas de la fenêtre (mesuré par we-event-chat.js via data-we-bottom-bar) ; la carte porte le dessin. */
.voix-lecteur { position: fixed; right: 0; bottom: 0; left: 0; z-index: 90; color: #FFFFFF; font-family: var(--bil-sans); --bil-anneau: var(--bil-or-clair); }
.voix-lecteur[hidden] { display: none; }
.voix-lecteur__carte { display: grid; grid-template-columns: 52px minmax(0, 1fr) minmax(0, 1.4fr) 130px 44px; align-items: center; gap: 22px; min-height: 84px; padding: 14px 40px calc(14px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid rgba(226, 201, 119, 0.35); background: var(--bil-marine); box-shadow: 0 -12px 30px rgba(7, 21, 48, 0.25); }
.voix-lecteur__bouton { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; padding: 0; border: 0; border-radius: 50%; background: var(--bil-or); color: var(--bil-marine); cursor: pointer; }
.voix-lecteur__infos { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.voix-lecteur__titre { overflow: hidden; font-size: 15px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.voix-lecteur__sous { font-size: 13px; color: var(--voix-texte-pale); }
.voix-lecteur__barre { display: flex; align-items: center; gap: 12px; }
.voix-lecteur__temps { min-width: 38px; font-size: 12.5px; font-variant-numeric: tabular-nums; color: var(--voix-texte-pale); }
.voix-lecteur__position { flex-grow: 1; min-width: 0; height: 44px; margin: 0; accent-color: var(--bil-or); cursor: pointer; }
.voix-lecteur__etat { font-size: 13px; text-align: right; color: var(--voix-texte-pale); }
.voix-lecteur__fermer { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 1px solid rgba(255, 255, 255, 0.35); border-radius: 50%; background: transparent; color: #FFFFFF; cursor: pointer; }
body.voix-lecteur-ouvert #voix-app { padding-bottom: 96px; }

/* ---------- Fiche d'un épisode ---------- */
#voix-fiche.bil { padding-top: 104px; background: linear-gradient(var(--bil-marine), var(--bil-marine)) top left / 100% 104px no-repeat, var(--bil-creme); }
.voix-fiche__etat { display: flex; justify-content: center; padding: 96px 24px; }
.voix-fiche__etat .bil-message { max-width: 620px; }
.voix-fiche__etat h1.bil-message__titre { font-weight: 400; }
.voix-entete { background: var(--bil-marine); color: #FFFFFF; --bil-anneau: var(--bil-or-clair); }
.voix-entete__grille { display: grid; grid-template-columns: minmax(0, 1fr) 660px; align-items: center; gap: 64px; max-width: 1440px; margin: 0 auto; padding: 64px 96px 80px; }
.voix-entete__texte { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.voix-ariane { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 13px; color: #A9B4C9; }
.voix-ariane a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; text-decoration: none; }
.voix-ariane a:hover { color: #FFFFFF; text-decoration: underline; }
.voix-ariane [aria-current="page"] { color: var(--bil-or-clair); }
.voix-entete__titre { margin: 0; font-family: var(--bil-serif); font-size: 54px; font-weight: 400; line-height: 1.06; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.voix-entete__titre em { display: block; font-style: italic; color: var(--bil-or-clair); }
.voix-entete__metas { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0; padding: 0; list-style: none; font-size: 14.5px; color: var(--voix-texte-pale); }
.voix-entete__metas li { display: flex; align-items: center; gap: 8px; }
.voix-entete__metas svg { flex-shrink: 0; color: var(--bil-or-clair); }
.voix-entete__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 4px; }
.voix-partage__libelle { margin-right: 4px; font-size: 13px; color: #A9B4C9; }
/* Message de copie : hors de la rangée qui défile (visible au téléphone). Parent en colonne flexible : flex-basis auto, largeur par étirement. */
.voix-partage__message { flex-basis: auto; margin: -10px 0 0; }
.voix-partage .bil-partage__bouton { gap: 8px; }
.voix-partage .bil-partage__bouton, .voix-partage .bil-partage__lien { padding: 0 14px; font-size: 13.5px; }
.voix-video { position: relative; aspect-ratio: 16 / 9; width: 100%; overflow: hidden; border: 1px solid rgba(226, 201, 119, 0.5); border-radius: 22px; background: var(--voix-attente); box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4); }
.voix-video > .voix-video__image, .voix-video__affiche .voix-video__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.voix-video__affiche { position: relative; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.voix-video__voile { position: absolute; inset: 0; background: rgba(7, 21, 48, 0.18); }
.voix-video__affiche:hover .voix-disque { background: var(--bil-or-survol); }
.voix-video__etiquette { position: absolute; bottom: 16px; left: 18px; padding: 5px 12px; border-radius: 999px; background: rgba(7, 21, 48, 0.85); color: #FFFFFF; font-size: 13px; font-weight: 600; }
.voix-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.voix-corps.bil-section { padding: 88px max(96px, calc((100% - 1248px) / 2)); }
.voix-corps__grille { display: grid; grid-template-columns: minmax(0, 1fr) 400px; align-items: start; gap: 72px; }
.voix-apropos { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.voix-apropos__titre { margin: 0; }
.voix-apropos__titre em, .voix-similaires .bil-titre-serif em { font-style: italic; color: var(--bil-or-fonce); }
.voix-apropos__texte { max-width: 720px; font-size: 18px; line-height: 1.7; color: var(--voix-encre-fiche); }
.voix-apropos__texte p { white-space: pre-line; overflow-wrap: anywhere; }
.voix-apropos__suite[hidden] { display: none; }
.voix-apropos__plus { display: inline-flex; align-self: flex-start; align-items: center; gap: 8px; min-height: 46px; padding: 0 20px; border: 1px solid #DCD3BC; border-radius: 999px; background: #FFFFFF; font: 600 14.5px var(--bil-sans); color: var(--bil-encre); cursor: pointer; }
.voix-apropos__plus[aria-expanded="true"] svg { transform: rotate(180deg); }
.voix-apropos__aside { display: flex; flex-direction: column; gap: 20px; }
.voix-invite { display: flex; flex-direction: column; gap: 16px; padding: 28px; border: 1px solid #E8DFC6; border-radius: 22px; background: #FFFFFF; box-shadow: 0 10px 30px rgba(9, 28, 59, 0.06); }
.voix-invite__kick { font-size: 11.5px; }
.voix-invite__identite { display: flex; align-items: center; gap: 16px; }
.voix-invite__logo { flex-shrink: 0; width: 72px; height: 72px; border: 2px solid var(--bil-or-clair); border-radius: 50%; object-fit: cover; background: var(--voix-attente); }
.voix-invite__initiale { display: flex; align-items: center; justify-content: center; font-family: var(--bil-serif); font-size: 30px; font-style: italic; color: var(--bil-or-clair); }
.voix-invite__noms { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.voix-invite__nom { font-family: var(--bil-serif); font-size: 23px; line-height: 1.15; overflow-wrap: break-word; }
.voix-invite__role { font-size: 14px; color: var(--bil-encre-3); overflow-wrap: anywhere; }
.voix-invite__vitrine { min-height: 50px; }
.voix-carte-candidater { flex-direction: column; gap: 12px; padding: 28px; border-radius: 22px; background: var(--bil-marine); color: #FFFFFF; --bil-anneau: var(--bil-or-clair); }
.voix-carte-candidater .bil-kick { font-size: 11.5px; }
.voix-carte-candidater__titre { margin: 0; font-family: var(--bil-serif); font-size: 26px; line-height: 1.12; }
.voix-carte-candidater__texte { margin: 0; font-size: 14.5px; line-height: 1.55; color: #D5DCE8; }
.voix-carte-candidater .bil-bouton { margin-top: 4px; }
.voix-similaires { display: flex; flex-direction: column; gap: 26px; max-width: 1440px; margin: 0 auto; padding: 0 96px 96px; }
.voix-similaires__entete { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.voix-similaires__titres { display: flex; flex-direction: column; gap: 10px; }
.voix-similaires .bil-titre-serif { margin: 0; }
.voix-similaires__tous { align-items: center; gap: 8px; min-height: 44px; font-size: 15px; font-weight: 600; color: var(--bil-marine); text-decoration: none; }
.voix-similaires__tous:hover { text-decoration: underline; }
.voix-similaires__liste { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.voix-mini { display: flex; flex-direction: column; overflow: hidden; border-radius: 18px; background: #FFFFFF; box-shadow: 0 1px 2px rgba(9, 28, 59, 0.06), 0 10px 30px rgba(9, 28, 59, 0.06); color: var(--bil-encre); text-decoration: none; transition: transform 0.2s ease; }
.voix-mini:hover { transform: translateY(-3px); }
.voix-mini__visuel { position: relative; display: block; height: 232px; overflow: hidden; background: var(--voix-attente); }
.voix-mini__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.voix-mini__numero { position: absolute; top: 14px; left: 14px; padding: 5px 11px; border-radius: 999px; background: var(--bil-marine); color: var(--bil-or-clair); font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.voix-mini__corps { display: flex; flex-direction: column; gap: 8px; padding: 20px 22px 24px; }
.voix-mini__titre { font-family: var(--bil-serif); font-size: 22px; line-height: 1.18; overflow-wrap: anywhere; }
.voix-mini__action { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; }
.voix-fiche__candidater-tel { display: none; }
.voix-fiche .voix-news { border-top: 1px solid var(--bil-ligne); }

/* ---------- Points de rupture ---------- */
@media (max-width: 1439px) {
  .voix-entete__grille { padding: 56px 64px 72px; }
  .voix-similaires { padding: 0 64px 88px; }
}
@media (max-width: 1279px) {
  .voix-billet { grid-template-columns: 130px minmax(0, 1fr) 190px 220px; }
  .voix-billet__visuel { width: 220px; }
  .voix-entete__grille { grid-template-columns: minmax(0, 1fr) 500px; gap: 40px; padding: 48px 48px 64px; }
  .voix-entete__titre { font-size: 46px; }
  .voix-corps__grille { grid-template-columns: minmax(0, 1fr) 340px; gap: 48px; }
  .voix-corps.bil-section { padding: 72px 48px; }
  .voix-similaires { padding: 0 48px 80px; }
  .voix-lecteur__carte { grid-template-columns: 52px minmax(0, 1fr) minmax(0, 1.2fr) 44px; padding-right: 24px; padding-left: 24px; }
  .voix-lecteur__etat { display: none; }
}
@media (max-width: 1023px) {
  .voix-une__visuel { height: 190px; }
  .voix-une__titre { font-size: 22px; }
  .voix-billet { grid-template-columns: 120px minmax(0, 1fr) 180px; }
  .voix-billet__visuel { display: none; }
  .voix-entete__grille { grid-template-columns: minmax(0, 1fr); gap: 32px; padding: 40px 40px 56px; }
  .voix-video { order: -1; }
  .voix-corps__grille { grid-template-columns: minmax(0, 1fr); }
  .voix-similaires__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .voix-similaires { padding: 0 40px 72px; }
}
@media (max-width: 767px) {
  .voix-seul-ordi, .voix-seul-ordi-flex, .voix-seul-ordi-bloc { display: none; }
  .voix-seul-tel { display: inline; }
  .voix-seul-tel-bloc { display: flex; }
  /* Couverture */
  .voix-couv__chiffres { gap: 6px 18px; font-size: 13.5px; }
  .voix .voix-explorer .bil-explorer__lien { gap: 7px; border-color: rgba(226, 201, 119, 0.55); font-size: 14px; }
  .voix .voix-explorer .bil-explorer__lien svg { display: block; width: 17px; height: 17px; }
  .voix-une { border-color: rgba(226, 201, 119, 0.5); background: var(--bil-marine); box-shadow: 0 20px 40px rgba(7, 21, 48, 0.25); }
  .voix-une__visuel { height: 200px; }
  .voix-une .voix-disque { width: 60px; height: 60px; margin: -30px 0 0 -30px; }
  .voix-une__corps { gap: 10px; padding: 18px 18px 20px; }
  .voix-une__haut .bil-kick { font-size: 10.5px; }
  .voix-une__titre { font-size: 23px; }
  .voix-une__pointilles { display: none; }
  .voix-une__bas { flex-direction: column; align-items: stretch; gap: 14px; }
  .voix-une__action { width: 100%; }
  /* Panneaux */
  .voix-entete-liste { flex-wrap: wrap; align-items: flex-end; }
  .voix-entete-liste .bil-agenda__titres { flex: 1 1 auto; }
  .voix .bil-affichage.voix-format { display: grid; order: 3; flex-basis: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .voix .voix-format button { justify-content: center; }
  .voix .voix-format svg { display: none; }
  .voix-recherche { min-height: 52px; padding: 0 18px; border-radius: 999px; box-shadow: none; }
  .voix-recherche .voix-seg:not(.voix-seg--quoi), .voix-recherche .bil-recherche__envoyer { display: none; }
  .voix-recherche .voix-seg--quoi { flex-direction: row; align-items: center; gap: 10px; min-height: 50px; padding: 0; border-right: 0; }
  .voix-seg--quoi .bil-seg__titre { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .voix-seg--quoi > svg { display: block; flex-shrink: 0; color: var(--bil-encre-3); }
  .voix-seg--quoi:focus-within { outline-offset: 6px; }
  .voix .bil-puces.voix-puces { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0 -16px; padding: 0 16px 2px; overflow-x: auto; scrollbar-width: none; }
  .voix-puces .bil-puce { flex-shrink: 0; padding: 0 14px; }
  .voix-puces .voix-seul-tel { display: inline-flex; }
  .voix-puces .bil-puces__trait { display: none; }
  /* Billets du téléphone : image en haut, talon et titre dessous */
  .voix-billet { grid-template-columns: 86px minmax(0, 1fr); grid-template-areas: "visuel visuel" "talon corps"; min-height: 0; }
  .voix-billet .bil-billet__talon { grid-area: talon; padding: 14px 0; }
  .voix-billet .bil-billet__corps { grid-area: corps; gap: 6px; padding: 14px 16px; }
  .voix-billet__visuel { grid-area: visuel; display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 9; }
  .voix-billet .voix-billet__photo { display: block; }
  .voix-billet__visuel .voix-duree { display: block; right: 10px; bottom: 10px; padding: 3px 9px; font-size: 12px; }
  .voix-billet .bil-billet__talon::before { display: none; }
  .voix-billet__talon > .bil-billet__semaine, .voix-billet__talon > .bil-billet__jour, .voix-billet__talon > .bil-billet__mois { display: none; }
  .voix-billet .bil-billet__pastilles { display: none; }
  .voix-billet .bil-billet__titre { font-size: 19px; line-height: 1.18; }
  .voix-billet--audio { grid-template-areas: "talon corps"; min-height: 0; }
  .voix-billet--audio .voix-billet__visuel { display: none; }
  .voix-billet--audio .bil-billet__talon > .bil-billet__mois, .voix-billet--audio .bil-billet__talon > .bil-billet__heure { display: block; }
  .voix-billet--audio .bil-billet__talon .bil-billet__mois { font-size: 9.5px; }
  .voix-billet--audio .bil-billet__talon .bil-billet__heure { font-size: 11.5px; color: var(--voix-texte-pale); }
  .voix-billet--audio .bil-billet__talon svg { width: 24px; height: 24px; }
  .voix-billet--audio .bil-billet__pastilles { display: flex; }
  .voix-billet--audio .voix-billet__resume { font-size: 13px; }
  .voix-billet__infos-tel { display: block; font-size: 12.5px; color: var(--bil-encre-3); }
  .voix-billet__ecouter-tel { position: relative; z-index: 2; display: inline-flex; align-self: flex-start; align-items: center; gap: 6px; min-height: 44px; margin: -6px 0 -10px; padding: 0; border: 0; background: transparent; font: 600 13.5px var(--bil-sans); color: var(--bil-marine); cursor: pointer; }
  .voix-plus { width: 100%; min-height: 52px; }
  /* Lettre, appel, lecteur */
  .voix-news--carte { margin: 10px 0 0; padding: 22px 20px; }
  .voix-news--carte .bil-news__titre { font-size: 22px; }
  .voix-candidater.bil-orga { margin: 0 16px 8px; padding: 28px 22px; border: 0; border-radius: 20px; background: var(--bil-marine); color: #FFFFFF; --bil-anneau: var(--bil-or-clair); }
  .voix-candidater .bil-kick--or { color: var(--bil-or-clair); }
  .voix-candidater .bil-orga__titre { font-size: 30px; color: #FFFFFF; }
  .voix-candidater .bil-orga__texte-long { font-size: 15px; color: #D5DCE8; }
  .voix-candidater .bil-bouton--marine { background: var(--bil-or); color: var(--bil-marine); }
  .voix-lecteur { padding: 0 10px calc(12px + env(safe-area-inset-bottom, 0px)); }
  .voix-lecteur__carte { grid-template-columns: 46px minmax(0, 1fr) 44px; grid-template-areas: "bouton infos fermer" "barre barre barre"; gap: 10px 12px; min-height: 0; padding: 12px 14px 14px; border: 1px solid rgba(226, 201, 119, 0.35); border-radius: 18px; box-shadow: 0 14px 30px rgba(7, 21, 48, 0.35); }
  .voix-lecteur__bouton { grid-area: bouton; width: 46px; height: 46px; }
  .voix-lecteur__infos { grid-area: infos; }
  .voix-lecteur__titre { font-size: 14px; }
  .voix-lecteur__sous { font-size: 12px; }
  .voix-lecteur__fermer { grid-area: fermer; }
  .voix-lecteur__barre { grid-area: barre; gap: 8px; }
  .voix-lecteur__position { height: 44px; }
  body.voix-lecteur-ouvert #voix-app { padding-bottom: 150px; }
  /* Fiche */
  /* align-items: stretch : sans lui, « center » (ordinateur) dimensionnait le texte sur sa rangée de partage (438 px). */
  .voix-entete__grille { display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 0 0 32px; }
  .voix-video { border: 0; border-radius: 0; box-shadow: none; }
  .voix-video .voix-video__etiquette { display: none; }
  .voix-disque--grand { width: 64px; height: 64px; margin: -32px 0 0 -32px; }
  .voix-entete__texte { gap: 15px; padding: 24px 20px 0; }
  .voix-ariane { display: none; }
  .voix-entete__titre { font-size: 33px; line-height: 1.1; }
  .voix-entete__titre em { display: inline; }
  .voix-entete__metas { gap: 6px 14px; font-size: 14px; }
  .voix-entete__metas svg { display: none; }
  .voix-entete__actions .bil-bouton--or { width: 100%; min-height: 54px; }
  .voix-partage { flex-wrap: nowrap; margin: 0 -20px; padding: 0 20px; overflow-x: auto; scrollbar-width: none; }
  .voix-partage .bil-partage__bouton, .voix-partage .bil-partage__lien { flex-shrink: 0; }
  .voix-partage__message { margin-top: -6px; }
  .voix-partage__libelle { display: none; }
  .voix-corps.bil-section { padding: 32px 16px 40px; }
  .voix-corps__grille { display: flex; flex-direction: column; gap: 24px; }
  .voix-apropos__aside { order: -1; }
  .voix-apropos { gap: 14px; }
  .voix-apropos__titre { display: none; }
  .voix-apropos__texte { font-size: 16.5px; line-height: 1.6; }
  /* Bouton « Sa vitrine » sous le nom : les noms d invités sont longs (« LiliProduction, vidéaste événementiel »). */
  .voix-invite { display: grid; grid-template-columns: 64px minmax(0, 1fr); grid-template-areas: "logo kick" "logo noms" "vitrine vitrine"; align-items: center; gap: 2px 14px; padding: 18px; border-radius: 20px; }
  .voix-invite__identite { display: contents; }
  .voix-invite__kick { grid-area: kick; font-size: 10.5px; }
  .voix-invite__logo { grid-area: logo; width: 64px; height: 64px; }
  .voix-invite__noms { grid-area: noms; }
  .voix-invite__nom { font-size: 19px; }
  .voix-invite__role { display: none; }
  .voix-invite__vitrine { grid-area: vitrine; width: 100%; min-height: 46px; margin-top: 12px; padding: 0 16px; }
  .voix-invite__vitrine svg { display: none; }
  .voix-similaires { gap: 16px; padding: 0 0 36px 16px; }
  .voix-similaires__entete { padding-right: 16px; }
  .voix-similaires .bil-titre-serif { font-size: 28px; }
  .voix-similaires__liste { display: flex; gap: 12px; padding-right: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .voix-mini { flex: 0 0 260px; scroll-snap-align: start; }
  .voix-mini__visuel { height: 146px; }
  .voix-mini__corps { padding: 14px 14px 18px; }
  .voix-mini__titre { font-size: 17px; }
  .voix-mini__action { display: none; }
  .voix-fiche__candidater-tel { display: block; padding: 0 16px 40px; }
  #voix-fiche.bil { padding-top: 88px; background-size: 100% 88px; }
}
@media (max-width: 1280px) and (min-width: 768px) {
  #voix-fiche.bil { padding-top: 96px; background-size: 100% 96px; }
}
@media (prefers-reduced-motion: reduce) {
  .voix-une, .voix-mini { transition: none; }
  a.voix-une:hover, .voix-mini:hover { transform: none; }
  .voix-apropos__plus svg { transition: none; }
}

/* ==========================================================================
   VOIX-DESSOUS (18/10/2026) — tout le dessous du héros de la page Talkshows.
   Maquettes validées : Talkshows (1440) et Talkshows-mobile (390).
   Cartes épisode, rangée « Les plus regardés », invités du studio, bloc sombre, lettre.
   ========================================================================== */
.voix-carte__visuel, .voix-grande__fond, .voix-studio__image, .voix-exemple__visuel { container-type: size; }

/* Étiquettes rondes (« Nouveau », durée, « Le plus regardé ») */
.voix-etiq { display: inline-flex; align-items: center; gap: 6px; min-height: 24px; padding: 0 10px; border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1; white-space: nowrap; }
.voix-etiq--or { background: var(--bil-or); color: var(--bil-marine); font-weight: 700; }
.voix-etiq--nuit { background: rgba(6, 18, 43, 0.84); color: #FFFFFF; }
.voix-etiq svg { flex: none; }

/* Bouton lecture or (décoratif) */
.voix-play { position: absolute; top: 50%; left: 50%; z-index: 1; display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; margin: -29px 0 0 -29px; border-radius: 50%; background: rgba(201, 168, 76, 0.94); color: var(--bil-marine); transition: transform 0.2s ease, background-color 0.2s ease; }
.voix-play--geant { top: 42%; width: 84px; height: 84px; margin: -42px 0 0 -42px; background: var(--bil-or); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35); }
.voix-bouton-or { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 22px; border-radius: 999px; background: var(--bil-or); color: var(--bil-marine); font-size: 14px; font-weight: 600; }

/* Titres de rangée : kicker or + filet */
.voix-rang { display: flex; align-items: center; gap: 18px; margin: 0 0 24px; font: 600 12.5px var(--bil-sans); letter-spacing: 0.22em; text-transform: uppercase; color: var(--bil-or-texte); }
.voix-rang::after { content: ""; flex-grow: 1; height: 1px; background: var(--bil-ligne); }
.voix-mois, .voix-populaires { display: flex; flex-direction: column; }
.voix-mois { margin-top: 34px; }
.voix-populaires { margin-top: 10px; }

/* Carte épisode */
.voix-carte { position: relative; display: flex; flex-direction: column; overflow: hidden; border-radius: 22px; background: #FFFFFF; box-shadow: 0 1px 2px rgba(9, 28, 59, 0.06), 0 14px 34px rgba(9, 28, 59, 0.08); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.voix-carte__visuel { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--voix-attente); }
.voix-carte__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.voix-carte__voile { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6, 18, 43, 0) 55%, rgba(6, 18, 43, 0.55)); }
.voix-carte__nouveau { position: absolute; top: 14px; left: 14px; z-index: 1; }
.voix-carte__duree { position: absolute; right: 12px; bottom: 12px; z-index: 1; }
.voix-carte__corps { display: flex; flex: 1; flex-direction: column; gap: 10px; padding: 20px 22px 22px; }
.voix-carte__rang { margin: 0; font-size: 11px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bil-or-texte); }
.voix-carte__titre { margin: 0; font-family: var(--bil-serif); font-size: 21px; font-weight: 400; line-height: 1.25; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.voix-carte__lien { color: inherit; text-decoration: none; }
.voix-carte__lien::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 22px; }
.voix-carte__lien:focus-visible { outline: none; }
.voix-carte:has(.voix-carte__lien:focus-visible) { outline: 3px solid var(--bil-anneau); outline-offset: 3px; }
.voix-carte__invite { margin: 0; font-size: 13.5px; color: var(--bil-encre-3); }
.voix-carte__vitrine { position: relative; z-index: 2; display: inline-flex; align-items: center; min-height: 44px; margin-block: -12px; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.voix-carte__vitrine:hover { color: var(--bil-encre); }
.voix-carte__pied { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--bil-ligne-2); }
.voix-carte__date { font-size: 13px; color: var(--bil-encre-3); }
.voix-carte__regarder { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; font-weight: 600; }
.voix-grille { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }

/* Rangée « Les plus regardés » */
.voix-populaires__grille { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: stretch; gap: 28px; }
.voix-populaires__colonne { display: grid; grid-template-rows: auto 1fr; gap: 28px; min-width: 0; }
.voix-populaires__colonne > :only-child { grid-row: 1 / -1; }
.voix-grande { position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: flex-end; min-height: 440px; padding: 0 36px 32px; overflow: hidden; border-radius: 22px; background: var(--bil-marine); color: #FFFFFF; box-shadow: 0 1px 2px rgba(9, 28, 59, 0.06), 0 14px 34px rgba(9, 28, 59, 0.08); }
/* Image et voile derrière le texte (z-index négatif dans la carte isolée) : le texte reste en flux, et le lien étiré
   du titre se cale sur l'article entier, donc toute la carte est cliquable. */
.voix-grande__fond { position: absolute; inset: 0; z-index: -1; background: var(--voix-attente); }
.voix-grande__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.voix-grande__voile { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6, 18, 43, 0.05) 30%, rgba(6, 18, 43, 0.92)); }
.voix-grande__corps { position: static; display: flex; flex-direction: column; gap: 12px; }
.voix-grande__pastilles { display: flex; flex-wrap: wrap; gap: 8px; }
.voix-grande__titre { max-width: 720px; margin: 0; font-family: var(--bil-serif); font-size: 38px; font-weight: 400; line-height: 1.15; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.voix-grande__lien { color: inherit; text-decoration: none; }
.voix-grande__lien::after { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: 22px; }
.voix-grande__lien:focus-visible { outline: none; }
.voix-grande:has(.voix-grande__lien:focus-visible) { outline: 3px solid var(--bil-or-clair); outline-offset: 3px; }
.voix-grande__bas { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.voix-grande__date { font-size: 14px; color: var(--voix-texte-pale); }

/* Tuile en pointillés « Votre épisode ici ? » */
.voix-tuile { display: flex; flex-direction: column; justify-content: center; gap: 10px; padding: 24px 26px; border: 1.5px dashed #C9B47A; border-radius: 22px; background: rgba(255, 253, 246, 0.6); color: var(--bil-encre); text-decoration: none; transition: background-color 0.2s ease; }
.voix-tuile:hover { background: rgba(255, 253, 246, 0.95); }
.voix-tuile:focus-visible { outline: 3px solid var(--bil-anneau); outline-offset: 3px; }
.voix-tuile__haut { display: flex; align-items: center; gap: 14px; }
.voix-tuile__rond { display: flex; flex: none; align-items: center; justify-content: center; width: 42px; height: 42px; border: 1.5px solid var(--bil-or); border-radius: 50%; color: #7A5C14; }
.voix-tuile__titre { font-family: var(--bil-serif); font-size: 24px; line-height: 1.2; }
.voix-tuile__texte { font-size: 14px; line-height: 1.55; color: var(--bil-encre-3); }
.voix-tuile__action { display: inline-flex; align-items: center; gap: 8px; min-height: 24px; font-size: 14px; font-weight: 600; color: var(--bil-or-texte); }

@media (hover: hover) {
  .voix-carte:hover, .voix-grande:hover { transform: translateY(-3px); box-shadow: 0 2px 4px rgba(9, 28, 59, 0.08), 0 22px 44px rgba(9, 28, 59, 0.12); }
  .voix-carte:hover .voix-play, .voix-grande:hover .voix-play { transform: scale(1.06); background: var(--bil-or-survol); }
}

/* « Ils sont passés dans le studio. » */
.voix-studio { padding: 88px max(64px, calc((100% - 1312px) / 2)); background: var(--bil-ivoire); }
.voix-studio[hidden] { display: none; }
.voix-studio__entete { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 36px; }
.voix-studio__titres { display: flex; flex-direction: column; gap: 14px; }
.voix-studio__kick { color: var(--bil-or-texte); }
.voix-studio__titre { margin: 0; font-family: var(--bil-serif); font-size: 52px; font-weight: 400; line-height: 1.05; letter-spacing: -0.01em; }
.voix-studio__titre em { font-style: italic; color: var(--bil-or-texte); }
.voix-studio__intro { max-width: 430px; margin: 0; font-size: 16px; line-height: 1.6; color: var(--bil-encre-3); }
.voix-studio__liste { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.voix-studio__element { min-width: 0; }
.voix-studio__carte { display: flex; flex-direction: column; gap: 12px; height: 100%; color: inherit; text-decoration: none; }
.voix-studio__carte:focus-visible { outline: 3px solid var(--bil-anneau); outline-offset: 4px; border-radius: 20px; }
.voix-studio__image { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 20px; background: var(--voix-attente); }
.voix-studio__photo { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: 90% 35%; }
.voix-studio__nom { font-family: var(--bil-serif); font-size: 19px; line-height: 1.2; overflow-wrap: anywhere; }
.voix-studio__metier { margin-top: -6px; font-size: 13.5px; line-height: 1.4; color: var(--bil-encre-3); }
.voix-studio__vitrine { display: inline-flex; align-items: center; gap: 6px; min-height: 24px; margin-top: auto; font-size: 13.5px; font-weight: 600; color: var(--bil-or-texte); }
@media (hover: hover) {
  .voix-studio__carte:hover .voix-studio__nom { text-decoration: underline; text-underline-offset: 4px; }
  .voix-studio__carte:hover .voix-studio__photo { transform: scale(1.04); }
}
.voix-studio__photo { transition: transform 0.4s ease; }

/* Bloc sombre « Racontez votre métier. » */
.voix-cand { position: relative; padding: 110px max(96px, calc((100% - 1248px) / 2)); overflow: hidden; background: radial-gradient(circle at 85% 20%, #13284D 0, #071530 55%, #06122B 100%); color: #FFFFFF; --bil-anneau: var(--bil-or-clair); scroll-margin-top: 96px; }
.voix-cand [hidden] { display: none !important; }
.voix-cand__grille { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); align-items: center; gap: 96px; }
.voix-cand__texte { min-width: 0; }
.voix-cand__kick { margin-bottom: 22px; }
.voix-cand__titre { margin: 0 0 22px; font-family: var(--bil-serif); font-size: 64px; font-weight: 400; line-height: 1.05; letter-spacing: -0.01em; }
.voix-cand__titre em { display: block; font-style: italic; color: var(--bil-or-clair); }
.voix-cand__accroche { max-width: 600px; margin: 0 0 30px; font-size: 18px; line-height: 1.6; color: var(--voix-texte-pale); }
.voix-cand__etapes { margin: 0; padding: 0; list-style: none; }
.voix-cand__etape { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 16px; padding: 22px 0; border-top: 1px solid rgba(201, 210, 227, 0.16); }
.voix-cand__numero { font-family: var(--bil-serif); font-size: 40px; font-style: italic; line-height: 1; color: var(--bil-or-clair); }
.voix-cand__etape-titre { margin: 0 0 6px; font-size: 18px; font-weight: 600; }
.voix-cand__etape-texte { margin: 0; font-size: 15px; line-height: 1.6; color: var(--voix-texte-pale); }
.voix-cand__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.voix-cand__fantome { border-color: rgba(255, 255, 255, 0.55); background: transparent; color: #FFFFFF; }
.voix-cand__fantome:hover { background: rgba(255, 255, 255, 0.1); }
.voix-cand__coches { display: flex; flex-wrap: wrap; gap: 10px 26px; margin: 22px 0 0; padding: 0; list-style: none; font-size: 14px; color: var(--voix-texte-pale); }
.voix-cand__coche { display: flex; align-items: center; gap: 8px; }
.voix-cand__coche-icone { display: flex; color: var(--bil-or-clair); }
.voix-cand__exemple { min-width: 0; }
.voix-exemple__kick { margin: 0 0 14px; font-size: 11.5px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bil-or-clair); }
.voix-exemple { position: relative; overflow: hidden; border-radius: 22px; background: var(--bil-creme); color: var(--bil-encre); box-shadow: 0 1px 2px rgba(9, 28, 59, 0.06), 0 14px 34px rgba(0, 0, 0, 0.25); }
.voix-exemple__visuel { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--voix-attente); }
.voix-exemple__image { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.voix-exemple .voix-play { width: 60px; height: 60px; margin: -30px 0 0 -30px; background: var(--bil-or); }
.voix-exemple__corps { display: flex; flex-direction: column; gap: 12px; padding: 24px 26px 26px; }
.voix-exemple__titre { margin: 0 0 4px; font-family: var(--bil-serif); font-size: 24px; font-weight: 400; line-height: 1.25; overflow-wrap: anywhere; }
.voix-exemple__lien { color: inherit; text-decoration: none; }
.voix-exemple__lien::after { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: 22px; }
.voix-exemple__lien:focus-visible { outline: none; }
.voix-exemple:has(.voix-exemple__lien:focus-visible) { outline: 3px solid var(--bil-or-clair); outline-offset: 3px; }
.voix-exemple__infos { display: flex; flex-direction: column; gap: 12px; margin: 0; }
.voix-exemple__ligne { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 12px; font-size: 14.5px; }
.voix-exemple__ligne dt { padding-top: 3px; font-size: 10.5px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bil-or-texte); }
.voix-exemple__ligne dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.voix-exemple__action { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 6px; font-weight: 600; color: var(--bil-or-texte); }

/* Lettre d'information : maquette (fond crème, filet haut) */
#voix-app > .voix-news { border-top: 1px solid #E7DFC8; }
#voix-app > .voix-news .bil-news__titre { font-size: 34px; }

/* Points de rupture */
@media (max-width: 1279px) {
  .voix-studio { padding: 72px 48px; }
  .voix-studio__liste { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .voix-studio__titre { font-size: 44px; }
  .voix-cand { padding: 88px 48px; }
  .voix-cand__grille { gap: 56px; }
  .voix-cand__titre { font-size: 52px; }
  .voix-grande__titre { font-size: 30px; }
  .voix-grande { padding: 0 28px 26px; }
  .voix-grille { gap: 22px; }
}
@media (max-width: 1023px) {
  .voix-grille { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .voix-populaires__grille { grid-template-columns: minmax(0, 1fr); }
  .voix-populaires__colonne { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; }
  .voix-populaires__colonne > :only-child { grid-column: 1 / -1; grid-row: auto; }
  .voix-studio { padding: 64px 40px; }
  .voix-studio__entete { flex-direction: column; align-items: flex-start; gap: 18px; }
  .voix-cand { padding: 72px 40px; }
  .voix-cand__grille { grid-template-columns: minmax(0, 1fr); gap: 48px; }
}
@media (max-width: 767px) {
  .voix-rang { margin-bottom: 14px; }
  .voix-mois { margin-top: 30px; }
  .voix-grille { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .voix-populaires__colonne { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .voix-carte__titre { font-size: 20px; }
  .voix-carte__corps { padding: 18px 20px 20px; }
  .voix-tuile { padding: 22px 22px; }
  .voix-studio { padding: 56px 0 56px 18px; }
  .voix-studio__entete { margin-bottom: 22px; padding-right: 18px; }
  .voix-studio__titre { font-size: 34px; line-height: 1.1; }
  .voix-studio__intro { display: none; }
  .voix-studio__liste { display: flex; gap: 16px; padding-right: 18px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; }
  .voix-studio__liste::-webkit-scrollbar { display: none; }
  .voix-studio__element { flex: none; width: 168px; scroll-snap-align: start; }
  .voix-cand { padding: 56px 18px; }
  .voix-cand__titre { font-size: 38px; }
  .voix-cand__accroche { font-size: 16px; }
  .voix-cand__etape { grid-template-columns: 40px minmax(0, 1fr); padding: 18px 0; }
  .voix-cand__numero { font-size: 32px; }
  .voix-cand__actions { flex-direction: column; }
  .voix-cand__actions .bil-bouton { width: 100%; }
  .voix-cand__fantome, .voix-cand__coches { display: none !important; } /* maquette mobile : un seul bouton, sans coches */
  .voix-cand__exemple { display: none; }
  .voix-exemple__ligne { grid-template-columns: 96px minmax(0, 1fr); }
  #voix-app > .voix-news { padding: 40px 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .voix-carte, .voix-grande, .voix-play, .voix-tuile, .voix-studio__photo { transition: none; }
  .voix-carte:hover, .voix-grande:hover, .voix-studio__carte:hover .voix-studio__photo { transform: none; }
  .voix-carte:hover .voix-play, .voix-grande:hover .voix-play { transform: none; }
}
