@font-face {
    font-family: 'gtamerica';
    src:  url('../assets/fonts/GT-America-Standard-Light.woff2') format('woff2'),
    url('../assets/fonts/GT-America-Standard-Light.woff') format('woff'),
    url('../assets/fonts/GT-America-Standard-Light.eot') format('embedded-opentype');
    font-weight: 300;
    font-display: block;
}

@font-face {
    font-family: 'gtamerica';
    src:  url('../assets/fonts/GT-America-Standard-Regular.woff2') format('woff2'),
    url('../assets/fonts/GT-America-Standard-Regular.woff') format('woff'),
    url('../assets/fonts/GT-America-Standard-Regular.eot') format('embedded-opentype');
    font-weight: 500;
    font-display: block;

}

@font-face {
    font-family: 'gtamerica';
    src:  url('../assets/fonts/GT-America-Standard-Bold.woff2') format('woff2'),
    url('../assets/fonts/GT-America-Standard-Bold.woff') format('woff'),
    url('../assets/fonts/GT-America-Standard-Bold.eot') format('embedded-opentype');
    font-weight: 700;
    font-display: block;
}

body {
    font-weight: 500 !important;
}

h1, h2, h3, h4, h5, p {
    font-family: gtamerica, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

h1, h2, h3, h4, h5 {
    font-weight: 700 !important;
}

h1 {
    font-size: 2.5em !important;
}

h2 {
    font-size: 2em !important;
}

h3 {
    font-size: 1.5em !important;
    line-height: 120% !important;
}

h4 {
    font-size: 1.25em !important;
    line-height: 140% !important;
}

h5 {
    font-size: 1em !important;
    line-height: 140% !important;
}

p, .paragraph {
    font-size: 1em !important;
    line-height: 160% !important;
}

a {
    text-decoration: underline !important;
}

.gray-400 {
    color: #7D7D7C;
}

.section {
    padding: 64px 0;
}

section.hero {
    color: #FFFFFF;
    height: 454px;
    display: flex;
    flex-direction: column;
}

section.hero h1 {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
}

section.hero content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    flex-grow: 1;

}

.btn {
    font-weight: 700 !important;
    padding: 16px 48px !important;
    border-radius: 48px !important;
}

.btn-hollow {
    background-color: transparent !important;
    border: 1px solid #D5D3D2 !important;
    color: #000 !important;
}
.btn-hollow:active {
    background-color: #000 !important;
    color: #fff !important;
}

/* Video Background */
#background-video {
    height: 454px;
    width: 100vw;
    object-fit: cover;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
}

.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    --bs-gutter-x: 3rem !important;
    --bs-gutter-y: 0 !important;
    width: 100% !important;
    padding-right: calc(var(--bs-gutter-x) * .5) !important;
    padding-left: calc(var(--bs-gutter-x) * .5) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.calendar-month-view {
    width: 30%;
}

@media (max-width: 960px) {
    .calendar-month-view {
        width: 100%;
    }
}

.stats-icon-dimensions {
    width: 8rem;
    height: 8rem;
    margin-bottom: 2rem;
}

.form-floating > label { 
    color: #7D7D7C;
}

/* Remove the ! and checkmark images from form components */
.form-control.is-invalid, .was-validated .form-control:invalid {
    background-image: none !important;
}
.form-control.is-valid, .was-validated .form-control:valid {
    background-image: none !important;
}

/* Large Screen Custom CSS */
@media (min-width: 960px) {
    h1 {
        font-size: 3em !important;
    }

    h2 {
        font-size: 2.5em !important;
    }

    h3 {
        font-size: 2em !important;
        line-height: 120% !important;
    }

    h4 {
        font-size: 1.5em !important;
        line-height: 140% !important;
    }

    h5 {
        font-size: 1.25em !important;
        line-height: 140% !important;
    }

    .section {
        padding: 96px 0;
    }
}