/* Publicités (gérées dans jdm-admin) : encadré teinté et ombre pour se détacher du contenu éditorial. Chargé après public.css. */
.lead-advertisement, .sidebar-advertisement, .home-top-advertisement {
    padding: 12px 12px 14px; background: #eef4f8; border: 1px solid #c9d8e4;
    border-radius: 8px; box-shadow: 0 6px 22px rgba(16, 35, 61, .10);
}
.lead-advertisement > small, .sidebar-advertisement > small, .home-top-advertisement > small {
    display: inline-block; margin-bottom: 8px; padding: 2px 8px; border-radius: 4px;
    background: #10233d; color: #fff; font-weight: 700;
}
.lead-advertisement img, .sidebar-advertisement img, .home-top-advertisement img {
    border-radius: 4px; box-shadow: 0 1px 4px rgba(16, 35, 61, .15); transition: transform .2s, box-shadow .2s;
}
.lead-advertisement a:hover img, .sidebar-advertisement a:hover img, .home-top-advertisement a:hover img {
    transform: translateY(-2px); box-shadow: 0 8px 20px rgba(16, 35, 61, .2);
}
/* Emplacement vide (« Espace publicitaire ») : pas d'encadré, le pointillé suffit. */
.lead-advertisement:has(.ad-placeholder), .sidebar-advertisement:has(.ad-placeholder) { padding: 0; background: none; border: 0; box-shadow: none; }
.lead-advertisement:has(.ad-placeholder) > small, .sidebar-advertisement:has(.ad-placeholder) > small { display: block; padding: 0; background: none; color: var(--muted); font-weight: 400; }
