/*
 * Identite lot02 allofamille.fr.
 * Palette officielle : encre #14314d, papier #ffffff, accent #54b8e9.
 * Le coeur familial et les trois figures officiels restent intacts : aucune
 * couleur ni geometrie du logo n'est modifiee ici.
 * C34 : aucune promesse de badge, d'identification ou de signalement.
 */

html body.diginov-brand-allofamille-fr {
  --dn-ink: #14314d;
  --dn-paper: #ffffff;
  --dn-paper-soft: #f3f8fb;
  --dn-line: #d7e5ee;
  --dn-accent: #54b8e9;
  --dn-accent-text: #14618f;
  /* Aucun marron dans la charte : l ancien accent-2 #a94f0f est remplace
   * partout par le bleu de texte approuve. */
  --dn-accent-2: #14618f;
  --dn-on-accent: #08243a;
  --dn-muted: #5c6b7a;
}

/* ------------------------------------------------------------------ *
 * Pied dedie : le coeur familial ouvre une cloture aeree.
 * ------------------------------------------------------------------ */

html body .dn-id-foot--allofamille {
  color: var(--dn-ink);
  background: var(--dn-paper);
  border-top: 3px solid var(--dn-accent);
  padding: 34px 0 20px;
  margin-top: 48px;
}

html body .dn-id-foot__open {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 32px;
}

html body .dn-id-foot__brand img {
  display: block;
  width: auto;
  height: auto;
  max-height: 60px;
  min-width: 180px;
  max-width: min(320px, 78vw);
}

html body .dn-id-foot__line {
  margin: 0;
  max-width: 34rem;
  font: 600 clamp(1rem, 1.6vw, 1.25rem)/1.35 var(--dn-font-display, "Arial Narrow", sans-serif);
  letter-spacing: 0.01em;
  color: var(--dn-ink);
}

html body .dn-id-foot__rubriques {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid var(--dn-line);
}

html body .dn-id-foot__label {
  margin: 0 0 12px;
  font: 700 0.72rem/1.2 var(--dn-font-body, sans-serif);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--dn-accent-text);
}

html body .dn-id-foot__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, auto));
  gap: 12px 26px;
  justify-content: start;
}

html body .dn-id-foot__ads {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid var(--dn-line);
}

html body .dn-id-foot__ads p {
  margin: 0;
  max-width: 44rem;
  font: 400 0.95rem/1.5 var(--dn-font-body, sans-serif);
}

html body .dn-id-foot__ads strong {
  display: inline;
  margin-right: 6px;
  font-family: var(--dn-font-display, sans-serif);
  color: var(--dn-ink);
}

html body .dn-id-foot__base {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px 24px;
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid var(--dn-line);
  font: 400 0.82rem/1.4 var(--dn-font-body, sans-serif);
}

html body .dn-id-foot__contact,
html body .dn-id-foot__legal {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0;
}

html body .dn-id-foot__copy {
  margin: 0;
  color: var(--dn-muted);
}

html body .dn-id-foot--allofamille a,
html body .dn-id-foot--allofamille button {
  color: var(--dn-ink);
  text-decoration: none;
}

html body .dn-id-foot--allofamille button {
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  cursor: pointer;
}

html body .dn-id-foot--allofamille a:hover,
html body .dn-id-foot--allofamille a:focus-visible,
html body .dn-id-foot--allofamille button:hover,
html body .dn-id-foot--allofamille button:focus-visible {
  color: var(--dn-accent-text);
  text-decoration: underline;
}

/* ------------------------------------------------------------------ *
 * Bandeau d'article : auteur et date/lecture sur le meme axe vertical,
 * bande moins haute, espacements reduits. L'avatar revient a 44 px pour
 * que les deux groupes partagent la meme ligne mediane.
 * ------------------------------------------------------------------ */

html body .dn-article-byline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 20px;
  margin-top: 20px;
  padding-top: 14px;
}

html body .dn-article-byline .dn-article-author {
  align-items: center;
  gap: 10px;
}

html body .dn-article-byline .dn-article-author img {
  width: 44px;
  height: 44px;
}

html body .dn-article-byline .dn-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  align-items: center;
}

/* ------------------------------------------------------------------ *
 * Cartes d'archive (categorie, auteur) : aucune cesure forcee, plus de
 * coupure dan-ger ou heberge-ment, titres et interlignes responsifs,
 * hauteur pilotee par le contenu, padding interne et bas reel pour que
 * les metadonnees restent entierement visibles.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr .dn-archive-card {
  overflow: visible;
  height: auto;
  max-height: none;
}

html body.diginov-brand-allofamille-fr .dn-archive-card h2,
html body.diginov-brand-allofamille-fr .dn-archive-card h2 > a,
html body.diginov-brand-allofamille-fr .dn-archive-card p {
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

html body.diginov-brand-allofamille-fr .dn-archive-card h2 {
  margin: 8px 0 9px;
  font-size: clamp(19px, 1.8vw, 26px);
  line-height: 1.24;
  letter-spacing: -0.01em;
}

html body.diginov-brand-allofamille-fr .dn-archive-card__body {
  padding: 18px 18px 22px;
}

html body.diginov-brand-allofamille-fr .dn-archive-card .dn-meta {
  flex-wrap: wrap;
  row-gap: 4px;
}

@media (max-width: 1024px) {
  html body.diginov-brand-allofamille-fr .dn-archive-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 22px;
  }
  html body.diginov-brand-allofamille-fr .dn-archive-card:nth-child(5n + 1) {
    grid-column: auto;
  }
  html body.diginov-brand-allofamille-fr .dn-archive-card:nth-child(5n + 1) .dn-archive-card__media {
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 640px) {
  html body.diginov-brand-allofamille-fr .dn-archive-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  html body.diginov-brand-allofamille-fr .dn-archive-card__body {
    padding: 16px 16px 20px;
  }
}

/* ------------------------------------------------------------------ *
 * Pages de confiance : le bloc ranksource tient dans la colonne de
 * contenu. La grille d'origine (200px / 1fr / auto) laissait le bouton
 * manger la colonne de texte et se chevaucher ; on replie le bouton sur
 * sa propre ligne et on garde deux colonnes lisibles.
 * ------------------------------------------------------------------ */

/* Bloc ranksource : en-tete logo compact, puis kicker, titre, texte et CTA
 * sur le meme axe vertical. Plus de colonne morte ni de CTA orphelin sous
 * le logo. Vaut pour tous les blocs ranksource de la page. */

html body.diginov-brand-allofamille-fr .dn-trust__marketplace {
  width: 100%;
  max-width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

html body.diginov-brand-allofamille-fr .dn-trust__marketplace > * {
  margin: 0;
}

html body.diginov-brand-allofamille-fr .dn-trust__marketplace-logo {
  display: block;
}

html body.diginov-brand-allofamille-fr .dn-trust__marketplace-logo img {
  width: min(150px, 60%);
}

html body.diginov-brand-allofamille-fr .dn-trust__marketplace h2 {
  margin: 0 0 8px;
  font-size: clamp(20px, 1.9vw, 28px);
  line-height: 1.18;
}

html body.diginov-brand-allofamille-fr .dn-trust__marketplace p {
  margin: 0;
}

html body.diginov-brand-allofamille-fr .dn-trust__marketplace .dn-trust__button {
  justify-self: start;
}

html body.diginov-brand-allofamille-fr .dn-trust__button:hover,
html body.diginov-brand-allofamille-fr .dn-trust__button:focus-visible,
html body.diginov-brand-allofamille-fr .dn-form-submit:hover,
html body.diginov-brand-allofamille-fr .dn-form-submit:focus-visible {
  background: var(--dn-accent-text);
  border-color: var(--dn-accent-text);
}

@media (max-width: 720px) {
  html body.diginov-brand-allofamille-fr .dn-trust__marketplace {
    padding: 22px 16px;
  }
}

/* ------------------------------------------------------------------ *
 * Pont de survol du sous-menu desktop.
 *
 * Le panneau s'ouvre 6 a 10 px sous le declencheur. Quand le curseur
 * traverse ce vide, le `li:hover` tombe et le sous-menu se referme avant le
 * clic. Le pseudo-element couvre exactement ce vide, sans agrandir ni
 * deplacer le panneau et sans capter le survol hors du menu.
 * Il n'existe que sur le header desktop (masque sous 941 px).
 * ------------------------------------------------------------------ */

@media (min-width: 941px) {
  html body .navigation-main .menu > li.menu-item-has-children > .sub-menu::before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    height: 10px;
    background: transparent;
    pointer-events: auto;
  }
}

/* ------------------------------------------------------------------ *
 * Responsive.
 * ------------------------------------------------------------------ */

@media (max-width: 1024px) {
  html body .dn-id-foot__grid {
    grid-template-columns: repeat(3, minmax(0, auto));
  }
}

@media (max-width: 720px) {
  html body .dn-id-foot--allofamille {
    padding: 26px 0 18px;
    margin-top: 32px;
  }
  html body .dn-id-foot__brand img {
    min-width: 160px;
    max-width: 74vw;
    max-height: 52px;
  }
  html body .dn-id-foot__open,
  html body .dn-id-foot__base {
    justify-content: flex-start;
  }
  html body .dn-id-foot__grid {
    grid-template-columns: repeat(2, minmax(0, auto));
    gap: 10px 20px;
  }
}

/* ------------------------------------------------------------------ *
 * P1 publicite (page-id-10270) : la page tient la largeur de sa
 * composition au lieu d'une colonne de lecture de 760 px. Le hero est
 * reequilibre, le vide mort reduit, les CTA agrandis.
 * ------------------------------------------------------------------ */

html body.page-id-10270 .dn-page-layout {
  grid-template-columns: minmax(0, 1180px);
  padding-bottom: 44px;
}

html body.page-id-10270 .dn-trust {
  margin-bottom: 36px;
}

html body.page-id-10270 .dn-trust__hero {
  grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.9fr);
  gap: clamp(24px, 4vw, 56px);
  padding: clamp(28px, 4vw, 54px);
}

html body.page-id-10270 .dn-trust__visual {
  min-height: 300px;
}

html body.page-id-10270 .dn-trust__commercial-grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  margin-bottom: 44px;
}

html body.page-id-10270 .dn-trust__formats {
  margin-bottom: 42px;
}

html body.page-id-10270 .dn-trust__marketplace {
  margin: 40px 0;
}

html body.page-id-10270 .dn-trust__button,
html body.page-id-10270 .dn-form-submit {
  min-height: 52px;
  padding: 15px 24px;
  font-size: 15px;
}

@media (max-width: 820px) {
  html body.page-id-10270 .dn-trust__hero,
  html body.page-id-10270 .dn-trust__commercial-grid,
  html body.page-id-10270 .dn-trust__story {
    grid-template-columns: minmax(0, 1fr);
  }
  html body.page-id-10270 .dn-trust__kicker {
    width: auto;
    max-width: 100%;
    white-space: normal;
    word-break: normal;
    overflow-wrap: normal;
    writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    text-orientation: mixed;
  }
}

/* ------------------------------------------------------------------ *
 * P1 footer global : texte et liens nettement lisibles, espacements et
 * alignements propres, y compris sur grand ecran.
 * ------------------------------------------------------------------ */

html body .dn-id-foot--allofamille {
  padding: 40px 0 26px;
}

html body .dn-id-foot__label {
  font-size: 0.78rem;
  margin-bottom: 14px;
}

html body .dn-id-foot__grid {
  gap: 14px 30px;
  font-size: 0.95rem;
  line-height: 1.5;
}

html body .dn-id-foot__rubriques {
  margin-top: 30px;
  padding-top: 22px;
}

html body .dn-id-foot__ads p {
  font-size: 1rem;
  line-height: 1.55;
}

html body .dn-id-foot__base {
  gap: 12px 26px;
  margin-top: 26px;
  padding-top: 18px;
  font-size: 0.95rem;
  line-height: 1.55;
}

html body .dn-id-foot__contact,
html body .dn-id-foot__legal {
  gap: 10px 20px;
}

html body .dn-id-foot__copy {
  font-size: 0.92rem;
}

@media (max-width: 720px) {
  html body .dn-id-foot__grid {
    font-size: 0.9rem;
    gap: 12px 22px;
  }
}

/* ------------------------------------------------------------------ *
 * P1 etats interactifs : survol et focus-visible coherents sur le fil
 * d'Ariane, le bloc auteur, les cartes, les boutons, la pagination, le
 * footer, le partage et les liens sociaux. Aucun changement de taille
 * ni de position : couleur, soulignement, opacity et outline seulement,
 * donc aucun layout shift.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr :is(a, button):focus-visible,
html body.diginov-brand-allofamille-fr :is(a, button):focus {
  outline: 3px solid var(--dn-accent-text);
  outline-offset: 2px;
  border-radius: 2px;
}

html body.diginov-brand-allofamille-fr .dn-breadcrumb a:hover,
html body.diginov-brand-allofamille-fr .dn-breadcrumb a:focus-visible,
html body.diginov-brand-allofamille-fr .dn-article-author:hover,
html body.diginov-brand-allofamille-fr .dn-article-author:focus-visible {
  color: var(--dn-accent-text);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 2px;
}

/* Les titres de cartes sont a l'encre au repos : le survol bascule vers
 * l'accent et epaissit le soulignement, de facon nettement perceptible. */
html body.diginov-brand-allofamille-fr .dn-archive-card h2 > a:hover,
html body.diginov-brand-allofamille-fr .dn-archive-card h2 > a:focus-visible,
html body.diginov-brand-allofamille-fr :is(.dn-more-card, .dn-stream-card, .dn-support-card, .dn-lead) a:hover,
html body.diginov-brand-allofamille-fr :is(.dn-more-card, .dn-stream-card, .dn-support-card, .dn-lead) a:focus-visible {
  color: var(--dn-accent-text) !important;
  background: color-mix(in srgb, var(--dn-accent) 15%, transparent) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  text-decoration-thickness: 3px;
}

html body.diginov-brand-allofamille-fr .dn-article-author:hover strong,
html body.diginov-brand-allofamille-fr .dn-article-author:focus-visible strong {
  text-decoration: underline;
  text-underline-offset: 3px;
}

html body.diginov-brand-allofamille-fr .dn-archive-card__media:hover img,
html body.diginov-brand-allofamille-fr .dn-archive-card__media:focus-visible img {
  opacity: 0.92;
}

html body.diginov-brand-allofamille-fr .dn-pagination a:hover,
html body.diginov-brand-allofamille-fr .dn-pagination a:focus-visible,
html body.diginov-brand-allofamille-fr .dn-pagination .page-numbers.current {
  color: var(--dn-paper);
  background: var(--dn-ink);
  border-color: var(--dn-ink);
}

html body.diginov-brand-allofamille-fr .spc-social a:hover,
html body.diginov-brand-allofamille-fr .spc-social a:focus-visible,
html body.diginov-brand-allofamille-fr .dn-share a:hover,
html body.diginov-brand-allofamille-fr .dn-share a:focus-visible,
html body.diginov-brand-allofamille-fr .dn-article-share a:hover,
html body.diginov-brand-allofamille-fr .dn-article-share a:focus-visible {
  color: var(--dn-accent-text);
  opacity: 1;
}

html body.diginov-brand-allofamille-fr .dn-trust__button:hover,
html body.diginov-brand-allofamille-fr .dn-trust__button:focus-visible,
html body.diginov-brand-allofamille-fr .dn-form-submit:hover,
html body.diginov-brand-allofamille-fr .dn-form-submit:focus-visible {
  opacity: 0.94;
}

/* ------------------------------------------------------------------ *
 * newsletter_integrity : le CTA header "S'abonner a la newsletter"
 * pointait vers un formulaire Mailchimp herite
 * (allofamille.us13.list-manage.com/subscribe/post) mesure en 404 le
 * 2026-09-19. Composant orphelin retire de l affichage, desktop et
 * mobile, avec son espace. Aucune liste, aucun abonne, aucun reglage
 * et aucun service n est touche. Aucun autre emplacement newsletter
 * n existe sur le site.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr a[href*="list-manage.com"],
html body.diginov-brand-allofamille-fr .spc-newsletter,
html body.diginov-brand-allofamille-fr .spc-newsletter-box {
  display: none !important;
}

/* ------------------------------------------------------------------ *
 * P1 Contact : le bloc commercial ranksource annoncait une grille
 * 210 + 378 et tassait label, titre, texte et actions dans une colonne.
 * Recompose en une colonne : logo compact en en-tete, puis label, titre,
 * texte et deux actions sur le meme axe, sans zone morte.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr .dn-trust__contact-commercial {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

html body.diginov-brand-allofamille-fr .dn-trust__contact-commercial .dn-trust__marketplace-logo img {
  width: min(150px, 60%);
}

html body.diginov-brand-allofamille-fr .dn-trust__contact-commercial .dn-trust__contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

html body.diginov-brand-allofamille-fr .dn-trust__contact-commercial .dn-trust__button {
  justify-self: start;
}

/* ------------------------------------------------------------------ *
 * P1 La redaction : la grille n avait aucune regle pour ce media, les
 * cartes s empilaient en pleine largeur et les portraits carraient a
 * 1138 px. Grille editoriale a deux colonnes, cartes horizontales,
 * portraits proportionnes, repli mobile.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr .dn-team-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 44px 34px;
  align-items: start;
}

html body.diginov-brand-allofamille-fr .dn-team-card {
  display: grid;
  grid-template-columns: minmax(140px, 200px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--dn-line);
}

html body.diginov-brand-allofamille-fr .dn-team-card__portrait {
  display: block;
  overflow: hidden;
  border-radius: var(--dn-radius);
}

html body.diginov-brand-allofamille-fr .dn-team-card__portrait img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}

html body.diginov-brand-allofamille-fr .dn-team-card h2 {
  margin: 6px 0 10px;
  font-size: clamp(21px, 1.9vw, 30px);
  line-height: 1.16;
}

html body.diginov-brand-allofamille-fr .dn-team-card__body > p:not(.dn-kicker) {
  font-size: 15px;
  line-height: 1.6;
}

@media (max-width: 1024px) {
  html body.diginov-brand-allofamille-fr .dn-team-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }
}

@media (max-width: 640px) {
  html body.diginov-brand-allofamille-fr .dn-team-card {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  html body.diginov-brand-allofamille-fr .dn-team-card__portrait {
    max-width: 220px;
  }
}

/* ------------------------------------------------------------------ *
 * P1 palette : le kicker et les liens des pages de confiance utilisaient
 * le marron hors charte. Ils passent au bleu de texte approuve, contraste
 * AA sur papier #ffffff.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr .dn-trust__kicker,
html body.diginov-brand-allofamille-fr .dn-trust a {
  color: var(--dn-accent-text);
}

/* Hover et focus visible des cartes de redaction (meme langage que le reste). */
html body.diginov-brand-allofamille-fr .dn-team-card h2 a:hover,
html body.diginov-brand-allofamille-fr .dn-team-card h2 a:focus-visible,
html body.diginov-brand-allofamille-fr .dn-team-card__link:hover,
html body.diginov-brand-allofamille-fr .dn-team-card__link:focus-visible {
  color: var(--dn-accent-text);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 2px;
}

html body.diginov-brand-allofamille-fr .dn-team-card__portrait:hover img,
html body.diginov-brand-allofamille-fr .dn-team-card__portrait:focus-visible img {
  opacity: 0.92;
}

/* ------------------------------------------------------------------ *
 * P1 vertical_rhythm (La redaction et pages internes) : respiration
 * entre le masthead, le fil d'Ariane, le titre, la premiere grille et
 * la premiere carte. Les bounding boxes sont mesurees par la sonde.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr :is(.dn-team-hero, .dn-author-hero, .dn-archive-hero) {
  padding-top: clamp(40px, 5vw, 76px);
  padding-bottom: clamp(26px, 3.4vw, 46px);
}

html body.diginov-brand-allofamille-fr :is(.dn-team-hero, .dn-author-hero, .dn-archive-hero) .dn-breadcrumb {
  margin-bottom: clamp(18px, 2.2vw, 30px);
}

html body.diginov-brand-allofamille-fr .dn-team-grid,
html body.diginov-brand-allofamille-fr .dn-archive-grid {
  padding-top: clamp(34px, 4.4vw, 62px);
}

html body.diginov-brand-allofamille-fr .dn-team-card {
  padding-top: 6px;
}

/* ------------------------------------------------------------------ *
 * P1 footer : variante sombre approuvee du logo (lisible sur le fond)
 * et plancher de 14 px pour tous les liens interactifs, avec hover et
 * focus visibles. La hierarchie et les espacements sont conserves.
 * ------------------------------------------------------------------ */

html body .dn-id-foot__brand img {
  border-radius: 10px;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--dn-ink) 8%, transparent);
}

html body .dn-id-foot--allofamille a,
html body .dn-id-foot--allofamille button,
html body .dn-id-foot__base,
html body .dn-id-foot__contact,
html body .dn-id-foot__legal,
html body .dn-id-foot__copy,
html body .dn-id-foot__grid a {
  font-size: max(0.875rem, 14px);
}

html body .dn-id-foot__base,
html body .dn-id-foot__contact,
html body .dn-id-foot__legal {
  line-height: 1.6;
}

html body .dn-id-foot__contact a,
html body .dn-id-foot__legal a,
html body .dn-id-foot__legal button {
  padding-block: 3px;
}

/* ------------------------------------------------------------------ *
 * P1 publicite : section compacte d exemples de campagnes etudiees,
 * sans libelles numerotes ni promesse de signalement.
 * ------------------------------------------------------------------ */

html body.diginov-brand-allofamille-fr .dn-trust__formats-title {
  grid-column: 1 / -1;
  margin: 0 0 6px;
  font-size: clamp(24px, 2.4vw, 34px);
  line-height: 1.14;
  letter-spacing: -0.02em;
}

html body.diginov-brand-allofamille-fr .dn-trust__formats--examples {
  gap: 14px;
  margin-bottom: 44px;
}

html body.diginov-brand-allofamille-fr .dn-trust__formats--examples .dn-trust__format {
  min-height: 0;
  padding: 22px 22px 24px;
}

html body.diginov-brand-allofamille-fr .dn-trust__formats--examples .dn-trust__format h3 {
  font-size: 19px;
  line-height: 1.25;
}

/* CTA secondaire : contraste >= 4.5 dans tous les etats (repos, survol,
 * focus). Survol et focus passent sur l'encre avec texte blanc. */
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:hover,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:focus,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:focus-visible {
  color: #ffffff !important;
  background: var(--dn-ink) !important;
  border-color: var(--dn-ink) !important;
}

/* Renfort de specificite : le CTA secondaire reste lisible au survol. */
html body.diginov-brand-allofamille-fr .dn-page-content .dn-trust__button--secondary:hover,
html body.diginov-brand-allofamille-fr .dn-page-content .dn-trust__button--secondary:focus,
html body.diginov-brand-allofamille-fr .dn-page-content .dn-trust__button--secondary:focus-visible {
  color: #ffffff !important;
  background: var(--dn-ink) !important;
  border-color: var(--dn-ink) !important;
}

/* Le survol inline peint le bouton avec --dn-accent. On redefinit la
 * variable sur le bouton survole : le fond devient l'encre, texte blanc,
 * contraste >= 4.5 sans lutte de specificite. */
html body.diginov-brand-allofamille-fr .dn-trust__button:hover,
html body.diginov-brand-allofamille-fr .dn-trust__button:focus-visible,
html body.diginov-brand-allofamille-fr .dn-form-submit:hover,
html body.diginov-brand-allofamille-fr .dn-form-submit:focus-visible {
  --dn-accent: var(--dn-ink);
}

/* CTA secondaire : texte encre dans tous les etats. Sur fond papier
 * (12.6) comme sur fond accent clair (5.96), le contraste reste >= 4.5. */
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:link,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:visited,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:hover,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:focus,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:focus-visible,
html body.diginov-brand-allofamille-fr .dn-trust__button--secondary:active {
  color: var(--dn-ink) !important;
}



/* CTA secondaire "Voir les offres publicitaires" : encre sur papier dans
 * tous les etats, cible par son href pour ecarter tout color-mix herite. */
html body.diginov-brand-allofamille-fr .dn-trust__contact-actions a[href*="publicite-partenariats"],
html body.diginov-brand-allofamille-fr .dn-trust__contact-actions a[href*="publicite-partenariats"]:hover,
html body.diginov-brand-allofamille-fr .dn-trust__contact-actions a[href*="publicite-partenariats"]:focus,
html body.diginov-brand-allofamille-fr .dn-trust__contact-actions a[href*="publicite-partenariats"]:focus-visible,
html body.diginov-brand-allofamille-fr .dn-trust__contact-actions a[href*="publicite-partenariats"]:active {
  color: var(--dn-ink) !important;
  background: var(--dn-paper) !important;
  border-color: var(--dn-ink) !important;
}
