@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Instrument+Serif:ital@0;1&display=swap";:root{font-family:DM Sans,sans-serif;color:var(--ink);background:var(--bg);--bg: #f6f4ee;--surface: #eeece5;--ink: #2b302d;--muted: #646962;--line: #d8d9cf;--accent: #793f50;--accent-ink: #fff8f0;--soft: #e7e8de;--paper: #fcfbf6;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}p{line-height:1.75}svg{vertical-align:middle}::selection{background:#e2c9d0}h1,h2,h3,p{margin:0}h1,h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.035em}h2{font-size:clamp(40px,4.5vw,64px);line-height:1.06}h2 em,h1 em{font-weight:400;color:var(--accent)}.wrap{width:min(1200px,calc(100% - 100px));margin:auto}.eyebrow{font-size:10px;letter-spacing:.16em;line-height:1.7;font-weight:600}.site-header{height:100px;max-width:1400px;width:calc(100% - 100px);margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.wordmark{font:44px "Instrument Serif",Georgia,serif;letter-spacing:-4px;display:flex;align-items:baseline}.wordmark>span:first-child{color:var(--accent)}.wordmark-name{font:500 13px DM Sans,sans-serif;letter-spacing:-.2px;margin-left:16px}.site-header nav{display:flex;gap:29px;font-size:12px;align-items:center}.site-header nav a:hover,.text-link:hover{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:20px}.icon-button{background:transparent;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%}.icon-button:hover{background:var(--soft)}.contact-link{font-size:12px;display:flex;align-items:center;gap:15px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.18fr 1fr;gap:48px;padding-top:75px;padding-bottom:65px;align-items:center}.hero h1{font-size:clamp(58px,6.3vw,90px);line-height:.98;margin:28px 0 31px;letter-spacing:-.04em}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#688364;margin:0 9px 1px 0;box-shadow:0 0 0 4px #68836415}.hero-intro{font-size:22px;letter-spacing:-.5px;font-weight:500}.hero-description{font-size:14px;color:var(--muted);max-width:450px;margin-top:11px}.hero-buttons{display:flex;gap:27px;align-items:center;margin-top:30px}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;padding:15px 20px;font-size:12px;font-weight:500;background:var(--surface);border:1px solid var(--line);border-radius:4px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.primary:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:12px}.hero-footnote{display:flex;gap:25px;margin-top:44px;font-size:8px;letter-spacing:.13em;color:var(--muted)}.portrait-stage{height:450px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 55% 36%,#efe1dc 0,transparent 53%),#eae9df;border-radius:48% 48% 4px 4px;perspective:850px;display:flex;align-items:center;justify-content:center;color:#743d4d}.stage-coordinate{position:absolute;top:49px;left:0;width:100%;text-align:center;font-size:7px;letter-spacing:.17em;color:#797068}.orbit{border:1px solid #b5ada363;border-radius:50%;position:absolute;width:360px;height:150px;transform:rotate(-32deg);top:180px}.orbit-two{transform:rotate(45deg);height:320px;width:170px;top:79px}.sculpture{width:245px;height:300px;position:relative;transform:rotate(-8deg);transition:transform 1.2s cubic-bezier(.2,.7,.1,1)}.turned .sculpture{transform:rotate(9deg) rotateY(30deg)}.sculpture-mark{font:italic 245px "Instrument Serif",Georgia,serif;position:absolute;top:-14px;left:51px;text-shadow:1px 1px #a56c7b,2px 2px #a56c7b,3px 3px #a56c7b,4px 4px #a56c7b,5px 5px #a56c7b,6px 6px #a56c7b,7px 7px #a56c7b,8px 8px #a56c7b,11px 14px 16px #5b313b30;z-index:2}.sculpture-mark span{font-size:130px;color:#aa7863;margin-left:5px}.sculpture-ring{position:absolute;width:209px;height:209px;border:25px solid #cab1a0;border-radius:50%;top:36px;left:16px;transform:rotateX(25deg) rotateY(-18deg);box-shadow:inset 6px 3px 10px #89654866,3px 6px #b99c87,10px 14px 30px #735a4122}.pedestal{height:35px;width:210px;border-radius:50%;background:radial-gradient(ellipse,#85716633,transparent 65%);position:absolute;bottom:0;left:10px;transform:rotate(8deg)}.floating-symbol{position:absolute}.symbol-one{left:48px;top:195px;font:20px monospace;transform:rotate(-14deg)}.stage-button{position:absolute;bottom:41px;background:#ffffff50;border:1px solid #ada39455;border-radius:30px;padding:9px 14px;font-size:9px;color:#6e625c}.stage-caption{position:absolute;bottom:15px;font-size:6px;letter-spacing:.14em;color:#7a716c}@keyframes bob{50%{transform:translateY(-9px) rotate(12deg)}}.credentials{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.credentials>span{font-size:21px;font-weight:500;letter-spacing:-.6px}.credentials>span:first-child{font-size:8px;letter-spacing:.12em;line-height:1.8;font-weight:400;color:var(--muted)}.credentials small{display:block;font-size:7px;letter-spacing:.15em;color:var(--muted);margin-top:5px}.work-section{padding-top:90px;padding-bottom:85px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:36px}.section-heading h2{margin-top:16px}.section-heading p{font-size:13px;color:var(--muted);max-width:305px;padding-bottom:5px}.filter-row{display:flex;align-items:center;justify-content:space-between;margin:36px 0 29px}.filters{display:flex;gap:6px}.filters button{background:none;padding:9px 15px;border-radius:30px;border:1px solid transparent;font-size:11px;color:var(--muted)}.filters button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.filters button span{font-size:8px;opacity:.6;margin-left:9px}.small-note{font-size:9px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 28px}.visual-button{width:100%;height:280px;border-radius:5px;position:relative;display:block;padding:0;overflow:hidden;text-align:left}.lilac{background:#e9e3ef;color:#605074}.peach{background:#f1e4d9;color:#8c5b47}.blue{background:#e1e8ee;color:#4d657b}.sage{background:#e2e7dd;color:#53684b}.rose{background:#eee0df;color:#8c5758}.sand{background:#eae5d9;color:#746342}.visual-index{position:absolute;top:19px;left:22px;font:8px DM Sans,sans-serif;letter-spacing:.1em;opacity:.7}.visual-arrow{position:absolute;bottom:18px;right:18px;width:26px;height:26px;border-radius:50%;background:#fff5;display:flex;align-items:center;justify-content:center;transition:transform .2s}.visual-button:hover .visual-arrow{transform:rotate(45deg)}.project-visual{height:100%;display:flex;align-items:center;justify-content:center;padding:37px;transition:transform .45s}.visual-button:hover .project-visual{transform:scale(1.035)}.code-window{width:315px;max-width:100%;border:1px solid #ffffff99;background:#f9f7fae8;border-radius:7px;box-shadow:0 15px 25px #58476910;transform:rotate(-3deg);padding:14px 19px;color:#5d536d}.window-dots{font-size:6px;letter-spacing:2px;display:block;border-bottom:1px solid #ded8e5;padding-bottom:10px;color:#b3a4c0}.window-dots i{float:right;font:8px monospace;letter-spacing:0;color:#8e8399}.code-window code{font:10px/1.6 monospace;display:block;margin:14px 0}.code-muted{color:#a58e9a}.code-window b{color:#986075;font-weight:400}.merged-label{font:7px DM Sans;padding:4px 7px;background:#e8e5f1;border-radius:3px}.snapshot{background:#fffcf8;color:#615950;width:320px;padding:21px 22px;border-radius:6px;box-shadow:0 14px 23px #96674413;transform:rotate(2deg)}.snapshot-top{display:flex;gap:13px;align-items:center;padding-bottom:20px;font-size:12px}.snapshot-top>svg{margin-left:auto}.snapshot small{display:block;font-size:5px;letter-spacing:.1em;margin-top:5px}.health-plus{background:#eee3d6;width:30px;height:30px;text-align:center;line-height:28px;font-size:22px}.snapshot-row{display:flex;justify-content:space-between;align-items:center;font-size:8px;padding:10px 0;border-top:1px solid #eee6dc}.fake-line{height:5px;width:65px;background:#e1d8ca;border-radius:2px}.line-1{width:89px}.line-2{width:55px}.sleep-art{width:90%;text-align:center;padding-top:10px}.sleep-art>svg{transform:rotate(-15deg);margin-bottom:4px}.chart-bars{height:100px;display:flex;align-items:flex-end;justify-content:center;gap:8px}.chart-bars i{width:13px;border-radius:8px 8px 0 0;background:currentColor;opacity:.35}.chart-bars i:nth-child(3n){opacity:.65}.sleep-art>span,.abstract-art>span{display:block;font-size:7px;letter-spacing:.18em;margin-top:18px}.abstract-art{position:relative;text-align:center;width:100%;padding-top:12px}.abstract-ring{width:130px;height:130px;position:absolute;left:50%;top:-23px;margin-left:-65px;border:1px solid currentColor;border-radius:50%;opacity:.16;box-shadow:0 0 0 18px #ffffff16,0 0 0 36px #ffffff15}.abstract-art>span{margin-top:47px}.pipeline-art{display:flex;align-items:center;justify-content:center;width:100%}.pipeline-art span{border:1px solid #91836666;border-radius:4px;padding:16px 10px;font:12px monospace;position:relative;background:#ffffff40}.pipeline-art span+span{margin-left:12px}.pipeline-art span+span:before{content:"→";position:absolute;left:-13px;font-size:10px}.card-kicker{margin:20px 0 7px;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.project-card h3{font-size:23px;font-weight:500;letter-spacing:-.8px}.project-card h3 button{background:none;padding:0;text-align:left}.project-card h3 button:hover{color:var(--accent)}.project-card>p{font-size:12px;color:var(--muted);max-width:450px;margin-top:9px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}.tags span{font-size:8px;padding:5px 9px;border:1px solid var(--line);border-radius:3px;color:var(--muted)}.experience-section{background:var(--surface);padding:80px 0}.experience-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:90px}.experience-layout h2{margin:17px 0 21px}.experience-layout>div>p{font-size:13px;color:var(--muted);max-width:300px;margin-bottom:25px}.timeline article{border-bottom:1px solid var(--line);padding:0 0 27px;margin-bottom:27px}.timeline article:last-child{border:0;margin:0;padding-bottom:0}.timeline h3{font-size:20px;font-weight:500;margin:9px 0 4px;letter-spacing:-.5px}.org{font-size:11px;color:var(--muted)}.timeline p{font-size:12px;color:var(--muted);margin-top:11px;max-width:445px}.about-section{display:grid;grid-template-columns:1fr 1.12fr;gap:90px;padding-top:95px;padding-bottom:95px;align-items:center}.about-art{height:390px;background:var(--soft);position:relative;border-radius:180px 180px 4px 4px;overflow:hidden;color:#777d64}.about-art svg{position:absolute;bottom:30px;width:100%;height:270px}.about-overline{font-size:6px;letter-spacing:.12em;position:absolute;top:56px;width:100%;text-align:center}.about-handwriting{position:absolute;top:85px;left:40px;font:italic 42px/1.05 "Instrument Serif",Georgia;transform:rotate(-7deg);color:var(--ink)}.about-bottom{position:absolute;bottom:20px;left:0;text-align:center;width:100%;font-size:6px;letter-spacing:.12em}.about-copy h2{margin:17px 0 25px;font-size:clamp(38px,4.2vw,59px)}.about-copy>p{font-size:12px;color:var(--muted);margin-top:14px}.about-notes{display:flex;gap:30px;border-top:1px solid var(--line);padding-top:22px;margin-top:27px}.about-notes span{font-size:6px;letter-spacing:.1em;color:var(--muted)}.about-notes b{display:block;font-size:15px;letter-spacing:-.3px;color:var(--ink);font-weight:500;margin-bottom:6px}.contact-section{border-top:1px solid var(--line);padding:65px 0 70px}.contact-section h2{font-size:clamp(55px,7vw,92px);margin:20px 0 26px}.contact-bottom{display:flex;align-items:center;justify-content:space-between}.contact-bottom p{font-size:13px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:25px 0;display:flex;align-items:center;gap:25px;font-size:9px;color:var(--muted)}footer .wordmark{font-size:32px}footer>div{margin-left:auto;display:flex;gap:21px}footer>div a{display:flex;gap:6px;align-items:center}footer>a:last-child{margin-left:20px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:var(--bg);z-index:50;padding:10px}.skip-link:focus{top:10px}.project-dialog{padding:0;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);width:min(700px,calc(100% - 32px));max-height:90dvh}.project-dialog::backdrop{background:#171a18b0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.close-dialog{position:absolute;right:15px;top:15px;z-index:2;background:var(--bg)}.dialog-art{height:245px}.dialog-body{padding:33px 40px 40px}.dialog-body h2{font-size:44px;margin:12px 0}.project-role{font-size:12px;color:var(--muted)}.dialog-body section{margin-top:25px}.dialog-body section h3{font-size:14px;margin-bottom:7px}.dialog-body section p{font-size:13px;color:var(--muted)}.project-note{font-size:11px;padding:14px;border-left:2px solid var(--accent);background:var(--surface);margin-top:25px;color:var(--muted)}.dialog-body>.button{margin-top:24px}.resume-page{max-width:820px;margin:35px auto 80px;padding:0 25px}.resume-actions{display:flex;align-items:center;gap:20px;margin-bottom:45px;font-size:12px}.resume-actions>a{margin-right:auto}.resume-page header{border-bottom:1px solid var(--line);padding-bottom:25px}.resume-page h1{font-size:65px;margin:10px 0}.resume-page h2{font-size:32px;margin-bottom:20px}.resume-page section{margin-top:30px}.resume-page h3{font-size:17px;margin:7px 0}.resume-page p{font-size:13px;color:var(--muted);margin:7px 0}.resume-page strong{font-size:12px}.resume-page article{margin-top:23px}.resume-page a{color:var(--accent)}[data-theme=dark]{--bg: #202623;--surface: #262e29;--ink: #eaece2;--muted: #afb8ac;--line: #41493f;--accent: #dfadbb;--accent-ink: #272026;--soft: #303a30;--paper: #252d27;color-scheme:dark}[data-theme=dark] .portrait-stage{background:radial-gradient(ellipse at 55% 36%,#56413d 0,transparent 53%),#333a32;color:#b88394}[data-theme=dark] .stage-coordinate,[data-theme=dark] .stage-caption{color:#c1b6a8}[data-theme=dark] .stage-button{background:#ffffff08;color:#d3c8bc}[data-theme=dark] .sculpture-mark{text-shadow:1px 1px #744754,2px 2px #744754,3px 3px #744754,4px 4px #744754,5px 5px #744754,6px 6px #744754,8px 8px #744754,11px 14px 16px #0a050b50}[data-theme=dark] .lilac{background:#393440;color:#c6b1db}[data-theme=dark] .peach{background:#443b32;color:#d6b99b}[data-theme=dark] .blue{background:#303d45;color:#a8c3d8}[data-theme=dark] .sage{background:#344030;color:#c0cba4}[data-theme=dark] .rose{background:#463738;color:#d7adae}[data-theme=dark] .sand{background:#423f32;color:#d4c899}[data-theme=dark] .code-window{background:#302b36;color:#d7c8e2;border-color:#64556b}[data-theme=dark] .window-dots{border-color:#544759}[data-theme=dark] .merged-label{background:#54425d}[data-theme=dark] .snapshot{background:#302b26;color:#d9cfc0}[data-theme=dark] .snapshot-row{border-color:#494034}[data-theme=dark] .health-plus{background:#514333}[data-theme=dark] .fake-line{background:#746854}[data-theme=dark] .visual-arrow{background:#ffffff12}@media(min-width:1450px){.hero{padding-top:90px;padding-bottom:85px}.portrait-stage{height:490px}}@media(max-width:1000px){.wrap,.site-header{width:calc(100% - 56px)}.hero{gap:24px}.hero h1{font-size:64px}.portrait-stage{height:410px}.hero-footnote{gap:12px;font-size:7px}.site-header nav{gap:18px}.wordmark-name{display:none}.experience-layout,.about-section{gap:45px}.project-visual{padding:35px 22px}.credentials>span{font-size:17px}}@media(max-width:700px){html{scroll-padding-top:25px}.wrap,.site-header{width:calc(100% - 40px)}.site-header{height:78px}.menu-toggle{display:flex}.header-actions{gap:12px}.contact-link{display:none}.wordmark-name{display:inline;font-size:12px}.site-header nav{display:none;position:absolute;top:78px;left:20px;right:20px;padding:24px;flex-direction:column;align-items:stretch;background:var(--paper);border:1px solid var(--line);z-index:5;border-radius:6px}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:43px;gap:40px;padding-bottom:35px}.hero h1{font-size:clamp(55px,10vw,76px);margin-top:21px;margin-bottom:22px}.hero-intro{font-size:21px}.hero-description{font-size:13px}.hero-footnote{margin-top:27px;justify-content:space-between}.portrait-stage{height:350px;max-width:450px;width:100%;margin:auto}.stage-coordinate{top:31px}.sculpture{transform:scale(.85) rotate(-8deg);margin-top:-12px}.turned .sculpture{transform:scale(.85) rotate(9deg) rotateY(30deg)}.stage-button{bottom:29px}.stage-caption{bottom:10px}.orbit{top:140px}.orbit-two{top:28px}.symbol-one{top:148px}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:24px 15px;padding:25px 0}.credentials>span:first-child{display:none}.credentials>span{font-size:20px}.credentials small{font-size:6px}.work-section{padding-top:55px;padding-bottom:55px}.section-heading{display:block;margin-bottom:25px}.section-heading p{margin-top:20px;max-width:340px}.section-heading h2{font-size:46px}.filter-row{margin:25px 0}.filters{gap:0}.filters button{font-size:10px;padding:8px 11px}.small-note{display:none}.project-grid{grid-template-columns:1fr;gap:33px}.visual-button{height:270px}.project-card h3{font-size:23px}.project-card>p{font-size:13px}.tags span{font-size:9px}.experience-section{padding:50px 0}.experience-layout,.about-section{grid-template-columns:1fr;gap:38px}.experience-layout h2{font-size:47px}.experience-layout>div>p{max-width:350px}.about-section{padding-top:55px;padding-bottom:55px}.about-art{height:320px;max-width:450px;width:100%;margin:auto}.about-copy h2{font-size:46px}.about-copy>p{font-size:13px}.contact-section{padding:45px 0}.contact-section h2{font-size:54px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:24px}footer{flex-wrap:wrap;gap:15px}footer>div{width:100%;margin:0;order:3;justify-content:space-between}footer>a:last-child{margin-left:auto;font-size:8px}.dialog-body{padding:26px}.dialog-body h2{font-size:36px}.resume-page h1{font-size:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{.resume-actions{display:none}.resume-page{max-width:none;margin:0;padding:0}.resume-page h1{font-size:34px}.resume-page h2{font-size:22px;margin-bottom:10px}.resume-page section{margin-top:18px}.resume-page article{break-inside:avoid;margin-top:13px}.resume-page p{font-size:10px;line-height:1.5}.resume-page h3{font-size:13px}.resume-page .eyebrow{font-size:8px}:root,[data-theme=dark]{--bg: white;--ink: #111;--muted: #333;--line: #ccc;--accent: #333}body{background:#fff}a{text-decoration:none}@page{margin:16mm}}.resume-document-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:25px}.resume-page .button.primary{color:var(--bg)}.resume-page .button.primary:hover{color:var(--accent-ink)}.resume-document{display:block;width:100%;height:80vh;min-height:480px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.resume-fallback{padding:30px;display:flex;flex-wrap:wrap;gap:20px;align-items:center}.resume-fallback p{width:100%}.resume-file-note{font-size:9px!important;letter-spacing:.12em;margin-top:15px!important}.experience-details{background:transparent;padding:0;margin-top:14px;color:var(--accent)}.page-index{display:flex;align-items:center;gap:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;font-size:13px}.page-index>span{color:var(--muted);margin-right:auto}.page-index a span{color:var(--muted);font-size:10px;margin-right:8px}.page-index a:hover{color:var(--accent)}.experience-section{background:transparent;padding:90px 0}.experience-layout{grid-template-columns:260px minmax(0,1fr);gap:70px}.experience-layout h2,.section-heading h2{font-size:52px}.experience-layout>div>p,.section-heading p{font-size:15px}.timeline p{font-size:15px;max-width:650px;line-height:1.8}.timeline .org{font-size:13px}.timeline .eyebrow{font-size:10px}.timeline article{padding-bottom:32px;margin-bottom:32px}.work-section{border-top:1px solid var(--line);padding-top:70px}.section-heading{align-items:flex-start}.section-heading p{max-width:430px}.project-grid{display:flex;flex-direction:column;gap:0}.project-card{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:60px;padding:38px 0;border-bottom:1px solid var(--line);align-items:center}.project-card:last-child{border-bottom:0}.project-card .visual-button{grid-column:2;grid-row:1;height:210px}.project-summary{grid-column:1;grid-row:1}.project-summary .card-kicker{margin:0 0 12px;font-size:11px}.project-summary h3{font-size:27px;line-height:1.25}.project-summary>p{font-size:15px;color:var(--muted);line-height:1.8;margin:14px 0;max-width:640px}.project-summary .tags span{font-size:10px;border:0;padding:0}.project-summary .tags{gap:16px}.project-read-link{background:transparent;padding:0;margin-top:23px;color:var(--accent);font-size:13px}.project-card .project-visual{padding:30px 22px}.project-card .code-window code{font-size:8px}.project-card .snapshot{padding:14px}.project-card .snapshot-top{font-size:10px;gap:8px}.project-card .pipeline-art span{padding:12px 6px;font-size:9px}.project-card .chart-bars{gap:5px}.about-copy>p{font-size:15px;line-height:1.8}.hero-description{font-size:16px;line-height:1.8}@media(max-width:800px){.page-index{flex-wrap:wrap;gap:20px;font-size:12px}.page-index>span{width:100%}.experience-layout{grid-template-columns:1fr;gap:35px}.experience-section{padding:55px 0}.experience-layout>div>p{max-width:100%}.project-card{grid-template-columns:minmax(0,1fr) 220px;gap:25px}.project-card .visual-button{height:190px}.section-heading{display:block}.section-heading p{margin-top:20px}}@media(max-width:600px){.project-card{grid-template-columns:1fr;gap:24px;padding:30px 0}.project-summary{grid-column:1;grid-row:1}.project-card .visual-button{grid-column:1;grid-row:2;height:180px}.experience-layout h2,.section-heading h2{font-size:44px}.project-summary h3{font-size:25px}.hero-description{font-size:15px}}@media(max-width:380px){.hero h1{font-size:44px;line-height:1.04}.hero-buttons{gap:18px}.hero-buttons .button{padding:14px;gap:10px}}.project-highlight{display:inline-flex;align-items:center;gap:10px;padding:11px 14px;margin-bottom:19px;border:1px solid;border-radius:5px;font-size:12px;font-weight:700;line-height:1.5}.project-highlight svg{flex-shrink:0}.highlight-contribution{color:#3c316d;background:#ede8fa;border-color:#c6b9e7}.highlight-award{color:#705016;background:#fff0c9;border-color:#dabb6b}[data-theme=dark] .highlight-contribution{color:#e5d9ff;background:#44375c;border-color:#7b6599}[data-theme=dark] .highlight-award{color:#ffe0a0;background:#4c3c20;border-color:#937844}.dialog-body .project-highlight{display:flex;width:fit-content}@media(max-width:600px){.project-highlight{font-size:11px;padding:10px 12px}}.highlight-fellowship{color:#244e6a;background:#e2f0f8;border-color:#a6c7da}.highlight-research{color:#32593b;background:#e5f0e3;border-color:#aec9ad}.highlight-hackathon{color:#774429;background:#f8e9de;border-color:#d7b69b}[data-theme=dark] .highlight-fellowship{color:#bfdef5;background:#293e4d;border-color:#577e96}[data-theme=dark] .highlight-research{color:#c4e3c6;background:#2c4230;border-color:#67866b}[data-theme=dark] .highlight-hackathon{color:#f0ceaf;background:#49372c;border-color:#997759}.resume-page{max-width:1000px}.resume-paper{padding:44px 48px;background:#fff;color:#202020;border:1px solid #deded8;box-shadow:0 8px 30px #00000006;font-family:Georgia,serif}.resume-paper header{padding-bottom:14px;border:0}.resume-paper header h2{font-family:Georgia,serif;font-size:30px;font-weight:700;letter-spacing:-.5px;margin:0 0 10px}.resume-paper p,.resume-paper li{font-size:14px;line-height:1.6;color:#303030}.resume-paper section{margin-top:22px}.resume-paper h3{font:700 19px Georgia,serif;border-bottom:1px solid #555;padding-bottom:5px;margin-bottom:12px}.resume-paper strong{font-size:14px}.resume-paper a{color:#202020;text-decoration:underline;text-decoration-color:#b9b9b9;text-underline-offset:3px}.resume-entry{margin-top:17px}.resume-entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;line-height:1.5}.resume-entry-heading>span{font-size:11px;flex-shrink:0;color:#595959}.resume-paper ul{padding-left:19px;margin:6px 0 0}.resume-paper .resume-employer{margin:3px 0;font-style:italic}@media(max-width:600px){.resume-page{padding:0 16px}.resume-page>header h1{font-size:43px}.resume-paper{padding:24px 20px}.resume-entry-heading{flex-direction:column;gap:3px}.resume-paper header h2{font-size:26px}}.projects-page .work-section{border-top:0}.projects-page h1{font-size:64px;margin:16px 0 0}.all-projects-link{margin-top:24px}@media(max-width:600px){.projects-page h1{font-size:48px}}.resume-fit-page{margin:20px auto}.resume-fit-page .resume-actions{margin-bottom:18px}.resume-fit-page>header{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;padding-bottom:16px}.resume-fit-page>header>.eyebrow{display:none}.resume-fit-page>header h1{font-size:32px;margin:0}.resume-fit-page>header>p{display:none}.resume-fit-page .resume-document-actions{margin:0 0 0 auto;gap:18px}.resume-fit-page>section{margin-top:16px;text-align:center}.resume-fit-preview{display:block;width:fit-content;max-width:100%;margin:auto}.resume-fit-preview img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 210px);object-fit:contain;border:1px solid var(--line);box-shadow:0 3px 15px #0000000a}.resume-fit-page .resume-file-note{margin-top:8px!important}@media(max-width:600px){.resume-fit-page{margin:12px auto}.resume-fit-page .resume-actions{margin-bottom:12px}.resume-fit-page>header h1{font-size:27px}.resume-fit-page .resume-document-actions{margin:0;width:100%;gap:18px}.resume-fit-page .resume-document-actions .button{padding:10px 12px}.resume-fit-preview img{max-height:calc(100dvh - 235px)}}.hero-education{margin-top:22px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.hero-education strong{font-size:14px;font-weight:600}.hero-education span{font-size:12px;line-height:1.6;color:var(--muted)}.hero-education b{color:var(--accent);font-weight:700}.detail-page{min-height:calc(100dvh - 200px)}.detail-page h1{font-size:60px;line-height:1.08;margin:17px 0 24px}@media(max-width:600px){.detail-page h1{font-size:44px}}.experience-highlight{display:flex;width:fit-content;margin-bottom:16px}.resume-fit-page{max-width:1180px}.resume-size-controls{display:flex;justify-content:center;gap:8px;margin-bottom:18px}.resume-size-controls button{padding:9px 16px;border:1px solid var(--line);background:transparent;border-radius:4px;font-size:12px}.resume-size-controls button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.show-full-width .resume-fit-preview{width:100%;max-width:1000px}.show-full-width .resume-fit-preview img{width:100%;height:auto;max-height:none}.show-whole-page .resume-fit-preview img{max-height:calc(100dvh - 250px)}.project-dialog{width:min(1100px,calc(100% - 40px));max-width:none;max-height:94dvh}.dialog-art{height:180px}.dialog-art .project-visual{padding:20px;transform:scale(.8)}.dialog-body{padding:40px 64px 56px}.dialog-body h2{font-size:52px;line-height:1.1}.dialog-body .project-role{font-size:16px}.dialog-body section{margin-top:30px}.dialog-body section h3{font-size:20px}.dialog-body section p{font-size:17px;line-height:1.85;max-width:850px}.dialog-body .project-note{font-size:14px;line-height:1.7}.dialog-body .tags span{font-size:12px}.dialog-body>.button{font-size:14px}.close-dialog{position:sticky;top:12px;float:right;margin:12px 12px -50px 0;width:42px;height:42px}@media(max-width:600px){.project-dialog{width:calc(100% - 16px);max-height:97dvh;border-radius:7px}.dialog-body{padding:26px 22px 36px}.dialog-body h2{font-size:37px}.dialog-body section p{font-size:16px;line-height:1.8}.dialog-art{height:135px}.dialog-art .project-visual{transform:scale(.65);padding:0}.show-whole-page .resume-fit-preview img{max-height:calc(100dvh - 280px)}}@media(min-width:850px){.resume-single-view{display:grid;grid-template-columns:230px minmax(0,1fr);grid-template-rows:auto 1fr;gap:20px 36px;max-width:1250px;margin:16px auto}.resume-single-view .resume-actions{grid-column:1;grid-row:1;margin:0}.resume-single-view>header{grid-column:1;grid-row:2;display:block;align-self:start;padding-top:12px;border:0}.resume-single-view>header h1{font-size:35px}.resume-single-view .resume-document-actions{margin-top:26px;flex-direction:column;align-items:flex-start;gap:20px}.resume-single-view>section{grid-column:2;grid-row:1 / span 2;margin:0}.resume-single-view .resume-fit-preview img{max-height:calc(100dvh - 65px)}}@media(max-width:849px){.resume-single-view .resume-fit-preview img{max-height:calc(100dvh - 235px)}}.project-dialog .dialog-art{display:none}.project-dialog .dialog-body{padding:30px 38px}.project-dialog .dialog-body h2{font-size:40px;padding-right:35px}.project-dialog .dialog-body section{margin-top:20px}.project-dialog .dialog-body section p{font-size:16px;line-height:1.65}.project-dialog .dialog-body .project-note{margin-top:18px}@media(min-width:900px){.project-dialog .dialog-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px}.dialog-body>:not(section){grid-column:1 / -1}.project-dialog .dialog-body section{margin-top:26px}.project-dialog .dialog-body section h3{font-size:18px}.project-dialog .dialog-body>.button{justify-self:start;margin-top:20px}}@media(max-width:600px){.project-dialog .dialog-body{padding:25px 22px}.project-dialog .dialog-body h2{font-size:32px}}
