﻿*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-text);font-size:var(--size-body);line-height:var(--leading-body);font-variant-numeric:oldstyle-nums proportional-nums;font-kerning:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;counter-reset:sidenote}::selection{background:var(--color-selection)}img,svg,video{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-1)}.skip-link{position:absolute;left:var(--page-pad);top:-10rem;padding:var(--space-2) var(--space-3);background:var(--color-bg);color:var(--color-text);font:var(--size-meta)/1 var(--font-mono);letter-spacing:var(--tracking-meta);text-transform:uppercase;z-index:10}.skip-link:focus{top:var(--space-2)}.visually-hidden{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.page{max-width:calc(var(--measure) + 2*var(--page-pad));margin:0 auto;padding:0 var(--page-pad)}@media (min-width: 60em){.page{max-width:calc(var(--measure) + var(--margin-gap) + var(--margin-col) + 2*var(--page-pad))}}main{display:block;padding-bottom:var(--space-8)}main>*,.prose>*{max-width:var(--measure)}main>.wide,.prose>.wide{max-width:none}.site-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2) var(--space-5);padding:var(--space-5) 0 var(--space-3);margin-bottom:var(--space-7);border-bottom:var(--rule-width) solid var(--color-rule)}.site-name{font-weight:var(--weight-strong);text-decoration:none;color:var(--color-text)}.site-nav{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-5);margin:0;padding:0;list-style:none}.site-nav a,.theme-toggle{font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-muted);text-decoration:none}.site-nav a:hover{color:var(--color-text)}.site-nav a[aria-current=page]{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.35em;text-decoration-thickness:1px}.theme-toggle{background:none;border:0;padding:0;cursor:pointer}.theme-toggle:hover{color:var(--color-text)}.theme-toggle[hidden]{display:none}.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-5);padding:var(--space-4) 0 var(--space-6);border-top:var(--rule-width) solid var(--color-rule);font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint)}.site-footer a{color:inherit}h1,h2,h3,h4{font-weight:var(--weight-strong);line-height:var(--leading-tight);margin:0;text-wrap:balance;font-variant-numeric:lining-nums}h1{font-size:var(--size-h1);margin-bottom:var(--space-3);letter-spacing:-.01em}h2{font-size:var(--size-h2);margin:var(--space-7) 0 var(--space-3)}h3{font-size:var(--size-h3);margin:var(--space-6) 0 var(--space-2)}h4{font-size:var(--size-body);font-style:italic;font-weight:var(--weight-regular);margin:var(--space-5) 0 var(--space-1)}p,ul,ol,dl,pre,blockquote,figure,.table-wrap{margin:0 0 var(--space-4)}ul,ol{padding-left:1.4em}li+li{margin-top:var(--space-1)}hr{border:0;border-top:var(--rule-width) solid var(--color-rule);margin:var(--space-7) 0}strong,b{font-weight:var(--weight-strong)}small{font-size:var(--size-small)}abbr[title]{text-decoration:none;font-variant:all-small-caps;letter-spacing:.03em}.lede{font-size:var(--size-h3);line-height:1.5;color:var(--color-text-muted)}.meta{font-family:var(--font-mono);font-size:var(--size-meta);line-height:var(--leading-small);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint);font-variant-numeric:tabular-nums}.meta>*+*::before{content:"·";margin:0 .6em}.meta-list{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}.meta-list li+li{margin-top:0}a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-color:var(--color-link-line);transition:text-decoration-color 120ms ease}a:hover{text-decoration-color:var(--color-accent)}@media (prefers-reduced-motion: reduce){a{transition:none}}a[href^=http]:not([href^="https://leopinero.com"]):not([href$=".pdf"]):not([href^="https://doi.org/"]):not(.no-marker)::after{content:"";display:inline-block;width:.55em;height:.55em;margin-left:.18em;vertical-align:.3em;background-color:currentColor;opacity:.6;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 1h7v7M9 1 1 9' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 1h7v7M9 1 1 9' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E") center/contain no-repeat}a[href$=".pdf"]:not(.no-marker)::after,a[href^="https://doi.org/"]:not(.no-marker)::after{font-family:var(--font-mono);font-size:.62em;letter-spacing:var(--tracking-meta);margin-left:.35em;color:var(--color-text-faint);vertical-align:.15em;text-decoration:none;display:inline-block}a[href$=".pdf"]:not(.no-marker)::after{content:"PDF"}a[href^="https://doi.org/"]:not(.no-marker)::after{content:"DOI"}code,kbd,samp,pre{font-family:var(--font-mono);font-size:var(--size-code);font-variant-numeric:tabular-nums}:not(pre)>code{background:var(--color-bg-alt);padding:.1em .3em;border-radius:var(--radius-1)}pre{background:var(--color-bg-alt);padding:var(--space-4);border-radius:var(--radius-1);overflow-x:auto;line-height:1.55;tab-size:4}pre code{background:none;padding:0;font-size:inherit}pre .z-comment,pre .comment{color:var(--color-text-faint);font-style:normal}pre .z-keyword,pre .keyword{color:var(--color-text);font-weight:var(--weight-regular)}pre .z-string,pre .string{color:var(--color-text-muted)}blockquote{margin-left:0;padding-left:var(--space-4);border-left:var(--rule-width) solid var(--color-text-faint);color:var(--color-text-muted)}blockquote p:last-child{margin-bottom:0}blockquote footer{display:block;margin-top:var(--space-2);font-style:normal;font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint)}blockquote cite{font-style:normal}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--size-small);font-variant-numeric:lining-nums tabular-nums}caption{caption-side:top;text-align:left;padding-bottom:var(--space-2);font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint)}th,td{text-align:left;padding:var(--space-2) var(--space-4) var(--space-2) 0;vertical-align:baseline;border-bottom:var(--rule-width) solid var(--color-rule)}th{font-weight:var(--weight-strong);border-bottom-color:var(--color-text)}th:last-child,td:last-child{padding-right:0}.num{text-align:right}.fig{margin:var(--space-6) 0}.fig img,.fig svg{width:100%}.fig-scroll{overflow-x:auto}.fig-scroll>svg{min-width:var(--figure-min)}.fig figcaption{margin-top:var(--space-2);font-size:var(--size-small);line-height:var(--leading-small);color:var(--color-text-muted)}.fig-label{font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint);margin-right:.5em}.drawing{color:var(--color-text)}.drawing .ink{stroke:currentColor;fill:none}.drawing .ink-faint{stroke:var(--color-text-faint);fill:none}.drawing .ink-accent{stroke:var(--color-accent);fill:none}.drawing .dot{fill:currentColor}.drawing text{fill:var(--color-text-faint);font-family:var(--font-mono);letter-spacing:.04em}@media (min-width: 60em){.fig.wide{width:calc(var(--measure) + var(--margin-gap) + var(--margin-col))}}.sn-ref{counter-increment:sidenote;cursor:pointer}.sn-ref::after{content:counter(sidenote);font-family:var(--font-mono);font-size:.62em;vertical-align:.55em;line-height:0;margin-left:.1em;padding:0 .1em;color:var(--color-accent)}.sn-toggle{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.sn:has(.sn-toggle:focus-visible) .sn-ref::after{outline:2px solid var(--color-focus);outline-offset:2px}.sn-body{display:none;font-size:var(--size-small);line-height:var(--leading-small);color:var(--color-text-muted);font-variant-numeric:oldstyle-nums}.sn-body::before{content:counter(sidenote) " ";font-family:var(--font-mono);font-size:.8em;color:var(--color-text-faint)}.sn-toggle:checked+.sn-body{display:block;margin:var(--space-2) 0 var(--space-3) var(--space-4);padding-left:var(--space-3);border-left:var(--rule-width) solid var(--color-rule)}@media (min-width: 60em){.sn-ref{cursor:default}.sn-body,.sn-toggle:checked+.sn-body{display:block;float:right;clear:right;width:var(--margin-col);margin:.3em calc(-1*(var(--margin-col) + var(--margin-gap))) var(--space-4) 0;padding:0;border:0}}.article-head{margin-bottom:var(--space-6)}.article-head .meta{margin-top:var(--space-2)}.home{display:grid;gap:var(--space-5)}.home-name{font-size:var(--size-name);margin:0}.home-bio p:last-child{margin-bottom:0}.home-photo{margin:0}.home-photo img{width:100%;max-width:var(--photo-max);aspect-ratio:3/4;object-fit:cover}.home-photo figcaption{margin-top:var(--space-2)}.link-list{list-style:none;padding:0;margin:0;border-top:var(--rule-width) solid var(--color-rule)}.link-list li{display:grid;grid-template-columns:1fr;align-items:baseline;margin:0;padding:var(--space-2) 0;border-bottom:var(--rule-width) solid var(--color-rule)}@media (min-width: 40em){.link-list li{grid-template-columns:var(--col-label) 1fr;gap:var(--space-4)}}.link-list .meta{margin:0}.link-list a{overflow-wrap:anywhere}@media (min-width: 60em){.home{grid-template-columns:var(--measure) var(--margin-col);column-gap:var(--margin-gap);max-width:none;align-items:start}.home>:not(.home-photo){grid-column:1}.home-photo{grid-column:2;grid-row:1/span 4}.home-photo img{max-width:none}}.doc-index{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-5);margin:0 0 var(--space-6);padding:0;list-style:none}.doc-index li{margin:0}.doc-index a{font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-muted)}.doc-index .count,.doc-group .count{color:var(--color-text-faint);margin-left:.4em;font-family:var(--font-mono);font-size:var(--size-meta);font-weight:var(--weight-regular);letter-spacing:var(--tracking-meta)}.doc-group{scroll-margin-top:var(--space-5)}.doc-group h2{margin-top:var(--space-6);padding-bottom:var(--space-2);border-bottom:var(--rule-width) solid var(--color-text)}main>.doc-group{max-width:none}.doc-list{list-style:none;margin:0;padding:0}.doc{margin:0;padding:var(--space-3) 0;border-bottom:var(--rule-width) solid var(--color-rule);display:grid;grid-template-columns:1fr;gap:var(--space-1)}.doc-title{font-weight:var(--weight-strong);line-height:1.35;margin:0;font-size:var(--size-body)}.doc-desc{color:var(--color-text-muted);margin:0;line-height:1.45}.doc-date,.doc-meta{margin:0}@media (min-width: 40em){.doc{grid-template-columns:var(--col-date) 1fr;column-gap:var(--space-5)}.doc-date{grid-row:1/span 3;padding-top:.32em}}@media (min-width: 60em){.doc{grid-template-columns:var(--col-date) minmax(0, 1fr) var(--col-doc-meta)}.doc-date{grid-row:1/span 2}.doc-meta{grid-column:3;grid-row:1/span 2;text-align:right;padding-top:.32em}.doc-meta.meta-list{display:block}.doc-meta.meta-list>li{display:block}.doc-meta.meta-list>li::before{content:none}}.provenance{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border:var(--rule-width) solid var(--color-text);background:var(--color-bg-alt)}.provenance-label{margin:0 0 var(--space-1);font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text);line-height:var(--leading-small)}.provenance p:not(.provenance-label){margin:0;font-size:var(--size-small);line-height:var(--leading-small)}.article-facts{display:grid;grid-template-columns:max-content minmax(0, 1fr);gap:var(--space-1) var(--space-4);margin:0 0 var(--space-6);padding:var(--space-3) 0;border-top:var(--rule-width) solid var(--color-rule);border-bottom:var(--rule-width) solid var(--color-rule);font-size:var(--size-small);line-height:var(--leading-small)}.article-facts dt{font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint);padding-top:.15em}.article-facts dd{margin:0}.tag{display:inline-block;padding:.2em .45em .15em;line-height:1.2;border:var(--rule-width) solid currentColor;font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap}.tag--llm{color:var(--color-text)}.reply{margin-top:var(--space-7);padding-top:var(--space-3);border-top:var(--rule-width) solid var(--color-rule);font-size:var(--size-small);color:var(--color-text-muted)}a.email:not([href]){text-decoration:none}.notfound-code{font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-text-faint);margin-bottom:var(--space-2)}@media print{.site-nav,.theme-toggle,.skip-link{display:none}body{background:#fff;color:#000}.sn-body{display:block;float:none;width:auto;margin:var(--space-2) 0}a[href^=http]::after{content:" (" attr(href) ")";-webkit-mask:none;mask:none;background:none;width:auto;height:auto;font-size:.8em;opacity:1}}html{overflow-x:clip}body{position:relative;isolation:isolate}.bg-art{position:absolute;z-index:-1;pointer-events:none;background-color:var(--color-rule)}.bg-contours{inset:0 0 auto 0;height:46rem;-webkit-mask:url("/img/bg/contours.svg") center top/max(100rem,100%) auto no-repeat,linear-gradient(#000 35%, rgba(0,0,0,0) 95%);-webkit-mask-composite:source-in;mask:url("/img/bg/contours.svg") center top/max(100rem,100%) auto no-repeat,linear-gradient(#000 35%, rgba(0,0,0,0) 95%);mask-composite:intersect}.bg-pattern{top:0;right:0;width:34rem;height:37rem;-webkit-mask:url("/img/bg/pattern.svg") 0 -9rem/46rem 46rem no-repeat;mask:url("/img/bg/pattern.svg") 0 -9rem/46rem 46rem no-repeat}@media (max-width: 40em){.bg-pattern{width:16rem;height:18rem;-webkit-mask-position:0 -6rem;mask-position:0 -6rem;-webkit-mask-size:26rem 26rem;mask-size:26rem 26rem}}.horizon{position:relative;height:11rem;margin:var(--space-7) calc(50% - 50vw) calc(-1*var(--space-4));width:100vw;background-color:var(--color-rule);pointer-events:none;-webkit-mask:url("/img/bg/sightline.svg") center bottom/auto 100% no-repeat;mask:url("/img/bg/sightline.svg") center bottom/auto 100% no-repeat}@media (min-width: 60em){.horizon{height:15rem}}.photo-strip{margin-top:var(--space-6)}main>.photo-strip,.home>.photo-strip{max-width:none}.photo-strip-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-2)}.photo-strip-head h2{margin:0;font-variant-caps:normal}.photo-strip ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--space-2)}@media (min-width: 40em){.photo-strip ul{grid-template-columns:repeat(4, 1fr)}}.photo-strip li{margin:0}.photo-strip a{display:block}.photo-strip img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}@media (min-width: 60em){.home>.photo-strip{grid-column:1/-1}}.sheet{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:var(--space-6) var(--space-5);align-items:start}main>.sheet{max-width:none}@media (min-width: 40em){.sheet{grid-template-columns:repeat(2, 1fr)}}@media (min-width: 60em){.sheet{grid-template-columns:repeat(3, 1fr)}}.sheet li{margin:0}.sheet figure{margin:0}.sheet a{display:block;text-decoration:none}.sheet img{display:block;width:100%;height:auto}.sheet figcaption{display:flex;gap:var(--space-3);margin-top:var(--space-2);font-size:var(--size-small);line-height:var(--leading-small);color:var(--color-text-muted)}.sheet .frame{font-family:var(--font-mono);font-size:var(--size-meta);letter-spacing:var(--tracking-meta);color:var(--color-text-faint);padding-top:.15em}.sheet .photo-meta{display:block;margin-top:var(--space-1)}.site-footer .footer-end{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);align-items:baseline}.site-nav .nav-toggle{display:none}@media (min-width: 40em){.site-nav .nav-toggle{display:list-item}.site-footer .theme-toggle{display:none}}@media print{.bg-art,.horizon{display:none}}