html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}body,html{height:100%;font:normal 10px 'Segoe UI','Droid Sans',Ubuntu,'Lucida Grande',Arial,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Garamond,Baskerville,Georgia,'Times New Roman',Times,serif}li,p,td,th{font-size:1.5em}li li,li p,li td,li th,p li,td li,th li{font-size:1em}table,td,th{border:1px solid #1b1b1b;border-collapse:collapse}th{text-align:center}.content-wrapper{position:relative;padding:0 1%}.btn{border:none;background:0 0;font-family:'Segoe UI','Droid Sans',Ubuntu,'Lucida Grande',Arial,sans-serif;text-decoration:none;text-align:center;cursor:default}[contenteditable=true]{outline:0}[data-gentleman]{position:relative;display:flex;flex-direction:column;height:100%;width:100%;font-size:1rem;border-radius:1px 1px 2px 2px;overflow:hidden}.font-gentleman{font-family:Garamond,Baskerville,Georgia,'Times New Roman',Times,serif}.font-ui{font-family:'Segoe UI','Droid Sans',Ubuntu,'Lucida Grande',Arial,sans-serif}.font-code{font-family:Consolas,'Courier New',Courier,monospace}.left{float:left}.right{float:right}.clear{clear:both;display:block}.clear:after{content:".";clear:both;display:block;height:0;visibility:hidden}.bare-list{margin:0;padding:0;list-style:none}.bare-link{color:inherit;text-decoration:none}.block{display:block!important}.inline{display:inline-block!important}.hidden{display:none!important}.nomargin{margin:0}.fit-content{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}::-webkit-scrollbar{width:calc(6px + 1%);max-width:10px;height:calc(6px + 1%);max-height:10px}::-webkit-scrollbar-track{background:#dcdcdc}::-webkit-scrollbar-thumb{background:#bfbfbf}::-webkit-scrollbar-thumb:hover{background:grey}::-webkit-scrollbar-thumb:active{background:#555}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}*{box-sizing:border-box}.content-wrapper--header{display:flex;background:#404040;height:32px}.logo{position:relative;display:block;margin:0;padding-left:10px;padding-right:10px;color:#fff;text-decoration:none;font-size:1.5em;line-height:32px;background-color:#36454f;z-index:2}.logo:before{content:"";position:absolute;top:0;right:100%;bottom:0;left:-200px;background-color:#e3e3e3;z-index:-1}.header-nav{height:100%;padding:4px 5px 6px;background-color:#d3d3d3}.nav{display:flex}.nav-item{color:#1b1b1b;font-size:1.5em;border-radius:2px;transition:box-shadow .2s,background-color .5s}.nav-item:not(.selected):hover{color:#d3d3d3;background-color:#777;box-shadow:0 1px 2px #555}.nav-item.selected{background-color:#f0f0f0;box-shadow:inset 0 1px 2px #555;font-weight:500}.nav-item__link{display:block;padding:0 7px 2px;color:inherit;text-decoration:none}.card-container{display:flex}.card-container:not(:last-child){margin-bottom:20px}.card-container--small{font-size:.9rem}.card{min-width:250px;max-width:500px}.card:not(:last-child){margin-right:24px}.card-img{float:left;margin-right:12px;width:150px;height:150px;border-radius:50%;background:#deb887}.card-img--small{width:100px;height:100px}.card-name{margin-bottom:0;font-size:1.6em;font-weight:500}.card-role{color:#555}.site{display:flex;flex-direction:column;background-color:#fdfeff}.site:after{content:"";position:absolute;top:-45px;right:24%;bottom:1%;width:20%;transform:rotate(30deg) skewX(5deg);border-top-right-radius:5px;box-shadow:2px -2px 0 silver,inset -50px 50px 50px -20px #e5e4e2;z-index:-5}.site-header{padding-top:30px;display:flex;flex-direction:column;align-items:center}.site-title{position:relative;display:block;font-size:4em;font-weight:400;color:#3a3b4f}.site-title:after{content:"";position:absolute;top:-260px;left:0;width:49%;height:200px;transform:skewX(8deg) skewY(-6deg) rotate(30deg);border-top-right-radius:50px;border-bottom-right-radius:5%;background:#f5f5f5;box-shadow:2px 2px 1px #999;opacity:.2;z-index:-1}.site-title:before{content:"";position:absolute;top:-260px;right:0;width:49%;height:200px;transform:skewX(-8deg) skewY(6deg) rotate(-30deg);border-top-left-radius:50px;border-bottom-left-radius:5%;background:#f5f5f5;box-shadow:-2px 2px 1px #999;opacity:.2;z-index:-1}.site-description{margin-bottom:24px;width:600px;text-align:center;font:normal 1.6em 'Bookman Old Style',Bookman,'Segoe UI',Tahoma,Geneva,sans-serif;color:#36454f}.site-menu{display:flex}.site-menu-item{position:relative;width:96px;height:96px;font-size:1.7em;font-weight:300;color:#1b1b1b;border-radius:50%;background:#ffdc74}.site-menu-item:before{content:"";position:absolute;top:calc(50% + 18px);left:calc(50% - 5px);width:12px;height:12px;border-radius:50%;background-color:#738cff;box-shadow:-18px 0 0 #738cff,18px 0 0 #738cff;z-index:1;transition:.2s}.site-menu-item:not(:last-child){margin-right:12px}.site-menu-item:hover{background-color:#ffc000}.site-menu-item:hover:before{transform:rotate(90deg) scale(1.2);box-shadow:0 0 0 #738cff,0 0 0 #738cff;background-color:#ffc000}.site-menu-item__link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:inherit;text-decoration:none}.site-action-link{display:flex;align-items:center;justify-content:center;margin-top:24px;padding:12px 24px;color:#fff;font-size:1.6em;font-weight:500;text-decoration:none;border-radius:2px;background-color:#738cff}.site-body{padding:60px 0 40px;display:flex;flex-direction:row;justify-content:space-between;flex-grow:4}.site-body-section{display:flex;flex-direction:column;flex:1 1;z-index:5}.site-body-section--features{max-width:600px}.site-body-section--examples{margin-left:120px}.site-body-section--examples .site-body-section-header{align-self:flex-end}.site-body-section-header{margin:0;display:flex;align-items:center;justify-content:center;width:300px;height:60px;color:#fff;border-radius:0 2px 2px 0;background-color:#0d0d0d;mix-blend-mode:multiply;z-index:10}.section-title{margin-bottom:12px;font-size:2.4em;font-weight:400;color:#333}.site-body-section-title{margin:0;font-size:3em;font-weight:600}.site-body-section-content{position:relative;margin-top:-30px;padding:48px 30px 40px;font-size:1.2rem;background-color:#f5f5f5;color:#333;border-radius:2px}.feature-list{display:flex;flex-direction:column}.feature-item{line-height:1.5}.example-list{display:flex}.example-item{display:flex;flex-direction:column}.example-item:not(:last-child){margin-right:24px}.example-item-title{margin:0;margin-bottom:6px;font-weight:300;font-size:1.2em;color:#555}.example-item-link{display:block;height:200px}.example-item-link-img{height:auto;width:auto;max-width:100%;max-height:100%}.example-description{font-size:.85em}.btn-link{position:relative;margin-left:3px;margin-right:3px;text-align:center;color:#fff;transition:transform .2s;z-index:2}.btn-link:after,.btn-link:before{content:"";position:absolute;top:-2px;bottom:-2px;left:-5px;border-radius:2px}.btn-link:after{right:-5px;background:#5497ff;transition:box-shadow .2s;z-index:-2}.btn-link:before{right:calc(100% + 5px);background:#2d68c4;z-index:-1;transition:right .5s}.btn-link:hover:before{right:-5px}.btn-link:focus{transform:scale(.95)}.btn-link:focus::after{box-shadow:none}h1,h2,h3,p{margin-top:0}h2{font-size:2.1em;font-weight:300}h3{font-size:1.7em;font-weight:500;margin-bottom:0}h4{font-size:1.5em;font-weight:600;margin-bottom:0}.content-wrapper{padding-left:5%;padding-right:5%}.page-header{display:flex;padding-left:5%;padding-right:5%;justify-content:space-between;background-color:#fff}.page-header--docs{padding-left:2%;padding-right:2%}.page-header-main{display:flex}.page-body{display:flex;flex-direction:column;min-height:calc(100% - 36px)}.page-body[data-page=docs]{background:#f0f0f0 url(../../images/books-1845614_1920.jpg) 100%/cover no-repeat}.page-body-header{padding-top:20px;padding-bottom:30px;background:linear-gradient(to right,#fff,rgba(255,255,255,.2));background:rgba(65,105,225,.95);color:#fff}.body-section{padding-top:24px}.link{position:relative;display:inline-flex;align-items:center;font-size:1.4rem;font-weight:300;text-decoration:none}.logo-link{display:flex;align-items:center;height:40px;width:200px}.logo-link-img{height:30px;width:30px}.logo-link-text{margin-left:4px;font-size:2em;font-weight:300;color:#3a3b4f}.link-version{display:inline-block;padding:3px 6px;background-color:#271c40}.page-menu{display:flex;flex-direction:row}.page-menu-item{position:relative;display:inline-flex;height:100%;color:#444;font-size:1.4em;font-weight:300;cursor:default}.page-menu-item:hover{color:#000;background-color:#ffdc74}.page-menu-item.selected{color:#222;font-weight:500}.page-menu-item.selected .page-menu-item__text{border-bottom:4px solid #ffc000}.page-menu-item__text{display:flex;align-items:center;height:100%;padding-left:24px;padding-right:24px;border-radius:0;transition:.2s}.page-menu-item__link{display:flex;align-items:center;height:100%;color:inherit;text-decoration:none;padding-left:24px;padding-right:24px;text-align:center;border-radius:0;transition:.2s}.helper{position:absolute;top:100%;left:0;width:120px;padding:3px 6px 4px;border-radius:1px;font-size:1.2rem;font-style:normal;color:#fff;background-color:rgba(55,55,55,.85);opacity:0;transition:.2s;transform:scale(0);transition-property:opacity,transform;z-index:20}.has-helper:hover>.helper{opacity:1;transform:scale(1) translateY(2px)}.page-header-link{position:relative;display:flex;height:100%;color:#6667ab;font-size:1.4em;font-weight:300;cursor:default}.socials{align-self:flex-end;display:flex}.social-link{display:block}.social-link-img{height:24px}.page-footer{color:#fff;background-color:#031e36;padding-top:48px;padding-bottom:24px}.footer-nav{display:flex}.footer-nav-item{display:inline-flex}.footer-nav-item:not(:last-child):after{content:"|";margin-left:4px;margin-right:4px}.footer-nav__link{color:#fff}.footer-license{font-size:1.3em}.footer-license__link{color:#fff;font-weight:700}.docs__main{display:flex;height:calc(100% - 25px)}.main-nav{padding-top:24px;padding-left:2%;width:240px;background-color:#262626}.nav-title{color:#f5f5f5;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;font-size:1.7em;font-weight:500}.nav-menu-title{color:#f5f5f5;font-weight:700;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;font-size:1.6em;font-weight:500;text-transform:uppercase;color:#f53b57}.main-menu{display:flex;flex-direction:column;color:#fff;width:200px}.main-menu-item{display:block;text-transform:uppercase;font-size:1.4em;margin-bottom:6px}.main-menu-item__link{display:flex;align-items:center;height:100%;color:inherit;text-decoration:none;padding:2px;text-align:center;border-radius:0;transition:.2s}.main-menu-item-details{display:flex;flex-direction:column;text-transform:none;font-size:.9em}ul.dash{padding-left:18px}ul.dash>li:before{content:'-';margin-left:4px;margin-right:8px;font-weight:700;color:currentColor}.main-content{flex-grow:2;padding-top:24px;padding-left:12px;overflow:auto;background-color:#fefefe}.body{padding-top:20px;padding-bottom:20px;background-color:#f5f5f5}.page-title{margin:0;font-size:3em;font-weight:300;color:#1b1b1b;color:#fff}.article-title{font-size:3em}.article-section{padding-right:60px;line-height:1.5}.article-section-title{font-size:2.4em;margin-bottom:6px}.article-section-subtitle{text-transform:uppercase;color:#111;font-weight:500;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif}.article-section p{margin-top:0}.title{margin-bottom:2px;font-size:1.7em;font-weight:500}.gentleman-quote{margin:0;font:normal 1.4em 'Bookman Old Style',Bookman,'Segoe UI',Tahoma,Geneva,sans-serif;color:#36454f;color:#e5e4e2}.box-container{position:relative;display:flex;flex-flow:row wrap;padding:20px calc(5% + 300px) 30px 5%;z-index:2}.box-container:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#555,rgba(0,0,0,.5));z-index:-1}.tablet{content:"";position:absolute;top:10px;right:5%;bottom:10px;width:300px;background:radial-gradient(#a9a9a9,#838996);border:solid #555;border-width:10px 7px;border-radius:5%;z-index:-1}.box{border-radius:2px;overflow:hidden}.box:hover{box-shadow:3px 5px 1px -1px rgba(85,85,85,.5);transition:.2s .2s}.box:hover .box-title{margin-bottom:0;padding-bottom:13px}.box-title{position:relative;display:block;margin-top:0;margin-bottom:3px;color:#2d68c4;font-size:1.7em;font-weight:500;padding:10px;background-color:#fefefe;z-index:2;transition:.2s}.box-description{margin:0;background-color:#fefefe;padding:5px 10px 10px}.box-header:hover+.box-content li{margin-top:0;padding-top:4px;background-color:#f5f5f5}.box-content{display:flex;flex-direction:column;height:100%}.box-content li{position:relative;margin-top:2px;padding:2px 10px 3px;background-color:#eee;z-index:2;transition:.2s;z-index:2}.box-content li:hover{margin-left:2px;background-color:#fff}.box-link{display:block;color:#2d68c4}.box-content li:last-child{flex-grow:2}.link{position:relative;display:inline-block;text-decoration:none;text-align:center}.link-wrapper{display:inline-block;width:85px;height:80px;text-align:center;padding-top:20px;padding-left:5px;padding-right:5px;box-shadow:0 3px 2px rgba(0,0,0,.3),0 -1px 2px #999;background:#5497ff;border-radius:50%;font-size:1.4rem;vertical-align:middle;transform:scale(.8)}.link-mail{position:relative;display:inline-flex;padding:1px 5px 2px;text-decoration:none;color:#5497ff;transition:box-shadow .2s .3s;z-index:2}.link-mail:before{content:"📧";margin-right:6px}.link-mail:visited{color:#2d68c4}.link-mail:hover{box-shadow:0 1px 1px #999}.link-mail:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f9f9f9;box-shadow:inset 0 -2px 0 #f9c446;z-index:-1;transition:box-shadow .5s}.link-mail:hover:after{box-shadow:inset 0 -50px 0 #f0f0f0}.link-mail:focus{box-shadow:none}.link-github{position:relative;display:inline-flex;padding:1px 5px 2px;text-decoration:none;color:#5497ff;transition:box-shadow .2s .3s;z-index:2}.link-github:before{content:"";height:18px;width:18px;background:url(/assets/images/GitHub-Mark-32px.png) 100%/contain no-repeat;margin-right:6px}.link-github:visited{color:#2d68c4}.link-github:hover{box-shadow:0 1px 1px #999}.link-github:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f9f9f9;box-shadow:inset 0 -2px 0 #262626;z-index:-1;transition:box-shadow .5s}.link-github:hover:after{box-shadow:inset 0 -50px 0 #f0f0f0}.link-github:focus{box-shadow:none}.link-youtube{position:relative;display:inline-flex;padding:1px 5px 2px;text-decoration:none;color:#5497ff;transition:box-shadow .2s .3s;z-index:2}.link-youtube:before{content:"";height:24px;width:24px;background:url(/assets/images/youtube_social_icon_red.png) 100%/contain no-repeat;margin-right:6px}.link-youtube:visited{color:#2d68c4}.link-youtube:hover{box-shadow:0 1px 1px #999}.link-youtube:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f9f9f9;box-shadow:inset 0 -2px 0 #f20505;z-index:-1;transition:box-shadow .5s}.link-youtube:hover:after{box-shadow:inset 0 -50px 0 #f0f0f0}.link-youtube:focus{box-shadow:none}.link-out{display:inline-block;padding:1px 5px 2px;position:relative;text-decoration:none;color:#5497ff;transition:box-shadow .2s .3s;z-index:2}.link-out:visited{color:#2d68c4}.link-out:hover{box-shadow:0 1px 1px #999}.link-out:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f9f9f9;box-shadow:inset 0 -2px 0 currentColor;z-index:-1;transition:box-shadow .5s}.link-out:hover:after{box-shadow:inset 0 -50px 0 #f0f0f0}.tutorial-section{padding-top:24px;padding-bottom:60px;background-color:rgba(245,245,245,.9)}.section-header-title{margin-bottom:2px}.tutorial-list{display:flex}.tutorial-item{margin-right:12px}.tutorial-item__title{margin-bottom:6px;font:400 1.1em 'Segoe UI','Droid Sans',Ubuntu,'Lucida Grande',Arial,sans-serif;color:#555;text-transform:uppercase}.tutorial-item__link{display:block;height:240px}.tutorial-item__link-img{display:block;height:100%;width:auto;box-shadow:1px 2px 3px #999}@media only screen and (min-width:600px){.box{width:calc(50% - 5px)}}@media only screen and (min-width:768px){.box{width:calc(33.3% - 5px)}.box:not(:nth-child(3n)){margin-right:10px}.box:nth-child(n+4){margin-top:10px}}@media only screen and (min-width:1200px){.box{width:calc(30% - 5px)}}