/* ==========================================================================
Registration
========================================================================== */

.steps .steps__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
    list-style-type: none;
    counter-reset: num;
    margin: 0;
    padding: 0;
}

.steps__item {
    position: relative;
    padding: 32px;
    border-radius: 24px;
    background-color: var(--color-light);
    overflow: hidden;
}
.steps__item:last-child {
    grid-column: 1 / span 2;
}
.steps__item::before {
    border-radius: 0px !important;
    position: relative !important;
    bottom: -20px;
    top: 22px !important;
    content: counter(num) !important;
    counter-increment: num;
    font-size: 120px;
    font-weight: 700;
    width: 60px !important;
    height: 60px !important;
    left: 0px !important;
    line-height: 100px;
    background: linear-gradient(180deg, #FFFFFF 0%, rgb(255 255 255 / .3) 50%, rgb(255 255 255 / .05) 75%, #fff0 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: #fff0;
    background-clip: text !important;
}
.container .steps__item li:before {
    position: relative;
    bottom: -20px;
    content: counter(num);
    counter-increment: num;
    font-size: 120px;
    font-weight: 700;
    line-height: 100px;
    background: linear-gradient(180deg, #FFFFFF 0%, rgb(255 255 255 / .3) 50%, rgb(255 255 255 / .05) 75%, #fff0 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff0;
    background-clip: text;
}
.steps__item p {
    margin: 0;
}

@media screen and (max-width: 768px) {
    .steps .steps__items {
        grid-template-columns: 1fr;
    }
    .steps__item:last-child {
        grid-column: 1;
    }
}


.picture__caption {
    margin-top: 5px;
    text-align: center;
    font-style: italic;
}

/* ==========================================================================
Bonuses
========================================================================== */
.bookmaker > .container {
    display: flex;
    gap: 16px;
    flex-flow: column;
    padding: clamp(22px, 2.222vw, 32px);
    background-color: rgb(255 255 255 / 0.05);
    border-radius: 24px;
    overflow: hidden;
}

.bookmaker__body {
    display: grid;
    gap: clamp(20px, 2.222vw, 32px);
    grid-template-columns: repeat(3, 1fr) auto;
}
.bookmaker__body-item {
    align-self: center;
}
.bookmaker__body-item:nth-child(1) img {
    max-width: 250px;
}
.bookmaker__body-item:nth-child(2) p {
    font-size: 14px;
    font-weight: 700;
}
.bookmaker__body-item:nth-child(2) i {
    display: block;
    font-size: 24px;
    line-height: 29px;
}
.bookmaker-list {
    gap: 8px !important;
    list-style-type: none !important;
    padding: 0;
    margin: 0;
}
.bookmaker-list li {
    display: flex;
    gap: 8px;
    align-items: center;
}
.bookmaker-list li::before {
    content: none !important;
}
.bookmaker-list li svg use {
    fill: #fff;
}
.bookmaker-list li span i {
    font-weight: 700;
}

.bookmaker__body-item:last-child {
    display: flex;
    gap: 8px;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}

.bookmaker__bottom {
    display: flex;
    flex-flow: row wrap;
    gap: 8px;
    align-items: center;
}

@media screen and (max-width: 992px) {
    .bookmaker__body {
        grid-template-columns: repeat(3, 1fr);
    }
    .bookmaker__body-item:last-child {
        grid-column: 1 / 4;
    }
}

@media screen and (max-width: 768px) {
    .bookmaker__body {
        grid-template-columns: repeat(2, 1fr);
        justify-items: center;
    }
    .bookmaker__body-item:first-child,
    .bookmaker__body-item:last-child {
        grid-column: 1 / span 2;
    }
}

@media screen and (max-width: 576px) {
    .bookmaker__body {
        grid-template-columns: 1fr;
    }
    .bookmaker__body-item:first-child,
    .bookmaker__body-item:last-child {
        grid-column: 1;
    }
}

@media screen and (max-width: 430px) {
    .bookmaker__body-item:last-child,
    .bookmaker__body-item:last-child .btn {
        width: 100%;
    }
}
/* ==========================================================================
Mobile
========================================================================== */
.download > .container {
    position: relative;
    display: grid;
    gap: 40px;
    grid-template-columns: 1fr 0.5fr;
    background-color: var(--color-light);
    border-radius: 24px;
}
.download__content {
    padding: clamp(22px, 2.222vw, 32px);
}
.download .download__content > h2 {
    max-width: 500px;
    font-size: 40px;
    line-height: 120%;
    font-weight: 700;
}
.download__items {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, 1fr);
}
.download__item {
    display: grid;
    gap: 8px;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    padding: 16px;
    border-radius: 12px;
    background: var(--color-light);
    overflow: hidden;
}
@media (hover: hover) {
    .download__item:hover {
        background-color: #ffffff1a;
    }
}
.download__item .arrow {
    transform: rotate(-90deg);
}
.download__image {
    display: flex;
    justify-content: center;
    align-items: center;
}
.download__image-wrapper {
    position: relative;
}
.download__image .app {
    width: clamp(200px, 19.444vw, 280px);
    height: clamp(200px, 19.444vw, 280px);
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1 / 1;
    animation: softRGB 20s infinite linear;
    will-change: background,filter;
    transform: rotate(10deg);
    border-radius: 48px;
    overflow: hidden;
}
.download__image .app svg {
    width: 100%;
    height: auto;
}
@keyframes softRGB {
    0% {
        background-color: red;
    }
    10% {
        background-color: #ff6400;
    }
    20% {
        background-color: #ffc800;
    }
    30% {
        background-color: #64ff00;
    }
    40% {
        background-color: #00ff64;
    }
    50% {
        background-color: #0064ff;
    }
    60% {
        background-color: blue;
    }
    70% {
        background-color: #6400ff;
    }
    80% {
        background-color: #f0f;
    }
    90% {
        background-color: #ff00c8;
    }
    100% {
        background-color: red;
    }
}

.download__image .icon {
    position: absolute;
    bottom: -14px;
    left: -50px;
    width: clamp(120px, 10.417vw, 150px);
    height: clamp(120px, 10.417vw, 150px);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px;
    border-radius: 40px;
    border: 2px solid rgb(255 255 255 / .24);
    background: rgb(255 255 255 / .05);
    transform: rotate(-20deg);
    overflow: hidden;
    backdrop-filter: blur(24px);
    z-index: 3;
}

@media screen and (max-width: 1200px) {
    .download__items {
        grid-template-columns: repeat(2, 1fr);
    }
    .download__item:last-child {
        grid-column: 1 / span 2;
    }
}

@media screen and (max-width: 768px) {
    .download > .container {
        display: flex;
        gap: 0;
        flex-flow: column-reverse;
    }
    .download .download__content > h2 {
        max-width: 100%;
    }
    .download__items {
        grid-template-columns: 1fr;
    }
    .download__item:last-child {
        grid-column: 1;
    }
}

