
/* une ressource : pour qui, ce qu'elle permet, son accès (A29) */
.bq-fiche-res { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 18px; margin: 4px 0 18px; }
.bq-fiche-res > div { padding-top: 8px; border-top: 1px solid var(--line-strong); }
.bq-fiche-res dt { font: 800 11px/1.3 var(--font-interface); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.bq-fiche-res dd { margin: 2px 0 0; font-size: 15px; line-height: 1.4; }
@media (max-width: 760px) { .bq-fiche-res { grid-template-columns: minmax(0, 1fr); gap: 8px; } }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.bq-hero--boite { grid-template-columns: minmax(0, 1fr) minmax(0, 560px); align-items: center; gap: 56px; }
.bq-hero--boite .bq-hero__gauche p { max-width: 48ch; }
.bq-hero__invite { margin-top: 18px !important; font: 700 14px/1.3 var(--font-interface); letter-spacing: .06em; text-transform: uppercase; color: var(--brand-accent); }
.bq-caisse { position: relative; padding-top: 34px; }
.bq-caisse__anse { position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 190px; height: 48px; border: 10px solid var(--brand-primary); border-bottom: 0; border-radius: 14px 14px 0 0; }
.bq-caisse__corps { position: relative; display: grid; gap: 12px; padding: 16px; border-radius: 16px; background-color: var(--brand-fill); }
.bq-caisse__tiroir { position: relative; display: grid; grid-template-columns: 52px minmax(0, 1fr) 14px; gap: 14px; align-items: center; padding: 12px 18px 12px 12px; border-radius: 8px; background-color: var(--paper-bright); color: var(--ink); text-decoration: none; transition: transform 260ms var(--ease-out), box-shadow 260ms var(--ease-out); }
.bq-caisse__tiroir img { width: 52px; height: 52px; border-radius: 50%; }
.bq-caisse__k { display: block; font: 700 11px/1.2 var(--font-interface); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.bq-caisse__t { display: block; font: 700 17px/1.25 var(--font-interface); color: var(--brand-primary); }
.bq-caisse__texte .bq-jauge { margin-top: 6px; }
.bq-caisse__q { display: block; margin-top: 2px; font: italic 400 15px/1.3 var(--font-editorial); color: var(--ink); }
.bq-caisse__poignee { width: 12px; height: 34px; border-radius: 6px; background-color: var(--brand-fill); transition: background-color 260ms var(--ease-out); }
.bq-caisse__tiroir:hover, .bq-caisse__tiroir:focus-visible { transform: translateX(34px); box-shadow: -10px 6px 0 rgba(0,0,0,.12); }
.bq-caisse__tiroir:hover .bq-caisse__poignee, .bq-caisse__tiroir:focus-visible .bq-caisse__poignee { background-color: var(--brand-focus); color: var(--on-focus); }
.bq-caisse__tiroir:focus-visible { outline: 3px solid var(--brand-focus); outline-offset: 3px; }  /* turquoise sur la caisse marine (3,2:1) ; le marine s'y confondait (1:1) */
.bq-ouverture p { margin: 0 0 10px; max-width: 64ch; font: italic 400 22px/1.45 var(--font-editorial); color: var(--ink); }
.bq-tiroir:target .bq-tiroir__corps { animation: bq-sortir 700ms var(--ease-out); }
.bq-tiroir:target .bq-tiroir__poignee { animation: bq-tirer 700ms var(--ease-out); }
@keyframes bq-tirer { 0% { transform: none; } 40% { transform: translateX(-18px); } 100% { transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .bq-caisse__tiroir { transition: none; } .bq-caisse__tiroir:hover, .bq-caisse__tiroir:focus-visible { transform: none; }
  .bq-tiroir:target .bq-tiroir__corps, .bq-tiroir:target .bq-tiroir__poignee { animation: none; }
}
@media (max-width: 900px) {
  .bq-hero--boite { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .bq-ouverture p { font-size: 19px; }
  .bq-caisse__tiroir:hover, .bq-caisse__tiroir:focus-visible { transform: translateX(10px); }
}
