@media (max-width: 1140px) {
    .nav-box {
        justify-content: space-between;
    }

    .nav_list {
        margin: 0 auto;
    }

    .about_text,
    .contacts_text {
        line-height: 130%;
    }

    .catalog-box {
        transition: 0.5s;
        display: grid;
        grid-template-columns: repeat(2, 0.2fr);
        grid-template-rows: repeat(2, 1fr);
        justify-content: center;
        align-items: center;
        gap: 50px;
    }

    .card {
        width: 270px;
    }
}

@media (max-width: 1000px) {
    .search_form input {
        width: 170px;
        transition: 0.5s;
    }

    .about {
        margin: 60px 0 80px 0;
    }

    .title {
        margin-bottom: 40px;
        font-size: 35px;
    }

    .about-box {
        display: flex;
        gap: 15px;
    }

    .about-box img {
        height: 240px;
        width: auto;
    }


    .about_text,
    .contacts_text {

        line-height: 120%;
    }

    .contacts_title {
        font-size: 35px;
    }

    .footer-box {
        gap: 50px;
    }
}

@media (max-width: 900px) {
    .about {
        margin: 60px 0;
    }

    .about-box {
        display: flex;
        flex-direction: column;
    }

    .about-box img {
        transition: 0.5s;
        max-width: 900px;
        width: 100%;
        height: auto;
    }

    .about_text {
        text-align: center;
    }

    .contacts {
        margin: 60px 0;
    }

    .contacts_title {
        font-size: 30px;
    }

    .footer-box {
        gap: 40px;
    }
}

@media (max-width: 800px) {
    nav {
        padding: 30px 0;
    }

    .search_form input {
        width: 140px;
        font-size: 15px;
    }

    .nav_list {
        gap: 25px;
    }

    .nav-box img {
        width: 75px;
    }

    .intro {
        height: 700px;
    }

    .intro h1 {
        font-size: 60px;
    }

    .intro h2 {
        font-size: 35px;
    }

    .about {
        margin: 40px 0;
    }

    .about_text,
    .contacts_text {
        font-size: 17px;
    }

    .title {
        margin-bottom: 30px;
        font-size: 25px;
    }

    .catalog-box {
        gap: 35px;
    }

    .card {
        width: 220px;
    }

    .card a {
        gap: 25px;
    }

    .card_title {
        font-size: 20px;
    }

    .contacts {
        margin: 60px 0;
    }

    .contacts_title {
        text-align: center;
        font-size: 25px;
    }

    .contacts-box {
        gap: 20px;
    }

    .contacts_right {
        gap: 15px;
    }

    .contacts_right a {
        font-size: 19px;
    }

    footer {
        padding-top: 30px;
    }

    .footer-box {
        gap: 30px;
    }
}

@media (max-width: 600px) {
    nav {
        padding: 25px 0;
    }

    .search_form input {
        width: 100px;
        padding: 8px 15px;
        font-size: 14px;
    }

    .nav_list {
        gap: 15px;
    }

    .nav_link a {
        font-size: 15px;
    }

    .nav-box img {
        width: 65px;
    }

    .intro {
        height: 600px;
    }

    .intro h1 {
        font-size: 50px;
    }

    .intro h2 {
        font-size: 30px;
    }

    .intro button {
        padding: 14px 65px;
        font-size: 15px;
    }

    .about {
        margin: 30px 0;
    }

    .about_text,
    .contacts_text {
        font-size: 16px;
    }

    .title {
        margin-bottom: 20px;
        font-size: 20px;
    }

    .catalog-box {
        /* grid-template-columns: repeat(1, 0fr); */
        gap: 25px;
    }

    .card {
        width: 190px;
    }

    .card a {
        gap: 20px;
    }

    .about_text,
    .contacts_text {
        line-height: 100%;
    }

    .card_title {
        font-size: 18px;
    }

    .contacts {
        margin: 30px 0;
    }

    .contacts-box {
        margin-top: 20px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 15px;
    }

    .contacts_text {
        width: auto;
        text-align: center;
    }

    .contacts_right a {
        font-size: 18px;
    }

    footer {
        padding-top: 20px;
    }

    .footer-box {
        gap: 20px;
    }

    .footer_text {
        font-size: 12px;
    }
}

@media (max-width: 500px) {
    nav {
        padding: 10px 0;
    }

    /* .nav-box {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, 1fr);
        gap: 5px;
    } */

    .nav-box {
        display: grid;
        align-items: center;
        grid-template-rows: repeat(1, 0.5fr);
        gap: 5px;

    }

    .nav-box:nth-child(1) {
        grid-row: span 2;
        align-self: center;
    }

    .nav_list {
        grid-column: 1;
        grid-column: span 2;
    }

    .nav_link a {
        font-size: 14px;
        padding-bottom: 3px;
    }

    .nav_right {
        grid-column: 2;
        grid-row: 1;
        justify-self: center;
        align-self: center;
    }

    .search_form input {
        width: 300px;
        padding: 7px 13px;
        font-size: 13px;
    }

    .search_form button {
        width: 65px;
        padding: 5px 10px;
        font-size: 13px;
    }

    .nav_list {
        position: fixed;
        bottom: 0;
        left: 0;
        opacity: 90%;
        justify-content: center;
        background-color: #3E8989;
        width: 100%;
        padding: 10px;
    }

    .intro {
        height: 500px;
    }

    .intro h1 {
        font-size: 40px;
    }

    .intro h2 {
        font-size: 25px;
    }

    .intro button {
        padding: 10px 50px;
        font-size: 14px;
    }

    .about_text,
    .contacts_text {

        font-size: 14px;
    }

    .catalog-box {
        gap: 10px;
        margin-top: 20px;
    }

    .card {
        width: 180px;
    }

    .card a {
        gap: 17px;
    }

    .card_title {
        font-size: 16px;
    }

    .contacts_right {
        gap: 10px;
    }

    .contacts_right a {
        font-size: 17px;
    }

    footer {
        height: 60px;
        padding-top: 0px;
    }

    .footer_list {
        display: none;
    }

    .footer-box {
        gap: 0px;
    }
}

@media (max-width: 450px) {
    .catalog-box {
        gap: 15px;
    }

    .card {
        width: 175px;
    }

    .about_text,
    .contacts_text {

        font-size: 13px;
    }

    .card a {
        gap: 14px;
    }

    .card_title {
        font-size: 15px;
    }

    .contacts_right a {
        font-size: 16px;
    }

}

@media (max-width: 400px) {
    nav {
        padding: 5px 0;
    }

    .nav-box img {
        width: 65px;
    }

    .search_form input {
        width: 140px;
        padding: 3px 7px;
        font-size: 13px;
    }

    .search_form button {
        width: 55px;
        padding: 3px 7px;
        font-weight: 300;
        font-size: 13px;
    }

    .nav_list {
        padding: 5px;
    }

    .nav_link::after {
        height: 1px;
        margin-top: 2px;
    }

    /* .nav-box {
        align-items: center;
        grid-template-rows: repeat(1, 0.5fr);
    } */
    /* 
    .nav_list {
        position: fixed;
        bottom: 0;
        left: 0;
        justify-content: center;
        background-color: #3E8989;
        width: 100%;
        padding: 10px;
    } */

    .nav_link a {
        font-size: 13px;
        padding-bottom: 1px;
    }

    .intro {
        height: 400px;
    }

    .intro h1 {
        font-size: 30px;
    }

    .intro h2 {
        font-size: 20px;
    }

    .intro button {
        padding: 7px 40px;
        font-size: 13px;
    }

    .about {
        margin: 25px 0;
    }

    .about_text,
    .contacts_text {

        font-size: 12px;
    }

    .title {
        margin-bottom: 20px;
        font-size: 20px;
    }

    .catalog-box {
        gap: 15px;
    }

    .card {
        width: 150px;
    }

    .card a {
        gap: 10px;
    }

    .catalog-box {
        gap: 10px;
    }

    .card_title {
        font-size: 14px;
    }

    .contacts_right a {
        font-size: 15px;
    }

    footer {
        height: 45px;
    }

}

@media (max-width: 320px) {
    .search_form input {
        width: 70px;
    }
}