.intro-instructor__media {
    width: 20rem;
    height: 24rem;
}

.intro-instructor__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}



.passage-chapter__visual--glow:hover { transform: scale(1.05); transition: transform .2s ease; }

.passage-chapter__prompt--glow:hover { transform: scale(1.05); transition: transform .2s ease; }

.content-heading-gap {
    margin-bottom: 2rem;
}

.content-img-compact {
    display: block;
    width: 100%;
    height: 12rem;
    min-height: 12rem;
    flex-shrink: 0;
    object-fit: cover;
}
@media (min-width: 768px) {
    .content-img-compact {
        height: 14rem;
        min-height: 14rem;
    }
}

.content-prose__diamond {
    transform: rotate(45deg);
}

/* content companion — hairline width for BS decor */
.content-companion__hair {
    width: 3rem;
}

/* numeric index column width on small screens */
.content-companion__index {
    min-width: 0;
}

.content-companion__index-digit {
    font-variant-numeric: tabular-nums;
}

.masonry-grid__card--hover:hover {
    transform: scale(1.05);
}

.masonry-grid__media--xl { height: 20rem; }
.masonry-grid__media--lg { height: 16rem; }
.masonry-grid__media--md { height: 18rem; }
.masonry-grid__media--sm { height: 15rem; }

.masonry-grid__img--zoom {
    transition: transform 0.5s ease;
}
.masonry-grid__card:hover .masonry-grid__img--zoom {
    transform: scale(1.1);
}

.masonry-grid__overlay--fade {
    opacity: 0;
    transition: opacity 0.3s ease;
}
.masonry-grid__card:hover .masonry-grid__overlay--fade {
    opacity: 1;
}

.masonry-grid__badge--fade {
    opacity: 0;
    transition: opacity 0.3s ease;
}
.masonry-grid__card:hover .masonry-grid__badge--fade {
    opacity: 1;
}

.masonry-grid__panel--slide {
    transform: translateY(100%);
    transition: transform 0.3s ease;
}
.masonry-grid__card:hover .masonry-grid__panel--slide {
    transform: translateY(0);
}

.content-grid-gap {
    gap: 2rem;
}

.content-heading-gap {
    margin-bottom: 2rem;
}

.content-section-pad {
    padding-top: 6rem;
    padding-bottom: 6rem;
}

.content-img-grows {
    display: block;
    width: 100%;
    height: 16rem;
    min-height: 16rem;
    flex-shrink: 0;
    object-fit: cover;
}
@media (min-width: 992px) {
    .content-img-grows {
        height: 20rem;
        min-height: 20rem;
    }
}

.content-report-leaf__toggle {
    appearance: none;
    -webkit-appearance: none;
    font: inherit;
    cursor: pointer;
    outline-offset: -0.125rem;
}

.content-report-leaf__glyph {
    transition: transform 180ms ease;
}

.content-report-leaf__toggle.is-open .content-report-leaf__glyph {
    transform: rotate(45deg);
}

.content-report-leaf__orb {
    width: 10rem;
    height: 10rem;
    filter: blur(4rem);
}

.content-flex-min {
    min-width: 0;
}

