:root{--bg: #060609;--bg-2: #0c0c12;--surface: rgba(255, 255, 255, .03);--surface-h: rgba(255, 255, 255, .06);--border: rgba(148, 163, 184, .09);--border-h: rgba(148, 163, 184, .18);--accent: #8b5cf6;--accent-2: #06b6d4;--accent-glow: rgba(139, 92, 246, .35);--grad: linear-gradient(135deg, #8b5cf6, #06b6d4);--text: #f1f5f9;--text-2: #94a3b8;--text-3: #475569;--font-sans: "Inter", system-ui, sans-serif;--font-display: "Syne", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--nav-h: 68px;--radius: 12px;--radius-lg: 20px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg-2)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-2)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:99px}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;cursor:none}a{color:inherit;text-decoration:none}ul{list-style:none}img,svg{display:block}button{cursor:none;background:none;border:none;font:inherit;color:inherit}.noise{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9998;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px}.cursor{position:fixed;width:10px;height:10px;background:var(--accent);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .1s var(--ease-out),background .2s;mix-blend-mode:difference}.cursor-trail{position:fixed;width:32px;height:32px;border:1.5px solid rgba(139,92,246,.5);border-radius:50%;pointer-events:none;z-index:9997;transform:translate(-50%,-50%);transition:width .2s,height .2s,opacity .3s}body.cursor-hover .cursor{transform:translate(-50%,-50%) scale(2.5)}body.cursor-hover .cursor-trail{width:48px;height:48px;opacity:.4}.container{max-width:1160px;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);transition:background .3s,backdrop-filter .3s,border-color .3s;border-bottom:1px solid transparent}.nav.scrolled{background:#060609d9;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-color:var(--border)}.nav__inner{max-width:1160px;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem);height:100%;display:flex;align-items:center;justify-content:space-between}.nav__logo{font-family:var(--font-display);font-size:1.4rem;font-weight:800;letter-spacing:-.02em}.nav__logo span{color:var(--accent)}.nav__links{display:flex;align-items:center;gap:1.75rem}.nav__link{font-size:.875rem;font-weight:500;color:var(--text-2);letter-spacing:.02em;transition:color .2s;position:relative;padding:0}.nav__link:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--grad);transition:width .3s var(--ease-out)}.nav__link:hover,.nav__link.active{color:var(--text)}.nav__link:hover:after{width:100%}.nav__link--pill{font-family:var(--font-mono);font-size:.78rem;color:var(--accent);padding:.38rem .85rem;border-radius:6px;border:1px solid var(--border);background:#ffffff08;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:inline-flex;align-items:center;gap:.25rem;transition:color .2s,background .2s,border-color .2s,box-shadow .2s}.nav__pill-arrow{font-size:.65rem;opacity:.5;transition:opacity .2s,transform .2s}.nav__link--pill:after{display:none}.nav__link--pill:hover{color:#fff;background:var(--grad);border-color:transparent;box-shadow:0 0 16px #8b5cf64d}.nav__link--pill:hover .nav__pill-arrow{opacity:1;transform:translate(1px,-1px)}.nav__link--pill.active{color:var(--accent);border-color:#8b5cf64d;background:#8b5cf612}.hero__actions .nav__link--pill{color:#fff;font-size:.9rem;padding:.75rem 1.75rem;background:var(--grad);border-color:transparent;box-shadow:none}.hero__actions .nav__link--pill:hover{background:var(--grad);color:#fff;opacity:.88;transform:translateY(-2px);box-shadow:none}.nav__burger{display:none;flex-direction:column;gap:5px;padding:4px}.nav__burger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .3s,opacity .3s}.nav__burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav__burger.open span:nth-child(2){opacity:0}.nav__burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;top:var(--nav-h);background:#060609f7;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);z-index:99;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s}.mobile-menu.open{opacity:1;pointer-events:all}.mobile-menu ul{display:flex;flex-direction:column;gap:2rem;text-align:center}.mobile-menu a,.mobile-menu button{font-family:var(--font-display);font-size:clamp(2rem,6vw,3rem);font-weight:700;color:var(--text-2);transition:color .2s;background:none;border:none}.mobile-menu a:hover,.mobile-menu button:hover{color:var(--text)}.btn{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;padding:.75rem 1.75rem;border-radius:8px;letter-spacing:.01em;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--grad);color:#fff;box-shadow:0 0 24px #8b5cf640}.btn--primary:hover{box-shadow:0 0 36px #8b5cf673}.btn--ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.btn--ghost:hover{border-color:var(--accent);background:var(--accent-glow)}.btn--hero-grad{background:var(--grad);color:#fff;border:none;box-shadow:0 0 24px #8b5cf640}.btn--hero-grad:hover{opacity:.88;box-shadow:0 0 36px #8b5cf673}.inline-link{color:var(--accent);text-decoration:underline;text-decoration-color:#8b5cf64d;text-underline-offset:3px;transition:text-decoration-color .2s}.inline-link:hover{text-decoration-color:var(--accent)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease-out),transform .75s var(--ease-out)}.reveal.visible{opacity:1;transform:translateY(0)}.section{padding:clamp(5rem,10vw,9rem) 0}.section__header{display:flex;align-items:baseline;gap:1rem;margin-bottom:clamp(3rem,6vw,5rem)}.section__num{font-family:var(--font-mono);font-size:.8rem;color:var(--accent);letter-spacing:.08em;padding-top:.2em}.section__title{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3rem);font-weight:800;letter-spacing:-.03em;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section__heading-copy{display:flex;flex-direction:column;gap:.45rem}.section__note{max-width:52ch;color:var(--text-2);font-size:.95rem;line-height:1.5}.hero-reveal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:url(/tanmay.jpg);background-size:cover;background-position:center 12%;opacity:0;transition:opacity .55s ease;filter:brightness(.6) saturate(.65)}.hero-reveal--visible{opacity:.45}.hero{position:relative;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:var(--nav-h) 0 6rem}.hero__glow{position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.18) 0%,transparent 70%);top:-10%;left:-15%;pointer-events:none;animation:glow-drift 12s ease-in-out infinite alternate}.hero__glow--2{background:radial-gradient(circle,rgba(6,182,212,.1) 0%,transparent 70%);top:auto;bottom:-20%;left:auto;right:-15%;animation-delay:-6s;animation-duration:15s}@keyframes glow-drift{0%{transform:translate(0) scale(1)}to{transform:translate(40px,30px) scale(1.05)}}.hero__inner{max-width:1160px;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem);position:relative;z-index:1}.hero__badge{display:inline-flex;align-items:center;gap:.6rem;font-size:.8rem;font-weight:500;color:var(--text-2);border:1px solid var(--border);padding:.4rem .9rem;border-radius:99px;margin-bottom:2rem;background:var(--surface);animation:fade-up .6s .1s var(--ease-out) both}.hero__badge-dot{width:7px;height:7px;background:#4ade80;border-radius:50%;animation:pulse-dot 2.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 #4ade8080}50%{box-shadow:0 0 0 5px #4ade8000}}.hero__name{font-family:var(--font-display);font-size:clamp(2.5rem,6.8vw,6.5rem);font-weight:800;letter-spacing:-.03em;line-height:.95;margin-bottom:1.5rem;display:block}.hero__name-wrap{display:block;overflow:hidden}.hero__name-text{display:block;animation:slide-up .9s var(--ease-out) both}.hero__name-wrap:nth-child(1) .hero__name-text{animation-delay:.25s}.hero__name-wrap:nth-child(2) .hero__name-text{animation-delay:.38s}.hero__name-text--accent{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes slide-up{0%{transform:translateY(105%);opacity:0}to{transform:translateY(0);opacity:1}}.hero__role{font-family:var(--font-mono);font-size:clamp(1rem,2.2vw,1.4rem);color:var(--text-2);margin-bottom:1.5rem;display:flex;align-items:center;gap:.6rem;animation:fade-up .7s .55s var(--ease-out) both}.hero__role-dash{color:var(--accent)}.hero__typing{color:var(--text)}.hero__cursor{color:var(--accent);animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.hero__desc{font-size:clamp(1rem,1.6vw,1.15rem);color:var(--text-2);max-width:540px;line-height:1.7;margin-bottom:2.5rem;animation:fade-up .7s .65s var(--ease-out) both}.hero__actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;animation:fade-up .7s .75s var(--ease-out) both}.hero__stack{display:flex;flex-wrap:wrap;gap:.6rem;animation:fade-up .7s .85s var(--ease-out) both}.hero__stack span{font-family:var(--font-mono);font-size:.75rem;color:var(--text-3);background:var(--surface);border:1px solid var(--border);padding:.3rem .7rem;border-radius:4px;letter-spacing:.04em}.hero__scroll-indicator{position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.4rem;animation:fade-up .7s 1.1s var(--ease-out) both}.hero__scroll-line{width:2px;height:68px;background:linear-gradient(to bottom,var(--accent),rgba(6,182,212,.3));border-radius:2px;box-shadow:0 0 8px #8b5cf680;animation:scroll-line 1.5s ease-in-out infinite}@keyframes scroll-line{0%{transform:scaleY(1);transform-origin:top}50%{transform:scaleY(.35);transform-origin:top}to{transform:scaleY(1);transform-origin:top}}.hero__scroll-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.22em;color:var(--text-2);text-shadow:0 0 12px rgba(139,92,246,.4)}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.about{background:var(--bg-2)}.about__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.95fr);gap:clamp(2.5rem,6vw,4rem);align-items:start}.about__text{display:flex;flex-direction:column;gap:1.15rem;max-width:58ch}.about__text p{color:var(--text-2);font-size:clamp(.98rem,1.25vw,1.025rem);line-height:1.6}.about__text strong{color:var(--text);font-weight:600}.about__stats{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(1.15rem,2vw,1.5rem);display:flex;flex-direction:column;gap:.4rem;min-width:0;transition:border-color .25s,background .25s,transform .25s}.stat-card:hover{border-color:var(--border-h);background:var(--surface-h);transform:translateY(-3px)}.stat-card__value{font-family:var(--font-display);font-size:clamp(1.9rem,4vw,2.4rem);font-weight:800;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;overflow-wrap:anywhere}.stat-card__sup{font-size:1.4rem}.stat-card__label{font-size:clamp(.72rem,1vw,.8rem);color:var(--text-3);font-weight:500;line-height:1.35;overflow-wrap:anywhere}.timeline{display:flex;flex-direction:column}.timeline__item{display:grid;grid-template-columns:36px 1fr;gap:0 1.75rem;padding-bottom:3.5rem}.timeline__item:last-child{padding-bottom:0}.timeline__spine{display:flex;flex-direction:column;align-items:center;padding-top:.3rem}.timeline__dot{width:12px;height:12px;border-radius:50%;background:var(--grad);flex-shrink:0;box-shadow:0 0 12px #8b5cf699;z-index:1}.timeline__spine:after{content:"";flex:1;width:1px;background:var(--border);margin-top:6px}.timeline__item:last-child .timeline__spine:after{display:none}.timeline__body{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 2rem 1.75rem;transition:border-color .25s,background .25s}.timeline__body:hover{border-color:var(--border-h);background:var(--surface-h)}.timeline__top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.timeline__role{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:.3rem}.timeline__company{font-size:.875rem;color:var(--accent);font-weight:500}.timeline__date{font-family:var(--font-mono);font-size:.78rem;color:var(--text-3);white-space:nowrap;padding-top:.2rem}.timeline__bullets{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.5rem}.timeline__bullets li{font-size:.925rem;color:var(--text-2);padding-left:1.2rem;position:relative}.timeline__bullets li:before{content:"▸";position:absolute;left:0;color:var(--accent);font-size:.75rem;top:.12em}.timeline__bullets strong{color:var(--text)}.timeline__tags{display:flex;flex-wrap:wrap;gap:.5rem}.timeline__tags span{font-family:var(--font-mono);font-size:.72rem;color:var(--accent-2);background:#06b6d412;border:1px solid rgba(6,182,212,.18);padding:.2rem .65rem;border-radius:4px}.projects{background:var(--bg-2)}.projects__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.projects__more{margin-top:2.5rem;text-align:center;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.projects__more-dot{opacity:.4;animation:blink-dots 1.6s steps(1) infinite}@keyframes blink-dots{0%,66%{opacity:.4}33%{opacity:0}}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;display:flex;flex-direction:column;gap:1rem;transition:border-color .3s,background .3s,transform .3s,box-shadow .3s;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--grad);opacity:0;transition:opacity .3s;border-radius:inherit;pointer-events:none}.project-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 20px 48px #8b5cf61f}.project-card:hover:before{opacity:.04}.project-card--featured{grid-column:1 / -1;flex-direction:row;align-items:flex-start;gap:2rem}.project-card--featured .project-card__title{font-size:1.35rem}.project-card--featured .project-card__desc{flex:1}.project-card__header{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.project-card__icon{font-size:2rem;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.project-card__badge{font-family:var(--font-mono);font-size:.72rem;color:var(--accent);background:#8b5cf61a;border:1px solid rgba(139,92,246,.25);padding:.25rem .7rem;border-radius:4px}.project-card__links{display:flex;gap:.75rem;align-items:center}.project-card__links a{color:var(--text-3);transition:color .2s,transform .2s}.project-card__links a:hover{color:var(--text);transform:translateY(-2px)}.project-card__icon-link{position:relative}.project-card__icon-link:after{content:attr(data-label);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);background:var(--bg-2);border:1px solid var(--border);color:var(--text-2);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.06em;padding:.25rem .5rem;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s,transform .15s}.project-card__icon-link:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.project-card__title{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.01em;position:relative;z-index:1}.project-card__desc{font-size:.9rem;color:var(--text-2);line-height:1.65;flex:1;position:relative;z-index:1}.project-card__tech{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:auto;position:relative;z-index:1}.project-card__tech span{font-family:var(--font-mono);font-size:.7rem;color:var(--text-3);background:#ffffff0a;border:1px solid var(--border);padding:.2rem .55rem;border-radius:4px;transition:color .2s,border-color .2s}.project-card:hover .project-card__tech span{color:var(--text-2);border-color:var(--border-h)}.skills__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:2.5rem}.skill-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:border-color .25s,background .25s}.skill-group:hover{border-color:var(--border-h);background:var(--surface-h)}.skill-group__title{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:1rem}.skill-group__tags{display:flex;flex-wrap:wrap;gap:.5rem}.skill-group__tags span{font-size:.85rem;color:var(--text-2);background:#ffffff0a;border:1px solid var(--border);padding:.3rem .7rem;border-radius:6px;transition:color .2s,border-color .2s,background .2s}.skill-group:hover .skill-group__tags span{border-color:var(--border-h);color:var(--text)}.certs{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.cert-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:space-between;transition:border-color .25s,background .25s}.cert-card:hover{border-color:var(--border-h);background:var(--surface-h)}.cert-card__provider{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.cert-card__name{font-size:.9rem;font-weight:600;flex:1}.cert-card__status{font-family:var(--font-mono);font-size:.7rem;background:#4ade801a;border:1px solid rgba(74,222,128,.25);color:#4ade80;padding:.2rem .6rem;border-radius:4px}.contact{background:var(--bg-2);text-align:center}.contact__inner{max-width:640px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.contact__eyebrow{font-family:var(--font-mono);font-size:.78rem;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem}.contact__heading{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,5rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;margin-bottom:1.5rem}.contact__heading span{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact__sub{font-size:1.025rem;color:var(--text-2);max-width:440px;line-height:1.65;margin-bottom:2.5rem}.contact__email-btn{display:inline-flex;align-items:center;font-size:1rem;font-weight:600;background:var(--grad);color:#fff;padding:.9rem 2.5rem;border-radius:8px;margin-bottom:2.5rem;box-shadow:0 0 32px #8b5cf647;transition:transform .2s,box-shadow .2s}.contact__email-btn:hover{transform:translateY(-3px);box-shadow:0 0 48px #8b5cf673}.contact__socials{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center}.contact__socials a{font-size:.875rem;font-weight:500;color:var(--text-2);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:color .2s,text-decoration-color .2s}.contact__socials a:hover{color:var(--text);text-decoration-color:var(--accent)}.hero__ynwa-btn{position:absolute;bottom:1.75rem;right:2rem;font-size:.8rem;color:#ffffff26;text-decoration:none;opacity:0;transition:opacity .4s ease,color .4s ease;z-index:10;line-height:1;-webkit-user-select:none;user-select:none}.hero__ynwa-btn:hover{opacity:1;color:#e63946}.hero__ynwa-btn:before{content:"hey, you found it - click me :)";position:absolute;bottom:calc(100% + .5rem);right:0;font-family:var(--font-body);font-size:.65rem;letter-spacing:.04em;color:#ffffff59;white-space:nowrap;opacity:0;transition:opacity .3s ease;pointer-events:none}.hero__ynwa-btn:hover:before{opacity:1}.hero__ynwa-btn--active{opacity:1}.hero__ynwa-arrow{font-size:.85rem;font-weight:400;vertical-align:super;margin-left:.15em;opacity:.75;font-style:normal}.support-page{min-height:100dvh;display:flex;flex-direction:column}.support-hero{position:relative;padding:clamp(5rem,10vw,9rem) 0 clamp(3rem,5vw,5rem);border-bottom:1px solid var(--border);overflow:hidden}.support-title{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,6rem);font-weight:800;letter-spacing:-.04em;line-height:1;margin:1rem 0 .75rem;background:linear-gradient(135deg,#e63946,#ff6b6b,#ffd166);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.support-sub{font-size:1rem;color:var(--text-2);letter-spacing:.04em}.support-body{padding:clamp(3rem,6vw,6rem) 0 3rem}.support-note{max-width:680px}.support-note p{color:var(--text-2);font-size:1.05rem;line-height:1.85;margin-bottom:1.35rem}.support-note p:last-child{margin-bottom:0;color:var(--text)}.support-footer-msg{padding:.35rem 0 clamp(3rem,6vw,6rem)}.support-footer-msg p{max-width:680px;color:var(--text-2);line-height:1.85;margin-bottom:1.35rem;font-size:1.05rem}.support-ynwa{margin:2rem 0 2.5rem;font-style:italic;color:var(--text-2)!important}.support-ynwa span{font-family:var(--font-display);font-size:1.5rem;font-weight:700;font-style:normal;background:linear-gradient(135deg,#e63946,#ff6b6b,#ffd166);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.support-contact-btn{display:inline-block;padding:.7rem 1.75rem;border:1px solid rgba(230,57,70,.4);border-radius:.375rem;color:#e63946;text-decoration:none;font-size:.9rem;letter-spacing:.05em;transition:background .2s,color .2s}.support-contact-btn:hover{background:#e639461f}.resume-page{min-height:100dvh}.resume-hero{position:relative;padding:clamp(5rem,10vw,8rem) 0 clamp(3rem,5vw,4rem);border-bottom:1px solid var(--border);overflow:hidden}.resume-hero__inner{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-top:2rem}.resume-hero__label{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:.5rem}.resume-hero__name{font-family:var(--font-display);font-size:clamp(2.8rem,7vw,6rem);font-weight:800;letter-spacing:-.04em;line-height:.95;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.75rem}.resume-hero__title{font-size:1rem;color:var(--text-2);margin-bottom:1rem}.resume-hero__contact{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;font-size:.85rem}.resume-hero__contact a{color:var(--text-2);text-decoration:none;transition:color .2s}.resume-hero__contact a:hover{color:var(--text)}.resume-hero__contact span{color:var(--text-3)}.resume-hero__right{text-align:right}.resume-pdf-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--grad);border-radius:.375rem;color:#fff;font-size:.875rem;font-weight:600;text-decoration:none;letter-spacing:.02em;transition:opacity .2s,transform .2s}.resume-pdf-btn:hover{opacity:.88;transform:translateY(-2px)}.resume-pdf-note{font-size:.72rem;color:var(--text-3);margin-top:.5rem}.resume-layout{max-width:1160px;margin:0 auto;padding:clamp(3rem,6vw,5rem) clamp(1.25rem,4vw,2.5rem);display:grid;grid-template-columns:148px 1fr;gap:3.5rem;align-items:start}.resume-sidenav{position:sticky;top:calc(var(--nav-h) + 2rem)}.resume-sidenav ul{list-style:none;position:relative;padding-left:1.1rem}.resume-sidenav ul:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,#8b5cf68c,#06b6d473)}.resume-sidenav__link{display:block;padding:.6rem 0;font-family:var(--font-mono);font-size:.7rem;color:var(--text-3);text-decoration:none;letter-spacing:.06em;text-transform:uppercase;position:relative;transition:color .2s}.resume-sidenav__link:before{content:"";position:absolute;left:-1.1rem;top:50%;transform:translateY(-50%) scale(0);width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px #8b5cf6b3;transition:transform .25s var(--ease-out)}.resume-sidenav__link:hover{color:var(--text-2)}.resume-sidenav__link.active{color:var(--accent)}.resume-sidenav__link.active:before{transform:translateY(-50%) scale(1)}.resume-content{display:flex;flex-direction:column;gap:4rem}.resume-section__title{font-family:var(--font-display);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:1.75rem;padding-bottom:.6rem;border-bottom:1px solid var(--border)}.resume-timeline{display:flex;flex-direction:column;gap:0}.resume-timeline__item{display:grid;grid-template-columns:1.25rem 1fr;gap:0 1.5rem;position:relative}.resume-timeline__item:before{content:"";position:absolute;left:.5625rem;top:1.5rem;bottom:-1px;width:1px;background:var(--border)}.resume-timeline__item:last-child:before{display:none}.resume-timeline__dot{width:.625rem;height:.625rem;border-radius:50%;background:var(--accent);margin-top:.45rem;flex-shrink:0;box-shadow:0 0 0 3px #8b5cf633}.resume-timeline__card{padding-bottom:2.5rem}.resume-timeline__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.resume-timeline__role{font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:var(--text)}.resume-timeline__company{font-size:.875rem;color:var(--text-2);margin-top:.15rem}.resume-timeline__date{font-size:.75rem;color:var(--text-3);letter-spacing:.04em;white-space:nowrap;padding-top:.15rem}.resume-timeline__summary{font-size:.95rem;color:var(--text-2);line-height:1.65;margin-bottom:1rem;font-style:italic}.resume-timeline__bullets{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.resume-timeline__bullets li{font-size:.9rem;color:var(--text-2);line-height:1.6;padding-left:1.1rem;position:relative}.resume-timeline__bullets li:before{content:"▸";position:absolute;left:0;color:var(--accent);font-size:.75rem;top:.12em}.resume-timeline__tags{display:flex;flex-wrap:wrap;gap:.4rem}.resume-timeline__tags span{font-family:var(--font-mono);font-size:.72rem;color:var(--accent-2);background:#06b6d412;border:1px solid rgba(6,182,212,.18);padding:.2rem .65rem;border-radius:4px}.resume-edu-grid{display:flex;flex-direction:column;gap:1rem}.resume-edu-card{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);flex-wrap:wrap;transition:border-color .25s,background .25s}.resume-edu-card:hover{border-color:var(--border-h);background:var(--surface-h)}.resume-edu__main{flex:1 1 420px;min-width:0}.resume-edu__degree{font-weight:600;font-size:.95rem;color:var(--text)}.resume-edu__school{font-size:.85rem;color:var(--text-2);margin-top:.2rem}.resume-edu__note{font-size:.8rem;color:var(--text-3);margin-top:.35rem;font-style:italic}.resume-edu__date{font-size:.75rem;color:var(--text-3);white-space:nowrap;padding-top:.1rem;flex:0 0 auto;align-self:flex-start}.resume-skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.resume-skill-card{padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);transition:border-color .25s,background .25s}.resume-skill-card:hover{border-color:var(--border-h);background:var(--surface-h)}.resume-skill__label{font-family:var(--font-mono);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:.25rem}.resume-skill__plain{font-size:.78rem;color:var(--text-3);margin-bottom:.75rem;line-height:1.5}.resume-skill__tags{display:flex;flex-wrap:wrap;gap:.35rem}.resume-skill__tags span{font-size:.85rem;color:var(--text-2);background:#ffffff0a;border:1px solid var(--border);padding:.3rem .7rem;border-radius:6px}.resume-project__links{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.resume-project__link,.resume-project__github{font-size:.72rem;color:var(--text-3);text-decoration:none;letter-spacing:.04em;transition:color .2s;white-space:nowrap;padding-top:.15rem}.resume-project__link:hover,.resume-project__github:hover{color:var(--accent)}.resume-certs{display:flex;flex-direction:column;gap:.75rem}.resume-cert-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);flex-wrap:wrap;transition:border-color .25s,background .25s}.resume-cert-card:hover{border-color:var(--border-h);background:var(--surface-h)}.resume-cert__name{font-weight:600;font-size:.9rem;color:var(--text)}.resume-cert__provider{font-size:.8rem;color:var(--text-3);margin-top:.15rem}.resume-cert__year{font-size:.75rem;color:var(--text-3);padding:.25rem .75rem;border:1px solid var(--border);border-radius:999px}.footer{border-top:1px solid var(--border);padding:2rem 0;text-align:center}.footer p{font-size:.82rem;color:var(--text-3);letter-spacing:.03em}.tldr-page{min-height:100vh;padding-top:var(--nav-h)}.tldr-hero{position:relative;padding:clamp(4rem,8vw,7rem) 0 clamp(3rem,6vw,5rem);border-bottom:1px solid var(--border);overflow:hidden}.tldr-hero__inner{position:relative;z-index:1}.tldr-hero__title{font-family:var(--font-display);font-size:clamp(4rem,12vw,9rem);font-weight:800;letter-spacing:-.05em;line-height:1;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:1.25rem 0 1rem}.tldr-semi{-webkit-text-fill-color:var(--text-2)}.tldr-abbr{display:inline-flex;flex-direction:column;align-items:center;vertical-align:top}.tldr-abbr__full{font-family:var(--font-body);font-size:clamp(.5rem,.85vw,.68rem);font-weight:400;letter-spacing:.07em;text-transform:uppercase;line-height:1.25;-webkit-text-fill-color:rgba(255,255,255,.28);background:none;-webkit-background-clip:unset;background-clip:unset;margin-top:.2em;text-align:center}.tldr-hero__sub{font-size:clamp(1rem,2vw,1.2rem);color:var(--text-2);max-width:520px;line-height:1.65;margin-bottom:.75rem}.tldr-hero__note{max-width:560px;margin-bottom:1.5rem;font-size:.72rem;line-height:1.45;color:var(--text-3)}.tldr-hero__meta{display:flex;gap:.75rem;align-items:center;font-family:var(--font-mono);font-size:.8rem;color:var(--text-3)}.back-link{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:.82rem;color:var(--text-3);transition:color .2s;letter-spacing:.03em}.back-link:hover{color:var(--accent)}.tldr-body{padding:3rem clamp(1.25rem,4vw,2.5rem)}.tag-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem}.tag-filter__btn{font-family:var(--font-mono);font-size:.78rem;color:var(--text-3);background:var(--surface);border:1px solid var(--border);padding:.35rem .85rem;border-radius:99px;letter-spacing:.04em;cursor:none;transition:color .2s,border-color .2s,background .2s}.tag-filter__btn:hover,.tag-filter__btn.active{color:var(--accent);border-color:var(--accent);background:#8b5cf614}.post-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.post-card{display:grid;grid-template-columns:56px 1fr 32px;gap:0 1.5rem;align-items:center;padding:1.75rem 2rem;border-bottom:1px solid var(--border);transition:background .2s;text-decoration:none;color:inherit;cursor:none}.post-card:last-child{border-bottom:none}.post-card:hover{background:var(--surface-h)}.post-card__index{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;align-self:start;padding-top:.35rem}.post-card__content{display:flex;flex-direction:column;gap:.5rem}.post-card__meta{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.75rem;color:var(--text-3)}.post-card__dot{width:3px;height:3px;background:var(--text-3);border-radius:50%}.post-card__title{font-family:var(--font-display);font-size:1.1rem;font-weight:700;letter-spacing:-.02em;color:var(--text);transition:color .2s}.post-card:hover .post-card__title{color:var(--accent)}.post-card__tldr{font-size:.88rem;color:var(--text-2);line-height:1.55}.post-card__tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem}.post-card__tags span{font-family:var(--font-mono);font-size:.68rem;color:var(--text-3);background:#ffffff0a;border:1px solid var(--border);padding:.15rem .5rem;border-radius:4px}.post-card__arrow{font-size:1.1rem;color:var(--text-3);transition:color .2s,transform .2s;align-self:center}.post-card:hover .post-card__arrow{color:var(--accent);transform:translate(4px)}.tldr-post-hero{position:relative;padding:clamp(3rem,6vw,5rem) 0 clamp(2rem,4vw,3.5rem);border-bottom:1px solid var(--border);overflow:hidden}.post-header{margin-top:1.5rem;max-width:760px}.post-header__meta{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.78rem;color:var(--text-3);margin-bottom:1rem}.post-header__title{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,3rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:1.25rem}.post-header__tags{display:flex;flex-wrap:wrap;gap:.45rem}.post-header__tags span{font-family:var(--font-mono);font-size:.72rem;color:var(--accent-2);background:#06b6d412;border:1px solid rgba(6,182,212,.18);padding:.2rem .65rem;border-radius:4px}.tldr-callout{max-width:760px;margin:2.5rem auto;background:#8b5cf60f;border:1px solid rgba(139,92,246,.22);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;padding:1.25rem 1.5rem;display:flex;gap:1rem;align-items:flex-start}.tldr-callout__label{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;flex-shrink:0;padding-top:.2rem}.tldr-callout p{font-size:.95rem;color:var(--text-2);line-height:1.6}.post-content{max-width:760px;margin:0 auto;padding:2rem 0 4rem}.post-content h2{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:2.5rem 0 1rem;color:var(--text)}.post-content h3{font-family:var(--font-display);font-size:1.15rem;font-weight:700;margin:2rem 0 .75rem;color:var(--text)}.post-content p{color:var(--text-2);font-size:1.025rem;line-height:1.75;margin-bottom:1.25rem}.post-content ul{color:var(--text-2);font-size:1.025rem;line-height:1.75;margin:.75rem 0 1.25rem 1.5rem;display:flex;flex-direction:column;gap:.4rem;list-style:disc}.post-content strong{color:var(--text);font-weight:600}.post-content em{color:var(--text-2)}.post-content pre{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;overflow-x:auto;margin:1.5rem 0;font-size:.875rem;line-height:1.7}.post-content code{font-family:var(--font-mono);font-size:.875em;color:var(--accent-2);background:#06b6d412;padding:.15em .4em;border-radius:4px}.post-content pre code{background:none;color:#e2e8f0;padding:0;font-size:.875rem}.post-nav{max-width:760px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:3rem 0 4rem;border-top:1px solid var(--border)}.post-nav__link{display:flex;flex-direction:column;gap:.3rem;padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s,background .2s}.post-nav__link:hover{border-color:var(--accent);background:var(--surface)}.post-nav__link--next{text-align:right;margin-left:auto}.post-nav__dir{font-family:var(--font-mono);font-size:.75rem;color:var(--text-3);letter-spacing:.04em}.post-nav__title{font-size:.9rem;font-weight:600;color:var(--text-2);line-height:1.4}.post-nav__link:hover .post-nav__title{color:var(--text)}@media (max-width: 900px){.resume-layout{grid-template-columns:1fr}.resume-sidenav,.nav__links{display:none}.nav__burger{display:flex}body{cursor:auto}.cursor,.cursor-trail{display:none}.about__grid{grid-template-columns:1fr;gap:2.5rem}.projects__grid{grid-template-columns:1fr}.project-card--featured{flex-direction:column;gap:1rem}.skills__grid,.certs{grid-template-columns:1fr}.timeline__item{grid-template-columns:24px 1fr;gap:0 1rem}.post-card{grid-template-columns:40px 1fr 24px;gap:0 1rem;padding:1.25rem}.post-nav{grid-template-columns:1fr}.post-nav__link--next{text-align:left;margin-left:0}}@media (max-width: 600px){.hero__name{font-size:clamp(3rem,16vw,5.5rem)}.about__stats{grid-template-columns:1fr 1fr}.timeline__body{padding:1.25rem}.project-card{padding:1.5rem}.hero__actions{flex-direction:column;width:100%}.btn{justify-content:center}.tldr-callout{flex-direction:column;gap:.5rem}.post-card{grid-template-columns:1fr}.post-card__index,.post-card__arrow{display:none}}
