/* =========================================================
   CRDA CONSULTORIA — Estilos responsivos (mobile-first)
   ========================================================= */

/* Tablets e abaixo */
@media (max-width: 992px) {
    .section { padding: 72px 0; }

    .about-grid { grid-template-columns: 1fr; gap: 40px; }
    .services-grid { grid-template-columns: repeat(2, 1fr); }
    .why-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-grid { grid-template-columns: 1fr; gap: 40px; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 34px; }
    .content-with-sidebar { grid-template-columns: 1fr; }
    .sidebar { margin-top: 20px; }

    /* Navegação mobile */
    .menu-toggle { display: flex; }
    .main-navigation {
        position: fixed;
        top: 78px;
        right: 0;
        width: min(320px, 85vw);
        height: calc(100vh - 78px);
        background: #fff;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 24px;
        box-shadow: -8px 0 30px rgba(0,0,0,0.12);
        transform: translateX(100%);
        transition: transform 0.3s ease;
        overflow-y: auto;
    }
    .main-navigation.is-open { transform: translateX(0); }
    .nav-menu { flex-direction: column; align-items: stretch; gap: 0; width: 100%; }
    .nav-menu li { border-bottom: 1px solid var(--crda-border); }
    .nav-menu a { display: block; padding: 14px 4px; }
    .nav-menu a::after { display: none; }
    .header-cta { margin-top: 18px; }
}

/* Celulares */
@media (max-width: 640px) {
    body { font-size: 15px; }
    .container { padding: 0 18px; }
    .section { padding: 56px 0; }
    .section-head { margin-bottom: 38px; }

    .hero { min-height: 82vh; }
    .hero-actions { flex-direction: column; }
    .hero-actions .btn { width: 100%; }

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

    .company-row { flex-direction: column; gap: 4px; padding: 14px 20px; }
    .company-value { text-align: left; }

    .form-row { grid-template-columns: 1fr; }
    .contact-form-wrap { padding: 26px 20px; }

    .footer-grid { grid-template-columns: 1fr; gap: 30px; padding: 48px 18px 34px; }

    .whatsapp-float-label { display: none; }
    .whatsapp-float { padding: 14px; }

    .lgpd-inner { flex-direction: column; text-align: center; gap: 14px; }
    .lgpd-accept { width: 100%; }

    .error-code { font-size: 4.5rem; }
}

/* Telas largas */
@media (min-width: 1440px) {
    .section { padding: 110px 0; }
}

/* Preferência por menos movimento */
@media (prefers-reduced-motion: reduce) {
    * { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
}

/* Impressão */
@media print {
    .site-header, .site-footer, .whatsapp-float, .lgpd-banner, .menu-toggle { display: none !important; }
}
