
/* RESPONSIVIDADE MOBILE */
@media (max-width: 768px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}


/* ==========================================================================
   MEDIA QUERIES (MOBILE / RESPONSIVO COMPLETO)
   ========================================================================== */
@media (max-width: 992px) {
    .pillars-grid, .pains-grid { grid-template-columns: repeat(2, 1fr); }
    .b2b-grid, .commitments-grid, .candidate-info-grid, .contact-container { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
    .navbar { padding: 1rem 5%; }
    .menu-toggle { display: flex; }

    .nav-links {
        position: fixed;
        top: 0;
        right: -100%; 
        width: 280px;
        max-width: 80%;
        height: 100vh;
        background-color: var(--bg-white);
        box-shadow: -5px 0 25px rgba(0, 0, 0, 0.15);
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        padding: 6rem 2rem;
        gap: 1.5rem;
        transition: right 0.3s ease-in-out;
        z-index: 2000;
    }

    .nav-links.active { right: 0; }
    .nav-links a { margin: 0; width: 100%; padding-bottom: 0.6rem; border-bottom: 1px solid var(--brand-ice); }

    .navbar > .btn-portal { display: none; }
    .btn-portal-mobile {
        display: block !important;
        background-color: var(--brand-blue);
        color: var(--bg-white) !important;
        text-align: center;
        padding: 0.8rem;
        border-radius: 6px;
        font-weight: 700;
        width: 100%;
        margin-top: 1rem;
    }

    .hero { padding: 3rem 1rem; }
    .hero h1 { font-size: 1.75rem; }

    .pillars-grid, .pains-grid { grid-template-columns: 1fr; }
    .conditions-stats { grid-template-columns: 1fr; }
    .contact-container { padding: 1.5rem; }
}
