.home{min-height:100vh;position:relative}.hero{scroll-snap-align:start;scroll-snap-stop:always;flex-direction:column;justify-content:center;max-width:1100px;min-height:100vh;margin:0 auto;padding:0 40px;display:flex}.eyebrow,.section-label{letter-spacing:.2em;margin-bottom:24px;font-size:.8rem;font-weight:700}.eyebrow{color:#646cff}.hero h1{letter-spacing:-.06em;margin:0;font-size:clamp(4rem,10vw,8rem);line-height:.95}.hero h1 span{color:#646cff}.intro{color:#aaa;max-width:650px;margin-top:32px;font-size:1.3rem;line-height:1.7}.hero-buttons{gap:16px;margin-top:40px;display:flex}.button{border-radius:8px;padding:14px 24px;font-weight:600;text-decoration:none;transition:transform .2s,opacity .2s;display:inline-block}.button:hover{opacity:.85;transform:translateY(-2px)}.primary{color:#fff;background:#646cff}.secondary{color:#fff;border:1px solid #444}.section-label{color:#646cff}.section h2{letter-spacing:-.04em;margin:0 0 32px;font-size:clamp(2.5rem,6vw,5rem)}.section p:not(.section-label){color:#aaa;max-width:700px;font-size:1.1rem;line-height:1.8}@media (width<=600px){.hero{padding:0 24px}.hero-buttons{flex-direction:column;align-items:flex-start}.section{padding:100px 24px}}.experience{max-width:900px;margin:0 auto;padding:140px 40px}.experience-header{margin-bottom:70px}.experience-item{grid-template-columns:180px 1fr;gap:40px;padding:20px 0;display:grid}.experience-meta{color:#777;flex-direction:column;gap:8px;font-size:.9rem;line-height:1.5;display:flex}.experience-content h3{margin:0;font-size:2rem}.experience-content h4{color:#646cff;margin:8px 0 24px;font-size:1.1rem}.experience-content p{color:#aaa;max-width:650px;font-size:1.1rem;line-height:1.8}.experience-tech{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.experience-tech span{color:#aaa;border:1px solid #333;border-radius:6px;padding:7px 12px;font-size:.85rem}@media (width<=600px){.experience{padding:100px 24px}.experience-item{grid-template-columns:1fr;gap:24px}}.home{min-height:100vh;position:relative;overflow:hidden}.home:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:50px 50px;animation:5s linear infinite grid-drift;position:fixed;inset:0}@keyframes grid-drift{0%{background-position:0 0}to{background-position:100px 100px}}.section{box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;place-items:center;width:100%;height:100vh;margin:0;padding:40px;display:grid}.go-to-top{z-index:100;color:#777;font:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:0;font-size:.8rem;transition:color .2s,transform .2s;display:flex;position:fixed;top:90px;left:50%;transform:translate(-50%)}.go-to-top:hover{color:#fff;transform:translate(-50%)translateY(-2px)}.go-to-top-arrow{font-size:1.1rem;line-height:1}@media (width<=600px){.home{overflow-x:hidden}@media (width<=600px){.section{justify-content:center;align-items:center;height:auto;min-height:auto;padding:60px 24px;display:flex;overflow:visible}}.hero{box-sizing:border-box;justify-content:center;width:100%;min-height:100vh;padding:100px 24px 60px}.hero h1{font-size:clamp(3.2rem,16vw,5rem);line-height:.95}.intro{margin-top:24px;font-size:1.05rem;line-height:1.7}.hero-buttons{flex-direction:column;gap:12px;width:100%;margin-top:32px}.hero-buttons .button{box-sizing:border-box;text-align:center;width:100%}.section h2{margin-bottom:24px;font-size:clamp(2.5rem,12vw,4rem);line-height:1}.section p:not(.section-label){font-size:1rem;line-height:1.7}.experience{box-sizing:border-box;width:100%;max-width:none;padding:100px 24px}.experience-header{margin-bottom:50px}.experience-item{grid-template-columns:1fr;gap:16px;padding:30px 0}.experience-content h3{font-size:1.7rem}.experience-content h4{margin-bottom:18px;font-size:1rem}.experience-content p{font-size:1rem;line-height:1.7}.go-to-top{top:80px}.section,.hero{scroll-snap-align:none;scroll-snap-stop:normal}}.hero{position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background:radial-gradient(#646cff29 0%,#646cff14 30%,#646cff08 55%,#0000 75%);width:800px;height:700px;position:absolute;top:-100px;left:61%;transform:translate(-50%)}.hero>*{z-index:1;position:relative}.eyebrow{color:#646cff;letter-spacing:.2em;margin-bottom:24px;font-size:.8rem;font-weight:700;position:relative}.navbar{box-sizing:border-box;z-index:1000;-webkit-backdrop-filter:blur(12px);background:#0a0a0a73;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;width:100%;height:70px;padding:0 40px;display:flex;position:fixed;top:0;left:0}.logo{color:#fff;letter-spacing:-.04em;font-size:1.4rem;font-weight:700;text-decoration:none}.nav-links{align-items:center;gap:32px;display:flex}.nav-links a{color:#aaa;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .2s}@media (width<=600px){.navbar{-webkit-backdrop-filter:none;background:#0a0a0a;height:auto;min-height:64px;padding:14px 20px}.nav-links{gap:14px}.nav-links a{font-size:.72rem}.logo{font-size:1.2rem}}.see-more{color:#646cff;align-items:center;gap:8px;margin-top:40px;font-weight:600;text-decoration:none;transition:color .2s,transform .2s;display:inline-flex}.see-more:hover{color:#fff;transform:translate(4px)}.glass-section{box-sizing:border-box;-webkit-backdrop-filter:blur(8px);background:#ffffff04;border:1px solid #ffffff17;border-radius:24px;width:min(1200px,100%);height:fit-content;padding:40px 80px;position:relative;overflow:hidden;box-shadow:0 20px 50px #0000002e,inset 0 1px 1px #ffffff0f}.glass-section:before{content:"";pointer-events:none;background:#ffffff2e;height:1px;position:absolute;top:0;left:8%;right:8%}.glass-section>*{z-index:1;position:relative}.glass-section:after{content:"";left:var(--mouse-x,75%);top:var(--mouse-y,25%);pointer-events:none;background:radial-gradient(circle,#646cff1a,#0000 70%);width:450px;height:450px;transition:left .15s ease-out,top .15s ease-out;position:absolute;transform:translate(-50%,-50%)}.projects-carousel{perspective:1200px;cursor:pointer;justify-content:center;align-items:center;height:500px;display:flex;position:relative}.project-card{width:min(700px,65%);height:400px;transform-style:preserve-3d;background:#111;border:1px solid #ffffff1a;border-radius:20px;transition:transform .6s,opacity .6s,filter .6s;position:absolute;overflow:hidden}.project-card img{object-fit:contain;width:100%;height:100%;display:block}.project-card.current{opacity:1;filter:none;z-index:3;transform:translate(0)scale(1)translateZ(0)}.project-card.previous{opacity:.4;filter:brightness(.55);z-index:2;transform:translate(-65%)scale(.75)translateZ(-150px)rotateY(12deg)}.project-card.next{opacity:.4;filter:brightness(.55);z-index:2;transform:translate(65%)scale(.75)translateZ(-150px)rotateY(-12deg)}.project-card.hidden{opacity:0;pointer-events:none;z-index:1;transform:translate(0)scale(.5)translateZ(-300px)}.project-title{background:linear-gradient(#0000,#000c);padding:20px;font-size:1.1rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}@media (width<=600px){.projects-carousel{perspective:800px;width:100%;height:300px;overflow:hidden}.project-card{border-radius:16px;width:90%;height:240px}.project-card.previous{opacity:.35;transform:translate(-55%)scale(.72)translateZ(-100px)rotateY(8deg)}.project-card.next{opacity:.35;transform:translate(55%)scale(.72)translateZ(-100px)rotateY(-8deg)}.project-card.hidden{transform:translate(0)scale(.5)translateZ(-200px)}.project-title{padding:14px;font-size:.95rem}}.contact-links{gap:20px;margin-top:40px;display:flex}.contact-links a{color:#aaa;background:#ffffff05;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:8px;padding:14px 20px;text-decoration:none;transition:color .2s,background .2s,border-color .2s,transform .2s;display:inline-flex}.contact-links a:hover{color:#fff;background:#ffffff0d;border-color:#ffffff2e;transform:translateY(-2px)}.contact-links svg{flex-shrink:0;width:22px;height:22px}.contact-links span{line-height:1}@media (width<=600px){.contact-links{grid-template-columns:1fr 1fr;gap:12px;width:100%;margin-top:32px;display:grid}.contact-links a{box-sizing:border-box;white-space:nowrap;justify-content:center;gap:6px;min-width:0;padding:12px 10px;font-size:.8rem}.contact-links svg{width:19px;height:19px}.contact-links span{text-overflow:ellipsis;overflow:hidden}}.footer{z-index:100;color:#666;justify-content:center;align-items:center;gap:24px;padding:16px 40px;font-size:.8rem;display:flex;position:fixed;bottom:0;left:0;right:0}.footer p{margin:0}.footer a{color:#666;text-decoration:none;transition:color .2s}.footer a:hover{color:#fff}@media (width<=600px){.footer{-webkit-backdrop-filter:none;background:#0a0a0a}}.page{box-sizing:border-box;flex-direction:column;align-items:center;min-height:100vh;padding:120px 40px 100px;display:flex}.page-back,.card{width:min(1000px,100%)}.card:after{content:none}.card h1{letter-spacing:-.05em;margin:0 0 12px;font-size:clamp(3rem,7vw,5rem);font-weight:700}.card-updated{color:#666;margin:0;font-size:.9rem}.card section{margin-top:50px}.card section h2{margin:0 0 16px;font-size:1.5rem;font-weight:700}.card section p{color:#aaa;max-width:750px;margin:0 0 16px;font-size:1rem;line-height:1.8}.back-home{color:#646cff;align-items:center;margin-bottom:20px;font-weight:600;text-decoration:none;transition:color .2s,transform .2s;display:inline-flex}.back-home:hover{color:#fff;transform:translate(-3px)}.resume-link{color:#646cff;align-items:center;gap:8px;margin-top:20px;font-weight:600;text-decoration:none;transition:color .2s,transform .2s;display:inline-flex}.resume-link:hover{color:#fff;transform:translate(4px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y mandatory}body{color:#f5f5f5;background:#0d0d0f;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}::selection{color:#fff;background:#646cff}.navbar{z-index:100;justify-content:space-between;align-items:center;padding:24px 40px;display:flex;position:fixed;top:0;left:0;right:0}.logo{letter-spacing:-.05em;font-size:1.25rem;font-weight:800;text-decoration:none}.nav-links{gap:32px;display:flex}.nav-links a{color:#aaa;font-size:.9rem;text-decoration:none;transition:color .2s}.nav-links a:hover{color:#fff}@media (width<=600px){.navbar{padding:20px 24px}.nav-links{gap:16px}.nav-links a{font-size:.8rem}}.projects-page{padding-top:120px;padding-bottom:140px}.projects-page-header{width:min(1000px,100%);margin-bottom:70px}.projects-page-header h1{letter-spacing:-.05em;margin:0 0 24px;font-size:clamp(3rem,7vw,5rem);font-weight:700}.projects-page-header>p:not(.section-label){color:#aaa;max-width:750px;margin:0;font-size:1.1rem;line-height:1.8}.project-showcase{box-sizing:border-box;-webkit-backdrop-filter:blur(8px);background:#ffffff04;border:1px solid #ffffff17;border-radius:24px;grid-template-columns:1fr 1fr;align-items:center;gap:50px;width:min(1000px,100%);margin-bottom:60px;padding:50px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 50px #0000002e,inset 0 1px 1px #ffffff0f}.project-showcase:before{content:"";background:#ffffff2e;height:1px;position:absolute;top:0;left:8%;right:8%}.project-showcase-reverse .project-showcase-content{order:2}.project-showcase-reverse .project-carousel{order:1}.project-showcase-content{z-index:1;position:relative}.project-number{color:#646cff;letter-spacing:.2em;margin:0 0 12px;font-size:.8rem;font-weight:700}.project-showcase h2{letter-spacing:-.04em;margin:0 0 24px;font-size:clamp(2rem,4vw,3rem)}.project-description{color:#aaa;max-width:650px;margin:0 0 20px;font-size:1rem;line-height:1.8}.project-technologies{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.project-technologies span{color:#aaa;border:1px solid #ffffff1a;border-radius:6px;padding:7px 12px;font-size:.8rem}.project-carousel{perspective:1200px;justify-content:center;align-items:center;height:500px;display:flex;position:relative;overflow:hidden}.project-carousel-image{width:min(100%,400px);height:300px;transform-style:preserve-3d;background:#111;border:1px solid #ffffff1a;border-radius:20px;transition:transform .6s,opacity .6s,filter .6s;position:absolute;overflow:hidden}.project-carousel-image img{object-fit:contain;width:100%;height:100%;display:block}.project-carousel-image.current{opacity:1;filter:none;z-index:3;cursor:zoom-in;transform:translateY(0)scale(1)translateZ(0)}.project-carousel-image.previous{opacity:.4;filter:brightness(.55);z-index:2;cursor:pointer;transform:translateY(-70%)scale(.75)translateZ(-150px)rotateX(-12deg)}.project-carousel-image.next{opacity:.4;filter:brightness(.55);z-index:2;cursor:pointer;transform:translateY(70%)scale(.75)translateZ(-150px)rotateX(12deg)}.project-carousel-image.hidden{opacity:0;pointer-events:none;z-index:1;transform:translateY(0)scale(.5)translateZ(-300px)}.carousel-side{z-index:5;cursor:pointer;position:absolute;left:0;right:0}.carousel-top{height:50%;top:0}.carousel-bottom{height:50%;bottom:0}.image-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);background:#000c;justify-content:center;align-items:center;padding:40px;animation:.2s modal-overlay-in;display:flex;position:fixed;inset:0}.image-modal{justify-content:center;align-items:center;max-width:95vw;max-height:90vh;display:flex;position:relative}.image-modal-image{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:8px;width:auto;max-width:95vw;height:auto;max-height:90vh;display:block;box-shadow:0 30px 80px #0009}.image-modal-close{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;padding:0;font-family:inherit;font-size:1.8rem;font-weight:300;line-height:1;transition:background .2s,transform .2s;display:flex;position:absolute;top:10px;right:10px}.image-modal-close:hover{background:#000c;transform:scale(1.08)}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@media (width<=800px){.project-showcase{grid-template-columns:1fr;gap:35px;padding:35px}.project-showcase-reverse .project-showcase-content,.project-showcase-reverse .project-carousel{order:initial}.project-carousel{height:450px}}@media (width<=600px){.projects-page{padding:110px 24px 120px}.project-showcase{border-radius:20px;padding:28px}.project-carousel{height:400px}.project-carousel-image{width:100%;height:260px}.image-modal-overlay{padding:20px}.image-modal-image{max-width:100vw;max-height:85vh}.image-modal-close{top:8px;right:8px}}.project-link{color:#646cff;align-items:center;gap:8px;margin-top:20px;font-weight:600;text-decoration:none;transition:color .2s,transform .2s;display:inline-flex}.project-link:hover{color:#fff;transform:translate(4px)}
