main {
    background: url(../images/index/promo.webp) top center / 100% auto no-repeat;
}
.promo {
    margin-top: 300px;
    h1 {
        max-width: 1180px;
        margin-block: -6px 6px;
    }
    > p {
        max-width: 590px;
        font-size: 24px;
        line-height: 135%;
    }
    .btn {
        margin-top: 50px;
    }
    .items {
        display: grid;
        grid-template-columns: repeat(3, auto);
        justify-content: space-between;
        gap: 10px;
        margin-block: 145px 30px;
        div {
            display: grid;
            grid-template-columns: auto 1fr;
            align-items: center;
            column-gap: 10px;
            &::before {
                content: '\e904';
                grid-area: 1/1/3/2;
                font: 64px icon;
                aspect-ratio: 1;
                color: #E6E9F8;
            }
            h2 {
                margin-top: auto;
                font-size: 40px;
                text-transform: none;
                color: #E6E9F8;
            }
            p {
                line-height: 120%;
                margin-bottom: auto;
            }
        }
    }
    .cards {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        background: rgba(141, 139, 163, 0.2);
        border: 1px solid rgba(230, 233, 248, 0.5);
        p {
            padding-block: 180px 40px;
            font-size: 20px;
            line-height: 135%;
            color: rgba(254, 254, 255, 0.5);
            border-right: 1px solid #E6E9F8;
            text-align: center;
            &:first-child {
                background: url(../images/index/p1.webp) top center / auto no-repeat;
            }
            &:nth-child(2) {
                background: url(../images/index/p2.webp) top center / auto no-repeat;
            }
            &:last-child {
                background: url(../images/index/p3.webp) top center / auto no-repeat;
                border-color: transparent;
            }
        }
    }
}
.trade {
    margin-top: -2px;
    > div {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .top {
        column-gap: 100px;
        align-items: start;
        margin-bottom: 50px;
        div {
            &:first-child {
                display: flex;
                flex-direction: column;
                h2 {

                    margin-block: -4px 4px;
                }
                .tag {
                    margin-bottom: 10px;
                }
                h3 {
                    font-size: 24px;
                    line-height: 120%;
                }
            }
            &:last-child {
                display: grid;
                grid-template-columns: 1fr auto;
                align-items: start;
                column-gap: 68px;
                padding-top: 29px;
                p {
                    font-size: 20px;
                    line-height: 135%;
                }
                .btn {
                    max-width: initial;
                    width: 293px;
                }
            }
        }
    }
    .bottom {
        position: relative;
        border-top: 1px solid #8D8BA3;
        &::after {
            content: '';
            position: absolute;
            top: 0;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 135px;
            aspect-ratio: 1;
            pointer-events: none;
            background: url(../images/index/star.svg) center center / 100% 100%;
        }
        div {
            display: flex;
            flex-direction: column;
            padding: 50px;
            border-right: 1px solid #8D8BA3;
            &:first-child {
                background: url(../images/index/t11.webp) bottom right / auto auto no-repeat, url(../images/index/t1.webp) center center / cover;
            }
            &:last-child {
                background: url(../images/index/t2.webp) center center / cover;
            }
            h2 {
                min-height: 180px;
                align-content: center;
                margin-block: 112px 43px;
            }
            p {
                max-width: 600px;
                font-size: 24px;
                line-height: 133%;
            }
        }
    }
}
.confidence {
    .top {
        display: flex;
        justify-content: space-between;
        align-items: start;
        gap: 20px;
        margin-bottom: 38px;
        h2 {
            max-width: 400px;
            margin-block: -4px 4px;
        }
        p {
            font-size: 24px;
            line-height: 120%;
        }
    }
    .items {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: 1fr;
        background: rgba(141, 139, 163, 0.2);
        div {
            --bg-color: rgba(230, 233, 248, 0.5);
            --bg-color-r: var(--bg-color);
            --bg-color-b: var(--bg-color);
            display: grid;
            grid-template-columns: auto 1fr;
            align-items: center;
            column-gap: 14px;
            padding: 50px 49px 49px 50px;
            border-right: 1px solid var(--bg-color-r);
            border-bottom: 1px solid var(--bg-color-b);
            &:is(:nth-child(3), :nth-child(6)) {
                --bg-color-r: transparent;
            }
            &:is(:nth-child(4), :nth-child(5), :nth-child(6)) {
                --bg-color-b: transparent;
            }
            &::before {
                content: '\e900';
                grid-area: 1/1/3/2;
                aspect-ratio: 1;
                font: 50px icon;
                color: #E6E9F8;
            }
            h3 {
                margin-top: auto;
                font-family: 'Mazzard';
                font-weight: 700;
                font-size: 32px;
                color: #E6E9F8;
            }
            p {
                margin-bottom: auto;
                line-height: 120%;
            }
        }
    }
}
.widget {
    height: 567px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: -38px;
    > div {
        width: 100%;
        height: 100%;
    }
    iframe {
        width: 100%;
        height: 100%;
        border: none;
    }
}
.grow {
    margin-top: -40px;
    padding-bottom: 50px;
    border-bottom: 1px solid rgba(230, 233, 248, 0.5);
    background: url(../images/index/g1.webp) center center / cover;
    .wrapper {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-auto-rows: minmax(354px, 1fr);
    }
    .top,
    .bottom {
        grid-column: span 2;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
    .top {
        padding: 0 55px 61px 0;
        h2 {
            max-width: 500px;
        }
    }
    .bottom {
        padding: 50px 0 10px 50px;
        p {
            max-width: 306px;
            font-size: 24px;
            line-height: 120%;
        }
        .btn {
            max-width: initial;
        }
    }
    .item {
        padding: 40px;
        border-right: 1px solid #8D8BA3;
        &:nth-child(1 of .item) {
            background: url(../images/index/1.webp) left bottom / auto no-repeat, rgba(141, 139, 163, 0.2);
        }
        &:nth-child(2 of .item) {
            background: url(../images/index/2.webp) right bottom / auto no-repeat, rgba(141, 139, 163, 0.2);
        }
        &:nth-child(3 of .item) {
            background: url(../images/index/3.webp) right bottom / auto no-repeat, rgba(141, 139, 163, 0.2);
        }
        &:nth-child(4 of .item) {
            border: none;
            background: url(../images/index/4.webp) right bottom / auto no-repeat, rgba(141, 139, 163, 0.2);
        }
        h3,
        p {
            max-width: 201px;
        }
        h3 {
            margin-block: -6px 10px;
            font: 700 32px 'Mazzard';
            color: #E6E9F8;
        }
        p {
            opacity: .5;
        }
    }
}
.reviews {
    .top {
        display: flex;
        justify-content: space-between;
        align-items: start;
        gap: 10px;
        margin-bottom: 40px;
        h2 {
            margin-block: -4px 4px;
        }
    }
    .slider {
        overflow: hidden;
    }
    .slides {
        display: flex;
    }
    .slide {
        flex: 0 0 100%;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        .stars {
            width: min(100%, 300px);
            display: flex;
            align-items: center;
            gap: 20px;
            margin-bottom: 20px;
            padding-bottom: 18px;
            border-bottom: 2px solid #8D8BA3;
            line-height: 120%;
            color: #8D8BA3;
            &::before {
                content: '\e903' ' ' '\e903' ' ' '\e903' ' ' '\e903' ' ' '\e903';
                word-spacing: 1px;
                font: 17px icon;
                color: #E6E9F8;
            }
        }
        .info {
            display: grid;
            grid-template-columns: auto 1fr;
            column-gap: 20px;
            padding-right: 40px;
            img {
                grid-area: 1/1/3/2;
                width: 100px;
                aspect-ratio: 1;
            }
            .name {
                margin-top: auto;
                font: 700 32px 'Mazzard';
                color: #E6E9F8;
            }
            .post {
                margin-bottom: auto;
                font-size: 20px;
                line-height: 120%;
                color: rgba(254, 254, 255, 0.5);
            }
        }
        .text {
            align-content: center;
            padding: 26px 40px 26px 39px;
            background: rgba(141, 139, 163, 0.2);
            border-left: 1px solid #8D8BA3;
            font-size: 24px;
            line-height: 120%;
            color: #E6E9F8;
        }
    }
    .bubbles {
        width: 50%;
        display: grid;
        grid-auto-flow: column;
        gap: 40px;
        justify-content: start;
        counter-reset: bubble;
        margin: 40px 0 4px auto;
        .btn {
            --color: transparent;
            --width: 4px;
            width: 54px;
            min-height: initial;
            aspect-ratio: 1;
            display: grid;
            place-items: center;
            cursor: pointer;
            padding: 0;
            background: #1c1d31;
            counter-increment: bubble;
            transition: color .3s linear, background-color .3s linear, box-shadow .3s linear;
            &::before {
                content: '0' counter(bubble);
                font-size: 20px;
                color: #E6E9F8;
                transition: color .3s linear;
            }
            &.selected {
                --color: #fefefe;
                background: #2e2b3e;
            }
        }
    }
}
.last {
    position: relative;
    background: url(../images/index/last.webp) center center / cover;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    gap: 160px;
    padding: 105px 80px 126px;
    border-block: 1px solid transparent;
    border-image-source: linear-gradient(90deg, #35343D 0%, #8D8BA3 49.79%, #35343D 100%);
    border-image-slice: 1;
    &::before {
        content: '';
        position: absolute;
        pointer-events: none;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 135px;
        height: 100%;
        background: url(../images/index/line.svg) center center / 100% auto no-repeat;
    }
    h2 {
        font-size: 80px;
    }
    p {
        max-width: 562px;
        margin-bottom: 32px;
        font-size: 24px;
        line-height: 120%;
        color: #C6C8DD;
    }
    .btn {
        max-width: initial;
    }
}
@media screen and (max-width: 1840px) {
    .promo {
        margin-top: 200px;
        h1 {
            max-width: 680px;
            margin-block: -4px 4px;
        }
        > p {
            font-size: 16px;
        }
        .btn {
            margin-top: 30px;
        }
        .items {
            grid-template-columns: repeat(3, 1fr);
            align-items: start;
            gap: 20px;
            margin-block: 80px 16px;
            div {
                align-items: start;
                &::before {
                    font-size: 44px;
                }
                h2 {
                    font-size: 26px;
                }
                p {
                    padding-right: 40px;
                }
            }
        }
        .cards p {
            padding-block: 113px 30px;
            font-size: 16px;
            &:first-child,
            &:nth-child(2),
            &:last-child {
                background-size: 392px auto;
            }
        }
    }
    .trade {
        margin-top: -12px;
        .top {
            column-gap: 68px;
            margin-bottom: 40px;
            div {
                &:first-child {
                    h2 {
                        margin-block: -2px 2px;
                    }
                    h3 {
                        font-size: 16px;
                    }
                }
                &:last-child {
                    column-gap: 20px;
                    padding-top: 26px;
                    p {
                        font-size: 16px;
                    }
                    .btn {
                        width: 219px;
                    }
                }
            }
        }
        .bottom {
            &::after {
                width: 89px;
            }
            div {
                padding: 40px;
                &:first-child {
                    background-size: auto 100%, cover;
                }
                h2 {
                    min-height: 120px;
                    margin-block: 72px 28px;
                }
                p {
                    max-width: 400px;
                    font-size: 16px;
                }
            }
        }
    }
    .confidence {
        .top {
            margin-bottom: 30px;
            h2 {
                max-width: 300px;
                margin-block: -2px 2px;
            }
            p {
                font-size: 16px;
            }
        }
        .items div {
            column-gap: 10px;
            padding: 30px 29px 29px 30px;
            &::before {
                font-size: 32px;
            }
            h3 {
                font-size: 22px;
            }
        }
    }
    .widget {
        height: 390px;
        margin-top: -20px;
    }
    .grow {
        margin-top: -20px;
        padding-bottom: 29px;
        .wrapper {
            grid-auto-rows: minmax(236px, 1fr);
        }
        .top {
            padding: 0 36px 40px 0;
            h2 {
                max-width: 300px;
            }
        }
        .bottom {
            padding: 30px 0 0 30px;
            p {
                max-width: 218px;
                font-size: 16px;
            }
        }
        .item {
            padding: 30px;
            background-size: 295px auto !important;
            h3,
            p {
                max-width: 157px;
            }
            h3 {
                margin-block: -5px 7px;
                font-size: 22px;
            }
            p {
                font-size: 14px;
            }
        }
    }
    .reviews {
        .top {
            margin-bottom: 30px;
        }
        .slide {
            .stars {
                margin-bottom: 12px;
                padding-bottom: 12px;
            }
            .info {
                column-gap: 12px;
                img {
                    width: 72px;
                }
                .name {
                    font-size: 22px;
                }
                .post {
                    font-size: 16px;
                }
            }
            .text {
                padding: 22px 30px 21px 29px;
                font-size: 16px;
            }
        }
        .bubbles {
            gap: 30px;
            margin: 30px 0 2px auto;
            .btn {
                --width: 2px;
                width: 40px;
                &::before {
                    font-size: 16px;
                }
            }
        }
    }
    .last {
        margin-top: -5px;
        gap: 100px;
        padding: 80px 50px 85px;
        &::before {
            width: 90px;
        }
        h2 {
            font-size: 52px;
        }
        p {
            max-width: 385px;
            font-size: 16px;
        }
    }
}
@media screen and (max-width: 1279px) {
    .promo {
        margin-top: 120px;
        h1 {
            max-width: 360px;
            margin-block: -2px 2px;
        }
        > p {
            max-width: 400px;
        }
        .items {
            margin-block: 50px 20px;
            div {
                &::before {
                    font-size: 36px;
                }
                h2 {
                    font-size: 20px;
                }
                p {
                    padding-right: 0;
                    font-size: 14px;
                }
            }
        }
        .cards p {
            padding-block: 75px 16px;
            font-size: 14px;
            &:first-child,
            &:nth-child(2),
            &:last-child {
                background-size: 242px auto;
            }
        }
    }
    .trade {
        margin-top: -10px;
        > div {
            grid-template-columns: 1fr;
        }
        .top {
            gap: 20px;
            margin-bottom: 20px;
            div {
                &:first-child h3 {
                    font-size: 14px;
                }
                &:last-child {
                    padding-top: 0;
                }
            }
        }
        .bottom {
            grid-auto-rows: 1fr;
            border-top: none;
            &::after {
                top: 50%;
                width: 100%;
                height: 55px;
                aspect-ratio: initial;
                background: url(../images/index/star2.svg) center center / auto 100% no-repeat;
            }
            div {
                padding: 30px;
                &:first-child {
                    background-size: auto 350px, cover;
                    background-position-y:-39px, 50%;
                    h2 {
                        margin-block: 38px 42px;
                    }
                }
                &:last-child h2 {
                    margin-block: auto 28px;
                }
                h2 {
                    max-width: 260px;
                    min-height: initial;
                }
                p {
                    max-width: 446px;
                }
            }
        }
    }
    .confidence {
        margin-top: 3px;
        .top h2 {
            max-width: 200px;
            margin-block: -3px 3px;
        }
        .items {
            grid-template-columns: repeat(2, 1fr);
            grid-auto-rows: auto;
            div {
                padding: 30px 19px 29px 20px;
                &:is(:nth-child(3)) {
                    --bg-color-r: var(--bg-color);
                }
                &:is(:nth-child(2), :nth-child(4)) {
                    --bg-color-r: transparent;
                }
                &:is(:nth-child(4)) {
                    --bg-color-b: var(--bg-color);
                }
                h3 {
                    font-size: 16px;
                }
                p {
                    font-size: 14px;
                }
            }
        }
    }
    .widget {
        height: 703px;
        margin-top: 0;
    }
    .grow {
        margin-top: 0;
        padding-bottom: 19px;
        background-position: bottom right;
        .wrapper {
            grid-template-columns: repeat(2, 1fr);
        }
        .top,
        .bottom {
            grid-column: initial;
        }
        .top {
            padding: 0 20px 24px 0;
            h2 {
                max-width: 200px;
            }
        }
        .bottom {
            padding: 20px 0 0 20px;
        }
        .item:nth-child(2 of .item) {
            grid-area: 2/2/3/3;
        }
        .item:nth-child(4 of .item) {
            border-right: 1px solid #8D8BA3;
        }
    }
    .reviews {
        .slide {
            .stars {
                font-size: 14px;
                &::before {
                    word-spacing: 0;
                    font-size: 14px;

                }
            }
            .info {
                padding-right: 10px;
                .name {
                    font-size: 16px;
                }
                .post {
                    font-size: 14px;
                }
            }
            .text {
                padding: 10px 20px 10px 19px;
            }
        }
        .bubbles {
            gap: 20px;
            margin-top: 17px;
            margin-right: 0;
        }
    }
    .last {
        margin-top: 0;
        background: url(../images/index/last2.webp) left center / 1280px auto;
        gap: 40px;
        padding: 80px 20px 78px;
        &::before {
            width: 70px;
        }
        h2 {
            margin-block: -4px 4px;
            font-size: 32px;
        }
        p {
            margin-bottom: 19px;
        }
    }
}
@media screen and (max-width: 767px) {
    main {
        background: url(../images/index/promo2.webp) top center / auto auto no-repeat;
    }
    .promo {
        margin-top: 330px;
        h1,
        p {
            max-width: initial;
        }
        > p {
            font-size: 14px;
        }
        .items {
            grid-template-columns: 1fr;
            margin-block: 50px 30px;
        }
        .cards {
            grid-template-columns: 1fr;
            p {
                padding-block: 110px 20px;
                border-right: none;
                border-bottom: 1px solid #E6E9F8;
                &:first-child,
                &:nth-child(2),
                &:last-child {
                    background-size: 355px auto;
                }
            }
        }
    }
    .trade {
        margin-top: -2px;
        .top div:last-child {
            grid-template-columns: auto 1fr;
            gap: 20px;
            padding-top: 0;
            p {
                grid-column: 1/-1;
            }
        }
        .bottom div {
            padding: 20px;
            &:first-child {
                background-size: auto 333px, cover;
                background-position: bottom -24px right -38px, 50% 50%;
                h2 {
                    margin-block: 47px 40px;

                }
            }
            &:last-child h2 {
                margin-bottom: 30px;
            }
            p {
                margin-right: 50px;
                font-size: 14px;
            }
        }
    }
    .confidence {
        .top {
            flex-direction: column-reverse;
            margin-bottom: 20px;
            gap: 10px;
            h2 {
                margin-block: -4px 2px;
            }
            .tag {
                margin-left: auto;
            }
        }
        .items {
            grid-template-columns: 1fr;
            div {
                &:is(:nth-child(odd), :nth-child(even)) {
                    --bg-color-r: transparent;
                }
                &:is(:nth-child(5)) {
                    --bg-color-b: var(--bg-color);
                }
            }
        }
    }
    .widget {
        height: 361px;
    }
    .grow {
        margin-top: -20px;
        padding-bottom: 29px;
        background: url(../images/index/g2.webp) center center / cover;
        .wrapper {
            grid-template-columns: 1fr;
            grid-auto-rows: initial;
        }
        .top {
            gap: 17px;
            padding: 0 10px 20px 10px;
            h2 {
                max-width: initial;
            }
        }
        .bottom {
            gap: 29px;
            margin-top: 22px;
            padding: 0;
        }
        .item {
            min-height: 236px;
            padding-right: 168px;
            background-size: 286px auto !important;
            &:nth-child(2 of .item) {
                grid-area: 5/1/6/2;
            }
            &:nth-child(3 of .item) {
                grid-area: 2/1/3/2;
            }
            &:nth-child(4 of .item) {
                grid-area: 3/1/4/2;
            }
            h3 {
                padding-top: -3px;
            }
        }
    }
    .reviews {
        .top {
            margin-bottom: 20px;
            h2 {
                margin-block: -2px 2px;
            }
        }
        .slide {
            grid-template-columns: 1fr;
            grid-template-rows: auto 1fr;
            gap: 10px;
            .stars {
                width: min(100%, 240px);
            }
            .info {
                padding-right: 0;
            }
            .text {
                padding-block: 11px 11px;
            }
        }
        .bubbles {
            width: initial;
            justify-content: center;
            padding-bottom: 2px;
            overflow-x: auto;
            scrollbar-width: none;
            &::-webkit-scrollbar {
                display: none;
            }
        }
    }
    .last {
        grid-template-columns: 1fr;
        background: url(../images/index/last3.webp) left center / 768px auto;
        gap: 0;
        margin-top: -2px;
        padding-block: 40px 32px;
        &::before {
            position: static;
            margin-inline: -20px;
            transform: none;
            width: initial;
            height: 84px;
            background: url(../images/index/line2.svg) center center / auto no-repeat;
        }
        h2 {
            order: -1;
            margin-block: -4px -1px;
            text-align: center;
        }
        p {
            text-align: center;
            max-width: initial;
        }
    }
}
@media (hover: hover) {
    .promo .cards p {
        position: relative;
        isolation: isolate;
        &::before {
            content: '';
            position: absolute;
            inset: 0;
            background: rgba(141, 139, 163, 0.3);
            z-index: -1;
            opacity: 0;
            transition: opacity .3s linear;
        }
        &:hover::before {
            opacity: 1;
        }
    }
    .reviews .bubbles .btn:not(.selected):hover::before {
        color: #2E2B3E;
    }
}