:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box;font-family:system-ui,Segoe UI,Roboto,sans-serif;font-size:16px}body,h1,h2,h3,h4,h5,h6,p{margin:0}a{text-decoration:underline}a:hover{text-decoration:none}#root{flex-direction:column;align-items:center;min-height:100svh;display:flex;overflow-x:hidden}.app{flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.app .background{z-index:-1;background:radial-gradient(circle var(--gradient-radius,800px) at var(--gradient-x,50%) var(--gradient-y,0%), #fff, #000a1f);position:absolute;inset:0}.app header{justify-content:space-between;align-items:center;gap:20px;width:calc(100% - 20px);max-width:1154px;height:111px;padding:0 62px;display:flex}.app header .item{align-items:center;gap:20px;display:flex}.app header .item .logo{height:45px}.app header .item .description{color:#164f72;text-wrap:nowrap;flex:1 1 0;font-weight:400}.app header .item .client-acceptance{color:#fff}.app header .item .login{color:#164f72;text-transform:uppercase;cursor:pointer;background:#fff;border:none;border-radius:5px;padding:.2rem 1.25rem .3rem;font-weight:700;transition:all .2s ease-in-out}.app header .item .login:hover{opacity:.7;cursor:pointer}@media (width<=860px){.app header{padding:0 0 0 15px}.app header .client-acceptance{display:none}}@media (width<=420px){.app header{flex-direction:column;gap:15px;height:auto;padding:20px 0}.app header .item{flex-direction:column;flex:1;gap:0}.app header .item .description{font-size:.9rem}}.app section{filter:drop-shadow(0 4px 2px #0003);flex-direction:column;align-items:center;width:calc(100% - 20px);max-width:1154px;margin-bottom:-10px;display:flex;position:relative}.app section.about:before{content:"";z-index:-1;background-color:#fff;border-radius:10px 10px 0 0;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 10' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L32,0 L32,10 C24,10 24,0 16,0 C8,0 8,10 0,10 Z'/%3E%3C/svg%3E");mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 10' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L32,0 L32,10 C24,10 24,0 16,0 C8,0 8,10 0,10 Z'/%3E%3C/svg%3E");-webkit-mask-position:top,bottom;mask-position:top,bottom;-webkit-mask-size:100% calc(100% - 10px),32px 10px;mask-size:100% calc(100% - 10px),32px 10px;-webkit-mask-repeat:no-repeat,repeat-x;mask-repeat:no-repeat,repeat-x;-webkit-mask-composite:source-over;mask-composite:add;-webkit-mask-source-type:alpha,alpha;mask-mode:alpha,alpha}.app section.about{z-index:5;align-items:center;gap:20px;padding:80px 0}.app section.about .snake-canvas{z-index:-1;pointer-events:none;width:100%;height:100%;display:none;position:absolute;inset:0}.app section.about .banner{width:100%;padding:5px;display:flex}.app section.about .banner h2{flex:1 0 0;justify-content:center;align-items:center;gap:5px;height:54px;display:flex;position:relative}.app section.about .banner h2.design:before{content:"";z-index:-1;background-color:#f9c521;border-radius:5px 0 0 5px;position:absolute;inset:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4000 20'%3E%3Cpath d='M0,0 L3990,0 L4000,10 L3990,20 L0,20 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4000 20'%3E%3Cpath d='M0,0 L3990,0 L4000,10 L3990,20 L0,20 Z'/%3E%3C/svg%3E");-webkit-mask-position:100%;mask-position:100%;-webkit-mask-size:auto 100%;mask-size:auto 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.app section.about .banner h2.design{z-index:3;margin-right:-26px}.app section.about .banner h2.code:before{content:"";z-index:-1;background-color:#42e286;position:absolute;inset:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4000 20'%3E%3Cpath d='M0,0 L3990,0 L4000,10 L3990,20 L0,20 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4000 20'%3E%3Cpath d='M0,0 L3990,0 L4000,10 L3990,20 L0,20 Z'/%3E%3C/svg%3E");-webkit-mask-position:100%;mask-position:100%;-webkit-mask-size:auto 100%;mask-size:auto 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.app section.about .banner h2.code{z-index:2;margin-right:-26px}.app section.about .banner h2.updates{z-index:1;background-color:#21c0f7;border-radius:0 5px 5px 0}.app section.about .banner h2.updates svg{margin:5px 0 0 3px}.app section.about .banner h2 .text-scale{display:inline-block}.app section.about .banner h2 .text-scale span{text-transform:uppercase;transform-origin:0;color:#000;opacity:.7;padding-bottom:4px;font-size:43.2px;font-weight:900;display:inline-block;transform:scaleX(.6)}.app section.about .banner h2 svg{opacity:.7;height:50%}@media (width>=860px) and (width<=1070px){.app section.about .banner h2{height:45px}}@media (width>=860px) and (width<=983px){.app section.about .banner h2{height:40px}.app section.about .banner h2 .text-scale span{font-size:32px}}.app section.about .descriptions{display:flex}.app section.about .descriptions .description{flex-direction:column;flex:1 0 0;align-items:center;gap:25px;display:flex}.app section.about .descriptions .description.design button{color:#000;text-transform:uppercase;cursor:pointer;background:#f9c521;border:none;border-radius:5px;padding:.2rem 1.25rem .3rem;font-weight:700;transition:all .2s ease-in-out}.app section.about .descriptions .description.design button:hover{opacity:.7;cursor:pointer}.app section.about .descriptions .description.code button{color:#000;text-transform:uppercase;cursor:pointer;background:#42e286;border:none;border-radius:5px;padding:.2rem 1.25rem .3rem;font-weight:700;transition:all .2s ease-in-out}.app section.about .descriptions .description.code button:hover{opacity:.7;cursor:pointer}.app section.about .descriptions .description.updates button{color:#000;text-transform:uppercase;cursor:pointer;background:#21c0f7;border:none;border-radius:5px;padding:.2rem 1.25rem .3rem;font-weight:700;transition:all .2s ease-in-out}.app section.about .descriptions .description.updates button:hover{opacity:.7;cursor:pointer}.app section.about .descriptions .description button{width:50%}@media (width<=1136px){.app section.about .descriptions .description button{width:70%}}.app section.about .descriptions .description p{text-align:center;color:#164f72;padding:0 20px;font-size:.9rem}@media (width<=1136px){.app section.about .descriptions .description p{font-size:.75rem}}@media (width<=969px){.app section.about .descriptions .description p{font-size:.65rem}}@media (width<=860px){.app section.about{flex-direction:row;justify-content:center;padding:20px}.app section.about:before{z-index:-3;background-image:linear-gradient(#fff 0% 33.333%,#fff 33.333% 66.667%,#fff 66.667% 100%)}.app section.about:after{content:"";z-index:-2;background-image:linear-gradient(#fdecb673 0% 33.333%,#c7f6db73 33.333% 66.667%,#b5eafc73 66.667% 100%);position:absolute;inset:0;-webkit-mask-image:radial-gradient(2.5px,#000 99%,#0000 100%);mask-image:radial-gradient(2.5px,#000 99%,#0000 100%);-webkit-mask-size:8px 8px;mask-size:8px 8px;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.app section.about .snake-canvas{display:block}.app section.about .banner{flex-direction:column;width:75px}.app section.about .banner h2{flex-direction:column;gap:3px;min-height:350px}.app section.about .banner h2 .text-scale{justify-content:center;align-items:center;display:flex;transform:rotate(90deg)}.app section.about .banner h2 .text-scale span{transform-origin:50%;padding-bottom:4px;font-size:43.2px;transform:scaleX(.5)}.app section.about .banner h2 svg{width:100%;height:20px}.app section.about .banner h2.design:before{content:"";z-index:-1;background-color:#f9c521;border-radius:5px 5px 0 0;position:absolute;inset:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4000'%3E%3Cpath d='M0,0 L0,3990 L10,4000 L20,3990 L20,0 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4000'%3E%3Cpath d='M0,0 L0,3990 L10,4000 L20,3990 L20,0 Z'/%3E%3C/svg%3E");-webkit-mask-position:bottom;mask-position:bottom;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.app section.about .banner h2.design{margin-right:0}.app section.about .banner h2.code:before{content:"";z-index:-1;background-color:#42e286;position:absolute;inset:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4000'%3E%3Cpath d='M0,0 L0,3990 L10,4000 L20,3990 L20,0 Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4000'%3E%3Cpath d='M0,0 L0,3990 L10,4000 L20,3990 L20,0 Z'/%3E%3C/svg%3E");-webkit-mask-position:bottom;mask-position:bottom;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.app section.about .banner h2.code{margin-top:-32px;margin-right:0}.app section.about .banner h2.updates{border-radius:0 0 5px 5px;margin-top:-32px}.app section.about .banner h2.updates svg{margin:0}.app section.about .descriptions{flex-direction:column;align-self:stretch;max-width:400px}.app section.about .descriptions .description{justify-content:center}.app section.about .descriptions .description button{width:auto}.app section.about .descriptions .description p{padding:0 5px;font-size:1rem;font-weight:700}}@media (width<=420px){.app section.about{gap:0;padding:5px 20px 15px 5px}}.app section.projects:before{content:"";z-index:-1;background-color:#fff9f3;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 10' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L32,0 L32,10 C24,10 24,0 16,0 C8,0 8,10 0,10 Z'/%3E%3C/svg%3E");mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 10' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L32,0 L32,10 C24,10 24,0 16,0 C8,0 8,10 0,10 Z'/%3E%3C/svg%3E");-webkit-mask-position:top,bottom;mask-position:top,bottom;-webkit-mask-size:100% calc(100% - 10px),32px 10px;mask-size:100% calc(100% - 10px),32px 10px;-webkit-mask-repeat:no-repeat,repeat-x;mask-repeat:no-repeat,repeat-x;-webkit-mask-composite:source-over;mask-composite:add;-webkit-mask-source-type:alpha,alpha;mask-mode:alpha,alpha}.app section.projects{z-index:4;padding:80px 0}.app section.projects h2{color:#164f72;text-transform:uppercase;margin-right:48px;font-size:2rem}.app section.projects h3{color:#164f72;font-weight:400}.app section.projects .features-checklist{width:650px;margin:20px 0;display:flex}.app section.projects .features-checklist span{text-align:center;color:#164f72;flex:1 0 0}.app section.projects .screenshots{text-align:center;position:relative}.app section.projects .screenshots img{filter:drop-shadow(0 4px 2px #0003);width:33%;position:relative}.app section.projects .screenshots img.screenshot-1{z-index:2;margin-right:-5%;top:27px;transform:rotate(-5deg)}.app section.projects .screenshots img.screenshot-2{z-index:1}.app section.projects .screenshots img.screenshot-3{z-index:2;margin-left:-5%;top:25px;transform:rotate(5deg)}.app section.projects .description{align-items:center;gap:20px;width:600px;margin-top:40px;display:flex}.app section.projects .description img{height:80px}.app section.projects .description p{color:#164f72;text-align:justify}.app section.projects .features{flex-direction:column;gap:30px;width:600px;margin-top:20px;display:flex}.app section.projects .features .feature{align-items:start;display:flex}.app section.projects .features .feature span{padding:0 15px}.app section.projects .features .feature p{color:#164f72;text-align:justify;margin:0}@media (width<=860px){.app section.projects .features-checklist{width:100%}.app section.projects .features-checklist span{font-size:.9rem}.app section.projects .description{width:90%;margin-top:60px}.app section.projects .description img{height:55px}.app section.projects .description p{font-size:.9rem}.app section.projects .features{width:90%}.app section.projects .features p{font-size:.9rem}}@media (width<=420px){.app section.projects h2{margin-right:38px;font-size:1.6rem}.app section.projects h3{font-size:.9rem}.app section.projects .features-checklist{justify-content:center;gap:10px;width:100%}.app section.projects .features-checklist span{flex:none;font-size:.75rem}.app section.projects .screenshots{width:130%}}.app section.pricing:before{content:"";z-index:-1;background-color:#504266;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 10' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L32,0 L32,10 C24,10 24,0 16,0 C8,0 8,10 0,10 Z'/%3E%3C/svg%3E");mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 10' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L32,0 L32,10 C24,10 24,0 16,0 C8,0 8,10 0,10 Z'/%3E%3C/svg%3E");-webkit-mask-position:top,bottom;mask-position:top,bottom;-webkit-mask-size:100% calc(100% - 10px),32px 10px;mask-size:100% calc(100% - 10px),32px 10px;-webkit-mask-repeat:no-repeat,repeat-x;mask-repeat:no-repeat,repeat-x;-webkit-mask-composite:source-over;mask-composite:add;-webkit-mask-source-type:alpha,alpha;mask-mode:alpha,alpha}.app section.pricing{color:#fff9f3;z-index:3;align-items:center;gap:30px;padding:80px 0 140px}.app section.pricing h2{text-transform:uppercase;font-size:2rem}.app section.pricing .options{gap:20px;width:1000px;display:flex}.app section.pricing .options .option{text-align:center;flex-direction:column;flex:1 0 0;align-items:center;gap:25px;display:flex}.app section.pricing .options .option .option-title{border-bottom:1px solid #fff9f3;width:60%;padding-bottom:10px;font-weight:400}.app section.pricing .options .option .price h4{font-size:24px;font-weight:400}.app section.pricing .options .option .price h4 strong{font-size:30px}.app section.pricing .options .option .price p{font-size:1rem}@media (width<=1136px){.app section.pricing .options{width:100%}}@media (width<=860px){.app section.pricing{padding-bottom:80px}.app section.pricing .options{flex-direction:column;gap:40px}.app section.pricing .options .option .price p{width:100%}.app section.pricing .options .option p{width:90%;font-size:.9rem}}.app section.bio{z-index:2;background-color:#fff9f3;border-radius:0 0 10px 10px;padding:80px 0}.app section.bio .bio-content{color:#164f72;align-items:center;gap:20px;width:650px;display:flex}.app section.bio .bio-content img{filter:drop-shadow(0 4px 2px #0003);border-radius:10px;height:130px}.app section.bio .bio-content .bio-text{flex-direction:column;gap:15px;display:flex}.app section.bio .bio-content .bio-text p a{color:#164f72;align-items:center;gap:10px;display:flex}.app section.bio .bio-content .bio-text p a svg{height:25px}@media (width<=860px){.app section.bio .bio-content{text-align:center;flex-direction:column;width:90%;font-size:.9rem}.app section.bio .bio-content .bio-text{align-items:center}}.app section.contact{color:#164f72;z-index:1;background-color:#fff;border-radius:0 0 10px 10px;gap:10px;padding:80px 0}.app section.contact h2{text-transform:uppercase;font-size:2rem}.app section.contact form{flex-direction:column;align-items:center;gap:20px;width:650px;margin-top:20px;display:flex}.app section.contact form input,.app section.contact form textarea{color:#164f72;filter:drop-shadow(0 4px 2px #0003);background:#fff9f3;border:none;border-radius:5px;width:100%;padding:10px}.app section.contact form textarea{height:200px}.app section.contact form .field-alt{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.app section.contact form button{color:#fff;text-transform:uppercase;cursor:pointer;background:#164f72;border:none;border-radius:5px;padding:.2rem 1.25rem .3rem;font-weight:700;transition:all .2s ease-in-out}.app section.contact form button:hover{opacity:.7;cursor:pointer}.app section.contact form button{width:200px;margin-top:15px;font-size:1.2rem}@media (width<=860px){.app section.contact p,.app section.contact form{width:90%}}.app footer{color:#fff;padding:20px 0 15px}@media (width<=420px){.app footer .copyright{font-size:.7rem}}.app .overlay{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#fff9;width:100vw;min-height:100vh;padding:5px;transition:opacity .3s;display:flex;position:fixed;inset:0;overflow-y:auto}.app .overlay--open{opacity:1;pointer-events:auto}.app .overlay--open .overlay__content{transform:scale(1)}.app .overlay__content{text-align:center;cursor:default;width:calc(100% - 40px);max-width:600px;margin:auto;padding:30px 0;transition:transform .3s}.app .overlay__content p{color:#164f72;text-align:left;margin-bottom:1rem}.app .overlay__content ul{color:#164f72;margin:0;padding:0 0 0 20px}.app .overlay__content ul li{text-align:left;padding-bottom:10px}.app .overlay__content form{text-align:left;flex-direction:column;gap:1rem;display:flex}.app .overlay__content form label{color:#164f72;flex-direction:column;gap:.3rem;font-weight:700;display:flex}.app .overlay__content form input{border:1px solid #164f72;border-radius:5px;padding:.5rem .75rem;font-size:1rem}.app .overlay__content button{color:#fff;text-transform:uppercase;cursor:pointer;background:#164f72;border:none;border-radius:5px;padding:.2rem 1.25rem .3rem;font-weight:700;transition:all .2s ease-in-out}.app .overlay__content button:hover{opacity:.7;cursor:pointer}.app .overlay__content button{margin-top:1rem}
