/* Адаптивные стили для мобильных устройств */

@media (max-width: 1200px) {
    .hero-title {
        font-size: 3rem;
    }
    
    .section-title {
        font-size: 2.2rem;
    }
}

@media (max-width: 992px) {
    body {
        padding-top: 70px;
    }
    
    .hero-section {
        padding: 80px 0;
    }
    
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-text {
        font-size: 1rem;
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .section-subtitle {
        font-size: 1.1rem;
    }
    
    .steps-section,
    .products-section,
    .mission-section,
    .reviews-section,
    .quiz-section,
    .blog-section,
    .account-section {
        padding: 80px 0;
    }
    
    .step-card,
    .product-card,
    .feature-card,
    .blog-card {
        margin-bottom: 30px;
    }
}

@media (max-width: 768px) {
    .hero-title {
        font-size: 2.2rem;
    }
    
    .hero-text {
        font-size: 0.95rem;
    }
    
    .section-title {
        font-size: 1.8rem;
    }
    
    .section-subtitle {
        font-size: 1rem;
    }
    
    .btn-primary,
    .btn-outline-primary {
        padding: 10px 25px;
        font-size: 0.9rem;
    }
    
    .navbar-nav {
        text-align: center;
        padding-top: 20px;
    }
    
    .nav-link {
        margin: 5px 0;
    }
    
    .review-card {
        padding: 30px 20px;
    }
    
    .review-text {
        font-size: 1rem;
    }
    
    .carousel-control-prev {
        left: 10px;
    }
    
    .carousel-control-next {
        right: 10px;
    }
    
    .carousel-control-prev,
    .carousel-control-next {
        width: 40px;
        height: 40px;
    }
    
    .login-form {
        padding: 30px 20px;
    }
    
    .footer {
        padding: 40px 0 20px;
        text-align: center;
    }
    
    .social-links {
        justify-content: center;
    }
}

@media (max-width: 576px) {
    body {
        padding-top: 60px;
    }
    
    .hero-title {
        font-size: 1.8rem;
    }
    
    .hero-section,
    .steps-section,
    .products-section,
    .mission-section,
    .reviews-section,
    .quiz-section,
    .blog-section,
    .account-section {
        padding: 60px 0;
    }
    
    .section-title {
        font-size: 1.6rem;
    }
    
    .step-number {
        width: 50px;
        height: 50px;
        font-size: 1.3rem;
    }
    
    .step-card h4 {
        font-size: 1.1rem;
    }
    
    .product-info h5,
    .feature-card h5 {
        font-size: 1.1rem;
    }
    
    .review-card {
        padding: 25px 15px;
    }
    
    .footer h5 {
        margin-top: 30px;
    }
    
    .copyright {
        font-size: 0.8rem;
    }
}

/* Анимации для мобильных */
@media (max-width: 768px) {
    .navbar-collapse {
        animation: slideDown 0.3s ease-out;
    }
    
    @keyframes slideDown {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
}

/* Улучшенные стили для тач-устройств */
@media (hover: none) and (pointer: coarse) {
    .btn-primary:hover,
    .btn-outline-primary:hover,
    .nav-link:hover,
    .product-card:hover,
    .step-card:hover,
    .feature-card:hover,
    .blog-card:hover,
    .social-link:hover {
        transform: none;
    }
    
    .btn-primary:active,
    .btn-outline-primary:active {
        transform: scale(0.98);
    }
}