/* ФАЙЛ: css/responsive.css
   ЧТО ДЕЛАЕТ: адаптив под планшеты и телефоны
   КАК МЕНЯТЬ: брейкпоинты 1024px (небольшой ноутбук), 768px (планшет), 480px (мобильный) */

/* ===== НЕБОЛЬШОЙ НОУТБУК (до 1024px) ===== */
@media (max-width: 1024px) {
    .grid--4 {
        grid-template-columns: repeat(3, 1fr);
    }

    .cats {
        grid-template-columns: repeat(3, 1fr);
    }

    .footer__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .slide__title {
        font-size: 38px;
    }
}

/* ===== ПЛАНШЕТ (до 768px) ===== */
@media (max-width: 768px) {
    .burger {
        display: flex;
        order: 2;
        margin-left: auto;
    }

    .logo {
        order: 1;
    }

    .search {
        order: 3;
        max-width: 100%;
        flex-basis: 100%;
    }

    .nav {
        order: 4;
        flex-basis: 100%;
        display: none;
    }

    .nav.is-open {
        display: block;
    }

    .nav__list {
        flex-direction: column;
        gap: 0;
    }

    .nav__list li {
        border-top: 1px solid var(--border-color);
    }

    .nav__list a {
        display: block;
        padding: 12px 2px;
    }

    .slides {
        height: 400px;
    }

    .slide__title {
        font-size: 30px;
    }

    .usp__grid,
    .two-col,
    .contact {
        grid-template-columns: 1fr;
    }

    .grid--4 {
        grid-template-columns: repeat(2, 1fr);
    }

    .stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .section {
        padding: 40px 0;
    }

    .section__title {
        font-size: 24px;
    }

    .page-head h1 {
        font-size: 30px;
    }
}

/* ===== МОБИЛЬНЫЙ (до 480px) ===== */
@media (max-width: 480px) {
    .topbar__inner {
        flex-direction: column;
        gap: 4px;
        text-align: center;
    }

    .slides {
        height: 440px;
    }

    .slide__title {
        font-size: 25px;
    }

    .hero__arrow {
        width: 36px;
        height: 36px;
        font-size: 20px;
    }

    .grid--4,
    .cats {
        grid-template-columns: 1fr;
    }

    .footer__grid {
        grid-template-columns: 1fr;
    }

    .section__head {
        flex-direction: column;
        align-items: flex-start;
    }

    .contact__list li {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .card__media img {
        height: 220px;
    }
}
