/* French text fitting; shared PL/EN/DE styles and motion stay unchanged. */
html[lang="fr"] .realm-card {
  grid-template-rows: auto 1fr auto;
  row-gap: 12px;
}
html[lang="fr"] .realm-card h3 {
  height: auto;
  align-self: end;
  grid-template-rows: auto auto;
}
html[lang="fr"] .realm-card p {
  height: auto;
  grid-template-rows: auto auto;
  margin: 0;
}
html[lang="fr"] .sample-download {
  white-space: normal;
  max-width: 100%;
  line-height: 1.7;
}
html[lang="fr"] .edition-pending { cursor: default; }
html[lang="fr"] .edition-links .edition-pending {
  display: block;
  color: var(--muted);
  padding: 10px 0;
}
html[lang="fr"] .cookie-banner button {
  width: auto;
  min-width: 70px;
  padding: 0 10px;
}

html[lang="fr"] .reference-caption { color: var(--muted); font-size: 12px; line-height: 1.7; margin-top: 18px; text-align: center; }
html[lang="fr"] .language-switch { flex-wrap: wrap; }
html[lang="fr"] .cta-label { white-space: normal; }
html[lang="fr"] .button { max-width: 100%; text-align: center; }
/* Long French words must fit inside the actual section/card, including at 320 px. */
html[lang="fr"] h1, html[lang="fr"] h2, html[lang="fr"] h3,
html[lang="fr"] p, html[lang="fr"] .sample-card > div {
  min-width: 0;
  overflow-wrap: anywhere;
}
html[lang="fr"] .sample-intro, html[lang="fr"] .sample-grid,
html[lang="fr"] .sample-card { min-width: 0; max-width: 100%; }
