/* Buttons — brand rule: low radius, gold reserved for primary action. */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--s-2);
    padding: var(--s-3) var(--s-6);
    min-height: 48px;
    font-family: var(--font-body);
    font-size: var(--fs-sm);
    font-weight: 600;
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    white-space: nowrap;
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    cursor: pointer;
    transition: background var(--dur) var(--ease),
                color var(--dur) var(--ease),
                border-color var(--dur) var(--ease),
                transform var(--dur-fast) var(--ease);
}

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

.btn--primary {
    background: var(--c-gold);
    color: var(--c-white);
    border-color: var(--c-gold);
}
.btn--primary:hover {
    background: var(--accent-hover);
    border-color: var(--accent-hover);
}

.btn--outline {
    background: transparent;
    color: var(--text);
    border-color: var(--border);
}
.btn--outline:hover {
    color: var(--c-gold);
    border-color: var(--c-gold);
}

.btn--dark {
    background: var(--c-black);
    color: var(--c-white);
    border-color: var(--c-black);
}
.btn--dark:hover { background: var(--ink-700); border-color: var(--ink-700); }

.btn--ghost { padding-inline: 0; min-height: auto; color: var(--c-gold); }
.btn--ghost:hover { color: var(--accent-hover); }

.btn--sm  { min-height: 40px; padding: var(--s-2) var(--s-5); font-size: var(--fs-xs); }
.btn--lg  { min-height: 56px; padding: var(--s-4) var(--s-7); }
.btn--block { width: 100%; }
