/* Lokale Schriften */
@font-face {
  font-family: 'Libre Baskerville';
  src: url('../fonts/libre-baskerville-v24-latin-regular.woff2') format('woff2'),
       url('../fonts/libre-baskerville-v24-latin-regular.woff') format('woff'),
       url('../fonts/libre-baskerville-v24-latin-regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Libre Baskerville';
  src: url('../fonts/libre-baskerville-v24-latin-700.woff2') format('woff2'),
       url('../fonts/libre-baskerville-v24-latin-700.woff') format('woff'),
       url('../fonts/libre-baskerville-v24-latin-700.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Libre Baskerville';
  src: url('../fonts/libre-baskerville-v24-latin-italic.woff2') format('woff2'),
       url('../fonts/libre-baskerville-v24-latin-italic.woff') format('woff'),
       url('../fonts/libre-baskerville-v24-latin-italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Open Sans';
  src: url('../fonts/open-sans-v44-latin-regular.woff2') format('woff2'),
       url('../fonts/open-sans-v44-latin-regular.woff') format('woff'),
       url('../fonts/open-sans-v44-latin-regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Open Sans';
  src: url('../fonts/open-sans-v44-latin-600.woff2') format('woff2'),
       url('../fonts/open-sans-v44-latin-600.woff') format('woff'),
       url('../fonts/open-sans-v44-latin-600.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Open Sans';
  src: url('../fonts/open-sans-v44-latin-700.woff2') format('woff2'),
       url('../fonts/open-sans-v44-latin-700.woff') format('woff'),
       url('../fonts/open-sans-v44-latin-700.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root{
  --green:#6BAF6E;
  --green-dark:#2B7A34;
  --green-soft:#EAF5E7;
  --bg:#FAFAFA;
  --text:#222;
  --muted:#667;
  --radius:20px;
  --shadow:0 14px 40px rgba(0,0,0,.08);
  --maxw:1200px;
  --font-heading:'Libre Baskerville', Georgia, serif;
  --font-body:'Open Sans', system-ui, -apple-system, sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font:16px/1.55 var(--font-body);color:var(--text);background:var(--bg)}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700}
a{color:inherit}
.container{width:min(var(--maxw),92vw);margin-inline:auto}
.site-header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.65);
  backdrop-filter: saturate(140%) blur(10px);
  border-bottom:1px solid rgba(0,0,0,.06);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-weight:700;font-family:var(--font-heading)}
.brand-dot{width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 30% 30%, var(--green), #8fd999)}
.mainnav ul{list-style:none;margin:0;padding:0;display:flex;gap:.6rem;flex-wrap:wrap}
.mainnav a{display:inline-block;padding:.5rem .85rem;border-radius:999px;text-decoration:none;border:1px solid transparent}
.mainnav a:hover{background:var(--green-soft);border-color:rgba(0,0,0,.06)}
.site-main{padding:clamp(16px,3vw,28px) 0}
.content{display:block}
.card{border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.05)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1rem;border-radius:999px;border:1px solid rgba(0,0,0,.06);text-decoration:none;font-weight:600;background:#fff;transition:box-shadow .2s ease,transform .08s ease}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--green);color:#fff;border-color:transparent}
.section{scroll-margin-top:86px;padding:clamp(18px,3vw,30px) 0}
.section .wrap{width:min(var(--maxw),92vw);margin-inline:auto}
.section-title{margin:0 0 .6rem;font-size:clamp(24px,3.6vw,34px)}
.section-muted{color:var(--muted);margin-top:.25rem}
.site-footer{border-top:1px solid rgba(0,0,0,.06);background:var(--green-soft);margin-top:16px}
.footer-inner{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.9rem 0}
.muted{color:var(--muted)}
