:root{--bg:#08090b;--surface:#101114;--surface-raised:#15171b;--text:#f5f5f2;--muted:#a6a8b0;--faint:#7c7f89;--line:#27292f;--blue:#09f;--blue-light:#66bdff;--blue-glow:#0099ff24;--shell:1240px;--radius:18px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{background:radial-gradient(circle at 86% 4%, #0099ff14, transparent 28rem), var(--bg);min-width:320px;color:var(--text);margin:0;font-size:16px;line-height:1.6}::selection{color:#000;background:var(--blue-light)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img,svg{max-width:100%;display:block}p,h1,h2,h3{margin-top:0}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--blue-light);outline-offset:5px}.shell{width:min(calc(100% - 64px), var(--shell));margin-inline:auto}.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}.skip-link{z-index:100;color:#000;background:#fff;border-radius:100px;padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;backdrop-filter:blur(18px);background:#08090be0;border-bottom:1px solid #ffffff14;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:32px;min-height:88px;display:flex}.wordmark{letter-spacing:-.055em;align-items:baseline;font-size:24px;font-weight:650;line-height:1;display:inline-flex}.wordmark-dot{color:var(--blue-light)}.site-nav{align-items:center;gap:8px;display:flex}.site-nav a{min-height:44px;color:var(--muted);border-radius:100px;align-items:center;gap:7px;padding:8px 15px;font-size:14px;font-weight:500;transition:color .16s,background .16s;display:inline-flex}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text);background:#ffffff0f}.site-nav .nav-github{color:#08090b;background:var(--text);margin-left:8px}.site-nav .nav-github:hover{color:#000;background:#fff}.eyebrow{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:28px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:600;line-height:1.4;display:flex}.eyebrow-line{background:var(--blue);width:32px;height:1px}.hero{padding-top:clamp(80px,11vw,150px);padding-bottom:56px;position:relative}.hero h1,.page-hero h1,.not-found h1{letter-spacing:-.075em;max-width:1150px;margin-bottom:56px;font-size:clamp(52px,8.5vw,116px);font-weight:520;line-height:.91}.hero h1 span,.page-hero h1 span{color:var(--blue-light)}.hero-bottom{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:64px;display:grid}.hero-intro{max-width:570px;color:var(--muted);letter-spacing:-.015em;margin:0;font-size:clamp(18px,2vw,22px);line-height:1.5}.hero-actions,.resume-actions{flex-wrap:wrap;gap:12px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:18px;min-height:48px;padding:11px 21px;font-size:14px;font-weight:600;line-height:1.2;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#050505;background:var(--text)}.button-primary:hover{background:#fff}.button-secondary{border-color:var(--line);color:var(--text);background:#ffffff0a}.button-secondary:hover{background:#ffffff12;border-color:#464a54}.hero-footnote{color:var(--faint);letter-spacing:.12em;align-items:center;gap:20px;margin-top:88px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;display:flex}.hero-footnote-line{background:var(--line);width:44px;height:1px}.section{border-top:1px solid var(--line);padding-top:112px;padding-bottom:112px}.section-heading{justify-content:space-between;align-items:end;gap:32px;margin-bottom:48px;display:flex}.section-heading .eyebrow{margin-bottom:20px}.section h2,.closing-section h2{letter-spacing:-.055em;margin-bottom:0;font-size:clamp(38px,5.4vw,70px);font-weight:520;line-height:1}.text-link{min-height:44px;color:var(--text);text-underline-offset:6px;align-items:center;gap:10px;font-size:14px;font-weight:600;text-decoration-line:underline;text-decoration-color:#4c515b;transition:color .16s,text-decoration-color .16s;display:inline-flex}.text-link:hover{color:var(--blue-light);text-decoration-color:var(--blue-light)}.section-link{margin-bottom:4px}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.app-card{--card-accent:#66bdff;--card-deep:#0a2538;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;transition:border-color .18s,transform .18s;overflow:hidden}.app-card:hover{border-color:#434750;transform:translateY(-4px)}.accent-violet{--card-accent:#c6b5ff;--card-deep:#2b214a}.accent-green{--card-accent:#9ee6bd;--card-deep:#163c2b}.accent-orange{--card-accent:#ffc29e;--card-deep:#4a2a1b}.accent-blue{--card-accent:#91d2ff;--card-deep:#12364d}.app-art{background:radial-gradient(circle at 50% 55%, color-mix(in srgb, var(--card-accent) 17%, transparent), transparent 40%), linear-gradient(135deg, var(--card-deep), #0d0e11 72%);border-bottom:1px solid #ffffff14;place-items:center;height:250px;display:grid;position:relative;overflow:hidden}.app-art:after{content:"";opacity:.12;background-image:linear-gradient(#ffffff2e 1px,#0000 1px),linear-gradient(90deg,#ffffff2e 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;mask-image:linear-gradient(#000,#0000 85%)}.app-mark{z-index:2;border:1px solid color-mix(in srgb, var(--card-accent) 65%, white);width:106px;height:106px;color:var(--card-accent);letter-spacing:-.06em;background:#08090ba6;border-radius:28px;place-items:center;font-size:31px;font-weight:650;display:grid;position:relative;transform:rotate(-4deg);box-shadow:0 24px 60px #00000059,inset 0 1px #ffffff1f}.app-art-orbit{z-index:1;border:1px solid color-mix(in srgb, var(--card-accent) 35%, transparent);border-radius:50%;position:absolute}.orbit-one{width:270px;height:150px;transform:rotate(24deg)}.orbit-two{width:310px;height:170px;transform:rotate(-28deg)}.app-art-label{z-index:3;color:#ffffffa6;letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;position:absolute;bottom:14px;right:18px}.app-card-body{padding:28px}.app-card-meta{color:var(--faint);letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;display:flex}.status{color:#b4dfc4;align-items:center;gap:7px;display:inline-flex}.status-dot{background:#75d69a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #75d69a8c}.app-card h3{letter-spacing:-.04em;margin-bottom:8px;font-size:31px;font-weight:560;line-height:1.1}.app-tagline{color:var(--card-accent);margin-bottom:20px;font-size:15px;line-height:1.45}.app-description{color:var(--muted);margin-bottom:24px;font-size:15px;line-height:1.65}.app-links{justify-content:space-between;align-items:center;gap:20px;margin-top:8px;display:flex}.source-link{min-height:44px;color:var(--muted);text-underline-offset:5px;align-items:center;font-size:13px;text-decoration:underline #41444c;display:inline-flex}.source-link:hover{color:var(--text)}.origin-section{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(60px,10vw,150px);display:grid}.origin-title h2{max-width:760px;font-size:clamp(40px,5vw,66px);line-height:1.06}.origin-title h2 em{color:var(--blue-light);font-style:normal}.origin-copy{align-self:end}.origin-copy p{color:var(--muted);font-size:16px;line-height:1.7}.origin-copy .text-link{margin-top:12px}.principles-section>.eyebrow{margin-bottom:48px}.principles-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;display:grid}.principles-grid article{border-top:1px solid #363941;padding-top:24px}.principle-number{color:var(--blue-light);margin-bottom:54px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;display:block}.principles-grid h3{letter-spacing:-.035em;margin-bottom:14px;font-size:23px;font-weight:560}.principles-grid p{color:var(--muted);margin:0;font-size:15px}.closing-section{border-top:1px solid var(--line);padding-top:100px;padding-bottom:120px}.closing-row{justify-content:space-between;align-items:center;gap:48px;display:flex}.round-link{color:#050505;background:var(--text);border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:8px;width:154px;height:154px;font-size:14px;font-weight:650;transition:transform .2s,background .2s;display:flex}.round-link span:last-child{font-size:24px}.round-link:hover{background:var(--blue-light);transform:rotate(-7deg)scale(1.04)}.site-footer{border-top:1px solid var(--line);background:#060708}.footer-grid{grid-template-columns:1fr auto 1fr;gap:48px;padding-top:64px;padding-bottom:64px;display:grid}.footer-wordmark{margin-bottom:18px}.footer-grid p{color:var(--faint);margin:0;font-size:13px}.footer-links{align-items:start;gap:28px;display:flex}.footer-links a{min-height:44px;color:var(--muted);font-size:13px}.footer-links a:hover{color:var(--text)}.footer-note{text-align:right;justify-self:end}.footer-bottom{border-top:1px solid var(--line);color:var(--faint);letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;display:flex}.page-hero{padding-top:112px;padding-bottom:100px}.page-hero h1{margin-bottom:42px;font-size:clamp(54px,8vw,104px)}.page-hero>p:last-child{max-width:600px;color:var(--muted);margin:0;font-size:20px}.catalog-section{padding-top:40px}.catalog-toolbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px;display:flex}.filters{flex-wrap:wrap;gap:8px;display:flex}.filter-button{border:1px solid var(--line);min-height:44px;color:var(--muted);cursor:pointer;text-transform:capitalize;background:0 0;border-radius:100px;padding:8px 15px;font-size:12px}.filter-button span{color:var(--faint);margin-left:7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.filter-button:hover{color:var(--text);border-color:#4a4d56}.filter-button[aria-pressed=true]{border-color:var(--text);color:#08090b;background:var(--text)}.filter-button[aria-pressed=true] span{color:#45484f}.filter-status{color:var(--faint);flex:none;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.catalog-grid{row-gap:36px}.empty-state{border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);text-align:center;padding:48px}.catalog-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;margin-bottom:112px;padding:32px 0;display:flex}.catalog-note p{letter-spacing:-.02em;margin:0;font-size:20px}.resume{padding-top:96px;padding-bottom:80px}.resume-header{justify-content:space-between;align-items:end;gap:48px;display:flex}.resume-header .eyebrow{margin-bottom:24px}.resume-header h1{letter-spacing:-.07em;margin-bottom:12px;font-size:clamp(58px,8vw,100px);font-weight:520;line-height:.95}.resume-label{color:var(--blue-light);margin:0;font-size:21px}.resume-rule{background:var(--line);height:1px;margin:64px 0}.resume-section{border-bottom:1px solid var(--line);grid-template-columns:240px minmax(0,1fr);gap:48px;padding:48px 0;display:grid}.resume-section>h2{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:500}.resume-summary{letter-spacing:-.025em;max-width:800px;margin:0;font-size:clamp(22px,3vw,32px);line-height:1.45}.interest-list{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.interest-list li{border:1px solid var(--line);color:var(--muted);border-radius:100px;padding:10px 16px;font-size:14px}.project-list{gap:0;display:grid}.resume-project{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:32px;padding:30px 0;display:grid}.resume-project:first-child{padding-top:0}.resume-project:last-child{border-bottom:0;padding-bottom:0}.resume-project h3,.resume-entry h3{letter-spacing:-.03em;margin-bottom:8px;font-size:24px;font-weight:560}.resume-project p,.resume-entry p,.resume-contact p{max-width:700px;color:var(--muted);margin-bottom:12px;font-size:15px}.resume-project-type{color:var(--faint);text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.resume-entry{margin-bottom:32px}.resume-entry-heading{justify-content:space-between;gap:24px;display:flex}.resume-company{color:var(--text)!important}.resume-contact{border-bottom:0}.not-found{flex-direction:column;justify-content:center;min-height:70vh;padding-top:80px;padding-bottom:100px;display:flex}.not-found h1{margin-bottom:32px}.not-found>p:not(.eyebrow){max-width:520px;color:var(--muted);margin-bottom:32px;font-size:19px}@media (width<=900px){.hero-bottom{grid-template-columns:1fr;gap:32px}.origin-section{grid-template-columns:1fr;gap:40px}.origin-copy{max-width:620px}.principles-grid{gap:24px}.resume-header{flex-direction:column;align-items:start}.resume-section{grid-template-columns:180px minmax(0,1fr);gap:32px}.footer-grid{grid-template-columns:1fr 1fr}.footer-note{display:none}}@media (width<=700px){.shell{width:min(calc(100% - 36px), var(--shell))}.header-inner{gap:12px;min-height:76px}.wordmark{font-size:21px}.site-nav{gap:0}.site-nav a{padding-inline:10px;font-size:12px}.site-nav .nav-github{margin-left:2px}.hero{padding-top:72px}.hero h1,.page-hero h1,.not-found h1{letter-spacing:-.065em;margin-bottom:36px;font-size:clamp(47px,14.5vw,72px);line-height:.94}.hero-intro{font-size:18px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.hero-footnote{margin-top:56px}.section{padding-top:72px;padding-bottom:72px}.section-heading{flex-direction:column;align-items:start;margin-bottom:32px}.section-heading .section-link{align-self:flex-start}.app-grid,.principles-grid{grid-template-columns:1fr}.app-art{height:210px}.app-card-body{padding:23px}.app-card h3{font-size:28px}.principles-grid{gap:40px}.principle-number{margin-bottom:28px}.closing-section{padding-top:72px;padding-bottom:80px}.closing-row{flex-direction:column;align-items:start}.round-link{align-self:flex-end;width:130px;height:130px}.footer-grid{grid-template-columns:1fr;gap:24px;padding-top:48px;padding-bottom:40px}.footer-links{flex-wrap:wrap}.footer-bottom{flex-direction:column;align-items:start;gap:8px}.page-hero{padding-top:72px;padding-bottom:72px}.page-hero>p:last-child{font-size:18px}.catalog-toolbar{flex-direction:column;align-items:start}.catalog-note{flex-direction:column;align-items:start;margin-bottom:72px}.resume{padding-top:64px}.resume-header{gap:32px}.resume-actions{width:100%}.resume-actions .button{flex:1}.resume-rule{margin:48px 0 20px}.resume-section{grid-template-columns:1fr;gap:24px;padding:36px 0}.resume-summary{font-size:22px}.resume-project{grid-template-columns:1fr;gap:8px}}@media (width<=390px){.site-nav a:not(.nav-github){padding-inline:7px}.site-nav .nav-github{font-size:0}.site-nav .nav-github span{font-size:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{@page{margin:16mm}:root,body{color:#111;background:#fff}.site-header,.site-footer,.resume-actions,.eyebrow{display:none!important}.resume{width:100%;padding:0}.resume-header h1{font-size:48pt}.resume-label,.resume-section>h2,.resume-project p,.resume-entry p,.resume-contact p,.interest-list li,.resume-project-type{color:#333}.resume-rule{background:#bbb;margin:24px 0 0}.resume-section{break-inside:avoid;border-color:#ccc;grid-template-columns:130px 1fr;gap:24px;padding:22px 0}.resume-summary{font-size:16pt}.interest-list li{border-color:#aaa;padding:4px 9px}.resume-project{break-inside:avoid;border-color:#ddd;padding:16px 0}.text-link{color:#111;text-decoration-color:#777}}
