:root{--bg:#0c0c0e;--bg-card:#111116;--bg-connect:#0a0a0c;--teal:#4ecdc4;--gold:#f7c94b;--purple:#9d4edd;--blue:#4361ee;--text:#fff;--text-dim:#ffffff8c;--text-dimmer:#ffffff52;--border:#ffffff14;--radius:16px;--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--section-pad:clamp(24px, 7vw, 120px);--section-pad-v:clamp(72px, 8vw, 120px);--max-w:1440px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}.app{min-height:100vh}.cursor-glow{pointer-events:none;z-index:0;will-change:transform;background:radial-gradient(circle,#4ecdc40f 0%,#0000 68%);border-radius:50%;width:600px;height:600px;position:fixed;top:0;left:0}@media (hover:none){.cursor-glow{display:none}}.line-clip{overflow:hidden}.line-clip h2{transition:transform .9s cubic-bezier(.16,1,.3,1);transform:translateY(110%)}.line-clip--sub{overflow:hidden}.line-clip--sub p{opacity:0;transition:opacity .6s .35s,transform .6s .35s;transform:translateY(20px)}.marquee{border-top:1px solid var(--border);border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none;padding:18px 0;overflow:hidden}.marquee__track{align-items:center;width:max-content;animation:28s linear infinite marqueeRun;display:flex}.marquee:hover .marquee__track{animation-play-state:paused}@keyframes marqueeRun{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee__item{color:var(--text-dimmer);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:20px;padding:0 20px;font-size:12px;font-weight:600;display:inline-flex}.marquee__sep{color:var(--teal);opacity:.6}.section{padding:var(--section-pad-v) var(--section-pad);max-width:var(--max-w);width:100%;margin:0 auto}.navbar{z-index:100;padding:0 var(--section-pad);opacity:0;pointer-events:none;background:0 0;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;height:64px;transition:background .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s,border-color .3s,opacity .5s,transform .5s;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-14px)}.navbar--appeared{opacity:1;pointer-events:auto;transform:translateY(0)}.navbar--visible{-webkit-backdrop-filter:blur(20px);border-bottom-color:var(--border);background:#0c0c0ed1}.navbar__brand{letter-spacing:-.01em;white-space:nowrap;font-size:15px;font-weight:600}.navbar__links{gap:28px;display:flex}.navbar__links a{color:var(--text-dim);font-size:14px;font-weight:500;transition:color .2s;position:relative}.navbar__links a:after{content:"";background:var(--teal);width:0;height:1px;transition:width .28s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-3px;left:0}.navbar__links a:hover{color:var(--text)}.navbar__links a:hover:after{width:100%}.navbar__actions{align-items:center;gap:10px;display:flex}.btn{cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font);white-space:nowrap;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:100px;align-items:center;gap:6px;padding:8px 18px;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s,background .22s,border-color .22s;display:inline-flex;position:relative}.btn:hover{transform:scale(1.05)}.btn--ghost{color:var(--text);background:#ffffff12;border:1px solid #ffffff21;box-shadow:0 4px 14px #0000002e,inset 0 1px #ffffff14}.btn--ghost:hover{background:#ffffff1f;border-color:#fff3;box-shadow:0 6px 20px #00000038,inset 0 1px #ffffff1c}.btn--outline{color:var(--teal);background:#4ecdc412;border:1px solid #4ecdc44d;box-shadow:0 4px 14px #4ecdc40f,inset 0 1px #ffffff0f}.btn--outline:hover{background:#4ecdc424;border-color:#4ecdc480;box-shadow:0 6px 22px #4ecdc424,inset 0 1px #ffffff17}.hamburger{cursor:pointer;z-index:200;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:6px;display:none}.hamburger span{background:var(--text);transform-origin:50%;border-radius:2px;width:22px;height:2px;transition:transform .32s cubic-bezier(.16,1,.3,1),opacity .2s;display:block}.hamburger--open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger--open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{-webkit-backdrop-filter:blur(24px);z-index:90;opacity:0;pointer-events:none;background:#0a0a0cf7;flex-direction:column;justify-content:center;align-items:center;gap:40px;transition:opacity .3s;display:none;position:fixed;inset:64px 0 0}.mobile-nav--open{opacity:1;pointer-events:auto}.mobile-nav a{color:var(--text-dim);letter-spacing:-.02em;font-size:clamp(26px,7vw,36px);font-weight:700;transition:color .2s}.mobile-nav a:hover{color:var(--text)}.mobile-nav__actions{gap:12px;margin-top:8px;display:flex}.hero{text-align:center;min-height:100svh;padding:80px var(--section-pad) 60px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero__blobs{pointer-events:none;z-index:0;position:absolute;inset:0}.blob{filter:blur(80px);opacity:.14;border-radius:50%;position:absolute}.blob--tl{background:var(--teal);border-radius:50%;width:clamp(320px,36vw,560px);height:clamp(160px,18vw,280px);top:60px;left:-10%;transform:rotate(-22deg)}.blob--tr{opacity:.1;background:#b8860b;border-radius:50%;width:clamp(240px,28vw,400px);height:clamp(120px,14vw,200px);top:70px;right:-6%;transform:rotate(18deg)}.blob--bl{background:var(--blue);opacity:.1;border-radius:50%;width:clamp(200px,22vw,320px);height:clamp(100px,11vw,160px);bottom:140px;left:5%;transform:rotate(-12deg)}.blob--br{background:var(--teal);opacity:.07;border-radius:50%;width:clamp(280px,32vw,480px);height:clamp(140px,16vw,240px);bottom:60px;right:-8%;transform:rotate(22deg)}.hero__content{z-index:1;max-width:min(900px,90vw);position:relative}.hero__heading{letter-spacing:-.04em;color:var(--text);margin-bottom:28px;font-size:clamp(40px,6.5vw,80px);font-weight:800;line-height:1.1}.word-anim{opacity:0;animation:.42s cubic-bezier(.2,0,0,1) both wordReveal;display:inline-block}@keyframes wordReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.accent-teal{color:var(--teal)}.accent-gold{color:var(--gold)}.hero__sub{color:var(--text-dim);opacity:0;font-size:clamp(16px,1.8vw,20px);line-height:1.75;animation:.6s 2.9s both fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero__scroll{color:var(--text-dimmer);z-index:1;opacity:0;font-size:18px;animation:.5s 3.2s forwards heroArrowFade,2.2s ease-in-out 3.7s infinite bobble;position:absolute;bottom:40px;left:50%}@keyframes heroArrowFade{to{opacity:1}}@keyframes bobble{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(9px)}}.work__heading{margin-bottom:56px}.work__heading--visible .line-clip h2{transform:translateY(0)}.work__heading--visible .line-clip--sub p{opacity:1;transform:none}.work__heading h2{letter-spacing:-.035em;color:var(--text);margin-bottom:8px;font-size:clamp(32px,4vw,52px);font-weight:800}.work__heading p{color:var(--text-dim);font-size:17px}.work__inner{width:100%}.work__timeline{position:relative}.timeline__line{background:linear-gradient(to bottom, transparent, var(--border) 10%, var(--border) 90%, transparent);z-index:0;clip-path:inset(0 0 100%);width:1px;transition:clip-path 1.8s cubic-bezier(.16,1,.3,1);position:absolute;top:10px;bottom:40px;left:160px}.timeline__line--drawing{clip-path:inset(0 0 0%)}.work__row{grid-template-columns:200px 1fr;align-items:start;gap:32px;margin-bottom:44px;display:grid;position:relative}.work__label{flex-direction:column;align-items:flex-start;gap:14px;padding-top:6px;display:flex;position:sticky;top:88px}.work__label span{color:var(--text-dim);letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:600;line-height:1.3}.timeline__dot{background:var(--teal);border:3px solid var(--bg);width:16px;height:16px;box-shadow:0 0 0 2px var(--teal);z-index:1;border-radius:50%;flex-shrink:0;transition:transform .45s cubic-bezier(.34,1.56,.64,1) .35s;position:relative;transform:scale(0)}.timeline__dot--visible{animation:2.8s ease-in-out .8s infinite dotPulse;transform:scale(1)}@keyframes dotPulse{0%,to{box-shadow:0 0 0 2px var(--teal)}50%{box-shadow:0 0 0 6px #4ecdc438}}.work-card{background:var(--bg-card);border-radius:var(--radius);opacity:0;padding:32px 36px;transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1),box-shadow .3s;position:relative;transform:translateY(40px)}.work-card--visible{opacity:1;transform:translateY(0)}.work-card:before{content:"";border-radius:var(--radius);background:linear-gradient(135deg, var(--teal) 0%, var(--blue) 50%, var(--purple) 100%);-webkit-mask-composite:xor;pointer-events:none;opacity:.65;padding:1px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.work-card--visible:hover{transform:translateY(-7px);box-shadow:0 24px 60px #4ecdc417,0 8px 24px #0000004d}.work-card--visible:hover:before{opacity:1}.work-card__header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.work-card__company{color:var(--teal);letter-spacing:-.01em;font-size:18px;font-weight:700}.work-card__period{color:var(--text-dim);font-size:13px;font-weight:400}.work-card__role{color:var(--text);margin-bottom:14px;font-size:15px;font-weight:600}.work-card__tagline{color:var(--text-dim);margin-bottom:20px;font-size:14px;line-height:1.65}.work-card__bullets{flex-direction:column;gap:10px;list-style:none;display:flex}.work-card__bullets li{color:#ffffffc7;padding-left:18px;font-size:14px;line-height:1.65;position:relative}.work-card__bullets li:before{content:"•";color:var(--teal);font-size:11px;position:absolute;top:3px;left:3px}.work-card__bullets li.dim{color:var(--text-dim)}.work-card__bullets li.dim:before{color:var(--text-dimmer)}.projects{padding:var(--section-pad-v) 0}.projects__header{text-align:center;padding:0 var(--section-pad);margin-bottom:44px}.projects__header--visible .line-clip h2{transform:translateY(0)}.projects__header--visible .line-clip--sub p{opacity:1;transform:none}.projects__header h2{letter-spacing:-.035em;color:var(--text);margin-bottom:8px;font-size:clamp(32px,4vw,52px);font-weight:800}.projects__header p{color:var(--text-dim);font-size:17px}.projects__scroll{scrollbar-width:none;padding:8px var(--section-pad) 32px;cursor:grab;overflow-x:auto}.projects__scroll:active{cursor:grabbing}.projects__scroll::-webkit-scrollbar{display:none}.projects__track{gap:20px;width:max-content;display:flex}.project-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);opacity:0;flex-direction:column;flex-shrink:0;gap:12px;width:clamp(280px,26vw,360px);padding:28px;transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1),border-color .25s,box-shadow .35s;display:flex}.projects__track--visible .project-card{opacity:1;transition-delay:calc(var(--card-index,0) * .12s)}.project-card:hover{border-color:#4ecdc459;transform:translateY(-7px);box-shadow:0 16px 48px #4ecdc417,0 6px 18px #00000047}.project-card__emoji{font-size:32px;line-height:1;transition:transform .35s cubic-bezier(.34,1.56,.64,1);display:inline-block}.project-card:hover .project-card__emoji{transform:scale(1.22)rotate(-6deg)}.project-card h3{color:var(--text);letter-spacing:-.01em;font-size:15px;font-weight:700}.project-card p{color:var(--text-dim);flex:1;font-size:13px;line-height:1.65}.project-card__tags{flex-wrap:wrap;gap:6px;display:flex}.tag{color:var(--text-dimmer);letter-spacing:.03em;background:#ffffff12;border-radius:100px;padding:3px 10px;font-size:11px;font-weight:500}.project-card__link{color:var(--teal);margin-top:2px;font-size:13px;font-weight:500;transition:opacity .2s}.project-card__link:hover{opacity:.7}.projects__hint{text-align:center;color:var(--text-dimmer);padding:4px var(--section-pad) 60px;letter-spacing:.02em;font-size:12px}.testimonials__header{text-align:center;margin-bottom:48px}.testimonials__header--visible .line-clip h2{transform:translateY(0)}.testimonials__header--visible .line-clip--sub p{opacity:1;transform:none}.testimonials__header h2{letter-spacing:-.035em;color:var(--text);margin-bottom:8px;font-size:clamp(32px,4vw,52px);font-weight:800}.testimonials__header p{color:var(--text-dim);font-size:17px}.testimonials__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.testimonial-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);opacity:0;flex-direction:column;gap:24px;padding:30px;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .35s;display:flex;transform:translateY(28px)}.testimonial-card--visible{opacity:1;transform:none}.testimonial-card:hover{border-color:#4ecdc447;transform:translateY(-5px);box-shadow:0 14px 40px #00000040}.testimonial-card__quote{color:#ffffffbf;flex:1;font-size:14px;font-style:italic;line-height:1.75}.testimonial-card__author{border-top:1px solid var(--border);flex-direction:column;gap:3px;padding-top:20px;display:flex}.testimonial-card__name{color:var(--text);font-size:13px;font-weight:600}.testimonial-card__company{color:var(--teal);font-size:12px;font-weight:500}.connect{background:var(--bg-connect);border-top:1px solid var(--border);padding:var(--section-pad-v) var(--section-pad)}.connect__inner{text-align:center;opacity:0;max-width:640px;margin:0 auto;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.connect__inner--visible{opacity:1;transform:none}.connect__inner h2{letter-spacing:-.04em;color:var(--text);margin-bottom:16px;font-size:clamp(34px,5vw,60px);font-weight:800}.connect__inner>p{color:var(--text-dim);margin-bottom:44px;font-size:17px;line-height:1.7}.connect__links{flex-direction:column;align-items:center;gap:18px;margin-bottom:52px;display:flex}.connect__link{color:var(--text);align-items:center;gap:12px;font-size:15px;font-weight:500;transition:color .2s;display:flex}.connect__link:hover{color:var(--teal)}.connect__icon{border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff12;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;display:flex}.connect__icon--text{font-size:12px;font-style:normal;font-weight:700}.connect__footer{color:var(--text-dimmer);letter-spacing:.03em;font-size:12px}.below-hero{opacity:0;transition:opacity .9s}.below-hero--ready{opacity:1}@media (width<=1024px){.work__row{grid-template-columns:160px 1fr;gap:24px}.timeline__line{left:140px}}@media (width<=768px){.hamburger,.mobile-nav{display:flex}.navbar__links,.navbar__actions{display:none}.work__row{grid-template-columns:1fr;gap:12px}.work__label{flex-direction:row;align-items:center;gap:12px;position:static}.timeline__line{display:none}.project-card{width:82vw;max-width:320px}.testimonials__grid{grid-template-columns:1fr}.work-card--visible:hover,.testimonial-card--visible:hover,.project-card:hover{box-shadow:none;transform:none}}@media (width<=480px){.hero__heading{letter-spacing:-.03em}.work-card{padding:24px 20px}.project-card{width:88vw}.connect__links{gap:14px}}
