a {
    font-family: var(--font-semibold);
    color: var(--hyperlink);
    text-decoration: none;
}

a:hover,
a:focus-within {
    text-decoration: underline;
}

.d-bg-primary-brown a:not([class]),
.d-bg-primary-midnight a:not([class]),
.d-bg-highlight-blue a:not([class]),
.d-bg-highlight-orange a:not([class]),
.d-bg-highlight-red a:not([class]),
.d-bg-overlay-black a:not([class]),
.d-bg-overlay-blue a:not([class]),
.d-bg-black a:not([class]) {
    color: var(--white);
    text-decoration: underline;
    transition: var(--transition-sm);
}

.d-bg-primary-brown a:not([class]):hover,
.d-bg-primary-brown a:not([class]):focus-within,

.d-bg-primary-midnight a:not([class]):hover,
.d-bg-primary-midnight a:not([class]):focus-within,

.d-bg-highlight-blue a:not([class]):hover,
.d-bg-highlight-blue a:not([class]):focus-within,

.d-bg-highlight-orange a:not([class]):hover,
.d-bg-highlight-orange a:not([class]):focus-within,

.d-bg-highlight-red a:not([class]):hover,
.d-bg-highlight-red a:not([class]):focus-within,

.d-bg-overlay-black a:not([class]):hover,
.d-bg-overlay-black a:not([class]):focus-within,

.d-bg-overlay-blue a:not([class]):hover,
.d-bg-overlay-blue a:not([class]):focus-within,

.d-bg-black a:not([class]):hover,
.d-bg-black a:not([class]):focus-within {
    color: var(--primary-gold);
}


/* links - start */
.hyperlink-alt {
    position: relative;
    background-color: transparent;
    color: var(--primary-brown);
    padding: 0;
}

.hyperlink-alt.hyperlink-arrow-alt {
    font-family: var(--font-bold);
    font-size: var(--text-lg);
    line-height: 25px;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.hyperlink {
    position: relative;
    background-color: transparent;
    color: var(--hyperlink);
    text-decoration: none;
    border: none;
    padding: 0;
    transition: all var(--transition-sm);
}

.hyperlink,
.hyperlink.hyperlink-md {
    font-family: var(--font-semibold);
    font-size: var(--text-md);
    line-height: 25px;
    letter-spacing: 0.3px;
}

.hyperlink.hyperlink-lg {
    font-family: var(--font-bold);
    font-size: var(--text-lg);
    line-height: 25px;
    letter-spacing: 0.9px;
}

.hyperlink.hyperlink-sm {
    font-family: var(--font-semibold);
    font-size: var(--text-sm);
    line-height: 15px;
    letter-spacing: 0.3px;
}

.hyperlink.hyperlink-arrow {
    font-family: var(--font-bold);
    font-size: var(--text-lg);
    line-height: 25px;
    letter-spacing: 0.9px;
    text-transform: uppercase;

    display: inline-flex;
    width: fit-content;
    max-width: calc(100% - 20px);
    flex-direction: row;
    gap: 16px;
    align-items: center;
    padding-right: 30px;
}

.hyperlink.hyperlink-arrow::after {
    font: var(--fa-font-solid);
    content: "\f061";
    position: absolute;
    right: 0;
}

.hyperlink:hover,
.hyperlink:focus-within {
    text-decoration: underline;
}

.hyperlink:active,
.hyperlink.active {
    color: var(--primary-brown);
}

.d-bg-primary-brown .hyperlink,
.d-bg-primary-midnight .hyperlink,
.d-bg-highlight-blue .hyperlink,
.d-bg-highlight-orange .hyperlink,
.d-bg-highlight-red .hyperlink,
.d-bg-overlay-black .hyperlink,
.d-bg-overlay-blue .hyperlink,
.d-bg-black .hyperlink {
    color: var(--white) !important;
    text-decoration: underline !important;
}

.d-bg-primary-brown .hyperlink.hyperlink-arrow,
.d-bg-primary-midnight .hyperlink.hyperlink-arrow,
.d-bg-highlight-blue .hyperlink.hyperlink-arrow,
.d-bg-highlight-orange .hyperlink.hyperlink-arrow,
.d-bg-highlight-red .hyperlink.hyperlink-arrow,
.d-bg-overlay-black .hyperlink.hyperlink-arrow,
.d-bg-overlay-blue .hyperlink.hyperlink-arrow,
.d-bg-black .hyperlink.hyperlink-arrow {
    text-decoration: none !important;
}

.d-bg-primary-brown .hyperlink:hover,
.d-bg-primary-midnight .hyperlink:hover,
.d-bg-highlight-blue .hyperlink:hover,
.d-bg-highlight-orange .hyperlink:hover,
.d-bg-highlight-red .hyperlink:hover,
.d-bg-overlay-black .hyperlink:hover,
.d-bg-overlay-blue .hyperlink:hover,
.d-bg-black .hyperlink:hover {
    color: var(--primary-gold) !important;
}

/* links - end */



/* buttons - start */
.d-btn-link {
    font-family: var(--font-bold);
    font-size: var(--text-md);
    line-height: normal;
    letter-spacing: 3.2px;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none !important;

    transition: var(--transition-sm);
}

.d-btn {
    font-family: var(--font-bold);
    font-size: var(--text-md);
    line-height: normal;
    letter-spacing: 3.2px;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none !important;

    display: inline-block;
    width: fit-content;
    padding: 18px 20px;
    border-radius: none !important;
    transition: var(--transition-sm);
}



.btn-high {
    background-color: var(--primary-gold);
    color: var(--primary-brown);
    border: 1px solid var(--primary-gold);
}

.btn-high:hover,
.btn-high:focus-within {
    background-color: var(--primary-brown);
    color: var(--white);
    border: 1px solid var(--primary-brown);
}

.btn-high:active,
.btn-high.active {
    background-color: var(--white);
    color: var(--primary-brown);
    border: 1px solid var(--primary-brown);
}



.btn-medium {
    background-color: var(--primary-brown);
    color: var(--white);
    border: 1px solid var(--primary-brown);
}

.btn-medium:hover,
.btn-medium:focus-within {
    background-color: var(--white);
    color: var(--primary-brown);
}

.btn-medium:active,
.btn-medium.active {
    background-color: var(--primary-gold);
    color: var(--primary-brown);
}



.btn-low.white {
    background-color: transparent;
    color: var(--white);
    border: 1px solid var(--white);
}


.btn-low {
    background-color: transparent;
    color: var(--primary-brown);
    border: 1px solid var(--primary-brown);
}

.btn-low:hover,
.btn-low:focus-within {
    background-color: var(--primary-gold);
    color: var(--primary-brown);
}

.btn-low:active,
.btn-low.active {
    background-color: var(--primary-brown);
    color: var(--white);
}



.btn-white {
    background-color: var(--white);
    color: var(--primary-brown);
    border: 1px solid var(--primary-brown);
}

.btn-white:hover,
.btn-white:focus-within {
    background-color: var(--primary-gold);
    color: var(--primary-brown);
}

.btn-white:active,
.btn-white.active {
    background-color: var(--primary-gold);
    color: var(--primary-brown);
}

/* buttons - end */


@media (max-width: 767.5px) {
    .hyperlink.hyperlink-lg {
        font-size: var(--text-md);
        line-height: 23px;
    }
}