/* ============================================
   OPUS FILMS — Responsive Styles
   ============================================ */

@media (max-width: 1200px) {
    .services-elegant-grid { grid-template-columns: repeat(2, 1fr); }
    .projects-elegant-grid { grid-template-columns: 1fr; }
    .projects-elegant-masonry { grid-template-columns: repeat(3, 1fr); }
    .testimonials-elegant-grid { grid-template-columns: 1fr; max-width: 560px; margin: 0 auto; }
    .blog-elegant-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-elegant-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
    .team-elegant-grid { grid-template-columns: repeat(2, 1fr); }
    .intro-grid { gap: 60px; }
    .service-detail-elegant-item { gap: 40px; }
    .service-elegant-features { grid-template-columns: 1fr; }
    .blog-elegant-list-item { gap: 30px; }
}

@media (max-width: 992px) {
    :root { --header-height: 70px; }
    .header-nav { display: none; }
    .nav-hamburger { display: flex; }
    .intro-grid { grid-template-columns: 1fr; }
    .intro-left { padding-right: 0; }
    .about-elegant-grid { grid-template-columns: 1fr; }
    .stats-elegant-row { grid-template-columns: repeat(2, 1fr); }
    .values-elegant-grid { grid-template-columns: 1fr; }
    .contact-elegant-grid { grid-template-columns: 1fr; gap: 60px; }
    .project-detail-elegant-content { grid-template-columns: 1fr; }
    .gallery-elegant-grid { grid-template-columns: repeat(2, 1fr); }
    .blog-elegant-list-item { grid-template-columns: 1fr; }
    .blog-elegant-list-image { aspect-ratio: 16/9; }
    .project-detail-elegant { padding-top: 110px; }
    .article-elegant { padding-top: 110px; }
}

@media (max-width: 768px) {
    .container { padding: 0 20px; }
    .section-about-intro, .section-services-overview, .section-featured-projects,
    .section-testimonials-elegant, .section-blog-preview, .section-cta-elegant-full,
    .about-content-elegant, .values-elegant-section, .team-elegant-section,
    .services-detail-elegant, .projects-elegant-full, .blog-list-elegant,
    .contact-elegant-section, .stats-elegant-section { padding: 80px 0; }
    .page-hero-elegant { padding: 130px 0 60px; }
    .services-elegant-grid { grid-template-columns: 1fr; }
    .projects-elegant-masonry { grid-template-columns: repeat(2, 1fr); }
    .blog-elegant-grid { grid-template-columns: 1fr; }
    .footer-elegant-grid { grid-template-columns: 1fr; gap: 32px; }
    .team-elegant-grid { grid-template-columns: 1fr; max-width: 360px; margin: 0 auto; }
    .stat-number { font-size: 40px; }
    .stats-elegant-section .stat-number { font-size: 44px; }
    .service-detail-elegant-item { grid-template-columns: 1fr; gap: 20px; }
    .service-detail-elegant-num { font-size: 40px; }
    .filter-elegant-bar { justify-content: center; }
    .project-detail-elegant-nav { flex-direction: column; gap: 16px; }
    .article-elegant-body blockquote { padding-left: 20px; font-size: 18px; }
}

@media (max-width: 480px) {
    .hero-btns { flex-direction: column; align-items: center; }
    .hero-btns .btn { width: 100%; text-align: center; }
    .stats-elegant { grid-template-columns: 1fr; }
    .projects-elegant-masonry { grid-template-columns: 1fr; }
    .stats-elegant-row { grid-template-columns: 1fr; }
    .gallery-elegant-grid { grid-template-columns: 1fr; }
    .blog-elegant-list-meta { flex-direction: column; gap: 4px; }
    .article-elegant-share { flex-direction: column; align-items: flex-start; }
    .contact-elegant-item { flex-direction: column; gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    .reveal-fade { opacity: 1; transform: none; }
    .hero-elegant .hero-ornament, .hero-elegant .hero-pre-title,
    .hero-elegant .hero-title, .hero-elegant .hero-divider,
    .hero-elegant .hero-subtitle, .hero-elegant .hero-btns {
        opacity: 1; transform: none; animation: none;
    }
    html { scroll-behavior: auto; }
}

@media print {
    .site-header, .nav-hamburger, .mobile-nav, .preloader, .page-transition,
    .site-footer-elegant, .section-cta-elegant-full, .hero-scroll { display: none !important; }
    body { color: #000; background: #fff; }
    .hero-elegant { min-height: auto; }
    .hero-elegant .hero-video, .hero-elegant .hero-overlay { display: none; }
    .hero-content { color: #000; }
    .hero-title { color: #000; }
    a { color: #000; }
    em { color: #000; }
}
