@font-face{font-family:'M PLUS 1 Code';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/m-plus-1-code-regular.woff2') format('woff2')}@font-face{font-family:'M PLUS 1 Code';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/m-plus-1-code-bold.woff2') format('woff2')}:root{--bg-color:#000000;--matrix-green:#00ff66;--matrix-dark:#008f39;--matrix-glow:rgba(0, 255, 102, 0.4);--matrix-dim-glow:rgba(0, 255, 102, 0.15);--glass-bg:rgba(0, 0, 0, 0.85);--glass-border:rgba(0, 255, 102, 0.25);--font-family:'M PLUS 1 Code','Osaka-mono','MS Gothic',monospace;--intro-fade-duration:1.5s}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--bg-color);color:#e0ffe8;font-family:var(--font-family);overflow:hidden;width:100%;height:100vh;height:100dvh}body::after{content:"";position:fixed;top:0;left:0;bottom:0;right:0;background:linear-gradient(rgba(18,16,16,0) 50%,rgba(0,0,0,.15) 50%);z-index:2;background-size:100% 6px;pointer-events:none;opacity:.85;transform:translateZ(0)}#matrix-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;background-color:var(--bg-color);transform:translateZ(0)}.content-container{position:relative;z-index:3;width:100%;height:100vh;height:100dvh;overflow:hidden;contain:layout paint size}.section{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem}#hero{position:absolute;top:0;left:0;width:100%;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;z-index:50;pointer-events:none;overflow:hidden;padding-top:10vh}.hero-content{text-align:center;opacity:0;transform:translateY(20px);transition:opacity .5s cubic-bezier(.25, .8, .25, 1),transform .5s cubic-bezier(.25, .8, .25, 1)}.hero-content.visible{opacity:1;transform:translateY(0)}.title-glow{font-size:clamp(3rem, 8vw, 6rem);letter-spacing:.5rem;color:#fff;text-shadow:0 0 10px var(--matrix-green),0 0 20px var(--matrix-green),0 0 40px var(--matrix-dark);margin-bottom:1rem;position:relative}.subtitle{font-size:clamp(1rem, 2.5vw, 1.5rem);letter-spacing:.25rem;color:var(--matrix-green);text-shadow:0 0 5px var(--matrix-glow);margin-bottom:3rem}.scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:2rem;opacity:.7;animation:pulse 2s infinite alternate}.scroll-indicator span{font-size:.85rem;letter-spacing:.15em;color:var(--matrix-green)}.arrow-down{width:12px;height:12px;border-bottom:2px solid var(--matrix-green);border-right:2px solid var(--matrix-green);transform:rotate(45deg);animation:bounce 2s infinite}#neo-animation{position:absolute;top:0;left:0;height:100vh;height:100dvh;width:100%;background-color:transparent;color:#3f3;font-family:var(--font-family);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-left:10vw;z-index:100;overflow:hidden;transition:opacity var(--intro-fade-duration, 1.5s) cubic-bezier(.25, .8, .25, 1);transform:translateZ(0)}#neo-animation.fade-out-bg{opacity:0;pointer-events:none}.movie-terminal-screen{width:100%;max-width:800px;height:auto;min-height:200px;padding:clamp(1rem,5vw,2.5rem);background-color:transparent;color:#0f6;font-family:'M PLUS 1 Code',monospace;font-size:clamp(1rem, 4vw, 1.25rem);line-height:1.8;position:relative;border-radius:4px;text-align:left;display:flex;flex-direction:column;justify-content:flex-start;white-space:pre-wrap;text-shadow:0 0 5px rgba(0,255,102,.45);box-sizing:border-box;opacity:1;transition:opacity var(--intro-fade-duration, 4s) cubic-bezier(.25, .8, .25, 1)}.movie-terminal-screen.fade-out{opacity:0;pointer-events:none}.movie-cursor{display:inline-block;width:12px;height:20px;background-color:#0f6;vertical-align:middle;margin-left:2px;box-shadow:0 0 8px #0f6;animation:movieCursorPulse .8s ease-in-out infinite}@keyframes movieCursorPulse{0%,100%{opacity:1}50%{opacity:.15}}.trace-grid-container{display:grid;grid-template-columns:1fr 2fr 1fr;gap:20px;margin-top:15px;font-size:1.05rem;font-family:monospace;color:rgba(0,255,102,.85);height:180px;overflow:hidden;contain:layout paint size}.trace-side-column{display:flex;flex-direction:column;line-height:1.2;opacity:.5;user-select:none;letter-spacing:2px}.trace-center-panel{border:1px solid rgba(0,255,102,.3);padding:10px;background:rgba(0,10,2,.5);display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:inset 0 0 15px rgba(0,255,102,.15)}.trace-center-status{font-size:.8rem;color:#fff;letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.trace-phone-display{font-size:1.8rem;color:#fff;font-weight:700;letter-spacing:3px;text-shadow:0 0 10px #0f6;margin:10px 0}.trace-city{font-size:.85rem;color:#0f6;letter-spacing:1px}@keyframes glowAndFade{0%{opacity:0;color:var(--matrix-green);text-shadow:0 0 2px var(--matrix-glow)}15%{opacity:1;color:#fff;text-shadow:0 0 18px var(--matrix-green),0 0 8px #fff}35%{opacity:1;color:var(--matrix-green);text-shadow:0 0 8px var(--matrix-glow)}100%{opacity:0;text-shadow:none}}.linkedin-interactive-container{--linkedin-base-size:clamp(80px, 11.36vw + 43.7px, 160px);--linkedin-bunny-size:clamp(200px, 25.57vw + 118.2px, 380px);--linkedin-gap:clamp(30px, 1.42vw + 25.5px, 40px);--linkedin-right-offset:clamp(24px, 5.68vw + 5.8px, 64px);--linkedin-bunny-hover-scale:0.6;--linkedin-logo-hover-scale:1.20;--linkedin-ring-1-hover-scale:2.4;--linkedin-ring-2-hover-scale:1.45;--linkedin-ring-3-hover-scale:1.00;display:none;position:fixed;bottom:clamp(64px,2.27vw + 56.8px,80px);right:calc(var(--linkedin-right-offset) + env(safe-area-inset-right,0px));transform:translateZ(0);will-change:transform,opacity;flex-direction:column;align-items:center;gap:1.5rem;width:auto;max-width:860px;z-index:999}.contact-tagline{position:fixed;bottom:calc(clamp(120px,2.27vw + 112.8px,136px) + var(--linkedin-base-size)/ 2 + var(--linkedin-bunny-size)/ 2 + 30px + env(safe-area-inset-bottom,0px));right:calc(var(--linkedin-right-offset) + env(safe-area-inset-right,0px));left:calc(50vw + 225px + clamp(20px,3.91vw - 10px,30px));text-align:right;white-space:normal;font-size:1.2rem;line-height:1.4;color:#92b89b;letter-spacing:.1em;opacity:0;transition:opacity 1.5s cubic-bezier(.25, .8, .25, 1),color .4s cubic-bezier(.25, .8, .25, 1),text-shadow .4s cubic-bezier(.25, .8, .25, 1),transform .4s cubic-bezier(.25, .8, .25, 1)}.contact-tagline.tagline-hidden-lines{opacity:0!important;pointer-events:none;visibility:hidden}.linkedin-interactive-container.visible .contact-tagline{opacity:1}.linkedin-interactive-container.hovered .contact-tagline{opacity:1;color:var(--matrix-green);text-shadow:0 0 8px var(--matrix-green),0 0 15px var(--matrix-glow);transform:translateY(-40px)}@media (hover:hover){.linkedin-interactive-container:hover .contact-tagline{opacity:1;color:var(--matrix-green);text-shadow:0 0 8px var(--matrix-green),0 0 15px var(--matrix-glow);transform:translateY(-40px)}}.linkedin-wrapper-row{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--linkedin-gap)}.linkedin-outside-bunny{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(1);width:var(--linkedin-bunny-size);height:var(--linkedin-bunny-size);padding:24px;object-fit:contain;opacity:0;pointer-events:auto;will-change:opacity,transform,filter;filter:drop-shadow(0 0 12px rgba(0, 255, 102, 0));transition:opacity .4s cubic-bezier(.25, .8, .25, 1),transform .4s cubic-bezier(.25, .8, .25, 1),filter 1.5s ease-in-out}.linkedin-outside-bunny.rabbit-glowing{filter:drop-shadow(0 0 12px rgba(0, 255, 102, .6));animation:bunnyPulseOpacity 3s ease-in-out infinite}@keyframes bunnyPulseOpacity{0%,100%{opacity:1}50%{opacity:.85}}.linkedin-container{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:var(--linkedin-bunny-size);height:var(--linkedin-bunny-size);text-decoration:none;cursor:pointer;background-color:rgba(0,0,0,0)}.linkedin-logo-wrapper{position:absolute;display:flex;align-items:center;justify-content:center;width:var(--linkedin-base-size);height:var(--linkedin-base-size);border-radius:50%;transition:transform .4s cubic-bezier(.25, 1, .5, 1)}.linkedin-icon{z-index:5;width:calc(var(--linkedin-base-size) * .4);height:calc(var(--linkedin-base-size) * .4);opacity:0;transform:scale(0);filter:drop-shadow(0 0 8px var(--matrix-green));transition:transform .6s cubic-bezier(.25, .8, .25, 1),opacity .6s cubic-bezier(.25, .8, .25, 1)}.linkedin-icon path{transition:fill 4s cubic-bezier(.25, .8, .25, 1)}.linkedin-logo-wrapper::after,.linkedin-logo-wrapper::before{content:'';position:absolute;border-radius:50%;width:100%;height:100%;opacity:0;transform:scale(0);transition:opacity .4s cubic-bezier(.25, .8, .25, 1),transform .4s cubic-bezier(.25, .8, .25, 1);pointer-events:none}.linkedin-wrapper-row::before{content:'';position:absolute;border-radius:50%;left:50%;top:50%;width:var(--linkedin-base-size);height:var(--linkedin-base-size);opacity:0;transform:translate(-50%,-50%) scale(0);transition:opacity .4s cubic-bezier(.25, .8, .25, 1),transform .4s cubic-bezier(.25, .8, .25, 1);pointer-events:none}.linkedin-logo-wrapper::before{border:2px solid var(--matrix-green);box-shadow:0 0 15px var(--matrix-dim-glow),inset 0 0 15px var(--matrix-dim-glow)}.linkedin-logo-wrapper::after{border:3px double var(--matrix-green);box-shadow:0 0 15px var(--matrix-dim-glow),inset 0 0 15px var(--matrix-dim-glow)}.linkedin-wrapper-row::before{border:2px solid var(--matrix-green);box-shadow:0 0 15px var(--matrix-dim-glow),inset 0 0 15px var(--matrix-dim-glow)}.linkedin-interactive-container.hovered .linkedin-logo-wrapper{transform:scale(1.05)}.linkedin-interactive-container.hovered .linkedin-icon{opacity:1;transform:scale(var(--linkedin-logo-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) 0s,transform .4s cubic-bezier(.25, 1, .5, 1) 0s}.linkedin-interactive-container.hovered .linkedin-outside-bunny{opacity:0;transform:translate(-50%,-50%) scale(0);transition:opacity .4s cubic-bezier(.25, 1, .5, 1),transform .4s cubic-bezier(.25, 1, .5, 1)}.linkedin-interactive-container.hovered .linkedin-icon path{transition:fill 0s}.linkedin-interactive-container.hovered .linkedin-logo-wrapper::before{opacity:.95;transform:scale(var(--linkedin-ring-1-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) 0s,transform .4s cubic-bezier(.25, 1, .5, 1) 0s}.linkedin-interactive-container.hovered .linkedin-logo-wrapper::after{opacity:.95;transform:scale(var(--linkedin-ring-2-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) .15s,transform .4s cubic-bezier(.25, 1, .5, 1) .15s}.linkedin-interactive-container.hovered .linkedin-wrapper-row::before{opacity:.95;transform:translate(-50%,-50%) scale(var(--linkedin-ring-3-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) .3s,transform .4s cubic-bezier(.25, 1, .5, 1) .3s}@media (hover:hover){.linkedin-container:hover .linkedin-logo-wrapper{transform:scale(1.05)}.linkedin-container:hover .linkedin-icon{opacity:1;transform:scale(var(--linkedin-logo-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) 0s,transform .4s cubic-bezier(.25, 1, .5, 1) 0s}.linkedin-container:hover .linkedin-outside-bunny{opacity:0;transform:translate(-50%,-50%) scale(0);transition:opacity .4s cubic-bezier(.25, 1, .5, 1),transform .4s cubic-bezier(.25, 1, .5, 1)}.linkedin-container:hover .linkedin-icon path{transition:fill 0s}.linkedin-container:hover .linkedin-logo-wrapper::before{opacity:.95;transform:scale(var(--linkedin-ring-1-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) 0s,transform .4s cubic-bezier(.25, 1, .5, 1) 0s}.linkedin-container:hover .linkedin-logo-wrapper::after{opacity:.95;transform:scale(var(--linkedin-ring-2-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) .15s,transform .4s cubic-bezier(.25, 1, .5, 1) .15s}.linkedin-wrapper-row:has(.linkedin-container:hover)::before{opacity:.95;transform:translate(-50%,-50%) scale(var(--linkedin-ring-3-hover-scale));transition:opacity .4s cubic-bezier(.25, 1, .5, 1) .3s,transform .4s cubic-bezier(.25, 1, .5, 1) .3s}}@media (max-width:1024px){.linkedin-interactive-container.visible .contact-tagline{opacity:1}}@media (max-width:768px){.section{padding:2rem calc(1rem + env(safe-area-inset-right,0px)) 2rem calc(1rem + env(safe-area-inset-left,0px))!important}#hero{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100vh!important;height:100dvh!important;min-height:100vh!important;min-height:100dvh!important;padding-top:10vh!important}#neo-animation{padding-left:calc(5vw + env(safe-area-inset-left,0px))!important;padding-right:calc(5vw + env(safe-area-inset-right,0px))!important;padding-top:calc(2rem + env(safe-area-inset-top,0px))!important;padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px))!important}.skip-intro-btn{left:auto!important;right:2rem!important;right:calc(2rem + env(safe-area-inset-right,0px))!important;transform:none!important}.subtitle{margin-bottom:1.5rem!important}.linkedin-interactive-container.visible .contact-tagline{opacity:1}.contact-tagline{display:none!important}.linkedin-interactive-container{z-index:999;margin-top:0!important;width:auto;max-width:none;padding:0}}@media (max-height:750px){.section{padding:2.5rem 1.5rem!important}.subtitle{margin-bottom:2rem!important}.linkedin-interactive-container{margin-top:1rem!important}.linkedin-interactive-container.visible .contact-tagline{opacity:1}}.bottom-credits{position:absolute;bottom:1.5rem;bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));left:0;width:100%;text-align:center;font-size:.8rem;color:var(--matrix-dark);letter-spacing:.1em;z-index:5}@keyframes pulse{0%{opacity:.5}100%{opacity:1}}@keyframes dollyZoomLogo{0%{transform:scale(1);opacity:1;filter:drop-shadow(0 0 8px var(--matrix-green))}25%{transform:scale(.15);opacity:0;filter:drop-shadow(0 0 0px var(--matrix-green))}55%{transform:scale(.15);opacity:0;filter:drop-shadow(0 0 0px var(--matrix-green))}100%{transform:scale(1.15);opacity:1;filter:drop-shadow(0 0 12px var(--matrix-green))}}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0) rotate(45deg)}40%{transform:translateY(-8px) rotate(45deg)}60%{transform:translateY(-4px) rotate(45deg)}}@keyframes blink{0%,49%{opacity:1}100%,50%{opacity:0}}@keyframes rotateRing{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes rotateRingBack{0%{transform:rotate(360deg)}100%{transform:rotate(0)}}@keyframes pulseRing{0%,100%{transform:translate(-50%,-50%) scale(calc(var(--linkedin-ring-3-hover-scale) * .95));opacity:.75}50%{transform:translate(-50%,-50%) scale(calc(var(--linkedin-ring-3-hover-scale) * 1.05));opacity:.95}}@keyframes glowPulse{0%,100%{opacity:.75;box-shadow:0 0 15px var(--matrix-dim-glow),inset 0 0 15px var(--matrix-dim-glow)}50%{opacity:.95;box-shadow:0 0 30px var(--matrix-glow),inset 0 0 15px var(--matrix-glow)}}.glitch-text{position:relative;color:#fff;text-shadow:0 0 10px var(--matrix-green);font-size:3rem;letter-spacing:.2em}.glitch-text::after,.glitch-text::before{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:0 0}.glitch-text:hover::before{transform:translateX(2px) translateZ(0);text-shadow:-2px 0 #ff00c1;clip:rect(44px,450px,56px,0);animation:glitch-anim 5s infinite linear alternate-reverse}.glitch-text:hover::after{transform:translateX(-2px) translateZ(0);text-shadow:-2px 0 #00e6ff,0 2px 3px #ff00c1;clip:rect(85px,450px,140px,0);animation:glitch-anim2 5s infinite linear alternate-reverse}@keyframes glitch-anim{0%{clip:rect(15px,9999px,66px,0)}10%{clip:rect(85px,9999px,5px,0)}20%{clip:rect(27px,9999px,115px,0)}30%{clip:rect(92px,9999px,23px,0)}40%{clip:rect(45px,9999px,88px,0)}50%{clip:rect(62px,9999px,142px,0)}60%{clip:rect(110px,9999px,18px,0)}70%{clip:rect(12px,9999px,73px,0)}80%{clip:rect(88px,9999px,50px,0)}90%{clip:rect(135px,9999px,102px,0)}100%{clip:rect(6px,9999px,120px,0)}}@keyframes glitch-anim2{0%{clip:rect(95px,9999px,33px,0)}10%{clip:rect(22px,9999px,85px,0)}20%{clip:rect(110px,9999px,14px,0)}30%{clip:rect(48px,9999px,120px,0)}40%{clip:rect(82px,9999px,5px,0)}50%{clip:rect(18px,9999px,92px,0)}60%{clip:rect(122px,9999px,45px,0)}70%{clip:rect(6px,9999px,133px,0)}80%{clip:rect(74px,9999px,60px,0)}90%{clip:rect(40px,9999px,112px,0)}100%{clip:rect(105px,9999px,88px,0)}}.skip-intro-btn{position:absolute;bottom:5rem;bottom:calc(5rem + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);background:0 0;border:none;outline:0;padding:.6rem 1.2rem;color:rgba(0,255,102,.45);font-family:'M PLUS 1 Code',monospace;font-size:clamp(1rem, 4vw, 1.25rem);cursor:pointer;user-select:none;z-index:101;transition:color .2s ease,text-shadow .2s ease,opacity .3s ease}.skip-intro-btn:active,.skip-intro-btn:hover{color:var(--matrix-green);text-shadow:0 0 8px var(--matrix-glow)}.skip-intro-btn.tapped{color:var(--matrix-green)!important;text-shadow:0 0 18px var(--matrix-green),0 0 8px rgba(0,255,102,.9)!important}