article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}*,*::after,*::before{box-sizing:border-box}body{font-family:roboto mono,monospace;font-weight:500;min-height:100vh;color:#57585c;color:var(--color-text);background-color:#fff;background-color:var(--color-bg)}.demo-3{--color-text: #fff;--color-bg: #fff;--color-link: #0d0084;--color-link-hover: #fff;--color-top-right: blue;--color-bottom-left: magenta}.completed .demo-3{--color-text: #222;--color-link: #222;--color-link-hover: #aaa}.js body{opacity:0;transition:opacity .3s}.js body.render{opacity:1}.hidden{position:absolute;overflow:hidden;width:0;height:0;pointer-events:none}.message{position:relative;z-index:100;display:none;padding:1em;text-align:center;color:var(--color-bg);background:var(--color-text)}.icon{display:block;width:1.5em;height:1.5em;margin:0 auto;fill:currentColor}.icon--keyboard{display:none}.icon--debug{display:none}main{position:relative;width:100%}.loader{float:left;width:100%;height:100%;background:linear-gradient(-135deg,var(--color-top-right),var(--color-bottom-left));bottom:0;left:0;position:absolute;right:0;top:0;transition:opacity 600ms}.loader canvas{width:100%;height:400px}.loading .loader{opacity:1}.is-debug .loader{cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.is-debug .loader:active{cursor:grabbing;cursor:-moz-grabbing;cursor:-webkit-grabbing}.content{position:relative;display:flex;justify-content:center;align-items:center;margin:0 auto;min-height:100vh}.content-outer{background-color:transparent;position:absolute;display:flex;justify-content:center;align-items:center;margin:0 auto;min-height:50vh;opacity:0;perspective:300px;pointer-events:none;transition:opacity 600ms;left:0;right:0;margin:0 auto}.completed .content-outer{opacity:1;pointer-events:auto;transition-duration:0ms}.content-inner{text-align:center;margin:0 auto;width:100%;opacity:0;padding:0 1em;transform:translate3d(0,0,-200px);transition:opacity 800ms cubic-bezier(.19,1,.22,1),transform 800ms cubic-bezier(.19,1,.22,1)}.completed .content-inner{opacity:1;transform:translate3d(0,0,0)}.content-bg{position:absolute;left:0;right:0;margin:0 auto;width:100%;height:600px}.content-inner h1{font-size:3.5vw;font-weight:400;letter-spacing:-.035em;line-height:1.2;margin:0 0 40px;text-transform:lowercase;position:relative}.content-inner p{font-size:18px;line-height:1.5;margin-bottom:40px;position:relative}.content-inner h1,.content-inner p{transition:color 0ms 600ms}.completed .content-inner h1,.completed .content-inner p{transition:color 0ms 0ms}.content-inner .replay-animation{background:var(--color-bg);box-shadow:inset 0 0 0 3px var(--color-link);color:var(--color-link);display:inline-block;font-weight:400;padding:15px 25px;transition:all 300ms;text-transform:lowercase;position:relative}.content-inner .replay-animation:hover{background:var(--color-link);color:var(--color-bg)}.content--fixed{position:fixed;z-index:9999;top:0;left:0;display:grid;align-content:space-between;width:100%;max-width:none;min-height:0;height:100vh;padding:1.5em;pointer-events:none;grid-template-columns:50% 50%;grid-template-rows:auto auto 4em;grid-template-areas:'header debug' '... ...' 'github demos'}.content--fixed a{pointer-events:auto}@media screen and (min-width:55em){.icon--keyboard{position:absolute;right:.55em;bottom:-30%;display:block;width:54px;height:46px;fill:var(--color-link)}.debug{display:flex;align-items:center;flex-direction:row-reverse}.icon--debug{cursor:pointer;display:block;width:54px;height:42px;margin:0 0 0 1em;fill:var(--color-link);pointer-events:auto;transition:opacity 300ms}.icon--debug:hover{opacity:.5}.demos{display:flex;padding-right:80px;justify-self:end}.demo{background:var(--color-link);display:block;width:17px;height:17px;margin:0 4px;border-radius:50%}a.demo--current{background:var(--color-link-hover)}.demo span{line-height:1;position:absolute;right:100%;display:none;margin:0 1em 0 0}.demo--current span{display:block}.timescale-wrap{display:block;pointer-events:auto;width:192px;margin:0 0 0 auto}.timescale-label{color:var(--color-link);display:block;font-size:.75em;text-align:left}.timescale-range{display:block;width:100%}.timescale-title{font-weight:500}.timescale-value{}}@media screen and (max-width:55em){.message{display:block}.loader{z-index:999999}.content{flex-direction:column;height:auto;min-height:0;padding-bottom:10em}.content-inner h1{font-size:3em}.content--fixed{position:relative;z-index:1000;display:block;padding:.85em}.content-outer{min-height:0;padding:75px 0}.codrops-header{flex-direction:column;align-items:center}.codrops-header__title{font-weight:500;padding-bottom:.25em;text-align:center}.github{display:block;margin:1em auto}.codrops-links{margin:0}}