/* Agência Brew — Responsivo (todos os @media aqui)
   Breakpoints: 1024 / 768 / 480 — novas variáveis de styles.css */

@media (max-width: 1024px) {
    .hero-inner { grid-template-columns: 1fr; gap: 40px; }
    .hero-frame { max-width: 620px; }
    .hero .lead { max-width: none; }

    .about-grid { grid-template-columns: 1fr; gap: 44px; }
    .about-photo { max-width: 360px; }

    .services-grid { grid-template-columns: 1fr 1fr; }

    .brew-steps { grid-template-columns: 1fr 1fr; }

    .testimonials-grid { grid-template-columns: 1fr 1fr; gap: 26px; }
    .testimonials-grid .testimonial:nth-child(3) { grid-column: 1 / -1; max-width: 560px; margin-inline: auto; width: 100%; }

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

@media (max-width: 768px) {
    .site-header::before { left: 8%; right: 8%; }
    .header-inner { display: flex; flex-direction: row; align-items: center; justify-content: space-between; padding: 18px 20px; }
    .brand-name { font-size: 1.15rem; }
    .brand-mark { width: 38px; height: 38px; font-size: 1.2rem; }

    .menu-toggle { display: flex; }

    .nav {
        position: fixed;
        top: 0;
        right: 0;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        width: min(320px, 84vw);
        height: 100vh;
        background:
            repeating-linear-gradient(135deg, rgba(224, 164, 88, 0.05) 0 3px, transparent 3px 9px),
            #150e09;
        border-left: 4px solid var(--caramelo);
        padding: 84px 30px 30px;
        gap: 18px;
        transform: translateX(100%);
        transition: transform 0.3s ease;
        z-index: 55;
    }

    .nav.open { transform: translateX(0); }
    .nav a { font-size: 1.05rem; }

    .hero { padding-top: 48px; }
    .hero h1 { font-size: 2.1rem; }
    .seal-cta { width: 116px; height: 116px; bottom: -34px; }
    .seal-text { font-size: 0.85rem; }

    .services-grid { grid-template-columns: 1fr; max-width: 520px; }
    .cases-grid { grid-template-columns: 1fr; max-width: 480px; }
    .brew-steps { grid-template-columns: 1fr; }
    .testimonials-grid { grid-template-columns: 1fr; max-width: 480px; }
    .testimonials-grid .testimonial:nth-child(3) { grid-column: auto; }

    .tab-panel { padding: 22px 20px; }

    .contact-grid { grid-template-columns: 1fr; gap: 40px; }

    .footer-grid { grid-template-columns: 1fr; gap: 30px; }
    .footer-authority { grid-column: auto; }
}

@media (max-width: 480px) {
    .hero h1 { font-size: 1.75rem; }
    .hero-actions { display: grid; width: 100%; }
    .btn { text-align: center; }
    .hero-badges { display: grid; grid-template-columns: 1fr; }

    .seal-cta { width: 98px; height: 98px; bottom: -26px; right: 4%; }
    .seal-text { font-size: 0.72rem; }

    .eyebrow { font-size: 0.78rem; letter-spacing: 1.1px; }
    h2 { font-size: 1.45rem; }
    .section-intro { font-size: 0.95rem; }

    .tab { padding: 10px 18px 8px; font-size: 0.9rem; }
    .accordion-item { padding: 4px 16px; }
    .accordion-trigger { font-size: 0.94rem; }

    .contact-card { padding: 24px 20px; }

    .whatsapp-float { right: 14px; bottom: 14px; padding: 10px 16px; font-size: 0.85rem; }

    .footer-bottom p { font-size: 0.78rem; }
}
