.section,
body,
html {
    height: 100%;
    width: 100%
}

* {
    box-sizing: border-box;
    font-family: "Swiss721W01-Extended"
}

@font-face {
    font-family: "Swiss721W01-Extended";
    src: url("fonts/Swiss721W01-Extended.eot");
    src: url("fonts/Swiss721W01-Extended.eot?#iefix") format("embedded-opentype"), url("fonts/Swiss721W01-Extended.woff2") format("woff2"), url("fonts/Swiss721W01-Extended.woff") format("woff"), url("fonts/Swiss721W01-Extended.ttf") format("truetype"), url("fonts/Swiss721W01-Extended.svg#Swiss721W01-Extended") format("svg")
}

.font {
    font-family: "Swiss 721 W01 Extended" !important;
    font-size: 16px;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -webkit-text-stroke-width: 0.2px;
    -moz-osx-font-smoothing: grayscale
}

::selection {
    display: none
}

::-webkit-scrollbar {
    display: none
}

body,
html {
    background-color: #eee;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
    scrollbar-width: none;
    line-height: 1.2;
    overscroll-behavior-y: none
}

@media (min-width:1025px) {

    #menu-right,
    nav {
        margin-right: 25px
    }

    #projects,
    canvas,
    footer,
    nav {
        position: fixed
    }
    

    #projects ul,
    nav ul {
        margin: 0;
        padding: 0
    }

    #projects a,
    #projects a:hover,
    .nav-visibility {
        transition: all .1s ease-in-out
    }

    #projectsdevice,
    #projectsdevice a,
    #projectsdevice li,
    #projectsdevice ul,
    canvas,
    div.hidden {
        display: none
    }

    canvas {
        margin-top: -50px
    }

    footer {
        right: 25px;
        bottom: 31px;
        z-index: 1;
    }

    nav a,
    nav li {
        display: inline-block
    }

    .nav-visibility {
        opacity: 1
    }

    nav {
        top: 30px;
        width: 100%;
        height: 10%;
        z-index: 999
    }

    nav a {
        font-size: 16px;
        width: max-content
    }

    nav a:after {
        display: block;
        content: '';
        border-bottom: solid #111 2px;
        transform: scaleX(0);
        transition: transform 150ms ease-in-out;
        transform-origin: 100% 0;
        padding-bottom: 6px
    }

    nav a.active-link:after,
    nav a:hover:after {
        transform: scaleX(1);
        transform-origin: 0 100%
    }

    nav li {
        margin-left: 25px
    }

    #menu-left {
        float: left
    }

    #menu-right {
        float: right
    }

    #projects {
        left: 0;
        top: 100%;
        -webkit-transform-origin: left top 0;
        transform-origin: left top 0;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        padding: 25px 0 0 25px;
        z-index: 3;
        font-size: 7vw;
        line-height: .9;
        background-color: transparent
    }

    #projects ul {
        border: 0
    }

    #projects li {
        list-style: none;
        overflow: hidden
    }

    #projects a {
        color: #111;
        font-weight: 500
    }

    #projects a:hover {
        font-size: 400px
    }

    .is-negative body {
        color: #eee;
        background-color: #111
    }

    .is-negative #projects a,
    .is-negative nav a {
        color: #eee
    }

    .is-negative nav a.active-link:after {
        padding-bottom: 6px;
        border-bottom: solid #eee 2px
    }

    .is-positiv body {
        color: #111;
        background-color: #eee
    }

    .is-positiv nav a {
        color: #111
    }

    .is-positiv nav a.active-link:after {
        padding-bottom: 6px;
        border-bottom: solid #111 2px
    }

    .project-images {
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 75px;
        pointer-events: none
    }

    .project-images img {
        display: none;
        width: 25%
    }

    .project-images p {
        display: none;
        right: 25px;
        bottom: 15px;
        position: fixed;
        z-index: 999
    }

    a,
    a:active,
    a:hover,
    a:visited {
        text-decoration: none;
        color: #111
    }
}

@media (min-width:320px) and (max-width:1024px) {

    canvas,
    footer,
    nav {
        position: fixed
    }

    nav a,
    nav li {
        display: inline-block
    }

    footer,
    nav {
        z-index: 1
    }

    #projectsdevice ul,
    nav ul {
        margin: 0;
        padding: 0
    }

    nav {
        width: 97.25%;
        top: 0;
        margin-right: 0;
        -webkit-transform-origin: right top;
        -webkit-transform: rotate(90deg) translateX(100%)
    }

    nav a {
        font-size: 1.2em;
        width: max-content
    }

    nav a:after {
        display: block;
        content: '';
        border-bottom: solid #111 2px;
        transform: scaleX(0);
        transition: transform 150ms ease-in-out;
        transform-origin: 100% 0;
        padding-bottom: 6px
    }

    nav a.active-link:after,
    nav a:hover:after {
        transform: scaleX(1);
        transform-origin: 0 100%
    }

    nav li {
        margin-left: 25px
    }

    #projects,
    #projects a,
    #projects a:hover,
    #projects li,
    #projects ul,
    .interaction-desktop,
    .project-images,
    canvas {
        display: none
    }

    #menu-left {
        float: left;
        margin-right: 25px;
        white-space: nowrap
    }

    #menu-right {
        float: none;
        white-space: nowrap
    }

    .nav-visibility {
        opacity: 1;
        transition: all .1s ease-in-out
    }

    canvas {
        -webkit-transform: scale(.4);
        -moz-transform: scale(.4);
        -ms-transform: scale(.4);
        -o-transform: scale(.4);
        transform: scale(.4);
        margin-top: -42.5%;
        background-color: #eee
    }

    footer {
        right: 25px;
        bottom: 31px;
    }

    #projectsdevice {
        bottom: 25px;
        padding: 25px 0 0 25px;
        position: fixed;
        font-size: 7vw;
        line-height: 1.2;
        font-weight: 500;
        z-index: 3;
        overflow: hidden
    }

    #projectsdevice ul {
        border: 0
    }

    #projectsdevice li {
        list-style: none;
        overflow: hidden
    }

    #projectsdevice a {
        color: #111
    }

    a,
    a:active,
    a:hover,
    a:visited {
        text-decoration: none;
        color: #111
    }
}

@media (min-width:320px) and (max-width:480px) {

    canvas,
    footer,
    nav {
        position: fixed
    }

    nav a,
    nav li {
        display: inline-block
    }

    footer,
    nav {
        z-index: 1
    }

    #projectsdevice ul,
    nav ul {
        margin: 0;
        padding: 0
    }

    nav {
        width: 94.5%;
        top: 0;
        margin-right: 0;
        -webkit-transform-origin: right top;
        -webkit-transform: rotate(90deg) translateX(100%)
    }

    nav a {
        font-size: 1em;
        width: max-content
    }

    nav a:after {
        display: block;
        content: '';
        border-bottom: solid #111 2px;
        transform: scaleX(0);
        transition: transform 150ms ease-in-out;
        transform-origin: 100% 0;
        padding-bottom: 6px
    }

    nav a.active-link:after,
    nav a:hover:after {
        transform: scaleX(1);
        transform-origin: 0 100%
    }

    nav li {
        margin-left: 25px
    }

    #projects,
    #projects a,
    #projects a:hover,
    #projects li,
    #projects ul,
    .interaction-desktop,
    .project-images,
    canvas {
        display: none
    }

    #menu-left {
        float: left;
        margin-right: 25px;
        white-space: nowrap
    }

    #menu-right {
        float: none;
        white-space: nowrap
    }

    .nav-visibility {
        opacity: 1;
        transition: all .1s ease-in-out
    }

    canvas {
        -webkit-transform: scale(.75);
        -moz-transform: scale(.75);
        -ms-transform: scale(.75);
        -o-transform: scale(.75);
        transform: scale(.75);
        margin-top: -45%
    }

    footer {
        font-size: .5em;
        right: 15px;
        bottom: 31px;
    }

    #projectsdevice {
        bottom: 25px;
        padding: 25px 0 0 25px;
        position: fixed;
        font-size: 7vw;
        line-height: 1.2;
        font-weight: 500;
        z-index: 3;
        overflow: hidden
    }

    #projectsdevice ul {
        border: 0
    }

    #projectsdevice li {
        list-style: none;
        overflow: hidden
    }

    #projectsdevice a {
        color: #111
    }

    a,
    a:active,
    a:hover,
    a:visited {
        text-decoration: none;
        color: #111
    }
}

@media (min-width:0px) and (max-width:319px) {

    #menu-left,
    #menu-right,
    #projects,
    #projects a,
    #projects li,
    #projects ul,
    #projectsdevice,
    #projectsdevice a,
    #projectsdevice li,
    #projectsdevice ul,
    .nav-visibility,
    .project-images,
    .project-images img,
    a,
    canvas,
    div.hidden,
    footer,
    nav,
    nav a,
    nav li,
    nav ul {
        display: none;
        opacity: 0
    }

    body,
    html {
        background-color: #000
    }
}

@media screen and (min-width:320px) and (max-width:767px) and (orientation:landscape) {

    #menu-left,
    #menu-right,
    #projects,
    #projects a,
    #projects li,
    #projects ul,
    #projectsdevice,
    #projectsdevice a,
    #projectsdevice li,
    #projectsdevice ul,
    .nav-visibility,
    .project-images,
    .project-images img,
    a,
    canvas,
    div.hidden,
    footer,
    nav,
    nav a,
    nav li,
    nav ul {
        display: none;
        opacity: 0
    }

    body,
    html {
        background-color: #000
    }
}

@media screen and (-ms-high-contrast:active),
(-ms-high-contrast:none) {

    body,
    html {
        display: none
    }
}