/* Hinter die Dinge – Website V30.07 */
:root {
  color-scheme: light;
  --bg: #f6f2eb;
  --paper: #fffaf2;
  --text: #222222;
  --muted: #66615a;
  --line: #d8cfc0;
  --accent: #1f342c;
  --accent-soft: #e7dfd1;
  --header-bg: rgba(255,250,242,.96);
  --hero-bg: linear-gradient(180deg, #fffaf2 0%, #f6f2eb 100%);
  --lead: #3b3833;
  --highlight: #e7dfd1;
  --highlight-line: #d8cfc0;
  --highlight-shadow: 0 12px 30px rgba(34,34,34,.04);
  --quote-bg: rgba(255,255,255,.55);
  --button-text: #ffffff;
  --footer-bg: #fffaf2;
  --nav-hover-bg: rgba(31,52,44,.06);
  --nav-active-shadow: rgba(31,52,44,.22);
  --section-shadow: 0 12px 30px rgba(34,34,34,.04);
  --image-border: #d8cfc0;
  --image-shadow: 0 12px 26px rgba(0,0,0,.12);
  --menu-shadow: 0 14px 34px rgba(34,34,34,.14);
  --theme-icon-border: rgba(31,52,44,.45);
}

html[data-theme="dark"] {
  color-scheme: dark;
  --bg: #1f1d1a;
  --paper: #2a2722;
  --text: #f1ece3;
  --muted: #bcb5aa;
  --line: #504940;
  --accent: #e2d1b5;
  --accent-soft: #3a352f;
  --header-bg: rgba(33,31,28,.96);
  --hero-bg: linear-gradient(180deg, #2a2722 0%, #211f1c 100%);
  --lead: #ddd5ca;
  --highlight: #39342d;
  --highlight-line: #665d50;
  --highlight-shadow: 0 14px 34px rgba(0,0,0,.27);
  --quote-bg: rgba(255,255,255,.045);
  --button-text: #211f1c;
  --footer-bg: #26231f;
  --nav-hover-bg: rgba(226,209,181,.10);
  --nav-active-shadow: rgba(226,209,181,.28);
  --section-shadow: 0 12px 30px rgba(0,0,0,.20);
  --image-border: #5b544a;
  --image-shadow: 0 12px 28px rgba(0,0,0,.32);
  --menu-shadow: 0 14px 34px rgba(0,0,0,.34);
  --theme-icon-border: rgba(241,236,227,.55);
}

@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #1f1d1a;
    --paper: #2a2722;
    --text: #f1ece3;
    --muted: #bcb5aa;
    --line: #504940;
    --accent: #e2d1b5;
    --accent-soft: #3a352f;
    --header-bg: rgba(33,31,28,.96);
    --hero-bg: linear-gradient(180deg, #2a2722 0%, #211f1c 100%);
    --lead: #ddd5ca;
    --highlight: #39342d;
  --highlight-line: #665d50;
  --highlight-shadow: 0 14px 34px rgba(0,0,0,.27);
    --quote-bg: rgba(255,255,255,.045);
    --button-text: #211f1c;
    --footer-bg: #26231f;
    --nav-hover-bg: rgba(226,209,181,.10);
    --nav-active-shadow: rgba(226,209,181,.28);
    --section-shadow: 0 12px 30px rgba(0,0,0,.20);
    --image-border: #5b544a;
    --image-shadow: 0 12px 28px rgba(0,0,0,.32);
    --menu-shadow: 0 14px 34px rgba(0,0,0,.34);
    --theme-icon-border: rgba(241,236,227,.55);
  }
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { background: var(--bg); }
body { margin: 0; font-family: Georgia, "Times New Roman", serif; color: var(--text); background: var(--bg); line-height: 1.65; font-size: 18px; }
a { color: var(--accent); text-decoration-thickness: 1px; text-underline-offset: 3px; }
button { font: inherit; }
.container { width: min(1040px, calc(100% - 40px)); margin: 0 auto; }
.site-header { background: var(--header-bg); border-bottom: 1px solid var(--line); position: -webkit-sticky; position: sticky; top: 0; z-index: 20; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.header-inner { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; min-height: 76px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; font-size: clamp(20px, 2vw, 22px); text-decoration: none; color: var(--text); letter-spacing: .2px; white-space: nowrap; }
.brand picture { display: inline-flex; flex: 0 0 auto; }
.brand-logo { display: block; width: 38px; height: 38px; object-fit: contain; }
.brand-name { display: inline-block; }
.main-nav { min-width: 0; justify-self: end; display: flex; flex-wrap: nowrap; align-items: center; gap: 6px; white-space: nowrap; font-family: system-ui, -apple-system, Segoe UI, sans-serif; font-size: clamp(13px, 1.35vw, 15px); }
.main-nav a, .nav-more-toggle { text-decoration: none; color: var(--muted); padding: 7px 8px; border-radius: 999px; transition: background .15s ease, color .15s ease, box-shadow .15s ease; }
.main-nav a:hover, .nav-more-toggle:hover { color: var(--accent); background: var(--nav-hover-bg); }
.main-nav a.active, .nav-more-toggle.active { color: var(--accent); font-weight: 800; background: var(--accent-soft); box-shadow: inset 0 0 0 1px var(--nav-active-shadow); }

.theme-picker { position: relative; justify-self: end; font-family: system-ui, -apple-system, Segoe UI, sans-serif; }
.theme-toggle { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--nav-active-shadow); border-radius: 999px; background: var(--accent-soft); color: var(--text); cursor: pointer; box-shadow: none; transition: transform .15s ease, background .15s ease, border-color .15s ease; }
.theme-toggle:hover { transform: translateY(-1px); border-color: var(--accent); background: var(--nav-hover-bg); }
.theme-toggle:focus-visible, .theme-option:focus-visible, .nav-more-toggle:focus-visible, .nav-dropdown-menu a:focus-visible { outline: 3px solid color-mix(in srgb, var(--accent) 55%, transparent); outline-offset: 2px; }
.theme-toggle-icon { width: 18px; height: 18px; display: block; border-radius: 50%; border: 1px solid var(--theme-icon-border); background: linear-gradient(90deg, #171614 0 50%, #f6f2eb 50% 100%); box-shadow: none; }
.theme-menu { position: absolute; right: 0; top: calc(100% + 10px); z-index: 50; min-width: 168px; padding: 7px; border: 1px solid var(--line); border-radius: 14px; background: var(--paper); box-shadow: var(--menu-shadow); }
.theme-option { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; border: 0; border-radius: 10px; padding: 9px 11px; background: transparent; color: var(--text); cursor: pointer; font-size: 14px; text-align: left; }
.theme-option:hover { background: var(--accent-soft); }
.theme-option[aria-checked="true"] { font-weight: 750; color: var(--accent); }
.theme-option[aria-checked="true"]::after { content: "✓"; font-weight: 800; }

.hero { padding: 72px 0 54px; border-bottom: 1px solid var(--line); background: var(--hero-bg); }
.eyebrow { text-transform: uppercase; letter-spacing: .14em; font-family: system-ui, -apple-system, Segoe UI, sans-serif; font-size: 13px; color: var(--muted); margin: 0 0 12px; }
h1 { font-size: clamp(42px, 7vw, 76px); line-height: 1.05; margin: 0 0 18px; letter-spacing: -.03em; }
.lead { font-size: clamp(21px, 3vw, 30px); max-width: 850px; color: var(--lead); margin: 0; }
.content { padding: 48px 0 72px; }
.section { background: var(--paper); border: 1px solid var(--line); border-radius: 18px; padding: clamp(24px, 5vw, 48px); margin-bottom: 28px; box-shadow: var(--section-shadow); }
.section.highlight { background: var(--highlight); border-color: var(--highlight-line); box-shadow: var(--highlight-shadow); }
h2 { font-size: clamp(27px, 4vw, 42px); line-height: 1.15; margin: 0 0 20px; letter-spacing: -.02em; }
h3 { font-size: 28px; margin: 0 0 8px; }
p { margin: 0 0 18px; }
ul { margin: 0 0 18px 1.2em; padding: 0; }
li { margin: 0 0 8px; }
blockquote { margin: 24px 0; padding: 18px 22px; border-left: 4px solid var(--accent); background: var(--quote-bg); font-size: 1.18em; font-weight: 700; }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.button { display: inline-block; font-family: system-ui, -apple-system, Segoe UI, sans-serif; background: var(--accent); color: var(--button-text); padding: 12px 18px; border-radius: 999px; text-decoration: none; font-size: 15px; font-weight: 700; }
.button.secondary { background: transparent; color: var(--accent); border: 1px solid var(--accent); }
.book-grid { display: grid; grid-template-columns: minmax(190px, 260px) 1fr; gap: 32px; align-items: start; }
.book-cover { display: block; width: 100%; height: auto; max-width: 260px; border-radius: 12px; border: 1px solid var(--image-border); box-shadow: var(--image-shadow); background: #fff; }
.author-grid { display: grid; grid-template-columns: minmax(190px, 260px) 1fr; gap: 32px; align-items: start; }
.author-photo { display: block; width: 100%; height: auto; max-width: 260px; border-radius: 16px; border: 1px solid var(--image-border); box-shadow: var(--image-shadow); background: #fff; }
.facts { display: grid; grid-template-columns: 160px 1fr; gap: 8px 20px; }
.facts dt { font-weight: 700; }
.facts dd { margin: 0; }
.site-footer { border-top: 1px solid var(--line); background: var(--footer-bg); padding: 34px 0; color: var(--muted); font-family: system-ui, -apple-system, Segoe UI, sans-serif; font-size: 14px; }
.footer-inner { display: flex; justify-content: space-between; gap: 24px; align-items: end; }
.footer-three { display: grid; grid-template-columns: 1fr auto 1fr; align-items: stretch; column-gap: 32px; }
.footer-brand-lockup { display: flex; align-items: flex-start; gap: 11px; min-width: 0; }
.footer-brand-lockup picture { display: inline-flex; flex: 0 0 auto; margin-top: 1px; }
.footer-logo { display: block; width: 27px; height: 27px; object-fit: contain; }
.footer-brand { margin: 0; }
.footer-social { display: flex; gap: 0; justify-content: center; align-items: center; align-self: start; font-size: 14px; font-weight: 700; white-space: nowrap; padding-top: 0; }
.footer-legal { justify-self: end; align-self: end; font-size: 14px; white-space: nowrap; }
.footer-social-icons { align-self: center; display: flex; align-items: center; justify-content: center; gap: 20px; padding-top: 0; line-height: 1; }
.social-icon-link { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; text-decoration: none; color: var(--accent); }
.social-icon-link:hover { opacity: .78; }
.social-icon-link picture { display: inline-flex; align-items: center; justify-content: center; }
.social-icon { display: block; max-width: 24px; max-height: 24px; width: auto; height: auto; }
.social-icon-linkedin, .social-icon-x { max-height: 23px; }

@media (min-width: 761px) and (max-width: 920px) {
  .container { width: min(1040px, calc(100% - 28px)); }
  .header-inner { gap: 8px; }
  .brand { gap: 8px; font-size: 19px; }
  .brand-logo { width: 32px; height: 32px; }
  .main-nav { gap: 3px; font-size: 13px; }
  .main-nav a { padding: 6px 6px; }
  .theme-toggle { width: 36px; height: 36px; }
  .theme-toggle-icon { width: 17px; height: 17px; }
}

@media (max-width: 760px) {
  body { font-size: 17px; }
  .header-inner { grid-template-columns: 1fr auto; gap: 12px 16px; align-items: center; padding: 18px 0; }
  .brand { grid-column: 1; grid-row: 1; gap: 9px; }
  .brand-logo { width: 34px; height: 34px; }
  .theme-picker { grid-column: 2; grid-row: 1; }
  .main-nav {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: start;
    width: 100%;
    max-width: 100%;
    flex-wrap: wrap;
    white-space: normal;
    gap: 10px 14px;
    overflow: visible;
  }
  .main-nav a, .nav-more-toggle { white-space: nowrap; }
  .hero { padding: 46px 0 38px; }
  .book-grid, .author-grid { grid-template-columns: 1fr; }
  .book-cover, .author-photo { max-width: 220px; }
  .footer-inner { flex-direction: column; align-items: flex-start; }
  .footer-three { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
  .footer-social-icons { align-self: flex-start; justify-content: flex-start; gap: 18px; }
  .footer-legal { justify-self: auto; align-self: auto; white-space: normal; }
  .facts { grid-template-columns: 1fr; }
  .theme-menu { right: 0; }
}

@media (max-width: 430px) {
  .main-nav { column-gap: 12px; row-gap: 10px; }
  .main-nav a, .nav-more-toggle { padding-left: 7px; padding-right: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}


/* V29: kompakte Hauptnavigation mit mobilem Beiträge-Eintrag im Dropdown */
.nav-dropdown { position: relative; display: inline-flex; align-items: center; }
.nav-more-toggle {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: var(--muted);
  padding: 7px 8px;
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
  transition: background .15s ease, color .15s ease, box-shadow .15s ease;
}
.nav-chevron { display: inline-block; margin-left: 2px; font-size: .82em; transition: transform .15s ease; }
.nav-more-toggle[aria-expanded="true"] .nav-chevron { transform: rotate(180deg); }
.nav-dropdown-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 10px);
  z-index: 60;
  width: max-content;
  min-width: 210px;
  padding: 7px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--paper);
  box-shadow: var(--menu-shadow);
  white-space: normal;
}
.nav-dropdown-menu a {
  display: block;
  width: 100%;
  padding: 9px 11px;
  border-radius: 10px;
  color: var(--text);
  text-align: left;
  white-space: nowrap;
}
.nav-dropdown-menu a:hover { background: var(--accent-soft); }
.nav-dropdown-menu a.active { color: var(--accent); background: var(--accent-soft); font-weight: 800; box-shadow: none; }

/* V29: redaktioneller Bereich Beiträge */
.contribution-meta {
  margin-bottom: 10px;
  color: var(--muted);
  font-family: system-ui, -apple-system, Segoe UI, sans-serif;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.contribution-coming-soon { position: relative; overflow: hidden; }
.contribution-coming-soon::after {
  content: "Hinter die Dinge";
  position: absolute;
  right: 24px;
  bottom: 18px;
  color: var(--muted);
  font-family: system-ui, -apple-system, Segoe UI, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  opacity: .72;
}

@media (max-width: 760px) {
  .main-nav { position: relative; }
  .nav-dropdown { position: static; }
  .nav-dropdown-menu {
    left: 0;
    right: auto;
    top: calc(100% + 8px);
    width: min(260px, 100%);
    min-width: 0;
  }
}


/* V29: Beiträge bleibt auf Desktop sichtbar und wandert nur mobil in „Mehr“. */
.nav-contributions-mobile { display: none !important; }

@media (max-width: 760px) {
  .main-nav { flex-wrap: nowrap; gap: 10px 12px; }
  .main-nav .nav-contributions-primary { display: none; }
  .nav-dropdown-menu .nav-contributions-mobile { display: block !important; }
  .nav-more-toggle.mobile-active {
    color: var(--accent);
    font-weight: 800;
    background: var(--accent-soft);
    box-shadow: inset 0 0 0 1px var(--nav-active-shadow);
  }
}

@media (max-width: 380px) {
  .main-nav { gap: 8px; font-size: 12.5px; }
  .main-nav a, .nav-more-toggle { padding-left: 5px; padding-right: 5px; }
}

@media (max-width: 350px) {
  .main-nav { gap: 4px; font-size: 12px; }
  .main-nav a, .nav-more-toggle { padding-left: 4px; padding-right: 4px; }
}


/* V29: veröffentlichte PDF-Beiträge und vorbereiteter Beitrags-Slider */
.contribution-card-grid,
.article-publication-grid {
  display: grid;
  grid-template-columns: minmax(190px, 290px) 1fr;
  gap: 32px;
  align-items: start;
}
.contribution-preview-link {
  display: block;
  border-radius: 14px;
  text-decoration: none;
}
.contribution-preview {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--image-border);
  border-radius: 14px;
  background: #f4ede1;
  box-shadow: var(--image-shadow);
  transition: transform .18s ease, box-shadow .18s ease;
}
.contribution-preview-link:hover .contribution-preview,
.contribution-preview-link:focus-visible .contribution-preview {
  transform: translateY(-2px);
}
.contribution-deck {
  margin-top: -4px;
  color: var(--lead);
  font-size: 1.18em;
  font-weight: 700;
  line-height: 1.4;
}
.article-publication-details h2 { margin-bottom: 12px; }
.article-file-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0 0 20px;
  color: var(--muted);
  font-family: system-ui, -apple-system, Segoe UI, sans-serif;
  font-size: 14px;
  font-weight: 650;
}
.article-file-facts span { white-space: nowrap; }
.question-list {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: hdd-question;
}
.question-list li {
  position: relative;
  margin: 0 0 22px;
  padding-left: 54px;
  counter-increment: hdd-question;
}
.question-list li:last-child { margin-bottom: 0; }
.question-list li::before {
  content: counter(hdd-question);
  position: absolute;
  left: 0;
  top: .05em;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--highlight-line);
  border-radius: 50%;
  background: var(--accent-soft);
  color: var(--accent);
  font-family: system-ui, -apple-system, Segoe UI, sans-serif;
  font-size: 15px;
  font-weight: 800;
}
.question-list strong { display: block; margin-bottom: 3px; font-size: 1.08em; }
.article-back { margin-top: 8px; }
.article-back a { font-family: system-ui, -apple-system, Segoe UI, sans-serif; font-size: 15px; font-weight: 700; }

.contribution-carousel { position: relative; }
.contribution-carousel-viewport {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  border-radius: 14px;
}
.contribution-carousel-viewport::-webkit-scrollbar { display: none; }
.contribution-carousel-track {
  display: flex;
  gap: 0;
}
.contribution-slide {
  flex: 0 0 100%;
  min-width: 100%;
  scroll-snap-align: start;
}
.contribution-carousel-controls {
  margin-top: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-family: system-ui, -apple-system, Segoe UI, sans-serif;
}
.contribution-carousel-button {
  width: 38px;
  height: 38px;
  border: 1px solid var(--accent);
  border-radius: 999px;
  background: transparent;
  color: var(--accent);
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.contribution-carousel-button:hover { background: var(--nav-hover-bg); }
.contribution-carousel-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--accent) 55%, transparent); outline-offset: 2px; }
.contribution-carousel-status {
  color: var(--muted);
  font-size: 14px;
  font-weight: 700;
}


@media (max-width: 760px) {
  .contribution-card-grid,
  .article-publication-grid { grid-template-columns: 1fr; }
  .contribution-preview-link { max-width: 280px; }
  .article-publication-grid .contribution-preview-link { max-width: 310px; }
}

@media (prefers-reduced-motion: reduce) {
  .contribution-preview { transition: none; }
}


/* V29: H-Signet im Header und Footer */
@media (max-width: 350px) {
  .brand { gap: 7px; font-size: 18px; }
  .brand-logo { width: 30px; height: 30px; }
}


/* V30: accessibility, resilience and interaction refinements */
.skip-link {
  position: fixed;
  left: 16px;
  top: 12px;
  z-index: 1000;
  transform: translateY(-160%);
  padding: 10px 14px;
  border-radius: 10px;
  background: var(--accent);
  color: var(--button-text);
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
  font-weight: 700;
  text-decoration: none;
  box-shadow: var(--menu-shadow);
}
.skip-link:focus { transform: translateY(0); }
:where(a, button, [tabindex]):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--accent) 62%, transparent);
  outline-offset: 3px;
}
main:focus { outline: none; }
[id] { scroll-margin-top: 96px; }
::selection { background: var(--accent-soft); color: var(--text); }
.button { transition: transform .15s ease, filter .15s ease; }
.button:hover { transform: translateY(-1px); filter: brightness(1.04); }
.button:active { transform: translateY(0); }
.social-icon-link { min-width: 44px; min-height: 44px; }
.nav-more-toggle { min-height: 38px; border: 0; cursor: pointer; background: transparent; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
@media (forced-colors: active) {
  .button, .theme-toggle, .nav-more-toggle { border: 1px solid ButtonText; }
  .theme-toggle-icon { forced-color-adjust: none; }
}


/* V30.02: responsive media delivery */
.media-picture { display: block; width: 100%; }
.book-grid > .media-picture,
.author-grid > .media-picture { max-width: 260px; }
.contribution-preview-link .media-picture { display: block; }
@media (max-width: 760px) {
  .book-grid > .media-picture,
  .author-grid > .media-picture { max-width: 220px; }
}


/* V30.04: visitor guidance and editorial cross-links */
.next-steps {
  border-left: 4px solid var(--accent);
  box-shadow: none;
}
.next-steps p:not(.button-row) {
  max-width: 820px;
}
@media (max-width: 760px) {
  .next-steps .button-row {
    align-items: flex-start;
  }
}


/* V30.04: final accessibility and print refinements */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media print {
  :root { color-scheme: light; }
  html, body { background: #fff !important; color: #111 !important; }
  body { font-size: 11pt; }
  .site-header, .site-footer, .theme-picker, .skip-link, .button-row,
  .contribution-carousel-controls { display: none !important; }
  .container { width: 100%; max-width: none; }
  .hero { padding: 0 0 18pt; }
  .content { padding: 0; }
  .section, .highlight, .next-steps {
    break-inside: avoid;
    box-shadow: none !important;
    border: 0 !important;
    background: transparent !important;
    padding: 0 0 14pt !important;
  }
  a { color: inherit !important; text-decoration: underline; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; word-break: break-all; }
  img { max-width: 180pt !important; box-shadow: none !important; }
}


/* V30.06: Wissensbibliothek, Beitragsnavigation und einheitliche Bildinteraktion */
.content-image-link { display:block; width:fit-content; border-radius:18px; }
.content-image-link picture { display:block; }
.content-image-link img, .contribution-preview-link img { transition: transform .18s ease, filter .18s ease; }
.content-image-link:hover img, .contribution-preview-link:hover img { transform: translateY(-2px); filter: brightness(1.025); }
.article-sequence { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; margin:0 0 24px; padding:12px 0; border-bottom:1px solid var(--line); }
.article-sequence-bottom { margin:28px 0 24px; border-top:1px solid var(--line); border-bottom:0; }
.article-sequence-link, .article-sequence-overview { font-weight:700; text-decoration:none; }
.article-sequence-link:last-child { text-align:right; }
.article-sequence-overview { text-align:center; }
.article-sequence-placeholder { color:var(--muted); opacity:.58; }
.article-sequence-placeholder:last-child { text-align:right; }
.topic-foundation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.topic-foundation-grid article { padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--paper); }
.topic-foundation-grid h3 { margin-top:0; }
@media (max-width:760px) { .article-sequence { grid-template-columns:1fr 1fr; } .article-sequence-overview { grid-column:1 / -1; grid-row:1; } .article-sequence-link, .article-sequence-placeholder { grid-row:2; font-size:14px; } .topic-foundation-grid { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { .content-image-link img, .contribution-preview-link img { transition:none; } }


/* V30.06: H · D · D · Methode, zweites Buch und erweiterte Wissensbibliothek */
.method-intro-grid, .method-hero-grid { display:grid; grid-template-columns:minmax(170px,230px) 1fr; gap:clamp(24px,5vw,48px); align-items:center; }
.method-seal { display:block; width:100%; max-width:230px; height:auto; margin-inline:auto; }
.method-seal-large { max-width:280px; }
.method-steps { display:grid; gap:14px; }
.method-step { display:grid; grid-template-columns:48px 1fr; gap:18px; align-items:start; padding:20px; border:1px solid var(--line); border-radius:14px; background:var(--quote-bg); }
.method-step > span { display:flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:50%; background:var(--accent); color:var(--button-text); font-family:system-ui,-apple-system,Segoe UI,sans-serif; font-weight:800; }
.method-step h3 { margin-top:2px; font-size:clamp(21px,3vw,28px); }
.method-step p { margin-bottom:0; }
@media (max-width:760px){ .method-intro-grid,.method-hero-grid{grid-template-columns:1fr;} .method-seal{max-width:210px;} .method-step{grid-template-columns:42px 1fr;padding:17px;gap:14px;} }


/* V30.07: skalierbare Buchbibliothek und vollständige Methodensiegel */
.book-carousel .contribution-carousel-viewport { border-radius: 0; }
.book-carousel .book-grid { min-height: 100%; }
.book-carousel .book-cover { max-width: 250px; }
.book-carousel .contribution-slide { padding: 1px; }
.book-detail-intro { align-items: start; }
.book-detail-intro .book-cover { max-width: 300px; }
.book-summary { color: var(--lead); font-size: 1.08em; }
.book-theme-list { columns: 2; column-gap: 36px; }
.book-theme-list li { break-inside: avoid; }
.method-seal { object-fit: contain; }
@media (max-width: 760px) {
  .book-carousel .book-cover, .book-detail-intro .book-cover { max-width: 220px; }
  .book-theme-list { columns: 1; }
}


/* V30.08 - Leseproben und finales Methodensiegel */
.reading-sample-grid { display:grid; grid-template-columns:minmax(180px,240px) 1fr; gap:32px; align-items:start; }
.reading-sample-preview { display:block; width:100%; max-width:240px; height:auto; border:1px solid var(--image-border); border-radius:12px; box-shadow:var(--image-shadow); background:#fff; }
.reading-sample-grid .button-row { margin-top:20px; }
.reading-sample-note { color:var(--muted); font-size:.94em; }
@media (max-width:760px) { .reading-sample-grid { grid-template-columns:1fr; } .reading-sample-preview { max-width:220px; } }
