/* ===== BOTONES ===== */
.btn {
    padding: 16px 34px;
    border-radius: 18px;
    font-weight: 700;
    text-decoration: none;
    transition: var(--transition-normal);
    display: inline-block;
    border: 2px solid transparent;
    background: linear-gradient(rgba(10, 17, 30, 0.96), rgba(10, 17, 30, 0.96)) padding-box,
                var(--gradient) border-box;
    color: #eef4ff;
    font-size: 1rem;
    letter-spacing: 0.02em;
    position: relative;
    overflow: hidden;
    box-shadow: 0 14px 28px rgba(2, 10, 26, 0.28);
}

.btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -120%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.18), transparent);
    transition: left 0.6s ease;
    z-index: 1;
    filter: blur(6px);
}

.btn:hover::before {
    left: 130%;
}

.btn:hover {
    border-color: transparent;
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(7, 19, 43, 0.36);
}

.btn-primary {
    background: var(--gradient);
    color: var(--text-primary);
    background-size: 200% 200%;
    animation: gradientShift 8s ease infinite;
}