a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}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:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}button,input,select{outline:0;border:0;background:0 0}::-webkit-input-placeholder{font:inherit;font-size:1em;font-weight:400;font-style:normal}a{color:inherit;text-decoration:none}body{background:#e8e8e8;font-family:Roboto,"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:100%;line-height:1.3}.main-container{position:relative;min-height:100vh;padding-left:70px;background:#09090f;overflow:hidden}@media only screen and (max-width:768px){.main-container{padding-top:70px;padding-left:0}}.p-home{position:relative;height:100vh;overflow:hidden}@media only screen and (max-width:768px){.p-home{background-image:url(../img/wave.svg);background-repeat:no-repeat;background-position:center bottom;background-size:contain}}.p-home__content{position:absolute;z-index:1;top:50%;left:0;-webkit-transform:translateY(-65%);-ms-transform:translateY(-65%);transform:translateY(-65%);padding-left:4%}@media only screen and (max-width:768px){.p-home__content{-webkit-transform:translateY(-75%);-ms-transform:translateY(-75%);transform:translateY(-75%)}}.p-home__title{margin-bottom:18px;font-size:2.5rem;line-height:1.2;font-weight:700;color:#fff;visibility:hidden}.p-home__title--first-line,.p-home__title--second-line{display:block}.p-home__subtitle{margin-bottom:15px;font-size:1.125rem;font-weight:700;color:#8a8a8a;text-transform:uppercase}.p-home .g-button{-webkit-animation-delay:1s;animation-delay:1s}.p-home__canvas{position:absolute;left:0;top:0;width:100%;height:100%}@media only screen and (max-width:768px){.p-home__canvas{display:none}}.p-portfolio__group-projects{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}@media only screen and (max-width:480px){.p-portfolio__group-projects{display:block}}.p-portfolio__group-term{padding-top:20px;color:#e8e8e8;font-size:2rem;font-weight:700;line-height:1.2}.p-portfolio__group-label{display:block;color:#8a8a8a;font-size:1.125rem;margin-bottom:10px}.p-about{padding-left:10%;padding-top:15vh}@media only screen and (max-width:768px){.p-about{padding:30px}}.p-about-content{max-width:800px;color:#fff}.p-about-content h1,.p-about-content h2,.p-about-content h3{margin-bottom:10px;font-weight:700;color:#20a8d8}.p-about-content h1{font-size:4.1875rem;visibility:hidden}.p-about-content h2{font-size:2.5625rem}.p-about-content h3{font-size:1.5625rem}.p-about-content p{margin-bottom:20px;font-weight:300;line-height:1.5}.p-about-content ul{margin-left:20px;margin-bottom:20px;list-style-type:circle}.p-about-content ul li{margin-bottom:3px}.p-about-content ol{list-style-type:decimal;margin-left:20px;margin-bottom:20px;font-weight:300}.p-about-content ol li{margin-bottom:20px}.p-about-content__link{color:#20a8d8}.p-about-content__link:hover{text-decoration:underline}.p-about-content strong{font-weight:600}.p-about-content em{font-style:italic}.p-about-content__text{-webkit-animation-delay:1s;animation-delay:1s;-webkit-animation-duration:2s;animation-duration:2s}.p-about-content__intro{font-size:1.5625rem;line-height:1.4}.p-about-content .g-button{margin-bottom:20px;-webkit-animation-delay:.4s;animation-delay:.4s}.p-contact{padding-left:10%;padding-top:15vh;max-width:1000px}@media only screen and (max-width:768px){.p-contact{padding:30px}}.p-contact h1,.p-contact h2,.p-contact h3{margin-bottom:10px;font-weight:700;color:#20a8d8}.p-contact h1{font-size:4.1875rem;visibility:hidden}.p-contact h2{font-size:2.1875rem}.p-contact__content{-webkit-animation-delay:.8s;animation-delay:.8s}.p-contact__intro{color:#fff;margin-bottom:20px;font-weight:300;font-size:1.5625rem;line-height:1.4;visibility:hidden}.p-contact__social{color:#fff;margin-right:25px;font-size:1.5rem}.p-contact__social:hover{color:#20a8d8}.p-contact__social i{color:#20a8d8;margin-right:10px}.b-contacts{margin-bottom:70px}.b-contacts__item{display:inline-block;line-height:100px}.b-contacts__item:first-child{margin-right:50px}.b-contacts__item i{margin-right:20px;color:#20a8d8;font-size:4.6875rem;vertical-align:middle}.b-contacts__item span{color:#fff;font-weight:600;font-size:1.5625rem}.g-button{display:inline-block;position:relative;padding:12px 18px;color:#fff;font-size:.875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.g-button:hover rect{stroke-width:8px}.g-button svg{position:absolute;z-index:-1;width:100%;height:100%;left:0;top:0}.g-button rect{fill:none;stroke:#20a8d8;stroke-width:5px;-webkit-transition-property:stroke-width,stroke-dasharray,stroke-dashoffset;-o-transition-property:stroke-width,stroke-dasharray,stroke-dashoffset;transition-property:stroke-width,stroke-dasharray,stroke-dashoffset;-webkit-transition-duration:.4s;-o-transition-duration:.4s;transition-duration:.4s}.g-button--color-animate rect{-webkit-animation-duration:36s;animation-duration:36s;-webkit-animation-name:strokeHueColor;animation-name:strokeHueColor;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}@media only screen and (max-width:768px){.g-button--color-animate rect{-webkit-animation:none;animation:none}}.b-logo{position:absolute;top:0;left:0;width:100%;padding:20px 0;text-align:center;font-size:1.5rem;font-weight:700}@media only screen and (max-width:768px){.b-logo{width:auto;left:20px}}.b-logo span{color:#20a8d8}.b-social-links{position:absolute;width:100%;left:0;bottom:0;padding:20px 0;color:#8a8a8a;text-align:center}@media only screen and (max-width:768px){.b-social-links{display:none}}.b-social-links li{margin-bottom:5px}.b-social-links a{-webkit-transition:color .2s;-o-transition:color .2s;transition:color .2s}.b-social-links a:hover{color:#20a8d8}.b-menu-toggle{position:absolute;top:50%;width:100%;padding:20px 0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer}@media only screen and (max-width:768px){.b-menu-toggle{width:auto;right:20px;left:auto}}.b-menu-toggle__wrapper{position:relative;width:25px;height:20px;margin-left:auto;margin-right:auto}.b-menu-toggle__bar{position:absolute;height:2px;background:#fff;left:0;-webkit-transition:all .4s;-o-transition:all .4s;transition:all .4s}.b-menu-toggle__bar:nth-child(1){top:0;width:100%}.b-menu-toggle__bar:nth-child(2){top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);width:66%}.b-menu-toggle__bar:nth-child(3){bottom:0;width:33%}.b-menu-toggle:hover .b-menu-toggle__bar{background:#20a8d8}@media only screen and (max-width:768px){.b-menu-toggle:hover .b-menu-toggle__bar{background:#fff}}.b-menu-toggle:hover .b-menu-toggle__bar:nth-child(2){left:17%}@media only screen and (max-width:768px){.b-menu-toggle:hover .b-menu-toggle__bar:nth-child(2){left:0}}.b-menu-toggle:hover .b-menu-toggle__bar:nth-child(3){left:33.5%}@media only screen and (max-width:768px){.b-menu-toggle:hover .b-menu-toggle__bar:nth-child(3){left:0}}.b-menu-toggle.active .b-menu-toggle__bar{background:#20a8d8}.b-menu-toggle.active .b-menu-toggle__bar:nth-child(2){left:34%}.b-menu-toggle.active .b-menu-toggle__bar:nth-child(3){left:67%}.b-primary-nav__item{padding:1.5% 0}.b-primary-nav__link{display:inline-block;position:relative;font-size:3.5rem;font-weight:200;color:#e8e8e8;overflow:hidden}@media only screen and (max-width:480px){.b-primary-nav__link{font-size:2.75rem}}.b-primary-nav__link.active .b-primary-nav__text{padding-right:50px}.b-primary-nav__link.active .b-primary-nav__text:after{content:'';position:absolute;right:0;top:50%;width:30px;height:30px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background:url(../img/menu-marker.svg) no-repeat 100% 50%}.b-primary-nav__text{display:inline-block;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%)}.b-primary-nav__text:before{content:'';position:absolute;bottom:0;left:0;height:3px;width:100%;background:#20a8d8;-webkit-transform:translateX(-105%);-ms-transform:translateX(-105%);transform:translateX(-105%);-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:.4s;-o-transition-duration:.4s;transition-duration:.4s;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.b-primary-nav__text:hover:before{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.b-primary-nav.show .b-primary-nav__item:nth-child(1) .b-primary-nav__text{-webkit-transition-delay:.15s;-o-transition-delay:.15s;transition-delay:.15s}.b-primary-nav.show .b-primary-nav__item:nth-child(2) .b-primary-nav__text{-webkit-transition-delay:.3s;-o-transition-delay:.3s;transition-delay:.3s}.b-primary-nav.show .b-primary-nav__item:nth-child(3) .b-primary-nav__text{-webkit-transition-delay:.45s;-o-transition-delay:.45s;transition-delay:.45s}.b-primary-nav.show .b-primary-nav__item:nth-child(4) .b-primary-nav__text{-webkit-transition-delay:.6s;-o-transition-delay:.6s;transition-delay:.6s}.b-primary-nav.show .b-primary-nav__text{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:.4s;-o-transition-duration:.4s;transition-duration:.4s;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.b-project{position:relative;width:25%}@media only screen and (max-width:992px){.b-project{width:50%}}@media only screen and (max-width:480px){.b-project{width:100%}}.b-project-preview{position:relative;width:100%;padding-bottom:100%;cursor:pointer;overflow:hidden}.b-project-preview:hover .b-project-preview__image{-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}.b-project-preview:hover .b-project-preview__content{opacity:1}.b-project-preview__image{position:absolute;display:block;left:0;top:0;width:100%;height:100%;-webkit-transition:-webkit-transform 2s;transition:-webkit-transform 2s;-o-transition:transform 2s;transition:transform 2s;transition:transform 2s,-webkit-transform 2s}.b-project-preview__content{position:absolute;left:0;top:0;width:100%;height:100%;color:#fff;opacity:.4}.b-project-preview__content--dark{color:#000}.b-project-preview__title{position:absolute;left:0;top:0;width:100%;padding:15px;font-size:2rem;font-weight:700;line-height:1}.b-project-preview__tags{position:absolute;bottom:15px;left:15px;font-size:.875rem;line-height:1.4}.b-project-content{position:relative;z-index:8}@media only screen and (max-width:768px){.b-project-content.open{position:fixed;z-index:8;top:0;left:0;width:100%;padding-top:70px;height:100%;overflow-y:scroll}}.b-project-content.open .b-project-content__text{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}@media only screen and (max-width:768px){.b-project-content.open .b-project-content__text{position:static;height:auto}}.b-project-content.open .b-project-content__image{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}@media only screen and (max-width:768px){.b-project-content.open .b-project-content__image{position:static;width:100%;height:auto}}.b-project-content__text{position:fixed;z-index:2;left:0;top:0;height:100%;width:-webkit-calc(70px + 25%);width:calc(70px + 25%);padding:30px 20px 20px 90px;background:#09090f;-webkit-box-shadow:5px 0 10px 0 rgba(0,0,0,.4);box-shadow:5px 0 10px 0 rgba(0,0,0,.4);color:#fff;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%);-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:.4s;-o-transition-duration:.4s;transition-duration:.4s;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}@media only screen and (max-width:768px){.b-project-content__text{width:100%;-webkit-box-shadow:none;box-shadow:none;padding-left:25px}}.b-project-content__text h2{padding-right:20px;margin-bottom:10px;font-size:2.5rem;font-weight:600;color:#20a8d8;line-height:1.2}.b-project-content__text p{margin-bottom:10px;font-size:1.125rem;line-height:1.5;font-weight:300}.b-project-content__text p strong{font-weight:600}.b-project-content__text ul{margin-top:5px;margin-bottom:25px;list-style-type:circle}.b-project-content__text ul li{margin-left:30px;margin-bottom:3px}.b-project-content__image{position:fixed;z-index:1;left:-webkit-calc(25% + 70px);left:calc(25% + 70px);top:0;width:-webkit-calc(75% - 70px);width:calc(75% - 70px);height:100%;overflow-y:auto;background:#09090f;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:.4s;-o-transition-duration:.4s;transition-duration:.4s;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}@media only screen and (max-width:768px){.b-project-content__image{width:100%;left:0}}.b-project-content__image img{width:100%;opacity:0;-webkit-transition:opacity .8s;-o-transition:opacity .8s;transition:opacity .8s}.b-project-content__image img.loaded{opacity:1}.b-project-content__close{position:absolute;z-index:3;top:20px;right:20px;font-size:1.5625rem;color:#fff;opacity:.6;cursor:pointer}.b-project-content__close:hover{opacity:1}.b-header{background:#000;position:fixed;z-index:10;left:0;top:0;height:100%;width:70px;color:#fff}@media only screen and (max-width:768px){.b-header{width:100%;height:70px}}.b-menu{position:fixed;z-index:9;height:100%;width:100%;left:0;top:0;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%);-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;-o-transition:transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s;padding-top:5%;padding-left:120px;background:#000}@media only screen and (max-width:768px){.b-menu{padding-top:120px;padding-left:5%}}.b-menu.open{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}@-webkit-keyframes colorHueColor{0%{color:#0095ff}10%{color:#0400ff}20%{color:#9d00ff}30%{color:#ff00c8}40%{color:#ff002f}50%{color:#ff6a00}60%{color:#fbff00}70%{color:#62ff00}80%{color:#00ff37}90%{color:#00ffd0}100%{color:#0095ff}}@keyframes colorHueColor{0%{color:#0095ff}10%{color:#0400ff}20%{color:#9d00ff}30%{color:#ff00c8}40%{color:#ff002f}50%{color:#ff6a00}60%{color:#fbff00}70%{color:#62ff00}80%{color:#00ff37}90%{color:#00ffd0}100%{color:#0095ff}}@-webkit-keyframes strokeHueColor{0%{stroke:#0095ff}10%{stroke:#0400ff}20%{stroke:#9d00ff}30%{stroke:#ff00c8}40%{stroke:#ff002f}50%{stroke:#ff6a00}60%{stroke:#fbff00}70%{stroke:#62ff00}80%{stroke:#00ff37}90%{stroke:#00ffd0}100%{stroke:#0095ff}}@keyframes strokeHueColor{0%{stroke:#0095ff}10%{stroke:#0400ff}20%{stroke:#9d00ff}30%{stroke:#ff00c8}40%{stroke:#ff002f}50%{stroke:#ff6a00}60%{stroke:#fbff00}70%{stroke:#62ff00}80%{stroke:#00ff37}90%{stroke:#00ffd0}100%{stroke:#0095ff}}