.btn {
    position: relative;
    display: inline-block;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: normal;
    text-decoration: none;
    padding: 12px 30px;
    border-radius: 100px;
    border: 0;
    user-select: none;
    cursor: pointer;
    transition: all ease 0.2s;
    -webkit-tap-highlight-color: transparent;
}

.btn:focus-visible {
    outline: none;
}

.btn-disabled {
    pointer-events: none;
}

.btn-primary {
    background-color: var(--brilliant_orange);
    color: white;
}

.btn-primary.btn-disabled {
    background: #0B1238;
    color: rgba(255, 255, 255, 0.5);
}

.btn-primary:not(.btn-disabled):active,
.btn-primary:not(.btn-disabled):hover {
    background-color: #CB4817;
}

.btn-primary:focus-visible {
    box-shadow: 0px 0px 12px #FF7F00;
}

.btn-primary.btn-dark-blue .ripple-circle,
.btn-primary .ripple-circle {
    background: rgba(255, 255, 255, .1);
}

.btn-primary.btn-dark-blue {
    background: #141c42;
    color: white;
}

.btn-primary.btn-dark-blue:active,
.btn-primary.btn-dark-blue:hover {
    background-color: #12193d;
}

.btn-primary.btn-turquoise {
    background: var(--deep_turquoise);
}

.btn-primary.btn-turquoise:hover,
.btn-primary.btn-turquoise:active {
    background: #068aa1;
}

.btn-primary.btn-pink {
    background: var(--shy_pink);
}

.btn-primary.btn-pink:hover,
.btn-primary.btn-pink:active {
    background: #ac354b;
}

.btn-secondary {
    background-color: transparent;
    color: white;
    box-shadow: 0px 0px 0px 2px var(--brilliant_orange) inset;
}

.btn-secondary.btn-disabled {
    background: #0A123833;
    color: #394371;
    box-shadow: 0px 0px 0px 2px #394371 inset;
    pointer-events: none;
}

.btn-secondary .ripple-circle {
    background: rgba(0, 0, 0, 0.2);
}

.btn-secondary:active,
.btn-secondary:hover {
    color: var(--brilliant_orange);
}

.btn-secondary:focus-visible {
    box-shadow: 0px 0px 0px 2px var(--brilliant_orange) inset, 0px 0px 12px #EC5A24;
}

.btn-secondary:active.btn-i-rarrow-white:before,
.btn-secondary:hover.btn-i-rarrow-white:before {
    background-image: url("images/arrow_orange_right.svg");
}

.btn-secondary:active.btn-i-larrow-white:before,
.btn-secondary:hover.btn-i-larrow-white:before {
    background-image: url("images/arrow_orange_left.svg");
}

.btn-secondary .badge-number {
    right: 12px;
    top: -8px;
    font-size: 1.0rem;
    background: #049BB7;
    border: 1px solid var(--blue_violet);
}

[data-bg-color=gray] .btn-secondary {
    background: transparent;
    color: var(--blue_violet);
    box-shadow: 0px 0px 0px 2px var(--brilliant_orange) inset;
}

[data-bg-color=gray] .btn-secondary.btn-disabled {
    box-shadow: 0px 0px 0px 2px var(--wag_gray) inset;
    opacity: 0.5;
}

[data-bg-color=gray] .btn-secondary:hover {
    color: var(--brilliant_orange);
}

.btn-secondary-alt {
    border: 1px solid black;
}

.btn-secondary-alt.btn-disabled {
    opacity: 0.5;
    pointer-events: none;
}

.btn-secondary-alt.btn-teal {
    border-color: #007A7A;
    color: #007A7A;
    background-color: #4DC0B526;
}

.btn-secondary-alt.btn-teal:hover,
.btn-secondary-alt.btn-teal:active {
    background-color: #CCF2FA;
}

.btn-secondary-alt.btn-teal:focus-visible {
    box-shadow: 0px 0px 10px #007a7a91;
}

.btn-secondary-alt.btn-teal.btn-i-rarrow-white:before {
    background-image: url("images/arrow_teal_right.svg");
}

.btn-secondary-alt.btn-teal .ripple-circle {
    background: #007A7A40;
}

.btn-secondary-alt.btn-turquoise {
    border-color: #049BB7;
    color: #049BB7;
    background-color: #E5F7FB;
}

.btn-secondary-alt.btn-turquoise:hover,
.btn-secondary-alt.btn-turquoise:active {
    background-color: #cdecf3;
}

.btn-secondary-alt.btn-turquoise:focus-visible {
    box-shadow: 0px 0px 10px #049BB89D;
}

.btn-secondary-alt.btn-turquoise.btn-i-rarrow-white:before {
    background-image: url("images/arrow_turquoise_right.svg");
}

.btn-secondary-alt.btn-turquoise .ripple-circle {
    background: #049BB740;
}

.btn-secondary-alt.btn-pink {
    border-color: var(--shy_pink);
    color: var(--shy_pink);
    background-color: #F6E2E6;
}

.btn-secondary-alt.btn-pink:hover,
.btn-secondary-alt.btn-pink:active {
    background-color: #f3c9d1;
}

.btn-secondary-alt.btn-pink:focus-visible {
    box-shadow: 0px 0px 10px rgba(202, 62, 88, 0.596);
}

.btn-secondary-alt.btn-pink .ripple-circle {
    background: #CA3E5740;
}
.btn-secondary-alt.btn-pink.btn-i-rarrow-white:before {
    background-image: url("images/arrow_pink_right.svg");
}

.btn-secondary-alt.btn-turquoise .badge-number {
    font-weight: bold;
    font-size: 0.9rem;
    background-color: #049BB8;
    color: white;
    border: 1px solid white;
    right: 16px;
    top: -8px;
}

.btn-outline {
    background: transparent;
    border: 1.5px solid black;
}

.btn-outline.btn-orange {
    border-color: var(--brilliant_orange);
    color: var(--brilliant_orange);
}

.btn-outline.btn-white {
    border-color: var(--bright_white);
    color: var(--bright_white);
}

.btn-outline.btn-blue {
    border-color: var(--blue_violet);
    color: var(--blue_violet);
}

.btn-small:not(.btn-link) {
    padding: 5px 15px;
}

.btn-medium:not(.btn-link) {
    padding: 11px 20px;
}

.btn-large:not(.btn-link) {
    padding: 15px 30px;
}

.btn-link {
    background: transparent;
    font-weight: 600;
    color: #636363;
    text-decoration: underline;
    padding: 2px 5px;
    border-radius: 2px;
}

.btn-link.btn-turquoise:hover {
    color: #049BB8;
}

.btn-link.btn-turquoise:active {
    color: #08778D;
}

.btn-link.btn-teal:hover {
    color: #018180;
}

.btn-link.btn-teal:active {
    color: #073b3b;
}

.btn-link.btn-pink:hover {
    color: var(--shy_pink);
}

.btn-link.btn-pink:active {
    color: #6d2734;
}

.btn-link.btn-white {
    color: white;
}

.btn-link.btn-gray {
    color: var(--wag_gray);
}

.btn-link.btn-orange {
    color: var(--brilliant_orange);
}

.btn-link.btn-orange:hover {
    color: white;
}

.btn-link.btn-orange:focus-visible {
    background-color: white;
}

.btn-link.btn-orange:active {
    color: #ACACAC;
}

[data-bg-color=gray] .btn-link.btn-orange:hover {
    color: var(--brilliant_orange_light);
}

[data-bg-color=gray] .btn-link.btn-orange:focus-visible {
    color: var(--brilliant_orange);
}

.btn-link.btn-disabled {
    color: #545E89;
}

[data-bg-color=gray] .btn-link.btn-disabled {
    opacity: 0.5;
    color: initial;
}

.btn-link .ripple-circle {
    background-color: rgba(0, 0, 0, .1);
}

.btn-link.btn-small {
    font-size: 1.1rem;
}

.btn-transparent {
    background: transparent;
}

.btn-transparent.btn-white {
    color: white;
}

.btn-transparent.btn-disabled {
    opacity: 0.5;
}

.btn-back {
    font-weight: 600;
    color: var(--blue_violet);
}

#btn-back {
    font-size: 1.5rem;
    font-weight: 900;
    text-decoration: none;
    line-height: normal;
}

#btn-back:before {
    content: "< ";
}

.btn-icon:before {
    content: " ";
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right center;
    height: 100%;
    width: 12px;
}

.btn-icon-medium:before {
    width: 16px;
}

.btn-icon-large:before {
    width: 20px;
}

.btn-icon-r {
    padding-right: 38px;
}

.btn-icon-r.btn-icon-large {
    padding-right: 50px;
}

.btn-icon-r:before {
    right: 16px;
}

.btn-icon-l {
    padding-left: 38px;
}

.btn-icon-l.btn-icon-large {
    padding-left: 50px;
}

.btn-icon-l.btn-icon-medium {
    padding-left: 45px;
}


.btn-icon-l:before {
    left: 16px;
}

.btn-i-rarrow-white:before {
    background-image: url("images/arrow_white_right.svg");
}

.btn-i-larrow-blue:before {
    background-image: url("images/arrow_blue_left.svg");
}
.btn-i-larrow-orange:before {
    background-image: url("images/arrow_orange_left.svg");
}

.btn-i-larrow-white:before {
    background-image: url("images/arrow_white_left.svg");
}

.btn-i-share-white:before {
    background-image: url("images/icon_share.svg");
}

.btn-i-phone-white:before {
    background-image: url("images/icon_phone_white.svg");
}

.btn-i-email-white:before {
    background-image: url("images/noun-email-white.svg");
}

.btn-i-expand-arrow:before {
    background-image: url("images/arrow_orange_right.svg");
}

.btn-icon.btn-disabled:before,
.btn-icon.btn-disabled:before {
    opacity: 0.5;
}

.btn-goto-support {
    padding: 16px 16px 16px 43px;
}

.btn-goto-support:before {
    width: 20px;
    left: 18px;
    background-image: url("images/support-white.svg");
}

.btn .ripple {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    overflow: hidden;
    background: transparent;
}

.btn .ripple-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.2);
}

.btn .ripple.is-active .ripple-circle {
    animation: a-btn-ripple .6s ease-in forwards;
}

@keyframes a-btn-ripple {
    0% {
        opacity: 0;
    }

    25% {
        opacity: 1;
    }

    75% {
        width: 200%;
        padding-bottom: 200%;
        opacity: 1;
    }

    100% {
        opacity: 0;
        width: 200%;
        padding-bottom: 200%;
    }
}