/* Travaux DIY — Styles de rendu (reproduction pixel de la maquette de référence).
   Les classes ci-dessous sont utilisées par les block patterns et les gabarits.
   Valeurs reprises telles quelles depuis "Travaux DIY - Portail.dc.html". */

/* ============ Base / reset doux ============ */
.td-body,
body {
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}
body {
  font-family: var(--font-body);
  color: var(--color-ink);
  background-color: var(--color-bg);
  background-image: var(--gradient-page-wash);
  background-attachment: fixed;
  background-repeat: no-repeat;
}
.td-body a { color: var(--color-corail); text-decoration: none; }
.td-body a:hover { color: var(--color-rose); }

/* Placeholder d'image (aplat rayé) — remplacé par les vraies images WebP */
.td-ph {
  background: var(--ph-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-ink-muted);
  font-family: monospace;
  font-size: 12px;
  text-align: center;
  padding: 10px;
}

/* ============ Conteneurs ============ */
.td-wrap { max-width: var(--wrap-wide); margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.td-wrap--article { max-width: var(--wrap-article); }
.td-wrap--narrow { max-width: var(--wrap-narrow); }

/* ============ Verre dépoli ============ */
/* Styles de bloc Gutenberg (register_block_style) */
.is-style-glass {
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-shadow-card);
  border-radius: var(--radius-lg);
}
.is-style-glass-hero {
  background: var(--glass-bg-hero);
  backdrop-filter: var(--glass-blur-hero);
  -webkit-backdrop-filter: var(--glass-blur-hero);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-shadow);
  border-radius: var(--radius-lg);
}

.glass {
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-shadow-card);
}
.glass--hero {
  background: var(--glass-bg-hero);
  backdrop-filter: var(--glass-blur-hero);
  -webkit-backdrop-filter: var(--glass-blur-hero);
  box-shadow: var(--glass-shadow);
}

/* ============ BLOC 1 : EN-TÊTE ============ */
.td-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border-bottom: 1px solid var(--glass-border);
  box-shadow: var(--shadow-soft);
}
.td-header__inner {
  max-width: var(--wrap-wide);
  margin: 0 auto;
  padding: 16px 24px;
  display: flex;
  align-items: center;
  gap: 32px;
}
.td-logo { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.td-logo__mark {
  width: 22px; height: 22px;
  background: var(--gradient-cta);
  border-radius: 6px;
  transform: rotate(45deg);
  display: inline-block;
}
.td-logo__text {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 22px;
  letter-spacing: -0.01em;
  color: var(--color-ink);
}
.td-nav { display: flex; flex: 1; align-items: center; gap: 4px; flex-wrap: wrap; }
.td-nav ul { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; min-width: 0; list-style: none; margin: 0; padding: 0; }
.td-nav a,
.td-navlink {
  display: block;
  padding: 10px 14px;
  border-radius: var(--radius-pill);
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  color: var(--color-ink);
  background: transparent;
}
.td-nav a:hover { color: var(--color-corail); }
.td-navlink--featured,
.td-nav .td-navlink--featured {
  font-weight: 700;
  background: var(--color-corail);
  color: #fff;
}
.td-navlink--featured:hover { color: #fff; }
.td-header__actions { display: flex; align-items: center; gap: 12px; margin-left: auto; }
.td-search {
  font-size: 14px; font-weight: 500; color: var(--color-ink-muted);
  padding: 8px 14px; border: 1px solid var(--color-border); border-radius: var(--radius-pill);
  background: transparent;
}
.td-burger { display: none; flex-direction: column; gap: 4px; padding: 8px; background: none; border: none; cursor: pointer; }
.td-burger span { width: 22px; height: 2px; background: var(--color-ink); border-radius: 2px; }
.td-mobile-nav { display: none; border-top: 1px solid var(--color-border); padding: 12px 24px 20px; flex-direction: column; gap: 2px; }
.td-mobile-nav.is-open { display: flex; }
.td-mobile-nav a { padding: 12px 8px; font-size: 15px; font-weight: 500; color: var(--color-ink); }
.td-mobile-nav a.td-navlink--featured { color: var(--color-corail); background: transparent; font-weight: 700; }

/* ============ BLOC 2 : HERO ÉDITORIAL À LA UNE ============ */
.td-hero { max-width: var(--wrap-wide); margin: 0 auto; padding: 32px 24px 0; }
.td-hero__card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  text-decoration: none;
  border-radius: var(--radius-lg);
  padding: 16px;
}
.td-hero__media { aspect-ratio: 16/9; border-radius: var(--radius-md); }
.td-hero__body { padding: 8px 8px 16px; }
.td-hero__title {
  font-family: var(--font-heading);
  font-size: clamp(28px, 5vw, 48px);
  line-height: 1.1;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin-bottom: 16px;
  max-width: 720px;
  color: var(--color-ink);
}
.td-hero__excerpt { font-size: 17px; line-height: 1.6; color: var(--color-ink-muted); max-width: 640px; margin-bottom: 20px; }
.td-hero__more { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--color-corail); }

/* Tag rubrique posé sur média (corail translucide) */
.td-tag-overlay {
  display: inline-block;
  background: var(--tag-overlay-bg);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,0.4);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 14px;
  border-radius: var(--radius-pill);
  margin-bottom: 16px;
}

/* ============ BLOC 4 : BLOC RUBRIQUE + grille de cartes ============ */
.td-section { max-width: var(--wrap-wide); margin: 0 auto; padding: 56px 24px 0; }
.td-section__head {
  display: flex; align-items: baseline; justify-content: space-between;
  margin-bottom: 24px; border-bottom: 1px solid var(--color-border); padding-bottom: 16px;
}
.td-section__title {
  font-family: var(--font-heading); font-size: 28px; font-weight: 600;
  display: flex; align-items: center; gap: 10px; color: var(--color-ink);
}
.td-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.td-dot--corail { background: var(--color-corail); }
.td-dot--peche { background: var(--color-peche); }
.td-dot--rose { background: var(--color-rose); }
.td-dot--mint { background: var(--color-menthe); }
.td-section__all { font-weight: 600; font-size: 14px; color: var(--color-ink-muted); white-space: nowrap; }
.td-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; list-style: none; margin: 0; padding: 0; }

/* ---- Ajustements des blocs dynamiques WordPress dans une carte ---- */
.td-card { padding: 0; }
.td-card .wp-block-post-featured-image { margin: 0; }
.td-card .wp-block-post-featured-image img { aspect-ratio: 4/3; object-fit: cover; width: 100%; display: block; }
.td-card .td-card__title a { color: var(--color-ink); }
.td-card .td-card__title a:hover { color: var(--color-corail); }
.td-card .wp-block-post-terms.td-tag a { color: #fff; }
.td-card .wp-block-post-terms.td-tag { width: auto; }
.td-card .td-card__meta .wp-block-post-author-name a { color: var(--color-ink-muted); }
.td-card__meta .sep { color: var(--color-ink-muted); }

/* ============ BLOC 3 : CARTE D'ARTICLE ============ */
.td-card {
  display: flex; flex-direction: column; text-decoration: none;
  border-radius: var(--radius-lg); overflow: hidden; height: 100%;
}
.td-card__media { aspect-ratio: 4/3; }
.td-card__body { padding: 20px; display: flex; flex-direction: column; flex: 1; }
.td-card__title { font-family: var(--font-heading); font-size: 19px; font-weight: 600; line-height: 1.3; color: var(--color-ink); margin-bottom: 8px; }
.td-card__excerpt { font-size: 14px; line-height: 1.55; color: var(--color-ink-muted); margin-bottom: 14px; flex: 1; }
.td-card__meta { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--color-ink-muted); flex-wrap: wrap; }

/* Tag rubrique plein (dans une carte) */
.td-tag {
  display: inline-block; align-self: flex-start;
  color: #fff; font-size: 12px; font-weight: 600;
  padding: 4px 12px; border-radius: var(--radius-pill); margin-bottom: 12px;
}
.td-tag--corail { background: var(--color-corail); }
.td-tag--peche { background: var(--color-peche); }
.td-tag--rose { background: var(--color-rose); }
.td-tag--mint { background: var(--color-menthe); }

/* Couleur du tag par rubrique — modificateur de section (accueil) */
.td-section--corail .td-tag, .td-section--corail .td-tag-overlay { background: var(--color-corail); }
.td-section--peche .td-tag,  .td-section--peche .td-tag-overlay  { background: var(--color-peche); }
.td-section--rose .td-tag,   .td-section--rose .td-tag-overlay   { background: var(--color-rose); }
.td-section--mint .td-tag,   .td-section--mint .td-tag-overlay   { background: var(--color-menthe); }

/* Couleur du tag par rubrique — sur les archives et articles (body.category-*) */
body.category-tiny-house-autoconstruction .td-tag,
body.category-tiny-house-autoconstruction .td-tag-overlay { background: var(--color-corail); }
body.category-renovation-rehabilitation .td-tag,
body.category-renovation-rehabilitation .td-tag-overlay { background: var(--color-peche); }
body.category-amenagement-interieur .td-tag,
body.category-amenagement-interieur .td-tag-overlay { background: var(--color-menthe); }
body.category-tendances-decoration-design .td-tag,
body.category-tendances-decoration-design .td-tag-overlay { background: var(--color-rose); }
body.category-diy .td-tag,
body.category-diy .td-tag-overlay { background: var(--color-peche); }
body.category-gros-oeuvre-construction .td-tag,
body.category-gros-oeuvre-construction .td-tag-overlay { background: var(--color-rose); }
body.category-ecoconstruction-materiaux-durables .td-tag,
body.category-ecoconstruction-materiaux-durables .td-tag-overlay { background: var(--color-menthe); }

/* Chips "aussi sur Travaux DIY" */
.td-chips { display: flex; gap: 10px; flex-wrap: wrap; }
.td-chips__label { font-size: 14px; color: var(--color-ink-muted); margin-bottom: 12px; font-weight: 600; }
.td-chip {
  padding: 8px 16px; border-radius: var(--radius-pill); border: 1px solid var(--color-border);
  font-size: 14px; font-weight: 500; background: var(--color-surface); color: var(--color-ink);
}

/* ============ BLOC 5 : EN-TÊTE PAGE PILIER ============ */
.td-pillar-hero {
  max-width: var(--wrap-wide); margin: 0 auto; padding: 20px 24px 0;
  display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center;
}
.td-pillar-hero__media { aspect-ratio: 4/3; border-radius: var(--radius-lg); }
.td-pillar-hero h1 { font-family: var(--font-heading); font-size: clamp(32px, 5vw, 46px); font-weight: 600; line-height: 1.1; margin-bottom: 18px; color: var(--color-ink); }
.td-pillar-hero__excerpt { font-size: 18px; line-height: 1.65; color: var(--color-ink-muted); margin-bottom: 20px; }
.td-pillar-hero__count { font-size: 14px; color: var(--color-ink-muted); }

/* Liste des satellites */
.td-satellites { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.td-satellites__link { display: grid; grid-template-columns: 40px 1fr; gap: 16px; align-items: baseline; padding: 20px 8px; border-bottom: 1px solid var(--color-border); }
.td-satellites__num { font-family: var(--font-heading); font-size: 20px; color: var(--color-corail); font-weight: 600; }
.td-satellites__title { font-size: 18px; font-weight: 600; margin-bottom: 6px; color: var(--color-ink); }
.td-satellites__excerpt { font-size: 15px; color: var(--color-ink-muted); line-height: 1.5; }

/* ============ BLOC : ARCHIVE ============ */
.td-archive-head { max-width: var(--wrap-wide); margin: 0 auto; padding: 20px 24px 40px; border-bottom: 1px solid var(--color-border); }
.td-archive-head h1 { font-family: var(--font-heading); font-size: clamp(30px, 5vw, 42px); font-weight: 600; margin-bottom: 14px; color: var(--color-ink); }
.td-archive-head p { font-size: 17px; line-height: 1.6; color: var(--color-ink-muted); max-width: 680px; }
.td-pagination { display: flex; justify-content: center; gap: 8px; padding: 48px 0 64px; }
.td-pagination a, .td-pagination span { padding: 10px 16px; border-radius: 10px; font-weight: 600; color: var(--color-ink); }
.td-pagination .current { background: var(--color-ink); color: #fff; }
.td-pagination .dots { color: var(--color-ink-muted); }

/* ============ BLOC 6-7 : ARTICLE ============ */
.td-article-head { max-width: var(--wrap-narrow); margin: 0 auto; padding: 24px 24px 32px; text-align: center; }
.td-article-head h1 { font-family: var(--font-heading); font-size: clamp(30px, 5vw, 44px); font-weight: 600; line-height: 1.15; margin-bottom: 18px; color: var(--color-ink); }
.td-article-head__excerpt { font-size: 18px; line-height: 1.6; color: var(--color-ink-muted); margin-bottom: 20px; }
.td-article-head__meta { display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 14px; color: var(--color-ink-muted); flex-wrap: wrap; }
.td-article-cover { max-width: var(--wrap-article); margin: 0 auto; aspect-ratio: 16/8; border-radius: var(--radius-lg); }
.td-article-layout { max-width: var(--wrap-article); margin: 0 auto; padding: 48px 24px 0; display: grid; grid-template-columns: 260px 1fr; gap: 56px; align-items: start; }

/* Sommaire sticky */
.td-toc { position: sticky; top: 90px; }
.td-toc__label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-ink-muted); margin-bottom: 14px; }
.td-toc ol { list-style: none; margin: 0; padding-left: 16px; display: flex; flex-direction: column; gap: 10px; border-left: 2px solid var(--color-border); }
.td-toc a { font-size: 14px; color: var(--color-ink-muted); line-height: 1.4; }

/* Corps de l'article (prose) */
.td-prose { font-size: 17px; line-height: 1.75; color: var(--color-ink); }
.td-prose h2 { font-family: var(--font-heading); font-size: 26px; font-weight: 600; margin: 8px 0 18px; color: var(--color-ink); }
.td-prose h3 { font-family: var(--font-heading); font-size: 22px; font-weight: 600; margin: 8px 0 16px; color: var(--color-ink); }
.td-prose p { margin-bottom: 20px; }
.td-prose figure { margin: 0 0 32px; }
.td-prose figure img, .td-prose .td-ph { aspect-ratio: 16/9; border-radius: var(--radius-md); width: 100%; }
.td-prose figcaption { font-size: 14px; color: var(--color-ink-muted); margin-top: 10px; text-align: center; }
.td-prose blockquote {
  border-left: 3px solid var(--color-corail); padding: 4px 24px; margin: 32px 0;
  font-family: var(--font-heading); font-style: italic; font-size: 20px; line-height: 1.5; color: var(--color-ink);
}

/* ============ BLOC 8 : ENCADRÉS CONSEIL ============ */
.td-callouts { display: flex; flex-direction: column; gap: 20px; margin-bottom: 32px; }
.td-callout {
  border-radius: var(--radius-md); padding: 20px 24px;
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
.td-callout__head { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.td-callout__icon { width: 18px; height: 18px; display: inline-block; }
.td-callout__label { font-weight: 700; font-size: 15px; }
.td-callout__text { font-size: 15px; line-height: 1.6; color: var(--color-ink); }
.td-callout ul { list-style: none; margin: 0; padding-left: 4px; display: flex; flex-direction: column; gap: 6px; font-size: 15px; color: var(--color-ink); }
.td-callout li { display: flex; gap: 8px; }
.td-callout--astuce { background: var(--color-astuce-bg); border: 1px solid var(--color-astuce-border); }
.td-callout--astuce .td-callout__label { color: var(--color-astuce-text); }
.td-callout--astuce .td-callout__icon { background: var(--color-astuce-text); border-radius: 50%; }
.td-callout--aeviter { background: var(--color-aeviter-bg); border: 1px solid var(--color-aeviter-border); }
.td-callout--aeviter .td-callout__label { color: var(--color-aeviter-text); }
.td-callout--aeviter .td-callout__icon { background: var(--color-aeviter-text); border-radius: 50%; }
.td-callout--checklist { background: var(--color-checklist-bg); border: 1px solid var(--color-checklist-border); }
.td-callout--checklist .td-callout__label { color: var(--color-checklist-text); }
.td-callout--checklist .td-callout__icon { background: var(--color-checklist-text); border-radius: 4px; }

/* ============ BLOC 9 : FAQ ACCORDÉON ============ */
.td-faq { max-width: var(--wrap-narrow); margin: 0 auto; padding: 64px 24px 0; }
.td-faq > h2 { font-family: var(--font-heading); font-size: 26px; font-weight: 600; margin-bottom: 24px; color: var(--color-ink); }
.td-faq__list { display: flex; flex-direction: column; gap: 4px; }
.td-faq__item { border-bottom: 1px solid var(--color-border); }
.td-faq__q {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 18px 4px; text-align: left; font-weight: 600; font-size: 16px; color: var(--color-ink);
  background: none; border: none; cursor: pointer; font-family: inherit;
  list-style: none;
}
.td-faq__q::-webkit-details-marker { display: none; }
.td-faq__q::marker { content: ""; }
.td-faq__plus { display: inline-block; transition: transform 0.15s; font-size: 20px; color: var(--color-corail); }
.td-faq__item[open] .td-faq__plus, .td-faq__q[aria-expanded="true"] .td-faq__plus { transform: rotate(45deg); }
.td-faq__a { padding: 0 4px 20px; font-size: 15px; line-height: 1.65; color: var(--color-ink-muted); }

/* ============ BLOC 10 : AUTEUR / EEAT ============ */
.td-author {
  max-width: var(--wrap-narrow); margin: 64px auto 0; padding: 28px 24px;
  border-radius: var(--radius-lg); display: flex; gap: 20px; align-items: flex-start;
}
.td-author__avatar { width: 64px; height: 64px; border-radius: 50%; flex-shrink: 0; }
.td-author__name { font-weight: 700; font-size: 16px; margin-bottom: 4px; color: var(--color-ink); }
.td-author__bio { font-size: 14px; color: var(--color-ink-muted); line-height: 1.6; margin-bottom: 10px; }
.td-author__link { font-size: 14px; font-weight: 600; color: var(--color-corail); }

/* ============ BLOC 11 : À LIRE AUSSI ============ */
.td-related { max-width: var(--wrap-wide); margin: 0 auto; padding: 56px 24px 80px; }
.td-related > h2 { font-family: var(--font-heading); font-size: 26px; font-weight: 600; margin-bottom: 24px; color: var(--color-ink); }

/* ============ BLOC 12 : NEWSLETTER ============ */
.td-newsletter { max-width: var(--wrap-wide); margin: 0 auto; padding: 64px 24px 80px; }
.td-newsletter__panel {
  background: var(--gradient-newsletter); border-radius: 24px; padding: 48px 40px;
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 16px;
}
.td-newsletter__panel h2 { font-family: var(--font-heading); font-size: clamp(24px, 4vw, 32px); font-weight: 600; color: #fff; max-width: 560px; }
.td-newsletter__panel p { font-size: 16px; color: rgba(255,255,255,0.92); max-width: 480px; line-height: 1.6; }
.td-newsletter__form { display: flex; gap: 10px; margin-top: 8px; width: 100%; max-width: 420px; flex-wrap: wrap; justify-content: center; }
.td-newsletter__form input { flex: 1; min-width: 220px; padding: 14px 18px; border-radius: var(--radius-pill); border: none; font-size: 15px; color: var(--color-ink); }
.td-newsletter__form button { padding: 14px 24px; background: var(--color-ink); color: #fff; font-weight: 600; border-radius: var(--radius-pill); font-size: 15px; white-space: nowrap; border: none; cursor: pointer; }

/* ============ BLOC 13 : FIL D'ARIANE ============ */
.td-breadcrumb { max-width: var(--wrap-wide); margin: 0 auto; padding: 20px 24px 0; }
.td-breadcrumb ol { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--color-ink-muted); }
.td-breadcrumb li { display: flex; align-items: center; gap: 8px; }
.td-breadcrumb a { color: var(--color-ink-muted); }
.td-breadcrumb [aria-current="page"] { color: var(--color-ink); font-weight: 600; }
.td-breadcrumb .sep { color: var(--color-ink-muted); }

/* ============ À PROPOS ============ */
.td-about { max-width: 760px; margin: 0 auto; padding: 40px 24px 80px; }
.td-about h1 { font-family: var(--font-heading); font-size: clamp(30px, 5vw, 42px); font-weight: 600; margin-bottom: 20px; color: var(--color-ink); }
.td-about__lead { font-size: 18px; line-height: 1.65; color: var(--color-ink); margin-bottom: 28px; }
.td-about h2 { font-family: var(--font-heading); font-size: 24px; font-weight: 600; margin: 32px 0 14px; color: var(--color-ink); }
.td-about p { font-size: 16px; line-height: 1.7; color: var(--color-ink); margin-bottom: 12px; }
.td-trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 32px 0; }
.td-stat { padding: 20px; border-radius: var(--radius-md); }
.td-stat__num { font-family: var(--font-heading); font-size: 28px; font-weight: 600; color: var(--color-corail); margin-bottom: 6px; }
.td-stat__label { font-size: 14px; color: var(--color-ink-muted); }

/* ============ BLOC 14 : PIED DE PAGE ============ */
.td-footer { background: var(--gradient-footer-wash), var(--color-bg); border-top: 1px solid var(--color-border); margin-top: 64px; }
.td-footer__inner { max-width: var(--wrap-wide); margin: 0 auto; padding: 56px 24px 32px; display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 32px; }
.td-footer__brand { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.td-footer__brand-mark { width: 20px; height: 20px; background: var(--gradient-cta); border-radius: 5px; transform: rotate(45deg); display: inline-block; }
.td-footer__brand-text { font-family: var(--font-heading); font-weight: 600; font-size: 19px; color: var(--color-ink); }
.td-footer__tagline { font-size: 14px; line-height: 1.6; color: var(--color-ink-muted); max-width: 280px; }
.td-footer__col-title { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-ink-muted); margin-bottom: 16px; }
.td-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.td-footer__col a { font-size: 14px; color: var(--color-ink); }
.td-footer__col a:hover { color: var(--color-corail); }
.td-footer__legal { max-width: var(--wrap-wide); margin: 0 auto; padding: 20px 24px 32px; border-top: 1px solid var(--color-border); font-size: 13px; color: var(--color-ink-muted); }

/* Titre masqué accessible */
.td-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ============ RESPONSIVE (breakpoint maquette : 900px) ============ */
@media (min-width: 900px) {
  .td-hero__card { grid-template-columns: 1.1fr 1fr; align-items: center; }
}
@media (max-width: 899px) {
  .td-grid-3 { grid-template-columns: 1fr; }
  .td-article-layout { grid-template-columns: 1fr; }
  .td-toc { position: static; }
  .td-footer__inner { grid-template-columns: 1fr 1fr; }
  .td-trust-grid { grid-template-columns: 1fr; }
  .td-pillar-hero { grid-template-columns: 1fr; }
  .td-nav { display: none; }
  .td-search { display: none; }
  .td-burger { display: flex; }
}
