/* Miguel™ visual identity — additive presentation layer, 2026-08-31. */
.miguel-visual { display: flex; align-items: flex-start; justify-content: flex-start; pointer-events: none; background: transparent !important; border: 0 !important; box-shadow: none !important; aspect-ratio: 788 / 458; overflow: hidden; }
.miguel-visual img { display: block; width: 133.25%; max-width: none; height: auto; flex: 0 0 auto; object-fit: contain; background: transparent !important; border: 0 !important; box-shadow: none !important; transform: translate(-10.29%, -15.24%); }
.miguel-visual--method { width: min(210px, 34vw); margin: 0 auto var(--space-3, 1.5rem); }
.miguel-visual--about { width: min(250px, 100%); margin: 0 auto var(--space-4, 2rem); }
.miguel-visual--blog { width: min(190px, 42vw); margin: var(--space-4, 2rem) auto 0; }
.miguel-visual--wizard { width: min(190px, 58vw); margin: 0 auto var(--space-3, 1.5rem); }
.miguel-visual--loading { width: min(145px, 42vw); margin: 0 auto var(--space-3, 1.5rem); }
.miguel-visual--result { width: min(150px, 42vw); margin: 0 0 var(--space-3, 1.5rem); justify-content: flex-start; }

/* About Miguel™ — calibrage local du visuel éditorial, 2026-08-31.
   Neutralise uniquement les règles `.card img` qui s'appliquent à l'image
   imbriquée dans le callout. Aucun autre usage de Miguel™ n'est ciblé. */
.card .miguel-visual--about { width: min(250px, 100%); height: auto; aspect-ratio: 788 / 458; overflow: hidden; margin: 0 auto var(--space-4, 2rem); }
.card .miguel-visual--about img { width: 133.25%; max-width: none; height: auto; aspect-ratio: auto; margin: 0; border-radius: 0; object-fit: contain; transform: translate(-10.29%, -15.24%); }
@media (min-width: 768px) { .card .miguel-visual--about { margin-left: 0; margin-right: 0; } }
@media (max-width: 479px) { .card .miguel-visual--about { width: min(215px, 72vw); } }
@media (min-width: 768px) { .miguel-visual--about { margin-left: 0; } }
@media (max-width: 479px) {
  .miguel-visual--method { width: min(180px, 55vw); }
  .miguel-visual--about { width: min(215px, 72vw); }
  .miguel-visual--blog { width: min(170px, 52vw); }
  .miguel-visual--wizard { width: min(170px, 58vw); margin-bottom: 12px; }
  .miguel-visual--loading { width: min(125px, 40vw); }
  .miguel-visual--result { width: min(125px, 38vw); }
}

/* Header Miguel™ — carte.html uniquement, 2026-08-31.
   Identité produit locale : remplace le logo DHT uniquement dans l’espace Miguel™.
   Le wrapper recadre visuellement le PNG transparent sans modifier l’asset source. */
.map-brand--miguel { gap: var(--space-2); }
.map-brand--miguel .map-brand__miguel-visual { display: block; width: 56px; height: 33px; flex: 0 0 56px; position: relative; overflow: hidden; aspect-ratio: 788 / 458; background: transparent; }
.map-brand--miguel .map-brand__miguel-visual img { display: block; width: 133.25%; max-width: none; height: auto; transform: translate(-10.29%, -15.24%); }
.map-brand--miguel .map-brand__text { display: flex; flex-direction: column; justify-content: center; min-width: 0; line-height: 1.05; }
.map-brand--miguel .map-brand__text strong { display: block; font-size: 0.98rem; font-weight: 800; white-space: nowrap; }
.map-brand--miguel .map-brand__text small { display: block; margin-top: 3px; color: var(--color-text-muted, #657370); font-size: 0.66rem; font-weight: 600; letter-spacing: 0.01em; white-space: nowrap; }
@media (max-width: 480px) {
  .map-brand--miguel .map-brand__miguel-visual { width: 48px; height: 28px; flex-basis: 48px; }
  .map-brand--miguel .map-brand__text strong { font-size: 0.86rem; }
  .map-brand--miguel .map-brand__text small { font-size: 0.58rem; margin-top: 2px; }
}
@media (max-width: 400px) {
  .map-brand--miguel .map-brand__miguel-visual { width: 42px; height: 24px; flex-basis: 42px; }
  .map-brand--miguel .map-brand__text strong { font-size: 0.78rem; }
  .map-brand--miguel .map-brand__text small { font-size: 0.52rem; }
}
