@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%;overflow-x:hidden;overflow-y:auto}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.press-start-2p-regular{font-family:"Press Start 2P",system-ui;font-weight:400;font-style:normal}.roboto-light{font-family:Roboto,sans-serif;font-optical-sizing:auto;font-weight:300;font-style:normal;font-variation-settings:"wdth" 100}.roboto-regular{font-family:Roboto,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-variation-settings:"wdth" 100}.roboto-bold{font-family:Roboto,sans-serif;font-optical-sizing:auto;font-weight:700;font-style:normal;font-variation-settings:"wdth" 100}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;height:100vh;margin:0;padding:0;overflow-y:auto}.app-container{width:100%;display:flex;flex-direction:column;background-color:#1a1a1a}.universal-screen-container{position:relative;width:min(100%,1400px,calc((100vh - 4rem) * 1400 / 600));height:min(100%,calc(100vh - 4rem),calc(100vw * 600 / 1400));display:flex;justify-content:center;align-items:center}.white-transition-screen{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff;z-index:100;animation:fadeToWhite 1s ease-in-out}.top-section{position:relative;width:100vw;height:100vh;overflow:hidden;background-color:#1a1a1a;display:flex;justify-content:center;align-items:center;padding:2rem;box-sizing:border-box}.universal-screen-container{position:relative;width:min(100%,1400px,calc((100vh - 4rem) * 1400 / 600));height:min(100%,calc(100vh - 4rem),calc(100vw * 600 / 1400));display:flex;justify-content:center;align-items:center;font-size:clamp(.5rem,1vw,.8rem)}.universal-screen-unit{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center}.universal-screen-frame{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);width:95%;aspect-ratio:16 / 9;z-index:10}.ds-screen-border{position:absolute;top:0;left:0;width:100%;height:100%;border:12px solid black;box-sizing:border-box;background-color:#1a1a1a;z-index:1}.screen-content-area{position:absolute;top:12px;left:12px;width:calc(100% - 24px);height:calc(100% - 24px);z-index:2;overflow:hidden}.screen-background{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;background-color:#fff}.screen-background.smooth-fade-in{animation:smoothFadeInFromWhite .8s ease-in-out}.universal-white-transition{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff;z-index:100;animation:fadeToWhite 1s ease-in-out}.section-separator{position:relative;width:100vw;height:0;display:flex;justify-content:center;align-items:center;z-index:100;pointer-events:none}.ds-bar{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:auto;object-fit:contain;display:block}.turn-on-text{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:clamp(1rem,2.5vw,2rem);text-align:center;text-shadow:2px 2px 4px rgba(0,0,0,.8);background-color:#000000b3;padding:20px 40px;border-radius:10px;animation:blinkingText 2s ease-in-out infinite;cursor:pointer;z-index:1001;pointer-events:auto}@keyframes smoothFadeInFromWhite{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.turn-on-screen-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:transparent;cursor:pointer;z-index:1001;pointer-events:auto;display:flex;align-items:center;justify-content:center}.turn-on-text{color:#fff;font-size:2rem;text-align:center;text-shadow:2px 2px 4px rgba(0,0,0,.8);background-color:#000000b3;padding:20px 40px;border-radius:10px;animation:blinkingText 2s ease-in-out infinite;cursor:pointer;pointer-events:none}.start-screen-text{position:absolute;top:58%;left:50%;transform:translate(-50%,-50%);width:88%;height:84.1%;z-index:11;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:8%;box-sizing:border-box;pointer-events:auto}.game-title{font-size:clamp(1rem,3vw,2rem);color:#8b0000;text-align:center;margin-bottom:1rem;cursor:pointer;opacity:0;animation:blinkingText 1s ease-in-out 2s infinite}@keyframes blinkingText{0%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}.pokemon-dialogbox{position:absolute;bottom:5%;left:50%;cursor:default;font-family:"Press Start 2P",Monospace,sans-serif;border-radius:2px;width:clamp(40%,65%,70%);height:clamp(14%,32%,35%);font-size:clamp(.4rem,2.5vw,1.9rem);line-height:1.4;color:#000;background:#fff;border:1px solid white;box-shadow:0 1px 0 1px #000,inset 0 1px 0 1px #000,0 0 0 1px #000,inset 0 0 0 1px #000;transform:translate(-50%);-webkit-user-select:none;user-select:none;z-index:15;opacity:0;animation:fadeIn 0s ease-out 1s both;padding:.8em;box-sizing:border-box;overflow:hidden;word-wrap:normal;-webkit-hyphens:none;hyphens:none}.universal-screen-frame .pokemon-dialogbox{font-size:clamp(.8rem,2.1vw,2rem);width:clamp(40%,60%,65%);height:clamp(20%,35%,40%)}.universal-screen-frame .pokemon-dialogbox.title-style{font-size:clamp(.8rem,2.1vw,2rem)}.universal-screen-frame .pokemon-arrow{border-width:clamp(3px,.4vw,6px)}.pokemon-dialogbox.normal-style{text-align:left;font-weight:100;text-decoration:none}.pokemon-dialogbox.title-style{text-align:left;font-weight:700;line-height:1.2;font-size:clamp(.4rem,2.5vw,1.9rem)}.dialogue-content{position:relative;width:100%;height:100%;display:flex;align-items:flex-start;justify-content:flex-start;padding:.5em;box-sizing:border-box;font-size:1em;overflow-wrap:normal;word-break:normal;text-align:left}.typing-cursor{display:inline-block;color:#000;animation:typingBlink 1s infinite;margin-left:2px}.pokemon-arrow{width:0;height:0;border:clamp(3px,.5vw,8px) solid transparent;border-top-color:#000;position:absolute;right:8%;bottom:15%;animation:pokemonBounce .5s ease-in-out 0 infinite alternate}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pokemonBounce{0%{bottom:15%}to{bottom:18%}}@keyframes typingBlink{0%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}.ds-character-sprite{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);width:45%;height:auto;max-height:65%;z-index:12;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.ds-character-sprite.fade-in{animation:dsFadeInFromWhite .5s ease-in-out}.ds-character-sprite.sprite-jump{animation:dsSpriteJump .3s ease-out}.ds-dialogue-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.ds-dialogue-mute-toggle{position:absolute;bottom:10%;right:3%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:dsFadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.ds-dialogue-mute-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.ds-dialogue-mute-toggle:active{transform:scale(.95)}.ds-dialogue-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.ds-dialogue-menu-button-toggle{position:absolute;bottom:10%;left:3%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:dsFadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.ds-dialogue-menu-button-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.ds-dialogue-menu-button-toggle:active{transform:scale(.95)}.ds-dialogue-menu-button-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}@keyframes dsFadeInFromWhite{0%{opacity:0}to{opacity:1}}@keyframes dsSpriteJump{0%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-20%)}to{transform:translate(-50%,-50%) translateY(0)}}.gb-character-sprite{position:absolute;top:36%;left:50%;transform:translate(-50%,-50%);width:50%;height:auto;max-height:65%;z-index:12;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.gb-character-sprite.uipko-sprite:not(.secret-layout){left:50%;top:36%;width:50%}.gb-character-sprite.fade-in{animation:gbFadeInFromWhite .5s ease-in-out}.gb-character-sprite.sprite-jump{animation:gbSpriteJump .3s ease-out}.gb-dialogue-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.gb-dialogue-mute-toggle{position:absolute;bottom:10%;right:3%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:gbFadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.gb-dialogue-mute-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.gb-dialogue-mute-toggle:active{transform:scale(.95)}.gb-dialogue-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.gb-dialogue-menu-button-toggle{position:absolute;bottom:10%;left:3%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:gbFadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.gb-dialogue-menu-button-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.gb-dialogue-menu-button-toggle:active{transform:scale(.95)}.gb-dialogue-menu-button-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}@keyframes gbFadeInFromWhite{0%{opacity:0}to{opacity:1}}@keyframes gbSpriteJump{0%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-20%)}to{transform:translate(-50%,-50%) translateY(0)}}.ds-secret-character-sprite{position:absolute;transform:translate(-50%,-50%);height:auto;z-index:12;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.ds-secret-character-sprite.uipko-sprite{left:44%;top:35%;width:40%;max-height:70%}.ds-secret-character-sprite.turned-sprite,.ds-secret-character-sprite.startled-sprite{left:45%;top:39%;width:20%;max-height:70%}.ds-secret-additional-sprite{position:absolute;top:40%;left:55%;transform:translate(-50%,-50%);width:12%;height:auto;max-height:65%;z-index:11;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.ds-secret-character-sprite.fade-in,.ds-secret-additional-sprite.fade-in{animation:dsSecretFadeIn .5s ease-in-out}.ds-secret-character-sprite.sprite-jump{animation:dsSecretSpriteJump .3s ease-out}.ds-secret-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.ds-secret-mute-toggle{position:absolute;bottom:5%;right:4.5%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:dsSecretFadeIn .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.ds-secret-mute-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.ds-secret-mute-toggle:active{transform:scale(.95)}.ds-secret-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.ds-secret-menu-button-toggle{position:absolute;bottom:5%;left:4.5%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:dsSecretFadeIn .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.ds-secret-menu-button-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.ds-secret-menu-button-toggle:active{transform:scale(.95)}.ds-secret-menu-button-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}@keyframes dsSecretFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dsSecretSpriteJump{0%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-20%)}to{transform:translate(-50%,-50%) translateY(0)}}.gb-secret-character-sprite{position:absolute;transform:translate(-50%,-50%);width:30%;height:auto;z-index:12;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.gb-secret-character-sprite.uipko-sprite{top:40%;left:42%;width:30%;max-height:70%}.gb-secret-character-sprite.uipko-sprite.joke{left:44%;top:37%;width:60%}.gb-secret-character-sprite.turned-sprite{top:42%;left:43%;width:23%;max-height:70%}.gb-secret-character-sprite.startled-sprite{top:35%;left:45%;width:30%;max-height:70%}.gb-secret-additional-sprite{position:absolute;top:40%;left:55%;transform:translate(-50%,-50%);width:15%;height:auto;max-height:65%;z-index:11;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.gb-secret-character-sprite.fade-in,.gb-secret-additional-sprite.fade-in{animation:gbSecretFadeIn .5s ease-in-out}.gb-secret-character-sprite.sprite-jump{animation:gbSecretSpriteJump .3s ease-out}.gb-secret-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.gb-secret-mute-toggle{position:absolute;bottom:10%;right:3%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:gbSecretFadeIn .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.gb-secret-mute-toggle:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.gb-secret-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.gb-secret-menu-button-toggle{position:absolute;bottom:10%;left:3%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:gbSecretFadeIn .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.gb-secret-menu-button-toggle:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.gb-secret-menu-button-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}@keyframes gbSecretFadeIn{0%{opacity:0}to{opacity:1}}@keyframes gbSecretSpriteJump{0%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-20%)}to{transform:translate(-50%,-50%) translateY(0)}}.menu-screen-desktop .menu-options{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;z-index:12;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:-20px;animation:fadeInFromWhite 3s ease-in-out}.menu-screen-desktop .menu-row{display:flex;justify-content:center;align-items:center;gap:clamp(10px,2vw,20px)}.menu-screen-desktop .menu-option{cursor:pointer;transition:transform .2s ease-out,filter .2s ease-out;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;height:clamp(40px,11vw,180px);width:auto;filter:drop-shadow(4px 4px 8px rgba(0,0,0,.3))}.menu-screen-desktop .menu-option:hover{transform:scale(1.1);filter:brightness(1.2) drop-shadow(6px 6px 12px rgba(0,0,0,.4))}.menu-screen-desktop .menu-option:active{transform:scale(.95)}.menu-screen-desktop .menu-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.menu-screen-desktop .menu-mute-toggle{position:absolute;bottom:5%;right:4.7%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.menu-screen-desktop .menu-mute-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.menu-screen-desktop .menu-mute-toggle:active{transform:scale(.95)}.menu-screen-desktop .menu-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.menu-screen-mobile .menu-options{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);width:100%;height:auto;z-index:12;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:-15px;animation:fadeInFromWhite 3s ease-in-out}.menu-screen-mobile .menu-row{display:flex;justify-content:center;align-items:center;gap:clamp(8px,3vw,15px)}.menu-screen-mobile .menu-option{cursor:pointer;transition:transform .2s ease-out,filter .2s ease-out;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;height:clamp(5px,15vw,120px);width:auto;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.3))}.menu-screen-mobile .menu-option:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(3px 3px 6px rgba(0,0,0,.4))}.menu-screen-mobile .menu-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.menu-screen-mobile .menu-mute-toggle{position:absolute;bottom:8%;right:6%;width:15%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.menu-screen-mobile .menu-mute-toggle:active{transform:scale(.9);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.menu-screen-mobile .menu-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.bottom-section{position:relative;width:100vw;height:100vh;overflow:hidden;background-color:#1a1a1a;display:flex;justify-content:center;align-items:center;padding:2rem;box-sizing:border-box}.bottom-game-container{position:relative;width:100%;max-width:1400px;aspect-ratio:1400 / 600;display:flex;justify-content:center;align-items:center}.ds-game-unit{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center}.game-screen-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:57.14%;aspect-ratio:16 / 9;z-index:10}.off-screen-border-bottom{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#1a1a1a;border:12px solid black;box-sizing:border-box}.game-gif{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border:12px solid black;box-sizing:border-box}.ds-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.ds-buttons{position:absolute;top:10%;right:0%;width:18%;height:auto;object-fit:contain;z-index:15;pointer-events:auto}.ds-dpad{position:absolute;top:10%;left:0%;width:18%;height:auto;object-fit:contain;z-index:15;pointer-events:auto}.ds-start{position:absolute;right:15%;bottom:17%;width:5%;height:auto;object-fit:contain;z-index:15;pointer-events:auto}.ds-select{position:absolute;right:14.5%;bottom:12.5%;width:5.5%;height:auto;object-fit:contain;z-index:15;pointer-events:auto}.projects-screen-mobile .projects-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.projects-screen-mobile .project-preview-container{position:absolute;left:12%;top:22.5%;width:20%;height:40%;z-index:20;display:flex;align-items:center;justify-content:center;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;pointer-events:auto;cursor:pointer;transition:transform .2s ease-out,filter .2s ease-out}.projects-screen-mobile .project-preview-container:hover{transform:scale(1.05);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.projects-screen-mobile .project-preview-container:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.projects-screen-mobile .project-preview-image{width:110%;height:auto;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;border-radius:8px}.projects-screen-mobile .tech-stack-container{position:absolute;left:6.5%;top:85.5%;transform:translateY(-50%);width:60%;height:auto;z-index:20;pointer-events:none;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both}.projects-screen-mobile .tech-stack-text{font-family:"Press Start 2P",monospace;font-size:clamp(.25rem,1.2vw,.8rem);color:#333;margin:0;padding:3% 2%;background-color:#fffffff2;border:2px solid #333;border-radius:4px;line-height:1.6;image-rendering:pixelated;text-align:center}.projects-screen-mobile .tech-section{margin-top:10px;margin-bottom:4px;color:#000;font-weight:700}.projects-screen-mobile .tech-section:first-child{margin-top:0}.projects-screen-mobile .tech-details{margin-bottom:8px;color:#444;line-height:1.8}.projects-screen-mobile .tech-details:first-child{font-size:clamp(.25rem,1.4vw,.9rem);font-weight:700;color:#222}.projects-screen-mobile .tech-details:not(:first-child){font-size:clamp(.25rem,1.2vw,.8rem)}.projects-screen-mobile .tech-details:last-child{margin-bottom:0}.projects-screen-mobile .projects-carousel-container{position:absolute;right:6.6%;top:39%;transform:translateY(-50%);height:80%;width:25%;z-index:20;pointer-events:auto}.projects-screen-mobile .projects-mute-toggle{position:absolute;bottom:7.5%;right:0%;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-mobile .projects-mute-toggle:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.projects-screen-mobile .projects-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.projects-screen-mobile .projects-menu-button-toggle{position:absolute;bottom:9%;right:15%;width:10%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-mobile .projects-menu-button-toggle:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.projects-screen-mobile .projects-menu-button-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.projects-screen-mobile .projects-up-arrow-toggle{position:absolute;right:48%;top:23%;width:8%;height:auto;z-index:21;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-mobile .projects-down-arrow-toggle{position:absolute;right:48%;bottom:37%;width:8%;height:auto;z-index:21;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-mobile .projects-up-arrow-toggle:active,.projects-screen-mobile .projects-down-arrow-toggle:active{transform:scale(.95);filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))}.projects-screen-mobile .projects-arrow-icon{width:130%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.projects-screen-mobile .projects-arrow-down{transform:rotate(180deg)}.projects-screen-mobile .projects-carousel-container img{transition:transform .2s ease-out,filter .2s ease-out!important}.projects-screen-mobile .projects-carousel-container img:hover{transform:scale(1.05)!important;filter:brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3))!important}.projects-screen-mobile .projects-carousel-container img:active{transform:scale(.95)!important;filter:brightness(1.3) drop-shadow(0 0 10px rgba(255,255,255,.4))!important}.projects-screen-desktop .projects-controls{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.projects-screen-desktop .project-preview-container{position:absolute;left:12%;top:26%;width:20%;height:40%;z-index:20;display:flex;align-items:center;justify-content:center;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;pointer-events:auto;cursor:pointer;transition:transform .2s ease-out,filter .2s ease-out}.projects-screen-desktop .project-preview-container:hover{transform:scale(1.05);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.projects-screen-desktop .project-preview-container:active{transform:scale(.98)}.projects-screen-desktop .project-preview-image{width:110%;height:auto;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;border-radius:8px}.projects-screen-desktop .tech-stack-container{position:absolute;left:6.5%;top:88.3%;transform:translateY(-50%);width:60%;height:auto;max-height:22%;z-index:20;pointer-events:none;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;--desktop-base-font: clamp(.2rem, 1vw, .8rem);--desktop-large-font: clamp(.25rem, 1.2vw, 1rem);--desktop-small-font: clamp(.18rem, .8vw, .6rem)}.projects-screen-desktop .desktop-tech-display{font-family:"Press Start 2P",monospace;font-size:var(--desktop-base-font);color:#333;margin:0;padding:clamp(2px,2%,8px) clamp(3px,1.5%,6px);background-color:#fffffff2;border:1px solid #333;border-radius:2px;line-height:1.4;image-rendering:pixelated;text-align:center;box-sizing:border-box;height:auto;min-height:100%;display:flex;flex-direction:column;justify-content:center}.projects-screen-desktop .desktop-tech-primary{font-size:var(--desktop-large-font);font-weight:700;color:#222;margin-bottom:clamp(3px,1.5%,8px);line-height:1.3}.projects-screen-desktop .desktop-tech-secondary{font-size:var(--desktop-base-font);color:#444;margin-bottom:clamp(3px,1.5%,8px);line-height:1.3}.projects-screen-desktop .desktop-tech-secondary:last-child{margin-bottom:0}.projects-screen-desktop .projects-carousel-container{position:absolute;right:6.6%;top:39%;transform:translateY(-50%);height:80%;width:25%;z-index:20;pointer-events:auto}.projects-screen-desktop .projects-mute-toggle{position:absolute;bottom:1%;right:0;width:13%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-desktop .projects-mute-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.projects-screen-desktop .projects-mute-toggle:active{transform:scale(.95)}.projects-screen-desktop .projects-mute-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.projects-screen-desktop .projects-menu-button-toggle{position:absolute;bottom:4%;right:15%;width:10%;height:auto;z-index:20;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-desktop .projects-menu-button-toggle:hover{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.projects-screen-desktop .projects-menu-button-toggle:active{transform:scale(.95)}.projects-screen-desktop .projects-menu-button-icon{width:100%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.projects-screen-desktop .projects-up-arrow-toggle{position:absolute;right:48%;top:25%;width:8%;height:auto;z-index:21;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-desktop .projects-down-arrow-toggle{position:absolute;right:48%;bottom:35%;width:8%;height:auto;z-index:21;cursor:pointer;opacity:0;animation:fadeInFromWhite .5s ease-in-out .5s both;transition:transform .2s ease-out,filter .2s ease-out;pointer-events:auto}.projects-screen-desktop .projects-up-arrow-toggle:hover,.projects-screen-desktop .projects-down-arrow-toggle:hover{transform:scale(1.1)}.projects-screen-desktop .projects-up-arrow-toggle:active,.projects-screen-desktop .projects-down-arrow-toggle:active{transform:scale(.95)}.projects-screen-desktop .projects-arrow-icon{width:130%;height:auto;object-fit:contain;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.projects-screen-desktop .projects-arrow-down{transform:rotate(180deg)}.projects-screen-desktop .projects-carousel-container img{transition:transform .2s ease-out,filter .2s ease-out!important}.projects-screen-desktop .projects-carousel-container img:hover{transform:scale(1.05)!important;filter:brightness(1.2) drop-shadow(0 0 10px rgba(255,255,255,.3))!important}.projects-screen-desktop .projects-carousel-container img:active{transform:scale(.98)!important;filter:brightness(1.3) drop-shadow(0 0 12px rgba(255,255,255,.4))!important}@keyframes fadeInFromWhite{0%{opacity:0}to{opacity:1}}.gameboy-container{position:relative;width:100%;padding:0}.gameboy-background{position:relative;width:100vw;height:auto;max-width:none;object-fit:contain;object-position:center top;z-index:1;display:block}.gameboy-screen-area{position:absolute;top:3.7%;left:50%;transform:translate(-50%);width:87%;aspect-ratio:1 / 1;overflow:hidden;z-index:2}.gameboy-start-screen{position:absolute;width:100%;height:100%;cursor:pointer;z-index:2;transition:transform .1s ease-out}.gameboy-start-screen:active{transform:scale(.98)}.gameboy-screen-gif{position:absolute;aspect-ratio:1.15 / 1;width:100%;height:auto;object-fit:cover;object-position:center;z-index:1;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;border-radius:12px}.gameboy-title{position:absolute;top:1%;left:50%;transform:translate(-50%);width:90%;height:auto;z-index:3;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;transition:opacity .5s ease-out}.gameboy-title.fade-out{opacity:0}.gameboy-start-text{position:absolute;bottom:15%;left:50%;transform:translate(-50%);z-index:4;font-family:"Press Start 2P",monospace;font-size:clamp(.7rem,3vw,1.2rem);font-weight:700;color:#888;text-align:center;text-shadow:-2px -2px 0 #000000,2px -2px 0 #000000,-2px 2px 0 #000000,2px 2px 0 #000000,-2px 0 0 #000000,2px 0 0 #000000,0 -2px 0 #000000,0 2px 0 #000000;-webkit-user-select:none;user-select:none;pointer-events:none;opacity:0;animation:blinkingGameBoyText 2s ease-in-out 1s infinite;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.gameboy-dialogue-container,.gameboy-menu-container,.gameboy-projects-container,.gameboy-secret-container,.gameboy-caught-container,.gameboy-joke-container{position:absolute;aspect-ratio:1.15 / 1;width:100%;height:auto;object-fit:cover;object-position:center;z-index:1;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;border-radius:12px;overflow:hidden}.universal-white-transition{position:absolute;top:0;left:0;aspect-ratio:1.15 / 1;width:100%;height:auto;background-color:#fff;z-index:100;animation:fadeToWhite 1s ease-in-out;border-radius:12px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.universal-white-transition.duration-0-8s{animation:fadeToWhite .8s ease-in-out}.universal-white-transition.duration-1s{animation:fadeToWhite 1s ease-in-out}.universal-white-transition.duration-1-5s{animation:fadeToWhite 1.5s ease-in-out}.universal-white-transition.duration-2s{animation:fadeToWhite 2s ease-in-out}.universal-white-transition.duration-2-5s{animation:fadeToWhite 2.5s ease-in-out}@keyframes blinkingGameBoyText{0%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}@keyframes fadeToWhite{0%{opacity:0}to{opacity:1}}
