/* Dark colors sampled from the supplied reference screenshot. */
:root{color-scheme:dark;--paper:#211d12;--ink:#d1cdc7;--muted:#a8a095;--line:#3d4344;--orange:#d8684a;--dot:#9e3d22;--button:#1b1e20;--button-text:#e6e1d2;--art:#262719;--art-border:#3c4244;--art-grid:#282b1c;--art-label:#a8a095;--monogram:#c6c1b9;--orbit:#4a5053;--selection:#704431;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}
:root[data-theme="light"]{color-scheme:light;--paper:#f5f3ed;--ink:#232921;--muted:#666b60;--line:#d7d9cc;--orange:#c64b2b;--dot:#c64b2b;--button:#232921;--button-text:#f5f3ed;--art:#e7e9dc;--art-border:#d9ddcc;--art-grid:#d4d8c64d;--art-label:#5c634e;--monogram:#34402d;--orbit:#a8b197;--selection:#e8b39b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:7px}::selection{background:var(--selection)}.page-shell{max-width:1440px;margin:auto;padding:0 64px}.site-header{height:116px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-weight:750;font-size:23px;letter-spacing:-1px}.wordmark>span:first-child{font-weight:400;color:var(--muted)}.brand-dot{display:inline-block;width:7px;height:7px;margin:0 0 2px 9px;background:var(--orange);border-radius:50%}nav{display:flex;gap:36px;font-size:14px}nav span{margin-left:13px;color:var(--muted)}nav a:hover,footer>a:last-child:hover{color:var(--orange)}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;padding:90px 0 94px}.eyebrow{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:1.4px;line-height:1.7;margin:0 0 28px}.status-dot{display:inline-block;background:var(--orange);width:7px;height:7px;border-radius:50%;margin-right:9px}h1{font-size:clamp(48px,5.7vw,82px);line-height:1.03;letter-spacing:-4px;font-weight:500;margin:0 0 28px}h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--orange)}.intro{max-width:410px;font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 32px}.primary-link{display:inline-flex;gap:42px;align-items:center;font-size:13px;font-weight:600;background:var(--button);color:var(--button-text);padding:18px 21px;border-radius:3px;transition:background .2s}.primary-link:hover{background:var(--orange)}.primary-link span{font-size:20px}.hero-art{aspect-ratio:1/1.08;background:var(--art);border:1px solid var(--art-border);position:relative;overflow:hidden;border-radius:3px;isolation:isolate;background-image:linear-gradient(var(--art-grid) 1px,transparent 1px),linear-gradient(90deg,var(--art-grid) 1px,transparent 1px);background-size:40px 40px}.art-top,.art-bottom{position:absolute;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:8px;letter-spacing:1.5px;color:var(--art-label);z-index:2}.art-top{top:25px}.art-bottom{bottom:22px}.art-cross{font-size:25px;font-weight:300}.monogram{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:clamp(180px,25vw,355px);font-style:italic;letter-spacing:0;padding:0 0 40px;line-height:1;color:var(--monogram)}.monogram span{color:var(--orange)}.orbital{position:absolute;left:50%;top:50%;width:80%;height:80%;border:1px solid var(--orbit);border-radius:50%;transform:translate(-50%,-50%);z-index:-1}.orbital-two{width:105%;height:42%;transform:translate(-50%,-50%) rotate(-38deg)}.orbital-three{width:42%;height:105%;transform:translate(-50%,-50%) rotate(-38deg)}.section-divider{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:9px;letter-spacing:1.4px;color:var(--muted)}.work-section{padding:74px 0 88px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:14px}h2{font-size:34px;font-weight:500;letter-spacing:-1.3px;line-height:1.2;margin:0}.section-heading>p{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 3px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.work-card{border:1px solid var(--line);padding:25px 26px 22px;border-radius:3px}.card-top,.card-foot{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:9px;letter-spacing:1px;color:var(--muted)}.badge{font-size:8px;letter-spacing:.7px;border:1px solid var(--line);padding:5px 7px;border-radius:20px}.card-symbol{height:118px;display:flex;align-items:center;font-size:44px;font-family:var(--mono);color:var(--orange);letter-spacing:-5px}.symbol-steps{font-size:62px}h3{font-size:18px;font-weight:500;letter-spacing:-.4px;margin:0 0 12px}.work-card p{font-size:13px;line-height:1.8;color:var(--muted);max-width:270px;margin:0 0 28px}.card-foot{border-top:1px solid var(--line);padding-top:18px}.card-foot span{font-size:16px}.about-section{border-top:1px solid var(--line);padding:65px 0 80px;display:grid;grid-template-columns:1fr 2fr;gap:32px}.about-section h2{font-size:40px;line-height:1.2}.about-section h2 span{color:var(--muted)}.about-section p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);max-width:530px;margin:22px 0}.signature{font-family:Georgia,serif;font-style:italic;font-size:24px}.signature span{color:var(--orange);margin-left:15px;font-family:Arial,sans-serif}footer{border-top:1px solid var(--line);padding:28px 0 35px;display:flex;justify-content:space-between;align-items:center;gap:20px}footer .wordmark{font-size:17px}footer p,footer>a:last-child{font-size:11px;color:var(--muted)}footer>a:last-child span{margin-left:15px}.skip-link{position:absolute;top:-100px;left:20px;padding:12px;background:var(--button);color:var(--button-text);z-index:10}.skip-link:focus{top:10px}
.orbital::after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--orange);transform:translate(-50%,-50%)}
.orbital-one::after{left:50%;top:0}
.orbital-two::after{left:0;top:50%}
.orbital-three::after{left:50%;top:100%}
.expertise{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 28px}.expertise li{font-family:var(--mono);font-size:10px;line-height:1.5;color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:6px 10px}
.contact-links{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.contact-links .primary-link{width:148px;min-height:60px;justify-content:space-between;gap:20px}
@media(min-width:1500px){.hero{gap:110px}}
@media(max-width:1000px){.page-shell{padding:0 36px}.hero{gap:35px;padding:65px 0}h1{letter-spacing:-2.8px}.work-card{padding:20px}.section-heading>p{max-width:230px}.about-section h2{font-size:35px}}
@media(max-width:700px){.page-shell{padding:0 24px}.site-header{height:88px}.wordmark{font-size:20px}nav{gap:20px;font-size:12px}nav span{margin-left:4px}.hero{grid-template-columns:1fr;gap:40px;padding:48px 0}.hero-copy .eyebrow{font-size:9px;margin-bottom:24px}h1{font-size:clamp(47px,10vw,68px);letter-spacing:-2.5px}.intro{font-size:15px}.hero-art{aspect-ratio:1.2;max-height:380px}.monogram{font-size:270px;padding-bottom:30px}.section-divider{font-size:8px;letter-spacing:.8px}.work-section{padding:48px 0}.section-heading{display:block}.section-heading>p{margin-top:17px;max-width:none}.desktop-break{display:none}h2{font-size:30px}.work-grid{grid-template-columns:1fr}.work-card{padding:24px}.card-symbol{height:94px}.work-card p{max-width:none}.about-section{grid-template-columns:1fr;gap:0;padding:45px 0 50px}.about-section h2{font-size:32px}.about-section .eyebrow{margin-bottom:22px}footer{flex-wrap:wrap;padding:25px 0}footer p{margin:0}footer>a:last-child{width:100%;margin-top:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand-dot,.status-dot{background:var(--dot)}
.site-header nav{align-items:center}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.theme-toggle[hidden]{display:none}
.theme-toggle:hover{color:var(--orange);border-color:var(--orange)}
.theme-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .moon-icon{display:none}
[data-theme="light"] .theme-toggle .sun-icon{display:none}
[data-theme="light"] .theme-toggle .moon-icon{display:block}
@media(max-width:700px){.site-header nav{gap:14px}.site-header nav a span{display:none}}
@media(max-width:360px){.site-header{height:auto;min-height:88px;flex-wrap:wrap;gap:12px;padding:18px 0}}

.project-entry{display:block;transition:border-color .2s}.project-entry:hover{border-color:var(--orange)}.live-badge{color:var(--orange)}
.notes-page{padding:76px 0;max-width:920px}.notes-heading .intro{max-width:520px}.note-preview{display:block;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin-top:48px}.note-preview-meta{display:flex;justify-content:space-between;gap:16px;align-items:center;font:10px var(--mono);color:var(--muted)}.note-preview-meta .eyebrow{margin:0;color:var(--orange)}.note-preview h2{display:flex;justify-content:space-between;gap:20px;margin:22px 0 16px}.note-preview h2 span{color:var(--orange)}.note-preview p{font-size:16px;line-height:1.8;color:var(--muted);max-width:600px}.note-preview:hover h2,.note-back:hover,.note-end a:hover{color:var(--orange)}.note-read{display:flex;gap:24px;margin-top:28px;font:10px var(--mono);letter-spacing:1px}.note-read>span{color:var(--muted)}
.note-page{max-width:760px;margin:0 auto;padding:48px 0 80px}.note-back{font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:12px}.note-header{padding:52px 0 30px;border-bottom:1px solid var(--line);margin-bottom:34px}.note-header .eyebrow{color:var(--orange);margin-bottom:18px}.note-header h1{font-size:clamp(42px,5.2vw,68px);letter-spacing:-2.5px;line-height:1.1;text-wrap:balance}.note-meta{display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--muted);font:10px/1.7 var(--mono)}.note-body{font-size:17px;line-height:1.9;color:var(--ink)}.note-body p{margin:0 0 25px;text-wrap:pretty}.note-body .note-lead{font-size:25px;line-height:1.5;letter-spacing:-.4px;margin-bottom:30px}.note-body a{color:var(--orange);text-decoration:underline;text-underline-offset:4px}.note-end{margin-top:44px;border-top:1px solid var(--line);padding-top:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.note-end .eyebrow{margin:0;color:var(--muted)}.note-end a{font-size:13px}.note-end a span{color:var(--orange);margin-left:12px}
@media(max-width:700px){.notes-page{padding:48px 0}.note-page{padding:32px 0 48px}.note-header{padding-top:36px}.note-header h1{letter-spacing:-1.5px}.note-body{font-size:16px;line-height:1.85}.note-body .note-lead{font-size:22px}.note-preview-meta{align-items:flex-start;flex-wrap:wrap}.note-preview h2{font-size:28px}}
.experience-page{padding:76px 0}.career-hero .intro{max-width:520px}.career-route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;position:relative;margin:52px 0 64px}.career-route:before{content:"";position:absolute;top:19px;left:10%;right:10%;height:1px;background:var(--line)}.career-route a{display:flex;flex-direction:column;align-items:center;gap:12px;font-family:var(--mono);font-size:10px;letter-spacing:.6px;position:relative}.career-route a span{margin:0}.career-route .route-node{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--orange);border-radius:50%;background:var(--paper);color:var(--orange)}.career-route a:hover .route-node{background:var(--orange);color:var(--paper)}.career-timeline{list-style:none;padding:0;margin:0;max-width:1080px}.career-stage{position:relative;padding:0 0 28px 78px;scroll-margin-top:24px}.career-stage:before{content:"";position:absolute;left:21px;top:0;bottom:0;width:1px;background:var(--line)}.career-stage:last-child:before{bottom:50%}.stage-number{position:absolute;top:34px;left:0;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);background:var(--paper);border-radius:50%;font-family:var(--mono);font-size:12px;color:var(--orange)}.career-panel{display:grid;grid-template-columns:150px minmax(0,1fr);border:1px solid var(--line);border-radius:3px;overflow:hidden}.career-illustration{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:28px;background:var(--art);border-right:1px solid var(--line);background-image:linear-gradient(var(--art-grid) 1px,transparent 1px),linear-gradient(90deg,var(--art-grid) 1px,transparent 1px);background-size:24px 24px}.career-illustration svg{width:96px;height:90px;fill:none;stroke:var(--orange);stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.career-illustration circle{fill:var(--art)}.career-illustration>span{font:9px var(--mono);letter-spacing:2px;color:var(--muted)}.career-copy{min-width:0;padding:32px}.career-copy .eyebrow{margin-bottom:12px;color:var(--orange)}.career-copy h2{font-size:28px;letter-spacing:-.6px;line-height:1.3;text-wrap:balance}.career-takeaway{font-size:16px;line-height:1.6;margin:16px 0 9px;text-wrap:pretty}.career-description{text-wrap:pretty;color:var(--muted);font-size:14px;line-height:1.85;margin:0 0 22px}.career-copy .expertise{margin:0;gap:8px}.career-copy .expertise li{flex:0 0 auto;max-width:100%;text-wrap:balance}.career-summary{border-top:1px solid var(--line);margin-top:35px;padding:50px 0 12px}.career-summary h2{font-size:40px}.career-summary h2 em{font-family:Georgia,serif;color:var(--orange);font-weight:400}.career-summary>p:not(.eyebrow){max-width:550px;color:var(--muted);font-size:15px;line-height:1.8;margin:24px 0}.career-stage:last-child .career-panel{border-color:var(--orange)}
@media(max-width:1000px){.career-panel{grid-template-columns:130px minmax(0,1fr)}.career-copy{padding:28px}.career-illustration{padding:16px}.career-copy h2{font-size:25px}.career-stage{padding-left:64px}}
@media(max-width:700px){.experience-page{padding:48px 0}.career-route{margin:34px 0 42px}.career-route a{font-size:8px;letter-spacing:0;gap:10px}.career-route .route-node{width:34px;height:34px}.career-route:before{top:16px}.career-stage{padding-left:24px;padding-bottom:20px}.career-stage:before{left:6px}.stage-number{left:0;top:29px;width:13px;height:13px;font-size:0;border-color:var(--orange);background:var(--orange)}.career-panel{grid-template-columns:1fr}.career-illustration{flex-direction:row;justify-content:space-between;padding:20px 24px;border-right:0;border-bottom:1px solid var(--line)}.career-illustration svg{width:62px;height:58px}.career-copy{padding:22px 20px}.career-copy h2{font-size:24px}.career-copy .eyebrow{font-size:9px}.career-takeaway{font-size:15px}.career-description{font-size:13px}.career-summary{margin-top:20px;padding-top:36px}.career-summary h2{font-size:32px}}
.experiments-page{padding:76px 0}.experiments-intro .intro{max-width:510px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}.project-card{display:flex;flex-direction:column;padding:30px}.project-card h2{font-size:28px;margin-bottom:16px}.project-card p{max-width:440px;font-size:15px}.project-card .card-foot{margin-top:auto;min-height:44px}.project-card .card-foot:hover,.back-link:hover{color:var(--orange)}.back-link{display:inline-flex;gap:12px;align-items:center;font-size:13px;margin-top:36px}
@media(max-width:700px){.experiments-page{padding:48px 0}.project-grid{grid-template-columns:1fr;gap:18px;margin-top:32px}.project-card{padding:24px}}
