@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;700&display=swap";*,:before,:after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:Inter var,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:-moz-focusring{outline:auto}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--bg: #07111f;--bg-strong: #101b31;--panel: rgba(11, 22, 41, .78);--border: rgba(148, 163, 184, .16);--text-primary: #f4f7fb;--text-secondary: #c5d0df;--text-muted: #8da0bb;--accent-warm: #fbbf24;--accent-cool: #67e8f9;--accent-strong: #fde68a;--shadow: 0 28px 80px rgba(0, 0, 0, .3);--radius-lg: 28px;--font-display: "Space Grotesk", sans-serif;--font-body: "IBM Plex Sans", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth}body{overflow-x:hidden;width:100%;min-height:100vh;font-family:var(--font-body);color:var(--text-primary);background:radial-gradient(circle at top left,rgba(103,232,249,.14),transparent 30%),radial-gradient(circle at 90% 10%,rgba(251,191,36,.12),transparent 28%),linear-gradient(180deg,#07111f 0%,#0c1830 50%,#101b31 100%)}#root{min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.45;background-image:linear-gradient(rgba(148,163,184,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.05) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.42),transparent);mask-image:linear-gradient(180deg,rgba(0,0,0,.42),transparent)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.surface-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(160deg,rgba(255,255,255,.04),transparent 45%),var(--panel);box-shadow:var(--shadow)}.content-section{display:flex;flex-direction:column;gap:1.5rem}.section-heading{display:flex;flex-direction:column;gap:.45rem}.section-kicker{color:var(--accent-cool);font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.section-title{font-family:var(--font-display);font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.05;letter-spacing:-.04em}.pill,.tag,.outcome-pill{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(103,232,249,.18);background:rgba(103,232,249,.08);color:var(--text-primary);font-size:.92rem;padding:.55rem .95rem}.tag{border-color:#fbbf2429;background:rgba(251,191,36,.08)}.outcome-pill{border-color:#fbbf2440;background:rgba(251,191,36,.12);color:var(--accent-strong);font-weight:500}.stack-list,.tag-list,.outcome-list{display:flex;flex-wrap:wrap;gap:.75rem}.bullet-list{display:grid;gap:.85rem;list-style:none}.bullet-list li{position:relative;padding-left:1.2rem;color:var(--text-secondary);line-height:1.7}.bullet-list li:before{content:"";position:absolute;top:.72rem;left:0;width:.4rem;height:.4rem;border-radius:999px;background:linear-gradient(135deg,var(--accent-warm),var(--accent-cool))}.primary-action,.secondary-action,.text-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;transition:transform .2s ease,background-color .2s ease,border-color .2s ease}.primary-action,.secondary-action{min-height:3rem;padding:.85rem 1.35rem;font-weight:600}.primary-action{background:linear-gradient(135deg,var(--accent-warm),#f59e0b);color:#111827}.secondary-action{border:1px solid rgba(103,232,249,.28);background:rgba(103,232,249,.08);color:var(--text-primary)}.text-link{color:var(--accent-cool);font-weight:600}.primary-action:hover,.secondary-action:hover,.text-link:hover,.pill:hover,.tag:hover,.outcome-pill:hover{transform:translateY(-1px)}.featured-meta,.card-label{color:var(--accent-cool);font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.featured-summary,.contact-text{color:var(--text-secondary);line-height:1.75}.results-title{margin-bottom:1rem;font-family:var(--font-display);font-size:1.1rem}@media screen and (max-width: 720px){.surface-panel{border-radius:22px}.section-title{font-size:clamp(1.65rem,9vw,2.2rem)}}.site-nav{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--border);background:rgba(7,17,31,.72);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-shell{width:min(1120px,calc(100% - 1.5rem));margin:0 auto}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.75rem}.brand-link{display:flex;align-items:center;gap:.9rem}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:16px;background:linear-gradient(135deg,var(--accent-warm),var(--accent-cool));color:#0f172a;font-family:var(--font-display);font-size:1rem;font-weight:700}.brand-copy{display:flex;flex-direction:column;gap:.12rem}.brand-title{font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:-.04em}.brand-subtitle{color:var(--text-muted);font-size:.82rem}.nav-links{display:flex;align-items:center;gap:.65rem}.nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.6rem;padding:.65rem 1rem;border-radius:999px;color:var(--text-secondary);font-weight:500;transition:background-color .2s ease,color .2s ease,transform .2s ease}.nav-link:hover{background:rgba(103,232,249,.08);color:var(--text-primary);transform:translateY(-1px)}.nav-link-active{background:linear-gradient(135deg,rgba(251,191,36,.95),rgba(103,232,249,.92));color:#0f172a}.nav-toggle-wrap{display:none}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.8rem;height:2.8rem;border:1px solid rgba(103,232,249,.18);border-radius:14px;background:rgba(103,232,249,.06);color:var(--text-primary)}.nav-toggle-icon{width:1.35rem;height:1.35rem;stroke:currentColor}.nav-links-mobile{display:none;width:min(1120px,calc(100% - 1.5rem));margin:0 auto}@media screen and (max-width: 720px){.nav-inner{min-height:4.15rem}.brand-subtitle{display:none}.nav-links-desktop{display:none}.nav-toggle-wrap{display:block}.nav-links-mobile{display:block;max-height:0;overflow:hidden;transition:max-height .25s ease}.nav-links-mobile-open{max-height:14rem;padding-bottom:.85rem}.nav-mobile-panel{display:grid;gap:.55rem}.nav-mobile-panel .nav-link{justify-content:flex-start;width:100%;border-radius:18px}}.home-page{width:min(1120px,calc(100% - 1.5rem));margin:0 auto;padding:2.3rem 0 4rem;display:flex;flex-direction:column;gap:2.5rem}.hero-section{padding:clamp(1.5rem,3vw,2.4rem)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.95fr);gap:1.6rem;align-items:center}.hero-copy{display:flex;flex-direction:column;gap:1rem}.hero-title{font-family:var(--font-display);font-size:clamp(3rem,7vw,5rem);line-height:.95;letter-spacing:-.06em}.hero-summary{max-width:62ch;color:var(--text-secondary);font-size:1.04rem;line-height:1.8}.hero-summary-group{display:grid;gap:.65rem;max-width:63ch}.summary-highlight{color:var(--text-primary);font-weight:600;text-shadow:0 0 24px rgba(103,232,249,.08)}.social-links-block{display:flex;flex-direction:column;gap:.9rem;max-width:54rem;margin-top:.35rem;padding-top:1.05rem;border-top:1px solid rgba(148,163,184,.14)}.social-links-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.social-links-title{color:var(--text-primary);font-family:var(--font-display);font-size:1.02rem;letter-spacing:-.02em}.hero-inline-link{color:var(--accent-cool);font-size:.86rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.social-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.social-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:0;padding:.9rem 1rem;border:1px solid rgba(103,232,249,.18);border-radius:18px;background:linear-gradient(180deg,rgba(103,232,249,.08),rgba(255,255,255,.02)),rgba(8,19,36,.78);transition:transform .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.social-link:hover{transform:translateY(-2px);border-color:#67e8f95c;box-shadow:0 16px 32px #0000002e}.social-link-name{color:var(--text-primary);font-size:1rem;font-weight:600}.social-link-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:rgba(103,232,249,.1);color:var(--accent-cool);flex-shrink:0}.social-link-icon svg{width:1rem;height:1rem}.hero-card{display:flex;flex-direction:column;gap:1rem;min-height:100%;padding:1.6rem;background:radial-gradient(circle at top right,rgba(251,191,36,.14),transparent 28%),linear-gradient(180deg,rgba(13,30,55,.92),rgba(10,20,37,.88))}.hero-avatar{width:8.5rem;height:8.5rem;overflow:hidden;border:1px solid rgba(251,191,36,.32);border-radius:28px;background:rgba(255,255,255,.04)}.hero-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.hero-card-label{color:var(--accent-warm);font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.hero-card-title{font-family:var(--font-display);font-size:clamp(1.5rem,2vw,1.95rem);line-height:1.15}.hero-card-text{color:var(--text-secondary);line-height:1.75}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.metric-card,.timeline-card,.featured-project,.skill-card,.achievement-card,.education-card,.contact-section{padding:1.45rem}.metric-card{display:flex;flex-direction:column;gap:.7rem}.metric-value{color:var(--accent-warm);font-family:var(--font-display);font-size:clamp(2rem,4vw,2.7rem);line-height:1}.metric-label{font-size:1.05rem}.metric-detail{color:var(--text-secondary);line-height:1.7}.experience-list{display:grid;gap:1.2rem}.timeline-header{display:flex;justify-content:space-between;gap:1.2rem;align-items:flex-start;margin-bottom:1rem}.timeline-company{color:var(--accent-cool);font-size:.82rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.timeline-role{margin-top:.35rem;font-family:var(--font-display);font-size:1.4rem}.timeline-meta{display:grid;gap:.2rem;color:var(--text-muted);font-size:.95rem;text-align:right}.featured-project{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:1.5rem}.featured-project-copy,.featured-project-results{display:flex;flex-direction:column;gap:1rem}.featured-project-results-top{display:flex;flex-direction:column;gap:1rem}.featured-project-link-block{display:flex;flex-direction:column;gap:.8rem;margin-top:auto;padding-top:1rem;border-top:1px solid rgba(148,163,184,.14)}.featured-project-link-label{color:var(--text-muted);font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.featured-project-icon-link{display:inline-flex;align-items:center;gap:.75rem;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:.78rem 1rem;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:rgba(255,255,255,.04);transition:transform .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.featured-project-icon-link:hover{transform:translateY(-2px);border-color:#67e8f947;box-shadow:0 14px 28px #00000024}.featured-project-icon-badge{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:rgba(255,255,255,.06);color:var(--text-primary);flex-shrink:0}.featured-project-icon-badge svg{width:1rem;height:1rem}.featured-project-icon-label{color:var(--text-primary);font-size:.94rem;font-weight:600}.featured-project-link-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem;border:1px solid rgba(103,232,249,.18);border-radius:18px;background:linear-gradient(180deg,rgba(103,232,249,.08),rgba(255,255,255,.02)),rgba(8,19,36,.78);transition:transform .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.featured-project-link-card:hover{transform:translateY(-2px);border-color:#67e8f95c;box-shadow:0 16px 32px #0000002e}.featured-project-link-copy{display:flex;flex-direction:column;gap:.22rem}.featured-project-link-title{color:var(--text-primary);font-size:1rem;font-weight:600}.featured-project-link-text{color:var(--text-muted);font-size:.9rem;line-height:1.5}.skills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.highlight-card{display:flex;flex-direction:column;gap:1rem}.highlight-title{font-family:var(--font-display);font-size:1.35rem;line-height:1.15}.highlight-summary{max-width:62ch;color:var(--text-secondary);line-height:1.75}.skill-card{display:flex;flex-direction:column;gap:1rem}.skill-title{font-family:var(--font-display);font-size:1.18rem}.summary-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:1.75rem;align-items:start}.summary-column{display:flex;flex-direction:column;gap:1.25rem;min-width:0}.summary-heading{max-width:34rem}.summary-heading .section-title{font-size:clamp(2.35rem,4vw,3.8rem);line-height:1.02}.achievement-list{display:grid;gap:1rem}.achievement-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:start}.achievement-badge{display:inline-flex;align-items:center;justify-content:center;min-width:3rem;height:3rem;border-radius:18px;border:1px solid rgba(103,232,249,.2);background:rgba(103,232,249,.08);color:var(--accent-cool);font-family:var(--font-display);font-size:.95rem;font-weight:700;letter-spacing:.08em}.achievement-text{color:var(--text-primary);font-size:1.06rem;line-height:1.7}.education-list{display:grid;gap:1rem}.education-card{display:flex;flex-direction:column;gap:1.25rem;background:radial-gradient(circle at top right,rgba(103,232,249,.08),transparent 26%),linear-gradient(160deg,rgba(255,255,255,.04),transparent 45%),var(--panel)}.education-top{display:flex;flex-direction:column;gap:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(148,163,184,.14)}.education-school{color:var(--accent-cool);font-size:1rem;font-weight:600;line-height:1.5}.education-degree{font-family:var(--font-display);font-size:clamp(1.65rem,2.2vw,2.15rem);line-height:1.2;max-width:20ch}.education-facts{display:flex;flex-wrap:wrap;gap:.75rem}.education-fact{display:inline-flex;align-items:center;min-height:2.65rem;padding:.55rem .95rem;border-radius:999px;border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.04);color:var(--text-secondary);font-size:.96rem}.education-details{margin-top:.1rem}.contact-section{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}@media screen and (max-width: 1040px){.metric-grid,.skills-grid,.highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (max-width: 860px){.hero-grid,.featured-project,.summary-grid{grid-template-columns:1fr}.timeline-header{flex-direction:column}.timeline-meta{text-align:left}.social-links-header{flex-direction:column;align-items:flex-start}}@media screen and (max-width: 640px){.home-page{padding-top:1.6rem;gap:2rem}.hero-title{font-size:clamp(2.45rem,15vw,3.5rem)}.metric-grid,.skills-grid,.highlight-grid{grid-template-columns:1fr}.social-links{grid-template-columns:1fr}.summary-heading .section-title{font-size:clamp(2rem,11vw,2.8rem)}.hero-inline-link{font-size:.8rem}.achievement-card{grid-template-columns:1fr}.achievement-badge{min-width:2.7rem;width:2.7rem;height:2.7rem}.hero-card,.metric-card,.timeline-card,.featured-project,.skill-card,.achievement-card,.education-card,.contact-section{padding:1.25rem}}.projects-page{width:min(1120px,calc(100% - 1.5rem));margin:0 auto;padding:2.3rem 0 4rem;display:flex;flex-direction:column;gap:2.5rem}.projects-hero,.case-study,.highlight-card,.projects-footer{padding:1.5rem}.projects-hero{display:flex;flex-direction:column;gap:1rem}.projects-intro,.featured-summary{max-width:62ch;color:var(--text-secondary);line-height:1.75}.case-study{display:flex;flex-direction:column;gap:1.5rem}.case-study-header{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start}.case-study-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.85fr);gap:1.5rem}.project-archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-archive-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.project-archive-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.project-archive-title{margin-top:.35rem;font-family:var(--font-display);font-size:1.35rem;line-height:1.15}.project-link-row{display:flex;flex-wrap:wrap;gap:.75rem}.project-archive-summary{max-width:62ch;color:var(--text-secondary);line-height:1.75}.compact-list{gap:.7rem}.projects-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem}@media screen and (max-width: 820px){.case-study-header,.case-study-grid,.projects-footer{grid-template-columns:1fr;display:grid}.project-archive-grid{grid-template-columns:1fr}.project-archive-top{flex-direction:column}.projects-footer{justify-items:flex-start}}@media screen and (max-width: 640px){.projects-page{padding-top:1.6rem;gap:2rem}.projects-hero,.case-study,.project-archive-card,.projects-footer{padding:1.25rem}}
