@keyframes naruto-run{0%{transform:translate(-120px)}to{transform:translate(calc(100vw + 120px))}}.proj-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:var(--bg, #050505);color:#fff;display:flex;flex-direction:column;padding:7rem 4rem 2rem;overflow-y:auto;font-family:Courier New,monospace}html:not(.dark) .proj-page{background:#f5f5f5;color:#111}.proj-page__header{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.proj-page__back{background:transparent;border:1px solid rgba(255,77,77,.5);color:#ff4d4d;font-family:Courier New,monospace;font-size:.75rem;letter-spacing:.15em;padding:.5rem 1.2rem;cursor:pointer;transition:background .2s,color .2s;flex-shrink:0}.proj-page__back:hover{background:#ff4d4d;color:#000}.proj-page__title{font-size:clamp(1.4rem,3vw,2.4rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;flex:1;color:inherit}.proj-page__meta-top{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;font-size:.7rem;letter-spacing:.12em;opacity:.5;flex-shrink:0}.proj-page__body{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;flex:1;min-height:0}@media(max-width:900px){.proj-page__body{grid-template-columns:1fr}.proj-page{padding:6rem 1.5rem 2rem}}.proj-page__media{position:relative;background:#111;border-radius:8px;overflow:hidden;aspect-ratio:16/9;align-self:start}.proj-page__media-asset{width:100%;height:100%;object-fit:cover;border:none;display:block}.proj-page__info{display:flex;flex-direction:column;gap:1.2rem;padding-top:.5rem}.proj-page__company{font-size:.7rem;letter-spacing:.14em;color:#ff4d4d;margin:0}.proj-page__desc{font-size:.95rem;line-height:1.8;opacity:.85;margin:0}.proj-page__link{display:inline-block;border:1px solid #ff4d4d;color:#ff4d4d;font-family:Courier New,monospace;font-size:.75rem;letter-spacing:.15em;padding:.6rem 1.4rem;text-decoration:none;transition:background .2s,color .2s;align-self:flex-start;margin-top:auto}.proj-page__link:hover{background:#ff4d4d;color:#000}.proj-page__thumbs{display:flex;gap:.8rem;margin-top:2rem;flex-wrap:wrap}.proj-page__thumb{width:100px;height:64px;border:2px solid transparent;border-radius:4px;overflow:hidden;cursor:pointer;background:#111;padding:0;transition:border-color .2s;flex-shrink:0}.proj-page__thumb img{width:100%;height:100%;object-fit:cover;display:block}.proj-page__thumb--active{border-color:#ff4d4d}.proj-page__thumb:hover{border-color:#ff4d4d80}.proj-page__thumb-yt{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#ff4d4d;font-size:1.2rem}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#050505;display:flex;align-items:center;justify-content:center;font-family:Courier New,monospace;color:#ff4d4d;transition:opacity .6s ease}.loading-screen--out{opacity:0;pointer-events:none}.loading-face-wrap{display:flex;flex-direction:column;align-items:center;gap:.6rem}.loading-404-label{display:flex;gap:.5rem;font-size:5rem;font-weight:700;letter-spacing:.3em;line-height:1;color:#ff4d4d;text-shadow:0 0 30px rgba(255,77,77,.5)}.loading-face{display:block;color:#ff4d4d;filter:drop-shadow(0 0 12px rgba(255,77,77,.4))}.lf__eyes{animation:lf-eyes 1s .3s cubic-bezier(.65,0,.35,1) forwards}.lf__nose{animation:lf-nose 1s .3s cubic-bezier(.65,0,.35,1) forwards}.lf__mouth-left{animation:lf-mouth-left 1s .3s cubic-bezier(.33,1,.68,1) forwards}.lf__mouth-right{animation:lf-mouth-right 1s .3s cubic-bezier(.33,1,.68,1) forwards}.lf__eye-lid{animation:lf-eye-lid 4s 1.3s cubic-bezier(.65,0,.35,1) infinite}.lf__pupil{animation:lf-pupil 4s 1.3s cubic-bezier(.65,0,.35,1) infinite}@keyframes lf-eyes{0%{transform:translateY(112.5px)}to{transform:translateY(15px)}}@keyframes lf-nose{0%{transform:translate(0)}to{transform:translateY(22.5px)}}@keyframes lf-mouth-left{0%,50%{stroke-dashoffset:-102}to{stroke-dashoffset:0}}@keyframes lf-mouth-right{0%,50%{stroke-dashoffset:102}to{stroke-dashoffset:0}}@keyframes lf-eye-lid{0%,40%,45%,to{transform:translateY(0)}42.5%{transform:translateY(17.5px)}}@keyframes lf-pupil{0%,37.5%,40%,45%,87.5%,to{stroke-dashoffset:0;transform:translate(0)}12.5%,25%,62.5%,75%{stroke-dashoffset:0;transform:translate(-35px)}42.5%{stroke-dashoffset:35;transform:translateY(17.5px)}}.loading-subtitle{font-size:.75rem;letter-spacing:.25em;color:#ff4d4d80;margin-top:-.4rem}.loading-joke{min-height:3rem;display:flex;flex-direction:column;align-items:center;gap:.8rem;opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease}.loading-joke--visible{opacity:1;transform:translateY(0)}.loading-joke-text{font-size:.9rem;letter-spacing:.12em;color:#ffffffb3}.loading-bar{width:200px;height:2px;background:#ff4d4d33;border-radius:2px;overflow:hidden}.loading-bar__fill{height:100%;background:#ff4d4d;border-radius:2px;animation:loading-fill 1s cubic-bezier(.4,0,.2,1) forwards;box-shadow:0 0 8px #ff4d4d}@keyframes loading-fill{0%{width:0%}to{width:100%}}.ui-overlay{position:relative;width:100vw;color:#fff;z-index:10;pointer-events:none}.navbar{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);width:90%;max-width:1200px;display:flex;justify-content:space-between;align-items:center;padding:.5rem 2rem;z-index:100;pointer-events:all;background:#0a0a0a59;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);border-radius:100px;box-shadow:0 10px 30px #0006}.logo{font-weight:900;font-size:1rem;letter-spacing:.2em;color:#fff;text-transform:uppercase;display:flex;align-items:center;gap:.6rem}.logo-icon{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}.logo span{color:#ff4d4d}.logo-img{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:top center;border:1px solid rgba(255,77,77,.4);flex-shrink:0}.nav-links{display:flex;gap:.5rem}.nav-links button{background:transparent;border:none;color:#ffffff80;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;padding:.6rem 1.2rem;transition:all .4s cubic-bezier(.23,1,.32,1);border-radius:100px}.nav-links button:hover{color:#fff;background:#ff4d4d33}.nav-services-btn{color:#ff4d4d!important;border:1px solid rgba(255,77,77,.5)!important;background:transparent!important}.nav-services-btn:hover{background:#ff4d4d!important;color:#fff!important;border-color:#ff4d4d!important}.gameboy-egg-btn{position:fixed;top:2.8rem;right:2.4rem;z-index:99;background:transparent;border:none;cursor:pointer;padding:.4rem;display:flex;align-items:center;justify-content:center;pointer-events:all}.gameboy-egg-icon{width:18px;height:26px;display:block;color:#ffffffe6;transition:color .35s ease,transform .35s cubic-bezier(.23,1,.32,1)}.gameboy-egg-btn:hover .gameboy-egg-icon{color:#ff4d4d;transform:scale(1.2) translateY(-1px)}.gameboy-egg-tooltip{position:absolute;bottom:calc(100% + 8px);right:0;background:#0a0a0ae6;border:1px solid rgba(255,77,77,.4);color:#ff4d4d;font-family:Courier New,monospace;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;padding:.3rem .65rem;border-radius:4px;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}.gameboy-egg-tooltip:after{content:"";position:absolute;top:100%;right:.7rem;border:5px solid transparent;border-top-color:#ff4d4d66}.gameboy-egg-btn:hover .gameboy-egg-tooltip{opacity:1;transform:translateY(0)}html:not(.dark) .gameboy-egg-icon{color:#000000d9}.section{min-height:100vh;width:100%;display:flex;justify-content:flex-start;align-items:center;padding:0 10%;position:relative}.section-content{max-width:600px;text-align:left;pointer-events:all}.section h1{font-size:4rem;font-weight:900;margin-bottom:1.5rem;line-height:1;background:linear-gradient(to bottom right,#fff,#666);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.section h1 span{-webkit-text-fill-color:initial;background:none}.hero-title{display:flex;flex-direction:column;gap:.1em;line-height:1;-webkit-text-fill-color:initial;background:none;width:max-content;max-width:80vw}.hero-greeting{font-size:1rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:#fff6;font-family:Courier New,monospace;margin-bottom:.2em}.hero-name-row{display:flex;align-items:baseline;flex-wrap:nowrap;gap:0 .3em;line-height:1;min-height:1em}.hero-name{font-size:4rem;font-weight:900;color:#fff;letter-spacing:-.01em;line-height:1;flex-shrink:0}.hero-role-row{display:flex;align-items:center;gap:.45em;height:2.2rem;overflow:visible;align-self:center}.hero-role-prefix{font-size:1.4rem;font-weight:700;color:#ff4d4d;flex-shrink:0;line-height:1}.hero-role-clip{position:relative;overflow:hidden;height:2.2rem;display:flex;align-items:center;flex-shrink:0}.hero-role-sizer{visibility:hidden;pointer-events:none;font-size:1.4rem;font-weight:700;letter-spacing:.04em;white-space:nowrap;line-height:1}.hero-role{position:absolute;left:0;top:0;bottom:0;display:flex;align-items:center;font-size:1.4rem;font-weight:700;letter-spacing:.04em;color:#ff4d4d;white-space:nowrap;line-height:1}html:not(.dark) .hero-greeting{color:#0006}html:not(.dark) .hero-name{color:#000}@media(max-width:768px){.hero-name{font-size:clamp(1.8rem,7vw,2.5rem)}.hero-role,.hero-role-prefix{font-size:1rem}.hero-role-row,.hero-role-clip{height:1.6rem}}.section p{font-size:1rem;color:#ffffff80;line-height:1.6;max-width:400px}#work{align-items:flex-end;padding-bottom:4vh}.dl-btn{--dl-bg: #111;--dl-rect: #ff4d4d;--dl-success: #c0392b;--dl-text: #fff;--dl-arrow: #fff;--dl-checkmark: #fff;display:inline-flex;overflow:hidden;text-decoration:none;-webkit-mask-image:-webkit-radial-gradient(white,black);background:var(--dl-bg);border-radius:100px;border:1px solid rgba(255,255,255,.12);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;margin-top:2rem;cursor:pointer}.dl-btn:hover{transform:translateY(-2px);border-color:#ff4d4d;box-shadow:0 0 20px #ff4d4d59}.dl-btn:active{transform:scale(.97)}.dl-btn ul{margin:0;padding:0 32px;list-style:none;text-align:center;position:relative;overflow:hidden;height:60px;backface-visibility:hidden;font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--dl-text);font-family:Courier New,monospace;display:flex;align-items:center;justify-content:center}.dl-btn ul li:not(:first-child){top:16px;left:0;right:0;position:absolute}.dl-btn ul li:nth-child(2){top:76px}.dl-btn ul li:nth-child(3){top:136px}.dl-btn>div{position:relative;width:60px;height:60px;background:var(--dl-rect);flex-shrink:0;border-radius:0 100px 100px 0}.dl-btn>div:before,.dl-btn>div:after{content:"";display:block;position:absolute}.dl-btn>div:before{border-radius:1px;width:2px;top:50%;left:50%;height:17px;margin:-9px 0 0 -1px;background:var(--dl-arrow)}.dl-btn>div:after{width:60px;height:60px;transform-origin:50% 0;border-radius:0 0 80% 80%;background:var(--dl-success);top:0;left:0;transform:scaleY(0)}.dl-btn>div svg{display:block;position:absolute;width:20px;height:20px;left:50%;top:50%;margin:-9px 0 0 -10px;fill:none;z-index:1;stroke-width:2px;stroke:var(--dl-arrow);stroke-linecap:round;stroke-linejoin:round}.dl-btn--loading{cursor:wait;pointer-events:none}.dl-btn--loading ul{animation:dl-text calc(var(--dl-duration) * 1ms) linear forwards calc(var(--dl-duration) * .065ms)}.dl-btn--loading>div:before{animation:dl-line calc(var(--dl-duration) * 1ms) linear forwards calc(var(--dl-duration) * .065ms)}.dl-btn--loading>div:after{animation:dl-bg calc(var(--dl-duration) * 1ms) linear forwards calc(var(--dl-duration) * .065ms)}.dl-btn--loading>div svg{animation:dl-svg calc(var(--dl-duration) * 1ms) linear forwards calc(var(--dl-duration) * .065ms)}@keyframes dl-text{10%,85%{transform:translateY(-100%)}95%,to{transform:translateY(-200%)}}@keyframes dl-line{5%,10%{transform:translateY(-30px)}40%{transform:translateY(-20px)}65%{transform:translateY(0)}75%,to{transform:translateY(30px)}}@keyframes dl-svg{0%,20%{stroke-dasharray:0;stroke-dashoffset:0;opacity:1}12%{opacity:1}20%,89%{opacity:0;stroke-dasharray:26px;stroke-dashoffset:26px;stroke-width:3px;margin:-10px 0 0 -10px;stroke:var(--dl-checkmark)}90%,to{opacity:1;stroke-dasharray:26px;stroke-dashoffset:0;stroke-width:3px;margin:-10px 0 0 -10px;stroke:var(--dl-checkmark)}}@keyframes dl-bg{10%{transform:scaleY(0)}40%{transform:scaleY(.15)}65%{transform:scaleY(.5);border-radius:0 0 50% 50%}75%{border-radius:0 0 50% 50%}75%,to{transform:scaleY(1)}90%,to{border-radius:0}}html:not(.dark) .dl-btn{--dl-bg: #111;--dl-text: #fff}.skills-wrapper{margin-top:3.5rem;width:100%}.skills-header{margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.skills-hint{font-family:Courier New,monospace;font-size:.6rem;color:#ffffff40;letter-spacing:.1em;font-style:italic}.skills-label{font-family:Courier New,monospace;font-size:.7rem;font-weight:700;letter-spacing:.2em;color:#ff4d4d;text-shadow:0 0 10px rgba(255,77,77,.4)}.skills-categories{display:flex;flex-direction:column;gap:1.6rem}.skills-category-label{display:block;font-size:.6rem;font-family:Courier New,monospace;font-weight:700;letter-spacing:.25em;color:#fff3;margin-bottom:.75rem;text-transform:uppercase}.skills-pills{display:flex;flex-wrap:wrap;gap:.6rem}.skill-pill{display:flex;flex-direction:column;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.45rem .9rem .45rem .6rem;cursor:pointer;transition:border-color .3s ease,background .3s ease,box-shadow .3s ease,width .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.skill-pill:hover{border-color:#ff4d4d66;background:#ff4d4d0f;box-shadow:0 0 16px #ff4d4d1a}.skill-pill--active{border-color:#ff4d4d80;background:#ff4d4d0f;box-shadow:0 0 20px #ff4d4d1f;border-radius:12px;width:100%}.skill-pill-header{display:flex;align-items:center;gap:.5rem}.skill-pill-icon{font-size:.85rem;line-height:1}.skill-pill-name{font-size:.75rem;font-weight:700;color:#ffffffb3;letter-spacing:.05em;white-space:nowrap;flex:1}.skill-pill:hover .skill-pill-name,.skill-pill--active .skill-pill-name{color:#fff}.skill-pill-bar{width:36px;height:2px;background:#ffffff14;border-radius:2px;overflow:hidden;margin-left:.3rem}.skill-pill-fill{height:100%;background:linear-gradient(to right,#ff4d4d,#ff6b6b);border-radius:2px}.skill-pill-chevron{font-size:.85rem;color:#ff4d4d99;margin-left:.2rem;transition:color .2s ease}.skill-pill--active .skill-pill-chevron{color:#ff4d4d}.skill-expand{overflow:hidden}.skill-expand-desc{font-size:.68rem;color:#fff9;margin:.6rem 0 .5rem;line-height:1.55;font-family:monospace;border-top:1px solid rgba(255,77,77,.15);padding-top:.6rem}.skill-expand-subs{display:flex;flex-wrap:wrap;gap:.3rem;padding-bottom:.25rem}.skill-expand-sub{font-size:.6rem;font-family:monospace;letter-spacing:.04em;color:#ff6b6b;background:#ff4d4d1a;border:1px solid rgba(255,77,77,.3);padding:.15rem .45rem}.carousel-wrapper{margin-top:1rem;width:100vw;margin-left:-10vw;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);pointer-events:all}.carousel-wrapper--manual{-webkit-mask-image:none;mask-image:none}.carousel-track{display:flex;gap:1.2rem;width:max-content;animation:carousel-scroll 30s linear infinite}@keyframes carousel-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.carousel-card{flex-shrink:0;width:240px;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.6rem;cursor:pointer;transition:border-color .3s ease,background .3s ease,transform .3s ease;position:relative;overflow:hidden}.carousel-card-thumb{width:calc(100% + 3.2rem);margin:-1.6rem -1.6rem 1rem;height:130px;overflow:hidden;border-radius:16px 16px 0 0}.carousel-card-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.carousel-card:hover .carousel-card-thumb img{transform:scale(1.05)}.carousel-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,77,77,.06) 0%,transparent 60%);opacity:0;transition:opacity .3s ease}.carousel-card:hover{border-color:#ff4d4d;background:#ff4d4d0d;transform:translateY(-4px)}.carousel-card:hover:before{opacity:1}.carousel-card-tag{font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#ff4d4d;margin-bottom:.75rem;font-family:Courier New,monospace}.carousel-card h3{font-size:1rem;font-weight:900;color:#fff;margin-bottom:.5rem;letter-spacing:.05em}.carousel-card-mention{display:inline-flex;align-items:center;gap:.3em;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-family:Courier New,monospace;color:#fff;background:linear-gradient(135deg,#ff4d4d40,#ff8c4d26);border:1px solid rgba(255,77,77,.4);border-radius:3px;padding:.2em .5em;margin-bottom:.6rem}.carousel-card p{font-size:.78rem;color:#ffffff73;line-height:1.5;margin-bottom:1rem;max-width:none}.carousel-card-date{font-size:.65rem;color:#ffffff40;font-family:Courier New,monospace;letter-spacing:.1em;display:flex;align-items:center;gap:0}.carousel-card-date__prefix{color:#ff4d4d66;margin-right:.1em;transition:color .3s ease}.carousel-card:hover .carousel-card-date__prefix{color:#ff4d4de6}.carousel-card-date__ch{display:inline-block;transition:color .2s ease,transform .2s ease,text-shadow .2s ease}.carousel-card:hover .carousel-card-date__ch{color:#ff4d4d;text-shadow:0 0 8px rgba(255,77,77,.6);animation:date-ch-pop .35s ease forwards;animation-delay:var(--delay, 0s)}@keyframes date-ch-pop{0%{transform:translateY(0)}40%{transform:translateY(-3px)}to{transform:translateY(0)}}.carousel-card-cta{display:block;margin-top:.75rem;font-size:.6rem;font-family:Courier New,monospace;font-weight:700;letter-spacing:.15em;color:#ff4d4d;opacity:0;transform:translateY(4px);transition:opacity .25s ease,transform .25s ease}.carousel-card:hover .carousel-card-cta{opacity:1;transform:translateY(0)}.project-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1.5rem;pointer-events:all}.project-modal{position:relative;background:#0c0c0cf2;border:1px solid rgba(255,255,255,.1);border-radius:20px;width:100%;max-width:680px;max-height:90vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 40px 80px #000000b3;scrollbar-width:thin;scrollbar-color:rgba(255,77,77,.3) transparent}.modal-close{position:absolute;top:1rem;right:1rem;z-index:10;background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:#ffffffb3;width:2rem;height:2rem;border-radius:50%;cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.modal-close:hover{background:#ff4d4d4d;color:#fff}.media-viewer{position:relative;width:100%;aspect-ratio:16 / 9;background:#0a0a0a;overflow:hidden}.media-placeholder{width:100%;aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.06)}.media-placeholder span{font-family:Courier New,monospace;font-size:.75rem;color:#ffffff2e;letter-spacing:.2em}.media-asset{width:100%;height:100%;object-fit:cover;display:block;border:none}.media-nav{position:absolute;top:50%;transform:translateY(-50%);background:#0000008c;border:1px solid rgba(255,255,255,.15);color:#fff;width:2.4rem;height:2.4rem;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.media-nav:hover{background:#ff4d4d80}.media-nav--prev{left:.75rem}.media-nav--next{right:.75rem}.media-counter{position:absolute;bottom:.6rem;right:.8rem;font-size:.65rem;font-family:Courier New,monospace;color:#fff6;letter-spacing:.1em}.modal-info{padding:1.6rem 2rem 2rem}.modal-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.9rem;flex-wrap:wrap}.modal-tag{font-size:.65rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#ff4d4d;background:#ff4d4d1a;border:1px solid rgba(255,77,77,.3);padding:.2rem .6rem;border-radius:100px;font-family:Courier New,monospace}.modal-company{font-size:.75rem;color:#fff6;font-family:Courier New,monospace;letter-spacing:.08em}.modal-date{font-size:.7rem;color:#ffffff40;font-family:Courier New,monospace;letter-spacing:.1em;margin-left:auto}.modal-title{font-size:1.8rem;font-weight:900;color:#fff;letter-spacing:.05em;margin-bottom:.75rem;line-height:1.1}.modal-desc{font-size:.9rem;color:#ffffff80;line-height:1.7;max-width:none}.carousel-nav{display:flex;align-items:center;gap:.75rem;margin-top:3.5rem;margin-bottom:0}.carousel-nav-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#fff;width:2.2rem;height:2.2rem;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s ease,border-color .2s ease,opacity .2s ease}.carousel-nav-btn:hover:not(:disabled){background:#ff4d4d40;border-color:#ff4d4d}.carousel-nav-btn:disabled{opacity:.25;cursor:default}.carousel-nav-btn--auto{font-size:1rem;border-color:#ff4d4d66;color:#ff4d4d}.carousel-nav-btn--auto:hover{background:#ff4d4d26}.carousel-nav-counter{font-family:Courier New,monospace;font-size:.65rem;font-weight:700;letter-spacing:.15em;color:#ffffff59;min-width:3.5rem;text-align:center}html:not(.dark) .carousel-nav-btn{background:#0000000d;border-color:#00000026;color:#000}html:not(.dark) .carousel-nav-counter{color:#0006}.testimonials-wrapper{margin-top:2.5rem;width:100%}.testimonials-header{margin-bottom:1.2rem}.testimonials-label{font-family:Courier New,monospace;font-size:.7rem;font-weight:700;letter-spacing:.2em;color:#ff4d4d;text-shadow:0 0 10px rgba(255,77,77,.4)}.testimonials-outer{width:100vw;margin-left:-10vw;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);pointer-events:all}.testimonials-track{display:flex;flex-direction:row;gap:1rem;width:max-content;animation:testimonial-scroll 30s linear infinite}@keyframes testimonial-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.testimonial-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.2rem 1.4rem;transition:border-color .3s ease,background .3s ease;flex-shrink:0;width:380px}.testimonial-card:hover{border-color:#ff4d4d59;background:#ff4d4d0a}.testimonial-top{display:flex;align-items:center;gap:.9rem;margin-bottom:.85rem}.testimonial-avatar{width:42px;height:42px;border-radius:50%;background:#ff4d4d26;border:1px solid rgba(255,77,77,.3);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.testimonial-avatar span{font-size:.75rem;font-weight:900;color:#ff4d4d;font-family:Courier New,monospace;letter-spacing:.05em}.testimonial-avatar img{width:100%;height:100%;object-fit:cover}.testimonial-person{display:flex;flex-direction:column;gap:.15rem}.testimonial-name{font-size:.85rem;font-weight:900;color:#fff;letter-spacing:.04em}.testimonial-role{font-size:.65rem;color:#ffffff59;font-family:Courier New,monospace;letter-spacing:.08em}.testimonial-company{font-size:.65rem;color:#ff4d4d;font-family:Courier New,monospace;font-weight:700;letter-spacing:.1em}.testimonial-message{font-size:.78rem;color:#ffffff80;line-height:1.65;font-style:italic;max-width:none}.exp-container{display:flex;flex-direction:column;gap:2rem;margin-top:3rem}.exp-card{border-left:2px solid rgba(255,77,77,.3);padding-left:2rem;position:relative}.exp-card:before{content:"";position:absolute;left:-6px;top:0;width:10px;height:10px;background:#ff4d4d;border-radius:50%;box-shadow:0 0 15px #ff4d4d}.company{display:block;font-size:1.4rem;font-weight:900;color:#fff}.dates{display:block;font-size:.8rem;color:#ff4d4d;margin-bottom:1rem;font-weight:700}#work.section{margin-top:20vh;min-height:unset;padding-bottom:4rem}#experience.section{margin-top:10vh;min-height:unset;padding-bottom:4rem}#contact.section{margin-top:10vh;align-items:flex-start;padding-top:10vh;padding-bottom:3rem;min-height:unset}.contact-wrapper{margin-top:3rem;width:100%}.contact-form{pointer-events:all;display:flex;flex-direction:column;gap:1rem;max-width:450px}.contact-form input,.contact-form textarea{background:#ffffff08;border:1px solid rgba(255,255,255,.1);padding:1.2rem;color:#fff;border-radius:12px;outline:none;font-family:inherit;font-size:.9rem;transition:all .3s ease}.contact-form input:focus,.contact-form textarea:focus{border-color:#ff4d4d;background:#ffffff0f}.creepy-btn{position:relative;background-color:#000;border-radius:12px;border:none;cursor:pointer;letter-spacing:.2em;min-width:100%;min-height:3.8rem;margin-top:1rem;outline:2px solid transparent;transition:outline .1s linear;-webkit-tap-highlight-color:transparent}.creepy-btn__cover{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1;border-radius:inherit;background-color:#ff4d4d;color:#fff;font-family:Courier New,monospace;font-size:.85rem;font-weight:900;text-transform:uppercase;transform-origin:1.25em 50%;transition:background-color .3s ease,transform .3s cubic-bezier(.65,0,.35,1)}.creepy-btn__hint{position:absolute;bottom:12px;right:60px;font-family:Courier New,monospace;font-size:.55rem;letter-spacing:.06em;color:#fff9;white-space:nowrap;font-style:italic}.creepy-btn__eyes{position:absolute;display:flex;align-items:center;gap:6px;right:16px;bottom:10px;height:14px}.creepy-btn__eye{position:relative;background-color:#fff;border-radius:50%;width:14px;height:14px;overflow:hidden;animation:creepy-eye-blink 3s infinite}.creepy-btn__pupil{position:absolute;aspect-ratio:1;background-color:#000;border-radius:50%;top:50%;left:50%;width:7px;transform:translate(-50%,-50%)}.creepy-btn:hover .creepy-btn__cover,.creepy-btn:focus-visible .creepy-btn__cover{background-color:#c00;transform:rotate(-12deg);transition-timing-function:cubic-bezier(.65,0,.35,1.65);box-shadow:0 0 30px #ff4d4d80}.creepy-btn:active .creepy-btn__cover{transform:rotate(0);transition-timing-function:cubic-bezier(.65,0,.35,1)}.creepy-btn:focus-visible{outline:2px solid rgba(255,77,77,.6)}@keyframes creepy-eye-blink{0%,92%,to{height:14px;animation-timing-function:cubic-bezier(.32,0,.67,0)}96%{height:0;animation-timing-function:cubic-bezier(.33,1,.68,1)}}.contact-status{font-family:Courier New,monospace;font-size:.65rem;letter-spacing:.08em;margin-top:.4rem}.contact-status--ok{color:#4dff91}.contact-status--err{color:#ff4d4d}.contact-reply-hint{font-family:Courier New,monospace;font-size:.6rem;color:#ffffff4d;letter-spacing:.08em;margin-top:.6rem;font-style:italic}.social-bar{position:fixed;right:2rem;bottom:2.5rem;z-index:90;display:flex;flex-direction:column;align-items:center;gap:1.1rem;pointer-events:all;background:#0a0a0a59;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);border-radius:100px;padding:1.4rem .9rem;box-shadow:0 10px 30px #0006}.social-link{display:flex;align-items:center;gap:.5rem;color:#ffffff59;text-decoration:none;position:relative;transition:color .25s ease}.social-link:hover{color:#ff4d4d}.social-label{position:absolute;right:calc(100% + .75rem);font-size:.65rem;font-family:Courier New,monospace;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:#fff;background:#0a0a0acc;border:1px solid rgba(255,77,77,.35);padding:.3rem .7rem;border-radius:100px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transform:translate(8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;box-shadow:0 4px 12px #0006}.social-link:hover .social-label{opacity:1;transform:translate(0)}.social-line{display:none}.dancer-hint{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:#000000d9;border:1px solid rgba(255,77,77,.5);border-radius:12px;padding:.6rem .9rem;pointer-events:none;white-space:nowrap;position:absolute;left:52%;top:5%;z-index:10;animation:dancer-hint-float 2.5s ease-in-out infinite}.dancer-hint-icon{color:#ff4d4d;margin-bottom:.1rem;display:flex}.dancer-hint span:not(.dancer-hint-icon){font-family:Courier New,monospace;font-size:.62rem;letter-spacing:.08em;color:#fffc;font-weight:700;text-transform:uppercase}.dancer-hint-sub{color:#fff6!important;font-weight:400!important;font-size:.55rem!important}.dancer-hint-lie{color:#ff4d4d!important;font-style:italic}@keyframes dancer-hint-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.quote-tooltip-wrap{position:relative;display:inline-block;cursor:help}.quote-tooltip{display:block;max-height:0;overflow:hidden;opacity:0;transition:max-height .25s ease,opacity .2s ease,margin-top .2s ease;margin-top:0;width:280px;background:#0a0a0aeb;border:1px solid rgba(255,77,77,.3);color:#ffffffd9;font-size:.72rem;font-style:normal;line-height:1.5;letter-spacing:.03em;padding:0 .85rem;border-radius:6px;pointer-events:none;box-shadow:0 8px 24px #0006}.quote-tooltip-wrap:hover .quote-tooltip{max-height:200px;opacity:1;margin-top:6px;padding:.65rem .85rem}html:not(.dark) .quote-tooltip{background:#f0f0f0f7;border-color:#ff4d4d40;color:#000c;box-shadow:0 4px 16px #0000001a}.footer{padding:2rem 0 .5rem;text-align:left;color:#fff3;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase}.hud-decoration{position:fixed;top:-100px;left:50%;transform:translate(-50%);z-index:50;display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none;transition:opacity .6s ease}.hud-decoration--visible{opacity:1}.hud-decoration--hidden{opacity:0}.hud-text{font-family:Courier New,Courier,monospace;font-size:.8rem;font-weight:700;color:#ff4d4d;letter-spacing:.2em;text-shadow:0 0 10px #ff4d4d;position:relative;animation:glitch 3.5s infinite}.hud-text:before,.hud-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;font-weight:700}.hud-text:before{color:#0fc;animation:glitch-top 3.5s infinite;clip-path:polygon(0 0,100% 0,100% 40%,0 40%)}.hud-text:after{color:#ff4d4d;animation:glitch-bottom 3.5s infinite;clip-path:polygon(0 60%,100% 60%,100% 100%,0 100%)}@keyframes glitch{0%,90%,to{transform:translate(0)}92%{transform:translate(-2px,1px)}94%{transform:translate(2px,-1px)}96%{transform:translate(-1px,2px)}98%{transform:translate(1px,-2px)}}@keyframes glitch-top{0%,90%,to{transform:translate(0);opacity:0}92%{transform:translate(-3px);opacity:.8}94%{transform:translate(3px);opacity:.8}96%{transform:translate(0);opacity:0}}@keyframes glitch-bottom{0%,90%,to{transform:translate(0);opacity:0}93%{transform:translate(3px);opacity:.8}95%{transform:translate(-3px);opacity:.8}97%{transform:translate(0);opacity:0}}.project-indicator{font-family:Courier New,Courier,monospace;font-size:.7rem;color:#0fc;background:#00ffcc1a;padding:.5rem 1rem;border:1px solid #00ffcc;border-radius:4px;text-shadow:0 0 10px #00ffcc;white-space:nowrap}.hud-decoration svg{animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.model-tooltip{background:#0a0a0ab3;border:1px solid rgba(255,77,77,.4);color:#ffffffe6;font-family:Courier New,monospace;font-size:.72rem;padding:.5rem .9rem;border-radius:4px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;white-space:nowrap;pointer-events:none;line-height:1.6}.model-tooltip span{color:#ff4d4dd9;font-size:.65rem}.mute-btn{position:fixed;bottom:10rem;right:24rem;z-index:200;display:flex;align-items:center;gap:.5rem;background:#0a0a0abf;border:1px solid rgba(255,77,77,.45);border-radius:100px;padding:.5rem 1rem;color:#ffffffd9;font-family:Courier New,monospace;font-size:.7rem;font-weight:700;letter-spacing:.08em;cursor:pointer;white-space:nowrap;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 20px #ff4d4d33;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;animation:muteFloat 3s ease-in-out infinite}.mute-btn:hover{background:#ff4d4d33;border-color:#ff4d4d;transform:translateY(-3px) scale(1.04);box-shadow:0 8px 28px #ff4d4d59}.mute-btn--muted{border-color:#fff3;color:#fff6;box-shadow:none}.mute-btn--muted:hover{background:#ffffff0f;border-color:#fff6}.mute-btn-icon{font-size:.9rem;line-height:1}.mute-btn-text{line-height:1}@keyframes muteFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.mute-btn:hover{animation:none}.rotate-hint{display:flex;align-items:center;gap:.45rem;background:#0a0a0ab3;border:1px solid rgba(255,77,77,.35);color:#ffffffb3;font-family:Courier New,monospace;font-size:.7rem;padding:.45rem .8rem;border-radius:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;animation:tooltipFadeIn .6s ease forwards;pointer-events:none;text-shadow:0 0 8px rgba(255,77,77,.3)}.rotate-hint-icon{font-size:.95rem}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.nav-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:2.5rem;height:2.5rem;background:transparent;border:none;cursor:pointer;padding:.3rem;flex-shrink:0;-webkit-tap-highlight-color:transparent}.nav-hamburger__bar{display:block;width:18px;height:2px;background:#ffffffbf;border-radius:2px;transition:transform .3s ease,opacity .3s ease}html:not(.dark) .nav-hamburger__bar{background:#000000b3}.nav-hamburger__bar--top{transform:translateY(7px) rotate(45deg)}.nav-hamburger__bar--mid{opacity:0;transform:scaleX(0)}.nav-hamburger__bar--bot{transform:translateY(-7px) rotate(-45deg)}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;pointer-events:all}.mobile-menu__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.mobile-menu__panel{position:absolute;top:0;right:0;bottom:0;width:min(280px,85vw);background:#080808f7;border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;padding:6rem 1.5rem 2rem;gap:.25rem;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:-20px 0 60px #00000080}html:not(.dark) .mobile-menu__panel{background:#fcfcfcfa;border-left-color:#00000014}.mobile-menu__link{display:block;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.05);color:#fff9;font-family:Courier New,monospace;font-size:.85rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:1rem .25rem;text-align:left;transition:color .2s ease,padding-left .2s ease;width:100%;-webkit-tap-highlight-color:transparent}.mobile-menu__link:last-child{border-bottom:none}.mobile-menu__link:hover,.mobile-menu__link:active{color:#ff4d4d;padding-left:.6rem}html:not(.dark) .mobile-menu__link{color:#0009;border-bottom-color:#0000000f}html:not(.dark) .mobile-menu__link:hover,html:not(.dark) .mobile-menu__link:active{color:#ff4d4d}.mobile-menu__divider{width:100%;height:1px;background:#ff4d4d26;margin:.4rem 0}html:not(.dark) .mobile-menu__divider{background:#00000014}.mobile-menu__link--services{color:#ff4d4d;font-weight:700;letter-spacing:.12em}.mobile-menu__link--services:hover,.mobile-menu__link--services:active{background:#ff4d4d1f;color:#ff4d4d}.mobile-menu__link--gameboy{color:#ff4d4db3;font-size:.75rem;border-bottom:none;display:flex;align-items:center;gap:.5rem}.mobile-menu__link--gameboy:hover,.mobile-menu__link--gameboy:active{color:#ff4d4d}html:not(.dark) .mobile-menu__link--gameboy{color:#c81e1eb3}html:not(.dark) .mobile-menu__link--gameboy:hover{color:#ff4d4d}@media(max-width:1024px){.mute-btn{right:5rem}}@media(max-width:768px){.navbar{width:95%;padding:.75rem 1.2rem}.nav-links{display:none}.nav-hamburger{display:flex}.theme-toggle{--base-scale: 9.5px}.gameboy-egg-btn{display:none}.hud-decoration{top:-20px}.hud-text{font-size:.65rem;letter-spacing:.08em}.hud-decoration svg{width:110px;height:110px}.section h1{font-size:clamp(1.8rem,7vw,2.5rem);margin-bottom:1rem}.section-content{max-width:100%;width:100%}.social-bar{right:.6rem;bottom:1.2rem;padding:.9rem .6rem;gap:.8rem}.social-link svg{width:20px;height:20px}.mute-btn{right:.75rem;bottom:auto;top:5.5rem;font-size:.62rem;padding:.4rem .75rem}.dancer-hint{display:none}.exp-container{gap:1.5rem;margin-top:2rem}.company{font-size:1.15rem}.exp-card{padding-left:1.2rem}.contact-form{max-width:100%}.contact-form input,.contact-form textarea{font-size:1rem}.testimonial-card{width:300px}.carousel-nav-btn{width:2.8rem;height:2.8rem;font-size:1rem}.proj-page{padding:5rem 1.2rem 2rem}}.theme-toggle{--base-scale: 11px;--toggle-width: 5.625em;--toggle-height: 2.5em;--radius-pill: 100em;--sun-diameter: 2.125em;--sun-offset: calc((var(--toggle-height) - var(--sun-diameter)) / 2);--bg-toggle-light: #3d7eae;--bg-toggle-dark: #1d1f2c;--color-sun: #ecca2f;--color-moon: #c4c9d1;--color-crater: #959db1;--color-star: #fff;--color-cloud-front: #f3fdff;--color-cloud-back: #aacadf;--shadow-primary: rgba(0, 0, 0, .25);--shadow-highlight: rgba(255, 255, 255, .94);--halo-color: rgba(255, 255, 255, .1);font-size:var(--base-scale);background:none!important;border:none!important;padding:0!important;border-radius:0!important;flex-shrink:0}.theme-toggle__container{width:var(--toggle-width);height:var(--toggle-height);background-color:var(--bg-toggle-light);border-radius:var(--radius-pill);cursor:pointer;position:relative;transition:background-color .3s ease;overflow:hidden;box-shadow:.06em .06em .125em var(--shadow-highlight)}html.dark .theme-toggle__container{background-color:var(--bg-toggle-dark)}.theme-toggle__container:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 .05em .187em #00000080 inset;border-radius:var(--radius-pill);pointer-events:none}.theme-toggle__sun{width:var(--sun-diameter);height:var(--sun-diameter);background-color:var(--color-sun);border-radius:50%;position:absolute;top:var(--sun-offset);transform:translate(var(--sun-offset));box-shadow:.05em .125em .125em var(--shadow-primary),0 .05em .125em var(--shadow-primary),.05em .05em .05em #feffef9c inset,0 -.05em .05em #a1872a inset,0 0 0 .625em var(--halo-color),0 0 0 1.25em var(--halo-color),0 0 0 1.875em var(--halo-color);transition:transform .3s ease;overflow:hidden}html.dark .theme-toggle__container .theme-toggle__sun{transform:translate(calc(var(--toggle-width) - var(--sun-diameter) - var(--sun-offset)))}.theme-toggle__moon-mask{position:relative;width:100%;height:100%;background-color:var(--color-moon);border-radius:inherit;transform:translate(100%);transition:transform .3s ease;box-shadow:.062em .062em .062em #feffef9c inset,0 -.062em .062em #969696 inset}html.dark .theme-toggle__container .theme-toggle__moon-mask{transform:translate(0)}.theme-toggle__crater{position:absolute;background-color:var(--color-crater);border-radius:50%;box-shadow:0 .03em .06em var(--shadow-primary) inset}.theme-toggle__crater:nth-of-type(1){top:.75em;left:.3em;width:.75em;height:.75em}.theme-toggle__crater:nth-of-type(2){top:.9em;left:1.375em;width:.375em;height:.375em}.theme-toggle__crater:nth-of-type(3){top:.3em;left:.8em;width:.25em;height:.25em}.theme-toggle__stars{position:absolute;left:.3em;transform:translateY(-2em);transition:transform .3s ease;width:2.75em;color:var(--color-star)}html.dark .theme-toggle__container .theme-toggle__stars{transform:translateY(.5em)}.theme-toggle__clouds{position:absolute;left:.3em;top:2em;transform:translateY(0);width:1.25em;height:1.25em;background-color:var(--color-cloud-front);border-radius:50%;box-shadow:.937em .312em var(--color-cloud-front),1.437em .375em var(--color-cloud-front),2.187em 0 var(--color-cloud-front),2.937em .312em var(--color-cloud-front),3.625em -.062em var(--color-cloud-front),4.5em -.312em var(--color-cloud-front),4.625em -1.75em 0 .437em var(--color-cloud-front),-.312em -.312em var(--color-cloud-back),.5em -.125em var(--color-cloud-back),1.25em -.062em var(--color-cloud-back),2em -.312em var(--color-cloud-back),2.625em 0 var(--color-cloud-back),3.375em -.437em var(--color-cloud-back),4em -.625em var(--color-cloud-back),4.125em -2.125em 0 .437em var(--color-cloud-back);transition:transform .3s ease}html.dark .theme-toggle__container .theme-toggle__clouds{transform:translateY(3em)}.theme-toggle__container:hover .theme-toggle__sun{transform:translate(calc(var(--sun-offset) + .187em))}html.dark .theme-toggle__container:hover .theme-toggle__sun{transform:translate(calc(var(--toggle-width) - var(--sun-diameter) - var(--sun-offset) - .187em))}html:not(.dark) .navbar{background:#fffffff2;border-color:#00000014;box-shadow:0 10px 30px #0000001f}html:not(.dark) .logo{color:#000}html:not(.dark) .nav-links button{color:#000}html:not(.dark) .nav-links button:hover{color:#fff;background:#ff4d4d}html:not(.dark) .section-content{background:transparent}html:not(.dark) .section h1{background:none;-webkit-background-clip:unset;-webkit-text-fill-color:#000;color:#000}html:not(.dark) .section h1 span{color:#000!important;-webkit-text-fill-color:#000!important}html:not(.dark) .section p{color:#000}html:not(.dark) .skill-pill{background:#fff;border-color:#0000001f}html:not(.dark) .skill-pill:hover,html:not(.dark) .skill-pill--active{background:#ff4d4d0d;border-color:#ff4d4d66}html:not(.dark) .skill-pill-name{color:#111}html:not(.dark) .skill-pill-icon{color:#111}html:not(.dark) .skill-pill:hover .skill-pill-icon,html:not(.dark) .skill-pill--active .skill-pill-icon{color:#c20}html:not(.dark) .skill-pill:hover .skill-pill-name,html:not(.dark) .skill-pill--active .skill-pill-name{color:#c20}html:not(.dark) .skill-pill-bar{background:#0000001a}html:not(.dark) .skill-expand-desc{color:#000000a6;border-top-color:#ff4d4d33}html:not(.dark) .skills-category-label{color:#00000073}html:not(.dark) .carousel-card{background:#ffffff73;border-color:#00000014;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}html:not(.dark) .carousel-card:hover{background:#ff4d4d26;border-color:#ff4d4d}html:not(.dark) .carousel-card h3{color:#000}html:not(.dark) .carousel-card p{color:#0009}html:not(.dark) .carousel-card-date{color:#00000059}html:not(.dark) .carousel-card-date__prefix{color:#c81e1e66}html:not(.dark) .carousel-card:hover .carousel-card-date__prefix{color:#c81e1ed9}html:not(.dark) .carousel-card:hover .carousel-card-date__ch{color:#c20;text-shadow:0 0 8px rgba(200,30,30,.35)}html:not(.dark) .testimonial-card{background:#ffffff73;border-color:#00000014;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}html:not(.dark) .testimonial-name{color:#000}html:not(.dark) .testimonial-role{color:#00000073}html:not(.dark) .testimonial-message{color:#000000a6}html:not(.dark) .company{color:#000}html:not(.dark) .exp-card p{color:#000000a6}html:not(.dark) .project-modal{background:#fff;border-color:#0000001a}html:not(.dark) .modal-title{color:#000}html:not(.dark) .modal-desc{color:#000000a6}html:not(.dark) .modal-company{color:#00000073}html:not(.dark) .modal-date{color:#00000059}html:not(.dark) .modal-close{background:#0000000f;border-color:#0000001a;color:#000}html:not(.dark) .modal-close:hover{background:#ff4d4d;color:#fff}html:not(.dark) .social-bar{background:#fffffff2;border-color:#00000014;box-shadow:0 10px 30px #0000001f}html:not(.dark) .social-link{color:#000}html:not(.dark) .social-link:hover{color:#ff4d4d}html:not(.dark) .social-label{background:#fff;color:#000;border-color:#ff4d4d66}html:not(.dark) .contact-form input,html:not(.dark) .contact-form textarea{background:#fff;border-color:#00000026;color:#000}html:not(.dark) .contact-form input::placeholder,html:not(.dark) .contact-form textarea::placeholder{color:#00000059}html:not(.dark) .contact-form input:focus,html:not(.dark) .contact-form textarea:focus{background:#fff;border-color:#ff4d4d}html:not(.dark) .creepy-btn{background-color:#fff}html:not(.dark) .contact-reply-hint{color:#00000059}html:not(.dark) .creepy-btn__hint{color:#000000b3}html:not(.dark) .creepy-btn__eye{background-color:#fff;outline:1.5px solid rgba(0,0,0,.4)}html:not(.dark) .creepy-btn__cover{background-color:#ff4d4d}html:not(.dark) .creepy-btn:hover .creepy-btn__cover{background-color:#c00}html:not(.dark) .footer{color:#0006}.proj-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0a0a0a;overflow-y:auto;overflow-x:hidden;font-family:Share Tech Mono,monospace;color:#e0e0e0}.pp-header{position:sticky;top:0;z-index:95;display:flex;align-items:center;gap:1.5rem;padding:.85rem 2rem;background:#0a0a0aeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,77,77,.2)}.pp-back{background:none;border:1px solid rgba(255,77,77,.5);color:#ff4d4d;font-family:inherit;font-size:.75rem;letter-spacing:.12em;padding:.35rem .9rem;cursor:pointer;transition:background .2s,color .2s;flex-shrink:0}.pp-back:hover{background:#ff4d4d26}.pp-title{font-size:clamp(.85rem,2vw,1.1rem);letter-spacing:.18em;color:#fff;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-header-meta{display:flex;gap:1rem;flex-shrink:0}.pp-nav{display:flex;gap:.5rem;flex-shrink:0;margin-left:auto}.pp-nav-btn{background:none;border:1px solid rgba(255,255,255,.18);color:#ffffffa6;font-family:inherit;font-size:.68rem;letter-spacing:.12em;padding:.3rem .75rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.pp-nav-btn:hover:not(:disabled){border-color:#ff4d4d99;color:#ff4d4d;background:#ff4d4d14}.pp-nav-btn:disabled{opacity:.25;cursor:default}html:not(.dark) .pp-nav-btn{border-color:#0003;color:#0000008c}html:not(.dark) .pp-nav-btn:hover:not(:disabled){border-color:#ff4d4d99;color:#c20;background:#ff4d4d0f}.pp-kind{font-size:.68rem;letter-spacing:.15em;color:#ff4d4d;border:1px solid rgba(255,77,77,.4);padding:.2rem .55rem}.pp-date{font-size:.68rem;letter-spacing:.12em;color:#fff6}.pp-wip-badge{display:inline-block;margin-left:.75rem;font-size:.5rem;font-weight:700;letter-spacing:.15em;padding:.15rem .45rem;border:1px solid #f5a623;color:#f5a623;vertical-align:middle;animation:wip-pulse 2s ease-in-out infinite}@keyframes wip-pulse{0%,to{opacity:1}50%{opacity:.45}}.pp-content{max-width:1200px;margin:0 auto;padding:2.5rem 2rem 5rem;display:flex;flex-direction:column;gap:4rem}.pp-section{display:flex;flex-direction:column;gap:1.8rem}.pp-section__label{font-size:.7rem;letter-spacing:.22em;color:#ff4d4db3;border-bottom:1px solid rgba(255,77,77,.15);padding-bottom:.5rem}.pp-about-grid{display:grid;grid-template-columns:3fr 2fr;gap:2.5rem;align-items:start}@media(max-width:800px){.pp-about-grid{grid-template-columns:1fr}}.pp-main-media{display:flex;flex-direction:column;gap:.75rem}.pp-media-asset{width:100%;height:420px;object-fit:cover;border:1px solid rgba(255,77,77,.2);background:#111;display:block}.pp-video-wrap{position:relative;width:100%;height:420px;background:#000;border:1px solid rgba(255,77,77,.2)}.pp-video-wrap iframe.pp-media-asset{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;display:block;aspect-ratio:unset;min-height:unset;object-fit:unset}.pp-thumbs{display:flex;gap:.5rem;flex-wrap:wrap}.pp-thumb{width:56px;height:40px;border:1px solid rgba(255,255,255,.15);background:#111;cursor:pointer;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.pp-thumb:hover{border-color:#ff4d4d80}.pp-thumb--active{border-color:#ff4d4d}.pp-thumb img{width:100%;height:100%;object-fit:cover}.pp-thumb-yt{font-size:1rem;color:#ff4d4d}.pp-drive-folder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:100%;height:100%;min-height:260px;background:linear-gradient(135deg,#1a1a1ae6,#282828e6);border:1px solid rgba(255,77,77,.2);border-radius:6px;color:#ccc;text-decoration:none;font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.05em;transition:border-color .2s,color .2s}.pp-drive-folder:hover{border-color:#ff4d4d80;color:#fff}.pp-drive-icon{width:48px;height:48px;color:#ff4d4d}.pp-drive-arrow{font-size:1.1rem;color:#ff4d4d}.pp-about-info{display:flex;flex-direction:column;gap:1.2rem}.pp-company{font-size:.72rem;letter-spacing:.14em;color:#ff4d4db3;margin:0}.pp-about-text{font-size:.88rem;line-height:1.75;color:#ffffffbf;margin:0}.pp-tech-stack{display:flex;flex-direction:column;gap:.6rem}.pp-tech-label{font-size:.65rem;letter-spacing:.2em;color:#ffffff59}.pp-tech-pills{display:flex;flex-wrap:wrap;gap:.45rem}.pp-tech-pill{font-size:.68rem;letter-spacing:.1em;padding:.25rem .65rem;border:1px solid rgba(255,77,77,.35);color:#ffffffa6;background:#ff4d4d0f}.pp-link{display:inline-block;font-size:.72rem;letter-spacing:.18em;color:#ff4d4d;text-decoration:none;border:1px solid rgba(255,77,77,.4);padding:.45rem 1rem;align-self:flex-start;transition:background .2s}.pp-link:hover{background:#ff4d4d1f}.pp-hood-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}@media(max-width:800px){.pp-hood-grid{grid-template-columns:1fr}}.pp-sub-heading{font-size:.7rem;letter-spacing:.2em;color:#ffffff73;margin:0 0 1rem}.pp-did-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.7rem}.pp-did-item{font-size:.83rem;line-height:1.6;color:#ffffffb8;display:flex;gap:.6rem;align-items:flex-start}.pp-did-bullet{color:#ff4d4d;flex-shrink:0;margin-top:.15em}.pp-code-snippets{display:flex;flex-direction:column;gap:1.4rem}.pp-snippet{border:1px solid rgba(255,77,77,.22);background:#0d0d0d;border-radius:6px;overflow:hidden;box-shadow:0 4px 24px #00000080,0 0 0 1px #ffffff0a}.pp-snippet__bar{display:flex;align-items:center;gap:.75rem;padding:.55rem 1rem;background:#1a1a1a;border-bottom:1px solid rgba(255,255,255,.06)}.pp-snippet__dots{display:flex;gap:6px;flex-shrink:0}.pp-dot{width:12px;height:12px;border-radius:50%;display:block}.pp-dot--red{background:#ff5f57}.pp-dot--yellow{background:#febc2e}.pp-dot--green{background:#28c840}.pp-snippet__label{font-size:.7rem;letter-spacing:.1em;color:#ffffff80;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-snippet__lang{font-size:.62rem;letter-spacing:.14em;color:#ff4d4d;background:#ff4d4d1a;border:1px solid rgba(255,77,77,.25);padding:.15rem .5rem;border-radius:3px;flex-shrink:0}.pp-snippet__copy{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#ffffff80;font-family:inherit;font-size:.62rem;letter-spacing:.14em;padding:.2rem .65rem;cursor:pointer;border-radius:3px;transition:background .15s,color .15s,border-color .15s;flex-shrink:0}.pp-snippet__copy:hover{background:#ffffff1f;color:#fff;border-color:#ffffff40}.pp-snippet__copy--done{background:#28c84026;border-color:#28c84066;color:#28c840}.pp-snippet__copy--done:hover{background:#28c84033;color:#28c840}.pp-snippet__body{display:flex;overflow-x:auto}.pp-snippet__line-nums{display:flex;flex-direction:column;padding:1rem .75rem 1rem 1rem;background:#ffffff05;border-right:1px solid rgba(255,255,255,.05);-webkit-user-select:none;user-select:none;flex-shrink:0}.pp-snippet__line-nums span{font-family:Share Tech Mono,monospace;font-size:.74rem;line-height:1.65;color:#fff3;text-align:right;min-width:1.8em;display:block}.pp-snippet__code{margin:0;padding:1rem 1.25rem;font-family:Share Tech Mono,monospace;font-size:.74rem;line-height:1.65;color:#e0e0e0;white-space:pre;flex:1;min-width:0}html:not(.dark) .pp-snippet{background:#f8f8f8;border-color:#0000001f;box-shadow:0 4px 20px #00000014}html:not(.dark) .pp-snippet__bar{background:#ebebeb;border-bottom-color:#00000014}html:not(.dark) .pp-snippet__label{color:#00000073}html:not(.dark) .pp-snippet__line-nums{background:#00000005;border-right-color:#0000000f}html:not(.dark) .pp-snippet__line-nums span{color:#00000040}html:not(.dark) .pp-snippet__code{color:#1a1a1a}html:not(.dark) .pp-snippet__copy{background:#0000000d;border-color:#00000026;color:#00000080}html:not(.dark) .pp-snippet__copy:hover{background:#0000001a;color:#000}html:not(.dark) .pp-deadline{background:#fff;border-color:#ff4d4d40}html:not(.dark) .pp-deadline__dur{color:#000c}html:not(.dark) .pp-designer path,html:not(.dark) .pp-designer circle{fill:#1a1a1a}html:not(.dark) .pp-fire-bg{fill:#fff}.pp-process-images{margin-top:1rem}.pp-process-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1rem}.pp-process-img img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(255,77,77,.18)}.pp-process-caption{font-size:.68rem;color:#fff6;margin:.4rem 0 0;letter-spacing:.08em}.pp-deadline{background:#0d0d0d;border:1px solid rgba(255,77,77,.2);padding:.5rem .75rem 0;overflow:hidden;display:inline-flex;flex-direction:column;width:100%;max-width:260px}.pp-deadline__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.pp-deadline__title{font-size:.6rem;letter-spacing:.18em;color:#ff4d4d99}.pp-deadline__dur{font-size:.68rem;letter-spacing:.14em;color:#ffffffd9;font-family:Share Tech Mono,monospace}.pp-deadline__svg{width:100%;overflow:hidden;line-height:0}.pp-deadline__svg svg{width:100%;height:auto;display:block}html:not(.dark) .proj-page{background:#f5f5f5;color:#1a1a1a}html:not(.dark) .pp-header{background:#f5f5f5f2;border-bottom-color:#ff4d4d33}html:not(.dark) .pp-title{color:#111}html:not(.dark) .pp-date{color:#00000073}html:not(.dark) .pp-about-text{color:#000000bf}html:not(.dark) .pp-company{color:#c81e1ecc}html:not(.dark) .pp-tech-pill{color:#000000a6;background:#ff4d4d0d;border-color:#ff4d4d4d}html:not(.dark) .pp-did-item{color:#000000b8}html:not(.dark) .pp-snippet{background:#fff;border-color:#ff4d4d33}html:not(.dark) .pp-snippet__code{color:#000000d1}html:not(.dark) .pp-snippet__header{background:#ff4d4d0a}html:not(.dark) .pp-media-asset{border-color:#ff4d4d33}html:not(.dark) .pp-thumb{background:#eee;border-color:#00000026}html:not(.dark) .pp-process-img img{border-color:#ff4d4d33}@media(max-width:480px){.navbar{padding:.65rem 1rem}.theme-toggle{--base-scale: 8.5px}.section h1{font-size:clamp(1.45rem,6.5vw,1.9rem)}.section p{font-size:.9rem}.social-bar{right:.4rem;padding:.8rem .5rem;gap:.65rem}.social-link svg{width:18px;height:18px}.company{font-size:1rem}.dates{font-size:.72rem}.mute-btn{padding:.35rem .6rem;font-size:.56rem}.carousel-card{width:210px}.testimonial-card{width:270px}.proj-page{padding:4.5rem .9rem 2rem}.proj-page__title{font-size:clamp(1.1rem,5.5vw,1.5rem)}.gameboy-egg-btn{right:3.5rem}}.loading-rotate{display:flex;flex-direction:column;align-items:center;gap:.65rem;margin-top:1.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,77,77,.18);opacity:0;transform:translateY(10px);transition:opacity .5s ease .3s,transform .5s ease .3s;pointer-events:none}.loading-rotate--visible{opacity:1;transform:translateY(0)}.loading-rotate-icon{color:#ff4d4d;filter:drop-shadow(0 0 10px rgba(255,77,77,.5));animation:ls-phone-tilt 2.6s cubic-bezier(.4,0,.6,1) infinite;display:block}@keyframes ls-phone-tilt{0%,18%{transform:rotate(0) scale(1)}28%{transform:rotate(-20deg) scale(1.08)}50%,68%{transform:rotate(-90deg) scale(1)}78%{transform:rotate(-70deg) scale(1.08)}90%,to{transform:rotate(0) scale(1)}}@keyframes ls-ring-pulse{0%,30%{opacity:0;transform:scale(.85)}55%,65%{opacity:.6;transform:scale(1)}80%,to{opacity:0;transform:scale(1.1)}}.loading-rotate-ring{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border:1.5px solid rgba(255,77,77,.5);border-radius:50%;animation:ls-ring-pulse 2.6s cubic-bezier(.4,0,.6,1) infinite;pointer-events:none}.loading-rotate-icon-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:52px;height:52px}.loading-rotate-title{font-family:Courier New,monospace;font-size:.7rem;font-weight:700;letter-spacing:.22em;color:#ff4d4d;text-shadow:0 0 8px rgba(255,77,77,.45);text-transform:uppercase;text-align:center}.loading-rotate-sub{font-family:Courier New,monospace;font-size:.57rem;color:#ffffff4d;letter-spacing:.1em;text-align:center}.portrait-banner{position:fixed;bottom:1.3rem;left:50%;transform:translate(-50%);z-index:200;display:flex;align-items:center;gap:.65rem;background:#080808e6;border:1px solid rgba(255,77,77,.4);border-radius:100px;padding:.5rem 1.1rem .5rem .75rem;pointer-events:none;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 6px 24px #00000080;animation:portrait-banner-in .45s cubic-bezier(.23,1,.32,1) forwards}@keyframes portrait-banner-in{0%{opacity:0;transform:translate(-50%) translateY(14px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.portrait-banner-icon{color:#ff4d4d;animation:ls-phone-tilt 2.6s cubic-bezier(.4,0,.6,1) infinite;flex-shrink:0;display:block}.portrait-banner-text{font-family:Courier New,monospace;font-size:.6rem;font-weight:700;letter-spacing:.13em;color:#ffffffb3;white-space:nowrap}.portrait-banner-text em{color:#ff4d4d;font-style:normal}.portrait-banner--out{animation:none!important;opacity:0!important;transform:translate(-50%) translateY(14px)!important;transition:opacity .35s ease,transform .35s ease!important}@media(max-height:500px)and (orientation:landscape){#home.section{align-items:flex-start;padding-top:170px}.ui-overlay{font-size:90%}.section h1{font-size:clamp(1.6rem,6vw,2.2rem)}.navbar{padding:.7rem 1.5rem;top:.8rem}.section p{font-size:.82rem}}.cursor-dot{width:8px;height:8px;background:#ff4d4d;border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}.cursor-ring{width:40px;height:40px;border:1px solid rgba(255,77,77,.5);border-radius:50%;position:fixed;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .2s cubic-bezier(.16,1,.3,1),height .2s cubic-bezier(.16,1,.3,1),border .2s,background .2s}.cursor-dot.hover{width:12px;height:12px;background:#fff}.cursor-ring.hover{width:70px;height:70px;border:1px solid #ff4d4d;background:#ff4d4d1a}@media(max-width:768px),(pointer:coarse){.cursor-dot,.cursor-ring{display:none}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0a0a0a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}#root{width:100vw;height:100vh}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0;text-transform:uppercase;letter-spacing:.1em}a{font-weight:500;color:#ff6b6b;text-decoration:inherit}a:hover{color:#ff4d4d}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:#ff4d4d}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}
