/* MJM Quote Feature Block - Front-end & Editor Styles */

.mjm-quote-feature {
    width: calc(100vw - clamp(3rem, 6vw, 4rem));
    max-width: calc(100vw - clamp(3rem, 6vw, 4rem));
    position: relative;
    margin: clamp(1.5rem, 3vw, 2rem) calc(50% - 50vw + clamp(1.5rem, 3vw, 2rem));
    padding: clamp(1.8rem, 1.8vw, 2rem);
    box-sizing: border-box;
    color: #000;
}

.mjm-quote-feature__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    gap: clamp(2rem, 3vw, 3rem);
    align-items: start;
}

.mjm-quote-feature--image-right .mjm-quote-feature__inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
}

.mjm-quote-feature__image-wrap {
    width: 100%;
    aspect-ratio: 1.28 / 1;
    overflow: hidden;
    background-color: rgba(255, 255, 255, 0.18);
}

.mjm-quote-feature__image-wrap--empty {
    min-height: clamp(16rem, 33vw, 38rem);
}

.mjm-quote-feature__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mjm-quote-feature__content {
    min-width: 0;
}

.mjm-quote-feature__description {
    margin: 0;
    font-family: var(--mjm-quote-feature-description-font-family, "KF Zuka Medium", "Helvetica Neue", Helvetica, Arial, sans-serif);
    font-size: var(--mjm-quote-feature-description-font-size, clamp(1.2rem, 1.2vw, 1.5rem));
    line-height: var(--mjm-quote-feature-description-line-height, 1.2);
    letter-spacing: var(--tracking-tight);
    font-weight: var(--mjm-quote-feature-description-font-weight, normal);
    color: #000;
}

.mjm-quote-feature__source {
    margin: 1.0rem 0 0;
    font-family: var(--mjm-quote-feature-source-font-family, "KF Zuka Medium", "Helvetica Neue", Helvetica, Arial, sans-serif);
    font-size: var(--mjm-quote-feature-source-font-size, clamp(0.7rem, 1.1vw, 1.25rem));
    line-height: var(--mjm-quote-feature-source-line-height, 1.2);
    letter-spacing: var(--tracking-tight);
    font-weight: var(--mjm-quote-feature-source-font-weight, normal);
    color: #000;
}

.mjm-quote-feature__description p,
.mjm-quote-feature__description ul,
.mjm-quote-feature__description ol,
.mjm-quote-feature__source p,
.mjm-quote-feature__source ul,
.mjm-quote-feature__source ol {
    margin: 0 0 0.85rem;
}

.mjm-quote-feature__description > :last-child,
.mjm-quote-feature__source > :last-child {
    margin-bottom: 0;
}

@media (max-width: 900px) {
    .mjm-quote-feature__inner,
    .mjm-quote-feature--image-right .mjm-quote-feature__inner {
        grid-template-columns: 1fr;
    }

    .mjm-quote-feature--image-right .mjm-quote-feature__image-wrap {
        order: -1;
    }
}

@media (max-width: 480px) {
    .mjm-quote-feature {
        width: calc(100vw - 2rem);
        max-width: calc(100vw - 2rem);
        margin-right: calc(50% - 50vw + 1rem);
        margin-left: calc(50% - 50vw + 1rem);
        padding: 1.25rem;
    }
}
