:root {
    --lugate-btn-primary: #FAAD08;
    --lugate-btn-primary-hover: #ffbf33;
    --lugate-btn-primary-active: #e69d00;
    --lugate-btn-secondary: #fff7e8;
    --lugate-btn-secondary-hover: #f8eadc;
    --lugate-btn-secondary-active: #f4ddb9;
    --lugate-btn-danger: #dc3545;
    --lugate-btn-danger-hover: #bb2d3b;
    --lugate-btn-danger-active: #a52834;
    --lugate-btn-text: #14141F;
    --lugate-btn-text-inverse: #ffffff;
    --lugate-btn-focus: #FF5858;
}

.btn-primary,
.btn-secondary,
.btn-danger,
.cta-pill-btn--primary {
    border-radius: 999px;
    font-weight: 800;
    transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
}

.btn-primary,
.cta-pill-btn--primary {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-primary);
    border-color: var(--lugate-btn-primary);
    box-shadow: 0 10px 24px rgba(250, 173, 8, 0.2);
}

.btn-primary:hover,
.cta-pill-btn--primary:hover {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-primary-hover);
    border-color: var(--lugate-btn-primary-hover);
    box-shadow: 0 14px 28px rgba(250, 173, 8, 0.28);
    transform: translateY(-2px);
}

.btn-primary:focus,
.cta-pill-btn--primary:focus {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-primary);
    border-color: var(--lugate-btn-primary);
    box-shadow: 0 10px 24px rgba(250, 173, 8, 0.2);
}

.btn-check:checked+.btn-primary,
.btn-check:active+.btn-primary,
.btn-primary:active,
.btn-primary.active,
.show>.btn-primary.dropdown-toggle,
.cta-pill-btn--primary:active {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-primary-active);
    border-color: var(--lugate-btn-primary-active);
    box-shadow: 0 6px 16px rgba(250, 173, 8, 0.24);
    transform: translateY(0);
}

.btn-secondary {
    color: var(--lugate-btn-text);
    background: var(--lugate-btn-secondary);
    border-color: rgba(20, 20, 31, 0.12);
}

.btn-secondary:hover {
    color: var(--lugate-btn-text);
    background: var(--lugate-btn-secondary-hover);
    border-color: rgba(20, 20, 31, 0.18);
    transform: translateY(-1px);
}

.btn-secondary:focus {
    color: var(--lugate-btn-text);
    background: var(--lugate-btn-secondary);
    border-color: rgba(20, 20, 31, 0.18);
    box-shadow: none;
}

.btn-check:checked+.btn-secondary,
.btn-check:active+.btn-secondary,
.btn-secondary:active,
.btn-secondary.active,
.show>.btn-secondary.dropdown-toggle {
    color: var(--lugate-btn-text);
    background: var(--lugate-btn-secondary-active);
    border-color: rgba(20, 20, 31, 0.22);
    transform: translateY(0);
}

.btn-danger {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-danger);
    border-color: var(--lugate-btn-danger);
}

.btn-danger:hover {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-danger-hover);
    border-color: var(--lugate-btn-danger-hover);
    transform: translateY(-1px);
}

.btn-danger:focus {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-danger);
    border-color: var(--lugate-btn-danger);
    box-shadow: none;
}

.btn-check:checked+.btn-danger,
.btn-check:active+.btn-danger,
.btn-danger:active,
.btn-danger.active,
.show>.btn-danger.dropdown-toggle {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-danger-active);
    border-color: var(--lugate-btn-danger-active);
    transform: translateY(0);
}

.btn:focus:not(:focus-visible),
.cta-pill-btn:focus:not(:focus-visible) {
    outline: 0;
}

.btn-primary:focus-visible,
.btn-secondary:focus-visible,
.btn-danger:focus-visible,
.cta-pill-btn:focus-visible {
    outline: 2px solid var(--lugate-btn-focus);
    outline-offset: 3px;
    box-shadow: none;
}

.btn-primary:disabled,
.btn-primary.disabled,
.btn-secondary:disabled,
.btn-secondary.disabled,
.btn-danger:disabled,
.btn-danger.disabled,
.cta-pill-btn--primary:disabled,
.cta-pill-btn--primary.disabled {
    opacity: 0.65;
    box-shadow: none;
    transform: none;
}

.btn-primary:disabled,
.btn-primary.disabled,
.cta-pill-btn--primary:disabled,
.cta-pill-btn--primary.disabled {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-primary);
    border-color: var(--lugate-btn-primary);
}

.btn-secondary:disabled,
.btn-secondary.disabled {
    color: var(--lugate-btn-text);
    background: var(--lugate-btn-secondary);
    border-color: rgba(20, 20, 31, 0.12);
}

.btn-danger:disabled,
.btn-danger.disabled {
    color: var(--lugate-btn-text-inverse);
    background: var(--lugate-btn-danger);
    border-color: var(--lugate-btn-danger);
}
