#nav_wrapper {
  background: linear-gradient(180deg, var(--medium-1) 0%, var(--dark-1) 3%, var(--dark-1) 98%, rgba(88,83,54,1) 100%);
  /* border: 1px solid var(--light-3); */
}
nav {
    width: 100%;
}
nav a {
    text-decoration: none;
    align-items: center;
    font-family: var(--menu-font);
    font-size: var(--menu-font-size);
}
nav a, nav input {
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: none !important;
    font-size: var(--menu-font-size);
    /* font-size: calc(16px + 0.25vw) !important; */
}
nav .drop-icon {
  font-weight: 400;
}
nav a i {
  margin-right: 0.7vw;
}
#nav_wrapper nav a:hover {
  background-color: var(--dark-2);
}
#nav_wrapper nav .has-sub-menu > ul  {
  background-color: var(--dark-4);
}
#toggle_menu {
    font-family: var(--sub-header-font);
    font-size: calc(16px + 0.5vw);
    font-weight: 700;
}
#nav_wrapper nav li, #toggle_menu, #nav_wrapper nav a {
  color: var(--light-1);
}
#nav_wrapper nav li.active > a {
  color: var(--light-1);
}
#nav_wrapper nav li, #toggle_menu, #nav_wrapper nav .has-sub-menu > ul {
  border-color: rgba(255, 255, 255, .25);
}

/* Cascade colors in touch menu levels - each level gets slightly darker*/
/* #tm:checked ~ ul .has-sub-menu > ul {
  background-color: rgba(255,235,187,.5);
} */

/* Override Semantic/Fomantic UI button colors by class name (hackish) */
.ui.teal.button {
  background-color: var(--dark-4);
}
.ui.green.button {
  background-color: var(--dark-4-hover);
}

#logout_link {
  margin-left: 0;
}
#logout_link input {
  color: var(--light-1);
}
/* End SUI overrides */

#nav_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
li.search-form {
    margin-right: none !important;
}
#nav_wrapper > form.search {
    margin-right: 1rem;
}

#nav_wrapper .ui.selection.dropdown {
    margin: 0.25rem 1rem !important;
}
.has-sub-menu {
    flex-direction: column;
    align-items: flex-start !important;
}
.has-sub-menu > ul {
    width: 100%;
    padding: 0 calc(1rem + 0.35vw)
}
#toggle_menu {
    cursor: pointer;
}

#nav_wrapper nav a:hover {
    text-decoration: none;
}

.has-sub-menu > a {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    cursor: pointer
}

.drop-icon {
    margin-left: 5px;
}

#nav_wrapper nav a {
    cursor: auto;
}
.drop-icon, #nav_wrapper nav a:not([href="#"]) {
  cursor: pointer;
}

#nav_wrapper nav ul {
    margin: 0;
    padding: 0;
}

#nav_wrapper nav .main-menu {
    display: none;
}

#nav_wrapper nav .main-menu > li.active {
    border-block-start: 3px solid var(--light-1);
}
#nav_wrapper nav .main-menu li:has(li.active) {
    border-block-start: 2px solid var(--light-1);
}
#nav_wrapper nav .has-sub-menu li.active {
    border-inline-start: 3px solid var(--light-1);
    margin-inline-start: 3px;
}

#tm:checked + .main-menu {
  display: block;
}

#nav_wrapper nav input[type="checkbox"],
#nav_wrapper nav ul span.drop-icon {
  display: none;
}

/* #nav_wrapper nav li, #toggle_menu, #nav_wrapper nav .has-sub-menu > ul {
  border-style: solid;
} */

#nav_wrapper nav li, #toggle_menu {
  border-width: 0 0 1px;
}

#nav_wrapper nav .has-sub-menu > ul {
  border-width: 1px 1px 0;
}

#nav_wrapper nav li, #toggle_menu, #nav_wrapper nav a {
  position: relative;
  display: inline-flex;
  text-transform: uppercase !important;
}

#nav_wrapper nav li.has-sub-menu > ul > li:not(.has-sub-menu) > a {
  text-transform: capitalize !important;
}

#toggle_menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.6rem 0.75rem;
  font-weight: 700;
}
#nav_wrapper nav li {
    display: flex;
    align-items: center;
}
#nav_wrapper nav a {
    width: 100%;
    padding: 1rem calc(0.45rem + 0.35vw);
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    line-height: 1.1;
}

#nav_wrapper nav .has-sub-menu > ul {
  display: none;
}

#nav_wrapper nav input[type="checkbox"]:checked + ul {
  display: block;
}
#nav_wrapper li.has-sub-menu > ul li {
    background-color: var(--dark-4);
}
#nav_wrapper li.has-sub-menu > ul li a {
    line-height: 1.3;
}
.drop-icon {
    font-size: calc(13px + 0.25vw);
}
#toggle_menu .drop-icon {
    margin: calc(0px - 0.75rem) calc(0px + -0.75rem) calc(0px - 0.75rem) calc(0px - 0.75rem);
}
#nav_wrapper nav li label.drop-icon {
    margin: calc(3px - 0.75rem) calc(0px + -0.75rem) calc(3px - 0.75rem) calc(0px - 0.75rem);
}

#nav_wrapper nav label.drop-icon, #toggle_menu span.drop-icon {
    font-size: 1.25rem;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.4);
    color: rgba(255, 255, 255, .75);
    text-shadow: 0 0 0 transparent;
}

#nav_wrapper nav label.drop-icon {
    padding: calc(0px + 0.3rem) calc(0px + 0.75rem) calc(0px + 0.3rem) calc(3px + 0.75rem);
}
#toggle_menu span.drop-icon {
    padding: inherit;
    padding:  calc(-4px + 0.75rem) calc(3px + 0.75rem);
}

/* Breakpoints */
@media screen and (min-width: 1575px) {
    #nav_wrapper {
        position: sticky;
        top: 0;
        z-index: 999;
    }
    #nav_wrapper nav .main-menu {
        display: block;
    }
    .main-menu a {
        min-height: 3.1rem;
        align-items: center;
    }
    #nav_wrapper > form.search {
        display: block;
    }
    #nav_wrapper nav li {
        min-height: 3rem;
        float: left;
        border-width: 0 1px 0 0;
    }
    .has-sub-menu > ul > li:not(first-of-type) {
        border-top: 1px solid var(--light-3) !important;
    }
    #toggle_menu, #nav_wrapper nav label.drop-icon {
        display: none;
    }
    #nav_wrapper nav ul span.drop-icon {
        display: inline-block;
    }
    #nav_wrapper nav .has-sub-menu > ul li {
        float: none;
        border-width: 0 0 1px;
    }
    #nav_wrapper nav .has-sub-menu > ul {
        border-width: 0;
        margin: 0;
        width: 14rem;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 3000;
    }
    #nav_wrapper nav .has-sub-menu > ul, #nav_wrapper nav input[type="checkbox"]:checked + ul {
        display: none;
    }
    #nav_wrapper nav .has-sub-menu > ul .has-sub-menu > ul {
        top: 0;
        left: 100%;
    }
    #nav_wrapper nav li:hover > input[type="checkbox"] + ul {
        display: block;
    }
    #logout_link {
        min-height: 3rem;
    }
    /* Have to apply styling to the list item */
    .main-menu > li.search-form {
        display:  none !important;
    }
}

@media screen and (max-width: 1574px) {
    #nav_wrapper nav {
        width: 100%;
    }
    #nav_wrapper {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .main-menu  li:not(:last-of-type) {
        border-bottom: 1px solid var(--light-3) !important;
    }
    .main-menu  li:first-of-type {
        border-top: 1px solid var(--light-3) !important;
    }
    .main-menu li a {
        padding: 0.65rem 0.75rem !important;
    }
    .main-menu .has-sub-menu > ul > li > a {
        padding: 0.65rem 1.5rem !important;
    }
    #nav_wrapper > form.search {
        display: none !important;
    }
    .main-menu > li.search-form {
        display:  flex;
        justify-content: center;
    }
    #nav_wrapper nav li {
        min-height: 2.8rem;
    }
    #logout_link {
        min-height: 2.8rem;
    }
    li.search-form {
        padding-top: 0.33rem;
        padding-bottom: 0.33rem;
        border-bottom: none !important;
    }
}