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

body {
    background-color: #000;
    color: #ccc;
    margin: 0;
    overflow: hidden;
    position: relative;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

a:link, a:visited{
	color: #777;
}

a:hover{
	color: #999;
}

.wrapper{
    display: table;
    width:100%;
    height:100%;
}

.viewport{
    display: table-cell;
    font-size: 0;
    vertical-align: middle;
    width:100%;
    height:100%;
}

.status-text{
    color: #888;
    font-size: 16px;
    font-weight: bold;
    position: relative;
        z-index: 10;
    text-align: center;
}

.footer{
    background-color: #222;
    position: absolute;
        bottom: 0;
        z-index: 5;
    width: 100%;
}

.toggle{
    border-top:     1px solid #333;
    border-right:   1px solid #333;
    border-left:    1px solid #333;
    border-top-right-radius:    3px;
    border-top-left-radius:     3px;
    background: #222;
    color: #666;
    cursor: pointer;
    font-family: 'Courier New' monospace;
    line-height: 7px;
    margin-top: -14px;
    margin-left: 15px; 
    padding-bottom: 7px;
    text-align: center;
    width: 40px;
}

.info{
    color: #888;
    font-size: 16px;
    line-height: 1.6;
    padding: 15px;
}

.info .h1, .info .h2{
    font-family: 'Exo 2', Arial, sans-serif;
    font-weight: 200;
    text-transform: lowercase;
}

.info .h1{
    color: #555;
    font-size: 28px;
    margin-top: 0;
    border-bottom: 1px solid #444;
}

.info .h2{
    color: #555;
    font-size: 20px;
    margin-top: 0;
}

.info p{
    margin-top:0;
    margin-left: 12%;
    width: 75%;
}

.two-column{
       -moz-column-count: 2;
    -webkit-column-count: 2;
        -ms-column-count: 2;
            column-count: 2;
    
       -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
        -ms-column-gap: 20px;
            column-gap: 20px;
}

.credits{
    font-size: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.credits li{
    float: left;
    width: 25%;
}

.credits dl{
    margin-top: 0;
    padding-left: 15px;
}

.credits dd{
    margin:0;
}

.credits dd img{
    vertical-align: text-bottom;
}

.u-transition--slow{
    transition: all 3s;
}

.u-transparent{
    opacity: 0;
}

.hidden {visibility: hidden; }

.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
canvas { display: block; touch-action: manipulation; }
#interaction-prompt { position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); padding: 14px 22px; background: rgba(0,0,0,.65); color: white; font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif; pointer-events: none; z-index: 4; }
#interaction-prompt[hidden] { display: none; }
.footer .info { max-height: 75vh; overflow-y: auto; box-sizing: border-box; }
@media (max-width: 600px) { .credits li { width: 50%; } }

#soundtrack-player iframe { display: block; border: 0; }
#soundtrack-player p { margin: 8px 0 20px; width: auto; font-size: 12px; }
