/* =CSS Menu

-------------------------------------------------------------- */

#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;

    z-index: 999;

}



#cssmenu:after,

#cssmenu > ul:after {

    content: ".";

    display: block;

    clear: both;

    visibility: hidden;

    line-height: 0;

    height: 0;

}



#cssmenu #menu-button {

    display: none;

}



#cssmenu {

    width: auto;

    line-height: 1;

    background: transparent;

}



#cssmenu > ul  {

    display: flex;

    justify-content: center;



}



#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.align-right ul ul {

    text-align: right;

}



#cssmenu > ul > li > a {

    padding: 20px 10px;

    font-size: 14px;

    text-decoration: none;

    color: rgba(255,255,255,.5);

    -webkit-transition: color .2s ease;

    -moz-transition: color .2s ease;

    -ms-transition: color .2s ease;

    -o-transition: color .2s ease;

    transition: color .2s ease;

}



#cssmenu > ul > li:hover > a,

#cssmenu > ul > li.current-menu-item > a,

#cssmenu > ul > li.current-menu-ancestor > a {

    color: #fff;

}



#cssmenu > ul > li.menu-item-has-children > a {

    padding-right: 25px;

}



#cssmenu > ul > li.menu-item-has-children > a::after {

    position: absolute;

    top: 26px;

    right: 10px;

    width: 4px;

    height: 4px;

    border-bottom: 1px solid rgba(255,255,255,.5);

    border-right: 1px solid rgba(255,255,255,.5);

    content: "";

    -webkit-transform: rotate(45deg);

    -moz-transform: rotate(45deg);

    -ms-transform: rotate(45deg);

    -o-transform: rotate(45deg);

    transform: rotate(45deg);

    -webkit-transition: border-color 0.2s ease;

    -moz-transition: border-color 0.2s ease;

    -ms-transition: border-color 0.2s ease;

    -o-transition: border-color 0.2s ease;

    transition: border-color 0.2s ease;

}



#cssmenu > ul > li.menu-item-has-children:hover > a::after {

    border-color: #fff;

}



#cssmenu ul ul {

    position: absolute;

    left: -9999px;

}



#cssmenu li:hover > ul,
#cssmenu li:focus > ul {

    left: auto;

}



#cssmenu.align-right li:hover > ul {

    right: 0;

}



#cssmenu ul ul ul {

    margin-left: 100%;

    top: 0;

}



#cssmenu.align-right ul ul ul {

    margin-left: 0;

    margin-right: 100%;

}



#cssmenu ul ul li {

    height: 0;

    -webkit-transition: height .2s ease;

    -moz-transition: height .2s ease;

    -ms-transition: height .2s ease;

    -o-transition: height .2s ease;

    transition: height .2s ease;

}



#cssmenu ul li:hover > ul > li {

    height: 32px;

}



#cssmenu ul ul li a {

    padding: 10px 20px;

    width: 245px;

    font-size: 14px;

    background: #333333;

    text-decoration: none;

    color: #dddddd;

    -webkit-transition: color .2s ease;

    -moz-transition: color .2s ease;

    -ms-transition: color .2s ease;

    -o-transition: color .2s ease;

    transition: color .2s ease;

}



#cssmenu ul ul li:hover > a,

#cssmenu ul ul li a:hover {

    color: #ffffff;

}



#cssmenu ul ul li.menu-item-has-children > a::after {

    position: absolute;

    top: 13px;

    right: 10px;

    width: 4px;

    height: 4px;

    border-bottom: 1px solid #dddddd;

    border-right: 1px solid #dddddd;

    content: "";

    -webkit-transform: rotate(-45deg);

    -moz-transform: rotate(-45deg);

    -ms-transform: rotate(-45deg);

    -o-transform: rotate(-45deg);

    transform: rotate(-45deg);

    -webkit-transition: border-color 0.2s ease;

    -moz-transition: border-color 0.2s ease;

    -ms-transition: border-color 0.2s ease;

    -o-transition: border-color 0.2s ease;

    transition: border-color 0.2s ease;

}



#cssmenu.align-right ul ul li.menu-item-has-children > a::after {

    right: auto;

    left: 10px;

    border-bottom: 0;

    border-right: 0;

    border-top: 1px solid #dddddd;

    border-left: 1px solid #dddddd;

}



#cssmenu ul ul li.menu-item-has-children:hover > a::after {

    border-color: #ffffff;

}



/* =Media Queries for CSS Menu 

-------------------------------------------------------------- */

@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,

    #cssmenu ul,

    #cssmenu ul li,

    #cssmenu ul li a,

    #cssmenu #menu-button {

        z-index: unset;

    }



    #cssmenu {

        width: 100%;

    }

    #cssmenu ul {

        width: 100%;

        display: none;

    }

    #cssmenu.align-center > ul,

    #cssmenu.align-right ul ul {

        text-align: left;

    }

    #cssmenu ul li,

    #cssmenu ul ul li,

    #cssmenu ul li:hover > ul > li {

        width: 100%;

        height: auto;

        border-top: 1px solid rgba(120, 120, 120, 0.15);

    }

    #cssmenu ul li a,

    #cssmenu ul ul li a {

        width: 100%;

    }

    #cssmenu > ul > li,

    #cssmenu.align-center > ul > li,

    #cssmenu.align-right > ul > li {

        float: none;

        display: block;

    }

    #cssmenu ul ul li a {

        padding: 20px 20px 20px 30px;

        font-size: 14px;

        color: #444;

        background: none;

    }

    #cssmenu ul ul li:hover > a,

    #cssmenu ul ul li a:hover {

        color: #000000;

    }

    #cssmenu ul ul ul li a {

        padding-left: 40px;

    }

    #cssmenu ul ul,

    #cssmenu ul ul ul {

        position: relative;

        left: 0;

        right: auto;

        width: 100%;

        margin: 0;

    }

    #cssmenu > ul > li.menu-item-has-children > a::after,

    #cssmenu ul ul li.menu-item-has-children > a::after {

        display: none;

    }

    #menu-line {

        display: none;

    }

    #cssmenu #menu-button {

        display: block;

        padding: 20px 0;

        color: #000000;

        cursor: pointer;

        font-size: 12px;

        text-transform: uppercase;

    }

    #cssmenu #menu-button::after {

        content: '';

        position: absolute;

        top: 20px;

        right: 20px;

        display: block;

        width: 15px;

        height: 2px;

        background: #000000;

    }

    #cssmenu #menu-button::before {

        content: '';

        position: absolute;

        top: 25px;

        right: 20px;

        display: block;

        width: 15px;

        height: 7px;

        border-top: 2px solid #000000;

        border-bottom: 2px solid #000000;

    }

    #cssmenu .submenu-button {

        position: absolute;

        z-index: 10;

        right: 0;

        top: 0;

        display: block;

        border-left: 1px solid rgba(120, 120, 120, 0.15);

        height: 52px;

        width: 52px;

        cursor: pointer;

    }

    #cssmenu .submenu-button::after {

        content: '';

        position: absolute;

        top: 21px;

        left: 26px;

        display: block;

        width: 1px;

        height: 11px;

        background: #000000;

        z-index: 99;

    }

    #cssmenu .submenu-button::before {

        content: '';

        position: absolute;

        left: 21px;

        top: 26px;

        display: block;

        width: 11px;

        height: 1px;

        background: #000000;

        z-index: 99;

    }

    #cssmenu .submenu-button.submenu-opened:after {

        display: none;

    }

}