/* Quelle: styles-bildnachweise.css */
/* Bisheriger eingebetteter Seitenstil */

    :root{
      --background:#fbfaf7;
      --surface:#ffffff;
      --surface-soft:#f3f5f0;
      --ink:#25373a;
      --ink-soft:#5b6e70;
      --accent:#55776d;
      --accent-dark:#36554e;
      --accent-light:#e8eeeb;
      --border:#dfe5e1;
      --shadow:0 14px 40px rgba(33,53,55,.07);
      --radius:18px;
      --max:1120px;
    }

    *, *::before, *::after { box-sizing:border-box; }

    html { scroll-behavior:smooth; }

    body {
      margin:0;
      font-family: "Avenir Next", "Segoe UI", Arial, sans-serif;
      color:var(--ink);
      background:var(--background);
      line-height:1.65;
      -webkit-font-smoothing:antialiased;
    }

    a {
      color:var(--accent-dark);
      text-decoration-thickness:1px;
      text-underline-offset:.2em;
    }

    a:hover { color:var(--accent); }

    .skip-link {
      position:absolute;
      top:-4rem;
      left:1rem;
      background:var(--accent-dark);
      color:#fff;
      padding:.65rem 1rem;
      z-index:10;
      border-radius:8px;
    }

    .skip-link:focus { top:1rem; }

    .topbar {
      height:9px;
      background:var(--accent);
    }

    .site-header {
      border-bottom:1px solid var(--border);
      background:rgba(251,250,247,.96);
    }

    .nav {
      max-width:var(--max);
      margin:0 auto;
      padding:1.15rem clamp(1.25rem, 5vw, 2.5rem);
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1.2rem;
    }

    .brand {
      display:flex;
      flex-direction:column;
      color:var(--ink);
      text-decoration:none;
      letter-spacing:.01em;
    }

    .brand strong {
      font-size:1.08rem;
      font-weight:600;
    }

    .brand span {
      font-size:.83rem;
      color:var(--ink-soft);
    }

    .back-link {
      font-size:.95rem;
      text-decoration:none;
      border:1px solid var(--border);
      border-radius:999px;
      padding:.48rem .95rem;
      background:#fff;
      white-space:nowrap;
    }

    .hero {
      max-width:var(--max);
      margin:0 auto;
      padding:clamp(3.2rem, 8vw, 5.2rem) clamp(1.25rem, 5vw, 2.5rem) 2.2rem;
    }

    .eyebrow {
      margin:0 0 .8rem;
      text-transform:uppercase;
      letter-spacing:.14em;
      font-size:.73rem;
      font-weight:600;
      color:var(--accent);
    }

    h1 {
      font-family: Georgia, "Times New Roman", serif;
      font-size:clamp(2.35rem, 5vw, 3.65rem);
      font-weight:400;
      letter-spacing:-.035em;
      line-height:1.13;
      margin:0 0 1rem;
      color:#233638;
    }

    .intro {
      max-width:720px;
      font-size:clamp(1rem, 2vw, 1.12rem);
      color:var(--ink-soft);
      margin:0;
    }

    main {
      max-width:var(--max);
      margin:0 auto;
      padding:0 clamp(1.25rem, 5vw, 2.5rem) clamp(3rem, 7vw, 5.5rem);
    }

    .notice {
      display:grid;
      grid-template-columns:48px 1fr;
      align-items:start;
      gap:1.1rem;
      padding:clamp(1.25rem, 4vw, 1.8rem);
      background:var(--surface-soft);
      border:1px solid var(--border);
      border-radius:var(--radius);
      margin:1.5rem 0 3rem;
    }

    .notice-icon {
      width:48px;
      height:48px;
      border-radius:50%;
      background:var(--accent-light);
      display:grid;
      place-items:center;
      font-weight:600;
      font-size:1.15rem;
      color:var(--accent-dark);
    }

    .notice h2 {
      font-size:1.12rem;
      margin:0 0 .35rem;
      line-height:1.35;
    }

    .notice p { margin:0; color:var(--ink-soft); }

    .section-head {
      margin:0 0 1.35rem;
    }

    h2 {
      font-size:clamp(1.36rem, 2.3vw, 1.62rem);
      margin:0 0 .38rem;
      line-height:1.3;
      font-weight:600;
      color:#25393b;
    }

    .section-head p {
      color:var(--ink-soft);
      margin:0;
      max-width:760px;
    }

    .cards {
      display:grid;
      grid-template-columns:repeat(2, minmax(0, 1fr));
      gap:1.1rem;
      margin-bottom:3rem;
    }

    .card {
      background:var(--surface);
      border:1px solid var(--border);
      border-radius:var(--radius);
      padding:clamp(1.2rem, 3vw, 1.55rem);
      box-shadow:var(--shadow);
    }

    .card.wide { grid-column:1 / -1; }

    h3 {
      margin:0 0 .9rem;
      font-size:1.08rem;
      font-weight:600;
      line-height:1.4;
    }

    .sources {
      list-style:none;
      margin:0;
      padding:0;
      display:flex;
      flex-direction:column;
      gap:.85rem;
    }

    .sources li {
      padding-left:1rem;
      position:relative;
      font-size:.96rem;
      color:var(--ink-soft);
    }

    .sources li::before {
      content:"";
      position:absolute;
      top:.65rem;
      left:0;
      width:6px;
      height:6px;
      background:var(--accent);
      border-radius:50%;
    }

    .sources strong {
      color:var(--ink);
      font-weight:600;
    }

    .source-link {
      display:block;
      margin-top:.2rem;
      font-size:.86rem;
      overflow-wrap:anywhere;
    }

    .ki-grid {
      display:grid;
      grid-template-columns:repeat(2, minmax(0, 1fr));
      gap:1rem;
    }

    .ki-item {
      border:1px solid var(--border);
      background:var(--surface);
      border-radius:14px;
      padding:1.15rem 1.25rem;
    }

    .ki-item strong {
      display:block;
      margin-bottom:.25rem;
    }

    .ki-item span {
      font-size:.95rem;
      color:var(--ink-soft);
    }

    .symbolbild {
      margin-top:3rem;
      border-top:1px solid var(--border);
      padding-top:1.5rem;
      color:var(--ink-soft);
      font-size:.95rem;
    }

    .site-footer {
      background:#233739;
      color:#edf1ef;
      padding:2rem clamp(1.25rem, 5vw, 2.5rem);
    }

    .footer-inner {
      max-width:var(--max);
      margin:0 auto;
      display:flex;
      justify-content:space-between;
      align-items:flex-end;
      gap:1.25rem;
      flex-wrap:wrap;
    }

    .footer-inner p { margin:.25rem 0; font-size:.9rem; color:#cad6d2; }

    .footer-links {
      display:flex;
      flex-wrap:wrap;
      gap:1.15rem;
      font-size:.92rem;
    }

    .footer-links a { color:#edf1ef; }

    @media (max-width:760px) {
      .cards, .ki-grid { grid-template-columns:1fr; }
      .notice { grid-template-columns:1fr; }
      .nav { align-items:flex-start; flex-direction:column; }
      .back-link { margin-top:.35rem; }
    }
  