:root{color-scheme:light dark;--accent:#b4532a;--on-accent:#ffffff;--accent-hover:#994724;--link:#a54d28;--text:#1f1b16;--bg:#fffdf8;--soft:#f9efe8;--deep:#1f1b16;--on-deep:#fffdf8;--space:4rem;--radius:.5rem;--btn-radius:.5rem;--width:64rem;--head:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;--head-weight:700;--body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
@media(prefers-color-scheme:dark){:root{--accent:#e58a5f;--on-accent:#111111;--accent-hover:#eaa17f;--link:#e58a5f;--text:#f3ece4;--bg:#1b1714;--soft:#33251d;--deep:#35312d;--on-deep:#f3ece4;}.hero-cover[style*="--cover-dark"]{background-image:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),var(--cover-dark)}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font:1.0625rem/1.6 var(--body)}
main{display:block}
img{display:block;max-width:100%;height:auto}
picture{display:contents}picture>source{display:none}
a{color:var(--link)}
:focus-visible{outline:3px solid var(--link);outline-offset:3px}
.tone-strong :focus-visible,.tone-dark :focus-visible,.hero-cover :focus-visible{outline-color:currentColor}
.skip{position:absolute;left:1rem;top:-5rem;z-index:20;padding:.6em 1em;background:var(--bg);color:var(--text);border-radius:var(--btn-radius);box-shadow:0 2px 10px rgba(0,0,0,.25)}
.skip:focus{top:1rem}
[id]{scroll-margin-top:5rem}
h1,h2,h3{font-family:var(--head);font-weight:var(--head-weight);line-height:1.15;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.2rem,5vw,3.6rem)}
h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}
h2.s-large{font-size:clamp(2rem,4.5vw,3.2rem)}
h3,.col h2{font-size:1.3rem}
p,ul{margin:0 0 1em}
.prose>:last-child,.wrap>:last-child{margin-bottom:0}
.blk{padding:calc(var(--space)/2) 1.25rem}
.wrap{max-width:var(--width);margin:0 auto}
.align-center{text-align:center}
.tone-soft{background:var(--soft)}
.tone-strong{background:var(--accent);color:var(--on-accent)}
.tone-dark{background:var(--deep);color:var(--on-deep)}
.tone-strong a,.tone-dark a{color:inherit}
.btn{display:inline-block;padding:.7em 1.4em;font-weight:600;text-decoration:none;border:2px solid var(--accent);border-radius:var(--btn-radius)}
.btn-solid,.tone-dark .btn-solid{background:var(--accent);color:var(--on-accent)}
.btn-outline{color:var(--link);border-color:var(--link)}
.tone-strong .btn-solid{background:var(--on-accent);color:var(--accent);border-color:var(--on-accent)}
.tone-strong .btn-outline,.tone-dark .btn-outline,.hero-cover .btn-outline{color:inherit;border-color:currentColor}
.b-nav{padding-top:1rem;padding-bottom:1rem}
.b-nav .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem}
.brand{font:var(--head-weight) 1.3rem var(--head);color:inherit;text-decoration:none}
.brand img{max-height:3rem;width:auto}
.b-nav ul,.links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;list-style:none;margin:0;padding:0}
.b-nav nav a{color:inherit;text-decoration:none;padding:.25rem 0}
.b-nav nav a:hover{text-decoration:underline;text-underline-offset:.35em}
.b-nav nav a[aria-current]{text-decoration:underline;text-underline-offset:.35em;text-decoration-thickness:2px}
.sticky{position:sticky;top:0;z-index:10;box-shadow:0 1px 0 color-mix(in srgb,var(--text) 12%,transparent)}
.sticky.tone-plain{background:var(--bg)}
.b-hero{padding-top:var(--space);padding-bottom:var(--space)}
.lead{font-size:1.2rem;margin-bottom:1.5rem}
.b-hero img{border-radius:var(--radius)}
.hero-centered{text-align:center}
.hero-centered .lead{max-width:40rem;margin-left:auto;margin-right:auto}
.hero-centered img{margin:2.5rem auto 0}
.hero-split .wrap{display:grid;gap:2.5rem;align-items:center}
@media(min-width:48rem){.hero-split .wrap{grid-template-columns:1fr 1fr}}
.hero-cover{display:grid;align-items:center;min-height:min(70vh,40rem);text-align:center;color:#fff;background-color:#222;background-image:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),var(--cover);background-position:center;background-size:cover}
.hero-cover .wrap{width:100%}
.hero-cover a:not(.btn){color:inherit}
.b-heading{padding-bottom:0}
.b-text .prose{max-width:42rem}
.b-text.align-center .prose{margin:0 auto}
figure{margin:0}
figure img{width:100%;border-radius:var(--radius)}
figcaption{margin-top:.5rem;font-size:.9rem;text-align:center;color:color-mix(in srgb,currentColor 80%,transparent)}
.w-narrow figure{max-width:36rem;margin:0 auto}
.b-image.w-full{padding-left:0;padding-right:0}
.w-full figure img{border-radius:0}
.cols{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
.col img{width:100%;aspect-ratio:3/2;object-fit:cover;margin-bottom:1rem;border-radius:var(--radius)}
.boxed .col{padding:1.5rem;background:var(--bg);color:var(--text);border-radius:var(--radius);box-shadow:0 1px 3px rgba(0,0,0,.08),0 0 0 1px color-mix(in srgb,var(--text) 12%,transparent)}
.boxed .col a{color:var(--link)}
.more{font-weight:600}
.gallery{display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr);list-style:none;margin:0;padding:0}
@media(min-width:48rem){.c-3{grid-template-columns:repeat(3,1fr)}.c-4{grid-template-columns:repeat(4,1fr)}}
.gallery a{display:block;border-radius:var(--radius)}
.gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius)}
.embed{aspect-ratio:16/9}
.embed.square{aspect-ratio:1;max-width:36rem;margin:0 auto}
.embed iframe{width:100%;height:100%;border:0;border-radius:var(--radius)}
.b-footer{margin-top:auto;font-size:.95rem}
.b-footer .wrap{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between}
.btn-solid:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn-outline:hover{background:var(--soft)}
.tone-strong .btn-solid:hover{background:var(--on-accent);border-color:var(--on-accent)}
.tone-strong .btn-outline:hover,.tone-dark .btn-outline:hover,.hero-cover .btn-outline:hover{background:transparent}
@media(prefers-reduced-motion:no-preference){.btn{transition:background-color .15s,transform .15s}.btn:hover{transform:translateY(-1px)}}
