
:root{--green:#2f4a3a;--green-d:#1f3226;--brown:#8b5a2b;--sand:#f6f1e7;--ink:#26231f;--line:#e2d9c6;--white:#fff;--r:12px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:18px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--white);-webkit-text-size-adjust:100%}
img{max-width:100%;height:auto;display:block}
a{color:var(--brown)}
a:hover{color:var(--green)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.2;margin:0 0 .5em;color:var(--green-d)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:100}
.skip:focus{left:8px;top:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.site-header{background:var(--green-d);position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(0,0,0,.25)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.brand img{width:52px;height:auto}
.brand span{display:flex;flex-direction:column;line-height:1.2}
.brand strong{font:700 1.15rem Georgia,serif;letter-spacing:.02em}
.brand em{font-style:normal;font-size:.8rem;opacity:.8}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}
nav a{display:block;padding:10px 14px;color:#fff;text-decoration:none;border-radius:8px;font-size:.98rem}
nav a:hover,nav a[aria-current]{background:rgba(255,255,255,.14);color:#fff}
.menu-btn{display:none;background:none;border:0;padding:10px;cursor:pointer}
.menu-btn i{display:block;width:26px;height:3px;background:#fff;margin:5px 0;border-radius:2px}
.hero{position:relative;height:clamp(260px,42vw,460px);overflow:hidden;background:var(--green-d)}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,30,24,.15),rgba(20,30,24,.72))}
.hero-in{position:absolute;left:0;right:0;bottom:0;z-index:2;padding-bottom:34px;color:#fff;left:50%;transform:translateX(-50%);width:100%}
.hero h1{color:#fff;font-size:clamp(1.9rem,5vw,3.1rem);margin:0;text-shadow:0 2px 12px rgba(0,0,0,.5);max-width:20ch}
.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;color:#f0d9b5}
.plain-head{background:var(--sand);padding:46px 0 26px;border-bottom:1px solid var(--line)}
.plain-head h1{margin:0;font-size:clamp(1.8rem,4.5vw,2.6rem)}
.content{padding-top:42px;padding-bottom:60px}
.content section{margin-bottom:46px}
.intro blockquote{margin:0 0 24px;padding:18px 24px;border-left:5px solid var(--brown);background:var(--sand);font-family:Georgia,serif;font-size:1.25rem;border-radius:0 var(--r) var(--r) 0}
.intro blockquote p{margin:0}
.panel h2{font-size:1.8rem;border-bottom:2px solid var(--line);padding-bottom:8px}
.gallery{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.gallery a{display:block;border-radius:10px;overflow:hidden;background:var(--sand)}
.gallery img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .3s}
.gallery a:hover img{transform:scale(1.05)}
.video{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.card{display:flex;gap:20px;align-items:flex-start;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--r);padding:14px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:box-shadow .2s,transform .2s;max-width:640px;margin:18px 0}
.card:hover{box-shadow:0 6px 18px rgba(0,0,0,.14);transform:translateY(-2px);color:var(--ink)}
.card img{width:130px;flex:none;border-radius:8px}
.card time{font-size:.85rem;color:var(--brown);text-transform:uppercase;letter-spacing:.06em}
.card h3{margin:.2em 0 .3em;font-size:1.3rem}
.card p{margin:0;font-size:.95rem;color:#55504a}
.more{font-weight:600;text-decoration:none}
.downloads{display:grid;gap:12px;max-width:560px}
.file{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--r);background:var(--sand);text-decoration:none;color:var(--ink);font-weight:600}
.file b{background:var(--green);color:#fff;padding:8px 16px;border-radius:999px;font-size:.9rem}
.file:hover b{background:var(--brown)}
.flyer{margin:24px 0}
.flyer img{max-width:min(100%,560px);border-radius:var(--r);box-shadow:0 4px 18px rgba(0,0,0,.18)}
.site-footer{background:var(--sand);border-top:4px solid var(--green);padding:40px 0}
.foot{display:flex;gap:28px;align-items:center}
.foot img{width:130px;height:auto;flex:none}
.foot h2{font-size:1.25rem;margin-bottom:.4em}
.foot p{margin:0 0 .8em}
.lightbox{position:fixed;inset:0;background:rgba(10,14,12,.94);z-index:200;display:flex;align-items:center;justify-content:center}
.lightbox[hidden]{display:none}
.lightbox img{max-width:92vw;max-height:90vh;object-fit:contain}
.lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer;padding:10px 18px;line-height:1}
.lb-close{top:6px;right:10px}.lb-prev{left:6px;top:50%}.lb-next{right:6px;top:50%}
@media (max-width:760px){
 body{font-size:17px}
 .menu-btn{display:block}
 nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--green-d);border-top:1px solid rgba(255,255,255,.15)}
 nav.open{display:block}
 nav ul{flex-direction:column;padding:8px 12px 14px}
 nav a{padding:14px}
 .brand em{display:none}
 .card{flex-direction:column}.card img{width:60%}
 .foot{flex-direction:column;align-items:flex-start}
}
