.about-mosaic__tile { opacity: 0; transform: translateY(1.5rem); transition: opacity 700ms ease, transform 700ms cubic-bezier(.2, .8, .2, 1), box-shadow 300ms ease; }
.about-mosaic.is-visible .about-mosaic__tile { opacity: 1; transform: none; }

.about-mosaic__caption { font-size: .875rem; line-height: 1.25rem; }
.about-mosaic__link i { transition: transform 250ms ease; }
.about-mosaic__link:hover i { transform: translateX(.25rem); }

.about-mosaic__area { aspect-ratio: 5 / 2; cursor: crosshair; touch-action: pan-y; }
.about-mosaic__area svg, .about-mosaic__mini svg { display: block; width: 100%; height: 100%; overflow: visible; }
.about-mosaic__area text { font-size: 12px; font-weight: 700; }
.about-mosaic__mini { height: 4.5rem; }

.about-mosaic__draw { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1600ms cubic-bezier(.2, .8, .2, 1) 300ms; }
.about-mosaic__fade { opacity: 0; transition: opacity 900ms ease 900ms; }
.about-mosaic__col { transform-box: fill-box; transform-origin: 50% 100%; transform: scaleY(0); transition: transform 900ms cubic-bezier(.2, .8, .2, 1); }
.about-mosaic__seg { transform-box: fill-box; transform-origin: 0 50%; transform: scaleX(0); transition: transform 700ms cubic-bezier(.2, .8, .2, 1); }
.about-mosaic__arc { transition: stroke-dashoffset 1500ms cubic-bezier(.2, .8, .2, 1) 300ms; }
.about-mosaic__needle { transition: transform 1500ms cubic-bezier(.3, 1.3, .4, 1) 300ms; }
.about-mosaic__pulse { transform-box: fill-box; transform-origin: center; animation: about-mosaic-pulse 2.2s ease-out infinite; }
.about-mosaic__cursor { opacity: 0; transition: opacity 200ms ease; }
.about-mosaic__area.is-hover .about-mosaic__cursor { opacity: 1; }

.is-drawn .about-mosaic__draw { stroke-dashoffset: 0; }
.is-drawn .about-mosaic__fade { opacity: 1; }
.is-drawn .about-mosaic__col, .is-drawn .about-mosaic__seg { transform: none; }

@keyframes about-mosaic-pulse { 0% { transform: scale(1); opacity: .5; } 100% { transform: scale(3.2); opacity: 0; } }

@media (prefers-reduced-motion: reduce) {
    .about-mosaic__tile, .about-mosaic__draw, .about-mosaic__fade, .about-mosaic__col, .about-mosaic__seg, .about-mosaic__arc, .about-mosaic__needle { transition: none; }
    .about-mosaic__tile { opacity: 1; transform: none; }
    .about-mosaic__pulse { animation: none; opacity: 0; }
}

.about-mosaic__tip, .about-mosaic__dot { opacity: 0; pointer-events: none; transition: opacity 200ms ease; white-space: nowrap; }
.about-mosaic__dot { width: 1rem; height: 1rem; }
.about-mosaic__area.is-hover .about-mosaic__tip, .about-mosaic__area.is-hover .about-mosaic__dot { opacity: 1; }

/* wpg-hidden: utility classes are renamed in production builds, so hidden states must not rely on .hidden / .d-none alone */
.about-mosaic[hidden], .about-mosaic [hidden], .about-mosaic .hidden.d-none { display: none !important; }

/* value + unit suffix stay inside their card: smaller suffix, long words may break */
.about-mosaic__suffix { font-size: .55em; margin-left: .1em; }
.about-mosaic :has(> .about-mosaic__suffix) { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }

@keyframes fullscreen-scroll-timeline__slide-in {
    from { opacity: 0; transform: translateX(-40px); }
    to { opacity: 1; transform: translateX(0); }
}

.fullscreen-scroll-timeline__content.is-visible {
    animation: fullscreen-scroll-timeline__slide-in 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

.fullscreen-scroll-timeline__section {
    min-height: 520px;
}

.fullscreen-scroll-timeline__inner {
    min-height: 520px;
    z-index: 10;
}

.fullscreen-scroll-timeline__content {
    max-width: 36rem;
    opacity: 0;
    transform: translateX(-40px);
}

.fullscreen-scroll-timeline__accent-line {
    width: 2rem;
    height: 1px;
}

.fullscreen-scroll-timeline__text {
    max-width: 32rem;
}

.fullscreen-scroll-timeline__decor-year {
    right: 2rem;
    top: 50%;
    transform: translateY(-50%);
}

.fullscreen-scroll-timeline__year-text {
    font-size: 120px;
    writing-mode: vertical-rl;
}
.fullscreen-scroll-timeline__section {
    min-height: 520px;
}

.fullscreen-scroll-timeline__inner-size {
    min-height: 520px;
    z-index: 10;
}

.fullscreen-scroll-timeline__content {
    max-width: 36rem;
    opacity: 0;
    transform: translateX(-40px);
}

.fullscreen-scroll-timeline__accent-line {
    width: 2rem;
    height: 1px;
}

.fullscreen-scroll-timeline__text-width {
    max-width: 32rem;
}

.fullscreen-scroll-timeline__year-decor {
    right: 2rem;
    top: 50%;
    transform: translateY(-50%);
}

.fullscreen-scroll-timeline__feat-year {
    font-size: 120px;
    writing-mode: vertical-rl;
}


/* values datatable v18 - grid layout only, no colors */
.values-datatable__row {
    display: grid;
    width: 100%;
    grid-template-columns: auto 1fr auto;
    column-gap: 1rem;
    row-gap: 0.75rem;
    align-items: start;
    box-sizing: border-box;
}

@media (min-width: 640px) {
    .values-datatable__row {
        grid-template-columns: 3rem 10rem 1fr 5rem;
        column-gap: 1.5rem;
        row-gap: 0;
    }
}

.values-datatable__num {
    grid-column: 1;
}

.values-datatable__title {
    grid-column: 2;
    margin: 0;
}

.values-datatable__desc {
    grid-column: 1 / -1;
    margin: 0;
    min-width: 0;
}

.values-datatable__rank {
    grid-column: 1 / -1;
    justify-self: start;
}

@media (min-width: 640px) {
    .values-datatable__desc {
        grid-column: 3;
    }

    .values-datatable__rank {
        grid-column: 4;
        justify-self: end;
    }
}

.split-screen-halo {
    width: 600px;
    height: 600px;
}

.split-screen-halo-soft {
    width: 500px;
    height: 500px;
}

.split-screen-beam-main {
    width: 24rem;
    height: 1px;
}

.split-screen-beam-side {
    width: 20rem;
    height: 1px;
}

.split-screen-frame {
    width: 6rem;
    height: 6rem;
}

.split-screen-orb {
    width: 4rem;
    height: 4rem;
}

.split-screen-marker {
    width: 2rem;
    height: 2rem;
}

.split-screen-emblem {
    width: 5rem;
    min-width: 5rem;
    height: 5rem;
    min-height: 5rem;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

@media (min-width: 1024px) {
    .split-screen-principle--odd {
        margin-left: 2rem;
    }
}

.roster-lift-hover__portrait {
    width: 7rem;
    height: 7rem;
}

.roster-lift-hover__min-shrink {
  min-width: 0;
}

/* Лише layout / рух; кольори теми — у Blade */
.socialproof-card-hover {
    transition:
        box-shadow 0.4s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.socialproof__stat-value,
.socialproof__stat-label {
    transition: transform 0.3s ease, color 0.2s ease;
}

@media (hover: hover) {
    .socialproof-card-hover:hover {
        box-shadow: 0 22px 44px -18px rgba(15, 23, 42, 0.2);
    }

    .dark .socialproof-card-hover:hover {
        box-shadow: 0 22px 44px -14px rgba(0, 0, 0, 0.5);
    }

    .socialproof-card-hover:hover .socialproof__stat-value {
        transform: scale(1.08);
    }
}

@media (hover: hover) and (min-width: 640px) {
    .socialproof-card-hover--lift:hover {
        transform: translateY(-4px) scale(1.02);
    }
}

@media (prefers-reduced-motion: reduce) {
    .socialproof-card-hover,
    .socialproof__stat-value,
    .socialproof__stat-label {
        transition: none;
    }

    .socialproof-card-hover:hover,
    .socialproof-card-hover:hover .socialproof__stat-value,
    .socialproof-card-hover--lift:hover {
        transform: none;
    }
}

