.voyage-formulaire fieldset { border: 0; padding: 0; margin: 0 0 var(--e16); }
.voyage-formulaire .champ { margin-bottom: var(--e12); }
.voyage-formulaire input[type="text"] { width: 100%; }
.voyage-verdict {
  background: var(--acc-pale);
  border: 1px solid var(--acc);
  border-left-width: 6px;
  border-radius: var(--rayon-carte);
  padding: var(--e16) var(--e24);
  margin-bottom: var(--e32);
}
.voyage-verdict__titre {
  margin: 0 0 var(--e8);
  font-size: var(--t-meta);
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--acc-2);
}
.voyage-verdict__surtitre { margin: 0 0 var(--e4); font-weight: 600; color: var(--acc-2); }
.voyage-verdict__phrase {
  margin: 0;
  font-size: var(--t-pilier);
  line-height: 1.3;
  font-weight: 600;
  color: var(--enc);
}
.voyage-verdict__chiffre { color: var(--acc); white-space: nowrap; }
.voyage-verdict__autres {
  margin: var(--e12) 0 0;
  padding: 0;
  list-style: none;
  font-size: var(--t-label);
  color: var(--enc);
}
.voyage-verdict__autres li { margin-bottom: var(--e4); }
.voyage-verdict__note { margin: var(--e12) 0 0; font-size: var(--t-meta); color: var(--enc2); }
.voyage-fiches__titre { margin-bottom: var(--e12); }
.voyage-fiches {
  list-style: none;
  margin: 0 0 var(--e32);
  padding: 0;
  display: grid;
  gap: var(--e16);
}
.voyage-fiche {
  background: var(--surf);
  border: 1px solid var(--bord);
  border-radius: var(--rayon-carte);
  box-shadow: var(--elev-pose);
  padding: var(--e16);
  break-inside: avoid;
}
.voyage-fiche__tete {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--e12);
  padding-bottom: var(--e12);
  margin-bottom: var(--e12);
  border-bottom: 1px solid var(--bord);
}
.voyage-fiche__numero { margin: 0; font-size: var(--t-meta); font-weight: 600; color: var(--enc2); }
.voyage-fiche__adresse { margin: 0; font-size: var(--t-section); font-weight: 600; color: var(--enc); }
.voyage-badge {
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 7.5rem;
  padding: var(--e8) var(--e12);
  border-radius: var(--rayon-carte);
  background: var(--acc);
  color: #fff;
  text-align: center;
}
.voyage-badge__chiffre { font-size: var(--t-pilier); line-height: 1.1; white-space: nowrap; }
.voyage-badge__libelle { font-size: .75rem; line-height: 1.25; max-width: 9rem; }
.voyage-fiche__partie {
  margin: var(--e12) 0 var(--e4);
  font-size: var(--t-label);
  font-weight: 600;
  color: var(--enc);
}
.voyage-fiche__liste { margin: 0; padding-left: var(--e16); }
.voyage-fiche__liste li { margin-bottom: var(--e4); }
.voyage-fiche__liste--trouves li::marker { content: "✓  "; color: var(--ok); }
.voyage-fiche__liste--manques li::marker { content: "–  "; color: var(--enc2); }
.voyage-fiche__critere { font-weight: 600; }
.voyage-fiche__vide,
.voyage-fiche__absente { margin: 0; font-style: italic; color: var(--enc2); }
.voyage-fiche__note { margin: var(--e12) 0 0; font-size: var(--t-meta); color: var(--enc2); }
@media (min-width: 48rem) {
  .voyage-fiche { padding: var(--e24); }
}
.voyage-annexe {
  margin-top: var(--e24);
  padding-top: var(--e12);
  border-top: 1px solid var(--bord);
}
.voyage-annexe > summary.voyage-annexe__entete { margin: 0 0 var(--e8); padding: var(--e12) var(--e8); }
.voyage-annexe__titre { display: inline; margin: 0; }
.voyage-tableau { min-width: 100%; }
.voyage-tableau th,
.voyage-tableau td { vertical-align: top; min-width: 9.5rem; }
.voyage-tableau tbody th,
.voyage-tableau thead th:first-child {
  position: sticky;
  left: 0;
  z-index: 1;
  background: var(--surf);
  min-width: 8.5rem;
  max-width: 11rem;
}
.voyage-hotel,
.voyage-adresse { display: block; }
.voyage-hotel { font-weight: 600; }
.voyage-adresse { font-weight: 400; font-size: .875em; }
.voyage-vide { font-style: italic; }
.voyage-correspondance th,
.voyage-correspondance td { border-bottom: 2px solid var(--bord); }
.voyage-rempli strong { color: var(--acc); }
.voyage-pourcentage { font-size: 1.75em; line-height: 1.1; }
@media (min-width: 48rem) {
  .voyage-tableau th,
  .voyage-tableau td { min-width: 11rem; }
}
.voyage-adresses > .champ__aide { grid-column: 1 / -1; margin: 0; }
.voyage-seuil {
  display: block;
  margin-top: var(--e4);
  font-size: var(--t-meta);
  font-weight: 400;
  color: var(--enc2);
}
@media print {
  .voyage-formulaire { display: none !important; }
  .voyage-verdict,
  .voyage-badge { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .voyage-annexe::details-content { content-visibility: visible; display: contents; }
  .voyage-annexe > summary.voyage-annexe__entete { list-style: none; cursor: default; padding-left: 0; }
  .voyage-annexe > summary::-webkit-details-marker { display: none; }
  .voyage-annexe > summary.voyage-annexe__entete::after { content: none !important; }
  .voyage-annexe { break-before: page; border-top: 0; }
  .voyage-tableau tbody th,
  .voyage-tableau thead th:first-child { position: static; }
}
