body {
    width: 100%;
    margin: 0;
    box-sizing: border-box
}

body * {
    box-sizing: inherit
}

#app {
    height: 100vh;
    width: 100%;
    background: #fd0;
    font-family: Arial, sans-serif;
    font-family: Coda, cursive
}

#app:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 15em;
    background: linear-gradient(180deg, transparent 0, #000);
    opacity: .6;
    z-index: 2
}

.branding {
    display: none;
}

@media (max-height:800px) {
    .branding {
        font-size: .8em
    }
}

.branding-logo {
    display: block;
    position: relative;
    filter: drop-shadow(.5em .5em 1em rgba(0, 0, 0, .57));
    width: 20em
}

.branding-logo:before {
    content: "";
    position: absolute;
    right: -1em;
    top: 0;
    bottom: 0;
    left: 0;
    background: #fd0;
    transform: skewX(-18deg);
    transform-origin: right bottom
}

.branding-logo>img {
    position: relative;
    transform: translateX(0);
    width: 100%
}

.branding-home {
    margin-top: 1em;
    padding-left: 2em;
    position: relative;
    width: 17em;
    filter: drop-shadow(.5em .5em 1em rgba(0, 0, 0, .57))
}

.branding-home:before {
    content: "";
    position: absolute;
    right: -1em;
    top: 0;
    bottom: 0;
    left: -5em;
    background: #fd0;
    transform: skewX(-18deg);
    transform-origin: right bottom
}

.branding-home-link {
    text-decoration: none;
    color: inherit;
    text-transform: uppercase;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.branding-home-link span {
    font-size: .8em
}

.branding-home-link:hover .branding-home-image>img {
    transform: translateX(1em)
}

.branding-home-image {
    -ms-flex: 0 0 3em;
    flex: 0 0 3em
}

.branding-home-image>img {
    width: 100%;
    transition: transform .2s ease
}

.red {
    color: red
}

.history {
    height: 100%;
    position: relative;
    overflow: hidden
}

.history-inner {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0
}

.history-inner,
.history-item {
    display: -ms-flexbox;
    display: flex
}

.history-item {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    position: relative;
    min-width: 100vw
}

.history-item-content {
    height: 100%;
    width: 50em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 8em
}

@media (max-height:800px) {
    .history-item-content {
        padding-top: 7em
    }
}

@media (max-width:800px) {
    .history-item-content {
        width: 100vw;
        padding: 2em;
        padding-top: 7em
    }
}

.history-item-content-inner {
    text-align: center;
    max-width: 40em;
    margin-bottom: 65em
}

@media (max-height:1000px) {
    .history-item-content-inner {
        font-size: 1.4vh
    }
}

.history-item-title {
    text-transform: uppercase;
    font-size: 1.2em
}

.history-item-title span {
    letter-spacing: .15em
}

.history-item-year {
    font-size: 5em;
    transition: all .3s ease
}

@media (max-height:900px) {
    .history-item-year {
        font-size: 4em
    }
}

.history-item-year:after,
.history-item-year:before {
    content: "-"
}

.history-item-year>span {
    letter-spacing: .1em
}

.history-item-placeholder {
    height: 40em;
    width: 40em;
    border: 1em solid;
    position: absolute;
    bottom: 5em;
    opacity: 0
}

.history-item-image {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.history-item-image>img {
    height: 100%;
    width: auto
}

.navigation {
    position: absolute;
    bottom: 3em;
    left: 0;
    right: 0;
    display: -ms-flexbox;
    display: flex;
    z-index: 30;
    transition: transform .3s ease
}

@media (max-height:800px) {
    .navigation {
        transform: translateY(2em);
        font-size: .8em
    }
}

.navigation-inner {
    height: 6em;
    display: -ms-flexbox;
    display: flex;
    margin: auto;
    position: relative;
    font-size: .6em
}

@media (max-width:1100px) {
    .navigation-inner {
        font-size: .8vw
    }
}

.navigation-inner:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .65);
    transform: skewX(-18deg);
    left: -5em;
    right: -5em
}

@media (max-width:1800px) {
    .navigation-inner:before {
        left: 0;
        right: 0
    }
}

.navigation-handle {
    color: #000;
    position: absolute;
    width: 10em;
    height: 100%;
    cursor: pointer;
    transition: transform .3s ease
}

.navigation-handle:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #ffe500;
    transform: skewX(-18deg)
}

.navigation-handle-inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    position: relative
}

.navigation-handle-inner span {
    font-size: 2em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.navigation-item {
    position: relative;
    width: 10em;
    cursor: pointer
}

.navigation-item:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: hsla(0, 0%, 100%, .65);
    transform: skewX(-18deg);
    opacity: 0;
    transition: opacity .2s ease
}

.navigation-item:hover:before {
    opacity: .4
}

.navigation-item-inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    position: relative
}

.navigation-item-inner span {
    color: #fff;
    font-size: 2em;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.wheel {
    position: fixed;
    left: 5em;
    height: 40em;
    width: 40em;
    bottom: 5em;
    z-index: 5;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    transition: transform .2s ease
}

@media (min-height:1400px) {
    .wheel {
        transform: scale(1.2)
    }
}

@media (max-height:1200px) {
    .wheel {
        transform: translateY(6em) scale(.9)
    }
}

@media (max-height:1000px) {
    .wheel {
        transform: translateY(8em) scale(.8)
    }
}

@media (max-height:900px) {
    .wheel {
        transform: translateY(9em) scale(.7)
    }
}

@media (max-height:800px) {
    .wheel {
        transform: translateY(13em) scale(.7)
    }
}

@media (max-height:700px) {
    .wheel {
        transform: translateY(15em) scale(.5)
    }
}

@media (max-width:800px) {
    .wheel {
        width: 100vw;
        left: 0
    }
}

.wheel-image {
    height: 362px;
    width: 362px;
    -ms-flex: 0 0 362px;
    flex: 0 0 362px;
    z-index: 2
}

.wheel-shadow {
    position: absolute;
    bottom: calc(20em - 190px)
}

.animating .wheel-image {
    animation: spin .1s infinite
}

@keyframes spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

/*# sourceMappingURL=app.css.map */