html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}

body {
    font-family: 'Open Sans', sans-serif;
}

.section {
    clear: both;
    width: 100%;
    height: 900px;
    box-sizing: border-box;
    position: relative;
}

.section:nth-child(even) {
    color: #220044;
}

.section:nth-child(odd) {
    background: #220044;
    color: white;
}

.section-0 {
    text-align: center;
}

.section-0 h1 {
    font-size: 7em;
    line-height: 1em;
    position: absolute;
    top: 30%;
    left: 0;
    right: 0;
    text-align: center;
}

.section-0 h2 {
    font-size: 4em;
    line-height: 1em;
    position: absolute;
    top: 45%;
    left: 0;
    right: 0;
    text-align: center;
}

.section-1 .slide-in-demo {
    position: absolute;
    top: 40%;
    width: 100%;
    left: 0;
    text-align: center;
    font-size: 4em;
}

.section-2 .reveal-demo {
    position: absolute;
    top: 0%;
    width: 100%;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 4em;
}

.section-3 .text-wrapper {
    max-width: 600px;
    margin: auto;
    font-size: 2em;
    line-height: 1.5em;
    padding-top: 20%;
    
}

.section-3 .text-wrapper span {
    opacity: 0;
    -webkit-transition: opacity 0.2s;
}

.section-3 .text-wrapper span.visible {
    opacity: 1;
}