.frame-scroll-container { -webkit-overflow-scrolling: touch; }

/* BS (прев’ю + експорт): картки ~вдвічі вужчі за w-72; TW без змін */
.about-frame-strip--bs .frame-scroll-container > li:not([aria-hidden="true"]),
#section-preview-root.section-preview--bootstrap .frame-scroll-container > li:not([aria-hidden="true"]),
[data-preview-framework="bootstrap"] .frame-scroll-container > li:not([aria-hidden="true"]) {
    flex: 0 0 16rem !important;
    width: 16rem !important;
    max-width: min(16rem, 85vw) !important;
}

.frame-sq-12 { width: 3rem; height: 3rem; flex-shrink: 0; }

.frame-card-hover {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.frame-card-hover:hover {
    transform: translateY(-0.25rem);
    box-shadow: var(--bs-box-shadow);
}

.frame-icon-hover {
    transition: transform 0.2s ease;
}

.frame-card-hover:hover .frame-icon-hover {
    transform: scale(1.05);
}

.frame-title-hover {
    transition: color 0.2s ease;
}

.frame-card-hover:hover .frame-title-hover {
    color: var(--bs-primary);
}

/* Bootstrap: явный gap между карточками (row + row-cols часто без горизонтального gutter) */
.values-icon-grid__bs-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}

.values-icon-grid__subtitle {
    max-width: 42rem;
}

.values-icon-grid__thumb {
    width: 4rem;
    height: 4rem;
}

/* Совпадает с Tailwind max-w-4xl (56rem) для Bootstrap-ветки */
.border-rail-list__shell {
    max-width: 56rem;
}

.border-rail-list__portrait {
    width: 7rem;
    height: 7rem;
}

@media (min-width: 768px) {
    .border-rail-list__portrait {
        width: 8rem;
        height: 8rem;
    }
}

.border-rail-list__min-shrink {
  min-width: 0;
}

@keyframes marquee-tabs-timeline__marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.marquee-tabs-timeline__marquee-track {
    overflow: hidden;
}

.marquee-tabs-timeline__marquee-inner {
    animation: marquee-tabs-timeline__marquee 18s linear infinite;
    display: inline-flex;
}

.marquee-tabs-timeline__panel--hidden {
    display: none !important;
}

@keyframes marquee-tabs-timeline__panel-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.marquee-tabs-timeline__panel:not(.marquee-tabs-timeline__panel--hidden) {
    animation: marquee-tabs-timeline__panel-in 0.3s ease forwards;
}

.marquee-tabs-timeline__top-accent {
    height: 4px;
}

.marquee-tabs-timeline__icon-size {
    width: 4rem;
    height: 4rem;
}

.marquee-tabs-timeline__min-shrink {
  min-width: 0;
}

