/* ============================================
   EURONEST — Blog (articles + listing)
   Mise en forme du corps d'article (prose)
   Palette : navy #1D2D40 · teal #19C6B7 · gray
   ============================================ */

/* --- Fil d'Ariane --- */
.blog-breadcrumb { font-size: .8125rem; color: #7A7A7A; }
.blog-breadcrumb a { color: #7A7A7A; text-decoration: none; transition: color .2s; }
.blog-breadcrumb a:hover { color: #19C6B7; }
.blog-breadcrumb span.sep { margin: 0 .4rem; color: #CBD2DA; }

/* --- Corps d'article --- */
.article-body { color: #3F3F3F; font-size: 1.0625rem; line-height: 1.75; }
.article-body > *:first-child { margin-top: 0; }

.article-body h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    color: #1D2D40;
    font-size: 1.6rem;
    line-height: 1.25;
    margin: 2.5rem 0 1rem;
    scroll-margin-top: 6rem;
}
.article-body h3 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    color: #1D2D40;
    font-size: 1.25rem;
    margin: 1.9rem 0 .75rem;
}
.article-body p { margin: 0 0 1.15rem; }
.article-body a {
    color: #14A89B;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}
.article-body a:hover { color: #19C6B7; }
.article-body strong { color: #1D2D40; font-weight: 600; }
.article-body em { font-style: italic; }

.article-body ul, .article-body ol { margin: 0 0 1.25rem; padding-left: 1.4rem; }
.article-body li { margin-bottom: .5rem; padding-left: .25rem; }
.article-body ul li::marker { color: #19C6B7; }
.article-body ol li::marker { color: #19C6B7; font-weight: 600; }

.article-body blockquote {
    margin: 1.75rem 0;
    padding: 1rem 1.25rem;
    border-left: 4px solid #19C6B7;
    background: #E6FAF8;
    border-radius: 0 .5rem .5rem 0;
    color: #1D2D40;
    font-style: italic;
}
.article-body blockquote p:last-child { margin-bottom: 0; }

.article-body hr { border: 0; border-top: 1px solid #ECECEC; margin: 2.25rem 0; }

.article-body img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: .75rem;
    margin: 1.75rem 0 .5rem;
}
/* Légende : <em> seul juste après une image */
.article-body img + br + em,
.article-body p > img + br + em { color: #7A7A7A; font-size: .875rem; }

/* --- Tableaux --- */
.article-body .table-wrap { overflow-x: auto; margin: 1.75rem 0; border-radius: .75rem; border: 1px solid #ECECEC; }
.article-body table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.article-body thead th {
    background: #1D2D40; color: #fff;
    font-family: 'Poppins', sans-serif; font-weight: 600;
    text-align: left; padding: .75rem 1rem; white-space: nowrap;
}
.article-body tbody td { padding: .7rem 1rem; border-top: 1px solid #ECECEC; vertical-align: top; }
.article-body tbody tr:nth-child(even) { background: #F8FAFB; }

/* --- Cartes du listing --- */
.blog-card { transition: transform .25s ease, box-shadow .25s ease; }
.blog-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -16px rgba(29,45,64,.25); }
.blog-card .thumb { aspect-ratio: 16 / 10; object-fit: cover; width: 100%; }
.line-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
