@font-face {
    font-family: 'RobotoFlex';
    src: url('../static/fonts/RobotoFlex-VariableFont_GRAD\,XOPQ\,XTRA\,YOPQ\,YTAS\,YTDE\,YTFI\,YTLC\,YTUC\,opsz\,slnt\,wdth\,wght.ttf');
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Gilroy";
    font-size: 0.9rem;
    -webkit-tap-highlight-color: transparent;
}

html {
    scrollbar-width: none;
}




/* SECTION 1 */

.section_1 {
    display: flex;
    padding: 50px 100px;
    justify-content: center;
    align-items: center;
    background-color: var(--bg);
}

/* SECTION 1 text  */
.section_1 .main_text_div {
    width: 70%;
    /* height: 400px; */
    background-color: var(--bg);
    margin-right: 0%;

}

.section_1 .main_text_div .main {
    position: relative;
}

.section_1 .main_text_div h1 {
    font-size: 2.3rem;
    font-weight: 500;
    color: var(--dark);
}

.section_1 .main_text_div h2 {
    font-size: 1.8rem;
    font-weight: normal;
    margin-bottom: 20px;
    color: var(--dark);
}

.section_1 .main_text_div p {
    font-size: 1.2rem;
    color: var(--black);
    margin-bottom: 14px;
    line-height: 150%;
    padding-right: 10%;

    b {
        font-weight: 500;
        color: var(--black_bold);
        font-size: 1.2rem;
    }

}



.sign_up_button {
    margin-top: 20px;
    padding: 15px 40px;
    background-color: var(--blue);
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 1.1rem;
    border-radius: calc(0.6rem + 20px);
    font-weight: 700;
}

/* SECTION 1 image */

.section_1 .image_div {
    width: 50%;
    align-self: stretch;
    background-color: var(--bg);
    margin-right: 60px;
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
    position: relative;
    margin-left: 10%;
}

.section_1 .image_div .behind_image {
    width: 90%;
    height: 100%;
    background-color: var(--light_blue);
    position: relative;
    z-index: 0;
    left: -50px;
    top: -20px;
}

.section_1 .image_div .image {
    width: 90%;
    height: 100%;
    background-color: var(--bobr);
    position: absolute;
    z-index: 1;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}

/* SECTION 2  */

.section_2 {
    display: flex;
    padding: 50px 100px;
    flex-direction: column;
    align-items: center;
    background-color: var(--bg);
}

/* SECTION 2 description */
.section_3 .main_description {
    padding: 0 15%;
    text-align: center;

    * {
        text-align: center;
        margin-bottom: 20px;
    }
}

.section_3 .main_description h2 {
    font-size: 1.3rem;
    color: var(--black);
    font-weight: 500;
    word-spacing: 2px;
    letter-spacing: 2px;
    padding: 0 20px;

    &::after {
        content: '';
        display: block;
        width: 20px;
        height: 3px;
        background-color: var(--blue);
        margin: 0 auto;
        margin-top: 10px;
    }

}

.section_3 .main_description h3 {
    font-size: 1rem;
    color: var(--black);
    font-family: 'Gilroy';
    font-weight: 500;
    max-width: 600px;

}

.section_2 .description {
    text-align: center;
}

/* SECTION 2 cards */

.section_2 .cards {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 50px;
    margin-bottom: 0px;
}

.section_2 .cards .card {
    width: 15vw;
    max-height: 400px;
    background-color: var(--bg);
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    text-decoration: none;
}

.section_2 .cards .card .image {
    width: 15vw;
    height: 15vw;
    background-color: var(--bobr);
    border-radius: 50%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.section_2 .cards .card .description {
    font-size: 1.4rem;
    color: var(--black);
    margin-top: 40px;
    padding: 0 20px;
}


/* SECTION 3 */

.section_header {
    font-size: 2.6rem;
    color: var(--black_bold);
    margin-bottom: 60px;
    text-align: center;
    font-weight: 400;

    &::after {
        content: '';
        display: block;
        width: 50px;
        height: 3px;
        background-color: var(--blue);
        margin: 0 auto;
        margin-top: 20px;
    }
}

.section_3 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px 200px;
    background-color: var(--bg);
}

.section_3 .advantages {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

.section_3 .advantages .advantage {
    display: flex;
    align-items: flex-start;
    margin-bottom: 50px;
    max-width: 45%;
    cursor: pointer;
    text-decoration: none;
}

.section_3 .advantages .advantage .image {
    width: 100px;
    height: 100px;
    background-color: var(--light);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;

    i {
        color: var(--dark);
        font-size: 4rem;
    }
}

.section_3 .advantages .advantage .description {
    width: calc(45vw - 400px);
    margin-left: 20px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-self: stretch;
}

.section_3 .advantages .advantage .description .name {
    font-size: 1.5rem;
    font-weight: 300;
    color: var(--black);
    margin-bottom: 10px;
    display: inline-block;
}

.section_3 .advantages .advantage .description .text {
    font-size: 1.2rem;
    color: var(--black);
    font-family: 'Gilroy';
    display: inline-block;
}

/* SECTION 4 */

.section_4 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px 200px;
    background-color: var(--bg);
}

.section_4 .cards {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    width: 100%;
}

.section_4 .cards .card {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 21%;
    cursor: pointer;
    background-color: var(--light);
    padding: 20px;
    border-radius: 10px;
    margin: 0 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.section_4 .cards .card .name {
    font-size: 1.4rem;
    color: var(--black);
    margin-top: 40px;
    margin-bottom: 90px;
    text-align: center;
    font-weight: 500;
    position: absolute;
    width: calc((100vw - 400px) * 0.21);
}

.section_4 .cards .card .price {
    font-size: 2.5rem;
    font-weight: 500;
    color: var(--black_bold);
    margin-bottom: 10px;
    text-align: center;
    margin-top: calc(1.2rem + 100px);

    &::after {
        content: ' руб';
        font-size: 1rem;
    }
}

.section_4 .cards .card .description {
    color: var(--black);
    font-family: 'Gilroy';
    text-align: center;
    margin: 5px;
}

.section_4 .cards .card .description li {
    margin-bottom: 10px;
    text-align: left;
    font-size: 0.95rem;
    font-weight: 400;
}

.section_4 .cards .card .button_div {
    align-self: stretch;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

/* SECTION 5 */

.section_5 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px 100px;
    background-color: var(--bg);
}

.section_5 .main_div {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    /* margin-bottom: 50px; */
}

.section_5 .main_div ul {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: space-between;
    width: 50%;
    list-style-type: none;

}

.section_5 .main_div ul li {
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    margin-bottom: 20px;
    color: var(--black);
    font-size: 1.1rem;
    position: relative;
    padding-left: 30px;

    &::before {
        content: "•";
        /* Кастомный маркер (точка) */
        color: var(--bobr);
        /* Цвет маркера */
        font-size: 4rem;
        /* Размер маркера */
        position: absolute;
        left: 0;
        top: 0;
        transform: translateY(calc(-50% + 0.84rem));
    }
}

.section_5 .main_div .diploms {
    margin-left: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 50%;
    align-self: stretch;
    background-color: none;
}

.section_6 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px 200px;
    background-color: var(--bg);
}

.section_6 .experience {
    display: flex;
    flex-direction: row;
    width: 100%;
    margin-bottom: 50px;
    justify-content: space-between;
    align-items: center;
}

.section_6 .experience .case {
    width: 30%;
    max-width: 300px;
}

.section_6 .experience .case .emphasis {
    font-size: 3.2rem;
    color: var(--dark);
    font-weight: 500;
    text-align: center;

}

.section_6 .experience .case .description {
    font-size: 1.2rem;
    color: var(--black);
    font-family: 'Gilroy';
    text-align: center;
}

.diploms{
    display: flex;
    align-items: center;
    position: relative;
}

.slider {
    position: relative;
    max-width: 600px;
    /* Максимальная ширина слайдера */
    margin: 0 auto;
    overflow: hidden;
    width: 100%
    
}

.slider-container {
    display: flex;
    width: 100%;
    height: auto;
    transition: transform 0.5s ease-in-out;
}

.slide {
    min-width: 100%;
    height: auto;
    /* Каждая фотография занимает всю ширину контейнера */
    display: none;
    /* Скрываем все фотографии по умолчанию */
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;

}

.slide.active {
    display: block;
    /* Показываем активную фотографию */
}

.slider-arrow {
    position: absolute;
    bottom: 50%;
    background-color: var(--blue);
    transform: translateY(50%);
    color: white;
    border: none;
    cursor: pointer;
    padding: 10px;
    font-size: 24px;
    z-index: 10;
}

.left-arrow {
    left: 10px;
}

.right-arrow {
    right: 10px;
}


/* FOOTER */

footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 20px;
}

footer .buttons {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 10px;
    position: relative;

    .phone{
        width: 100%;
        text-align: center;
        display: inline-block;
        font-size: 1rem;
    }
    .inst{
        height: 52%;
        transform: translate(0, 5%);
    }
    
    .b17{
        width: 65%;
        transform: translate(4%, 5%);
    }
    .vk{
        height: 60%;
        transform: translate(-5%, 5%);
    }
}

footer .buttons button {
    background-color: var(--blue);
    border: none;
    cursor: pointer;
    border-radius: 50%;
    margin: 5px;
    width: 60px;
    height: 60px;
}

.whatsapp_footer {
    height: 50%;
    transform: translate(3%, 3%);
}

.tg_footer {
    height: 42%;
    transform: translate(-9%, 4%);
}

footer p {
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
}





@media screen and (max-width: 1300px) {
    .section_1 {
        padding: 30px 50px;
    }

    .section_1 .main_text_div {
        margin-right: 0 !important;
    }

    .section_1 .image_div {
        margin-left: 0 !important;
    }

    .section_2 .description {
        padding: 0 50px;
    }

    .section_3 .advantages .advantage .description {
        width: calc(100% - 120px);
    }

    .section_4 .cards .card {
        width: 35%;

        .name {
            font-size: 1.3rem !important;
        }

        .price {
            font-size: 2.2rem !important;
        }
    }

    .section_5 {
        padding: 50px 50px;
    }

    .section_6 .experience .case .emphasis {
        font-size: 2.5rem;
    }

}

@media screen and (max-width: 800px) {
    .section_1 {
        flex-direction: column;
        padding: 50px 20px;
    }

    .section_1 .image_div {
        width: calc(100% - 40px);
        margin: 40px 0;
        margin-top: 0;
        height: 80vh;
        justify-content: center;
        transform: translateX(8vw);
    }

    .section_1 .main_text_div {
        margin: 0;
        text-align: center;
        position: relative;

        .me {
            position: absolute !important;
            top: -20vh;
            left: 10vw;
            height: 400px;
            text-align: left;

            * {
                color: #fff
            }
        }

        .text {
            margin: 10px 0;
            padding: 0;
            text-align: left;
        }

    }

    .section_2 {
        padding: 50px;

        .cards .card .description {
            padding: 0 20px;
            font-size: 1.2rem;
        }
    }

    .section_3 {
        padding: 50px;

        .advantages {
            justify-content: center;
        }

        .advantages .advantage {
            min-width: 300px;
        }

        .advantages .advantage .description .name {
            font-size: 1.2rem;
        }

        .advantages .advantage .description .text {
            font-size: 1rem;
        }
    }

    .section_4 .cards {
        flex-direction: column;
    }

    .section_4 .cards .card {
        width: auto;
        margin: 0;
        margin-bottom: 0px;


        .name {
            width: 40vw;
        }
    }

    .section_5 .main_div {
        padding: 50px 20px;
        flex-direction: column;

        ul {
            margin: 0;
            padding: 0;
            width: 80vw
        }

        .diploms {
            height: 80vh;
            width: auto;
        }
    }

    .section_6 {
        padding: 50px 20px;
    }

    .section_6 .experience {
        flex-direction: column;

        .case {
            margin: 0;
            margin-bottom: 40px;
            width: auto;
            text-align: center;

            .emphasis {
                font-size: 2.5rem;
                width: auto
            }
        }
    }


}

@media screen and (max-width: 600px) {
    .section_1 {
        padding: 50px 10px;

        .image_div {
            margin: 10px;
            width: calc(90% - 20px);
        }

        .main_text_div {
            .name {
                font-size: 1.6rem;
            }
        }
    }

    .section_2 .description {
        padding: 0;
    }

    .section_2 .cards {
        flex-direction: column;

        .card {
            width: auto;

            .image {
                width: 50vw;
                height: 50vw;
            }

            .description {
                max-width: 70%;
                margin: 10px 0;
                margin-bottom: 30px;
                text-align: center !important;
            }
        }
    }

    .section_4 {
        padding: 50px 10px;

        .cards {
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }

        .cards .card {
            width: auto;
            max-width: 50vw;
        }
    }

    .section_5 {
        padding: 50px 10px;

        .main_div .diploms {
            margin: 0;
            height: auto !important;
        }
    }
}

@media screen and (max-width: 400px) {
    .section_1 {
        padding: 15px 5px;
    }

    .section_1 .main_text_div .me {
        position: absolute !important;
        top: -10vh;
        left: 10vw;
        height: 400px;
        text-align: left;

        * {
            color: #fff
        }
    }

    .section_1 .image_div {
        height: auto;
        margin: 0;
        width: calc(90vw - 20px);

        .behind_image {
            transform: translate(10vw, 5vw);
        }

        * {
            height: 50vh !important;
            width: calc(90vw - 20px) !important;
            transform: translateX(-5vw);
        }
    }

    .section_1 .main_text_div {
        width: auto;
        padding: 0 10px;

        .text {
            padding: 0 10px;
            font-size: 1.1rem;

            b{
                font-size: 1.3rem !important;
                font-weight: 600;
            }
        }
    }

    .section_header {
        padding: 0;
        font-size: 1.8rem;
        margin-bottom: 10px;
    }

    .section_2 {
        padding: 15px 5px;
    }

    .section_2 .description * {
        font-size: 0.8rem !important;
        margin-bottom: 5px;
    }

    .section_3 {
        padding: 15px 5px;
    }

    .section_3 .main_description {
        padding: 10px;

        h2{
            font-size: 1.2rem !important;
        }

        h3{
            font-size: 0.85rem !important;
        }
    }

    .section_3 .advantages {
        width: auto;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .section_3 .advantages .advantage {
        flex-direction: column;
        align-items: center;
        min-width: 150px;

        .description {
            width: auto;
            text-align: center;
            margin: 0;

            .name {
                padding-top: 2vw;
                font-size: 1.1rem;
                font-weight: 500;
            }
        }
    }

    .section_4 .cards .card {
        width: fit-content;
        width: 70vw;

        .name {
            width: 50vw;
        }
    }

    .section_5 .main_div .diploms {
        height: 50vh !important;
    }
}

.sign_up .sign_up_button {
    margin-top: 20px;
    padding: 20px 50px;
    background-color: var(--lil_dark_bobr);
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 1.1rem;
    border-radius: calc(0.6rem + 20px);
    font-weight: 700;
    position: absolute;
    left: 50%;
    bottom: 5vw;
    transform: translateX(-50%);
    
}
button:active {
    background-color: var(--blue_hover) !important;
}

@media (hover) {
    button:hover {
        background-color: var(--blue_hover);
    }
}

.sign_up {
    padding: 2vw 10vw 5vw 10vw;
    background-color: var(--bobr);
    color: #fff;
    position: relative;

    .info {

        h1 {
            font-size: 3rem;
            font-weight: 400;
            margin-bottom: 20px;
            max-width: 60%;
        }

        i {
            font-size: 2rem;
            margin: 20px 5px 20px 0;
        }

        .phone {
            display: inline-block !important;
            font-size: 1.8rem;
            font-weight: 500;
            margin: 20px 0;
            text-decoration: underline;
            cursor: pointer;
            display: flex;
            align-items: center;
            width: auto;

            a {
                color: #fff;
                text-decoration: none;
                font-size: inherit;

                @media (hover) {
                    &:hover {
                        color: var(--darker_bobr) !important;
                    }

                }
            }

            &:active {
                color: var(--darker_bobr) !important;
            }

            @media (hover) {
                &:hover {
                    color: var(--darker_bobr) !important;
                }

            }


        }

        button {
            height: 10vh;
            background-color: var(--lil_dark_bobr);
            border: none;
            cursor: pointer;
            border-radius: 50%;
            margin: 5px;
            width: 60px;
            height: 60px;

            @media (hover) {
                &:hover {
                    background-color: var(--darker_bobr) !important;
                }
            }
        }

        .whatsapp {
            height: 50%;
            transform: translate(3%, 3%);
        }

        .tg {
            height: 42%;
            transform: translate(-9%, 4%);
        }
    }

    .sign_up_button {
        background-color: var(--lil_dark_bobr);

        @media (hover) {
            &:hover {
                background-color: var(--dark_bobr) !important;
            }
        }
    }

}



@media screen and (max-width: 1100px) {

    .sign_up {
        max-height: none !important;
        height: auto !important;
    }

    .section_4 .cards {
        width: auto !important;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 30px;
    }

    .section_4 .cards .card {
        width: 300px !important;

        .name {
            width: 200px !important;
        }
    }

    .section_6 {
        padding: 50px 50px;
    }
}

@media screen and (max-width: 600px) {

    .sign_up {
        padding: 5vw;
        text-align: center;

        h1 {
            font-size: 1.7rem !important;
            max-width: 90vw !important;
            text-align: center;
        }

        .buttons {
            text-align: center;
        }

        .info {
            text-align: center;
        }

        p {
            font-size: 1.5rem !important;
        }

        .sign_up_button {
            position: static;
            transform: none;
        }

    }

    .section_4 .cards .card {
        width: 300px !important;
        gap: 0;
    }


}

@media screen and (max-width: 350px) {
    .sign_up h1 {
        font-size: 1.2rem !important;
    }

    .sign_up .info .phone {
        font-size: 1.2rem !important;
    }

    .section_4 .cards .card {
        width: 90vw !important;
        min-width: 200px;
    }
}
