:root{--primary-color:#2563eb;--secondary-color:#1e40af;--accent-color:#60a5fa;--text-primary:#1f2937;--text-secondary:#6b7280;--background:#fff;--background-light:#f9fafb;--background-dark:#111827;--border-color:#e5e7eb;--shadow:0 4px 6px -1px #0f172a1a;--shadow-lg:0 24px 50px -20px #0f172a59;--radius-sm:.5rem;--radius-lg:1rem}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-width:320px;color:var(--text-primary);background:var(--background);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6}a{color:inherit}ul{list-style:none}:focus-visible{outline:3px solid var(--accent-color);outline-offset:3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.container{width:min(100% - 2.5rem,1200px);margin-inline:auto}.section{padding:6rem 0}.section-heading{max-width:680px;margin-bottom:3rem}.section-heading h2,.notes-layout h2{margin-bottom:.75rem;font-size:clamp(2rem,4vw,3rem);line-height:1.15}.section-heading p,.notes-layout>div>p{color:var(--text-secondary);font-size:1.125rem}@media (width<=640px){.container{width:min(100% - 2rem,1200px)}.section{padding:4rem 0}}.site-header{z-index:10;backdrop-filter:blur(12px);background:#fffffff2;border-bottom:1px solid #e5e7ebe6;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:1.5rem;min-height:72px;display:flex}.brand{color:var(--text-primary);align-items:center;gap:.75rem;font-size:1.125rem;font-weight:750;text-decoration:none;display:inline-flex}.brand-mark{width:2rem;height:2rem;box-shadow:var(--shadow);border-radius:.6rem;display:block}.nav-links{align-items:center;gap:1.75rem;display:flex}.nav-links a{color:var(--text-secondary);font-size:.95rem;font-weight:600;text-decoration:none}.nav-links a:hover{color:var(--primary-color)}.button-group{flex-wrap:wrap;gap:1rem;display:flex}.button{border-radius:var(--radius-sm);border:2px solid #0000;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.25rem;font-weight:700;text-decoration:none;transition:transform .16s,background-color .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--primary-color)}.button-primary:hover{background:var(--secondary-color)}.button-secondary{color:#fff;border-color:#ffffff8c}.button-secondary:hover{background:#ffffff14;border-color:#fff}.text-link{color:var(--primary-color);align-items:center;gap:.4rem;font-weight:700;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--secondary-color)}.site-footer{color:#d1d5db;background:var(--background-dark);padding:2rem 0}.footer-layout{justify-content:space-between;gap:1rem;display:flex}@media (width<=640px){.nav{align-items:flex-start;min-height:auto;padding:1rem 0}.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:.5rem 1rem}.footer-layout{flex-direction:column}}@media (width<=460px){.nav{flex-direction:column}.nav-links{justify-content:flex-start}}.hero{color:#fff;background:radial-gradient(circle at 85% 15%,#2563eb57,#0000 30rem),linear-gradient(135deg,#111827 0%,#1f2937 58%,#172554 100%);position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #60a5fa2e;border-radius:50%;width:30rem;height:30rem;position:absolute;bottom:-15rem;right:-10rem}.hero-layout{z-index:1;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(3rem,8vw,7rem);min-height:660px;padding-top:5rem;padding-bottom:5rem;display:grid;position:relative}.hero-copy h1{letter-spacing:-.055em;max-width:760px;margin-bottom:1.5rem;font-size:clamp(3rem,7vw,5.75rem);font-weight:800;line-height:.98}.hero-copy>p{color:#d1d5db;max-width:660px;margin-bottom:2.25rem;font-size:clamp(1.1rem,2vw,1.3rem)}.lab-window{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);backdrop-filter:blur(14px);background:#0f172ab8;border:1px solid #94a3b83d;overflow:hidden}.lab-window-bar{border-bottom:1px solid #94a3b82e;gap:.45rem;padding:1rem 1.25rem;display:flex}.lab-window-bar span{background:#475569;border-radius:50%;width:.7rem;height:.7rem}.lab-window-bar span:first-child{background:var(--accent-color)}.lab-window-content{padding:2rem}.lab-window-label,.project-type{color:var(--accent-color);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.78rem;font-weight:800}.lab-window-content li{color:#e5e7eb;border-bottom:1px solid #94a3b824;grid-template-columns:2rem 1fr;gap:.75rem;padding:1rem 0;display:grid}.lab-window-content li:last-child{border-bottom:0}.lab-window-content li span{color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.project-grid{grid-template-columns:1.25fr .75fr;gap:1.5rem;display:grid}.project-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--background-light);flex-direction:column;justify-content:space-between;gap:2rem;min-height:300px;padding:clamp(1.75rem,4vw,3rem);display:flex}.project-card-featured{background:#eff6ff;border-color:#bfdbfe}.project-card h3{margin-bottom:.75rem;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.1}.project-card p:not(.project-type){max-width:560px;color:var(--text-secondary);font-size:1.05rem}.notes-section{border-top:1px solid var(--border-color);background:var(--background-light)}.notes-layout{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(2.5rem,8vw,7rem);display:grid}.notes-panel{border-left:4px solid var(--primary-color);background:var(--background);box-shadow:var(--shadow);padding:clamp(1.75rem,4vw,3rem)}.notes-panel p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.075rem}.notes-page{align-items:flex-start;min-height:calc(100vh - 168px);display:flex}.notes-page-content{max-width:760px}.notes-page-content-wide{max-width:960px}.notes-page-content>h1{letter-spacing:-.045em;margin-bottom:1rem;font-size:clamp(2.75rem,7vw,5rem);line-height:1}.notes-page-intro{max-width:640px;color:var(--text-secondary);margin-bottom:2.5rem;font-size:1.2rem}.notes-page .notes-panel{margin-bottom:2rem}.notes-page .notes-panel h2{margin-bottom:.75rem;font-size:1.5rem}.eyebrow{color:var(--primary-color);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;font-size:.78rem;font-weight:800}.eyebrow a{text-decoration:none}.notes-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.notes-directory .notes-panel{flex-direction:column;align-items:flex-start;margin-bottom:0;display:flex}.notes-directory .notes-panel>p:not(.note-date){flex:1}.notes-directory h2 a,.note-card h2 a{text-decoration:none}.notes-back-link{margin-top:2.5rem}.note-list{gap:1.25rem;display:grid}.note-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--background);box-shadow:var(--shadow);padding:clamp(1.5rem,4vw,2.25rem)}.note-card h2{margin-bottom:.5rem;font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.2}.note-card>p:not(.note-date){color:var(--text-secondary)}.note-date{color:var(--text-secondary);margin-bottom:.55rem;font-size:.85rem;font-weight:650}.tag-list{flex-wrap:wrap;gap:.5rem;margin-top:1.1rem;display:flex}.tag-list li{color:var(--secondary-color);background:#dbeafe;border-radius:999px;padding:.25rem .6rem;font-size:.78rem;font-weight:700}.note-page{background:var(--background-light)}.note-article{max-width:760px}.note-header{border-bottom:1px solid var(--border-color);margin-bottom:3rem;padding-bottom:2rem}.note-header h1{letter-spacing:-.045em;margin-bottom:1rem;font-size:clamp(2.75rem,8vw,5rem);line-height:1}.note-summary{max-width:660px;color:var(--text-secondary);margin-bottom:1rem;font-size:1.2rem}.prose{color:var(--text-primary);font-size:1.075rem}.prose>*+*{margin-top:1.25rem}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{margin-top:2.25rem;line-height:1.2}.prose h1{font-size:2rem}.prose h2{font-size:1.65rem}.prose h3{font-size:1.35rem}.prose a{color:var(--primary-color);text-underline-offset:.18em}.prose ul,.prose ol{padding-left:1.5rem}.prose ul{list-style:outside}.prose li+li{margin-top:.4rem}.prose blockquote{border-left:4px solid var(--accent-color);color:var(--text-secondary);padding-left:1.25rem}.prose code{background:#e5e7eb;border-radius:.25rem;padding:.1rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.prose pre{border-radius:var(--radius-sm);color:#e5e7eb;background:var(--background-dark);padding:1rem;overflow-x:auto}.prose pre code{color:inherit;background:0 0;padding:0}.empty-state{border:1px dashed var(--border-color);color:var(--text-secondary);text-align:center;padding:2rem}@media (width<=820px){.hero-layout,.project-grid,.notes-layout,.notes-directory{grid-template-columns:1fr}.hero-layout{min-height:auto}.lab-window{max-width:620px}}@media (width<=640px){.hero-layout{gap:3rem;padding-top:4rem;padding-bottom:4rem}.hero-copy h1{font-size:clamp(2.75rem,14vw,4rem)}.button{width:100%}.notes-page{min-height:auto}}
