@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role=list],ol[role=list]{margin:0;padding:0;list-style:none}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit}}@layer tokens{:root{color-scheme:light;--color-bg:#f8fafc;--color-surface:#fff;--color-surface-soft:#f1f5f9;--color-text:#0f172a;--color-text-soft:#334155;--color-muted:#64748b;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-accent:#2563eb;--color-accent-soft:#dbeafe;--color-accent-strong:#1d4ed8;--color-inverse:#020617;--font-base:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--container:1120px;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--shadow-soft:0 18px 60px #0f172a14;--space-section:clamp(4rem, 8vw, 7rem);--header-height:72px}}@layer base{html{scroll-behavior:smooth}body{background:radial-gradient(circle at top left, #2563eb1a, transparent 32rem), linear-gradient(180deg, #fff 0%, var(--color-bg) 36rem);min-height:100vh;color:var(--color-text);font-family:var(--font-base);letter-spacing:.02em;line-height:1.75}a{color:inherit;text-decoration:none}a:hover{color:var(--color-accent)}:focus-visible{outline-offset:4px;outline:3px solid #2563eb59}}@layer layout{.l-container{width:min(100% - 2rem, var(--container));margin-inline:auto}.l-section{padding-block:var(--space-section)}.l-section--compact{padding-block:clamp(2.5rem,5vw,4rem)}.l-stack,.l-grid{gap:1.5rem;display:grid}@media (width>=760px){.l-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.l-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}}@layer components{.site-header{z-index:20;backdrop-filter:blur(18px);background:#ffffffd1;border-bottom:1px solid #e2e8f0bd;position:sticky;inset-block-start:0}.site-header__inner{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:relative}.site-logo{letter-spacing:.01em;align-items:center;gap:.75rem;font-weight:800;display:inline-flex}.site-logo__mark{background:var(--color-inverse);color:#fff;border-radius:.75rem;place-items:center;width:2.25rem;height:2.25rem;font-size:.85rem;display:grid}.site-nav{color:var(--color-muted);align-items:center;gap:1.25rem;font-size:.92rem;font-weight:700;display:none}@media (width>=760px){.site-nav{display:flex}}.mobile-menu{position:relative}.mobile-menu summary{border:1px solid var(--color-border-strong);background:var(--color-surface);cursor:pointer;border-radius:999px;padding:.45rem .85rem;font-size:.86rem;font-weight:800;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu__nav{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:13rem;box-shadow:var(--shadow-soft);display:grid;position:absolute;inset-block-start:calc(100% + .75rem);inset-inline-end:0;overflow:hidden}.mobile-menu__nav a{color:var(--color-text-soft);padding:.75rem 1rem;font-weight:700}.mobile-menu__nav a+a{border-top:1px solid var(--color-border)}@media (width>=760px){.mobile-menu{display:none}}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;min-height:2.875rem;padding-inline:1.2rem;font-size:.94rem;font-weight:800;transition:transform .2s,box-shadow .2s,border-color .2s,background-color .2s;display:inline-flex}.button--primary{background:var(--color-accent);color:#fff;box-shadow:0 12px 28px #2563eb40}.button--primary:hover{background:var(--color-accent-strong);color:#fff}.button--ghost{border-color:var(--color-border-strong);background:#ffffffb8}@media (hover:hover){.button:hover{transform:translateY(-2px)}}.section-heading{gap:.85rem;max-width:760px;margin-bottom:2rem;display:grid}.section-heading__eyebrow,.eyebrow{color:var(--color-accent);letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:900}.section-heading__title{letter-spacing:-.04em;font-size:clamp(2rem,5vw,3.25rem);line-height:1.15}.section-heading__lead,.lead{color:var(--color-text-soft);font-size:clamp(1rem,2vw,1.18rem)}.hero{padding-block:clamp(4rem,10vw,8rem) clamp(3rem,7vw,6rem)}.hero__grid{align-items:center;gap:clamp(2rem,6vw,4.5rem);display:grid}@media (width>=920px){.hero__grid{grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr)}}.hero__title{letter-spacing:-.075em;margin-block:1rem 1.2rem;font-size:clamp(2.75rem,8vw,5.9rem);font-weight:900;line-height:.98}.hero__title span{color:var(--color-accent);display:block}.hero__actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.hero-panel{border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);background:#ffffffc7;border:1px solid #e2e8f0e6;padding:clamp(1.25rem,4vw,2rem)}.hero-panel__list{gap:1rem;display:grid}.hero-panel__item{border-left:3px solid var(--color-accent);gap:.2rem;padding-left:1rem;display:grid}.hero-panel__item strong{font-size:1.05rem}.hero-panel__item span{color:var(--color-muted);font-size:.94rem}.metric-card,.project-card,.skill-card,.career-card,.note-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.metric-card{padding:1.3rem}.metric-card__value{color:var(--color-accent);letter-spacing:-.05em;font-size:clamp(2rem,5vw,3rem);font-weight:900;line-height:1}.metric-card__label{color:var(--color-text-soft);margin-top:.65rem;font-weight:800}.metric-card__note{color:var(--color-muted);margin-top:.25rem;font-size:.9rem}.metric-card__link{color:var(--color-accent);text-underline-offset:.2em;margin-top:.75rem;font-size:.86rem;font-weight:800;text-decoration:underline;display:inline-block}.project-card{gap:1.1rem;min-height:100%;padding:clamp(1.25rem,3vw,1.65rem);transition:transform .2s,box-shadow .2s,border-color .2s;display:grid}.project-card--featured{background:linear-gradient(135deg, #dbeafeb8, transparent 45%), var(--color-surface);box-shadow:var(--shadow-soft);border-color:#2563eb59}.project-card__meta{justify-content:space-between;align-items:center;gap:1rem;display:flex}.project-card__status{background:var(--color-accent-soft);color:var(--color-accent-strong);border-radius:999px;padding:.25rem .65rem;font-size:.76rem;font-weight:900}.project-card__title{letter-spacing:-.035em;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.2}.project-card__summary,.project-card__role,.project-card__stage{color:var(--color-text-soft)}.project-card__stage{font-size:.9rem}.tag-list{flex-wrap:wrap;gap:.5rem;display:flex}.tag{border:1px solid var(--color-border);background:var(--color-surface-soft);color:var(--color-text-soft);border-radius:999px;padding:.32rem .65rem;font-size:.78rem;font-weight:800}@media (hover:hover){.project-card:hover{box-shadow:var(--shadow-soft);border-color:#2563eb59;transform:translateY(-5px)}}.skill-card{padding:1.3rem}.skill-card__title{margin-bottom:.35rem;font-size:1.08rem}.skill-card__category{color:var(--color-accent);letter-spacing:.1em;margin-bottom:.35rem;font-size:.76rem;font-weight:900}.skill-card__note{color:var(--color-muted);margin-bottom:1rem;font-size:.88rem}.career-card{gap:.5rem;padding:1.3rem;display:grid}.career-card__period{color:var(--color-accent);font-size:.82rem;font-weight:900}.career-card__title{font-size:1.1rem}.career-card__text{color:var(--color-text-soft)}.career-card__role{color:var(--color-text-soft);font-weight:800}.career-card__note{border-top:1px solid var(--color-border);color:var(--color-muted);margin-top:.35rem;padding-top:.6rem;font-size:.85rem}.career-card__link{width:fit-content;color:var(--color-accent);text-underline-offset:.2em;margin-top:.35rem;font-size:.86rem;font-weight:800;text-decoration:underline}.note-card{background:linear-gradient(135deg,#fff,#eff6ff);padding:clamp(1.4rem,4vw,2rem)}.contact-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #2563eb33;gap:1.5rem;padding:clamp(1.5rem,5vw,3rem);display:grid}.contact-card h2{letter-spacing:-.04em;margin-top:.5rem;font-size:clamp(2rem,5vw,3.25rem);line-height:1.15}.contact-card p:not(.eyebrow){max-width:680px;color:var(--color-text-soft);margin-top:.8rem}.contact-card__actions{flex-wrap:wrap;gap:.8rem;display:flex}@media (width>=760px){.contact-card{grid-template-columns:1fr auto;align-items:center}}.site-footer{border-top:1px solid var(--color-border);color:var(--color-muted);padding-block:2rem;font-size:.9rem}.site-footer__inner{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;display:flex}.site-footer a{color:var(--color-text-soft);font-weight:700}}@layer pages{.project-collection+.project-collection{margin-top:clamp(4rem,8vw,6rem)}.project-hero{padding-block:clamp(3rem,8vw,6rem) clamp(2rem,5vw,4rem)}.project-hero__title{letter-spacing:-.07em;max-width:920px;margin-top:.8rem;font-size:clamp(2.4rem,7vw,5rem);line-height:1}.project-hero__summary{max-width:820px;color:var(--color-text-soft);margin-top:1.2rem;font-size:clamp(1rem,2vw,1.2rem)}.project-hero__stage{background:var(--color-accent-soft);color:var(--color-accent-strong);border-radius:999px;margin-top:1.25rem;padding:.4rem .8rem;font-size:.84rem;font-weight:900;display:inline-flex}.project-hero__meta{gap:1rem;margin-top:2rem;display:grid}.project-facts{gap:.75rem;max-width:920px;margin:2rem 0 0;display:grid}.project-facts div{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffffb8;padding:1rem}.project-facts dt{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:900}.project-facts dd{color:var(--color-text-soft);margin-top:.3rem;font-size:.92rem;font-weight:800;line-height:1.55}@media (width>=760px){.project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.markdown-body{max-width:820px;padding-bottom:var(--space-section)}.project-evidence{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);gap:1.25rem;margin-bottom:clamp(3rem,7vw,5rem);padding:clamp(1.25rem,4vw,2rem);display:grid}.project-evidence h2{margin-top:.35rem;font-size:clamp(1.4rem,3vw,2rem);line-height:1.25}.evidence-list{color:var(--color-text-soft);gap:.55rem;margin:0;padding-left:1.25rem;display:grid}.evidence-links{flex-wrap:wrap;gap:.6rem;display:flex}.evidence-links a{border:1px solid var(--color-border-strong);background:var(--color-surface-soft);color:var(--color-text-soft);border-radius:999px;padding:.45rem .8rem;font-size:.84rem;font-weight:800}.external-references{border-top:1px solid var(--color-border);gap:.65rem;padding-top:1.25rem;display:grid}.external-references__title{font-size:.9rem;font-weight:900}.external-references__description{max-width:720px;color:var(--color-muted);font-size:.86rem}.project-flow{gap:.75rem;margin-block:1.5rem;display:grid}.project-flow__node{border-radius:var(--radius-md);text-align:center;background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #2563eb47;align-content:center;gap:.35rem;min-height:7.5rem;padding:1rem;display:grid}.project-flow__node strong{color:var(--color-accent-strong);font-size:1rem}.project-flow__node span{color:var(--color-text-soft);font-size:.82rem;line-height:1.5}.project-flow__arrow{color:var(--color-accent);text-align:center;align-self:center;font-size:1.5rem;font-weight:900;transform:rotate(90deg)}@media (width>=760px){.project-flow{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.project-flow__arrow{transform:none}}.career-results{margin-top:var(--space-section);scroll-margin-top:calc(var(--header-height) + 1rem);gap:1.5rem;display:grid}.career-timeline{gap:1.25rem;padding-left:1.5rem;display:grid;position:relative}.career-timeline:before{background:var(--color-border-strong);content:"";width:2px;position:absolute;inset-block:0;inset-inline-start:.35rem}.career-timeline .career-card{position:relative}.career-timeline .career-card:before{border:2px solid var(--color-surface);background:var(--color-accent);width:.75rem;height:.75rem;box-shadow:0 0 0 1px var(--color-accent);content:"";border-radius:50%;position:absolute;inset-block-start:1.55rem;inset-inline-start:-1.55rem}.professional-development,.career-direction{margin-top:var(--space-section)}.development-card{border-radius:var(--radius-lg);background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #2563eb40;gap:.75rem;padding:clamp(1.25rem,4vw,2rem);display:grid}.development-card h2{font-size:clamp(1.4rem,3vw,2rem)}.development-card p:not(.career-card__period){color:var(--color-text-soft)}.development-card .button{width:fit-content;margin-top:.5rem}.career-results .section-heading{margin-bottom:.5rem}.case-study-list{gap:clamp(2rem,5vw,3.5rem);display:grid}.case-study{scroll-margin-top:calc(var(--header-height) + 1rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:clamp(1.25rem,4vw,2rem)}.case-study__header{border-bottom:1px solid var(--color-border);gap:1.5rem;padding-bottom:1.5rem;display:grid}.case-study__header h2{letter-spacing:-.04em;margin-top:.5rem;font-size:clamp(1.65rem,4vw,2.5rem);line-height:1.2}.case-study__period{color:var(--color-muted);margin-top:.6rem;font-size:.9rem;font-weight:700}.case-study__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.case-study__metrics div{border-radius:var(--radius-md);background:var(--color-surface-soft);align-content:start;gap:.35rem;padding:1rem;display:grid}.case-study__metrics strong{color:var(--color-accent);letter-spacing:-.04em;font-size:clamp(1.25rem,3vw,1.8rem);font-weight:900;line-height:1.1}.case-study__metrics span{color:var(--color-muted);font-size:.78rem;font-weight:700;line-height:1.5}.case-study__body{gap:1.5rem;padding-top:1.5rem;display:grid}.case-study__section{align-content:start;gap:.6rem;display:grid}.case-study__section h3{color:var(--color-accent-strong);letter-spacing:.04em;font-size:.9rem}.case-study__section p,.case-study__section li{color:var(--color-text-soft)}.case-study__section ul{gap:.4rem;margin:0;padding-left:1.25rem;display:grid}.case-study__section strong{color:var(--color-text)}@media (width>=760px){.case-study__header{grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:end}.case-study__body{grid-template-columns:repeat(2,minmax(0,1fr))}.case-study__section--wide{grid-column:1/-1}.case-study__action-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}}@media (width<=520px){.case-study__metrics{grid-template-columns:1fr}}.markdown-body>*+*{margin-top:1rem}.markdown-body h2{letter-spacing:-.04em;margin-top:3rem;font-size:clamp(1.55rem,4vw,2.2rem);line-height:1.25}.markdown-body h3{margin-top:2rem;font-size:1.25rem}.markdown-body p,.markdown-body li{color:var(--color-text-soft)}.markdown-body ul,.markdown-body ol{padding-left:1.4rem}.markdown-body a{color:var(--color-accent);text-underline-offset:.2em;font-weight:800;text-decoration:underline}.markdown-body code{background:var(--color-surface-soft);font-family:var(--font-mono);border-radius:.4rem;padding:.1rem .35rem;font-size:.9em}}@layer utilities{.u-muted{color:var(--color-muted)}.u-surface-soft{background:var(--color-surface-soft)}.u-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}
