:root{color-scheme:light dark;--font-serif: "Iowan Old Style", Charter, Palatino, "Palatino Linotype", Georgia, Cambria, serif;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--step--1: clamp(.84rem, .81rem + .13vw, .92rem);--step-0: clamp(1.06rem, 1.01rem + .24vw, 1.2rem);--step-1: clamp(1.28rem, 1.16rem + .55vw, 1.6rem);--step-2: clamp(1.55rem, 1.32rem + 1.05vw, 2.15rem);--step-3: clamp(1.9rem, 1.5rem + 1.9vw, 3rem);--step-4: clamp(2.3rem, 1.6rem + 3.3vw, 4.2rem);--space: 1.5rem;--measure: 40rem;--measure-wide: 72rem;--flow: 1.3em;--bg: #faf8f4;--surface: #f2ede5;--fg: #1b1a17;--muted: #766f64;--rule: #e5dfd5;--accent: #b34a26;--accent-fg: #ffffff}@media(prefers-color-scheme:dark){:root{--bg: #141312;--surface: #1f1d1a;--fg: #ece8e1;--muted: #a49c90;--rule: #2c2a26;--accent: #e3925b;--accent-fg: #141312}}*,*:before,*:after{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-serif);font-size:var(--step-0);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.18em;transition:color .15s ease}img{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip-link{position:absolute;left:-999px;top:0;background:var(--bg);padding:.5rem 1rem;z-index:10}.skip-link:focus{left:0}.eyebrow{font-family:var(--font-sans);font-size:var(--step--1);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}.lead{font-size:var(--step-1);line-height:1.45;color:var(--muted)}.site-header,.site-main,.site-footer{max-width:var(--measure);margin-inline:auto;padding-inline:var(--space)}.site-header{padding-block:2rem 1rem}.site-nav{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem 1.5rem;font-family:var(--font-sans)}.site-title{font-family:var(--font-serif);font-weight:600;font-size:var(--step-1);letter-spacing:-.01em;text-decoration:none;color:var(--fg)}.nav-links,.social-links{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}.nav-links{font-size:var(--step--1);letter-spacing:.02em}.nav-links a{text-decoration:none;color:var(--muted)}.nav-links a:hover{color:var(--accent)}.site-main{padding-block:2.5rem 5rem}.site-footer{border-top:1px solid var(--rule);margin-top:3rem;padding-block:2rem 3rem;font-family:var(--font-sans);font-size:var(--step--1);color:var(--muted);display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;align-items:center}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--accent)}h1,h2,h3{font-family:var(--font-serif);line-height:1.12;font-weight:600;letter-spacing:-.015em}.intro{margin-bottom:3rem}.intro h1{font-size:var(--step-2);font-weight:600;line-height:1.25;letter-spacing:-.01em;max-width:26rem;margin:0}.recent>.eyebrow{padding-bottom:.75rem;border-bottom:1px solid var(--rule);margin-bottom:.25rem}.recent .more{font-family:var(--font-sans);font-size:var(--step--1);margin-top:1.5rem}.recent .more a{text-decoration:none}.recent .more a:hover{text-decoration:underline}.post-list{list-style:none;padding:0;margin:0}.post-list li{padding-block:1.15rem;border-bottom:1px solid var(--rule)}.post-list a{display:block;font-size:var(--step-1);line-height:1.25;text-decoration:none;color:var(--fg)}.post-list a:hover{color:var(--accent)}.post-list time{display:block;margin-bottom:.3rem;color:var(--muted);font-family:var(--font-sans);font-size:var(--step--1);letter-spacing:.05em;text-transform:uppercase}.post{max-width:var(--measure)}.post-header{margin-bottom:2.5rem}.post-header h1{font-size:var(--step-3);margin:0 0 .5rem}.post-date{color:var(--muted);font-family:var(--font-sans);font-size:var(--step--1);letter-spacing:.05em;text-transform:uppercase}.post-body>*+*{margin-top:var(--flow)}.post-body h2{font-size:var(--step-2);margin-top:2.5rem}.post-body h3{font-size:var(--step-1);margin-top:2rem}.post-body img{border-radius:3px}.post-body figure{margin-inline:0}.post-body figcaption{font-family:var(--font-sans);font-size:var(--step--1);color:var(--muted);margin-top:.5rem}.post-body blockquote{margin-inline:0;padding-left:1.25rem;border-left:2px solid var(--accent);color:var(--muted);font-style:italic}.post-body iframe{max-width:100%;aspect-ratio:16 / 9;width:100%;border:0}.gallery h1{font-size:var(--step-3);margin-bottom:1.5rem}.gallery-grid{width:min(var(--measure-wide),92vw);margin-inline:50%;transform:translate(-50%);display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:.6rem}.gallery-grid figure{margin:0}.gallery-grid button{display:block;width:100%;padding:0;border:0;background:var(--surface);cursor:zoom-in;border-radius:3px;overflow:hidden}.gallery-grid img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:3 / 2;transition:opacity .2s ease,transform .4s ease}.gallery-grid button:hover img{opacity:.92;transform:scale(1.02)}.gallery-empty{color:var(--muted);font-style:italic}.gallery-index{list-style:none;padding:0;margin:0;width:min(var(--measure-wide),92vw);margin-inline:50%;transform:translate(-50%);display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:.75rem}.gallery-index a{position:relative;display:block;aspect-ratio:4 / 5;overflow:hidden;border-radius:3px;background:var(--surface);text-decoration:none}.gallery-index img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-index a:hover img{transform:scale(1.03)}.gallery-index-label{position:absolute;inset:auto 0 0;padding:1.5rem 1rem 1rem;font-family:var(--font-sans);font-weight:600;font-size:var(--step-1);color:#fff;background:linear-gradient(transparent,#000000a6)}.lightbox{max-width:min(94vw,1400px);max-height:92vh;padding:0;border:0;background:transparent;color:var(--fg)}.lightbox::backdrop{background:#000000d1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.lightbox img{display:block;max-width:94vw;max-height:86vh;width:auto;height:auto;margin-inline:auto;border-radius:3px}.lightbox figcaption{font-family:var(--font-sans);font-size:var(--step--1);color:#d8d4cd;text-align:center;margin-top:.6rem}.lightbox-close{position:fixed;top:1rem;right:1rem;width:2.5rem;height:2.5rem;font-size:1.5rem;line-height:1;color:#fff;background:#00000080;border:0;border-radius:50%;cursor:pointer}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
