:root{--primary:#354D43;--accent:#EBDCB6}*{box-sizing:border-box}
body{margin:0;background:#fbf8ef;color:#263930;font:17px/1.65 "Source Sans 3",system-ui,sans-serif}
img{display:block;max-width:100%;height:auto}
a{color:var(--primary);text-underline-offset:.17em}
a:focus-visible{outline:3px solid #87520f;outline-offset:4px}
.wrap{width:min(1120px,calc(100% - 36px));margin-inline:auto}
header{border-bottom:1px solid #ded9c9;background:#fffdf7}
.mast,nav{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.mast{justify-content:space-between;padding-block:.65rem}
nav{font-weight:650}
.skip{position:absolute;left:1rem;top:-10rem;background:white;padding:.5rem}
.skip:focus{top:.5rem}
h1,h2,h3{line-height:1.13;font-family:"Baskervville",Georgia,serif}
.hero{background:var(--primary);color:#fffdf7;padding-block:clamp(2.5rem,7vw,5rem);border-bottom:8px solid var(--accent)}
.hero h1{font-size:clamp(2.5rem,6vw,5rem);max-width:15ch;margin:.15em 0}
.hero p{max-width:55ch}
.eyebrow{font-weight:750;color:var(--primary)}
.hero .eyebrow{color:var(--accent)}
#gebiete{padding-block:1rem}
.map-grid,.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
figure{margin:0}
figcaption{font-size:.88em;overflow-wrap:anywhere;padding:.4rem 0}
.maps img,.gallery img{width:100%;object-fit:cover}
.cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.cards a{display:block;height:100%;background:#fffdf8;border:1px solid #d9d6c7;text-decoration:none;color:inherit}
.cards img{width:100%;aspect-ratio:16/9;object-fit:cover}
.cards div{padding:1rem}
.cards h3{margin:.3rem 0}
.cards p{margin:.3rem 0}
.cards a:hover{border-color:var(--primary);background:#eee9d8}
.article,.support{max-width:840px;padding-block:2rem}
.article h1,.support h1{font-size:clamp(2rem,5vw,3.9rem);margin:.3em 0}
.location{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;background:#e9eee7;padding:1rem;margin:1.5rem 0}
.location dt{font-weight:750}
.location dd{margin:0}
.cta{display:inline-block;background:var(--primary);color:#fff;border-radius:.2rem;padding:.7em 1em;font-weight:750}
footer{background:var(--accent);padding:1.5rem 0;margin-top:2rem}
address{font-style:normal;overflow-wrap:anywhere}
@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.map-grid,.gallery,.cards,.location{grid-template-columns:1fr}}
