/* ===== TABLET ===== */
@media (max-width: 1024px) {
    .services-grid { grid-template-columns: repeat(2, 1fr); }
    .categories-grid { grid-template-columns: repeat(2, 1fr); }
    .advantages-grid { grid-template-columns: repeat(2, 1fr); }
    .review-slide { min-width: 50%; }
    .blog-grid { grid-template-columns: repeat(2, 1fr); }
    .gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .loyalty-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .hero h1 { font-size: 2.4rem; }
    .hero-stats { gap: 32px; }
    .service-detail-hero { height: 300px; }
    .order-form-wrapper { grid-template-columns: 1fr; }
    .nav-item > a { padding: 8px 10px; font-size: 0.82rem; }
    .promo-strip-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
    .hamburger { display: flex; }
    .desktop-nav { display: none; }

    .btn-call span { display: none; }
    .btn-call { padding: 10px; border-radius: 50%; width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; font-size: 0.9rem; }
    .header-actions { gap: 8px; }

    .hero { min-height: 100vh; }
    .hero-content { padding: 100px 0 80px; }
    .hero h1 { font-size: 2rem; }
    .hero-subtitle { font-size: 0.95rem; margin-bottom: 32px; }
    .hero-actions { flex-direction: column; align-items: center; margin-bottom: 40px; }
    .hero-stats { gap: 24px; }
    .hero-stat strong { font-size: 1.5rem; }

    .section { padding: 48px 0; }
    .section-header h2 { font-size: 1.7rem; }
    .section-header { margin-bottom: 32px; }

    .services-grid { grid-template-columns: 1fr; gap: 20px; }
    .categories-grid { grid-template-columns: 1fr; gap: 20px; }
    .service-card-img { height: 180px; }
    .category-card-img { height: 140px; }
    .advantages-grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .order-block-inner { flex-direction: column; text-align: center; }
    .advantage-card { padding: 28px 16px; }
    .review-slide { min-width: 100%; }
    .reviews-slider-prev { left: 4px; }
    .reviews-slider-next { right: 4px; }
    .reviews-slider-btn { width: 36px; height: 36px; font-size: 0.85rem; }
    .blog-grid { grid-template-columns: 1fr; }
    .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .loyalty-grid { grid-template-columns: 1fr; }
    .price-row { padding: 12px 16px; }
    .address-row { grid-template-columns: 1fr; }
    .contact-grid { grid-template-columns: 1fr; }

    .footer-grid { grid-template-columns: 1fr; gap: 32px; }

    .floating-buttons { bottom: 20px; right: 20px; }
    .float-btn { width: 50px; height: 50px; font-size: 1.2rem; }

    .service-detail-hero { height: 260px; margin-top: 72px; }
    .service-detail-hero-content { padding: 24px 20px; }
    .service-detail-hero-content h1 { font-size: 1.6rem; }
    .other-services .services-grid { grid-template-columns: 1fr; }

    .banners-slider { min-height: 220px; }
    .banner-item-content { padding: 32px 24px; }
    .banner-item-content h3 { font-size: 1.2rem; }

    .user-stats { grid-template-columns: 1fr; }
    .auth-card { padding: 36px 24px; }

    .faq-question { padding: 16px 20px; font-size: 0.9rem; }
    .faq-answer-inner { padding: 0 20px 16px; font-size: 0.88rem; }

    .order-success-info { flex-direction: column; gap: 16px; }

    .diag-notice { flex-direction: column; text-align: center; gap: 10px; }

    .review-form-row { grid-template-columns: 1fr; }
    .review-form-wrapper { padding: 24px; }

    .order-card-header { flex-direction: column; }
    .tracker-line { width: 30px; }
    .tracker-dot { width: 36px; height: 36px; font-size: 0.8rem; }
    .tracker-step span { font-size: 0.7rem; }
    .user-order-card { padding: 20px; }

    /* Loyalty */
    .loyalty-levels-grid { grid-template-columns: 1fr; gap: 12px; }
    .loyalty-level-card { padding: 16px; }

    /* Breadcrumb */
    .breadcrumb-list { font-size: 0.82rem; gap: 5px; }
    .breadcrumb-list li { max-width: 160px; }
    .breadcrumb-list .separator { font-size: 0.6rem; }

    /* Inline banners */
    .inline-banner { flex-direction: column; text-align: center; padding: 20px; }
    .inline-banner .ib-arrow { display: none; }

    /* Promo strip */
    .promo-strip-grid { grid-template-columns: 1fr; gap: 12px; }
    .promo-card { height: 120px; }

    /* Problems */
    .problems-grid { grid-template-columns: 1fr; }
    .problem-hero { height: 260px; }
    .problem-hero-content h1 { font-size: 1.5rem; }
    .problem-hero-icon { width: 56px; height: 56px; font-size: 1.4rem; }
    .problem-section { padding: 20px; }

    /* Tracking */
    .track-hero { padding: 32px 0; margin-bottom: 20px; }
    .track-hero h1 { font-size: 1.2rem; }
    .track-hero-icon { width: 56px; height: 56px; font-size: 1.3rem; }
    .track-info-strip { grid-template-columns: 1fr !important; }
    .track-details { grid-template-columns: 1fr; }
    .track-step-dot { width: 40px; height: 40px; font-size: 0.85rem; }
    .track-line { width: 28px; }
    .track-step-label { font-size: 0.65rem; max-width: 60px; }
    .track-header-card { padding: 24px 16px; }
    .track-service-title { font-size: 1.1rem; }
    .track-eta-value { font-size: 1.3rem; }
    .track-actions { flex-direction: column; }
    .track-tech-card { flex-direction: column; text-align: center; }
}

/* ===== SMALL MOBILE ===== */
@media (max-width: 480px) {
    .hero h1 { font-size: 1.6rem; }
    .hero-badge { font-size: 0.75rem; padding: 6px 14px; }
    .advantages-grid { grid-template-columns: 1fr; }
    .cta-buttons { flex-direction: column; width: 100%; }
    .cta-buttons .btn { width: 100%; justify-content: center; }
    .btn-lg { padding: 14px 28px; font-size: 0.92rem; }
    .hero-stats { flex-direction: column; gap: 16px; }
    .cta-card { padding: 36px 24px; }
    .mobile-nav { width: 100%; max-width: 100vw; }
    .breadcrumb-list li { max-width: 120px; }
    .breadcrumb-list { font-size: 0.78rem; gap: 4px; }

    /* Tracking small */
    .track-step-dot { width: 36px; height: 36px; font-size: 0.8rem; }
    .track-line { width: 20px; }
    .track-step-label { font-size: 0.6rem; max-width: 50px; }
}
