:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-display:"Libre Bodoni",Georgia,serif;--font-body:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;--page-bg:#f7f7f3;--page-bg-soft:#fff;--surface:#fff;--surface-strong:#fcfcfa;--surface-muted:#f2f4f7;--text:#101828;--text-muted:#667085;--text-soft:#98a2b3;--heading:#0f172a;--border:#0f172a1f;--border-strong:#0f172a33;--primary:#1d4ed8;--primary-strong:#1e40af;--primary-foreground:#fff;--primary-glow:#2563eb29;--secondary:#475467;--accent:#2563eb;--accent-soft:#2563eb14;--glow-one:#2563eb0d;--glow-two:#0f172a08;--shadow:0 24px 60px #0f172a12;--shadow-soft:0 10px 28px #0f172a0e;--ring:0 0 0 3px #2563eb29;--topbar-bg:#ffffffe6;--grid-line:#0f172a0d;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--transition:.22s cubic-bezier(.2,.9,.2,1);--transition-slow:.36s cubic-bezier(.2,.9,.2,1);--content-width:1220px}body.dark-theme{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-bg:#121510;--page-bg-soft:#191d17;--surface:#1d221b;--surface-strong:#242a22;--surface-muted:#2c3429;--text:#e8eadf;--text-muted:#b4b9aa;--text-soft:#929b8c;--heading:#faf8ed;--border:#e2e7d224;--border-strong:#e2e7d242;--primary:#e3b45f;--primary-strong:#f0c979;--primary-foreground:#211a0e;--primary-glow:#e3b45f33;--secondary:#a4b49e;--accent:#e3b45f;--accent-soft:#e3b45f29;--glow-one:#70915e24;--glow-two:#c68f481a;--shadow:0 24px 60px #0000003d;--shadow-soft:0 10px 28px #0000002e;--ring:0 0 0 3px #e3b45f47;--topbar-bg:#191d17e6;--grid-line:#e2e7d20d}body.light-theme{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%}body{font-family:var(--font-body);color:var(--text);background:radial-gradient(circle at 16% 10%,var(--glow-one),transparent 26%),radial-gradient(circle at 84% 12%,var(--glow-two),transparent 24%),linear-gradient(180deg,var(--page-bg-soft),var(--page-bg));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,p,dl,dd,ul,ol,figure{margin:0}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button,input,textarea,select{font:inherit}img{max-width:100%;display:block}::selection{background:var(--primary);color:var(--primary-foreground)}.page-shell{isolation:isolate;min-height:100dvh;padding-bottom:40px;position:relative}.scroll-progress-track{z-index:90;pointer-events:none;background:linear-gradient(90deg,transparent,var(--grid-line),transparent);height:2px;position:fixed;top:0;left:0;right:0}.scroll-progress-bar{transform-origin:0;background:linear-gradient(90deg,var(--primary),var(--secondary));width:100%;height:100%}.page-orb{pointer-events:none;z-index:-2;filter:blur(120px);opacity:.35;border-radius:50%;position:fixed}.page-orb-one{background:var(--glow-one);width:min(42vw,560px);height:min(42vw,560px);top:-160px;left:-120px}.page-orb-two{background:var(--glow-two);width:min(40vw,560px);height:min(40vw,560px);bottom:-180px;right:-120px}.topbar{z-index:40;width:min(var(--content-width),calc(100% - 32px));border:1px solid var(--border);background:color-mix(in srgb,var(--topbar-bg)92%,transparent);-webkit-backdrop-filter:blur(18px)saturate(145%);backdrop-filter:blur(18px)saturate(145%);min-height:68px;box-shadow:var(--shadow-soft);border-radius:999px;justify-content:space-between;align-items:center;gap:24px;margin:14px auto 0;padding:10px 12px 10px 20px;display:flex;position:sticky;top:14px}.brand-lockup{gap:1px;min-width:0;padding-left:12px;text-decoration:none;display:grid}.brand-kicker{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--secondary);font-size:.62rem}.brand-title{font-family:var(--font-display);color:var(--heading);font-size:1.08rem;line-height:1.05}.brand-subtitle{color:var(--text-muted);white-space:nowrap;font-size:.92rem}.topbar-nav{align-items:center;gap:4px;margin-left:auto;display:flex}.topbar-link{min-height:42px;color:var(--text-muted);transition:color var(--transition),background var(--transition),transform var(--transition);border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:.88rem;font-weight:600;display:inline-flex}.topbar-link:hover{background:var(--accent-soft);color:var(--heading);transform:translateY(-1px)}.topbar-menu-toggle,.topbar-nav-mobile{display:none}.theme-switcher{flex:none;position:static}.theme-switcher-button{border:1px solid var(--border);background:var(--surface-strong);width:44px;height:44px;color:var(--heading);box-shadow:var(--shadow-soft);cursor:pointer;transition:transform var(--transition),border-color var(--transition),background var(--transition),box-shadow var(--transition),color var(--transition);border-radius:50%;place-items:center;padding:0;display:grid}.theme-switcher-button:hover{border-color:var(--border-strong);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.theme-switcher-button svg{flex-shrink:0;width:19px;height:19px}.theme-switcher-copy{display:none}.page-container{width:min(var(--content-width),calc(100% - 32px));margin:0 auto;padding:28px 0 72px}.hero-section{grid-template-columns:minmax(280px,330px) minmax(0,1fr);align-items:start;gap:24px;margin-top:24px;display:grid}.panel{border:1px solid var(--border);border-radius:var(--radius-xl);background:color-mix(in srgb,var(--surface)96%,transparent);-webkit-backdrop-filter:blur(14px)saturate(125%);backdrop-filter:blur(14px)saturate(125%);box-shadow:var(--shadow);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background var(--transition);padding:max(20px,min(2.4vw,28px));position:relative;overflow:hidden}.panel:hover{border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-2px)}.hero-portrait{flex-direction:column;align-self:start;gap:14px;display:flex;position:sticky;top:92px}.portrait-frame{aspect-ratio:4/5;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.portrait-image{object-fit:cover;border-radius:calc(var(--radius-lg) - 4px);width:100%;height:100%}.portrait-badge{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-soft);border-radius:6px;gap:4px;padding:12px 14px;display:grid;position:absolute;bottom:16px;left:16px;right:16px}.portrait-badge-kicker,.portrait-caption-line{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem}.portrait-badge-value{color:var(--heading);font-weight:700}.portrait-caption{gap:4px;padding:0 4px;display:grid}.hero-copy{background:radial-gradient(ellipse at 96% 0%,var(--accent-soft),transparent 34%),color-mix(in srgb,var(--surface)96%,transparent);align-content:start;gap:20px;padding:max(24px,min(3vw,32px));display:grid;position:relative}.hero-copy:before{background:linear-gradient(180deg,var(--primary),transparent);content:"";border-radius:0 0 4px;width:4px;height:88px;position:absolute;top:0;left:0}.hero-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--primary-strong);font-size:.72rem}.hero-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--heading);text-wrap:balance;font-size:max(3rem,min(7vw,5.8rem));line-height:.92}.hero-title-split{flex-wrap:wrap;gap:.15em .18em;display:flex}.hero-title-word{white-space:nowrap;will-change:transform,opacity;display:inline-flex}.hero-role{color:var(--text-muted);font-size:1.05rem;font-weight:600}.hero-summary{border-left:2px solid var(--accent-soft);gap:14px;padding-left:18px;display:grid}.hero-summary-lead,.hero-summary-body{max-width:64ch;line-height:1.78}.hero-summary-lead{color:var(--heading);font-size:1.08rem}.hero-summary-body{color:var(--text-muted)}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-button,.info-button,.project-link{transition:transform var(--transition),border-color var(--transition),background var(--transition),box-shadow var(--transition),color var(--transition)}.hero-button{border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex}.hero-button:hover,.info-button:hover,.project-link:hover{transform:translateY(-2px)}.hero-button-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:0 8px 18px var(--primary-glow);border:1px solid #0000}.hero-button-primary:hover{box-shadow:0 10px 20px var(--primary-glow)}.hero-button-secondary{border:1px solid var(--border);background:var(--surface-strong);color:var(--text)}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.stat-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);min-height:128px;box-shadow:var(--shadow-soft);gap:6px;padding:16px;display:grid}.stat-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--secondary);font-size:.7rem}.stat-value{font-family:var(--font-display);color:var(--heading);font-size:1.32rem;line-height:1.02}.stat-detail{color:var(--text-muted);line-height:1.55}.hero-tags{flex-wrap:wrap;gap:10px;display:flex}.hero-tag{border:1px solid var(--border);background:var(--surface-strong);min-height:36px;color:var(--text);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 12px;font-size:.7rem;display:inline-flex}.project-rail{margin-top:24px}.project-rail-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.project-rail-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);min-height:112px;box-shadow:var(--shadow-soft);color:inherit;transition:transform var(--transition),border-color var(--transition),background var(--transition),box-shadow var(--transition);align-content:space-between;gap:8px;padding:16px 18px;text-decoration:none;display:grid}.project-rail-card:hover{border-color:var(--primary);background:color-mix(in srgb,var(--surface-strong)90%,var(--accent-soft));box-shadow:var(--shadow);transform:translateY(-3px)}.project-rail-card-static{cursor:default;opacity:.9}.project-rail-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-rail-index,.project-rail-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;font-size:.7rem}.project-rail-index{color:var(--secondary)}.project-rail-arrow{color:var(--text-soft);transition:color var(--transition),transform var(--transition)}.project-rail-card:hover .project-rail-arrow{color:var(--primary-strong);transform:translate(2px,-2px)}.project-rail-name{color:var(--heading);font-size:1rem;font-weight:700}.project-rail-label{color:var(--text-muted)}.content-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:24px;margin-top:28px;display:grid}.personal-panel{grid-column:span 4}.skills-panel{grid-column:span 8}.experience-panel,.education-panel,.projects-panel{grid-column:1/-1}.panel-head{gap:8px;margin-bottom:22px;display:grid}.section-kicker{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--primary-strong);align-items:center;gap:9px;font-size:.72rem;display:flex}.section-kicker:before{content:"";background:currentColor;width:18px;height:1px}.section-title{font-family:var(--font-display);color:var(--heading);text-wrap:balance;font-size:max(1.55rem,min(2vw,2.2rem));line-height:.98}.section-copy{max-width:65ch;color:var(--text-muted);line-height:1.65}.personal-panel{gap:18px;display:grid}.personal-panel .panel-head{margin-bottom:0}.profile-tags{flex-wrap:wrap;gap:10px;display:flex}.profile-chip{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);min-width:0;box-shadow:var(--shadow-soft);flex:140px;gap:4px;padding:14px 16px;display:grid}.profile-chip-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-size:.68rem}.profile-chip-value{color:var(--heading);text-wrap:balance;font-size:.98rem;font-weight:700;line-height:1.35}.info-grid{grid-template-columns:1fr;gap:12px;display:grid}.info-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);box-shadow:var(--shadow-soft);grid-template-columns:minmax(92px,110px) minmax(0,1fr);align-items:start;gap:12px;padding:14px 16px;display:grid}.info-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);padding-top:3px;font-size:.7rem}.info-value{color:var(--heading);text-align:right;overflow-wrap:anywhere;font-weight:700;line-height:1.55}.info-value a{color:var(--heading)}.info-value a:hover{color:var(--primary)}.contact-actions{flex-wrap:wrap;gap:12px;margin-top:0;display:flex}.info-button{border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.info-button-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:0 8px 18px var(--primary-glow);border:1px solid #0000}.info-button-secondary{border:1px solid var(--border);background:var(--surface-strong);color:var(--text)}.skills-grid{gap:12px;display:grid}.skill-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);transition:border-color var(--transition),background var(--transition),transform var(--transition);gap:12px;padding:16px;display:grid}.skill-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.skill-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.skill-category{color:var(--heading);font-size:1.05rem;font-weight:700}.skill-count{border:1px solid var(--border);background:var(--accent-soft);min-height:32px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 10px;font-size:.7rem;display:inline-flex}.skill-chip-list{flex-wrap:wrap;gap:8px;display:flex}.skill-chip{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text);border-radius:999px;align-items:center;padding:0 12px;font-size:.9rem;display:inline-flex}.experience-listing{gap:18px;display:grid}.experience-item{grid-template-columns:58px minmax(0,1fr);align-items:start;gap:16px;display:grid}.experience-marker{border-radius:var(--radius-md);background:var(--accent-soft);border:1px solid var(--border);width:58px;height:58px;color:var(--heading);font-family:var(--font-mono);letter-spacing:.18em;box-shadow:var(--shadow-soft);place-items:center;font-size:.72rem;display:grid}.experience-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);box-shadow:var(--shadow-soft);gap:18px;padding:24px;display:grid}.experience-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.experience-heading-group{min-width:0}.experience-company{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--secondary);margin-bottom:4px;font-size:.72rem}.experience-position{font-family:var(--font-display);color:var(--heading);text-wrap:balance;font-size:max(1.35rem,min(2.2vw,1.9rem));line-height:1.02}.experience-meta{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.meta-chip{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 12px;font-size:.7rem;text-decoration:none;display:inline-flex}.meta-chip-link{color:var(--heading)}.meta-chip-link:hover{color:var(--primary)}.experience-description{max-width:72ch;color:var(--text);line-height:1.7}.experience-subsection{gap:12px;display:grid}.subsection-title{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--secondary);font-size:.72rem}.achievement-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;display:grid}.achievement-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);align-items:flex-start;gap:12px;padding:16px;display:flex}.achievement-index{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--secondary);flex-shrink:0;font-size:.72rem}.achievement-card p{color:var(--text-muted);line-height:1.65}.highlight-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.highlight-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);gap:10px;padding:16px;display:grid}.highlight-title{color:var(--heading);font-weight:700}.highlight-detail-list{gap:8px;list-style:none;display:grid}.highlight-detail-list li{color:var(--text-muted);padding-left:14px;line-height:1.55;position:relative}.highlight-detail-list li:before{content:"";background:var(--secondary);border-radius:6px;width:6px;height:6px;position:absolute;top:.64em;left:0}.mini-project-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.mini-project-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);gap:8px;padding:14px 16px;display:grid}.mini-project-title{color:var(--heading);font-weight:700}.mini-project-description{color:var(--text-muted);line-height:1.55}.education-grid{gap:12px;display:grid}.education-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);box-shadow:var(--shadow-soft);gap:12px;padding:18px 20px;display:grid}.education-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.education-degree{color:var(--heading);margin-bottom:6px;font-size:1.08rem;font-weight:700}.education-university{color:var(--text-muted);line-height:1.6}.education-foot{flex-wrap:wrap;gap:10px;display:flex}.education-grade{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 12px;font-size:.72rem;display:inline-flex}.project-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);box-shadow:var(--shadow-soft);transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);gap:14px;padding:20px;display:grid;position:relative}.project-card:before{background:linear-gradient(90deg,var(--primary),transparent);content:"";width:42px;height:2px;position:absolute;top:0;left:20px}.project-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.project-card-head{gap:12px;display:grid}.project-card-meta-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-index{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--secondary);flex-shrink:0;font-size:.72rem}.project-type{border:1px solid var(--accent-soft);background:var(--accent-soft);width:-moz-fit-content;width:fit-content;font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--primary-strong);border-radius:999px;padding:5px 9px;font-size:.7rem}.project-title{font-family:var(--font-display);color:var(--heading);text-wrap:balance;font-size:max(1.4rem,min(2vw,1.85rem));line-height:1.08}.project-description{color:var(--text);line-height:1.7}.project-note{color:var(--text-muted);line-height:1.6}.project-foot{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding-top:14px;display:flex}.project-tech-list{flex-wrap:wrap;gap:8px;display:flex}.project-tech-chip{border:1px solid var(--border);background:var(--surface);min-height:30px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 10px;font-size:.7rem;display:inline-flex}.project-links{flex-wrap:wrap;gap:8px;display:flex}.project-link{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.project-links>.project-link:not(.project-link-static):first-child{background:var(--primary);color:var(--primary-foreground);box-shadow:0 6px 16px var(--primary-glow);border-color:#0000}.project-link:hover{border-color:var(--border-strong);box-shadow:var(--shadow-soft)}.project-link-static{cursor:default;color:var(--text-muted)}h2[id]{scroll-margin-top:112px}h2[id]:focus-visible{outline:3px solid var(--primary-strong);outline-offset:6px;border-radius:4px}.project-rail,.experience-panel{grid-column:1/-1}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only-focusable{z-index:1000;background:var(--surface-strong);width:1px;height:1px;color:var(--heading);border-radius:6px;position:absolute;top:16px;left:16px;overflow:hidden}.sr-only-focusable:focus,.sr-only-focusable:active{border:1px solid var(--border);outline:3px solid var(--primary-strong);outline-offset:3px;width:auto;height:auto;box-shadow:var(--ring);padding:10px 14px}.hero-button:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}.info-button:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}.project-link:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}.theme-switcher-button:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}.project-rail-card:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}a:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}button:focus-visible{outline:3px solid var(--primary-strong);outline-offset:3px;box-shadow:var(--ring)}@media (max-width:1180px){.hero-section{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}.hero-portrait{position:static}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1024px){.content-grid{grid-template-columns:1fr}.personal-panel,.skills-panel,.education-panel,.projects-panel{grid-column:1/-1}}@media (max-width:760px){.topbar,.page-container{width:min(var(--content-width),calc(100% - 18px))}.topbar{flex-wrap:wrap;justify-content:flex-start;gap:8px;padding:8px 9px;top:8px}.brand-lockup{flex:auto}.topbar-nav-desktop,.topbar-nav-mobile{display:none}.topbar-menu-open{border-radius:var(--radius-xl)}.topbar-nav-mobile.topbar-nav-open{border-top:1px solid var(--border);flex:0 0 100%;order:3;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:100%;margin:8px 0 0;padding-top:9px;display:grid}.topbar-link{border:1px solid var(--border);background:var(--surface-strong);white-space:nowrap;justify-content:flex-start;min-height:44px;padding:0 12px;font-size:.86rem}.topbar-menu-toggle{border:1px solid var(--border);background:var(--surface-strong);width:44px;height:44px;color:var(--heading);cursor:pointer;transition:border-color var(--transition),background var(--transition),color var(--transition);border-radius:50%;flex:0 0 44px;order:2;place-items:center;padding:0;display:grid}.topbar-menu-toggle:hover{border-color:var(--border-strong);background:var(--accent-soft)}.topbar-menu-toggle svg{width:20px;height:20px}.hero-section{grid-template-columns:1fr}.hero-portrait{grid-template-columns:minmax(120px,32%) minmax(0,1fr);align-items:center;gap:16px;display:grid}.portrait-frame{max-height:230px}.portrait-caption{padding:4px 0}.portrait-badge-kicker,.portrait-caption-line{letter-spacing:.09em;font-size:.64rem;line-height:1.5}.brand-title{white-space:nowrap;font-size:max(.84rem,min(2.5vw,1rem))}.brand-subtitle,.theme-switcher-copy{display:none}.theme-switcher{order:1;margin-left:0}.hero-title{font-size:max(2.6rem,min(12vw,4rem))}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions,.contact-actions,.hero-button,.info-button{width:100%}.info-grid,.info-item{grid-template-columns:1fr}.info-value{text-align:left}.achievement-list,.experience-item{grid-template-columns:1fr}.experience-marker{width:54px;height:54px}.experience-meta{justify-content:flex-start}.project-rail-grid,.project-grid,.mini-project-grid{grid-template-columns:1fr}.project-rail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.project-rail-card{min-height:98px;padding:12px}.project-rail-name{overflow-wrap:anywhere;font-size:.9rem}.project-rail-index,.project-rail-label{letter-spacing:.1em;font-size:.62rem}.profile-tags{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-chip{padding:12px}.profile-chip:nth-child(3){grid-column:1/-1}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-link{width:auto;min-width:80px;padding:0 12px}.panel,.project-card,.experience-card,.education-card{padding:18px}}@media (max-width:520px){.brand-title{font-size:max(.78rem,min(3.8vw,1rem))}.page-container{width:min(var(--content-width),calc(100% - 24px));padding-top:16px;padding-bottom:48px}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{min-height:104px;padding:12px}.stat-card:last-child{grid-column:1/-1}.hero-title{font-size:2.45rem}.hero-portrait{grid-template-columns:minmax(104px,34%) minmax(0,1fr);gap:12px}.hero-summary{padding-left:14px}.hero-summary-lead,.hero-summary-body{line-height:1.62}.project-rail-card{min-height:100px}.section-title{font-size:1.45rem}.project-rail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card,.experience-card,.education-card{padding:15px}.project-description,.project-note{font-size:.94rem;line-height:1.6}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.page-orb{display:none}}