@import "https://fonts.googleapis.com/css2?family=Exo:ital,wght@0,100..900;1,100..900&family=Quicksand:wght@300..700&display=swap";html{background-color:#333}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Quicksand,sans-serif;overflow-x:hidden}.container{color:#fff;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.container .column{padding:120px 40px;position:relative}@media only screen and (width<=600px){.container .column{padding:60px 30px}}.container .column{width:100%;max-width:1080px;overflow:hidden}.container .column h3{text-transform:uppercase;margin:0;padding:0 0 40px;font-family:Exo,sans-serif;font-size:22px}.container .column p{font-size:16px}*{border:0;margin:0;padding:0}p:not(:last-child){margin-bottom:15px}.header{background-image:linear-gradient(42deg,#ff0457,#12002f);height:100vh;min-height:777px}@media only screen and (width<=600px){.header{height:100svh;min-height:100svh}}.header article{color:#fff;text-shadow:0 0 40px #00000080;z-index:1}.header article .logo{opacity:0;width:100px;height:100px;margin:-20px 30px 75px -10px}@media only screen and (width<=600px){.header article .logo{margin-bottom:100px}}.header article h1{letter-spacing:-.5px;z-index:1;-webkit-user-select:none;user-select:none;opacity:0;margin-bottom:10px;font-family:Exo,sans-serif;font-size:5rem;font-weight:500;position:relative}@media only screen and (width<=600px){.header article h1{margin:0 0 15px;font-size:2.8rem;line-height:2.8rem}}.header article h2{letter-spacing:-.5px;z-index:1;-webkit-user-select:none;user-select:none;opacity:0;margin-bottom:0;font-family:Exo,sans-serif;font-size:3rem;font-weight:300;position:relative}@media only screen and (width<=600px){.header article h2{margin:0 0 10px;font-size:1.75rem;line-height:2rem}}.header article p{-webkit-user-select:none;user-select:none;opacity:0;margin-bottom:100px;font-size:30px}@media only screen and (width<=600px){.header article p{max-width:80%;margin-bottom:65px;font-size:18px}}.header article .header-buttons{opacity:0}.header article a{background-color:#fff;padding:15px 50px}@media only screen and (width<=600px){.header article a{padding:20px;display:block}}.header article a{color:#000;border:1px solid #fff;border-bottom-color:#cf0;border-radius:5px;font-weight:700;text-decoration:none;transition:all .2s}.header article a svg{width:10px;max-width:10px;margin-left:5px;transition:all .2s}.header article a:hover{color:#fff;background-color:#000;border:1px solid #000;padding:15px 80px;text-decoration:none}@media only screen and (width<=600px){.header article a:hover{padding:20px}}.header article a:hover svg{fill:#fff}.three-background{z-index:0;width:100%;height:100%;position:absolute;top:0;left:0;overflow-y:hidden}.three-background canvas{width:100%;height:100%;min-height:100%;position:absolute;top:0;left:0}.logo svg{max-width:100px;overflow:visible}.logo svg line{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10}.logo svg path{fill:none;stroke:#fff;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10}.about{background-color:#333}.about .column{z-index:1;display:inline-flex}@media only screen and (width<=777px){.about .column{flex-direction:column}}.about .column .skills{opacity:0;flex:1}.about .column .skills .skill-group{margin-bottom:35px}.about .column .skills .skill-group:last-child{margin-bottom:0}.about .column .skills .skill-category{text-transform:uppercase;letter-spacing:1px;color:#cf0;opacity:0;margin-bottom:15px;font-size:14px;font-weight:600}.about .column .about-text{opacity:0;flex:2;position:relative}.about .column .about-text .geometric-me{z-index:-1;opacity:0;width:42px;position:absolute;top:0;left:0}.about .column .about-text a{color:#fff;border-bottom:0 solid #fff;font-weight:700;text-decoration:none;transition:all .2s}.about .column .about-text a:hover{color:#cf0;border-bottom:1px solid #cf0}.about .column .about-text p{line-height:20px}.about .column article{flex:1}@media only screen and (width<=777px){.about .column article{min-width:100%}}.about .column article .me{max-width:60px;margin-bottom:5px;margin-right:10px}.about .column article .skill-list{margin-bottom:60px;list-style-type:none}.about .column article .skill-list li{opacity:0;margin-bottom:30px;position:relative}.about .column article .skill-list li .skill-bar-back{z-index:0;transform-origin:0;background-color:#000;border-radius:7px;width:100%;height:15px;position:absolute;top:25px;left:0;box-shadow:5px 5px 10px #27003e66}.about .column article .skill-list li .skill-bar-front{z-index:1;transform-origin:0;border-radius:7px;max-width:100%;height:15px;position:absolute;top:25px;left:0}.about .column article .skill-list .skill-level-1 .skill-bar-front{width:10%}.about .column article .skill-list .skill-level-2 .skill-bar-front{width:20%}.about .column article .skill-list .skill-level-3 .skill-bar-front{width:30%}.about .column article .skill-list .skill-level-4 .skill-bar-front{width:40%}.about .column article .skill-list .skill-level-5 .skill-bar-front{width:50%}.about .column article .skill-list .skill-level-6 .skill-bar-front{width:60%}.about .column article .skill-list .skill-level-7 .skill-bar-front{width:70%}.about .column article .skill-list .skill-level-8 .skill-bar-front{width:80%}.about .column article .skill-list .skill-level-9 .skill-bar-front{width:90%}.about .column article .skill-list .skill-level-10 .skill-bar-front{width:100%}@media only screen and (width>=777px){.about .column article:last-child{border-left:2px dashed #000;padding-left:75px}}.about .column article:not(:last-child){margin-right:80px}@media only screen and (width<=777px){.about .column article:not(:last-child){margin-bottom:40px;margin-right:0}}.about canvas{z-index:0;width:100%;height:100%;min-height:100%;position:absolute;top:0;left:0}.header-icon{vertical-align:middle;justify-content:center;align-items:center;margin-left:8px;display:inline-flex;position:relative;top:-.1em}.header-icon svg{display:block;overflow:visible}.header-icon .icon-square-outer{fill:none;stroke:#cf0;stroke-width:1.2px;opacity:.5;transform-origin:8px 8px;animation:12s linear infinite rotate}.header-icon .icon-square-middle{fill:none;stroke:#cf0;stroke-width:1.4px;opacity:.7;transform-origin:8px 8px;animation:8s linear infinite rotateReverse}.header-icon .icon-square-inner{fill:none;stroke:#cf0;stroke-width:1.2px;opacity:.9;transform-origin:8px 8px;animation:5s linear infinite rotate}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotateReverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.logo-grid{opacity:0;overflow:hidden}.logo-grid .column{margin-bottom:-50px;padding-top:0}@media only screen and (width<=777px){.logo-grid .column{margin-bottom:-25px}}.logo-grid .column h3{text-transform:uppercase;margin:0;padding:0 0 30px;font-size:22px}.logo-grid .column .logo-grid-container{grid-gap:2rem;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));display:grid}.logo-grid .column .logo-grid-container .logo-grid-item{justify-content:center;align-items:center;width:100px;height:100px;display:flex}.logo-grid .column .logo-grid-container .logo-grid-item img{object-fit:contain;max-width:100%}@media only screen and (width<=777px){.logo-grid .column .logo-grid-container{grid-gap:2rem;grid-template-columns:repeat(auto-fill,minmax(50px,1fr))}.logo-grid .column .logo-grid-container .logo-grid-item{width:50px;height:50px}}.hexagon-loader{z-index:0;justify-content:center;align-items:center;width:150px;display:flex;position:relative}.hexagon-loader svg{width:100%;overflow:visible}.hexagon-loader svg polygon{fill:none;stroke:#cf0;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10}.hexagon-glow{content:"";filter:blur(42px);z-index:1;mix-blend-mode:screen;background:linear-gradient(42deg,#5100c6,#ff0073,#ffd600);border-radius:50%;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.project-loader{z-index:100;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-grid{flex-wrap:wrap;gap:10px;min-width:100%;list-style-type:none;transition:opacity .3s;display:flex;position:relative}.project-grid li{width:calc(25% - 7.5px);height:220px;display:inline-flex;position:relative}@media only screen and (width<=777px){.project-grid li{width:calc(50% - 5px)}}@media only screen and (width<=600px){.project-grid li{height:150px}}.project-grid li{cursor:pointer;transform-origin:bottom;background-image:linear-gradient(42deg,#cf0,#f0c);justify-content:center;align-items:center;overflow:hidden}.project-grid li h4{opacity:0;z-index:1;border-bottom:10px solid #fff;padding-bottom:10px;transition:all .2s}.project-grid li .background{z-index:0;background-position:50%;background-size:cover;width:100%;height:100%;transition:all .2s;display:block;position:absolute;top:0;left:0}.project-grid li.grid-filler{cursor:wait;pointer-events:none;flex:1}.project-grid li.grid-filler .filler-layer{width:100%;height:100%;position:absolute;top:0;left:0}.project-grid li.grid-filler .filler-layer--top{opacity:0}.project-grid li.grid-filler .filler-me{z-index:1;opacity:0;pointer-events:none;width:30px;position:absolute;top:0;left:0}.project-grid li:hover h4,.project-grid li.active h4{opacity:1}.project-grid li:hover .background,.project-grid li.active .background{opacity:0;background-position:0 50px}.project-detail{width:100%;position:relative}.project-detail .project-content{opacity:0}.project-detail .project-content.hidden{visibility:hidden;opacity:0!important}.project-detail .project-content .project-description,.project-detail .project-content .gallery-main,.project-detail .project-content .thumbnail,.project-detail .project-header h2,.project-detail .project-header .tools,.project-detail .project-header .project-controls{opacity:0}.project-detail .project-loader{z-index:100;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media only screen and (width<=1024px){.project-detail .project-loader{top:200px;transform:translate(-50%)}}.project-detail .project-header{border-bottom:1px dashed #d4ff0080;justify-content:space-between;align-items:flex-start;margin-bottom:40px;padding-bottom:20px;display:flex}@media only screen and (width<=777px){.project-detail .project-header{flex-direction:column;align-items:flex-start;margin-bottom:30px}}.project-detail .project-header .project-meta{flex:1}.project-detail .project-header .project-meta h2{text-shadow:0 0 40px #00000080;font-family:Roboto,sans-serif;font-size:48px;font-weight:bolder}@media only screen and (width<=777px){.project-detail .project-header .project-meta h2{font-size:32px}}.project-detail .project-header .project-meta h2{text-transform:uppercase;color:#fafafa;margin:0 0 15px;line-height:1.2}.project-detail .project-header .project-meta .tools{color:#ccc;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 0 40px #00000080;margin:0;padding:0;font-size:11px;font-weight:700;list-style-type:none}.project-detail .project-header .project-meta .tools li{display:inline}.project-detail .project-header .project-meta .tools li:not(:last-child):after{content:" • ";color:#d4ff00;opacity:.7;margin:0 8px}.project-detail .project-header .project-controls{opacity:.8;gap:15px;display:flex}@media only screen and (width<=777px){.project-detail .project-header .project-controls{margin-top:20px}}.project-detail .project-header .project-controls div{cursor:pointer;height:30px;transition:all .3s}@media only screen and (width<=777px){.project-detail .project-header .project-controls div{height:40px}}.project-detail .project-header .project-controls div img{filter:brightness(0)invert();height:100%}.project-detail .project-header .project-controls div:hover{opacity:1;transform:scale(1.1)}.project-detail .project-content{grid-template-columns:1fr 1.5fr;gap:60px;margin-bottom:40px;display:grid}@media only screen and (width<=1024px){.project-detail .project-content{grid-template-columns:1fr;gap:40px}}.project-detail .project-content .project-description p{color:#fafafa;text-shadow:0 0 40px #00000080;margin-bottom:20px;font-size:16px;line-height:1.8}.project-detail .project-content .project-description p:last-child{margin-bottom:0}.project-detail .project-content .project-description p a{color:#d4ff00;background:linear-gradient(90deg,#d4ff001a,#d4ff0026);border-bottom:2px solid #d4ff004d;border-radius:3px;padding:4px 10px;font-weight:700;text-decoration:none;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);display:inline-block;position:relative;overflow:hidden}.project-detail .project-content .project-description p a:before{content:"";background:linear-gradient(90deg,#d4ff00,#cf0,#d4ff00);width:0;height:2px;transition:width .4s cubic-bezier(.68,-.55,.265,1.55);position:absolute;bottom:-2px;left:0;box-shadow:0 0 8px #d4ff0099}.project-detail .project-content .project-description p a:after{content:"→";margin-left:4px;transition:transform .3s cubic-bezier(.68,-.55,.265,1.55);display:inline-block}.project-detail .project-content .project-description p a:hover{color:#fff;background:linear-gradient(90deg,#d4ff0033,#d4ff0040);transform:translateY(-1px);box-shadow:0 4px 12px #d4ff004d}.project-detail .project-content .project-description p a:hover:before{width:100%}.project-detail .project-content .project-description p a:hover:after{transform:translate(3px)}.project-detail .project-content .project-description p a:active{transform:translateY(0)}.project-detail .project-content .project-gallery{position:relative}.project-detail .project-content .project-gallery .gallery-main{background:#0003;border-radius:4px;width:100%;margin-bottom:20px;position:relative;overflow:hidden}.project-detail .project-content .project-gallery .gallery-main img{width:100%;height:auto;display:block}.project-detail .project-content .project-gallery .gallery-main .gallery-counter{color:#fff;letter-spacing:1px;background:#000000b3;border-radius:20px;padding:8px 16px;font-size:12px;font-weight:700;position:absolute;bottom:15px;right:15px}.project-detail .project-content .project-gallery .gallery-main .gallery-magnify{cursor:pointer;opacity:0;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex;position:absolute;top:15px;right:15px}@media only screen and (width<=1024px){.project-detail .project-content .project-gallery .gallery-main .gallery-magnify{opacity:1}}.project-detail .project-content .project-gallery .gallery-main .gallery-magnify svg{color:#fff;width:20px;height:20px}.project-detail .project-content .project-gallery .gallery-main .gallery-magnify:hover{background:#000000e6;transform:scale(1.1)}.project-detail .project-content .project-gallery .gallery-main:hover .gallery-magnify{opacity:1}.project-detail .project-content .project-gallery .gallery-nav{display:none}.project-detail .project-content .project-gallery .gallery-thumbnails{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-bottom:20px;display:grid}@media only screen and (width<=777px){.project-detail .project-content .project-gallery .gallery-thumbnails{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}}.project-detail .project-content .project-gallery .gallery-thumbnails .thumbnail{cursor:pointer;background:#0003;border:3px solid #0000;border-radius:4px;width:100%;padding-bottom:75%;position:relative;overflow:hidden}.project-detail .project-content .project-gallery .gallery-thumbnails .thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform .3s;position:absolute;top:0;left:0}.project-detail .project-content .project-gallery .gallery-thumbnails .thumbnail:hover{border-color:#d4ff0080}.project-detail .project-content .project-gallery .gallery-thumbnails .thumbnail:hover img{transform:scale(1.1)}.project-detail .project-content .project-gallery .gallery-thumbnails .thumbnail.active{border-color:#d4ff00}.project-detail .project-content .project-gallery .gallery-thumbnails .thumbnail.active img{opacity:1}.project-detail .gallery-lightbox{z-index:1000;cursor:pointer;background:0 0;justify-content:center;align-items:center;animation:.4s forwards lightboxFadeIn;display:flex;position:fixed;inset:0}.project-detail .gallery-lightbox .lightbox-content{cursor:default;opacity:0;max-width:90vw;max-height:90vh;animation:.4s .1s forwards lightboxZoomIn;position:relative;transform:scale(.9)}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-previous,.project-detail .gallery-lightbox .lightbox-content .lightbox-image-current{border-radius:4px;max-width:100%;max-height:90vh;display:block;box-shadow:0 20px 60px #00000080}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-previous{position:absolute;top:0;left:0}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-previous.forward{z-index:1;animation:.4s cubic-bezier(.68,-.55,.265,1.55) forwards imageZoomOutBlur}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-previous.backward{z-index:3;animation:.4s cubic-bezier(.68,-.55,.265,1.55) forwards imageZoomOutToBack}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-current{position:relative}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-current.transitioning.forward{z-index:2;animation:.4s cubic-bezier(.68,-.55,.265,1.55) forwards imageZoomInFromBlur}.project-detail .gallery-lightbox .lightbox-content .lightbox-image-current.transitioning.backward{z-index:1;animation:.4s cubic-bezier(.68,-.55,.265,1.55) forwards imageZoomInToFront}.project-detail .gallery-lightbox .lightbox-content .lightbox-close{cursor:pointer;opacity:0;background:0 0;border:none;width:40px;height:40px;transition:all .3s;animation:.4s .3s forwards slideDown;position:absolute;top:-50px;right:0}.project-detail .gallery-lightbox .lightbox-content .lightbox-close img{filter:brightness(0)invert();width:100%;height:100%}.project-detail .gallery-lightbox .lightbox-content .lightbox-close:hover{transform:scale(1.2)rotate(90deg)}.project-detail .gallery-lightbox .lightbox-content .lightbox-prev,.project-detail .gallery-lightbox .lightbox-content .lightbox-next{cursor:pointer;opacity:1;z-index:10;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:background .3s,transform .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.project-detail .gallery-lightbox .lightbox-content .lightbox-prev img,.project-detail .gallery-lightbox .lightbox-content .lightbox-next img{filter:brightness(0)invert();height:24px}.project-detail .gallery-lightbox .lightbox-content .lightbox-prev:hover,.project-detail .gallery-lightbox .lightbox-content .lightbox-next:hover{background:#ffffff4d;transform:translateY(-50%)scale(1.15)}.project-detail .gallery-lightbox .lightbox-content .lightbox-prev:active,.project-detail .gallery-lightbox .lightbox-content .lightbox-next:active{transform:translateY(-50%)scale(.95)}.project-detail .gallery-lightbox .lightbox-content .lightbox-prev{left:-80px}@media only screen and (width<=777px){.project-detail .gallery-lightbox .lightbox-content .lightbox-prev{left:10px}}.project-detail .gallery-lightbox .lightbox-content .lightbox-next{right:-80px}@media only screen and (width<=777px){.project-detail .gallery-lightbox .lightbox-content .lightbox-next{right:10px}}.project-detail .gallery-lightbox .lightbox-content .lightbox-counter{color:#fff;letter-spacing:1px;opacity:0;font-size:14px;font-weight:700;animation:.4s .3s forwards slideUp;position:absolute;bottom:-50px;left:50%;transform:translate(-50%)}.project-detail .project-pagination{text-align:right;opacity:.5;color:#fafafa;text-transform:uppercase;letter-spacing:1px;padding:20px 0;font-size:14px;font-weight:700}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes expand{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes lightboxFadeIn{0%{background:0 0}to{background:#000000f2}}@keyframes lightboxZoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes imageZoomOutBlur{0%{opacity:1;filter:blur();transform:scale(1)}to{opacity:0;filter:blur(15px);transform:scale(1.3)}}@keyframes imageZoomInFromBlur{0%{opacity:0;filter:blur(15px);transform:scale(.5)}to{opacity:1;filter:blur();transform:scale(1)}}@keyframes imageZoomOutToBack{0%{opacity:1;filter:blur();transform:scale(1)}to{opacity:0;filter:blur(15px);transform:scale(.5)}}@keyframes imageZoomInToFront{0%{opacity:0;filter:blur(15px);transform:scale(1.3)}to{opacity:1;filter:blur();transform:scale(1)}}.projects{opacity:0;background-color:#454545;background-image:linear-gradient(42deg,#e3e3e3,#9c9c9c);transition:background-color .6s}.projects .column{z-index:1;flex-direction:column;width:100%;height:100%;display:flex}.projects .column h2{font-weight:400}.projects .column h3,.projects .column h2{color:#fafafa}.projects .project-three-container{z-index:0;opacity:0;background-color:#0000;width:100%;height:100%;position:absolute;top:0;left:0}.projects .project-three-container canvas{width:100%;height:100%;position:absolute;top:0;left:0}.projects.loading{background-image:none}.projects.project-open{background-color:#2a1a3d;background-image:none}.contact-footer{opacity:0}.contact-footer .column{z-index:1;justify-content:space-between;display:flex;position:relative}@media only screen and (width<=777px){.contact-footer .column{flex-direction:column}}.contact-footer .column p{margin-bottom:10px}.contact-footer .column p .phone-link{color:#fff;border-bottom:0 solid #fff;text-decoration:none;transition:all .1s}.contact-footer .column p .email-link{color:#fff;border-bottom:0 solid #fff;padding-bottom:0;font-weight:bolder;transition:all .1s}.contact-footer .column p a:hover{border-bottom:3px solid #fff;padding-bottom:3px;text-decoration:none}.contact-footer .column ul{list-style-type:none}@media only screen and (width<=777px){.contact-footer .column ul{margin-top:10px}}.contact-footer .column ul li{margin:0;padding:0;display:inline}.contact-footer .column ul li a img{width:42px;max-width:42px;height:42px;transition:all .2s}.contact-footer .column ul li a:hover img{transform:scale(1.2)}.contact-footer .column ul li:not(:last-child){margin-right:5px}.contact-footer .footer-left .copyright{margin-top:90px;font-size:9px}@media only screen and (width<=777px){.contact-footer .footer-left .copyright{display:none}}.contact-footer .footer-right .copyright{margin-top:90px;font-size:9px;display:none}@media only screen and (width<=777px){.contact-footer .footer-right .copyright{display:block}}.animated-particles{pointer-events:none;-webkit-user-select:none;user-select:none;mix-blend-mode:hard-light;z-index:0;width:100vw;height:100%;position:absolute;top:0;left:0}.animated-particles .bubble{width:200px;height:200px;position:absolute;top:0;left:0}@media only screen and (width<=777px){.animated-particles .bubble{width:100px;height:100px}}.animated-particles .bubble{transform-origin:0 0;background:linear-gradient(45deg,#cf0,#0cf) 0 0/contain;border-radius:50%}
