:root{--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--page-max: 960px;--page-gutter: 22px;--grid-gap: 32px;--date-col: 136px;--measure: 66ch;--measure-tight: 58ch}html[data-theme=light]{color-scheme:light;--bg: #fafafa;--text: #111111;--color-accent: #111111;--muted: #5f5f5f;--faint: #8b8b8b;--line: #d9d9d9;--line-soft: #ededed;--surface: #ffffff;--panel: #ffffff;--prose: #2d2d2d}html[data-theme=dark]{color-scheme:dark;--bg: #0d0d0d;--text: #f0f0f0;--color-accent: #f0f0f0;--muted: #9a9a9a;--faint: #727272;--line: #2d2d2d;--line-soft: #181818;--surface: #151515;--panel: #111111;--prose: #d0d0d0}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh}a{color:inherit;text-decoration-color:var(--line);text-underline-offset:.2em}a:hover{text-decoration-color:var(--text)}p,h1,h2,h3{margin:0}ul,ol{margin:0;padding-left:1.15rem}code{border:1px solid var(--line);border-radius:4px;background:var(--surface);font-family:var(--mono);font-size:.88em;padding:.1em .3em}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);clip-path:inset(50%);overflow:hidden;white-space:nowrap}.site-shell{width:min(calc(100% - var(--page-gutter) * 2),var(--page-max));min-height:100vh;margin:0 auto;padding:24px 0 76px;display:flex;flex-direction:column}.site-header{display:grid;align-items:center;grid-template-columns:minmax(11rem,1fr) auto minmax(11rem,1fr);gap:var(--grid-gap);border-bottom:1px solid var(--line);padding-bottom:16px;font-family:var(--sans);font-size:.8125rem;font-weight:520;letter-spacing:0;line-height:1.3;text-transform:uppercase}.site-mark,.site-nav a,.site-menu-toggle,.theme-toggle{text-decoration:none}.site-mark,.site-nav a{display:inline-block;white-space:nowrap}.site-nav a[data-hover-roll-ready=true]{font-variant-numeric:tabular-nums;overflow:hidden}.site-mark{color:var(--text);justify-self:start;position:relative;z-index:3;font-weight:inherit}.site-menu{display:contents}.site-menu-toggle{display:none}.site-nav{display:flex;align-items:center;justify-content:center;justify-self:center;gap:20px;color:var(--muted)}.site-nav a[aria-current=page]{color:var(--color-accent);text-decoration-color:var(--color-accent)}.site-nav a:focus-visible{border-radius:2px;outline:1px solid var(--color-accent);outline-offset:4px}.site-nav a.site-nav-external{display:inline-flex;align-items:baseline;gap:.2em;justify-self:start}.site-nav a.site-nav-external[data-hover-roll-ready=true]{overflow:visible}.site-nav [data-hover-roll-text]{display:inline-block;overflow:hidden;white-space:nowrap}.site-nav-arrow{display:inline-block;font-size:1em;line-height:1;transform:translateY(.04em);transition:transform .18s ease}.site-nav a.site-nav-external:hover .site-nav-arrow{transform:translateY(-.08em)}.site-controls{display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:14px;min-width:0;color:var(--muted)}.site-location{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-toggle{display:grid;width:20px;height:20px;place-items:center;border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;padding:0;transition:color .16s ease,opacity .16s ease}.theme-toggle-icon{position:relative;width:16px;height:16px;border-radius:999px;background:radial-gradient(circle at 50% 50%,transparent 0 0),var(--text);flex:0 0 auto;overflow:hidden;transition:background-color .18s ease,background-position .18s ease,background-size .18s ease,box-shadow .18s ease,transform .18s ease}.theme-toggle-icon:before,.theme-toggle-icon:after{position:absolute;background:var(--bg);content:"";opacity:0;transition:background-color .18s ease,opacity .18s ease,transform .18s ease}.theme-toggle-icon:before{inset:0;border-radius:inherit;transform:translate(42%)}.theme-toggle-icon:after{inset:1.5px 1.5px 1.5px 50%;border-radius:0 999px 999px 0;transition:background-color .18s ease,opacity .18s ease,transform .18s ease}html[data-theme-source=system] .theme-toggle-icon{box-shadow:inset 0 0 0 1.5px var(--text)}html[data-theme-source=system] .theme-toggle-icon:after{opacity:1}html[data-theme=dark][data-theme-source=manual] .theme-toggle-icon{background:radial-gradient(circle at 68% 26%,var(--bg) 0 41%,transparent 42%),var(--text);box-shadow:none}html[data-theme=dark][data-theme-source=manual] .theme-toggle-icon:before{opacity:0}.theme-toggle:hover{color:var(--text);opacity:.78}.theme-toggle:focus-visible{outline:0}.theme-toggle:focus-visible .theme-toggle-icon{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--text)}main{flex:1;padding-top:72px}.site-footer{margin-top:72px;border-top:1px solid var(--line-soft);padding-top:16px;color:var(--faint);display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:var(--sans);font-size:.8125rem;font-weight:520;letter-spacing:0;line-height:1.3}.site-footer-copy{color:var(--faint)}.hero{max-width:880px;padding-bottom:64px}.eyebrow,.section-label,.meta-line,.note-status{color:var(--muted);font-family:var(--mono);font-size:.75rem;line-height:1.35;letter-spacing:0;text-transform:uppercase}.eyebrow{margin-bottom:16px}h1{max-width:880px;font-size:5rem;font-weight:620;letter-spacing:0;line-height:1}h2{font-size:1.375rem;font-weight:600;letter-spacing:0;line-height:1.22}h3{font-size:1rem;font-weight:650;line-height:1.32}.section-label{margin-bottom:18px}.section-header{display:grid;align-items:end;grid-template-columns:var(--date-col) minmax(0,1fr);gap:var(--grid-gap);border-bottom:1px solid var(--line);padding-bottom:16px}.section-header .section-label{margin:0}.section-header h2{color:var(--muted);font-family:var(--mono);font-size:.75rem;font-weight:520;letter-spacing:0;line-height:1.35;text-transform:uppercase}.note-list{border-bottom:1px solid var(--line)}.note-row{display:grid;align-items:start;grid-template-columns:var(--date-col) minmax(0,1fr);gap:var(--grid-gap);border-top:1px solid var(--line);padding:21px 0 22px;text-decoration:none}.note-row strong,.note-row small{display:block}.note-row strong{font-size:1.0625rem;font-weight:600;line-height:1.28}.note-row small{max-width:var(--measure-tight);margin-top:6px;color:var(--muted);font-size:.9375rem;line-height:1.45}.note-row time{color:var(--faint);font-family:var(--mono);font-size:.75rem;line-height:1.35;padding-top:.15rem;white-space:nowrap}.page-head{max-width:var(--measure);margin-bottom:52px}.page-head h1{margin-top:12px;font-size:4rem;line-height:1.03}.page-head p{max-width:var(--measure-tight);margin-top:16px;color:var(--muted);font-size:1rem;line-height:1.55}.prose{max-width:var(--measure);font-size:1rem;line-height:1.65}.prose>*+*{margin-top:1rem}.prose h2{margin-top:2.2rem;border-top:1px solid var(--line);padding-top:1rem;font-size:1.32rem;line-height:1.25}.prose h3{margin-top:2rem}.prose p,.prose li{color:var(--prose)}.prose a{text-decoration-thickness:1px}.prose hr{border:0;border-top:1px solid var(--line);margin:2rem 0}.note-header{max-width:var(--measure);margin-bottom:48px}.note-header h1{margin-top:14px;font-size:4rem;line-height:1.03}.note-header p{max-width:var(--measure-tight);margin-top:18px;color:var(--muted);font-size:1.04rem;line-height:1.55}.meta-line{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.contact-stack{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;border-top:1px solid var(--line);padding-top:36px}.profile-block{margin:0}.profile-media{width:100%;max-width:280px;aspect-ratio:1787 / 2274;border:1px solid var(--line);overflow:hidden}.profile-media img{display:block;width:100%;height:100%;object-fit:cover}.contact-head h1{font-size:3.5rem;line-height:1.05}.contact-details{display:grid;gap:28px}.contact-list,.social-list{display:grid;gap:8px;color:var(--prose);line-height:1.55}.contact-list a{font-family:var(--mono);font-size:.875rem}.social-list{align-content:start;font-family:var(--mono);font-size:.75rem;text-transform:uppercase}@media(max-width:900px){h1{font-size:4.25rem}.page-head h1,.note-header h1{font-size:3.35rem}.contact-head h1{font-size:3rem}}@media(max-width:720px){:root{--page-gutter: 16px;--grid-gap: 18px}html[data-menu-open=true],html[data-menu-open=true] body{overflow:hidden}.site-shell{padding-top:18px}.site-header{align-items:center;grid-template-columns:minmax(0,1fr) auto;position:relative;z-index:4}.site-menu-toggle{position:relative;z-index:3;display:grid;width:28px;height:20px;align-content:center;justify-self:end;gap:5px;border:0;background:transparent;color:var(--text);cursor:pointer;padding:0}.site-menu-toggle span{display:block;width:100%;height:2px;background:currentColor;transform-origin:center;transition:opacity .18s ease,transform .18s ease}.site-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.site-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.site-menu{position:fixed;inset:0;z-index:2;display:grid;align-content:end;gap:22px;background:var(--bg);opacity:0;padding:96px var(--page-gutter) 30px;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;visibility:hidden}html[data-menu-open=true] .site-menu{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.section-header{align-items:flex-start;grid-template-columns:1fr;gap:6px}.site-nav{display:grid;gap:4px;justify-content:start;justify-self:start;color:var(--text);font-size:clamp(2.85rem,15vw,4.8rem);font-weight:620;letter-spacing:0;line-height:.95}.site-nav a[data-hover-roll-ready=true],.site-nav [data-hover-roll-text]{overflow:visible;width:auto!important}.site-controls{display:flex;align-items:center;justify-content:flex-start;justify-self:start;gap:16px;color:var(--muted);font-size:.875rem;line-height:1.3}main{padding-top:48px}.hero{padding-bottom:48px}.hero h1{max-width:none;width:100%}h1{font-size:3.25rem;line-height:1.03}.page-head,.note-header{margin-bottom:40px}.page-head h1,.note-header h1{font-size:2.75rem}.contact-head h1{font-size:2.45rem}.contact-stack,.note-row{grid-template-columns:1fr}.contact-stack,.note-row{gap:8px}.note-row{padding:18px 0 19px}.note-row time{padding-top:0}.contact-stack{gap:28px;padding-top:28px}.profile-block{max-width:280px}}@media(max-width:560px){h1{font-size:2.5rem}.page-head h1,.note-header h1{font-size:2.35rem}.contact-head h1{font-size:2.1rem}}@media(max-width:420px){h1{font-size:2.35rem}.page-head h1,.note-header h1{font-size:2.05rem}.contact-head h1{font-size:1.9rem}}
