@font-face{font-family:Roboto Mono;src:url(/fonts/roboto-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Inria Serif";src:url(/fonts/inria-serif-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Inria Serif";src:url(/fonts/inria-serif-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--bg: #f8f9fa;--surface: #ffffff;--alt: #e9ecef;--text: #212529;--text-body: #343a40;--text-muted: #495057;--accent: #2d6a4f;--accent-hover: #40916c;--border: #ced4da;--font-heading: "Roboto Mono", ui-monospace, monospace;--font-body: "Inria Serif", Georgia, serif;--s1: 8px;--s2: 16px;--s3: 24px;--s4: 32px;--s5: 48px;--s6: 64px;--s7: 96px;--step-hero: clamp(1.75rem, 1.1rem + 2.6vw, 3rem);--step-h2: clamp(1.1rem, .95rem + .7vw, 1.4rem);--step-body: clamp(.98rem, .95rem + .15vw, 1.05rem);--step-small: .82rem;--step-label: .68rem;--rail: 300px;--measure: 62ch}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text-body);font-family:var(--font-body);font-size:var(--step-body);line-height:1.7;text-rendering:optimizeLegibility}h1,h2,h3,nav,.label,.mono{font-family:var(--font-heading);color:var(--text);font-weight:400;letter-spacing:-.02em}h1{font-size:var(--step-hero);line-height:1.2;margin:0 0 var(--s3)}h2{font-size:var(--step-h2);line-height:1.35;margin:var(--s5) 0 var(--s2)}h3{font-size:var(--step-body);margin:var(--s4) 0 var(--s1)}p{margin:0 0 var(--s2);max-width:var(--measure)}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover,a:focus-visible{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.label{font-size:var(--step-label);letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.rule{height:1px;background:var(--border);border:0;margin:var(--s4) 0}img{max-width:100%;height:auto}a,button{min-height:44px;display:inline-flex;align-items:center}p a,li a{min-height:0;display:inline}.email-reveal[data-astro-cid-l5jotwmk]{font-family:var(--font-heading);font-size:var(--step-small);word-break:break-all}.rail[data-astro-cid-csby2m2u]{display:flex;flex-direction:column;gap:var(--s3)}.rail-name[data-astro-cid-csby2m2u]{font-family:var(--font-heading);font-size:var(--step-h2);color:var(--text);text-decoration:none;display:block}.rail-role[data-astro-cid-csby2m2u]{margin:var(--s1) 0 0}.rail-nav[data-astro-cid-csby2m2u]{display:flex;flex-direction:column}.rail-nav[data-astro-cid-csby2m2u] a[data-astro-cid-csby2m2u]{font-family:var(--font-heading);font-size:var(--step-small);text-decoration:none;padding:var(--s1) 0}.rail-nav[data-astro-cid-csby2m2u] a[data-astro-cid-csby2m2u]:hover{text-decoration:underline}.rail-links[data-astro-cid-csby2m2u]{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s1)}.rail-links[data-astro-cid-csby2m2u] a[data-astro-cid-csby2m2u]{font-family:var(--font-heading);font-size:var(--step-small)}.rail[data-astro-cid-csby2m2u] .rule[data-astro-cid-csby2m2u]{margin:var(--s2) 0}@media(max-width:1023px){.rail[data-astro-cid-csby2m2u]{gap:var(--s2)}.rail-nav[data-astro-cid-csby2m2u]{flex-direction:row;gap:var(--s3);flex-wrap:wrap}.rail-contact[data-astro-cid-csby2m2u] .email-reveal,.rail-contact[data-astro-cid-csby2m2u] .rule[data-astro-cid-csby2m2u]{display:none}}.skip[data-astro-cid-5hce7sga]{position:absolute;left:-9999px;background:var(--surface);border:1px solid var(--border);padding:var(--s1) var(--s2);font-family:var(--font-heading);font-size:var(--step-small)}.skip[data-astro-cid-5hce7sga]:focus-visible{left:var(--s3);top:var(--s3);z-index:1}.shell[data-astro-cid-5hce7sga]{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);gap:var(--s6);max-width:1180px;margin:0 auto;padding:var(--s6) var(--s4)}.shell[data-astro-cid-5hce7sga]>.rail{position:sticky;top:var(--s6);align-self:start}.foot[data-astro-cid-5hce7sga]{max-width:1180px;margin:0 auto;padding:0 var(--s4) var(--s6)}.foot[data-astro-cid-5hce7sga] p[data-astro-cid-5hce7sga]{margin:0 0 var(--s1)}@media(max-width:1023px){.shell[data-astro-cid-5hce7sga]{grid-template-columns:minmax(0,1fr);gap:var(--s4);padding:var(--s4) var(--s3)}.shell[data-astro-cid-5hce7sga]>.rail{position:static}.foot[data-astro-cid-5hce7sga]{padding:0 var(--s3) var(--s5)}}
