/* ============================================
   Ta'Pins - Responsive Styles
   ============================================ */

@media (max-width: 1200px) {
    .hero-slide-content h1 { font-size: 3.2rem; }
    .section-header h2 { font-size: 2.4rem; }
    .gallery-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 991px) {
    .section-padding { padding: 70px 0; }
    .hero-slider { padding-bottom: 60%; }
    .hero-slide-content h1 { font-size: 2.6rem; }
    .hero-slide-content p { font-size: 1rem; }
    .section-header h2 { font-size: 2rem; }
    .page-hero-title { font-size: 2.4rem; }

    .navbar-collapse {
        background: var(--bg-section);
        padding: 20px;
        margin-top: 10px;
        border-radius: var(--radius);
        border: 1px solid var(--border-color);
    }
    .navbar-nav .nav-link { padding: 10px 0 !important; }
    .navbar-nav .nav-link.active::after { display: none; }

    .about-features { grid-template-columns: 1fr; }
    .about-img-wrapper img { height: 300px; }
    .gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .cta-content h2 { font-size: 2rem; }

    .stat-box .stat-number { font-size: 2.2rem; }

    .promo-strip { margin-top: -40px; }
    .events-showcase-title { font-size: 2.2rem; }
    .events-visual-grid { grid-template-columns: 1fr 1fr; }
    .events-visual-item--main { grid-row: auto; min-height: 250px; }
}

@media (max-width: 767px) {
    .section-padding { padding: 50px 0; }
    .hero-slider { padding-bottom: 70%; }
    .hero-slide-content h1 { font-size: 2rem; }
    .hero-slide-content p { font-size: 0.9rem; }
    .section-header h2 { font-size: 1.7rem; }
    .section-header { margin-bottom: 40px; }
    .page-hero { padding: 100px 0 60px; }
    .page-hero-title { font-size: 2rem; }

    .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .gallery-item { height: 180px; }

    .btn-red, .btn-gold { padding: 10px 24px; font-size: 0.85rem; }

    .footer-top { padding: 40px 0; }
    .whatsapp-float { bottom: 20px; left: 20px; width: 48px; height: 48px; font-size: 1.3rem; }
    .back-to-top { bottom: 20px; right: 20px; width: 40px; height: 40px; }

    .map-container { height: 300px; }
    .map-container-large { height: 350px; }

    .cart-sidebar { width: 100vw; }

    .promo-strip { margin-top: -30px; }
    .promo-card { padding: 24px 20px; }
    .promo-card-icon { width: 52px; height: 52px; font-size: 1.3rem; }
    .events-showcase-title { font-size: 1.8rem; }
    .events-visual-grid { grid-template-columns: 1fr; }
    .events-visual-item--main { min-height: 220px; }
    .events-visual-item--side { height: 160px; }
    .events-visual-item--accent { min-height: 120px; }
}

@media (max-width: 480px) {
    .hero-slide-content h1 { font-size: 1.6rem; }
    .section-header h2 { font-size: 1.5rem; }
    .page-hero-title { font-size: 1.6rem; }
    .about-text h3 { font-size: 1.6rem; }
    .cta-content h2 { font-size: 1.6rem; }
    .gallery-grid { grid-template-columns: 1fr; }

    .promo-strip { margin-top: -20px; }
    .events-showcase-title { font-size: 1.5rem; }
    .events-stat-number { font-size: 2.2rem; }
}

@media print {
    .top-bar, #mainNavbar, .whatsapp-float, .back-to-top, .site-footer { display: none !important; }
    body { background: #fff; color: #333; }
}
