.ordered-links-section {
    position: relative;
    padding-block: 100px;
}

.ordered-links-section .ordered-links-bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transition: var(--transition);
    transition-duration: 0.8s;
    pointer-events: none;
    user-select: none;
    z-index: -1;
}

.ordered-links-section[data-use-separate-background-images="no"] .ordered-links-bg-image {
    background-image: var(--ordered-links-bg-single);
}

@media (min-width: 1025px) {
    .ordered-links-section[data-use-separate-background-images="yes"] .ordered-links-bg-image {
        background-image: var(--ordered-links-bg-desktop);
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .ordered-links-section[data-use-separate-background-images="yes"] .ordered-links-bg-image {
        background-image: var(--ordered-links-bg-tablet);
    }
}

@media (max-width: 767px) {
    .ordered-links-section[data-use-separate-background-images="yes"] .ordered-links-bg-image {
        background-image: var(--ordered-links-bg-mobile);
    }
}

.ordered-links-section .ordered-links-bg-image.show {
    /* transform: translateX(0px);
    opacity: 1;
    visibility: visible; */
}

.ordered-links-section .ordered-links-bg-image::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 154px;
    background: linear-gradient(180deg, rgba(243, 245, 247, 0) 0%, rgba(243, 245, 247, 0.3) 100%);
    z-index: 1;
}

.ordered-links-section .ordered-links-title {
    margin-bottom: 100px;
}

.ordered-links-section .ordered-links-title,
.ordered-links-section .ordered-link-item,
.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-number,
.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-title .ordered-link-arrow,
.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-title .ordered-link-link-text {
    opacity: 1;
    transform: none;
}

.ordered-links-section .ordered-links-title,
.ordered-links-section .ordered-link-item {
    animation-name: ordered-links-reveal-in;
    animation-duration: 2s;
    animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
    animation-fill-mode: both;
}

.ordered-links-section .ordered-links-title {
    animation-delay: 0.2s;
}

.ordered-links-section .ordered-link-item {
    animation-delay: calc(0.1s + var(--ordered-link-index, 0) * 0.2s);
}

@keyframes ordered-links-reveal-in {
    from {
        opacity: 0;
        transform: translateY(24px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.ordered-links-section .ordered-links-title:not(.heading-with-star) {
    margin-left: calc(50% + 10px);
}

.ordered-links-section .ordered-links-description {
    margin-left: calc(50% + 10px);
    margin-bottom: 40px;
}

.ordered-links-section .ordered-links-items {
    position: relative;
}

.ordered-links-section .ordered-link-item {
    position: relative;
    z-index: 0;
    display: flex;
    align-items: center;
    padding: 17px 0;
    border-top: 1px solid var(--grey-border-40);
    cursor: default;
}

/* Открытая строка и панель выше border-top соседей и выше a::before (z-index: 2) */
.ordered-links-section .ordered-link-item.is-description-open {
    z-index: 10;
}

.ordered-links-section .ordered-link-item:last-child {
    border-bottom: 1px solid var(--grey-border-40);
}

.ordered-links-section .ordered-link-number {
    width: 30px;
    transition: var(--transition);
}

.ordered-links-section .ordered-link-title .ordered-link-link-text {
    display: inline-block;
}

.ordered-links-section .ordered-link-description {
    position: absolute;
    top: 0px;
    left: calc((50% - 50px) / 2);
    width: 440px;
    max-width: calc((70% - 17px) / 2);
    padding: 40px 45px;
    color: var(--white);
    background: var(--red);
    /* Как раньше по X в открытом виде; появление — сверху вниз (translateY), без сдвига слева направо */
    transform: translateX(-50%) translateY(-14px);
    transition: var(--transition);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    user-select: none;
    z-index: 1;
}

.ordered-links-section .ordered-link-description:has(.ordered-link-image) {
    padding-left: 115px;
}

.ordered-links-section .ordered-link-image {
    display: flex;
    position: absolute;
    top: 50%;
    left: 0;
    width: 80px;
    transform: translateY(-50%);
}

.ordered-links-section .ordered-link-text {
    text-indent: 50%;
}

.ordered-links-section .ordered-link-image + .ordered-link-text {
    text-indent: min(105px, calc(44px + 61 * ((100vw - 1025px) / 351))); /* decreasing between 1376px - 1025px */
}

.ordered-links-section .ordered-link-text .star {
    position: relative;
}

.ordered-links-section .ordered-link-text .star::after {
    content: '';
    position: absolute;
    top: -2px;
    left: -12px;
    width: 8px;
    height: 8px;
    background-color: var(--white);
    mask-image: var(--star);
    mask-size: contain;
    mask-repeat: no-repeat;
}

.ordered-links-section .ordered-link-title {
    margin-left: calc(50% - 20px);
    transition: var(--transition);
}

.ordered-links-section .ordered-link-item:not(:has(.ordered-link-number)) .ordered-link-title {
    margin-left: calc(50% + 10px);
}

.ordered-links-section .ordered-link-title a {
    display: flex;
    align-items: center;
    transition: none;
}

.ordered-links-section .ordered-link-title a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.ordered-links-section .ordered-link-arrow {
    position: relative;
    left: -55px;
    display: flex;
    align-items: center;
    margin-left: -22px;
    color: var(--red);
    transition: var(--transition);
}

.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-number,
.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-title .ordered-link-arrow,
.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-title .ordered-link-link-text {
    opacity: 1;
}

.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-number,
.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-title .ordered-link-arrow {
    transform: translateX(0);
}

.ordered-links-section .ordered-link-item:has(.ordered-link-number) .ordered-link-title .ordered-link-link-text {
    transform: translateX(0);
}

/* Hover + класс с задержкой (JS): цвета/стрелка — :hover и .is-description-open; панель — только класс, чтобы совпадала с задержкой */
.ordered-links-section .ordered-link-item:hover .ordered-link-number,
.ordered-links-section .ordered-link-item:hover .ordered-link-title,
.ordered-links-section .ordered-link-item.is-description-open .ordered-link-number,
.ordered-links-section .ordered-link-item.is-description-open .ordered-link-title {
    color: var(--red);
}

.ordered-links-section .ordered-link-item.is-description-open .ordered-link-description {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    visibility: visible;
    z-index: 5;
}

@media (min-width: 1024px) {
    .ordered-links-section .ordered-link-item.is-description-open .ordered-link-description {
        pointer-events: auto;
    }
}

.ordered-links-section .ordered-link-item:hover .ordered-link-arrow,
.ordered-links-section .ordered-link-item.is-description-open .ordered-link-arrow {
    left: -20px;
}

@media (max-width: 1023px) {
    .ordered-links-section .ordered-links-bg-image::before {
        height: 100%;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%),
                    linear-gradient(180deg, rgba(243, 245, 247, 0) 0%, rgba(243, 245, 247, 0.3) 100%);
    }

    .ordered-links-section .ordered-links-title:not(.heading-with-star) {
        margin-left: 0;
    }

    .ordered-links-section .ordered-links-description {
        margin-left: 0;
    }

    .ordered-links-section .ordered-link-number {
        display: none;
    }

    /* Описание item — только desktop (≥1024); на tablet/mobile не показываем */
    .ordered-links-section .ordered-link-item .ordered-link-description,
    .ordered-links-section .ordered-link-item.is-description-open .ordered-link-description {
        display: none !important;
    }

    .ordered-links-section .ordered-link-title,
    .ordered-links-section .ordered-link-item:not(:has(.ordered-link-number)) .ordered-link-title {
        margin-left: 82px;
    }

    .ordered-links-section .ordered-link-arrow {
        left: -60px;
    }

    .ordered-links-section .ordered-link-item:last-child {
        border-bottom: 0px;
    }
}

body.elementor-editor-active .ordered-links-section .ordered-links-title,
body.elementor-editor-active .ordered-links-section .ordered-link-item,
body.elementor-editor-active .ordered-links-section .ordered-link-number,
body.elementor-editor-active .ordered-links-section .ordered-link-title .ordered-link-arrow,
body.elementor-editor-active .ordered-links-section .ordered-link-title .ordered-link-link-text,
body.elementor-editor-preview .ordered-links-section .ordered-links-title,
body.elementor-editor-preview .ordered-links-section .ordered-link-item,
body.elementor-editor-preview .ordered-links-section .ordered-link-number,
body.elementor-editor-preview .ordered-links-section .ordered-link-title .ordered-link-arrow,
body.elementor-editor-preview .ordered-links-section .ordered-link-title .ordered-link-link-text {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
}

@media (max-width: 767px) {
    .ordered-links-section {
        margin-right: calc(var(--container-default-padding-right) * -1);
        margin-left: calc(var(--container-default-padding-left) * -1);
        padding-right: var(--container-default-padding-right);
        padding-left: var(--container-default-padding-left);
        padding-block: 50px;
    }

    .ordered-links-section .ordered-links-title {
        margin-bottom: 50px;
    }

    .ordered-links-section .ordered-link-title,
    .ordered-links-section .ordered-link-item:not(:has(.ordered-link-number)) .ordered-link-title {
        margin-left: 42px;
    }

    .ordered-links-section .ordered-link-arrow {
        left: -20px;
    }

    .ordered-links-section .ordered-link-item:hover .ordered-link-arrow,
    .ordered-links-section .ordered-link-item.is-description-open .ordered-link-arrow {
        left: -12px;
    }
}