:root{
  --schrift:'Helvetica Neue',Helvetica,Arial,sans-serif;
  --text:#1d1d1b; --gruen:#BFC63B; --rot:#ba2d16;
  --grau:#727272; --hell:#e9e9e9; --linie:#dee2e6;
}
*{box-sizing:border-box}
/* Grundwerte exakt wie im Original */
body{margin:0;font-family:var(--schrift);font-size:14px;line-height:1.4666666667;
  color:var(--text);background:#fff;-webkit-font-smoothing:antialiased;
  padding-top:75px}
/* Container mit Bootstrap-5-Breakpoints wie im Original */
.container{width:100%;margin:0 auto;padding:0 12px}
@media(min-width:576px){.container{max-width:540px}}
@media(min-width:768px){.container{max-width:720px}}
@media(min-width:992px){.container{max-width:960px}}
@media(min-width:1200px){.container{max-width:1140px}}
@media(min-width:1400px){.container{max-width:1320px}}
a{color:var(--text);text-decoration:none}
a:hover{color:var(--gruen)}
img{max-width:100%;height:auto;display:block}

/* Kopf: 75 px hoch, fixiert, mit Schatten statt Linie — wie im Original.
   isolation + hoher z-index halten den Schatten über allem Nachfolgenden. */
header{position:fixed;top:0;left:0;right:0;z-index:9999;height:75px;
  background:#fff;box-shadow:0 5px 10px 0 rgba(50,50,50,.06);isolation:isolate}
.kopf-innen{display:flex;align-items:center;justify-content:space-between;
  gap:24px;height:75px}
.logo img{width:296px;height:65px;object-fit:contain;padding-top:5px}
header nav{display:flex;font-size:15px;text-transform:uppercase;font-weight:700}
/* Inaktive Punkte gedämpft, aktiver in Textfarbe mit Unterstrich */
header nav a{color:#9b9b9b;padding:0 10px;position:relative;
  transition:color .15s}
header nav a:hover{color:var(--text)}
header nav a.aktiv{color:var(--text)}
header nav a.aktiv::after{content:"";position:absolute;left:10px;right:10px;
  bottom:-6px;height:2px;background:var(--text)}

.intro{padding:40px 0 4px}
.intro p{margin:0;font-size:14px;color:var(--text);line-height:1.4666666667}
.intro strong{font-weight:700}

/* Jahres-Überschrift — wie h2 im Original */
h2.jahr{font-size:1.2rem;font-weight:700;text-transform:uppercase;
  color:var(--text);margin:20px 0 20px}

/* Hero: durchgehendes Band, Inhalt im Container */
.hero-band{background:#f6f6f3;margin:26px 0 0;padding:58px 0 62px}
.hero{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);
  gap:64px;align-items:center}
.hero > *{min-width:0}
.hero-bild img{width:100%;box-shadow:0 18px 48px rgba(0,0,0,.2);
  transition:transform .25s ease,box-shadow .25s ease}
.hero-bild a:hover img{transform:translateY(-5px);
  box-shadow:0 26px 60px rgba(0,0,0,.26)}
.marke{display:block;font-size:12px;font-weight:400;text-transform:uppercase;
  letter-spacing:2.6px;color:var(--grau);margin-bottom:12px}
.hero h1{margin:0 0 30px;font-size:2.6rem;font-weight:700;
  letter-spacing:-.3px;line-height:1.08}
@media(max-width:900px){
  .hero-band{padding:40px 0 44px}
  .hero{grid-template-columns:1fr;gap:32px}
  .hero-bild{max-width:280px}
  .hero h1{font-size:2rem}
}

/* Themen von der Titelseite — schlichte Liste, keine Farbe */
.themen{list-style:none;margin:0 0 30px;padding:0}
.themen li{display:flex;gap:16px;align-items:baseline;
  padding:11px 0;border-top:1px solid var(--hell)}
.themen li:last-child{border-bottom:1px solid var(--hell)}
.thema-wort{flex:0 0 138px;font-weight:700;font-size:14px;letter-spacing:.2px}
.thema-text{font-size:14px;color:var(--grau);line-height:1.45}
@media(max-width:640px){
  .themen li{flex-direction:column;gap:2px;padding:9px 0}
  .thema-wort{flex:none}
}

.knopf-reihe{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.knopf{display:inline-block;padding:11px 22px;font-weight:400;
  font-size:13px;text-transform:uppercase;letter-spacing:1.2px;
  border:1px solid var(--text);background:none;cursor:pointer;
  font-family:inherit;color:var(--text);transition:background .15s,color .15s,border-color .15s}
.knopf:hover{background:var(--text);color:#fff;border-color:var(--text)}
.knopf.primaer{background:var(--text);color:#fff}
.knopf.primaer:hover{background:#000;border-color:#000}

/* Heft-Raster — Bootstrap col-lg-3 nachgebaut: 4 Spalten, 1.5rem Rinne */
.gitter{display:grid;grid-template-columns:repeat(4,1fr);
  gap:0 1.5rem;margin-bottom:34px}
.heft{margin-bottom:1.5rem}
.heft img,.heft .platzhalter{width:100%;aspect-ratio:730/1024;
  object-fit:cover;background:var(--hell);transition:opacity .18s}
.heft a:hover img{opacity:.88}
.heft .platzhalter{display:flex;align-items:center;justify-content:center;
  color:var(--grau);font-size:13px;text-align:center;padding:14px}
/* Bildunterschrift wie im Original: schlicht, direkt unter dem Cover */
.heft p{margin:.2em 0 0;font-size:14px;font-weight:400;color:var(--text)}
.heft .klein{color:var(--grau);font-size:13px;margin-top:1px}
.heft .klein a{color:var(--grau)}
.heft .klein a:hover{color:var(--gruen)}

/* Leseansicht */
.leser-kopf{display:flex;align-items:baseline;justify-content:space-between;
  gap:20px;flex-wrap:wrap;margin:34px 0 18px}
.leser-kopf h1{margin:0;font-size:22px;font-weight:600;
  text-transform:uppercase;letter-spacing:1px}
._df_book{border:1px solid var(--linie);border-radius:4px}

/* Ausgabenwahl in der Leseansicht: aktive Ausgabe in Farbe, Rest gedämpft */
.wahl{margin:40px 0 0}
.wahl h2{font-size:14px;text-transform:uppercase;letter-spacing:1px;
  margin:0 0 18px;color:var(--grau)}
.wahl-band{display:flex;gap:18px;overflow-x:auto;padding-bottom:14px}
.wahl-band a{flex:0 0 116px}
.wahl-band img{aspect-ratio:730/1024;object-fit:cover;
  filter:grayscale(1);opacity:.45;
  transition:filter .2s,opacity .2s,transform .2s}
.wahl-band a:hover img{filter:grayscale(0);opacity:.85;transform:translateY(-3px)}
.wahl-band a.aktiv img{filter:none;opacity:1;
  box-shadow:0 6px 20px rgba(0,0,0,.22)}
.wahl-band p{margin:10px 0 0;font-size:14px;font-weight:700;
  text-align:center;color:var(--grau)}
.wahl-band a:hover p{color:var(--text)}
.wahl-band a.aktiv p{color:var(--text)}

footer{margin-top:70px;border-top:1px solid var(--hell);padding:26px 0 44px;
  font-size:13px;color:var(--grau)}
footer .container{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
footer nav{display:flex;gap:20px}
.leer{padding:70px 0;text-align:center;color:var(--grau)}

@media(max-width:980px){.gitter{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){
  .gitter{grid-template-columns:repeat(2,1fr);gap:20px}
  .aktuell-grid{grid-template-columns:1fr;gap:24px}
  .aktuell{padding:20px}
  .aktuell-grid > :first-child{max-width:230px}
}
@media(max-width:560px){
  .logo img{width:206px;height:46px}
  header{height:64px}
  body{padding-top:64px}
  .kopf-innen{height:64px;gap:12px}
  header nav{font-size:12px}
  header nav a{padding:0 6px}
  .intro{padding:32px 0 4px}


  .aktuell h1,.leser-kopf h1{font-size:20px}
  .knopf{padding:11px 16px;font-size:12px}
  footer .container{flex-direction:column;gap:10px}
}

/* DearFlip im Vollbild soll über dem Kopf liegen */
.df-fullscreen,.df-container:fullscreen{z-index:100000 !important}
