@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Space+Grotesk:wght@300..700&display=swap";:root{--primary-font:"Space Grotesk";--secondary-font:"Montserrat";--tertiary-font:"Inter";--primary-color:#0f0f0f;--secondary-color:#e7e7e7;--tertiary-color:#4811ed;--quartenary-color:#ff7145;--hover3-color:#793cff}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--primary-color);scroll-behavior:smooth;width:100%;height:100%}img{object-fit:cover;width:100%;height:100%}body{cursor:none;overflow-x:hidden}body.modal-open .cursor-dot,body.modal-open .cursor-outline{display:none!important}.custom-modal-overlay,.custom-modal-content{cursor:auto}#preloader{z-index:9999;background:#0b0b0b;justify-content:center;align-items:center;min-height:100vh;display:flex;position:fixed;inset:0}.loader{justify-content:center;align-items:center;width:100%;display:flex}.loader svg{align-content:center;width:200px}.cursor-dot,.cursor-outline{pointer-events:none;z-index:9999;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-dot{background:var(--tertiary-color);border-radius:50%;width:6px;height:6px}.cursor-outline{border:2px solid var(--tertiary-color);border-radius:50%;width:30px;height:30px;transition:transform .15s}.cursor-outline.hover{background:#4811ed1a;transform:translate(-50%,-50%)scale(1.5)}.section{background-color:var(--primary-color);width:100%;min-height:100vh;padding:2rem;position:relative}::-webkit-scrollbar-track{background-color:#3d3d3dc0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:linear-gradient(#0000,#0000) padding-box padding-box,linear-gradient(90deg,#4811ed,#793cff) border-box}.home-wrapper{background:radial-gradient(at 70%,#2a2a2a 0%,#1a1a1a 30%,#0d0d0d 60%,#000 100%),radial-gradient(at 30% 60%,#1e1e1e 0%,#0000 50%);width:100%;min-height:100vh}.home-wrapper:after{content:"";opacity:.08;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px;position:absolute;inset:0}header{justify-content:center;align-items:center;width:100%;min-height:10vh;display:flex}.primary-btn.header{min-width:100px}.navbar{z-index:99;justify-content:center;align-items:center;gap:180px;margin-top:20px;display:flex;position:fixed}.navbar ul{gap:20px;list-style:none;display:flex}.ancora{color:#e7e7e7b9;font-family:var(--secondary-font);font-size:16px;font-style:normal;line-height:12px;text-decoration:none;position:relative}.ancora:before{content:"";background:linear-gradient(#0000,#0000) padding-box padding-box,linear-gradient(90deg,#4811ed,#793cff) border-box;width:0;height:2px;transition:all .5s;position:absolute;top:110%;bottom:0;left:0}.ancora:hover{color:var(--secondary-color)}.ancora:hover:before{width:100%}.primary-btn.header{color:var(--secondary-color);padding:4px 28px}.logo{color:var(--secondary-color)}#home{text-align:center;align-content:center;width:100%;min-height:90vh;margin:0 auto}.home-container{flex-direction:column;gap:20px;display:flex}.location-tag i{color:#e7e7e7b9}.location-tag p{color:#e7e7e7b9;font-family:var(--secondary-font);white-space:nowrap;border-right:2px solid #e7e7e7b9;width:0;animation:4s steps(20,end) forwards typing,.75s step-end infinite blink;display:inline-block;overflow:hidden}@keyframes typing{0%{width:0}to{width:15ch}}@keyframes blink{0%,to{border-color:#0000}50%{border-color:#e7e7e7b9}}.title-container{color:var(--secondary-color);flex-direction:column;gap:5px;display:flex}.title-container p{width:600px;font-size:14px;font-family:var(--tertiary-font);color:#e7e7e7b9;margin:5px auto 0;font-style:normal;font-weight:500;line-height:18px}.title-container h1{font-size:4rem;font-weight:600;line-height:1;font-family:var(--secondary-font)}.title-container h2{font-size:2rem;font-weight:600;line-height:1;font-family:var(--secondary-font)}.home-button{justify-content:center;align-items:center;gap:10px;margin-top:30px;display:flex}.primary-btn{min-width:200px;font-family:var(--primary-font);color:var(--secondary-color);background:linear-gradient(90deg,#5827eb,#874fff);border:none;border-radius:10px;justify-content:center;align-items:center;padding:8px 28px;font-size:16px;font-style:normal;font-weight:400;line-height:24px;text-decoration:none;transition:all .3s;display:inline-flex;position:relative}.primary-btn:hover{background:linear-gradient(90deg,#5827eba9,#874fffaf);transform:scale(.99)}.primary-btn.outline{background:0 0;border:1px solid #7a3cff9f}.primary-btn.outline:hover{background-color:var(--hover3-color);transform:scale(.99)}.stacks-container{border:5px solid #f000;width:60%;margin:0 auto;display:flex;position:relative;overflow-x:auto}.stacks-container::-webkit-scrollbar{display:none}.stacks-track{justify-content:center;align-items:center;gap:10px;padding-right:10px;animation:20s linear infinite spin;display:flex}.stack{text-align:center;border-radius:.2em;flex:0 0 1em;place-content:center;align-items:center;gap:5px;height:20px;padding:10px;font-size:3rem;display:flex}.stack p{font-size:16px;font-weight:600;line-height:1;font-family:var(--secondary-font);color:var(--secondary-color)}.stack i{color:var(--secondary-color);font-size:16px}@keyframes spin{0%{translate:0}to{translate:-100%}}.section.services{justify-content:center;align-items:center;display:flex}.services-header{position:absolute;top:20%;left:50%;transform:translate(-50%,-50%)}.services-header .title.services{will-change:transform, opacity;transform:translateY(40px)}.title{text-align:center;opacity:1;font-size:3rem;font-weight:600;line-height:1;font-family:var(--secondary-font);color:var(--secondary-color);position:relative}.card-container{perspective:1000px;will-change:width;width:75%;display:flex;position:relative;transform:translateY(40px)}.card{aspect-ratio:5/7;transform-style:preserve-3d;transform-origin:top;color:var(--secondary-color);flex:1;position:relative}#card-1{border-radius:20px 0 0 20px}#card-3{border-radius:0 20px 20px 0}.card-front,.card-back{backface-visibility:hidden;border-radius:inherit;width:100%;height:100%;position:absolute;overflow:hidden}.card-back{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;transform:rotateY(180deg)}.card-back span{color:#151519bb;font-size:1rem;font-family:var(--secondary-font);position:absolute;top:2rem;left:2rem}.card-back p{font-size:18px;font-weight:500;line-height:20px;font-family:var(--primary-font);width:200px;margin:0 auto}.card-back .description{opacity:.7;width:200px;font-size:10px;font-weight:400;line-height:12px;position:absolute;bottom:5%}#card-1 .card-back{background-color:var(--secondary-color);color:var(--primary-color)}#card-2 .card-back{background-color:var(--hover3-color)}#card-3 .card-back{background-color:var(--quartenary-color)}#about{color:var(--secondary-color);justify-content:center;align-items:start;display:flex}.section.about{min-height:70vh}.about-container{justify-content:space-around;align-items:start;width:100%;display:flex}.about-title-container p{opacity:.7;font-size:18px;font-weight:400;font-family:var(--primary-font)}.about-text-container{width:550px}.about-text-container h1{font-size:2rem;font-weight:600;line-height:1;font-family:var(--secondary-font);color:var(--secondary-color)}.about-text-container p{opacity:.7;font-size:18px;font-weight:400;line-height:20px;font-family:var(--primary-font);margin-top:20px}#contact{color:var(--secondary-color);flex-direction:column;align-items:center;gap:8rem;display:flex}.section.contact{min-height:50vh}.socials-container{justify-content:space-around;width:100%;display:flex}.socials-container a{color:var(--secondary-color);text-decoration:none}.socials{flex-direction:column;align-items:center;gap:10px;transition:all .3s;display:flex}.socials p{opacity:1;font-size:20px;font-weight:500;line-height:20px;font-family:var(--primary-font);margin-top:0}.socials .subtitle-socials{opacity:.7;font-size:16px;font-weight:400;line-height:20px;font-family:var(--primary-font)}.socials i{color:var(--hover3-color);font-size:40px}.socials:hover{transform:scale(1.05)}.footer{border-top:1px solid var(--secondary-color);width:100%;min-height:10vh;color:var(--secondary-color);background-color:var(--primary-color);justify-content:space-between;align-items:center;display:flex}.footer img{width:100px;margin-right:28px}.footer p{opacity:1;font-size:12px;font-weight:500;line-height:20px;font-family:var(--primary-font);margin-left:28px}#projects{color:var(--secondary-color);flex-direction:column;justify-content:center;align-items:center;gap:100px;text-decoration:none;display:flex}.projects-card-container a{color:var(--secondary-color);text-decoration:none}.projects-card-container{grid-column-gap:0px;grid-row-gap:80px;grid-template-rows:1fr;grid-template-columns:repeat(3,1fr);justify-items:center;width:100%;display:grid}.projects-card{cursor:pointer;border-bottom:2px solid;border-image:linear-gradient(90deg,#4811ed,#793cff) 1;border-radius:10px;max-width:400px;max-height:350px;transition:all .3s;position:relative;overflow:hidden}.projects-card p{font-family:var(--secondary-font);opacity:.7;text-align:center;margin-top:10px;margin-bottom:10px;font-size:12px}.projects-card:before{content:"";transition:all .3s;position:absolute}.projects-card:hover{transform:scale(1.02)}.img-card{object-fit:cover;opacity:.4;height:250px;transition:all .3s}.projects-card:hover .img-card{opacity:1}.icons-container{text-align:center;width:100%;transition:all .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-130%)}.icons-container p{font-family:var(--primary-font);opacity:1;margin-bottom:0;font-size:12px;font-weight:500}.icons{justify-content:center;align-items:center;gap:8px;display:flex}.projects-card:hover .icons-container{opacity:.5;transform:translate(-50%,-80%)}#menu-toggle{display:none}.hamburger{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:32px;height:32px;display:none}.hamburger span{background-color:var(--secondary-color);border-radius:999px;width:100%;height:2px;transition:transform .3s,opacity .3s,background-color .3s;display:block}.logo-mobile{display:none}@media (width<=1000px){.cursor-dot,.cursor-outline{display:none}.navbar{gap:80px}h1{font-size:3rem}#home h1,#projects h1{width:100%}#services{flex-direction:column;height:max-content;padding:4rem 2rem}.services-header{margin-bottom:4rem;position:relative;top:0;left:0;transform:none}.services-header h1{opacity:1}.card-container{flex-direction:column;gap:2rem;width:100%}.card{width:100%;max-width:400px;margin:0 auto;border-radius:20px!important}#card-1,#card-2,#card-3,.card-back{transform:none}.section{min-height:auto;padding:4rem 2rem}.section.about{min-height:40vh}.projects-card-container{grid-template-columns:repeat(1,1fr)}}@media (width<=768px){.services-header .title.services{will-change:unset;transform:none}.title-container p{width:350px;font-size:12px}.title-container h1{font-size:2.6rem}.title-container h2{font-size:1.4rem}.primary-btn{min-width:150px}.section{min-height:auto;padding:3rem 1rem}.project-card{aspect-ratio:auto;min-width:100%;height:auto}.project-card img{object-fit:contain;width:100%;height:auto}.project-info h3{font-size:.7rem}.project-info p{opacity:.8;font-size:10px}.title{font-size:1.6rem;line-height:1.2}.about-container{flex-direction:column;align-items:center;gap:2rem}.about-text-container{text-align:center;width:100%}.about-text-container h1{font-size:1.3rem}.about-text-container p{font-size:14px}.socials-container{flex-direction:column;gap:2rem}.socials{gap:4px}.socials p{font-size:16px}.socials .subtitle-socials{font-size:12px}.socials i{font-size:34px}.footer p{width:50%;font-size:10px}}@media (width<=480px){.logo-mobile{z-index:1000;display:flex;position:absolute;top:26px;left:28px}#menu-toggle{display:none}.hamburger{z-index:1000;display:flex;position:absolute;top:22px;right:28px}.navbar{z-index:999;background:#171717;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:30px;width:70%;height:60vh;transition:right .4s;display:flex;position:fixed;top:36px;right:-100%;box-shadow:-10px 0 40px #000c}.logo{display:none}.navbar ul{flex-direction:column;gap:30px}#menu-toggle:checked~.navbar{right:0}#menu-toggle:checked+.hamburger span:first-child{transform:rotate(55deg)translateY(14px)}#menu-toggle:checked+.hamburger span:nth-child(2){opacity:0}#menu-toggle:checked+.hamburger span:nth-child(3){transform:rotate(-50deg)translateY(-14px)}}.custom-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;background-color:#000000bf;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.custom-modal-content{background-color:var(--secondary-color,#fff);border-radius:12px;width:90%;max-width:800px;padding:24px;animation:.3s ease-in-out fadeIn;position:relative;box-shadow:0 4px 30px #0000004d}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid #d1d1d1;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;display:flex}.modal-header h2{color:var(--primary-color,#111);font-family:var(--secondary-font,sans-serif);margin:0;font-size:1.5rem}.close-btn{cursor:pointer;color:var(--primary-color,#111);background:0 0;border:none;font-size:2rem;transition:color .3s}.close-btn:hover{color:var(--tertiary-color,#4811ed)}.modal-body{flex-direction:column;gap:20px;display:flex}.video-wrapper video{background-color:#000;border-radius:8px;outline:none;width:100%;max-height:400px}.no-video{width:100%;height:250px;color:var(--secondary-color,#fff);font-family:var(--primary-font,sans-serif);background-color:#222;border-radius:8px;justify-content:center;align-items:center;display:flex}.modal-description{color:var(--primary-color,#111);font-family:var(--primary-font,sans-serif);opacity:.9;font-size:1rem;line-height:1.5}.modal-footer{border-top:1px solid #d1d1d1;justify-content:flex-end;margin-top:25px;padding-top:15px;display:flex}.modal-footer .primary-btn{color:#fff;cursor:pointer}
