.h-menu {
  clear: both;
  background: #f7f7f7;
  position: static;
}

.h-menu.hamburger.slidedown > ul {
  display: none;
}

#nav-back {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background: rgba(255, 255, 255, 0.8);
}

.h-menu.hamburger.slideright > ul,
.h-menu.hamburger.slideleft > ul {
  position: absolute;
  width: 100%;
  max-height: 100%;
  background: #f4f3f1;
  z-index: 99;
  overflow-y: auto;
  margin-top: 81px;
}

.h-menu.hamburger.slideleft.pull > div#menu-container {
  position: absolute;
  width: 100%;
  max-height: 100%;
  background: #f4f3f1;
  z-index: 99;
  overflow-y: auto;
  padding: 115px 0 20px 0;
}

.h-menu.hamburger.slideleft.pull > ul,
.h-menu.hamburger.slideright.pull > ul,
.h-menu.hamburger.slideleft.pull > div#menu-container {
  position: fixed;
  min-height: 100%;
}

.h-menu.hamburger.slideright > ul,
.h-menu.hamburger.slideleft > ul,
html body > .layout-container > *:not(header),
html body > .layout-container > header > div > *:not(.hamburger) {
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease;
}

html body > .layout-container > *:not(header),
html body > .layout-container > header > div > *:not(.hamburger) {
  position: relative;
  left: 0;
  right: 0;
}
html.pulledleft body > .layout-container > header > div > #block-isiteopen-branding {
  position: relative;
  left: 0;
}

html.pulledright body > .layout-container > *:not(header),
html.pulledright body > .layout-container > header > div > *:not(.hamburger) {
  right: 100%;
  left: -100%;
}

html.pulledleft body > .layout-container > *:not(header),
html.pulledleft body > .layout-container > header > div > *:not(.hamburger) {
  right: -100%;
  left: 100%;
}

html.pulledright,
html.pulledleft,
html.pulledleftpulledleft,
html.pulledright > body,
html.pulled > body,
html.pulledleft > body {
  overflow: hidden;
}

.h-menu.hamburger.slideright > ul {
  right: -100%;
}

.h-menu.hamburger.slideleft.pull > ul,
.h-menu.hamburger.slideleft.pull > div#menu-container {
  left: -100%;
}
.h-menu.hamburger.pull > ul {
  top: 0;
  padding-top: 45px;
}

.h-menu.hamburger.slideright > input:checked + label + ul {
  right: 0;
}

.h-menu.hamburger.slideleft > input:checked + label + div#menu-container {
  left: 0;
}

.h-menu.hamburger > input:checked + label + ul {
  margin-left: 0;
}

.h-menu ul ul,
.h-menu.hamburger.dropdown > ul {
  display: none;
  overflow: hidden;
}

.h-menu.hamburger > input:checked + label + ul,
.h-menu ul input[type=checkbox]:checked + label + ul,
.h-menu ul input[type=checkbox]:checked + label:nth-of-type(n) + ul {
  display: block;
}

.h-menu ul ul {
  padding-left: 7px;
  background-color: #ececec;
}

.h-menu ul > li a, .mainnavigation ul li:first-child a {
  padding: 12px 16px 13px 16px;
  margin-right: 45px;
  margin-left: 0;
}

.h-menu ul > li > label {
  width: 45px;
  height: 45px;
}

.h-menu ul > li > label:before,
.h-menu ul > li > label:after {
  background: rgb(150, 150, 150);
  content: "";
  position: absolute;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.h-menu ul > li > label:before {
  width: 4px;
  height: 16px;
  left: 20px;
  top: 13px;
}

.h-menu ul > li > label:after {
  width: 16px;
  height: 4px;
  top: 19px;
  left: 14px;
}

.h-menu ul input[type=checkbox]:checked + label:before {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.h-menu ul input[type=checkbox]:checked + label:after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
/**
 * Toggle Switch Globals
 *
 * All switches should take on the class `hamburger` as well as their
 * variant that will give them unique properties. This class is an overview
 * class that acts as a reset for all versions of the icon.
 */
.hamburger > input {
  display: none;
}

.hamburger > .hamburger {
  display: block;
  position: absolute;
  overflow: hidden;
  margin: 0;
  top: 44px;
  right: 10px;
  padding: 0;
  width: 45px;
  height: 45px;
  font-size: 0;
  text-indent: -9999px;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-shadow: none;
  border-radius: 0;
  border: none;
  cursor: pointer;
  -webkit-transition: background .3s, -webkit-transform .3s;
  transition: background .3s;
  float: right;
  z-index: 1001;
}

.hamburger > .hamburger:focus {
  outline: none;
}

.hamburger > .hamburger > span {
  display: block;
  position: absolute;
  top: 20px;
  left: 8px;
  right: 8px;
  height: 4px;
  background: rgb(150, 150, 150);
}

.hamburger .hamburger > span::before,
.hamburger .hamburger > span::after {
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: rgb(150, 150, 150);
  content: "";
}

.hamburger .hamburger > span::before {
  top: -10px;
}

.hamburger .hamburger > span::after {
  bottom: -10px;
}

/* Toggle Switch Style 1 */
/*
.hamburger > .hamburger {
  background-color: #28aadc;
}

.hamburger > input + label.hamburger span {
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
.hamburger > input + label.hamburger span,
.hamburger > input + label.hamburger span::before,
.hamburger > input + label.hamburger span::after {
  background-color: #fff;
}


.hamburger > input:checked + label.hamburger {
  background-color: #166888;
}

.hamburger > input:checked + label.hamburger span {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
*/

/* Toggle Switch Style 2 */

.hamburger > .hamburger {
  background-color: #466d93;
}

.hamburger > input + label.hamburger span {
  -webkit-transition: background 0s .3s;
  transition: background 0s .3s;
}

.hamburger > input + label.hamburger span,
.hamburger > input + label.hamburger span::before,
.hamburger > input + label.hamburger span::after {
  background-color: #fff;
}

.hamburger > input + label.hamburger span::before,
.hamburger > input + label.hamburger span::after {
  -webkit-transition-duration: .3s, .3s;
  transition-duration: .3s, .3s;
  -webkit-transition-delay: .3s, 0s;
  transition-delay: .3s, 0s;
}

.hamburger > input + label.hamburger span::before {
  -webkit-transition-property: top, -webkit-transform;
  transition-property: top, transform;
}

.hamburger > input + label.hamburger span::after {
  -webkit-transition-property: bottom, -webkit-transform;
  transition-property: bottom, transform;
}

.hamburger > input:checked + label.hamburger {
  background-color: #466d93;
}

.hamburger > input:checked + label.hamburger span {
  background: none;
}

.hamburger > input:checked + label.hamburger span::before {
  top: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.hamburger > input:checked + label.hamburger span::after {
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.hamburger > input:checked + label.hamburger span::before,
.hamburger > input:checked + label.hamburger span::after {
  -webkit-transition-delay: 0s, .3s;
  transition-delay: 0s, .3s;
}


/* Toggle Switch Style 3 */
/*
.hamburger > .hamburger {
  background-color: #32dc64;
}

.hamburger > input + label.hamburger span {
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}

.hamburger > input + label.hamburger span,
.hamburger > input + label.hamburger span::before,
.hamburger > input + label.hamburger span::after {
  background-color: #fff;
}

.hamburger > input + label.hamburger span::before {
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right;
  -webkit-transition: -webkit-transform 0.3s, width 0.3s, top 0.3s;
  transition: transform 0.3s, width 0.3s, top 0.3s;
}

.hamburger > input + label.hamburger span::after {
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right;
  -webkit-transition: -webkit-transform 0.3s, width 0.3s, bottom 0.3s;
  transition: transform 0.3s, width 0.3s, bottom 0.3s;
}

.hamburger > input:checked + label.hamburger {
  background-color: #18903c;
}

.hamburger > input:checked + label.hamburger span {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.hamburger > input:checked + label.hamburger span::before,
.hamburger > input:checked + label.hamburger span::after {
  width: 50%;
}

.hamburger > input:checked + label.hamburger span::before {
  top: 0;
  -webkit-transform: translateX(38px) translateY(4px) rotate(45deg);
  -ms-transform: translateX(38px) translateY(4px) rotate(45deg);
  transform: translateX(16px) translateY(2px) rotate(45deg);
}

.hamburger > input:checked + label.hamburger span::after {
  bottom: 0;
  -webkit-transform: translateX(38px) translateY(-4px) rotate(-45deg);
  -ms-transform: translateX(38px) translateY(-4px) rotate(-45deg);
  transform: translateX(16px) translateY(-1px) rotate(-45deg);
}
*/

/* Toggle Switch Style 4 */
/*
.hamburger > .hamburger {
  background-color: #ff9650;
}

.hamburger > input + label.hamburger span {
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}

.hamburger > input + label.hamburger span,
.hamburger > input + label.hamburger span::before,
.hamburger > input + label.hamburger span::after {
  background-color: #fff;
}
.hamburger > input + label.hamburger span::before {
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
  -webkit-transition: -webkit-transform 0.3s, width 0.3s, top 0.3s;
  transition: transform 0.3s, width 0.3s, top 0.3s;
}

.hamburger > input + label.hamburger span::after {
  -webkit-transform-origin: bottom left;
  -ms-transform-origin: bottom left;
  transform-origin: bottom left;
  -webkit-transition: -webkit-transform 0.3s, width 0.3s, bottom 0.3s;
  transition: transform 0.3s, width 0.3s, bottom 0.3s;
}

.hamburger > input:checked + label.hamburger {
  background-color: #e95d00;
}

.hamburger > input:checked + label.hamburger span {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.hamburger > input:checked + label.hamburger span::before,
.hamburger > input:checked + label.hamburger span::after {
  width: 50%;
}

.hamburger > input:checked + label.hamburger span::before {
  top: 0;
  -webkit-transform: translateX(-8px) translateY(4px) rotate(-45deg);
  -ms-transform: translateX(-8px) translateY(4px) rotate(-45deg);
  transform: translateX(-3px) translateY(1px) rotate(-45deg);
}

.hamburger > input:checked + label.hamburger span::after {
  bottom: 0;
  -webkit-transform: translateX(-8px) translateY(-4px) rotate(45deg);
  -ms-transform: translateX(-8px) translateY(-4px) rotate(45deg);
  transform: translateX(-3px) translateY(-2px) rotate(45deg);
}
*/
