.icon-fullscreen:before {
    content: "\46"; }

.icon-volume-mute:before {
    content: "\76"; }

.icon-volume-up:before {
    content: "\56"; }

.icon-keyboard-arrow-down:before {
    content: "\44"; }

.icon-keyboard-arrow-left:before {
    content: "\4c"; }

.icon-keyboard-arrow-right:before {
    content: "\52"; }

.icon-keyboard-arrow-up:before {
    content: "\55"; }

.icon-check:before {
    content: "\59"; }

.icon-close:before {
    content: "\4e"; }

/** Colours **/
/** Type **/
/** Layout **/
/**
 * Text Alignment
 */
.u-text-center {
    text-align: center; }

.u-text-accent {
    color: #119f41; }

/**
 * Text Treatments
 */
.u-large-link {
    color: #119f41;
    display: block;
    font-size: 20px;
    margin: 0 auto;
    margin-bottom: 5px;
    width: 90%;
    max-width: 400px;
    background: rgba(0, 0, 0, 0.75);
    padding: 10px; }

/**
 * Vertical Centering
 */
.u-vc {
    display: table;
    height: 100%;
    left: 0;
    margin: 0;
    padding-top: 50px;
    position: absolute;
    top: 0;
    width: 100%; }
.u-vc-inner {
    display: table-cell;
    float: none;
    max-width: 100%;
    vertical-align: middle; }

/**
 * Treatments
 */
.u-circle {
    background: white;
    color: black;
    border-radius: 9px;
    display: inline-block;
    font-size: 10px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    width: 18px; }

.u-lined {
    padding: 20px 0;
    position: relative; }
.u-lined p:last-of-type {
    margin: 0; }
.u-lined:before, .u-lined:after {
    background: rgba(60, 60, 60, 0.5);
    content: '';
    left: 0;
    position: absolute;
    height: 1px;
    width: 100%; }
.u-lined:before {
    top: 0; }
.u-lined:after {
    bottom: 0; }

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box; }

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

body {
    font-family: "Roboto", Sans-serif;
    font-weight: 300;
    overflow:hidden;
    /*  line-height: 20px;*/
    background: #000000;
    color: white;
    /*  overflow-y: hidden;
      overflow-x: scroll;*/
}

a {
    color: white;
    text-decoration: none; }

p {
    margin: 0 0 1.5em;
    font-size: 1em;
    font-family: "Roboto", Sans-serif;
    font-weight: 300;
}

h1, h2, h3 {
    font-weight:normal;
}

.uppercase {
    text-transform:uppercase;
}

input, select {
    background-color:rgba(255,255,255,0.2);
    width:100%;
    color:white;
    margin-bottom:15px;
    border:0px;
    outline:0px;
    text-align:center;
    font-family: "Rajdhani", Sans-serif;
    font-weight:normal;
}

select {
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance: none;
}

select option {
    text-decoration:none;
    background-color:rgb(30,30,30)!important;
    -webkit-appearance:none;
}

input[type=checkbox] {
    width:5%;
}

input[type=checkbox] label {
    background-color:rgba(0,0,0,0);
}

input:focus{
    background-color:rgba(255,255,255,0.3);
}

input[type=submit]:hover {
    background-color:rgba(255,255,255,0.3);
}

input[type=submit] {
    text-transform:uppercase;
}

ul {
    list-style:none;
}

.content-container.intro2 {
    display:none;
}

.view {
    height: 100%;
    overflow: auto;
    width: 100%; }
.view.mod-padded {
    padding: 30px; }
.view-container {
    bottom: 0;
    display: none;
    left: 0;
    position: absolute;
    right: 0;
    overflow: hidden;
    top: 45px; }

.scene-fill {
    position: absolute;
    bottom: 5%;
    right: 5%;
    left: 5%;
    top: 5%;
    padding: 0;
    margin: 0; }

.header {
    width:100%;
    height:45px;
    padding:5px;
    background-color:rgb(20,20,20);
    position:fixed;
    top:0px;
    left:0px;
    z-index:5000;
    border-bottom: 1px solid #3c3c3c;
    font-family: "Barlow Condensed";
    font-weight: 100;
    font-size: 1.2em;
}
/*.header-icon {
  position: absolute;
  right: 20px;
  font-size: 24px;
  top: 10px;
  cursor: pointer;
  fill: #119f41; }
.header-brand {
  font-family: "Julius Sans One", sans-serif;
  font-size: 1em;
  font-weight: normal;
  letter-spacing: 3px;
  text-transform: uppercase;
  line-height: 50px; }
  .header-brand-link {
    padding: 0 10px; }  */

.header div {
    display:inline;
}

/*------my styles ------*/

#main-view-container {
    min-width:100%;
    min-height: 100%;
/*    overflow-y:hidden;*/
}

.grid-container {
    width:70%;
    height:110%;
    position: absolute;
    top: -5%;
    left: 35%;
    z-index: 0;
}

.start-content-container {
    width: 35%;
    height: 100%;
    background: #00ad99;
    color: white;
    z-index: 1000;
}

.start-content {
    float: right;
    position:relative;
    top:40%;
}

.column {
    width: 100px;
    height: 100px;
    perspective: 600px;
    position:relative;
    padding:0px;
    display: inline-block;
}

.cube {
    width: 100%;
    height: 100%;
    position: relative;
    transform-style: preserve-3d;
}
.cube { transform: translateZ(-50px); transition: transform 1s;}

.cube__face {
    position: absolute;
    width: 100px;
    height: 100px;
    background-color:#EEEEEE;
    background-size: cover;
    overflow: hidden;
    transition: background-color 1s;

}
.cube__face--front  { transform: rotateY(  0deg); background-color:white;}
.cube__face--right  { transform: rotateY( 90deg); }
.cube__face--back   { transform: rotateY(180deg); }
.cube__face--left   { transform: rotateY(-90deg); }
.cube__face--top    { transform: rotateX( 90deg); }
.cube__face--bottom { transform: rotateX(-90deg); }

.cube__face--front  { transform: rotateY(  0deg) translateZ(50px); }
.cube__face--right  { transform: rotateY( 90deg) translateZ(50px); }
.cube__face--back   { transform: rotateY(180deg) translateZ(50px); }
.cube__face--left   { transform: rotateY(-90deg) translateZ(50px); }
.cube__face--top    { transform: rotateX( 90deg) translateZ(50px); }
.cube__face--bottom { transform: rotateX(-90deg) translateZ(50px); }

.cube.show-start  { transform: translateZ(-50px) rotateY(   45deg); }
.cube.show-front  { transform: translateZ(-50px) rotateY(   0deg); }
.cube.show-right  { transform: translateZ(-50px) rotateY( -90deg); }
.cube.show-back   { transform: translateZ(-50px) rotateY(-180deg); }
.cube.show-left   { transform: translateZ(-50px) rotateY(  90deg); }
.cube.show-top    { transform: translateZ(-50px) rotateX( -90deg); }
.cube.show-bottom { transform: translateZ(-50px) rotateX(  90deg); }

.cube.show-right .cube__face--right { background-color:white;}
.cube.show-left .cube__face--left { background-color:white;}
.cube.show-top .cube__face--top { background-color:white;}
.cube.show-bottom .cube__face--bottom { background-color:white;}
.cube.show-back .cube__face--back { background-color:white;}
.cube.show-front .cube__face--front { background-color:white;}


/*   .cube { transition: transform 1s; }*/

.insert {
    width:100vw;
    height:100vh;
    position:fixed;
    opacity: 0.9;
    color:dimgrey;
}

.insert-content {
    width:60%;
    height:80%;
    position:absolute;
    left:20%;
    top:5%;
}
.top {z-index:100;}
.mid {z-index:50;}
.bottom {z-index:0;}

.logo { float:right; opacity:0.9; width:350px; position:relative; padding-right: 5px;}
.tagline {float:right; clear: both; padding-right: 15px; font-size: 1.5em;}

#shuffle {width:200px; height:40px; background-color:lightblue; padding:5px; text-align: center; color:grey; position:fixed; bottom:15px; left:50%; margin-left:-100px;}
h1 {font-size:5em; font-family: 'Rajdhani', sans-serif; font-weight: 600;}
h3 {font-size:2em; font-family: 'Rajdhani', sans-serif; font-weight: 300;}

.start-btn {
    position:relative;
    left:50%;
    margin-left:-75px;
    margin-top:150px;
    width:150px;
    height:40px;
    padding-top:10px;
    background-color:#00226f;
    color:white;
    text-size:1.2em;
    text-align:center;
    border-radius:15px;
}

.insert-background {
    width:60%;
    height:100%;
    background-size:contain;
    background-position:center;
}

.hole-img {
   /* height:600px;
    position:absolute;
    top:50%;
    margin-top:-300px;
    left:50%;
    text-align:center;*/
    height:120%;
    width:120%;
    position:relative;
    top:-10%;
    left:-10%;
    background-position:center;
    background-size:contain;
    background-repeat: no-repeat;
    opacity:0.6;
}

.intro-content {
    width:70%;
    float:right;
    padding: 0% 5%;
    display: none;
    position: relative;
    top:30%;
}

.intro-content.large {
    text-align:center;
}

.intro-content h1 {
    font-size: 100pt;
}

.intro-content h2 {
    font-size: 80pt;
}

.intro-para {
    background-color: rgba(0,0,0,0.7);
    color:white;
    width:400px;
    padding:5px;
    position:relative;
    float:right;
    margin-top:400px;
    clear:both;
    transition: all 1s ease-out;
    opacity:0;
    transform: translateX(800px);
}

.intro-para.show {
    opacity:1;
    transform: translateX(0px);
}

.intro-content.large .intro-para {
    margin-top:50px;
    left:50%;
    margin-left:-200px;
    float:none;
    transform: translateX(0px);
    opacity:1;
}

.intro-content.large .continue-btn {
    left:50%;
    margin-left:-75px;
    float:none;
    opacity:1;
    transform: translateX(0px);
}

.continue-btn {
    width:150px;
    height:40px;
    padding:10px;
    border-radius:15px;
    background-color:#00226f;
    text-align:center;
    color:white;
    position:relative;
    float:right;
    clear:both;
    transition: all 1s ease-out;
    opacity:0;
    transform: translateX(800px);
}

a.show .continue-btn {
    opacity:1;
    transform: translateX(0px);
}

#lines-vid {
    position:fixed!important;
    top: 0% !important;
    left:0% !important;
    height: 100% !important;
    width:100% !important;

}

.spacer {
    width:100%;
    height:50vh;
    position:relative;
}

.spacer.small {
    width:100%;
    height:20vh;
}

p.timeline-para {
    width:450px;
    position:relative;
    left:50%;
    margin-left:-250px;
    background-color:rgba(0,0,0,0.6);
    color:white;
    padding:10px;
}

.inline-vid {
    position:relative;
    left:50%;
    margin-left:-360px;
}

.timeline-img {
    width:500px;
    position:relative;
    left:50%;
    margin-left:-300px;
}

.timeline-title {
    text-align:center;
    font-size:140pt;
    margin-left:-50px;
    position:relative;
}

.instruction {
    text-align:center;
    position:relative;
    font-size:60pt;
}

.footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    text-align: right; }
.footer-link {
    padding: 0 10px; }
