:root{color-scheme:light;--font-sans: "Inter", "SF Pro Text", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: clamp(5rem, 8vw, 7rem);--text-xs: .8125rem;--text-sm: .9375rem;--text-md: 1rem;--text-lg: clamp(1.15rem, 2.5vw, 1.35rem);--text-xl: clamp(1.55rem, 3vw, 2rem);--text-2xl: clamp(2.1rem, 4.5vw, 3rem);--text-3xl: clamp(2.8rem, 7vw, 4.75rem);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 34px;--color-bg: #f7f8fa;--color-bg-soft: #ffffff;--color-surface: rgba(255, 255, 255, .82);--color-surface-elevated: #ffffff;--color-text: #0f172a;--color-text-muted: #4b5563;--color-line: rgba(15, 23, 42, .09);--color-line-strong: rgba(15, 23, 42, .16);--color-accent: #1f6feb;--color-accent-soft: rgba(31, 111, 235, .14);--color-focus: #2563eb;--shadow-sm: 0 8px 24px rgba(15, 23, 42, .06);--shadow-md: 0 22px 44px rgba(15, 23, 42, .08);--shadow-lg: 0 34px 74px rgba(15, 23, 42, .11);--section-max: min(1120px, calc(100% - 2.5rem) )}:root[data-theme=dark]{color-scheme:dark;--color-bg: #090c14;--color-bg-soft: #0e1220;--color-surface: rgba(16, 23, 37, .8);--color-surface-elevated: #12192a;--color-text: #eef2ff;--color-text-muted: #a6b0c4;--color-line: rgba(226, 232, 240, .12);--color-line-strong: rgba(226, 232, 240, .23);--color-accent: #6ea8ff;--color-accent-soft: rgba(110, 168, 255, .2);--color-focus: #86b3ff;--shadow-sm: 0 12px 24px rgba(3, 8, 20, .45);--shadow-md: 0 24px 58px rgba(2, 6, 23, .5);--shadow-lg: 0 38px 84px rgba(2, 6, 23, .62)}*{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);background:radial-gradient(circle at 20% -10%,rgba(31,111,235,.1),transparent 40%),radial-gradient(circle at 88% 0%,rgba(120,119,198,.12),transparent 40%),linear-gradient(180deg,var(--color-bg-soft) 0%,var(--color-bg) 52%,var(--color-bg) 100%);color:var(--color-text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .38s ease,color .38s ease}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5{margin:0;letter-spacing:-.03em;line-height:1.08}p,ul,blockquote,figure{margin:0}img{max-width:100%;display:block}.app-shell{min-height:100vh}.main-shell{width:var(--section-max);margin:0 auto;padding-bottom:var(--space-8)}.route-shell{min-height:calc(100vh - 4rem)}.loading-shell{min-height:40vh;display:grid;place-items:center;color:var(--color-text-muted)}.site-nav-wrap{position:sticky;top:0;z-index:100;padding:var(--space-4) 0}.site-nav{width:var(--section-max);margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-4);padding:.75rem 1rem;border-radius:999px;border:1px solid var(--color-line);background:color-mix(in srgb,var(--color-surface-elevated),transparent 28%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm)}.site-brand{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.site-links{display:flex;align-items:center;justify-content:center;gap:.25rem;overflow-x:auto;scrollbar-width:none}.site-links::-webkit-scrollbar{display:none}.site-links a{font-size:var(--text-xs);color:var(--color-text-muted);border-radius:999px;border:1px solid transparent;padding:.48rem .8rem;transition:border-color .26s ease,color .26s ease,background-color .26s ease;white-space:nowrap}.site-links a:hover,.site-links a.active{color:var(--color-text);border-color:var(--color-line-strong);background:var(--color-accent-soft)}.theme-toggle{border:1px solid var(--color-line-strong);background:var(--color-surface-elevated);color:var(--color-text-muted);width:64px;height:34px;border-radius:999px;display:flex;align-items:center;justify-content:space-evenly;cursor:pointer;transition:background-color .26s ease,border-color .26s ease}.theme-toggle .active{color:var(--color-text)}.section{padding:var(--space-9) 0;border-bottom:1px solid var(--color-line);scroll-margin-top:6rem}.hero-section{position:relative;overflow:hidden;border-bottom:1px solid transparent}.hero-gradient{position:absolute;inset:10% -15% auto;height:350px;border-radius:999px;background:radial-gradient(circle at 50% 0%,rgba(31,111,235,.2),transparent 62%);filter:blur(16px);pointer-events:none}.hero-content{position:relative;max-width:900px}.hero-eyebrow,.overline,.section-eyebrow,.timeline-year{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.hero-content h1{margin-top:var(--space-4);font-size:var(--text-3xl)}.hero-intro{margin-top:var(--space-5);max-width:72ch;font-size:var(--text-lg);color:var(--color-text-muted)}.hero-actions{margin-top:var(--space-6);display:flex;gap:var(--space-3);flex-wrap:wrap}.hero-contact-inline{display:inline-flex;align-items:center;gap:var(--space-2)}.social-icon-btn{width:42px;height:42px;border-radius:999px;border:1px solid var(--color-line-strong);background:var(--color-surface-elevated);color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;transition:color .22s ease,border-color .22s ease,background-color .22s ease,transform .22s ease}.social-icon-btn:hover{color:var(--color-text);border-color:var(--color-focus);background:var(--color-accent-soft);transform:translateY(-1px)}.btn{border:1px solid var(--color-line-strong);border-radius:999px;padding:.72rem 1.05rem;display:inline-flex;align-items:center;gap:.45rem;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:transform .26s ease,box-shadow .26s ease,background-color .26s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg-soft);box-shadow:var(--shadow-sm)}:root[data-theme=dark] .btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#09101d}.btn-secondary{background:var(--color-surface-elevated);color:var(--color-text)}.section-header{max-width:900px;margin-bottom:var(--space-7)}.section-header h2{margin-top:var(--space-3);font-size:var(--text-2xl)}.section-header p{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-md);line-height:1.75}.timeline{display:grid;gap:var(--space-4)}.timeline-item{padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-sm);display:grid;grid-template-columns:84px 1fr;gap:var(--space-4)}.timeline-item h3,.experience-card h3,.project-card h3,.skill-group h3,.blog-preview-card h3,.blog-list-card h3{font-size:var(--text-xl)}.timeline-item p,.experience-card p,.project-card p,.blog-preview-card p,.blog-list-card p,.article-shell p,.contact-card p,.site-footer p,.testimonial-card blockquote,.testimonial-card span{color:var(--color-text-muted);line-height:1.75}.experience-grid,.project-grid,.skills-grid,.blog-preview-grid,.blogs-list-grid,.testimonials-row,.contact-grid{display:grid;gap:var(--space-4)}.experience-grid,.skills-grid,.blog-preview-grid,.blogs-list-grid,.contact-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.experience-card,.skill-group,.blog-preview-card,.blog-list-card,.contact-card,.contact-form,.testimonial-card{border:1px solid var(--color-line);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.experience-card{grid-column:span 12;padding:var(--space-6)}.experience-head{margin-bottom:var(--space-4)}.muted{margin-top:var(--space-2)}.experience-card ul{margin-top:var(--space-4);padding-left:1.2rem;color:var(--color-text-muted);display:grid;gap:.38rem}.metric-row{margin-top:var(--space-5);display:flex;flex-wrap:wrap;gap:var(--space-3)}.metric-block{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-elevated);padding:var(--space-3) var(--space-4);min-width:160px}.metric-block span{display:block;font-size:var(--text-lg);color:var(--color-text);font-weight:700}.metric-block small{color:var(--color-text-muted);font-size:var(--text-xs)}.tag-row{margin-top:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-2)}.tag{border:1px solid var(--color-line-strong);background:var(--color-surface-elevated);color:var(--color-text-muted);border-radius:999px;padding:.3rem .64rem;font-size:var(--text-xs)}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.project-card{grid-column:span 12;border-radius:var(--radius-xl);border:1px solid var(--color-line);background:var(--color-surface);overflow:hidden;box-shadow:var(--shadow-md);transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}.project-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-line-strong)}.project-card img{aspect-ratio:16 / 9;object-fit:cover;width:100%;background:var(--color-bg-soft)}.project-body{padding:var(--space-6)}.project-body .outcome{margin-top:var(--space-4)}.project-actions{margin-top:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-3)}.project-actions a,.blog-preview-card a,.blog-list-card a,.text-link{display:inline-flex;align-items:center;gap:.36rem;color:var(--color-text);font-weight:600;width:fit-content}.skill-group{grid-column:span 12;padding:var(--space-5)}.testimonials-row{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-card{padding:var(--space-5)}.testimonial-card blockquote{font-size:var(--text-lg);line-height:1.65}.testimonial-card p{margin-top:var(--space-4);display:flex;flex-direction:column;gap:.15rem}.testimonial-card strong{color:var(--color-text)}.blog-preview-card,.blog-list-card{grid-column:span 4;padding:var(--space-5)}.blog-preview-card p,.blog-list-card p{margin-top:var(--space-3)}.blog-preview-card a,.blog-list-card a{margin-top:var(--space-4)}.text-link{margin-top:var(--space-5)}.contact-card,.contact-form{grid-column:span 6;padding:var(--space-5)}.contact-grid.single .contact-card{grid-column:span 12}.contact-card{display:flex;flex-direction:column;gap:var(--space-3)}.contact-card p{display:inline-flex;align-items:center;gap:.44rem}.contact-form{display:grid;gap:var(--space-2)}.contact-form label{font-size:var(--text-xs);color:var(--color-text-muted)}.contact-form input,.contact-form textarea{border:1px solid var(--color-line-strong);background:var(--color-surface-elevated);color:var(--color-text);border-radius:var(--radius-sm);padding:.66rem .75rem;font:inherit;transition:border-color .24s ease,box-shadow .24s ease}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-focus),transparent 80%)}.site-footer{padding:var(--space-7) 0 var(--space-2);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.site-footer div{display:inline-flex;gap:var(--space-4)}.site-footer a{color:var(--color-text-muted);transition:color .24s ease}.site-footer a:hover{color:var(--color-text)}.page-shell,.article-shell{padding:var(--space-8) 0}.article-shell{max-width:760px}.article-header{margin-top:var(--space-5);margin-bottom:var(--space-6)}.article-header h1{margin-top:var(--space-3);font-size:var(--text-2xl)}.article-excerpt{margin-top:var(--space-3)}.article-content{display:grid;gap:var(--space-4)}.article-content h2{margin-top:var(--space-4);font-size:var(--text-xl)}.article-content ul{padding-left:1.2rem;display:grid;gap:.4rem;color:var(--color-text-muted)}.article-content blockquote{border-left:2px solid var(--color-line-strong);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-4);color:var(--color-text)}.code-block,.diagram-block{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.code-block figcaption,.diagram-block figcaption{padding:.7rem .9rem;border-bottom:1px solid var(--color-line);font-size:var(--text-xs);color:var(--color-text-muted)}.code-block pre,.diagram-block pre{margin:0;padding:var(--space-4);overflow-x:auto;font-family:var(--font-mono);font-size:.86rem;line-height:1.75;color:var(--color-text)}.diagram-block p{padding:0 var(--space-4) var(--space-4);font-size:var(--text-xs)}.not-found-card{max-width:640px;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:var(--space-6)}.not-found-card h1{margin-top:var(--space-3);font-size:var(--text-xl)}.not-found-card p{margin-top:var(--space-3);color:var(--color-text-muted)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media(max-width:1080px){.blog-preview-card,.blog-list-card,.contact-card,.contact-form{grid-column:span 6}.testimonials-row{grid-template-columns:1fr}}@media(max-width:800px){.site-nav{border-radius:var(--radius-md);grid-template-columns:1fr auto}.site-brand{grid-column:span 2}.site-links{justify-content:flex-start}.timeline-item{grid-template-columns:1fr;gap:var(--space-2)}.blog-preview-card,.blog-list-card,.contact-card,.contact-form,.skill-group{grid-column:span 12}.site-footer{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
