@keyframes orbit{0%{transform:rotate(0) translate(.75rem) rotate(0)}to{transform:rotate(360deg) translate(.75rem) rotate(-360deg)}}@keyframes background-position{to{background-position:300% center}}:root{font-size:19px;--max-width:1200px;--max-width-narrow:700px;--page-padding:2rem;--color-orange:#E76F51;--color-white:white;--color-black:black;--color-home-bg:#264653;--color-home-fg:#2A9D8F;--color-home-title:#e9c461;--color-home-emphasis:rgba(255,255,255,.75);--color-services-bg:white;--color-services-fg:black;--color-portfolio-bg:#1e1e1e;--color-contact-bg:#223138;--color-contact-fg:white;--color-contact-input-border:#1a272c;--color-contact-input-bg:#263841;--color-contact-label-fg:rgba(214,223,243,.8);--color-contact-label-strong-fg:rgb(214,223,243);--color-contact-privacy-fg:rgba(214,223,243,.5);--color-contact-privacy-strong-fg:rgba(214,223,243,.7);--color-privacy-bg:white;--color-privacy-fg:black}*{padding:0;margin:0;box-sizing:border-box}a{text-decoration:none;color:inherit}ul,ol{list-style-position:inside}body{font-family:Rubik,sans-serif;font-size:1rem;overflow:hidden;line-height:1.2}nav{position:fixed;left:0;right:0;display:flex;justify-content:flex-end;max-width:calc(var(--max-width) + var(--page-padding) * 2);margin:0 auto;padding:0 var(--page-padding);z-index:100}nav a{padding:.5em 1rem;line-height:2rem;transform:translate(1rem);transition:color .1s ease-out .15s}nav a.logo{margin-right:auto;transform:translate(-1rem);font-weight:700;color:var(--color-orange)}main{position:fixed;top:0;left:0;right:0;bottom:0;padding:0 var(--page-padding);overflow-x:hidden;overflow-y:auto}main.leaving{z-index:0}main:before{content:"";position:sticky;top:0;display:block;max-width:initial;height:3rem;margin:0 calc(-1 * var(--page-padding));border-bottom:1px solid rgba(0,0,0,.15);background-color:inherit;transition:opacity .3s ease-out;z-index:100;opacity:0}main.scrolled:before{opacity:.9}main>*{display:block;max-width:var(--max-width);margin:0 auto}main h1{margin:3rem auto 6rem;text-align:center;font-size:4rem}main h2{margin:2rem auto;font-size:3rem}main p,main ul,main ol{margin:2rem auto;font-size:1.4rem}main p.large{font-size:1.7rem}footer{position:sticky;top:calc(100vh - 2rem);width:100%;margin-top:15rem}footer p{margin:0;line-height:2rem;font-size:1rem}footer a+a{position:absolute;right:0}footer a:hover{text-decoration:underline}main.home+nav{color:var(--color-white)}main.home+nav .logo{color:transparent;cursor:default}main.home footer{color:var(--color-home-emphasis)}main.home{background-color:var(--color-home-bg);color:var(--color-home-fg)}main.home h1{margin-bottom:5rem;font-size:7rem;color:var(--color-home-title);background:linear-gradient(-60deg,#e76f51,12.5%,#f4a261,25%,#e9c461,37.5%,#2a9d8f,62.5%,#e9c461,75%,#f4a261,87.5%,#e76f51);background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:rgba(255,255,255,.2);animation:background-position 17.5s linear infinite}main.home h2 strong{color:var(--color-home-emphasis)}main.services+nav{color:var(--color-services-fg)}main.services{background-color:var(--color-services-bg);color:var(--color-services-fg)}main.services h2{margin-top:6rem;margin-bottom:3rem}main.services .little-boxes{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding-top:1rem}main.services .little-boxes .box{position:relative;padding:1rem 6.85rem 2rem 1rem;box-shadow:0 1px 5px #dfdfdf;border-radius:20px;overflow:hidden}main.services .little-boxes .box p{margin:0;font-size:1rem}main.services .little-boxes .box p.heading{margin-bottom:1rem;font-size:2rem;font-weight:600}main.services .little-boxes .box svg{position:absolute;max-width:6.5rem;max-height:6.5rem;right:.5rem;top:50%;transform:translateY(-50%)}main.services .little-boxes .box.custom svg{padding:.05rem}main.services .little-boxes .box.performance svg{padding:.25rem}main.services .little-boxes .box.technology svg{padding:.25rem}main.services .little-boxes .box.secure svg{padding:.25rem}main.services .little-boxes .box.love svg{padding:.4rem}main.services .technologies{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem}main.services .technologies p.heading{font-weight:600}main.services .technologies p.subheading{margin:0;line-height:1.5rem;font-weight:600;font-size:1.2rem}main.services .technologies a{display:flex;align-items:center;margin:.7rem 0;font-size:1.5rem}main.services .technologies a .icon{flex-shrink:0;display:flex;justify-content:center;align-items:center;width:3.7rem;height:3.7rem;margin-right:1.5rem;border:1px solid rgba(0,0,0,.15);border-radius:40px}main.services .technologies a .icon svg{max-width:100%;max-height:100%;padding:.526rem;filter:grayscale(1);transition:transform .2s ease;overflow:visible}main.services .technologies a.github .icon svg{opacity:.6}main.services .technologies a:hover .icon{border-color:transparent}main.services .technologies a:hover .icon svg{opacity:1;filter:grayscale(0);transform:scale(1.2)}main.services .technologies a:hover .label{opacity:.7}main.portfolio+nav{color:var(--color-white)}main.portfolio{background-color:var(--color-portfolio-bg);color:var(--color-white)}main.contact+nav{color:var(--color-contact-fg)}main.contact footer{color:var(--color-contact-privacy-fg)}main.contact{background-color:var(--color-contact-bg);color:var(--color-contact-fg)}main.contact>*{max-width:var(--max-width-narrow)}main.contact h2{font-size:2rem}main.contact form{text-align:center}main.contact label{display:block;padding:.25rem;font-size:.9rem;text-align:left;text-transform:uppercase;color:var(--color-contact-label-fg);user-select:none}main.contact .text-input input,main.contact .text-input textarea,main.contact .checkbox-input input,main.contact .checkbox-input textarea{width:100%;height:2.75rem;padding:.25em .5rem;outline:none;font-family:inherit;font-size:1rem;color:var(--color-contact-input-fg)}main.contact .text-input textarea,main.contact .checkbox-input textarea{min-height:10.5rem;resize:vertical}main.contact .text-input .checkbox,main.contact .checkbox-input .checkbox{width:1.75rem;height:1.75rem}main.contact .text-input input,main.contact .text-input textarea,main.contact .text-input .checkbox,main.contact .checkbox-input input,main.contact .checkbox-input textarea,main.contact .checkbox-input .checkbox{border:2px solid var(--color-contact-input-border);border-radius:2px;background-color:var(--color-contact-input-bg);transition:background-color .1s ease}main.contact .text-input:active input,main.contact .text-input:active textarea,main.contact .text-input:active .checkbox,main.contact .checkbox-input:active input,main.contact .checkbox-input:active textarea,main.contact .checkbox-input:active .checkbox{border-color:transparent}main.contact .text-input input:focus,main.contact .text-input textarea:focus,main.contact .text-input:active .checkbox,main.contact .checkbox-input input:focus,main.contact .checkbox-input textarea:focus,main.contact .checkbox-input:active .checkbox{background-color:#324d5b}main.contact .text-input.disabled input,main.contact .text-input.disabled textarea,main.contact .text-input.disabled .checkbox,main.contact .checkbox-input.disabled input,main.contact .checkbox-input.disabled textarea,main.contact .checkbox-input.disabled .checkbox{background-color:transparent;border-color:var(--color-contact-input-border);pointer-events:none}main.contact .text-input{position:relative;margin-bottom:2rem}main.contact .text-input .error-message{position:absolute;top:2rem;right:.425rem;padding:.25rem .5rem;line-height:1.4rem;font-size:.8rem;border-radius:3px;background-color:#3c3f46;color:var(--color-orange);pointer-events:none}main.contact .text-input .placeholder{position:absolute;bottom:0;margin:.5rem;text-align:left;font-size:.8rem;font-style:italic;opacity:.7;color:var(--color-contact-privacy-fg);pointer-events:none}main.contact .checkbox-input{display:flex;margin-top:.3rem}main.contact .checkbox-input .checkbox{position:relative;flex-shrink:0}main.contact .checkbox-input .checkbox svg{position:absolute;top:.5px;left:1px;width:100%;height:100%;transform:scale(1.5)}main.contact .checkbox-input .checkbox svg path{stroke:var(--color-contact-fg);stroke-linecap:round;stroke-width:4}main.contact .checkbox-input .label{padding-left:1.25rem;line-height:1.75rem;cursor:default}main.contact .services{display:flex;border:2px solid var(--color-contact-input-border);border-radius:2px;text-align:left}main.contact .services .column{width:50%;padding:1rem}main.contact .services .column p{margin:0;font-size:1rem;color:var(--color-contact-label-strong-fg);user-select:none}main.contact .services .column p.heading{margin-bottom:1rem}main.contact .privacy{font-size:.9rem;color:var(--color-contact-privacy-fg)}main.contact .privacy a{color:var(--color-contact-privacy-strong-fg)}main.contact .privacy a:hover{text-decoration:underline}main.contact .submit{display:inline-block;padding:.6rem 3rem;line-height:1;border:2px solid rgba(255,255,255,.3);border-radius:50px;background-color:var(--color-orange);color:#fff;transition:padding .1s ease-out;cursor:pointer}main.contact .submit .label{font-size:1rem;font-weight:600}main.contact .submit .loader{display:block;width:.5rem;height:.5rem;margin:.25rem;background:white;border-radius:50px;animation:orbit .9s linear infinite}main.contact .submit:active{padding:.6rem 3.2rem}main.contact .submit.loading{padding:.6rem;cursor:wait}main.contact .submit.loading,main.contact .submit:hover{border-color:#ffffff26}main.contact .message-sent{margin-top:4rem;padding:1rem;border-radius:15px;background-color:var(--color-home-bg);color:var(--color-home-fg)}main.contact .message-sent p.heading{margin:0;font-size:1.8rem;font-weight:600}main.contact .snackbar{position:fixed;left:0;bottom:1rem;max-width:calc(100vw - 2rem);padding:1rem;transform:translate(calc(50vw - 50%));text-align:center;border-radius:10px;background-color:#000000d9;z-index:1}main.contact .snackbar p{margin:0}main.privacy+nav{color:var(--color-privacy-fg)}main.privacy{background-color:var(--color-privacy-bg);color:var(--color-privacy-fg)}main.privacy a{color:var(--color-orange)}main.privacy h2{font-size:2.5rem}main.privacy p{text-align:justify}@media (max-width: 1300px){:root{font-size:17px}}@media (max-width: 1150px){:root{font-size:15px}}@media (max-width: 800px){main.home h1{font-size:5rem}main.home h2{font-size:2.5rem}main.services .little-boxes{grid-template-columns:1fr}main.services .technologies{grid-template-columns:1fr 1fr}main.services .technologies a .icon svg{filter:none}}@media (max-width: 500px){:root{--page-padding:1rem}main.home h1{font-size:4rem}main.home h2{font-size:2rem}main.services .technologies{grid-template-columns:1fr}main.services .technologies a{border:1px solid rgba(0,0,0,.05);border-left:none;border-radius:40px}}@media (max-width: 420px){nav{justify-content:center;padding:0}nav .logo{display:none}nav a{flex-grow:1;text-align:center;transform:none}footer .copyright{display:none}main.home h1{font-size:3rem}main.services .little-boxes .box{padding-right:1rem}main.services .little-boxes .box svg{max-width:8rem;max-height:8rem;opacity:.2}main.contact .services{flex-direction:column}main.contact .services .column{width:100%}}
