/* Responsividade — Gestor de Senhas */

@media (max-width: 1024px) {
    .hero-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .hero-visual {
        order: -1;
    }

    .hero-visual img {
        max-width: 400px;
        margin: 0 auto;
    }

    .cards-grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }

    .validation-list {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-content {
        grid-template-columns: 1fr 1fr;
    }

    .two-col {
        grid-template-columns: 1fr;
        gap: 32px;
    }
}

@media (max-width: 768px) {
    :root {
        --nav-height: 64px;
    }

    .nav-menu {
        position: fixed;
        top: var(--nav-height);
        left: 0;
        right: 0;
        background: rgba(10, 14, 23, 0.98);
        flex-direction: column;
        padding: 24px 20px;
        gap: 16px;
        border-bottom: 1px solid var(--border);
        transform: translateY(-120%);
        opacity: 0;
        visibility: hidden;
        transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s;
    }

    .nav-menu.active {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }

    .nav-toggle {
        display: flex;
    }

    .nav-toggle.active .bar:nth-child(1) {
        transform: rotate(45deg) translate(5px, 5px);
    }

    .nav-toggle.active .bar:nth-child(2) {
        opacity: 0;
    }

    .nav-toggle.active .bar:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -5px);
    }

    .hero {
        padding: calc(var(--nav-height) + 20px) 0 40px;
    }

    .hero-buttons .btn {
        width: 100%;
    }

    .section {
        padding: 56px 0;
    }

    .cards-grid-2,
    .cards-grid-3,
    .cards-grid-4 {
        grid-template-columns: 1fr;
    }

    .included-grid {
        grid-template-columns: 1fr;
    }

    .pricing-card {
        padding: 28px 20px;
    }

    .feature-list {
        grid-template-columns: 1fr;
    }

    .pilot-benefits {
        grid-template-columns: 1fr;
    }

    .validation-list {
        grid-template-columns: 1fr;
    }

    .license-points {
        grid-template-columns: 1fr;
    }

    .docs-grid {
        grid-template-columns: 1fr;
    }

    .equipment-item {
        flex-direction: column;
        gap: 12px;
    }

    .equipment-label {
        min-width: auto;
        align-self: flex-start;
    }

    .problem-card {
        flex-direction: column;
        gap: 12px;
    }

    .footer-content {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .interest-form {
        padding: 24px 20px;
    }

    .legal-card,
    .thanks-card {
        padding: 28px 20px;
    }

    .whatsapp-float {
        bottom: 16px;
        right: 16px;
        padding: 10px 16px;
        font-size: 0.85rem;
    }
}

@media (max-width: 480px) {
    .hero-benefits {
        flex-direction: column;
    }

    .benefit-pill {
        width: 100%;
        justify-content: flex-start;
    }

    .cta-buttons .btn {
        width: 100%;
    }

    .thanks-buttons .btn {
        width: 100%;
    }
}

@media (min-width: 1366px) {
    .container {
        max-width: 1200px;
    }
}
