@media (max-width: 768px) {
    .hero h1 { font-size: 2rem; }
    .hero p { font-size: 1.1rem; }
    nav ul { gap: 0.8rem; font-size: 0.9rem; }
    .cards-3, .projects-grid { grid-template-columns: 1fr; }
    .btn-cta { width: 100%; max-width: 250px; }
}



/* ---- HAMBURGER BASE ---- */
.hamburger {
    display: none;          /* Oculta en desktop */
    flex-direction: column;
    cursor: pointer;
    gap: 5px;               /* SEPARACIÓN ENTRE LAS LÍNEAS */
}

.hamburger span {
    width: 28px;
    height: 3px;
    background: white;
    display: block;
    border-radius: 2px;     /* Opcional, queda más prolijo */
}

/* ---- RESPONSIVE ---- */
@media (max-width: 768px) {
    .hamburger {
        display: flex;      /* Ahora sí aparece en móvil */
    }

    nav ul {
        display: none;
        flex-direction: column;
        width: 100%;
        background: #0a2540;
        padding: 10px 0;
        margin-top: 10px;
    }

    nav ul.active {
        display: flex;
    }

    nav ul li {
        padding: 10px 0;
    }
}
