@media (min-height: 909px) and (min-width: 1278px) {
    .hero {
        margin-top: 133px;
    }
}

@media (max-height: 909px) and (min-width: 1278px) {
    .hero-tg-icon {
        top: -7.4px;
    }
    .hero {
        margin-top: 84px;
    }
}



@media (max-width: 1278px) {
/*        Main            */
    .paddings {
        padding-bottom: 70px;
        padding-top: 70px;
    }

    .section-title {
        margin-bottom: 70px;
    }

    /*        Nav        */

    .nav {
        display: flex;
        justify-content: flex-end;
        /*        animation: down 0.5s ease;*/
    }

    .nav-list {
        display: none;
    }

    .nav-button {
        display: block;
    }

    .nav-close-button {
        display: flex;
        justify-content: center;
        align-items: center;

        width: 50px;
        height: 44px;

        cursor: pointer;

        position: fixed;
        right: 27px;
        top: 25px;
    }

    .nav.open .nav-list {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;

        border-radius: 0 0 40px 40px;
        background-color: #fff;

        z-index: 10;

        padding: 62px 27px;

        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: normal;
        row-gap: 57px;

        font-weight: 600;

        font-size: 1.78rem;

        animation: down 0.4s ease forwards;
    }

    .nav.closing .nav-list {
        animation: up 0.4s ease forwards;
    }

    .nav-overlay {
        animation: fade 0.4s ease forwards;
    }

    .nav.closing + .nav-overlay {
        animation: fadeReverse 0.4s ease forwards;

    }

    @keyframes fade {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }

    @keyframes fadeReverse {
        0% {
            opacity: 1;
        }
        100% {
            opacity: 0;
        }
    }

    @keyframes down {
        0% {
            transform: translateY(-100%);
        }
        100% {
            transform: translateY(0);
        }
    }

    @keyframes up {
        0% {
            transform: translateY(0);
        }
        100% {
            transform: translateY(-100%);
        }
    }

    .nav-leave-request-btn {
        position: relative;
        right: 0;
        left: 0;
        width: 248px;
        font-weight: 500;

    }

    .nav.open + .overlay {
        display: block;
    }


    /*        Hero       */
    .hero {
        height: auto;
        margin-bottom: 70px;
    }

    .hero-background-image {
        display: none;
    }

    .hero-background {
        background-image: url('/static/core/img/ui/hero-background.webp');
        background-color: #292929;
        border-radius: 50px;
        height: 100%;
        width: calc(100% + 27px + 27px);
        right: -27px;
    }

    .hero--content {
        flex-direction: column;
        align-items: center ;
    }

    .hero--info {
        width: 100%;
        max-width: 450px;
        margin-bottom: 27px;
    }

    .hero-text {
        margin-bottom: 35px;
        margin-top: 20px;
    }

    .hero-tg-icon {
        top: 1px;
        left: 51.5%;
    }

    .hero-highlight-background {
        left: -4.1%;
        top: -8%;
    }

    /*            About         */

    .about-content {
        flex-direction: column;
        align-items: center;
    }

    .about-text {
        row-gap: 25px;
        margin-bottom: 35px;
    }

    /*        Request Form       */

    .request-form {
        min-height: 100vh;
        border-radius: 0;
        margin: 0;
    }

    .request-form-content {
        padding-right: 27px ;
        padding-left: 27px ;
    }

    .request-form-close-btn {
        top: 5px;
        right: 5px;
        width: 48px;
        height: 48px;
    }

    .request-form-submit-btn {
        font-size: 1.33rem ;
    }

    .success-message {
        max-width: 100% ;
    }

    /*    Contacts    */

    .contacts-content {
        flex-direction: column;
        row-gap: 50px;
    }

    .contacts-order-bot {
        align-items: flex-start;

    }

    .contacts-heading {
        margin-bottom: 30px;
    }

    .contacts-column {
        row-gap: 25px;
    }

    .contacts-info-socials-list {
        column-gap: 35px;
    }

    /*    Order bot*/

    .order-bot-heading {
        margin-bottom: 35px;
    }

    .order-bot-paragraph {
        margin-bottom: 35px;
        max-width: 100%;

    }

    /*    Work process   */

    .work_process_row {
        flex-direction: column;
        row-gap: 40px;
    }

    .step_down {
        margin-top: 0;
        margin-left: 50%;
    }
    .step_up {
        margin-right: 50%;
    }

    .work_process_line {
        width: 2px;
        height: 100%;
        top: 0;
        right: 50%;
    }

    .step_text {
        max-width: 120px;
    }

    .work_process_step::after {
        top: 50%;
    }

    .step_up::after {
        right: -5px;
    }

    .step_down::after {
        left: -7px;
    }



    /* Cost Calculator */

    .cost-calculator {
        max-height: 100vh;
        height: 100vh;
    }

    .cost-calculator-container {
        width: 100vw;
        padding: 0;
    }

    .cost-calculator__content {
        border-radius: 0;
        padding:  20px 27px;

        --pad-h: 27px;
        --pad-v: 30px;

    }

    .cost-calculator__hide-btn-icon {
        font-size: 35px;
    }

    .cost-calculator__hide-btn {
        width: 50px;
        height: 50px;
    }

    /*  Nav btns  */

    .cost-calculator__nav-btns {
        column-gap: 16px;
    }

    .cost-calculator__nav-btn {
        width: 72px;
        height: 72px;

    }

    /* Question */

    .cost-calculator__question {
        margin-bottom: 27px;
        width: 86%;
        max-height: 94px;
    }

    /*  Answers  */

    .cost-calculator__answers {
        row-gap: 16px;
    }

    .cost-calculator__answer {
        height: 72px;
    }

    /*  Progress  */

    .cost-calculator__progress {
        width: 72px;
        height: 72px;
    }

    /*  Result  */
    .cost-calculator__result {
        row-gap: 70px;
    }

    .cost-calculator__result-wrapper {
        padding: 0 20px;

}



@media (max-width: 700px) {
/*        Btn Leave Request        */

    .btn-func {
        width: 248px;
        height: 60px;
        font-size: 1rem;
    }

    /*        Hero          */

    .hero-text {
        margin-bottom: 27px;
        margin-top: 17px;
    }

    .hero--info {
        max-width: 351px;
    }

    .hero-demo-img-mob {
        width: 100%;
        max-width: 390px;
    }

    /*            About              */

    .about-text {
        width: 100%;
        max-width: 336px;
    }

    .about-text-heading {
        height: 90px;
        font-size: 1.78rem;
        background-image: url('/static/core/img/ui/about-highlight-mob.svg');
    }

    .about-text-paragraph {
    /*        line-height: 29.8px;*/
    }

    .about-cards {
        gap: 16px;
    }

    .about-card {
        max-width: 160px; /* Сохраняет максимальную ширину карточки */
        height: 150px;
        padding: 20px 15px;
    }

    .about-card-heading {
        font-size: 1.78rem;
        margin-bottom: 12px;
    }

    .about-card-text {
        font-size: 1rem;
        overflow-wrap: break-word;
    }

    /*    Contacts    */

    .contacts-info-socials-item {
        width: 48px;
        height: 48px;
    }

    .contacts-info-socials-list {
        column-gap: 30px;
    }


    /*    Prices   */

    .service-card {
        padding-top: 30px;
        padding-bottom: 30px;
        height: 335px;
        max-width: 247px;
    }

    .service-card-heading {
        margin-bottom: 10px;
    }

    .service-card-button {
        height: 44px;
    }

    .service-card-conditions {
        margin-bottom: 15px;
        row-gap: 10px;
    }

    .step_icon {
        width: 65px;
        height: 65px;
    }

    /*    Portfolio*/

    .project {
        width: 336px;
        min-width: 336px;
        height: 337px;
        min-height: 337px;
        background-image: url('/static/core/img/ui/project-background-black-mob.svg');
    }

    .project-background {
        max-width: 100%;
        max-height: 100%;
        height: 100%;
    }

    .project-content {
        padding: 30px 20px 20px 20px;

    }

    .project-icon {
        width: 75px;
        left: auto;
        right: 20px;
        top: 0;
    }

    .project-text {
        margin-top: 0;
        margin-bottom: 0;

    }

    .project-title {
        font-size: 1.78rem;
        margin-bottom: 15px;
    }

    .project-paragraph-text {
        margin-bottom: 10px;
        max-height: 170px;
    }

    .project-link {
        gap: 10px;
        height: 50px;
        bottom: 20px;
    }

    .project-link img {
        margin-top: 2px;
        width: 12.5px;
    }

    .project-paragraph-title {
        cursor: pointer;
        margin-bottom: 10px;
    }

    .project:first-of-type {
        margin-left: calc(50vw - 168px); /* Половина ширины экрана минус половина ширины элемента */
    }

    .project:last-of-type {
        margin-right: calc(50vw - 168px); /* Аналогично для последнего элемента */
    }

    .project-paragraph-chevron {
        font-size: 1.11111111rem;
        position: relative;
        display: inline-block;
        transition: transform 0.25s ease;
        left: 2px;
    }

    .project-text.active {
        width: 100%;
    }


    .project-paragraph.active .project-paragraph-chevron {
        transform: rotate(180deg);
    }

    @keyframes fade-down {
        from {
            transform: translateY(-15px);
        }
        to {
            transform: translateY(0);
        }
    }

    .project-link-h4.active {
        display: none;
    }

    .project-demo.active {
        display: none;
    }

    .portfolio-nav-btn {
        width: 60px;
        height: 60px;
        font-size: 25px;
    }


    /*        FAQ        */

    .faq-item {
        padding: 21px 31px;
    }

    .faq-open {
        margin-right: 20px;
    }

    .faq-item.open .faq-answer {
        margin-top: 21px;
    }


}
