/* prise-de-sang.fr — feuille unique.
   Source de vérité : ce fichier. build_site.py le copie dans site/assets/, y
   ajoute le CSS de la carte et une empreinte de contenu en ?v= — les assets
   sont servis avec un cache d'un an, sans empreinte une correction resterait
   invisible douze mois.

   Parti pris visuel : le compte rendu de laboratoire. Fond blanc franc, filets
   fins plutôt qu'ombres portées, bleu clinique, chiffres en chasse tabulaire,
   et un liseré de couleur en tête de chaque fiche comme sur un dossier
   médical. Pas d'arrondis marqués, pas de dégradés : ce site accompagne une
   ordonnance, il ne vend rien. */

:root{
  --bleu:#0b5c92; --bleu-fonce:#0a3d61; --bleu-clair:#eaf3f9; --bleu-pale:#f5fafd;
  --rouge:#b3122c; --rouge-clair:#fbecef;
  --texte:#152430; --gris:#5b6b78; --gris-2:#8494a0;
  --filet:#dbe4ea; --filet-fort:#c3d2dc; --fond:#f4f8fa;
  --vert:#0b7a53; --vert-clair:#e6f5ee;
  --ambre:#8a5a00; --ambre-clair:#fdf5e6;
  --rayon:6px; --large:1140px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--texte);
  font:400 17px/1.6 'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  font-variant-numeric:tabular-nums}
img{max-width:100%;height:auto}
a{color:var(--bleu);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--rouge)}
h1,h2,h3,h4{line-height:1.22;margin:0 0 .5em;font-weight:700;letter-spacing:-.012em;
  color:var(--bleu-fonce)}
h1{font-size:2.1rem}
h2{font-size:1.4rem;margin-top:2.4rem;padding-bottom:.4rem;border-bottom:2px solid var(--filet)}
h3{font-size:1.08rem;margin-top:1.5rem}
p{margin:0 0 1rem}
.wrap{max-width:var(--large);margin:0 auto;padding:0 20px}
.etroit{max-width:750px}
svg.i{width:1em;height:1em;vertical-align:-.13em;flex:none}

/* ---------- navigation ---------- */
.nav{background:#fff;border-bottom:1px solid var(--filet);position:sticky;top:0;z-index:60}
/* filet bicolore : la marque du document médical, bleu clinique et rouge sang */
.nav::before{content:"";display:block;height:3px;
  background:linear-gradient(90deg,var(--bleu) 0 64%,var(--rouge) 64% 100%)}
.nav__in{max-width:var(--large);margin:0 auto;padding:0 20px;display:flex;align-items:center;
  gap:22px;min-height:60px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.08rem;
  color:var(--bleu-fonce);text-decoration:none;letter-spacing:-.015em;white-space:nowrap}
.logo b{font-weight:700}
.logo i{font-style:normal;color:var(--gris-2);font-weight:400}
.nav__menu{display:flex;gap:22px;margin-left:auto;font-size:.94rem}
.nav__menu>a,.nav__item>a{color:var(--gris);text-decoration:none;font-weight:600;
  padding:19px 0;border-bottom:3px solid transparent;margin-bottom:-1px;
  display:flex;align-items:center;gap:5px}
.nav__menu>a:hover,.nav__item>a:hover{color:var(--bleu)}
.nav__menu>a[aria-current],.nav__item>a[aria-current]{color:var(--bleu-fonce);
  border-bottom-color:var(--bleu)}
.nav__item{position:relative}
.nav__fleche{width:0;height:0;border-left:4px solid transparent;
  border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.55}
.nav__sous{display:none;position:absolute;top:100%;left:0;background:#fff;
  border:1px solid var(--filet);border-radius:8px;
  box-shadow:0 10px 28px rgba(20,40,60,.14);padding:8px;min-width:280px;z-index:70}
.nav__item:hover .nav__sous,.nav__item:focus-within .nav__sous{display:block}
.nav__sous a{display:block;padding:8px 10px;border-radius:6px;color:var(--texte);
  text-decoration:none;font-weight:600;font-size:.86rem}
.nav__sous a:hover{background:var(--fond)}
.nav__sous a span{display:block;font-weight:400;color:var(--gris);
  font-size:.78rem;margin-top:2px}
.nav__cta{background:var(--bleu);color:#fff;text-decoration:none;font-weight:600;font-size:.9rem;
  padding:9px 16px;border-radius:var(--rayon);white-space:nowrap;
  display:inline-flex;align-items:center;gap:7px}
.nav__cta:hover{background:var(--bleu-fonce);color:#fff}
.nav__burger{display:none;margin-left:auto;background:none;border:1px solid var(--filet);
  border-radius:var(--rayon);padding:7px 11px;font-size:1.05rem;cursor:pointer;color:var(--bleu-fonce)}
@media(max-width:900px){
  .nav__menu{display:none;position:absolute;top:63px;left:0;right:0;background:#fff;
    flex-direction:column;gap:0;padding:4px 20px 14px;border-bottom:1px solid var(--filet)}
  .nav__menu.ouvert{display:flex}
  .nav__menu>a,.nav__item>a{padding:12px 0;border-bottom:1px solid var(--filet)}
  .nav__item{position:static}
  .nav__fleche{display:none}
  .nav__sous{display:block;position:static;border:0;box-shadow:none;
    padding:0 0 0 14px;min-width:0}
  .nav__sous a{padding:8px 0;border-bottom:1px solid var(--filet);font-size:.85rem}
  .nav__burger{display:block}
  .nav__cta{display:none}
}

/* ---------- avertissement médical ---------- */
.avert{background:var(--ambre-clair);border-bottom:1px solid #eddcb4;padding:10px 0;
  font-size:.87rem;color:var(--ambre)}
.avert .wrap{display:flex;gap:9px;align-items:flex-start}
.avert a{color:var(--ambre)}

/* ---------- fil d'ariane ---------- */
.fil{font-size:.84rem;color:var(--gris-2);padding:16px 0 0}
.fil a{color:var(--gris);text-decoration:none}
.fil a:hover{text-decoration:underline}
.fil span{color:var(--texte);font-weight:600}

/* ---------- en-tête de page ---------- */
/* Pas d'overflow:hidden ici : le menu de la recherche est un enfant de
   l'en-tête et descend plus bas qu'elle — il était coupé net à la limite du
   bloc suivant. Le tracé décoratif est donc contenu dans sa propre boîte au
   lieu d'être rogné par l'en-tête. */
.entete{background:var(--bleu-pale);border-bottom:1px solid var(--filet);
  padding-bottom:28px;margin-bottom:32px;position:relative}
/* tracé d'électrocardiogramme, très pâle : la seule ornementation du site.
   La boîte s'arrête aux bords de l'en-tête et l'image, plus grande qu'elle,
   est rognée par le fond — le tracé sort du cadre sans rien déborder. */
.entete::after{content:"";position:absolute;right:0;bottom:0;width:510px;height:114px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='540' height='120'%3E%3Cpath d='M0 74h132l13-32 15 60 13-45 11 17h64l13-32 15 60 13-45 11 17h240' fill='none' stroke='%230b5c92' stroke-width='2' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat left top;
  opacity:.1;pointer-events:none}
/* sous 700 px l'entête n'est plus assez large : le tracé passerait derrière le
   texte au lieu de rester à sa droite. */
@media(max-width:700px){.entete::after{display:none}}
.entete h1{margin:.3em 0 .35em;max-width:22ch;position:relative}
.entete .chapo{font-size:1.04rem;color:var(--gris);max-width:64ch;margin:0;position:relative}
.compteur{display:inline-flex;align-items:center;gap:8px;background:#fff;
  border:1px solid var(--filet-fort);border-radius:var(--rayon);padding:6px 14px;
  font-size:.85rem;color:var(--gris);font-weight:600;margin-top:14px;position:relative}
.compteur b{color:var(--bleu-fonce);font-size:1.05rem}

/* ---------- grille principale ---------- */
.colonnes{display:grid;grid-template-columns:1fr 316px;gap:40px;align-items:start;padding-bottom:54px}
@media(max-width:960px){.colonnes{grid-template-columns:1fr;gap:26px}}
.aside{position:sticky;top:78px;display:grid;gap:16px}
@media(max-width:960px){.aside{position:static}}

/* ---------- encadrés ---------- */
.bloc{background:#fff;border:1px solid var(--filet);border-radius:var(--rayon);padding:18px 20px}
.bloc h2,.bloc h3{margin-top:0}
.bloc h2{font-size:1.14rem;border-bottom:0;padding-bottom:0}
.bloc--info{background:var(--bleu-clair);border-color:#c6dcea}
.bloc--alerte{background:var(--ambre-clair);border-color:#eddcb4}
.bloc--alerte h2{color:var(--ambre)}
.bloc--ok{background:var(--vert-clair);border-color:#bfe3d3}
.aside .bloc{border-top:3px solid var(--bleu)}
.note{font-size:.87rem;color:var(--gris);margin:0}
.bloc ul{margin:0;padding-left:1.1em}
.bloc li{margin-bottom:.5em}

/* ---------- fiches laboratoire ---------- */
.labos{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.labo{background:#fff;border:1px solid var(--filet);border-left:3px solid var(--bleu);
  border-radius:0 var(--rayon) var(--rayon) 0;padding:15px 18px;
  display:grid;grid-template-columns:30px 1fr;gap:0 14px}
.labo:hover{border-color:var(--filet-fort);border-left-color:var(--rouge)}
/* sans puce numérotée, pas de colonne pour l'accueillir */
.labo--nu{grid-template-columns:1fr}
.labo__n{width:26px;height:26px;border-radius:4px;background:var(--bleu-clair);
  color:var(--bleu-fonce);display:grid;place-items:center;font-size:.8rem;font-weight:700;
  grid-row:1/span 3;align-self:start;margin-top:2px}
.labo__nom{margin:0 0 3px;font-size:1.04rem;font-weight:700}
.labo__nom a{color:var(--bleu-fonce);text-decoration:none}
.labo__nom a:hover{color:var(--rouge);text-decoration:underline}
.labo__adr{margin:0 0 9px;color:var(--gris);font-size:.91rem;display:flex;gap:7px;
  align-items:flex-start}
.labo__adr>span{flex:1 1 auto;min-width:0}
.labo__adr svg{margin-top:.28em;color:var(--gris-2)}
.labo__meta{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:.88rem;align-items:center}
.tel{font-weight:700;color:var(--bleu-fonce);text-decoration:none;
  display:inline-flex;align-items:center;gap:6px;letter-spacing:.02em}
.tel:hover{color:var(--rouge)}
.heures{color:var(--gris);display:inline-flex;align-items:center;gap:6px;font-size:.87rem}

/* ---------- étiquettes ---------- */
.etiq{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:700;
  padding:3px 9px;border-radius:3px;background:var(--fond);color:var(--gris);
  border:1px solid var(--filet);text-decoration:none;letter-spacing:.015em}
a.etiq:hover{border-color:var(--bleu);color:var(--bleu)}
.etiq--ouvert{background:var(--vert-clair);color:var(--vert);border-color:#bfe3d3}
.etiq--ferme{background:var(--rouge-clair);color:var(--rouge);border-color:#f0cdd5}
.etiq--reseau{background:var(--bleu-clair);color:var(--bleu);border-color:#c6dcea}
.etiq--pmr{background:var(--vert-clair);color:var(--vert);border-color:#bfe3d3}
.etiq--vide{background:var(--ambre-clair);color:var(--ambre);border-color:#eddcb4}
.etiq--dist{background:var(--bleu-fonce);color:#fff;border-color:var(--bleu-fonce)}

/* ---------- horaires : présentation de compte rendu ---------- */
.horaires{width:100%;border-collapse:collapse;font-size:.93rem;margin:0}
.horaires th{text-align:left;font-weight:500;color:var(--gris);padding:7px 0;width:9.5em}
.horaires td{padding:7px 0;text-align:right;color:var(--texte)}
.horaires tr+tr th,.horaires tr+tr td{border-top:1px dotted var(--filet-fort)}
.horaires .auj th,.horaires .auj td{font-weight:700;color:var(--bleu-fonce)}
.horaires .auj th::before{content:"\25B8\00A0";color:var(--bleu)}

/* ---------- listes de liens ---------- */
.liens{list-style:none;margin:0;padding:0;columns:4 185px;column-gap:26px;font-size:.94rem}
.liens li{break-inside:avoid;padding:3px 0}
.liens a{text-decoration:none}
.liens a:hover{text-decoration:underline}
.liens small{color:var(--gris-2)}
.grille-cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px;
  list-style:none;padding:0;margin:0}
.grille-cartes a{display:block;background:#fff;border:1px solid var(--filet);
  border-radius:var(--rayon);padding:13px 15px;text-decoration:none;color:var(--bleu-fonce);
  font-weight:600;border-left:3px solid var(--filet-fort)}
.grille-cartes a:hover{border-color:var(--filet-fort);border-left-color:var(--bleu);color:var(--bleu)}
.grille-cartes span{display:block;font-weight:400;font-size:.85rem;color:var(--gris);margin-top:2px}

/* ---------- recherche ---------- */
/* Le bloc de recherche porte son propre contexte d'empilement, sous la barre
   de navigation (60) mais au-dessus du contenu. Sans lui, le menu déroulant
   passait derrière le contenu qui suit sur la page d'accueil — signalé par
   Patrick et reproduit : elementFromPoint au milieu du menu ouvert renvoyait
   le H2 de la section suivante. */
.recherche{position:relative;max-width:530px;z-index:50}
.recherche input{width:100%;font:inherit;font-size:1.02rem;padding:13px 16px 13px 44px;
  border:1px solid var(--filet-fort);border-radius:var(--rayon);
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%235b6b78' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='M12.5 12.5 17 17'/%3E%3C/svg%3E") no-repeat 15px 50%}
.recherche input:focus{outline:2px solid var(--bleu);outline-offset:0;border-color:var(--bleu)}
.recherche__res{position:absolute;top:calc(100% + 5px);left:0;right:0;background:#fff;
  border:1px solid var(--filet-fort);border-radius:var(--rayon);
  box-shadow:0 6px 22px rgba(10,61,97,.13);z-index:1;display:none;
  /* La hauteur est recalculée à l'ouverture sur l'espace réellement
     disponible sous le champ (voir JS_RECHERCHE) ; ce max-height n'est que le
     plafond et le secours si le script ne tourne pas. Sans lui le menu
     descendait sous le bas de la fenêtre : l'ascenseur était visible, mais la
     moitié basse de la liste ne l'était pas.
     overscroll-behavior:contain empêche la molette de passer la main à la page
     dès qu'on atteint le bout de la liste — c'est ce qui donnait
     l'impression que le menu ne défilait pas. */
  max-height:min(340px,60vh);overflow-y:auto;overscroll-behavior:contain}
.recherche__res.ouvert{display:block}
.recherche__res a{display:block;padding:10px 16px;text-decoration:none;color:var(--texte);
  border-bottom:1px solid var(--filet)}
.recherche__res a:last-child{border-bottom:0}
.recherche__res a:hover,.recherche__res a.sel{background:var(--bleu-clair)}
.recherche__res b{color:var(--bleu-fonce)}
.recherche__res small{color:var(--gris);float:right}

/* ---------- boutons ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.95rem;
  padding:11px 20px;border-radius:var(--rayon);text-decoration:none;border:1px solid transparent;
  cursor:pointer}
.btn--primaire{background:var(--bleu);color:#fff}
.btn--primaire:hover{background:var(--bleu-fonce);color:#fff}
.btn--sobre{background:#fff;color:var(--bleu);border-color:var(--filet-fort)}
.btn--sobre:hover{border-color:var(--bleu)}

/* ---------- bandeau espace pro ---------- */
.bande{background:var(--bleu-fonce);color:#fff;margin-top:54px;border-top:3px solid var(--rouge)}
.bande__in{max-width:var(--large);margin:0 auto;padding:26px 20px;display:flex;gap:22px;
  align-items:center;justify-content:space-between;flex-wrap:wrap}
.bande b{display:block;font-size:1.06rem}
.bande span{color:#b3cddd;font-size:.92rem}
.bande .btn{background:#fff;color:var(--bleu-fonce)}

/* ---------- pied ---------- */
.pied{background:var(--fond);border-top:1px solid var(--filet);font-size:.86rem;color:var(--gris)}
.pied__in{max-width:var(--large);margin:0 auto;padding:26px 20px;display:grid;gap:9px}
.pied a{color:var(--gris)}

/* ---------- carte ---------- */
.carte{position:relative;background:var(--bleu-clair);border:1px solid var(--filet);
  border-radius:var(--rayon);overflow:hidden;margin:22px 0 8px}
.carte .pin{position:absolute;width:22px;height:22px;margin:-22px 0 0 -11px;
  border-radius:50% 50% 50% 0;background:var(--bleu);transform:rotate(-45deg);
  border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.28)}
.carte .pin span{display:block;transform:rotate(45deg);color:#fff;font-size:.68rem;
  font-weight:700;text-align:center;line-height:19px}
.carte__load{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;
  border:1px solid var(--filet-fort);border-radius:var(--rayon);padding:9px 18px;font:inherit;
  font-size:.9rem;font-weight:600;color:var(--bleu);cursor:pointer;display:none}
.carte__attr{font-size:.78rem;color:var(--gris-2);margin:0 0 24px}
.leaflet-container{font:inherit}

/* ---------- tableaux ---------- */
.tab{width:100%;border-collapse:collapse;font-size:.93rem;margin:0 0 1.4rem}
.tab th,.tab td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--filet);
  vertical-align:top}
.tab thead th{background:var(--bleu-fonce);color:#fff;font-weight:600;border-bottom:0}
.tab tbody th{width:34%;font-weight:600;color:var(--gris);background:var(--bleu-pale)}
.tab td.num{text-align:right}
.tab-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--filet);
  border-radius:var(--rayon);margin-bottom:1.4rem}
.tab-scroll .tab{margin:0}
.tab-scroll .tab tr:last-child th,.tab-scroll .tab tr:last-child td{border-bottom:0}

/* ---------- divers ---------- */
.saut{margin-top:2.4rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pub{margin:34px 0;min-height:90px}
.source{font-size:.84rem;color:var(--gris);border-left:3px solid var(--filet-fort);
  padding:2px 0 2px 14px;margin:1.4rem 0}

/* ---------- espace laboratoire (/panel/) ---------- */
/* Aucune règle publicitaire ici : le panneau n'en porte pas, par principe. */
.panel{padding-bottom:60px}
.jalons{display:flex;gap:0;list-style:none;padding:0;margin:22px 0 26px;
  font-size:.86rem;counter-reset:j}
.jalons li{flex:1;position:relative;padding:0 0 0 30px;color:var(--gris-2);
  counter-increment:j}
.jalons li::before{content:counter(j);position:absolute;left:0;top:-2px;
  width:22px;height:22px;border-radius:50%;background:var(--filet);
  color:var(--gris);display:grid;place-items:center;font-weight:700;font-size:.78rem}
.jalons li.ici{color:var(--bleu-fonce);font-weight:600}
.jalons li.ici::before{background:var(--bleu);color:#fff}
.jalons li.fait::before{background:var(--vert);color:#fff;content:"✓"}
.fiche-rappel{background:var(--fond);border-left:3px solid var(--bleu);
  padding:12px 16px;margin:0 0 1.4rem;border-radius:0 var(--rayon) var(--rayon) 0}
.fiche-rappel small{color:var(--gris-2)}
.edit{display:grid;gap:16px;max-width:520px;margin:0 0 1.6rem}
.champ{display:grid;gap:5px}
.champ>span{font-weight:600;font-size:.94rem}
.champ input,.champ textarea{font:inherit;padding:11px 13px;
  border:1px solid var(--filet-fort);border-radius:var(--rayon);background:#fff}
.champ input:focus,.champ textarea:focus{outline:2px solid var(--bleu);
  outline-offset:1px;border-color:var(--bleu)}
.champ small{color:var(--gris);font-size:.85rem}
.champ input.code{font-size:1.6rem;letter-spacing:.4em;text-align:center;
  font-variant-numeric:tabular-nums;max-width:8em}
.resultats{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.resultats a{display:block;padding:14px 16px;background:#fff;
  border:1px solid var(--filet);border-radius:var(--rayon);text-decoration:none;
  color:var(--bleu-fonce);box-shadow:var(--ombre)}
.resultats a:hover{border-color:var(--bleu)}
.resultats span{display:block;font-weight:400;font-size:.88rem;color:var(--gris);
  margin-top:3px}
.fiche{position:relative}
.fiche h2{margin-top:0;padding-right:9em}
.etat{position:absolute;top:18px;right:20px;font-size:.78rem;font-weight:700;
  padding:3px 10px;border-radius:999px}
.etat.ok{background:var(--vert-clair);color:var(--vert)}
.etat.attente{background:var(--ambre-clair);color:var(--ambre)}
.etat.refus{background:#f2e6e8;color:var(--rouge)}
.attente-note{background:var(--ambre-clair);padding:10px 14px;
  border-radius:var(--rayon);color:var(--ambre)}

/* ---------- carte : aperçu, puis Leaflet à l'approche de l'écran ---------- */
.carte--manuel .carte__load{display:block}
.carte--on{background:var(--fond)}
.carte--on .pin,.carte--on .carte__load{display:none}
.mpin__b{position:absolute;inset:0;background:var(--rouge);border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.35)}
.mpin span{position:absolute;inset:0;color:#fff;font-weight:700;font-size:12px;
  line-height:26px;text-align:center}
.mpin--actif .mpin__b{background:var(--bleu)}
.mpin--actif{z-index:1000 !important}
.mpop{font-weight:700;font-size:14px;color:var(--bleu-fonce)}
.mpop__a{display:block;font-weight:400;font-size:13px;color:var(--gris);margin-top:2px}
.labo__n{border:0;cursor:pointer;font:inherit;font-size:.85rem;font-weight:700}
.labo__n:hover{background:var(--rouge)}
.labo--actif{outline:2px solid var(--bleu);outline-offset:2px}

/* ---------- signature d'article ---------- */
.sign{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:.88rem;color:var(--gris);
  border-top:1px solid var(--filet);border-bottom:1px solid var(--filet);
  padding:12px 0;margin:0 0 1.6rem}
.sign b{color:var(--bleu-fonce)}
.sign__r{display:inline-flex;align-items:center;gap:6px}
.sign__r::before{content:"";width:8px;height:8px;border-radius:50%;
  background:var(--vert);flex:none}
.sign__d{color:var(--gris-2)}
.avert-med{margin:0 0 2rem}
.avert-med p:first-child{margin-top:0}
.avert-med ul{margin:.7rem 0;padding-left:1.15em}
.avert-med li{margin-bottom:.45em}
.avert-med .note{margin-bottom:0}
.sign__v{display:inline-flex;align-items:center;gap:6px}
.sign__v::before{content:"";width:8px;height:8px;border-radius:50%;
  background:var(--bleu);flex:none}

/* ---------- guides ---------- */
.reponse{margin-bottom:2rem}
.reponse p{margin:0;font-size:1.06rem;line-height:1.55}
.sources{font-size:.9rem;color:var(--gris);padding-left:1.1em;margin:0 0 1.2rem}
.sources li{margin-bottom:.45em}
.etroit h2:first-of-type{margin-top:1.8rem}
sup{font-size:.7em;vertical-align:super;line-height:0}
