.navbar {
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
}
.navbar .navbar-brand img {
  max-width: 100px;
}
.navbar .navbar-nav .nav-link {
  color: #000;
}
@media screen and (min-width: 1024px) {
  .navbar {
    letter-spacing: 0.1em;
  }
  .navbar .navbar-nav .nav-link {
    padding: 0.5em 1em;
  }
  .search-and-icons {
    width: 50%;
  }
  .search-and-icons form {
    flex: 1;
  }
}
@media screen and (min-width: 768px) {
  .navbar .navbar-brand img {
    max-width: 7em;
  }
  .navbar .navbar-collapse {
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-end;
  }
  .search-and-icons {
    display: flex;
    align-items: center;
  }
}
.search-and-icons form input {
  border-radius: 0;
  height: 2em;
  background: #fff
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='grey' class='bi bi-search' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E")
    no-repeat 95%;
}
.search-and-icons form input:focus {
  background: #fff;
  box-shadow: none;
}
.search-and-icons .user-icons div {
  padding-right: 1em;
}
.contact-info p,
.contact-info a {
  font-size: 0.9em;
  padding-right: 1em;
  color: grey;
}
.contact-info a {
  padding-right: 0;
}


        
.nav-menu>* {
    line-height: 0
}

.nav-menu ul {
    clear: both;
    line-height: 1;
    margin: 0;
    width: 100%
}

.nav-menu .menu-item {
    list-style: none;
    position: relative
}

.nav-menu .menu-item a {
    border: none;
    color: #111;
    display: block;
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    padding: 15px 24px 12px;
    position: relative;
    text-decoration: none
}

.nav-menu .menu-item.submenu-active>a {
    background: #edf7ff
}

.nav-menu .menu-item.view-all>a>svg {
    fill: #757575;
    vertical-align: middle;
    margin-right: 6px
}

.nav-menu .menu-item-has-children>a {
    font-weight: 600
}

.nav-menu .menu>.menu-item>a {
    font-weight: 700
}

.nav-menu .submenu-expand {
    background: 0 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    outline: none;
    cursor: pointer;
    position: absolute;
    line-height: 0;
    top: 50%;
    transform: translateY(-50%);
    right: 7px
}

.nav-menu .submenu-expand svg {
    fill: #0073e1
}

@media (min-width: 1001px) {
    .nav-menu {
        width:100%
    }

    .nav-menu .submenu-expand svg {
        fill: #000
    }

    .nav-menu .menu-item {
        display: block
    }

    .nav-menu .menu-item.search {
        margin-left: auto
    }

    .nav-menu .menu-item:hover>a {
        color: #0073e1;
        text-decoration: underline
    }

    .nav-menu .menu-item:hover>.sub-menu {
        left: auto;
        opacity: 1
    }

    .nav-menu .menu-item.mega {
        position: static
    }

    

    .nav-menu .menu-item.mega>.submenu-expand {
        display: none
    }

    .nav-menu .menu-item.mega:hover>.sub-menu {
        left: 0
    }
}



@media (min-width: 1001px) {
    .nav-menu .menu {
        display:flex
    }

    .nav-menu .menu>.menu-item>a {
        padding: 15px 8px
    }

    .nav-menu .menu>.menu-item.menu-item-has-children>a {
        padding-right: 22px
    }

    .nav-menu .menu>.menu-item:hover>a {
        background-color: #30ffda;
        color: #111;
        text-decoration: none
    }

    .nav-menu .sub-menu {
        background: #fff;
        box-shadow: 0 8px 16px -8px rgba(31,146,255,.5);
        padding-top: 4px;
        left: -9999px;
        opacity: 0;
        position: absolute;
        width: 320px;
        z-index: 99
    }

    .nav-menu .sub-menu:before {
        background-image: linear-gradient(45deg,#30ffda 0%,#1f92ff 100%);
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 4px
    }

    .nav-menu .sub-menu .menu-item {
        float: none
    }

    .nav-menu .sub-menu .sub-menu {
        margin: -48px 0 0 215px
    }

    .nav-menu .mega>.sub-menu {
        width: 100vw;
        max-width: 1152px;
        display: flex;
        flex-wrap: nowrap
    }

    .nav-menu .mega>.sub-menu>li {
        flex-basis: 0;
        flex-grow: 1
    }

    .nav-menu .mega>.sub-menu>li>a:before {
        background: #e0e0e0;
        content: '';
        display: block;
        width: calc(100% - 48px);
        height: 1px;
        bottom: 0;
        left: 24px;
        position: absolute
    }

    .nav-menu .mega>.sub-menu>li:hover>a {
        color: #111;
        text-decoration: none
    }

    .nav-menu .mega>.sub-menu>li>.sub-menu {
        box-shadow: none;
        display: block;
        position: relative;
        opacity: 1;
        margin: 0;
        left: auto;
        width: 100%
    }

    .nav-menu .mega>.sub-menu>li>.sub-menu:before {
        display: none
    }
}

@media (max-width: 1000px) {
    .nav-menu {
        display:none
    }

    .nav-menu.active {
        display: block;
        box-shadow: 0 8px 16px -8px rgba(31,146,255,.5)
    }

    .nav-menu .menu-item.search {
        display: none
    }

    .nav-menu .submenu-expand {
        top: 0;
        right: 0;
        transform: none;
        width: 48px;
        height: 48px
    }

    .nav-menu .submenu-expand.expanded {
        transform: rotate(180deg)
    }

    .nav-menu .submenu-expand.expanded+.sub-menu {
        display: block
    }

    .nav-menu .sub-menu {
        display: none
    }

    .nav-menu .mega>.sub-menu>li>a:before {
        background: #e0e0e0;
        content: '';
        display: block;
        width: calc(100% - 48px);
        height: 1px;
        bottom: 0;
        left: 24px;
        position: absolute
    }

    .nav-menu .mega>.sub-menu>li>.sub-menu {
        display: block
    }

    .nav-menu .mega>.sub-menu>li>.submenu-expand {
        display: none
    }
}

  .menu-section {
            margin-bottom: 30px;
}

.menu-section h3 {
    margin-bottom: 15px;
    font-size: 1.25rem;
    font-weight: bold;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.checkbox-group label {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-right: 20px;
}

.checkbox-group input[type="checkbox"] {
    width: 20px;
    height: 20px;
}

#submit_permissions {
    margin-top: 20px;
}