/* ============================================================
   I&T WebDesign - Responsive Stage 7
   ============================================================ */

@media (max-width: 1160px) {
    .phone-cta {
        min-width: 180px;
        font-size: 18px;
        padding: 14px 16px;
    }

    .main-nav {
        gap: 18px;
        font-size: 12px;
    }

    .desktop-device {
        width: 500px;
    }

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

    .card-grid.five,
    .benefits-row {
        grid-template-columns: repeat(2, 1fr);
    }

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

    .feature-strip-grid > div:nth-child(2) {
        border-right: 0;
    }
}

@media (max-width: 960px) {
    .topbar-inner,
    .topbar-left {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }

    .nav-inner {
        min-height: 80px;
    }

    .logo {
        width: 210px;
        flex-basis: 210px;
    }

    .logo img {
        width: 210px;
    }

    .mobile-menu-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .main-nav {
        display: none;
        position: absolute;
        top: 88px;
        left: 20px;
        right: 20px;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: #fff;
        padding: 15px;
        border: 1px solid var(--line);
        border-radius: 14px;
        box-shadow: var(--shadow-strong);
    }

    .main-nav.open {
        display: flex;
    }

    .main-nav a {
        padding: 14px;
        border-bottom: 1px solid var(--line);
    }

    .main-nav a:last-child {
        border-bottom: 0;
    }

    .main-nav a::after {
        display: none;
    }

    .phone-cta {
        display: none;
    }

    .hero-grid,
    .pricing-hero .hero-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .hero-text h1 {
        font-size: 48px;
    }

    .hero-text p {
        font-size: 20px;
    }

    .hero-devices {
        min-height: 270px;
    }

    .desktop-device {
        width: min(560px, 100%);
        margin-left: 0;
    }

    .phone-device {
        right: 12px;
    }

    .tablet-device {
        display: none;
    }

    .promo-box,
    .footer-cta,
    .footer-main,
    .two-cols {
        grid-template-columns: 1fr;
    }

    .round-badge {
        margin: 0 auto;
    }

    .portfolio-grid,
    .pricing-grid,
    .before-after-grid,
    .testimonial-grid,
    .process-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .pricing-card.featured {
        transform: none;
    }
}

@media (max-width: 680px) {
    .container {
        width: min(100% - 28px, 1190px);
    }

    .hero-grid {
        min-height: auto;
        padding: 38px 0 44px;
    }

    .hero-text h1 {
        font-size: 37px;
        letter-spacing: -1px;
    }

    .hero-text p {
        font-size: 18px;
    }

    .hero-actions {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .btn-orange {
        width: 100%;
    }

    .desktop-device {
        height: 240px;
    }

    .phone-device {
        display: none;
    }

    .mock-hero h3 {
        font-size: 22px;
    }

    .section {
        padding: 38px 0;
    }

    .section-title {
        font-size: 26px;
    }

    .card-grid.six,
    .card-grid.five,
    .feature-strip-grid,
    .benefits-row,
    .portfolio-grid,
    .pricing-grid,
    .before-after-grid,
    .testimonial-grid,
    .process-grid {
        grid-template-columns: 1fr;
    }

    .feature-strip-grid > div {
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.16);
    }

    .feature-strip-grid > div:last-child {
        border-bottom: 0;
    }

    .promo-box {
        padding: 26px 20px;
    }

    .price-big {
        font-size: 62px;
    }

    .check-list {
        columns: 1;
    }

    .cta-row,
    .footer-bottom-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .footer-contact-buttons {
        grid-template-columns: 1fr;
    }

    .footer-contact-buttons .contact-email {
        grid-column: auto;
    }

    .cookie-banner {
        left: 12px;
        right: 12px;
        bottom: 12px;
    }
}
