a.button, .button {
    font-family: 'Avenir';
    line-height: 16px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 44px;
    border-radius: 22px;
    cursor: pointer;
    border: none;
    width: fit-content;
    color: white;
    text-decoration: none;
    background: var(--violet-700);
    box-sizing: border-box !important;
}

.button.small {
    min-width: 80px;
    font-size: var(--font-size-14);
    padding: 12px 15px 10px;
    height: 32px;
}

.button.medium {
    min-width: 100px;
    font-size: var(--font-size-14);
    padding: 12px 20px 10px;
    height: 36px;
}

.button, .button.large {
    min-width: 130px;
    font-weight: 900;
    font-size: var(--font-size-16);
    padding: 12px 30px 10px;
    height: 44px;
}

.button:hover, .button.secondary:hover, .button.tertiary:hover {
    color: white;
    background: var(--violet-800);
    text-decoration: none;
}

.button:focus, .button.secondary:focus, .button.tertiary:focus {
    color: white;
    background: var(--violet-900);
    text-decoration: none;
}

.button:disabled {
    cursor: default;
    background: var(--violet-300);
}

/** Secondary Button **/
.button.secondary {
    background: white;
    border: 2px solid var(--violet-700);
    color: var(--violet-700);
}

.button.secondary:disabled, .button.secondary:disabled:hover {
    border: 2px solid var(--violet-300);
    background: white;
    color: var(--violet-300);
}

/** Tertiary Button **/
.button.tertiary {
    background: var(--violet-100);
    border: 2px solid var(--violet-700);
    color: var(--violet-700);
}

.button.tertiary:disabled, .button.tertiary:disabled:hover {
    border: none;
    background: var(--violet-100);
    color: var(--violet-300);
}

/** Alt blue button for login / error **/
.button.blue {
    background: var(--blue-700);
    color: white;
}

.button.blue:hover {
    background: var(--blue-800);
}

.button.blue:active {
    background: var(--blue-900);
}

.button.blue:disabled {
    background: var(--blue-300);
    cursor: default;
}