.button,
button,
input[type="submit"],
input[type="button"] {
    background: var(--color-hilaire-blue);
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-size: 0.86rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    min-height: 42px;
    padding: 0.7rem 1.08rem;
    text-transform: uppercase;
    transition: transform var(--duration-fast) var(--easing-luxury), background-color var(--duration-fast) var(--easing-luxury), border-color var(--duration-fast) var(--easing-luxury);
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
    background: #13315a;
    transform: translateY(-1px);
}

.button:focus-visible,
button:focus-visible,
input[type="submit"]:focus-visible,
input[type="button"]:focus-visible {
    border-color: var(--color-accent);
}

.button--ghost {
    background: transparent;
    border-color: var(--color-hilaire-blue);
    color: var(--color-hilaire-blue);
}

.button--ghost:hover {
    border-color: var(--color-accent);
    color: var(--color-link-hover);
}
