.page {
    padding-top: 48px;
}



.buttons {
    margin-bottom: 27px;
}

.buttons ul {
    color: var(--color--white);
    display: grid;
    grid-column-gap: 24px;
    grid-template-columns: repeat(2, 1fr);
}

.buttons button {
    align-items: center;
    background-image: var(--color--blue-gradient);
    border: 0;
    border-radius: 10px;
    box-sizing: border-box;
    color: var(--color--white);
    column-gap: 24px;
    display: flex;
    font-weight: 700;
    justify-content: space-between;
    padding: 24px 32px;
    user-select: none;
    width: 100%;
}



.info {
    margin-bottom: 130px;
}


.info p {
    font-size: 14px;
    line-height: 21px;
    margin: 0;
    text-align: center;
}



.download {
    margin-bottom: 134px;
}


.download .box {
    align-items: center;
    background-image: var(--color--blue-gradient);
    border-radius: 10px;
    box-sizing: border-box;
    color: var(--color--white);
    display: grid;
    grid-column-gap: 80px;
    grid-template-columns: 240px auto;
    padding: 48px 96px;
    position: relative;
}

.download .media-wrapper {
    left: 96px;
    position: absolute;
    width: 240px;
}

.download .phone {
    border-radius: 38px;
    padding-top: 201.79%;
}

.download .title {
    margin-bottom: 9px;
}

.download .inner {
    align-items: flex-end;
    display: grid;
    grid-column-gap: 80px;
    grid-template-columns: auto 140px;
}

.download p {
    margin: 0 0 22px;
}

.download ul {
    column-gap: 24px;
    display: flex;
}

.download .qr {
    border-radius: 6px;
}



.features ul {
    display: grid;
    grid-column-gap: 24px;
    grid-template-columns: repeat(3, 1fr);
}

.features li {
    align-items: center;
    background-color: var(--color--porcelain);
    border-radius: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    padding: 40px 32px 33px;
    text-align: center;
}

.features .icon {
    margin-bottom: 34px;
    position: relative;
}

.features svg:first-child {
    position: absolute;
    transform: scale(0);
}

.features svg:last-child path {
    fill: url(#feature-icon-gradient);
}

.features .title {
    margin-bottom: 11px;
}

.features p {
    line-height: 25px;
    margin: 0;
}



.presentation {
    overflow: hidden;
    padding: 48px 0;
}

.presentation .box {
    background-image: var(--color--blue-gradient);
    border-radius: 10px;
    box-sizing: border-box;
    color: var(--color--white);
    height: 992px;
    position: relative;
}

.presentation .icon {
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
}

.presentation svg {
    bottom: -60%;
    height: auto;
    left: -90%;
    opacity: 0.1;
    position: absolute;
    width: calc(var(--width--container) * 3.1);
}

.presentation p {
    margin: 0;
    position: absolute;
    text-align: center;
}

.presentation p:first-of-type {
    right: 96px;
    top: 90px;
    width: 656px;
}

.presentation p:last-of-type {
    bottom: 89px;
    left: 96px;
    width: 544px;
}

.presentation .media-wrapper {
    position: absolute;
}

.presentation .media-wrapper[_animate] {
    transition: transform 1.24s linear;
}

.presentation .media-wrapper[_active]:first-of-type {
    transform: rotate(340deg) translateX(0) translateY(0);
}

.presentation .media-wrapper[_active]:last-of-type {
    transform: rotate(20deg) translateX(0) translateY(0);
}

.presentation .media-wrapper:first-of-type {
    left: 71px;
    top: -2px;
    transform: rotate(340deg) translateX(-300%) translateY(-50%);
    width: 352px;
}

.presentation .media-wrapper:last-of-type {
    bottom: -1px;
    right: 75px;
    transform: rotate(20deg) translateX(300%) translateY(-50%);
    width: 368px;
}

.presentation .phone {
    border-radius: 60px;
    padding-top: 201.79%;
}



@media (max-width: 1415px) {
    .download .box {
        grid-column-gap: 56px;
        padding-left: 64px;
        padding-right: 64px;
    }

    .download .media-wrapper {
        left: 64px;
    }

    .download .inner {
        grid-column-gap: 56px;
    }



    .presentation .box {
        height: 768px;
    }

    .presentation svg {
        width: calc(var(--width--container) * 2.8);
    }

    .presentation p:first-of-type {
        right: 64px;
        top: 58px;
    }

    .presentation p:last-of-type {
        bottom: 57px;
        left: 64px;
    }

    .presentation .media-wrapper:first-of-type {
        left: 52px;
        top: -4px;
        width: 276px;
    }

    .presentation .media-wrapper:last-of-type {
        bottom: -5px;
        right: 54px;
        width: 282px;
    }

    .presentation .phone {
        border-radius: 44px;
    }
}


@media (max-width: 1215px) {
    .buttons button {
        padding: 16px 24px;
    }

    .buttons button svg {
        height: 40px;
        width: auto;
    }



    .info {
        margin-bottom: 108px;
    }



    .download {
        margin-bottom: 112px;
    }


    .download .box {
        grid-column-gap: 32px;
        grid-template-columns: 208px auto;
        padding: 42px 48px 48px;
    }

    .download .media-wrapper {
        left: 48px;
        width: 208px;
    }

    .download .phone {
        border-radius: 32px;
    }

    .download .title {
        margin-bottom: 7px;
    }

    .download .inner {
        grid-column-gap: 24px;
        grid-template-columns: auto 96px;
    }

    .download ul svg {
        height: 48px;
        width: auto;
    }



    .features li {
        padding-left: 24px;
        padding-right: 24px;
    }

    .features .icon {
        margin-bottom: 35px;
    }

    .features svg {
        height: 64px;
        width: auto;
    }



    .presentation .box {
        height: 576px;
    }

    .presentation svg {
        bottom: -64%;
        left: -64%;
        width: calc(var(--width--container) * 2.4);
    }

    .presentation p:first-of-type {
        right: 48px;
        top: 51px;
        width: 586px;
    }

    .presentation p:last-of-type {
        bottom: 49px;
        left: 48px;
        width: 486px;
    }

    .presentation .media-wrapper:first-of-type {
        left: 36px;
        top: -12px;
        width: 192px;
    }

    .presentation .media-wrapper:last-of-type {
        bottom: -11px;
        right: 41px;
        width: 208px;
    }

    .presentation .phone {
        border-radius: 30px;
    }
}


@media (max-width: 1079px) {
    .page {
        padding-top: 32px;
    }



    .buttons ul {
        grid-column-gap: 12px;
    }



    .download ul {
        grid-column-gap: 12px;
    }



    .features ul {
        grid-column-gap: 12px;
    }
}


@media (max-width: 1024px) {
    .page {
        padding-top: 16px;
    }



    .buttons {
        margin-bottom: 19px;
    }


    .buttons ul {
        display: block;
    }

    .buttons li:not(:last-child) {
        margin-bottom: 8px;
    }



    .info {
        margin-bottom: 42px;
    }



    .download {
        margin-bottom: 48px;
    }


    .download .box {
        display: block;
        padding: 34px 24px 24px;
    }

    .download .media-wrapper {
        display: none;
    }

    .download .inner {
        grid-column-gap: 16px;
    }

    .download ul {
        grid-column-gap: 8px;
    }



    .features {
        margin-bottom: 48px;
    }


    .features ul {
        display: block;
    }

    .features li {
        padding-bottom: 25px;
        padding-top: 32px;
    }

    .features li:not(:last-child) {
        margin-bottom: 16px;
    }

    .features .icon {
        margin-bottom: 27px;
    }

    .features svg {
        height: 56px;
    }

    .features .title {
        margin-bottom: 11px;
    }



    .presentation {
        padding: 0 0 32px;
    }

    .presentation .box {
        height: 462px;
    }

    .presentation svg {
        bottom: -40%;
    }

    .presentation p:first-of-type {
        right: 24px;
        top: 35px;
        width: calc(100% - 48px);
    }

    .presentation p:last-of-type {
        bottom: 33px;
        left: 24px;
        width: calc(100% - 48px);
    }

    .presentation .media-wrapper:first-of-type {
        left: 130px;
        top: 132px;
        width: 96px;
    }

    .presentation .media-wrapper:last-of-type {
        bottom: 133px;
        right: 130px;
        width: 96px;
    }

    .presentation .phone {
        border-radius: 14px;
    }
}


@media (max-width: 691px) {
    .buttons .button {
        font-size: 18px;
        padding: 16px 16px 14px;
    }

    .buttons button svg {
        height: 27px;
        position: relative;
        top: -1px;
    }



    .info {
        margin-bottom: 26px;
    }



    .download {
        margin-bottom: 32px;
    }


    .download .box {
        padding-bottom: 16px;
        padding-left: 16px;
        padding-right: 16px;
    }

    .download ul {
        grid-column-gap: 4px;
    }



    .features {
        margin-bottom: 32px;
    }


    .features li {
        padding-left: 16px;
        padding-right: 16px;
    }



    .presentation p:first-of-type {
        right: 16px;
        width: calc(100% - 32px);
    }

    .presentation p:last-of-type {
        left: 16px;
        width: calc(100% - 32px);
    }
}


@media (max-width: 619px) {
    .download .inner {
        display: block;
        position: relative;
    }

    .download ul {
        display: block;
    }

    .download li:first-child {
        margin-bottom: 8px;
    }

    .download .qr-wrapper {
        bottom: 0;
        position: absolute;
        right: 0;
        width: 104px;
    }



    .presentation .box {
        height: auto;
        padding: 35px 16px 33px;
    }

    .presentation svg {
        bottom: -48%;
        left: -76%;
        width: calc(var(--width--container) * 3);
    }

    .presentation p {
        position: static;
    }

    .presentation p:first-of-type {
        margin-bottom: 20px;
        width: auto;
    }

    .presentation p:last-of-type {
        width: auto;
    }

    .presentation .media-wrapper {
        display: none;
    }
}