:root{--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .9375rem;--text-base: 1.0625rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 2rem;--text-3xl: 2.75rem;--text-4xl: 3.5rem;--text-5xl: 5rem;--color-bg: #050505;--color-surface: #0c0c0c;--color-surface-raised: #141414;--color-border: #2a2a2a;--color-border-subtle: #202020;--color-text: #f5f5f5;--color-text-secondary: #c4c4c4;--color-text-muted: #999999;--color-accent: #60a5fa;--color-accent-dim: #3b82f6;--color-accent-glow: rgba(96, 165, 250, .4);--color-accent-subtle: rgba(96, 165, 250, .08);--color-card-bg: rgba(12, 12, 12, .8);--color-card-bg-hover: rgba(20, 20, 20, .9);--color-card-shadow: rgba(0, 0, 0, .3)}[data-theme=light]{--color-bg: #fcfaf8;--color-surface: #ffffff;--color-surface-raised: #f8f6f3;--color-border: #d4cfc7;--color-border-subtle: #e8e4de;--color-text: #1c1917;--color-text-secondary: #44403c;--color-text-muted: #78716c;--color-accent: #0f766e;--color-accent-dim: #0d9488;--color-accent-glow: rgba(15, 118, 110, .25);--color-accent-subtle: rgba(15, 118, 110, .08);--color-card-bg: rgba(255, 255, 255, .9);--color-card-bg-hover: rgba(248, 246, 243, 1);--color-card-shadow: rgba(0, 0, 0, .08)}.theme-toggle{background:none;border:none;padding:0;cursor:pointer;line-height:1}.theme-toggle__track{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:20px;padding:4px 8px;position:relative;width:56px;height:28px;transition:all var(--transition-fast)}.theme-toggle:hover .theme-toggle__track{border-color:var(--color-accent)}.theme-toggle__icon{font-size:14px;z-index:2;transition:opacity var(--transition-fast);line-height:1}.theme-toggle__icon--sun,.theme-toggle__icon--moon{opacity:1;color:#fff}.theme-toggle__thumb{position:absolute;width:22px;height:22px;background:var(--color-accent);border-radius:50%;top:50%;transform:translateY(-50%);right:3px;transition:all var(--transition-base);box-shadow:0 2px 4px #0000004d}[data-theme=light] .theme-toggle__thumb{right:auto;left:3px}[data-theme=light] .theme-toggle__icon--sun{opacity:1;color:#fff}[data-theme=light] .theme-toggle__icon--moon{opacity:1;color:#1f2937}[data-theme=light] body{background-image:radial-gradient(ellipse 100% 80% at 50% -30%,rgba(15,118,110,.08),transparent 50%),radial-gradient(ellipse 60% 60% at 100% 0%,rgba(13,148,136,.05),transparent 50%),radial-gradient(ellipse 60% 60% at 0% 100%,rgba(15,118,110,.03),transparent 50%)}[data-theme=light] body:before{background:radial-gradient(circle at 30% 20%,rgba(15,118,110,.02) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(13,148,136,.015) 0%,transparent 50%)}[data-theme=light] .hero__image img{border:1px solid rgba(15,118,110,.2);box-shadow:0 0 40px #0f766e1a}[data-theme=light] .hero__image:before{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dim),var(--color-accent))}[data-theme=light] .hero__image:after{background:radial-gradient(circle,rgba(15,118,110,.15) 0%,transparent 60%)}[data-theme=light] .belief:hover{background:linear-gradient(90deg,rgba(15,118,110,.05),transparent);box-shadow:-4px 0 20px #0f766e14}[data-theme=light] .site-header{background:#fcfaf8d9}[data-theme=light] .site-header:after{background:linear-gradient(90deg,transparent,var(--color-accent),transparent)}[data-theme=light] .site-footer:before{background:linear-gradient(90deg,transparent,var(--color-accent),transparent)}[data-theme=light] .hero__name{background:linear-gradient(135deg,#0f766e,#0d9488,#115e59);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=light] .case-study__title,[data-theme=light] .writing-page__header h1,[data-theme=light] .projects-page__header h1,[data-theme=light] .resume-page h1{background:linear-gradient(135deg,#0f766e,#0d9488,#115e59);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}:root{--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 10rem;--max-width: 880px;--content-padding: 1.5rem;--leading-tight: 1.15;--leading-snug: 1.35;--leading-normal: 1.6;--leading-relaxed: 1.8;--transition-fast: .15s ease;--transition-base: .2s ease}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;padding:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-bg);background-image:radial-gradient(ellipse 100% 80% at 50% -30%,rgba(96,165,250,.15),transparent 50%),radial-gradient(ellipse 60% 60% at 100% 0%,rgba(139,92,246,.08),transparent 50%),radial-gradient(ellipse 60% 60% at 0% 100%,rgba(59,130,246,.05),transparent 50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}body:before{content:"";position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 20%,rgba(96,165,250,.03) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(139,92,246,.02) 0%,transparent 50%);animation:floatGlow 20s ease-in-out infinite;pointer-events:none;z-index:-1}@keyframes floatGlow{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(2%,2%) rotate(1deg)}50%{transform:translate(-1%,3%) rotate(-1deg)}75%{transform:translate(1%,-2%) rotate(.5deg)}}h1,h2,h3,h4{margin:0;font-weight:500;line-height:var(--leading-tight);color:var(--color-text);letter-spacing:-.02em}h1{font-size:var(--text-4xl);font-weight:600}h2{font-size:var(--text-xl);margin-top:var(--space-2xl);margin-bottom:var(--space-lg)}h3{font-size:var(--text-lg);margin-top:var(--space-lg);margin-bottom:var(--space-sm)}p{margin:0 0 var(--space-md) 0}p:last-child{margin-bottom:0}a{color:var(--color-text);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent)}.link-underline{text-decoration:underline;text-decoration-color:var(--color-text-muted);text-underline-offset:3px}.link-underline:hover{text-decoration-color:var(--color-accent)}.link-accent{color:var(--color-accent)}.link-accent:hover{color:var(--color-accent-dim)}.site-container{max-width:var(--max-width);margin:0 auto;padding:0 var(--content-padding)}.site-container--wide{max-width:1100px}main{padding-top:var(--space-xl);padding-bottom:var(--space-3xl)}.section-label{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.section-label__text{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent)}.section-label__line{flex:1;height:1px;background:linear-gradient(90deg,var(--color-accent) 0%,var(--color-border) 30%,transparent)}.section-more{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);font-weight:500;color:var(--color-accent);text-decoration:none;margin-top:var(--space-lg);transition:all var(--transition-fast)}.section-more:hover{gap:var(--space-sm);color:var(--color-text)}.site-header{padding:var(--space-md) 0;position:sticky;top:0;z-index:100;background:#050505cc;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.site-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent) 50%,transparent);opacity:.3}.site-header nav{display:flex;justify-content:space-between;align-items:center}.site-header .site-name{font-size:var(--text-sm);font-weight:600;color:var(--color-text);text-decoration:none;letter-spacing:-.01em}.site-header .site-name:hover{color:var(--color-accent)}.site-header .nav-links{display:flex;align-items:center;gap:var(--space-lg);list-style:none;margin:0;padding:0}.site-header .nav-links a{font-size:var(--text-sm);color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast);position:relative}.site-header .nav-links a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--color-text);transition:width var(--transition-fast)}.site-header .nav-links a:hover{color:var(--color-text)}.site-header .nav-links a:hover:after{width:100%}.btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.625rem 1.25rem;font-size:var(--text-sm);font-weight:500;border-radius:6px;transition:all var(--transition-fast);text-decoration:none}.btn--primary{background:var(--color-accent);color:#fff;box-shadow:0 0 20px var(--color-accent-glow)}.btn--primary:hover{background:var(--color-accent-dim);color:#fff;box-shadow:0 0 30px var(--color-accent-glow)}.btn--ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.btn--ghost:hover{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-accent)}.hero{padding:var(--space-2xl) 0 var(--space-2xl) 0;display:grid;grid-template-columns:1fr auto;gap:var(--space-xl);align-items:center;position:relative}.hero__content{max-width:560px}.hero__name{font-size:var(--text-5xl);font-weight:700;letter-spacing:-.03em;line-height:var(--leading-tight);margin-bottom:var(--space-md);background:linear-gradient(135deg,#fff,#60a5fa,#8b5cf6);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 8s ease-in-out infinite}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero__title{font-size:var(--text-lg);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-sm);letter-spacing:.02em}.hero__handle{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--color-accent);margin-bottom:var(--space-lg)}.hero__intro{font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed);max-width:480px}.hero__image{position:relative}.hero__image img{width:360px;height:360px;object-fit:cover;border-radius:16px;border:1px solid rgba(96,165,250,.3);box-shadow:0 0 40px #60a5fa26}.hero__image:before{content:"";position:absolute;inset:-3px;border-radius:18px;background:linear-gradient(135deg,var(--color-accent),#8b5cf6,var(--color-accent-dim));background-size:200% 200%;z-index:-1;opacity:.7;animation:borderGlow 4s ease-in-out infinite}@keyframes borderGlow{0%,to{background-position:0% 50%;opacity:.5}50%{background-position:100% 50%;opacity:.8}}.hero__image:after{content:"";position:absolute;inset:-40px;border-radius:50%;background:radial-gradient(circle,rgba(96,165,250,.2) 0%,transparent 60%);z-index:-2;animation:pulseGlow 3s ease-in-out infinite}@keyframes pulseGlow{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.1);opacity:.5}}.beliefs{padding:var(--space-2xl) 0}.beliefs__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.belief{padding:var(--space-md);border-left:2px solid var(--color-border);transition:all var(--transition-base);position:relative}.belief:hover{border-color:var(--color-accent);background:linear-gradient(90deg,rgba(96,165,250,.05),transparent);box-shadow:-4px 0 20px #60a5fa1a}.belief__title{font-size:var(--text-base);font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}.belief__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-normal);margin:0}.proud-of{padding:var(--space-2xl) 0}.proud-of__card{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-xl);align-items:center;padding:var(--space-lg);background:var(--color-card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border);border-radius:16px;position:relative;transition:all var(--transition-base)}.proud-of__card:before{content:"";position:absolute;inset:0;border-radius:16px;padding:1px;background:linear-gradient(135deg,transparent 0%,var(--color-accent) 50%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--transition-base);pointer-events:none}.proud-of__card:hover:before{opacity:.6}.proud-of__card:hover{border-color:transparent;background:var(--color-card-bg-hover);box-shadow:0 0 40px var(--color-accent-glow),0 12px 40px var(--color-card-shadow);transform:translateY(-3px)}.proud-of__image{position:relative;border-radius:12px;overflow:hidden}.proud-of__image img{width:100%;height:auto;display:block;border-radius:12px;border:1px solid var(--color-border);transition:all var(--transition-base)}.proud-of__image:after{content:"";position:absolute;inset:-20px;border-radius:20px;background:radial-gradient(circle,var(--color-accent-glow) 0%,transparent 60%);z-index:-1;opacity:0;transition:opacity var(--transition-base)}.proud-of__card:hover .proud-of__image:after{opacity:.5}.proud-of__card:hover .proud-of__image img{border-color:var(--color-accent);box-shadow:0 0 30px var(--color-accent-glow)}.proud-of__content{display:flex;flex-direction:column;gap:var(--space-sm)}.proud-of__title{font-size:var(--text-2xl);font-weight:600;color:var(--color-text);margin:0;background:linear-gradient(135deg,var(--color-text) 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.proud-of__tagline{font-size:var(--text-base);font-weight:500;color:var(--color-accent);margin:0;font-family:var(--font-mono)}.proud-of__description{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0}.proud-of__links{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-sm)}.link-btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.625rem 1rem;font-size:var(--text-sm);font-weight:500;color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:8px;text-decoration:none;transition:all var(--transition-fast)}.link-btn svg{flex-shrink:0}.link-btn:hover{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-subtle);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-accent-glow)}.link-btn--vscode:hover{color:#007acc;border-color:#007acc;background:#007acc1a;box-shadow:0 4px 12px #007acc33}.link-btn--github:hover{color:#f0f0f0;border-color:#6e5494;background:#6e54941a;box-shadow:0 4px 12px #6e549433}[data-theme=light] .proud-of__title{background:linear-gradient(135deg,var(--color-text) 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=light] .link-btn--github:hover{color:#24292e}.work{padding:var(--space-2xl) 0}.work__grid{display:grid;gap:var(--space-md)}.project-card{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:var(--color-card-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:12px;text-decoration:none;transition:all var(--transition-base);position:relative}.project-card__body{flex:1}.project-card:before{content:"";position:absolute;inset:0;border-radius:12px;padding:1px;background:linear-gradient(135deg,transparent 0%,var(--color-accent) 50%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--transition-base)}.project-card:hover:before{opacity:.5}.project-card:hover{border-color:transparent;background:var(--color-card-bg-hover);box-shadow:0 0 30px var(--color-accent-glow),0 8px 32px var(--color-card-shadow);transform:translateY(-2px)}.project-card__header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.project-card__title{font-size:var(--text-lg);font-weight:500;color:var(--color-text);margin:0 0 var(--space-sm) 0;line-height:1.3}.project-card__arrow{color:var(--color-text-muted);font-size:var(--text-lg);flex-shrink:0;transition:all var(--transition-fast)}.project-card:hover .project-card__arrow{transform:translate(4px);color:var(--color-accent)}.project-card__summary{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-normal);margin-bottom:var(--space-md)}.project-card__tags{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tag{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-muted);padding:.25rem .5rem;background:var(--color-bg);border-radius:4px}.background{padding:var(--space-xl) 0}.background__grid{display:grid;grid-template-columns:1fr auto;gap:var(--space-3xl);align-items:start}.background__experience{display:flex;flex-direction:column;gap:var(--space-md)}.background-entry{display:grid;grid-template-columns:4.5rem 1fr;gap:var(--space-md)}.background-entry__year{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-muted);padding-top:.2rem}.background-entry__content{display:flex;flex-direction:column;gap:.125rem}.background-entry__role{font-size:var(--text-base);font-weight:500;color:var(--color-text);margin:0;line-height:var(--leading-snug)}.background-entry__org{font-size:var(--text-sm);color:var(--color-text-muted)}.background-entry__scope{font-size:var(--text-sm);color:var(--color-text-muted);font-style:italic;line-height:1.35;margin:.25rem 0 0}.background__education{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-border-subtle)}.writing{padding:var(--space-xl) 0}.writing__placeholder{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--text-sm);color:var(--color-text-muted);margin:0;font-style:italic}.writing__year{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-muted);opacity:.5;font-style:normal}.writing__list{display:flex;flex-direction:column;gap:var(--space-sm)}.writing-cards{display:grid;gap:var(--space-md)}.writing-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:10px;text-decoration:none;transition:all var(--transition-base);position:relative}.writing-card:before{content:"";position:absolute;inset:0;border-radius:10px;padding:1px;background:linear-gradient(135deg,transparent 0%,var(--color-accent) 50%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--transition-base)}.writing-card:hover:before{opacity:.5}.writing-card:hover{border-color:transparent;background:var(--color-card-bg-hover);box-shadow:0 0 25px var(--color-accent-glow)}.writing-card__title{font-size:var(--text-base);font-weight:500;color:var(--color-text)}.writing-card__cta{font-size:var(--text-sm);font-weight:600;color:var(--color-accent);padding:.25rem .75rem;background:var(--color-accent-subtle);border-radius:4px;transition:all var(--transition-fast)}.writing-card:hover .writing-card__cta{background:var(--color-accent);color:#fff}.writing-featured{display:flex;flex-direction:column;gap:var(--space-md)}.featured-post{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:12px;text-decoration:none;transition:all var(--transition-base)}.featured-post:hover{border-color:var(--color-accent);background:var(--color-card-bg-hover);box-shadow:0 0 30px var(--color-accent-glow)}.featured-post__number{font-size:var(--text-3xl);font-weight:700;font-family:var(--font-mono);background:linear-gradient(135deg,var(--color-accent) 0%,#8b5cf6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.featured-post__content{display:flex;flex-direction:column;gap:var(--space-xs)}.featured-post__title{font-size:var(--text-lg);font-weight:600;color:var(--color-text);margin:0}.featured-post__excerpt{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;line-height:var(--leading-normal)}.featured-post__arrow{font-size:var(--text-sm);font-weight:500;color:var(--color-accent);transition:all var(--transition-fast)}.featured-post:hover .featured-post__arrow{transform:translate(4px);color:var(--color-text)}.writing-item{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-subtle);text-decoration:none;transition:all var(--transition-fast)}.writing-item:hover{padding-left:var(--space-sm);border-color:var(--color-text-muted)}.writing-item__title{font-size:var(--text-base);color:var(--color-text)}.writing-item__cta{font-size:var(--text-sm);font-weight:500;color:var(--color-accent);transition:all var(--transition-fast)}.writing-item:hover .writing-item__cta{color:var(--color-text)}.writing-item__date{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono)}.writing-page{max-width:720px}.writing-page__header{padding-top:var(--space-lg);margin-bottom:var(--space-2xl)}.writing-page__header h1{font-size:var(--text-4xl);font-weight:700;margin-bottom:var(--space-md);background:linear-gradient(135deg,#ffffff 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.writing-page__intro{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0}.writing-page__posts{display:flex;flex-direction:column;gap:var(--space-lg)}.post-card{display:block;text-decoration:none;padding:var(--space-lg);background:var(--color-card-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:12px;transition:all var(--transition-base);position:relative;cursor:pointer}.post-card:before{content:"";position:absolute;inset:0;border-radius:12px;padding:1px;background:linear-gradient(135deg,transparent 0%,var(--color-accent) 50%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--transition-base);pointer-events:none}.post-card:hover:before{opacity:.4}.post-card:hover{border-color:transparent;background:var(--color-card-bg-hover);box-shadow:0 0 30px var(--color-accent-glow)}.post-card__meta{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.post-card__date{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-muted)}.post-card__tag{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-accent);padding:.125rem .5rem;background:var(--color-accent-subtle);border-radius:4px}.post-card__title{font-size:var(--text-xl);font-weight:600;color:var(--color-text);margin:0 0 var(--space-sm) 0;line-height:var(--leading-snug)}.post-card__excerpt{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0 0 var(--space-md) 0}.post-card__link{font-size:var(--text-sm);font-weight:500;color:var(--color-accent);text-decoration:none;transition:all var(--transition-fast)}.post-card__link:hover{color:var(--color-text)}.site-footer{padding:var(--space-xl) 0;margin-top:var(--space-2xl);position:relative}.site-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent) 50%,transparent);opacity:.4}.site-footer__inner{display:flex;justify-content:space-between;align-items:center}.site-footer__links{display:flex;gap:var(--space-md);list-style:none;margin:0;padding:0}.site-footer__links a{font-size:var(--text-sm);color:var(--color-text-muted);transition:color var(--transition-fast)}.site-footer__links a:hover{color:var(--color-text)}.site-footer__copy{font-size:var(--text-xs);color:var(--color-text-muted)}.case-study{max-width:720px;padding-bottom:var(--space-2xl)}.case-study__back{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-xl);transition:color var(--transition-fast)}.case-study__back:hover{color:var(--color-accent)}.case-study__header{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border)}.case-study__title{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-md);background:linear-gradient(135deg,#ffffff 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.case-study__positioning{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:var(--leading-relaxed);font-style:italic;margin:0}.case-study__section{margin-bottom:var(--space-xl)}.case-study__section h2{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);margin-bottom:var(--space-md)}.case-study__section h3{font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);margin-top:var(--space-md);margin-bottom:var(--space-sm)}.case-study__section p{color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-sm)}.case-study__section p:last-child{margin-bottom:0}.case-study__decisions{list-style:none;padding:0;margin:0}.case-study__decisions li{padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-secondary);line-height:var(--leading-normal)}.case-study__decisions li:last-child{border-bottom:none}.case-study__decisions strong{color:var(--color-text);font-weight:500}.case-study__tradeoffs{list-style:none;padding:0;margin:0 0 var(--space-sm) 0}.case-study__tradeoffs li{padding:var(--space-xs) 0;color:var(--color-text-secondary);font-size:var(--text-base)}.case-study__tradeoffs li:before{content:"·";margin-right:var(--space-sm);color:var(--color-accent)}.case-study__figure{margin:var(--space-lg) 0;padding:0}.case-study__image{width:100%;height:auto;max-height:480px;object-fit:contain;border-radius:12px;border:1px solid var(--color-border);background:var(--color-surface);transition:all var(--transition-base)}.case-study__image:hover{border-color:var(--color-accent);box-shadow:0 0 30px var(--color-accent-glow)}.case-study__tech{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--color-text-muted);margin:var(--space-lg) 0;padding:var(--space-md) 0;border-top:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle)}.case-study__link{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--text-base);font-weight:500;color:var(--color-accent);text-decoration:none;transition:all var(--transition-fast)}.case-study__link:hover{color:var(--color-text);gap:var(--space-sm)}.projects-page{max-width:720px}.projects-page__header{padding-top:var(--space-lg);margin-bottom:var(--space-2xl)}.projects-page__header h1{font-size:var(--text-4xl);font-weight:700;margin-bottom:var(--space-md);background:linear-gradient(135deg,#ffffff 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-page__intro{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0}.project-separator{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent) 50%,transparent);margin:var(--space-2xl) 0;opacity:.3}.projects-page .case-study{padding-bottom:0}.projects-page .case-study__section h3{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);margin-top:0;margin-bottom:var(--space-md)}.projects-page .case-study__section h4{font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted);margin-top:var(--space-md);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.08em}.resume-page{max-width:720px;padding-top:var(--space-lg)}.resume-page__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2xl)}.resume-page__header-content{flex:1}.resume-page h1{font-size:var(--text-4xl);font-weight:700;margin-bottom:var(--space-md);background:linear-gradient(135deg,#ffffff 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.resume-page__intro{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0}.resume-section{margin-bottom:var(--space-xl)}.resume-section h2{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);margin-bottom:var(--space-md)}.resume-item{margin-bottom:var(--space-xl)}.resume-item:last-child{margin-bottom:0}.resume-item__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-xs)}.resume-item__title{font-size:var(--text-xl);font-weight:600;color:var(--color-text)}.resume-item__meta{display:flex;align-items:center;gap:var(--space-sm)}.resume-item__link{font-size:var(--text-xs);color:var(--color-accent);text-decoration:none;padding:2px 8px;border:1px solid var(--color-accent);border-radius:4px;transition:all var(--transition-fast)}.resume-item__link:hover{background:var(--color-accent);color:var(--color-bg)}.resume-item__date{font-size:var(--text-sm);color:var(--color-text-muted);font-family:var(--font-mono)}.resume-item__org{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-md)}.resume-item__desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);white-space:pre-line}.skills-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.skill-tag{font-size:var(--text-sm);color:var(--color-text-secondary);padding:.375rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-accent{color:var(--color-accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){:root{--text-4xl: 2.5rem;--text-5xl: 3rem;--space-xl: 3rem;--space-2xl: 4rem;--space-3xl: 6rem}.hero{grid-template-columns:1fr;text-align:center;gap:var(--space-lg)}.hero__content{max-width:100%;order:2}.hero__intro{max-width:100%}.hero__image{order:1;justify-self:center}.hero__image img{width:200px;height:200px}.beliefs__grid{grid-template-columns:1fr}.proud-of__card{grid-template-columns:1fr;gap:var(--space-lg)}.proud-of__image{order:1}.proud-of__content{order:2;text-align:center}.proud-of__links{justify-content:center}.background__grid{grid-template-columns:1fr;gap:var(--space-xl)}.background__education{margin-top:var(--space-sm);padding-top:var(--space-lg);border-top:1px solid var(--color-border-subtle)}.resume-page__header{flex-direction:column;gap:var(--space-md);align-items:flex-start}.resume-page__header .btn{align-self:flex-start}.resume-item__header{flex-direction:column;gap:var(--space-xs);align-items:flex-start}.writing-page__posts{gap:var(--space-md)}.post-card{padding:var(--space-md)}.projects-page__header{padding-top:var(--space-md)}.case-study{padding-bottom:var(--space-lg)}.case-study__header{margin-bottom:var(--space-lg);padding-bottom:var(--space-md)}.case-study__figure{margin-bottom:var(--space-lg)}.case-study__figure img{max-height:300px}.case-study__section{margin-bottom:var(--space-lg)}.writing-featured{gap:var(--space-md)}.featured-post{padding:var(--space-md)}.featured-post__content{gap:var(--space-xs)}.work__grid{gap:var(--space-md)}}@media(max-width:640px){.site-header .btn--ghost{display:none}.site-header .nav-links{gap:var(--space-sm)}.site-footer__inner{flex-direction:column;align-items:flex-start;gap:var(--space-md);text-align:left}.site-footer__links{flex-direction:column;gap:var(--space-sm)}}@media(max-width:480px){:root{--text-4xl: 2rem;--text-5xl: 2.5rem;--text-3xl: 1.75rem;--content-padding: 1rem}.site-header .nav-links{gap:var(--space-xs)}.site-header .nav-links a{font-size:var(--text-xs)}.site-header .btn--ghost,.theme-toggle{display:none}.theme-toggle__thumb{width:16px;height:16px}.project-card{padding:var(--space-md)}.resume-page h1{font-size:var(--text-3xl)}.resume-item__title{font-size:var(--text-lg)}.writing-page__header h1{font-size:var(--text-3xl)}.post-card__title{font-size:var(--text-lg)}.projects-page__header h1{font-size:var(--text-3xl)}.case-study__title{font-size:var(--text-2xl)}.hero__name{font-size:var(--text-4xl)}.featured-post__title{font-size:var(--text-lg)}.proud-of__title{font-size:var(--text-xl)}.proud-of__links{flex-direction:column;gap:var(--space-sm)}.link-btn{width:100%;justify-content:center}}
