/* Identite lot01 7pm-auto.fr. Le garage de 19 heures. Logo non redessine. */
html body {
  --dn-id-ink: #131a21;
  --dn-id-paper: #ffffff;
  --dn-id-paper-soft: #edf1f3;
  --dn-id-accent: #2574a8;
  --dn-id-accent-2: #d65b36;
  --dn-id-line: #c5ced4;
  --dn-id-display: Georgia, "Times New Roman", serif;
  --dn-id-body: Inter, ui-sans-serif, system-ui, sans-serif;
}

html body .dn-id-foot,
html body .dn-id-page {
  color: var(--dn-id-ink);
  background: var(--dn-id-paper);
  font-family: var(--dn-id-body);
}

/* Le header du media est sombre : on garde le lockup lisible sans le deformer. */
html body .smart-head .logo-link img {
  width: auto;
  height: auto;
  max-height: 54px;
  object-fit: contain;
}

html body .dn-id-foot--7pm-auto {
  border-top: 3px solid var(--dn-id-accent);
  padding: 30px 0 18px;
  background:
    linear-gradient(180deg, rgba(37,116,168,0.05), rgba(37,116,168,0) 120px),
    var(--dn-id-paper);
}

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

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

html body .dn-id-brand img {
  display: block;
  width: auto;
  height: auto;
  max-height: 52px;
  min-width: 180px;
  max-width: min(300px, 72vw);
}

html body .dn-id-foot__statement {
  margin: 14px 0 0;
  max-width: 46rem;
  font: 400 0.95rem/1.5 var(--dn-id-body);
  color: color-mix(in srgb, var(--dn-id-ink) 82%, transparent);
}

html body .dn-id-foot__sections,
html body .dn-id-foot__house,
html body .dn-id-foot__base nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

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

html body .dn-id-foot a {
  color: var(--dn-id-ink);
  text-decoration: none;
  font: 600 0.92rem/1.35 var(--dn-id-body);
}

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

html body .dn-id-foot__ads {
  margin: 0;
  max-width: 36rem;
  font: 400 0.92rem/1.45 var(--dn-id-body);
}

html body .dn-id-foot__ads strong {
  display: block;
  font-family: var(--dn-id-display);
  font-size: 1.05rem;
  color: var(--dn-id-ink);
}

html body .dn-id-foot__base {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px 18px;
  margin-top: 20px;
  font: 400 0.82rem/1.45 var(--dn-id-body);
  color: color-mix(in srgb, var(--dn-id-ink) 78%, transparent);
}

html body .dn-id-kicker {
  margin: 0 0 8px;
  font: 700 0.75rem/1.2 var(--dn-id-body);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dn-id-accent);
}

html body .dn-id-page__head h1 {
  margin: 0 0 18px;
  font: 700 2.1rem/1.15 var(--dn-id-display);
}

html body .dn-id-page__body h3 {
  font-family: var(--dn-id-display);
}

html body .dn-id-page {
  padding: 34px 0 48px;
}

/* Formulaire contact et annonceurs : jamais colle a gauche. Il est centre a
   marges symetriques et occupe l'essentiel du conteneur editorial. */
html body .dn-contact,
html body .dn-contact-form {
  margin-left: auto !important;
  margin-right: auto !important;
}

html body .dn-contact-form {
  max-width: min(960px, 92%) !important;
}

/* CTA commerciales : le style enfant de flotte force #ba4926 sur tout
   `.dn-trust a` (contraste 3.4 sur encre) et le texte disparait au survol
   (1.02). On gagne en specificite sur ce bloc partage, sans le modifier. */
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button,
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button:link,
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button:visited {
  color: #ffffff !important;
  background-color: #131a21 !important;
  border-color: #131a21 !important;
}

html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button:hover,
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button:focus-visible {
  color: #ffffff !important;
  background-color: #2574a8 !important;
  border-color: #2574a8 !important;
}

html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button--secondary,
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button--secondary:link,
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button--secondary:visited {
  color: #131a21 !important;
  background-color: transparent !important;
  border-color: #131a21 !important;
}

html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button--secondary:hover,
html body.diginov-media.diginov-brand-7pm-auto-fr a.dn-trust__button--secondary:focus-visible {
  color: #ffffff !important;
  background-color: #2574a8 !important;
  border-color: #2574a8 !important;
}

html body .dn-id-foot__follow a:focus-visible {
  outline: 2px solid var(--dn-id-accent);
  outline-offset: 2px;
}

html body .dn-share {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  margin: 28px 0 0;
  padding-top: 16px;
  border-top: 1px solid var(--dn-id-line);
}

html body .dn-share__label {
  font: 700 0.72rem/1.2 var(--dn-id-body);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dn-id-accent);
}

html body .dn-share__link {
  font: 600 0.9rem/1.3 var(--dn-id-body);
  color: var(--dn-id-ink);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  padding-bottom: 2px;
  transition: color 140ms ease, border-color 140ms ease;
}

html body .dn-share__link:hover {
  color: var(--dn-id-accent);
  border-bottom-color: var(--dn-id-accent-2);
}

html body .dn-id-foot__follow {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

html body .dn-id-foot__follow a {
  color: var(--dn-id-ink);
  text-decoration: none;
  font: 600 0.92rem/1.35 var(--dn-id-body);
}

html body .dn-id-foot__follow a:hover {
  color: var(--dn-id-accent);
  text-decoration: underline;
}

/* Pagination de rubrique : etat de survol lisible et focus visible. */
html body .page-numbers a,
html body a.page-numbers {
  transition: color 140ms ease, background-color 140ms ease, border-color 140ms ease;
}

html body .page-numbers a:hover,
html body a.page-numbers:hover {
  color: var(--dn-id-accent) !important;
  background-color: color-mix(in srgb, var(--dn-id-accent) 12%, transparent) !important;
  text-decoration: underline !important;
}

html body .page-numbers a:focus-visible,
html body a.page-numbers:focus-visible {
  outline: 2px solid var(--dn-id-accent);
  outline-offset: 2px;
}

/* Contact : le parseur cree un <p> vide dans la grille commerciale, ce qui
   deplace le contenu dans la colonne etroite et laisse une colonne morte.
   On le neutralise et on garde la colonne large pour le contenu utile. */
html body .dn-trust__contact-commercial > p:empty {
  display: none !important;
}

/* Fil d'Ariane et signature auteur : etats hover/focus reels. */
html body .dn-breadcrumb a,
html body .dn-article-author,
html body .dn-article-byline a {
  text-decoration: none;
  transition: color 140ms ease;
}

html body .dn-breadcrumb a:hover,
html body .dn-article-author:hover,
html body .dn-article-byline a:hover {
  color: var(--dn-id-accent);
  text-decoration: underline;
}

html body .dn-breadcrumb a:focus-visible,
html body .dn-article-author:focus-visible,
html body .dn-article-byline a:focus-visible,
html body .dn-share__link:focus-visible,
html body .dn-id-foot__follow a:focus-visible {
  outline: 2px solid var(--dn-id-accent);
  outline-offset: 2px;
}

@media (max-width: 720px) {
  html body .dn-id-brand img { min-width: 160px; max-width: 74vw; }
  html body .dn-id-foot__band { justify-content: flex-start; }
  html body .dn-id-page__head h1 { font-size: 1.7rem; }
}
