/* Do a stylesheet reset targeting all elements used by our menu to prevent our menus
 * to conflict with other CSS.
 * */
@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700);

#cssmenu {
	float: right;
}

#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a,
#cssmenu #menu-button {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  line-height: 1;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#cssmenu:after,
#cssmenu > ul:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

/* We don't need the button which toggles the menu on mobile devices, so we're going to hide it for now */
#cssmenu #menu-button {
  display: none;
}

/* The menu font and background color */
#cssmenu {
  font-family: "Raleway", sans-serif;
  font-size: 11pt;
  background-color: rgb(255,255,255);
}

/* We need the menu items on the same line, so we'll float them to the left */
#cssmenu > ul > li {
  float: left;
}

/* Next, we'll style the main links (padding, typography, and transitions) */
#cssmenu.align-center > ul {
  font-size: 0;
  text-align: center;
}
#cssmenu.align-center > ul > li {
  display: inline-block;
  float: none;
}
#cssmenu.align-center ul ul {
  text-align: left;
}
#cssmenu.align-right > ul > li {
  float: right;
}
#cssmenu > ul > li > a {
  padding: 17px;
  text-decoration: none;
}

/* The links change their color on hover, going from a light gray to white */
#cssmenu > ul > li:hover > a {
  color: #ff0000;
}

/* The links which have submenus need extra space to the right of the submenu
 * indicator. The list items which contain those links have a class called has-sub
 * which is added by the jQuery plugin but can also by added by the menu builder */
#cssmenu > ul > li.has-sub > a {
  padding-right: 30px;
}

/* Now let's create the submenu indicator, which will be a "+" symbol. On hover,
 * the submenu will be displayed and the indicator will become a horizontal line/a single dash.
 * We'll create the horizontal line first with an after pseudoelement. The line will be
 * 8px wide and 2px high and must have the same color as the links. */
#cssmenu > ul > li.has-sub > a:after {
  position: absolute;
  top: 22px;
  right: 11px;
  width: 8px;
  height: 2px;
  display: block;
  background: #000000;
  content: '';
}

/* The vertical line is next. We'll use a before pseudoelement this time */
#cssmenu > ul > li.has-sub > a:before {
  position: absolute;
  top: 19px;
  right: 14px;
  display: block;
  width: 2px;
  height: 8px;
  background: #000000;
  content: '';
  -webkit-transition: all .25s ease;
  -moz-transition: all .25s ease;
  -ms-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}

/* On hover, the vertical line will disappear. We'll do that by making its height 0.
 * We'll also modify its vertical position to create a nice effect. */
#cssmenu > ul > li.has-sub:hover > a:before {
  top: 23px;
  height: 0;
}

/* The main menu is finished, it's time to move on to the submenus. They should be hidden by default */
#cssmenu ul ul {
  position: absolute;
  left: -9999px;
}
#cssmenu.align-right ul ul {
  text-align: right;
}

/* Now we're going to give the submenus a nice expanding effect when they are displayed.
 * First, we give the height 0 to the list elements of the submenus. Then we use CSS
 * transitions and bring them to their normal height, which is 35px. */
#cssmenu ul ul li {
  height: 0;
  -webkit-transition: all .25s ease;
  -moz-transition: all .25s ease;
  -ms-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}

/* They will be displayed on hover */
#cssmenu li:hover > ul {
  left: auto;
}
#cssmenu.align-right li:hover > ul {
  left: auto;
  right: 0;
}
#cssmenu li:hover > ul > li {
  height: 35px;
}

/* The second level submenus will be displayed to the right of their parent. We'll use margin-left to push them to the right */
#cssmenu ul ul ul {
  margin-left: 100%;
  top: 0;
}
#cssmenu.align-right ul ul ul {
  margin-left: 0;
  margin-right: 100%;
}

/* The submenu links are not styled yet, so let's do that. Smaller font size and height than the main links,
 * the same background and text color and a semi-opaque gray bottom-border. We're using this semi-opaque
 * medium gray because this looks good and consistent regardless of the background color you choose in the menu builder */
#cssmenu ul ul li a {
  border-bottom: 1px solid rgba(150, 150, 150, 0.15);
  padding: 11px 15px;
  width: 200px;
  text-decoration: none;
  background: #ffffff;
  z-index: 999;
}

/* On hover, the submenu links will change their text color just like the main links.
 * Also, the last submenu link doesn't need the bottom-border. */
#cssmenu ul ul li:last-child > a,
#cssmenu ul ul li.last-item > a {
  border-bottom: 0;
}
#cssmenu ul ul li:hover > a,
#cssmenu ul ul li a:hover {
  color: #ff0000;
}

/* As you can see, submenu links can also have submenu indicators which they inherited from
 * the main links, but they are not positioned correctly. They also don't change their color on
 * hover. You're probably wondering why they didn't inherit the hover color change from the main
 * links. That's because in our menu builder the main links and the submenu links can have
 * different colors and hover colors, so we have to make sure the indicators match each one of
 * those colors. */
#cssmenu ul ul li.has-sub > a:after {
  position: absolute;
  top: 16px;
  right: 11px;
  width: 8px;
  height: 2px;
  display: block;
  background: #000000;
  content: '';
}
#cssmenu.align-right ul ul li.has-sub > a:after {
  right: auto;
  left: 11px;
}
#cssmenu ul ul li.has-sub > a:before {
  position: absolute;
  top: 13px;
  right: 14px;
  display: block;
  width: 2px;
  height: 8px;
  background: #000000;
  content: '';
  -webkit-transition: all .25s ease;
  -moz-transition: all .25s ease;
  -ms-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}
#cssmenu.align-right ul ul li.has-sub > a:before {
  right: auto;
  left: 14px;
}
#cssmenu ul ul > li.has-sub:hover > a:before {
  top: 17px;
  height: 0;
}
@media screen and (min-width: 1024px) {
  .menu-custom {
    display: none;
  }
}
/* Setp the stylings for small screens */
@media all and (max-width: 768px), only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px), only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px), only screen and (min-resolution: 192dpi) and (max-width: 1024px), only screen and (min-resolution: 2dppx) and (max-width: 1024px) {
  #cssmenu {
    width: 100%;
  }
  .nav-custom {
    padding: 0px;
  }
  .menu-custom {
    margin: 10px 45px -36px 0px;
    float: right;
    position: relative;
    z-index: 2;
    font-weight: 700;
  }
  .site-logo {
    margin-bottom: -50px;
    position: relative;
    z-index: 2;
    margin-top: 15px;
    margin-left: 10px;
  }
  #cssmenu ul {
    width: 100%;
    display: none;
  }
  #cssmenu.align-center > ul {
    text-align: left;
  }
  #cssmenu ul li {
    width: 100%;
    border-top: 1px solid rgba(120, 120, 120, 0.2);
  }
  #cssmenu ul ul li,
  #cssmenu li:hover > ul > li {
    height: auto;
  }
  #cssmenu ul li a,
  #cssmenu ul ul li a {
    width: 100%;
    border-bottom: 0;
  }
  #cssmenu > ul > li {
    float: none;
  }
  #cssmenu ul ul li a {
    padding-left: 25px;
  }
  #cssmenu ul ul ul li a {
    padding-left: 35px;
  }
  #cssmenu ul ul li a {
    color: #000000;
    background: none;
  }
  #cssmenu ul ul li:hover > a,
  #cssmenu ul ul li.active > a {
    color: #ff0000;
  }
  #cssmenu ul ul,
  #cssmenu ul ul ul,
  #cssmenu.align-right ul ul {
    position: relative;
    left: 0;
    width: 100%;
    margin: 0;
    text-align: left;
  }
  #cssmenu > ul > li.has-sub > a:after,
  #cssmenu > ul > li.has-sub > a:before,
  #cssmenu ul ul > li.has-sub > a:after,
  #cssmenu ul ul > li.has-sub > a:before {
    display: none;
  }
  #cssmenu #menu-button {
    display: block;
    padding: 46px 42px 0px 0px;
    color: #000000;
    cursor: pointer;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    background-color: transparent;
  }
  #cssmenu #menu-button:after {
    position: absolute;
    top: 22px;
    right: 17px;
    display: block;
    height: 4px;
    width: 20px;
    border-top: 2px solid #000000;
    border-bottom: 2px solid #000000;
    content: '';
  }
  #cssmenu #menu-button:before {
    position: absolute;
    top: 16px;
    right: 17px;
    display: block;
    height: 2px;
    width: 20px;
    background: #000000;
    content: '';
  }
  #cssmenu #menu-button.menu-opened:after {
    top: 23px;
    border: 0;
    height: 2px;
    width: 15px;
    background: #000000;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #cssmenu #menu-button.menu-opened:before {
    top: 23px;
    background: #000000;
    width: 15px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  #cssmenu .submenu-button {
    position: absolute;
    z-index: 99;
    right: 0;
    top: 0;
    display: block;
    border-left: 1px solid rgba(120, 120, 120, 0.2);
    height: 46px;
    width: 46px;
    cursor: pointer;
  }
  #cssmenu .submenu-button.submenu-opened {
    background: #ffffff;
  }
  #cssmenu ul ul .submenu-button {
    height: 34px;
    width: 34px;
  }
  #cssmenu .submenu-button:after {
    position: absolute;
    top: 22px;
    right: 19px;
    width: 8px;
    height: 2px;
    display: block;
    background: #000000;
    content: '';
  }
  #cssmenu ul ul .submenu-button:after {
    top: 15px;
    right: 13px;
  }
  #cssmenu .submenu-button.submenu-opened:after {
    background: #ffffff;
  }
  #cssmenu .submenu-button:before {
    position: absolute;
    top: 19px;
    right: 22px;
    display: block;
    width: 2px;
    height: 8px;
    background: #000000;
    content: '';
  }
  #cssmenu ul ul .submenu-button:before {
    top: 12px;
    right: 16px;
  }
  #cssmenu .submenu-button.submenu-opened:before {
    display: none;
  }
}
