/* buch-lektorat: inline */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    :root {
      --green:      #006b3e;
      --green-dark: #006b3e;
      --green-bg:   #ecf7f1; --icon-ink: #1a1a2e; --icon-accent: #00a55d; --icon-gap: #fff;
      --text:       #1a1a2e;
      --muted:      #374151;
      --bg:         #fff;
      --bg-alt:     #f5f7fa;
      --bg-top:     #f1f3f5;
      --border:     #e5e7eb;
      --radius:     10px;
      --shadow:     0 1px 3px rgba(0,0,0,.06);
      --shadow-md:  0 4px 14px rgba(0,0,0,.08);
      --font:       -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, sans-serif;
      --max:        1120px;
    }
    html { font-size: 16px; scroll-behavior: smooth; }
    body { font-family: var(--font); color: var(--text); background: var(--bg-alt); line-height: 1.65; }
    a { color: inherit; text-decoration: none; }
    ul { list-style: none; }
    button { cursor: pointer; font: inherit; border: none; background: none; }
    img { max-width: 100%; height: auto; display: block; }
    .wrap { max-width: var(--max); margin: 0 auto; padding: 0 1.5rem; }
    section { padding: 68px 0; }
    .bg-white { background: var(--bg-alt); }
    .bg-alt   { background: var(--bg-alt); }
    h1 { font-size: clamp(1.85rem, 4.5vw, 2.9rem); line-height: 1.12; font-weight: 700; letter-spacing: -.025em; }
    h2 { font-size: clamp(1.45rem, 3vw, 2rem); line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
    h3 { font-size: 1.05rem; font-weight: 600; line-height: 1.3; }
    p  { color: var(--muted); font-size: .9625rem; }
    .label { font-size: 1.5rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; background: linear-gradient(to right, #00c06a, #005430); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
    .section-head { text-align: center; max-width: 620px; margin: 0 auto 2.75rem; }
    .section-head p { margin-top: .6rem; }
    .btn { display: inline-flex; align-items: center; gap: .4rem; padding: .65rem 1.4rem; border-radius: 8px; font-size: .9rem; font-weight: 600; transition: all .15s; }
    .btn-primary  { background: linear-gradient(to right, #00c06a, #005430); color: #fff; }
    .btn-primary:hover { background: linear-gradient(to right, #009a58, #003d24); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,135,78,.25); }
    .btn-outline  { background: linear-gradient(#fff,#fff) padding-box, linear-gradient(to right, #00c06a, #005430) border-box; color: var(--green); border: 2px solid transparent; }
    .btn-outline:hover { background: linear-gradient(var(--green-bg),var(--green-bg)) padding-box, linear-gradient(to right, #00c06a, #005430) border-box; }
    .btn-sm { padding: .45rem 1rem; font-size:14px; }
    .btn-secondary { background:#fff; color:#000; border:2px solid #000; padding-top:calc(.45rem - 2px); padding-bottom:calc(.45rem - 2px); }
    .btn-secondary:hover { background:#000; color:#fff; border-color:#000; }
    .btn-white { background: #fff; color: var(--green); font-weight: 700; }
    .btn-white:hover { background: #f0fdf4; }
    .btn-ghost-w { background: #fff; color: var(--green); border: 1.5px solid #fff; }
    .btn-ghost-w:hover { background: rgba(255,255,255,.22); }
    .topbar { background: linear-gradient(to right, #00c06a, #005430); border-bottom: 1px solid rgba(0,0,0,.18); font-size:14px; }
    .topbar-inner { max-width: var(--max); margin: 0 auto; padding: 0 1.5rem; display: flex; align-items: center; justify-content: space-between; height: 34px; gap: 1rem; }
    .topbar-left { display: flex; align-items: center; gap: 1.25rem; color: rgba(255,255,255,.92); }
    .topbar-left a { color: rgba(255,255,255,.92); transition: color .15s; }
    .topbar-left a:hover { color: #fff; }
    .topbar-right { display: flex; align-items: center; gap: .85rem; }
    .topbar-right a { color: rgba(255,255,255,.92); font-weight: 500; transition: color .15s; white-space: nowrap; }
    .topbar-right a:hover { color: #fff; }
    .topbar-sep { color: rgba(255,255,255,.45); }
    nav.mainnav { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.97); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); box-shadow: 0 1px 4px rgba(0,0,0,.05); }
    .nav-inner { max-width: var(--max); margin: 0 auto; padding: 0 1.5rem; display: flex; align-items: center; gap: 1.5rem; height: 60px; }
    .nav-logo img { height: 32px; width: auto; }
    .nav-links { display: flex; align-items: center; gap: .1rem; flex: 1; }
    .nav-links a { padding: .38rem .62rem; border-radius: 6px; font-size:14px; font-weight: 500; color: var(--muted); white-space: nowrap; transition: color .15s, background .15s; }
    .nav-links a:hover, .nav-links a.active { color: var(--green-dark); background: var(--green-bg); }
    .nav-cta { margin-left: auto; flex-shrink: 0; display: flex; gap: .5rem; align-items: center; }
    .nav-burger { display: none; flex-direction: column; gap: 5px; padding: 6px; margin-left: auto; }
    .nav-burger span { display: block; width: 22px; height: 2px; background: var(--text); border-radius: 2px; }
    .nav-mobile { max-height: 0; overflow: hidden; visibility: hidden; background: var(--bg); border-top: 1px solid var(--border); flex-direction: column; display: flex; }
    .nav-mobile.open { max-height: calc(100vh - 60px); min-height: calc(100vh - 60px); overflow-y: auto; visibility: visible; background: #fff; }
    .nav-mobile a { padding: .7rem 1.5rem; font-size: .95rem; color: var(--text); border-bottom: 1px solid var(--border); font-weight: 500; }
    .nav-mobile .btn { margin: 1rem 1.5rem; justify-content: center; }
    .hero { background: var(--bg-alt); border-bottom: 1px solid var(--border); padding: 60px 0 64px; }
    .hero-inner { max-width: var(--max); margin: 0 auto; padding: 0 1.5rem; display: flex; flex-wrap: wrap; gap: 3.5rem; align-items: center; }
/* Kopfband als umbrechende Reihe statt festem Raster: das feste Raster konnte nur die Textspalte schrumpfen lassen, hier gemessene 239 bis 302 Pixel bei 1100 und 1366. Die Textspalte haelt jetzt 340 Pixel, die zweite Spalte 300 und hoechstens ihre bisherigen 440, und sobald beide mit dem Abstand nicht mehr nebeneinander passen, bricht die Reihe um. Breite Fenster bleiben unveraendert, weil die zweite Spalte am Deckel einfriert und den Rest zurueckgibt. */
.hero-inner > * { flex: 1 1 340px; min-width: 0; }
.hero-inner > .hero-card { flex: 1 1 300px; max-width: 440px; }
    .hero-label { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .45rem; background: var(--green-bg); color: #004d2b; padding: .28rem .8rem; border-radius: 100px; font-size:14px; font-weight: 600; margin-bottom: 1.1rem; }
    .hero h1 { margin-bottom: .9rem; }
    .hero-sub { font-size: 1.05rem; color: var(--muted); margin-bottom: 1.75rem; max-width: 500px; }
    .hero-ctas { display: flex; gap: .65rem; flex-wrap: wrap; margin-bottom: 2rem; }
    /* Seit dem 23.09.2026: unter 701px steht jeder Haupt-CTA allein auf voller
       Spaltenbreite, untereinander statt nebeneinander. Gemessen am 23.09.2026
       war der Knopf hier bei 390px Fensterbreite nur rund die halbe Spalte
       breit (Median 189 von 342 Pixeln). Gleicher Haltepunkt und gleiche
       Regel wie im Hero der Startseite (Commit 7cdde0a622) und auf den
       fuenf Seiten aus Commit 1250475cb8. */
    @media (max-width: 700px) {
      .hero-ctas { display: grid; grid-template-columns: 1fr; gap: .55rem; }
      .hero-ctas .btn { width: 100%; justify-content: center; }
    }
        .hero-social-proof {
      display: inline-flex; align-items: center; gap: .6rem;
      background: #fff; border: 1px solid var(--border);
      border-radius: 999px; padding: .35rem .85rem .35rem .45rem;
      margin-bottom: 1.5rem; font-size: .8rem; color: var(--text);
    }
    .hsp-avatars { display: flex; }
    .hsp-av {
      width: 26px; height: 26px; border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-size: .62rem; font-weight: 700; color: #fff;
      border: 2px solid #fff; margin-left: -6px; flex-shrink: 0;
    }
    .hsp-avatars .hsp-av:first-child { margin-left: 0; }
    .hero-checks { display: flex; flex-direction: column; gap: .45rem; }
    .hero-check { display: flex; align-items: center; gap: .5rem; font-size:14px; color: var(--muted); font-weight: 500; }
    .hero-check svg { color: var(--green); flex-shrink: 0; }
    .hero-card { background: var(--bg); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-md); }
    .hero-card-head { padding: 1.1rem 1.4rem; border-bottom: 1px solid var(--border); background: var(--bg-alt); }
    .hero-card-title { font-size:14px; font-weight: 700; color: var(--text); }
    .hero-card-sub { font-size:14px; color: var(--muted); margin-top: .1rem; }
    .hrow { display: flex; align-items: center; gap: .85rem; padding: .85rem 1.4rem; border-bottom: 1px solid var(--border); transition: background .15s; }
    .hrow:hover { background: var(--bg-alt); }
    .hrow-icon { flex-shrink: 0; color: var(--green); display: flex; align-items: center; justify-content: center; } .hrow-icon svg { width: 28px; height: 28px; }
    .hrow-info { flex: 1; min-width: 0; }
    .hrow-info strong { display: block; font-size:14px; font-weight: 400; }
    .hrow-info span { display: block; font-size:14px; color: var(--muted); }
    .hrow-price { font-size:14px; font-weight: 700; color: #004d2b; background: var(--green-bg); padding: .18rem .5rem; border-radius: 5px; white-space: nowrap; }
    .hero-card-foot { padding: .85rem 1.4rem; background: var(--green-bg); display: flex; align-items: center; justify-content: space-between; }
    .hero-card-foot span { font-size:14px; color: var(--muted); }
    .hero-card-foot a { font-size:14px; font-weight: 600; color: var(--green); display: flex; align-items: center; gap: .2rem; }
    .usp-strip { background: var(--bg); border-bottom: 1px solid var(--border); }
    .usp-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-left: 1px solid var(--border); }
    .usp-item { display: flex; align-items: center; gap: .7rem; padding: 1.1rem 1.3rem; border-right: 1px solid var(--border); font-weight: 400; }
    .usp-ico { flex-shrink: 0; color: var(--green); display: flex; align-items: center; justify-content: center; } .usp-ico svg { width: 28px; height: 28px; }
    .usp-item strong { display: block; font-size:14px; font-weight: 400; }
    .usp-item span   { display: block; font-size:14px; color: var(--muted); }
    .lk-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; margin-top: 2.5rem; }
    .lk-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.5rem 1.25rem; display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; }
    .lk-card svg { flex-shrink: 0; }
    .lk-card strong { font-size: .92rem; font-weight: 700; color: var(--text); }
    .lk-card p { font-size:14px; color: var(--muted); line-height: 1.55; margin: 0; }
    .prose-grid { display: grid; grid-template-columns: 1fr 300px; gap: 3rem; align-items: start; }
    .prose-body p { margin-bottom: 1rem; line-height: 1.75; }
    .prose-body p strong, .prose-body p b { font-weight: normal; }
    .prose-body h2 { margin-bottom: .75rem; }
    .prose-body h3 { margin: 1.5rem 0 .5rem; font-size: 1.05rem; font-weight: 700; }
    .prose-body ul { margin: .5rem 0 1rem 0; display: flex; flex-direction: column; gap: .35rem; }
    .prose-body li { display: flex; align-items: flex-start; gap: .45rem; font-size: .9rem; color: var(--muted); }
    .prose-body li::before { content: ""; display: block; width: 6px; height: 6px; border-radius: 50%; background: var(--green); flex-shrink: 0; margin-top: .5rem; }
    .prose-aside { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.5rem; position: sticky; top: 80px; }
    .prose-aside h3 { margin-bottom: 1rem; font-size:14px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); font-weight: 700; }
    .prose-aside ul { display: flex; flex-direction: column; gap: .6rem; }
    .prose-aside li { font-size:14px; color: var(--muted); display: flex; align-items: flex-start; gap: .5rem; }
    .prose-aside li::before { content: ""; display: block; width: 6px; height: 6px; border-radius: 50%; background: var(--green); flex-shrink: 0; margin-top: .52rem; }
    .prose-aside .btn { width: 100%; justify-content: center; margin-top: 1.25rem; }
    .faq-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 1.5rem; align-items: start; }
    .faq-col { display: flex; flex-direction: column; gap: .6rem; }
    details.faq-item { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); }
    details.faq-item summary { padding: 1rem 1.25rem; font-weight: 600; font-size: .92rem; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: .75rem; }
    details.faq-item summary::-webkit-details-marker { display: none; }
    details.faq-item summary::after { content: "+"; font-size: 1.25rem; font-weight: 300; color: var(--muted); flex-shrink: 0; line-height: 1; }
    details.faq-item[open] summary::after { content: "−"; }
    details.faq-item .faq-body { padding: 0 1.25rem 1.1rem; font-size: .875rem; color: var(--muted); line-height: 1.7; }
    details.faq-item .faq-body p + p { margin-top: .6rem; }
    details.faq-item .faq-body a { color: var(--green); text-decoration: underline; }
    details.faq-item .faq-body ul { margin: .5rem 0 0 0; display: flex; flex-direction: column; gap: .35rem; }
    details.faq-item .faq-body li { display: flex; align-items: flex-start; gap: .4rem; }
    details.faq-item .faq-body li::before { content: ""; display: block; width: 5px; height: 5px; border-radius: 50%; background: var(--green); flex-shrink: 0; margin-top: .52rem; }
    .cta-banner { background: var(--green); color: #fff; text-align: center; padding: 56px 0; }
    .cta-banner h2 { color: #fff; margin-bottom: .65rem; }
    .cta-banner > .wrap > p { color: #fff; font-size: 1rem; max-width: 480px; margin: 0 auto 1.75rem; }
    .cta-badges { display: flex; justify-content: center; gap: 1.5rem; margin-bottom: 2rem; flex-wrap: wrap; }
    .cta-badge { display: flex; align-items: center; gap: .45rem; font-size:14px; color: #fff; }
    .cta-badge svg { color: #fff; }
    footer { background: #0f172a; color: rgba(255,255,255,.75); padding: 52px 0 28px; }
    .footer-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr 1fr; gap: 2rem; margin-bottom: 2.75rem; }
    @media (max-width: 1240px) { footer .footer-grid { grid-template-columns: 1fr 1fr 1fr 1fr 1fr !important; gap: 1.25rem !important; } } @media (max-width: 1100px) { footer .footer-grid { gap: 1rem !important; } } @media (max-width: 760px) { footer .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 1.6rem !important; } } @media (max-width: 520px) { footer .footer-grid { grid-template-columns: 1fr !important; } }
    .footer-logo { margin-bottom: .6rem; }
    .footer-logo img { height: 36px; width: auto; background: #fff; border-radius: 3px; padding: 5px 12px; }
    .footer-col h4 { color: rgba(255,255,255,.75); font-size:14px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; margin-bottom: 1.6rem; }
    .footer-col ul { display: flex; flex-direction: column; gap: .55rem; }
    .footer-col a { font-size:14px; transition: color .15s; }
    .footer-col a:hover { color: #fff; }
    .footer-bottom { border-top: 1px solid rgba(255,255,255,.08); padding-top: 1.4rem; display: flex; justify-content: space-between; align-items: center; font-size:14px; flex-wrap: wrap; gap: .65rem; }
    .footer-legal { display: flex; gap: 1.1rem; flex-wrap: wrap; }
    .footer-legal a:hover { color: #fff; }
    @media (max-width: 960px) {
      .hero-inner { grid-template-columns: 1fr; }
      .hero-card { display: none; }
      .usp-grid { grid-template-columns: repeat(2, 1fr); }
      .lk-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .faq-cols { grid-template-columns: 1fr; }
      .prose-grid { grid-template-columns: 1fr; }
      .prose-aside { position: static; }
      .footer-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 640px) {
      .topbar { display: none; }
      .nav-links, .nav-cta { display: none; }
      .nav-burger { display: flex; }
      .hero { padding: 40px 0 48px; }
      section { padding: 48px 0; }
      .usp-grid { grid-template-columns: 1fr; border-left: none; }
      .usp-item { border: 1px solid var(--border); border-radius: var(--radius); }
      .lk-cards { grid-template-columns: 1fr; }
      .footer-grid { grid-template-columns: 1fr; }
      .footer-bottom { flex-direction: column; align-items: flex-start; }
    }
  
    h1.hero-label { font-size: 14px !important; font-weight: 700 !important; line-height: 1.5 !important; }
/* buch-lektorat: hero-h2-fix */
h1.hero-label ~ h2 { font-size: clamp(1.85rem, 4.5vw, 2.9rem) !important; line-height: 1.12 !important; font-weight: 700 !important; letter-spacing: -.025em !important; margin-bottom: 1.2rem !important; }
  .footer-social { display: flex; gap: 1.1rem; flex-wrap: wrap; margin-top: .5rem; }
  .footer-social a { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 6px; background: rgba(255,255,255,.1); color: rgba(255,255,255,.7) !important; transition: background .15s, color .15s; text-decoration: none !important; }
  .footer-social a:hover { background: rgba(255,255,255,.2) !important; color: #fff !important; }
/* buch-lektorat: bl-zg-css */
.bl-zg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:1.5rem}
.bl-zg-card{display:flex;flex-direction:column;gap:.55rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;box-shadow:var(--shadow);color:inherit;text-decoration:none;transition:box-shadow .18s,border-color .18s,transform .18s}
.bl-zg-card:hover{box-shadow:var(--shadow-md);border-color:#a7d5bc;transform:translateY(-2px)}
.bl-zg-ico{width:38px;height:38px;border-radius:9px;background:var(--green-bg);display:flex;align-items:center;justify-content:center;color:var(--green)}
.bl-zg-card b{font-size:1rem;color:var(--text)}
.bl-zg-card p{font-size:.9rem;color:var(--muted);line-height:1.6;margin:0}
.bl-zg-more{align-self:flex-start;margin-top:auto;font-size:.85rem;font-weight:700;color:var(--green);text-decoration:none}
@media(max-width:900px){.bl-zg-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.bl-zg-grid{grid-template-columns:1fr}}
/* buch-lektorat: css/price-examples.css */
.kd-price-examples {
  width: calc(100% + 52px);
  max-width: 556px;
  margin-top: 1.75rem;
  padding: 0;
  overflow: hidden;
  color: var(--text);
  font-family: var(--font);
  background: var(--bg);
  border: 1px solid color-mix(in srgb, var(--green) 20%, var(--border));
  border-radius: 9px;
}

.hero.kd-price-examples-hero {
  padding-bottom: 48px;
}

.kd-price-examples *,
.kd-price-examples *::before,
.kd-price-examples *::after {
  box-sizing: border-box;
}

.kd-price-examples .kd-pe-head {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 5px 10px;
  background: #e3e8ea;
  text-align: center;
}

.kd-price-examples .kd-pe-heading {
  color: #253036;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.25;
}

.kd-price-examples .kd-pe-grid {
  display: grid;
  grid-template-columns: repeat(3, auto);
  overflow: hidden;
  background: color-mix(in srgb, var(--green-bg) 8%, var(--bg));
  border-top: 1px solid color-mix(in srgb, var(--green) 22%, var(--border));
}

.kd-price-examples .kd-pe-item {
  display: grid;
  grid-template-columns: max-content auto;
  justify-content: space-between;
  align-items: center;
  min-width: 0;
  column-gap: 2px;
  padding: 7px 6px 7px 12px;
}

.kd-price-examples .kd-pe-item + .kd-pe-item {
  border-left: 1px solid var(--border);
}

.kd-price-examples .kd-pe-copy {
  min-width: 0;
}

.kd-price-examples .kd-pe-work,
.kd-price-examples .kd-pe-pages,
.kd-price-examples .kd-pe-price {
  display: block;
}

.kd-price-examples .kd-pe-work {
  overflow: visible;
  color: var(--text);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.25;
  hyphens: none;
  overflow-wrap: normal;
  text-overflow: clip;
  white-space: nowrap;
}

.kd-price-examples .kd-pe-pages {
  margin-top: .1rem;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.3;
}

.kd-price-examples .kd-pe-price {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  margin-top: 0;
  color: var(--green-dark);
  font-size: 16px;
  font-weight: 750;
  line-height: 1.1;
  white-space: nowrap;
}

.kd-city-price-card {
  overflow: hidden;
}

.kd-city-price-heading {
  margin: -1rem -1.4rem .55rem;
  padding: 7px 12px;
  background: #e3e8ea;
  color: #253036;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
}

.kd-city-price-card .hrow-label {
  font-size: .76rem;
  font-weight: 650;
  line-height: 1.2;
}

.kd-city-price-pages {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: .66rem;
  font-weight: 400;
  line-height: 1.2;
}

.kd-city-price-card .hrow-price {
  min-width: 78px;
  text-align: center;
}

.kd-city-service-name {
  min-width: 0;
}

.kd-city-unit-price {
  margin-left: auto;
  color: inherit;
  font-size: inherit;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
}

html[data-theme="dark"] .kd-price-examples .kd-pe-price {
  color: #54f39a;
}

@media (max-width: 640px) {
  .hero.kd-price-examples-hero {
    padding-bottom: 36px;
  }

  .kd-price-examples {
    width: 100%;
    max-width: none;
    margin-top: 1.5rem;
  }

  .kd-price-examples .kd-pe-grid {
    grid-template-columns: 1fr;
  }

  .kd-price-examples .kd-pe-item + .kd-pe-item {
    border-top: 1px solid var(--border);
    border-left: 0;
  }
}
/* buch-lektorat: tnav-produktseite */
/* Themen-Navigation im linken Seitenrand. Der Inhalt bleibt exakt so breit
   und so mittig wie auf einer Seite ohne Navigation: nichts rutscht nach
   rechts, nichts wird schmaler. Unter 1720px passt die Box nicht mehr in den
   Rand und wird ausgeblendet, ab 770px abwaerts bleibt das aufklappbare Navi
   ueber dem Inhalt. Die Klasse steht dreimal im Selektor, damit die Regeln
   die site-shell-Regel mit :not(:has(...)) schlagen, die auf drei Klassen
   kommt. */
@media (min-width: 1720px) {
  body main.has-topicnav.has-topicnav.has-topicnav {
    max-width: none; padding: 0;
    /* ohne Abstand zwischen den Spuren und Zeilen, damit der Inhalt
       genauso dicht unter dem Hero sitzt wie ohne Navigation */
    gap: 0;
    /* Spur 1 ist der linke Seitenrand minus 1,5rem Abstand zum Inhalt */
    grid-template-columns: calc(50% - 584px) minmax(0, 1fr);
  }
  /* holt die Inhaltsspalte ueber Spur 1 zurueck auf die volle Breite,
     Spur 1 entspricht dabei der Breite von Spur 2 minus 1168px */
  body main.has-topicnav.has-topicnav.has-topicnav > .content-col { margin-left: calc(1168px - 100%); }
  body main.has-topicnav.has-topicnav.has-topicnav .topicnav {
    grid-column: 1; justify-self: end; width: 226px; margin-right: 10px; z-index: 5;
  }
  /* Das Vorteilsband ist randlos weiss. Neben dem Navi-Kasten und rechts vom
     Raster soll dort das Seitengrau stehen, sonst geht der weisse Kasten im
     Band unter. Das Weiss sitzt jetzt genau auf dem Vierer-Raster, die
     Trennlinie wandert mit (Bandhoehe bleibt dadurch gleich). */
  body main.has-topicnav.has-topicnav.has-topicnav .usp-strip { background: var(--bg-alt); border-bottom: 0; }
  body main.has-topicnav.has-topicnav.has-topicnav .usp-strip .usp-grid { background: var(--bg); border-bottom: 1px solid var(--border); }
  /* im Dunkelmodus traegt das Band selbst #252525, das wandert mit aufs Raster */
  html[data-theme="dark"] body main.has-topicnav.has-topicnav.has-topicnav .usp-strip .usp-grid { background: #252525; }
}
/* Ab 771 Pixeln steht der Themenbaum links neben dem Inhalt, die Inhaltsspalte
   ist dadurch 783 statt 1.220 Pixel breit. Vierer-Raster haetten dort 184 Pixel
   je Karte und der Kartentext bricht an beliebiger Wortgrenze, deshalb laufen
   sie bis 1.719,98 Pixel zweispaltig. Ab 1.720 Pixeln traegt der freie
   Seitenrand die Navigation, dort steht die volle Breite wieder zur Verfuegung.
   Dreier-Raster gehoeren nicht dazu: .kdtp-grid behaelt 248 Pixel je Karte,
   und die drei Preisbeispiele regelt der Block darunter. */
@media (min-width: 771px) {
  body main.has-topicnav.has-topicnav.has-topicnav .kdtp-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 771px) and (max-width: 1719.98px) {
  body main.has-topicnav.has-topicnav.has-topicnav .usp-grid,
  body main.has-topicnav.has-topicnav.has-topicnav .lk-cards,
  body main.has-topicnav.has-topicnav.has-topicnav .bl-zg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* Die drei Preisbeispiele standen bis zum 04.09.2026 in der Zweispaltenregel
   darueber, obwohl auch sie ein Dreier-Raster sind. Zwei Spalten lassen das
   dritte Beispiel allein in einer zweiten Zeile stehen, und zwischen
   Bezeichnung und Preis klaffen dabei 109 bis 126 Pixel statt der 18,8 auf
   lektorat.html. Beides gemessen an der Live-Seite. Bezeichnung und Preis
   brechen beide nicht um, drei Spalten brauchen deshalb rund 500 Pixel. Genau
   die fehlen zwischen 1.060 und 1.359,98 Pixeln, wo der Themenbaum dem Raster
   nur 392 bis 546 Pixel laesst und drei Spalten um bis zu 26 Pixel
   ueberlaufen. In dieser Engstelle stapeln die Beispiele, genau wie sie es
   unterhalb von 640 Pixeln ohnehin tun. */
@media (min-width: 771px) {
  body main.has-topicnav.has-topicnav.has-topicnav .kd-pe-grid { grid-template-columns: repeat(3, auto); }
}
@media (min-width: 1060px) and (max-width: 1359.98px) {
  body main.has-topicnav.has-topicnav.has-topicnav .kd-pe-grid { grid-template-columns: 1fr; }
  body main.has-topicnav.has-topicnav.has-topicnav .kd-pe-item + .kd-pe-item { border-top: 1px solid var(--border); border-left: 0; }
}
/* buch-lektorat: css/team-streifen.css */
/* Lektoren-Bilderstreifen ueber den vier Team-Kaesten (Quelle: Startseite, Block team-showcase).
   Alles unter .lk-streifen gekapselt, damit .fact/.tg anderer Seiten unberuehrt bleiben.
   Eingebaut von _inject_team_streifen.py. */
.lk-streifen{display:flex;justify-content:center;margin:0 auto 1.6rem;min-width:0;max-width:100%}
.lk-streifen .ls-karte{display:grid;grid-template-columns:minmax(0,max-content) max-content;grid-template-areas:"benefit benefit" "faces more";gap:1.1rem 1rem;align-items:center;padding:1.25rem 1.55rem 1.55rem;background:#fff;border:1px solid #e0e7e3;border-radius:14px;box-shadow:0 7px 24px rgba(24,57,40,.08);max-width:100%;min-width:0;box-sizing:border-box}
.lk-streifen .ls-fact{grid-area:benefit;justify-self:center;display:flex;align-items:center;gap:.7rem;text-decoration:none;min-width:0;max-width:100%}
.lk-streifen .ls-fact>svg{color:var(--green,#08783e);flex-shrink:0}
.lk-streifen .ls-fact>span{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .7rem;min-width:0}
.lk-streifen .ls-fact .tl{display:inline-flex;font-weight:700;font-size:.78rem;line-height:19px;color:var(--text,#1a1a2e)}
.lk-streifen .ls-fact .tl span{border-bottom:1px dotted #9aa5b1}
.lk-streifen .ls-fact:hover .tl{color:var(--green-dark,#065f30)}
.lk-streifen .ls-fact:hover .tl span{border-bottom:1px solid var(--green,#08783e)}
.lk-streifen .ls-fact .sb{display:inline;font-size:.78rem;line-height:19px;color:var(--muted,#5b6470);padding-left:.7rem;border-left:1px solid #d8e1dc}
.lk-streifen .team-members{grid-area:faces;display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:center;gap:clamp(.7rem,1.15vw,1rem);min-width:0;max-width:100%}
.lk-streifen .team-person{position:relative;display:flex;flex-direction:column;align-items:center;width:88px;min-width:0;text-align:center;line-height:1.25}
.lk-streifen .team-sprite{display:block;width:78px;height:78px;border-radius:50%;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.13);background-color:var(--green-bg,#e8f5ee);background-image:url(/images/home-team-sprite-v2.webp);background-repeat:no-repeat;background-size:600% 100%}
.lk-streifen .team-sprite-gundel{background-position:0 0}
.lk-streifen .team-sprite-jana{background-position:20% 0}
.lk-streifen .team-sprite-sibylle{background-position:40% 0}
.lk-streifen .team-sprite-christina{background-position:60% 0}
.lk-streifen .person-name{display:block;margin-top:.48rem;color:var(--text,#1a1a2e);font-size:.8rem;font-weight:700}
.lk-streifen .team-person small{display:block;color:var(--muted,#5b6470);font-size:.69rem;line-height:1.28}
.lk-streifen .team-person .subject{margin-top:.12rem;color:var(--text,#1a1a2e);font-weight:400}
.lk-streifen .team-more{grid-area:more;align-self:start;display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:24px .65rem 0}
.lk-streifen .team-more-stack{display:flex;align-items:center;padding-left:9px}
.lk-streifen .team-more-stack img,.lk-streifen .team-more-count{width:30px;height:30px;margin-left:-9px;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 7px rgba(0,0,0,.16);background:var(--green-bg,#e8f5ee)}
.lk-streifen .team-more-stack img:first-child{margin-left:0}
.lk-streifen .team-more-count{display:grid;place-items:center;background:var(--green,#08783e);color:#fff;font-size:.85rem;font-weight:850}
.lk-streifen .team-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--green-dark,#065f30);font-size:.8rem;font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:900px){.lk-streifen .ls-karte{padding:1.2rem 1rem 1.4rem;grid-template-columns:minmax(0,1fr);grid-template-areas:"benefit" "faces" "more";justify-items:center;width:100%}.lk-streifen .team-more{padding-top:0}}
@media(max-width:700px){.lk-streifen .ls-karte{grid-template-columns:1fr;grid-template-areas:"benefit" "faces" "more";justify-items:center;width:100%}.lk-streifen .ls-fact,.lk-streifen .ls-fact>span{gap:.4rem}.lk-streifen .ls-fact .tl{font-size:.76rem}.lk-streifen .ls-fact .sb{font-size:.66rem;padding-left:.4rem}.lk-streifen .team-more{padding-top:0}}
@media(max-width:560px){.lk-streifen .ls-karte{padding:1rem .75rem 1.2rem}.lk-streifen .ls-fact>span{flex-direction:column;align-items:flex-start;gap:.15rem}.lk-streifen .ls-fact .sb{border-left:0;padding-left:0}.lk-streifen .team-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:1rem .75rem}.lk-streifen .team-person{width:auto}}
/* buch-lektorat: berliner-buchdruck-teaser-css */
section[data-kp-book-berliner]{padding:0 0 52px;background:var(--bg-alt)}
section[data-kp-book-berliner] .bb-teaser-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:2rem;align-items:center;padding:1.65rem 1.8rem;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 28px rgba(15,23,42,.08)}
section[data-kp-book-berliner] .bb-teaser-label{margin:0 0 .55rem;color:var(--green);font-size:.75rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
section[data-kp-book-berliner] .bb-teaser-logo{display:block;width:min(100%,340px);height:auto;margin:0 0 .85rem}
section[data-kp-book-berliner] h2{margin:0 0 .65rem;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.2;letter-spacing:-.02em}
section[data-kp-book-berliner] .bb-teaser-copy>p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.65}
section[data-kp-book-berliner] .bb-teaser-copy>p a{color:var(--green);font-weight:700;text-decoration:underline;text-underline-offset:3px}
section[data-kp-book-berliner] .bb-teaser-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .8rem;margin:1rem 0 1.2rem;padding:0;list-style:none}
section[data-kp-book-berliner] .bb-teaser-points li{display:flex;gap:.45rem;color:var(--text);font-size:.84rem;line-height:1.4}
section[data-kp-book-berliner] .bb-teaser-points span{color:var(--green);font-weight:800}
section[data-kp-book-berliner] .bb-teaser-actions{display:flex;flex-wrap:wrap;gap:.65rem}
section[data-kp-book-berliner] .bb-teaser-visual{display:flex;align-items:center;justify-content:center;min-height:210px;padding:1rem;background:linear-gradient(145deg,#f8fafc,#eef7f1);border:1px solid var(--border);border-radius:13px}
section[data-kp-book-berliner] .bb-teaser-visual img{display:block;width:min(100%,500px);height:auto}
@media(max-width:760px){section[data-kp-book-berliner]{padding-bottom:40px}section[data-kp-book-berliner] .bb-teaser-card{grid-template-columns:1fr;padding:1.3rem;gap:1.2rem}section[data-kp-book-berliner] .bb-teaser-visual{min-height:170px}section[data-kp-book-berliner] .bb-teaser-points{grid-template-columns:1fr}}
/* buch-lektorat: css/topicnav-edge.css */
/* Seiten mit Partnerleiste (`.topicnav-lead`) tragen dieses Stylesheet nicht
   alle absichtlich: der Kopf wird ueber die Seitenfamilien geteilt, deshalb
   liegt der Link auch auf rund 228 Ratgeber- und Wissensseiten. Echte
   Randnavi-Seiten sind allein die Landingpages aus
   `_topicnav_inject.EDGE_NAV_SLUGS`; nur bei ihnen enthaelt die Inhaltsspalte
   weder `.article` noch `.wrap`, sondern volle Seitenflaechen. Genau diese
   Unterscheidung steht unten in jedem Selektor: ab 1720 Pixeln darf die
   Navigation nur auf ihnen an den freien Seitenrand wandern. Auf allen
   anderen bleibt sie in Spalte 1 des Rasters, sonst reisst zwischen Baum und
   Inhaltskarte eine Luecke von 222 bis 363 Pixeln auf. */
@media(min-width:771px) and (max-width:1719.98px){
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-lead{grid-column:2!important;grid-row:1;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-wrap{display:block;grid-column:1;grid-row:1/span 2;align-self:stretch}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-wrap>.topicnav{margin:2rem 0}
  /* Nur die Artikelspalte gehoert in Zeile 2. Der Nachtragsblock nach der
     Partnerleiste traegt dieselbe Klasse content-col und landete dadurch in
     derselben Gitterzelle, also passgenau ueber dem Artikel: sichtbar auf 142
     Seiten zwischen 771 und 1719 Pixeln, also auf den haeufigsten
     Desktopbreiten. */
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col:not(.content-col-after-partner){grid-column:2;grid-row:2;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col.content-col-after-partner{grid-column:2;grid-row:auto;min-width:0}
}
@media(min-width:1440px) and (max-width:1719.98px){
  body main.has-topicnav.has-topicnav.has-topicnav:not(:has(>.content-col>.wrap)):has(>.topicnav-lead)>.topicnav-wrap>.topicnav{width:226px;margin:2rem 4.45rem 2rem auto}
}
/* Ab 1720 Pixeln gilt fuer alle Seiten, die keine echten Randnavi-Seiten sind,
   dieselbe Rasterlage wie darunter. Ohne diesen Block faellt der Wrapper auf
   `display:contents` zurueck, die Partnerleiste zieht sich ueber beide
   Spalten und der Baum rutscht unter sie. */
@media(min-width:1720px){
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.topicnav-lead{grid-column:2!important;grid-row:1;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.topicnav-wrap{display:block;grid-column:1;grid-row:1/span 2;align-self:stretch}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.topicnav-wrap>.topicnav{margin:2rem 0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.content-col:not(.content-col-after-partner){grid-column:2;grid-row:2;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.content-col.content-col-after-partner{grid-column:2;grid-row:auto;min-width:0}
  /* Artikelseiten zentrieren ihre 800-Pixel-Spalte im Viewport. Der Baum
     steht deshalb rechtsbuendig in Spalte 1, genau wie zwischen 1440 und
     1719 Pixeln. Diese Regel muss hinter der Zeile mit `margin:2rem 0`
     stehen, beide Selektoren sind gleich spezifisch. */
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):has(>.content-col>.article)>.topicnav-wrap>.topicnav{width:226px;margin:2rem 4.45rem 2rem auto}
}
@media(min-width:1720px){
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):not(:has(>.content-col>.wrap)):not(:has(>.content-col>.article)){position:relative}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):not(:has(>.content-col>.wrap)):not(:has(>.content-col>.article))>.topicnav-wrap{display:block;position:absolute;top:0;bottom:0;left:calc(50% - 848px);width:226px;z-index:5;background:transparent!important;border:0!important}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):not(:has(>.content-col>.wrap)):not(:has(>.content-col>.article))>.topicnav-wrap>.topicnav{width:226px;margin:2rem 0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col .section-header,
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col>.cta-banner>:is(h2,h3,p){box-sizing:border-box;width:min(calc(100% - 3rem),1168px);margin-left:auto;margin-right:auto}
  html[data-kd-theme-page="typ-ki"] body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-wrap{display:block!important}
  html[data-kd-theme-page="typ-ki"] body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col{width:auto!important;grid-column:2!important}
}
/* buch-lektorat: ps-topstrip-css */
.ps-host{background:var(--bg-alt,#f5f7fa);padding:1.25rem 1.5rem .25rem}
.ps-wrap{max-width:1120px;margin:0 auto;display:flex;justify-content:center}
.ps-card{position:relative;background:#fff;border:1px solid var(--border,#e5e7eb);border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.08);padding:1.05rem 1.7rem .9rem;width:-moz-fit-content;width:fit-content;max-width:100%}
.ps-pill{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);background:#fff;border:1px solid var(--border,#e5e7eb);border-radius:999px;padding:.16rem .8rem;font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#6b7280;box-shadow:0 1px 3px rgba(0,0,0,.05);white-space:nowrap}
.ps-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 2.2rem}
.ps-logos a{display:flex;align-items:center}
.ps-logos img{height:28px;width:auto;max-width:120px;object-fit:contain;opacity:.9;display:block}
.ps-desc{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:.4rem 1.1rem}
.ps-cell{display:flex;align-items:center;gap:.8rem;min-width:0;text-decoration:none;color:inherit;padding:.15rem 0}
.ps-cell+.ps-cell{border-left:1px solid var(--border,#e5e7eb);padding-left:1.1rem}
.ps-cell img{height:30px;width:auto;max-width:92px;object-fit:contain;flex-shrink:0;opacity:.92}
.ps-cell .t{min-width:0}
.ps-cell .t b{display:block;font-size:.82rem;font-weight:700;color:var(--text,#1a1a2e);line-height:1.2}
.ps-cell .t span{font-size:.75rem;color:#64748b;line-height:1.25;display:block}
.ps-single{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;justify-content:center}
.ps-single img{height:34px;width:auto;max-width:150px;object-fit:contain;padding-right:1.1rem;border-right:1px solid var(--border,#e5e7eb)}
.ps-single .txt{font-size:.9rem;color:#374151;max-width:420px}
.ps-single .txt b{color:var(--text,#1a1a2e)}
.ps-single .txt .spons{display:block;font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#475569}
.ps-single .ps-btn{background:linear-gradient(to right,#00c06a,#005430);color:#fff;padding:.5rem 1.1rem;border-radius:7px;font-size:.85rem;font-weight:600;text-decoration:none;white-space:nowrap}
@media(max-width:620px){.ps-cell+.ps-cell{border-left:0;padding-left:0}.ps-single .ps-btn{margin:0 auto}}
/*ps-quad*/
.content-col>.ps-host,main>.ps-host{background:transparent;padding:.8rem 1.25rem .2rem}
@media(min-width:771px){.content-col>.ps-host{padding:.6rem 0 .2rem}}
.ps-card-quad{width:100%;max-width:800px;box-sizing:border-box;padding:1.1rem 1.4rem 1rem}
.ps-logos-quad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 1.2rem;justify-items:center;align-items:center}
.ps-logos-quad a{justify-content:center}
.ps-logos-quad img{height:26px;max-width:112px}
@media(max-width:560px){.ps-logos-quad{grid-template-columns:repeat(2,minmax(0,1fr))}
.ps-logos-quad a:last-child:nth-child(odd){grid-column:1/-1}}
/*/ps-quad*/
/* buch-lektorat: ps-topstrip-fix */
@media(min-width:1100px){.ps-desc{flex-wrap:nowrap;gap:.4rem .7rem}.ps-cell+.ps-cell{padding-left:.7rem}.ps-cell img{height:26px}.ps-cell .t b{font-size:.78rem}.ps-cell .t span{font-size:.71rem}.ps-cell .t b,.ps-cell .t span{white-space:nowrap}}
/* buch-lektorat: inline */
@media(max-width:770px){main.has-topicnav>.content-col>article>section>.wrap,main.has-grpnav>.content-col>article>section>.wrap{box-sizing:border-box;padding-left:1.5rem;padding-right:1.5rem}}
/* buch-lektorat: inline */
@media(min-width:1720px){body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col>article>.cta-banner>:is(h2,h3,p){box-sizing:border-box;width:min(calc(100% - 3rem),1168px);margin-left:auto;margin-right:auto}}
/* buch-lektorat: inline */
.kdtp-wrap{max-width:1040px;margin:2.6rem auto;padding:0 1.25rem;font-family:inherit}
.kdtp-head{display:flex;align-items:center;justify-content:center;gap:.5rem .7rem;flex-wrap:wrap;margin-bottom:1.2rem;text-align:center}
.kdtp-head .kdtp-htxt{font-size:1.05rem;font-weight:700;color:#1a1a2e}
.kdtp-head a{color:#16794a;text-decoration:none;font-size:.9rem;font-weight:600;white-space:nowrap}
.kdtp-head a:hover{text-decoration:underline}
.kdtp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}@media(max-width:770px){.kdtp-grid{grid-template-columns:1fr}}@media(max-width:1100px){main.has-topicnav .kdtp-grid{grid-template-columns:1fr}}
.kdtp-card{border:1px solid #0f5c38;border-radius:12px;background:linear-gradient(to right,#00c06a,#005430);padding:1.1rem 1.2rem;display:flex;flex-direction:column;box-shadow:0 2px 10px rgba(22,121,74,.22)}
.kdtp-card .kdtp-ttl{font-size:1rem;font-weight:700;margin:0 0 .45rem;color:#fff;line-height:1.3}
.kdtp-card .kdtp-txt{font-size:.92rem;line-height:1.62;color:#fff;margin:0 0 .9rem;flex:1}
.kdtp-card .kdtp-meta{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#fff;margin-top:auto;flex-wrap:wrap}
.kdtp-card .kdtp-auth{font-weight:700;color:#fff}
/* buch-lektorat: kd-mehr-css */
.kd-mehr{display:block;background:#f8fafc;border-top:1px solid #e5e7eb;padding:2.25rem 0}.kd-mehr-titel{font-size:1rem;font-weight:700;color:#111827;margin:0 0 1rem}.kd-mehr-karten{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:1rem}.kd-mehr-karte{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.1rem}.kd-mehr-karte-titel{display:block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin:0 0 .55rem}.kd-mehr-karte ul{list-style:none;margin:0;padding:0}.kd-mehr-karte.kd-mehr-breit ul{columns:3 220px;column-gap:2rem}.kd-mehr-karte li{break-inside:avoid;margin:0;padding:0}.kd-mehr-karte li::before{content:none}.kd-mehr .kd-mehr-karte a{display:flex;gap:.45rem;color:#1f2937;border:0;font-size:.875rem;padding:.28rem 0}:root .kd-mehr .kd-mehr-karte a[href]{text-decoration-line:none!important}.kd-mehr-karte a::before{content:"\203A";color:#006b3e;font-weight:700;flex:none}.kd-mehr-karte ul+.kd-mehr-karte-titel{margin-top:.9rem}.kd-mehr .kd-mehr-karte a:hover{color:#006b3e}

/* Partnerleiste: Raster gegen site-shell (nowrap, overflow) durchsetzen */
.ps-host .ps-card .ps-logos.ps-logos-quad{display:grid;overflow:visible;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:1.2rem}
.ps-host .ps-card .ps-logos.ps-logos-quad img{max-width:112px}
@media(max-width:560px){.ps-host .ps-card .ps-logos.ps-logos-quad{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ps-host .ps-card .ps-logos.ps-logos-quad a:last-child:nth-child(4n+1){grid-column:1/-1}
