:root{--bg:#faf7f2;--ink:#2b2622;--muted:#6b625a;--accent:#8a5a35;--line:#e6ddd0}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 Georgia,"Times New Roman",serif}
header,main,footer{max-width:720px;margin:0 auto;padding:0 20px}
header{padding-top:20px;padding-bottom:12px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
header a.brand{font-weight:bold;letter-spacing:.04em;color:var(--ink);text-decoration:none;font-size:1.1rem}
nav a{margin-left:16px;color:var(--accent);font:16px/1 system-ui,sans-serif}
main{padding-top:24px;padding-bottom:40px}
h1{font-size:2rem;line-height:1.2;margin:.2em 0 .6em}
h2{font-size:1.4rem;margin:1.8em 0 .4em}
a{color:var(--accent)}
li{margin:.25em 0}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:.7em 1.2em;border-radius:6px;text-decoration:none;font:600 16px system-ui,sans-serif}
.card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px 18px;margin:14px 0}
.card h2{margin:0 0 .3em;font-size:1.2rem}
footer{padding-top:20px;padding-bottom:40px;color:var(--muted);font:14px/1.5 system-ui,sans-serif;border-top:1px solid var(--line)}
em{color:var(--muted)}
img{max-width:100%;height:auto}
body.home header,body.home main,body.home footer{max-width:1040px}
body.home main>h1,body.home main>p,body.home main>h2{max-width:720px;margin-left:auto;margin-right:auto}
body.home main>h2{margin-top:2em}
body.home main>h1,body.home main>h2,body.home main>p{text-align:center}
figure{margin:0}
.hero{margin:12px auto 20px;max-width:1040px}
.hero img{width:100%;border-radius:10px;display:block}
.inline{margin:22px auto;text-align:center}
.inline img{border-radius:10px;display:block;margin:0 auto}
.inline.wide img{width:100%}
.inline.portrait{max-width:380px}
.inline.portrait img{width:100%}
.inline figcaption{margin-top:8px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:22px auto;max-width:1040px}
.tile{display:flex;flex-direction:column}
.tile a{display:block;overflow:hidden;border-radius:10px;aspect-ratio:1/1;background:#efe8dc;box-shadow:0 1px 2px rgba(43,38,34,.08)}
.tile img{width:100%;height:100%;object-fit:cover;display:block;margin:0;border-radius:0;transition:transform .35s ease}
.tile a:hover img,.tile a:focus img{transform:scale(1.04)}
.tile a:hover{box-shadow:0 6px 18px rgba(43,38,34,.18)}
.tile a{transition:box-shadow .25s ease}
figcaption{font:14px/1.4 system-ui,sans-serif;color:var(--muted);text-align:center;margin:8px 4px 0}
@media (max-width:640px){.grid{grid-template-columns:repeat(2,1fr);gap:12px}.grid.n3{grid-template-columns:1fr;max-width:420px}figcaption{font-size:13px}}
@media (prefers-reduced-motion:reduce){.tile img{transition:none}}
