/* Criterion cards of « Nos notes expliquées » (28/10/2026), inc/notes-cartes.php.
   3 per row on desktop, 2 from 1024 px, 1 under 640 px; closed cards of a row share the same height. */
.notes-ancre { display: block; height: 0; overflow: hidden; scroll-margin-top: 90px; }
.crit-cartes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.4rem 0 1rem; align-items: start; }
@media (max-width: 1024px) { .crit-cartes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .crit-cartes { grid-template-columns: 1fr; } }
.crit-carte { display: flex; flex-direction: column; min-width: 0; padding: 1rem 1.1rem 0.9rem; background: var(--blanc, #fff); border: 1px solid var(--trait, #ddd); border-radius: 10px; scroll-margin-top: 90px; }
.notes-expliquees .crit-carte h3.crit-carte__tete,
.fiche.ft1a2 .notes-expliquees .crit-carte h3.crit-carte__tete { display: flex; align-items: baseline; justify-content: space-between; gap: 0.6rem; margin: 0 0 0.5rem !important; padding: 0 !important; border: 0 !important; font: 650 1.05rem/1.25 var(--sans) !important; }
.crit-carte__titre { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; min-width: 0; }
.crit-carte__note { flex: none; font: 700 1.6rem/1 var(--sans); color: var(--bleu, #1d3c6e); }
.crit-carte__note small { font-size: 0.8rem; font-weight: 500; color: var(--feutre, #777); margin-left: 1px; }
.crit-carte__note--vide { font: 600 0.8rem/1.2 var(--sans); color: var(--feutre, #777); padding: 0.2rem 0.5rem; border: 1px dashed var(--trait, #ccc); border-radius: 999px; }
.notes-expliquees .crit-carte p.crit-carte__court { margin: 0 0 0.7rem; font: 400 0.9rem/1.45 var(--sans); min-height: calc(3 * 1.45em); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.crit-carte--vide { background: var(--platre, #f6f3ee); border-style: dashed; }
.crit-carte__plus { margin-top: auto; }
.crit-carte__plus > summary { cursor: pointer; font: 600 0.85rem/1.4 var(--sans); color: var(--bleu, #1d3c6e); list-style: none; }
.crit-carte__plus > summary::-webkit-details-marker { display: none; }
.crit-carte__plus > summary::before { content: "+"; display: inline-block; width: 1em; font-weight: 700; }
.crit-carte__plus[open] > summary::before { content: "−"; }
.crit-carte__plus > summary:focus-visible { outline: 2px solid var(--bleu, #1d3c6e); outline-offset: 2px; }
.crit-carte__detail { margin-top: 0.6rem; }
.notes-expliquees .crit-carte__detail p { margin: 0 0 0.6rem; font: 400 0.88rem/1.5 var(--sans); }
.crit-carte__detail .notes-detail li { font: 400 0.84rem/1.35 var(--sans) !important; gap: 0.6rem; }
.crit-carte__regle { font-size: 0.82rem; }
.notes-methode { margin-top: 0.4rem; }
.crit-carte .screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
/* an opened card grows alone: the others of its row keep their closed height */
.crit-cartes > .crit-carte { align-self: start !important; }
.notes-expliquees .crit-carte h3.crit-carte__tete { min-height: 2rem; }
/* mattress price card, the line of the size being viewed (data-lit-prix-t, 28/10) */
.notes-expliquees .crit-carte p.crit-carte__taille { margin: 0 0 0.7rem; font: 400 0.82rem/1.45 var(--sans); color: var(--encre-douce, inherit); }
