/**
 * Article Content Styles
 * Cible #article-content .elementor-widget-container
 * Exclut les sections produits (sidebar-products, post-related-products-section)
 *
 * Structure DOM possible :
 * - Sans produits sidebar : .elementor-widget-container > h2, p, ul…
 * - Avec produits sidebar : .elementor-widget-container > .post-content-with-sidebar > .post-main-content > h2, p, ul…
 * - Produits bas de page : .elementor-widget-container > .post-related-products-section
 */

/* ── H2 ── */
#article-content .elementor-widget-container > h2,
#article-content .post-main-content > h2 {
    font-size: 26px;
    font-weight: 700;
    color: #0B3954;
    text-transform: none;
    margin: 48px 0 20px;
    padding-left: 16px;
    border-left: 4px solid #e3001a;
    line-height: 1.3;
}

#article-content .elementor-widget-container > h2:first-child,
#article-content .post-main-content > h2:first-child {
    margin-top: 0;
}

/* Pas de border-left si le h2 contient une image */
#article-content .elementor-widget-container > h2:has(img),
#article-content .post-main-content > h2:has(img) {
    border-left: none;
    padding-left: 0;
}

/* ── H3 ── */
#article-content .elementor-widget-container > h3,
#article-content .post-main-content > h3 {
    font-size: 22px;
    font-weight: 700;
    color: #0B3954;
    text-transform: none;
    margin: 40px 0 16px;
    line-height: 1.4;
}

#article-content .elementor-widget-container > h3:first-child,
#article-content .post-main-content > h3:first-child {
    margin-top: 0;
}

/* ── Lists ── */
#article-content .elementor-widget-container > ul,
#article-content .post-main-content > ul,
#article-content .post-main-content ul {
    list-style: none;
    padding-left: 1.2em;
}

#article-content .elementor-widget-container > ul li,
#article-content .post-main-content li {
    margin-bottom: 10px;
    line-height: 1.7;
    position: relative;
    padding-left: 0.4em;
}

#article-content .elementor-widget-container > ul li::before,
#article-content .post-main-content li::before {
    content: '';
    position: absolute;
    left: -1em;
    top: 0.65em;
    width: 7px;
    height: 7px;
    background: #e3001a;
    border-radius: 50%;
}

#article-content .elementor-widget-container > ol li,
#article-content .post-main-content > ol li {
    margin-bottom: 10px;
    line-height: 1.7;
}

/* ── Strong / bold ── */
#article-content .elementor-widget-container > p strong,
#article-content .elementor-widget-container > ul li strong,
#article-content .elementor-widget-container > ol li strong,
#article-content .post-main-content p strong,
#article-content .post-main-content li strong {
    color: #333;
    font-weight: 700;
}

/* ── Links ── */
#article-content .elementor-widget-container > p a,
#article-content .elementor-widget-container > ul a,
#article-content .elementor-widget-container > ol a,
#article-content .post-main-content a {
    color: #333;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.2s ease;
}

#article-content .elementor-widget-container > p a:hover,
#article-content .elementor-widget-container > ul a:hover,
#article-content .elementor-widget-container > ol a:hover,
#article-content .post-main-content a:hover {
    color: #e3001a;
}

#article-content .elementor-widget-container > p a strong,
#article-content .post-main-content a strong {
    color: inherit;
}

/* ── Images & captions ── */
#article-content .elementor-widget-container img.alignleft,
#article-content .elementor-widget-container img.alignright,
#article-content .post-main-content img.alignleft,
#article-content .post-main-content img.alignright {
    float: none;
    display: block;
    margin: 24px auto;
    max-width: 100%;
    height: auto;
}

#article-content .elementor-widget-container .wp-caption.alignleft,
#article-content .elementor-widget-container .wp-caption.alignright,
#article-content .post-main-content .wp-caption.alignleft,
#article-content .post-main-content .wp-caption.alignright {
    float: none;
    display: block;
    margin: 24px auto;
    max-width: 100%;
    width: auto !important;
    text-align: center;
}

#article-content .elementor-widget-container .wp-caption img,
#article-content .post-main-content .wp-caption img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}

#article-content .elementor-widget-container .wp-caption-text,
#article-content .post-main-content .wp-caption-text {
    font-size: 14px;
    color: #666;
    margin-top: 8px;
    font-style: italic;
    text-align: center;
}

/* ── Exclure les sections produits ── */
#article-content .sidebar-products a,
#article-content .post-related-products-section a {
    text-decoration: none;
    color: inherit;
}

#article-content .sidebar-products li,
#article-content .post-related-products-section li {
    position: static;
    padding-left: 0;
    margin-bottom: 0;
    line-height: normal;
}

#article-content .sidebar-products li::before,
#article-content .post-related-products-section li::before {
    display: none;
}

#article-content .sidebar-products ul,
#article-content .post-related-products-section ul {
    list-style: none;
    padding-left: 0;
}

#article-content .sidebar-products h3,
#article-content .post-related-products-section h3 {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    text-transform: inherit;
    margin: 0;
    padding-left: 0;
}

#article-content .sidebar-products h2,
#article-content .post-related-products-section h2 {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    margin: 0;
    padding-left: 0;
    border-left: none;
}
