/* Сетка карточек + gap (fallback для bs; совпадает с tw gap-lg ≈ 1.5rem) */
.orbit-showcase-grid {
    display: grid;
    width: 100%;
    gap: 1.5rem;
    grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 768px) {
    .orbit-showcase-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.philosophy-icons__circle {
    width: 6rem;
    min-width: 6rem;
    max-width: 6rem;
    height: 6rem;
    min-height: 6rem;
    max-height: 6rem;
    padding: 0.75rem;
    aspect-ratio: 1;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.philosophy-bg__img {
    object-fit: cover;
}

.modern-vertical-timeline__line {
    width: 4px;
    left: 50%;
    transform: translateX(-50%);
}

.modern-vertical-timeline__events > * + * {
    margin-top: 2rem;
}

.modern-vertical-timeline__dot {
    width: 2rem;
    height: 2rem;
    left: 50%;
    transform: translateX(-50%);
}

.modern-vertical-timeline__dot-mobile {
    width: 2rem;
    height: 2rem;
}

.modern-vertical-timeline__summary-icon {
    width: 2rem;
    height: 2rem;
}

@media (min-width: 1024px) {
    .modern-vertical-timeline__col--reverse {
        margin-right: 0;
        margin-left: auto;
        padding-right: 0;
        padding-left: 1.25rem;
    }
}

@media (min-width: 992px) {
    .modern-vertical-timeline__col--reverse {
        margin-inline-start: auto;
        margin-inline-end: 0;
        padding-inline-end: 0;
        padding-inline-start: 1.5rem;
    }
}

/* wizard progress segment - framework-agnostic sizing + UA button reset */
.steps-wizard__segment {
    height: 0.375rem;
    padding: 0;
    border: 0;
    transition: transform 200ms ease, background-color 200ms ease;
    cursor: pointer;
    background-color: var(--bs-tertiary-bg, rgb(100 116 139 / 0.3));
}

.steps-wizard__segment.is-active {
    transform: scaleY(1.6);
    background-color: var(--bs-primary, rgb(37 99 235 / 1)) !important;
}

.steps-wizard__panel {
    animation: steps-wizard-fade-in 250ms ease;
}

/* wizard stage panel - fixed min-height across both frameworks */
.guide-flow__stage {
    min-height: 16rem;
}

/* wizard step icon badge - fixed circular size across both frameworks */
.guide-flow__badge {
    width: 4rem;
    height: 4rem;
}

@keyframes steps-wizard-fade-in {
    from {
        opacity: 0;
        transform: translateY(0.5rem);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* advantages ticker — seamless horizontal marquee (layout/motion only, no colors) */

.advantages-ticker__chip {
    width: 20rem;
}

/* track holds two identical copies; -50% scroll makes the loop seamless */
.advantages-ticker__track {
    width: max-content;
    animation: advantages-ticker-scroll 40s linear infinite;
}

.advantages-ticker__track.is-paused {
    animation-play-state: paused;
}

@keyframes advantages-ticker-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
    .advantages-ticker__track {
        animation: none;
    }
}

