:root{--bg:#faf8f5;--fg:#1c1b19;--muted:#6b665e;--rule:#e4dfd7;--accent:#8a3b2e;--tile-bg:#ece8e1;--backdrop:rgb(20 18 16 / 0.92);--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gutter:clamp(16px, 4vw, 48px);color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg:#151412;--fg:#ece8e1;--muted:#a39d93;--rule:#2c2a27;--accent:#e09a83;--tile-bg:#22201d;color-scheme:dark}}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font:1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.2em}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 2rem;padding:clamp(24px,5vw,56px)var(--gutter)clamp(20px,3vw,36px)}.wordmark{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem}.wordmark a{font:clamp(1.75rem,4vw,2.5rem)/1.1 var(--serif);letter-spacing:.01em;text-decoration:none}.tagline{color:var(--muted);font-size:.95rem}nav{display:flex;gap:1.5rem;font-size:.95rem}nav a{text-decoration:none}main{padding:0 var(--gutter)}.categories{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;margin:0 0 1.25rem;font-size:.9rem;letter-spacing:.02em}.categories a{color:var(--muted);text-decoration:none;padding:2px 0;border-bottom:1px solid transparent}.categories a:hover{color:var(--accent)}.categories a[aria-current=page]{color:var(--fg);border-bottom-color:initial}.grid{display:grid;grid-template-columns:repeat(var(--cols-sm,2),1fr);gap:6px;margin:0;padding:0;list-style:none}@media(min-width:720px){.grid{grid-template-columns:repeat(var(--cols,3),1fr);gap:10px}.grid[data-cols="1"]{max-width:40rem}.grid[data-cols="2"]{max-width:64rem}}.tile{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:var(--tile-bg)}.tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 400ms ease,opacity 400ms ease}.tile:hover img{transform:scale(1.03);opacity:.92}.badge{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:999px;background:rgb(0 0 0/.55);color:#fff;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase}.more,.empty{margin:1.5rem 0 0;color:var(--muted);font-size:.95rem}#about{max-width:38rem;margin:clamp(48px,8vw,96px)0;padding-top:2rem;border-top:1px solid var(--rule)}#about h2{margin:0 0 1rem;font:1.5rem/1.2 var(--serif)}#about p{margin:0 0 1em}.artwork{display:grid;gap:1.5rem 3rem;margin:0 0 clamp(48px,8vw,96px)}@media(min-width:960px){.artwork{grid-template-columns:minmax(0,3fr)minmax(16rem,1fr);align-items:start}}.artwork figure{margin:0}.artwork img{display:block;width:auto;max-width:100%;height:auto;max-height:80dvh;margin:0 auto}.artwork-meta h2{margin:0 0 1rem;font:1.5rem/1.25 var(--serif)}.artwork-caption{white-space:pre-line}.artwork-date,.artwork-categories{color:var(--muted);font-size:.95rem}.artwork-nav{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:2rem;font-size:.95rem}.prose{max-width:38rem;margin:0 0 clamp(48px,8vw,96px)}.prose h2{margin:0 0 1rem;font:1.5rem/1.2 var(--serif)}.contact{display:grid;gap:.35rem;margin-top:1.5rem}.contact label{margin-top:.75rem;font-size:.9rem;color:var(--muted)}.contact input,.contact textarea{width:100%;padding:.6rem .7rem;border:1px solid var(--rule);border-radius:4px;background:var(--bg);color:var(--fg);font:inherit}.contact input:focus-visible,.contact textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.contact textarea{resize:vertical}.contact button{justify-self:start;margin-top:1rem;padding:.6rem 1.4rem;border:0;border-radius:4px;background:var(--fg);color:var(--bg);font:inherit;cursor:pointer}.contact button:disabled{opacity:.6;cursor:progress}.contact .hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{min-height:1.5em;margin:.5rem 0 0}.form-status.error{color:var(--accent)}.site-footer{padding:2rem var(--gutter)3rem;color:var(--muted);font-size:.85rem}#lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:0 0;color:#ece8e1}#lightbox::backdrop{background:var(--backdrop)}#lightbox[open]{display:grid;place-items:center}#lightbox figure{display:flex;flex-direction:column;align-items:center;max-width:min(92vw,1100px);margin:0;padding:56px 16px 24px}#lightbox img{max-width:100%;max-height:72dvh;object-fit:contain}#lightbox figcaption{width:100%;max-width:40rem;margin-top:1rem;font-size:.95rem}#lightbox .caption{margin:0 0 .5rem;white-space:pre-line;max-height:8.5em;overflow-y:auto}#lightbox .meta{margin:0;color:#a39d93}#lightbox button{position:fixed;border:0;background:0 0;color:inherit;font-size:2.5rem;line-height:1;cursor:pointer;padding:8px 14px}#lightbox .close{top:8px;right:8px}#lightbox .nav{top:50%;transform:translateY(-50%)}#lightbox .prev{left:4px}#lightbox .next{right:4px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile img{transition:none}}