* {
    margin: 0;
    font-family: 'Avenir';
    font-weight: 1;
}

html {
    overflow-x: hidden;
    scroll-behavior: smooth;

}

a {
    text-decoration: none;
}

/*PREV*/

#prevHead {
    display: inline-block;
    position: fixed;
    height: min-content;
    width: max-content;
    bottom: 57.5%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 5vw;
    text-align: center;
    transition: bottom 0.5s, transform 0.5s, font-size 0.5s, left 0.5s;
    background-color: white;
    z-index: 12;
}

#prevMain {
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
    font-size: 2vw;
    width: 65vw;
    text-align: center;
}

#scrollDown {
    position: absolute;
    top: 80vh;
    left: 50%;
    transform: translateX(-50%);
    height: 10vh;
    animation: scrollDown 1s ease-out 0s infinite alternate;
    transition: opacity 0.3s;
}

/*NAV*/

#spacer{
    height: 100vh;
}

#nav {
    pointer-events: none;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100vw;
    z-index: 10;
}

#topNav {
    position: absolute;
    top: 0;
    height: 15vh;
    width: 100vw;
    background-color: white;
    border-bottom: 1px solid black;
    pointer-events: auto;
}

#bottomNav {
    position: absolute;
    bottom: 0;
    height: 15vh;
    width: 100vw;
    background-color: white;
    border-top: 1px solid black;
    pointer-events: auto;
}

#menuIcon {
    position: absolute;
    height: 7vh;
    width: 7vh;
    top: 2vw;
    right: 2vw;
    z-index: 10;
}
#menu {
    position: absolute;
    top: 2.5vh;
    height: 10vh;
    min-width: calc(100vw - (3 * 2.5vh) - 10vh);
    left: 100vw;
    transition: left 0.25s;
    z-index: 9;
}
.menuTxt {
    display: inline-block;
    position: relative;
    top: 2vh;
    transform: translateY(-50%);
    font-size: 2vh;
    margin: 2vw;

}
#leitsatz {
    display: inline-block;
    position: absolute;
    top: 2.5vh;
    left: 2vw;
    width: 75vw;
    height: 10vh;
}
#externalLinks {
    position: absolute;
    right: 2vw;
    height: 15vh;
}

.logoEx {
    position: relative;
    height: 2.5vh;
    padding: 1vh 0 1vh 2vh;
    top: 50%;
    transform: translate(0,-50%);
    text-align: right;
}

/*MAIN*/

.projectContainer {
    display: inline-block;
    position: relative;
    margin-top: 20vh;
    white-space: nowrap;
    height: 70vh;
    width: 100vw;
    left: -50vw;
}

.project {
    display: inline-block;
    position: relative;
    height: 70vh;
    width: 100vw;
}

.img {
    display: inline-block;
    position: absolute;
    height: 70vh;
    width: 47vw;
    object-fit: cover;
    margin-left: 2vw;
    white-space: normal;
    left: 0;
    transition: left 0.5s;
    overflow: scroll;
    -webkit-overflow: scroll;
}

#left {
    left: 55vw;
}

#right {
    left: 145vw;
}

#right, #left {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 3vh;
    width: 3vh;
    cursor: pointer;
    opacity: 1;
    z-index: 5;
}

/*MISC*/

#miscLeft {
    display: inline-block;
    position: absolute;
    overflow: scroll;
    -webkit-overflow: scroll;
    margin-left: 50vw;
    height: 70vh;
    width: 46vw;
    padding: 0 2vw 0;
    white-space: normal;
    background-color: white;
    z-index: 3;
}

#miscText {
    position: relative;
    top: 2vh;
}

#miscTextAlt {
    width: 100vw;
    height: 70vh;
    overflow-wrap: break-word;
    word-wrap: break-word; /* Fallback für ältere Browser */
    white-space: normal;
    overflow-y: scroll;
    box-sizing: border-box;
    text-align: center;
}

.divLand {
    display: inline-block;
}

.divPort {
    display: none;
}

/*ANIMATION*/

@keyframes scrollDown {
    from {top: 85vh;}
    to {top: 75vh;}
}

/*@MEDIA*/

@media (orientation: portrait) {
    .img {
        width: 96vw;
    }
    #left {
        left: 110vw;
    }
    #right {
        left: 185vw;
    }
    #prevHead {
        font-size: 8vw;
    }
    #prevMain {
        font-size: 4vw;
    }
    .divLand {
        display: none;
    }
    .divPort {
        display: inline-block;
    }
    .menuTxt {
        font-size: 3vw;
    }
}