/* Seiten zum Weihnachtsfrieden 1914 (EN /christmas-truce-1914/…, DE /weihnachtsfrieden-1914/…, FR /fr/treve-de-noel-1914/…) – ergänzt site.css und presse.css. */
.hg .press__inner { max-width: 44rem; }
.hg-head .byline { margin-top: 1.1rem; }
.hg-intro { margin-top: clamp(1.8rem, 5vw, 2.4rem); font-size: var(--step-1); line-height: 1.6; color: var(--cream); }

.hg-kurz {
  margin-top: clamp(1.8rem, 5vw, 2.4rem); padding: clamp(1.2rem, 4vw, 1.8rem);
  border: 1px solid var(--line); border-radius: 18px;
  background: linear-gradient(180deg, rgba(7, 76, 145, .3), rgba(2, 26, 60, .3));
}
.hg-kurz .hg-kurz__t { font-size: var(--step--1); text-transform: uppercase; letter-spacing: .22em; color: var(--gold); font-weight: 600; }
.hg-kurz ul { list-style: none; margin: .9rem 0 0; padding: 0; display: grid; gap: .6rem; }
.hg-kurz li { position: relative; padding-left: 1.35rem; line-height: 1.6; color: var(--cream); }
.hg-kurz li::before {
  content: ""; position: absolute; left: .1rem; top: .62em; width: .42rem; height: .42rem;
  background: var(--gold-lo); transform: rotate(45deg);
}

.hg-toc { margin-top: 1.8rem; font-size: var(--step--1); line-height: 1.5; }
.hg-toc__t { color: var(--mist); text-transform: uppercase; letter-spacing: .18em; font-weight: 600; }
.hg-toc ol { margin: .7rem 0 0; padding-left: 1.3rem; columns: 2 15rem; column-gap: 2.2rem; }
.hg-toc li { margin: 0 0 .35rem; break-inside: avoid; color: var(--mist); }
.hg-toc a { color: var(--cream); text-decoration-color: var(--line); }
.hg-toc a:hover { color: var(--gold-hi); }

.hg-text { line-height: 1.75; color: var(--cream); hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; }
.hg-text h2 {
  margin-top: clamp(2.4rem, 6vw, 3.2rem); font-size: var(--step-2); line-height: 1.25; color: var(--gold);
  hyphens: manual; scroll-margin-top: 5.5rem;
}
.hg-text p { margin-top: .9em; }
.hg-text h2 + p { margin-top: .8rem; }

.hg-karte { margin: 1.8rem 0; }
.hg-karte img {
  display: block; width: 100%; height: auto; background: #fff; border-radius: 4px;
  box-shadow: 0 0 0 1px var(--line), 0 14px 34px rgba(0, 0, 0, .4);
}
.hg-karte figcaption { margin-top: .75rem; font-size: var(--step--1); color: var(--mist); line-height: 1.5; }

.hg-orte { list-style: none; margin: 1.1rem 0 0; padding: 0; display: grid; gap: .8rem; }
.hg-orte li { padding: .95rem 1.1rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(231, 195, 118, .03); line-height: 1.6; }
.hg-orte b { color: var(--gold); font-weight: 600; }

.hg-buch {
  margin-top: clamp(2.8rem, 7vw, 3.6rem); padding: clamp(1.4rem, 5vw, 2.2rem);
  border: 1px solid var(--line); border-radius: 18px;
  background: linear-gradient(180deg, rgba(7, 76, 145, .32), rgba(2, 26, 60, .35));
  scroll-margin-top: 5.5rem;
}
.hg-buch h2 { font-size: var(--step-1); color: var(--gold); line-height: 1.3; }
.hg-buch__grid { margin-top: 1.3rem; display: grid; gap: 1.4rem; justify-items: center; text-align: center; }
.hg-buch__cover { display: block; width: 8.5rem; border-radius: 3px; transition: transform .25s ease; }
.hg-buch__cover:hover { transform: translateY(-3px); }
.hg-buch__cover img { display: block; width: 100%; height: auto; border-radius: 3px; box-shadow: 0 0 0 1px var(--line), 0 14px 34px rgba(0, 0, 0, .45); }
.hg-buch__body { min-width: 0; color: var(--cream); }
.hg-buch__links { margin-top: 1rem; display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem 1.4rem; font-size: var(--step--1); }
.hg-buch .buy { margin-top: 1.4rem; }
.hg-buch .buy__btns { justify-content: center; }
@media (min-width: 46rem) {
  .hg-buch__grid { grid-template-columns: 8.5rem minmax(0, 1fr); justify-items: start; text-align: left; column-gap: 2rem; align-items: start; }
  .hg-buch__links, .hg-buch .buy__btns { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .hg-buch__cover { transition: none; } .hg-buch__cover:hover { transform: none; } }

.hg-quellen { margin-top: clamp(2.4rem, 6vw, 3rem); font-size: var(--step--1); color: var(--mist); line-height: 1.55; }
.hg-quellen h2 { font-size: var(--step--1); text-transform: uppercase; letter-spacing: .22em; color: var(--gold); font-weight: 600; }
.hg-quellen p { margin-top: .6rem; }
.hg-quellen ol { margin: .8rem 0 0; padding-left: 1.3rem; display: grid; gap: .45rem; }
.hg-quellen a { color: var(--mist); text-decoration-color: var(--line); overflow-wrap: anywhere; }
.hg-quellen a:hover { color: var(--gold-hi); }

.hg-bild img { max-width: 30rem; margin-inline: auto; }
.hg-bild figcaption { text-align: center; }

.hg-tab { margin: 1.3rem 0 .4rem; }
.hg-tab table { width: 100%; border-collapse: collapse; font-size: var(--step--1); line-height: 1.5; hyphens: manual; }
.hg-tab th { text-align: left; vertical-align: bottom; padding: .55rem .7rem; color: var(--gold); font-weight: 600;
  letter-spacing: .03em; border-bottom: 1px solid var(--gold-lo); }
.hg-tab td { vertical-align: top; padding: .65rem .7rem; border-bottom: 1px solid var(--line); color: var(--cream); }
.hg-tab td:first-child { color: var(--gold-hi); }
@media (max-width: 45.99rem) {
  .hg-tab thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .hg-tab table, .hg-tab tbody, .hg-tab tr, .hg-tab td { display: block; width: 100%; }
  .hg-tab tr { padding: .8rem 1rem; margin-bottom: .7rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(231, 195, 118, .03); }
  .hg-tab td { padding: .15rem 0; border: 0; }
  .hg-tab td::before { content: attr(data-label); display: block; font-size: .78rem; text-transform: uppercase; letter-spacing: .14em; color: var(--mist); margin-top: .35rem; }
  .hg-tab td:first-child::before { margin-top: 0; }
}
