/* ==========================================================================
   PARTIE 1 — Styles d'origine du site (récupérés depuis « CSS additionnel »,
   corrigés : le fragment @import invalide a été retiré)
   ========================================================================== */
.learndash-wrapper .ld-course-navigation .ld-pagination .ld-pages, .learndash-wrapper .ld-course-navigation .ld-pagination .ld-pages a, .learndash-wrapper .ld-course-navigation .ld-pagination .ld-pages span, .learndash-wrapper .ld-course-status.ld-course-status-not-enrolled .ld-course-status-price, .learndash-wrapper .ld-course-status.ld-course-status-not-enrolled .ld-course-status-label, .learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab, .learndash-wrapper .ld-pagination, .learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-title .ld-item-components {
    color: #000 !important;
}
.learndash-wrapper .ld-pagination .ld-pages, .learndash-wrapper #sfwd_lms_mark_complete, .learndash-wrapper .ld-button, .learndash-wrapper .ld-expand-button {
    font-size: 16px !important;
}
.learndash-wrapper .ld-table-list .ld-table-list-items {
  font-size: 16px !important;
}
.learndash-wrapper .ld-topic-title, .learndash-wrapper .ld-lesson-title, .learndash-wrapper .ld-item-title {
    font-size: 16px;
}
h2, .entry-content h2 {
  font-family: Poppins;
}
h1, .entry-content h1 {
  font-family: Poppins;
}
h3, .entry-content h3 {
  font-family: Poppins;
}
.main-header-menu .sub-menu {
  background: #000;
}
.wpforms-container .wpforms-field { position: inherit; }
/* New Styles*/
#learn-press-course-tabs .course-tab-panels .course-tab-panel .course-description p {
  font-weight: 400;
}

/* ==========================================================================
   PARTIE 2 — Refonte du blog LocalHost Academy
   Rouge #ef4130 / Marine #0e1c2e / 'Plus Jakarta Sans'
   ========================================================================== */

/* ---------- Tokens ---------- */
body.blog, body.single-post, body.archive.category, body.archive.tag {
  --la-red: #ef4130;
  --la-red-dark: #d63a2b;
  --la-navy: #0e1c2e;
  --la-grey: #5b6b7f;
  --la-bg: #f6f8fb;
  --la-card-shadow: 0 10px 30px rgba(14, 28, 46, 0.08);
  --la-card-shadow-hover: 0 18px 45px rgba(14, 28, 46, 0.14);
  --la-font: 'Plus Jakarta Sans', Poppins, -apple-system, 'Segoe UI', sans-serif;
}
body.blog, body.archive.category, body.archive.tag { background: var(--la-bg); }

/* ---------- En-tête du blog (injecté par le plugin) ---------- */
.la-blog-header { text-align: center; max-width: 720px; margin: 0 auto 3rem; padding: 2.5rem 1rem 0; }
.la-blog-eyebrow { color: var(--la-red); font-family: var(--la-font); font-weight: 800; text-transform: uppercase; letter-spacing: 0.15em; font-size: 0.8rem; margin: 0 0 0.75rem; }
.la-blog-title { font-family: var(--la-font); color: var(--la-navy); font-size: 2.75rem; font-weight: 800; line-height: 1.1; margin: 0 0 1rem; }
.la-blog-intro { color: var(--la-grey); font-size: 1.05rem; line-height: 1.7; margin: 0; }
body.blog .ast-archive-title-wrapper { display: none; }

/* ---------- Grille d'archive (v1.1 : sélecteurs basés sur le DOM réel) ---------- */
body.blog #primary #main,
body.archive.category #primary #main,
body.archive.tag #primary #main {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.75rem;
}
body.blog #primary #main::before, body.blog #primary #main::after,
body.archive.category #primary #main::before, body.archive.category #primary #main::after,
body.archive.tag #primary #main::before, body.archive.tag #primary #main::after { display: none; }
/* Aplatit un éventuel wrapper intermédiaire (.ast-row…) : les articles
   deviennent des items directs de la grille */
body.blog #primary #main > div,
body.archive.category #primary #main > div,
body.archive.tag #primary #main > div { display: contents; }

/* ---------- Carte article ---------- */
body.blog #primary #main article,
body.archive.category #primary #main article,
body.archive.tag #primary #main article {
  background: #fff; border-radius: 16px; overflow: hidden; box-shadow: var(--la-card-shadow);
  display: flex; flex-direction: column; position: relative; min-width: 0;
  float: none !important; width: auto !important; max-width: none !important;
  margin: 0 !important; padding: 0 !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.blog #primary #main article:hover,
body.archive.category #primary #main article:hover,
body.archive.tag #primary #main article:hover {
  transform: translateY(-6px); box-shadow: var(--la-card-shadow-hover);
}

/* Neutralise les wrappers internes du thème (.blog-layout-1, .post-content) */
body.blog #primary #main article .blog-layout-1,
body.blog #primary #main article .post-content,
body.archive.category #primary #main article .blog-layout-1,
body.archive.category #primary #main article .post-content,
body.archive.tag #primary #main article .blog-layout-1,
body.archive.tag #primary #main article .post-content {
  display: flex; flex-direction: column; flex: 1 1 auto;
  width: 100%; max-width: none; margin: 0; padding: 0; border: 0;
}

/* Image mise en avant + zoom au survol */
body.blog #primary #main article .ast-blog-featured-section,
body.archive.category #primary #main article .ast-blog-featured-section,
body.archive.tag #primary #main article .ast-blog-featured-section {
  overflow: hidden; line-height: 0; flex-shrink: 0;
}
body.blog #primary #main article .ast-blog-featured-section img,
body.archive.category #primary #main article .ast-blog-featured-section img,
body.archive.tag #primary #main article .ast-blog-featured-section img {
  width: 100%; height: 210px; object-fit: cover; display: block;
  transition: transform 0.5s ease;
}
body.blog #primary #main article:hover .ast-blog-featured-section img,
body.archive.category #primary #main article:hover .ast-blog-featured-section img,
body.archive.tag #primary #main article:hover .ast-blog-featured-section img { transform: scale(1.07); }

/* En-tête : titre */
body.blog #primary #main article .entry-header,
body.archive.category #primary #main article .entry-header,
body.archive.tag #primary #main article .entry-header {
  padding: 1.1rem 1.5rem 0; display: flex; flex-direction: column; margin: 0; border: 0;
}
body.blog #primary #main article .entry-title,
body.archive.category #primary #main article .entry-title,
body.archive.tag #primary #main article .entry-title {
  font-family: var(--la-font); font-weight: 700; line-height: 1.4;
  margin: 0; font-size: 1.12rem; padding: 0; border: 0;
}
body.blog #primary #main article .entry-title a,
body.archive.category #primary #main article .entry-title a,
body.archive.tag #primary #main article .entry-title a {
  color: var(--la-navy); text-decoration: none;
}
body.blog #primary #main article:hover .entry-title a,
body.archive.category #primary #main article:hover .entry-title a,
body.archive.tag #primary #main article:hover .entry-title a { color: var(--la-red); }

/* Méta : pastilles catégories en absolu sur l'image ; "/ Par" masqués ; date • auteur */
body.blog #primary #main article .entry-meta,
body.archive.category #primary #main article .entry-meta,
body.archive.tag #primary #main article .entry-meta {
  font-size: 0; margin: 0.55rem 0 0; padding: 0; border: 0;
  display: flex; flex-wrap: wrap; align-items: center; line-height: 1.6;
}
body.blog #primary #main article .entry-meta .cat-links,
body.archive.category #primary #main article .entry-meta .cat-links,
body.archive.tag #primary #main article .entry-meta .cat-links {
  position: absolute; top: 1rem; left: 1rem; z-index: 2;
  display: flex; flex-wrap: wrap; gap: 0.4rem; max-width: calc(100% - 2rem);
}
body.blog #primary #main article .entry-meta .cat-links a,
body.archive.category #primary #main article .entry-meta .cat-links a,
body.archive.tag #primary #main article .entry-meta .cat-links a {
  background: var(--la-red); color: #fff !important;
  font-family: var(--la-font); font-size: 0.7rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.05em;
  padding: 0.35rem 0.8rem; border-radius: 999px; line-height: 1.2; text-decoration: none;
}
body.blog #primary #main article .entry-meta .posted-on,
body.blog #primary #main article .entry-meta .posted-by,
body.archive.category #primary #main article .entry-meta .posted-on,
body.archive.category #primary #main article .entry-meta .posted-by,
body.archive.tag #primary #main article .entry-meta .posted-on,
body.archive.tag #primary #main article .entry-meta .posted-by {
  font-size: 0.82rem; font-family: var(--la-font); color: var(--la-grey); font-weight: 500;
}
body.blog #primary #main article .entry-meta .posted-on,
body.archive.category #primary #main article .entry-meta .posted-on,
body.archive.tag #primary #main article .entry-meta .posted-on { order: -1; }
body.blog #primary #main article .entry-meta .posted-on .updated,
body.archive.category #primary #main article .entry-meta .posted-on .updated,
body.archive.tag #primary #main article .entry-meta .posted-on .updated { display: none; }
body.blog #primary #main article .entry-meta .posted-on::after,
body.archive.category #primary #main article .entry-meta .posted-on::after,
body.archive.tag #primary #main article .entry-meta .posted-on::after {
  content: "\2022"; margin: 0 0.5rem; color: var(--la-red); font-weight: 700;
}
body.blog #primary #main article .entry-meta a[rel="author"],
body.archive.category #primary #main article .entry-meta a[rel="author"],
body.archive.tag #primary #main article .entry-meta a[rel="author"] {
  color: var(--la-grey); font-weight: 600; text-decoration: none;
}
body.blog #primary #main article .entry-meta a[rel="author"]:hover,
body.archive.category #primary #main article .entry-meta a[rel="author"]:hover,
body.archive.tag #primary #main article .entry-meta a[rel="author"]:hover { color: var(--la-red); }

/* Extrait + Lire la suite */
body.blog #primary #main article .entry-content,
body.archive.category #primary #main article .entry-content,
body.archive.tag #primary #main article .entry-content {
  flex: 1 1 auto; display: flex; flex-direction: column;
  padding: 0.7rem 1.5rem 1.5rem; margin: 0; border: 0; width: auto;
  font-size: 0.95rem; color: var(--la-grey); line-height: 1.65;
}
body.blog #primary #main article .entry-content > p:not(.read-more),
body.archive.category #primary #main article .entry-content > p:not(.read-more),
body.archive.tag #primary #main article .entry-content > p:not(.read-more) { margin: 0 0 1rem; }
body.blog #primary #main article .entry-content p.read-more,
body.archive.category #primary #main article .entry-content p.read-more,
body.archive.tag #primary #main article .entry-content p.read-more { margin: auto 0 0; padding-top: 0.5rem; }
body.blog #primary #main article .entry-content p.read-more a,
body.archive.category #primary #main article .entry-content p.read-more a,
body.archive.tag #primary #main article .entry-content p.read-more a {
  font-family: var(--la-font); font-weight: 700; color: var(--la-red);
  text-decoration: none; font-size: 0.95rem;
}
body.blog #primary #main article .entry-content p.read-more a:hover,
body.archive.category #primary #main article .entry-content p.read-more a:hover,
body.archive.tag #primary #main article .entry-content p.read-more a:hover { text-decoration: underline; }

/* Article vedette : le 1er article de la grille (les articles sont dans div.ast-row) */
body.blog #primary #main > article:first-child,
body.blog #primary #main .ast-row > article:first-child { grid-column: 1 / -1; }
body.blog #primary #main > article:first-child .ast-blog-featured-section img,
body.blog #primary #main .ast-row > article:first-child .ast-blog-featured-section img { height: 320px; }
body.blog #primary #main > article:first-child .entry-title,
body.blog #primary #main .ast-row > article:first-child .entry-title { font-size: 1.65rem; }

/* ---------- Pagination v1.4 : nav.navigation.pagination est soeur de #main ---------- */
body.blog .navigation.pagination,
body.archive.category .navigation.pagination,
body.archive.tag .navigation.pagination {
  margin: 3rem 0 1rem !important; text-align: center !important; clear: both;
}
body.blog .navigation.pagination .nav-links .page-numbers.page-numbers,
body.archive.category .navigation.pagination .nav-links .page-numbers.page-numbers,
body.archive.tag .navigation.pagination .nav-links .page-numbers.page-numbers {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  min-width: 44px !important; height: 44px !important; padding: 0 0.9rem !important; margin: 0 0.25rem !important;
  border-radius: 12px !important; background: #fff !important; color: var(--la-navy) !important;
  font-family: var(--la-font) !important; font-weight: 700 !important; font-size: 0.95rem !important;
  box-shadow: var(--la-card-shadow) !important; text-decoration: none !important; border: none !important;
  transition: background 0.25s ease, color 0.25s ease !important;
}
body.blog .navigation.pagination .nav-links .page-numbers.page-numbers.current,
body.archive.category .navigation.pagination .nav-links .page-numbers.page-numbers.current,
body.archive.tag .navigation.pagination .nav-links .page-numbers.page-numbers.current {
  background: var(--la-red) !important; color: #fff !important;
}
body.blog .navigation.pagination .nav-links a.page-numbers.page-numbers:hover,
body.archive.category .navigation.pagination .nav-links a.page-numbers.page-numbers:hover,
body.archive.tag .navigation.pagination .nav-links a.page-numbers.page-numbers:hover {
  background: var(--la-navy) !important; color: #fff !important;
}
body.blog .navigation.pagination .nav-links .page-numbers.page-numbers.dots,
body.archive.category .navigation.pagination .nav-links .page-numbers.page-numbers.dots,
body.archive.tag .navigation.pagination .nav-links .page-numbers.page-numbers.dots {
  background: transparent !important; box-shadow: none !important; min-width: 0 !important; padding: 0 0.25rem !important;
}
/* Boutons prec/suiv : fleche seule (masque le texte anglais) */
body.blog .navigation.pagination .nav-links a.next.page-numbers.page-numbers,
body.archive.category .navigation.pagination .nav-links a.next.page-numbers.page-numbers,
body.archive.tag .navigation.pagination .nav-links a.next.page-numbers.page-numbers,
body.blog .navigation.pagination .nav-links a.prev.page-numbers.page-numbers,
body.archive.category .navigation.pagination .nav-links a.prev.page-numbers.page-numbers,
body.archive.tag .navigation.pagination .nav-links a.prev.page-numbers.page-numbers { font-size: 0 !important; }
body.blog .navigation.pagination .nav-links a.next.page-numbers .ast-right-arrow,
body.archive.category .navigation.pagination .nav-links a.next.page-numbers .ast-right-arrow,
body.archive.tag .navigation.pagination .nav-links a.next.page-numbers .ast-right-arrow,
body.blog .navigation.pagination .nav-links a.prev.page-numbers .ast-left-arrow,
body.archive.category .navigation.pagination .nav-links a.prev.page-numbers .ast-left-arrow,
body.archive.tag .navigation.pagination .nav-links a.prev.page-numbers .ast-left-arrow {
  font-size: 1.1rem !important; line-height: 1 !important;
}

/* ---------- Single : fil d'Ariane ---------- */
.single-post .ast-breadcrumbs { margin: 0 0 1.25rem; font-family: var(--la-font); }
.single-post .ast-breadcrumbs a { color: var(--la-red); text-decoration: none; font-weight: 600; font-size: 0.85rem; }
.single-post .ast-breadcrumbs a:hover { text-decoration: underline; }

/* ---------- Single : largeur de lecture (~780px, renfort du réglage Customizer) ---------- */
.single-post #primary { max-width: 780px; margin: 0 auto; }

/* ---------- Single : titre ---------- */
.single-post h1.entry-title, .single-post article > h1 {
  font-family: var(--la-font); color: var(--la-navy);
  font-size: 2.4rem; font-weight: 800; line-height: 1.2; margin: 0 0 1rem;
}

/* ---------- Single : méta ---------- */
.single-post .entry-meta { font-size: 0; margin: 0 0 1.5rem; line-height: 1.6; }
.single-post .entry-meta .posted-on, .single-post .entry-meta .posted-by,
.single-post .entry-meta .cat-links, .single-post .entry-meta .comments-link {
  font-size: 0.88rem; font-family: var(--la-font); color: var(--la-grey); font-weight: 500;
}
.single-post .entry-meta a { color: var(--la-red); font-weight: 600; text-decoration: none; font-size: 0.88rem; }
.single-post .entry-meta a:hover { text-decoration: underline; }

/* ---------- Single : image héro ---------- */
.single-post .post-thumb-img-content img, .single-post .ast-single-post-featured-section img,
.single-post article > img {
  border-radius: 18px; width: 100%; height: auto; display: block;
  box-shadow: var(--la-card-shadow); margin-bottom: 2rem;
}

/* ---------- Single : typographie du contenu ---------- */
.single-post .entry-content { font-size: 1.05rem; line-height: 1.85; color: #334155; }
.single-post .entry-content p, .single-post article > p { margin-bottom: 1.4rem; }
.single-post article > p { font-size: 1.05rem; line-height: 1.85; color: #334155; }
.single-post .entry-content h2:not(.la-related-title):not(.la-cta-title),
.single-post article > h2:not(.la-related-title):not(.la-cta-title) {
  font-family: var(--la-font); color: var(--la-navy); font-size: 1.55rem; font-weight: 700;
  line-height: 1.35; margin: 2.5rem 0 1rem; padding-left: 0.9rem; border-left: 4px solid var(--la-red);
}
.single-post .entry-content h3:not(.la-card-title), .single-post article > h3:not(.la-card-title) {
  font-family: var(--la-font); color: var(--la-navy); font-size: 1.25rem; font-weight: 700; margin: 2rem 0 0.8rem;
}
.single-post .entry-content h4, .single-post article > h4 {
  font-family: var(--la-font); color: var(--la-navy); font-size: 1.1rem; font-weight: 700; margin: 1.6rem 0 0.6rem;
}
.single-post .entry-content a, .single-post article > p a { color: var(--la-red); font-weight: 600; }
.single-post .entry-content a:hover { text-decoration: underline; }
.single-post .entry-content blockquote, .single-post article > blockquote {
  border-left: 4px solid var(--la-red); background: #fff7f6;
  padding: 1.25rem 1.5rem; border-radius: 0 12px 12px 0; margin: 2rem 0;
  font-style: italic; color: var(--la-navy);
}
.single-post .entry-content blockquote p { margin-bottom: 0.5rem; }
.single-post .entry-content ul, .single-post .entry-content ol,
.single-post article > ul, .single-post article > ol { margin: 0 0 1.4rem 1.2rem; padding: 0; }
.single-post .entry-content li, .single-post article > ul li, .single-post article > ol li { margin-bottom: 0.6rem; }
.single-post .entry-content ul li::marker { color: var(--la-red); }
.single-post .entry-content img { border-radius: 12px; height: auto; }
.single-post .entry-content table, .single-post article > table {
  width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: 0.95rem;
}
.single-post .entry-content table th, .single-post article > table th {
  background: var(--la-navy); color: #fff; padding: 0.8rem 1rem; text-align: left; font-family: var(--la-font);
}
.single-post .entry-content table td, .single-post article > table td { padding: 0.8rem 1rem; border-bottom: 1px solid #e8edf3; }
.single-post .entry-content table tr:nth-child(even) td { background: #f8fafc; }

/* ---------- Single : partage social ---------- */
.single-post .la-share {
  display: flex; align-items: center; flex-wrap: wrap; gap: 1rem;
  margin: 2.5rem 0; padding: 1.25rem 0;
  border-top: 1px solid #e8edf3; border-bottom: 1px solid #e8edf3;
}
.single-post .la-share-label { font-family: var(--la-font); font-weight: 700; color: var(--la-navy); font-size: 1rem; }
.single-post .la-share-buttons { display: flex; gap: 0.6rem; margin-left: auto; }
.single-post .la-share-btn {
  width: 44px; height: 44px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--la-navy); text-decoration: none;
  transition: transform 0.2s ease, background 0.2s ease;
}
.single-post .la-share-btn svg { width: 20px; height: 20px; fill: #fff; display: block; }
.single-post .la-share-btn:hover { background: var(--la-red); transform: translateY(-3px); }

/* ---------- Single : étiquettes ---------- */
.single-post .tag-links { display: block; margin: 0 0 2rem; font-size: 0; }
.single-post .tag-links a {
  display: inline-block; background: #eef2f7; color: var(--la-navy);
  font-family: var(--la-font); padding: 0.45rem 1.1rem; border-radius: 999px;
  font-size: 0.82rem; font-weight: 600; margin: 0 0.4rem 0.5rem 0; text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}
.single-post .tag-links a:hover { background: var(--la-red); color: #fff; }

/* ---------- Single : article précédent / suivant ---------- */
.single-post .post-navigation { margin: 0 0 2.5rem; }
.single-post .post-navigation .nav-links { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.single-post .post-navigation .nav-previous a, .single-post .post-navigation .nav-next a {
  display: block; background: #fff; border-radius: 14px; padding: 1.1rem 1.25rem;
  box-shadow: var(--la-card-shadow); color: var(--la-navy);
  font-family: var(--la-font); font-weight: 600; font-size: 0.95rem; line-height: 1.45;
  text-decoration: none; height: 100%;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.single-post .post-navigation .nav-previous a:hover, .single-post .post-navigation .nav-next a:hover {
  transform: translateY(-3px); box-shadow: var(--la-card-shadow-hover); color: var(--la-red);
}
.single-post .post-navigation .nav-next { text-align: right; }

/* ---------- Single : CTA contact ---------- */
.single-post .la-cta {
  background: linear-gradient(135deg, #0e1c2e 0%, #1b3350 100%);
  border-radius: 20px; padding: 2.5rem;
  display: flex; align-items: center; justify-content: space-between; gap: 2rem;
  margin: 0 0 3rem; position: relative; overflow: hidden;
}
.single-post .la-cta::before { content: ""; position: absolute; top: 0; left: 0; width: 6px; height: 100%; background: var(--la-red); }
.single-post .la-cta-title { color: #fff; font-family: var(--la-font); font-size: 1.6rem; font-weight: 800; margin: 0 0 0.5rem; line-height: 1.25; }
.single-post .la-cta-desc { color: rgba(255,255,255,0.82); margin: 0; font-size: 1rem; line-height: 1.6; }
.single-post .la-cta-btn {
  background: var(--la-red); color: #fff; font-family: var(--la-font); font-weight: 700;
  padding: 1rem 2.25rem; border-radius: 999px; text-decoration: none; white-space: nowrap; flex-shrink: 0;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.single-post .la-cta-btn:hover { background: #fff; color: var(--la-navy); transform: translateY(-2px); }

/* ---------- Single : articles similaires ---------- */
.single-post .la-related { margin: 0 0 3rem; }
.single-post .la-related-title {
  font-family: var(--la-font); color: var(--la-navy); font-size: 1.5rem; font-weight: 800;
  margin: 0 0 1.5rem; padding-bottom: 0.75rem;
  border-bottom: 3px solid var(--la-red); display: inline-block;
}
.single-post .la-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.single-post .la-card {
  background: #fff; border-radius: 16px; overflow: hidden; box-shadow: var(--la-card-shadow);
  display: flex; flex-direction: column; position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.single-post .la-card:hover { transform: translateY(-6px); box-shadow: var(--la-card-shadow-hover); }
.single-post .la-card-media { display: block; overflow: hidden; position: relative; aspect-ratio: 16 / 10; background: #e8edf3; line-height: 0; }
.single-post .la-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.5s ease; }
.single-post .la-card:hover .la-card-media img { transform: scale(1.07); }
.single-post .la-card-badge {
  position: absolute; top: 0.9rem; left: 0.9rem; background: var(--la-red); color: #fff;
  font-family: var(--la-font); font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em;
  padding: 0.35rem 0.8rem; border-radius: 999px; line-height: 1.2;
}
.single-post .la-card-body { padding: 1.25rem 1.4rem 1.4rem; display: flex; flex-direction: column; flex: 1; }
.single-post .la-card-title { font-family: var(--la-font); font-size: 1.02rem; font-weight: 700; line-height: 1.4; margin: 0 0 0.7rem; }
.single-post .la-card-title a { color: var(--la-navy); text-decoration: none; }
.single-post .la-card:hover .la-card-title a { color: var(--la-red); }
.single-post .la-card-meta { margin: auto 0 0; font-size: 0.8rem; color: var(--la-grey); font-family: var(--la-font); font-weight: 500; }
.single-post .la-card-meta-sep { margin: 0 0.4rem; color: var(--la-red); font-weight: 700; }

/* ---------- Single : table des matières (plugin EZ TOC) ---------- */
.single-post #ez-toc-container {
  border: 1px solid #e8edf3; border-radius: 14px; box-shadow: var(--la-card-shadow);
  margin: 2rem 0; padding: 1.25rem 1.5rem; background: #fff;
}
.single-post #ez-toc-container .ez-toc-title { font-family: var(--la-font); color: var(--la-navy); font-weight: 700; }
.single-post #ez-toc-container a { color: var(--la-grey); }
.single-post #ez-toc-container a:hover { color: var(--la-red); }

/* ---------- Reponsive ---------- */
@media (max-width: 1024px) {
  body.blog #primary #main, body.archive.category #primary #main, body.archive.tag #primary #main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .single-post .la-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
  .la-blog-title { font-size: 2rem; }
  .la-blog-header { padding-top: 1.5rem; margin-bottom: 2rem; }
  body.blog #primary #main, body.archive.category #primary #main, body.archive.tag #primary #main { grid-template-columns: 1fr; }
  body.blog #primary #main > article:first-child .ast-blog-featured-section img { height: 220px; }
  body.blog #primary #main > article:first-child .entry-title { font-size: 1.3rem; }
  .single-post h1.entry-title, .single-post article > h1 { font-size: 1.7rem; }
  .single-post .post-navigation .nav-links { grid-template-columns: 1fr; }
  .single-post .la-cta { flex-direction: column; text-align: center; padding: 2rem 1.5rem; }
  .single-post .la-related-grid { grid-template-columns: 1fr; }
  .single-post .la-share-buttons { margin-left: 0; }
}
