/* min-width: 0 — довгий текст/флекс у колонці не роздуває рядок */
.content-col-grow {
    min-width: 0;
}

.content-stack-col--text {
    overflow-wrap: anywhere;
}

.content-stack-col--text > :first-child {
    width: 100%;
    max-width: 65ch;
    margin-inline: auto;
}

/* gap лише для Tailwind (grid). У Bootstrap — відступи через g-* у component (row-cols + g-3), без CSS gap на .row */
.content-grid-gap:not(.row) {
    gap: 1rem;
}

.content-full-frame {
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

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

/* Третина рядка: стабільна висота прев’ю, без height:100% від сусіднього тексту */
.content-img-fullheight {
    display: block;
    width: 100%;
    max-width: min(100%, 28rem);
    margin-inline: auto;
    min-width: 0;
    aspect-ratio: 3 / 4;
    max-height: 28rem;
    height: auto;
    flex-shrink: 1;
    object-fit: cover;
    object-position: center;
}

/* FAQ v3 — JS visibility hook */
.answers-solver-solution-tucked {
    display: none;
}

.answers-solver__icon-circle {
    width: 2rem;
    height: 2rem;
}

.answers-solver__piece--shift:hover { transform: scale(1.05); transition: transform .2s ease; }

.tips-cards__card {
    max-width: 24rem;
}

/* glossary film — strip scrollport: min-width 0 + width 100% so overflow-x shows next card; mobile widths */
.glossary-film__mask {
    max-width: 100%;
    min-width: 0;
}

.glossary-film__strip {
    display: flex;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
    scroll-snap-type: x mandatory;
}

.glossary-film__cell {
    scroll-snap-align: center;
}

@media (max-width: 767.98px) {
    .glossary-film__strip {
        padding-inline-start: 0.5rem;
        padding-inline-end: max(0.75rem, 5vw);
        scroll-padding-inline-end: max(0.75rem, 5vw);
    }

    .glossary-film__cell {
        scroll-snap-align: start;
        flex: 0 0 min(20rem, 82vw);
        width: min(20rem, 82vw);
        max-width: min(20rem, 82vw);
    }
}

@media (min-width: 768px) {
    .glossary-film__cell {
        flex: 0 0 20rem;
        width: 20rem;
        max-width: none;
    }
}

