/* -- Стили для обертки -- */

.main_wrapper {
    grid-column: 1/2;
    grid-row: 2/3;

    justify-self: stretch;
    align-self: stretch;

    display: grid;
    grid-template-columns: 1fr minmax(360px, 1140px) 1fr;
}

main {
    grid-column: 2/3;
    grid-row: 1/2;

    justify-self: center;
    align-self: stretch;

    display: grid;
    grid-template-columns: repeat(1, auto);
    grid-template-rows: repeat(1, auto);
}



/* -- Стили для первой секции -- */

.about_us_full {
    grid-column: 1/2;
    grid-row: 1/2;

    justify-self: stretch;
    align-self: stretch;

    display: grid;
    grid-template-columns: 600px auto;
    grid-template-rows: repeat(4, min-content);
    grid-column-gap: 20px;
    grid-row-gap: 20px;

    margin: 0 80px;
}

.about_us_full > h2 {
    grid-column: 1/3;
    grid-row: 1/2;

    justify-self: stretch;
    align-self: stretch;

    margin-bottom: 20px;

    text-align: center;
}

.about_us_full_img {
    grid-column: 1/2;
    grid-row: 2/3;

    justify-self: stretch;
    align-self: stretch;

    background-color: #ffffff;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;

    width: 600px;
    height: 400px;
}

.about_us_full > .about_us_full_txt_1 {
    grid-column: 2/3;
    grid-row: 2/3;

    justify-self: stretch;
    align-self: stretch;

    display: grid;
    grid-auto-rows: min-content;
    grid-row-gap: 20px;
}

.about_us_full > .about_us_full_txt_2 {
    grid-column: 1/3;
    grid-row: 3/4;

    justify-self: stretch;
    align-self: stretch;

    display: grid;
    grid-auto-rows: min-content;
    grid-row-gap: 20px;
}

.about_us_full > div > p {
    display: block;
    font-size: 1.125em;
    text-align: justify;
    line-height: 1.8;
}

.about_us_full > a {
    grid-column: 1/3;
    grid-row: 4/5;

    justify-self: end;
    align-self: center;

    margin-bottom: 20px;
    margin-right: 20px;
    padding: 0 30px 5px 30px;

    display: block;

    font-size: 1.25em;
    text-align: center;

    border-bottom: 3px solid var(--border_bottom_color);
}

.about_us_full > a:hover {
    border-bottom: 3px solid var(--hover_color_red);
}



/* -- Стили для мобильных устройств -- */
/* -- Extra small devices (portrait phones, less than 576px) -- */
@media (max-width: 575.98px) {
    /* -- Стили для обертки -- */

    .main_wrapper {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: stretch;
        align-self: stretch;

        display: grid;
        grid-template-columns: auto;
    }

    main {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: center;
        align-self: stretch;

        display: grid;
        grid-template-columns: repeat(1, auto);
        grid-template-rows: repeat(5, auto);
    }



    /* -- Стили для первой секции -- */

    .about_us_full {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        grid-template-columns: auto;
        grid-template-rows: repeat(5, min-content);

        margin: 0 20px;
    }

    .about_us_full > h2 {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        margin-bottom: 20px;

        text-align: center;
    }

    .about_us_full_img {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: center;
        align-self: stretch;

        width: 320px;
        height: 214px;
    }

    .about_us_full > .about_us_full_txt_1 {
        grid-column: 1/2;
        grid-row: 3/4;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > .about_us_full_txt_2 {
        grid-column: 1/2;
        grid-row: 4/5;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > div > p {
        font-size: 1.0em;
    }

    .about_us_full > a {
        grid-column: 1/2;
        grid-row: 5/6;

        justify-self: center;
        align-self: center;

        margin-bottom: 20px;
        margin-right: 0;
    }
}

/* -- Small devices (landscape phones, 576px and up) -- */
@media (min-width: 576px) and (max-width: 767.98px) {
    /* -- Стили для обертки -- */

    .main_wrapper {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: stretch;
        align-self: stretch;

        display: grid;
        grid-template-columns: auto;
    }

    main {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: center;
        align-self: stretch;

        display: grid;
        grid-template-columns: repeat(1, auto);
        grid-template-rows: repeat(5, auto);
    }



    /* -- Стили для первой секции -- */

    .about_us_full {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        grid-template-columns: auto;
        grid-template-rows: repeat(5, min-content);

        margin: 0 30px;
    }

    .about_us_full > h2 {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        margin-bottom: 20px;

        text-align: center;
    }

    .about_us_full_img {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: center;
        align-self: stretch;

        width: 516px;
        height: 344px;
    }

    .about_us_full > .about_us_full_txt_1 {
        grid-column: 1/2;
        grid-row: 3/4;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > .about_us_full_txt_2 {
        grid-column: 1/2;
        grid-row: 4/5;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > div > p {
        font-size: 1.0em;
    }

    .about_us_full > a {
        grid-column: 1/2;
        grid-row: 5/6;

        justify-self: center;
        align-self: center;

        margin-bottom: 20px;
        margin-right: 0;
    }
}

/* -- Medium devices (tablets, 768px and up) -- */
@media (min-width: 768px) and (max-width: 991.98px) {
    .main_wrapper {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: stretch;
        align-self: stretch;

        display: grid;
        grid-template-columns: auto;
    }

    main {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: center;
        align-self: stretch;

        display: grid;
        grid-template-columns: repeat(1, auto);
        grid-template-rows: repeat(5, auto);
    }



    /* -- Стили для первой секции -- */

    .about_us_full {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        grid-template-columns: auto;
        grid-template-rows: repeat(5, min-content);

        margin: 0 30px;
    }

    .about_us_full > h2 {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        margin-bottom: 20px;

        text-align: center;
    }

    .about_us_full_img {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: center;
        align-self: stretch;
    }

    .about_us_full > .about_us_full_txt_1 {
        grid-column: 1/2;
        grid-row: 3/4;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > .about_us_full_txt_2 {
        grid-column: 1/2;
        grid-row: 4/5;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > div > p {
        font-size: 1.0em;
    }

    .about_us_full > a {
        grid-column: 1/2;
        grid-row: 5/6;

        justify-self: center;
        align-self: center;

        margin-bottom: 20px;
        margin-right: 0;
    }
}

/* -- Large devices (desktops, 992px and up) -- */
@media (min-width: 992px) and (max-width: 1139.98px) {
    .main_wrapper {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: stretch;
        align-self: stretch;

        display: grid;
        grid-template-columns: auto;
    }

    main {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: center;
        align-self: stretch;

        display: grid;
        grid-template-columns: repeat(1, auto);
        grid-template-rows: repeat(5, auto);
    }



    /* -- Стили для первой секции -- */

    .about_us_full {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        grid-template-columns: auto;
        grid-template-rows: repeat(5, min-content);

        margin: 0 30px;
    }

    .about_us_full > h2 {
        grid-column: 1/2;
        grid-row: 1/2;

        justify-self: stretch;
        align-self: stretch;

        margin-bottom: 20px;

        text-align: center;
    }

    .about_us_full_img {
        grid-column: 1/2;
        grid-row: 2/3;

        justify-self: center;
        align-self: stretch;
    }

    .about_us_full > .about_us_full_txt_1 {
        grid-column: 1/2;
        grid-row: 3/4;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > .about_us_full_txt_2 {
        grid-column: 1/2;
        grid-row: 4/5;

        justify-self: stretch;
        align-self: stretch;
    }

    .about_us_full > div > p {
        font-size: 1.0em;
    }

    .about_us_full > a {
        grid-column: 1/2;
        grid-row: 5/6;

        justify-self: center;
        align-self: center;

        margin-bottom: 20px;
        margin-right: 0;
    }
}

/* -- Extra large devices (large desktops, 1200px and up) -- */
@media (min-width: 1140px) {

}












