/* ==========================================================================
   AURA MAGAZIN · Übersicht + Artikel-Detail
   ========================================================================== */

.magazin-page,
.magazin-article-page{
  background:var(--cream);
  color:var(--text);
  font-family:'Manrope','DM Sans',system-ui,sans-serif;
}

.mz-wrap{
  max-width:1180px;
  margin-inline:auto;
  padding-inline:24px;
}
.mz-wrap--narrow{
  max-width:760px;
}

/* Kicker (identisch zu Team/Person) */
.mz-hero .kicker,
.mz-section-head .kicker,
.mz-cta-card .kicker,
.mz-article-body h2,
.mz-article-body h3,
.mz-article-body p,
.mz-article-body li{overflow-wrap:break-word}
.mz-article-body h2,
.mz-article-body h3{hyphens:auto}

.mz-article-body .kicker,
.mz-author-box .kicker{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
  font-family:'Manrope',sans-serif;
  font-size:11.5px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--gold);
}
.mz-hero .kicker::before,
.mz-hero .kicker::after,
.mz-section-head .kicker::before,
.mz-section-head .kicker::after,
.mz-cta-card .kicker::before,
.mz-cta-card .kicker::after,
.mz-author-box .kicker::before,
.mz-author-box .kicker::after{
  content:"";
  width:28px; height:1.5px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
}
.mz-cta-card .kicker{ color:var(--gold2); }
.mz-cta-card .kicker::before,
.mz-cta-card .kicker::after{
  background:linear-gradient(90deg, transparent, var(--gold2), transparent);
}

/* ─────────────────────────────────────────
   01 · HERO
   ───────────────────────────────────────── */
.mz-hero{
  padding:170px 0 60px;
  text-align:center;
}
.mz-hero h1{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:clamp(2.4rem, 5vw, 4rem);
  line-height:1.05;
  letter-spacing:-.02em;
  max-width:820px;
  margin:0 auto 20px;
}
.mz-hero h1 em{
  font-style:normal;
  background:linear-gradient(135deg,var(--gold),#b8942a 60%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.mz-hero .lead{
  max-width:640px; margin:0 auto;
  color:var(--muted); font-size:1.08rem; line-height:1.6;
}

/* ─────────────────────────────────────────
   02 · FILTER-BAR
   ───────────────────────────────────────── */
.mz-filter-bar{
  padding:20px 0 40px;
  position:sticky; top:0; z-index:20;
  background:var(--cream);
}
.mz-filter-inner{
  display:flex; gap:10px; flex-wrap:wrap;
  justify-content:center;
}
.mz-chip{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 18px;
  background:var(--white);
  border:1px solid rgba(20,15,5,.08);
  border-radius:999px;
  font-family:'Manrope',sans-serif;
  font-weight:700; font-size:.85rem;
  color:var(--text);
  cursor:pointer;
  transition:border-color .2s ease, background .2s ease, transform .15s ease, color .2s ease;
}
.mz-chip i, .mz-chip svg{ width:14px; height:14px; }
.mz-chip:hover{ border-color:var(--gold); transform:translateY(-1px); }
.mz-chip.is-active{
  background:linear-gradient(135deg, var(--gold), #b8942a);
  color:#0f0e0c;
  border-color:transparent;
}

/* ─────────────────────────────────────────
   03 · SECTION-HEAD
   ───────────────────────────────────────── */
.mz-section-head{
  text-align:center;
  margin-bottom:44px;
}
.mz-section-head h2{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:clamp(1.8rem, 4vw, 2.6rem);
  line-height:1.1;
  letter-spacing:-.01em;
  max-width:640px;
  margin:0 auto;
}

/* ─────────────────────────────────────────
   04 · FEATURED (1 groß + 2 klein rechts)
   ───────────────────────────────────────── */
.mz-featured{ padding:20px 0 60px; }

.mz-featured-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr;
  grid-template-rows:auto auto;
  gap:20px;
}

/* Featured Card Base */
.mz-fcard{
  display:flex;
  background:var(--white);
  border-radius:24px;
  overflow:hidden;
  text-decoration:none;
  color:var(--text);
  box-shadow:0 12px 40px rgba(20,15,5,.06);
  transition:transform .3s ease, box-shadow .3s ease;
}
.mz-fcard:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 60px rgba(20,15,5,.12);
}

/* BIG · nimmt komplette linke Spalte, beide Rows */
.mz-fcard--big{
  grid-row: 1 / 3;
  flex-direction:column;
}
.mz-fcard--big .mz-fcard-cover{
  aspect-ratio: 16 / 10;
  width:100%;
}
.mz-fcard--big .mz-fcard-copy{
  padding:32px 32px 36px;
}
.mz-fcard--big .mz-fcard-copy h3{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:clamp(1.5rem, 2.4vw, 1.9rem);
  line-height:1.15; letter-spacing:-.01em;
  margin:0 0 14px;
}
.mz-fcard--big .mz-fcard-copy p{
  color:var(--muted); font-size:1rem; line-height:1.6;
  margin:0 0 22px;
}

/* SIDE cards · rechte Spalte, gestapelt */
.mz-fcard--side{
  flex-direction:row;
}
.mz-fcard--side .mz-fcard-cover{
  width:180px; flex-shrink:0;
  aspect-ratio:1;
}
.mz-fcard--side .mz-fcard-copy{
  padding:20px 22px;
  display:flex; flex-direction:column; justify-content:center;
}
.mz-fcard--side .mz-fcard-copy h3{
  font-family:'Manrope',sans-serif;
  font-weight:800; font-size:1.05rem;
  line-height:1.25; letter-spacing:-.005em;
  margin:0 0 12px;
}

/* Cover mit Accent-Farbe */
.mz-fcard-cover{
  position:relative;
  background:linear-gradient(135deg, var(--fcard-accent, #3f5b7d) 0%, color-mix(in srgb, var(--fcard-accent, #3f5b7d) 65%, #000 35%) 100%);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.mz-fcard-cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.mz-fcard-fallback{
  color:rgba(255,255,255,.35);
}
.mz-fcard-fallback i, .mz-fcard-fallback svg{ width:64px; height:64px; }
.mz-fcard--side .mz-fcard-fallback i, .mz-fcard--side .mz-fcard-fallback svg{ width:36px; height:36px; }

.mz-fcard-cat{
  position:absolute; top:16px; left:16px;
  padding:5px 11px;
  background:rgba(255,255,255,.92);
  color:var(--text);
  font-size:.7rem; font-weight:800;
  letter-spacing:.08em; text-transform:uppercase;
  border-radius:999px;
}

.mz-fcard-meta{
  display:flex; align-items:center; gap:8px;
  color:var(--muted);
  font-size:.85rem;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.mz-fcard--side .mz-fcard-meta{ margin:0; font-size:.78rem; }
.mz-fcard-dot{ color:rgba(20,15,5,.25); }

.mz-fcard-author{
  display:inline-flex; align-items:center; gap:8px;
  font-weight:700; color:var(--text);
}
.mz-fcard-author img,
.mz-avatar-i{
  width:24px; height:24px; border-radius:50%;
  object-fit:cover;
}
.mz-avatar-i{
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,var(--gold),#b8942a);
  color:#fff;
  font-family:'Manrope',sans-serif;
  font-weight:800; font-size:.7rem;
}
.mz-avatar-i--big{ width:64px; height:64px; font-size:1.6rem; }

.mz-fcard-cta{
  display:inline-flex; align-items:center; gap:6px;
  color:var(--gold);
  font-weight:800; font-size:.9rem;
  transition:gap .2s ease;
}
.mz-fcard:hover .mz-fcard-cta{ gap:12px; }
.mz-fcard-cta i, .mz-fcard-cta svg{ width:16px; height:16px; }

/* ─────────────────────────────────────────
   05 · ARTIKEL-GRID
   ───────────────────────────────────────── */
.mz-list{ padding:20px 0 80px; }

.mz-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}

.mz-card{
  background:var(--white);
  border-radius:20px;
  overflow:hidden;
  text-decoration:none;
  color:var(--text);
  box-shadow:0 8px 28px rgba(20,15,5,.05);
  transition:transform .3s ease, box-shadow .3s ease, opacity .3s ease;
  display:flex; flex-direction:column;
}
.mz-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(20,15,5,.1);
}
.mz-card.is-hidden{
  display:none;
}

.mz-card-cover{
  position:relative;
  aspect-ratio:16/10;
  background:linear-gradient(135deg, var(--card-accent, #3f5b7d) 0%, color-mix(in srgb, var(--card-accent, #3f5b7d) 65%, #000 35%) 100%);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.mz-card-cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.mz-card-fallback{ color:rgba(255,255,255,.35); }
.mz-card-fallback i, .mz-card-fallback svg{ width:48px; height:48px; }

.mz-card-cat{
  position:absolute; top:14px; left:14px;
  padding:4px 10px;
  background:rgba(255,255,255,.92);
  color:var(--text);
  font-size:.66rem; font-weight:800;
  letter-spacing:.08em; text-transform:uppercase;
  border-radius:999px;
}

.mz-card-copy{
  padding:20px 22px 24px;
  display:flex; flex-direction:column; flex:1;
}
.mz-card-copy h3{
  font-family:'Manrope',sans-serif;
  font-weight:800; font-size:1.1rem;
  line-height:1.25; letter-spacing:-.005em;
  margin:0 0 10px;
}
.mz-card-excerpt{
  color:var(--muted); font-size:.9rem; line-height:1.5;
  margin:0 0 14px;
  flex:1;
}
.mz-card-meta{
  display:flex; align-items:center; gap:8px;
  color:var(--muted); font-size:.78rem;
}
.mz-card-author{
  display:inline-flex; align-items:center; gap:6px;
  font-weight:700; color:var(--text);
}
.mz-card-author img,
.mz-card-author .mz-avatar-i{ width:22px; height:22px; }

.mz-card-dot{ color:rgba(20,15,5,.25); }

/* Empty State */
.mz-empty{
  text-align:center;
  padding:80px 20px;
  color:var(--muted);
}
.mz-empty i, .mz-empty svg{ width:48px; height:48px; margin-bottom:16px; color:var(--gold); }

/* ─────────────────────────────────────────
   06 · CTA-Section
   ───────────────────────────────────────── */
.mz-cta{ padding:60px 0 100px; }
.mz-cta-card{
  max-width:1000px; margin:0 auto;
  background:linear-gradient(135deg,#0f0e0c 0%, #1a1712 100%);
  color:#fff;
  border-radius:32px;
  padding:64px 40px;
  text-align:center;
  position:relative; overflow:hidden;
}
.mz-cta-card::before{
  content:"";
  position:absolute; top:-50%; right:-20%;
  width:600px; height:600px;
  background:radial-gradient(circle, rgba(212,175,55,.15) 0%, transparent 60%);
  pointer-events:none;
}
.mz-cta-card h2{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:clamp(1.6rem, 3.5vw, 2.3rem);
  line-height:1.15; letter-spacing:-.01em;
  max-width:640px; margin:0 auto 16px;
}
.mz-cta-card p{
  max-width:520px; margin:0 auto 32px;
  color:rgba(255,255,255,.72);
  font-size:1.05rem; line-height:1.6;
}
.mz-cta-btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:16px 28px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold) 0%, var(--gold2) 100%);
  color:#0f0e0c;
  font-family:'Manrope',sans-serif;
  font-weight:700; font-size:.98rem;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease;
  position:relative; z-index:2;
}
.mz-cta-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 32px rgba(212,175,55,.35);
}

/* ==========================================================================
   ARTIKEL-DETAIL-SEITE
   ========================================================================== */

.mz-article{
  --article-accent:#3f5b7d;
}

/* Hero */
.mz-article-hero{
  padding:150px 0 40px;
  text-align:center;
}
.mz-breadcrumb{
  display:inline-flex; align-items:center; gap:8px;
  color:var(--muted);
  font-size:.85rem; font-weight:600;
  margin-bottom:24px;
}
.mz-breadcrumb a{
  color:var(--muted); text-decoration:none;
  transition:color .2s ease;
}
.mz-breadcrumb a:hover{ color:var(--gold); }

.mz-article-title{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:clamp(2rem, 4.6vw, 3.5rem);
  line-height:1.1; letter-spacing:-.02em;
  margin:0 0 20px;
  text-wrap:balance;
  /* Getrennt wird nur an den Stellen, die mz_trennung() im Titel
     gesetzt hat, also an der Wortfuge. Mit auto wuerde der Browser
     nach Sprechsilben trennen und "versi-cherung" daraus machen.
     overflow-wrap bleibt als Sicherheitsnetz. */
  overflow-wrap:break-word;
  hyphens:manual;
}
.mz-article-excerpt{
  font-size:1.15rem; line-height:1.55;
  color:var(--muted);
  max-width:640px; margin:0 auto 32px;
}
.mz-article-meta{
  display:flex; align-items:center; justify-content:center; gap:20px;
  flex-wrap:wrap;
}
.mz-meta-author{
  display:inline-flex; align-items:center; gap:10px;
  text-decoration:none; color:var(--text);
  padding:6px 12px;
  border-radius:999px;
  background:var(--white);
  border:1px solid rgba(20,15,5,.06);
  transition:border-color .2s ease;
}
.mz-meta-author:hover{ border-color:var(--gold); }
.mz-meta-author img,
.mz-meta-author .mz-avatar-i{ width:32px; height:32px; }
.mz-meta-author span{ display:flex; flex-direction:column; text-align:left; }
.mz-meta-author strong{ font-size:.85rem; font-weight:800; }
.mz-meta-author em{ font-style:normal; font-size:.72rem; color:var(--muted); }

.mz-meta-facts{
  display:flex; gap:16px;
  color:var(--muted);
  font-size:.85rem;
}
.mz-meta-facts span{ display:inline-flex; align-items:center; gap:6px; }
.mz-meta-facts i, .mz-meta-facts svg{ width:14px; height:14px; }

/* Cover-Area */
.mz-article-cover{
  max-width:1180px; margin:0 auto 60px;
  padding:0 24px;
}
.mz-article-cover-fallback{
  aspect-ratio: 21 / 9;
  border-radius:24px;
  background:linear-gradient(135deg, var(--article-accent) 0%, color-mix(in srgb, var(--article-accent) 60%, #000 40%) 100%);
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.3);
}
.mz-article-cover img{
  width:100%; aspect-ratio:21/9; object-fit:cover;
  border-radius:24px;
}
.mz-article-cover-fallback i, .mz-article-cover-fallback svg{ width:96px; height:96px; }

/* Body (Prose) */
.mz-article-body{
  padding-bottom:80px;
}
.mz-prose{
  font-family:'DM Sans','Manrope',system-ui,sans-serif;
  font-size:1.08rem;
  line-height:1.75;
  color:var(--text);
}
.mz-prose > * + * { margin-top:1.15em; }
.mz-prose h2{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:clamp(1.5rem, 2.6vw, 1.9rem);
  line-height:1.2; letter-spacing:-.015em;
  margin-top:2.4em; margin-bottom:.6em;
  color:var(--text);
}
.mz-prose h2:first-child{ margin-top:0; }
.mz-prose h3{
  font-family:'Manrope',sans-serif;
  font-weight:800;
  font-size:1.2rem;
  margin-top:2em; margin-bottom:.5em;
}
.mz-prose p{ margin:0; }
.mz-prose ul, .mz-prose ol{
  padding-left:1.4em;
  margin:0;
}
.mz-prose li{ margin-bottom:.5em; }
.mz-prose li::marker{ color:var(--gold); font-weight:800; }
.mz-prose strong{ color:var(--text); font-weight:700; }
.mz-prose a{
  color:var(--gold);
  text-decoration:underline;
  text-decoration-thickness:1.5px;
  text-underline-offset:2px;
}
.mz-prose a:hover{ color:#8a6d1a; }

/* Callout-Box */
.mz-prose .mz-callout{
  margin:1.8em 0;
  padding:20px 24px;
  background:rgba(212,175,55,.08);
  border-left:4px solid var(--gold);
  border-radius:0 12px 12px 0;
}
.mz-prose .mz-callout p{ margin:0; font-size:1rem; }
.mz-prose .mz-callout--warn{
  background:rgba(192,57,43,.06);
  border-left-color:#c0392b;
}

/* Quote-Box */
.mz-prose .mz-quote{
  margin:2.2em 0;
  padding:28px 32px;
  background:var(--white);
  border-radius:20px;
  box-shadow:0 12px 32px rgba(20,15,5,.06);
  position:relative;
}
.mz-prose .mz-quote::before{
  content:"„";
  position:absolute; top:8px; left:24px;
  font-family:'Manrope',sans-serif;
  font-size:5rem; line-height:1;
  color:var(--gold);
  opacity:.5;
}
.mz-prose .mz-quote blockquote{
  margin:0 0 12px 32px;
  font-size:1.15rem; line-height:1.55;
  font-style:italic;
  color:var(--text);
}
.mz-prose .mz-quote figcaption{
  margin-left:32px;
  font-size:.85rem;
  color:var(--muted);
  font-weight:700;
}

/* Autor-Box */
.mz-author-box{
  padding:40px 0 60px;
}
.mz-author-card{
  background:var(--white);
  border-radius:24px;
  padding:32px;
  display:grid;
  grid-template-columns:120px 1fr;
  gap:28px;
  align-items:center;
  box-shadow:0 12px 40px rgba(20,15,5,.06);
}
.mz-author-portrait{
  width:120px; height:120px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid var(--white);
  outline:2px solid rgba(212,175,55,.4);
}
.mz-author-portrait img{ width:100%; height:100%; object-fit:cover; display:block; }
.mz-author-body h3{
  font-family:'Manrope',sans-serif;
  font-weight:800; font-size:1.4rem;
  margin:6px 0 6px;
}
.mz-author-role{
  font-size:.72rem; font-weight:800;
  letter-spacing:.16em; text-transform:uppercase;
  color:var(--gold);
  margin:0 0 12px;
}
.mz-author-bio{
  font-size:.95rem; line-height:1.55;
  color:var(--muted);
  margin:0 0 18px;
}
.mz-author-actions{
  display:flex; gap:10px; flex-wrap:wrap;
}
.mz-btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 22px;
  border-radius:999px;
  font-family:'Manrope',sans-serif;
  font-weight:700; font-size:.9rem;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.mz-btn i, .mz-btn svg{ width:16px; height:16px; }
.mz-btn--primary{ background:linear-gradient(135deg,var(--gold),var(--gold2)); color:#0f0e0c; }
.mz-btn--primary:hover{ transform:translateY(-1px); box-shadow:0 10px 24px rgba(212,175,55,.32); }
.mz-btn--ghost{ background:rgba(20,15,5,.06); color:var(--text); }
.mz-btn--ghost:hover{ background:rgba(20,15,5,.12); }

/* Related */
.mz-related{
  padding:40px 0 80px;
  background:linear-gradient(180deg, var(--cream) 0%, var(--cream-deep) 100%);
}

/* Back link */
.mz-back-wrap{ padding:40px 0 80px; text-align:center; }
.mz-back-link{
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 22px;
  border-radius:999px;
  background:var(--white);
  border:1px solid rgba(20,15,5,.08);
  color:var(--text);
  text-decoration:none;
  font-weight:700; font-size:.9rem;
  transition:border-color .2s ease, transform .2s ease;
}
.mz-back-link:hover{ border-color:var(--gold); transform:translateX(-2px); }
.mz-back-link i, .mz-back-link svg{ width:16px; height:16px; }

/* 404 */
.mz-404{ padding:120px 0; text-align:center; }
.mz-404-inner i, .mz-404-inner svg{ width:80px; height:80px; color:var(--gold); margin-bottom:20px; }
.mz-404-inner h1{
  font-family:'Manrope',sans-serif;
  font-weight:800; font-size:2rem;
  margin:0 0 10px;
}
.mz-404-inner p{ color:var(--muted); margin-bottom:30px; }
.mz-404 .mz-cta-btn{ display:inline-flex; }

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 960px){
  .mz-featured-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }
  .mz-fcard--big{ grid-row:auto; }
  .mz-grid{ grid-template-columns:repeat(2, 1fr); }
  .mz-author-card{
    grid-template-columns:1fr;
    text-align:center;
  }
  .mz-author-portrait{ margin:0 auto; }
  .mz-author-actions{ justify-content:center; }
}

@media (max-width: 640px){
  .mz-hero{ padding:80px 0 40px; }
  /* Die Leiste war seitlich scrollbar. Wer nicht wischt, sieht die
     hinteren Kategorien nie. Jetzt bricht sie um, alle Schaltflaechen
     sind sichtbar und antippbar. Dafuer darf sie nicht mehr kleben,
     sonst nimmt sie bei zwei Reihen zu viel vom Bildschirm weg. */
  .mz-filter-bar{ padding:14px 0 26px; position:static; }
  .mz-filter-inner{
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
    overflow:visible;
  }
  .mz-chip{
    padding:0 12px;
    min-height:42px;
    font-size:.76rem;
    gap:5px;
    letter-spacing:-.01em;
  }
  .mz-chip i, .mz-chip svg{ width:13px; height:13px; }
  .mz-grid{ grid-template-columns:1fr; }
  .mz-fcard--side{ flex-direction:column; }
  .mz-fcard--side .mz-fcard-cover{ width:100%; aspect-ratio:16/10; }
  .mz-cta-card{ padding:48px 24px; border-radius:24px; }
  .mz-article-hero{ padding:60px 0 30px; }
  .mz-article-cover{ margin-bottom:40px; }
  .mz-article-body{ padding-bottom:60px; }
  .mz-prose{ font-size:1rem; }
  .mz-prose .mz-quote{ padding:24px 24px 24px 30px; }
  .mz-prose .mz-quote::before{ font-size:3.5rem; }
  .mz-prose .mz-quote blockquote,
  .mz-prose .mz-quote figcaption{ margin-left:12px; }
}

/* ============================================================
   REDAKTIONELLE BAUSTEINE
   Kernaussagen, Inhaltsverzeichnis, Kaesten, Tabellen, FAQ und
   Quellen. Alle mobil-zuerst, der Artikeltext ist auf dem Handy
   nur rund 327px breit.
   ============================================================ */

/* --- Das Wichtigste in Kürze ------------------------------- */
.mz-takeaways{
  margin:0 0 32px;
  padding:22px 24px;
  border-radius:18px;
  background:linear-gradient(160deg,#fffdf6 0%,#fbf3dc 100%);
  border:1px solid rgba(201,151,31,.26);
}
.mz-takeaways-label{
  margin:0 0 12px;
  font-family:'Manrope',sans-serif;
  font-size:10.5px; font-weight:800;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--gold3,#9a7318);
}
.mz-takeaways ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:10px; }
.mz-takeaways li{
  position:relative; padding-left:26px;
  font-family:'DM Sans',sans-serif; font-size:.98rem; line-height:1.55;
  overflow-wrap:break-word;
}
.mz-takeaways li::before{
  content:""; position:absolute; left:4px; top:.6em;
  width:8px; height:8px; border-radius:50%;
  background:linear-gradient(135deg,#f3d36a,#c9971f);
}

/* --- Inhaltsverzeichnis ------------------------------------ */
.mz-toc{
  margin:0 0 34px; padding:20px 22px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(10,10,10,.08);
  box-shadow:0 6px 18px rgba(80,60,20,.05);
}
.mz-toc-label{
  margin:0 0 10px;
  font-family:'Manrope',sans-serif;
  font-size:10px; font-weight:800;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted,#7a7366);
}
.mz-toc ol{ margin:0; padding:0 0 0 20px; display:flex; flex-direction:column; gap:8px; }
.mz-toc a{
  color:var(--text); text-decoration:none;
  font-family:'DM Sans',sans-serif; font-size:.95rem; line-height:1.45;
  border-bottom:1px solid transparent; transition:border-color .25s ease,color .25s ease;
  overflow-wrap:break-word;
}
.mz-toc a:hover{ color:#9a7318; border-bottom-color:rgba(201,151,31,.45); }

/* --- Kaesten im Fliesstext --------------------------------- */
.mz-note,.mz-tip,.mz-warn{
  padding:18px 20px; border-radius:14px;
  border-left:3px solid rgba(201,151,31,.55);
  background:#fdfaf1;
}
.mz-tip{  border-left-color:#4a7c59; background:#f5faf6; }
.mz-warn{ border-left-color:#b4624a; background:#fdf6f3; }
.mz-note-label{
  margin:0 0 8px !important;
  font-family:'Manrope',sans-serif;
  font-size:10px; font-weight:800;
  letter-spacing:.16em; text-transform:uppercase;
  color:#9a7318;
}
.mz-tip  .mz-note-label{ color:#3d6b4b; }
.mz-warn .mz-note-label{ color:#9c5340; }
.mz-note p + p,.mz-tip p + p,.mz-warn p + p{ margin-top:.7em; }

/* Hervorgehobene Kernfrage */
.mz-key{
  font-family:'Manrope',sans-serif;
  font-size:1.14rem; font-weight:800; line-height:1.4;
  color:var(--text);
  padding-left:16px;
  border-left:3px solid #c9971f;
}

/* Nummerierte Checkliste */
.mz-check{
  padding:22px 24px; border-radius:18px;
  background:linear-gradient(160deg,#ffffff 0%,#fdf7e4 100%);
  border:1px solid rgba(201,151,31,.24);
}
.mz-check-label{
  margin:0 0 6px !important;
  font-family:'Manrope',sans-serif;
  font-size:10px; font-weight:800;
  letter-spacing:.18em; text-transform:uppercase;
  color:#9a7318;
}
.mz-check h3{ margin:0 0 14px !important; font-size:1.12rem !important; }
.mz-check ol{ margin:0; padding-left:20px; display:flex; flex-direction:column; gap:9px; }

/* --- Tabellen ---------------------------------------------- */
.mz-table{
  /* Auf dem Handy quer scrollbar statt gequetscht */
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border:1px solid rgba(10,10,10,.08);
  border-radius:14px;
}
.mz-table table{ width:100%; border-collapse:collapse; font-size:.92rem; }
.mz-table th,.mz-table td{
  padding:11px 14px; text-align:left;
  border-bottom:1px solid rgba(10,10,10,.07);
  white-space:nowrap;
}
.mz-table th{
  font-family:'Manrope',sans-serif; font-weight:800;
  font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  background:#faf7ef; color:#6b6456;
}
.mz-table tr:last-child td{ border-bottom:0; }

/* --- Häufige Fragen ---------------------------------------- */
.mz-faq{ margin-top:56px; }
.mz-faq h2{
  font-family:'Manrope',sans-serif; font-weight:800;
  font-size:clamp(1.5rem,2.6vw,1.9rem); letter-spacing:-.015em;
  margin:0 0 20px;
}
.mz-faq-item{
  border:1px solid rgba(10,10,10,.09);
  border-radius:14px;
  background:#fff;
  margin-bottom:10px;
  overflow:hidden;
}
.mz-faq-item summary{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:16px 18px; cursor:pointer;
  font-family:'Manrope',sans-serif; font-weight:800;
  font-size:1rem; line-height:1.35;
  list-style:none;
  overflow-wrap:break-word; hyphens:auto;
}
.mz-faq-item summary::-webkit-details-marker{ display:none; }
.mz-faq-item summary i{ flex-shrink:0; width:16px; height:16px; color:#c9971f; transition:transform .3s ease; }
.mz-faq-item[open] summary i{ transform:rotate(45deg); }
.mz-faq-answer{
  padding:0 18px 18px;
  font-family:'DM Sans',sans-serif; font-size:.98rem; line-height:1.65;
  color:var(--muted,#5d5648);
  overflow-wrap:break-word;
}

/* --- Quellen ------------------------------------------------ */
.mz-sources{ margin-top:48px; padding-top:28px; border-top:1px solid rgba(10,10,10,.09); }
.mz-sources h2{
  font-family:'Manrope',sans-serif; font-weight:800;
  font-size:1.15rem; margin:0 0 14px;
}
.mz-sources ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:12px; }
.mz-sources li{
  font-family:'DM Sans',sans-serif; font-size:.9rem; line-height:1.5;
  color:var(--muted,#626262);
  overflow-wrap:anywhere;
}
.mz-sources a{ color:var(--text); font-weight:700; text-decoration:none; border-bottom:1px solid rgba(201,151,31,.4); }
.mz-sources a:hover{ color:#9a7318; }
.mz-sources span{ display:block; margin-top:2px; }

@media (max-width:700px){
  .mz-takeaways,.mz-check{ padding:18px 18px; }
  .mz-toc{ padding:16px 18px; }
  .mz-note,.mz-tip,.mz-warn{ padding:15px 16px; }
  .mz-faq-item summary{ padding:14px 15px; font-size:.95rem; }
  .mz-faq-answer{ padding:0 15px 15px; }
  .mz-table th,.mz-table td{ padding:9px 11px; font-size:.86rem; }
}


/* ─────────────────────────────────────────────────────────────────────
   Lange Komposita in den Beitragstiteln
   Die Karten haben overflow:hidden. Ein Wort wie
   "Berufsunfaehigkeitsversicherung" passte auf schmalen Bildschirmen
   nicht in die Karte und wurde abgeschnitten statt umgebrochen. Die
   Titel pflegt das Admin, deshalb loest das eine Regel und nicht ein
   Trennzeichen im Text. Das Dokument traegt lang="de", die Trennung
   folgt also deutschen Regeln. overflow-wrap greift nur, wenn selbst
   die Trennung nicht reicht.
   ───────────────────────────────────────────────────────────────── */
.mz-fcard-copy h3,
.mz-card-copy h3,
.mz-featured-grid h3,
.mz-hero h1,
.mz-article-head h1{
  /* manual statt auto: die automatische Trennung geht nach Sprech-
     silben vor und macht aus "Berufsunfaehigkeitsversicherung" ein
     "Berufsunfaehigkeitsversi-cherung". Die Trennstellen setzt
     stattdessen mz_trennung() in inc/magazin-render.php, und zwar
     an der Wortfuge. Getrennt wird dann nur dort.
     overflow-wrap bleibt als Sicherheitsnetz, falls ein Wort auch
     ohne Trennstelle breiter ist als die Karte. */
  hyphens:manual;
  overflow-wrap:break-word;
}
