/* =====================================================
   BUTTONS — Taxi Transfers Aeropuertos
   ===================================================== */

.tt-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 50px;
    padding: 13px 26px;
    border: 0;
    border-radius: var(--tt-radius);
    color: var(--tt-dark-text);
    background: var(--tt-primary);
    font-family: var(--tt-font-body);
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform var(--tt-transition),
        background var(--tt-transition),
        box-shadow var(--tt-transition),
        color var(--tt-transition),
        border-color var(--tt-transition);
    position: relative;
    overflow: hidden;
}

.tt-btn:hover {
    transform: translateY(-2px);
}

.tt-btn svg {
    flex: 0 0 auto;
}

/* Shimmer overlay en hover */
.tt-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        105deg,
        transparent 40%,
        rgba(255, 255, 255, 0.28) 50%,
        transparent 60%
    );
    background-size: 200% 100%;
    background-position: -200% 0;
    transition: background-position 0s;
}

.tt-btn:hover::after {
    animation: shimmer 0.55s ease forwards;
}

/* Primary */
.tt-btn--primary {
    background: var(--tt-primary);
    color: var(--tt-dark-text);
    box-shadow: var(--tt-glow-btn);
}

.tt-btn--primary:hover {
    background: var(--tt-primary-light);
    box-shadow: 0 12px 48px rgba(255, 192, 0, 0.5), 0 4px 12px rgba(255, 192, 0, 0.3);
}

/* Secondary */
.tt-btn--secondary {
    color: var(--tt-primary);
    background: transparent;
    border: 1.5px solid var(--tt-border-strong);
}

.tt-btn--secondary:hover {
    color: var(--tt-dark-text);
    background: var(--tt-primary);
    border-color: var(--tt-primary);
}

/* WhatsApp — con pulso animado */
.tt-btn--whatsapp {
    color: #fff;
    background: var(--tt-green);
    box-shadow: 0 8px 28px rgba(37, 211, 102, 0.3);
    animation: pulse-green 2.8s ease-in-out infinite;
}

.tt-btn--whatsapp:hover {
    background: var(--tt-green-dark);
    animation: none;
    box-shadow: 0 12px 40px rgba(37, 211, 102, 0.5);
}

/* Dark */
.tt-btn--dark {
    color: #fff;
    background: #0e0e0e;
    border: 1px solid var(--tt-border);
}

.tt-btn--dark:hover {
    background: #1a1a1a;
    border-color: var(--tt-border-mid);
}

/* Ghost */
.tt-btn--ghost {
    color: var(--tt-text);
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid var(--tt-border);
}

.tt-btn--ghost:hover {
    background: rgba(255, 255, 255, 0.11);
    border-color: var(--tt-border-mid);
}
