/*source: https://codepen.io/signalkuppe/pen/YybXNJ*/
.menu-container{
  border-bottom: 3px solid var(--primary-color);
  background: #FFF;

}

.menu-container .menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu-container .menu,
.menu-container .menu a {
  color: black;
  text-decoration: none;
}

.menu-container .menu a {
  display: block;
  white-space: nowrap;
	min-width: 180px;
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
	color: black;
	padding: 5px;
	position: relative;
}

.menu-container .menu a.active::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 40px;
	height: 7px;
	margin-left: -25px;
	background-color: var(--tertiary-color);
}

.menu-dropdown,
.menu-container .menu input[type=checkbox] {
  display: none;
}

.menu-container .menu label:hover {
  cursor: pointer;
}

.menu-dropdown{
	z-index: 999;
}

.menu-dropdown a{
	font-weight: normal;
	text-align: left;
  text-transform: none;
}

.menu-dropdown a:hover{
	color: white;
	background-color: var(--primary-color);	
}

/* narrow styles */
@media screen and (max-width: 767px) {
  .menu-container .menu > ul,
  .menu-righticon {
    display: none;
  }

  .menu-container .menu input[type=checkbox]:checked + ul {
    display: block;
    -webkit-animation: grow 0.2s ease-in-out;
            animation: grow 0.2s ease-in-out;
  }
}
/* large styles */
@media screen and (min-width: 768px) {
  .menu-container .menu > label, .menu-container .menu input[type=checkbox] {
    display: none;
  }

  .menu-container .menu > ul > li {
    display: inline-block;
  }

  .menu-hasdropdown {
    position: relative;
  }
  .menu-hasdropdown:hover > ul {
    display: block;
    -webkit-animation: grow 0.2s ease-in-out;
            animation: grow 0.2s ease-in-out;
  }

  .menu-hasdropdown > ul {
    position: absolute;
    top: 100%;
    left: 0;
    background-color: rgba(255, 255, 255, 0.85);
    border: 1px solid var(--primary-color);
  }

  .menu-hasflyout > ul {
    left: 100%;
    top: 0;
  }

  .menu-hasflyout .menu-downicon {
    display: none;
  }
}
/* look and feel only, not needed for core menu*/
@-webkit-keyframes grow {
  0% {
    display: none;
    opacity: 0;
  }
  50% {
    display: block;
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes grow {
  0% {
    display: none;
    opacity: 0;
  }
  50% {
    display: block;
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}

.menu-dropdown a {
  padding: 5px 15px;
}

/* narrow  */
@media screen and (max-width: 767px) {

  .menu-container .menu label.sub{
    display: inline;
  }

  .menu-container .menu > label {
    display: block;
    text-align: right;
    font-size: 24px;
    margin-right: 15px;
  }

  .menu-container .menu a {
    padding: 5px 10px 5px 10px;
    text-align: left;
  }

  .menu-container .menu a.active::after{
    bottom: 0;
    left: 10px;
    width: 30px;
    height: 4px;
    margin-left: 0px;
  }
  .menu-container .menu > ul i {
    float: right;
    padding: 5px 10px;
    background: var(--tertiary-color);
  }

  .menu-container .menu > ul i.menu-righticon{
    display: none;
  }

  .menu-dropdown a {
    padding: 5px 10px 5px 20px;
  }

  .menu-hasflyout > ul a {
    padding-left: 30px;
    color: #666;
  }
}
@media screen and (min-width: 768px) {
  .menu-container .menu {
    max-width: 1024px;
    margin: 0 auto;
  }
}