/* MeerHeimatLiebe 2.5.2-r47
   Vollständige Responsive-Korrektur, sauberere Logbuch-Geschichten,
   passendere Schleswig-Holstein-Bilder und aufgeräumte Auth-/Form-Details. */

:root {
  --r47-shell: 1860px;
  --r47-gutter: clamp(.9rem, 2.15vw, 2.6rem);
  --r47-panel-gap: clamp(1rem, 1.6vw, 1.45rem);
}

/* Seiten auf großen Displays weiter öffnen, aber sauber zentriert lassen. */
.shell,
.site-main {
  width: min(calc(100% - (var(--r47-gutter) * 2)), var(--r47-shell)) !important;
  max-width: var(--r47-shell) !important;
  margin-inline: auto !important;
}

.site-main > section,
.site-main > article,
.site-main > nav,
.site-main > form,
.site-main > .page-header,
.site-main > .reading-shell,
.site-main > .prose-page,
.page-header,
.page-hero,
.hero,
.reading-shell,
.prose-page {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
}

/* Ungewollte Umbrüche in großen Überschriften vermeiden. */
@media (min-width: 1200px) {
  .page-header h1,
  .page-hero h1,
  .hero h1 {
    white-space: nowrap;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    hyphens: none !important;
  }

  .page-header__copy,
  .hero__content,
  .page-hero__copy {
    max-width: none !important;
  }
}
/* Bilder immer vollständig zeigen und mittig halten. */
.story-feature img,
.editorial-card figure img,
.editorial-lead > img,
.gallery-card img,
.gallery-grid img,
.gallery-empty img,
.auth-panel img,
.auth-grid img,
.auth-grid-clean img,
.home-module img,
.feature-card img,
.glass-card img[data-role="cover"],
figure > img {
  object-fit: contain !important;
  object-position: center center !important;
  background: linear-gradient(180deg, rgba(6, 32, 48, .70), rgba(7, 46, 66, .58)) !important;
}

.story-feature img,
.editorial-card figure img,
.editorial-lead > img,
.auth-panel img,
.auth-grid img,
.auth-grid-clean img,
.home-module img,
.feature-card img,
figure > img {
  width: 100% !important;
  max-width: 100% !important;
}

.story-feature,
.editorial-lead,
.editorial-card,
.story-entry,
.story-index,
.story-archive,
.editorial-details {
  overflow: hidden;
}

/* Logbuch professioneller aufbauen. */
.story-library {
  display: grid;
  gap: var(--r47-panel-gap);
}

.story-index,
.story-archive,
.story-entries {
  display: grid;
  gap: 1rem;
  padding: 1.1rem;
}

.story-index__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
}

.story-index__link {
  display: grid;
  gap: .18rem;
  padding: .9rem 1rem;
  border: 1px solid rgba(145, 226, 238, .28);
  border-radius: 18px;
  color: inherit;
  text-decoration: none;
  background: linear-gradient(155deg, rgba(7, 45, 64, .6), rgba(4, 28, 43, .82));
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.story-index__link span,
.story-card__meta,
.story-entry__region {
  color: #9adce5;
  font-size: .82rem;
}

.story-index__link strong {
  font-size: 1rem;
  line-height: 1.35;
}

.story-index__link:hover,
.story-index__link:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(173, 238, 246, .52);
  box-shadow: 0 10px 24px rgba(0, 0, 0, .18);
}

.story-archive-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.story-card {
  display: grid;
  align-content: start;
  gap: .6rem;
}

.story-card .btn {
  margin-top: auto;
  justify-self: start;
}

.story-entry-list {
  display: grid;
  gap: 1rem;
}

.story-entry {
  display: grid;
  gap: .85rem;
  padding: 1.15rem;
}

.story-entry__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem 1rem;
  align-items: center;
}

.story-entry h3 {
  margin: 0;
  font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem);
}

.story-entry__lead {
  font-size: 1.06rem;
  color: #e0eef3;
}

.story-entry__takeaway {
  margin: 0;
  padding: .85rem 1rem;
  border-left: 3px solid rgba(125, 223, 237, .62);
  border-radius: 0 14px 14px 0;
  background: rgba(9, 43, 59, .45);
  color: #edf6fa;
}

.story-entry__actions {
  display: flex;
  justify-content: flex-end;
}

/* Schleswig-Holstein-Reportage besser strukturieren. */
.editorial-page {
  display: grid;
  gap: var(--r47-panel-gap);
}

.editorial-lead {
  display: grid;
  grid-template-columns: minmax(300px, .9fr) 1.1fr;
  gap: 1rem;
  padding: 1rem;
}

.editorial-lead > img {
  min-height: 280px;
  border-radius: 18px;
}

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

.editorial-card {
  display: grid;
  gap: .8rem;
  padding: 1.1rem;
}

.editorial-card figure {
  margin: .15rem 0 0;
  display: grid;
  gap: .45rem;
}

.editorial-card figure img {
  min-height: 260px;
  border-radius: 18px;
}

.editorial-card figcaption,
.editorial-lead figcaption {
  color: #cddde3;
  font-size: .82rem;
}

.editorial-details {
  padding: 1.1rem;
}

.editorial-details details {
  border-top: 1px solid rgba(150, 230, 240, .2);
  padding: .95rem 0;
}

.editorial-details details:first-of-type {
  border-top: 0;
  padding-top: .3rem;
}

.editorial-details summary {
  cursor: pointer;
  list-style: none;
  font-weight: 800;
  font-size: clamp(1.05rem, .98rem + .5vw, 1.38rem);
}

.editorial-details summary::-webkit-details-marker {
  display: none;
}

.editorial-details summary::before {
  content: '▾';
  display: inline-block;
  margin-right: .55rem;
  color: #9fe4ef;
}

.editorial-detail-copy {
  margin-top: .95rem;
  display: grid;
  gap: .75rem;
}

.editorial-season-points {
  margin: 0;
  padding-left: 1.1rem;
  color: #d5e6eb;
}

/* Formulare: Captcha einzeilig und Zustimmung sauber auf zwei Zeilen. */
.captcha-compact-question {
  display: inline-flex !important;
  align-items: center;
  gap: .35rem;
  font-weight: 800;
  white-space: nowrap !important;
}

.captcha-original-hidden {
  display: none !important;
}

.mhl-terms-field,
.form-check.mhl-terms-field,
.checkbox-field.mhl-terms-field {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: start !important;
  gap: .7rem !important;
}

.stacked-terms-label {
  display: block !important;
  max-width: 40rem !important;
  line-height: 1.55 !important;
  white-space: normal !important;
  text-wrap: pretty;
}

.stacked-terms-label a,
.stacked-terms-label span {
  display: inline !important;
}

/* Erwartungskarten auf Auth-Seiten informativer und sauberer. */
.mhl-auth-card {
  display: grid;
  gap: .7rem;
}

.mhl-auth-card p {
  margin-bottom: 0;
}

.mhl-media-contain,
.mhl-media-contain img {
  object-fit: contain !important;
  object-position: center center !important;
}




