/* La Vie en Rose — page-specific rules on top of kw.css */

/* Flipbook reader (dflip draws inside #flipbook-container) */
.lv-reader {
    margin: 32px 0 0;
    padding: 12px 0;
    background: var(--se-stone);
}
.lv-reader #flipbook-container { background: transparent; }
.lv-reader .df-container { background: transparent !important; }

/* Current issue: cover beside its description */
.lv-issue { display: grid; gap: 28px; }
.lv-issue__cover {
    width: min(72%, 300px);
    margin: 0 auto;
    overflow: hidden;
    border-radius: 4px;
    background: var(--se-stone);
    box-shadow: 0 18px 40px -24px rgba(60, 40, 25, .45);
}
.lv-issue__cover img { width: 100%; height: auto; }
.lv-issue__text { text-align: center; }
.lv-issue__text .se-section__title { margin-top: 4px; }
.lv-issue__desc {
    margin-top: 18px;
    font-family: var(--se-serif);
    font-size: 19px;
    font-style: normal;
    line-height: 1.5;
    color: var(--se-ink-soft);
}
.lv-issue__desc p { margin-bottom: .4em; }
.lv-issue__actions {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;
    margin-top: 26px;
}

/* About the magazine: centred reading column */
.lv-about { text-align: center; }
.lv-about .se-section__head::after {
    content: '';
    display: block;
    width: 36px; height: 1px;
    margin: 20px auto 0;
    background: var(--se-accent);
}
.lv-about__body {
    max-width: 34em;
    margin: 0 auto;
    font-family: var(--se-serif);
    font-size: 19px;
    line-height: 1.55;
}
.lv-about__body p { margin-bottom: .6em; }

/* Past issues */
.lv-past__card .se-card__meta { margin-top: 14px; letter-spacing: .1em; text-transform: uppercase; font-size: 10px; }
.lv-past__card .se-card__title { margin-top: 4px; }
.lv-past__links { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 10px; }

@media (min-width: 768px) {
    .lv-reader { margin: 48px var(--se-gutter) 0; padding: 24px 0; border-radius: 4px; }
    .lv-issue {
        grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
        align-items: center;
        gap: 56px;
        max-width: 1040px;
        margin: 0 auto;
    }
    .lv-issue__cover { width: 100%; }
    .lv-issue__text { text-align: left; }
    .lv-issue__actions { justify-content: flex-start; }
    .lv-issue__desc { font-size: 21px; }
    .lv-about__body { font-size: 21px; }
}

@media (min-width: 1100px) {
    .lv-reader { max-width: 1320px; margin-left: auto; margin-right: auto; }
    .lv-about__body { font-size: 23px; }
}
