@font-face{font-family:"Epilogue";src:url("/assets/fonts/epilogue-latin-wght-normal.woff2") format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Petrona";src:url("/assets/fonts/petrona-latin-wght-normal.woff2") format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --grund:#15181a;
  --flaeche:#1e2225;
  --hoch:#262b2f;
  --linie:#343b40;
  --linieleise:#282e32;
  --text:#e7e3da;
  --leise:#a5a8a1;
  --jade:#7cc3a5;
  --jadetief:#2f6d56;
  --rosa:#dd978b;
  --rosatief:#7d453c;
  --breit:1140px;
  --schmal:720px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--grund);color:var(--text);
  font-family:"Petrona",Georgia,"Times New Roman",serif;
  font-size:1.0625rem;line-height:1.72;font-weight:380;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,.navi,.marke,.meta,.kicker,.steckbrief,.blaettern,.fuss nav,.zahl,.schluss{
  font-family:"Epilogue","Segoe UI",system-ui,sans-serif;
}
h1,h2,h3,h4{line-height:1.22;font-weight:620;letter-spacing:-.015em;margin:0 0 .6em}
h1{font-size:clamp(1.95rem,1.35rem + 2.5vw,3rem);font-weight:680}
h2{font-size:clamp(1.35rem,1.12rem + .95vw,1.85rem);margin-top:2.4em}
h3{font-size:1.14rem;margin-top:2em;letter-spacing:0}
p{margin:0 0 1.15em}
a{color:var(--jade);text-decoration:none;border-bottom:1px solid rgba(124,195,165,.32);transition:border-color .15s,color .15s}
a:hover{color:#9ad4bc;border-bottom-color:#9ad4bc}
img{max-width:100%;height:auto;display:block}
hr{border:0;border-top:1px solid var(--linieleise);margin:2.6rem 0}
::selection{background:var(--jadetief);color:#fff}
:focus-visible{outline:2px solid var(--jade);outline-offset:3px;border-radius:2px}

.bahn{width:100%;max-width:var(--breit);margin-inline:auto;padding-inline:20px}
.eng{max-width:var(--schmal);margin-inline:auto}
.springe{position:absolute;left:-9999px}
.springe:focus{position:static;display:block;padding:.6rem 1rem;background:var(--jade);color:#10201a}

/* ---------- Kopf ---------- */
.kopf{position:sticky;top:0;z-index:40;background:rgba(21,24,26,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--linieleise)}
.kopf .bahn{display:flex;align-items:center;gap:1.4rem;min-height:66px;flex-wrap:wrap;padding-block:.5rem}
.marke{display:inline-flex;align-items:center;gap:.6rem;color:var(--text);border:0;font-weight:640;font-size:1.02rem;letter-spacing:.16em;text-transform:lowercase}
.marke:hover{color:var(--jade)}
.marke svg{flex:0 0 auto}
.navi{margin-left:auto;display:flex;gap:1.35rem;flex-wrap:wrap;font-size:.83rem;letter-spacing:.07em;font-weight:500}
.navi a{color:var(--leise);border:0;padding-block:.25rem;border-bottom:1px solid transparent}
.navi a:hover{color:var(--text);border-bottom-color:var(--jade)}
.navi a.ist-hier{color:var(--text);border-bottom-color:var(--jade)}

/* ---------- Hero ---------- */
.hero{padding:clamp(2.6rem,1.6rem + 4vw,5rem) 0 clamp(2rem,1.4rem + 2.4vw,3.4rem);border-bottom:1px solid var(--linieleise)}
.hero .bahn{display:grid;gap:clamp(2rem,1rem + 4vw,3.6rem);grid-template-columns:1fr}
@media(min-width:900px){.hero .bahn{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center}}
.hero h1{margin-bottom:.5em}
.hero p{color:var(--leise);font-size:1.13rem;max-width:44ch}
.kicker{display:inline-block;font-size:.73rem;letter-spacing:.2em;text-transform:uppercase;color:var(--jade);font-weight:600;margin-bottom:1.1rem}
.kicker.ist-rosa{color:var(--rosa)}

/* ---------- Haltungsraster ---------- */
.raster{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linieleise);border:1px solid var(--linieleise)}
.raster a{background:var(--flaeche);border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;padding:1.1rem .5rem;color:var(--leise);transition:background .15s,color .15s}
.raster a:hover{background:var(--hoch);color:var(--text)}
.raster span{font-family:"Epilogue",sans-serif;font-size:.7rem;letter-spacing:.06em;text-align:center;line-height:1.3}
.glyphe{display:block;width:46px;height:46px;color:var(--jade)}
.raster a:hover .glyphe{color:var(--rosa)}

/* ---------- Abschnitte ---------- */
.abschnitt{padding:clamp(2.6rem,1.8rem + 3vw,4.2rem) 0}
.abschnitt + .abschnitt{border-top:1px solid var(--linieleise)}
.titelzeile{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.9rem}
.titelzeile h2{margin:0}
.titelzeile p{margin:0;color:var(--leise);font-size:.96rem;max-width:46ch}

/* ---------- Kacheln ---------- */
.kacheln{display:grid;gap:1px;background:var(--linieleise);border:1px solid var(--linieleise);grid-template-columns:1fr}
@media(min-width:620px){.kacheln{grid-template-columns:repeat(2,1fr)}}
@media(min-width:980px){.kacheln.ist-drei{grid-template-columns:repeat(3,1fr)}}
.kachel{background:var(--flaeche);padding:1.5rem 1.4rem;display:flex;flex-direction:column;gap:.55rem;border:0;color:inherit;transition:background .15s}
.kachel:hover{background:var(--hoch);border:0}
.kachel .glyphe{width:34px;height:34px;margin-bottom:.35rem}
.kachel h3{margin:0;font-size:1.06rem;color:var(--text)}
.kachel:hover h3{color:var(--jade)}
.kachel p{margin:0;color:var(--leise);font-size:.94rem;line-height:1.6}
.kachel .meta{margin-top:auto;padding-top:.7rem;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#7b807a;display:block}

/* ---------- Artikel ---------- */
.brotkrumen{font-family:"Epilogue",sans-serif;font-size:.78rem;color:#7b807a;letter-spacing:.04em;padding:1.5rem 0 0}
.brotkrumen ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}
.brotkrumen li+li::before{content:"/";margin-right:.45rem;color:#4d5450}
.brotkrumen a{color:#9aa09a;border:0}
.brotkrumen a:hover{color:var(--jade)}

.blatt{padding:1.6rem 0 3.4rem}
.blatt h1{margin-bottom:.45em}
.meta{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:#7b807a;display:flex;gap:1.2rem;flex-wrap:wrap;margin-bottom:2rem}
.lead{font-size:1.2rem;line-height:1.62;color:#cfcdc4;margin-bottom:2rem}

.steckbrief{border-top:1px solid var(--jadetief);display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--linieleise);border-left:1px solid var(--linieleise);border-right:1px solid var(--linieleise);border-bottom:1px solid var(--linieleise);margin:0 0 2.4rem}
@media(min-width:700px){.steckbrief{grid-template-columns:repeat(4,1fr)}}
.steckbrief > div{background:var(--flaeche);padding:.95rem 1.1rem}
.steckbrief dt{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#7b807a;margin-bottom:.3rem}
.steckbrief dd{margin:0;font-family:"Epilogue",sans-serif;font-size:.95rem;font-weight:550;color:var(--text);line-height:1.4}
.punkte{letter-spacing:.22em;color:var(--rosa)}
.punkte i{color:#3f4a46;font-style:normal}

.bild{margin:2.2rem 0}
.bild img{border:1px solid var(--linieleise);width:100%}
.bild figcaption{font-size:.79rem;color:#7b807a;line-height:1.55;margin-top:.7rem}
.bild figcaption a{color:#96a09a;border-bottom-color:rgba(150,160,154,.3)}
.bild.ist-tafel img{background:#e9e5dc;padding:14px}
.bild.ist-klein img{max-width:460px;margin-inline:auto}
.bild.ist-klein figcaption{max-width:460px;margin-inline:auto}

.blatt ul,.blatt ol{margin:0 0 1.25em;padding-left:1.25em}
.blatt li{margin-bottom:.5em}
.blatt ul li::marker{color:var(--jadetief)}

/* Schritte */
.schritte{list-style:none;margin:1.4rem 0 1.8rem;padding:0;display:grid;gap:1px;background:var(--linieleise);border:1px solid var(--linieleise);grid-template-columns:1fr}
@media(min-width:720px){.schritte{grid-template-columns:repeat(2,1fr)}}
.schritt{background:var(--flaeche);padding:1.2rem 1.25rem;margin:0;display:flex;gap:.95rem}
.zahl{flex:0 0 auto;width:26px;height:26px;border:1px solid var(--jadetief);color:var(--jade);font-size:.78rem;font-weight:600;display:flex;align-items:center;justify-content:center;transform:rotate(45deg);margin-top:.15rem}
.zahl b{transform:rotate(-45deg);font-weight:600}
.schritt p{margin:0;font-size:.98rem;line-height:1.62}
.schritt strong{color:var(--text);font-weight:600}

/* Hinweiskaesten */
.hinweis,.warnung{border-left:3px solid var(--jadetief);background:var(--flaeche);padding:1.15rem 1.3rem;margin:1.9rem 0}
.warnung{border-left-color:var(--rosatief)}
.hinweis h3,.warnung h3{margin:0 0 .5rem;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--jade)}
.warnung h3{color:var(--rosa)}
.hinweis p:last-child,.warnung p:last-child{margin-bottom:0}
.hinweis ul,.warnung ul{margin-bottom:0}

.tafel{width:100%;border-collapse:collapse;margin:1.6rem 0;font-size:.95rem}
.tafel th,.tafel td{text-align:left;padding:.7rem .8rem;border-bottom:1px solid var(--linieleise);vertical-align:top}
.tafel th{font-family:"Epilogue",sans-serif;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#7b807a;font-weight:600}
.tafel tr:hover td{background:var(--flaeche)}

.quellen{font-size:.9rem;color:var(--leise)}
.quellen ul{padding-left:1.1em}

/* Blaettern */
.blaettern{display:grid;gap:1px;background:var(--linieleise);border:1px solid var(--linieleise);margin:3rem 0 0;grid-template-columns:1fr}
@media(min-width:620px){.blaettern{grid-template-columns:1fr 1fr}}
.blaettern.ist-allein{grid-template-columns:1fr}
.blaettern a{background:var(--flaeche);padding:1.15rem 1.3rem;border:0;display:block;color:var(--text);transition:background .15s}
.blaettern a:hover{background:var(--hoch)}
.blaettern span{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#7b807a;margin-bottom:.35rem}
.blaettern a:hover span{color:var(--jade)}
.blaettern .ist-rechts{text-align:right}

/* ---------- Fuss ---------- */
.fuss{border-top:1px solid var(--linieleise);background:#111416;position:relative}
.fuss::before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;background:repeating-linear-gradient(90deg,var(--jadetief) 0 14px,transparent 14px 26px)}
.fuss .bahn{padding-block:2.8rem 2rem;display:grid;gap:2rem;grid-template-columns:1fr}
@media(min-width:760px){.fuss .bahn{grid-template-columns:1.3fr 1fr 1fr}}
.fuss h2{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#7b807a;margin:0 0 .9rem;font-weight:600}
.fuss p{color:var(--leise);font-size:.92rem;margin:0 0 .8rem}
.fuss nav{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem}
.fuss nav a{color:var(--leise);border:0}
.fuss nav a:hover{color:var(--jade)}
.schluss{border-top:1px solid var(--linieleise)}
.schluss .bahn{padding-block:1.1rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.8rem;color:#6e736e;letter-spacing:.04em}

.empfehlung{font-size:.92rem;color:var(--leise)}
.empfehlung a{color:var(--leise);border-bottom-color:#3c443f}
.empfehlung a:hover{color:var(--jade)}

/* ---------- 404 ---------- */
.leer{padding:5rem 0;text-align:center}
.leer .glyphe{width:64px;height:64px;margin:0 auto 1.5rem;color:var(--jadetief)}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
