.top_menu > li > a, .top_menu > li > p {
	display: inherit;
	height: 100%;
	width: 100%;
	padding: 14px 30px;
}
.top_menu > li {
	padding: 0;
}

.top_menu > li ul li a, .top_menu > li ul li p {
	padding: 6px 15px;
	display: block;
}
/*-----------------------------------------*/


.menu, .menu ul {
  list-style: none;
  padding: 0;
}

.menu ul {
  margin: 0;
}

.menu > li {
  position: relative;
  display: inline-block;
  outline: 0;
}

li.current > .menu {
 display: block;
}

.submenu, .submenu ul {
  position: absolute;
  left: 225px;
  top: 20%;
overflow: hidden;
/*	white-space:nowrap;*/
	min-width: 203px;
  z-index: 999;
  max-height: 0;
  /* The transition-delay prevents the menu to disappear before the transition is run backward
   * It's ~= length of the animation (.6s) + highest item transition delay (466ms) */
  -webkit-transition: max-height 1ms linear 1s;
     -moz-transition: max-height 1ms linear 1s;
  /* A .submenu should be only revealed when hovering the .menu */
  pointer-events: none;
}

.top_menu li.hover > ul, .menu li.hover > ul {
  pointer-events: auto;
  overflow: visible;
  z-index: 999;
  max-height: 2000px;
  -webkit-transition: none;
     -moz-transition: none;
}
.top_menu > li.hover > ul.slidedown {
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}
/* Progressive Anim
 * ==================================================================
 * This is a lot of redundant code but the result is worth it
 * This should be edited for menus with more or much less than 8 items
 */

 /* forward */
.menu li.hover .submenu li:nth-child(1) {
  -webkit-transition-delay: 0s;
     -moz-transition-delay: 0s;
      -ms-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.menu  li.hover .submenu li:nth-child(2) {
  -webkit-transition-delay: 66ms;
     -moz-transition-delay: 66ms;
      -ms-transition-delay: 66ms;
       -o-transition-delay: 66ms;
          transition-delay: 66ms;
}

.menu  li.hover .submenu li:nth-child(3) {
  -webkit-transition-delay: 133ms;
     -moz-transition-delay: 133ms;
      -ms-transition-delay: 133ms;
       -o-transition-delay: 133ms;
          transition-delay: 133ms;
}

.menu  li.hover .submenu li:nth-child(4) {
  -webkit-transition-delay: 200ms;
     -moz-transition-delay: 200ms;
      -ms-transition-delay: 200ms;
       -o-transition-delay: 200ms;
          transition-delay: 200ms;
}

.menu  li.hover .submenu li:nth-child(5) {
  -webkit-transition-delay: 266ms;
     -moz-transition-delay: 266ms;
      -ms-transition-delay: 266ms;
       -o-transition-delay: 266ms;
          transition-delay: 266ms;
}

.menu  li.hover .submenu li:nth-child(6) {
  -webkit-transition-delay: 333ms;
     -moz-transition-delay: 333ms;
      -ms-transition-delay: 333ms;
       -o-transition-delay: 333ms;
          transition-delay: 333ms;
}

.menu  li.hover .submenu li:nth-child(7) {
  -webkit-transition-delay: 400ms;
     -moz-transition-delay: 400ms;
      -ms-transition-delay: 400ms;
       -o-transition-delay: 400ms;
          transition-delay: 400ms;
}

.menu  li.hover .submenu li:nth-child(8) {
  -webkit-transition-delay: 466ms;
     -moz-transition-delay: 466ms;
      -ms-transition-delay: 466ms;
       -o-transition-delay: 466ms;
          transition-delay: 466ms;
}

.menu  li.hover .submenu li:nth-child(9) {
  -webkit-transition-delay: 533ms;
     -moz-transition-delay: 533ms;
      -ms-transition-delay: 533ms;
       -o-transition-delay: 533ms;
          transition-delay: 533ms;
}

.menu  li.hover .submenu li:nth-child(10) {
  -webkit-transition-delay: 600ms;
     -moz-transition-delay: 600ms;
      -ms-transition-delay: 600ms;
       -o-transition-delay: 600ms;
          transition-delay: 600ms;
}

.menu  li.hover .submenu li:nth-child(1n+11) {
  -webkit-transition-delay: 633ms;
     -moz-transition-delay: 633ms;
      -ms-transition-delay: 633ms;
       -o-transition-delay: 633ms;
          transition-delay: 633ms;
}

/* backward */
.submenu li:nth-child(1) {
  -webkit-transition-delay: 46ms;
     -moz-transition-delay: 46ms;
      -ms-transition-delay: 46ms;
       -o-transition-delay: 46ms;
          transition-delay: 46ms;
}

.submenu li:nth-child(2) {
  -webkit-transition-delay: 40ms;
     -moz-transition-delay: 40ms;
      -ms-transition-delay: 40ms;
       -o-transition-delay: 40ms;
          transition-delay: 40ms;
}

.submenu li:nth-child(3) {
  -webkit-transition-delay: 33ms;
     -moz-transition-delay: 33ms;
      -ms-transition-delay: 33ms;
       -o-transition-delay: 33ms;
          transition-delay: 33ms;
}

.submenu li:nth-child(4) {
  -webkit-transition-delay: 26ms;
     -moz-transition-delay: 26ms;
      -ms-transition-delay: 26ms;
       -o-transition-delay: 26ms;
          transition-delay: 26ms;
}

.submenu li:nth-child(5) {
  -webkit-transition-delay: 20ms;
     -moz-transition-delay: 20ms;
      -ms-transition-delay: 20ms;
       -o-transition-delay: 20ms;
          transition-delay: 20ms;
}

.submenu li:nth-child(6) {
  -webkit-transition-delay: 13ms;
     -moz-transition-delay: 13ms;
      -ms-transition-delay: 13ms;
       -o-transition-delay: 13ms;
          transition-delay: 13ms;
}

.submenu li:nth-child(7) {
  -webkit-transition-delay: 6ms;
     -moz-transition-delay: 6ms;
      -ms-transition-delay: 6ms;
       -o-transition-delay: 6ms;
          transition-delay: 6ms;
}

.submenu li:nth-child(8) {
  -webkit-transition-delay: 0s;
     -moz-transition-delay: 0s;
      -ms-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.submenu li {
  -webkit-transition-delay: 300s;
     -moz-transition-delay: 300s;
      -ms-transition-delay: 300s;
       -o-transition-delay: 300s;
          transition-delay: 300s;
}
.submenu li.hover {
  -webkit-transition-delay: 300s;
     -moz-transition-delay: 300s;
      -ms-transition-delay: 300s;
       -o-transition-delay: 300s;
          transition-delay: 300s;
}

/* Default
 ================================================================= */
.submenu li {
  opacity: 0;

  -webkit-transition: opacity .4s, -webkit-transform .6s, max-height .6s;
     -moz-transition: opacity .4s,    -moz-transform .6s, max-height .6s;
      -ms-transition: opacity .4s,     -ms-transform .6s, max-height .6s;
       -o-transition: opacity .4s,      -o-transform .6s, max-height .6s;
          transition: opacity .4s,         transform .6s, max-height .6s;


}

.menu  li.hover>ul>li, .menu  li:focus>ul>li {
  opacity: 1;

  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;


}

.top_menu > li li {
  opacity: 0;
 max-height: 0;
  -webkit-transition: opacity .1s, -webkit-transform .6s, max-height .6s;
     -moz-transition: opacity .1s,    -moz-transform .6s, max-height .6s;
      -ms-transition: opacity .1s,     -ms-transform .6s, max-height .6s;
       -o-transition: opacity .1s,      -o-transform .6s, max-height .6s;
          transition: opacity .1s,         transform .6s, max-height .6s;


}

.top_menu  li.hover>ul>li, .menu  li:focus>ul>li {
  opacity: 1;
 max-height: 2000px;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;


}

/* Helix
 ================================================================= */
.helix {
  -webkit-perspective: 400px;
     -moz-perspective: 400px;
      -ms-perspective: 400px;
       -o-perspective: 400px;
          perspective: 400px;
}

.helix li {
  -webkit-transform: rotateY(90deg);
     -moz-transform: rotateY(90deg);
      -ms-transform: rotateY(90deg);
       -o-transform: rotateY(90deg);
          transform: rotateY(90deg);
}

/* Wave
 ================================================================= */
.wave li {
  -webkit-transform-origin: 0% 0%;
     -moz-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
       -o-transform-origin: 0% 0%;
          transform-origin: 0% 0%;

  -webkit-transform: skewY(-90deg);
     -moz-transform: skewY(-90deg);
      -ms-transform: skewY(-90deg);
       -o-transform: skewY(-90deg);
          transform: skewY(-90deg);
}

/* Fan
 ================================================================= */
.fan li {
  -webkit-transform-origin: 0% 0%;
     -moz-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
       -o-transform-origin: 0% 0%;
          transform-origin: 0% 0%;

  -webkit-transform: rotate(90deg);
     -moz-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
       -o-transform: rotate(90deg);
          transform: rotate(90deg);
}

/* Papercut
 ================================================================= */
.papercut {
  -webkit-perspective: 600px;
     -moz-perspective: 600px;
      -ms-perspective: 600px;
       -o-perspective: 600px;
          perspective: 600px;

  -webkit-perspective-origin: 0% 0%;
     -moz-perspective-origin: 0% 0%;
      -ms-perspective-origin: 0% 0%;
       -o-perspective-origin: 0% 0%;
          perspective-origin: 0% 0%;
}

.papercut li {
  -webkit-transform-origin: 0% 0%;
     -moz-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
       -o-transform-origin: 0% 0%;
          transform-origin: 0% 0%;

  -webkit-transform: skewY(30deg);
     -moz-transform: skewY(30deg);
      -ms-transform: skewY(30deg);
       -o-transform: skewY(30deg);
          transform: skewY(30deg);
}

/* Fly
 ================================================================= */
.fly {
  -webkit-perspective: 400px;
     -moz-perspective: 400px;
      -ms-perspective: 400px;
       -o-perspective: 400px;
          perspective: 400px;
}

.fly li {
  -webkit-transform-origin: 50% 50% -50px;
     -moz-transform-origin: 50% 50% -50px;
      -ms-transform-origin: 50% 50% -50px;
       -o-transform-origin: 50% 50% -50px;
          transform-origin: 50% 50% -50px;

  -webkit-transform: rotateX( -180deg );
     -moz-transform: rotateX( -180deg );
      -ms-transform: rotateX( -180deg );
       -o-transform: rotateX( -180deg );
          transform: rotateX( -180deg );
}

/* Blind
 ================================================================= */
.blind li {
  max-height: 0;
}

.menu > li.hover .blind li, .menu > li:focus .blind li {
  /* This should be changed to the normal height of list-items */
  max-height: 30px;
}

/* Venitian
 ================================================================= */
.venitian li {
  -webkit-transform-origin: 50% 0;
     -moz-transform-origin: 50% 0;
      -ms-transform-origin: 50% 0;
       -o-transform-origin: 50% 0;
          transform-origin: 50% 0;

  -webkit-transform: scale(1,0);
     -moz-transform: scale(1,0);
      -ms-transform: scale(1,0);
       -o-transform: scale(1,0);
          transform: scale(1,0);
}

/* Jaws
 ================================================================= */
.jaws li {
  -webkit-transform-origin: 50% -100px;
     -moz-transform-origin: 50% -100px;
      -ms-transform-origin: 50% -100px;
       -o-transform-origin: 50% -100px;
          transform-origin: 50% -100px;
}

.jaws li:nth-child(odd) {
  -webkit-transform: rotate(90deg);
     -moz-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
       -o-transform: rotate(90deg);
          transform: rotate(90deg);
}

.jaws li:nth-child(even) {
  -webkit-transform: rotate(-90deg);
     -moz-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
       -o-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

/* Fence
 ================================================================= */
.fence {
  -webkit-perspective: 600px;
     -moz-perspective: 600px;
      -ms-perspective: 600px;
       -o-perspective: 600px;
          perspective: 600px;
}

.fence li:nth-child(odd) {
  -webkit-transform-origin: 0 50%;
     -moz-transform-origin: 0 50%;
      -ms-transform-origin: 0 50%;
       -o-transform-origin: 0 50%;
          transform-origin: 0 50%;

  -webkit-transform: rotateY(90deg);
     -moz-transform: rotateY(90deg);
      -ms-transform: rotateY(90deg);
       -o-transform: rotateY(90deg);
          transform: rotateY(90deg);
}

.fence li:nth-child(even) {
  -webkit-transform-origin: 100% 50%;
     -moz-transform-origin: 100% 50%;
      -ms-transform-origin: 100% 50%;
       -o-transform-origin: 100% 50%;
          transform-origin: 100% 50%;

  -webkit-transform: rotateY(-90deg);
     -moz-transform: rotateY(-90deg);
      -ms-transform: rotateY(-90deg);
       -o-transform: rotateY(-90deg);
          transform: rotateY(-90deg);
}

/* Zipper
 ================================================================= */
.zipper li:nth-child(odd) {
  -webkit-transform: translateX(-100%);
     -moz-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
       -o-transform: translateX(-100%);
          transform: translateX(-100%);


}

.zipper li:nth-child(even) {
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);


}

.slide li {
  -webkit-transform: translateX(-100%);
     -moz-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
       -o-transform: translateX(-100%);
          transform: translateX(-100%);

}

.slidedown {
  -webkit-transform: translateY(100%);
     -moz-transform: translateY(100%);
      -ms-transform: translateY(100%);
       -o-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition-delay: 300s;
     -moz-transition-delay: 300s;
      -ms-transition-delay: 300s;
       -o-transition-delay: 300s;
          transition-delay: 300s;

}

.showup li {
  -webkit-transition-delay: 300s;
     -moz-transition-delay: 300s;
      -ms-transition-delay: 300s;
       -o-transition-delay: 300s;
          transition-delay: 300s;
}