/* ──────────────────────────────────────────────
   LMG Ads — House ad / cross-promo display
   Magazine-register: clean, editorial, not banner-ad.
   Accent colour inherits from site CSS custom property.
   ────────────────────────────────────────────── */

.lmg-ad-wrap {
    width: 100%;
    margin: 40px 0;
    border: 1px solid #E8E8E2;
    border-radius: 2px;
    overflow: hidden;
    background: #FAFAF7;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    /* Avoid drop cap bleeding onto the ad */
    clear: both;
}

/* "Annonce" label strip */
.lmg-ad-label {
    padding: 4px 14px;
    border-bottom: 1px solid #E8E8E2;
    font-family: 'Inter', sans-serif;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #AAAAAA;
    background: #F4F4F0;
    text-align: right;
}

/* Flex row: image left, body right */
.lmg-ad-link {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    text-decoration: none !important;
    color: inherit !important;
    gap: 0;
}

/* Image panel */
.lmg-ad-img-wrap {
    flex: 0 0 48%;
    max-width: 48%;
    overflow: hidden;
    max-height: 220px;
}

.lmg-ad-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

.lmg-ad-link:hover .lmg-ad-img {
    transform: scale(1.04);
}

/* Image-only ad (no body text) */
.lmg-ad-link:not(:has(.lmg-ad-body)) .lmg-ad-img-wrap {
    flex: 0 0 100%;
    max-width: 100%;
}
.lmg-ad-link:not(:has(.lmg-ad-body)) .lmg-ad-img {
    height: auto;
    max-height: 300px;
}

/* Text body panel */
.lmg-ad-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px 28px;
}

.lmg-ad-headline {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.25;
    color: #252528;
    margin-bottom: 10px;
}

.lmg-ad-sub {
    font-size: 13px;
    line-height: 1.55;
    color: #555560;
    margin-bottom: 18px;
}

.lmg-ad-cta {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    /* Falls back through site accent → LMG gold */
    color: var(--wp--preset--color--accent, #B8956A);
    border-bottom: 1.5px solid currentColor;
    padding-bottom: 2px;
    transition: opacity 0.2s;
}

.lmg-ad-link:hover .lmg-ad-cta {
    opacity: 0.75;
}

/* ── Mobile ────────────────────────────────── */
@media (max-width: 640px) {
    .lmg-ad-link {
        flex-direction: column;
    }
    .lmg-ad-img-wrap {
        flex: 0 0 auto;
        max-width: 100%;
        width: 100%;
    }
    .lmg-ad-img {
        height: 180px;
    }
    .lmg-ad-body {
        padding: 18px 20px;
    }
    .lmg-ad-headline {
        font-size: 17px;
    }
    .lmg-ad-sub {
        margin-bottom: 14px;
    }
}

/* ── In sidebar (narrower) ─────────────────── */
.widget .lmg-ad-wrap,
.wp-block-widget-area .lmg-ad-wrap {
    margin: 20px 0;
}
.widget .lmg-ad-link,
.wp-block-widget-area .lmg-ad-link {
    flex-direction: column;
}
.widget .lmg-ad-img-wrap,
.wp-block-widget-area .lmg-ad-img-wrap {
    flex: 0 0 auto;
    max-width: 100%;
    width: 100%;
}
.widget .lmg-ad-img,
.wp-block-widget-area .lmg-ad-img {
    height: 150px;
}
.widget .lmg-ad-body,
.wp-block-widget-area .lmg-ad-body {
    padding: 16px 18px;
}
.widget .lmg-ad-headline,
.wp-block-widget-area .lmg-ad-headline {
    font-size: 15px;
}
