:root {
    --gs-green: #144634;
    --gs-primary: #76b900;
    --gs-hover-color: #88d107;
    --gs-body-color: #4a4a4a;
    --gs-error-highlight: rgb(231, 41, 41);
}

* {
    #76b800 font-family: Fort-Light, sans-serif  !important;
}

body {
    margin: 0;
    font-family: Fort-Light, sans-serif !important;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    color: var(--gs-body-color);
    background-color: #FFFFFF;
}

a {
    color: var(--gs-primary);
}

a:active {
    color: var(--gs-hover-color);
}

a:hover {
    color: #144634;
}

a.nav-link:hover {
    color: #76b900;
}

H1 {
    font-family: GameSenseHand-Regular, sans-serif !important;
}

H3 {
    font-family: Fort-Medium, sans-serif !important;
    font-size: 22px;
}

H4 {
    font-family: Fort-Bold, sans-serif !important;
    font-size: 18px;
    line-height: 24px;
}

h5 {
    margin-bottom: 50px;
    font-size: 18px;
}

label {
    font-family: Fort-Medium, sans-serif !important;
    font-size: 18px;
    font-weight: 600;
    padding-bottom: 4px;
}

.bold {
    font-weight: 600;
}

.pageError {
    border-left: #e72929 solid;
    padding-left: 13px;
    margin-bottom: 15px;
    color: var(--gs-error-highlight);
    background-color: #f3e1e1;
    padding: 10px 15px;
}

#pageTitle {
    font-size: 80px;
    line-height: 1em;
    letter-spacing: .01em;
    color: var(--gs-green);
    font-weight: normal;
    margin-bottom: 32px;
}

/* error handling */
.invalid-msg {
    color: var(--gs-error-highlight);
    font-weight: 500;
    white-space: nowrap;
}

.is-invalid {
    border: 4px solid rgb(231, 41, 41);
    margin-bottom: 12px;
}
/*- - - - -*/

.container {
    max-width: 950px;
    width: 95%;
}

#nav-bar {
    font-size: 28px;
    padding-left: 20px;
    width: 100%;
}

.header-branding a {
    display: inline-block;
}

.navbar-brand {
    white-space: normal;
}

.navbar-brand.brand-text {
    width: 6rem;
    font-size: 24px;
}

.navbar-brand.logo {
    margin: 0 10px 0 0;
    vertical-align: top;
}

.navbar-brand.logo img {
    width: 143px;
}

.nav-link {
    color: #ffffff;
    padding: 0.8rem 1rem;
    font-family: GameSenseHand-Regular, sans-serif;
}

.nav-link:active,
.nav-link.active {
    color: #fff;
}

.header-branding {
    padding: 18px 0;
    line-height: 19px;
    line-height: 19px;
    white-space: nowrap;
}

#header-container {
    background-color: var(--gs-green);
    padding: 0;
}

header {
    margin-bottom: 0em;
}

#content-container {
    box-shadow: 0px 0px 12px 2px rgba(0, 0, 0, 0.15);
    border-top: 12px solid var(--gs-green);
    margin-top: 40px;
}

#hubFormContainer {
    padding: 64px 64px 64px;
}

.bottomPadding{
    padding-bottom: 20px;
}

.title-bar {
    background-color: rgb(243, 246, 245);
    color: var(--gs-green);
    text-align: center;
    padding: 100px 0 0 0;
}

.title-bar-2 {
    background-color: #e7edeb;
    color: var(--gs-green);
    text-align: center;
    padding: 32px 25px 16px;
    margin-top: 48px;
}

.acknowledge {
    margin: 0 0 2.5em 0 ;
}

.acknowledge > li {
    padding-left: 20px;
    padding-bottom: 15px;
}

.acknowledge > ol {
    padding-left: 62px;
}

 .bump-down {
    font-size: 14px;
    color: rgb(100 100 100);
}

.bump-up {
    font-size: 18px;
    line-height: 24px;
    margin-bottom:  24px;
}

footer {
    margin-top: 64px;
    background-color: var(--gs-green);
    text-align: right;
    padding-right: 32px!important;
    height: 72px;
}

footer > div.container {
    padding: 0;
    text-align: right;
}

.footer-brand.logo img {
    width: 143px;
    margin: 20px 0;
}

.hideElement {
    width:0;
    height:0;
    display: none;
}

/*Success Page*/
.svgCheck {
    fill: var(--gs-green);
    margin: auto;
}

.caseNumPill {
    max-width: 400px;
    background: #e7edeb;
    border-radius: 22px;
    text-align: center;
    padding: 8px;
    margin: 40px auto 0px;
}

.SuccessTitle {
    font-size: 32px;
    line-height: 40px;
    letter-spacing: 0.85px;
    font-weight: 100;
    color: #144634;
    padding-bottom: 15px;
}

.successDiv {
    text-align: center;
}

.successDiv p {
   font-size: 18px;
}

.errorImg {
    width: 350px;
    padding-bottom: 50px;
}

.checkDiv {
    text-align: center;
    margin-bottom: 30px;
}
/*- - - - -*/

 .noBullet {
    list-style-image: none;
    list-style: none;
 }

.form-break {
    border-bottom: 1px solid lightgray;
    padding-bottom: 48px;
    margin-bottom: 48px;
}

.form-check {
    margin-bottom: 48px!important;
}

.form-check-input {
    width: 2.5em;
    height: 2.5em;
    border: 4px solid var(--gs-primary);
    margin-right: -1em;
}

.form-check-input:checked {
    background-color: var(--gs-primary)!important;
    border-color: var(--gs-primary);
}

.form-check-input:hover {
    background-color: #e7edeb;
}

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

.legalBox {
    padding-top: 10px;
    display: block;
    padding-left: 40px;
}

.legalBox p {
    font-size: 14px;
    margin-bottom: 3px;
}

ol {
    font-size: 14px;
    margin-top: 1px;
}

ol li {
    list-style: lower-roman;
}

ol ol li {
    list-style: lower-alpha;
}

ol ol ol li {
    list-style-type: disc;
    padding-left: 10px;
}

.btn-lg {
    width: 300px;
    max-width: 100%;
    padding: 9px 12px;
    border-radius: 4px;
    border: none;
    font-family: Fort-Medium, sans-serif !important;
}

.btn-primary {
    background-color: var(--gs-hover-color);
    border-color: var(--gs-hover-color);
}

.btn-lg.btn-outline-secondary {
    border: 1px solid var(--bclc-secondary-color);
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:visited {
     background-color: #144634;
}

.btn-outline-primary:hover {
    background-color: var(--gs-primary);
}

.btn-outline-primary {
    color: var(--gs-primary);
    border-color: var(--gs-primary);
}

.mainFormButton {
    text-align: left;
    padding-top: 30px;
}

#dobInputCol {
    margin-top: 20px;
}

input[type="date"]::-webkit-calendar-picker-indicator {
    font-size: 20px;
    cursor: pointer;
}

.form-control {
    font-size: 18px;
    line-height: 36px;
    text-transform: uppercase;
    box-shadow: inset 0px 1px 3px rgb(0 0 0 / 50%);
}

h2 {
    font-size: 24px;
    font-family: Fort-Medium, sans-serif;
}

.form-check-input,
.form-check-label {
    cursor: pointer;
}

#checkError {
    margin-top: -36px;
}

@media (max-width: 768px) {
    .title-bar {
        padding: 50px 0 0 0;
    }

    #pageTitle {
        font-size: 40px;
        margin-bottom: 24px;
    }

    #hubFormContainer {
        padding: 48px 20px 48px;
    }

    ol.acknowledge{
        padding-left: 20px;
    }

    .form-check {
        margin-bottom: 40px!important;
    }
    .nav-link {
        font-size: 22px;
        }

    #dobInputCol {
        margin-top: 20px;
    }
    .container {
        width: auto;
        margin-left: 24px;
        margin-right: 24px;
    }
    .footer {
        margin-top: 40px;
    }
    #pageWriteup {
        margin: 0px 24px;
    }
    .acknowledge > ol.acknowledge {
        padding-left: 35px;
    }

    .title-bar-2 {
        margin-top: 40px;
    }

    .acknowledge > ol {
        padding-left: 35px;
    }

    #checkError {
        margin-top: -28px;
    }
}

@media (max-width: 767.5px) {
    #lastNameInputCol {
        margin-top: 40px;
    }
}


@media (max-width: 600px) {
    .navbar-brand.logo img {
        width: 106px !important;
    }

    .nav-link {
        float: right;
        padding: 7px 18px 0 0 !important;
    }

    #content-container {
        box-shadow: 0px 0px 12px 2px rgb(0 0 0 / 15%);
        border-top: none;
        margin-top: 0px;
    }

    .container {
        width: 100%;
        margin-left: 0px;
        margin-right: 0px;
    }

    .title-bar {
        text-align: left;
        padding: 40px 17px;
    }

    .title-bar-2 {
        font-size: 14px;
        text-align: left;
        padding: 32px 16px 16px;
    }

    #formEnd {
        text-align: center;
    }

    #pageTitle {
        font-size: 40px;
    }

    #hubFormContainer {
        padding: 40px 15px 40px;
    }

    .bump-down {
        margin-top: 15px !important;
    }

    .legalBox p {
        margin-left: -65px;
        margin-top: 20px;
    }

    .acknowledge {
        margin: 0 0 2.5em -76px;
    }

    .footer-brand.logo img {
        width: 108px;
        margin: 24px 0;
    }

    .mainFormButton {
        text-align: center;
    }

    .footer {
        margin-top: 0;
        text-align: center;
    }

    ol.acknowledge {
        padding-left: 94px;
    }

    .acknowledge > ol.acknowledge {
        padding-left: 111px;
    }

    h2 {
        font-size: 22px;
    }

    #lastNameInputCol {
        margin-top: 32px;
    }

    #dobInputCol {
        margin-top: 12px;
    }

    #pageWriteup {
        margin: 0px;
    }

    .successDiv {
        text-align: left;
    }

    .invalid-msg {
        white-space:normal;
    }

    .form-break {
        padding-bottom: 40px;
        margin-bottom: 40px;
    }

    .checkDiv {
        text-align: left;
    }
}