.transition{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:100000;pointer-events:none}.transition-overlay{position:absolute;top:0;left:0;width:100%;height:100%;transform:scaleY(1);transform-origin:top;will-change:transform}.transition-overlay.overlay-1{background-color:var(--fg)}.transition-overlay.overlay-2{background-color:var(--accent1)}.transition-overlay.overlay-3{background-color:var(--accent2)}.transition-overlay.overlay-4{background-color:var(--accent3)}.transition-overlay.overlay-5{background-color:var(--accent4)}.webgl{position:fixed;top:0;left:0;width:100%;height:100%;outline:none;z-index:-1;pointer-events:none}.hero-minimal{position:relative;width:100%;min-height:100svh;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:clamp(5rem,10vw,8rem) clamp(1.25rem,4vw,2.5rem) clamp(2.5rem,5vw,4rem)}.hero-minimal .hero-content{z-index:2;width:100%;max-width:900px}.hero-minimal h1{font-size:clamp(2.5rem,7vw,5.5rem);color:var(--fg);font-family:Helvetica Neue,Arial,sans-serif;letter-spacing:-.04em;margin-bottom:.2em;text-transform:none;font-style:normal}.hero-minimal .hero-subtitle{font-size:clamp(1.1rem,2.2vw,1.5rem);color:#050505b3;max-width:600px;margin:0 auto;font-weight:400}.hero-footer-scroll-down{position:absolute;bottom:2em;left:50%;transform:translate(-50%)}.hero-footer-scroll-down a{position:relative;display:inline-block;padding-bottom:2px}.hero-footer-scroll-down a:after{content:"";position:absolute;width:100%;height:2px;bottom:0;left:0;background-color:var(--fg);transform:scaleX(0);transform-origin:bottom right;transition:transform .3s cubic-bezier(.25,1,.5,1)}.hero-footer-scroll-down a:hover:after{transform:scaleX(1);transform-origin:bottom left}.featured-work-vertical{padding:10em 4em;background-color:#0c0c0c;color:#f0f0f0}.vertical-intro{margin-bottom:6em;display:flex;flex-direction:column;gap:1.5em}.section-label{font-size:1rem;letter-spacing:.25em;text-transform:uppercase;color:#7a9ad4;opacity:.6}.vertical-intro .massive-text{font-size:8rem;line-height:.9;letter-spacing:-.03em;font-family:Helvetica Neue,Arial,sans-serif;text-transform:uppercase;color:#fff}.vertical-projects{display:grid;grid-template-columns:repeat(2,1fr);gap:4em}.project-card{display:flex;flex-direction:column;gap:2em;text-decoration:none;color:inherit;transition:transform .5s cubic-bezier(.23,1,.32,1)}.project-card:hover{transform:translateY(-8px)}.project-card-visual{position:relative;width:100%;aspect-ratio:16/10;border-radius:1.5em;overflow:hidden;background:#1a1a1a}.project-card-visual img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.23,1,.32,1),filter .5s ease}.project-card:hover .project-card-visual img{transform:scale(1.08);filter:brightness(.4)}.project-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease;z-index:2}.project-card:hover .project-overlay{opacity:1}.overlay-cta{font-size:1.2rem;letter-spacing:.3em;text-transform:uppercase;color:#fff;padding:1em 2.5em;border:1.5px solid rgba(255,255,255,.6);border-radius:100px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .3s ease}.project-card:hover .overlay-cta:hover{background:#fff;color:#0c0c0c;border-color:#fff}.project-card-meta{display:flex;flex-direction:column;gap:.8em;padding:0 .5em}.project-card-meta .work-num{font-size:1rem;opacity:.3;font-family:monospace;letter-spacing:.1em}.project-card-meta h3{font-size:2.2rem;line-height:1.2;font-family:Helvetica Neue,Arial,sans-serif;color:#fff;font-weight:600}.project-card-meta p{font-size:1.15rem;line-height:1.5;color:#ffffff80}.project-tags{display:flex;gap:.6em;flex-wrap:wrap;margin-top:.5em}.project-tags span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;padding:.5em 1.2em;border:1px solid rgba(122,154,212,.2);border-radius:100px;color:#7a9ad4;transition:all .3s ease}.project-card:hover .project-tags span{border-color:#7a9ad466;background:#7a9ad414}.skills-section{padding:8em 4em;max-width:1400px;margin:0 auto}.skills-header{margin-bottom:4em;text-align:center}.skills-header h2{font-size:3rem;color:#111;margin-bottom:.5em;font-family:Helvetica Neue,Arial,sans-serif;letter-spacing:-.02em}.skills-header p{font-size:1.25rem;color:#0009;max-width:600px;margin:0 auto}.bento-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(2,minmax(300px,auto));gap:1.5em}.bento-item{position:relative;border-radius:2em;padding:3em;background:#ffffffb3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 10px 30px #00000008,inset 0 0 0 1px #fffc;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,background .4s ease;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.bento-item:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:2em;background:linear-gradient(135deg,#fff6,#fff0);pointer-events:none}.bento-item:hover{transform:translateY(-5px) scale(1.01);box-shadow:0 20px 40px #0000000f,inset 0 0 0 1px #fff;background:#ffffffe6}.frontend-box{grid-column:span 7}.backend-box,.design-box{grid-column:span 5}.architecture-box{grid-column:span 7}.bento-icon{font-size:2.5rem;margin-bottom:.5em;color:#0056ff}.bento-content h3{font-size:2rem;color:#111;margin-bottom:.2em;font-family:Helvetica Neue,Arial,sans-serif}.bento-content p{color:#0009;font-size:1.1rem;margin-bottom:2em;line-height:1.5}.skill-chips{display:flex;flex-wrap:wrap;gap:.8em;margin-top:auto}.chip{padding:.6em 1.2em;background:#0000000a;border-radius:2em;font-size:.95rem;color:#333;font-weight:500;border:1px solid rgba(0,0,0,.05);transition:all .3s cubic-bezier(.25,.8,.25,1);cursor:default}.chip:hover{background:#111;color:#fff;transform:translateY(-3px) scale(1.05);box-shadow:0 5px 15px #0000001a;border-color:#111}@media(max-width:1000px){.bento-grid{grid-template-columns:1fr;grid-template-rows:auto}.frontend-box,.backend-box,.design-box,.architecture-box{grid-column:span 1}.skills-section{padding:4em 2em}.work-panel-img{width:90vw;height:40vh}}@media(max-width:640px){.skills-section{padding:3rem 1rem}.skills-header h2{font-size:clamp(2rem,8vw,2.75rem)}.bento-item{padding:1.5rem 1.25rem;min-height:auto}}.download-btn{display:inline-block;padding:.8em 2em;background:#111;color:#fff!important;border-radius:2em;font-weight:500;text-decoration:none;transition:all .3s ease;margin-top:1em}.download-btn:hover{background:#0056ff;transform:translateY(-2px);box-shadow:0 10px 20px #0056ff33}.experience-section{width:100%;padding:8em 4em;background:linear-gradient(180deg,#111,#050505)}.experience-content-wrapper{max-width:1200px;margin:0 auto}.experience-header{text-align:center;margin-bottom:5em}.experience-header h2{font-size:3rem;color:#fff;margin-bottom:.5em;font-family:Helvetica Neue,Arial,sans-serif;letter-spacing:-.02em}.experience-header p{font-size:1.25rem;color:#fff9}.experience-container{display:flex;flex-direction:column;gap:1em}.exp-row{border-bottom:1px solid rgba(255,255,255,.1);padding:2em 1em;transition:all .4s ease;cursor:pointer;border-radius:1em}.exp-row:hover{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 30px #0003;border-color:transparent;transform:scale(1.01)}.exp-row-header{display:flex;justify-content:space-between;align-items:center}.exp-title{flex:2;font-size:1.8rem;font-weight:600;color:#fff}.exp-company{flex:2;font-size:1.25rem;color:#fff9}.exp-date{flex:1;text-align:right;font-size:1.1rem;color:#0056ff;font-weight:500;padding-right:2em}.exp-icon{font-size:2rem;color:#fff;font-weight:300;transition:transform .4s ease}.exp-row:hover .exp-icon{transform:rotate(45deg);color:#0056ff}.exp-details{max-height:0;overflow:hidden;opacity:0;transition:all .5s cubic-bezier(.165,.84,.44,1);padding-top:0}.exp-row:hover .exp-details{max-height:300px;opacity:1;padding-top:2em}.exp-details ul{padding-left:1.5em;color:#ffffffb3;font-size:1.1rem;line-height:1.6;max-width:800px}.exp-details li{margin-bottom:.5em}@media(max-width:1000px){.exp-row-header{flex-direction:column;align-items:flex-start;gap:.5em}.exp-company,.exp-date{font-size:1rem;text-align:left;padding:0}.exp-icon{display:none}.experience-section{padding:4em 2em}.exp-row:hover .exp-details{max-height:500px}}
