body {
    background-color: rgb(245, 245, 245) !important;
}

/* Header classes and styles */

.header_row_style {
    font-size: 0;
}

.header_info {
    background-color: var(--active-nav-color) !important;
    min-height: 300px;
}

.header_position {
    flex: 1 1 auto;
    padding: 32px 16px 32px 40px;
}

.header_text {
    font-size: 48px;
    line-height: 42px;
    text-shadow: 3px 3px 0 var(--header-tag-background);
    color: #fff;
    font-weight: 700;
    margin: 0;
    padding: 16px 0;
    font-family: hero-new, sans-serif !important;
}

.header_tag {
    background-color: var(--header-tag-background);
    border-radius: 3px;
    border-width: 0;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-size: 12.8px;
    font-weight: 300;
    line-height: 30px;
    margin: 8px 8px 0 0; 
    padding: 0 8px;
    text-decoration: none;
    vertical-align: top;
}

.header_image_position {
    padding-left: 0;
    padding-right: 0;
    background-color: var(--header-image-background) !important;
}

.header_image_layover {
    background-image: url('../img/dec.svg');
    background-position: 0;
    background-repeat: no-repeat;
    background-size: auto 100%;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.header_image_style {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.col-sm-3.sticky-top {
    align-self: flex-start;
}

.col-md-4.sticky-top {
    align-self: flex-start;
}

.col-lg-4.sticky-top {
    align-self: flex-start;
}

.nav_padding {
    margin-left: -25px !important;
}

.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 50%;
}

.box {
    box-sizing: border-box;
    border: 3px rounded solid transparent;
    background-clip: padding-box;
}

.heading {
    color: white !important;
    text-align: center !important;
}

h1 {
    font-family: Arial !important;
}

.button_div {
    padding-top: 25px;
    padding-bottom: 25px;
}

.button {
    border: none;
    color: white;
    padding: 10px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 8px;
}

.buttonBack {
    border: 2px solid var(--back-button-color) !important;
    background-color: white;
    color: var(--back-button-color) !important;
}

.buttonForward {
    background-color: var(--forward-button-color) !important;
}

.hidden {
    display: none;
}

@-webkit-keyframes fadeIn {
    from { opacity: 0; }
      to { opacity: 1; }
}
@keyframes fadeIn {
    from { opacity: 0; }
      to { opacity: 1; }
}

.show {
    display: block;
    -webkit-animation: fadeIn 1s;
    animation: fadeIn 1s;
}

* {
    box-sizing: border-box;
}

.step-wrapper {
    margin-top: 25px;
    margin-bottom: 25px;
}

ul {
    list-style: none;
}

.navmenu ul {
    font-family: hero-new, sans-serif;
    padding-left: 50px;
    position: relative;
}

.navmenu ul::after {
    content: "";
    position: absolute;
    width: 3px;
    height: calc(100% - 18px);
    left: 40px;
    top: 0;
    z-index: -1;
    background: var(--inactive-nav-color) !important;
    margin-top: 9px;
}

.navmenu span::after {
    content: "";
    position: absolute;
    width: 3px;
    height: 0px;
    left: 71px;
    top: 0;
    z-index: 10 !important;
    background: var(--active-nav-color) !important;
    margin-top: 9px;
}

.navmenu ul li {
    padding: 5px 0;
    padding-left: 15px;
    text-decoration: none;
    position: relative;
    font-size: 0.8rem;
    line-height: 1.5rem;
    font-weight: 300;
    color: var(--inactive-nav-color) !important;
}

.navmenu ul li:not(.selected):before {
    content: "";
    position: absolute;
    background: rgb(245, 245, 245);
    width: 18px;
    height: 18px; /*18px*/
    left: -17.5px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50px;
    transition: background 250ms ease-in-out;
    z-index: 20;
}

#nav_li_1:before {
    border: 4px solid var(--active-nav-color) !important;
}


.navmenu ul li:before {
    border: 4px solid var(--inactive-nav-color) !important;
}

li:hover:not(.selected) {
    color: var(--hover-nav-color) !important;
    transition: 250ms ease-in-out !important;
}

li.active:hover:not(.selected) {
    color: var(--hover-nav-color) !important;
    transition: 250ms ease-in-out !important;
}

.navmenu ul li.selected:before {
    content: "";
    position: absolute;
    background: rgb(245, 245, 245);
    width: 18px;
    height: 18px; /*18px*/
    left: 17.5px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50px;
    transition: background 250ms ease-in-out;
    z-index: 20;
}

.selected {
    color: var(--active-nav-color) !important;
    font-weight: 700 !important;
    background-color: #ffffff !important;
    border-radius: 10px !important;
    padding-left: 50px !important;
    padding-right: 10px !important;
    left: -35px !important;
    z-index: -3 !important;
}

.navmenu ul li.active {
    color: var(--active-nav-color) !important;
}

.navmenu ul li.active:before {
    background: var(--active-nav-color) !important;
}

.layout {
    padding-top: 50px;
    padding-bottom: 50px;
    padding-right: 25px;
    padding-left: 25px;
}

.footer {
    background-color: #e7e7e7;
    margin: 0 auto;
    padding: 32px 16px;
    text-align: center;
}
.footer p {
    color: #666;
    font-size: 14px;
    margin-bottom: 1em; 
}
.footer p:last-child {
    margin: 0;
}

.footer_feedback-prompt {
    font-family: hero-new, sans-serif;
    border: none;
    border: 2px solid var(--back-button-color) !important;
    color: var(--back-button-color) !important;
    background-color: #edeef1;
    padding: 10px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 8px;
}