:root{--ink:#1f2328;--muted:#5b6168;--terra:#9a3412;--gold:#b8860b;--paper:#fbf8f2;--card:#fff;--line:#e7e0d4}
*{box-sizing:border-box}
body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{color:var(--terra)}a:hover{color:#7c2d12}
header.site{border-bottom:1px solid var(--line);background:#fff}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.brand{font-size:1.35rem;font-weight:bold;text-decoration:none;color:var(--ink);letter-spacing:.02em}
.brand span{color:var(--terra)}
nav a{margin-left:1.1rem;text-decoration:none;font-family:system-ui,sans-serif;font-size:.95rem;color:var(--muted)}
nav a:hover,nav a.on{color:var(--terra)}
.wrap{max-width:1040px;margin:0 auto;padding:1rem 1.25rem}
.hero{text-align:center;padding:3.5rem 1.25rem 2rem}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);margin:.2rem 0;font-weight:normal}
.hero p{color:var(--muted);font-size:1.1rem;margin:.4rem auto;max-width:640px}
.motto{font-style:italic;color:var(--gold);letter-spacing:.05em}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;padding-bottom:3rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.08)}
.card img{width:100%;height:240px;object-fit:cover;display:block}
.card .body{padding:1.1rem 1.3rem 1.4rem}
.card h2{margin:0 0 .3rem;font-weight:normal;color:var(--terra)}
.card p{margin:0;color:var(--muted)}
.banner{width:100%;height:260px;object-fit:cover;display:block;border-radius:10px;margin:1.5rem 0 .3rem}
.credit{font-size:.75rem;color:var(--muted);font-family:system-ui,sans-serif;margin:0 0 1rem}
.credit a{color:var(--muted)}
h1.page{font-weight:normal;font-size:2.2rem;margin:.5rem 0}
.intro{color:var(--muted);margin-top:0}
section.block{background:#fff;border:1px solid var(--line);border-radius:10px;padding:1.2rem 1.4rem;margin:1.2rem 0}
section.block h2{margin:.1rem 0 .6rem;font-weight:normal;color:var(--terra);font-size:1.4rem}
section.block h3{margin:1rem 0 .3rem;font-size:1.05rem}
ul.links{margin:.2rem 0;padding-left:1.2rem}ul.links li{margin:.25rem 0}
.grid{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0}
.grid a{display:inline-block;min-width:2.6rem;text-align:center;padding:.3rem .55rem;border:1px solid var(--line);border-radius:6px;text-decoration:none;font-family:system-ui,sans-serif;font-size:.9rem;background:var(--paper)}
.grid a:hover{border-color:var(--terra);background:#fff}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 1.5rem}
.info{font-family:system-ui,sans-serif;font-size:.95rem;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:.7rem 1rem}
footer{border-top:1px solid var(--line);margin-top:2rem;color:var(--muted);font-size:.85rem;font-family:system-ui,sans-serif}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
footer a{color:var(--muted)}
