@media (min-width: 768px) {
    .hero-title {
        font-size: 4rem;
    }

    .hero-subtitle {
        font-size: 1.5rem;
    }

    .section-title {
        font-size: 2.5rem;
    }

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

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

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

@media (min-width: 1024px) {
    .hero-title {
        font-size: 5rem;
    }

    .carousel-track {
        gap: 1.5rem;
    }

    .cinematic-card {
        width: 16rem;
    }
}

@media (min-width: 1280px) {
    .container {
        padding: 0 2rem;
    }

    .section {
        padding: 5rem 2rem;
    }
}

@media (max-width: 767px) {
    .hero-section {
        height: 80vh;
    }

    .hero-content {
        padding: 0 1rem;
    }

    .hero-buttons {
        flex-direction: column;
        width: 100%;
        max-width: 300px;
        margin: 0 auto;
    }

    .btn {
        width: 100%;
        justify-content: center;
    }

    .section {
        padding: 2rem 1rem;
    }

    .section-title {
        font-size: 1.5rem;
    }

    .carousel-container {
        padding: 0 0.5rem 1rem;
    }

    .carousel-container::before,
    .carousel-container::after {
        width: 2rem;
    }

    .grid {
        gap: 1rem;
    }

    
    .movie-card-content {
        padding: 1rem;
    }

    .category-card {
        height: 10rem;
    }

    .category-card-content {
        padding: 1rem;
    }

    .category-card-title {
        font-size: 1.25rem;
    }

    .tv-channel-card {
        height: 14rem;
    }

    .sports-card {
        height: 18rem;
    }

    .sports-card-team-name {
        font-size: 1rem;
    }

    .sports-card-score {
        font-size: 1.25rem;
    }

    
    .modal {
        padding: 0;
    }

    .modal-content {
        border-radius: 0;
        max-height: 100vh;
    }

    .modal-hero {
        height: 15rem;
    }

    .modal-hero-content {
        padding: 1rem;
    }

    .modal-title {
        font-size: 1.5rem;
    }

    .modal-meta {
        font-size: 0.75rem;
        gap: 0.5rem;
    }

    .modal-actions {
        flex-direction: column;
        width: 100%;
    }

    .modal-btn {
        width: 100%;
        justify-content: center;
    }

    .modal-body {
        padding: 1rem;
    }

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

@media (max-width: 767px) and (orientation: landscape) {
    .hero-section {
        height: 100vh;
    }

    .nav-content {
        height: 4rem;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .hero-section {
        height: 90vh;
    }

    .cinematic-card {
        width: 13rem;
    }

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

@media (max-width: 767px) {
    .hide-mobile {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .hide-desktop {
        display: none !important;
    }
}

@media (hover: none) and (pointer: coarse) {
    .play-btn,
    .movie-card-btn,
    .tv-channel-btn,
    .sports-card-actions {
        opacity: 1;
    }

    .card-rating,
    .card-actions {
        opacity: 1;
        transform: translateX(0);
    }

    .category-card-arrow {
        opacity: 1;
        transform: translateX(0);
    }
}

@media print {
    .navbar,
    .mobile-nav,
    .footer,
    .back-to-top,
    .modal {
        display: none !important;
    }

    body {
        background: white;
        color: black;
    }

    .page-content {
        margin: 0;
        padding: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

@media (prefers-contrast: high) {
    .glass-effect {
        background: rgba(0, 0, 0, 0.9);
        border: 2px solid white;
    }

    .card-overlay,
    .modal-hero-overlay {
        background: rgba(0, 0, 0, 0.95);
    }
}

@media (prefers-color-scheme: dark) {
    
}


@media (max-width: 1024px) {
    div[style*="grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 768px) {
    
    div[style*="grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
    
    
    .glass-effect {
        padding: 1.5rem !important;
    }
    
    
    #qrCodeContainer {
        width: 200px !important;
        height: 200px !important;
    }
    
    
    div[style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
    
    
    h1.gradient-text {
        font-size: 2rem !important;
    }
}

@media (max-width: 480px) {
    
    h1.gradient-text {
        font-size: 1.5rem !important;
    }
    
    .glass-effect {
        padding: 1.25rem !important;
    }
}

