/* ===================================
   EDITORIAL SECTIONS
   =================================== */

.editorial {
    padding: 80px 0;
    overflow: visible;
}

.editorial-block {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 56px;
    align-items: start;
    overflow: visible;
}

/* Text right layout (text on right, image on left) */
.editorial-text_right .editorial-block {
    grid-template-columns: 1fr 2fr;
}

.editorial-text_right .editorial-side {
    grid-column: 1;
    grid-row: 1;
}

.editorial-text_right .editorial-body {
    grid-column: 2;
    grid-row: 1;
}

/* Text left layout (text on left, image on right) */
.editorial-text_left .editorial-block {
    grid-template-columns: 2fr 1fr;
}

.editorial-text_left .editorial-side {
    grid-column: 2;
    grid-row: 1;
}

.editorial-text_left .editorial-body {
    grid-column: 1;
    grid-row: 1;
}

.editorial-side {
    position: sticky;
    top: 120px;
    text-align: center;
    height: fit-content;
}

.editorial-ornament {
    font-family: 'Cinzel', serif;
    font-style: italic;
    font-size: 64px;
    color: var(--gold);
    text-shadow: 0 0 24px rgba(212, 175, 55, 0.35);
    margin-bottom: 16px;
    line-height: 1;
}

.editorial-side .eyebrow {
    justify-content: center;
}

.editorial-body h2 {
    font-family: 'Cinzel', serif;
    font-size: clamp(28px, 3.6vw, 42px);
    font-weight: 500;
    margin-bottom: 26px;
    background: linear-gradient(180deg, #fff 0%, var(--gold-bright) 60%, var(--gold) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    letter-spacing: 0.015em;
    line-height: 1.1;
}

.editorial-body p {
    font-family: 'Cormorant Garamond', serif;
    font-size: 19px;
    color: var(--text-primary);
    line-height: 1.75;
    margin-bottom: 18px;
    font-weight: 400;
}

.editorial-body p strong {
    font-weight: 500;
    color: var(--gold-bright);
    font-style: italic;
    font-size: 20px;
}

.editorial-body p a {
    color: var(--gold-bright);
    text-decoration: none;
    border-bottom: 1px solid var(--line);
    transition: color 0.2s, border-color 0.2s;
}

.editorial-body p a:hover {
    color: var(--gold);
    border-bottom-color: var(--gold-bright);
}

.editorial-body p:last-child {
    margin-bottom: 0;
}

.editorial-pull {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 22px;
    color: var(--gold-bright);
    line-height: 1.5;
    margin: 24px 0;
    padding-left: 22px;
    border-left: 2px solid var(--line);
}

/* Ensure the LazyBlock wrapper doesn't interfere with sticky positioning */
.wp-block-lazyblock-new-design-text-block-text-left-or-text-right,
.wp-block-lazyblock-new-design-text-block-text-left-or-text-right > div {
    overflow: visible !important;
}

@media (max-width: 900px) {

    .editorial-block,
    .editorial-text_right .editorial-block,
    .editorial-text_left .editorial-block {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .editorial-text_right .editorial-side,
    .editorial-text_right .editorial-body,
    .editorial-text_left .editorial-side,
    .editorial-text_left .editorial-body {
        grid-column: 1;
        grid-row: auto;
    }

    .editorial-side {
        position: static;
        height: auto;
    }

    .editorial-ornament {
        font-size: 48px;
    }
}