/* Zwei gute Nachrichten: bewusst minimal, ohne Tracking oder externe Assets. */
.gn-page { max-width: 1180px; margin: 0 auto; padding: 18px 26px 70px; box-sizing: border-box; }
.gn-editorial-note { max-width: 900px; margin: 1.5rem auto 2.7rem; padding: 1rem 1.25rem; border-left: 4px solid #0072ce; background: #eaf4fc; line-height: 1.65; }
.gn-issue h2, .gn-page .gn-story h3, .gn-archive h2, .gn-about h2 { text-align: left; }
.gn-page a { text-underline-offset: .18em; }
.gn-page a:focus-visible, .gn-page button:focus-visible { outline: 3px solid #0072ce; outline-offset: 3px; }
.gn-issue-header { display:flex; align-items:flex-end; justify-content:space-between; gap: 20px; margin-bottom: 22px; }
.gn-issue-header h2 { margin: .18em 0; font-size: clamp(1.45rem,2.6vw,2rem); }
.gn-readtime { white-space: nowrap; color: #607380; font-size: .89rem; padding-bottom: 6px; }
.gn-stories { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px; align-items: stretch; }
.gn-story { border: 1px solid #dce8ee; border-radius: 17px; box-shadow: 0 7px 20px rgba(18,59,82,.05); background: white; padding: 28px 26px; display:flex; flex-direction:column; }
.gn-story-topline { display:flex; justify-content:space-between; gap: 12px; align-items:center; flex-wrap:wrap; }
.gn-category { display:inline-flex; align-items:center; gap: 7px; color:#075d9b; font-weight: 700; font-size:.87rem; }
.gn-category > span { font-size:1.25rem; }
.gn-topic { color:#607380; font-size:.83rem; }
.gn-story h3 { font-size: clamp(1.34rem, 2vw, 1.67rem); line-height:1.3; color:#193c53; margin: 22px 0 9px; }
.gn-story p { font-size:1rem; line-height: 1.68; margin: 8px 0 14px; }
.gn-context { background:#f4f8fa; color:#2d4655; border-radius:8px; padding:12px 14px; margin-top: auto !important; font-size:.93rem !important; }
.gn-source { border-top: 1px solid #e2eaf0; margin-top: 15px; padding-top: 16px; display:flex; flex-direction:column; gap: 6px; font-size: .84rem; line-height:1.5; color:#596d7c; }
.gn-source a { color: #0065b0; font-weight:700; align-self: flex-start; }
.gn-share { margin-top:25px; border: 1px solid #d7e7e9; background:#f6fafa; border-radius:12px; padding:17px 21px; display:flex; align-items:center; flex-wrap:wrap; gap:14px 24px; }
.gn-share > div {flex: 1 1 310px;}
.gn-share p {margin:4px 0 0; font-size:.93rem;line-height: 1.4;}
.gn-copy-button { background:#0072ce; color:#fff; border:0; border-radius:7px; padding:12px 20px; font:inherit; font-weight:700; cursor:pointer; }
.gn-copy-button:hover { background:#005b9f; }
#gn-share-status { color:#145c4e; font-size:.9rem; }
.gn-archive { padding: 45px 0 20px; }
.gn-archive h2, .gn-about h2 { margin: .2em 0 .8em; }
.gn-archive-list { padding:0; margin:0; list-style:none; border: 1px solid #dce8ee; border-radius:12px; overflow:hidden; }
.gn-archive-list li + li { border-top:1px solid #dce8ee; }
.gn-archive-list a { display:flex; gap: 16px; padding: 17px 20px; color: #24516e; text-decoration:none; align-items:center; }
.gn-archive-list a:hover { background:#f3f8fc; }
.gn-archive-list time { font-weight:700; flex: 0 0 140px; }
.gn-archive-list a span:nth-child(2) {flex:1;}
.gn-archive-note { font-size:.9rem; color:#617481; }
.gn-about { margin-top:24px; border-top: 1px solid #e3eaef; padding-top:24px; }
.gn-about p { max-width:870px; font-size:.98rem; }
.gn-backlink { display:inline-block; margin-top:15px; font-weight:700; color:#0066ac; }
@media(max-width:740px) {
  .gn-page { padding:12px 16px 50px; }
  .gn-intro { padding:30px 21px; border-radius:14px; margin-bottom:28px; }
  .gn-hero-icon {font-size:2.4rem; padding:0;}
  .gn-stories {grid-template-columns: 1fr;gap:14px;}
  .gn-story {padding:22px 19px;}
  .gn-issue-header {display:block;}
  .gn-readtime {display:inline-block;margin-top: 5px;}
  .gn-archive-list a { flex-wrap:wrap;gap:5px 10px; }
  .gn-archive-list time { flex: 1 0 100%; }
}
@media print {
  #site-navigation, #site-footer-placeholder, .gn-share, .gn-backlink { display:none!important; }
  body { padding-top:0!important; }
  .gn-page { max-width:100%;padding:0; }
  .gn-intro { background:none; padding:15px 0; border:0; }
  .gn-stories { display:block; }
  .gn-story { break-inside:avoid;box-shadow:none;margin-bottom:15px; }
  a[href]:after {content: none!important;}
}
