:root{--forest:#2F5D3A;--olive:#6B7B3A;--tan:#C2B280;--cream:#F2EBD8;--ink:#2B2A1F;--bg:#F7F2E4}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
a{color:var(--forest)}.wrap{max-width:1040px;margin:0 auto;padding:0 1.1rem}.narrow{max-width:720px}
header{background:var(--forest);color:var(--cream);position:sticky;top:0;z-index:5}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.65rem;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--cream);font-weight:800;font-size:1.35rem}
.brand img{width:44px;height:44px;border-radius:50%;background:var(--cream)}
nav a{color:var(--cream);text-decoration:none;margin-left:1.1rem;font-weight:600}nav a:hover,nav a.on{text-decoration:underline}
.hero{background:#000}.hero img{display:block;width:100%;max-height:420px;object-fit:cover}
.intro{text-align:center;padding:2.6rem 0 1.4rem}
h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.15;margin:0 0 .6rem;color:var(--forest)}
h2{font-size:1.6rem;color:var(--forest);margin:0 0 .9rem}h3{margin:1.4rem 0 .3rem;font-size:1.15rem}
.btn{display:inline-block;background:var(--forest);color:var(--cream);text-decoration:none;font-weight:700;padding:.75rem 1.4rem;border-radius:999px;margin-top:1rem;border:2px solid var(--forest)}
.btn:hover{background:#25492d}.btn.alt{background:transparent;color:var(--forest)}.btn.alt:hover{background:var(--forest);color:var(--cream)}
section{padding:2.2rem 0}.page{padding-block:2.6rem 3rem}
.cards{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#fff;border:2px solid var(--ink);border-radius:18px;overflow:hidden;box-shadow:5px 5px 0 var(--tan)}
.card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e9e3d0}
.card .body{padding:1.1rem 1.2rem 1.3rem}.card h3{margin:0 0 .3rem}.card p{margin:.2rem 0 .6rem;color:#4a4837;font-size:.97rem}
.tag{display:inline-block;background:var(--cream);border:1px solid var(--tan);border-radius:999px;font-size:.78rem;padding:.1rem .6rem;margin-bottom:.4rem}
.band{background:var(--cream);border-block:2px solid var(--ink)}
.two{display:grid;gap:2rem;grid-template-columns:200px 1fr;align-items:center}.two img{width:200px;height:200px}
.sig{font-weight:800;font-size:1.2rem;color:var(--forest)}
details{background:#fff;border:2px solid var(--ink);border-radius:14px;padding:.2rem 1.1rem;margin:.7rem 0}
summary{cursor:pointer;font-weight:700;padding:.8rem 0}details p{margin:.1rem 0 1rem}
.trio{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.4rem}
.trio div{background:#fff;border:2px solid var(--ink);border-radius:14px;padding:1rem 1.1rem}.trio b{display:block;color:var(--forest)}
footer{background:var(--ink);color:var(--cream);padding:2rem 1rem;font-size:.92rem}
footer .cols{max-width:1040px;margin:0 auto;display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:space-between}
footer a{color:var(--tan);margin-right:1rem}footer p{margin:.3rem 0}
@media(max-width:640px){.two{grid-template-columns:1fr;text-align:center}.two img{margin:0 auto}nav a{margin-left:.7rem;font-size:.95rem}header{position:static}}
