#nav-menu {
    background: #41372e;
    box-shadow: 0px 4px 4px rgba(0,0,0,0.25);
    float: left;
    width: 100%;
    position: fixed;
    top: 0;
    z-index: 15;
    height: 40px;
}

#body-wrapper {
    margin-top: 40px;
}

#body-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    filter: alpha(opacity=75);
    -moz-opacity: 0.75;
    -khtml-opacity: 0.75;
    opacity: 0.75;
    z-index: 20;
}

#body-overlay span {
    display: block;
    width: 30px;
    position: relative;
    top: 50%;
    margin: auto;
    color: #fff;
    font-size: 24px;
    text-align: center;
    padding: 60px;
}

.popup-content {
    display: block;
    position: fixed;
    box-sizing: border-box;
    left: 15%;
    top: 10%;
    width: 70%;
    height: 80%;
    border: 6px solid #f1ede2;
    border-left: none;
    border-width-right: 1px;
    padding: 36px;
    overflow: auto;
    z-index: 10;
    box-shadow: 3px 4px 5px rgba(0,0,0,0.25);
}

.popup-content iframe {
    width: 100%;
    margin-bottom: 24px;
}

.popup-nav {
    position: fixed;
    right: 10%;
    top: 15%;
    margin-right: -48px;
    z-index: 9;
}

.popup-nav .kill, .popup-nav .step {
    /* height: 48px; */
    /* width: 48px; */
    /* background-color: transparent; */
    /* color: #d0c7c2; */
    /* text-align: center; */
    /* font-weight: bold; */
    height: 0; width: 48px;
    overflow: hidden;
    padding: 48px 0 0 0;
    text-decoration: none;
    font-size: 48px;
    font-weight: bold;
    cursor: pointer; 
}

.popup-nav .kill {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 -2 36 36' version='1.1'><g stroke-width='1' stroke='%23d0c7c2' fill='%23d0c7c2'><polyline points='9.657 25.658 8.343 24.342 24.343 8.342 25.657 9.658 9.657 25.658'></polyline><polyline points='24.343 25.658 8.343 9.658 9.657 8.342 25.657 24.342 24.343 25.658'></polyline></g></svg>") no-repeat;
}

.popup-nav .prev {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 -2 36 36' version='1.1'><g stroke-width='1' stroke='%23d0c7c2' fill='%23d0c7c2'><polygon points='9.8 17 25.39 26 25.39 8'></polygon></g></svg>") no-repeat;
}

.popup-nav .next {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 -2 36 36' version='1.1'><g stroke-width='1' stroke='%23d0c7c2' fill='%23d0c7c2'><polygon points='9.8 8 9.8 26 25.39 17'></polygon></g></svg>") no-repeat;
}

.popup-nav .kill + .step {
    margin-top: 6px;
}

.popup-nav .step a {
    color: inherit;
    text-decoration: none;
}

.popup-nav .kill:hover, .popup-nav .step:hover {
    -webkit-filter: brightness(2);
    filter: brightness(2);
    color: #fff;
    cursor: pointer;
}

@media screen and (orientation:portrait) {
.popup-content {
    top: 15%;
    left: 10%;
    width: 80%;
    height: 80%;
}
.popup-nav {
    position: fixed;
    right: 10%;
    top: 15%;
}
}

@media screen { @media (max-width:480px), (max-height:480px) {
.popup-content {
    top: 0;
    border: none !important;
    border-top: 40px solid !important;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 40px 90px 60px 30px;
}
.popup-nav {
    top: 100px;
    right: 24px;
    margin-right: 0;
}
.popup-nav .kill, .popup-nav .step {
    color: #444;
}
.popup-nav .kill:hover, .popup-nav .step:hover {
    color: #bbb;
}
} }

@media screen and (max-width:480px) and (orientation:portrait) {
.popup-nav {
    top: unset;
    bottom: 0;
    right: 0;
}
.popup-nav .kill, .popup-nav .step {
    display: inline-block;
    position: relative;
}
.popup-nav .kill {
    float: right;
    bottom: 0;
}
.popup-nav .kill:last-child, .popup-nav .step {
    bottom: 4px;
}
}

#nav-menu div, #nav-menu ul, #nav-menu li {
    display: inline-block;
    margin: 0;
    padding: 0;
}

#nav-menu ul.subsections {
    display: none;
    position: absolute;
}

#nav-menu ul.subsections li {
    display: block;
}

#nav-menu ul.subsections.open, #nav-menu ul.subsections.open li {
    width: 10em;
    display: block;
    background: #41372e;
    z-index: 8;
}

#nav-menu ul.subsections.open {
    padding: 12px 0;
    box-shadow: 3px 4px 5px rgba(0,0,0,0.25);
}

@media only screen and (min-width: 681px) and (max-width: 800px) {
#nav-menu .link.special {
    position: absolute;
    padding-left: calc(100% - 680px);
}
}

@media only screen and (min-width: 801px) {
#nav-menu .link.special {
    position: absolute;
    padding-left: 120px;
}
}

@media only screen and (max-width: 680px) and (orientation: portrait) {
#nav-menu .link.special {
    border-top: 1px solid #d0c7c2;
    padding-top: 16px;
    margin-top: 16px;
}
}

@media only screen and (max-width: 680px) {
#nav-menu ul.sections {
    overflow: hidden;
    width: 1em;
}
#nav-menu ul.sections:before {
    content: url('../nav/menu.png');
    transform: scale(.4);
    -webkit-transform: scale(.4);
    -ms-transform: scale(.4);
    color: #fff;
    position: absolute;
    top: -14px;
    cursor: pointer;
}
#nav-menu ul.sections:hover:before {
    content: url('../nav/menu-active.png');
}
#nav-menu ul.sections.open:before {
    left: .5em;
}
#nav-menu ul.sections.open, #nav-menu ul.sections.open li {
    width: 10em;
    display: block;
    background: #41372e;
    z-index: 8;
}
#nav-menu ul.sections.open {
    position: absolute;
    top: 0;
    left: 100px;
    padding: 36px 0 12px 0;
    box-shadow: 3px 4px 5px rgba(0,0,0,0.25);
}
#nav-menu ul.sections.open ul.subsections {
    display: block;
    position: static;
    margin: 12px 0;
}
}

@media screen and (max-height:480px) and (orientation:landscape) {
#nav-menu ul.sections.open {
    width: 20em;
}
#nav-menu ul.sections.open > li {
    display: inline-block;
    float: right;
    margin-bottom: 12px;
}
#nav-menu ul.sections.open > li.breaker {
    float: left;
}
}

#nav-menu .left {
    float: left;
}

#nav-menu .right {
    float: right;
}

#nav-menu .logo {
    padding-top: 5px;
    padding-bottom: 5px;
    cursor: pointer;
}

#nav-menu .left.logo {
    width: 60px;
    padding-left: .5em;
    padding-right: 2.5em;
}

#nav-menu .right.logo {
    padding-left: 2.5em;
    padding-right: .5em;
}

#nav-menu .link, #nav-menu .sublink {
    font-family: 'Arsenal', sans-serif;
    font-size: 1em;
    font-weight: bold;
    text-decoration: none;
    color: #d0c7c2;
    display: block;
    padding: .25em 1em;
    position: relative;
    bottom: -3px;
}

#nav-menu .sublink {
    font-size: smaller;
    margin-left: 1.5em;
}

#nav-menu .link:hover, #nav-menu .sublink:hover {
    color: #fff;
    cursor: pointer;
}

#nav-menu .search {
    /* height: 16px; */
    position: relative;
    top: 8px;
}

#nav-menu .lang {
    /* height: 16px; */
    position: relative;
    top: 8px;
}

#footer {
    width: 100%;
    background: #41372e;
    min-height: 48px;
    color: #d0c7c2;
    box-shadow: 0px -4px 4px rgba(0,0,0,0.25);
}

#footer .copyright {
    float: right;
    font-family: 'Arsenal', sans-serif;
    font-size: .65em;
    margin: 8px 1em;
}

@media only screen and (max-width: 340px) {
#footer .copyright {
    font-size: .6em;
}
}

#footer .devel {
    position: absolute;
    margin: 15px;
    font-family: monospace;
    font-size: smaller;
    color: salmon;
    cursor: pointer;
}

.console {
    position: fixed;
    left: 10%;
    top: 10%;
    width: 80%;
    height: 80%;
    overflow: auto;
    background-color: #000;
    filter: alpha(opacity=85);
    -moz-opacity: 0.85;
    -khtml-opacity: 0.85;
    opacity: 0.85;
    z-index: 25;
    border: 3px solid salmon;
    font-family: monospace;
}

.console .input, .console .output {
    width: 100%;
    /* height: 300px; */
    padding: 12px;
}

.console .ctr {
    display: inline-block;
    width: 15%;
    vertical-align: top;
    padding: 6px .75em;
    text-align: right;
    font-style: oblique;
}

.console .text {
    display: inline-block;
    width: 75%;
    background: transparent !important;
    padding: 6px .75em;
    color: #fff;
    border: none;
}

.console .input button {
    display: block;
    width: 6%;
    position: relative;
    left: 10%;
    bottom: 24px;
    border: 2px solid #adf;
    border-radius: 4px;
    background: #000;
    color: #adf;
    cursor: pointer;
}

.console .input .ctr, .console .input .text {
    color: #adf;
}

.console .output .ctr, .console .output .text {
    color: #afd;
}

.console .output .exception {
    background: red;
    color: white;
    font-weight: bold;
    padding: 2px;
    border-radius: 4px;
}

.console .input {
    border-bottom: 1px dotted salmon;
}

.console .output {
    border-bottom: 1px solid salmon;
}

.console .input:last-child, .console .output:last-child {
    border-bottom: none;
}
