/* Geschichte – Ergänzungen zur bestehenden CSS-Basis. Bewusst lesbar formatiert. */
.geschichte-page h1 em { color: var(--orange-deep); font-style: normal; }
.gs-hero { overflow: hidden; background: linear-gradient(130deg, #fff8ee, #fff 70%); padding: 68px 0 88px; }
.gs-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 68px; }
.gs-hero h1 { font-size: clamp(2.35rem, 4.4vw, 4.1rem); }
.gs-lead { color: #4d4b49; font-size: 1.12rem; max-width: 630px; margin-bottom: 30px; }
.gs-back { display: inline-block; margin-bottom: 44px; color: #74420c; text-decoration: none; font-weight: 700; }
.gs-back:hover, .gs-inline-link:hover { text-decoration: underline; }
.gs-hero-art { min-height: 460px; position: relative; display: flex; justify-content: center; align-items: center; }
.gs-cover { position: absolute; display: block; width: 48%; height: auto; max-height: 370px; object-fit: contain; box-shadow: 0 15px 40px #241d1740; background: #fff; }
.gs-cover-1948 { transform: rotate(-9deg); left: 7%; top: 50px; }
.gs-cover-1968 { transform: rotate(8deg); right: 6%; top: 70px; }
.gs-image-caption { position: absolute; bottom: 0; text-align: center; color: var(--muted); font-size: .83rem; }
.gs-narrow { max-width: 850px; }
.gs-intro p { font-size: 1.12rem; color: #4d4d52; }
.gs-section-lead { max-width: 800px; color: var(--muted); font-size: 1.04rem; margin-bottom: 42px; }
.gs-timeline { border-left: 3px solid #edbb80; margin-left: 98px; }
.gs-milestone { position: relative; display: grid; grid-template-columns: 165px 1fr; gap: 35px; padding: 0 0 46px 36px; }
.gs-milestone:last-child { padding-bottom: 0; }
.gs-milestone::before { content: ''; position: absolute; left: -10px; top: 9px; width: 17px; height: 17px; border: 3px solid #fff; border-radius: 50%; background: var(--orange-deep); box-shadow: 0 0 0 1px #e4b076; }
.gs-year { font-size: 1.45rem; font-weight: 800; color: #99520b; line-height: 1.4; white-space: nowrap; }
.gs-milestone h3 { font-size: 1.28rem; margin: 2px 0 10px; }
.gs-milestone p { color: #55565b; margin: 0 0 10px; max-width: 680px; }
.gs-inline-link { color: #89500e; font-weight: 800; text-underline-offset: 3px; }
.gs-two-col { display: grid; grid-template-columns: .86fr 1.14fr; gap: 76px; }
.gs-prose p { color: #505158; font-size: 1.06rem; }
.gs-source-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-bottom: 26px; }
.gs-source-card { display: grid; grid-template-columns: 140px 1fr; gap: 24px; background: #f8f6f2; padding: 22px; margin: 0; align-items: start; border: 1px solid var(--line); }
.gs-source-card img { width: 100%; height: 195px; object-fit: contain; box-shadow: 0 6px 18px #0002; background: #fff; }
.gs-source-card strong, .gs-source-card span { display: block; }
.gs-source-card strong { font-size: 1.1rem; line-height: 1.4; margin-bottom: 9px; }
.gs-source-card span { color: var(--muted); font-size: .9rem; }
.gs-source-note { color: var(--muted); font-size: .88rem; margin-bottom: 28px; }
@media (max-width: 900px) {
  .gs-hero-grid { gap: 25px; }
  .gs-source-card { grid-template-columns: 105px 1fr; gap: 15px; }
  .gs-source-card img { height: 145px; }
  .gs-two-col { gap: 35px; }
}
@media (max-width: 740px) {
  .gs-hero { padding: 35px 0 50px; }
  .gs-hero-grid, .gs-two-col, .gs-source-grid { grid-template-columns: 1fr; }
  .gs-hero-art { min-height: 345px; }
  .gs-cover { width: 42%; max-height: 270px; }
  .gs-cover-1948 { top: 30px; left: 10%; }
  .gs-cover-1968 { top: 43px; right: 11%; }
  .gs-back { margin-bottom: 28px; }
  .gs-timeline { margin-left: 9px; }
  .gs-milestone { display: block; padding-left: 26px; padding-bottom: 33px; }
  .gs-year { display: block; margin-bottom: 5px; }
  .gs-source-card { grid-template-columns: 105px 1fr; }
}
@media (max-width: 390px) {
  .gs-hero-art { min-height: 295px; }
  .gs-source-card { grid-template-columns: 86px 1fr; padding: 14px; }
  .gs-source-card img { height: 118px; }
}
