/* ==========================================================================
   ONYX TOURS - BUTTONS
   ========================================================================== */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    padding: 0.9rem 2.1rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-family: var(--font-body);
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    line-height: 1;
    cursor: pointer;
    transition: background 0.25s var(--ease), color 0.25s var(--ease),
                border-color 0.25s var(--ease), transform 0.25s var(--ease),
                box-shadow 0.25s var(--ease);
}

.btn:active { transform: translateY(1px); }

.btn-sm { padding: 0.7rem 1.6rem; font-size: 0.84rem; }

/* Solid teal */
.btn-solid { background: var(--accent); color: #fff; }

.btn-solid:hover {
    background: var(--accent-hover);
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(14, 90, 95, 0.28);
}

/* Solid gold */
.btn-gold { background: var(--gold); color: #fff; }

.btn-gold:hover {
    background: #97722a;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(176, 135, 52, 0.32);
}

/* Outline on dark backgrounds */
.btn-outline {
    border-color: rgba(255, 255, 255, 0.4);
    color: #fff;
    background: transparent;
}

.btn-outline:hover {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.12);
    transform: translateY(-2px);
}

/* Outline on light backgrounds */
.btn-outline-dark {
    border-color: var(--border);
    color: var(--text-main);
    background: transparent;
}

.btn-outline-dark:hover {
    border-color: var(--accent);
    color: var(--accent);
    transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
    .btn, .btn:hover, .btn:active { transition: none; transform: none; box-shadow: none; }
}
