@import url(https://fonts.googleapis.com/css2?family=MedievalSharp&display=swap);@import url(https://fonts.googleapis.com/css2?family=Winky+Rough&display=swap);@import url(https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:MedievalSharp,cursive;margin:0}.App{background-color:#111827;color:#fff;font-family:sans-serif}.main-content{position:relative;z-index:10}.home-section{background-color:#000;contain:layout style paint;font-family:Press Start\ 2P,monospace;height:103vh;overflow:hidden;will-change:auto}.home-section,.zoom-container{position:relative;transform:translateZ(0)}.zoom-container{-webkit-font-smoothing:subpixel-antialiased;contain:layout;transform-style:preserve-3d;will-change:transform}.background-video,.zoom-container{backface-visibility:hidden;height:100%;width:100%}.background-video{contain:strict;filter:blur(0) brightness(1);left:0;object-fit:cover;padding-top:-20px;position:absolute;top:0;transform:scale(.93) translateZ(0);will-change:filter;z-index:1}.background-video.blurred{filter:blur(.8px) brightness(.75)}.text-container{height:100%;left:0;pointer-events:none;top:0;transform:translateZ(0);width:100%;z-index:2}.intro-text,.text-container{contain:layout style;position:absolute}.intro-text{backface-visibility:hidden;color:#e0cba8;filter:blur(0) opacity(1);font-family:Press Start\ 2P,monospace;font-weight:700;text-shadow:5px 5px 10px #000,3px 3px 8px #000000e6,2px 2px 6px #000000f2,1px 1px 4px #000000e6,0 0 15px #000c,0 0 25px #0009;transform:translateX(100vw) translateZ(0);transform-origin:center center;transition:transform .8s cubic-bezier(.25,.46,.45,.94);will-change:filter,transform}.intro-text.blurred{filter:blur(.6px) opacity(.6)}.intro-text.text-1{bottom:28%;font-size:2.8rem;left:14rem}.intro-text.text-2{bottom:18%;font-size:4rem;left:14rem;transition:transform .8s cubic-bezier(.25,.46,.45,.94);transition-delay:.3s}.intro-text.visible{transform:translateX(0) translateZ(0)}.buttons-container{contain:layout;height:100%;left:0;position:absolute;top:0;transform:translateZ(0);width:100%;z-index:3}.button-wrapper{backface-visibility:hidden;contain:layout style;opacity:0;position:absolute;transform:translate(-50%,-50%) translateZ(0);transform-origin:center center;transition:opacity .4s ease-in-out;will-change:transform,filter,opacity}.button-wrapper.visible{opacity:1}.button-wrapper.zoomed{transform:translate(-50%,-50%) scale(1.15) translateZ(0)}.button-wrapper.blurred{filter:blur(.6px) opacity(.5)}.button-label{backface-visibility:hidden;color:#e8e5d8;contain:layout style;font-family:Press Start\ 2P,monospace;font-size:1.8rem;left:50%;padding:0 1rem;pointer-events:none;position:absolute;text-shadow:6px 6px 12px #000,4px 4px 10px #000000f2,3px 3px 8px #000000e6,2px 2px 6px #000000d9,1px 1px 4px #000c,0 0 20px #000000e6,0 0 30px #000000b3,0 0 40px #00000080;top:-2.2rem;transform:translateX(-50%) translateZ(0);transform-origin:center center;transition:transform .04s cubic-bezier(.23,1,.32,1);white-space:nowrap;will-change:transform;z-index:4}.button-label.scaled{transform:translateX(-50%) scale(1.08) translateZ(0)}.x-button{-webkit-tap-highlight-color:transparent;backface-visibility:hidden;background:#0000;border:none;border-radius:50%;contain:layout style;cursor:pointer;padding:1.6rem;transform:translateZ(0);transform-origin:center center;transition:transform .04s cubic-bezier(.23,1,.32,1);user-select:none;-webkit-user-select:none;will-change:transform}.x-button:hover{transform:scale(1.06) translateZ(0)}.x-button img{-webkit-user-drag:none;user-drag:none;backface-visibility:hidden;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5));height:96px;pointer-events:none;transform:translateZ(0);transition:filter .06s cubic-bezier(.23,1,.32,1);width:96px;will-change:filter}.x-button:hover img{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 18px rgba(224,203,168,.9)) drop-shadow(0 0 30px rgba(224,203,168,.5))}.vignette-overlay{background:radial-gradient(circle at 50% 50%,#0000 0,#0000 8%,#00000008 16%,#00000014 24%,#00000026 32%,#00000040 40%,#00000059 48%,#00000073 56%,#0000008c 64%,#000000a6 72%,#000000bf 80%,#000000d1 88%,#000000e0 96%,#000000e6 100%);background:radial-gradient(circle at var(--center-x,50%) var(--center-y,50%),#0000 0,#0000 8%,#00000008 16%,#00000014 24%,#00000026 32%,#00000040 40%,#00000059 48%,#00000073 56%,#0000008c 64%,#000000a6 72%,#000000bf 80%,#000000d1 88%,#000000e0 96%,#000000e6 100%);contain:strict;height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform:translateZ(0);width:100%;will-change:opacity;z-index:1.5}.vignette-overlay.active{opacity:1}.demo-section{align-items:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);display:flex;justify-content:center;min-height:100vh}.demo-section:nth-child(2n){background:linear-gradient(135deg,#2d2d2d,#1a1a1a)}.demo-section h2{color:#e0cba8;font-family:Winky Rough,cursive;font-size:3rem;font-weight:700;text-shadow:2px 2px 4px #00000080}*{backface-visibility:hidden;perspective:1000}@media (max-width:768px){.intro-text.text-1{bottom:75%;font-size:1.8rem;line-height:1.3}.intro-text.text-1,.intro-text.text-2{left:50%;text-align:center;transform:translateX(-50%);width:85%}.intro-text.text-2{bottom:60%;font-size:2.4rem;line-height:1.2}.intro-text.visible{transform:translateX(-50%) translateZ(0)}.button-wrapper{position:absolute!important}.button-wrapper:first-child{left:50%!important;top:70%!important}.button-wrapper:nth-child(2){left:25%!important;top:82%!important}.button-wrapper:nth-child(3){left:75%!important;top:82%!important}.button-label{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;border-radius:4px;font-size:.9rem;padding:.2rem .4rem;top:-2.5rem;white-space:nowrap}.x-button{-webkit-tap-highlight-color:rgba(224,203,168,.3);min-height:72px;min-width:72px;padding:1.2rem}.x-button img{height:72px;width:72px}.zoom-container{overflow:hidden}.vignette-overlay{background:radial-gradient(circle at 50% 50%,#0000 0,#0000 12%,#00000005 20%,#0000000f 28%,#0000001f 36%,#0003 44%,#0000004d 52%,#0006 60%,#00000080 68%,#0009 76%,#000000b3 84%,#000000c7 92%,#000000d9 100%);background:radial-gradient(circle at var(--center-x,50%) var(--center-y,50%),#0000 0,#0000 12%,#00000005 20%,#0000000f 28%,#0000001f 36%,#0003 44%,#0000004d 52%,#0006 60%,#00000080 68%,#0009 76%,#000000b3 84%,#000000c7 92%,#000000d9 100%)}}@media (max-width:480px){.intro-text.text-1{bottom:77%;font-size:1.4rem;width:90%}.intro-text.text-2{bottom:62%;font-size:2rem;width:90%}.button-wrapper:first-child{top:72%!important}.button-wrapper:nth-child(2){left:20%!important;top:84%!important}.button-wrapper:nth-child(3){left:80%!important;top:84%!important}.button-label{font-size:.8rem;padding:.15rem .3rem;top:-2.2rem}.x-button{min-height:64px;min-width:64px;padding:1rem}.x-button img{height:64px;width:64px}}@media (max-width:360px){.intro-text.text-1{bottom:79%;font-size:1.2rem;width:95%}.intro-text.text-2{bottom:64%;font-size:1.7rem;width:95%}.button-label{font-size:.7rem;top:-2rem}.x-button{min-height:60px;min-width:60px}.x-button img{height:60px;width:60px}}@media (hover:none) and (pointer:coarse){.x-button:hover{transform:scale(1) translateZ(0)}.x-button:hover img{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5))}.x-button:active{transform:scale(.95) translateZ(0)}.x-button:active img{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5)) drop-shadow(0 0 12px rgba(224,203,168,.7))}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.x-button img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.demo-container{align-items:center;background:linear-gradient(180deg,#000,#3b5b36);contain:layout style paint;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative;transform:translateZ(0);will-change:auto}.bg-layer{backface-visibility:hidden;-webkit-backface-visibility:hidden;contain:layout style paint;height:100%;left:0;opacity:1;position:absolute;top:0;transform:translateZ(0);-webkit-transform:translateZ(0);transform-origin:0 0;transform-style:preserve-3d;width:100%;will-change:transform}.bg-layer img{-webkit-font-smoothing:subpixel-antialiased;-ms-interpolation-mode:nearest-neighbor;backface-visibility:hidden;display:block;filter:none;height:100%;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;max-width:none;object-fit:cover;object-position:center center;transform:translateZ(0);transform-style:preserve-3d;width:100%}.demo-container.mobile .bg-layer img{-ms-interpolation-mode:auto;image-rendering:auto;-webkit-image-rendering:auto}.bg-static{z-index:1}.bg-bottom{z-index:2}.bg-bottom,.bg-left{-webkit-transform:translateZ(0);transition:transform .8s cubic-bezier(.165,.84,.44,1)}.bg-left{z-index:3}.bg-right{-webkit-transform:translateZ(0);transition:transform .8s cubic-bezier(.165,.84,.44,1);z-index:4}.demo-container.mobile .bg-bottom,.demo-container.mobile .bg-left,.demo-container.mobile .bg-right{transition:transform 1s cubic-bezier(.165,.84,.44,1)}.video-wrapper{--hover-scale:1;align-items:center;backface-visibility:hidden;contain:layout style;display:flex;justify-content:center;max-width:800px;position:relative;transform:translateZ(0);transition:transform .4s cubic-bezier(.165,.84,.44,1);width:100%;will-change:transform;z-index:15}.video-wrapper:hover{--hover-scale:1.08;transform:translate3d(0,-15px,0) scale(1.08)}.demo-container.mobile .video-wrapper{max-width:90vw}.demo-container.mobile .video-wrapper:hover{--hover-scale:1.04;transform:translate3d(0,-8px,0) scale(1.04)}.video-container{background:#0003;border:4px solid #0000;border-radius:1.1rem;box-shadow:0 25px 100px #000c;contain:layout style;height:0;overflow:hidden;padding-bottom:56.25%;position:relative;transform:translateZ(0);transition:all .4s cubic-bezier(.165,.84,.44,1);width:100%;will-change:box-shadow,border}.video-container:hover{border-color:#e0cba8;box-shadow:0 20px 45px #00000080}.demo-container.mobile .video-container{border-radius:.8rem;border-width:3px;box-shadow:0 15px 60px #0009}.demo-container.mobile .video-container:hover{box-shadow:0 18px 40px #00000080}.youtube-video{backface-visibility:hidden;border-radius:1.1rem;contain:layout style;display:block;height:100%;left:0;opacity:.75;position:absolute;top:0;transform:translateZ(0);transition:opacity .4s cubic-bezier(.165,.84,.44,1);width:100%;will-change:opacity}.youtube-video:hover{opacity:1}.demo-container.mobile .youtube-video{border-radius:.8rem;opacity:.85}.demo-container.mobile .youtube-video:hover{opacity:1}.forest-floor{background:linear-gradient(0deg,#1b2611b3,#0000);bottom:0;contain:layout style;height:150px;left:0;pointer-events:none;position:absolute;right:0;transform:translateZ(0);z-index:8}.demo-container.mobile .forest-floor{height:100px}.atmosphere-overlay{background:radial-gradient(ellipse at center,#0000 0,#0000001a 100%);bottom:0;z-index:1}.atmosphere-overlay,.top-overlay{contain:layout style;left:0;pointer-events:none;position:absolute;right:0;top:0;transform:translateZ(0)}.top-overlay{background:linear-gradient(180deg,#000,#0000);height:190px;z-index:20}.demo-container.mobile .top-overlay{height:100px}.demo-text{backface-visibility:hidden;color:#e0cba8;contain:layout style;font-family:Press Start\ 2P,monospace;font-size:3.8rem;left:50%;opacity:1;pointer-events:none;position:absolute;text-align:center;text-shadow:2px 2px 4px #000000b3;top:22%;transform:translate3d(-50%,-50%,0);transition:transform .8s cubic-bezier(.165,.84,.44,1);-webkit-user-select:none;user-select:none;white-space:nowrap;will-change:transform;z-index:16}.demo-container.mobile .demo-text{font-size:2.8rem;line-height:1.2;max-width:90vw;white-space:normal}@media (max-width:1024px){.demo-container.desktop .video-wrapper{max-width:90vw}.demo-container.desktop .demo-text{font-size:3.6rem}}@media (max-width:768px){.demo-container.desktop .video-wrapper{max-width:90vw}.demo-container.desktop{padding:1.5rem}.demo-container.desktop .demo-text{font-size:3.2rem}}@media (max-width:480px){.demo-container .video-wrapper{max-width:95vw}.demo-container{padding:1rem}.demo-container .demo-text{font-size:2.4rem;line-height:1.3;max-width:95vw}.demo-container .forest-floor,.demo-container .top-overlay{height:80px}}@media (max-width:360px){.demo-container .demo-text{font-size:2rem}}@media (max-height:500px) and (orientation:landscape){.demo-container.mobile{padding:1rem}.demo-container.mobile .demo-text{font-size:2.2rem;top:18%}.demo-container.mobile .forest-floor,.demo-container.mobile .top-overlay{height:60px}}@media (prefers-reduced-motion:reduce){.bg-bottom,.bg-left,.bg-right,.demo-text,.video-wrapper{transition:none}.video-wrapper:hover{transform:translateZ(0) scale(1)}}.about-container{align-items:center;background-image:url(/static/media/about-section-bg.8489a4c661c8564f6e0c.png);background-position:50%;background-repeat:no-repeat;background-size:cover;box-sizing:border-box;color:#e0cba8;display:flex;flex-direction:column;font-family:Press Start\ 2P,monospace;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative;width:100%}.about-container:after{background:#0009;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.gradient-bar{background:linear-gradient(180deg,#0000 0,#000c);height:100px;z-index:3}.about-container:before,.gradient-bar{bottom:0;left:0;pointer-events:none;position:absolute;right:0}.about-container:before{animation:pixelShift 20s linear infinite;background-image:radial-gradient(circle at 2px 2px,#e0cba826 1px,#0000 0);background-size:20px 20px;content:"";top:0}.character-section{align-items:center;display:flex;flex-direction:column;gap:20px;max-width:1100px;position:relative;z-index:2}.speech-section{align-items:flex-start;display:flex;gap:30px;width:100%}.section-title{font-size:3.8rem;letter-spacing:2px;margin-bottom:40px;pointer-events:none;text-align:center;-webkit-user-select:none;user-select:none;white-space:nowrap;z-index:16}.second-section{margin-top:30px}.spacer{flex-shrink:0;width:120px}.character-img{border-radius:8px;filter:contrast(1.1) saturate(1.2);flex-shrink:0;height:300px;image-rendering:pixelated;object-fit:cover;transition:all .3s ease;width:300px}.character-img:hover{transform:scale(1.05)}.speech-bubble{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#2a1f2a,#1a1020);border:3px solid #e0cba8;border-radius:20px;box-shadow:0 8px 32px #0006,inset 0 1px 0 #e0cba81a,0 0 0 1px #e0cba81a;display:flex;max-width:650px;min-height:200px;padding:32px;position:relative;transition:all .3s ease}.speech-bubble:hover{box-shadow:0 12px 40px #00000080,inset 0 1px 0 #e0cba833,0 0 0 1px #e0cba833;transform:translateY(-2px)}.speech-bubble:before{border-bottom:20px solid #0000;border-right:20px solid #e0cba8;border-top:20px solid #0000;left:-20px;top:40px;z-index:1}.speech-bubble:after,.speech-bubble:before{content:"";height:0;position:absolute;width:0}.speech-bubble:after{border-bottom:18px solid #0000;border-right:18px solid #2a1f2a;border-top:18px solid #0000;left:-15px;top:42px;z-index:2}.speech-bubble p{font-size:14px;line-height:1.6;margin:0 0 16px;text-shadow:1px 1px 2px #000000b3}.speech-bubble p:last-child{margin-bottom:0}.speech-bubble strong{color:#f0dbb8;text-shadow:0 0 8px #f0dbb84d}.speech-bubble em{color:#c8a882}.read-more-btn{background:linear-gradient(145deg,#4a3f4a,#3a2f3a);border:2px solid #e0cba8;border-radius:12px;color:#e0cba8;cursor:pointer;display:block;font-family:Press Start\ 2P,monospace;font-size:10px;margin:16px auto 0;min-width:200px;padding:16px 28px;transition:all .3s ease}.read-more-btn:hover{background:linear-gradient(145deg,#5a4f5a,#4a3f4a);transform:translateY(-1px)}.expanded-text{animation:slideIn .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#2a1f2a,#1a1020);border:3px solid #e0cba8;border-radius:20px;box-shadow:0 8px 32px #000c;left:50%;max-height:70vh;max-width:600px;overflow-y:auto;padding:24px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:10}.expanded-text p{font-size:14px;line-height:1.6;margin:0 0 16px;text-shadow:1px 1px 2px #000000b3}.expanded-text p:last-child{margin-bottom:0}.overlay{animation:fadeIn .3s ease;background:#000c;height:100%;left:0;position:fixed;top:0;width:100%;z-index:9}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-50%) translateY(-20px) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}}@media (max-width:768px){.character-section{text-align:center}.character-section,.speech-section{align-items:center;flex-direction:column;gap:20px}.spacer{display:none}.speech-bubble{max-width:90%}.speech-bubble p{font-size:12px}.speech-bubble:after,.speech-bubble:before{border:20px solid #0000;border-bottom:20px solid #e0cba8;border-top:none;left:50%;top:-20px;transform:translateX(-50%)}.speech-bubble:after{border-bottom:18px solid #2a1f2a;border-left:18px solid #0000;border-right:18px solid #0000;top:-15px}.expanded-text{max-height:80vh;padding:20px;width:95%}.expanded-text p{font-size:12px}.character-img{height:200px;width:200px}}.projects-section{background:#2d1b69;height:100vh;overflow:hidden;position:relative;width:100vw}.parallax-container{width:100%;z-index:1}.parallax-container,.parallax-layer{height:100%;left:0;pointer-events:none;position:absolute;top:0}.parallax-layer{-ms-interpolation-mode:nearest-neighbor;-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;backface-visibility:hidden;background-position:0 0;background-repeat:repeat-x;background-size:auto 100%;contain:layout style paint;filter:none;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast;transform:translateZ(0);transform-style:preserve-3d;width:1200%}.parallax-layer,.projects-container{transition:transform .8s cubic-bezier(.165,.84,.44,1);will-change:transform}.projects-container{align-items:center;contain:layout style;display:flex;gap:100px;justify-content:flex-start;left:0;padding-left:calc(50vw - 300px);pointer-events:all;position:absolute;top:50%;transform:translateY(-50%);transform-style:preserve-3d;width:auto;z-index:100}.project-wrapper{align-items:center;display:flex;flex-direction:column;flex-shrink:0;position:relative}.category-headers-container{height:60px;left:0;pointer-events:none;position:absolute;top:-130px;width:100%;z-index:50}.category-header,.category-header-item{align-items:center;display:flex;flex-direction:column;position:absolute;transform:translateX(-50%)}.category-header{left:350px;top:-80px;width:auto;z-index:50}.project-category-external{color:#e0cba8;font-family:Press Start\ 2P,monospace;font-size:26px;line-height:1.2;margin-bottom:15px;text-align:center;text-shadow:3px 3px 6px #000c;text-transform:uppercase;white-space:nowrap}.category-line-with-bends{background:#fff;box-shadow:0 0 15px #fff9;height:5px;left:50%;position:absolute;top:41px;transform:translateX(-50%);width:1310px}.category-header-item:nth-child(2) .category-line-with-bends,.category-header-item:nth-child(3) .category-line-with-bends{transform:translateX(calc(-50% + 50px))}.category-line-with-bends:after,.category-line-with-bends:before{background:#fff;box-shadow:0 0 15px #fff9;content:"";height:40px;position:absolute;width:5px}.category-line-with-bends:before{left:0;top:0}.category-line-with-bends:after{right:0;top:0}.project-title-external{color:#888;font-family:Press Start\ 2P,monospace;font-size:20px;line-height:1.2;margin-bottom:20px;max-width:600px;overflow:hidden;text-align:center;text-overflow:ellipsis;text-shadow:2px 2px 4px #000c;white-space:nowrap}.project-card{background:#2d1b69f2;border:4px solid #fff;border-radius:24px;box-shadow:0 12px 35px #0006;cursor:pointer;flex-shrink:0;height:338px;overflow:hidden;position:relative;transform-style:preserve-3d;transition:all .4s cubic-bezier(.165,.84,.44,1);width:600px;will-change:transform,box-shadow,border-color}.project-card:hover{border-color:#e0cba8;box-shadow:0 20px 45px #00000080;transform:translateY(-15px) scale(1.02)}.project-image-full{background-color:#1a1a2e;background-position:50%;background-repeat:no-repeat;background-size:cover}.project-image-full,.project-overlay{border-radius:20px;bottom:0;left:0;position:absolute;right:0;top:0}.project-overlay{align-items:center;background:#000000d9;color:#fff;display:flex;flex-direction:column;font-family:Press Start\ 2P,monospace;justify-content:center;opacity:0;padding:30px;text-align:center;transition:opacity .4s cubic-bezier(.165,.84,.44,1)}.project-card:hover .project-overlay{opacity:1}.technologies{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin-bottom:30px}.tech-item{background:#e0cba8;border:2px solid #0000;border-radius:25px;color:#2d1b69;display:inline-block;font-family:Press Start\ 2P,monospace;font-size:10px;padding:8px 15px;text-transform:uppercase;transition:all .4s cubic-bezier(.165,.84,.44,1)}.project-card:hover .tech-item{background:#fff;border-color:#e0cba8;color:#2d1b69;transform:scale(1.1)}.view-text{animation:pulse 2s infinite;color:#4ecdc4;font-family:Press Start\ 2P,monospace;font-size:12px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.section-indicator{bottom:80px;display:flex;flex-direction:row;gap:20px;left:50%;position:absolute;transform:translateX(-50%);z-index:1000}.indicator-dot{background:#ffffff4d;border:2px solid #0000;border-radius:50%;cursor:pointer;height:15px;transition:all .4s cubic-bezier(.165,.84,.44,1);width:15px}.indicator-dot.active{background:#e0cba8;border-color:#fff;box-shadow:0 0 20px #e0cba8cc;transform:scale(1.5)}.scroll-hint{animation:bounce 2s infinite;bottom:30px;color:#fffc;font-family:Press Start\ 2P,monospace;font-size:12px;left:50%;pointer-events:none;position:absolute;text-align:center;transform:translateX(-50%);z-index:1000}@keyframes bounce{0%,20%,50%,80%,to{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}.projects-section.mobile .projects-container{gap:60px;padding-left:calc(50vw - 160px)}.projects-section.mobile .project-card{height:420px;width:320px}.projects-section.mobile .project-category-external{word-wrap:break-word;font-size:14px;line-height:1.3;max-width:280px;white-space:normal}.projects-section.mobile .project-title-external{word-wrap:break-word;font-size:12px;line-height:1.4;max-width:320px;white-space:normal}.projects-section.mobile .tech-item{font-size:8px;margin:2px;padding:6px 10px}.projects-section.mobile .view-text{font-size:10px}.projects-section.mobile .scroll-hint{bottom:20px;font-size:10px}.projects-section.mobile .section-indicator{bottom:60px;gap:15px}.projects-section.mobile .indicator-dot{height:12px;width:12px}.projects-section.mobile .category-headers-container{top:-100px}.projects-section.mobile .category-line-with-bends{height:3px;top:35px;width:467px}.projects-section.mobile .category-header-item:nth-child(2) .category-line-with-bends,.projects-section.mobile .category-header-item:nth-child(3) .category-line-with-bends{transform:translateX(-50%)}.projects-section.mobile .category-line-with-bends:after,.projects-section.mobile .category-line-with-bends:before{height:25px;width:3px}.projects-section.mobile .project-card{touch-action:manipulation}.projects-section.mobile .project-card:active .project-overlay,.projects-section.mobile .project-card:hover .project-overlay,.projects-section.mobile .project-overlay{display:none}@media (max-width:480px){.projects-section.mobile .project-card{height:380px;width:280px}.projects-section.mobile .projects-container{padding-left:calc(50vw - 140px)}.projects-section.mobile .project-category-external{font-size:12px;max-width:240px}.projects-section.mobile .project-title-external{font-size:10px;max-width:280px}.projects-section.mobile .category-line-with-bends{width:367px}.projects-section.mobile .category-header-item:nth-child(2) .category-line-with-bends,.projects-section.mobile .category-header-item:nth-child(3) .category-line-with-bends{transform:translateX(-50%)}}@media (max-width:360px){.projects-section.mobile .project-card{height:360px;width:260px}.projects-section.mobile .projects-container{padding-left:calc(50vw - 130px)}.projects-section.mobile .category-line-with-bends{width:320px}.projects-section.mobile .category-header-item:nth-child(2) .category-line-with-bends,.projects-section.mobile .category-header-item:nth-child(3) .category-line-with-bends{transform:translateX(-50%)}}@media (max-height:500px) and (orientation:landscape){.projects-section.mobile .project-card{height:200px;width:300px}.projects-section.mobile .projects-container{padding-left:calc(50vw - 150px)}.projects-section.mobile .category-headers-container{top:-80px}.projects-section.mobile .section-indicator{bottom:30px}.projects-section.mobile .scroll-hint{bottom:10px;font-size:8px}.projects-section.mobile .category-line-with-bends{width:433px}}@media (min-width:769px){.projects-section.desktop .projects-container{gap:100px;padding-left:calc(50vw - 300px)}.projects-section.desktop .project-card{height:338px;width:600px}.projects-section.desktop .project-category-external{font-size:26px}.projects-section.desktop .project-title-external{font-size:20px}.projects-section.desktop .category-header{left:350px}.projects-section.desktop .category-line-with-bends{width:1310px}.projects-section.desktop .tech-item{font-size:10px;padding:8px 15px}}.contact-section{align-items:center;background:#000!important;color:#fff;display:flex;justify-content:center;min-height:55vh;overflow:hidden;padding:0;position:relative;transition:all .3s ease}.contact-section:before{animation:pixelShift 20s linear infinite;background-image:radial-gradient(circle at 2px 2px,#e0cba826 1px,#0000 0);background-size:20px 20px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes pixelShift{0%{transform:translate(0)}to{transform:translate(20px,20px)}}.container{margin:0 auto;max-width:1200px;padding:0 20px;position:relative;width:100%;z-index:2}.contact-section.desktop .contact-content{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr;justify-content:center}.contact-section.mobile .contact-content{align-items:center;display:flex;flex-direction:column;gap:40px;text-align:center}.contact-header{margin-bottom:60px}.section-title{color:#e0cba8;font-size:2.7rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin-bottom:20px;position:relative;text-shadow:2px 2px 4px #000c}.section-subtitle,.section-title{font-family:Press Start\ 2P,monospace}.section-subtitle{color:#888;font-size:.7rem;line-height:1.6;max-width:90%}.contact-details{display:flex;flex-direction:column;gap:30px}.contact-item{align-items:center;background:#ffffff08;border:1px solid #ffffff1a;border-radius:15px;display:flex;padding:20px;transition:all .3s ease}.contact-item:hover{background:#ffffff0d;border-color:#fff3;transform:translateY(-2px)}.contact-icon{align-items:center;background:linear-gradient(135deg,#333,#222);border-radius:12px;color:#fff;display:flex;flex-shrink:0;height:50px;justify-content:center;margin-right:20px;width:50px}.contact-text h3{color:#fff;font-size:1rem;font-weight:600;margin-bottom:5px}.contact-text h3,.contact-text p{font-family:Press Start\ 2P,monospace}.contact-text p{color:#888;font-size:.7rem;margin:0}.social-links{margin-top:40px}.social-links h3{color:#fff;font-size:1.3rem;font-weight:600;margin-bottom:20px}.social-icons{display:flex;gap:15px}.contact-section.mobile .social-icons,.social-link{justify-content:center}.social-link{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;color:#fff;display:flex;height:50px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);width:50px}.social-link:hover{background:#ffffff1a;border-color:#ffffff4d;box-shadow:0 10px 30px #0000004d;transform:translateY(-3px)}.contact-form-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff05;border:1px solid #ffffff1a;border-radius:20px;padding:40px}.contact-form{display:flex;flex-direction:column;gap:25px}.form-group{position:relative}.form-input,.form-textarea{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;box-sizing:border-box;color:#fff;font-family:inherit;font-size:1rem;padding:16px 20px;transition:all .3s ease;width:100%}.form-input:focus,.form-textarea:focus{background:#ffffff14;border-color:#ffffff4d;box-shadow:0 0 0 3px #ffffff1a;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#666}.form-textarea{min-height:120px;resize:vertical}@media screen and (min-width:769px){.contact-section.desktop .contact-content{gap:80px;grid-template-columns:1fr 1fr}.contact-section.desktop .section-subtitle{text-align:left}.contact-section.desktop .social-icons{justify-content:flex-start}}@media screen and (max-width:1024px){.contact-content{gap:60px!important}.section-title{font-size:2.5rem}}@media screen and (max-width:768px){.contact-section{min-height:auto;padding:60px 0}.container{padding:0 15px}.contact-section.mobile .contact-header{margin-bottom:40px}.section-title{font-size:1.6rem;line-height:1.3;margin-bottom:15px}.section-subtitle{font-size:.5rem;line-height:1.8;max-width:100%;padding:0 10px}.contact-form-container{padding:30px 20px}.contact-item{flex-direction:column;padding:15px;text-align:center}.contact-icon{height:40px;margin-bottom:10px;margin-right:0;width:40px}.contact-text h3{font-size:.8rem}.contact-text p{font-size:.6rem}.social-link{height:45px;width:45px}}@media screen and (max-width:480px){.contact-section{padding:40px 0}.container{padding:0 10px}.section-title{font-size:1.3rem;letter-spacing:-.01em;line-height:1.4;margin-bottom:12px}.section-subtitle{font-size:.45rem;line-height:1.9;padding:0 5px}.contact-header{margin-bottom:30px}.contact-details{gap:20px}.contact-item{padding:15px 10px}.contact-icon{height:35px;width:35px}.contact-text h3{font-size:.7rem}.contact-text p{font-size:.55rem}.social-icons{gap:10px}.social-link{height:40px;width:40px}.social-link svg{height:18px;width:18px}}@media screen and (max-width:360px){.container{padding:0 8px}.section-title{font-size:1.1rem;line-height:1.4;margin-bottom:10px}.section-subtitle{font-size:.4rem;line-height:2;padding:0 3px}.contact-item{padding:12px 6px}.contact-text h3{font-size:.6rem}.contact-text p{font-size:.5rem}}@media screen and (max-width:320px){.container{padding:0 5px}.section-title{font-size:1rem;line-height:1.5;margin-bottom:8px}.section-subtitle{font-size:.38rem;line-height:2.1;padding:0 2px}.contact-header{margin-bottom:25px}}@media (hover:none){.contact-item:hover{background:#ffffff08;border-color:#ffffff1a;transform:none}.social-link:hover{background:#ffffff0d;border-color:#ffffff1a;box-shadow:none;transform:none}.social-link:active{background:#ffffff1a;border-color:#ffffff4d}.contact-item:active{background:#ffffff0d;border-color:#fff3}}.preloader-container{align-items:center;background:#000;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;transition:opacity .9s ease-out;width:100vw;z-index:10000}.preloader-container.exiting{opacity:0;pointer-events:none}.preloader-canvas{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.preloader-text{color:#e0cba8;font-family:Press Start\ 2P,monospace;font-size:90px;position:relative;text-shadow:0 0 20px #e0cba8e6;transition:opacity .9s ease-out;z-index:2}.preloader-text.fade-out{opacity:0}@media (max-width:768px){.preloader-text{font-size:32px}}html{scroll-behavior:smooth}.scroll-to-top{bottom:30px;opacity:0;pointer-events:none;position:fixed;right:30px;transform:scale(.8);transition:all .2s ease;visibility:hidden;z-index:9999}.scroll-to-top.visible{opacity:1;pointer-events:all;transform:scale(1);visibility:visible}.scroll-btn{align-items:center;backdrop-filter:blur(25px) saturate(1.1) brightness(1.1);-webkit-backdrop-filter:blur(25px) saturate(1.8) brightness(1.1);background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;color:#ffffffe6;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:52px;justify-content:center;text-shadow:0 1px 2px #0003;transition:all .3s ease;width:52px}.scroll-btn:hover{transform:scale(1.1)}.scroll-btn:active{transform:scale(.95)}@media (max-width:768px){.scroll-to-top{bottom:20px;right:20px}.scroll-btn{font-size:14px;height:44px;width:44px}}
/*# sourceMappingURL=main.fc3786a3.css.map*/