:root {
    --horan-blue-header: #1B3453;
    --horan-blue: #263B54;
    --horan-blue-accent: #14759B;
    --horan-blue-light: #ADE9FF;
    --horan-blue-light-two: #669EB3;
    --horan-blue-navy: #002B60;
    --horan-gold: #F2AF1A;
    --horan-yellow: #D39A1A;
    --horan-yellow-two: #E3B95D;
    --horan-stone-200: #E7E5E4;
    --horan-stone-300: #D6D3D1;
    --horan-stone-400: #A8A29E;
    --horan-grey: #6C6361;
    --horan-grey-dark: #404040;
    --horan-egret: #F2EBDF;
    --horan-neutral-500: #737373;
    --horan-almost-white: #FFFAF7;
    /**/
    --h1-font-size: 72px;
    --h2-font-size: 60px;
    --h3-font-size: 48px;
    --h4-font-size: 36px;
    --h5-font-size: 32px;
    --p0-font-size: 26px;
    --p1-font-size: 24px;
    --p2-font-size: 22px;
    --p3-font-size: 20px;
    --p4-font-size: 18px;
    --p5-font-size: 14px;
    /**/
    --primary-heading-font: "Roboto Slab";
    --header-height: 75px;
    --navigation-max-width: 1600px;
    --header-nav-link-font-size: 17px;
    --std-width-constraint: 1240px;
}

* {
    margin: 0;
}

main {
    padding-top: var(--header-height);
}


ul {
    padding: 0;
    list-style: none;
}
ul.list_bullets{
    list-style: disc;
}

a {
    cursor: pointer;
    text-decoration: none;
    appearance: none;
    color: inherit;
}

a:visited, a:-webkit-any-link {
    text-decoration: none;
    appearance: none;
}

button {
    padding: 0px;
    cursor: pointer;
    background: none;
    border: none;
    width: fit-content;
}

span {
    font-family: inherit;
}

.std_width_constraint{
    max-width: var(--std-width-constraint);
    margin: auto;
}

/*#region Colors*/
.text_white, a.text_white {
    color: white;
}
.text_grey{
    color: var(--horan-grey);
}
.text_dark_grey {
    color: var(--horan-grey-dark);
}
.text_stone_200 {
    color: var(--horan-stone-200);
}
.text_stone_300 {
    color: var(--horan-stone-300);
}
.text_stone_400 {
    color: var(--horan-stone-400);
}
.text_neutral_500{
    color: var(--horan-neutral-500);
}
.text_egret {
    color: var(--horan-egret);
}
.text_blue{
    color: var(--horan-blue);
}
.text_blue_accent{
    color: var(--horan-blue-accent);
}
.text_blue_light {
    color: var(--horan-blue-light);
}
.text_blue_light_two {
    color: var(--horan-blue-light-two);
}
.text_blue_navy{
    color: var(--horan-blue-navy);
}
.text_gold{
    color: var(--horan-gold);
}
.text_yellow {
    color: var(--horan-yellow);
}
.text_yellow_two{
    color: var(--horan-yellow-two);
}
.text_almost_white{
    color: var(--horan-almost-white);
}


.bg_white {
    background: white;
}
.bg_almost_white{
    background: var(--horan-almost-white);
}

.bg_header_blue {
    background: var(--horan-blue-header);
}

.bg_blue {
    background: var(--horan-blue);
}
.bg_blue_light_two {
    background: var(--horan-blue-light-two);
}
.bg_yellow {
    background: var(--horan-yellow);
}

.border_yellow {
    border: 1px solid var(--horan-yellow);
}
.border_black{
    border: 1px solid black;
}
/*#endregion*/

/*#region Buttons*/
button {
    /*Set default button text color to black to stop the default color of blue being applied on mobile browsers*/
    color: black;
}

.std_button {
    cursor: pointer;
    display: flex;
    align-items: center;
    width: fit-content;
    box-sizing: border-box;
    height: 52px;
    padding: 16px 36px;
    border-radius: 2000px;
    font-size: 18px;
    line-height: 20px;
    font-weight: 500;
}
/*#endregion*/

/* #region Font Sizing & Weight */
* {
    font-family: 'Roboto';
}

h1, .h1, h1 *, .h1 *, h2, .h2, h2 *, .h2 *, h3, .h3, h3 *, .h3 *, h4, .h4, h4 *, .h4 *, h5, .h5, h5 *, .h5 * {
    font-family: var(--primary-heading-font); /*TODO?*/
    font-weight: 400;
    font-size: var(--font-size);
    line-height: 105%;
}

h1,
.h1 {
    --font-size: var(--h1-font-size);
}

h2,
.h2 {
    --font-size: var(--h2-font-size);
}

h3,
.h3 {
    --font-size: var(--h3-font-size);
}

h4,
.h4 {
    --font-size: var(--h4-font-size);
}

h5,
.h5 {
    --font-size: var(--h5-font-size);
}

.p0{
    font-size: var(--p0-font-size);
}
.p1 {
    font-size: var(--p1-font-size);
}

.p2 {
    font-size: var(--p2-font-size);
}

.p3 {
    font-size: var(--p3-font-size);
}

.p4 {
    font-size: var(--p4-font-size);
}

.p5 {
    font-size: var(--p5-font-size);
}

.uppercase{
    text-transform: uppercase;
}
.italic {
    font-style: italic;
}

.weight_100 {
    font-weight: 100;
}

.weight_200 {
    font-weight: 200;
}

.weight_300 {
    font-weight: 300;
}

.weight_400 {
    font-weight: 400;
}

.weight_500 {
    font-weight: 500;
}

.weight_600 {
    font-weight: 600;
}

.weight_700,
.bold {
    font-weight: 700;
}

.weight_800 {
    font-weight: 800;
}

.weight_900 {
    font-weight: 900;
}

.line_height_140 {
    line-height: 140%;
}
.line_height_120 {
    line-height: 120%;
}

.line_height_105 {
    line-height: 105%;
}
.roboto{
    font-family: 'Roboto';
}
.text_center{
    text-align: center;
}
.text_align_right{
    text-align: right;
}
.text_underline,
a.text_underline {
    text-decoration: underline;
}
/* #endregion */

