﻿/**
 * Gottlebt.JETZT Ã¢â‚¬â€ Sacred Luxury
 * @font-face: views/partials/head.ejs (self-hosted woff2, copy-fonts.js)
 */

/* -------------------------------------------------------------------------- */
/* 1. Reset + Variablen                                                       */
/* -------------------------------------------------------------------------- */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body,
h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd {
  margin: 0;
}

ul, ol {
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

button, input, textarea, select {
  font: inherit;
  color: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

:root {
  --midnight: #0a1628;
  --deep-navy: #132744;
  --royal-blue: #1e3a5f;
  --gold: #c9a84c;
  --gold-light: #e8d5a0;
  --gold-glow: #f5ebd3;
  --cream: #faf6ee;
  --warm-white: #fefcf7;
  --text-dark: #1a1a2e;
  --text-body: #3d3d56;
  --navy: var(--deep-navy);
  --soft-gray: #8a8a9e;
  --gold-on-light: #806b33;
  --text-meta: #6e6e82;
  --text-hint-on-dark: rgba(250, 246, 238, 0.82);
  --font-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-sans: 'Nunito Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --nav-h: 4.25rem;
  --radius: 12px;
  --radius-lg: 18px;
  --shadow-soft: 0 18px 48px rgba(10, 22, 40, 0.18);
  --shadow-gold: 0 0 0 1px rgba(201, 168, 76, 0.35);

  /* Vereinsbereich â€“ gemeinsames Designsystem */
  --verein-section-y: clamp(3.25rem, 7.5vw, 5.5rem);
  --verein-section-x: clamp(1.25rem, 4vw, 2rem);
  --verein-inner-narrow: 40rem;
  --verein-inner-medium: 52rem;
  --verein-inner-wide: 72rem;
  --verein-card-radius: var(--radius-lg);
  --verein-card-border: 1px solid rgba(201, 168, 76, 0.28);
  --verein-card-border-light: 1px solid rgba(184, 152, 79, 0.22);
  --verein-card-shadow: 0 10px 28px rgba(10, 22, 40, 0.06);
  --verein-card-shadow-hover: 0 14px 36px rgba(10, 22, 40, 0.09);
  --verein-card-bg: rgba(255, 255, 255, 0.96);
  --verein-section-divider: 1px solid rgba(184, 152, 79, 0.18);
  --verein-gold-line: rgba(184, 152, 79, 0.55);
  --verein-eyebrow-tracking: 0.28em;

  /* Spacing-System (Vereinsbereich, Phase A) */
  --space-1: clamp(0.35rem, 0.8vw, 0.5rem);
  --space-2: clamp(0.65rem, 1.4vw, 0.85rem);
  --space-3: clamp(1rem, 2.2vw, 1.35rem);
  --space-4: clamp(1.35rem, 2.8vw, 1.75rem);
  --space-5: clamp(1.75rem, 3.6vw, 2.25rem);
  --space-6: clamp(2.25rem, 4.5vw, 3rem);
  --section-y: var(--verein-section-y);
  --section-y-sm: clamp(2.25rem, 5vw, 3.5rem);
  --section-y-lg: clamp(3.75rem, 8vw, 6rem);
  --section-x: var(--verein-section-x);
  --grid-gap: clamp(1.15rem, 2.4vw, 1.5rem);
  --grid-gap-lg: clamp(1.35rem, 2.8vw, 1.85rem);
  --page-bottom: clamp(3rem, 6vw, 4.5rem);
  --footer-top: clamp(3.25rem, 6.5vw, 4rem);

  /* Einheitlicher Karten-Hover (Desktop / fine pointer) */
  --card-hover-lift: -3px;
  --card-hover-duration: 0.22s;
  --card-hover-ease: ease;
  --card-hover-shadow: 0 14px 32px rgba(10, 22, 40, 0.14);
  --card-hover-shadow-deep: 0 14px 32px rgba(10, 22, 40, 0.28);
  --card-hover-border: rgba(201, 168, 76, 0.42);
  --card-hover-border-bright: rgba(232, 204, 122, 0.45);
}

/* -------------------------------------------------------------------------- */
/* Karten-Hover – sanfter Schwebe-Effekt (öffentlich, vergleichbare Karten)   */
/* -------------------------------------------------------------------------- */

:is(
  .page-flatrate .flatrate-word__effect,
  .page-hermine .hermine-offerings__card,
  .home-hermine-tile,
  .page-geschenk .geschenk-for-you__card,
  .page-lebenslieder .llx-package__card,
  .page-bibelprojekt .bp-geschenkbibel-einsatz__card,
  .page-mission .verein-action-block__card,
  .page-spenden .spenden-hearts__card,
  .page-podcast-mit-herz .feedback-stimmen-hub .spenden-hearts__card,
  .page-home .spenden-hearts__card,
  .sl-tier-card,
  .home-mitmachen__card,
  .home-hermine-world__card,
  .home-impulses__card,
  .offering-card,
  .blog-card,
  .sl-prayer-wall__list--public .sl-prayer-card,
  .page-gebet .gebet-pinboard__cards .sl-prayer-card
) {
  transition:
    transform var(--card-hover-duration) var(--card-hover-ease),
    box-shadow var(--card-hover-duration) var(--card-hover-ease),
    border-color var(--card-hover-duration) var(--card-hover-ease);
}

@media (hover: hover) and (pointer: fine) {
  :is(
    .page-flatrate .flatrate-word__effect,
    .page-hermine .hermine-offerings__card,
    .home-hermine-tile,
    .page-geschenk .geschenk-for-you__card,
    .page-lebenslieder .llx-package__card,
    .page-bibelprojekt .bp-geschenkbibel-einsatz__card,
    .page-mission .verein-action-block__card,
    .page-spenden .spenden-hearts__card,
    .page-podcast-mit-herz .feedback-stimmen-hub .spenden-hearts__card,
    .page-home .spenden-hearts__card,
    .sl-tier-card,
    .home-mitmachen__card,
    .home-hermine-world__card,
    .home-impulses__card,
    .offering-card,
    .blog-card,
    .sl-prayer-wall__list--public .sl-prayer-card,
    .page-gebet .gebet-pinboard__cards .sl-prayer-card
  ):hover {
    transform: translateY(var(--card-hover-lift));
    border-color: var(--card-hover-border);
    box-shadow: var(--card-hover-shadow);
  }

  :is(
    .page-flatrate .flatrate-word__effect,
    .page-geschenk .geschenk-for-you__card,
    .page-lebenslieder .llx-package__card,
    .page-hermine .hermine-offerings__card--lebenslieder,
    .home-hermine-tile,
    .sl-tier-card,
    .offering-card
  ):hover {
    border-color: var(--card-hover-border-bright);
    box-shadow: var(--card-hover-shadow-deep);
  }
}

@media (prefers-reduced-motion: reduce) {
  :is(
    .page-flatrate .flatrate-word__effect,
    .page-hermine .hermine-offerings__card,
    .home-hermine-tile,
    .page-geschenk .geschenk-for-you__card,
    .page-lebenslieder .llx-package__card,
    .page-bibelprojekt .bp-geschenkbibel-einsatz__card,
    .page-mission .verein-action-block__card,
    .page-spenden .spenden-hearts__card,
    .page-podcast-mit-herz .feedback-stimmen-hub .spenden-hearts__card,
    .page-home .spenden-hearts__card,
    .sl-tier-card,
    .home-mitmachen__card,
    .home-hermine-world__card,
    .home-impulses__card,
    .offering-card,
    .blog-card,
    .sl-prayer-wall__list--public .sl-prayer-card,
    .page-gebet .gebet-pinboard__cards .sl-prayer-card
  ) {
    transition:
      box-shadow var(--card-hover-duration) var(--card-hover-ease),
      border-color var(--card-hover-duration) var(--card-hover-ease);
  }

  :is(
    .page-flatrate .flatrate-word__effect,
    .page-hermine .hermine-offerings__card,
    .home-hermine-tile,
    .page-geschenk .geschenk-for-you__card,
    .page-lebenslieder .llx-package__card,
    .page-bibelprojekt .bp-geschenkbibel-einsatz__card,
    .page-mission .verein-action-block__card,
    .page-spenden .spenden-hearts__card,
    .page-podcast-mit-herz .feedback-stimmen-hub .spenden-hearts__card,
    .page-home .spenden-hearts__card,
    .sl-tier-card,
    .home-mitmachen__card,
    .home-hermine-world__card,
    .home-impulses__card,
    .offering-card,
    .blog-card,
    .sl-prayer-wall__list--public .sl-prayer-card,
    .page-gebet .gebet-pinboard__cards .sl-prayer-card
  ):hover {
    transform: none;
  }
}

/* -------------------------------------------------------------------------- */
/* 2. Basis                                                                   */
/* -------------------------------------------------------------------------- */

body {
  font-family: var(--font-sans);
  font-size: 1.0625rem;
  line-height: 1.65;
  color: var(--text-body);
  background: var(--warm-white);
  min-height: 100vh;
}

body.nav-menu-open {
  overflow: hidden;
}

h1, h2, h3, h4 {
  font-family: var(--font-serif);
  font-weight: 600;
  color: var(--text-dark);
  line-height: 1.2;
}

:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

::selection {
  background: var(--gold-glow);
  color: var(--text-dark);
}

/* Innenseiten: Navbar immer Ã¢â‚¬Å¾eingeloggtÃ¢â‚¬Å“ */
body.is-inner #navbar {
  background: rgba(10, 22, 40, 0.94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(201, 168, 76, 0.2);
  box-shadow: 0 8px 32px rgba(10, 22, 40, 0.25);
}

body.is-inner .nav-logo,
body.is-inner .nav-links a {
  color: var(--cream);
}

body.is-inner .nav-toggle-bar {
  background: var(--cream);
}

/* -------------------------------------------------------------------------- */
/* 3. Navigation                                                              */
/* -------------------------------------------------------------------------- */

.nav-backdrop {
  position: fixed;
  inset: 0;
  z-index: 998;
  background: rgba(10, 22, 40, 0.45);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}

body.nav-menu-open .nav-backdrop {
  opacity: 1;
  visibility: visible;
}

#navbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.25rem;
  min-height: var(--nav-h);
  transition:
    background 0.45s ease,
    border-color 0.45s ease,
    box-shadow 0.45s ease,
    backdrop-filter 0.45s ease;
  background: transparent;
  border-bottom: 1px solid transparent;
}

#navbar.scrolled {
  background: rgba(10, 22, 40, 0.92);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom-color: rgba(201, 168, 76, 0.22);
  box-shadow: 0 12px 40px rgba(10, 22, 40, 0.35);
}

.nav-logo {
  font-family: var(--font-serif);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--cream);
  text-decoration: none;
  letter-spacing: 0.02em;
  z-index: 1001;
}

.nav-logo span {
  color: var(--gold);
}

#navbar.scrolled .nav-logo,
.nav-links a {
  color: var(--cream);
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  flex-wrap: wrap;
}

.nav-links a {
  display: block;
  padding: 0.5rem 0.85rem;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 8px;
  transition: color 0.2s, background 0.2s;
}

.nav-links a:hover {
  color: var(--gold-light);
}

.nav-cta {
  background: var(--gold) !important;
  color: var(--midnight) !important;
  margin-left: 0.35rem;
}

.nav-cta:hover {
  background: var(--gold-light) !important;
  color: var(--midnight) !important;
}

/* Desktop + Tablet: Logo links, Navigation rechts, CTAs als Gruppe ganz rechts */
@media (min-width: 768px) {
  #navbar {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    justify-content: stretch;
    column-gap: clamp(0.75rem, 2vw, 1.25rem);
    row-gap: 0.35rem;
    min-height: var(--nav-h);
  }

  .nav-logo {
    grid-column: 1;
    grid-row: 1;
    height: var(--nav-h);
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }

  .nav-links {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-content: center;
    align-items: center;
    gap: 0.35rem;
    min-width: 0;
    min-height: var(--nav-h);
    padding: 0.35rem 0;
    margin: 0;
    list-style: none;
  }

  .nav-links::before {
    content: none;
  }

  .nav-links > li:not(:has(> a.nav-cta)):not(:has(> .nav-admin-link)) {
    flex: 0 0 auto;
  }

  .nav-links > li:has(> a.nav-cta),
  .nav-links > li:has(> .nav-admin-link) {
    flex: 0 0 auto;
  }

  .nav-links > li:has(> a.nav-cta):first-of-type {
    margin-left: auto;
  }

  .nav-cta {
    margin-left: 0;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .nav-links {
    display: grid;
    grid-template-columns: repeat(6, max-content);
    grid-template-rows: auto auto;
    justify-content: end;
    align-content: center;
    column-gap: 0.35rem;
    row-gap: 0.35rem;
  }

  .nav-links > li:not(:has(> a.nav-cta)):not(:has(> .nav-admin-link)) {
    grid-row: 1;
  }

  .nav-links > li:nth-child(1) {
    grid-column: 1;
  }

  .nav-links > li:nth-child(2) {
    grid-column: 2;
  }

  .nav-links > li:nth-child(3) {
    grid-column: 3;
  }

  .nav-links > li:nth-child(4) {
    grid-column: 4;
  }

  .nav-links > li:nth-child(5) {
    grid-column: 5;
  }

  .nav-links > li:has(> a.nav-cta):first-of-type {
    grid-row: 2;
    grid-column: 5;
    margin-left: 0;
  }

  .nav-links > li:has(> a.nav-cta):last-of-type {
    grid-row: 2;
    grid-column: 6;
  }

  .nav-links > li:has(> .nav-admin-link) {
    grid-row: 2;
    grid-column: 6;
  }
}

@media (min-width: 1101px) {
  .nav-links > li:has(> a.nav-cta):first-of-type {
    margin-left: auto;
  }
}

/* Optional: .nav-admin-link fÃƒÂ¼r Admin im MenÃƒÂ¼ (FAB entfernt) */
.nav-admin-link {
  display: inline-block;
  padding: 0.45rem 0.95rem;
  border-radius: 999px;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
  font-size: 0.72rem !important;
  color: var(--midnight) !important;
  background: var(--gold) !important;
  border: 2px solid rgba(255, 255, 255, 0.45) !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.25);
}
.nav-admin-link:hover {
  background: var(--gold-light) !important;
  color: var(--midnight) !important;
}
.nav-admin-link::after {
  display: none !important;
}
body.is-inner .nav-admin-link {
  color: var(--midnight) !important;
}

.public-admin-fab {
  position: fixed;
  bottom: 1.15rem;
  right: 1.15rem;
  z-index: 10050;
  padding: 0.85rem 1.35rem;
  font-family: var(--font-sans);
  font-weight: 700;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--midnight);
  background: var(--gold);
  border-radius: 999px;
  box-shadow: 0 10px 36px rgba(10, 22, 40, 0.45);
  border: 2px solid rgba(255, 255, 255, 0.5);
  transition: transform 0.2s ease, background 0.2s ease;
}
.public-admin-fab:hover {
  background: var(--gold-light);
  color: var(--midnight);
  transform: scale(1.04);
}
@media (min-width: 901px) {
  .public-admin-fab {
    bottom: 1.75rem;
    right: 1.75rem;
    padding: 0.95rem 1.5rem;
    font-size: 0.85rem;
  }
}

.nav-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  z-index: 1001;
}

.nav-toggle-bar {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--cream);
  border-radius: 2px;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

#navbar.nav-open .nav-toggle-bar:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

#navbar.nav-open .nav-toggle-bar:nth-child(2) {
  opacity: 0;
}

#navbar.nav-open .nav-toggle-bar:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

@media (max-width: 767px) {
  .nav-toggle {
    display: flex;
  }

  .nav-links {
    position: fixed;
    top: 0;
    right: 0;
    width: min(20rem, 88vw);
    height: 100vh;
    height: 100dvh;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    padding: calc(var(--nav-h) + 1.5rem) 1.5rem 2rem;
    gap: 0.25rem;
    background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 55%, var(--royal-blue) 100%);
    border-left: 1px solid rgba(201, 168, 76, 0.25);
    box-shadow: -12px 0 40px rgba(0, 0, 0, 0.35);
    transform: translateX(100%);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  }

  #navbar.nav-open .nav-links {
    transform: translateX(0);
  }

  .nav-links a {
    padding: 0.85rem 1rem;
    font-size: 1.05rem;
    border-radius: var(--radius);
  }

  .nav-cta {
    margin-left: 0;
    margin-top: 0.75rem;
    text-align: center;
  }

  .nav-admin-li {
    margin-top: 0.5rem;
  }
  .nav-admin-li .nav-admin-link {
    display: block;
    text-align: center;
  }

  /* No-JS-Failsafe: mobiles MenÃƒÂ¼ als normale Liste anzeigen */
  html:not(.gottlebt-js) .nav-links {
    position: static;
    width: auto;
    height: auto;
    transform: none;
    box-shadow: none;
    border-left: 0;
    padding: 0.5rem 0 0;
    background: transparent;
  }

  html:not(.gottlebt-js) .nav-backdrop,
  html:not(.gottlebt-js) .nav-toggle {
    display: none !important;
  }
}

/* -------------------------------------------------------------------------- */
/* 4. Hero                                                                    */
/* -------------------------------------------------------------------------- */

.hero {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  padding: calc(var(--nav-h) + 1.5rem) 1.5rem 2.5rem;
  overflow: hidden;
  background: linear-gradient(
    165deg,
    var(--midnight) 0%,
    var(--deep-navy) 38%,
    var(--royal-blue) 100%
  );
}

.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 84% 62% at 50% 18%, rgba(201, 168, 76, 0.2), transparent 58%),
    radial-gradient(ellipse 72% 48% at 50% 86%, rgba(7, 24, 46, 0.42), transparent 70%);
  pointer-events: none;
}

.hero-particles {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.hero .particle,
#particles .particle {
  position: absolute;
  bottom: 0;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--gold-light);
  box-shadow:
    0 0 6px rgba(250, 246, 238, 0.55),
    0 0 14px var(--gold-glow);
  opacity: 0.58;
  animation-name: float-up;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  pointer-events: none;
}

/* Selten statt Stern: kleines Kreuz, gold-leuchtend, gleiche Bahn nach oben */
.hero .particle.particle--cross,
#particles .particle.particle--cross {
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  opacity: 0.5;
  filter: drop-shadow(0 0 2px rgba(245, 235, 211, 0.95)) drop-shadow(0 0 5px rgba(201, 168, 76, 0.45));
}

.hero .particle.particle--cross::before,
.hero .particle.particle--cross::after,
#particles .particle.particle--cross::before,
#particles .particle.particle--cross::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: rgba(232, 213, 160, 0.88);
  box-shadow: 0 0 4px rgba(245, 235, 211, 0.85), 0 0 8px rgba(201, 168, 76, 0.35);
  pointer-events: none;
}

.hero .particle.particle--cross::before,
#particles .particle.particle--cross::before {
  width: 1px;
  height: 4px;
}

.hero .particle.particle--cross::after,
#particles .particle.particle--cross::after {
  width: 4px;
  height: 1px;
}

@keyframes float-up {
  0% {
    transform: translateY(0);
    opacity: 0;
  }
  12% {
    opacity: 0.68;
  }
  88% {
    opacity: 0.52;
  }
  100% {
    transform: translateY(-120vh);
    opacity: 0;
  }
}

.hero-content,
.hero-column {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 46rem;
}

.hero-column {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  justify-content: center;
  min-height: 0;
}

.hero-badge {
  display: inline-block;
  padding: 0.45rem 1.15rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold-light);
  border: 1px solid rgba(201, 168, 76, 0.45);
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.1);
  box-shadow: 0 10px 28px rgba(6, 16, 30, 0.28);
  margin-bottom: 1.75rem;
}

.hero-content h1,
.hero-column h1 {
  font-size: clamp(2.35rem, 6vw, 3.85rem);
  font-weight: 600;
  color: var(--cream);
  margin-bottom: 1.25rem;
  letter-spacing: -0.02em;
}

/* Nur in der Home-Spalte ausblenden (echtes SR-only); Hermine nutzt .hero-content Ã¢â‚¬â€ dort sichtbar lassen */
.hero-column h1.hero-h1--motto-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.hero-content h1 em,
.hero-column h1 em {
  font-style: italic;
  color: var(--gold-light);
}

.hero-tagline-wrap {
  margin: 1.15rem auto 0;
  padding: 1.15rem 1.35rem 1.25rem;
  max-width: min(36rem, 92vw);
  border-radius: var(--radius-lg);
  background: linear-gradient(
    165deg,
    rgba(250, 246, 238, 0.07) 0%,
    rgba(250, 246, 238, 0.03) 100%
  );
  border: 1px solid rgba(201, 168, 76, 0.22);
  box-shadow: 0 12px 40px rgba(5, 14, 28, 0.18);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.65rem;
}

/* Header: Spruch sauber integriert + Abstand zu Buttons */
.hero-buttons {
  margin-top: 0.85rem;
}

.hero-tagline__rule {
  display: block;
  width: min(12rem, 55vw);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(232, 213, 160, 0.55), transparent);
}

.hero-tagline__rule--short {
  width: min(6rem, 35vw);
  opacity: 0.85;
}

.hero-tagline {
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.85vw, 1.42rem);
  font-style: italic;
  font-weight: 500;
  color: rgba(250, 246, 238, 0.9);
  margin: 0;
  max-width: 30rem;
  line-height: 1.55;
  letter-spacing: 0.02em;
  text-align: center;
  text-wrap: balance;
}

/* Motto einmal sichtbar: zwei Zeilen, dezentes Leuchten im Wechsel (kein zweites Text-Duplikat) */
.hero-motto {
  position: relative;
  width: 100%;
  min-height: 6.75em;
  margin: 0.35rem auto 1.5rem;
  text-align: center;
}

.hero-motto--mission {
  min-height: auto;
  margin-bottom: 0.85rem;
}

.hero-motto--trinity .hero-motto__stack {
  gap: 0.12em;
}

.hero-headline.hero-motto {
  width: 100%;
  margin: 0.35rem auto 0.5rem;
  padding: 0;
  border: none;
  background: none;
}

.hero-headline .hero-motto__line {
  display: block;
  width: 100%;
}

.hero-motto__line--mid {
  color: #e2edf8;
  text-shadow:
    0 0 32px rgba(200, 220, 255, 0.45),
    0 0 56px rgba(150, 190, 255, 0.15);
  will-change: opacity, filter;
  animation: heroMottoGlowDawn 5s ease-in-out infinite;
  animation-delay: 0.2s;
}

.hero-gospel {
  margin: 0.85rem auto 0;
  padding: 1.15rem 1.35rem 1.25rem;
  max-width: min(36rem, 92vw);
  border-radius: var(--radius-lg);
  background: linear-gradient(
    165deg,
    rgba(250, 246, 238, 0.07) 0%,
    rgba(250, 246, 238, 0.03) 100%
  );
  border: 1px solid rgba(201, 168, 76, 0.22);
  box-shadow: 0 12px 40px rgba(5, 14, 28, 0.18);
  text-align: center;
  scroll-margin-top: 5.5rem;
}

.hero-gospel.is-share-focus {
  border-color: rgba(201, 168, 76, 0.55);
  box-shadow:
    0 12px 40px rgba(5, 14, 28, 0.22),
    0 0 0 1px rgba(201, 168, 76, 0.28);
}

.hero-gospel.is-share-focus:focus {
  outline: none;
}

.hero-gospel__kicker {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-light);
  line-height: 1.4;
}

.hero-gospel__text {
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 2.6vw, 1.28rem);
  font-weight: 500;
  font-style: normal;
  color: rgba(250, 246, 238, 0.92);
  margin: 0;
  line-height: 1.6;
  letter-spacing: 0.015em;
  text-wrap: balance;
}

.hero-gospel + .hero-buttons {
  margin-top: 1.15rem;
}

@media (max-width: 480px) {
  .hero-headline .hero-motto__line {
    font-size: clamp(1.85rem, 9vw, 2.65rem);
  }

  .hero-gospel {
    padding: 1rem 1rem 1.1rem;
  }
}

.hero-motto__stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.15em;
  pointer-events: none;
}

.hero-motto__line {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 6.5vw, 3.65rem);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: -0.024em;
}

.hero-motto__line--gold {
  color: var(--gold-light);
  text-shadow:
    0 0 28px rgba(201, 168, 76, 0.35),
    0 0 48px rgba(201, 168, 76, 0.12);
  will-change: opacity, filter;
  animation: heroMottoGlowGold 5s ease-in-out infinite;
}

.hero-motto__line--dawn {
  color: #e2edf8;
  text-shadow:
    0 0 32px rgba(200, 220, 255, 0.45),
    0 0 56px rgba(150, 190, 255, 0.15);
  will-change: opacity, filter;
  animation: heroMottoGlowDawn 5s ease-in-out infinite;
  animation-delay: 0.35s;
}

@keyframes heroMottoGlowGold {
  0%,
  100% {
    opacity: 0.72;
    filter: brightness(0.92);
  }
  50% {
    opacity: 1;
    filter: brightness(1.18);
  }
}

@keyframes heroMottoGlowDawn {
  0%,
  100% {
    opacity: 1;
    filter: brightness(1.12);
  }
  50% {
    opacity: 0.7;
    filter: brightness(0.9);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-motto {
    min-height: auto;
    margin-bottom: 1.25rem;
  }

  .hero-motto__line--gold,
  .hero-motto__line--dawn {
    animation: none;
    opacity: 1;
    filter: none;
  }
}

.hero-subtitle {
  font-size: clamp(1rem, 2.2vw, 1.2rem);
  line-height: 1.7;
  color: rgba(250, 246, 238, 0.92);
  margin-bottom: 2.15rem;
  max-width: 34rem;
  text-shadow: 0 2px 20px rgba(5, 14, 28, 0.3);
  margin-left: auto;
  margin-right: auto;
}

.hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin-top: 2.35rem;
}

.scroll-indicator {
  position: relative;
  bottom: auto;
  left: auto;
  transform: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  color: rgba(250, 246, 238, 0.72);
  font-size: 0.68rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  z-index: 2;
  margin-top: 2.35rem;
  padding-bottom: 0.25rem;
}

.scroll-line {
  width: 1px;
  height: 3rem;
  background: linear-gradient(to bottom, var(--gold), transparent);
  border-radius: 2px;
}

/* -------------------------------------------------------------------------- */
/* 5. Bibelvers-Banner                                                        */
/* -------------------------------------------------------------------------- */

.verse-banner {
  background: var(--cream);
  padding: 3rem 1.5rem;
  text-align: center;
  border-top: 1px solid rgba(201, 168, 76, 0.2);
  border-bottom: 1px solid rgba(201, 168, 76, 0.15);
}

.verse-banner blockquote {
  font-family: var(--font-serif);
  font-size: clamp(1.35rem, 3.5vw, 1.85rem);
  font-style: italic;
  font-weight: 500;
  color: var(--text-dark);
  line-height: 1.55;
  max-width: 48rem;
  margin: 0 auto;
}

.verse-banner cite {
  display: block;
  margin-top: 1.25rem;
  font-family: var(--font-sans);
  font-size: 0.85rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
}

/* Editorial Psalm / Bibelvers (wiederverwendbar via .verse-banner--editorial) */
.verse-banner.verse-banner--editorial {
  position: relative;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  background-color: #faf6ee;
  background-image:
    radial-gradient(ellipse 70% 55% at 92% 105%, rgba(210, 188, 150, 0.14) 0%, transparent 58%),
    radial-gradient(ellipse 120% 90% at 50% 50%, transparent 55%, rgba(175, 155, 120, 0.07) 100%),
    linear-gradient(180deg, #fffdf9 0%, #faf6ee 46%, #f2ebe1 100%);
  padding: clamp(3.75rem, 8vw, 6.25rem) clamp(1.5rem, 5vw, 3rem);
  border-top: none;
  border-bottom: none;
  overflow: hidden;
}

.verse-banner.verse-banner--editorial .verse-banner__rays {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 1;
  background:
    repeating-conic-gradient(
      from -22deg at 11% 0%,
      transparent 0deg 8.5deg,
      rgba(245, 238, 228, 0.1) 8.5deg 12.5deg,
      rgba(250, 246, 238, 0.05) 12.5deg 14.5deg,
      transparent 14.5deg 24deg
    ),
    radial-gradient(ellipse 115% 105% at 8% -10%, rgba(252, 248, 242, 0.5) 0%, rgba(245, 238, 228, 0.19) 30%, rgba(238, 232, 222, 0.07) 55%, transparent 82%),
    radial-gradient(ellipse 58% 52% at 5% 0%, rgba(255, 252, 247, 0.32) 0%, transparent 70%);
  background-attachment: fixed;
  -webkit-mask-image: radial-gradient(ellipse 135% 105% at 9% 0%, #000 0%, rgba(0, 0, 0, 0.42) 50%, transparent 90%);
  mask-image: radial-gradient(ellipse 135% 105% at 9% 0%, #000 0%, rgba(0, 0, 0, 0.42) 50%, transparent 90%);
  filter: blur(2.5px);
}

.verse-banner.verse-banner--editorial .verse-banner__rays::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, rgba(250, 246, 238, 0.24) 0%, rgba(245, 238, 228, 0.09) 38%, transparent 58%),
    linear-gradient(128deg, rgba(248, 242, 232, 0.18) 0%, transparent 52%),
    linear-gradient(102deg, rgba(242, 236, 226, 0.12) 0%, transparent 48%);
  background-attachment: fixed;
  -webkit-mask-image: radial-gradient(ellipse 125% 98% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.38) 48%, transparent 86%);
  mask-image: radial-gradient(ellipse 125% 98% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.38) 48%, transparent 86%);
  filter: blur(2.75px);
}

.verse-banner.verse-banner--editorial .verse-banner__rays::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 7% -2%, rgba(252, 248, 242, 0.3) 0%, rgba(245, 238, 228, 0.11) 38%, transparent 58%);
  background-attachment: fixed;
  -webkit-mask-image: radial-gradient(ellipse 110% 92% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.34) 42%, transparent 82%);
  mask-image: radial-gradient(ellipse 110% 92% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.34) 42%, transparent 82%);
  filter: blur(2.25px);
}

/* Startseite: Psalm-Banner Navy (Kontrast zur Creme-BegrÃƒÂ¼ÃƒÅ¸ung) */
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy {
  background-color: var(--deep-navy);
  background-image: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 52%, #152a45 100%);
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy blockquote {
  color: rgba(250, 246, 238, 0.96);
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy .verse-banner__gold {
  color: var(--gold-light);
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy cite {
  color: var(--gold-light);
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy .verse-banner__rays {
  opacity: 0.84;
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy .verse-banner__rays::before {
  background:
    linear-gradient(115deg, rgba(250, 246, 238, 0.32) 0%, rgba(245, 238, 228, 0.13) 38%, transparent 58%),
    linear-gradient(128deg, rgba(248, 242, 232, 0.24) 0%, transparent 52%),
    linear-gradient(102deg, rgba(242, 236, 226, 0.16) 0%, transparent 48%);
}

.verse-banner.verse-banner--editorial .verse-banner__inner {
  position: relative;
  width: min(100%, 50rem);
  max-width: 50rem;
  margin: 0 auto;
}

.verse-banner.verse-banner--editorial .verse-banner__card {
  width: min(100%, 38rem);
  max-width: 38rem;
  margin: 0 auto;
  padding: clamp(1.1rem, 2.4vw, 1.45rem) clamp(1.15rem, 2.8vw, 1.55rem) clamp(0.95rem, 2.1vw, 1.2rem);
  border: 1px solid rgba(201, 168, 76, 0.4);
  border-radius: 0.75rem;
  background: rgba(255, 253, 248, 0.08);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 14px 36px rgba(10, 22, 40, 0.18);
  box-sizing: border-box;
}

.verse-banner.verse-banner--editorial:not(.verse-banner--editorial-navy) .verse-banner__card {
  background: linear-gradient(180deg, #fffdf8 0%, #faf6ee 100%);
  border-color: rgba(201, 168, 76, 0.42);
  box-shadow:
    0 12px 32px rgba(15, 31, 54, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy .verse-banner__card {
  background: linear-gradient(
    180deg,
    rgba(255, 252, 245, 0.1) 0%,
    rgba(250, 246, 238, 0.05) 100%
  );
  border-color: rgba(201, 168, 76, 0.42);
}

.verse-banner.verse-banner--editorial .verse-banner__card .verse-banner__text-wrap {
  width: 100%;
  max-width: none;
}

.verse-banner.verse-banner--editorial .verse-banner__card .verse-banner__ornament {
  margin-top: clamp(0.65rem, 1.6vw, 0.9rem);
}

.verse-banner.verse-banner--editorial .verse-banner__card cite {
  margin-top: clamp(0.5rem, 1.2vw, 0.7rem);
}

.page-home .verse-banner[data-verse-banner].verse-banner--editorial:not(.is-expanded-shell) {
  padding: clamp(2rem, 4vw, 2.75rem) clamp(1.25rem, 4vw, 2rem);
}

.verse-banner.verse-banner--editorial blockquote {
  position: relative;
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.55rem, 3.2vw, 2.05rem);
  font-style: normal;
  font-weight: 500;
  color: #1a2b48;
  line-height: 1.58;
  max-width: none;
  letter-spacing: 0.012em;
}

.verse-banner.verse-banner--editorial .verse-banner__text-wrap {
  width: min(100%, 36rem);
  max-width: 36rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: calc(2em * 1.55);
}

.verse-banner.verse-banner--editorial .verse-banner__text {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: none;
  margin: 0;
  min-height: calc(2em * 1.55);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: opacity 0.35s ease;
}

.verse-banner.verse-banner--editorial .verse-banner__text.is-clampable:not(.is-expanded) {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
}

.verse-banner.verse-banner--editorial .verse-banner__expand-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-height: 2.05rem;
  margin: 0.85rem auto 0;
  padding: 0.38rem 0.85rem;
  border: 1px solid rgba(184, 152, 79, 0.34);
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.06);
  color: rgba(184, 152, 79, 0.92);
  font: inherit;
  font-size: clamp(0.66rem, 1.35vw, 0.74rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.35;
  cursor: pointer;
  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease,
    visibility 0.2s ease;
}

.verse-banner.verse-banner--editorial .verse-banner__expand-btn.is-inactive {
  display: none;
  visibility: hidden;
  pointer-events: none;
  margin: 0;
  min-height: 0;
  height: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy .verse-banner__expand-btn {
  border-color: rgba(212, 188, 130, 0.38);
  color: rgba(212, 188, 130, 0.9);
  background: rgba(21, 42, 69, 0.24);
}

.verse-banner.verse-banner--editorial .verse-banner__expand-btn:hover,
.verse-banner.verse-banner--editorial .verse-banner__expand-btn:focus-visible {
  border-color: rgba(212, 188, 130, 0.68);
  color: var(--gold-light);
  background: rgba(250, 246, 238, 0.1);
  outline: none;
}

.verse-banner.verse-banner--editorial .verse-banner__gold {
  color: #b8984f;
  font-weight: 600;
}

.verse-banner.verse-banner--editorial .verse-banner__ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(100%, 20rem);
  margin: clamp(1.45rem, 3vw, 2rem) auto clamp(0.85rem, 2vw, 1.15rem);
  padding: 0;
}

.verse-banner.verse-banner--editorial .verse-banner__ornament-img {
  display: block;
  width: 100%;
  max-width: 20rem;
  max-height: 2.35rem;
  height: auto;
  object-fit: contain;
  opacity: 0.84;
}

.verse-banner.verse-banner--editorial cite {
  display: block;
  margin-top: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.5vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #b8984f;
}

.verse-banner.verse-banner--editorial .verse-banner__more {
  margin-top: clamp(1rem, 2.4vw, 1.3rem);
  text-align: center;
}

.verse-banner.verse-banner--editorial .verse-banner__more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0.4rem 0.9rem;
  border: 1px solid rgba(184, 152, 79, 0.34);
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.05);
  color: rgba(250, 246, 238, 0.78);
  font-family: var(--font-sans);
  font-size: clamp(0.66rem, 1.35vw, 0.74rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.35;
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.verse-banner.verse-banner--editorial.verse-banner--editorial-navy .verse-banner__more-btn {
  border-color: rgba(212, 188, 130, 0.38);
  color: rgba(212, 188, 130, 0.86);
  background: rgba(21, 42, 69, 0.28);
}

.verse-banner.verse-banner--editorial .verse-banner__more-btn:hover,
.verse-banner.verse-banner--editorial .verse-banner__more-btn:focus-visible {
  border-color: rgba(212, 188, 130, 0.68);
  color: var(--gold-light);
  background: rgba(250, 246, 238, 0.09);
  outline: none;
}

.verse-banner.verse-banner--editorial .verse-banner__more-btn:disabled {
  opacity: 0.55;
  cursor: wait;
}

@media (min-width: 992px) {
  .verse-banner.verse-banner--editorial blockquote {
    font-size: clamp(1.72rem, 3.45vw, 2.28rem);
    line-height: 1.56;
  }

  .verse-banner.verse-banner--editorial cite {
    font-size: clamp(0.74rem, 1.55vw, 0.84rem);
  }
}

@media (max-width: 767px) {
  .verse-banner.verse-banner--editorial blockquote {
    font-size: clamp(1.3rem, 5vw, 1.62rem);
    line-height: 1.48;
  }

  .verse-banner.verse-banner--editorial .verse-banner__ornament {
    width: min(100%, 17rem);
  }

  .verse-banner.verse-banner--editorial .verse-banner__ornament-img {
    max-width: 17rem;
    max-height: 2rem;
    opacity: 0.8;
  }

  .verse-banner.verse-banner--editorial .verse-banner__rays {
    opacity: 0.72;
  }
}

@media (max-width: 420px) {
  .verse-banner.verse-banner--editorial .verse-banner__ornament {
    width: min(100%, 14.5rem);
  }

  .verse-banner.verse-banner--editorial .verse-banner__ornament-img {
    max-width: 14.5rem;
    max-height: 1.75rem;
  }
}

/* Startseite Ã¢â‚¬â€œ BegrÃƒÂ¼ÃƒÅ¸ung zwischen Hero und Psalm */
.home-welcome {
  position: relative;
  background-color: var(--cream);
  background-image: linear-gradient(180deg, #f3ece2 0%, var(--cream) 14%, var(--cream) 100%);
  padding: clamp(3.75rem, 8.5vw, 6.5rem) clamp(1.25rem, 4vw, 2.5rem) clamp(3.25rem, 7vw, 5.75rem);
  overflow: hidden;
  text-align: center;
  z-index: 1;
}

.home-welcome__rays {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.5;
  background:
    repeating-conic-gradient(
      from -22deg at 11% 0%,
      transparent 0deg 8.5deg,
      rgba(245, 238, 228, 0.06) 8.5deg 12.5deg,
      rgba(250, 246, 238, 0.035) 12.5deg 14.5deg,
      transparent 14.5deg 24deg
    ),
    radial-gradient(ellipse 125% 115% at 8% -14%, rgba(252, 248, 242, 0.34) 0%, rgba(245, 238, 228, 0.12) 26%, rgba(238, 232, 222, 0.04) 52%, transparent 86%),
    radial-gradient(ellipse 68% 60% at 5% 0%, rgba(255, 252, 247, 0.22) 0%, transparent 66%);
  background-attachment: fixed;
  -webkit-mask-image: radial-gradient(ellipse 145% 112% at 9% 0%, #000 0%, rgba(0, 0, 0, 0.28) 54%, transparent 94%);
  mask-image: radial-gradient(ellipse 145% 112% at 9% 0%, #000 0%, rgba(0, 0, 0, 0.28) 54%, transparent 94%);
  filter: blur(3px);
}

.home-welcome__rays::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, rgba(250, 246, 238, 0.16) 0%, rgba(245, 238, 228, 0.06) 38%, transparent 58%),
    linear-gradient(128deg, rgba(248, 242, 232, 0.12) 0%, transparent 52%),
    linear-gradient(102deg, rgba(242, 236, 226, 0.08) 0%, transparent 48%);
  background-attachment: fixed;
  -webkit-mask-image: radial-gradient(ellipse 135% 102% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.24) 52%, transparent 90%);
  mask-image: radial-gradient(ellipse 135% 102% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.24) 52%, transparent 90%);
  filter: blur(3.25px);
}

.home-welcome__rays::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 7% -2%, rgba(252, 248, 242, 0.22) 0%, rgba(245, 238, 228, 0.07) 38%, transparent 58%);
  background-attachment: fixed;
  -webkit-mask-image: radial-gradient(ellipse 120% 98% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.22) 46%, transparent 86%);
  mask-image: radial-gradient(ellipse 120% 98% at 8% 0%, #000 0%, rgba(0, 0, 0, 0.22) 46%, transparent 86%);
  filter: blur(2.75px);
}

.home-welcome__inner {
  position: relative;
  z-index: 1;
  max-width: 45rem;
  margin: 0 auto;
}

.home-welcome__eyebrow {
  margin: 0 0 clamp(1.35rem, 3vw, 1.85rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

/* Startseite Ã¢â‚¬â€œ einheitliches Zierelement unter HauptÃƒÂ¼berschriften */
.home-section-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  width: min(100%, 9rem);
  margin: clamp(1.15rem, 2.6vw, 1.55rem) auto clamp(1.45rem, 3.2vw, 1.95rem);
}

.home-section-ornament__line {
  flex: 0 0 clamp(1.5rem, 2.6vw, 3.25rem);
  width: clamp(1.5rem, 2.6vw, 3.25rem);
  height: 1px;
  background: rgba(184, 152, 79, 0.62);
}

/* Ensure the ornament sits directly under the header title (also on cloned blocks). */
.home-mitmachen__header > .home-section-ornament {
  margin-top: 0;
}

.home-section-ornament__heart {
  flex: 0 0 auto;
  width: 0.72rem;
  height: 0.72rem;
  opacity: 0.92;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14' fill='none'%3E%3Cpath d='M8 13S1 8.6 1 4.8C1 2.7 2.6 1 4.6 1c1.2 0 2.3.6 3 1.6.7-1 1.8-1.6 3-1.6 2 0 3.6 1.7 3.6 3.8C14.4 8.6 8 13 8 13z' fill='%23c9a84c'/%3E%3C/svg%3E");
}

.page-home :is(
  .home-welcome__title,
  .home-hermine-world__title,
  .home-lobpreis__title,
  .home-lobpreis-teaser__title,
  .home-gebet__dual .page-title-dual__line2,
  .home-mitmachen__title,
  .home-ruf__title,
  .home-hoffnung__title,
  .home-herzensanliegen__title,
  .home-impulses__dual .page-title-dual__line2,
  .home-closing__title
):has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.page-home .home-bibel-counter__eyebrow:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.home-welcome__ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  margin: 0 auto;
}

.home-welcome__ornament--mid {
  width: min(100%, 9rem);
  margin: clamp(1.15rem, 2.6vw, 1.55rem) auto clamp(1.45rem, 3.2vw, 1.95rem);
  gap: 0.55rem;
}

.home-welcome__ornament-line {
  flex: 1 1 0;
  height: 1px;
  min-width: 1.5rem;
  background: linear-gradient(90deg, transparent, rgba(184, 152, 79, 0.55) 22%, rgba(184, 152, 79, 0.55) 78%, transparent);
}

.home-welcome__ornament-line--short {
  flex: 0 1 2.75rem;
  min-width: 1.25rem;
}

.home-welcome__ornament-heart {
  flex: 0 0 auto;
  width: 0.95rem;
  height: 0.95rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14' fill='none'%3E%3Cpath d='M8 13S1 8.6 1 4.8C1 2.7 2.6 1 4.6 1c1.2 0 2.3.6 3 1.6.7-1 1.8-1.6 3-1.6 2 0 3.6 1.7 3.6 3.8C14.4 8.6 8 13 8 13z' fill='%23c9a84c'/%3E%3C/svg%3E");
}

.home-welcome__ornament-heart--small {
  width: 0.72rem;
  height: 0.72rem;
  opacity: 0.92;
}

.home-welcome__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.6vw, 3rem);
  font-weight: 500;
  line-height: 1.14;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.home-welcome__title-line {
  display: block;
}

.home-welcome__body {
  max-width: 45rem;
  margin: 0 auto;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.08rem);
  line-height: 1.78;
  color: var(--deep-navy);
}

.home-welcome__body p {
  margin: 0;
}

.home-welcome__body p + p {
  margin-top: clamp(1rem, 2.2vw, 1.35rem);
}

.home-welcome__topics {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.55rem, 1.8vw, 0.85rem);
  margin: clamp(2rem, 4.5vw, 2.75rem) 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.58rem, 1.25vw, 0.68rem);
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--deep-navy);
}

.home-welcome__topics-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}

.home-welcome__topics-dot {
  width: 0.28rem;
  height: 0.28rem;
  border-radius: 50%;
  background: #b8984f;
  opacity: 0.9;
}

.home-welcome__topics-star {
  flex: 0 0 auto;
  width: 0.72rem;
  height: 0.72rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.85;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M6 0l1.2 3.8H11L7.9 6.2 9.1 10 6 7.8 2.9 10 4.1 6.2 1 3.8h3.8L6 0z' fill='%23c9a84c'/%3E%3C/svg%3E");
}

@media (max-width: 767px) {
  .home-welcome__rays {
    opacity: 0.44;
  }

  .verse-banner.verse-banner--editorial .verse-banner__rays {
    opacity: 0.66;
  }

  .home-welcome__title {
    font-size: clamp(1.72rem, 7.2vw, 2.25rem);
    line-height: 1.18;
  }

  .home-welcome__topics {
    letter-spacing: 0.16em;
  }

  .home-welcome__topics-star {
    display: none;
  }
}

@media (max-width: 420px) {
  .home-welcome__topics-list {
    gap: 0.35rem 0.45rem;
  }
}

/* -------------------------------------------------------------------------- */
/* 6. Counter-Widget                                                          */
/* -------------------------------------------------------------------------- */

.sl-counter-widget {
  margin: 2rem 0 2.5rem;
  padding: 2rem 1.5rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, var(--warm-white), var(--cream));
  border: 1px solid rgba(201, 168, 76, 0.28);
  box-shadow: var(--shadow-soft);
  overflow: visible;
}

.sl-counter-widget__main {
  text-align: center;
  margin-bottom: 1.25rem;
}

.sl-counter-widget__value {
  display: block;
  font-family: var(--font-serif);
  font-size: clamp(3rem, 10vw, 4.5rem);
  font-weight: 700;
  color: var(--deep-navy);
  line-height: 1;
  letter-spacing: -0.03em;
}

.sl-counter-widget__label {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
}

.sl-counter-widget__bar {
  height: 10px;
  border-radius: 999px;
  background: rgba(19, 39, 68, 0.12);
  overflow: hidden;
  margin-bottom: 1.5rem;
}

.sl-counter-widget__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--gold), var(--gold-light));
  box-shadow: 0 0 20px rgba(201, 168, 76, 0.45);
  transition: width 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.sl-counter-widget__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  text-align: center;
}

.sl-counter-widget__stats li strong {
  display: block;
  font-family: var(--font-serif);
  font-size: 1.5rem;
  color: var(--text-dark);
}

.sl-counter-widget__stats li span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--soft-gray);
}

@media (max-width: 767px) {
  .sl-counter-widget__stats {
    grid-template-columns: 1fr;
  }
}

.sl-counter-widget__heading {
  font-family: var(--font-serif);
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  text-align: center;
  margin: 0 0 1rem;
  line-height: 1.35;
  padding: 0.4rem 0 0.1rem;
  overflow: visible;
}

.sl-counter-widget--v2 .sl-counter-widget__main {
  position: relative;
}

.sl-counter-widget__heading--page-mission {
  font-size: clamp(1.65rem, 5.2vw, 2.85rem) !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1.15;
}

.sl-counter-widget__sub {
  display: block;
  margin-top: 0.5rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--text-body);
}

.sl-counter-widget__meta {
  text-align: center;
  font-size: 0.95rem;
  color: var(--text-body);
  margin: 1.25rem 0 0;
  line-height: 1.5;
}

.sl-counter-widget__meta-sep {
  margin: 0 0.65rem;
  opacity: 0.4;
}

html.gottlebt-js .sl-counter-widget__nojs {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html:not(.gottlebt-js) .sl-counter-widget__js {
  display: none !important;
}

.nav-logo .gold {
  color: var(--gold);
  text-transform: lowercase;
}

.offerings--cta-solid {
  background: linear-gradient(180deg, var(--midnight) 0%, var(--deep-navy) 100%);
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.offerings--cta-solid .offerings-header h2 {
  color: var(--cream);
}

.offerings--cta-solid .offerings-header h2 em {
  color: var(--gold-light);
}

/* Dunkler CTA-Block: keine dunkelblaue Zeile auf dunklem Grund (war Ã¢â‚¬Å¾abgeschnittenÃ¢â‚¬Å“/unsichtbar) */
.offerings--cta-solid .offerings-header {
  overflow: visible;
  padding-top: 0.6rem;
  margin-bottom: 2.5rem;
}

.offerings--cta-solid .offerings-heading-split__mio {
  color: rgba(250, 246, 238, 0.98);
  text-shadow: 0 2px 26px rgba(0, 0, 0, 0.5);
}

.offerings--cta-solid .offerings-heading-split__line--primary {
  color: #e8f0fa;
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.55);
}

.offerings--cta-solid .offerings-heading-split__sub {
  color: rgba(245, 248, 252, 0.93);
}

.offerings--cta-solid .section-tag {
  font-size: clamp(0.82rem, 2.1vw, 1.02rem);
  font-weight: 800;
  letter-spacing: 0.14em;
  color: var(--gold);
}

.offerings-heading-split {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  text-align: center;
  line-height: 1.2;
}

.offerings-heading-split__gold {
  font-family: var(--font-serif);
  font-size: clamp(1.35rem, 3.6vw, 1.85rem);
  font-weight: 600;
  color: var(--gold-light);
  text-shadow: 0 0 24px rgba(201, 168, 76, 0.25);
}

.offerings-heading-split__line--primary {
  font-family: var(--font-serif);
  font-size: clamp(1.45rem, 4.2vw, 2.35rem);
  font-weight: 700;
  color: #0c2848;
  letter-spacing: 0.02em;
  line-height: 1.15;
}

.offerings-heading-split__mio {
  font-family: var(--font-serif);
  font-size: clamp(1.35rem, 3.8vw, 1.95rem);
  font-weight: 600;
  /* Mitmachen: Dunkelblau wie Site */
  color: #0f2f55;
  text-shadow: 0 2px 22px rgba(0, 0, 0, 0.25);
  letter-spacing: 0.02em;
}

.offerings-heading-split__sub {
  font-family: var(--font-serif);
  font-size: clamp(1.1rem, 2.75vw, 1.5rem);
  font-weight: 500;
  color: rgba(245, 248, 252, 0.94);
}

.offerings-heading-split__sub em {
  font-style: italic;
  color: var(--gold-light);
}

.offerings-heading-split__navy {
  font-family: var(--font-serif);
  font-size: clamp(1.15rem, 2.8vw, 1.55rem);
  font-weight: 500;
  color: rgba(226, 237, 248, 0.95);
}

.offerings-heading-split__navy em {
  font-style: italic;
  color: var(--gold-light);
}

.offering-card--cta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}

.offering-card--cta h3 {
  color: var(--cream);
}

.offering-card--cta p {
  flex: 1;
  text-align: left;
}

.offering-card--cta .offering-card__btn {
  margin-top: 1.25rem;
}

.offerings-grid .offering-card {
  transition:
    transform var(--card-hover-duration) var(--card-hover-ease),
    box-shadow var(--card-hover-duration) var(--card-hover-ease),
    border-color var(--card-hover-duration) var(--card-hover-ease);
}

/* -------------------------------------------------------------------------- */
/* 7. Spendestaffel (4 Karten)                                                */
/* -------------------------------------------------------------------------- */

.sl-section-heading {
  font-family: var(--font-serif);
  font-size: 1.85rem;
  margin: 1.85rem 0 0.5rem;
  color: var(--text-dark);
}

.sl-tier-intro {
  color: var(--text-body);
  margin-bottom: 1.5rem;
  max-width: 40rem;
}

.sl-spenden-intro {
  margin: 1.5rem 0;
  padding: 1.35rem 1.25rem;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.08);
  box-shadow: var(--shadow-soft);
}

.sl-spenden-intro:nth-child(even) {
  background: linear-gradient(160deg, rgba(250, 246, 238, 0.95), #fff);
}

.sl-spenden-trust {
  margin-top: 2.75rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(19, 39, 68, 0.1);
}

.sl-spenden-trust__body {
  max-width: 40rem;
}

.sl-flatrate-intro-chunk {
  margin-bottom: 1.25rem;
}

/* Botschafter werden â€“ Hero & EinfÃ¼hrung (page-flatrate) */
.page-flatrate #main-content {
  padding-top: var(--nav-h);
}

.page-flatrate .article-shell {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.page-flatrate .flatrate-hero,
.page-flatrate .flatrate-word,
.page-flatrate .flatrate-mission,
.page-flatrate .flatrate-apply,
.page-flatrate .flatrate-give,
.page-flatrate .flatrate-fee {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-flatrate .flatrate-hero {
  padding: clamp(2.75rem, 6vw, 4.25rem) var(--verein-section-x) clamp(2.5rem, 5.5vw, 3.75rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.85) 100%);
  border-bottom: var(--verein-section-divider);
}

.page-flatrate .flatrate-hero__inner {
  max-width: 44rem;
  margin: 0 auto;
  text-align: center;
}

.page-flatrate .flatrate-hero__eyebrow {
  margin: 0 0 clamp(0.75rem, 1.8vw, 1rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.4vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-flatrate .flatrate-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2.35rem, 5.2vw, 3.35rem);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-hero .home-section-ornament {
  margin-top: clamp(1rem, 2.4vw, 1.35rem);
  margin-bottom: clamp(1.35rem, 3vw, 1.85rem);
}

.page-flatrate .flatrate-hero__lead {
  margin: 0 auto;
  max-width: 40rem;
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2.05vw, 1.22rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.9);
  text-wrap: pretty;
}

.page-flatrate .flatrate-hero__verse {
  margin: clamp(1.5rem, 3.2vw, 2rem) auto 0;
  max-width: 38rem;
  padding: clamp(1.15rem, 2.6vw, 1.5rem) clamp(1.25rem, 2.8vw, 1.65rem);
  border: 0;
  border-radius: var(--radius-lg);
  background: rgba(255, 252, 245, 0.92);
  box-shadow:
    0 8px 28px rgba(19, 39, 68, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.page-flatrate .flatrate-hero__verse p,
.page-flatrate .flatrate-hero__verse__text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2.05vw, 1.2rem);
  font-weight: 500;
  font-style: italic;
  line-height: 1.68;
  letter-spacing: 0.01em;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-flatrate .flatrate-hero__verse cite {
  display: block;
  margin-top: clamp(0.75rem, 1.8vw, 1rem);
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(184, 152, 79, 0.95);
}

.page-flatrate .flatrate-hero__cta {
  margin: clamp(1.5rem, 3.2vw, 2rem) 0 0;
}

.page-flatrate .flatrate-hero__btn {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  justify-content: center;
}

.page-flatrate .flatrate-word {
  padding: clamp(2.5rem, 5.5vw, 3.75rem) var(--verein-section-x);
  background: #fff;
  border-top: var(--verein-section-divider);
}

.page-flatrate .flatrate-word__inner {
  max-width: 48rem;
  margin: 0 auto;
}

.page-flatrate .flatrate-word__header {
  text-align: center;
}

.page-flatrate .flatrate-word__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.45rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-word__body {
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.15rem);
  line-height: 1.74;
  color: rgba(15, 31, 54, 0.9);
  text-wrap: pretty;
}

.page-flatrate .flatrate-word__body p {
  margin: 0;
}

.page-flatrate .flatrate-word__body p + p {
  margin-top: clamp(0.85rem, 1.9vw, 1.1rem);
}

.page-flatrate .flatrate-word__effects {
  display: grid;
  gap: clamp(0.75rem, 1.6vw, 1rem);
  margin: clamp(1.75rem, 3.8vw, 2.35rem) 0 0;
  padding: 0;
  list-style: none;
}

.page-flatrate .flatrate-word__effect {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: clamp(0.75rem, 1.6vw, 0.95rem);
  margin: 0;
  padding: clamp(0.95rem, 2vw, 1.15rem) clamp(1rem, 2.1vw, 1.2rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 55%, #152a45 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 0.75rem;
  box-shadow: 0 10px 28px rgba(10, 22, 40, 0.22);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.page-flatrate .article-prose ul.flatrate-word__effects {
  margin-top: clamp(1.75rem, 3.8vw, 2.35rem);
  margin-bottom: 0;
  padding: 0;
}

.page-flatrate .article-prose ul.flatrate-word__effects > .flatrate-word__effect {
  margin: 0;
  padding-left: clamp(1rem, 2.1vw, 1.2rem);
}

.page-flatrate .article-prose ul.flatrate-word__effects > .flatrate-word__effect::before {
  content: none;
  display: none;
  background: none;
}

.page-flatrate .flatrate-word__effect-mark {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  border: 1px solid rgba(232, 204, 122, 0.55);
  background: rgba(255, 252, 247, 0.1);
  color: var(--gold-light);
}

.page-flatrate .flatrate-word__effect-mark::before {
  content: '';
  width: 0.72rem;
  height: 0.9rem;
  background: center / contain no-repeat
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20' fill='none'%3E%3Cpath d='M8 2v16M4.6 7.3h6.8' stroke='%23e8cc7a' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
}

.page-flatrate .flatrate-word__effect-text {
  display: block;
  padding-top: 0.28rem;
  font-family: var(--font-sans);
  font-size: clamp(0.94rem, 1.75vw, 1.02rem);
  line-height: 1.48;
  color: rgba(250, 246, 238, 0.94);
}

@media (min-width: 768px) {
  .page-flatrate .flatrate-word__effects {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-flatrate .flatrate-word__effects {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .page-flatrate .flatrate-word__inner {
    width: 100%;
  }

  .page-flatrate .flatrate-word__effects,
  .page-flatrate .article-prose ul.flatrate-word__effects {
    display: grid;
    width: 100%;
    max-width: min(22.5rem, calc(100% - 28px));
    margin-inline: auto;
    margin-block: clamp(1.75rem, 3.8vw, 2.35rem) 0;
    padding-inline: 0;
    justify-items: center;
    gap: clamp(0.7rem, 2vw, 0.9rem);
  }

  .page-flatrate .flatrate-word__effect,
  .page-flatrate .article-prose ul.flatrate-word__effects > .flatrate-word__effect {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
    margin-block: 0;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.65rem;
    padding: clamp(0.95rem, 3vw, 1.15rem);
    padding-left: clamp(0.95rem, 3vw, 1.15rem);
    padding-right: clamp(0.95rem, 3vw, 1.15rem);
  }

  .page-flatrate .flatrate-word__effect-text {
    padding-top: 0;
  }
}

.page-flatrate .flatrate-mission {
  padding: clamp(2.5rem, 5.5vw, 3.75rem) var(--verein-section-x);
  background-color: var(--deep-navy);
  background-image: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 52%, #152a45 100%);
  border-top: 1px solid rgba(201, 168, 76, 0.22);
}

.page-flatrate .flatrate-mission__inner {
  max-width: 44rem;
  margin: 0 auto;
}

.page-flatrate .flatrate-mission__header {
  text-align: center;
}

.page-flatrate .flatrate-mission__header .home-section-ornament__line {
  background: rgba(232, 204, 122, 0.55);
}

.page-flatrate .flatrate-mission__header .home-section-ornament__heart {
  color: var(--gold-light);
}

.page-flatrate .flatrate-mission__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.45rem);
  font-weight: 600;
  line-height: 1.16;
  color: rgba(250, 246, 238, 0.98);
}

.page-flatrate .flatrate-mission__lead {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.15rem);
  line-height: 1.74;
  color: rgba(250, 246, 238, 0.9);
  text-align: center;
  text-wrap: pretty;
}

.page-flatrate .flatrate-mission__list {
  margin: clamp(1.35rem, 3vw, 1.85rem) 0 0;
  padding: 0;
  list-style: none;
}

.page-flatrate .flatrate-mission__highlights {
  display: grid;
  gap: clamp(0.85rem, 1.8vw, 1.1rem);
  margin: clamp(1.5rem, 3.2vw, 2rem) 0 0;
}

.page-flatrate .flatrate-mission__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-height: 6.5rem;
  padding: clamp(1.15rem, 2.5vw, 1.45rem) clamp(1rem, 2vw, 1.25rem);
  text-align: center;
  background: rgba(255, 252, 245, 0.08);
  border: 1px solid rgba(201, 168, 76, 0.35);
  border-radius: 0.85rem;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 12px 28px rgba(10, 22, 40, 0.2);
}

.page-flatrate .flatrate-mission__stat-value {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.2vw, 2.65rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  color: rgba(250, 246, 238, 0.98);
}

.page-flatrate .flatrate-mission__stat-label {
  font-family: var(--font-sans);
  font-size: clamp(0.78rem, 1.45vw, 0.86rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold-light);
}

.page-flatrate .flatrate-mission__features {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(0.55rem, 1.2vw, 0.75rem);
  margin: clamp(1.15rem, 2.5vw, 1.45rem) 0 0;
  padding: 0;
  list-style: none;
}

.page-flatrate .flatrate-mission__feature {
  margin: 0;
  padding: 0.58rem 1rem;
  font-family: var(--font-sans);
  font-size: clamp(0.9rem, 1.55vw, 0.94rem);
  line-height: 1.4;
  color: rgba(250, 246, 238, 0.9);
  background: rgba(255, 252, 245, 0.08);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 999px;
  box-shadow: 0 4px 14px rgba(10, 22, 40, 0.12);
}

@media (min-width: 640px) {
  .page-flatrate .flatrate-mission__highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-flatrate .flatrate-apply {
  position: relative;
  z-index: 961;
  padding: clamp(2rem, 4.5vw, 3.25rem) var(--verein-section-x) clamp(2.25rem, 5vw, 3.5rem);
  background: linear-gradient(180deg, #f7f9fc 0%, rgba(250, 246, 238, 0.98) 100%);
  border-top: var(--verein-section-divider);
}

.page-flatrate .flatrate-apply__inner {
  max-width: 42rem;
  margin: 0 auto;
}

.page-flatrate .flatrate-apply__header {
  text-align: center;
  margin-bottom: clamp(1rem, 2.4vw, 1.35rem);
}

.page-flatrate .flatrate-apply__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.6vw, 2.25rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-apply__header .home-section-ornament__line {
  background: linear-gradient(90deg, transparent, rgba(184, 152, 79, 0.55), transparent);
}

.page-flatrate .flatrate-apply__header .home-section-ornament__heart {
  color: rgba(184, 152, 79, 0.82);
}

.page-flatrate .flatrate-apply__header .home-section-ornament {
  margin: clamp(0.55rem, 1.4vw, 0.75rem) auto clamp(0.65rem, 1.6vw, 0.85rem);
}

.page-flatrate .flatrate-apply__intro {
  margin: 0 auto;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.1rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.86);
  text-wrap: pretty;
}

.page-flatrate .flatrate-apply__time {
  margin: 0.7rem auto 0;
  max-width: 36rem;
  font-family: var(--font-sans);
  font-size: clamp(0.95rem, 1.75vw, 1.04rem);
  font-weight: 600;
  line-height: 1.5;
  color: rgba(15, 31, 54, 0.72);
}

.page-flatrate .flatrate-apply__panel {
  padding: clamp(1.15rem, 2.4vw, 1.55rem);
  border-radius: var(--radius-lg);
  background: #fff;
  border: 1px solid rgba(19, 39, 68, 0.08);
  box-shadow: 0 12px 36px rgba(19, 39, 68, 0.06);
}

.page-flatrate .flatrate-apply__form {
  max-width: none;
  margin: 0;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__progress {
  margin: 0 0 clamp(1.1rem, 2.4vw, 1.45rem);
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.4vw, 0.8rem);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-align: center;
  color: rgba(15, 31, 54, 0.52);
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__current {
  font-size: inherit;
  color: rgba(15, 31, 54, 0.78);
}

.page-flatrate .flatrate-apply__form .sl-flatrate-fieldset {
  border: none;
  border-radius: 0;
  padding: clamp(0.25rem, 0.8vw, 0.5rem) 0;
  margin: 0;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-legend {
  margin: 0 0 clamp(0.75rem, 1.8vw, 0.95rem);
  padding: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.1vw, 1.28rem);
  font-weight: 600;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-apply__form .sl-flatrate-question {
  margin: 0 0 clamp(0.9rem, 2vw, 1.1rem);
  font-family: var(--font-sans);
  font-size: clamp(1rem, 1.85vw, 1.06rem);
  line-height: 1.66;
  color: rgba(15, 31, 54, 0.88);
  font-weight: 400;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-season-note {
  margin: 0 0 clamp(0.9rem, 2vw, 1.1rem);
  padding: 0.8rem 0.95rem;
  border-radius: 0.5rem;
  background: rgba(201, 168, 76, 0.12);
  border: 1px solid rgba(184, 152, 79, 0.28);
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.8vw, 1.04rem);
  line-height: 1.55;
  color: var(--deep-navy);
  font-weight: 600;
}

.page-flatrate .flatrate-apply__form .public-form__check + .sl-flatrate-question {
  margin-top: 1.15rem;
}

.page-flatrate .flatrate-apply__form .public-form label {
  font-size: clamp(0.98rem, 1.8vw, 1.04rem);
  line-height: 1.55;
}

.page-flatrate .flatrate-apply__form .public-form input,
.page-flatrate .flatrate-apply__form .public-form textarea {
  min-height: 2.95rem;
  padding: 0.75rem 0.95rem;
  font-size: 1.02rem;
  line-height: 1.45;
  border: 1px solid rgba(19, 39, 68, 0.14);
  border-radius: 0.5rem;
  background: #fff;
}

.page-flatrate .flatrate-apply__form .public-form textarea {
  min-height: 7rem;
}

.page-flatrate .flatrate-apply__form .public-form input:focus,
.page-flatrate .flatrate-apply__form .public-form textarea:focus {
  border-color: rgba(184, 152, 79, 0.55);
  outline: 2px solid rgba(201, 168, 76, 0.22);
  outline-offset: 1px;
}

.page-flatrate .flatrate-apply__form .public-form__check {
  display: block !important;
  position: relative;
  padding: 0.55rem 0 0.55rem 1.75rem;
  line-height: 1.55;
}

.page-flatrate .flatrate-apply__form .public-form__radio {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.55rem 0;
  line-height: 1.55;
}

.page-flatrate .flatrate-apply__form .public-form__check input {
  position: absolute;
  left: 0;
  top: 0.7rem;
  min-height: 1.15rem;
  width: 1.15rem;
  height: 1.15rem;
  margin: 0;
}

.page-flatrate .flatrate-apply__form .public-form__radio input {
  min-height: 1.15rem;
  width: 1.15rem;
  height: 1.15rem;
  margin-top: 0.2rem;
  flex-shrink: 0;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__step {
  margin-bottom: 0;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__step--final {
  padding-top: clamp(0.5rem, 1.5vw, 0.85rem);
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav {
  margin-top: clamp(1.15rem, 2.6vw, 1.55rem);
  padding-top: clamp(1rem, 2.2vw, 1.35rem);
  padding-right: calc(var(--float-btn-size, 3.625rem) + 1.75rem);
  border-top: 1px solid rgba(19, 39, 68, 0.08);
  justify-content: flex-end;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav [hidden] {
  display: none !important;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .btn-primary,
.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .btn-secondary {
  min-height: 2.85rem;
  padding: 0.72rem 1.25rem;
  font-size: 0.82rem;
}

.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .sl-flatrate-wizard__next,
.page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .sl-flatrate-wizard__submit {
  margin-left: auto;
}

@media (min-width: 768px) {
  .page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .btn-primary,
  .page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .btn-secondary {
    width: auto;
    min-width: 8.5rem;
  }
}

.page-flatrate .article-shell > .form-flash,
.page-flatrate .article-shell > .sl-flatrate-wrap {
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--verein-section-x);
  padding-right: var(--verein-section-x);
  box-sizing: border-box;
}

.page-flatrate .flatrate-give {
  padding: clamp(2rem, 4.5vw, 3rem) var(--verein-section-x);
  background: linear-gradient(180deg, rgba(255, 252, 245, 0.96) 0%, var(--warm-white) 100%);
  border-top: var(--verein-section-divider);
}

.page-flatrate .flatrate-give__inner {
  max-width: 38rem;
  margin: 0 auto;
  text-align: center;
  padding: clamp(1.5rem, 3.2vw, 2rem);
  border-radius: var(--radius-lg);
  background: rgba(255, 252, 245, 0.95);
  border: 1px solid rgba(184, 152, 79, 0.24);
  box-shadow: 0 10px 32px rgba(19, 39, 68, 0.05);
}

.page-flatrate .flatrate-give__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.4vw, 2.15rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-give__body p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.15rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.9);
  text-wrap: pretty;
}

.page-flatrate .flatrate-give__body .flatrate-give__cta {
  margin: clamp(1.75rem, 3.4vw, 2.35rem) 0 0;
}

.page-flatrate .flatrate-give__btn {
  display: inline-flex;
  text-decoration: none;
}

.page-flatrate .flatrate-fee {
  padding: clamp(2.25rem, 5vw, 3.5rem) var(--verein-section-x) clamp(2.5rem, 5.5vw, 3.75rem);
  background: #fff;
  border-top: var(--verein-section-divider);
}

.page-flatrate .flatrate-fee__inner {
  max-width: 50rem;
  margin: 0 auto;
}

.page-flatrate .flatrate-fee__header {
  text-align: center;
}

.page-flatrate .flatrate-fee__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.4vw, 2.15rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-fee__lead {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.15rem);
  line-height: 1.74;
  color: rgba(15, 31, 54, 0.9);
  text-align: center;
  text-wrap: pretty;
}

.page-flatrate .flatrate-fee__payments {
  display: grid;
  gap: clamp(0.85rem, 2vw, 1.1rem);
  margin-top: clamp(1.35rem, 3vw, 1.85rem);
}

.page-flatrate .flatrate-fee__payment {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding: clamp(1.15rem, 2.6vw, 1.5rem);
  border: 1px solid rgba(19, 39, 68, 0.1);
  border-radius: var(--radius-lg);
  background: var(--warm-white);
}

.page-flatrate .flatrate-fee__payment-title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.2vw, 1.28rem);
  font-weight: 600;
  line-height: 1.28;
  color: var(--deep-navy);
}

.page-flatrate .flatrate-fee__payment-text {
  margin: 0;
  flex: 0 1 auto;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.7vw, 1rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.78);
}

.page-flatrate .flatrate-fee__bank {
  margin: 0;
  display: grid;
  gap: 0.75rem;
}

.page-flatrate .flatrate-fee__bank-row dt {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(15, 31, 54, 0.52);
}

.page-flatrate .flatrate-fee__bank-row dd {
  margin: 0.25rem 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.95rem, 1.75vw, 1.02rem);
  line-height: 1.5;
  color: var(--deep-navy);
  word-break: break-word;
}

.page-flatrate .flatrate-fee__payment .btn-primary,
.page-flatrate .flatrate-fee__payment .btn-secondary,
.page-flatrate .flatrate-fee__btn {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  align-self: center;
  justify-content: center;
  margin-top: 0.35rem;
}

@media (min-width: 900px) {
  .page-flatrate .flatrate-fee__payments {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }

  .page-flatrate .flatrate-fee__payments:has(.flatrate-fee__payment:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-spenden .spenden-payment__item-text,
  .page-flatrate .flatrate-fee__payment-text {
    flex: 1 1 auto;
  }

  .page-spenden .spenden-payment__btn,
  .page-flatrate .flatrate-fee__payment .btn-primary,
  .page-flatrate .flatrate-fee__payment .btn-secondary,
  .page-flatrate .flatrate-fee__btn {
    margin-top: auto;
  }
}

/* Dein Geschenk â€“ Hero bis Geschenkbibel-Block */
.page-geschenk .geschenk-hero,
.page-geschenk .geschenk-for-you,
.page-geschenk .geschenk-gift,
.page-geschenk .geschenk-next,
.page-geschenk .geschenk-order,
.page-geschenk .geschenk-trust {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-geschenk .geschenk-hero {
  padding: clamp(2.75rem, 6vw, 4.25rem) var(--verein-section-x) clamp(2.5rem, 5.5vw, 3.75rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.88) 100%);
  border-bottom: var(--verein-section-divider);
}

.page-geschenk .geschenk-hero__inner {
  max-width: 44rem;
  margin: 0 auto;
  text-align: center;
}

.page-geschenk .geschenk-hero__eyebrow {
  margin: 0 0 clamp(0.75rem, 1.8vw, 1rem);
  padding-left: var(--verein-eyebrow-tracking);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.4vw, 0.78rem);
  font-weight: 700;
  letter-spacing: var(--verein-eyebrow-tracking);
  text-transform: uppercase;
  text-align: center;
  color: var(--gold-on-light);
}

.page-geschenk .geschenk-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2.1rem, 4.8vw, 3rem);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: 0.01em;
  text-align: center;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-hero .home-section-ornament {
  margin-top: clamp(1rem, 2.4vw, 1.35rem);
  margin-bottom: clamp(1.35rem, 3vw, 1.85rem);
}

.page-geschenk .geschenk-hero__body {
  margin: 0 auto;
  max-width: 40rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.15rem);
  line-height: 1.74;
  color: rgba(15, 31, 54, 0.9);
  text-align: center;
  text-wrap: pretty;
}

.page-geschenk .geschenk-hero__body p {
  margin: 0;
}

.page-geschenk .geschenk-hero__body p + p {
  margin-top: clamp(0.9rem, 2vw, 1.15rem);
}

.page-geschenk .geschenk-for-you {
  padding: clamp(2.75rem, 6vw, 4rem) var(--verein-section-x);
  background: linear-gradient(
    180deg,
    #f7f4ed 0%,
    #eef2f4 45%,
    #e8eef2 55%,
    #f7f4ed 100%
  );
  border-top: var(--verein-section-divider);
}

.page-geschenk .geschenk-for-you__inner {
  max-width: 52rem;
  margin: 0 auto;
}

.page-geschenk .geschenk-for-you__header {
  text-align: center;
}

.page-geschenk .geschenk-for-you__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.45rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-for-you__lead {
  margin-left: auto;
  margin-right: auto;
  max-width: 34rem;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.95vw, 1.12rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.82);
  text-wrap: pretty;
}

.page-geschenk .geschenk-for-you__grid {
  display: grid;
  gap: clamp(0.75rem, 1.6vw, 1rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-geschenk .geschenk-for-you__card {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.75rem, 1.6vw, 0.95rem);
  margin: 0;
  padding: clamp(1rem, 2.1vw, 1.2rem) clamp(1.05rem, 2.2vw, 1.25rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 55%, #152a45 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 0.85rem;
  box-shadow: 0 10px 28px rgba(10, 22, 40, 0.22);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.page-geschenk .article-prose ul.geschenk-for-you__grid {
  margin: 0;
  padding: 0;
}

.page-geschenk .article-prose ul.geschenk-for-you__grid > .geschenk-for-you__card {
  margin: 0;
  padding-left: clamp(1.05rem, 2.2vw, 1.25rem);
}

.page-geschenk .article-prose ul.geschenk-for-you__grid > .geschenk-for-you__card::before {
  content: none;
  display: none;
  background: none;
}

.page-geschenk .geschenk-for-you__mark {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  margin-top: 0.05rem;
  border-radius: 50%;
  background: rgba(255, 252, 247, 0.1);
  border: 1px solid rgba(232, 204, 122, 0.55);
  color: var(--gold-light);
  font-size: 0.72rem;
  line-height: 1;
}

.page-geschenk .geschenk-for-you__mark::before {
  content: '';
  width: 0.62rem;
  height: 0.92rem;
  border-radius: 0;
  background:
    linear-gradient(currentColor, currentColor) 50% 30% / 100% 1.7px no-repeat,
    linear-gradient(currentColor, currentColor) 50% 50% / 1.7px 100% no-repeat;
  box-shadow: none;
}

.page-geschenk .geschenk-for-you__text {
  display: block;
  padding-top: 0.35rem;
  font-family: var(--font-sans);
  font-size: clamp(0.94rem, 1.75vw, 1.02rem);
  line-height: 1.52;
  color: rgba(250, 246, 238, 0.94);
  text-wrap: pretty;
}

.page-geschenk .geschenk-for-you__card--wide {
  grid-column: 1 / -1;
  justify-self: center;
  width: min(100%, 28rem);
}

@media (max-width: 639px) {
  .page-geschenk .geschenk-for-you__inner {
    width: 100%;
  }

  .page-geschenk .geschenk-for-you__grid,
  .page-geschenk .article-prose ul.geschenk-for-you__grid {
    display: grid;
    width: 100%;
    max-width: min(22.5rem, calc(100% - 28px));
    margin-inline: auto;
    padding-inline: 0;
    justify-items: center;
    gap: clamp(0.75rem, 2.2vw, 0.95rem);
  }

  .page-geschenk .geschenk-for-you__card,
  .page-geschenk .article-prose ul.geschenk-for-you__grid > .geschenk-for-you__card {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
    margin-block: 0;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.7rem;
    padding: clamp(1.05rem, 3.2vw, 1.25rem) clamp(1rem, 3vw, 1.2rem);
    padding-left: clamp(1rem, 3vw, 1.2rem);
    padding-right: clamp(1rem, 3vw, 1.2rem);
  }

  .page-geschenk .geschenk-for-you__mark {
    margin-top: 0;
  }

  .page-geschenk .geschenk-for-you__text {
    padding-top: 0;
  }

  .page-geschenk .geschenk-for-you__card--wide {
    width: 100%;
    max-width: 100%;
    justify-self: center;
  }
}

@media (min-width: 640px) {
  .page-geschenk .geschenk-for-you__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-geschenk .geschenk-gift {
  padding: 0;
  background: var(--cream);
  border-top: var(--verein-section-divider);
  overflow: hidden;
}

.page-geschenk .geschenk-gift__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.14fr) minmax(0, 0.86fr);
  gap: 0;
  align-items: stretch;
  max-width: none;
  margin: 0;
}

.page-geschenk .geschenk-gift__scene {
  position: relative;
  min-height: 100%;
}

.page-geschenk .geschenk-gift__scene-figure {
  position: relative;
  margin: 0;
  height: 100%;
  min-height: clamp(22rem, 44vw, 34rem);
}

.page-geschenk .geschenk-gift__scene-img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  object-position: 56% 42%;
}

.page-geschenk .geschenk-gift__scene-gradient {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(10, 22, 40, 0.04) 0%, transparent 16%),
    linear-gradient(270deg, var(--cream) 0%, rgba(250, 246, 238, 0.72) 5%, rgba(250, 246, 238, 0.34) 16%, rgba(250, 246, 238, 0.1) 30%, transparent 48%),
    linear-gradient(180deg, rgba(10, 22, 40, 0.03) 0%, transparent 42%, rgba(10, 22, 40, 0.07) 100%);
}

.page-geschenk .geschenk-gift__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  padding: var(--verein-section-y) var(--verein-section-x);
  padding-left: clamp(1.35rem, 3.2vw, 2.35rem);
  background: var(--cream);
}

.page-geschenk .geschenk-gift__header {
  text-align: left;
  max-width: 26rem;
}

.page-geschenk .geschenk-gift__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-gift__body {
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
  max-width: 26rem;
}

.page-geschenk .geschenk-gift__body p {
  margin: 0;
}

.page-geschenk .geschenk-gift__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

@media (max-width: 767px) {
  .page-geschenk .geschenk-gift__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-geschenk .geschenk-gift__scene-figure {
    min-height: clamp(17rem, 58vw, 24rem);
  }

  .page-geschenk .geschenk-gift__scene-img {
    object-position: 52% 36%;
  }

  .page-geschenk .geschenk-gift__scene-gradient {
    background:
      linear-gradient(180deg, rgba(10, 22, 40, 0.03) 0%, transparent 26%),
      linear-gradient(0deg, var(--cream) 0%, rgba(250, 246, 238, 0.76) 12%, rgba(250, 246, 238, 0.22) 32%, transparent 56%);
  }

  .page-geschenk .geschenk-gift__content {
    text-align: center;
    padding-top: clamp(2rem, 5vw, 2.75rem);
  }

  .page-geschenk .geschenk-gift__header {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }

  .page-geschenk .geschenk-gift__header .home-section-ornament {
    margin-left: auto;
    margin-right: auto;
  }

  .page-geschenk .geschenk-gift__body {
    margin-left: auto;
    margin-right: auto;
  }
}

.page-geschenk .geschenk-next {
  padding: clamp(2.25rem, 5vw, 3.5rem) var(--verein-section-x);
  background: #fff;
  border-top: var(--verein-section-divider);
}

.page-geschenk .geschenk-next__inner {
  max-width: 40rem;
  margin: 0 auto;
}

.page-geschenk .geschenk-next__header {
  text-align: center;
}

.page-geschenk .geschenk-next__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.6vw, 2.35rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-next__body {
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.15rem);
  line-height: 1.74;
  color: rgba(15, 31, 54, 0.9);
  text-wrap: pretty;
}

.page-geschenk .geschenk-next__body p {
  margin: 0;
}

.page-geschenk .geschenk-next__body p + p {
  margin-top: clamp(0.9rem, 2vw, 1.15rem);
}

.page-geschenk .geschenk-order {
  padding: clamp(2rem, 4.5vw, 3.25rem) var(--verein-section-x) clamp(2.25rem, 5vw, 3.5rem);
  background: linear-gradient(180deg, #f7f9fc 0%, rgba(250, 246, 238, 0.98) 100%);
  border-top: var(--verein-section-divider);
}

.page-geschenk .geschenk-order__inner {
  max-width: 42rem;
  margin: 0 auto;
}

.page-geschenk .geschenk-order__header {
  text-align: center;
  margin-bottom: clamp(1rem, 2.4vw, 1.35rem);
}

.page-geschenk .geschenk-order__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.6vw, 2.25rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-order__header .home-section-ornament__line {
  background: linear-gradient(90deg, transparent, rgba(184, 152, 79, 0.55), transparent);
}

.page-geschenk .geschenk-order__header .home-section-ornament__heart {
  color: rgba(184, 152, 79, 0.82);
}

.page-geschenk .geschenk-order__header .home-section-ornament {
  margin: clamp(0.55rem, 1.4vw, 0.75rem) auto clamp(0.65rem, 1.6vw, 0.85rem);
}

.page-geschenk .geschenk-order__intro {
  margin: 0 auto;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.1rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.86);
  text-wrap: pretty;
}

.page-geschenk .geschenk-order__panel {
  padding: clamp(1.15rem, 2.4vw, 1.55rem);
  border-radius: var(--radius-lg);
  background: #fff;
  border: 1px solid rgba(19, 39, 68, 0.08);
  box-shadow: 0 12px 36px rgba(19, 39, 68, 0.06);
}

.page-geschenk .geschenk-order__form {
  max-width: none;
  margin: 0;
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__progress {
  margin: 0 0 clamp(1.1rem, 2.4vw, 1.45rem);
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.4vw, 0.8rem);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-align: center;
  color: rgba(15, 31, 54, 0.52);
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__current {
  font-size: inherit;
  color: rgba(15, 31, 54, 0.78);
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__step {
  margin-bottom: 0;
  border: none;
  padding: clamp(0.25rem, 0.8vw, 0.5rem) 0;
}

.page-geschenk .geschenk-order__form .sl-flatrate-legend {
  margin: 0 0 clamp(0.75rem, 1.8vw, 0.95rem);
  padding: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.1vw, 1.28rem);
  font-weight: 600;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-order__form .public-form label {
  font-size: clamp(0.98rem, 1.8vw, 1.04rem);
  line-height: 1.55;
}

.page-geschenk .geschenk-order__form .public-form input,
.page-geschenk .geschenk-order__form .public-form textarea,
.page-geschenk .geschenk-order__form .public-form select {
  min-height: 2.95rem;
  padding: 0.75rem 0.95rem;
  font-size: 1.02rem;
  line-height: 1.45;
  border: 1px solid rgba(19, 39, 68, 0.14);
  border-radius: 0.5rem;
  background: #fff;
}

.page-geschenk .geschenk-order__form .public-form textarea {
  min-height: 5.5rem;
}

.page-geschenk .geschenk-order__form .public-form input:focus,
.page-geschenk .geschenk-order__form .public-form textarea:focus,
.page-geschenk .geschenk-order__form .public-form select:focus {
  border-color: rgba(184, 152, 79, 0.55);
  outline: 2px solid rgba(201, 168, 76, 0.22);
  outline-offset: 1px;
}

.page-geschenk .geschenk-order__form .public-form__check {
  display: block !important;
  position: relative;
  padding: 0.55rem 0 0.55rem 1.75rem;
  line-height: 1.55;
}

.page-geschenk .geschenk-order__form .public-form__check input {
  position: absolute;
  left: 0;
  top: 0.7rem;
  min-height: 1.15rem;
  width: 1.15rem;
  height: 1.15rem;
  margin: 0;
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__step--final {
  padding-top: clamp(0.5rem, 1.5vw, 0.85rem);
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav {
  position: relative;
  z-index: 960;
  margin-top: clamp(1.15rem, 2.6vw, 1.55rem);
  padding-top: clamp(1rem, 2.2vw, 1.35rem);
  padding-right: calc(var(--float-btn-size, 3.625rem) + 1.75rem);
  border-top: 1px solid rgba(19, 39, 68, 0.08);
  justify-content: flex-end;
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav [hidden] {
  display: none !important;
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__next {
  margin-left: auto;
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav .btn-primary,
.page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav .btn-secondary {
  min-height: 2.85rem;
  padding: 0.72rem 1.25rem;
  font-size: 0.82rem;
}

.page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav .btn-secondary {
  color: var(--deep-navy);
  border-color: rgba(19, 39, 68, 0.16);
  background: #fff;
}

@media (min-width: 768px) {
  .page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav .btn-primary,
  .page-geschenk .geschenk-order__form .sl-geschenk-wizard__nav .btn-secondary {
    width: auto;
    min-width: 8.5rem;
  }
}

.page-geschenk .geschenk-trust {
  padding: clamp(2.25rem, 5vw, 3.5rem) var(--verein-section-x) clamp(2rem, 4.5vw, 3rem);
  background: linear-gradient(180deg, rgba(250, 246, 238, 0.72) 0%, var(--warm-white) 100%);
  border-top: var(--verein-section-divider);
}

.page-geschenk .geschenk-trust__inner {
  max-width: 40rem;
  margin: 0 auto;
  text-align: center;
}

.page-geschenk .geschenk-trust__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.4vw, 2.15rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-geschenk .geschenk-trust__text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.9vw, 1.12rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-geschenk .geschenk-trust__badge {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem 0.75rem;
  margin: clamp(1.15rem, 2.6vw, 1.55rem) 0 0;
  padding: clamp(0.75rem, 1.8vw, 1rem) clamp(1rem, 2.2vw, 1.35rem);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(184, 152, 79, 0.22);
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.35vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(15, 31, 54, 0.72);
}

.page-geschenk .geschenk-trust__badge-sep {
  opacity: 0.45;
  font-weight: 300;
}

.page-geschenk .article-shell > .form-flash {
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--verein-section-x);
  padding-right: var(--verein-section-x);
  box-sizing: border-box;
}

/* Hermine Gottlebt â€“ Ãœber mich */
.page-hermine #main-content > .article-shell {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  overflow-x: clip;
}

.page-hermine .hermine-hero,
.page-hermine .hermine-story,
.page-hermine .hermine-offerings,
.page-hermine .hermine-connect,
.page-hermine .hermine-contact {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-hermine .hermine-hero {
  padding: clamp(2.75rem, 6vw, 4.25rem) var(--verein-section-x) clamp(2.5rem, 5.5vw, 3.75rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.92) 100%);
  border-bottom: var(--verein-section-divider);
}

.page-hermine .hermine-hero__inner {
  max-width: 44rem;
  margin: 0 auto;
  text-align: center;
}

.page-hermine .hermine-hero__content {
  max-width: 44rem;
  margin: 0 auto;
}

.page-hermine .hermine-hero__eyebrow {
  margin: 0 0 clamp(0.7rem, 1.6vw, 0.95rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.76rem);
  font-weight: 700;
  letter-spacing: var(--verein-eyebrow-tracking);
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-hermine .hermine-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.6vw, 2.85rem);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
  text-wrap: pretty;
}

.page-hermine .hermine-hero__role {
  margin: clamp(0.65rem, 1.5vw, 0.85rem) 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.88rem, 1.65vw, 0.98rem);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(15, 31, 54, 0.62);
}

.page-hermine .hermine-hero__content .home-section-ornament {
  margin: clamp(0.85rem, 2vw, 1.1rem) auto 0;
}

.page-hermine .hermine-hero__lead {
  margin: clamp(1rem, 2.2vw, 1.35rem) auto 0;
  max-width: 38rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.95vw, 1.14rem);
  line-height: 1.74;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-hermine .hermine-story__layout {
  display: grid;
  gap: clamp(1.5rem, 3.2vw, 2.25rem);
  align-items: start;
}

.page-hermine .hermine-story__portrait {
  position: relative;
  margin: 0 auto;
  width: min(100%, 14.5rem);
  aspect-ratio: 1;
}

.page-hermine .hermine-story__portrait-ring {
  position: absolute;
  inset: -0.45rem;
  border-radius: 50%;
  border: 1px solid rgba(184, 152, 79, 0.28);
  background: radial-gradient(circle at 50% 42%, rgba(201, 168, 76, 0.12), transparent 62%);
  pointer-events: none;
}

.page-hermine .hermine-story__portrait-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  box-shadow: 0 14px 36px rgba(19, 39, 68, 0.08);
}

.page-hermine .hermine-story {
  padding: clamp(2.75rem, 6vw, 4.25rem) var(--verein-section-x);
  background: #fff;
  border-top: var(--verein-section-divider);
}

.page-hermine .hermine-story__inner,
.page-hermine .hermine-connect__inner,
.page-hermine .hermine-contact__inner {
  max-width: var(--verein-inner-medium);
  margin: 0 auto;
}

.page-hermine .hermine-story__header,
.page-hermine .hermine-connect__header,
.page-hermine .hermine-contact__header {
  text-align: center;
  margin-bottom: clamp(1.5rem, 3.2vw, 2rem);
}

.page-hermine .hermine-story__title,
.page-hermine .hermine-connect__title,
.page-hermine .hermine-contact__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.35rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--deep-navy);
}

.page-hermine .hermine-story__header .home-section-ornament,
.page-hermine .hermine-connect__header .home-section-ornament,
.page-hermine .hermine-contact__header .home-section-ornament {
  margin: clamp(0.75rem, 1.8vw, 1rem) auto 0;
}

.page-hermine .hermine-story__body {
  max-width: none;
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.9vw, 1.1rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-hermine .hermine-story__body p {
  margin: 0;
}

.page-hermine .hermine-story__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-hermine .hermine-story__opening {
  font-size: clamp(1.08rem, 2vw, 1.16rem);
  color: var(--deep-navy);
}

.page-hermine .hermine-offerings {
  position: relative;
  padding: clamp(4.25rem, 9vw, 6.75rem) var(--verein-section-x);
  background:
    radial-gradient(ellipse 90% 60% at 50% 0%, rgba(201, 168, 76, 0.14) 0%, transparent 58%),
    radial-gradient(ellipse 55% 45% at 12% 100%, rgba(19, 39, 68, 0.08) 0%, transparent 70%),
    linear-gradient(180deg, rgba(250, 246, 238, 0.98) 0%, var(--warm-white) 42%, rgba(255, 252, 245, 0.96) 100%);
  border-top: var(--verein-section-divider);
  border-bottom: 2px solid rgba(184, 152, 79, 0.28);
  overflow: hidden;
}

.page-hermine .hermine-offerings::before {
  content: 'H';
  position: absolute;
  top: clamp(1.5rem, 4vw, 2.5rem);
  right: clamp(1rem, 5vw, 4rem);
  font-family: var(--font-serif);
  font-size: clamp(6rem, 16vw, 11rem);
  font-weight: 600;
  line-height: 1;
  color: rgba(201, 168, 76, 0.07);
  pointer-events: none;
  user-select: none;
}

.page-hermine .hermine-offerings__inner {
  position: relative;
  z-index: 1;
  max-width: var(--verein-inner-wide);
  margin: 0 auto;
}

.page-hermine .hermine-offerings__header {
  text-align: center;
  margin-bottom: clamp(2.35rem, 5vw, 3.35rem);
}

.page-hermine .hermine-offerings__eyebrow {
  margin: 0 0 clamp(0.7rem, 1.6vw, 0.95rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.76rem);
  font-weight: 700;
  letter-spacing: var(--verein-eyebrow-tracking);
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-hermine .hermine-offerings__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2.15rem, 4.8vw, 3.05rem);
  font-weight: 600;
  line-height: 1.12;
  color: var(--deep-navy);
  text-wrap: pretty;
}

.page-hermine .hermine-offerings__header .home-section-ornament {
  margin: clamp(0.85rem, 2vw, 1.15rem) auto 0;
}

.page-hermine .hermine-offerings__lead {
  margin: clamp(1rem, 2.4vw, 1.35rem) auto 0;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2vw, 1.18rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.82);
  text-wrap: pretty;
}

.page-hermine .hermine-offerings__showcase {
  display: grid;
  gap: clamp(1.25rem, 2.8vw, 1.85rem);
  padding: clamp(0.35rem, 1vw, 0.5rem);
}

.page-hermine .hermine-offerings__card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(0.75rem, 1.6vw, 1rem);
  min-height: 100%;
  padding: clamp(1.85rem, 3.8vw, 2.55rem) clamp(1.65rem, 3.4vw, 2.25rem);
  border-radius: calc(var(--verein-card-radius) + 0.2rem);
  border: 1px solid rgba(184, 152, 79, 0.22);
  box-shadow:
    0 18px 46px rgba(19, 39, 68, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.page-hermine .hermine-offerings__card--books {
  background: linear-gradient(155deg, rgba(255, 252, 245, 0.99) 0%, rgba(250, 246, 238, 0.95) 58%, rgba(232, 213, 160, 0.18) 100%);
  border-color: rgba(184, 152, 79, 0.32);
}

.page-hermine .hermine-offerings__card--lebenslieder {
  background:
    radial-gradient(ellipse 120% 80% at 100% 0%, rgba(201, 168, 76, 0.16) 0%, transparent 55%),
    linear-gradient(155deg, #1e3558 0%, var(--deep-navy) 42%, #0f1f36 100%);
  border-color: rgba(201, 168, 76, 0.42);
  box-shadow:
    0 22px 54px rgba(10, 22, 40, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.page-hermine .hermine-offerings__card--lebenslieder .hermine-offerings__label {
  color: #e2c274;
}

.page-hermine .hermine-offerings__card--lebenslieder .hermine-offerings__tagline {
  color: var(--warm-white);
}

.page-hermine .hermine-offerings__card--lebenslieder .hermine-offerings__text {
  color: rgba(250, 246, 238, 0.88);
}

.page-hermine .hermine-offerings__card--lebenslieder .hermine-offerings__icon {
  background: rgba(201, 168, 76, 0.16);
  border-color: rgba(201, 168, 76, 0.45);
  color: #e2c274;
}

.page-hermine .hermine-offerings__card--lebenslieder .hermine-offerings__icon--music {
  width: 3.65rem;
  height: 3.65rem;
  background: rgba(201, 168, 76, 0.22);
  border-color: rgba(226, 194, 116, 0.55);
  color: #f0d48a;
  box-shadow: 0 0 0 4px rgba(201, 168, 76, 0.1);
}

.page-hermine .hermine-offerings__card--lebenslieder .hermine-offerings__icon--music svg {
  width: 1.95rem;
  height: 1.95rem;
}

.page-hermine .hermine-offerings__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: rgba(201, 168, 76, 0.14);
  border: 1px solid rgba(184, 152, 79, 0.28);
  color: #b8984f;
}

.page-hermine .hermine-offerings__icon svg {
  width: 1.55rem;
  height: 1.55rem;
}

.page-hermine .hermine-offerings__label {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.3vw, 0.74rem);
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #b8984f;
}

.page-hermine .hermine-offerings__tagline {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.45rem, 3vw, 1.9rem);
  font-weight: 600;
  font-style: italic;
  line-height: 1.28;
  color: var(--deep-navy);
  text-wrap: pretty;
}

.page-hermine .hermine-offerings__text {
  margin: 0;
  flex: 1 1 auto;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.9vw, 1.1rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.86);
  text-wrap: pretty;
}

.page-hermine .hermine-offerings__btn {
  margin-top: clamp(0.35rem, 1vw, 0.65rem);
  align-self: flex-start;
}

.page-hermine .hermine-connect {
  padding: clamp(2.75rem, 6vw, 4rem) var(--verein-section-x);
  background: #fff;
  border-top: var(--verein-section-divider);
}

.page-hermine .hermine-connect__body {
  max-width: 38rem;
  margin: 0 auto;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.9vw, 1.08rem);
  line-height: 1.76;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-hermine .hermine-connect__body p {
  margin: 0;
}

.page-hermine .hermine-connect__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.2rem);
}

.page-hermine .hermine-connect__cta {
  margin: clamp(1.5rem, 3.2vw, 1.85rem) 0 0;
  text-align: center;
}

.page-hermine .hermine-contact {
  padding: clamp(2.75rem, 6vw, 4rem) var(--verein-section-x) clamp(3rem, 6.5vw, 4.25rem);
  background: linear-gradient(180deg, rgba(250, 246, 238, 0.55) 0%, var(--warm-white) 100%);
  border-top: var(--verein-section-divider);
}

.page-hermine .hermine-contact__intro {
  margin: clamp(0.85rem, 2vw, 1.05rem) auto 0;
  max-width: 32rem;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.9vw, 1.08rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.82);
}

.page-hermine .hermine-contact__panel {
  max-width: 32rem;
  margin: clamp(1.35rem, 2.8vw, 1.75rem) auto 0;
  padding: clamp(1.25rem, 2.6vw, 1.55rem) clamp(1.15rem, 2.4vw, 1.45rem);
  border-radius: var(--radius-lg);
  background: linear-gradient(160deg, rgba(255, 252, 245, 0.98) 0%, rgba(250, 246, 238, 0.94) 100%);
  border: 1px solid rgba(201, 168, 76, 0.2);
  box-shadow: 0 10px 28px rgba(10, 22, 40, 0.04);
}

.page-hermine .hermine-contact__form {
  margin: 0;
}

.page-hermine .hermine-contact__form label {
  margin-bottom: 0.85rem;
}

.page-hermine .hermine-contact__form textarea {
  min-height: 7.5rem;
}

.page-hermine .hermine-contact__form .btn-primary {
  width: 100%;
  max-width: 16rem;
  margin-top: 0.35rem;
}

.page-hermine .hermine-contact .form-flash {
  max-width: 32rem;
  margin: 0 auto clamp(1rem, 2vw, 1.25rem);
}

@media (min-width: 768px) {
  .page-hermine .hermine-story__layout {
    grid-template-columns: minmax(0, 13.5rem) minmax(0, 1fr);
    gap: clamp(1.75rem, 3.6vw, 2.75rem);
    align-items: center;
    max-width: 46rem;
    margin: 0 auto;
  }

  .page-hermine .hermine-story__portrait {
    margin: 0;
    width: 100%;
  }

  .page-hermine .hermine-offerings__showcase {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    align-items: stretch;
    gap: clamp(1.35rem, 3vw, 2rem);
  }
}

@media (hover: hover) and (pointer: fine) {
  .page-hermine .hermine-offerings__card--books:hover {
    border-color: rgba(184, 152, 79, 0.42);
    box-shadow:
      var(--card-hover-shadow),
      inset 0 1px 0 rgba(255, 255, 255, 0.82);
  }

  .page-hermine .hermine-offerings__card--lebenslieder:hover {
    border-color: var(--card-hover-border-bright);
    box-shadow:
      var(--card-hover-shadow-deep),
      inset 0 1px 0 rgba(255, 255, 255, 0.1);
  }
}

/* Hermine Gottlebt â€“ BÃ¼cherregal */
.page-buecher #main-content {
  overflow-x: clip;
  padding-bottom: 0;
}

.page-buecher .buecher-hero,
.page-buecher .buecher-shelf-section,
.page-buecher .buecher-detail,
.page-buecher .buecher-contact-link,
.page-buecher .buecher-empty,
.page-buecher .buecher-order-flash {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-buecher .buecher-hero {
  padding: clamp(2.5rem, 5.5vw, 3.75rem) var(--verein-section-x) clamp(2rem, 4.5vw, 3rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.94) 100%);
  border-bottom: var(--verein-section-divider);
}

.page-buecher .buecher-hero__inner {
  max-width: 40rem;
  margin: 0 auto;
  text-align: center;
}

.page-buecher .buecher-hero__eyebrow {
  margin: 0 0 clamp(0.65rem, 1.5vw, 0.85rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.76rem);
  font-weight: 700;
  letter-spacing: var(--verein-eyebrow-tracking);
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-buecher .buecher-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.4vw, 2.75rem);
  font-weight: 600;
  line-height: 1.14;
  color: var(--deep-navy);
  text-wrap: pretty;
}

.page-buecher .buecher-hero .home-section-ornament {
  margin: clamp(0.85rem, 2vw, 1.1rem) auto 0;
}

.page-buecher .buecher-hero__lead {
  margin: clamp(1rem, 2.2vw, 1.35rem) auto 0;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 1.85vw, 1.12rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.88);
}

.page-buecher .buecher-hero__disclaimer {
  margin: clamp(1rem, 2vw, 1.25rem) auto 0;
  max-width: 36rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(15, 31, 54, 0.72);
  padding: 0.85rem 1rem;
  border-left: 2px solid var(--verein-gold-line);
  text-align: left;
}

.page-buecher .buecher-shelf-section {
  padding: clamp(2rem, 4.5vw, 3rem) 0 clamp(1.5rem, 3.5vw, 2.25rem);
  background: linear-gradient(180deg, rgba(250, 246, 238, 0.94) 0%, var(--warm-white) 55%, rgba(252, 248, 241, 0.98) 100%);
}

.page-buecher .buecher-shelf {
  position: relative;
  max-width: min(72rem, 100%);
  margin: 0 auto;
  padding: 0 clamp(0.5rem, 2vw, 1.25rem);
}

.page-buecher .buecher-shelf__controls {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
}

.page-buecher .buecher-shelf__nav {
  pointer-events: auto;
  position: absolute;
  top: 38%;
  transform: translateY(-50%);
  width: 2.65rem;
  height: 2.65rem;
  border: none;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--deep-navy);
  color: #d4b46a;
  box-shadow: 0 8px 22px rgba(10, 22, 40, 0.18);
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.page-buecher .buecher-shelf__nav:disabled {
  opacity: 0.35;
  cursor: default;
}

.page-buecher .buecher-shelf__nav--prev {
  left: clamp(0.15rem, 1.5vw, 0.5rem);
}

.page-buecher .buecher-shelf__nav--next {
  right: clamp(0.15rem, 1.5vw, 0.5rem);
}

.page-buecher .buecher-shelf__stage {
  position: relative;
  padding-bottom: 0.35rem;
}

.page-buecher .buecher-shelf__viewport {
  overflow: hidden;
  touch-action: pan-y;
  cursor: grab;
  padding: 0 clamp(0.25rem, 1.5vw, 0.75rem);
}

.page-buecher .buecher-shelf__viewport.is-dragging {
  cursor: grabbing;
}

.page-buecher .buecher-shelf__track {
  display: flex;
  align-items: flex-end;
  gap: clamp(0.85rem, 2.2vw, 1.35rem);
  margin: 0;
  padding: 0 0 1.35rem;
  list-style: none;
  will-change: transform;
}

.page-buecher .buecher-shelf__slide {
  flex: 0 0 clamp(11.5rem, 72vw, 14.5rem);
  display: flex;
  justify-content: center;
}

@media (min-width: 768px) {
  .page-buecher .buecher-shelf__slide {
    flex-basis: clamp(9.5rem, 28vw, 11.75rem);
  }
}

@media (min-width: 1024px) {
  .page-buecher .buecher-shelf__slide {
    flex: 0 0 clamp(9.5rem, 12vw, 13.5rem);
    max-width: 13.5rem;
  }
}

.page-buecher .buecher-shelf__book {
  appearance: none;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 100%;
  text-align: center;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), filter 0.25s ease;
  transform-origin: bottom center;
}

.page-buecher .buecher-shelf__book:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.85);
  outline-offset: 4px;
  border-radius: 2px;
}

.page-buecher .buecher-shelf__cover-wrap {
  display: block;
  position: relative;
  aspect-ratio: 2 / 3;
  filter: drop-shadow(0 10px 18px rgba(10, 22, 40, 0.14));
  transition: filter 0.3s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.page-buecher .buecher-shelf__cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 2px 5px 5px 2px;
}

.page-buecher .buecher-shelf__placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  width: 100%;
  height: 100%;
  padding: 0.65rem;
  box-sizing: border-box;
  text-align: center;
  border-radius: 2px 5px 5px 2px;
  background: linear-gradient(145deg, #1a2744, var(--midnight));
  color: rgba(201, 168, 76, 0.88);
  font-family: var(--font-serif);
}

.page-buecher .buecher-shelf__placeholder-numeral {
  font-size: clamp(1.75rem, 5vw, 2.4rem);
  font-weight: 700;
  line-height: 1;
}

.page-buecher .buecher-shelf__placeholder-title {
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 2vw, 0.72rem);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 248, 235, 0.82);
}

.page-buecher .buecher-shelf__slide:not(.is-active) .buecher-shelf__book {
  transform: scale(0.92);
  opacity: 0.82;
}

.page-buecher .buecher-shelf__slide.is-active .buecher-shelf__book {
  transform: scale(1);
  opacity: 1;
}

.page-buecher .buecher-shelf__slide.is-active .buecher-shelf__cover-wrap {
  filter: drop-shadow(0 14px 26px rgba(10, 22, 40, 0.2));
}

.page-buecher .buecher-shelf__board {
  position: relative;
  height: 1.15rem;
  margin: 0 clamp(1.5rem, 6vw, 3rem);
  pointer-events: none;
}

.page-buecher .buecher-shelf__board-surface {
  display: block;
  height: 0.55rem;
  border-radius: 2px;
  background: linear-gradient(180deg, #b8925a 0%, #8f6838 48%, #6b4c28 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 236, 200, 0.35),
    0 6px 16px rgba(42, 28, 12, 0.18);
}

.page-buecher .buecher-shelf__board-edge {
  display: block;
  height: 0.42rem;
  margin-top: -0.05rem;
  border-radius: 0 0 3px 3px;
  background: linear-gradient(180deg, #5c4020 0%, #3d2a16 100%);
  opacity: 0.92;
}

.page-buecher .buecher-detail {
  padding: clamp(2.25rem, 5vw, 3.5rem) var(--verein-section-x);
  background: var(--warm-white);
  border-top: var(--verein-section-divider);
}

.page-buecher .buecher-detail__inner {
  max-width: var(--verein-inner-wide);
  margin: 0 auto;
  display: grid;
  gap: clamp(1.5rem, 3.5vw, 2.5rem);
  align-items: start;
}

@media (min-width: 768px) {
  .page-buecher .buecher-detail__inner {
    grid-template-columns: minmax(0, 13.5rem) minmax(0, 1fr);
    gap: clamp(2rem, 4vw, 3rem);
  }
}

.page-buecher .buecher-detail__cover-frame {
  aspect-ratio: 2 / 3;
  max-width: 16rem;
  margin: 0 auto;
}

.page-buecher .buecher-detail__cover-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 3px 6px 6px 3px;
}

.page-buecher .buecher-detail__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 18rem;
  border-radius: 3px 6px 6px 3px;
  background: linear-gradient(145deg, #1a2744, var(--midnight));
  color: rgba(201, 168, 76, 0.88);
  font-family: var(--font-serif);
  font-size: 4rem;
  font-weight: 700;
}

.page-buecher .buecher-detail__series {
  margin: 0 0 0.45rem;
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #b8925a;
}

.page-buecher .buecher-detail__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.2vw, 2.25rem);
  font-weight: 600;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-buecher .buecher-detail__subtitle {
  margin: 0.45rem 0 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.8vw, 1.12rem);
  font-style: italic;
  color: rgba(15, 31, 54, 0.72);
}

.page-buecher .buecher-detail__accent {
  width: 3.25rem;
  height: 2px;
  margin: clamp(0.85rem, 1.8vw, 1.1rem) 0 clamp(1rem, 2vw, 1.25rem);
  background: linear-gradient(90deg, rgba(184, 152, 79, 0.15), rgba(184, 152, 79, 0.85), rgba(184, 152, 79, 0.15));
}

.page-buecher .buecher-detail__desc {
  max-width: 38rem;
}

.page-buecher .buecher-detail__desc p {
  margin: 0;
  font-size: clamp(0.98rem, 1.65vw, 1.05rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.86);
}

.page-buecher .buecher-detail__desc p + p {
  margin-top: 0.85rem;
}

.page-buecher .buecher-detail__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
}

.page-buecher .buecher-detail__cta {
  text-transform: uppercase;
  letter-spacing: 0.07em;
  font-size: 0.82rem;
}

.page-buecher .buecher-detail__cta.is-hidden,
.page-buecher .buecher-detail__cta[hidden] {
  display: none !important;
}

.page-buecher .buecher-teasers {
  padding: clamp(2rem, 4.5vw, 3rem) var(--verein-section-x);
  background: rgba(250, 246, 238, 0.65);
  border-top: var(--verein-section-divider);
}

.page-buecher .buecher-teasers__inner {
  max-width: var(--verein-inner-wide);
  margin: 0 auto;
  display: grid;
  gap: clamp(1rem, 2.5vw, 1.35rem);
}

.page-buecher .buecher-teasers__inner--stack {
  max-width: 40rem;
  grid-template-columns: 1fr;
}

.page-buecher .buecher-teaser {
  padding: clamp(1.15rem, 2.5vw, 1.45rem);
  border-radius: var(--radius);
  background: rgba(255, 252, 245, 0.92);
  border: 1px solid rgba(201, 168, 76, 0.18);
}

.page-buecher .buecher-teaser__title {
  margin: 0 0 0.45rem;
  font-family: var(--font-serif);
  font-size: clamp(1.15rem, 2vw, 1.28rem);
  color: var(--deep-navy);
}

.page-buecher .buecher-teaser__text {
  margin: 0 0 0.85rem;
  font-size: 0.94rem;
  line-height: 1.6;
  color: rgba(15, 31, 54, 0.78);
}

.page-buecher .buecher-teaser__btn {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.78rem;
}

.page-buecher .buecher-teaser__placeholder {
  margin: 0;
  font-size: 0.88rem;
}

.page-buecher .buecher-contact-link {
  padding: 0 var(--verein-section-x) clamp(1rem, 2.2vw, 1.35rem);
  background: rgba(250, 246, 238, 0.65);
  text-align: center;
}

.page-buecher .verse-banner.verse-banner--encouragement-end {
  margin-top: 0;
}

.page-buecher .buecher-contact-link__text {
  margin: 0;
  font-size: 0.92rem;
  color: rgba(15, 31, 54, 0.72);
}

.page-buecher .buecher-contact-link__text a {
  color: var(--deep-navy);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.page-buecher .buecher-order-flash {
  padding: 0 var(--verein-section-x);
  max-width: 40rem;
  margin: 0 auto;
  scroll-margin-top: calc(var(--nav-h, 4.5rem) + 1rem);
}

.page-buecher .buecher-order-flash .form-flash {
  margin: 0 0 clamp(1.25rem, 2.5vw, 1.75rem);
}

.page-buecher .buecher-order {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1rem, 3vw, 1.75rem);
}

.page-buecher .buecher-order[hidden] {
  display: none !important;
}

.page-buecher .buecher-order.is-open {
  display: flex;
}

.page-buecher .buecher-order__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 22, 40, 0.52);
  backdrop-filter: blur(3px);
}

.page-buecher .buecher-order__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 42rem);
  max-height: min(92vh, 52rem);
  overflow: auto;
  padding: clamp(1.35rem, 3vw, 1.85rem);
  border-radius: calc(var(--radius-lg) + 0.1rem);
  background: linear-gradient(160deg, rgba(255, 252, 245, 0.99) 0%, rgba(250, 246, 238, 0.97) 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  box-shadow: 0 24px 60px rgba(10, 22, 40, 0.22);
}

.page-buecher .buecher-order__close {
  position: absolute;
  top: 0.65rem;
  right: 0.65rem;
  width: 2.25rem;
  height: 2.25rem;
  border: none;
  border-radius: 50%;
  background: rgba(19, 39, 68, 0.06);
  color: var(--deep-navy);
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
}

.page-buecher .buecher-order__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.45rem, 3vw, 1.85rem);
  color: var(--deep-navy);
}

.page-buecher .buecher-order__intro {
  margin: 0.45rem 0 0;
  font-size: 0.94rem;
  line-height: 1.6;
  color: rgba(15, 31, 54, 0.78);
}

.page-buecher .buecher-order__section--type {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.page-buecher .buecher-order__type-options {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: 1fr 1fr;
}

.page-buecher .buecher-order__type-option {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  margin: 0;
  padding: 0.75rem 0.85rem;
  border-radius: var(--radius);
  border: 1px solid rgba(201, 168, 76, 0.28);
  background: rgba(255, 252, 245, 0.72);
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.page-buecher .buecher-order__type-option:has(input:checked) {
  border-color: rgba(201, 168, 76, 0.65);
  box-shadow: 0 0 0 1px rgba(201, 168, 76, 0.22);
}

.page-buecher .buecher-order__type-option input {
  margin: 0 0 0.15rem;
}

.page-buecher .buecher-order__type-label {
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--deep-navy);
}

.page-buecher .buecher-order__type-hint {
  font-size: 0.78rem;
  line-height: 1.35;
  color: rgba(15, 31, 54, 0.65);
}

.page-buecher .buecher-order__uid-wrap {
  margin-top: 0.85rem;
}

.page-buecher .buecher-order__uid-wrap[hidden] {
  display: none !important;
}

.page-buecher .buecher-order__uid-label {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 0.88rem;
  font-weight: 600;
  color: rgba(15, 31, 54, 0.88);
}

.page-buecher .buecher-order__uid-label input {
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.page-buecher .buecher-order__sum-note {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.82rem;
  font-weight: 500;
  color: rgba(15, 31, 54, 0.62);
}

.page-buecher .buecher-order__sum-note[hidden] {
  display: none !important;
}

@media (max-width: 560px) {
  .page-buecher .buecher-order__type-options {
    grid-template-columns: 1fr;
  }
}

.page-buecher .buecher-order__section {
  margin-top: clamp(1.15rem, 2.5vw, 1.45rem);
  padding-top: clamp(1rem, 2vw, 1.25rem);
  border-top: 1px solid rgba(184, 152, 79, 0.2);
}

.page-buecher .buecher-order__section-title {
  margin: 0 0 0.75rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #b8925a;
}

.page-buecher .buecher-order__line {
  padding: 0.75rem 0;
  border-bottom: 1px solid rgba(19, 39, 68, 0.06);
}

.page-buecher .buecher-order__line:last-child {
  border-bottom: none;
}

.page-buecher .buecher-order__line-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.45rem;
}

.page-buecher .buecher-order__line-title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: 1.02rem;
  color: var(--deep-navy);
}

.page-buecher .buecher-order__line-price {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--deep-navy);
  white-space: nowrap;
}

.page-buecher .buecher-order__line-price--muted {
  font-weight: 500;
  color: rgba(15, 31, 54, 0.55);
}

.page-buecher .buecher-order__line-price-hint {
  font-size: 0.82rem;
  font-weight: 500;
  font-style: italic;
}

.page-buecher .buecher-order__line-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 0.85rem;
  align-items: flex-end;
}

.page-buecher .buecher-order__qty-label,
.page-buecher .buecher-order__format-label {
  margin: 0;
  font-size: 0.88rem;
}

.page-buecher .buecher-order__qty {
  width: 4.5rem;
}

.page-buecher .buecher-order__format-static {
  margin: 0;
  font-size: 0.88rem;
  color: rgba(15, 31, 54, 0.72);
}

.page-buecher .buecher-order__format-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: rgba(15, 31, 54, 0.82);
  background: rgba(201, 168, 76, 0.12);
  border: 1px solid rgba(201, 168, 76, 0.28);
}

.page-buecher .buecher-order__isbn {
  margin: 0.2rem 0 0;
  font-size: 0.78rem;
  letter-spacing: 0.02em;
  color: rgba(15, 31, 54, 0.55);
}

.page-buecher .buecher-order__sum {
  margin: 0.85rem 0 0;
  font-size: 0.98rem;
  color: var(--deep-navy);
}

.page-buecher .buecher-order__grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr 1fr;
}

.page-buecher .buecher-order__full {
  grid-column: 1 / -1;
}

.page-buecher .buecher-order__form label {
  margin-bottom: 0;
}

.page-buecher .buecher-order__privacy {
  margin-top: 1rem;
  max-width: 100%;
}

.page-buecher .buecher-order__submit {
  margin-top: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  font-size: 0.82rem;
}

.page-buecher .buecher-detail__cta--order {
  text-transform: uppercase;
  letter-spacing: 0.07em;
  font-size: 0.82rem;
}

@media (max-width: 560px) {
  .page-buecher .buecher-order__grid {
    grid-template-columns: 1fr;
  }
}

body.buecher-order-open {
  overflow: hidden;
}

.page-buecher .buecher-empty {
  padding: clamp(2rem, 4vw, 3rem) var(--verein-section-x);
  text-align: center;
}

@media (hover: hover) and (pointer: fine) {
  .page-buecher .buecher-shelf__nav:not(:disabled):hover {
    transform: translateY(-50%) scale(1.04);
    box-shadow: 0 10px 26px rgba(10, 22, 40, 0.22);
  }

  .page-buecher .buecher-shelf__slide:not(.is-active) .buecher-shelf__book:hover {
    transform: scale(0.96);
    opacity: 0.92;
  }
}

.sl-flatrate-membership {
  margin: 2rem 0 1.5rem;
  padding: 1.75rem 1.5rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, var(--cream) 0%, rgba(250, 246, 238, 0.6) 100%);
  border: 1px solid rgba(201, 168, 76, 0.25);
}

.sl-flatrate-membership__body {
  max-width: 42rem;
}

.sl-flatrate-wizard__progress {
  font-size: 0.9rem;
  color: var(--text-meta);
  margin-bottom: 1rem;
  font-weight: 600;
}

.sl-flatrate-wizard__current {
  color: var(--gold);
  font-size: 1.15rem;
}

.sl-flatrate-wizard {
  position: relative;
}

/* Nicht display:none: Chromium/WebKit sendet Fieldset-Felder sonst nicht im POST. */
.sl-flatrate-wizard__step {
  margin-bottom: 1.5rem;
}

.sl-flatrate-wizard__step:not(.is-active) {
  position: absolute;
  left: 0;
  top: 0;
  width: 1px !important;
  height: 1px !important;
  max-width: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  visibility: hidden;
  pointer-events: none !important;
}

.sl-flatrate-wizard__step.is-active {
  display: block;
  position: relative;
  visibility: visible;
}

html:not(.gottlebt-js) .sl-flatrate-wizard__step {
  display: block !important;
  position: static !important;
  visibility: visible !important;
  height: auto !important;
  width: auto !important;
  overflow: visible !important;
  clip: auto !important;
  margin-bottom: 1.5rem !important;
  pointer-events: auto !important;
}

html:not(.gottlebt-js) .sl-flatrate-wizard__progress,
html:not(.gottlebt-js) .sl-flatrate-wizard__next,
html:not(.gottlebt-js) .sl-flatrate-wizard__prev {
  display: none !important;
}

html:not(.gottlebt-js) .page-flatrate .flatrate-apply__form .sl-flatrate-wizard__nav .sl-flatrate-wizard__submit {
  display: inline-flex !important;
}

.sl-flatrate-wizard__nav {
  position: relative;
  z-index: 960;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(19, 39, 68, 0.08);
}

.sl-flatrate-wizard__nav .sl-flatrate-wizard__submit {
  margin-top: 0;
  margin-left: auto;
  width: auto;
  max-width: none;
}

/* Spenden-Wizard: gleiche Logik/Optik wie Flatrate */
.sl-spenden-wizard__progress {
  font-size: 0.9rem;
  color: var(--text-meta);
  margin-bottom: 1rem;
  font-weight: 600;
}

.sl-spenden-wizard__current {
  color: var(--gold);
  font-size: 1.15rem;
}

.sl-spenden-wizard {
  position: relative;
}

/* Nicht display:none: Chromium/WebKit sendet Fieldset-Felder sonst nicht im POST. */
.sl-spenden-wizard__step {
  margin-bottom: 1.5rem;
}

.sl-spenden-wizard__step:not(.is-active) {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  visibility: hidden;
  pointer-events: none;
}

.sl-spenden-wizard__step.is-active {
  display: block;
  position: relative;
  visibility: visible;
}

html:not(.gottlebt-js) .sl-spenden-wizard__step {
  display: block !important;
  position: static !important;
  visibility: visible !important;
  height: auto !important;
  width: auto !important;
  overflow: visible !important;
  clip: auto !important;
  margin-bottom: 1.5rem !important;
  pointer-events: auto !important;
}

html:not(.gottlebt-js) .sl-spenden-wizard__nav,
html:not(.gottlebt-js) .sl-spenden-wizard__progress {
  display: none !important;
}

.sl-spenden-wizard__nav {
  position: relative;
  z-index: 960;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(19, 39, 68, 0.08);
}

.sl-spenden-wizard__nav [hidden],
.sl-geschenk-wizard__nav [hidden],
.sl-flatrate-wizard__nav [hidden] {
  display: none !important;
}

.sl-spenden-wizard__next,
.sl-geschenk-wizard__next,
.sl-flatrate-wizard__next {
  margin-left: auto;
  pointer-events: auto;
  position: relative;
  z-index: 1;
}

.sl-spenden-flow-note {
  margin: 0.75rem 0 0.5rem;
  color: var(--text-body);
  max-width: 44rem;
}

.sl-spenden-why__list {
  margin: 0.25rem 0 1rem;
  padding: 0 0 0 1.15rem;
  list-style: disc;
  color: var(--text-body);
}

.sl-spenden-why__note {
  margin: 0;
  color: var(--text-body);
}

/* -------------------------------------------------------------------------- */
/* Vereinsbereich â€“ gemeinsames Designsystem                                  */
/* page-mission | page-bibelprojekt | page-spenden                            */
/* -------------------------------------------------------------------------- */

.page-mission #main-content,
.page-spenden #main-content,
.page-flatrate #main-content,
.page-geschenk #main-content {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  overflow-x: clip;
}

.page-mission #main-content > .article-shell,
.page-spenden #main-content > .article-shell,
.page-hermine #main-content > .article-shell {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

.page-spenden #main-content > .home-mitmachen:not(.home-mitmachen--compact) {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-flatrate #main-content > .home-mitmachen:not(.home-mitmachen--compact) {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-geschenk #main-content > .home-mitmachen:not(.home-mitmachen--compact) {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-mission #main-content > .home-mitmachen,
.page-spenden #main-content > .home-mitmachen,
.page-flatrate #main-content > .home-mitmachen,
.page-geschenk #main-content > .home-mitmachen,
.page-bibelprojekt-main > .home-mitmachen {
  border-top: var(--verein-section-divider);
}

.page-spenden .home-mitmachen--compact,
.page-flatrate .home-mitmachen--compact,
.page-geschenk .home-mitmachen--compact {
  padding: clamp(1.65rem, 3.5vw, 2.25rem) 0 clamp(2rem, 4vw, 2.65rem);
  background: rgba(250, 246, 238, 0.55);
}

.home-mitmachen--compact .home-mitmachen__inner--compact {
  max-width: 36rem;
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
  text-align: center;
}

.home-mitmachen__compact-eyebrow {
  margin: 0 0 clamp(0.75rem, 1.6vw, 0.95rem);
  font-family: var(--font-sans);
  font-size: clamp(0.58rem, 1.1vw, 0.64rem);
  font-weight: 700;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-mitmachen__compact-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem 0.75rem;
}

.home-mitmachen__compact-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: 0.42rem 0.95rem;
  border: 1px solid rgba(201, 168, 76, 0.36);
  border-radius: 999px;
  background: rgba(255, 252, 245, 0.94);
  box-shadow: 0 3px 12px rgba(15, 31, 54, 0.04);
  font-family: var(--font-sans);
  font-size: clamp(0.74rem, 1.4vw, 0.82rem);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.02em;
  color: rgba(15, 31, 54, 0.8);
  text-decoration: none;
  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

@media (hover: hover) and (pointer: fine) {
  .home-mitmachen__compact-link:hover {
    border-color: rgba(201, 168, 76, 0.58);
    background: #fff;
    color: #0f1f36;
    box-shadow: 0 5px 16px rgba(201, 168, 76, 0.12);
    transform: translateY(-1px);
  }
}

.home-mitmachen__compact-link:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.72);
  outline-offset: 2px;
}

.page-mission .home-section-ornament__line,
.page-bibelprojekt .home-section-ornament__line,
.page-spenden .home-section-ornament__line {
  background: var(--verein-gold-line);
}

/* Vereinsbereich â€“ einheitlicher Heading-Stack (Spacing Phase A/B) */
:is(.page-mission, .page-spenden, .page-bibelprojekt, .page-flatrate, .page-geschenk)
  :is(
    .verein-why-block__head,
    .verein-mission-block__header,
    .verein-action-block__header,
    .verein-support-block__content,
    .verein-trust-block__content,
    .spenden-why__header,
    .spenden-payment__header,
    .spenden-hearts__header,
    .bp-why__header,
    .bp-geschenkbibel-einsatz__header,
    .bp-steps__header,
    .flatrate-word__header,
    .flatrate-mission__header,
    .flatrate-give__header,
    .flatrate-fee__header,
    .geschenk-for-you__header,
    .geschenk-gift__header,
    .geschenk-next__header,
    .geschenk-trust__header
  )
  :is(h1, h2, h3, .sl-section-heading, [class$="__title"]):has(+ .home-section-ornament) {
  margin-bottom: 0;
}

:is(.page-mission, .page-spenden, .page-bibelprojekt, .page-flatrate, .page-geschenk)
  :is(
    .verein-mission-block__header,
    .verein-action-block__header,
    .spenden-why__header,
    .spenden-payment__header,
    .spenden-hearts__header,
    .bp-why__header,
    .bp-geschenkbibel-einsatz__header,
    .bp-steps__header,
    .flatrate-word__header,
    .flatrate-mission__header,
    .flatrate-give__header,
    .flatrate-fee__header,
    .geschenk-for-you__header,
    .geschenk-gift__header,
    .geschenk-next__header,
    .geschenk-trust__header
  )
  .home-section-ornament {
  margin-top: var(--space-3);
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

:is(.page-mission) .verein-why-block__head .home-section-ornament {
  margin-top: var(--space-3);
  margin-bottom: var(--space-4);
  margin-left: auto;
  margin-right: auto;
}

/* Support/Trust: Ornament linksbündig zum Fließtext (Desktop); mobil zentriert via Media-Query */
:is(.page-mission)
  :is(.verein-support-block__content, .verein-trust-block__content)
  .home-section-ornament {
  margin-top: var(--space-3);
  margin-bottom: var(--space-4);
  margin-left: 0;
  margin-right: auto;
}

.page-geschenk .geschenk-gift__header .home-section-ornament {
  margin-top: var(--space-3);
  margin-bottom: 0;
  margin-left: 0;
  margin-right: auto;
}

:is(.page-mission, .page-spenden, .page-bibelprojekt, .page-flatrate, .page-geschenk)
  :is([class$="__header"], [class$="__head"]):has(+ :is([class$="__lead"], [class$="__intro"], [class$="__body"])) {
  margin-bottom: 0;
}

:is(.page-mission, .page-spenden, .page-bibelprojekt, .page-flatrate, .page-geschenk)
  :is([class$="__header"], [class$="__head"]) + :is([class$="__lead"], [class$="__intro"], [class$="__body"]) {
  margin-top: var(--space-4);
}

:is(.page-mission, .page-spenden, .page-bibelprojekt, .page-flatrate, .page-geschenk)
  :is([class$="__header"], [class$="__head"]) :is([class$="__lead"], [class$="__intro"]) {
  margin-top: var(--space-3);
}

:is(.page-mission, .page-spenden, .page-bibelprojekt, .page-flatrate, .page-geschenk)
  :is(
    .verein-mission-block__header,
    .spenden-why__header,
    .spenden-payment__header,
    .spenden-hearts__header,
    .bp-why__header,
    .bp-geschenkbibel-einsatz__header,
    .bp-steps__header,
    .geschenk-for-you__header,
    .geschenk-trust__header
  ) {
  margin-bottom: var(--space-6);
}

.page-mission .verein-why-block__head {
  margin-bottom: 0;
}

.page-mission .verein-mission-block__header {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--space-6);
}

.page-mission .verein-action-block__header {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
}

.page-mission .verein-action-block__intro {
  margin-top: var(--space-4);
  margin-bottom: var(--space-6);
}

.page-mission .verein-verse figcaption,
.page-bibelprojekt .verein-verse figcaption {
  color: var(--gold);
}

.page-mission .verein-action-block__card,
.page-bibelprojekt .bp-geschenkbibel-einsatz__card,
.page-bibelprojekt .bp-steps__card,
.page-spenden .spenden-payment__item,
.page-spenden .spenden-form__wizard .sl-spenden-wizard__step {
  border-radius: var(--verein-card-radius);
  box-shadow: var(--verein-card-shadow);
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__card,
.page-bibelprojekt .bp-steps__card,
.page-spenden .spenden-payment__item,
.page-spenden .spenden-form__wizard .sl-spenden-wizard__step {
  border: var(--verein-card-border-light);
  background: var(--verein-card-bg);
}

.page-mission .verein-action-block__card {
  border-radius: var(--verein-card-radius);
}

@media (hover: hover) and (pointer: fine) {
  .page-mission .verein-action-block__card:hover {
    box-shadow: var(--card-hover-shadow);
  }
}

.page-bibelprojekt .bp-hero__eyebrow,
.page-bibelprojekt .bp-impact__eyebrow {
  letter-spacing: var(--verein-eyebrow-tracking);
}

/* Bibel spenden â€“ Hero & Warum (nur diese Bereiche) */
.page-spenden .spenden-hero,
.page-spenden .spenden-why {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-spenden .spenden-hero {
  padding: clamp(3.5rem, 8vw, 6rem) var(--verein-section-x) clamp(3rem, 7vw, 5rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.72) 100%);
  border-bottom: var(--verein-section-divider);
}

.page-spenden .spenden-hero__inner {
  max-width: 40rem;
  margin: 0 auto;
  text-align: center;
}

.page-spenden .spenden-hero__eyebrow {
  margin: 0 0 clamp(0.85rem, 2vw, 1.1rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: var(--verein-eyebrow-tracking);
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-spenden .spenden-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.5vw, 2.85rem);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.page-spenden .spenden-hero .home-section-ornament {
  margin-top: clamp(1rem, 2.4vw, 1.35rem);
  margin-bottom: clamp(1.35rem, 3vw, 1.85rem);
}

.page-spenden .spenden-hero__lead {
  margin: 0 auto;
  max-width: 38rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.1vw, 1.2rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-spenden .spenden-why {
  padding: var(--verein-section-y) var(--verein-section-x) clamp(2.75rem, 6vw, 4rem);
  background: #fff;
  border-bottom: none;
}

.page-spenden .spenden-why__inner {
  max-width: 56rem;
  margin: 0 auto;
}

.page-spenden .spenden-why__header {
  text-align: center;
}

.page-spenden .spenden-why__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.8vw, 2.35rem);
  font-weight: 600;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-spenden .spenden-why__grid {
  display: grid;
  gap: var(--grid-gap);
}

.page-spenden .spenden-why__item {
  padding: clamp(1.35rem, 3vw, 1.75rem);
  background: var(--verein-card-bg);
  border: var(--verein-card-border-light);
  border-radius: var(--verein-card-radius);
  box-shadow: var(--verein-card-shadow);
  text-align: center;
}

.page-spenden .spenden-why__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.15rem;
  height: 3.15rem;
  margin: 0 auto clamp(0.85rem, 2vw, 1.05rem);
  border-radius: 50%;
  background: rgba(201, 168, 76, 0.1);
  color: #b8984f;
}

.page-spenden .spenden-why__icon svg {
  display: block;
  width: 1.65rem;
  height: 1.65rem;
}

.page-spenden .spenden-why__item-title {
  margin: 0 0 clamp(0.45rem, 1.1vw, 0.65rem);
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2vw, 1.22rem);
  font-weight: 600;
  line-height: 1.28;
  color: var(--deep-navy);
}

.page-spenden .spenden-why__item-text {
  margin: 0 auto;
  max-width: 20rem;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.7vw, 0.98rem);
  line-height: 1.72;
  color: rgba(15, 31, 54, 0.8);
}

@media (min-width: 768px) {
  .page-spenden .spenden-why__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1.15rem, 2.4vw, 1.45rem);
  }
}

@media (min-width: 1024px) {
  .page-spenden .spenden-why__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .page-spenden .spenden-why__item-text {
    max-width: none;
  }
}

.page-spenden .spenden-counter {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding: clamp(3.25rem, 7vw, 5rem) var(--verein-section-x);
  background: linear-gradient(180deg, var(--deep-navy) 0%, var(--midnight) 100%);
  border: none;
  box-shadow: none;
}

.page-spenden .spenden-counter__inner {
  max-width: 38rem;
  margin: 0 auto;
  text-align: center;
}

.page-spenden .spenden-counter__headline {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 0.35rem 0.55rem;
  margin: 0 0 clamp(1rem, 2.4vw, 1.35rem);
  font-family: var(--font-serif);
  font-size: clamp(1.35rem, 2.8vw, 1.65rem);
  font-weight: 600;
  line-height: 1.35;
  color: rgba(250, 246, 238, 0.96);
}

.page-spenden .spenden-counter__headline-text {
  color: rgba(250, 246, 238, 0.92);
}

.page-spenden .spenden-counter__impact {
  display: grid;
  gap: clamp(0.45rem, 1.1vw, 0.65rem);
  margin: 0 auto clamp(1.5rem, 3.2vw, 1.9rem);
  max-width: 34rem;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.7vw, 1rem);
  line-height: 1.72;
  color: rgba(250, 246, 238, 0.82);
  text-wrap: pretty;
}

.page-spenden .spenden-counter__impact-line {
  display: block;
}

.page-spenden .spenden-counter__impact-line--second {
  color: rgba(250, 246, 238, 0.72);
}

.page-spenden .spenden-counter__value {
  color: var(--gold-light);
  font-weight: 700;
}

.page-spenden .spenden-counter__headline .spenden-counter__value {
  font-size: clamp(1.65rem, 3.4vw, 2rem);
  line-height: 1.1;
}

.page-spenden .spenden-counter__bar {
  height: 0.38rem;
  max-width: 28rem;
  margin: 0 auto clamp(0.85rem, 2vw, 1.05rem);
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.16);
  overflow: hidden;
}

.page-spenden .spenden-counter__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c9a050 0%, #dfc07a 48%, #b8984f 100%);
}

.page-spenden .spenden-counter__goal {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.78rem, 1.45vw, 0.86rem);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(250, 246, 238, 0.58);
}

.page-spenden .spenden-staffel {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding: clamp(3rem, 6.5vw, 4.5rem) var(--verein-section-x) clamp(2.5rem, 5.5vw, 3.5rem);
  background: #fff;
}

.page-spenden .spenden-staffel__inner {
  max-width: 72rem;
  margin: 0 auto;
}

.page-spenden .spenden-staffel .sl-section-heading {
  margin-top: 0;
  margin-bottom: 0.55rem;
  text-align: center;
}

.page-spenden .spenden-staffel .sl-tier-intro {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(1.75rem, 3.8vw, 2.35rem);
  text-align: center;
}

.page-spenden .spenden-staffel .sl-tier-grid {
  margin-bottom: 0;
  align-items: stretch;
}

.page-spenden .spenden-staffel .sl-tier-card {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 100%;
  height: 100%;
}

.page-spenden .spenden-staffel .sl-tier-card__desc {
  margin-top: auto;
  padding-top: 0.75rem;
}

.page-spenden .spenden-staffel .sl-spenden-staffel-thanks {
  margin-top: clamp(1.75rem, 3.8vw, 2.35rem);
  margin-bottom: 0;
  text-align: center;
}

.page-spenden .spenden-payment,
.page-spenden .spenden-form {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-spenden .spenden-payment {
  padding: clamp(3rem, 6.5vw, 4.5rem) var(--verein-section-x);
  background: var(--warm-white);
  border-top: var(--verein-section-divider);
}

.page-spenden .spenden-payment__inner {
  max-width: 56rem;
  margin: 0 auto;
}

.page-spenden .spenden-payment__header {
  text-align: center;
}

.page-spenden .spenden-payment__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.8vw, 2.35rem);
  font-weight: 600;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-spenden .spenden-payment__grid {
  display: grid;
  gap: var(--grid-gap);
}

.page-spenden .spenden-payment__item {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding: clamp(1.35rem, 3vw, 1.75rem);
}

.page-spenden .spenden-payment__item-title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.2vw, 1.28rem);
  font-weight: 600;
  line-height: 1.28;
  color: var(--deep-navy);
}

.page-spenden .spenden-payment__item-text {
  margin: 0;
  flex: 0 1 auto;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.7vw, 1rem);
  line-height: 1.68;
  color: rgba(15, 31, 54, 0.78);
}

.page-spenden .spenden-payment__btn {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  align-self: center;
  justify-content: center;
  margin-top: 0.35rem;
}

.page-spenden .spenden-payment__btn.btn-primary {
  background: linear-gradient(180deg, #e2c274 0%, #d4af37 52%, #c9a050 100%);
  color: var(--midnight);
  border: 2px solid transparent;
}

.page-spenden .spenden-payment__btn.btn-secondary {
  background: #fff;
  color: var(--deep-navy);
  border: 2px solid rgba(19, 39, 68, 0.16);
}

.page-spenden .spenden-payment__note {
  margin: 0;
  font-size: 0.88rem;
  color: var(--text-meta);
}

.page-spenden .spenden-payment__bank {
  margin: 0.15rem 0 0;
  display: grid;
  gap: 0.85rem;
}

.page-spenden .spenden-payment__bank-row {
  margin: 0;
}

.page-spenden .spenden-payment__bank dt {
  margin: 0 0 0.2rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(15, 31, 54, 0.75);
}

.page-spenden .spenden-payment__bank dd {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.95rem, 1.75vw, 1.05rem);
  line-height: 1.45;
  color: var(--deep-navy);
}

.page-spenden .spenden-payment__iban {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: clamp(0.92rem, 1.65vw, 1.02rem);
  letter-spacing: 0.04em;
  word-break: break-all;
}

.page-spenden .spenden-payment__thanks {
  margin: clamp(1.75rem, 3.8vw, 2.35rem) 0 0;
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.08rem);
  line-height: 1.65;
  color: rgba(15, 31, 54, 0.82);
}

.page-spenden .spenden-hearts {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding: clamp(3.25rem, 7vw, 5rem) var(--verein-section-x);
  background: var(--warm-white);
  border: none;
}

.page-spenden .spenden-hearts__inner {
  max-width: 52rem;
  margin: 0 auto;
}

.page-spenden .spenden-hearts__header {
  max-width: 38rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.page-spenden .spenden-hearts__title {
  margin: 0;
}

.page-spenden .spenden-hearts__title-kicker {
  display: block;
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.45vw, 0.78rem);
  font-weight: 800;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  margin-bottom: 0.55rem;
}

.page-spenden .spenden-hearts__title-main {
  display: block;
  font-family: var(--font-serif);
  font-size: clamp(1.4rem, 3.2vw, 2.05rem);
  font-weight: 600;
  line-height: 1.12;
  color: var(--deep-navy);
  letter-spacing: -0.02em;
}

.page-spenden .spenden-hearts__intro {
  margin-top: 0;
  margin-bottom: 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.08rem);
  line-height: 1.75;
  color: rgba(15, 31, 54, 0.84);
  text-wrap: pretty;
}

.page-spenden .spenden-hearts__list {
  display: grid;
  gap: var(--grid-gap);
}

.page-spenden .spenden-hearts__cta {
  display: flex;
  justify-content: center;
  margin-top: clamp(0.85rem, 2vw, 1.15rem);
}

.page-spenden .spenden-hearts__cta-btn.btn-secondary {
  border-color: rgba(19, 39, 68, 0.16);
  color: var(--deep-navy);
  box-shadow: 0 4px 14px rgba(19, 39, 68, 0.04);
}

.page-spenden .spenden-hearts__cta-btn.btn-secondary:hover,
.page-spenden .spenden-hearts__cta-btn.btn-secondary:focus-visible {
  border-color: rgba(19, 39, 68, 0.16) !important;
  color: var(--deep-navy) !important;
  box-shadow: 0 4px 14px rgba(19, 39, 68, 0.04) !important;
  transform: none !important;
}

.page-spenden .spenden-hearts__readmore {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 0 auto;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(15, 31, 54, 0.88);
  text-decoration: none;
}

.page-spenden .spenden-hearts__readmore:hover,
.page-spenden .spenden-hearts__readmore:focus-visible {
  color: var(--deep-navy);
}

.page-spenden button.spenden-hearts__readmore {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  margin: 0 0 0 auto;
}

.page-spenden .spenden-hearts__dialog-root {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1rem, 3vw, 1.75rem);
}

.page-spenden .spenden-hearts__dialog-root[hidden] {
  display: none !important;
}

.page-spenden .spenden-hearts__dialog-root.is-open {
  display: flex;
}

.page-spenden .spenden-hearts__dialog-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 22, 40, 0.58);
  backdrop-filter: blur(3px);
}

.page-spenden .spenden-hearts__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 36rem);
  max-height: min(88vh, 40rem);
  overflow: auto;
  padding: clamp(1.35rem, 3vw, 1.75rem) clamp(1.25rem, 2.8vw, 1.65rem);
  border-radius: calc(var(--radius-lg) + 0.1rem);
  background: linear-gradient(160deg, rgba(255, 252, 245, 0.99) 0%, rgba(250, 246, 238, 0.97) 100%);
  border: 1px solid rgba(201, 168, 76, 0.32);
  box-shadow: 0 24px 60px rgba(10, 22, 40, 0.28);
}

.page-spenden .spenden-hearts__dialog-close {
  position: absolute;
  top: 0.65rem;
  right: 0.65rem;
  width: 2.25rem;
  height: 2.25rem;
  min-width: 44px;
  min-height: 44px;
  border: none;
  border-radius: 50%;
  background: rgba(19, 39, 68, 0.06);
  color: var(--deep-navy);
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
}

.page-spenden .spenden-hearts__dialog-close:hover,
.page-spenden .spenden-hearts__dialog-close:focus-visible {
  background: rgba(19, 39, 68, 0.1);
}

.page-spenden .spenden-hearts__dialog-close:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.75);
  outline-offset: 2px;
}

.page-spenden .spenden-hearts__dialog-text {
  margin: 0;
  padding-top: 0.35rem;
  font-size: 1rem;
  line-height: 1.72;
  color: rgba(19, 39, 68, 0.9);
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: anywhere;
}

body.spenden-hearts-dialog-open {
  overflow: hidden;
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__card {
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 0;
  padding: clamp(1.75rem, 3.4vw, 2.15rem) clamp(1.45rem, 3.2vw, 1.9rem) clamp(1.35rem, 3vw, 1.75rem);
  border: var(--verein-card-border-light);
  border-radius: var(--verein-card-radius);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: var(--verein-card-shadow);
}

.page-podcast-mit-herz .feedback-stimmen-hub .spenden-hearts__card {
  height: 100%;
  min-height: clamp(16.5rem, 34vw, 19.5rem);
}

.page-podcast-mit-herz .feedback-stimmen-hub .spenden-hearts__quote p {
  font-size: clamp(1.06rem, 2.1vw, 1.18rem);
  -webkit-line-clamp: 7;
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__category {
  margin: 0 0 clamp(0.55rem, 1.2vw, 0.7rem);
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.35vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #b8984f;
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__card-divider {
  height: 1px;
  margin: 0 0 clamp(0.85rem, 1.6vw, 1rem);
  background: rgba(201, 168, 76, 0.35);
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__quote {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  border-left: 0;
  border: 0;
  background: transparent;
  font-style: normal;
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__quote p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 2vw, 1.12rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
  text-wrap: pretty;
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: clamp(0.75rem, 1.6vw, 0.95rem);
}

:is(.page-spenden, .page-podcast-mit-herz .feedback-stimmen-hub) .spenden-hearts__name {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.35vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #b8984f;
}

@media (min-width: 768px) {
  .page-spenden .spenden-hearts__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }
}

/* Homepage: gleiche Optik wie auf der Spenden-Seite */
.page-home .spenden-hearts {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding: clamp(2.5rem, 6vw, 4rem) var(--verein-section-x);
  background: var(--warm-white);
  border: none;
}

.page-home .spenden-hearts__inner {
  max-width: 52rem;
  margin: 0 auto;
}

.page-home .spenden-hearts__header {
  max-width: 38rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.page-home .spenden-hearts__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.8vw, 2.35rem);
  font-weight: 600;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-home .spenden-hearts__intro {
  margin-top: 0;
  margin-bottom: 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.08rem);
  line-height: 1.75;
  color: rgba(15, 31, 54, 0.84);
  text-wrap: pretty;
}

.page-home .spenden-hearts__header .home-section-ornament {
  margin-top: clamp(0.9rem, 2vw, 1.15rem);
  margin-bottom: clamp(1.05rem, 2.2vw, 1.3rem);
}

.page-home .spenden-hearts__intro {
  margin-top: 0;
  margin-bottom: clamp(1.05rem, 2.4vw, 1.45rem);
}

.spenden-hearts__summary-note,
.feedback-stimmen-hub__summary-note {
  margin: 0.35rem 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.82rem, 1.5vw, 0.9rem);
  font-weight: 500;
  font-style: italic;
  line-height: 1.5;
  color: rgba(15, 31, 54, 0.62);
  text-wrap: pretty;
}

.feedback-stimmen-hub__summary-note {
  text-align: center;
  margin: 0 auto clamp(0.85rem, 2vw, 1.15rem);
  max-width: 36rem;
}

.spenden-hearts__quote--summary p {
  font-style: normal;
}

.page-home .spenden-hearts__list {
  margin-top: 0;
}

.page-home .spenden-hearts__list {
  display: grid;
  gap: var(--grid-gap);
}

.page-home .spenden-hearts__card {
  margin: 0;
  padding: clamp(1.35rem, 3vw, 1.75rem);
  border: var(--verein-card-border-light);
  border-radius: var(--verein-card-radius);
  background: var(--verein-card-bg);
  box-shadow: var(--verein-card-shadow);
}

.page-home .spenden-hearts__quote {
  margin: 0 0 clamp(0.85rem, 2vw, 1.05rem);
}

.page-home .spenden-hearts__quote p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.08rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-home .spenden-hearts__name {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.35vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #b8984f;
}

@media (min-width: 768px) {
  .page-home .spenden-hearts__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }
}

.page-spenden .spenden-form {
  padding: clamp(3.25rem, 7vw, 5rem) var(--verein-section-x) clamp(3.5rem, 7.5vw, 5.25rem);
  background: #fff;
  border-top: var(--verein-section-divider);
  scroll-margin-top: calc(var(--nav-h, 4.5rem) + 0.85rem);
}

.page-spenden .spenden-form__inner {
  max-width: 40rem;
  margin: 0 auto;
}

.page-spenden .spenden-form__header {
  text-align: center;
  margin-bottom: clamp(2.25rem, 4.8vw, 3rem);
}

.page-spenden .spenden-form__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.8vw, 2.35rem);
  font-weight: 600;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-spenden .spenden-form__header .home-section-ornament {
  margin-top: clamp(0.85rem, 2vw, 1.15rem);
  margin-bottom: clamp(1.15rem, 2.6vw, 1.55rem);
}

.page-spenden .spenden-form__intro {
  margin: 0 auto;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.9vw, 1.08rem);
  line-height: 1.75;
  color: rgba(15, 31, 54, 0.86);
  text-wrap: pretty;
}

.page-spenden .spenden-form__wizard {
  max-width: none;
  margin-top: clamp(0.75rem, 2vw, 1.15rem);
  gap: 0;
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__progress {
  margin: 0 0 clamp(1.65rem, 3.6vw, 2.15rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.76rem);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-align: center;
  color: rgba(15, 31, 54, 0.48);
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__current {
  font-size: inherit;
  color: rgba(15, 31, 54, 0.72);
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__step {
  margin-bottom: 0;
  padding: clamp(1.35rem, 3vw, 1.75rem);
  border: none;
}

.page-spenden .spenden-form__step-title {
  margin: 0 0 clamp(1rem, 2.2vw, 1.25rem);
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2vw, 1.18rem);
  font-weight: 600;
  line-height: 1.3;
  color: var(--deep-navy);
}

.page-spenden .spenden-form__wizard .sl-flatrate-legend {
  margin-top: 0;
  margin-bottom: 1rem;
  padding: 0;
}

.page-spenden .spenden-form__wizard .public-form label {
  font-size: 0.9rem;
}

.page-spenden .spenden-form__wizard .public-form input,
.page-spenden .spenden-form__wizard .public-form textarea {
  min-height: 2.85rem;
  padding: 0.72rem 0.9rem;
  font-size: 1rem;
  line-height: 1.4;
}

.page-spenden .spenden-form__wizard .public-form textarea {
  min-height: 7rem;
  resize: vertical;
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__step--final {
  display: none;
  flex-direction: column;
  gap: 1rem;
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__step--final.is-active {
  display: flex;
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__step--final .btn-primary {
  width: auto;
  min-width: 8.5rem;
  justify-content: center;
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__nav {
  margin-top: clamp(1rem, 2.4vw, 1.35rem);
  padding-top: 0;
  padding-right: calc(var(--float-btn-size, 3.625rem) + 1.75rem);
  border-top: none;
  gap: 0.65rem;
}

.page-spenden .spenden-form__wizard .sl-spenden-wizard__nav .btn-primary,
.page-spenden .spenden-form__wizard .sl-spenden-wizard__nav .btn-secondary {
  min-height: 2.85rem;
}

@media (min-width: 900px) {
  .page-spenden .spenden-payment__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }
}

@media (max-width: 899px) {
  .page-spenden .spenden-payment__inner {
    max-width: 28rem;
  }

  .page-flatrate .flatrate-fee__inner {
    max-width: 25rem;
  }

  .page-spenden .spenden-payment__grid,
  .page-flatrate .flatrate-fee__payments {
    width: min(100%, 28rem);
    max-width: 28rem;
    margin-inline: auto;
  }
}

@media (max-width: 767px) {
  .page-spenden .spenden-form__wizard .sl-spenden-wizard__nav {
    flex-direction: column-reverse;
    align-items: flex-end;
  }

  .page-spenden .spenden-form__wizard .sl-spenden-wizard__nav .btn-primary,
  .page-spenden .spenden-form__wizard .sl-spenden-wizard__nav .btn-secondary,
  .page-spenden .spenden-form__wizard .sl-spenden-wizard__step--final .btn-primary {
    width: auto;
    min-width: 8.5rem;
    justify-content: center;
  }

  .page-spenden .spenden-payment__grid,
  .page-flatrate .flatrate-fee__payments {
    width: min(100%, 14rem);
    max-width: 14rem;
    margin-inline: auto;
    gap: clamp(0.75rem, 2.2vw, 0.95rem);
  }

  .page-spenden .spenden-payment__item,
  .page-flatrate .flatrate-fee__payment {
    align-items: flex-start;
    text-align: left;
    padding: clamp(1.05rem, 3.2vw, 1.25rem) clamp(1rem, 3vw, 1.2rem);
    gap: 0.55rem;
  }

  .page-spenden .spenden-payment__btn,
  .page-flatrate .flatrate-fee__payment .btn-primary,
  .page-flatrate .flatrate-fee__payment .btn-secondary,
  .page-flatrate .flatrate-fee__btn {
    align-self: flex-start;
    margin-top: 0.15rem;
  }

  .page-spenden .spenden-payment__bank {
    width: 100%;
  }
}

.page-spenden .public-section[data-section-key="spenden_staffel_danke"] {
  display: none !important;
}

.sl-feedback-grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 900px) {
  .sl-feedback-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.sl-feedback-card {
  background: #fff;
  border-radius: var(--radius-lg);
  border: 1px solid rgba(19, 39, 68, 0.08);
  padding: 1.25rem 1.2rem;
  box-shadow: 0 10px 30px rgba(10, 22, 40, 0.06);
}

.sl-feedback-card__text {
  margin: 0 0 0.85rem;
  color: var(--text-body);
  line-height: 1.6;
}

.sl-feedback-card__meta {
  margin: 0;
  font-size: 0.78rem;
  color: var(--soft-gray);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/* Geschenk-Wizard: Schritt-fÃƒÂ¼r-Schritt */
.sl-geschenk-wizard__progress {
  font-size: 0.9rem;
  color: var(--text-meta);
  margin-bottom: 1rem;
  font-weight: 600;
}

.sl-geschenk-wizard__current {
  color: var(--gold);
  font-size: 1.15rem;
}

.sl-geschenk-wizard {
  position: relative;
}

/* Nicht display:none: Chromium/WebKit sendet Fieldset-Felder sonst nicht im POST. */
.sl-geschenk-wizard__step {
  margin-bottom: 1.5rem;
}

.sl-geschenk-wizard__step:not(.is-active) {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  visibility: hidden;
  pointer-events: none;
}

.sl-geschenk-wizard__step.is-active {
  display: block;
  position: relative;
  visibility: visible;
}

html:not(.gottlebt-js) .sl-geschenk-wizard__step {
  display: block !important;
  position: static !important;
  visibility: visible !important;
  height: auto !important;
  width: auto !important;
  overflow: visible !important;
  clip: auto !important;
  margin-bottom: 1.5rem !important;
  pointer-events: auto !important;
}

html:not(.gottlebt-js) .sl-geschenk-wizard__progress,
html:not(.gottlebt-js) .sl-geschenk-wizard__next,
html:not(.gottlebt-js) .sl-geschenk-wizard__prev {
  display: none !important;
}

.sl-geschenk-wizard__nav {
  position: relative;
  z-index: 960;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(19, 39, 68, 0.08);
}

.public-section--mission-trust {
  margin-top: 2rem;
  padding: 1.5rem 1.25rem;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px dashed rgba(19, 39, 68, 0.12);
}

/* Mission (Auftrag): zentrierte Spalte, luftig, ohne KÃ¤sten */
.page-mission #main-content {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-top: var(--nav-h);
  overflow-x: clip;
}

.page-mission #main-content > * {
  margin-top: 0;
  margin-bottom: 0;
}

.page-mission #main-content > .article-shell {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

.page-mission #main-content > .home-mitmachen {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

.page-mission .public-section--mission,
.page-mission .public-section.sl-faq-block,
.page-mission .public-section.sl-feedback-block,
.page-mission .public-section--mission-trust,
.page-mission .public-section--page-extra {
  max-width: 42rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--space-6);
  padding: 0 1.25rem;
  border: none;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}

.page-mission .public-section--mission h2,
.page-mission .sl-faq-block .sl-section-heading,
.page-mission .sl-feedback-block .sl-section-heading,
.page-mission .public-section--mission-trust h2,
.page-mission .public-section--page-extra .sl-section-heading {
  text-align: center;
}

.page-mission .mission-rich {
  gap: 2rem;
}

.page-mission .mission-rich__chunk {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.page-mission .sl-auftrag-lead {
  max-width: 42rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  padding: 0 1.25rem;
  text-align: center;
}

.page-mission .verein-hero-block {
  position: relative;
  padding: clamp(3.5rem, 8vw, 6rem) clamp(1.25rem, 4vw, 2rem) clamp(3.25rem, 7vw, 5.5rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 52%, #152a45 100%);
  color: var(--cream);
  overflow: hidden;
  box-sizing: border-box;
}

.page-mission .verein-hero-block__inner {
  position: relative;
  z-index: 1;
  max-width: 46rem;
  margin: 0 auto;
}

.page-mission .verein-intro-block {
  text-align: center;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  box-sizing: border-box;
}

.page-mission .verein-hero-block .page-title-dual__line1 {
  color: var(--gold-light);
}

.page-mission .verein-hero-block .page-title-dual__line2 {
  color: var(--cream);
}

.page-mission .verein-hero-block .home-section-ornament__line {
  background: rgba(184, 152, 79, 0.55);
}

.page-mission .verein-intro-block .page-title-dual--inner:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.page-mission .verein-intro-block .home-section-ornament {
  margin-top: clamp(1rem, 2.4vw, 1.35rem);
  margin-bottom: clamp(1.35rem, 3vw, 1.85rem);
}

.page-mission .verein-intro-block__lead {
  max-width: 42rem;
  margin: 0 auto clamp(1.75rem, 3.5vw, 2.35rem);
  padding: 0 clamp(1rem, 3vw, 1.25rem);
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  line-height: 1.78;
  color: rgba(250, 246, 238, 0.92);
  text-wrap: pretty;
}

.page-mission .verein-hero-block .verein-verse--intro {
  margin-top: clamp(0.25rem, 0.8vw, 0.5rem);
  margin-bottom: 0;
}

.page-mission .verein-hero-block .verein-verse blockquote {
  color: rgba(250, 246, 238, 0.96);
}

.page-mission .verein-hero-block .verein-verse figcaption {
  color: var(--gold-light);
}

.page-mission .verein-hero-block .verein-verse__divider-line {
  background: rgba(184, 152, 79, 0.55);
}

.page-mission .article-shell > .verein-verse {
  padding-left: clamp(1.25rem, 4vw, 2rem);
  padding-right: clamp(1.25rem, 4vw, 2rem);
  box-sizing: border-box;
}

/* Vereinsseite Ã¢â‚¬â€œ einheitliches Bibelvers-Format */
.page-mission .verein-verse {
  max-width: 34rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.page-mission .verein-verse--intro {
  margin-top: clamp(0.25rem, 0.8vw, 0.5rem);
  margin-bottom: clamp(1.75rem, 3.5vw, 2.4rem);
}

.page-mission .verein-verse--mission {
  margin-top: clamp(2.25rem, 4.5vw, 3rem);
}

.page-mission .verein-verse__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 12rem);
  margin: 0 auto clamp(1rem, 2.2vw, 1.35rem);
}

.page-mission .verein-verse__divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
}

.page-mission .verein-verse__divider-cross {
  flex: 0 0 auto;
  width: 0.58rem;
  height: 0.82rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

.page-mission .verein-verse__figure {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.page-mission .verein-verse blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.3vw, 1.32rem);
  font-style: italic;
  font-weight: 500;
  line-height: 1.55;
  color: var(--text-dark);
  text-wrap: balance;
}

.page-mission .verein-verse figcaption {
  margin-top: 0.85rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
}

.page-mission .verein-why-block {
  padding: clamp(3rem, 6.5vw, 4.5rem) clamp(1.25rem, 4vw, 2rem);
  background: var(--warm-white);
  border-bottom: 1px solid rgba(15, 31, 54, 0.07);
  box-sizing: border-box;
}

.page-mission .verein-why-block__inner {
  max-width: 46rem;
  margin: 0 auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: none;
  box-shadow: none;
}

.page-mission .verein-why-block__head {
  text-align: center;
}

.page-mission .verein-why-block__head .sl-section-heading {
  margin: 0;
  font-size: clamp(1.65rem, 3.8vw, 2.05rem);
  line-height: 1.18;
  text-align: center;
}

.page-mission .verein-why-block__body {
  max-width: 38rem;
  margin: 0 auto clamp(1.75rem, 3.5vw, 2.35rem);
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.78;
  color: var(--text-body);
  text-align: center;
  text-wrap: pretty;
}

.page-mission .verein-why-block__body p {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.78;
}

.page-mission .verein-why-block__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-mission .verein-mission-block {
  padding: clamp(3.1rem, 6.6vw, 4.85rem) clamp(1.25rem, 4vw, 2rem);
  background: var(--cream);
  box-sizing: border-box;
}

.page-mission .verein-mission-block__inner {
  max-width: 58rem;
  margin: 0 auto;
}

.page-mission .verein-mission-block__header {
  text-align: center;
  max-width: 38rem;
}

.page-mission .verein-mission-block__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
  text-align: center;
}

.page-mission .verein-mission-block__columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 0;
}

.page-mission .verein-mission-block__col {
  max-width: 22rem;
  margin: 0 auto;
  text-align: center;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.78;
  color: var(--deep-navy);
}

.page-mission .verein-mission-block__col p {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.78;
}

.page-mission .verein-mission-block__divider {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  width: 1px;
  margin: 0 clamp(1rem, 2.5vw, 1.75rem);
  min-height: 100%;
}

.page-mission .verein-mission-block__divider-line {
  flex: 1 1 auto;
  width: 1px;
  min-height: 2.5rem;
  background: rgba(184, 152, 79, 0.28);
}

.page-mission .verein-mission-block__divider-cross {
  flex: 0 0 auto;
  width: 0.58rem;
  height: 0.82rem;
  margin: 0.7rem 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

@media (max-width: 767px) {
  .page-mission .verein-mission-block__columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-mission .verein-mission-block__divider {
    flex-direction: row;
    width: min(100%, 12rem);
    height: auto;
    min-height: 0;
    margin: clamp(2rem, 4.5vw, 2.75rem) auto;
  }

  .page-mission .verein-mission-block__divider-line {
    flex: 1 1 0;
    width: auto;
    height: 1px;
    min-height: 0;
  }

  .page-mission .verein-mission-block__divider-cross {
    margin: 0 0.65rem;
  }

  .page-mission .verein-mission-block__col {
    max-width: 34rem;
  }
}

.page-mission .verein-vision-block {
  position: relative;
  padding: clamp(3.3rem, 7vw, 5.05rem) clamp(1.25rem, 4vw, 2rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 52%, #152a45 100%);
  color: var(--cream);
  overflow: hidden;
  box-sizing: border-box;
}

.page-mission .verein-vision-block__stars {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.42;
  background-image:
    radial-gradient(circle at 14% 22%, rgba(201, 168, 76, 0.5) 0, transparent 2px),
    radial-gradient(circle at 82% 18%, rgba(201, 168, 76, 0.38) 0, transparent 1.5px),
    radial-gradient(circle at 68% 72%, rgba(201, 168, 76, 0.32) 0, transparent 1.5px),
    radial-gradient(circle at 24% 68%, rgba(201, 168, 76, 0.28) 0, transparent 1.25px),
    radial-gradient(circle at 48% 12%, rgba(232, 213, 160, 0.22) 0, transparent 2px),
    radial-gradient(circle at 92% 58%, rgba(201, 168, 76, 0.24) 0, transparent 1.25px),
    radial-gradient(ellipse 90% 70% at 50% 0%, rgba(212, 175, 55, 0.08) 0%, transparent 62%);
}

.page-mission .verein-vision-block__inner {
  position: relative;
  z-index: 1;
  max-width: 46rem;
  margin: 0 auto;
  text-align: center;
}

.page-mission .verein-vision-block__header {
  margin-bottom: clamp(0.35rem, 1vw, 0.55rem);
}

.page-mission .verein-vision-block__eyebrow {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.34em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--gold-light);
  text-align: center;
}

.page-mission .verein-vision-block__hero-type {
  margin-bottom: clamp(1.55rem, 3.4vw, 2.05rem);
}

.page-mission .verein-vision-block__hero-type .home-section-ornament {
  margin-top: clamp(1rem, 2.4vw, 1.35rem);
  margin-bottom: 0;
}

.page-mission .verein-vision-block__hero-type .home-section-ornament__line {
  background: rgba(184, 152, 79, 0.55);
}

.page-mission .verein-vision-block__million,
.page-mission .verein-vision-block__hearts {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.5vw, 2.85rem);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.16;
  color: #ffffff;
  text-align: center;
}

.page-mission .verein-vision-block__hearts {
  margin-top: clamp(0.35rem, 0.9vw, 0.55rem);
}

.page-mission .verein-vision-block__body {
  max-width: 40rem;
  margin: 0 auto clamp(1.75rem, 3.7vw, 2.4rem);
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(250, 246, 238, 0.92);
  text-wrap: pretty;
}

.page-mission .verein-vision-block__body p {
  margin: 0;
}

.page-mission .verein-vision-block__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-mission .bibel-counter-compact {
  max-width: 34rem;
  margin: 0 auto;
  padding-top: clamp(0.35rem, 1vw, 0.55rem);
}

.page-mission .bibel-counter-compact__label {
  margin: 0 0 clamp(0.75rem, 1.6vw, 0.95rem);
  font-family: var(--font-sans);
  font-size: clamp(0.82rem, 1.55vw, 0.92rem);
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.45;
  color: rgba(250, 246, 238, 0.9);
}

.page-mission .bibel-counter-compact__label [data-counter-value] {
  color: #dfc07a;
  font-weight: 700;
}

.page-mission .bibel-counter-compact__bar {
  height: 0.42rem;
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.12);
  overflow: hidden;
  margin-bottom: 0;
}

.page-mission .bibel-counter-compact__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c9a050 0%, #dfc07a 48%, #b8984f 100%);
}

.page-mission .bibel-counter-compact__donate {
  margin: 0 0 clamp(1.15rem, 2.4vw, 1.45rem);
  font-family: var(--font-serif);
  font-size: clamp(1rem, 2vw, 1.1rem);
  font-weight: 500;
  line-height: 1.45;
  color: rgba(250, 246, 238, 0.88);
}

.page-mission .bibel-counter-compact__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.85rem;
  padding: 0.7rem 1.75rem;
  border: 1px solid rgba(212, 175, 55, 0.62);
  border-radius: 999px;
  background: rgba(254, 252, 248, 0.96);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.45vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--deep-navy);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

@media (hover: hover) and (pointer: fine) {
  .page-mission .bibel-counter-compact__btn:hover,
  .page-mission .bibel-counter-compact__btn:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(212, 175, 55, 0.82);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
    outline: none;
  }
}

.page-mission .verein-action-block {
  padding: clamp(3.3rem, 7vw, 5.05rem) clamp(1.25rem, 4vw, 2rem);
  background: #f6f2ec;
  border-bottom: 1px solid rgba(184, 152, 79, 0.22);
  box-sizing: border-box;
}

.page-mission .verein-action-block__inner {
  max-width: 72rem;
  margin: 0 auto;
}

.page-mission .verein-action-block__header {
  text-align: center;
  max-width: 42rem;
}

.page-mission .verein-action-block__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
  text-align: center;
}

.page-mission .verein-action-block__intro {
  max-width: 40rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: pretty;
}

.page-mission .verein-action-block__intro p {
  margin: 0;
}

.page-mission .verein-action-block__intro p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-mission .verein-action-block__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--grid-gap-lg);
  align-items: stretch;
}

.page-mission .verein-action-block__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(1.85rem, 4vw, 2.35rem) clamp(1.25rem, 2.8vw, 1.65rem);
  border: var(--verein-card-border);
  border-top: 3px solid rgba(201, 168, 76, 0.72);
  background: var(--verein-card-bg);
  box-shadow: var(--verein-card-shadow);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.page-mission .verein-action-block__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.1rem;
  height: 3.1rem;
  margin-bottom: clamp(1rem, 2.4vw, 1.25rem);
  color: #b8984f;
  transition: color 0.3s ease, filter 0.3s ease;
}

.page-mission .verein-action-block__card-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.page-mission .verein-action-block__card-title {
  margin: 0 0 clamp(0.65rem, 1.5vw, 0.85rem);
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.2vw, 1.28rem);
  font-weight: 600;
  line-height: 1.28;
  color: var(--deep-navy);
}

.page-mission .verein-action-block__card-text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.9rem, 1.65vw, 0.96rem);
  line-height: 1.65;
  color: rgba(15, 31, 54, 0.82);
}

@media (hover: hover) and (pointer: fine) {
  .page-mission .verein-action-block__card:hover {
    border-color: var(--card-hover-border);
    box-shadow: var(--card-hover-shadow);
  }

  .page-mission .verein-action-block__card:hover .verein-action-block__card-icon {
    color: #c9a050;
    filter: brightness(1.06);
  }
}

@media (max-width: 960px) {
  .page-mission .verein-action-block__grid {
    grid-template-columns: minmax(0, 1fr);
    max-width: 26rem;
    margin: 0 auto;
  }
}

.page-mission .verein-support-block {
  padding: clamp(3.75rem, 8vw, 5.75rem) clamp(1.25rem, 4vw, 2rem);
  background: var(--warm-white);
  border-top: var(--verein-section-divider);
  border-bottom: var(--verein-section-divider);
  box-sizing: border-box;
}

.page-mission .verein-support-block__inner {
  max-width: 72rem;
  margin: 0 auto;
}

.page-mission .verein-support-block__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(2rem, 4.5vw, 3.5rem);
  align-items: center;
}

.page-mission .verein-support-block__content {
  text-align: left;
}

.page-mission .verein-support-block__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.page-mission .verein-support-block__body {
  max-width: 36rem;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
}

.page-mission .verein-support-block__body p {
  margin: 0;
}

.page-mission .verein-support-block__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-mission .verein-support-block__impact {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(2rem, 4.5vw, 2.75rem) clamp(1.35rem, 3vw, 1.85rem);
  border: 1px solid rgba(15, 31, 54, 0.1);
  border-radius: 1.15rem;
  background: #fefcf8;
  box-shadow: 0 14px 36px rgba(15, 31, 54, 0.06);
  overflow: hidden;
}

.page-mission .verein-support-block__impact-glow {
  display: none;
}

.page-mission .verein-support-block__book-outline {
  position: relative;
  z-index: 1;
  width: clamp(4.5rem, 10vw, 5.75rem);
  height: clamp(4.5rem, 10vw, 5.75rem);
  margin-bottom: clamp(0.85rem, 2vw, 1.15rem);
  color: rgba(15, 31, 54, 0.14);
}

.page-mission .verein-support-block__book-outline svg {
  display: block;
  width: 100%;
  height: 100%;
}

.page-mission .verein-support-block__impact-type {
  position: relative;
  z-index: 1;
  margin-bottom: clamp(1.35rem, 2.8vw, 1.75rem);
}

.page-mission .verein-support-block__impact-amount {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2.75rem, 6.5vw, 3.85rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--deep-navy);
}

.page-mission .verein-support-block__impact-line {
  margin: clamp(0.45rem, 1vw, 0.6rem) 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.88rem, 1.75vw, 0.98rem);
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.04em;
  color: rgba(15, 31, 54, 0.78);
}

.page-mission .verein-support-block__btn {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0.75rem 1.85rem;
  border: 1px solid rgba(184, 152, 79, 0.72);
  border-radius: 999px;
  background: #fefcf8;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.45vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--deep-navy);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

@media (hover: hover) and (pointer: fine) {
  .page-mission .verein-support-block__btn:hover,
  .page-mission .verein-support-block__btn:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(212, 175, 55, 0.82);
    background: linear-gradient(180deg, #ebd591 0%, #dfc07a 52%, #d4af37 100%);
    box-shadow: 0 0 18px rgba(212, 175, 55, 0.28);
    outline: none;
  }
}

@media (max-width: 900px) {
  .page-mission .verein-support-block__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(2.25rem, 5vw, 3rem);
  }

  .page-mission .verein-support-block__content {
    text-align: center;
  }

  .page-mission .verein-support-block__content .home-section-ornament {
    margin-left: auto;
    margin-right: auto;
  }

  .page-mission .verein-support-block__body {
    max-width: 40rem;
    margin: 0 auto;
  }

  .page-mission .verein-support-block__impact {
    max-width: 26rem;
    margin: 0 auto;
    width: 100%;
  }
}

.page-mission .verein-trust-block {
  padding: var(--verein-section-y) var(--verein-section-x);
  background: #fff;
  border-top: var(--verein-section-divider);
  box-sizing: border-box;
}

.page-mission .home-mitmachen {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
  padding: clamp(3.5rem, 8vw, 6rem) 0 clamp(3.75rem, 8.5vw, 6.25rem);
}

.page-mission .verein-trust-block__inner {
  max-width: 72rem;
  margin: 0 auto;
}

.page-mission .verein-trust-block__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(1.75rem, 3.8vw, 2.85rem);
  align-items: start;
}

.page-mission .verein-trust-block__content {
  text-align: left;
}

.page-mission .verein-trust-block__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.page-mission .verein-trust-block__body {
  max-width: 36rem;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
}

.page-mission .verein-trust-block__body p {
  margin: 0;
}

.page-mission .verein-trust-block__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-mission .verein-trust-block__timeline {
  position: relative;
  margin: 0;
  padding: clamp(0.15rem, 0.5vw, 0.35rem) 0 0;
  list-style: none;
}

.page-mission .verein-trust-block__timeline::before {
  content: '';
  position: absolute;
  left: 0.31rem;
  top: 0.85rem;
  bottom: 0.85rem;
  width: 1px;
  background: linear-gradient(
    180deg,
    rgba(201, 168, 76, 0.08) 0%,
    rgba(212, 175, 55, 0.34) 12%,
    rgba(212, 175, 55, 0.34) 88%,
    rgba(201, 168, 76, 0.08) 100%
  );
}

.page-mission .verein-trust-block__item {
  display: grid;
  grid-template-columns: 0.62rem minmax(0, 1fr);
  gap: clamp(0.85rem, 1.8vw, 1.05rem);
  align-items: start;
  padding-bottom: clamp(1.2rem, 2.5vw, 1.65rem);
}

.page-mission .verein-trust-block__item:last-child {
  padding-bottom: 0;
}

.page-mission .verein-trust-block__marker {
  position: relative;
  z-index: 1;
  display: block;
  width: 0.62rem;
  height: 0.62rem;
  margin-top: 0.38rem;
  padding: 0;
  border: 1px solid #d4af37;
  border-radius: 50%;
  background: rgba(212, 175, 55, 0.24);
  box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.1);
  color: transparent;
}

.page-mission .verein-trust-block__marker svg {
  display: none;
}

.page-mission .verein-trust-block__point-title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2.1vw, 1.22rem);
  font-weight: 500;
  line-height: 1.35;
  color: var(--deep-navy);
}

.page-mission .verein-trust-block__point-text {
  margin: clamp(0.35rem, 0.85vw, 0.5rem) 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.75vw, 1rem);
  line-height: 1.65;
  color: rgba(15, 31, 54, 0.78);
}

@media (max-width: 900px) {
  .page-mission .verein-trust-block__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(2.25rem, 5vw, 3rem);
  }

  .page-mission .verein-trust-block__content {
    text-align: center;
  }

  .page-mission .verein-trust-block__content .home-section-ornament {
    margin-left: auto;
    margin-right: auto;
  }

  .page-mission .verein-trust-block__body {
    max-width: 40rem;
    margin: 0 auto;
  }

  .page-mission .verein-trust-block__timeline {
    max-width: 26rem;
    margin: 0 auto;
    width: 100%;
  }
}

.public-section__body--blocks {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.mission-text-block {
  padding: 1rem 1rem 1rem 1.15rem;
  border-left: 3px solid rgba(201, 168, 76, 0.55);
  background: rgba(250, 246, 238, 0.5);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
}

.sl-geschenk-lead-wrap {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 1rem;
}

.sl-geschenk-lead {
  padding: 1.25rem 1.15rem;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.07);
}

.sl-geschenk-erwartet {
  padding: 1.5rem 1.25rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(180deg, rgba(19, 39, 68, 0.04), transparent);
  border: 1px solid rgba(19, 39, 68, 0.08);
}

.sl-geschenk-form {
  margin-top: 1.5rem;
}

.sl-tier-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: 2.5rem;
}

@media (min-width: 768px) {
  .sl-tier-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .sl-tier-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
  }
}

.sl-tier-card {
  position: relative;
  padding: 1.75rem 1.35rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(160deg, var(--midnight), var(--deep-navy));
  border: 1px solid rgba(201, 168, 76, 0.25);
  text-align: center;
}

.sl-tier-card--featured {
  border-color: var(--gold);
  box-shadow: 0 0 0 1px var(--gold), var(--shadow-soft);
}

.sl-tier-card__badge {
  position: absolute;
  top: -0.65rem;
  left: 50%;
  transform: translateX(-50%);
  padding: 0.25rem 0.75rem;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--midnight);
  background: var(--gold);
  border-radius: 999px;
}

.sl-tier-card__amount {
  display: block;
  font-family: var(--font-serif);
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--gold-light);
  line-height: 1.1;
}

.sl-tier-card__bib {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(250, 246, 238, 0.65);
}

.sl-tier-card__desc {
  margin-top: 1rem;
  font-size: 0.95rem;
  line-height: 1.55;
  color: rgba(250, 246, 238, 0.78);
}

/* -------------------------------------------------------------------------- */
/* 8. Flatrate-Pricing-Card                                                 */
/* -------------------------------------------------------------------------- */

.sl-flatrate-wrap {
  display: flex;
  justify-content: center;
  margin: 2.5rem 0;
}

.sl-flatrate-card {
  position: relative;
  width: 100%;
  max-width: 26rem;
  padding: 2.5rem 2rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(155deg, var(--warm-white) 0%, var(--cream) 100%);
  border: 2px solid var(--gold);
  box-shadow: var(--shadow-soft), 0 0 60px rgba(201, 168, 76, 0.12);
  text-align: center;
}

.sl-flatrate-card__badge {
  position: absolute;
  top: -0.75rem;
  left: 50%;
  transform: translateX(-50%);
  padding: 0.35rem 1rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--midnight);
  background: var(--gold);
  border-radius: 999px;
}

.sl-flatrate-card__title {
  font-size: 1.75rem;
  margin-bottom: 0.5rem;
}

.sl-flatrate-card__lead {
  font-size: 0.98rem;
  color: var(--text-body);
  margin-bottom: 1.5rem;
}

.sl-flatrate-card__price {
  margin-bottom: 1.75rem;
  line-height: 1;
}

.sl-flatrate-card__eur {
  font-family: var(--font-serif);
  font-size: 4rem;
  font-weight: 700;
  color: var(--deep-navy);
}

.sl-flatrate-card__currency {
  font-family: var(--font-serif);
  font-size: 1.75rem;
  font-weight: 600;
  color: var(--gold);
  vertical-align: super;
  margin-left: 0.15rem;
}

.sl-flatrate-card__per {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--soft-gray);
}

.sl-flatrate-card__features {
  text-align: left;
  margin-bottom: 2rem;
  padding: 0 0.5rem;
}

.sl-flatrate-card__features li {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin-bottom: 0.75rem;
  font-size: 0.95rem;
  color: var(--text-body);
}

.sl-flatrate-card__check {
  flex-shrink: 0;
  width: 1.35rem;
  height: 1.35rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(201, 168, 76, 0.2);
  color: var(--deep-navy);
  font-size: 0.75rem;
  font-weight: 800;
}

.sl-flatrate-card__cta {
  width: 100%;
  justify-content: center;
}

.sl-spendenkonto-box {
  margin: 2rem 0 2.5rem;
  padding: 1.75rem 1.5rem;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.12);
  max-width: 36rem;
}

.sl-spendenkonto-box h3 {
  font-family: var(--font-serif);
  font-size: 1.35rem;
  margin: 0 0 1rem;
  color: var(--deep-navy);
}

.sl-spendenkonto-box dl {
  margin: 0;
  display: grid;
  gap: 0.65rem;
}

.sl-spendenkonto-box dt {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--soft-gray);
}

.sl-spendenkonto-box dd {
  margin: 0;
  font-size: 1rem;
  word-break: break-word;
}

.sl-spendenkonto-box .sl-spendenkonto-paypal {
  margin-top: 1.25rem;
}

.sl-trust-badge {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  margin: 2rem 0;
  padding: 1rem 1.25rem;
  border-radius: var(--radius);
  background: rgba(19, 39, 68, 0.04);
  border: 1px solid rgba(19, 39, 68, 0.08);
  font-size: 0.9rem;
  color: var(--text-body);
}

.sl-trust-badge__sep {
  opacity: 0.45;
  font-weight: 300;
}

.sl-geschenk-above-fold {
  margin-bottom: 2.5rem;
}

.sl-flatrate-alt {
  text-align: center;
  margin: 2rem 0 1rem;
  font-size: 0.98rem;
  color: var(--text-body);
}

.sl-flatrate-alt a {
  font-weight: 700;
  color: var(--gold-dark);
}

/* -------------------------------------------------------------------------- */
/* 9. Impuls-Akkordeon                                                        */
/* -------------------------------------------------------------------------- */

.sl-impulse-accordions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 2rem;
}

.sl-impulse-acc {
  border-radius: var(--radius);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.1);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.sl-impulse-acc:hover {
  border-color: rgba(201, 168, 76, 0.35);
}

.sl-impulse-acc[open] {
  border-color: rgba(201, 168, 76, 0.5);
  box-shadow: 0 12px 36px rgba(10, 22, 40, 0.08);
}

.sl-impulse-acc__summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  padding: 1.15rem 1.25rem;
  cursor: pointer;
  list-style: none;
  font-weight: 600;
  color: var(--text-dark);
}

.sl-impulse-acc__summary::-webkit-details-marker {
  display: none;
}

.sl-impulse-acc__title {
  flex: 1 1 12rem;
  font-family: var(--font-serif);
  font-size: 1.25rem;
}

.sl-impulse-acc__date {
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--soft-gray);
}

.sl-impulse-acc__chevron {
  width: 0.55rem;
  height: 0.55rem;
  border-right: 2px solid var(--gold);
  border-bottom: 2px solid var(--gold);
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  margin-left: auto;
}

.sl-impulse-acc[open] .sl-impulse-acc__chevron {
  transform: rotate(-135deg);
}

.sl-impulse-acc__body {
  padding: 0 1.25rem 1.35rem;
  border-top: 1px solid rgba(19, 39, 68, 0.06);
}

.sl-impulse-acc__teaser {
  margin-top: 1rem;
  color: var(--text-body);
  font-style: italic;
}

.sl-impulse-acc__text {
  margin-top: 0.75rem;
  white-space: pre-wrap;
  color: var(--text-body);
  line-height: 1.65;
}

.sl-impulse-acc__link {
  display: inline-flex;
  margin-top: 1.25rem;
}

.sl-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sl-impulse-latest {
  margin: 2rem 0 2.5rem;
  padding: 1.75rem 1.5rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(160deg, var(--warm-white) 0%, var(--cream) 100%);
  border: 1px solid rgba(201, 168, 76, 0.35);
  box-shadow: var(--shadow-soft);
}

.sl-impulse-latest__section-title {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold-dark);
  margin: 0 0 0.75rem;
}

.sl-impulse-latest__date {
  display: block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--soft-gray);
  margin-bottom: 0.5rem;
}

.sl-impulse-latest__title {
  font-family: var(--font-serif);
  font-size: 1.65rem;
  margin: 0 0 0.75rem;
  color: var(--deep-navy);
}

.sl-impulse-latest__teaser {
  font-style: italic;
  color: var(--text-body);
  margin: 0 0 1rem;
  line-height: 1.6;
}

.sl-impulse-latest__body {
  white-space: pre-wrap;
  color: var(--text-body);
  line-height: 1.7;
  margin-bottom: 1.25rem;
}

.sl-impulse-archive__heading {
  margin-top: 2.5rem;
}

.sl-impulse-archive {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  margin-top: 1rem;
}

.sl-impulse-item {
  border-radius: var(--radius);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.1);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.sl-impulse-item.is-expanded {
  border-color: rgba(201, 168, 76, 0.45);
  box-shadow: 0 12px 36px rgba(10, 22, 40, 0.08);
}

.sl-impulse-item__header {
  padding: 1.15rem 1.25rem 0.75rem;
}

.sl-impulse-item__date {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--soft-gray);
  margin-bottom: 0.35rem;
}

.sl-impulse-item__title {
  font-family: var(--font-serif);
  font-size: 1.2rem;
  margin: 0 0 0.5rem;
  color: var(--text-dark);
}

.sl-impulse-item__teaser {
  margin: 0 0 0.75rem;
  font-size: 0.95rem;
  font-style: italic;
  color: var(--text-body);
  line-height: 1.55;
}

.sl-impulse-item__toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.35rem 0;
  margin-bottom: 0.5rem;
  border: none;
  background: none;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--gold-dark);
}

.sl-impulse-item__toggle:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

.sl-impulse-item__chevron {
  width: 0.5rem;
  height: 0.5rem;
  border-right: 2px solid var(--gold);
  border-bottom: 2px solid var(--gold);
  transform: rotate(45deg);
  transition: transform 0.35s ease;
}

.sl-impulse-item__panel-inner {
  overflow: hidden;
  min-height: 0;
  padding: 0 1.25rem;
  border-top: 1px solid rgba(19, 39, 68, 0.06);
}

.sl-impulse-item__body {
  padding: 1rem 0 0.25rem;
  white-space: pre-wrap;
  color: var(--text-body);
  line-height: 1.65;
}

.sl-impulse-card__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.65rem;
  padding: 1rem 0 1.25rem;
}

.sl-impulse-card__actions .sl-engagement {
  flex: 1 1 100%;
  margin-top: 0.15rem;
}

.sl-engagement {
  width: 100%;
}

.sl-engagement__pray-count {
  margin: 0 0 0.75rem;
  font-size: 0.84rem;
  line-height: 1.45;
  color: var(--deep-navy);
  font-weight: 500;
}

.sl-engagement__like-count {
  margin: 0 0 0.75rem;
  font-size: 0.84rem;
  line-height: 1.45;
  color: var(--deep-navy);
  font-weight: 500;
}

.sl-engagement__pray-count.is-empty,
.sl-engagement__like-count.is-empty {
  display: none;
}

.sl-engagement__pray-count:not(.is-empty) {
  display: inline-flex;
  align-items: center;
  gap: 0.38rem;
}

.sl-engagement__pray-count:not(.is-empty)::before {
  content: '';
  flex-shrink: 0;
  width: 0.72rem;
  height: 0.72rem;
  opacity: 0.92;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14' fill='none'%3E%3Cpath d='M8 13S1 8.6 1 4.8C1 2.7 2.6 1 4.6 1c1.2 0 2.3.6 3 1.6.7-1 1.8-1.6 3-1.6 2 0 3.6 1.7 3.6 3.8C14.4 8.6 8 13 8 13z' fill='%23c9a84c'/%3E%3C/svg%3E");
}

.sl-engagement--like-only .sl-engagement__actions {
  justify-content: flex-start;
}

.sl-engagement--pray-only .sl-engagement__actions {
  justify-content: flex-end;
}

.sl-engagement__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  width: 100%;
}

.sl-engagement-like-btn,
.sl-engagement-pray-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: 0.45rem 1.15rem;
  border: 1px solid rgba(201, 168, 76, 0.55);
  border-radius: 999px;
  background: linear-gradient(165deg, #f5ebd3 0%, #e8d5a0 52%, #c9a84c 100%);
  color: var(--deep-navy);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1;
  cursor: pointer;
  box-shadow:
    0 4px 14px rgba(201, 168, 76, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.45);
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.sl-engagement-like-btn {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-width: 8.5rem;
  background: rgba(255, 252, 245, 0.92);
  border-color: rgba(201, 168, 76, 0.45);
  text-transform: none;
  letter-spacing: 0.02em;
}

.sl-engagement-like-btn__count {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(1.85rem, 5vw, 2.5rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: rgba(201, 168, 76, 0.24);
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.sl-engagement-like-btn__count.is-zero {
  opacity: 0;
}

.sl-engagement-like-btn__text {
  position: relative;
  z-index: 1;
}

.sl-engagement-pray-btn {
  background: linear-gradient(165deg, #ffffff 0%, #fffefb 50%, #faf6ee 100%);
  border-color: rgba(255, 255, 255, 0.82);
  color: rgba(15, 31, 54, 0.9);
  text-transform: none;
  letter-spacing: 0.02em;
  box-shadow:
    0 0 0 1px rgba(201, 168, 76, 0.24),
    0 2px 14px rgba(255, 255, 255, 0.5),
    0 6px 22px rgba(201, 168, 76, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.98);
}

.sl-engagement-like-btn:hover,
.sl-engagement-like-btn:focus-visible {
  transform: translateY(-1px);
  box-shadow:
    0 6px 18px rgba(201, 168, 76, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

.sl-engagement-pray-btn:hover,
.sl-engagement-pray-btn:focus-visible {
  transform: translateY(-1px);
  background: linear-gradient(165deg, #ffffff 0%, #fffdf9 100%);
  border-color: rgba(201, 168, 76, 0.42);
  color: var(--deep-navy);
  box-shadow:
    0 0 0 1px rgba(201, 168, 76, 0.32),
    0 0 18px rgba(255, 255, 255, 0.72),
    0 8px 26px rgba(201, 168, 76, 0.14),
    inset 0 1px 0 #ffffff;
}

.sl-engagement-like-btn.is-liked,
.sl-engagement-like-btn:disabled {
  background: linear-gradient(165deg, #f5ebd3 0%, #e8d5a0 52%, #c9a84c 100%);
  cursor: default;
  transform: none;
}

.sl-engagement-pray-btn.is-prayed,
.sl-engagement-pray-btn:disabled {
  opacity: 0.88;
  cursor: default;
  transform: none;
}

.sl-prayer-card__footer .sl-engagement {
  margin-top: 0;
}

.sl-prayer-card__footer .sl-engagement--pray-only {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem 0.75rem;
  width: 100%;
}

.sl-prayer-card__footer .sl-engagement--pray-only .sl-engagement__pray-count {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  text-align: left;
}

.sl-prayer-card__footer .sl-engagement--pray-only .sl-engagement__actions {
  flex: 0 0 auto;
  width: auto;
  margin-left: auto;
  justify-content: flex-end;
}

.sl-prayer-card__footer .sl-engagement--pray-only .sl-engagement__pray-count.is-empty + .sl-engagement__actions {
  margin-left: auto;
}

.sl-prayer-card__footer .sl-prayer-card__meta {
  margin-top: 0.6rem;
  width: 100%;
}

.sl-impulse-card__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.sl-youtube-embed {
  position: relative;
  width: 100%;
  max-width: 42rem;
  margin: 1.5rem 0;
  border-radius: var(--radius);
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: var(--midnight);
}

.sl-youtube-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.sl-impulse-item--latest .sl-impulse-item__panel-inner .impulse-listen {
  margin: 0 0 1.15rem;
}

.sl-impulse-item__panel-inner .impulse-listen {
  margin: 0 0 1rem;
}

.impulse-detail-links {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.impulse-listen {
  position: relative;
  margin: 1.35rem 0 1.75rem;
}

.sl-impulse-card__actions .impulse-listen {
  margin: 0;
}

.impulse-listen__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.65rem;
  padding: 0.55rem 1.15rem;
  border: 1px solid rgba(201, 168, 76, 0.55);
  border-radius: 999px;
  background: linear-gradient(165deg, #f5ebd3 0%, #e8d5a0 52%, #c9a84c 100%);
  color: var(--deep-navy);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
  cursor: pointer;
  box-shadow:
    0 3px 12px rgba(201, 168, 76, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.42);
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.impulse-listen__btn[aria-pressed='true'] {
  background: linear-gradient(165deg, #fff9ee 0%, #efe2bc 48%, #d4b356 100%);
  border-color: var(--gold);
}

.impulse-listen__btn.is-loading {
  cursor: wait;
  opacity: 0.92;
}

.impulse-listen__btn.is-loading .impulse-listen__icon {
  animation: impulse-listen-pulse 0.85s ease-in-out infinite;
}

@keyframes impulse-listen-pulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.72;
  }

  50% {
    transform: scale(1.12);
    opacity: 1;
  }
}

.impulse-listen__shared-host {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.impulse-listen__icon {
  font-size: 1.05rem;
  line-height: 1;
  color: #8f6820;
}

.impulse-listen__host {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.impulse-listen__host iframe {
  width: 1px;
  height: 1px;
  border: 0;
}

@media (hover: hover) and (pointer: fine) {
  .impulse-listen__btn:hover,
  .impulse-listen__btn:focus-visible {
    background: linear-gradient(165deg, #fff9ee 0%, #f0dfa8 48%, #d4b356 100%);
    border-color: var(--gold);
    outline: none;
    transform: translateY(-1px);
    box-shadow:
      0 6px 16px rgba(201, 168, 76, 0.28),
      inset 0 1px 0 rgba(255, 255, 255, 0.5);
  }
}

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

  .impulse-listen__btn.is-loading .impulse-listen__icon {
    animation: none;
  }
}

.impulse-detail-image-wrap {
  margin-top: 1.5rem;
}

.impulse-detail-image-wrap img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius);
}

.sl-gebet-form-section {
  margin-bottom: 2.5rem;
}

.sl-gebet-form--steps {
  max-width: 28rem;
}

.sl-gebet-form__step {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.sl-gebet-form__step[hidden] {
  display: none !important;
}

.sl-gebet-form__lead {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
  line-height: 1.55;
  color: rgba(19, 39, 68, 0.78);
}

.sl-gebet-form__nav {
  position: relative;
  z-index: 960;
  display: flex;
  justify-content: flex-end;
  margin-top: 0.35rem;
  padding-right: calc(var(--float-btn-size, 3.625rem) + 1.75rem);
}

.sl-gebet-form__nav--split {
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.sl-gebet-form__step[data-gebet-step="2"] {
  animation: sl-gebet-step-in 0.35s ease;
}

.sl-gebet-form__step[data-gebet-step="2"] > label:has(textarea) + .public-form__check {
  margin-top: 0.55rem;
}

.sl-gebet-form__name-choice {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  margin: 0.15rem 0 0.15rem;
}

.sl-gebet-form__hint {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.45;
  color: #8a2b2b;
}

.sl-gebet-form__hint[hidden] {
  display: none !important;
}

@keyframes sl-gebet-step-in {
  from {
    opacity: 0;
    transform: translateY(0.35rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.sl-prayer-wall-public {
  margin-top: 1rem;
}

.sl-prayer-wall__archive[hidden] {
  display: none;
}

.sl-prayer-wall__more-cta {
  margin: 1.25rem 0 0;
  text-align: center;
}

.sl-prayer-wall__more-cta .btn-secondary {
  background: #fff;
  color: var(--deep-navy);
  border-color: rgba(19, 39, 68, 0.12);
  box-shadow: 0 4px 14px rgba(19, 39, 68, 0.08);
}

.sl-prayer-wall__more-cta .btn-secondary:hover,
.sl-prayer-wall__more-cta .btn-secondary:focus-visible {
  background: #fff;
  color: var(--deep-navy);
  border-color: rgba(201, 168, 76, 0.55);
  transform: translateY(-1px);
  box-shadow: 0 0 16px rgba(255, 255, 255, 0.65), 0 0 14px rgba(212, 175, 55, 0.22);
}

.sl-prayer-wall__more-cta[hidden] {
  display: none;
}

.sl-prayer-wall__list--public {
  list-style: none;
  margin: 1.25rem 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 640px) {
  .sl-prayer-wall__list--public {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .sl-prayer-wall__list--public {
    grid-template-columns: repeat(3, 1fr);
  }
}

.sl-buecher-intro {
  margin-bottom: 1rem;
}

.sl-buecher-disclaimer {
  font-size: 0.92rem;
  color: var(--text-body);
  padding: 1rem 1.15rem;
  border-radius: var(--radius);
  background: rgba(19, 39, 68, 0.04);
  border-left: 3px solid var(--gold);
  margin-bottom: 2rem;
  max-width: 42rem;
}

.sl-books-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-bottom: 3rem;
}

@media (min-width: 768px) {
  .sl-books-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1100px) {
  .sl-books-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.sl-book-card {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.08);
  overflow: hidden;
  box-shadow: var(--shadow-soft);
}

.sl-book-card__cover {
  aspect-ratio: 2 / 3;
  background: var(--midnight);
  display: flex;
  align-items: center;
  justify-content: center;
}

.sl-book-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sl-book-card__placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #1a2744, var(--midnight));
  color: rgba(201, 168, 76, 0.85);
  font-family: var(--font-serif);
  font-size: 4rem;
  font-weight: 700;
}

.sl-book-card__body {
  padding: 1.35rem 1.25rem 1.5rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.sl-book-card__title {
  font-family: var(--font-serif);
  font-size: 1.35rem;
  margin: 0 0 0.35rem;
  color: var(--deep-navy);
}

.sl-book-card__subtitle {
  font-size: 0.92rem;
  font-style: italic;
  color: var(--text-meta);
  margin: 0 0 0.75rem;
}

.sl-book-card__desc {
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-body);
  margin: 0 0 1.25rem;
  flex: 1;
}

.sl-book-card__cta {
  align-self: flex-start;
}

.sl-buecher-media,
.sl-buecher-youversion {
  margin-bottom: 2.5rem;
  max-width: 40rem;
}

.sl-buecher-placeholder {
  font-size: 0.92rem;
  color: var(--soft-gray);
}

/* Legacy Impuls-Liste (falls noch verwendet) */
.impulse-list__item {
  padding: 1rem 0;
  border-bottom: 1px solid rgba(19, 39, 68, 0.1);
}

.impulse-list__item a {
  font-family: var(--font-serif);
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--deep-navy);
  text-decoration: none;
}

.impulse-list__item a:hover {
  color: var(--gold);
}

.impulse-list__date {
  display: block;
  font-size: 0.82rem;
  color: var(--text-meta);
  margin-top: 0.25rem;
}

.impulse-list__teaser {
  margin-top: 0.5rem;
  color: var(--text-body);
}

/* -------------------------------------------------------------------------- */
/* 10. Mission & allgemeine Sektionen                                         */
/* -------------------------------------------------------------------------- */

.mission {
  display: grid;
  gap: 3rem;
  padding: 5rem 1.5rem;
  max-width: 1200px;
  margin: 0 auto;
  align-items: center;
}

@media (min-width: 1024px) {
  .mission {
    grid-template-columns: 1fr 1fr;
  }
}

.mission-visual {
  position: relative;
  display: flex;
  justify-content: center;
}

.mission-image {
  width: min(100%, 22rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--deep-navy), var(--royal-blue));
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid rgba(201, 168, 76, 0.4);
  box-shadow: var(--shadow-soft);
}

.mission-cross {
  font-size: 4rem;
  color: var(--gold-light);
  opacity: 0.9;
}

.mission-badge {
  position: absolute;
  bottom: 8%;
  right: 8%;
  width: 5.5rem;
  height: 5.5rem;
  border-radius: 50%;
  background: var(--gold);
  color: var(--midnight);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  box-shadow: 0 12px 32px rgba(201, 168, 76, 0.45);
}

.mission-badge .number {
  font-family: var(--font-serif);
  font-size: 1.75rem;
  line-height: 1;
}

.mission-badge .label {
  font-size: 0.65rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.mission-text .section-tag {
  margin-bottom: 0.75rem;
}

.mission-text h2 {
  font-size: clamp(1.85rem, 4vw, 2.75rem);
  margin-bottom: 1.25rem;
}

.mission-text h2 em {
  font-style: italic;
  color: var(--gold);
}

.mission-text p {
  margin-bottom: 1rem;
  color: var(--text-body);
  line-height: 1.75;
  max-width: 56ch;
}

.signature {
  margin-top: 1.5rem;
  font-family: var(--font-serif);
  font-style: italic;
  color: var(--gold);
  font-size: 1.15rem;
}

.section-tag {
  display: inline-block;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
}

/* -------------------------------------------------------------------------- */
/* 11. CTA-Karten (Offerings)                                                 */
/* -------------------------------------------------------------------------- */

.offerings {
  padding: 5rem 1.5rem;
  background: linear-gradient(180deg, var(--warm-white) 0%, var(--cream) 100%);
}

.offerings-header {
  text-align: center;
  max-width: 40rem;
  margin: 0 auto 3rem;
}

.offerings-header h2 {
  font-size: clamp(1.85rem, 4vw, 2.65rem);
  margin-top: 0.7rem;
  letter-spacing: -0.015em;
}

.offerings-header h2 em {
  font-style: italic;
  color: var(--gold);
}

.offerings-grid {
  display: grid;
  gap: 1.5rem;
  max-width: 1100px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .offerings-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.offering-card {
  position: relative;
  padding: 2.25rem 1.75rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 50%, #152a45 100%);
  border: 1px solid rgba(201, 168, 76, 0.22);
  overflow: hidden;
  transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.offering-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  opacity: 0.85;
}

.offering-icon {
  font-size: 2.25rem;
  margin-bottom: 1rem;
  filter: grayscale(0.2);
}

.offering-card h3 {
  font-size: 1.45rem;
  color: var(--cream);
  margin-bottom: 0.75rem;
}

.offering-card p {
  font-size: 0.98rem;
  line-height: 1.7;
  color: rgba(250, 246, 238, 0.78);
  margin-bottom: 1.25rem;
}

.offerings--cta-solid .offering-card p {
  color: #c5daf5;
}

.offering-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--gold-light);
  text-decoration: none;
  transition: color 0.2s, gap 0.2s, text-shadow 0.2s;
}

.offering-link:hover {
  color: var(--gold-glow);
  gap: 0.55rem;
  text-shadow: 0 0 16px rgba(201, 168, 76, 0.35);
}

/* -------------------------------------------------------------------------- */
/* 12. Buch-Karten                                                            */
/* -------------------------------------------------------------------------- */

.books {
  padding: 5rem 1.5rem;
  background: var(--warm-white);
}

.books-header {
  text-align: center;
  margin-bottom: 3rem;
}

.books-header h2 {
  font-size: clamp(1.85rem, 4vw, 2.65rem);
  margin-top: 0.75rem;
}

.books-header h2 em {
  font-style: italic;
  color: var(--gold);
}

.books-grid {
  display: grid;
  gap: 2.5rem;
  max-width: 1100px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .books-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .books-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.book-card {
  display: grid;
  gap: 1.25rem;
}

@media (min-width: 600px) {
  .book-card {
    grid-template-columns: 140px 1fr;
    align-items: start;
  }
}

.book-cover {
  position: relative;
  aspect-ratio: 3 / 4;
  border-radius: var(--radius);
  background: linear-gradient(145deg, var(--deep-navy), var(--royal-blue));
  border: 1px solid rgba(201, 168, 76, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.book-cover.has-image {
  padding: 0;
}

.book-cover.has-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.book-number {
  font-family: var(--font-serif);
  font-size: 2.5rem;
  font-weight: 700;
  color: rgba(250, 246, 238, 0.25);
}

.book-cover.has-image .book-number {
  position: absolute;
  bottom: 0.5rem;
  right: 0.65rem;
  font-size: 1.25rem;
  color: var(--cream);
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

.book-info h3 {
  font-size: 1.35rem;
  margin-bottom: 0.5rem;
}

.book-sub {
  font-size: 0.95rem;
  color: var(--soft-gray);
  margin-bottom: 0.5rem;
}

.book-info p {
  font-size: 0.95rem;
  color: var(--text-body);
  margin-bottom: 0.75rem;
}

.book-price {
  font-weight: 700;
  color: var(--gold);
}

.book-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.5rem;
  padding: 0.55rem 1.1rem;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--midnight);
  background: var(--gold);
  border-radius: 999px;
  box-shadow: 0 10px 26px rgba(201, 168, 76, 0.26);
  transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}

.book-cta:hover {
  background: var(--gold-light);
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(201, 168, 76, 0.36);
}

.book-cta-muted {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.85rem;
  color: var(--soft-gray);
}

.books-empty {
  grid-column: 1 / -1;
  text-align: center;
  padding: 2rem;
  color: var(--text-body);
  background: var(--cream);
  border-radius: var(--radius);
}

.text-center {
  text-align: center;
}

/* -------------------------------------------------------------------------- */
/* 13. Blog-Grid                                                              */
/* -------------------------------------------------------------------------- */

.blog-section {
  padding: 5rem 1.5rem;
  background: var(--cream);
}

.blog-inner {
  max-width: 1100px;
  margin: 0 auto;
}

.blog-header {
  text-align: center;
  margin-bottom: 2.5rem;
}

.blog-header h2 {
  font-size: clamp(1.85rem, 4vw, 2.65rem);
  margin-top: 0.75rem;
}

.blog-header h2 em {
  font-style: italic;
  color: var(--gold);
}

.blog-grid {
  display: grid;
  gap: 1.5rem;
}

@media (min-width: 768px) {
  .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .blog-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.blog-card {
  padding: 1.75rem;
  background: var(--warm-white);
  border-radius: var(--radius-lg);
  border: 1px solid rgba(19, 39, 68, 0.08);
}

.blog-cat {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

.blog-card h3 {
  font-size: 1.25rem;
  margin: 0.65rem 0 0.5rem;
}

.blog-card h3 a {
  text-decoration: none;
  color: var(--text-dark);
  transition: color 0.2s;
}

.blog-card h3 a:hover {
  color: var(--gold);
}

.blog-meta {
  font-size: 0.82rem;
  color: var(--text-meta);
  margin-bottom: 0.65rem;
}

.blog-excerpt {
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-body);
}

.blog-empty {
  text-align: center;
  padding: 2rem;
  color: var(--text-body);
}

/* -------------------------------------------------------------------------- */
/* 14. Podcast                                                                */
/* -------------------------------------------------------------------------- */

.podcast {
  padding: 5rem 1.5rem;
  background: linear-gradient(135deg, var(--midnight) 0%, var(--deep-navy) 55%, var(--royal-blue) 100%);
  color: rgba(250, 246, 238, 0.88);
}

/* Hermine: Podcast-Block weniger massiv (helles Editorial statt tiefblau) */
body.page-hermine .podcast {
  background:
    radial-gradient(60rem 40rem at 10% 15%, rgba(201, 168, 76, 0.14), transparent 60%),
    radial-gradient(50rem 35rem at 90% 70%, rgba(30, 58, 95, 0.08), transparent 55%),
    linear-gradient(180deg, var(--cream) 0%, var(--warm-white) 100%);
  color: var(--text-body);
  border-top: 1px solid rgba(19, 39, 68, 0.06);
  border-bottom: 1px solid rgba(19, 39, 68, 0.06);
}

body.page-hermine .podcast-text h2 {
  color: var(--text-dark);
}

body.page-hermine .podcast-text h2 em {
  color: var(--gold);
}

body.page-hermine .podcast-text > p {
  color: var(--text-body);
}

body.page-hermine .podcast-play {
  background: rgba(19, 39, 68, 0.03);
  border-color: rgba(201, 168, 76, 0.55);
}

body.page-hermine .podcast-episodes a {
  color: var(--deep-navy);
}

body.page-hermine .podcast-episodes a:hover {
  color: var(--gold);
}

.podcast-inner {
  max-width: 1000px;
  margin: 0 auto;
  display: grid;
  gap: 3rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .podcast-inner {
    grid-template-columns: 1fr 1.2fr;
  }
}

.podcast-visual {
  display: flex;
  justify-content: center;
}

.podcast-visual--embed {
  width: 100%;
  justify-content: stretch;
}

.podcast-embed-ratio {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid rgba(201, 168, 76, 0.35);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
  background: rgba(6, 16, 30, 0.5);
}

.podcast-embed-iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.podcast-all-link-wrap {
  margin: 0.5rem 0 0;
}

.podcast-play {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  background: rgba(250, 246, 238, 0.08);
  border: 2px solid rgba(201, 168, 76, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: transform 0.3s, border-color 0.3s, box-shadow 0.3s;
}

a.podcast-play:hover {
  transform: scale(1.06);
  border-color: var(--gold);
  box-shadow: 0 0 40px rgba(201, 168, 76, 0.25);
}

.play-icon {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 0 14px 22px;
  border-color: transparent transparent transparent var(--gold);
  margin-left: 6px;
}

.podcast-text h2 {
  font-size: clamp(1.75rem, 3.5vw, 2.35rem);
  color: var(--cream);
  margin: 0.75rem 0 1rem;
}

.podcast-text h2 em {
  font-style: italic;
  color: var(--gold-light);
}

.podcast-text > p {
  margin-bottom: 1rem;
  line-height: 1.65;
}

.podcast-latest-label {
  font-size: 0.65rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 700;
}

.podcast-latest-title {
  font-family: var(--font-serif);
  font-size: 1.25rem;
  color: var(--cream);
  margin-bottom: 0.75rem;
}

.podcast-features {
  display: grid;
  gap: 0.65rem;
  margin: 1.5rem 0;
}

.podcast-feature {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.92rem;
}

.podcast-feature .check {
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 50%;
  background: rgba(201, 168, 76, 0.2);
  color: var(--gold-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  font-weight: 800;
}

.podcast-episodes {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(201, 168, 76, 0.2);
}

.podcast-episodes li {
  margin-bottom: 0.6rem;
}

.podcast-episodes a {
  color: var(--gold-light);
  text-decoration: none;
  font-weight: 600;
}

.podcast-episodes a:hover {
  color: var(--gold-glow);
  text-decoration: underline;
}

.podcast-ep-meta {
  font-size: 0.8rem;
  color: rgba(250, 246, 238, 0.45);
  margin-left: 0.35rem;
}

/* -------------------------------------------------------------------------- */
/* 15. Gebetswand                                                             */
/* -------------------------------------------------------------------------- */

.sl-prayer-wall {
  margin-top: 2.5rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(19, 39, 68, 0.1);
}

.sl-prayer-wall__layout {
  display: grid;
  gap: 2.5rem;
}

@media (min-width: 1024px) {
  .sl-prayer-wall__layout {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
}

.sl-prayer-wall__form-title {
  font-family: var(--font-serif);
  font-size: 1.45rem;
  margin-bottom: 1rem;
  color: var(--text-dark);
}

.sl-prayer-wall__title {
  font-family: var(--font-serif);
  font-size: 1.45rem;
  margin-bottom: 0.5rem;
}

.sl-prayer-wall__hint {
  font-size: 0.92rem;
  color: var(--text-meta);
  margin-bottom: 1.25rem;
}

.sl-prayer-wall__list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.sl-prayer-card {
  padding: 1.25rem 1.35rem;
  border-radius: var(--radius);
  background: var(--cream);
  border: 1px solid rgba(201, 168, 76, 0.22);
  border-left: 4px solid var(--gold);
}

.sl-prayer-wall__list--public .sl-prayer-card {
  border-left: none;
  border-radius: var(--radius-lg);
  background: #fff;
  border: 1px solid rgba(19, 39, 68, 0.08);
  box-shadow: var(--shadow-soft);
  min-height: 10rem;
  display: flex;
  flex-direction: column;
}

.sl-prayer-card--sample {
  opacity: 0.92;
  border-style: dashed;
}

.sl-prayer-card__text {
  font-family: var(--font-serif);
  font-size: 1.08rem;
  font-style: italic;
  line-height: 1.55;
  color: var(--text-dark);
}

.sl-prayer-card__meta {
  display: block;
  margin-top: 0.75rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--soft-gray);
}

.sl-prayer-wall__list--public .sl-prayer-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 1rem;
  text-transform: none;
  letter-spacing: normal;
  font-weight: 400;
  font-size: 0.85rem;
}

.sl-prayer-wall__list--public .sl-prayer-card__author {
  font-weight: 700;
  color: var(--deep-navy);
}

.sl-prayer-wall__list--public .sl-prayer-card__date {
  color: var(--soft-gray);
}

.sl-prayer-amen-count {
  margin: 1rem 0 0;
  font-size: 0.84rem;
  line-height: 1.45;
  color: var(--deep-navy);
  font-weight: 500;
}

.sl-prayer-amen-count.is-empty {
  display: none;
}

.sl-prayer-card__footer {
  margin-top: auto;
  padding-top: 1.1rem;
  border-top: 1px solid rgba(201, 168, 76, 0.22);
}

.sl-prayer-wall__list--public .sl-prayer-card__meta {
  margin-top: 0.6rem;
  width: 100%;
}

.sl-prayer-card__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  width: 100%;
}

.sl-prayer-amen-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: 0.45rem 1.15rem;
  border: 1px solid rgba(201, 168, 76, 0.55);
  border-radius: 999px;
  background: linear-gradient(165deg, #f5ebd3 0%, #e8d5a0 52%, #c9a84c 100%);
  color: var(--deep-navy);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1;
  cursor: pointer;
  box-shadow:
    0 4px 14px rgba(201, 168, 76, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.45);
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.sl-prayer-amen-btn__icon {
  display: inline-flex;
  flex-shrink: 0;
}

.sl-prayer-amen-icon {
  width: 1.15rem;
  height: 1.15rem;
  display: block;
}

.sl-prayer-amen-btn__text {
  white-space: nowrap;
}

.sl-prayer-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  padding: 0;
  border: 1px solid rgba(19, 39, 68, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--soft-gray);
  font: inherit;
  line-height: 0;
  cursor: pointer;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.sl-prayer-share-icon {
  width: 0.95rem;
  height: 0.95rem;
  display: block;
}

.sl-prayer-amen-btn:hover,
.sl-prayer-amen-btn:focus-visible {
  background: linear-gradient(165deg, #fff9ee 0%, #f0dfa8 48%, #d4b356 100%);
  border-color: var(--gold);
  color: var(--deep-navy);
  outline: none;
  transform: translateY(-2px);
  box-shadow:
    0 8px 20px rgba(201, 168, 76, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.sl-prayer-share-btn:hover,
.sl-prayer-share-btn:focus-visible {
  background: #fff;
  border-color: rgba(201, 168, 76, 0.45);
  color: var(--deep-navy);
  outline: none;
  transform: translateY(-1px);
}

.sl-prayer-amen-btn.is-prayed,
.sl-prayer-amen-btn:disabled {
  background: rgba(19, 39, 68, 0.06);
  border-color: rgba(19, 39, 68, 0.12);
  color: var(--soft-gray);
  box-shadow: none;
  cursor: default;
  transform: none;
  text-transform: none;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.sl-prayer-amen-btn.is-prayed .sl-prayer-amen-icon {
  width: 1rem;
  height: 1rem;
}

/* Legacy icon-only hooks (andere Seiten) */
.sl-prayer-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.85rem;
  height: 1.85rem;
  padding: 0;
  border: 1px solid rgba(201, 168, 76, 0.38);
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.9);
  color: var(--gold);
  font: inherit;
  line-height: 0;
  cursor: pointer;
}

.sl-prayer-icon {
  width: 0.95rem;
  height: 0.95rem;
  display: block;
}

.sl-prayer-amen-btn.sl-prayer-icon-btn:hover,
.sl-prayer-amen-btn.sl-prayer-icon-btn:focus-visible,
.sl-prayer-share.sl-prayer-icon-btn:hover,
.sl-prayer-share.sl-prayer-icon-btn:focus-visible {
  background: #fff;
  border-color: var(--gold);
  color: #b8943f;
  outline: none;
  transform: translateY(-1px);
}

.sl-prayer-amen-btn.sl-prayer-icon-btn.is-prayed,
.sl-prayer-amen-btn.sl-prayer-icon-btn:disabled {
  background: rgba(19, 39, 68, 0.04);
  border-color: rgba(19, 39, 68, 0.1);
  color: var(--soft-gray);
  cursor: default;
  transform: none;
}

/* -------------------------------------------------------------------------- */
/* 16. Newsletter                                                             */
/* -------------------------------------------------------------------------- */

.newsletter {
  padding: 5rem 1.5rem;
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 100%);
  text-align: center;
}

.newsletter-inner {
  max-width: 36rem;
  margin: 0 auto;
}

.newsletter .section-tag {
  color: var(--gold-light);
}

.newsletter h2 {
  font-size: clamp(1.75rem, 4vw, 2.35rem);
  color: var(--cream);
  margin: 0.75rem 0 1rem;
}

.newsletter h2 em {
  font-style: italic;
  color: var(--gold);
}

.newsletter p {
  color: rgba(250, 246, 238, 0.78);
  margin-bottom: 1.75rem;
}

.newsletter-form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
}

.newsletter-form__consent {
  flex: 1 1 100%;
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin: 0;
  text-align: left;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(250, 246, 238, 0.82);
  cursor: pointer;
}

.newsletter-form__consent input {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  margin: 0.25rem 0 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.newsletter-form__consent a {
  color: var(--gold-light);
  text-decoration: underline;
}

.newsletter-form input {
  flex: 1 1 14rem;
  min-width: 0;
  padding: 0.85rem 1.1rem;
  border: 1px solid rgba(250, 246, 238, 0.2);
  border-radius: 999px;
  background: rgba(250, 246, 238, 0.06);
  color: var(--cream);
}

.newsletter-form input::placeholder {
  color: rgba(250, 246, 238, 0.35);
}

.newsletter-form input:focus {
  border-color: var(--gold);
  outline: none;
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.2);
}

.newsletter-form button {
  padding: 0.85rem 1.75rem;
  border: none;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.76rem;
  cursor: pointer;
  background: var(--gold);
  color: var(--midnight);
  box-shadow: 0 10px 24px rgba(201, 168, 76, 0.24);
  transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}

.newsletter-form button:hover {
  background: var(--gold-light);
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(201, 168, 76, 0.34);
}

.newsletter-msg {
  margin-top: 1.25rem;
  font-size: 0.9rem;
  color: rgba(250, 246, 238, 0.7);
  min-height: 1.5em;
}

.newsletter-banner {
  max-width: 56rem;
  margin: 0 auto;
  padding: 0.75rem 1.25rem;
  text-align: center;
  font-size: 0.9rem;
  border-radius: var(--radius);
}

.newsletter-banner--ok {
  color: rgba(250, 246, 238, 0.95);
  background: rgba(201, 168, 76, 0.15);
  border: 1px solid rgba(201, 168, 76, 0.35);
}

.newsletter-banner--err {
  color: rgba(255, 220, 220, 0.95);
  background: rgba(160, 50, 50, 0.2);
  border: 1px solid rgba(255, 120, 120, 0.35);
}

.muted {
  opacity: 0.75;
}

/* -------------------------------------------------------------------------- */
/* 17. Footer (4 Spalten)                                                     */
/* -------------------------------------------------------------------------- */

footer {
  background: var(--cream);
  border-top: 1px solid rgba(201, 168, 76, 0.2);
  padding: 4rem 1.5rem 2rem;
}

.footer-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  gap: 2.5rem;
  overflow: visible;
}

@media (min-width: 768px) {
  .footer-inner {
    grid-template-columns: 1.4fr repeat(3, 1fr);
    grid-template-rows: auto auto;
    column-gap: 2rem;
    row-gap: 5.5rem;
    align-items: start;
  }

  .footer-brand {
    grid-row: span 2;
  }

  .footer-col {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
  }
}

.footer-col__section + .footer-col__section {
  margin-top: 3.65rem;
}

@media (min-width: 768px) {
  .footer-col__section + .footer-col__section {
    margin-top: 0;
    padding-top: 0.65rem;
  }
}

.footer-col h4 {
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  margin-bottom: 0.65rem;
}

.footer-col h4:nth-of-type(2) {
  margin-top: 0;
}

.footer-brand {
  overflow: visible;
  min-width: 0;
}

.footer-brand .nav-logo {
  color: var(--deep-navy);
  margin-bottom: 0.35rem;
  display: inline-block;
  white-space: nowrap;
  overflow: visible;
  max-width: none;
}

body.is-inner footer .footer-brand .nav-logo {
  color: var(--deep-navy);
}

.footer-brand .nav-logo span {
  color: var(--gold);
}

.footer-brand p {
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--text-body);
  max-width: 22rem;
}

.footer-brand p.footer-claim {
  max-width: none;
  line-height: 1.4;
  margin: 0;
  margin-top: 0;
}

.footer-claim__line {
  display: block;
}

.footer-col a {
  display: block;
  font-size: 0.92rem;
  color: var(--text-body);
  text-decoration: none;
  margin-bottom: 0.3rem;
  transition: color 0.2s;
}

.footer-col a:last-child {
  margin-bottom: 0;
}

.footer-col a:hover {
  color: var(--gold);
}

.footer-bottom {
  max-width: 1100px;
  margin: 3rem auto 0;
  padding-top: 2rem;
  border-top: 1px solid rgba(19, 39, 68, 0.1);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.footer-bottom p {
  font-size: 0.85rem;
  color: var(--text-meta);
}

.footer-social {
  display: flex;
  gap: 0.65rem;
}

.footer-social a {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 800;
  text-decoration: none;
  color: var(--deep-navy);
  border: 1px solid rgba(201, 168, 76, 0.35);
  background: var(--warm-white);
  transition: border-color 0.2s, color 0.2s, background 0.2s;
}

.footer-social a:hover {
  border-color: var(--gold);
  color: var(--gold);
  background: rgba(201, 168, 76, 0.08);
}

/* -------------------------------------------------------------------------- */
/* 18. Buttons                                                                */
/* -------------------------------------------------------------------------- */

.btn-primary,
.btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.85rem 1.65rem;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.095em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 999px;
  cursor: pointer;
  border: 2px solid transparent;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease, transform 0.28s ease, box-shadow 0.28s ease;
}

.btn-compact {
  padding: 0.62rem 1.1rem;
  min-height: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.btn-primary {
  background: linear-gradient(180deg, #e2c274 0%, #d4af37 52%, #c9a050 100%);
  color: var(--midnight);
  box-shadow: 0 8px 22px rgba(201, 168, 76, 0.18);
}

.btn-primary:focus-visible {
  outline: 2px solid var(--deep-navy);
  outline-offset: 3px;
}

.btn-secondary {
  background: transparent;
  color: var(--cream);
  border-color: rgba(250, 246, 238, 0.45);
}

body.is-inner .btn-secondary {
  background: #fff;
  color: var(--deep-navy);
  border-color: rgba(19, 39, 68, 0.16);
  box-shadow: 0 4px 14px rgba(19, 39, 68, 0.04);
}

@media (hover: hover) and (pointer: fine) {
  .btn-primary:hover,
  .btn-primary:focus-visible {
    background: linear-gradient(180deg, #ebd591 0%, #dfc07a 52%, #d4af37 100%);
    transform: translateY(-1px);
    box-shadow: 0 0 18px rgba(212, 175, 55, 0.38), 0 10px 26px rgba(201, 168, 76, 0.22);
  }

  .btn-secondary:hover,
  .btn-secondary:focus-visible {
    border-color: var(--gold);
    color: var(--gold-light);
    transform: translateY(-1px);
    box-shadow: 0 0 14px rgba(201, 168, 76, 0.24), 0 8px 20px rgba(6, 16, 30, 0.16);
  }

  body.is-inner .btn-secondary:hover,
  body.is-inner .btn-secondary:focus-visible {
    background: #fff;
    border-color: rgba(184, 152, 79, 0.55);
    color: var(--deep-navy);
    box-shadow: 0 0 16px rgba(255, 255, 255, 0.65), 0 0 14px rgba(212, 175, 55, 0.22);
  }
}

/* -------------------------------------------------------------------------- */
/* 19. Reveal (Scroll)                                                        */
/* -------------------------------------------------------------------------- */

.reveal {
  opacity: 1;
  transform: none;
  transition: none;
}

.reveal.visible {
  opacity: 1;
  transform: none;
}

html.gottlebt-js .reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

html.gottlebt-js .reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .reveal,
  html.gottlebt-js .reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Impulse-Karten-Akkordeon (optional, Klasse .impulse-card) */
.impulse-card {
  border-radius: var(--radius, 10px);
  overflow: hidden;
  border: 1px solid rgba(19, 39, 68, 0.1);
  background: var(--cream);
}

.impulse-card-header {
  cursor: pointer;
  padding: 1rem 1.15rem;
  font-weight: 600;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  transition: background 0.25s ease;
}

.impulse-card-header:hover {
  background: rgba(201, 168, 76, 0.08);
}

.impulse-card-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.45s ease;
}

.impulse-card.open .impulse-card-body {
  max-height: 2000px;
}

.impulse-card-body-inner {
  padding: 0 1.15rem 1.15rem;
  border-top: 1px solid rgba(19, 39, 68, 0.06);
}

/* URL-/Formular-Toasts (main.js) */
.js-url-flash-toast {
  position: fixed;
  bottom: 1.25rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9998;
  max-width: min(36rem, 92vw);
  margin: 0;
  box-shadow: 0 12px 40px rgba(10, 22, 40, 0.2);
  transition: opacity 0.35s ease;
}

.js-flash-hiding {
  opacity: 0 !important;
}

/* -------------------------------------------------------------------------- */
/* 20. Innenseiten & Artikel                                                  */
/* -------------------------------------------------------------------------- */

.page-main {
  padding-top: calc(var(--nav-h) + 2.25rem);
  padding-bottom: var(--page-bottom);
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

/* Phase E: Footer-Abstand nur wo .page-main ihn steuert (kein Doppelabstand) */
.page-mission #main-content,
.page-spenden #main-content,
.page-flatrate #main-content,
.page-geschenk #main-content,
.page-bibelprojekt-main,
.page-hermine #main-content,
.page-buecher #main-content,
.page-lebenslieder #main-content,
.page-main.podcast-hub {
  padding-bottom: 0;
}

.article-page .article-shell,
.content-wrapper {
  max-width: 44rem;
  margin-left: auto;
  margin-right: auto;
}

.article-page .article-shell.prose.article-prose,
.page-main .content-wrapper.prose.article-prose {
  text-align: left;
}

/* Podcast-Hub (/podcast-mit-herz) */
.page-main.podcast-hub {
  padding-top: calc(var(--nav-h) + clamp(2rem, 4.5vw, 3.25rem));
}

.podcast-hub {
  background: linear-gradient(180deg, var(--warm-white) 0%, #faf6ee 48%, var(--cream) 100%);
  padding-bottom: clamp(4rem, 8vw, 6rem);
}

.podcast-hub__inner {
  max-width: min(100%, 72rem);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
}

.podcast-hub__header {
  text-align: center;
  max-width: 44rem;
  margin: 0 auto clamp(2.5rem, 5.5vw, 3.5rem);
}

.podcast-hub__header .page-title-dual--inner:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.podcast-hub__header .home-section-ornament {
  margin-bottom: clamp(1.35rem, 3vw, 1.75rem);
}

.podcast-hub__subtitle {
  margin: 0 0 clamp(0.85rem, 1.8vw, 1.05rem);
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.78;
  color: var(--text-body);
}

.podcast-hub__intro {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.78;
  color: var(--text-body);
  text-wrap: pretty;
  background: none;
}

.podcast-hub__player {
  margin-bottom: clamp(2.5rem, 5.5vw, 3.5rem);
}

.podcast-hub__player-panel {
  max-width: min(100%, 68rem);
  margin: 0 auto;
  padding: clamp(1.35rem, 3vw, 1.85rem) clamp(1.25rem, 3.2vw, 1.75rem) clamp(1.25rem, 3vw, 1.65rem);
  border-radius: 1.15rem;
  background: #0f1f36;
  border: 1px solid rgba(201, 160, 80, 0.38);
  box-shadow: 0 20px 48px rgba(15, 31, 54, 0.22);
}

.podcast-hub__player-head {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.55rem 0.75rem;
  margin-bottom: clamp(1rem, 2.4vw, 1.35rem);
  padding-bottom: clamp(0.85rem, 2vw, 1.1rem);
  border-bottom: 1px solid rgba(201, 160, 80, 0.16);
}

.podcast-hub__player-head-sep {
  flex: 0 0 auto;
  width: 1px;
  height: 0.95rem;
  background: rgba(201, 160, 80, 0.38);
}

.player-head-music-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(2rem, 4.2vw, 2.4rem);
  height: clamp(2rem, 4.2vw, 2.4rem);
  border-radius: 50%;
  background:
    radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.14) 0%, transparent 58%),
    linear-gradient(145deg, rgba(212, 175, 55, 0.24) 0%, rgba(201, 160, 80, 0.07) 100%);
  border: 1px solid rgba(232, 213, 160, 0.42);
  box-shadow:
    0 0 0 1px rgba(201, 160, 80, 0.08),
    0 6px 18px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
  color: #e8d5a0;
}

.player-head-music-icon svg {
  display: block;
  width: 58%;
  height: 58%;
}

.home-lobpreis__playlist-icon.player-head-music-icon,
.podcast-hub__player-icon.player-head-music-icon {
  width: clamp(2rem, 4.2vw, 2.4rem);
  height: clamp(2rem, 4.2vw, 2.4rem);
}

.podcast-hub__player-label,
.podcast-hub__player-series {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.58rem, 1.2vw, 0.68rem);
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #d4af37;
}

.podcast-hub__player-series {
  letter-spacing: 0.12em;
  text-transform: none;
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.9vw, 1.12rem);
  font-weight: 600;
  font-style: italic;
  line-height: 1.35;
  color: rgba(250, 246, 238, 0.96);
  text-wrap: balance;
}

.podcast-hub__embed-stage {
  position: relative;
  transition: opacity 0.22s ease;
}

.podcast-hub__embed-stage.is-fading {
  opacity: 0.55;
}

.podcast-hub__embed-loading {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border-radius: 0.75rem;
  background: rgba(15, 31, 54, 0.9);
  color: rgba(250, 246, 238, 0.96);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.podcast-hub__embed-stage.is-loading .podcast-hub__embed-loading {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.podcast-hub__embed-loading-spinner {
  width: 2.1rem;
  height: 2.1rem;
  border: 2px solid rgba(201, 160, 80, 0.28);
  border-top-color: #d4af37;
  border-radius: 50%;
  animation: podcastHubSpin 0.85s linear infinite;
}

.podcast-hub__embed-loading-text {
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(232, 213, 160, 0.96);
}

@keyframes podcastHubSpin {
  to {
    transform: rotate(360deg);
  }
}

.podcast-hub__embed {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 0.75rem;
  background: rgba(0, 0, 0, 0.28);
  aspect-ratio: 16 / 9;
  min-height: clamp(14rem, 42vw, 22rem);
  container-type: size;
}

.podcast-hub__iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.podcast-hub__empty {
  margin: 0;
  padding: 2rem 1.25rem;
  text-align: center;
  border-radius: 1rem;
  background: rgba(201, 168, 76, 0.08);
  border: 1px solid rgba(201, 168, 76, 0.22);
  color: var(--text-body);
}

.podcast-hub__series-heading {
  margin: 0 0 clamp(1.35rem, 3vw, 1.85rem);
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  text-align: center;
  color: #a67f2e;
}

.podcast-hub__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.85rem, 2vw, 1.25rem);
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: visible;
}

.podcast-hub__grid-item {
  position: relative;
  overflow: visible;
}

@media (min-width: 640px) {
  .podcast-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .podcast-hub__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1rem, 2.2vw, 1.35rem);
  }
}

.podcast-hub__tile-wrap {
  position: relative;
}

.podcast-hub__tile {
  position: relative;
  display: block;
  width: 100%;
  padding: 0.28rem;
  border: 1px solid rgba(201, 168, 76, 0.18);
  border-radius: 1.35rem;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 10px 28px rgba(15, 31, 54, 0.06);
  text-align: left;
  cursor: pointer;
  font: inherit;
  color: inherit;
  appearance: none;
  -webkit-appearance: none;
  transition:
    transform 0.28s ease,
    box-shadow 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.podcast-hub__series.reveal:not(.visible) .podcast-hub__tile,
html.gottlebt-js .podcast-hub__series.reveal.visible .podcast-hub__tile {
  opacity: 1;
  transform: none;
  animation: none;
}

html:not(.gottlebt-js) .podcast-hub__tile {
  opacity: 1;
  transform: none;
}

.podcast-hub__tile-cover-wrap {
  display: block;
  overflow: hidden;
  border-radius: 1.05rem;
  aspect-ratio: 1 / 1;
  background: linear-gradient(165deg, #132744 0%, #0f1f36 100%);
}

.podcast-hub__tile-play {
  position: absolute;
  inset: 0.28rem;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 1.05rem;
  background: rgba(15, 31, 54, 0.42);
  color: #fff;
  opacity: 0.78;
  pointer-events: none;
  transition: opacity 0.22s ease, background 0.22s ease;
}

.podcast-hub__tile-play svg {
  display: block;
  width: clamp(2rem, 28%, 2.65rem);
  height: clamp(2rem, 28%, 2.65rem);
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.35));
}

.podcast-hub__tile-wrap:hover .podcast-hub__tile-play,
.podcast-hub__tile-wrap:focus-within .podcast-hub__tile-play,
.podcast-hub__tile.is-active .podcast-hub__tile-play {
  opacity: 1;
  background: rgba(15, 31, 54, 0.56);
}

.podcast-hub__tile:hover,
.podcast-hub__tile:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(201, 168, 76, 0.42);
  box-shadow: 0 14px 32px rgba(15, 31, 54, 0.1);
  outline: none;
}

.podcast-hub__tile:focus-visible {
  box-shadow:
    0 14px 32px rgba(15, 31, 54, 0.1),
    0 0 0 2px rgba(201, 168, 76, 0.55);
}

.podcast-hub__tile-cover {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.podcast-hub__tile-wrap:hover .podcast-hub__tile-cover,
.podcast-hub__tile-wrap:focus-within .podcast-hub__tile-cover {
  transform: scale(1.03);
}

.podcast-hub__tile-cover--fallback {
  background: linear-gradient(165deg, rgba(201, 168, 76, 0.28) 0%, rgba(15, 31, 54, 0.92) 100%);
}

.podcast-hub__tile.is-active {
  border-color: rgba(201, 168, 76, 0.72);
  background: rgba(255, 255, 255, 0.92);
  box-shadow:
    0 14px 34px rgba(15, 31, 54, 0.1),
    inset 0 0 0 1px rgba(201, 168, 76, 0.22);
}

.podcast-hub__tile-popover {
  position: absolute;
  left: 50%;
  top: calc(100% + 0.55rem);
  z-index: 20;
  width: max-content;
  max-width: min(26rem, calc(100vw - 2.5rem));
  transform: translateX(-50%) translateY(6px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.podcast-hub__tile-popover-card {
  padding: 0.85rem 1rem;
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 0.85rem;
  background: #fff;
  box-shadow:
    0 14px 36px rgba(15, 31, 54, 0.14),
    0 4px 12px rgba(15, 31, 54, 0.06);
}

.podcast-hub__tile-popover-title {
  margin: 0 0 0.35rem;
  font-family: var(--font-serif);
  font-size: clamp(0.88rem, 2.1vw, 1rem);
  line-height: 1.32;
  font-weight: 600;
  color: var(--deep-navy);
}

.podcast-hub__tile-popover-meta {
  margin: 0 0 0.45rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #a67f2e;
}

.podcast-hub__tile-popover-body {
  font-size: clamp(0.78rem, 1.9vw, 0.86rem);
  line-height: 1.55;
  color: var(--text-body);
}

.podcast-hub__series {
  overflow: visible;
}

.page-podcast-mit-herz .podcast-hub__youversion {
  padding: clamp(2rem, 4.5vw, 3rem) var(--verein-section-x) clamp(2.5rem, 5vw, 3.5rem);
  background: rgba(250, 246, 238, 0.65);
  border-top: var(--verein-section-divider);
}

.page-podcast-mit-herz .podcast-hub__youversion-inner {
  max-width: 40rem;
  margin: 0 auto;
}

.page-podcast-mit-herz .podcast-hub__teaser {
  padding: clamp(1.15rem, 2.5vw, 1.45rem);
  border-radius: var(--radius);
  background: rgba(255, 252, 245, 0.92);
  border: 1px solid rgba(201, 168, 76, 0.18);
}

.page-podcast-mit-herz .podcast-hub__teaser-title {
  margin: 0 0 0.45rem;
  font-family: var(--font-serif);
  font-size: clamp(1.15rem, 2vw, 1.28rem);
  color: var(--deep-navy);
}

.page-podcast-mit-herz .podcast-hub__teaser-text {
  margin: 0 0 0.85rem;
  font-size: 0.94rem;
  line-height: 1.6;
  color: rgba(15, 31, 54, 0.78);
}

.page-podcast-mit-herz .podcast-hub__teaser-btn {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.78rem;
}

@media (hover: hover) and (pointer: fine) {
  .podcast-hub__tile-wrap:hover .podcast-hub__tile-popover,
  .podcast-hub__tile-wrap:focus-within .podcast-hub__tile-popover {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
  }

  .podcast-hub__grid-item:has(.podcast-hub__tile-wrap:hover),
  .podcast-hub__grid-item:has(.podcast-hub__tile-wrap:focus-within) {
    z-index: 15;
  }
}

@media (hover: none) {
  .podcast-hub__tile-popover {
    position: static;
    width: 100%;
    max-width: none;
    margin-top: 0.55rem;
    transform: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .podcast-hub__tile-popover-card {
    padding: 0.65rem 0.75rem;
    box-shadow: none;
    border-color: rgba(201, 168, 76, 0.18);
    background: rgba(255, 255, 255, 0.88);
  }

  .podcast-hub__tile-popover-body {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }
}

@media (prefers-reduced-motion: reduce) {
  .podcast-hub__embed-stage,
  .podcast-hub__tile,
  .podcast-hub__tile-cover,
  .podcast-hub__embed-loading-spinner {
    transition: none;
    animation: none;
    opacity: 1;
    transform: none;
  }
}

/* Podcast mit Herz Ã¢â‚¬â€œ Feinschliff (nur .page-podcast-mit-herz) */
.page-podcast-mit-herz .podcast-hub__listen-zone {
  max-width: min(100%, 52rem);
  margin: 0 auto clamp(1.75rem, 3.5vw, 2.35rem);
  padding: clamp(0.95rem, 2.2vw, 1.35rem);
  border-radius: 1.2rem;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(250, 246, 238, 0.9) 100%);
  border: 1px solid rgba(201, 168, 76, 0.3);
  box-shadow:
    0 22px 52px rgba(15, 31, 54, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.page-podcast-mit-herz .podcast-hub__listen-zone .podcast-hub__player {
  margin-bottom: clamp(0.85rem, 2vw, 1.25rem);
}

.page-podcast-mit-herz .podcast-hub__listen-zone .podcast-hub__player-panel {
  max-width: min(100%, 38rem);
  margin-inline: auto;
  padding: clamp(0.95rem, 2vw, 1.25rem) clamp(0.95rem, 2.2vw, 1.35rem) clamp(0.85rem, 1.8vw, 1.05rem);
}

.page-podcast-mit-herz .podcast-hub__listen-zone .podcast-hub__player-head {
  margin-bottom: clamp(0.65rem, 1.5vw, 0.85rem);
  padding-bottom: clamp(0.55rem, 1.2vw, 0.75rem);
}

.page-podcast-mit-herz .podcast-hub__listen-zone .podcast-hub__embed {
  min-height: 0;
  max-width: 34rem;
  margin-inline: auto;
  aspect-ratio: 16 / 9;
  border-radius: 0.65rem;
}

.page-podcast-mit-herz .podcast-hub__listen-zone .podcast-hub__series-heading {
  margin-bottom: clamp(1rem, 2.4vw, 1.35rem);
  padding-top: clamp(0.45rem, 1.1vw, 0.7rem);
  border-top: 1px solid rgba(201, 168, 76, 0.2);
}

/* Kritische Serien-Karussell-Basics in theme.css (FOUC/Ruckler ohne podcast-series.css) */
.page-podcast-mit-herz .podcast-hub__series {
  --podcast-series-gap: clamp(0.65rem, 1.6vw, 1rem);
}

.page-podcast-mit-herz .podcast-hub__series-board {
  max-width: 100%;
  overflow-x: hidden;
}

.page-podcast-mit-herz .podcast-hub__listen-zone {
  overflow-x: hidden;
}

.page-podcast-mit-herz .podcast-hub__series-slider {
  position: relative;
  padding: 0 clamp(2.15rem, 3.5vw, 2.65rem);
  max-width: 100%;
}

.page-podcast-mit-herz .podcast-hub__series-viewport {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.page-podcast-mit-herz .podcast-hub__series-viewport::-webkit-scrollbar {
  display: none;
}

#feedback-stimmen-carousel {
  overflow-y: hidden !important;
  scrollbar-width: none;
}

#feedback-stimmen-carousel::-webkit-scrollbar {
  display: none;
}

.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-viewport {
  overflow-y: hidden;
}

/* Feedback-Karussell: gleiche Karten wie auf der Spendenseite */
.page-podcast-mit-herz .feedback-stimmen-hub {
  --podcast-series-gap: clamp(1.1rem, 2.6vw, 1.65rem);
  width: min(62rem, calc(100vw - 2rem));
  max-width: min(62rem, calc(100vw - 2rem));
  margin-inline: calc(50% - min(31rem, calc(50vw - 1rem)));
}

.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-board,
.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-slider {
  overflow: hidden;
}

.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-viewport,
#feedback-stimmen-carousel {
  overflow-y: hidden !important;
}

.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-filters {
  justify-content: center;
}

.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-slider {
  padding-top: 0.65rem;
}

.page-podcast-mit-herz .feedback-stimmen-hub .podcast-hub__series-item {
  scroll-snap-align: center;
  align-self: stretch;
}

.page-podcast-mit-herz button.spenden-hearts__readmore,
.page-spenden button.spenden-hearts__readmore {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  margin: 0 0 0 auto;
}

.page-podcast-mit-herz .spenden-hearts__readmore,
.page-spenden .spenden-hearts__readmore {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 0 auto;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(15, 31, 54, 0.88);
  text-decoration: none;
}

.page-podcast-mit-herz .spenden-hearts__dialog-root,
.page-spenden .spenden-hearts__dialog-root {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1rem, 3vw, 1.75rem);
}

.page-podcast-mit-herz .spenden-hearts__dialog-root[hidden],
.page-spenden .spenden-hearts__dialog-root[hidden] {
  display: none !important;
}

.page-podcast-mit-herz .spenden-hearts__dialog-root.is-open,
.page-spenden .spenden-hearts__dialog-root.is-open {
  display: flex;
}

.page-podcast-mit-herz .spenden-hearts__dialog-backdrop,
.page-spenden .spenden-hearts__dialog-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 22, 40, 0.58);
  backdrop-filter: blur(3px);
}

.page-podcast-mit-herz .spenden-hearts__dialog,
.page-spenden .spenden-hearts__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 36rem);
  max-height: min(88vh, 40rem);
  overflow: auto;
  padding: clamp(1.35rem, 3vw, 1.75rem) clamp(1.25rem, 2.8vw, 1.65rem);
  border-radius: calc(var(--radius-lg) + 0.1rem);
  background: linear-gradient(160deg, rgba(255, 252, 245, 0.99) 0%, rgba(250, 246, 238, 0.97) 100%);
  border: 1px solid rgba(201, 168, 76, 0.32);
  box-shadow: 0 24px 60px rgba(10, 22, 40, 0.28);
}

.page-podcast-mit-herz .spenden-hearts__dialog-close,
.page-spenden .spenden-hearts__dialog-close {
  position: absolute;
  top: 0.65rem;
  right: 0.65rem;
  width: 2.25rem;
  height: 2.25rem;
  min-width: 44px;
  min-height: 44px;
  border: none;
  border-radius: 50%;
  background: rgba(19, 39, 68, 0.06);
  color: var(--deep-navy);
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
}

.page-podcast-mit-herz .spenden-hearts__dialog-text,
.page-spenden .spenden-hearts__dialog-text {
  margin: 0;
  padding-top: 0.35rem;
  font-size: 1rem;
  line-height: 1.72;
  color: rgba(19, 39, 68, 0.9);
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: anywhere;
}

.page-podcast-mit-herz .podcast-hub__series-track {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--podcast-series-gap);
  margin: 0;
  padding: 0.15rem 0 0.35rem;
  list-style: none;
  width: max-content;
}

.page-podcast-mit-herz .podcast-hub__series-item {
  flex: 0 0 var(--podcast-series-slide-width, 8.75rem);
  width: var(--podcast-series-slide-width, 8.75rem);
  min-width: 0;
  scroll-snap-align: start;
}

.page-podcast-mit-herz .podcast-hub__series-item.is-filtered-out {
  display: none;
}

.page-podcast-mit-herz .podcast-hub__grid {
  gap: clamp(0.95rem, 2.3vw, 1.35rem);
  max-width: 56rem;
  margin-inline: auto;
}

@media (min-width: 640px) {
  .page-podcast-mit-herz .podcast-hub__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .page-podcast-mit-herz .podcast-hub__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1.05rem, 2.1vw, 1.4rem);
  }
}

.page-podcast-mit-herz .podcast-hub__tile {
  padding: 0.32rem;
  border-radius: 1.22rem;
}

.page-podcast-mit-herz .podcast-hub__tile.is-active {
  border-color: rgba(201, 160, 80, 0.88);
  background: linear-gradient(165deg, #fff 0%, #fdf8ee 100%);
  box-shadow:
    0 0 0 2px rgba(212, 175, 55, 0.42),
    0 18px 38px rgba(15, 31, 54, 0.12),
    inset 0 0 0 1px rgba(232, 213, 160, 0.5);
  transform: translateY(-1px);
}

.podcast-hub__tile-now {
  position: absolute;
  top: 0.48rem;
  left: 0.48rem;
  z-index: 3;
  display: none;
  align-items: center;
  justify-content: center;
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 0.42rem;
  color: #0f1f36;
  background: rgba(232, 213, 160, 0.96);
  box-shadow:
    0 0 0 2px rgba(212, 175, 55, 0.28),
    0 2px 8px rgba(15, 31, 54, 0.22);
}

.podcast-hub__tile-now svg {
  display: block;
  width: 0.82rem;
  height: 0.82rem;
}

.podcast-hub__tile.is-active .podcast-hub__tile-now {
  display: flex;
}

.page-podcast-mit-herz .podcast-hub__tile.is-active .podcast-hub__tile-cover-wrap {
  box-shadow: inset 0 0 0 2px rgba(201, 160, 80, 0.62);
}

.page-podcast-mit-herz .podcast-hub__tile.is-active .podcast-hub__tile-play {
  background: rgba(15, 31, 54, 0.62);
}

.page-podcast-mit-herz .podcast-hub__tile-popover-card {
  border-color: rgba(201, 168, 76, 0.34);
}

.public-section + .public-section {
  margin-top: 0;
}

.sl-spenden-rich__block,
.sl-flatrate-rich__block,
.sl-geschenk-rich__block,
.mission-rich__chunk {
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.sl-spenden-rich__block:hover,
.sl-flatrate-rich__block:hover,
.sl-geschenk-rich__block:hover,
.mission-rich__chunk:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(19, 39, 68, 0.08);
}

.blog-inner.content-wrapper {
  max-width: 48rem;
}

.article-shell--detail {
  max-width: 46rem;
}

.article-header-block {
  margin-bottom: var(--space-4);
}

.article-kicker {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  margin-bottom: 0.5rem;
}

.article-title {
  font-size: clamp(1.85rem, 4vw, 2.65rem);
  margin-bottom: 0.75rem;
}

.sl-page-intro__subtitle {
  font-size: 1.15rem;
  line-height: 1.55;
  color: var(--text-body);
  margin: 0 0 var(--space-4);
  font-family: var(--font-serif);
  font-style: italic;
}

.public-section__body {
  white-space: pre-wrap;
}

.article-meta,
.article-meta-bar {
  font-size: 0.88rem;
  color: var(--text-meta);
}

.article-lead {
  font-size: 1.12rem;
  line-height: 1.65;
  color: var(--text-body);
  margin-bottom: var(--space-4);
  font-style: italic;
  font-family: var(--font-serif);
}

.article-body.prose,
.article-prose {
  font-size: 1.05rem;
  line-height: 1.75;
  color: var(--text-body);
}

.article-prose h2 {
  font-size: 1.55rem;
  margin: 2rem 0 0.75rem;
}

.article-prose h3 {
  font-size: 1.25rem;
  margin: 1.5rem 0 0.5rem;
}

.article-prose p {
  margin-bottom: 1rem;
}

.article-prose a {
  color: var(--royal-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.article-prose a.btn-primary,
.article-prose a.btn-secondary {
  text-decoration: none;
}

.article-prose a:hover {
  color: var(--gold);
}

.article-prose a.btn-primary:hover,
.article-prose a.btn-secondary:hover {
  color: inherit;
}

.article-prose ol {
  margin: 1rem 0 1rem 1.25rem;
  padding-left: 1rem;
  list-style: decimal;
}

.article-prose ul:not(.podcast-episodes):not(.rich-text-blocks__list) {
  margin: 1rem 0 1rem 0;
  padding-left: 0;
  list-style: none;
}

.article-prose ul:not(.podcast-episodes):not(.rich-text-blocks__list) li {
  position: relative;
  margin: 0.45rem 0;
  padding-left: 1.65rem;
}

.article-prose ul:not(.podcast-episodes):not(.rich-text-blocks__list) li::before {
  content: '';
  position: absolute;
  left: 0.2rem;
  top: 0.55em;
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(var(--gold), var(--gold)) center/100% 1.5px no-repeat,
    linear-gradient(var(--gold), var(--gold)) center/1.5px 100% no-repeat;
  opacity: 0.88;
}

.article-prose ul:not(.podcast-episodes):not(.rich-text-blocks__list) ul li::before {
  width: 0.38rem;
  height: 0.38rem;
  left: 0.35rem;
  opacity: 0.65;
}

.article-prose code {
  font-size: 0.88em;
  padding: 0.15rem 0.4rem;
  background: var(--cream);
  border-radius: 4px;
}

.article-prose pre {
  margin: 1.25rem 0;
  padding: 1rem 1.15rem;
  background: var(--midnight);
  color: var(--cream);
  border-radius: var(--radius);
  overflow-x: auto;
  font-size: 0.88rem;
}

.article-prose blockquote {
  margin: 1.5rem 0;
  padding: 1rem 1.25rem;
  border-left: 4px solid var(--gold);
  background: var(--cream);
  font-style: italic;
  font-family: var(--font-serif);
  color: var(--text-dark);
}

.page-mission .article-prose .verein-verse blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.article-back {
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(19, 39, 68, 0.1);
}

.article-back a {
  font-weight: 700;
  color: var(--deep-navy);
  text-decoration: none;
}

.article-back a:hover {
  color: var(--gold);
}

.public-section {
  margin-bottom: var(--space-6);
}

.article-page .article-shell > .public-section:last-child {
  margin-bottom: 0;
}

.public-section h2 {
  font-size: 1.45rem;
  margin-bottom: var(--space-2);
}

/* Rechtstextseiten & Kontakt – zurückhaltende Schmuckelemente */
.page-datenschutz,
.page-impressum,
.page-kontakt,
.page-suche,
.page-faq {
  background: linear-gradient(180deg, var(--warm-white) 0%, #faf7f0 42%, var(--cream) 100%);
}

.page-datenschutz .article-shell,
.page-impressum .article-shell,
.page-kontakt .article-shell,
.page-suche .article-shell,
.page-faq .article-shell {
  max-width: 46rem;
}

.legal-page-intro {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 0;
  margin-bottom: clamp(2.25rem, 5vw, 3.25rem);
  box-sizing: border-box;
  text-align: center;
  padding: clamp(2rem, 4.5vw, 3rem) clamp(1.25rem, 4vw, 2rem) clamp(2.25rem, 4.5vw, 2.85rem);
  border-radius: 0;
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.82) 100%);
  border: none;
  border-bottom: 1px solid rgba(19, 39, 68, 0.06);
  box-shadow: none;
}

.legal-page-intro .page-title-dual--inner:has(+ .legal-section-ornament) {
  margin-bottom: 0;
}

.legal-page-intro .page-title-dual__line2 {
  max-width: 34rem;
  margin-left: auto;
  margin-right: auto;
}

.legal-page-intro .article-lead {
  max-width: 38rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.35rem;
}

.legal-section-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 7.5rem);
  margin: clamp(0.95rem, 2.2vw, 1.25rem) auto clamp(1.35rem, 3vw, 1.75rem);
}

.legal-section-ornament__line {
  flex: 1 1 2.25rem;
  max-width: 2.75rem;
  min-width: 1.25rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184, 152, 79, 0.55) 35%, rgba(184, 152, 79, 0.55) 65%, transparent);
}

.legal-section-ornament__mark,
.legal-section-ornament__heart {
  flex: 0 0 auto;
  width: 0.72rem;
  height: 0.72rem;
  opacity: 0.92;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14' fill='none'%3E%3Cpath d='M8 13S1 8.6 1 4.8C1 2.7 2.6 1 4.6 1c1.2 0 2.3.6 3 1.6.7-1 1.8-1.6 3-1.6 2 0 3.6 1.7 3.6 3.8C14.4 8.6 8 13 8 13z' fill='%23c9a84c'/%3E%3C/svg%3E");
}

.legal-page-meta {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  margin: 0;
  padding: 0.42rem 0.85rem;
  border-radius: 999px;
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  color: var(--text-meta);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(19, 39, 68, 0.08);
}

.legal-page-meta__label {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.legal-page-body {
  padding-top: 0.15rem;
}

.legal-section {
  position: relative;
  margin-bottom: clamp(1.85rem, 4vw, 2.65rem);
  padding-top: clamp(1.35rem, 3vw, 1.85rem);
  border-top: 1px solid rgba(19, 39, 68, 0.07);
}

.legal-section:first-child {
  padding-top: 0;
  border-top: 0;
}

.legal-section h2 {
  position: relative;
  padding-left: 1.05rem;
  font-size: clamp(1.28rem, 2.8vw, 1.42rem);
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.legal-section h2::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.28em;
  width: 3px;
  height: 1.05em;
  border-radius: 2px;
  background: linear-gradient(180deg, var(--gold) 0%, rgba(201, 168, 76, 0.45) 100%);
}

.legal-section h3 {
  font-size: 1.08rem;
  color: var(--text-dark);
}

.page-datenschutz .article-page .article-shell > .legal-page-body > .legal-section:last-child,
.page-impressum .article-page .article-shell > .legal-page-body > .legal-section:last-child,
.page-kontakt .article-shell > .legal-page-body > .legal-section:last-child {
  margin-bottom: 0;
}

.page-kontakt .kontakt-page-intro .article-lead {
  margin-bottom: 0;
}

.page-kontakt .kontakt-page-body > .form-flash {
  margin-bottom: clamp(1.25rem, 2.8vw, 1.65rem);
}

.page-kontakt .kontakt-form-section .kontakt-form {
  margin-top: 0;
  max-width: none;
  padding: clamp(1.15rem, 2.8vw, 1.55rem) clamp(1rem, 2.5vw, 1.35rem) clamp(1.35rem, 3vw, 1.75rem);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(19, 39, 68, 0.07);
  box-shadow: 0 10px 28px rgba(15, 31, 54, 0.04);
}

.page-kontakt .kontakt-form input,
.page-kontakt .kontakt-form textarea,
.page-kontakt .kontakt-form select {
  background: rgba(255, 255, 255, 0.92);
  border-color: rgba(19, 39, 68, 0.12);
}

.page-kontakt .kontakt-form input:focus,
.page-kontakt .kontakt-form textarea:focus,
.page-kontakt .kontakt-form select:focus {
  border-color: rgba(201, 168, 76, 0.55);
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
  outline: none;
}

.page-kontakt .kontakt-form .btn-primary {
  align-self: flex-start;
  margin-top: 0.25rem;
}

/* Suche */
.page-suche .suche-page-intro .article-lead {
  margin-bottom: 0;
}

.page-suche .suche-search-section {
  padding-top: 0;
  border-top: 0;
}

.page-suche .suche-form {
  margin: 0;
  padding: clamp(1.15rem, 2.8vw, 1.55rem) clamp(1rem, 2.5vw, 1.35rem);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(19, 39, 68, 0.07);
  box-shadow: 0 10px 28px rgba(15, 31, 54, 0.04);
}

.page-suche .suche-form__label {
  display: block;
  margin-bottom: 0.55rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-suche .suche-form__row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.page-suche .suche-form__input {
  flex: 1 1 12rem;
  min-width: 0;
  padding: 0.65rem 0.9rem;
  font-size: 1.05rem;
  border: 1px solid rgba(19, 39, 68, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.92);
  color: var(--text-dark);
}

.page-suche .suche-form__input:focus {
  border-color: rgba(201, 168, 76, 0.55);
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
  outline: none;
}

.page-suche .suche-form__submit {
  flex: 0 0 auto;
}

.page-suche .suche-results-section h2 {
  margin-bottom: 0.2rem;
}

.page-suche .suche-results__query {
  margin: 0 0 clamp(1rem, 2.4vw, 1.35rem);
  font-size: 0.95rem;
  color: var(--text-meta);
}

.page-suche .suche-results {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.page-suche .suche-result {
  display: block;
  padding: clamp(0.95rem, 2.2vw, 1.15rem) clamp(1rem, 2.4vw, 1.25rem);
  border: 1px solid rgba(201, 168, 76, 0.22);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.58);
  text-decoration: none;
  transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.page-suche .suche-result:hover {
  border-color: rgba(201, 168, 76, 0.45);
  box-shadow: 0 10px 24px rgba(15, 31, 54, 0.06);
  transform: translateY(-1px);
}

.page-suche .suche-result__type {
  display: inline-block;
  margin-bottom: 0.35rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-suche .suche-result__title {
  margin: 0 0 0.35rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2vw, 1.18rem);
  font-weight: 600;
  line-height: 1.35;
  color: var(--deep-navy);
}

.page-suche .suche-result__snippet {
  margin: 0;
  font-size: 0.96rem;
  line-height: 1.6;
  color: rgba(15, 31, 54, 0.78);
}

.page-suche .article-shell > .legal-page-body > .legal-section:last-child {
  margin-bottom: 0;
}

/* FAQ-Seite */
.page-faq .faq-page-intro {
  margin-bottom: clamp(2rem, 4.5vw, 2.85rem);
}

.page-faq .faq-section h2 {
  margin-bottom: clamp(0.85rem, 2vw, 1.15rem);
}

.page-faq .qa-list {
  margin: 0;
  padding: clamp(0.35rem, 1vw, 0.55rem) clamp(1rem, 2.5vw, 1.35rem);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(19, 39, 68, 0.07);
  box-shadow: 0 10px 28px rgba(15, 31, 54, 0.04);
}

.page-faq .qa-item {
  border-bottom: 1px solid rgba(184, 152, 79, 0.2);
}

.page-faq .qa-item:last-child {
  border-bottom: 0;
}

.page-faq .qa-item__summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(0.85rem, 1.9vw, 1.05rem) 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.85vw, 1.08rem);
  font-weight: 600;
  line-height: 1.45;
  color: var(--deep-navy);
  transition: color 0.2s ease;
}

.page-faq .qa-item__summary::-webkit-details-marker {
  display: none;
}

.page-faq .qa-item__summary:hover,
.page-faq .qa-item[open] .qa-item__summary {
  color: var(--text-dark);
}

.page-faq .qa-item__question {
  flex: 1 1 auto;
  min-width: 0;
}

.page-faq .qa-item__toggle {
  position: relative;
  flex: 0 0 auto;
  width: 1.35rem;
  height: 1.35rem;
  margin-top: 0.12rem;
  border-radius: 50%;
  border: 1px solid rgba(201, 168, 76, 0.45);
  background: rgba(255, 255, 255, 0.85);
  transition: border-color 0.22s ease, background 0.22s ease, transform 0.22s ease;
}

.page-faq .qa-item__toggle::before,
.page-faq .qa-item__toggle::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.58rem;
  height: 1.5px;
  border-radius: 1px;
  background: var(--gold);
  transform: translate(-50%, -50%);
  transition: transform 0.28s ease, opacity 0.22s ease;
}

.page-faq .qa-item__toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.page-faq .qa-item[open] .qa-item__toggle {
  border-color: rgba(201, 168, 76, 0.72);
  background: rgba(201, 168, 76, 0.1);
}

.page-faq .qa-item[open] .qa-item__toggle::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.page-faq .qa-item[open] .qa-item__toggle::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.page-faq .qa-answer {
  padding: 0 0 clamp(0.95rem, 2vw, 1.15rem);
  line-height: 1.68;
  font-family: var(--font-sans);
  font-size: clamp(0.96rem, 1.8vw, 1.03rem);
  color: rgba(15, 31, 54, 0.82);
}

.page-faq .qa-answer p {
  margin: 0 0 0.75rem;
}

.page-faq .qa-answer p:last-child {
  margin-bottom: 0;
}

.page-faq .article-shell > .legal-page-body > .faq-section:last-child {
  margin-bottom: 0;
}

.form-flash {
  padding: 0.75rem 1rem;
  margin-bottom: 1.25rem;
  border-radius: var(--radius);
  font-size: 0.95rem;
  transition: opacity 0.35s ease;
}

.form-flash--ok {
  background: #e8f5e9;
  color: #1b5e20;
  border: 1px solid #a5d6a7;
}

.form-flash--err {
  background: #ffebee;
  color: #b71c1c;
  border: 1px solid #ef9a9a;
}

.public-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 32rem;
  margin-top: 1.5rem;
}

.public-form .feedback-wizard__step {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.public-form .feedback-wizard__step[hidden] {
  display: none !important;
}

.public-form label {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--text-dark);
}

.public-form input,
.public-form textarea,
.public-form select {
  padding: 0.6rem 0.85rem;
  border: 1px solid rgba(19, 39, 68, 0.15);
  border-radius: var(--radius);
  background: #fff;
}

/* Browser-Autofill (Chrome/Safari) kann Inputs blau/gelb einfÃƒÂ¤rben Ã¢â€ â€™ neutralisieren */
.public-form input:-webkit-autofill,
.public-form textarea:-webkit-autofill,
.public-form select:-webkit-autofill,
.newsletter-form input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color: var(--text-dark) !important;
  caret-color: var(--text-dark) !important;
  transition: background-color 9999s ease-in-out 0s;
}

.public-form input:autofill,
.public-form textarea:autofill,
.public-form select:autofill,
.newsletter-form input:autofill {
  box-shadow: 0 0 0 1000px #fff inset !important;
}

/* Checkbox + Fließtext (inkl. Link) als eine Zeile/Absatz — kein Flex-Wrap-Zerreißen */
.public-form__check {
  display: block !important;
  position: relative;
  padding-left: 1.7rem;
  font-weight: 600;
  line-height: 1.5;
}

.public-form__check input {
  position: absolute;
  left: 0;
  top: 0.22rem;
  width: 1.1rem;
  height: 1.1rem;
  margin: 0;
}

.public-form__check a {
  display: inline;
  white-space: normal;
}

.public-form label.public-form__check {
  flex-direction: unset;
  gap: 0;
  text-align: left;
  font-weight: 600;
}

#feedback-abgeben .public-form {
  text-align: left;
}

#feedback-abgeben .feedback-wizard__checks {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
  text-align: left;
}

#feedback-abgeben .feedback-wizard__checks .public-form__check {
  width: 100%;
  text-align: left;
}

.public-form__radio {
  flex-direction: row !important;
  align-items: flex-start;
  gap: 0.55rem;
  font-weight: 600;
  line-height: 1.45;
}

.public-form__radio input {
  width: auto;
  margin-top: 0.2rem;
  flex-shrink: 0;
}

.sl-flatrate-longform {
  max-width: 44rem;
}

.sl-flatrate-fieldset {
  border: 1px solid rgba(19, 39, 68, 0.12);
  border-radius: var(--radius-lg);
  padding: 1.25rem 1.15rem;
  margin: 0 0 1.25rem;
}

.sl-flatrate-legend {
  font-family: var(--font-serif);
  font-size: 1.05rem;
  font-weight: 700;
  padding: 0 0.35rem;
  color: var(--text-dark);
}

.sl-flatrate-question {
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-body);
  margin: 0 0 1rem;
  font-weight: 500;
}

.sl-flatrate-question--dense {
  font-size: 0.92rem;
}

.sl-flatrate-form-title {
  margin-top: 2.5rem;
}

.sl-flatrate-form-desc {
  margin-top: 0.35rem;
}

/* Fehlerseiten */
.error-page {
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.error-card {
  text-align: center;
  padding: 2.5rem 2rem;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px solid rgba(201, 168, 76, 0.25);
  max-width: 28rem;
}

.error-card h1 {
  font-size: 4rem;
  color: var(--deep-navy);
  line-height: 1;
  margin-bottom: 0.75rem;
}

.error-card p {
  color: var(--text-body);
  margin-bottom: 1.5rem;
}

.error-page-inner {
  text-align: center;
  padding: 2rem 0 3rem;
  max-width: 32rem;
  margin: 0 auto;
}

.error-page__code {
  font-family: var(--font-serif);
  font-size: clamp(3rem, 12vw, 5rem);
  font-weight: 700;
  color: var(--gold);
  opacity: 0.85;
  line-height: 1;
  margin: 0 0 0.5rem;
}

.page-error--500 .article-title {
  margin-top: 0;
}

.page-error--403 .article-title {
  margin-top: 0;
}

.error-page__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin: 1.75rem 0 0;
}

.error-page__actions .btn-primary,
.error-page__actions .btn-secondary {
  min-width: 8.5rem;
  justify-content: center;
}

/* Admin-Body: neutrale Basis */
body.admin-body {
  background: var(--warm-white);
}

/* -------------------------------------------------------------------------- */
/* 21. Startseite (page-home)                                                 */
/* -------------------------------------------------------------------------- */

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.content-wide {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

/* Startseite Ã¢â‚¬â€œ Herzensanliegen (Warum / Glauben) */
.home-herzensanliegen {
  background-color: var(--cream);
  padding: clamp(4rem, 9vw, 6.5rem) 0 clamp(4.25rem, 9.5vw, 6.75rem);
}

.home-herzensanliegen__inner {
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
}

.home-herzensanliegen__header {
  text-align: center;
  max-width: 42rem;
  margin: 0 auto clamp(3rem, 6.5vw, 4.5rem);
}

.home-herzensanliegen__eyebrow {
  margin: 0 0 clamp(1.35rem, 3vw, 1.75rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-herzensanliegen__title {
  margin: 0 0 clamp(1.35rem, 3.2vw, 1.85rem);
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.home-herzensanliegen__leitsatz {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2.35vw, 1.35rem);
  font-weight: 500;
  line-height: 1.62;
  color: var(--deep-navy);
  text-wrap: balance;
}

.home-herzensanliegen__columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: start;
  gap: 0;
}

.home-herzensanliegen__col {
  text-align: center;
  max-width: 26rem;
  margin: 0 auto;
}

.home-herzensanliegen__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  margin: 0 auto clamp(1.15rem, 2.6vw, 1.45rem);
  color: #b8984f;
}

.home-herzensanliegen__icon-svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-herzensanliegen__icon-rays {
  opacity: 0.88;
}

.home-herzensanliegen__col-title {
  margin: 0 0 clamp(1.15rem, 2.5vw, 1.45rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.45vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--deep-navy);
}

.home-herzensanliegen__col-body {
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: var(--deep-navy);
  text-align: center;
}

.home-herzensanliegen__col-body p {
  margin: 0;
}

.home-herzensanliegen__col-body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.home-herzensanliegen__divider {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  width: 1px;
  margin: 0 clamp(1.75rem, 4vw, 3rem);
  min-height: 100%;
}

.home-herzensanliegen__divider-line {
  flex: 1 1 auto;
  width: 1px;
  min-height: 2.5rem;
  background: rgba(184, 152, 79, 0.42);
}

.home-herzensanliegen__divider-cross {
  flex: 0 0 auto;
  width: 0.58rem;
  height: 0.82rem;
  margin: 0.7rem 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

.home-herzensanliegen__mobile-divider {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 12rem);
  margin: clamp(2.25rem, 5vw, 3rem) auto;
}

.home-herzensanliegen__mobile-divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
}

.home-herzensanliegen__mobile-divider-cross {
  flex: 0 0 auto;
  width: 0.58rem;
  height: 0.82rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

@media (max-width: 767px) {
  .home-herzensanliegen__columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-herzensanliegen__divider {
    display: none;
  }

  .home-herzensanliegen__mobile-divider {
    display: flex;
  }

  .home-herzensanliegen__col {
    max-width: 34rem;
  }
}

.home-counter-wrap {
  padding: clamp(3.5rem, 8vw, 5.5rem) clamp(1.25rem, 4vw, 2rem);
  background: var(--cream);
}

.home-bibel-counter {
  max-width: 50rem;
  margin: 0 auto;
}

.home-bibel-counter__card {
  padding: clamp(2.5rem, 5.5vw, 3.5rem) clamp(1.75rem, 4.5vw, 3rem);
  border-radius: 1.15rem;
  background: #fefcf8;
  border: 1px solid rgba(184, 152, 79, 0.38);
  box-shadow: 0 18px 48px rgba(19, 39, 68, 0.07), 0 4px 14px rgba(19, 39, 68, 0.04);
  text-align: center;
}

.home-bibel-counter__header {
  margin-bottom: clamp(1.75rem, 4vw, 2.35rem);
}

.home-bibel-counter__eyebrow,
.home-bibel-counter__goal {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-bibel-counter__goal {
  margin-bottom: clamp(1rem, 2.2vw, 1.25rem);
}

.home-bibel-counter__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 14rem);
  margin: 0 auto;
}

.home-bibel-counter__divider--heart {
  margin-bottom: clamp(1.75rem, 4vw, 2.35rem);
}

.home-bibel-counter__divider--cross {
  margin: clamp(2rem, 4.5vw, 2.75rem) auto;
}

.home-bibel-counter__divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
}

.home-bibel-counter__divider-icon {
  flex: 0 0 auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.home-bibel-counter__divider-icon--heart {
  width: 0.62rem;
  height: 0.58rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11' fill='none'%3E%3Cpath d='M6 10.2S1.5 7.2 1.5 4.2C1.5 2.6 2.7 1.5 4.1 1.5c.9 0 1.7.5 2.1 1.2.4-.7 1.2-1.2 2.1-1.2 1.4 0 2.6 1.1 2.6 2.7 0 3-4.5 6-4.5 6z' fill='%23b8984f'/%3E%3C/svg%3E");
}

.home-bibel-counter__divider-icon--cross {
  width: 0.58rem;
  height: 0.82rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

.home-bibel-counter__main {
  margin-bottom: 0;
}

.home-bibel-counter__value {
  display: block;
  font-family: var(--font-serif);
  font-size: clamp(4.5rem, 14vw, 6.75rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--deep-navy);
}

.home-bibel-counter__label {
  margin: clamp(0.85rem, 2vw, 1.1rem) 0 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.28rem);
  font-weight: 500;
  line-height: 1.35;
  color: var(--deep-navy);
}

.home-bibel-counter__impact {
  margin: clamp(1.15rem, 2.6vw, 1.55rem) auto 0;
  max-width: 34rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 2vw, 1.12rem);
  font-weight: 500;
  line-height: 1.62;
  color: var(--deep-navy);
  text-wrap: balance;
}

.home-bibel-counter__impact-num {
  font-weight: 600;
}

.home-bibel-counter__progress {
  margin-bottom: clamp(2rem, 4.5vw, 2.75rem);
}

.home-bibel-counter__bar {
  height: 0.55rem;
  border-radius: 999px;
  background: rgba(19, 39, 68, 0.08);
  overflow: hidden;
  margin-bottom: clamp(0.75rem, 1.8vw, 0.95rem);
}

.home-bibel-counter__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #c9a050 0%, #dfc07a 48%, #b8984f 100%);
}

.home-bibel-counter__stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  font-family: var(--font-sans);
  font-size: clamp(0.82rem, 1.6vw, 0.92rem);
  color: var(--deep-navy);
  opacity: 0.88;
}

.home-bibel-counter__footer-line {
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
  margin: 0 auto clamp(1.75rem, 4vw, 2.35rem);
}

.home-bibel-counter__donate {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  margin: 0 0 clamp(1.35rem, 3vw, 1.75rem);
  font-family: var(--font-serif);
  font-size: clamp(1rem, 2vw, 1.12rem);
  font-weight: 500;
  line-height: 1.45;
  color: var(--deep-navy);
}

.home-bibel-counter__bible-icon {
  display: inline-flex;
  flex: 0 0 auto;
  width: 1.35rem;
  height: 1.35rem;
  color: #b8984f;
}

.home-bibel-counter__bible-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-bibel-counter__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-height: 3rem;
  padding: 0.75rem 1.85rem;
  border: 1px solid rgba(184, 152, 79, 0.72);
  border-radius: 999px;
  background: #fefcf8;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.45vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--deep-navy);
  transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.home-bibel-counter__btn:hover,
.home-bibel-counter__btn:focus-visible {
  background: rgba(184, 152, 79, 0.08);
  border-color: #b8984f;
  color: var(--deep-navy);
}

.home-bibel-counter__btn-heart {
  display: inline-flex;
  width: 0.72rem;
  height: 0.72rem;
  color: #b8984f;
}

.home-bibel-counter__btn-heart svg {
  display: block;
  width: 100%;
  height: 100%;
}

@media (max-width: 540px) {
  .home-bibel-counter__card {
    padding: 2.15rem 1.35rem 2.35rem;
  }

  .home-bibel-counter__stats {
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
  }

  .home-bibel-counter__donate {
    flex-direction: column;
    gap: 0.45rem;
  }
}

.home-counter-wrap .sl-counter-widget {
  margin-left: auto;
  margin-right: auto;
}

.home-counter__cta-wrap {
  text-align: center;
  margin-top: 1.5rem;
}

.home-prose-block {
  padding: 3.5rem 0;
  background: var(--warm-white);
}

.home-prose-block--alt {
  background: var(--cream);
}

.home-prose-block--accent {
  background: linear-gradient(180deg, rgba(19, 39, 68, 0.04) 0%, var(--warm-white) 100%);
  border-top: 1px solid rgba(201, 168, 76, 0.15);
  border-bottom: 1px solid rgba(19, 39, 68, 0.06);
}

.home-prose-block--bridge {
  padding: 3.25rem 0;
  background: linear-gradient(180deg, var(--cream) 0%, var(--warm-white) 100%);
  border-top: 1px solid rgba(19, 39, 68, 0.06);
}

.home-prose-block--bridge .home-prose-block__title {
  text-align: center;
}

.home-prose-block--bridge .home-prose-block__body {
  max-width: 40rem;
  margin: 0 auto;
  text-align: center;
}

.home-prose-block__title {
  font-family: var(--font-serif);
  font-size: clamp(1.5rem, 3.2vw, 2rem);
  color: var(--text-dark);
  margin-bottom: 1rem;
}

.home-prose-block__title--gold {
  color: var(--gold, #c9a84c);
}

.home-prose-block__title--quiet {
  font-size: clamp(1.25rem, 2.6vw, 1.65rem);
  letter-spacing: 0.02em;
}

.home-prose-block__body.lead,
.home-prose-block--bridge .home-prose-block__body.lead {
  font-size: 1.08rem;
}

.home-callout-banner__title--gold {
  color: var(--gold, #e8d5a3);
}

.rich-text-blocks--fancy .rich-text-blocks__chunk {
  border-left: 3px solid rgba(201, 168, 76, 0.65);
  padding-left: 1rem;
  margin-bottom: 0.65rem;
}

.rich-text-blocks--fancy .rich-text-blocks__list li {
  margin-bottom: 0.35rem;
}

.home-prose-block__body.text-muted-home,
.home-hoffnung__body.text-muted-home {
  opacity: 0.88;
  color: var(--text-muted, #5c5c6e);
}

.home-prose-block__body.lead,
.home-hoffnung__body.lead {
  font-size: 1.07rem;
  line-height: 1.78;
}

.home-prose-block__body p {
  margin: 0;
  color: var(--text-body);
  line-height: 1.75;
}

.home-callout-banner {
  padding: 3.25rem 0;
  background: linear-gradient(135deg, var(--royal-blue) 0%, var(--deep-navy) 55%, var(--midnight) 100%);
  color: var(--cream);
  text-align: center;
  border-top: 1px solid rgba(201, 168, 76, 0.2);
  border-bottom: 1px solid rgba(201, 168, 76, 0.15);
}

.home-callout-banner__title {
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.8vw, 2.2rem);
  color: var(--cream);
  margin: 0 0 1rem;
}

.home-callout-banner__text {
  max-width: 42rem;
  margin: 0 auto;
  font-size: 1.0625rem;
  line-height: 1.75;
  color: rgba(250, 246, 238, 0.92);
}

/* Startseite Ã¢â‚¬â€œ Ã¢â‚¬Å¾HÃƒÂ¶rst du den Ruf auch?Ã¢â‚¬Å“ */
.home-ruf {
  padding: clamp(4rem, 9vw, 6.25rem) 0 clamp(4.25rem, 9.5vw, 6.5rem);
  background: linear-gradient(180deg, var(--deep-navy) 0%, var(--midnight) 100%);
  color: var(--cream);
  text-align: center;
}

.home-ruf__inner {
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
}

.home-ruf__header {
  margin-bottom: clamp(1.75rem, 4vw, 2.35rem);
}

.home-ruf__eyebrow {
  /* Weniger Abstand zwischen "Gemeinsam" und Titel */
  margin: 0 0 clamp(0.85rem, 2.1vw, 1.25rem);
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: #b8984f;
}

.home-ruf__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 14rem);
  margin: 0 auto;
}

.home-ruf__divider--heart {
  margin-bottom: clamp(1.75rem, 4vw, 2.35rem);
}

.home-ruf__divider--cross {
  margin: clamp(2rem, 4.5vw, 2.75rem) auto;
}

.home-ruf__divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
}

.home-ruf__divider-icon {
  flex: 0 0 auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.home-ruf__divider-icon--heart {
  width: 0.62rem;
  height: 0.58rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11' fill='none'%3E%3Cpath d='M6 10.2S1.5 7.2 1.5 4.2C1.5 2.6 2.7 1.5 4.1 1.5c.9 0 1.7.5 2.1 1.2.4-.7 1.2-1.2 2.1-1.2 1.4 0 2.6 1.1 2.6 2.7 0 3-4.5 6-4.5 6z' fill='%23b8984f'/%3E%3C/svg%3E");
}

.home-ruf__divider-icon--cross {
  width: 0.58rem;
  height: 0.82rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

.home-ruf__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.5vw, 2.85rem);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: var(--cream);
}

.home-ruf__intro {
  max-width: 40rem;
  margin: 0 auto;
}

.home-ruf__intro p {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(250, 246, 238, 0.92);
}

.home-ruf__highlight {
  margin: clamp(1.35rem, 3vw, 1.85rem) auto 0;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2.35vw, 1.32rem);
  font-weight: 500;
  line-height: 1.55;
  color: #dfc07a;
}

.home-ruf__pillars {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: start;
  gap: 0 clamp(1.25rem, 3vw, 2rem);
  max-width: 58rem;
  margin: clamp(2.25rem, 5vw, 3rem) auto 0;
  text-align: left;
}

.home-ruf__pillar {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.85rem, 2vw, 1.1rem);
}

.home-ruf__pillar-icon {
  flex: 0 0 auto;
  width: 2.75rem;
  height: 2.75rem;
  color: #b8984f;
}

.home-ruf__icon-svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-ruf__pillar-copy {
  min-width: 0;
}

.home-ruf__pillar-title {
  margin: 0 0 0.45rem;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.45vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--cream);
}

.home-ruf__pillar-text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.9rem, 1.65vw, 0.96rem);
  line-height: 1.62;
  color: rgba(250, 246, 238, 0.86);
}

.home-ruf__pillar-sep {
  width: 1px;
  align-self: stretch;
  min-height: 4.5rem;
  background: rgba(184, 152, 79, 0.35);
}

@media (max-width: 860px) {
  .home-ruf__pillars {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(1.75rem, 4vw, 2.35rem);
    text-align: center;
  }

  .home-ruf__pillar {
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 22rem;
    margin: 0 auto;
  }

  .home-ruf__pillar-sep {
    width: min(100%, 8rem);
    height: 1px;
    min-height: 0;
    margin: 0 auto;
  }
}

/* Startseite Ã¢â‚¬â€œ Mitmachen */
.home-mitmachen {
  padding: clamp(4rem, 9vw, 6.25rem) 0 clamp(4.5rem, 9.5vw, 6.75rem);
  background: #f6f2ec;
}

.home-mitmachen__inner {
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
}

.home-mitmachen__header {
  text-align: center;
  max-width: 40rem;
  margin: 0 auto clamp(3rem, 6.5vw, 4.25rem);
}

.home-mitmachen__eyebrow {
  margin: 0 0 clamp(0.85rem, 2vw, 1.1rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-mitmachen__header-heart {
  width: 0.62rem;
  height: 0.58rem;
  margin: 0 auto clamp(1.35rem, 3vw, 1.75rem);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11' fill='none'%3E%3Cpath d='M6 10.2S1.5 7.2 1.5 4.2C1.5 2.6 2.7 1.5 4.1 1.5c.9 0 1.7.5 2.1 1.2.4-.7 1.2-1.2 2.1-1.2 1.4 0 2.6 1.1 2.6 2.7 0 3-4.5 6-4.5 6z' fill='%23c9a050'/%3E%3C/svg%3E");
}

.home-mitmachen__title {
  margin: 0 0 clamp(1.15rem, 2.6vw, 1.55rem);
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: #0f1f36;
}

.home-mitmachen__intro {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
}

.home-mitmachen__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.15rem, 2.6vw, 1.65rem);
  align-items: stretch;
}

.home-mitmachen__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(2rem, 4.5vw, 2.65rem) clamp(1.35rem, 3vw, 1.75rem) clamp(1.85rem, 4vw, 2.35rem);
  border-radius: 1.15rem;
  background: #0f1f36;
  box-shadow: 0 16px 40px rgba(15, 31, 54, 0.14);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.home-mitmachen__card-icon {
  width: 3.25rem;
  height: 3.25rem;
  margin-bottom: clamp(1.15rem, 2.6vw, 1.45rem);
  color: #d4af37;
  transition: color 0.3s ease, filter 0.3s ease;
}

.home-mitmachen__card-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-mitmachen__card-title {
  margin: 0 0 clamp(0.85rem, 2vw, 1.05rem);
  font-family: var(--font-serif);
  font-size: clamp(1.2rem, 2.5vw, 1.45rem);
  font-weight: 500;
  line-height: 1.25;
  color: #faf6ee;
}

.home-mitmachen__card-text {
  margin: 0;
  /* Einheitliche Divider-Position unabhängig von Zeilenumbrüchen */
  flex: 0 0 auto;
  min-height: clamp(5rem, 8.5vw, 6rem);
  font-family: var(--font-sans);
  font-size: clamp(0.9rem, 1.7vw, 0.98rem);
  line-height: 1.68;
  color: rgba(250, 246, 238, 0.86);
}

.home-mitmachen__card-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  width: min(100%, 9rem);
  /* Neuer Aufbau: Divider kommt direkt unter der Überschrift */
  margin: 0 auto clamp(0.85rem, 2vw, 1.1rem);
}

.home-mitmachen__card-divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(212, 175, 55, 0.42);
}

.home-mitmachen__card-divider-heart {
  flex: 0 0 auto;
  width: 0.52rem;
  height: 0.5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11' fill='none'%3E%3Cpath d='M6 10.2S1.5 7.2 1.5 4.2C1.5 2.6 2.7 1.5 4.1 1.5c.9 0 1.7.5 2.1 1.2.4-.7 1.2-1.2 2.1-1.2 1.4 0 2.6 1.1 2.6 2.7 0 3-4.5 6-4.5 6z' fill='%23d4af37'/%3E%3C/svg%3E");
}

.home-mitmachen__card-note {
  margin: 0 0 clamp(1.15rem, 2.6vw, 1.45rem);
  font-family: var(--font-serif);
  font-size: clamp(1rem, 2vw, 1.12rem);
  font-weight: 500;
  color: #dfc07a;
}

.home-mitmachen__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.85rem;
  margin-top: auto;
  padding: 0.7rem 1.45rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(180deg, #e2c274 0%, #d4af37 52%, #c9a050 100%);
  font-family: var(--font-sans);
  font-size: clamp(0.64rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  color: #0f1f36;
  box-shadow: 0 0 0 rgba(212, 175, 55, 0);
  transition: background 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.home-mitmachen__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.home-mitmachen__btn-icon--heart {
  width: 0.72rem;
  height: 0.72rem;
}

.home-mitmachen__btn-icon--heart svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-mitmachen__btn-icon--chevron {
  font-size: 1.15rem;
  font-weight: 400;
  transform: translateY(-0.02em);
}

@media (hover: hover) and (pointer: fine) {
  .home-mitmachen__card:hover .home-mitmachen__card-icon {
    color: #e2c274;
    filter: brightness(1.08);
  }

  .home-mitmachen__card:hover .home-mitmachen__btn {
    background: linear-gradient(180deg, #ebd591 0%, #dfc07a 52%, #d4af37 100%);
    box-shadow: 0 0 18px rgba(212, 175, 55, 0.38);
  }
}

@media (max-width: 960px) {
  .home-mitmachen__grid {
    grid-template-columns: minmax(0, 1fr);
    max-width: 26rem;
    margin: 0 auto;
  }
}

/* Startseite Ã¢â‚¬â€œ Gebetsbereich */
/* Startseite Gebet – angelehnt an /gebet (Creme-Intro + Navy-Wand) */
.home-gebet {
  padding: 0;
  background: var(--cream);
}

.home-gebet__intro-band {
  padding: clamp(3rem, 7vw, 5rem) clamp(1.25rem, 4vw, 2rem) clamp(2.5rem, 5.5vw, 3.5rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, var(--cream) 100%);
}

.home-gebet__intro-inner {
  max-width: 42rem;
  margin: 0 auto;
  text-align: center;
}

.home-gebet__dual {
  margin-bottom: 0;
}

.home-gebet__dual:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.home-gebet__intro-inner .home-section-ornament {
  width: min(100%, 11rem);
  margin: clamp(0.7rem, 1.6vw, 1rem) auto 0;
}

.home-gebet__intro {
  margin: clamp(1rem, 2.2vw, 1.35rem) auto 0;
  max-width: 36rem;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.78;
  color: var(--deep-navy);
  text-wrap: balance;
}

.home-gebet__intro-cta {
  margin: clamp(1.35rem, 3vw, 1.85rem) 0 0;
}

.home-gebet__feature {
  padding: 0 clamp(1.25rem, 4vw, 2rem) clamp(2.75rem, 6vw, 4rem);
  background: var(--cream);
}

.home-gebet__navy {
  width: min(100%, 28rem);
  margin: 0 auto;
  padding: clamp(1rem, 2.2vw, 1.35rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 48%, #152a45 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 1rem;
  box-shadow: 0 16px 40px rgba(10, 22, 40, 0.18);
}

.home-gebet__navy-label {
  margin: 0 0 clamp(0.75rem, 1.8vw, 1rem);
  text-align: center;
  font-family: var(--font-sans);
  font-size: clamp(0.66rem, 1.3vw, 0.74rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #e8d5a0;
}

.home-gebet__card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 0;
  margin: 0;
  padding: 2.2rem clamp(1rem, 2vw, 1.25rem) 1.1rem;
  text-align: left;
  background: linear-gradient(180deg, #fffdf8 0%, #faf6ee 52%, #f5efe4 100%);
  border: 1px solid rgba(201, 168, 76, 0.48);
  border-radius: 0.65rem;
  box-shadow:
    0 10px 28px rgba(10, 22, 40, 0.16),
    0 2px 8px rgba(10, 22, 40, 0.06);
}

.home-gebet__card::before {
  content: '';
  position: absolute;
  top: 1.05rem;
  left: 50%;
  z-index: 2;
  width: min(11.5rem, 78%);
  height: 1.1rem;
  transform: translateX(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 20' fill='none'%3E%3Cline x1='4' y1='10' x2='88' y2='10' stroke='%23c9a84c' stroke-width='1' stroke-opacity='0.82'/%3E%3Cline x1='110' y1='2.5' x2='110' y2='17.5' stroke='%23c9a84c' stroke-width='1.35' stroke-linecap='round'/%3E%3Cline x1='104' y1='7.5' x2='116' y2='7.5' stroke='%23c9a84c' stroke-width='1.35' stroke-linecap='round'/%3E%3Cline x1='132' y1='10' x2='216' y2='10' stroke='%23c9a84c' stroke-width='1' stroke-opacity='0.82'/%3E%3C/svg%3E");
  pointer-events: none;
}

.home-gebet__card-text {
  flex: 1 1 auto;
  margin: 0 0 1rem;
  padding-top: 0.55rem;
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.7vw, 1.02rem);
  line-height: 1.64;
  color: rgba(19, 39, 68, 0.92);
  white-space: pre-line;
  overflow-wrap: anywhere;
}

.home-gebet__card-footer {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin-top: auto;
}

.home-gebet__card-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.35rem 0.75rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  color: rgba(19, 39, 68, 0.58);
}

.home-gebet__card-author {
  font-weight: 600;
  color: rgba(19, 39, 68, 0.78);
}

.home-gebet__empty {
  margin: 0;
  padding: 0.35rem 0.25rem 0.15rem;
  text-align: center;
  color: rgba(255, 255, 255, 0.78);
  font-family: var(--font-serif);
  font-style: italic;
}

.home-gebet__feature-cta {
  margin: clamp(1.25rem, 2.8vw, 1.65rem) 0 0;
  text-align: center;
}

.home-gebet__wall-btn {
  color: var(--deep-navy);
  border-color: rgba(201, 168, 76, 0.55);
  background: transparent;
}

@media (hover: hover) and (pointer: fine) {
  .home-gebet__wall-btn:hover,
  .home-gebet__wall-btn:focus-visible {
    color: var(--midnight);
    border-color: rgba(168, 136, 55, 0.85);
    background: rgba(201, 168, 76, 0.1);
  }
}

.home-hoffnung {
  background-color: #fff;
  padding: clamp(4rem, 9vw, 6.5rem) 0 clamp(4.25rem, 9.5vw, 6.75rem);
}

.home-hoffnung__inner {
  max-width: 47rem;
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
  text-align: center;
}

.home-hoffnung__header {
  margin: 0 auto clamp(2rem, 4.5vw, 2.75rem);
}

.home-hoffnung__eyebrow {
  margin: 0 0 clamp(1.35rem, 3vw, 1.75rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-hoffnung__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: 0.01em;
  color: var(--deep-navy);
}

.home-hoffnung__body {
  max-width: 46.875rem;
  margin: 0 auto;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: var(--deep-navy);
}

.home-hoffnung__body p {
  margin: 0;
}

.home-hoffnung__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.home-hoffnung__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 14rem);
  margin: clamp(2.5rem, 5.5vw, 3.25rem) auto clamp(2.25rem, 5vw, 3rem);
}

.home-hoffnung__divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
}

.home-hoffnung__divider-cross {
  flex: 0 0 auto;
  width: 0.58rem;
  height: 0.82rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

.home-hoffnung__verse {
  margin: 0 auto clamp(1.15rem, 2.5vw, 1.45rem);
  padding: 0;
  border: 0;
  max-width: 38rem;
}

.home-hoffnung__verse p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.12rem, 2.4vw, 1.38rem);
  font-weight: 500;
  font-style: italic;
  line-height: 1.62;
  color: var(--deep-navy);
  text-wrap: balance;
}

.home-hoffnung__cite {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: #b8984f;
}

.home-hermine__intro {
  text-align: center;
  max-width: 40rem;
  margin: 0 auto 2rem;
}

.home-hermine-tiles {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.15rem;
  max-width: 720px;
  margin: 0 auto 2rem;
}

@media (min-width: 640px) {
  .home-hermine-tiles {
    grid-template-columns: repeat(3, 1fr);
  }
}

.home-hermine-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 1.85rem 1.25rem 1.75rem;
  border-radius: var(--radius-lg);
  border: 1px solid rgba(201, 168, 76, 0.22);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 50%, #152a45 100%);
  box-shadow: 0 14px 40px rgba(10, 22, 40, 0.28);
  overflow: hidden;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  color: var(--cream);
  text-decoration: none;
}

.home-hermine-tile::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  opacity: 0.85;
}

@media (hover: hover) and (pointer: fine) {
  .home-hermine-tile:hover {
    border-color: var(--card-hover-border-bright);
    box-shadow: var(--card-hover-shadow-deep);
  }
}

.home-hermine-tile:focus-visible {
  outline: 2px solid var(--gold-light);
  outline-offset: 3px;
}

.home-hermine-tile__icon {
  font-size: 2.1rem;
  margin-bottom: 0.55rem;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.25));
}

.home-hermine-tile__label {
  font-family: var(--font-serif);
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--cream);
}

.home-hermine-tile__label--cta {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold-light);
}

.home-hermine-tile__hint {
  font-size: 0.88rem;
  line-height: 1.45;
  color: rgba(197, 218, 245, 0.92);
  margin-top: 0.4rem;
}

.home-gebet-teaser {
  padding: 4rem 0;
  background: linear-gradient(135deg, var(--midnight) 0%, var(--deep-navy) 48%, #152a45 100%);
  color: var(--cream);
}

/* Home: Gebetsblock nicht blau (v3 Ã¢â€ â€™ helles Karten-Layout) */
.home-gebet-teaser--v3 {
  background: var(--warm-white);
  color: var(--text-body);
  border-top: 1px solid rgba(19, 39, 68, 0.06);
}

.home-gebet-teaser--v3 .home-gebet-teaser__intro {
  text-align: center;
  margin-bottom: 1.75rem;
}

.home-gebet-teaser--v3 .section-tag {
  color: var(--gold);
}

.home-gebet-teaser--v3 .home-gebet-teaser__title {
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.5vw, 2.1rem);
  color: var(--text-dark);
  margin: 0.5rem 0 0;
  letter-spacing: 0.02em;
}

.home-gebet-teaser--v2 .content-wide {
  text-align: left;
}

.home-gebet-teaser__intro {
  text-align: center;
  margin-bottom: 2rem;
}

.home-gebet-teaser--v2 .section-tag {
  color: var(--gold-light);
}

.home-gebet-teaser--v2 .home-gebet-teaser__title {
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 3.5vw, 2.1rem);
  color: var(--cream);
  margin: 0.5rem 0 0;
}

.home-gebet-teaser__grid {
  display: grid;
  gap: 1.5rem;
  max-width: 960px;
  margin: 0 auto;
}

@media (min-width: 900px) {
  .home-gebet-teaser__grid {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }
}

.home-gebet-teaser__panel {
  border-radius: var(--radius-lg);
  padding: 1.5rem 1.35rem;
}

.home-gebet-teaser__panel--verse {
  background: rgba(250, 246, 238, 0.06);
  border: 1px solid rgba(201, 168, 76, 0.28);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
}

.home-gebet-teaser__panel--copy {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.home-gebet-teaser__verse {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(1.05rem, 2.5vw, 1.28rem);
  line-height: 1.55;
  color: rgba(250, 246, 238, 0.95);
  margin: 0;
  border: none;
  padding: 0;
}

.home-gebet-teaser__verse cite {
  display: block;
  margin-top: 0.85rem;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold-light);
}

.home-gebet-teaser--v2 .home-gebet-teaser__text {
  max-width: none;
  margin: 0 0 1.25rem;
  color: rgba(250, 246, 238, 0.88);
  line-height: 1.7;
}

.home-gebet-teaser__cta {
  margin: 0;
}

.home-gebet-teaser__strip {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  margin-top: 2.25rem;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .home-gebet-teaser__strip {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

.home-gebet-teaser__pill {
  flex: 1 1 200px;
  background: rgba(0, 0, 0, 0.2);
  border-radius: var(--radius-lg);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 1rem 1.1rem;
  min-height: 5.5rem;
}

.home-gebet-teaser__pill-text {
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(250, 246, 238, 0.9);
  margin: 0 0 0.65rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-gebet-teaser__pill-meta {
  font-size: 0.72rem;
  color: rgba(250, 246, 238, 0.55);
  font-weight: 600;
  letter-spacing: 0.02em;
}

/* Gebets-Teaser Layout v3 (Band + Karte + Liste) */
.home-gebet-teaser--v3 .content-wide {
  text-align: left;
  max-width: 720px;
}

.home-gebet-teaser__verse-band {
  margin: 0 0 1.75rem;
  padding: 1.35rem 1.25rem 1.4rem 1.5rem;
  border-radius: var(--radius-lg);
  border-left: 4px solid var(--gold);
  background: var(--cream);
  box-shadow: 0 14px 36px rgba(10, 22, 40, 0.12);
  position: relative;
}

.home-gebet-teaser__verse-mark {
  position: absolute;
  top: 0.35rem;
  left: 0.65rem;
  font-family: var(--font-serif);
  font-size: 2.5rem;
  line-height: 1;
  color: rgba(232, 213, 160, 0.35);
  pointer-events: none;
}

.home-gebet-teaser__verse-text {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(1.08rem, 2.6vw, 1.32rem);
  line-height: 1.55;
  color: var(--text-dark);
  margin: 0 0 0.75rem;
  padding-left: 0.5rem;
}

.home-gebet-teaser__verse-cite {
  display: block;
  margin: 0;
  padding-left: 0.5rem;
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 700;
  font-size: 0.75rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

.home-gebet-teaser__action-card {
  padding: 1.5rem 1.35rem;
  border-radius: var(--radius-lg);
  background: #fff;
  border: 1px solid rgba(19, 39, 68, 0.1);
  margin-bottom: 2rem;
}

.home-gebet-teaser--v3 .home-gebet-teaser__text {
  margin: 0 0 1.15rem;
  color: var(--text-body);
  line-height: 1.7;
}

.home-gebet-teaser__prayer-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.home-gebet-teaser__prayer-card {
  position: relative;
  padding: 1.1rem 1.15rem 1.1rem 1.35rem;
  border-radius: var(--radius);
  background: #fff;
  border: 1px solid rgba(19, 39, 68, 0.1);
}

.home-gebet-teaser__prayer-card__accent {
  position: absolute;
  left: 0;
  top: 0.65rem;
  bottom: 0.65rem;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--gold-light), var(--gold));
  opacity: 0.85;
}

.home-gebet-teaser__prayer-card__text {
  margin: 0 0 0.55rem;
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--text-body);
}

.home-gebet-teaser__prayer-card__meta {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--soft-gray);
  letter-spacing: 0.03em;
}

/* Mehrspaltige TextblÃƒÂ¶cke + AufzÃƒÂ¤hlungen (Spenden, Mission, Ã¢â‚¬Â¦) */
.rich-text-blocks__list {
  margin: 0.35rem 0 0;
  padding: 0;
  list-style: none;
  color: var(--text-body);
  line-height: 1.65;
}

.rich-text-blocks__list li {
  position: relative;
  margin: 0.45rem 0;
  padding-left: 1.65rem;
}

.rich-text-blocks__list li::before {
  content: '';
  position: absolute;
  left: 0.2rem;
  top: 0.55em;
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(var(--gold), var(--gold)) center/100% 1.5px no-repeat,
    linear-gradient(var(--gold), var(--gold)) center/1.5px 100% no-repeat;
  opacity: 0.88;
}

.rich-text-blocks__list ul {
  margin-top: 0.35rem;
}

.rich-text-blocks__list ul li::before {
  width: 0.38rem;
  height: 0.38rem;
  opacity: 0.65;
}

.sl-spenden-rich,
.sl-flatrate-rich,
.sl-geschenk-rich,
.mission-rich {
  display: flex;
  flex-direction: column;
  gap: 1.35rem;
}

.sl-spenden-rich__block,
.sl-flatrate-rich__block,
.sl-geschenk-rich__block,
.mission-rich__chunk {
  padding: 1.15rem 1.25rem;
  border-radius: var(--radius);
  background: rgba(19, 39, 68, 0.03);
  border: 1px solid rgba(19, 39, 68, 0.07);
}

.sl-spenden-trust--after-form {
  margin-top: 2.75rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(19, 39, 68, 0.1);
}

.sl-geschenk-erwartet--prominent {
  margin: 1.75rem 0 1.5rem;
  padding: 1.5rem 1.35rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, var(--cream) 0%, rgba(250, 246, 238, 0.65) 100%);
  border: 1px solid rgba(201, 168, 76, 0.22);
}

.sl-geschenk-erwartet__h {
  font-family: var(--font-serif);
  font-size: 1.55rem;
  color: var(--text-dark);
  margin: 0 0 0.75rem;
}

.sl-geschenk-form {
  margin-top: 0.5rem;
}

.home-kurztext {
  padding: 4rem 0;
  background: linear-gradient(180deg, var(--warm-white) 0%, var(--cream) 100%);
}

/* .content-wide umschlieÃƒÅ¸t die Innenspalte Ã¢â‚¬â€ Sektion bleibt volle Breite (Gradient) */
.home-kurztext .content-wide .home-kurztext__inner {
  max-width: 40rem;
  margin: 0 auto;
}

.home-kurztext__h2 {
  font-size: clamp(1.65rem, 3.5vw, 2.15rem);
  margin: 1.75rem 0 1rem;
  color: var(--text-dark);
}

.home-kurztext__call {
  font-size: 1.05rem;
  line-height: 1.75;
  color: var(--text-body);
}

/* Startseite: zusÃƒÂ¤tzliche Inhalte (SÃƒÂ¤ulen, Ablauf, Zitat) */
.home-pillars {
  padding: 3.5rem 0 2rem;
  background: var(--cream);
}

.home-pillars__head {
  text-align: center;
  max-width: 36rem;
  margin: 0 auto 2.25rem;
}

.home-pillars__head h2 {
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.8vw, 2.35rem);
  font-weight: 600;
  color: var(--text-dark);
  margin: 0.75rem 0 0;
  line-height: 1.2;
}

.home-pillars__grid {
  display: grid;
  gap: 1.35rem;
  max-width: 1100px;
  margin: 0 auto;
}

@media (min-width: 720px) {
  .home-pillars__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.home-pillar-card {
  background: var(--warm-white);
  border: 1px solid rgba(30, 58, 95, 0.12);
  border-radius: 16px;
  padding: 1.5rem 1.35rem;
  box-shadow: 0 12px 40px rgba(10, 22, 40, 0.06);
}

.home-pillar-card__title {
  font-size: 1.08rem;
  font-weight: 700;
  color: var(--royal-blue);
  margin: 0 0 0.65rem;
  letter-spacing: -0.02em;
}

.home-pillar-card__text {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--text-body);
}

.home-steps {
  padding: 3.5rem 0;
  background: linear-gradient(180deg, var(--cream) 0%, var(--warm-white) 45%, var(--warm-white) 100%);
}

.home-steps__inner {
  max-width: 44rem;
  margin: 0 auto;
}

.home-steps__inner > .section-tag {
  display: block;
  text-align: center;
}

.home-steps__inner h2 {
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.6vw, 2.2rem);
  font-weight: 600;
  text-align: center;
  color: var(--text-dark);
  margin: 0.75rem 0 1rem;
  line-height: 1.22;
}

.home-steps__intro {
  text-align: center;
  font-size: 1.02rem;
  line-height: 1.7;
  color: var(--text-body);
  margin: 0 auto 2.25rem;
  max-width: 38rem;
}

.home-steps__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.home-step {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(30, 58, 95, 0.1);
  border-radius: 14px;
  padding: 1.15rem 1.2rem;
}

.home-step__num {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 0.95rem;
  color: var(--cream);
  background: linear-gradient(145deg, #1e3a5f 0%, #132744 100%);
  box-shadow: 0 4px 14px rgba(19, 39, 68, 0.25);
}

.home-step__title {
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--royal-blue);
  margin: 0 0 0.35rem;
}

.home-step__body p {
  margin: 0;
  font-size: 0.94rem;
  line-height: 1.65;
  color: var(--text-body);
}

.home-quote-band {
  padding: 3rem 0 3.5rem;
  background: var(--midnight);
  color: var(--cream);
}

.home-quote-band__inner {
  text-align: center;
  max-width: 38rem;
  margin: 0 auto;
}

.home-quote-band__quote {
  margin: 0;
  padding: 0;
  border: none;
  font-family: var(--font-serif);
  font-size: clamp(1.25rem, 2.8vw, 1.65rem);
  font-weight: 500;
  font-style: italic;
  line-height: 1.55;
  color: rgba(250, 246, 238, 0.95);
}

.home-quote-band__quote p {
  margin: 0 0 1rem;
}

.home-quote-band__quote cite {
  display: block;
  font-family: 'Nunito Sans', system-ui, sans-serif;
  font-style: normal;
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(201, 168, 76, 0.88);
}

.home-quote-band__cta {
  margin: 1.75rem 0 0;
}

.home-quote-band__cta .btn-secondary {
  border-color: rgba(201, 168, 76, 0.45);
  color: var(--cream);
}

.home-quote-band__cta .btn-secondary:hover,
.home-quote-band__cta .btn-secondary:focus-visible {
  border-color: var(--gold-light);
  color: var(--gold-light);
  transform: translateY(-1px);
  box-shadow: 0 0 14px rgba(201, 168, 76, 0.24), 0 8px 20px rgba(6, 16, 30, 0.16);
}

.home-hermine__intro {
  margin-bottom: 2rem;
  max-width: 42rem;
}

.home-hermine__grid {
  margin-top: 0.5rem;
}

.home-hermine__cta {
  text-align: center;
  margin-top: 2.5rem;
}

.home-impulses__cta {
  text-align: center;
  margin-top: 2rem;
}

.home-impulses__cta .btn-primary {
  display: inline-flex;
}

.home-impulse-card__date {
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--soft-gray);
  margin-top: 0.65rem;
}

.blog-inner.content-wide {
  max-width: 1100px;
  width: 100%;
}

/* Startseite: Impulse Ã¢â‚¬â€œ Editorial */
/* Startseite Impulse – angelehnt an /impulse (Creme-Intro + Navy Feature) */
.home-impulses {
  padding: 0;
  background: var(--cream);
}

.home-impulses__intro {
  padding: clamp(3rem, 7vw, 5rem) clamp(1.25rem, 4vw, 2rem) clamp(2.35rem, 5vw, 3.25rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, var(--cream) 100%);
}

.home-impulses__intro-inner {
  max-width: 42rem;
  margin: 0 auto;
  text-align: center;
}

.home-impulses__dual {
  margin-bottom: 0;
}

.home-impulses__intro-inner .home-section-ornament {
  width: min(100%, 11rem);
  margin: clamp(0.7rem, 1.6vw, 1rem) auto 0;
}

.home-impulses__lead {
  margin: clamp(1rem, 2.2vw, 1.35rem) auto 0;
  max-width: 34rem;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.78;
  color: var(--deep-navy);
  text-wrap: balance;
}

.home-impulses__feature {
  padding: 0 clamp(1.25rem, 4vw, 2rem) clamp(2.75rem, 6vw, 4rem);
  background: var(--cream);
}

.home-impulses__navy {
  width: min(100%, 34rem);
  margin: 0 auto;
  padding: clamp(1rem, 2.2vw, 1.35rem);
  background: linear-gradient(165deg, #0a1628 0%, #0f1f36 48%, #132744 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 1rem;
  box-shadow: 0 16px 40px rgba(10, 22, 40, 0.18);
}

.home-impulses__navy-label {
  margin: 0 0 clamp(0.75rem, 1.8vw, 1rem);
  text-align: center;
  font-family: var(--font-sans);
  font-size: clamp(0.66rem, 1.3vw, 0.74rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #e8d5a0;
}

.home-impulses__card {
  position: relative;
  margin: 0 auto;
  padding: clamp(1.65rem, 3.5vw, 2.15rem) clamp(1.35rem, 3vw, 1.85rem) clamp(1.45rem, 3vw, 1.85rem);
  text-align: left;
  background: linear-gradient(180deg, #fffdf8 0%, #faf6ee 100%);
  border: 1px solid rgba(201, 168, 76, 0.42);
  border-radius: 0.9rem;
  box-shadow:
    0 14px 36px rgba(10, 22, 40, 0.18),
    0 2px 8px rgba(10, 22, 40, 0.08);
  overflow: hidden;
}

.home-impulses__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(201, 168, 76, 0.75), transparent);
}

.home-impulses__card-date {
  display: block;
  margin: 0 0 0.75rem;
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.2vw, 0.7rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #c9a050;
}

.home-impulses__card-title {
  margin: 0 0 0.85rem;
  font-family: var(--font-serif);
  font-size: clamp(1.35rem, 2.8vw, 1.75rem);
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #0f1f36;
}

.home-impulses__card-teaser {
  margin: 0 0 1.35rem;
  font-family: var(--font-serif);
  font-size: clamp(0.98rem, 1.8vw, 1.06rem);
  line-height: 1.68;
  color: rgba(19, 39, 68, 0.82);
}

.home-impulses__card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.55rem;
  padding: 0.55rem 1.25rem;
  border-radius: 999px;
  border: 1px solid rgba(201, 168, 76, 0.55);
  background: rgba(250, 246, 238, 0.92);
  font-family: var(--font-sans);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  color: #0f1f36;
  transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease;
}

.home-impulses__feature-cta {
  margin: clamp(1.25rem, 2.8vw, 1.65rem) 0 0;
  text-align: center;
}

.home-impulses__more-btn {
  color: var(--deep-navy);
  border-color: rgba(201, 168, 76, 0.55);
  background: transparent;
}

.home-impulses__empty {
  margin: 0;
  text-align: center;
  color: var(--soft-gray);
}

@media (hover: hover) and (pointer: fine) {
  .home-impulses__card-cta:hover,
  .home-impulses__card-cta:focus-visible {
    background: #fff;
    border-color: rgba(201, 168, 76, 0.85);
    color: #0a1628;
  }

  .home-impulses__more-btn:hover,
  .home-impulses__more-btn:focus-visible {
    color: var(--midnight);
    border-color: rgba(168, 136, 55, 0.85);
    background: rgba(201, 168, 76, 0.1);
  }
}

.home-gebet-teaser__prayer-card__name {
  margin: 0 0 0.45rem;
  font-family: var(--font-serif);
  font-size: 1.15rem;
  color: var(--text-dark);
}

/* -------------------------------------------------------------------------- */
/* 21b. Kampagne Ã¢â‚¬Å¾Ohne Gott geht das nichtÃ¢â‚¬Å“ (Schriftbild im Legacy-Hero)      */
/* -------------------------------------------------------------------------- */

.modo-ohne-gott .hero-content .oggn-schriftbild {
  max-width: 42rem;
  margin: 0 auto;
  text-align: center;
}

.modo-ohne-gott .oggn-schriftbild__kicker {
  margin: 0 0 1rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(201, 168, 76, 0.9);
  font-family: 'Nunito Sans', system-ui, sans-serif;
}

.modo-ohne-gott .oggn-schriftbild__title {
  margin: 0;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
  font-size: clamp(2.35rem, 7.5vw, 3.65rem);
  line-height: 1.12;
  color: var(--cream, #faf6ee);
}

.modo-ohne-gott .hero-content h1.oggn-schriftbild__title {
  margin-bottom: 0;
}

.modo-ohne-gott .oggn-schriftbild__line1 {
  display: block;
  background: linear-gradient(135deg, #faf6ee 0%, #e8d5a0 42%, #c9a84c 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.modo-ohne-gott .oggn-schriftbild__line2 {
  display: block;
  margin-top: 0.18em;
  color: var(--cream, #faf6ee);
}

.modo-ohne-gott .oggn-schriftbild__line2 em {
  font-style: italic;
  font-weight: 500;
  color: var(--gold, #c9a84c);
}

.modo-ohne-gott .oggn-schriftbild__lead {
  margin: 1.5rem auto 0;
  max-width: 28rem;
  font-size: 1.05rem;
  line-height: 1.65;
  color: rgba(250, 246, 238, 0.85);
  font-family: 'Nunito Sans', system-ui, sans-serif;
}

.modo-ohne-gott .oggn-schriftbild .hero-buttons {
  margin-top: 1.75rem;
}

.modo-ohne-gott .hero-buttons--oggn {
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.65rem 0.75rem;
}

.modo-ohne-gott .oggn-schriftbild__line2--article {
  color: rgba(250, 246, 238, 0.92);
  font-weight: 500;
}

.modo-ohne-gott .oggn-schriftbild__line2--article em {
  font-style: italic;
  color: var(--gold, #c9a84c);
}

/* -------------------------------------------------------------------------- */
/* 22. Responsive Feinjustierung                                              */
/* -------------------------------------------------------------------------- */

@media (max-width: 767px) {
  .hero-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-buttons .btn-primary,
  .hero-buttons .btn-secondary {
    width: 100%;
    justify-content: center;
  }

  .newsletter-form {
    flex-direction: column;
  }

  .newsletter-form button {
    width: 100%;
  }
}

@media (min-width: 1024px) {
  #navbar {
    padding: 0 2.5rem;
  }
}

/* -------------------------------------------------------------------------- */
/* 23. Gateway / Baustellenseite                                              */
/* -------------------------------------------------------------------------- */

body.page-gateway {
  min-height: 100vh;
  min-height: 100dvh;
  background:
    radial-gradient(65rem 65rem at 78% 50%, rgba(201, 168, 76, 0.14), transparent 62%),
    linear-gradient(150deg, #060d18 0%, #0a1628 45%, #101f36 100%);
  color: var(--cream);
  overflow: hidden;
}

/* rechter Gold-Glow mit sanfter Atem-Animation */
.page-gateway .glow-sphere {
  position: fixed;
  right: -100px;
  top: 50%;
  transform: translateY(-50%);
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(0, 0, 0, 0) 70%);
  border-radius: 50%;
  filter: blur(40px);
  animation: breathe 8s infinite ease-in-out;
  pointer-events: none;
  z-index: 0;
}

.page-gateway .gateway-shell {
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 36vw);
  align-items: center;
  gap: 1.25rem;
  padding: 1.5rem;
  position: relative;
  z-index: 1;
}

.page-gateway .gateway-brand-wrap {
  display: flex;
  justify-content: center;
}

.page-gateway .gateway-brand {
  appearance: none;
  border: 1px solid rgba(201, 168, 76, 0.35);
  background: rgba(250, 246, 238, 0.04);
  color: var(--cream);
  border-radius: 22px;
  padding: 2rem 2.2rem;
  text-align: center;
  cursor: pointer;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.page-gateway .gateway-brand:hover {
  transform: translateY(-2px);
  border-color: rgba(201, 168, 76, 0.6);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
}

.page-gateway .gateway-brand__kicker {
  display: block;
  font-size: 0.68rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(201, 168, 76, 0.92);
  margin-bottom: 0.6rem;
}

.page-gateway .gateway-brand__title {
  display: block;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 5.2vw, 3rem);
  line-height: 1.05;
}

.page-gateway .gateway-brand__hint {
  display: block;
  margin-top: 0.8rem;
  font-size: 0.86rem;
  color: rgba(250, 246, 238, 0.7);
}

.page-gateway .gateway-visual {
  position: relative;
  width: min(34vw, 22rem);
  aspect-ratio: 1;
  justify-self: center;
}

.page-gateway .gateway-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(201, 168, 76, 0.22);
  box-shadow: 0 0 38px rgba(201, 168, 76, 0.08);
  animation: gatewayPulse 7.2s ease-in-out infinite;
}

.page-gateway .gateway-ring--b {
  inset: 12%;
  animation-delay: 1.2s;
}

.page-gateway .gateway-ring--c {
  inset: 24%;
  animation-delay: 2.4s;
}

@keyframes gatewayPulse {
  0%, 100% {
    transform: scale(0.98);
    opacity: 0.55;
  }
  50% {
    transform: scale(1.04);
    opacity: 1;
  }
}

@keyframes breathe {
  0%, 100% {
    transform: translateY(-50%) scale(1);
    opacity: 0.3;
  }
  50% {
    transform: translateY(-50%) scale(1.2);
    opacity: 0.6;
  }
}

.page-gateway .gateway-modal {
  position: relative;
  inset: auto;
  z-index: 2;
  opacity: 1;
  pointer-events: auto;
  transition: none;
  width: 100%;
  max-width: 460px;
}

.page-gateway .gateway-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}

.page-gateway .gateway-modal__backdrop {
  display: none;
}

.page-gateway .gateway-modal__card {
  position: relative;
  width: 100%;
  margin: 0;
  background: linear-gradient(145deg, #0d1728 0%, #121f36 100%);
  border: 1px solid rgba(201, 168, 76, 0.35);
  border-radius: 16px;
  padding: 1.25rem 1.25rem 1.35rem;
  box-shadow: 0 25px 55px rgba(0, 0, 0, 0.45);
}

.page-gateway .gateway-modal__close {
  display: none;
}

.page-gateway .gateway-modal__card h1 {
  color: var(--cream);
  margin: 0 0 0.55rem;
  font-size: 1.45rem;
}

.page-gateway .gateway-modal__card p {
  margin: 0 0 1rem;
  color: rgba(250, 246, 238, 0.74);
}

.page-gateway .gateway-form label {
  display: block;
  font-size: 0.88rem;
  margin-bottom: 0.35rem;
}

.page-gateway .gateway-form input {
  width: 100%;
  border: 1px solid rgba(201, 168, 76, 0.35);
  background: rgba(6, 13, 24, 0.7);
  color: var(--cream);
  border-radius: 10px;
  padding: 0.65rem 0.75rem;
}

.page-gateway .gateway-form button {
  width: 100%;
  margin-top: 0.8rem;
  border: 0;
  border-radius: 999px;
  padding: 0.72rem 1rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: var(--gold);
  color: var(--midnight);
  cursor: pointer;
}

.page-gateway .gateway-form__error {
  color: #ffb4b4 !important;
  margin-top: 0.75rem !important;
  margin-bottom: 0 !important;
}

@media (max-width: 900px) {
  .page-gateway .gateway-shell {
    grid-template-columns: 1fr;
    gap: 1.65rem;
    text-align: center;
  }

  .page-gateway .gateway-visual {
    width: min(62vw, 16rem);
  }
}

/* -------------------------------------------------------------------------- */
/* Golden breath Ã¢â‚¬â€ gradient text + slow metallic sweep (utility class) */
/* -------------------------------------------------------------------------- */
.gold-breath-text {
  font-family: 'Cormorant Garamond', serif;
  background: linear-gradient(
    90deg,
    #c9a84c 0%,
    #f5ebd3 30%,
    #fefcf7 50%,
    #f5ebd3 70%,
    #c9a84c 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  display: inline-block;
  animation: goldSweep 15s linear infinite;
  filter: drop-shadow(0 0 10px rgba(201, 168, 76, 0.2));
  font-weight: 600;
  font-size: 3rem;
}

@keyframes goldSweep {
  0% {
    background-position: 0% center;
  }
  100% {
    background-position: 200% center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gold-breath-text {
    animation: none;
    background-position: 50% center;
  }
}

/* -------------------------------------------------------------------------- */
/* SeitenÃƒÂ¼berschriften zweizeilig (ÃƒÂ¶ffentliche Seiten)                         */
/* -------------------------------------------------------------------------- */

.page-title-dual {
  text-align: center;
  margin-bottom: 1.75rem;
  line-height: 1.18;
}

.page-title-dual__line1 {
  display: block;
  font-family: var(--font-serif);
  font-size: clamp(1.65rem, 4vw, 2.35rem);
  font-weight: 700;
  color: var(--text-dark);
}

.page-title-dual__line2 {
  display: block;
  margin-top: 0.35rem;
  font-family: var(--font-sans);
  font-size: clamp(1.05rem, 2.4vw, 1.35rem);
  font-weight: 500;
  color: var(--soft-gray);
  letter-spacing: 0.02em;
}

.page-title-dual--hero .page-title-dual__line1,
.page-title-dual--hero .page-title-dual__line2 {
  color: inherit;
}

.hero-content--centered {
  text-align: center;
  align-items: center;
}

.hero-content--centered .hero-subtitle,
.hero-content--centered .hero-buttons {
  margin-left: auto;
  margin-right: auto;
}

.page-hermine .hero-content--centered {
  margin-left: auto;
  margin-right: auto;
}

/* Startseite: weniger Leerraum vor Ã¢â‚¬Å¾Nahrung fÃƒÂ¼r Herz & SeeleÃ¢â‚¬Å“ */
.page-home #hermine.offerings {
  padding-top: 2.75rem;
}

.nav-cta--ghost {
  background: transparent !important;
  color: var(--gold-light) !important;
  border: 2px solid rgba(201, 168, 76, 0.65) !important;
  box-shadow: none !important;
}

.nav-cta--ghost:hover {
  background: rgba(201, 168, 76, 0.18) !important;
  color: var(--cream) !important;
}

body.is-inner .nav-cta--ghost {
  color: var(--gold-light) !important;
}

body.page-spenden .nav-links > li > .nav-cta:not(.nav-cta--ghost) {
  background: transparent !important;
  color: #fff !important;
  border: 2px solid rgba(255, 255, 255, 0.72) !important;
  box-shadow: none !important;
}

body.page-spenden .nav-links > li > .nav-cta:not(.nav-cta--ghost):hover {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.92) !important;
}

/* Impuls-Archiv: zuverlÃƒÂ¤ssiges Aufklappen (Fallback neben CSS-Grid 0fr/1fr) */
.sl-impulse-item__panel {
  display: block;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.55s ease;
}

.sl-impulse-item__panel.is-open {
  max-height: min(240vh, 8000px);
}

.sl-impulse-item.is-expanded .sl-impulse-item__chevron {
  transform: rotate(-135deg);
}

/* Archiv mit <details>: Browser steuert Sichtbarkeit Ã¢â‚¬â€ kein max-height */
.sl-impulse-item--details > .sl-impulse-item__panel {
  max-height: none !important;
  overflow: visible;
  transition: none;
}

.sl-impulse-item__summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.25rem 1rem;
  cursor: pointer;
  list-style: none;
}

.sl-impulse-item__summary::-webkit-details-marker {
  display: none;
}

.sl-impulse-item__summary-main {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  flex: 1;
  min-width: 0;
  text-align: left;
}

.sl-impulse-item--details .sl-impulse-item__title {
  display: block;
  font-family: var(--font-serif);
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--text-dark);
  margin: 0;
}

.sl-impulse-item--details .sl-impulse-item__teaser {
  display: block;
  margin: 0;
  font-size: 0.95rem;
  font-style: italic;
  color: var(--text-body);
  line-height: 1.55;
}

.sl-impulse-item__summary-hint {
  flex-shrink: 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gold);
  align-self: center;
}

.sl-impulse-item--details .sl-impulse-item__chevron {
  flex-shrink: 0;
  align-self: center;
}

.sl-impulse-item--details[open] .sl-impulse-item__chevron {
  transform: rotate(-135deg);
}

/* Hermine /start: Foto im Kreis + Kreuz */
.mission-image--photo {
  position: relative;
  background: radial-gradient(circle at 50% 45%, rgba(201, 168, 76, 0.2), transparent 55%);
}

.mission-image--photo .mission-image__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}

.mission-image--photo .mission-cross {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(2.5rem, 8vw, 4rem);
  color: rgba(201, 168, 76, 0.92);
  text-shadow: 0 0 24px rgba(0, 0, 0, 0.35);
  pointer-events: none;
}

.book-info .book-sub {
  font-size: 0.92rem;
  color: var(--soft-gray);
  margin: 0 0 0.5rem;
}

.blog-more {
  text-align: center;
  margin-top: 1.5rem;
}

/* Gebetsseite: Einleitung ohne Rahmen, mittig & luftig */
.gebet-intro {
  max-width: 40rem;
  margin: 0 auto 3.25rem;
  padding: 0 1.25rem 1rem;
  text-align: center;
}

.gebet-intro__inner {
  margin: 0 0 1.75rem;
  line-height: 1.85;
  color: var(--text-body);
  font-size: 1.05rem;
}

.gebet-intro__cta {
  margin: 0;
}

.gebet-intro__cta .btn-primary {
  display: inline-flex;
}

/* Ermutigungsseiten + Gebetsseite: Versbanner einheitlich (kompakte Karte) */
.page-gebet .verse-banner.verse-banner--editorial,
.verse-banner.verse-banner--encouragement-end,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] {
  --verse-shell-pad-y: clamp(1.15rem, 2.5vw, 1.55rem);
  --verse-shell-pad-x: clamp(1.15rem, 3.5vw, 1.85rem);
  --verse-shell-text-min: calc(2em * 1.55);
  --verse-shell-expand: 2.05rem;
  --verse-shell-ornament: 1.65rem;
  --verse-shell-more: 2.1rem;
  --verse-shell-min: 12rem;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: var(--verse-shell-pad-y) var(--verse-shell-pad-x);
  border-radius: 0;
  border: none;
  border-top: 1px solid rgba(201, 168, 76, 0.22);
  box-shadow: none;
}

.verse-banner.verse-banner--encouragement-end {
  margin-top: clamp(1rem, 2vw, 1.35rem);
}

.verse-banner.verse-banner--encouragement-end:not(.is-expanded-shell),
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner]:not(.is-expanded-shell) {
  min-height: var(--verse-shell-min);
}

.page-gebet .verse-banner.verse-banner--editorial.verse-banner--editorial-navy,
.verse-banner.verse-banner--encouragement-end.verse-banner--editorial-navy,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] {
  background-image: linear-gradient(165deg, #1c3456 0%, var(--deep-navy) 58%, #152a45 100%);
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__rays,
.verse-banner.verse-banner--encouragement-end .verse-banner__rays,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__rays {
  opacity: 0.42;
}

.page-gebet .verse-banner.verse-banner--editorial blockquote,
.verse-banner.verse-banner--encouragement-end blockquote,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] blockquote {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: clamp(1.38rem, 2.65vw, 1.72rem);
  line-height: 1.55;
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__text-wrap,
.verse-banner.verse-banner--encouragement-end .verse-banner__text-wrap,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text-wrap {
  flex: 1 1 auto;
  justify-content: center;
  min-height: var(--verse-shell-text-min);
  width: 100%;
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__text,
.verse-banner.verse-banner--encouragement-end .verse-banner__text,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text {
  max-width: 36rem;
  font-size: clamp(1.38rem, 2.65vw, 1.72rem);
  line-height: 1.55;
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__ornament,
.verse-banner.verse-banner--encouragement-end .verse-banner__ornament,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__ornament {
  flex-shrink: 0;
  width: min(100%, 11.5rem);
  min-height: var(--verse-shell-ornament);
  margin: 0 auto;
  align-items: center;
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__ornament-img,
.verse-banner.verse-banner--encouragement-end .verse-banner__ornament-img,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__ornament-img {
  max-width: 11.5rem;
  max-height: 1.45rem;
  opacity: 0.72;
}

.page-gebet .verse-banner.verse-banner--editorial cite,
.verse-banner.verse-banner--encouragement-end cite,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] cite {
  flex-shrink: 0;
  font-size: 0.62rem;
  letter-spacing: 0.22em;
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__more,
.verse-banner.verse-banner--encouragement-end .verse-banner__more,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__more {
  flex-shrink: 0;
  min-height: var(--verse-shell-more);
  margin-top: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-gebet .verse-banner.verse-banner--editorial .verse-banner__more-btn,
.verse-banner.verse-banner--encouragement-end .verse-banner__more-btn,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__more-btn {
  font-size: 0.68rem;
  padding: 0.32rem 0.75rem;
}

.verse-banner__more--spacer {
  visibility: hidden;
  pointer-events: none;
}

@media (min-width: 768px) {
  .page-gebet .verse-banner.verse-banner--editorial,
  .verse-banner.verse-banner--encouragement-end,
  .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] {
    --verse-shell-text-min: calc(2em * 1.55);
    --verse-shell-min: 13rem;
  }
}

.verse-banner.verse-banner--encouragement-end.is-expanded-shell,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell {
  min-height: 0;
}

.verse-banner.verse-banner--encouragement-end.is-expanded-shell .verse-banner__text-wrap,
.verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell .verse-banner__text-wrap {
  min-height: 0;
}

/* Gebetswand: Überschrift + Bibelvers zentriert */
.page-gebet .gebet-pinboard .sl-section-heading,
.page-gebet .gebet-pinboard .gebet-wall-verse,
.page-gebet .gebet-pinboard > .sl-tier-intro,
.page-gebet .gebet-pinboard__shell > .sl-tier-intro {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.page-gebet .gebet-pinboard .sl-section-heading {
  margin-bottom: 0.75rem;
}

/* Gebetsseite – Redesign (nur .page-gebet) */
.page-gebet #main-content {
  padding-left: 0;
  padding-right: 0;
}

.page-gebet #main-content > .article-shell,
.page-gebet .article-shell {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  overflow-x: clip;
}

.page-gebet .gebet-hero {
  margin: 0 0 clamp(1.5rem, 3vw, 2rem);
  padding: clamp(1.75rem, 3.5vw, 2.5rem) clamp(1.25rem, 4vw, 2rem) clamp(1.35rem, 2.8vw, 1.85rem);
  border-radius: 0;
  background: none;
  border: none;
  box-shadow: none;
  text-align: center;
}

.page-gebet .gebet-hero .page-title-dual--inner:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.page-gebet .gebet-hero > .home-section-ornament {
  margin-bottom: clamp(1.15rem, 2.4vw, 1.55rem);
}

.page-gebet .gebet-intro {
  max-width: 38rem;
  margin: 0 auto;
  padding: 0;
}

.page-gebet .gebet-intro__inner,
.page-gebet .gebet-intro__inner p {
  margin: 0 0 1.35rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.78;
  color: var(--text-body);
  text-wrap: pretty;
}

.page-gebet .gebet-section-head {
  text-align: center;
  margin: 0 0 clamp(1rem, 2.2vw, 1.35rem);
}

.page-gebet .gebet-section-head .sl-section-heading {
  margin: 0;
}

.page-gebet .gebet-section-head .home-section-ornament {
  margin-top: 0.75rem;
  margin-bottom: 0;
}

.page-gebet .gebet-pinboard {
  width: 100%;
  max-width: none;
  margin: clamp(2rem, 4vw, 2.75rem) 0 clamp(2rem, 4vw, 3rem);
  padding: clamp(2.25rem, 4.5vw, 3.5rem) clamp(1.25rem, 4vw, 2rem);
  border-radius: 0;
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 55%, #152a45 100%);
  border: none;
  box-shadow: none;
}

.page-gebet .gebet-pinboard .gebet-section-head .sl-section-heading {
  color: var(--warm-white);
  font-size: clamp(1.55rem, 3.2vw, 1.95rem);
}

.page-gebet .gebet-pinboard .gebet-section-head .home-section-ornament__line {
  background: rgba(201, 168, 76, 0.45);
}

.page-gebet .gebet-pinboard__shell {
  max-width: min(100%, 70rem);
  margin: 0 auto;
}

.page-gebet .gebet-pinboard__board {
  position: relative;
  margin-top: clamp(1rem, 2.2vw, 1.35rem);
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

.page-gebet .gebet-pinboard .gebet-wall-verse--shield {
  position: relative;
  z-index: 1;
  max-width: min(100%, 34rem);
  margin: 0 auto clamp(1.35rem, 2.8vw, 1.75rem);
  padding: clamp(1rem, 2.2vw, 1.25rem) clamp(1.15rem, 2.4vw, 1.45rem);
  border: 1px solid rgba(201, 168, 76, 0.38);
  border-radius: 0.65rem;
  background: rgba(255, 255, 255, 0.05);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.page-gebet .gebet-pinboard .gebet-wall-verse--shield::before {
  content: '';
  display: block;
  width: 2.4rem;
  height: 0.45rem;
  margin: 0 auto 0.75rem;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(201, 168, 76, 0.55), transparent);
}

.page-gebet .gebet-pinboard .gebet-wall-verse--shield .gebet-wall-verse__text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.15rem, 2.3vw, 1.36rem);
  font-style: italic;
  font-weight: 500;
  line-height: 1.62;
  color: rgba(255, 255, 255, 0.92);
}

.page-gebet .gebet-pinboard .gebet-wall-verse--shield cite {
  display: block;
  margin-top: 0.75rem;
  font-family: var(--font-sans);
  font-size: 0.74rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold-light);
}

.page-gebet .gebet-pinboard .sl-tier-intro,
.page-gebet .gebet-pinboard__shell > .sl-tier-intro {
  color: rgba(255, 255, 255, 0.72);
}

.page-gebet .gebet-pinboard__slider {
  position: relative;
}

.page-gebet .gebet-pinboard__viewport {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: visible;
  container-type: inline-size;
  container-name: gebet-viewport;
}

.page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__viewport {
  --gebet-carousel-gap: clamp(0.85rem, 1.8vw, 1.15rem);
  overflow-x: auto;
  overflow-y: visible;
}

.page-gebet .gebet-pinboard__cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(0.85rem, 1.8vw, 1.15rem);
  align-items: stretch;
  justify-items: center;
}

.page-gebet .gebet-pinboard__cards > .sl-prayer-wall__list--public {
  display: contents;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 21.25rem;
  height: 28rem;
  min-height: 28rem;
  max-height: 28rem;
  margin: 0 auto;
  padding: 2.65rem clamp(1rem, 2.2vw, 1.25rem) clamp(1rem, 2vw, 1.15rem);
  background: linear-gradient(180deg, #fffdf8 0%, #faf6ee 52%, #f5efe4 100%);
  border: 1px solid rgba(201, 168, 76, 0.48);
  border-radius: 0.65rem;
  box-shadow:
    0 10px 32px rgba(10, 22, 40, 0.2),
    0 2px 8px rgba(10, 22, 40, 0.08);
  transform: none;
  transition:
    border-color 0.28s ease,
    box-shadow 0.28s ease;
}

html.gottlebt-js .page-gebet .gebet-pinboard__cards .sl-prayer-card.reveal {
  opacity: 1;
  transform: none;
}

.page-gebet .article-prose ul.sl-prayer-wall__list--public {
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-gebet .article-prose ul.sl-prayer-wall__list--public > .sl-prayer-card {
  margin: 0 auto;
  padding: 2.65rem clamp(1rem, 2.2vw, 1.25rem) clamp(1rem, 2vw, 1.15rem);
}

.page-gebet .article-prose .gebet-pinboard__cards .sl-prayer-card::before {
  content: '';
  position: absolute;
  top: 1.45rem;
  left: 50%;
  z-index: 2;
  width: min(11.5rem, 78%);
  height: 1.1rem;
  transform: translateX(-50%);
  opacity: 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 20' fill='none'%3E%3Cline x1='4' y1='10' x2='88' y2='10' stroke='%23c9a84c' stroke-width='1' stroke-opacity='0.82'/%3E%3Cline x1='110' y1='2.5' x2='110' y2='17.5' stroke='%23c9a84c' stroke-width='1.35' stroke-linecap='round'/%3E%3Cline x1='104' y1='7.5' x2='116' y2='7.5' stroke='%23c9a84c' stroke-width='1.35' stroke-linecap='round'/%3E%3Cline x1='132' y1='10' x2='216' y2='10' stroke='%23c9a84c' stroke-width='1' stroke-opacity='0.82'/%3E%3C/svg%3E");
  filter: drop-shadow(0 1px 2px rgba(19, 39, 68, 0.1));
  pointer-events: none;
}

.page-gebet .article-prose .gebet-pinboard__cards .sl-prayer-card::after {
  content: none;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card:has(.sl-engagement-pray-btn.is-prayed) {
  border-color: rgba(201, 168, 76, 0.62);
  box-shadow:
    0 12px 36px rgba(10, 22, 40, 0.22),
    0 2px 8px rgba(10, 22, 40, 0.1);
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__text {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  margin: 0;
  padding-top: 0.85rem;
  font-size: clamp(0.98rem, 1.75vw, 1.05rem);
  line-height: 1.66;
  color: rgba(19, 39, 68, 0.92);
  white-space: pre-line;
  word-wrap: break-word;
  overflow-wrap: anywhere;
}

.page-gebet .gebet-pinboard__read-more {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  flex: 0 0 auto;
  align-self: flex-start;
  margin: 0.5rem 0 0;
  padding: 0.15rem 0;
  border: none;
  background: none;
  font-family: var(--font-sans);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: #8f6820;
  text-decoration: none;
  cursor: pointer;
  transition:
    color 0.22s ease,
    gap 0.22s ease;
}

.page-gebet .gebet-pinboard__read-more__arrow {
  display: inline-flex;
  flex-shrink: 0;
  color: var(--gold);
  line-height: 0;
}

.page-gebet .gebet-pinboard__read-more__arrow svg {
  width: 0.85rem;
  height: 0.85rem;
  transition: transform 0.22s ease;
}

.page-gebet .gebet-pinboard__read-more:hover,
.page-gebet .gebet-pinboard__read-more:focus-visible {
  color: #a67f2e;
  gap: 0.55rem;
}

.page-gebet .gebet-pinboard__read-more:hover .gebet-pinboard__read-more__arrow svg,
.page-gebet .gebet-pinboard__read-more:focus-visible .gebet-pinboard__read-more__arrow svg {
  transform: translateX(2px);
}

.page-gebet .gebet-pinboard__read-more:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.75);
  outline-offset: 2px;
  border-radius: 0.15rem;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer {
  padding-top: 0.85rem;
  margin-top: auto;
  border-top: 1px solid rgba(201, 168, 76, 0.16);
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement--pray-only {
  align-items: flex-start;
  gap: 0.55rem 0.75rem;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement__pray-count:not(.is-empty) {
  display: inline-flex;
  align-items: center;
  gap: 0.38rem;
  padding: 0;
  border-radius: 0;
  background: none;
  border: none;
  font-size: 0.76rem;
  font-weight: 500;
  line-height: 1.4;
  color: rgba(19, 39, 68, 0.58);
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement__pray-count:not(.is-empty)::before {
  width: 0.72rem;
  height: 0.72rem;
  opacity: 0.92;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn {
  min-width: auto;
  min-height: 2.15rem;
  padding: 0.4rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 999px;
  background: linear-gradient(165deg, #ffffff 0%, #fffefb 52%, #faf6ee 100%);
  color: rgba(15, 31, 54, 0.9);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
  box-shadow:
    0 0 0 1px rgba(201, 168, 76, 0.28),
    0 4px 18px rgba(255, 255, 255, 0.78),
    0 10px 32px rgba(255, 255, 255, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 1);
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn:hover,
.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn:focus-visible {
  background: linear-gradient(165deg, #ffffff 0%, #fffdf9 100%);
  border-color: rgba(201, 168, 76, 0.48);
  color: var(--deep-navy);
  transform: translateY(-1px);
  box-shadow:
    0 0 0 1px rgba(201, 168, 76, 0.38),
    0 0 22px rgba(255, 255, 255, 0.85),
    0 12px 36px rgba(255, 255, 255, 0.32),
    inset 0 1px 0 #ffffff;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.75);
  outline-offset: 2px;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn.is-prayed,
.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn:disabled {
  opacity: 1;
  cursor: default;
  transform: none;
  color: rgba(19, 39, 68, 0.62);
  background: rgba(19, 39, 68, 0.04);
  border-color: rgba(201, 168, 76, 0.32);
  box-shadow: none;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn.is-prayed::before,
.page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement-pray-btn:disabled::before {
  content: '\2713';
  margin-right: 0.3rem;
  font-size: 0.78rem;
  font-weight: 700;
  color: rgba(201, 168, 76, 0.82);
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__meta {
  padding-top: 0.1rem;
  font-size: 0.78rem;
  color: rgba(19, 39, 68, 0.58);
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__author {
  color: rgba(19, 39, 68, 0.76);
  font-weight: 600;
}

.page-gebet .gebet-pinboard__nav {
  display: none;
}

.page-gebet .gebet-pinboard__dots {
  display: none;
}

.page-gebet .gebet-pinboard__pager {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.page-gebet .gebet-pinboard__pager:not([hidden]) {
  display: flex;
}

.page-gebet .gebet-pinboard__status {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 0.74rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: rgba(232, 213, 160, 0.9);
  text-align: center;
}

.page-gebet .gebet-pinboard__dot {
  box-sizing: content-box;
  width: 0.5rem;
  height: 0.5rem;
  padding: 0.5rem;
  border: none;
  border-radius: 50%;
  background-color: rgba(201, 168, 76, 0.3);
  background-clip: content-box;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    width 0.2s ease,
    height 0.2s ease,
    box-shadow 0.2s ease;
}

.page-gebet .gebet-pinboard__dot.is-active,
.page-gebet .gebet-pinboard__dot[aria-selected='true'] {
  width: 0.5625rem;
  height: 0.5625rem;
  background-color: var(--gold);
  box-shadow: 0 0 0 1.5px rgba(201, 168, 76, 0.34);
}

.page-gebet .gebet-pinboard__dot:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.75);
  outline-offset: 2px;
}

/* Gebetswand – Weiterlesen-Dialog */
.page-gebet .gebet-pinboard__dialog-root {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1rem, 3vw, 1.75rem);
}

.page-gebet .gebet-pinboard__dialog-root[hidden] {
  display: none !important;
}

.page-gebet .gebet-pinboard__dialog-root.is-open {
  display: flex;
}

.page-gebet .gebet-pinboard__dialog-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 22, 40, 0.58);
  backdrop-filter: blur(3px);
}

.page-gebet .gebet-pinboard__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 36rem);
  max-height: min(88vh, 40rem);
  overflow: auto;
  padding: clamp(1.35rem, 3vw, 1.75rem) clamp(1.25rem, 2.8vw, 1.65rem);
  border-radius: calc(var(--radius-lg) + 0.1rem);
  background: linear-gradient(160deg, rgba(255, 252, 245, 0.99) 0%, rgba(250, 246, 238, 0.97) 100%);
  border: 1px solid rgba(201, 168, 76, 0.32);
  box-shadow: 0 24px 60px rgba(10, 22, 40, 0.28);
}

.page-gebet .gebet-pinboard__dialog-close {
  position: absolute;
  top: 0.65rem;
  right: 0.65rem;
  width: 2.25rem;
  height: 2.25rem;
  min-width: 44px;
  min-height: 44px;
  border: none;
  border-radius: 50%;
  background: rgba(19, 39, 68, 0.06);
  color: var(--deep-navy);
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
}

.page-gebet .gebet-pinboard__dialog-close:hover,
.page-gebet .gebet-pinboard__dialog-close:focus-visible {
  background: rgba(19, 39, 68, 0.1);
}

.page-gebet .gebet-pinboard__dialog-close:focus-visible {
  outline: 2px solid rgba(201, 168, 76, 0.75);
  outline-offset: 2px;
}

.page-gebet .gebet-pinboard__dialog-head {
  width: min(11.5rem, 78%);
  height: 1.1rem;
  margin: 0 auto 0.85rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 20' fill='none'%3E%3Cline x1='4' y1='10' x2='88' y2='10' stroke='%23c9a84c' stroke-width='1' stroke-opacity='0.82'/%3E%3Cline x1='110' y1='2.5' x2='110' y2='17.5' stroke='%23c9a84c' stroke-width='1.35' stroke-linecap='round'/%3E%3Cline x1='104' y1='7.5' x2='116' y2='7.5' stroke='%23c9a84c' stroke-width='1.35' stroke-linecap='round'/%3E%3Cline x1='132' y1='10' x2='216' y2='10' stroke='%23c9a84c' stroke-width='1' stroke-opacity='0.82'/%3E%3C/svg%3E");
  filter: drop-shadow(0 1px 2px rgba(19, 39, 68, 0.1));
  pointer-events: none;
}

.page-gebet .gebet-pinboard__dialog-title {
  margin: 0 2rem 0.85rem 0;
  font-family: var(--font-serif);
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--deep-navy);
}

.page-gebet .gebet-pinboard__dialog-text {
  margin: 0;
  font-size: 1rem;
  line-height: 1.72;
  color: rgba(19, 39, 68, 0.9);
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: anywhere;
}

body.gebet-pinboard-dialog-open {
  overflow: hidden;
}

.page-gebet .gebet-inspire {
  width: 100%;
  max-width: none;
  margin: clamp(2.5rem, 5vw, 3.5rem) 0 clamp(2rem, 4vw, 3rem);
  padding: clamp(2.5rem, 5vw, 3.75rem) clamp(1.25rem, 4vw, 2rem);
  border-radius: 0;
  background: none;
  border: none;
  box-shadow: none;
}

.page-gebet .gebet-inspire__inner {
  max-width: 52rem;
  margin: 0 auto;
  text-align: center;
}

.page-gebet .gebet-inspire .inspiring-spotlight-family {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.25rem, 3vw, 1.85rem);
  justify-items: center;
}

.page-gebet .gebet-inspire .inspiring-spotlight-family .inspiring-spotlight__card {
  width: 100%;
  max-width: 40rem;
  margin: 0 auto;
}

@media (min-width: 64em) {
  .page-gebet .gebet-inspire:has(.inspiring-spotlight-family--dual) .gebet-inspire__inner {
    max-width: 84rem;
  }

  .page-gebet .gebet-inspire .inspiring-spotlight-family--dual {
    grid-template-columns: repeat(2, minmax(0, 40rem));
    justify-content: center;
    justify-items: stretch;
    align-items: stretch;
    width: 100%;
  }

  .page-gebet .gebet-inspire .inspiring-spotlight-family--dual .inspiring-spotlight__card {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-width: 40rem;
  }

  .page-gebet .gebet-inspire .inspiring-spotlight-family--dual .inspiring-spotlight__more {
    margin-top: auto;
  }
}

.page-gebet .gebet-inspire .gebet-section-head--spotlight .sl-section-heading {
  color: var(--deep-navy);
  font-size: clamp(1.55rem, 3.2vw, 1.95rem);
}

.page-gebet .gebet-inspire .gebet-section-head .home-section-ornament__line {
  background: rgba(201, 168, 76, 0.45);
}

.page-gebet .gebet-inspire .inspiring-spotlight__intro,
.page-gebet .gebet-inspire .sl-tier-intro {
  margin-bottom: clamp(1.35rem, 2.8vw, 1.75rem);
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
  font-size: clamp(0.98rem, 1.8vw, 1.04rem);
  line-height: 1.68;
  color: rgba(19, 39, 68, 0.78);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card {
  max-width: 40rem;
  margin: 0 auto;
  padding: clamp(1.75rem, 3.5vw, 2.35rem) clamp(1.35rem, 3vw, 2rem) clamp(1.65rem, 3.2vw, 2.15rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 55%, #152a45 100%);
  border: 3px solid var(--gold);
  border-radius: var(--radius-lg);
  box-shadow:
    0 10px 32px rgba(0, 0, 0, 0.18),
    inset 0 0 0 1px rgba(232, 213, 160, 0.28);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card::before {
  content: none;
}

.page-gebet .gebet-inspire .inspiring-spotlight__card::after {
  content: none;
}

.page-gebet .gebet-inspire .inspiring-spotlight__kicker {
  margin: 0 0 0.65rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold-light);
}

.page-gebet .gebet-inspire .inspiring-spotlight__prayer-title {
  position: relative;
  margin: 0;
  padding: 0 0 2.35rem;
  font-family: var(--font-serif, Georgia, 'Times New Roman', serif);
  font-size: clamp(1.85rem, 4vw, 2.45rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.96);
  transition: opacity 0.55s ease;
}

.page-gebet .gebet-inspire .inspiring-spotlight__prayer-title.is-fading {
  opacity: 0;
}

.page-gebet .gebet-inspire .inspiring-spotlight__prayer-title::before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 1.15rem;
  z-index: 1;
  width: 0.9rem;
  height: 1.15rem;
  transform: translateX(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20' fill='none'%3E%3Cpath d='M8 1.5v17M4.75 7.5h6.5' stroke='%23e8d5a0' stroke-width='1.55' stroke-linecap='round'/%3E%3C/svg%3E");
  pointer-events: none;
}

.page-gebet .gebet-inspire .inspiring-spotlight__prayer-title::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 1.65rem;
  width: min(14rem, 72%);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(
    90deg,
    rgba(201, 168, 76, 0.82) 0%,
    rgba(201, 168, 76, 0.82) calc(50% - 0.85rem),
    transparent calc(50% - 0.85rem),
    transparent calc(50% + 0.85rem),
    rgba(201, 168, 76, 0.82) calc(50% + 0.85rem),
    rgba(201, 168, 76, 0.82) 100%
  );
  pointer-events: none;
}

.page-gebet .gebet-inspire .inspiring-spotlight__title-stack,
.page-gebet .gebet-inspire .inspiring-spotlight__body-stack {
  display: grid;
  grid-template-areas: "slot";
}

.page-gebet .gebet-inspire .inspiring-spotlight__title-sizer,
.page-gebet .gebet-inspire .inspiring-spotlight__title-stack > .inspiring-spotlight__prayer-title {
  grid-area: slot;
}

.page-gebet .gebet-inspire .inspiring-spotlight__title-sizer {
  display: grid;
  grid-template-areas: "item";
  visibility: hidden;
  pointer-events: none;
}

.page-gebet .gebet-inspire .inspiring-spotlight__title-sizer .inspiring-spotlight__prayer-title {
  grid-area: item;
  margin: 0;
}

.page-gebet .gebet-inspire .inspiring-spotlight__body-sizer,
.page-gebet .gebet-inspire .inspiring-spotlight__body-stack > .inspiring-spotlight__body {
  grid-area: slot;
}

.page-gebet .gebet-inspire .inspiring-spotlight__body-sizer {
  display: grid;
  grid-template-areas: "item";
  visibility: hidden;
  pointer-events: none;
}

.page-gebet .gebet-inspire .inspiring-spotlight__body-sizer .inspiring-spotlight__body {
  grid-area: item;
}

.page-gebet .gebet-inspire .inspiring-spotlight__body {
  font-size: clamp(1rem, 1.85vw, 1.06rem);
  line-height: 1.88;
  color: rgba(255, 255, 255, 0.88);
  max-height: none;
  overflow: visible;
  padding-right: 0;
}

.page-gebet .gebet-inspire .inspiring-spotlight__more {
  margin-top: clamp(1.35rem, 2.6vw, 1.75rem);
}

.page-gebet .gebet-inspire .inspiring-spotlight__more-btn {
  min-height: 44px;
  padding: 0.65rem 1.35rem;
  border-color: rgba(201, 168, 76, 0.55);
  background: rgba(201, 168, 76, 0.12);
  color: var(--warm-white);
}

.page-gebet .gebet-inspire .inspiring-spotlight__more-btn:hover,
.page-gebet .gebet-inspire .inspiring-spotlight__more-btn:focus-visible {
  background: rgba(201, 168, 76, 0.22);
  border-color: rgba(201, 168, 76, 0.75);
  outline: none;
  box-shadow: 0 0 0 2px rgba(201, 168, 76, 0.35);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession {
  background: linear-gradient(165deg, var(--cream) 0%, #fff9f0 48%, var(--gold-glow) 100%);
  border: 3px solid var(--deep-navy);
  box-shadow:
    0 10px 32px rgba(19, 39, 68, 0.12),
    inset 0 0 0 1px rgba(19, 39, 68, 0.08);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__kicker {
  color: var(--gold-on-light);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__prayer-title {
  color: var(--deep-navy);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__prayer-title::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20' fill='none'%3E%3Cpath d='M8 1.5v17M4.75 7.5h6.5' stroke='%23c9a84c' stroke-width='1.55' stroke-linecap='round'/%3E%3C/svg%3E");
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__body {
  color: rgba(19, 39, 68, 0.86);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__more-btn {
  border-color: rgba(201, 168, 76, 0.5);
  background: rgba(255, 255, 255, 0.62);
  color: var(--deep-navy);
}

.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__more-btn:hover,
.page-gebet .gebet-inspire .inspiring-spotlight__card--intercession .inspiring-spotlight__more-btn:focus-visible {
  background: rgba(201, 168, 76, 0.16);
  border-color: rgba(201, 168, 76, 0.75);
  color: var(--deep-navy);
  box-shadow: 0 0 0 2px rgba(201, 168, 76, 0.28);
}

.page-gebet .gebet-form-invite {
  max-width: none;
  margin: 0 0 clamp(0.35rem, 1vw, 0.65rem);
  width: 100%;
  padding: clamp(2.25rem, 4.5vw, 3rem) clamp(1.25rem, 4vw, 2rem);
  border-top: none;
  background: linear-gradient(180deg, rgba(250, 246, 238, 0.55) 0%, var(--cream) 100%);
}

.page-gebet .gebet-form-invite__head .sl-section-heading {
  font-size: clamp(1.45rem, 3vw, 1.85rem);
}

.page-gebet .gebet-form-invite .sl-gebet-form--steps {
  max-width: 44rem;
  margin: clamp(0.85rem, 2vw, 1.15rem) auto 0;
  padding: clamp(1.35rem, 2.8vw, 1.65rem) clamp(1.15rem, 2.6vw, 1.45rem);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(201, 168, 76, 0.2);
  box-shadow: 0 8px 24px rgba(10, 22, 40, 0.04);
}

.page-gebet .gebet-form-invite .sl-gebet-form__lead {
  font-size: clamp(1rem, 1.8vw, 1.06rem);
  line-height: 1.72;
  color: rgba(19, 39, 68, 0.82);
}

@media (hover: hover) and (pointer: fine) {
  .page-gebet .gebet-pinboard__cards .sl-prayer-card:hover {
    border-color: var(--card-hover-border);
    box-shadow: var(--card-hover-shadow);
  }
}

@media (min-width: 640px) {
  .page-gebet .gebet-pinboard__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-items: stretch;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__slider {
    padding: 0 clamp(2.15rem, 3.5vw, 2.75rem);
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__viewport {
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__viewport::-webkit-scrollbar {
    display: none;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__cards {
    display: flex;
    flex-wrap: nowrap;
    gap: var(--gebet-carousel-gap);
    width: max-content;
    min-width: 100%;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__cards > .sl-prayer-wall__list--public {
    display: flex;
    flex: 0 0 auto;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: var(--gebet-carousel-gap);
    width: max-content;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__cards .sl-prayer-card {
    flex: 0 0 calc((100cqi - 2 * var(--gebet-carousel-gap)) / 3);
    width: calc((100cqi - 2 * var(--gebet-carousel-gap)) / 3);
    max-width: 21.25rem;
    scroll-snap-align: start;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav {
    position: absolute;
    top: 42%;
    transform: translateY(-50%);
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    border: 1px solid rgba(201, 168, 76, 0.42);
    border-radius: 50%;
    background: rgba(10, 22, 40, 0.72);
    color: rgba(255, 255, 255, 0.88);
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(10, 22, 40, 0.28);
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav svg {
    width: 1rem;
    height: 1rem;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav--prev {
    left: 0;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav--next {
    right: 0;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav:focus-visible {
    outline: 2px solid rgba(201, 168, 76, 0.75);
    outline-offset: 2px;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__pager:not([hidden]) {
    margin-top: 0.85rem;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__dots {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0;
  }
}

@media (max-width: 639px) {
  .page-gebet .gebet-pinboard {
    padding-left: 0;
    padding-right: 0;
  }

  .page-gebet .gebet-pinboard__shell {
    padding-inline: clamp(0.65rem, 3vw, 1rem);
  }

  .page-gebet .gebet-pinboard__board {
    padding-left: 0;
    padding-right: 0;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__slider {
    padding: 0 clamp(2.15rem, 8vw, 2.5rem);
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__viewport {
    overflow-x: auto;
    overflow-y: visible;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__viewport::-webkit-scrollbar {
    display: none;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__cards {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.85rem;
    width: 100%;
    min-width: 100%;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__cards > .sl-prayer-wall__list--public {
    display: flex;
    flex: 1 1 auto;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0.85rem;
    width: 100%;
    min-width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__cards .sl-prayer-card {
    flex: 0 0 100%;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    height: 28rem;
    min-height: 28rem;
    max-height: 28rem;
    margin: 0;
    scroll-snap-align: center;
    transform: none !important;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav {
    position: absolute;
    top: 42%;
    transform: translateY(-50%);
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    border: 1px solid rgba(201, 168, 76, 0.42);
    border-radius: 50%;
    background: rgba(10, 22, 40, 0.72);
    color: rgba(255, 255, 255, 0.88);
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(10, 22, 40, 0.28);
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav svg {
    width: 1rem;
    height: 1rem;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav--prev {
    left: 0;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav--next {
    right: 0;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__nav:focus-visible {
    outline: 2px solid rgba(201, 168, 76, 0.75);
    outline-offset: 2px;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__pager:not([hidden]) {
    margin-top: 0.85rem;
  }

  .page-gebet .gebet-pinboard__board--carousel .gebet-pinboard__dots {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0;
  }

  .page-gebet .gebet-pinboard__board:not(.gebet-pinboard__board--carousel) .gebet-pinboard__cards {
    grid-template-columns: 1fr;
  }

  .page-gebet .gebet-pinboard__board:not(.gebet-pinboard__board--carousel) .gebet-pinboard__cards .sl-prayer-card {
    max-width: 21.25rem;
  }

  .page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement--pray-only {
    flex-direction: column;
    align-items: stretch;
  }

  .page-gebet .gebet-pinboard__cards .sl-prayer-card__footer .sl-engagement--pray-only .sl-engagement__actions {
    margin-left: 0;
    justify-content: flex-start;
  }

  .page-gebet .gebet-inspire .inspiring-spotlight__card {
    padding-left: 1.15rem;
    padding-right: 1.15rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-gebet .gebet-pinboard__cards .sl-prayer-card {
    transform: none !important;
    transition: none;
  }

  .page-gebet .gebet-pinboard__viewport {
    scroll-behavior: auto;
  }
}

.gebet-wall-verse {
  max-width: 36rem;
  margin: 0 auto 2rem;
  padding: 1.45rem 1.55rem 1.3rem;
  border: 1px solid rgba(201, 168, 76, 0.26);
  border-radius: 0.9rem;
  background: linear-gradient(
    165deg,
    rgba(250, 246, 238, 0.96) 0%,
    rgba(255, 252, 245, 0.98) 52%,
    rgba(232, 213, 160, 0.12) 100%
  );
  box-shadow:
    0 10px 30px rgba(19, 39, 68, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.72);
  position: relative;
}

.gebet-wall-verse::before {
  content: 'Ã¢Å“Â¦';
  display: block;
  margin-bottom: 0.65rem;
  font-size: 0.72rem;
  letter-spacing: 0.35em;
  color: rgba(201, 168, 76, 0.75);
}

.gebet-wall-verse__text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.25vw, 1.22rem);
  font-style: italic;
  font-weight: 500;
  line-height: 1.68;
  color: var(--text-dark);
}

.gebet-wall-verse cite {
  display: block;
  margin-top: 0.9rem;
  font-family: var(--font-sans);
  font-size: 0.7rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--gold);
}

/* Inspirierende Gebete: einzelnes Spotlight (Gebetsseite) */
.inspiring-spotlight {
  max-width: 44rem;
  margin: 0 auto 4.5rem;
  padding: 0 1.25rem;
  text-align: center;
}

.inspiring-spotlight__intro {
  margin-bottom: 2.25rem;
}

.inspiring-spotlight__card {
  position: relative;
  margin: 0 auto;
  padding: 2.85rem 2.35rem 2.65rem;
  background: linear-gradient(165deg, var(--cream) 0%, #fff9f0 48%, var(--gold-glow) 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 1.15rem;
  box-shadow:
    0 18px 48px rgba(19, 39, 68, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.inspiring-spotlight__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(8rem, 42%);
  height: 3px;
  border-radius: 0 0 4px 4px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}

.inspiring-spotlight__label {
  margin: 0 0 1.65rem;
  font-family: var(--font-serif, Georgia, 'Times New Roman', serif);
  font-size: clamp(1.45rem, 3.2vw, 1.85rem);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.04em;
  text-transform: none;
  color: var(--gold);
  transition: opacity 0.55s ease;
}

.inspiring-spotlight__label.is-fading {
  opacity: 0;
}

.inspiring-spotlight__fade {
  transition: opacity 0.55s ease;
}

.inspiring-spotlight__fade.is-fading {
  opacity: 0;
}

.inspiring-spotlight__body {
  margin: 0 auto;
  max-width: 36rem;
  text-align: center;
  line-height: 1.9;
  font-size: 1.06rem;
  color: var(--text-body, #3a4558);
}

.inspiring-spotlight__body p {
  margin: 0 0 1rem;
}

.inspiring-spotlight__body p:last-child {
  margin-bottom: 0;
}

.inspiring-spotlight__media {
  margin-top: 1.75rem;
}

.inspiring-spotlight__media.is-empty {
  display: none;
}

.inspiring-spotlight__embed {
  position: relative;
  width: 100%;
  max-width: 32rem;
  margin: 0 auto;
  aspect-ratio: 16 / 9;
  border-radius: 0.65rem;
  overflow: hidden;
  background: var(--deep-navy);
}

.inspiring-spotlight__embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.inspiring-spotlight__audio {
  margin-top: 1rem;
}

.inspiring-spotlight__audio audio {
  width: 100%;
  max-width: 28rem;
}

.inspiring-spotlight__more {
  margin-top: 2.15rem;
  padding-top: 0.25rem;
}

.inspiring-spotlight__more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.62rem 1.15rem;
  border: 1px solid rgba(201, 168, 76, 0.45);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.55);
  color: var(--deep-navy);
  font: inherit;
  font-size: 0.92rem;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.inspiring-spotlight__more-btn:hover,
.inspiring-spotlight__more-btn:focus-visible {
  background: rgba(255, 255, 255, 0.92);
  border-color: var(--gold);
  color: var(--deep-navy);
  outline: none;
  transform: translateY(-1px);
}

.inspiring-spotlight__more-btn:disabled {
  opacity: 0.55;
  cursor: wait;
  transform: none;
}

@media (max-width: 640px) {
  .inspiring-spotlight__card {
    padding: 2.25rem 1.35rem 2rem;
  }

  .inspiring-spotlight__body {
    font-size: 1rem;
    line-height: 1.85;
  }
}

.sl-inspiring-prayers__grid {
  display: grid;
  gap: 1.5rem;
  margin-top: 1rem;
}

@media (min-width: 768px) {
  .sl-inspiring-prayers__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.sl-inspiring-card {
  padding: 1.35rem 1.25rem;
  border-radius: var(--radius-lg);
  background: var(--cream);
  border: 1px solid rgba(19, 39, 68, 0.08);
  box-shadow: var(--shadow-soft);
}

.sl-inspiring-card__title {
  font-family: var(--font-serif);
  font-size: 1.2rem;
  margin: 0 0 0.75rem;
}

.sl-inspiring-card__body {
  white-space: pre-wrap;
  font-size: 0.95rem;
  line-height: 1.65;
  margin-bottom: 1rem;
  color: var(--text-body);
}

.sl-inspiring-card__embed {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  border-radius: var(--radius-md);
  margin-bottom: 1rem;
  background: #000;
}

.sl-inspiring-card__embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.sl-inspiring-card__audio {
  margin-bottom: 1rem;
}

.sl-inspiring-card .sl-prayer-share {
  margin-top: 0.5rem;
}

.sl-prayer-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
}

.sl-prayer-share--sm {
  font-size: 0.78rem;
  padding: 0.35rem 0.65rem;
}

.verse-banner--page-end {
  margin-top: 2.5rem;
}

/* BÃƒÂ¼cher: liebevolle Medien-BlÃƒÂ¶cke */
.sl-buecher-media--warm,
.sl-buecher-youversion--warm {
  margin-top: 2.75rem;
  padding: 2rem 1.5rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, rgba(19, 39, 68, 0.06) 0%, rgba(201, 168, 76, 0.1) 100%);
  border: 1px solid rgba(19, 39, 68, 0.08);
}

.sl-buecher-media__inner,
.sl-buecher-youversion__inner {
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
  max-width: 42rem;
}

.sl-buecher-media__icon,
.sl-buecher-youversion__icon {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--midnight), var(--deep-navy));
  color: var(--gold-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  box-shadow: 0 8px 24px rgba(10, 22, 40, 0.15);
}

.sl-buecher-media__lead {
  margin: 0.5rem 0 1rem;
  line-height: 1.7;
  color: var(--text-body);
  font-size: 1.02rem;
}

.sl-faq-block,
.sl-feedback-block {
  margin-top: var(--space-5);
  padding: 1.5rem 1.25rem;
  border-radius: var(--radius-lg);
  background: var(--warm-white);
  border: 1px solid rgba(19, 39, 68, 0.08);
}

/* Innenseiten: zweizeilige HauptÃƒÂ¼berschrift (Kicker + Titel) */
.page-title-dual--inner .page-title-dual__line1 {
  display: block;
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.65vw, 0.88rem);
  font-weight: 800;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--gold-on-light);
  margin-bottom: 0.55rem;
}

.page-title-dual--inner .page-title-dual__line2 {
  display: block;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.5vw, 2.75rem);
  font-weight: 600;
  line-height: 1.12;
  color: var(--text-dark);
  letter-spacing: -0.02em;
}

/* Feedback-Seite (/feedback): kleine, goldene Headline */
body.page-podcast-mit-herz .page-title-dual--inner .page-title-dual__line1 {
  font-size: clamp(0.62rem, 1.45vw, 0.78rem);
}

body.page-podcast-mit-herz .page-title-dual--inner .page-title-dual__line2 {
  font-size: clamp(1.4rem, 3.2vw, 2.05rem);
  color: var(--deep-navy);
}

.page-impulse .impulse-page-intro {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 42rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.78;
  color: var(--text-body);
  background: none;
  box-decoration-break: unset;
  -webkit-box-decoration-break: unset;
  text-wrap: pretty;
}

/* Kritische Impulse-Layout-Styles auch in theme.css (FOUC wenn impulse-page.css noch lädt) */
.page-impulse .page-main.impulse-page {
  padding-top: calc(var(--nav-h) + clamp(1.5rem, 3.5vw, 2.5rem));
  padding-bottom: 0;
  overflow-x: clip;
}

.page-impulse .impulse-page__hero {
  width: 100%;
  background: linear-gradient(180deg, var(--warm-white) 0%, #faf6ee 52%, rgba(250, 246, 238, 0.92) 100%);
  padding: clamp(1.75rem, 4vw, 2.75rem) clamp(1.25rem, 4vw, 2rem) clamp(2.25rem, 4.5vw, 3.25rem);
}

.page-impulse .impulse-page__hero-inner {
  max-width: 44rem;
  margin: 0 auto;
  text-align: center;
}

.page-impulse .impulse-page__current {
  width: 100%;
  background: linear-gradient(165deg, #0a1628 0%, #0f1f36 42%, #132744 100%);
  padding: clamp(2.5rem, 5.5vw, 3.75rem) clamp(1.25rem, 4vw, 2rem);
  border-top: 1px solid rgba(201, 168, 76, 0.14);
  border-bottom: 1px solid rgba(201, 168, 76, 0.14);
}

.page-impulse .impulse-page__current-inner {
  max-width: min(100%, 46rem);
  margin: 0 auto;
}

.page-impulse .impulse-page__current .sl-impulse-latest__section-title {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: #e8d5a0;
}

.page-impulse .page-title-dual--inner:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.page-impulse .page-title-dual--inner .page-title-dual__line2 {
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
}

.page-impulse .blog-inner > .home-section-ornament:first-of-type {
  margin-bottom: clamp(1.75rem, 3.5vw, 2.35rem);
}

.page-impulse .sl-impulse-latest {
  margin: clamp(2rem, 4.5vw, 3rem) 0 clamp(2.75rem, 5vw, 3.75rem);
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
}

.page-impulse .sl-impulse-latest__header {
  text-align: center;
  margin: 0 0 clamp(1.15rem, 2.8vw, 1.55rem);
}

.page-impulse .sl-impulse-latest__section-title {
  font-family: var(--font-serif);
  font-size: clamp(1.4rem, 3.2vw, 1.85rem);
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--deep-navy);
  margin: 0;
}

.page-impulse .sl-impulse-latest__header .home-section-ornament {
  margin-top: 0.85rem;
  margin-bottom: 0;
}

.page-impulse .sl-impulse-item--latest {
  position: relative;
  border-radius: var(--radius-lg);
  background: linear-gradient(
    155deg,
    rgba(255, 252, 245, 0.98) 0%,
    rgba(250, 246, 238, 0.96) 48%,
    rgba(232, 213, 160, 0.16) 100%
  );
  border: 1px solid rgba(201, 168, 76, 0.44);
  box-shadow:
    0 22px 54px rgba(10, 22, 40, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.72);
  overflow: hidden;
}

.page-impulse .sl-impulse-item--latest::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(201, 168, 76, 0.55) 18%,
    rgba(232, 213, 160, 0.95) 50%,
    rgba(201, 168, 76, 0.55) 82%,
    transparent 100%
  );
  pointer-events: none;
}

.page-impulse .sl-impulse-item--latest .sl-impulse-item__summary {
  padding: clamp(1.35rem, 3vw, 1.75rem) clamp(1.35rem, 3vw, 1.85rem)
    clamp(1.15rem, 2.6vw, 1.45rem);
}

.page-impulse .sl-impulse-item--latest .sl-impulse-item__title {
  font-size: clamp(1.35rem, 3.1vw, 1.72rem);
  line-height: 1.28;
  color: var(--deep-navy);
}

.page-impulse .sl-impulse-item--latest .sl-impulse-item__date {
  color: var(--gold-dark);
  font-size: 0.74rem;
  letter-spacing: 0.12em;
}

.page-impulse .sl-impulse-item--latest .sl-impulse-item__teaser {
  font-size: 1rem;
  line-height: 1.62;
  color: rgba(19, 39, 68, 0.82);
}

.page-impulse .sl-impulse-item--latest .sl-impulse-item__panel-inner {
  padding: 0 clamp(1.35rem, 3vw, 1.85rem) clamp(1.15rem, 2.8vw, 1.55rem);
  border-top: 1px solid rgba(201, 168, 76, 0.22);
}

.page-impulse .sl-impulse-archive-section {
  margin-top: clamp(2.25rem, 4.5vw, 3rem);
}

.page-impulse .sl-impulse-archive-section--deep {
  margin-top: clamp(2.75rem, 5vw, 3.5rem);
  padding-top: clamp(1.5rem, 3vw, 2rem);
  border-top: 1px solid rgba(19, 39, 68, 0.07);
}

.page-impulse .sl-impulse-archive__heading {
  text-align: center;
  margin: 0 0 0.35rem;
  font-size: clamp(1.45rem, 3.2vw, 1.85rem);
  color: var(--text-dark);
}

.page-impulse .sl-impulse-archive-section .home-section-ornament {
  margin-top: 0.75rem;
  margin-bottom: clamp(1.15rem, 2.6vw, 1.65rem);
}

.page-impulse .sl-impulse-archive {
  margin-top: 0;
}

.page-impulse .sl-impulse-archive--recent {
  gap: 0.8rem;
}

.page-impulse .sl-impulse-archive--recent .sl-impulse-item {
  background: rgba(255, 252, 245, 0.92);
  border-color: rgba(19, 39, 68, 0.09);
  box-shadow: 0 8px 24px rgba(10, 22, 40, 0.04);
}

.page-impulse .sl-impulse-archive--deep {
  gap: 0.55rem;
}

.page-impulse .sl-impulse-archive--deep .sl-impulse-item {
  background: rgba(250, 246, 238, 0.62);
  border-color: rgba(19, 39, 68, 0.06);
  box-shadow: none;
}

.page-impulse .sl-impulse-archive--deep .sl-impulse-item__summary {
  padding: 0.95rem 1.1rem 0.9rem;
}

.page-impulse .sl-impulse-archive--deep .sl-impulse-item--details .sl-impulse-item__title {
  font-size: 1.05rem;
  font-weight: 600;
}

.page-impulse .sl-impulse-archive--deep .sl-impulse-item__teaser,
.page-impulse .sl-impulse-archive--deep .sl-impulse-item__summary-hint {
  font-size: 0.88rem;
}

.page-impulse .sl-impulse-archive--deep .sl-impulse-item__panel-inner {
  padding-left: 1.1rem;
  padding-right: 1.1rem;
}

.page-impulse .sl-impulse-item--details:not(.sl-impulse-item--latest) .sl-impulse-item__summary {
  padding: 1.05rem 1.2rem 0.95rem;
}

.page-impulse .sl-impulse-item--details:not(.sl-impulse-item--latest) .sl-impulse-item__title {
  font-size: 1.12rem;
}

.page-impulse .sl-impulse-item--details[open]:not(.sl-impulse-item--latest) {
  border-color: rgba(201, 168, 76, 0.28);
  box-shadow: 0 10px 28px rgba(10, 22, 40, 0.06);
}

.page-impulse .sl-impulse-item__body {
  font-size: 1.02rem;
  line-height: 1.78;
  max-width: 42rem;
  color: rgba(19, 39, 68, 0.9);
}

.page-impulse .sl-impulse-item--latest .sl-impulse-item__body {
  font-size: 1.05rem;
}

.page-impulse .sl-impulse-card__actions {
  margin-top: 0.35rem;
  padding-top: 1.1rem;
  border-top: 1px solid rgba(201, 168, 76, 0.16);
}

.page-impulse .sl-impulse-card__actions .sl-engagement {
  margin-top: 0;
}

.sl-impulse-card__engage,
.impulse-detail-engage {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.55rem 0.75rem;
}

.sl-impulse-card__engage .sl-engagement,
.impulse-detail-engage .sl-engagement {
  margin: 0;
}

.sl-impulse-card__engage .gt-share,
.impulse-detail-engage .gt-share,
.sl-prayer-card__actions .gt-share--engage {
  position: static;
  margin: 0;
  flex: 0 0 auto;
  align-self: center;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem 0.65rem;
  width: 100%;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__actions .sl-engagement {
  flex: 1 1 auto;
  min-width: 0;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__actions .gt-share {
  position: static;
  margin-left: auto;
}


.page-impulse .sl-impulse-archive__more {
  text-align: center;
  margin: clamp(2rem, 4vw, 2.75rem) auto 0;
  max-width: none;
}

@media (hover: hover) and (pointer: fine) {
  .page-impulse .sl-impulse-item--details:not(.sl-impulse-item--latest):hover {
    border-color: rgba(201, 168, 76, 0.22);
  }

  .page-impulse .sl-impulse-item--latest:hover {
    border-color: rgba(201, 168, 76, 0.52);
    box-shadow:
      0 26px 58px rgba(10, 22, 40, 0.11),
      inset 0 1px 0 rgba(255, 255, 255, 0.78);
  }
}

/* Vers-Streifen unten (Petrol / Navy wie Startseiten-Bereich) */
.verse-banner--stripe-navy {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  margin-top: 0;
  background: linear-gradient(135deg, var(--midnight) 0%, var(--deep-navy) 48%, #152a45 100%);
  border-top: 1px solid rgba(201, 168, 76, 0.28);
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  padding: 3.5rem 1.5rem;
}

.verse-banner--stripe-navy blockquote {
  width: min(100%, 36rem);
  max-width: 36rem;
  margin-inline: auto;
  color: rgba(250, 246, 238, 0.95);
  font-style: italic;
}

.verse-banner--stripe-navy cite {
  color: var(--gold-light);
}

/* BÃƒÂ¼cher-Seite: liebevolle Medien-Karten */
.sl-buecher-heart {
  margin-top: 2.5rem;
}

.sl-buecher-heart__card {
  display: flex;
  flex-wrap: wrap;
  gap: 1.75rem;
  align-items: stretch;
  padding: 2rem 1.5rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, rgba(250, 246, 238, 0.95) 0%, rgba(255, 252, 245, 0.98) 45%, rgba(232, 213, 160, 0.12) 100%);
  border: 1px solid rgba(201, 168, 76, 0.28);
  box-shadow: 0 20px 50px rgba(10, 22, 40, 0.08);
}

.sl-buecher-heart__card--alt {
  background: linear-gradient(145deg, rgba(19, 39, 68, 0.04) 0%, rgba(250, 246, 238, 0.9) 55%, rgba(232, 213, 160, 0.1) 100%);
}

.sl-buecher-heart__visual {
  flex: 0 0 auto;
  width: 5.5rem;
  height: 5.5rem;
  border-radius: 50%;
  background: linear-gradient(155deg, var(--midnight), var(--deep-navy));
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-shadow: 0 14px 36px rgba(10, 22, 40, 0.2);
}

.sl-buecher-heart__ring {
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 2px solid rgba(232, 213, 160, 0.45);
  pointer-events: none;
}

.sl-buecher-heart__play {
  color: var(--gold-light);
  font-size: 1.35rem;
  margin-left: 3px;
}

.sl-buecher-heart__visual--book {
  font-size: 2.25rem;
  background: linear-gradient(155deg, var(--deep-navy), var(--royal-blue));
}

.sl-buecher-heart__copy {
  flex: 1 1 16rem;
  min-width: 0;
}

.sl-buecher-heart__kicker {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  margin: 0 0 0.4rem;
}

.sl-buecher-heart__title {
  font-family: var(--font-serif);
  font-size: clamp(1.45rem, 3.2vw, 1.95rem);
  color: var(--text-dark);
  margin: 0 0 0.75rem;
  line-height: 1.2;
}

.sl-buecher-heart__text {
  margin: 0 0 1rem;
  line-height: 1.75;
  color: var(--text-body);
  font-size: 1.05rem;
}

.sl-buecher-heart__bullets {
  margin: 0 0 1.25rem;
  padding-left: 1.2rem;
  list-style: disc;
  color: var(--text-body);
  line-height: 1.65;
}

.sl-buecher-heart__bullets li {
  margin: 0.35rem 0;
}

.sl-buecher-heart__cta {
  margin: 0;
}

/* Hermine /start: Platzhalter-BÃƒÂ¼cher wie BÃƒÂ¼cher-Seite */
.book-card--placeholder .book-cover {
  background: var(--midnight);
}

.book-cover__ph {
  width: 100%;
  aspect-ratio: 3 / 4;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #1a2744, var(--midnight));
  border-radius: inherit;
}

.book-cover__ph .book-number {
  font-family: var(--font-serif);
  font-size: clamp(2.5rem, 6vw, 3.5rem);
  font-weight: 700;
  color: rgba(201, 168, 76, 0.88);
}

.blog-header__impulse-title {
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4vw, 2.65rem);
  margin-top: 0.75rem;
  line-height: 1.2;
}

.blog-header__impulse-title em {
  font-style: italic;
  color: var(--gold);
}

/* Spenden: Auszug FAQ/Feedback von der Missionsseite */
.sl-verein-snippet {
  margin-top: var(--space-6);
  padding: 1.5rem 1.35rem;
  border-radius: var(--radius-lg);
  background: var(--warm-white);
  border: 1px solid rgba(19, 39, 68, 0.08);
}

.sl-verein-snippet__more {
  margin: 1rem 0 0;
}

/* Schwebender Spenden-Link (ehem. Admin-FAB) */
.public-admin-fab--spenden {
  font-weight: 800;
  letter-spacing: 0.06em;
}

/* Startseite: Baustein bild_links */
.home-media-split {
  padding: 2.5rem 0;
}
.home-media-split__inner {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
  align-items: center;
}
@media (min-width: 768px) {
  .home-media-split__inner {
    flex-direction: row;
    align-items: flex-start;
    gap: 2.5rem;
  }
  .home-media-split__media {
    flex: 0 0 42%;
    max-width: 420px;
  }
}
.home-media-split__media img {
  width: 100%;
  height: auto;
  border-radius: var(--radius-lg);
  box-shadow: 0 12px 36px rgba(10, 22, 40, 0.18);
}
.home-media-split__text {
  flex: 1;
  min-width: 0;
}
.home-media-split__title {
  font-family: var(--font-serif);
  font-size: clamp(1.5rem, 3vw, 2rem);
  margin: 0 0 1rem;
  color: var(--midnight);
}

/* ============================================================
   Navigation Dropdowns (Verein / Hermine) + Lebenslieder
   ErgÃƒÂ¤nzt fÃƒÂ¼r die neue /verein /hermine URL-Struktur.
   ============================================================ */
.nav-item-dropdown { position: relative; }
.nav-caret { font-size: 0.75em; opacity: 0.8; }
.nav-dropdown {
  list-style: none;
  margin: 0;
  padding: 0.4rem 0;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 230px;
  background: var(--deep-navy, #132744);
  border: 1px solid rgba(201,168,76,0.30);
  border-radius: 12px;
  box-shadow: 0 14px 36px rgba(10,22,40,0.45);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
  z-index: 1200;
}
.nav-item-dropdown:hover > .nav-dropdown,
.nav-item-dropdown:focus-within > .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.nav-dropdown li { margin: 0; }
.nav-dropdown li a {
  display: block;
  padding: 0.6rem 1.1rem;
  white-space: nowrap;
  color: var(--cream, #faf6ee);
  font-size: 1rem;
}
.nav-dropdown li a:hover { background: rgba(201,168,76,0.16); color: var(--gold-light, #e8d5a0); }

/* Mobile: Dropdowns als eingerÃƒÂ¼ckte, immer sichtbare Unterlisten */
@media (max-width: 767px) {
  .nav-dropdown {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    border: none;
    background: transparent;
    min-width: 0;
    padding: 0 0 0.4rem 1rem;
  }
  .nav-caret { display: none; }
}

/* --- Lebenslieder-Seite --- */
.ll-list { list-style: none; padding: 0; margin: 0.6rem 0; display: flex; flex-wrap: wrap; gap: 0.5rem 1.4rem; }
.ll-list li { position: relative; padding-left: 1.4rem; }
.ll-list li::before { content: "Ã¢â„¢Âª"; position: absolute; left: 0; color: var(--gold, #c9a84c); }
.ll-steps-info { padding-left: 1.2rem; line-height: 1.9; }
.ll-form fieldset { border: 1px solid rgba(201,168,76,0.25); border-radius: 14px; padding: 1.2rem 1.3rem; margin: 0 0 1rem; }
.ll-form legend { font-weight: 700; font-size: 1.12rem; padding: 0 0.5rem; color: var(--gold, #c9a84c); }
.ll-form.ll-form--stepped .ll-step[hidden] { display: none; }
.ll-progress { height: 8px; background: rgba(201,168,76,0.18); border-radius: 999px; overflow: hidden; margin-bottom: 1.1rem; }
.ll-progress-bar { display: block; height: 100%; width: 12.5%; background: var(--gold, #c9a84c); transition: width .3s ease; }
.ll-nav { display: flex; gap: 0.8rem; flex-wrap: wrap; align-items: center; }
.ll-checkbox { display: flex; gap: 0.6rem; align-items: flex-start; font-weight: 400; }
.ll-checkbox input { margin-top: 0.25rem; width: auto; }
.ll-form details { border-bottom: 1px solid rgba(201,168,76,0.2); padding: 0.7rem 0; }
.article-page details summary { cursor: pointer; font-weight: 600; padding: 0.6rem 0; }

/* Startseite Ã¢â‚¬â€œ Frohe Botschaft, Lobpreis, Hermine-Abschnitte, Abschluss */
.home-frohe-botschaft {
  padding: 2.5rem 0 1.5rem;
  background: var(--warm-white);
}

.home-frohe-botschaft__inner {
  max-width: 42rem;
  margin: 0 auto;
  text-align: center;
  font-size: clamp(1rem, 2.2vw, 1.12rem);
  line-height: 1.75;
  color: var(--text-body);
}

/* Startseite: Lobpreis – kompakter Teaser */
.home-lobpreis-teaser {
  position: relative;
  overflow: hidden;
  scroll-margin-top: calc(var(--nav-h) + 0.75rem);
  padding: clamp(2.75rem, 6vw, 4.25rem) clamp(1.25rem, 4vw, 2rem);
  background: linear-gradient(
    165deg,
    var(--midnight) 0%,
    var(--deep-navy) 42%,
    var(--royal-blue) 100%
  );
  border-bottom: 1px solid rgba(201, 168, 76, 0.22);
  color: var(--cream);
  text-align: center;
}

.home-lobpreis-teaser::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 78% 58% at 50% 22%, rgba(201, 168, 76, 0.16), transparent 56%),
    radial-gradient(ellipse 70% 46% at 50% 88%, rgba(7, 24, 46, 0.38), transparent 68%);
}

.home-lobpreis-teaser__inner {
  position: relative;
  z-index: 1;
  max-width: 38rem;
  margin: 0 auto;
}

.home-lobpreis-teaser__header {
  margin: 0 auto clamp(1.65rem, 3.5vw, 2.25rem);
}

.home-lobpreis-teaser__eyebrow {
  margin: 0 0 clamp(0.85rem, 1.8vw, 1.05rem);
  font-family: var(--font-sans);
  font-size: clamp(0.58rem, 1.2vw, 0.66rem);
  font-weight: 700;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: #b8984f;
}

.home-lobpreis-teaser__title {
  margin: 0 0 clamp(0.85rem, 1.8vw, 1.05rem);
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4vw, 2.45rem);
  font-weight: 500;
  line-height: 1.16;
  letter-spacing: -0.01em;
  color: var(--cream);
}

.home-lobpreis-teaser__lead {
  margin: 0 auto;
  max-width: 32rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.85vw, 1.08rem);
  font-style: italic;
  line-height: 1.68;
  color: rgba(250, 246, 238, 0.88);
  text-wrap: balance;
}

.home-lobpreis-teaser__cta {
  margin: 0;
}

.home-lobpreis-teaser__cta .btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

/* Startseite Ã¢â‚¬â€œ Lobpreis (Player auf /verein/lobpreis) */
.home-lobpreis {
  scroll-margin-top: calc(var(--nav-h) + 0.75rem);
  padding: clamp(4rem, 9vw, 6.25rem) 0 clamp(4.5rem, 9.5vw, 6.75rem);
  background: #faf7f1;
}

.home-lobpreis__inner {
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
}

.home-lobpreis__header {
  text-align: center;
  max-width: 42rem;
  margin: 0 auto clamp(3rem, 6.5vw, 4.25rem);
}

.home-lobpreis__eyebrow {
  margin: 0 0 clamp(1.15rem, 2.6vw, 1.45rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-lobpreis__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: min(100%, 14rem);
  margin: 0 auto clamp(1.75rem, 4vw, 2.35rem);
}

.home-lobpreis__divider-line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(184, 152, 79, 0.42);
}

.home-lobpreis__divider-heart {
  flex: 0 0 auto;
  width: 0.62rem;
  height: 0.58rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 11' fill='none'%3E%3Cpath d='M6 10.2S1.5 7.2 1.5 4.2C1.5 2.6 2.7 1.5 4.1 1.5c.9 0 1.7.5 2.1 1.2.4-.7 1.2-1.2 2.1-1.2 1.4 0 2.6 1.1 2.6 2.7 0 3-4.5 6-4.5 6z' fill='%23c9a050'/%3E%3C/svg%3E");
}

.home-lobpreis__title {
  margin: 0 0 clamp(1.15rem, 2.6vw, 1.55rem);
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: #0f1f36;
}

.home-lobpreis__intro {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
}

.home-lobpreis__intro p {
  margin: 0;
}

.home-lobpreis__intro p + p {
  margin-top: 0.35rem;
}

.home-lobpreis__playlist-panel {
  max-width: min(100%, 68rem);
  margin: 0 auto clamp(2rem, 4.5vw, 2.75rem);
  padding: clamp(1.25rem, 2.8vw, 1.55rem) clamp(1.15rem, 3vw, 1.5rem) clamp(1.15rem, 2.8vw, 1.35rem);
  border-radius: 1.15rem;
  background: #0f1f36;
  border: 1px solid rgba(201, 160, 80, 0.38);
  box-shadow: 0 20px 48px rgba(15, 31, 54, 0.22);
}

.home-lobpreis__playlist-panel,
.podcast-hub__player-panel {
  position: relative;
}

.home-lobpreis__playlist-head {
  padding-right: 0;
}

.podcast-hub__player-head {
  padding-right: 0;
}

.home-lobpreis__playlist-panel .gt-share__btn,
.podcast-hub__player-panel .gt-share__btn {
  color: var(--gold-light, #e8d5a0);
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(232, 213, 160, 0.38);
}

.home-lobpreis__playlist-panel .gt-share__btn:hover,
.home-lobpreis__playlist-panel .gt-share__btn:focus-visible,
.home-lobpreis__playlist-panel .gt-share__btn[aria-expanded='true'],
.podcast-hub__player-panel .gt-share__btn:hover,
.podcast-hub__player-panel .gt-share__btn:focus-visible,
.podcast-hub__player-panel .gt-share__btn[aria-expanded='true'] {
  color: #fff8e7;
  background: rgba(201, 168, 76, 0.2);
  border-color: rgba(232, 213, 160, 0.62);
}

.home-lobpreis__playlist-head {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.55rem 0.75rem;
  margin-bottom: clamp(1.15rem, 2.6vw, 1.45rem);
  padding-bottom: clamp(1rem, 2.2vw, 1.25rem);
  border-bottom: 1px solid rgba(201, 160, 80, 0.16);
}

.home-lobpreis__playlist-series,
.home-lobpreis__playlist-artist {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.58rem, 1.2vw, 0.68rem);
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #d4af37;
}

.home-lobpreis__playlist-artist {
  color: #d4af37;
  letter-spacing: 0.2em;
}

.home-lobpreis__playlist-credit {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.85vw, 1.08rem);
  font-weight: 600;
  font-style: italic;
  letter-spacing: 0.04em;
  text-transform: none;
  color: rgba(250, 246, 238, 0.96);
}

.home-lobpreis__playlist-head-sep {
  flex: 0 0 auto;
  width: 1px;
  height: 0.95rem;
  background: rgba(201, 160, 80, 0.38);
}

.home-lobpreis__player-layout {
  display: flex;
  flex-direction: column;
  gap: clamp(0.85rem, 2.2vw, 1.15rem);
}

.home-lobpreis__tracklist {
  min-width: 0;
}

.home-lobpreis__tracks {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: clamp(17rem, 42vh, 22.5rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(201, 160, 80, 0.34) transparent;
}

.home-lobpreis__tracks::-webkit-scrollbar {
  width: 4px;
}

.home-lobpreis__tracks::-webkit-scrollbar-thumb {
  background: rgba(201, 160, 80, 0.34);
  border-radius: 999px;
}

.home-lobpreis__tracks::-webkit-scrollbar-track {
  background: transparent;
}

.home-lobpreis__track-item + .home-lobpreis__track-item {
  margin-top: 0.35rem;
}

.home-lobpreis__track {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  width: 100%;
  padding: 0.48rem 0.58rem;
  border: 1px solid transparent;
  border-radius: 0.55rem;
  background: transparent;
  color: rgba(250, 246, 238, 0.92);
  text-align: left;
  cursor: pointer;
  transition: background 0.22s ease, border-color 0.22s ease;
}

.home-lobpreis__track-thumb {
  flex: 0 0 auto;
  width: 3.35rem;
  height: 2.25rem;
  object-fit: cover;
  border-radius: 0.35rem;
  background: rgba(0, 0, 0, 0.28);
}

.home-lobpreis__track-meta {
  flex: 1 1 auto;
  min-width: 0;
}

.home-lobpreis__track-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.25vw, 0.76rem);
  font-weight: 600;
  line-height: 1.35;
  color: rgba(250, 246, 238, 0.94);
}

.home-lobpreis__track-artist {
  display: block;
  margin-top: 0.12rem;
  font-family: var(--font-sans);
  font-size: clamp(0.58rem, 1.05vw, 0.64rem);
  font-weight: 500;
  line-height: 1.3;
  color: rgba(250, 246, 238, 0.56);
}

.home-lobpreis__track-play {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  color: rgba(212, 175, 55, 0.72);
  opacity: 0;
  transition: opacity 0.22s ease, color 0.22s ease;
}

.home-lobpreis__track-play svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-lobpreis__track.is-active {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(201, 160, 80, 0.38);
}

.home-lobpreis__track.is-active .home-lobpreis__track-play {
  opacity: 1;
  color: #d4af37;
}

.home-lobpreis__player {
  min-width: 0;
}

.home-lobpreis__embed {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 0.65rem;
  background: rgba(0, 0, 0, 0.28);
  aspect-ratio: 16 / 9;
  container-type: size;
}

.home-lobpreis__embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.home-lobpreis__embed > .page-hero-share-row--embed,
.podcast-hub__embed > .page-hero-share-row--embed {
  top: auto;
  right: auto;
  left: calc(clamp(0.4rem, 1.6cqw, 0.85rem) + 0.9rem);
  bottom: calc(clamp(0.38rem, 3cqh, 0.8rem) + 0.9rem);
  z-index: 5;
}

.podcast-hub__embed > .page-hero-share-row--embed {
  left: calc(clamp(0.4rem, 1.6cqw, 0.85rem) + 0.9rem + 1.4rem);
  bottom: calc(clamp(0.38rem, 3cqh, 0.8rem) + 0.9rem - 0.55rem);
}

.home-lobpreis__embed .gt-share--embed .gt-share__btn,
.podcast-hub__embed .gt-share--embed .gt-share__btn {
  width: clamp(2.55rem, 11.5cqmin, 3rem);
  height: clamp(2.55rem, 11.5cqmin, 3rem);
  color: #0f1f36;
  background: rgba(232, 213, 160, 0.96);
  border-color: rgba(250, 246, 238, 0.88);
  box-shadow: 0 0.22rem 0.7rem rgba(8, 16, 28, 0.38);
}

.home-lobpreis__embed .gt-share--embed .gt-share__icon,
.podcast-hub__embed .gt-share--embed .gt-share__icon {
  width: 1.2rem;
  height: 1.2rem;
  transform: none;
}

.home-lobpreis__embed .gt-share--embed .gt-share__btn:hover,
.home-lobpreis__embed .gt-share--embed .gt-share__btn:focus-visible,
.home-lobpreis__embed .gt-share--embed .gt-share__btn[aria-expanded='true'],
.podcast-hub__embed .gt-share--embed .gt-share__btn:hover,
.podcast-hub__embed .gt-share--embed .gt-share__btn:focus-visible,
.podcast-hub__embed .gt-share--embed .gt-share__btn[aria-expanded='true'] {
  color: #0b1628;
  background: #fff8e7;
  border-color: #fff8e7;
}

@media (min-width: 768px) {
  .home-lobpreis__player-layout {
    flex-direction: row;
    align-items: stretch;
    gap: clamp(0.85rem, 1.8vw, 1.15rem);
  }

  .home-lobpreis__tracklist {
    flex: 0 0 40%;
    max-width: 40%;
    order: 1;
  }

  .home-lobpreis__player {
    flex: 1 1 60%;
    order: 2;
  }
}

@media (max-width: 767px) {
  .home-lobpreis__player {
    order: 1;
  }

  .home-lobpreis__tracklist {
    order: 2;
  }
}

@media (hover: hover) and (pointer: fine) {
  .home-lobpreis__track:not(.is-active):hover,
  .home-lobpreis__track:not(.is-active):focus-visible {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(201, 160, 80, 0.24);
  }

  .home-lobpreis__track:not(.is-active):hover .home-lobpreis__track-play,
  .home-lobpreis__track:not(.is-active):focus-visible .home-lobpreis__track-play {
    opacity: 1;
  }
}

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

  .home-lobpreis__track-play {
    transition: none;
  }
}

.home-lobpreis__divider--closing {
  width: min(100%, 10rem);
  margin: 0 auto clamp(1rem, 2.2vw, 1.25rem);
}

.home-lobpreis__player-platforms {
  margin-top: clamp(0.75rem, 1.8vw, 1rem);
  text-align: center;
  container-type: inline-size;
}

.home-lobpreis__player-platforms-title {
  margin: 0 0 clamp(0.65rem, 1.4vw, 0.85rem);
  font-family: var(--font-serif);
  font-size: clamp(0.82rem, 1.55vw, 0.92rem);
  font-weight: 500;
  line-height: 1.35;
  color: rgba(250, 246, 238, 0.82);
  text-align: center;
  text-wrap: balance;
}

.home-lobpreis__platform-pills {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(0.4rem, 0.9vw, 0.55rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-lobpreis__platform-pill-item {
  min-width: 0;
}

.home-lobpreis__platform-pill {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.42rem;
  width: 100%;
  min-height: clamp(3.1rem, 5.5vw, 3.55rem);
  padding: clamp(0.5rem, 1vw, 0.62rem) clamp(0.28rem, 0.7vw, 0.38rem);
  border-radius: 0.62rem;
  border: 1px solid rgba(201, 160, 80, 0.32);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0.025) 100%);
  color: rgba(250, 246, 238, 0.92);
  text-decoration: none;
  text-align: center;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.home-lobpreis__platform-pill-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: clamp(0.95rem, 1.6vw, 1.12rem);
  height: clamp(0.95rem, 1.6vw, 1.12rem);
  color: var(--gold-light);
}

.home-lobpreis__platform-pill-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-lobpreis__platform-pill-label {
  font-family: var(--font-sans);
  font-size: clamp(0.5rem, 0.95vw, 0.62rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.015em;
  text-align: center;
  white-space: normal;
  max-width: 100%;
}

@container (max-width: 34rem) {
  .home-lobpreis__platform-pill-item--youtube {
    display: none;
  }

  .home-lobpreis__platform-pills {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@container (max-width: 22rem) {
  .home-lobpreis__platform-pills {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (hover: hover) and (pointer: fine) {
  .home-lobpreis__platform-pill:hover,
  .home-lobpreis__platform-pill:focus-visible {
    transform: translateY(-2px);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.11) 0%, rgba(255, 255, 255, 0.05) 100%);
    border-color: rgba(212, 175, 55, 0.52);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  }

  .home-lobpreis__platform-pill:hover .home-lobpreis__platform-pill-icon,
  .home-lobpreis__platform-pill:focus-visible .home-lobpreis__platform-pill-icon {
    color: var(--gold);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-lobpreis__platform-pill {
    transition: none;
  }
}

.home-lobpreis__closing {
  text-align: center;
  max-width: 36rem;
  margin: clamp(3.5rem, 7.5vw, 5rem) auto 0;
}

.home-lobpreis__quote-mark {
  margin: 0 0 clamp(0.45rem, 1vw, 0.65rem);
  font-family: var(--font-serif);
  font-size: clamp(2.75rem, 5.5vw, 3.75rem);
  line-height: 1;
  color: rgba(201, 160, 80, 0.58);
}

.home-lobpreis__lord {
  font-variant: small-caps;
  letter-spacing: 0.05em;
}

.home-lobpreis__verse {
  margin: 0 0 clamp(1rem, 2.2vw, 1.35rem);
  padding: 0;
  border: 0;
}

.home-lobpreis__verse p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.2rem, 2.8vw, 1.65rem);
  font-weight: 500;
  font-style: italic;
  line-height: 1.55;
  color: #0f1f36;
  text-wrap: balance;
}

.home-lobpreis__cite {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.45vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: #c9a050;
}

/* Lobpreis-Innenseite */
.page-lobpreis .page-title-dual--inner:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.lobpreis-page-intro {
  margin-top: 0;
}

.lobpreis-page-intro__text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  line-height: 1.78;
  color: var(--text-body);
  text-align: center;
  text-wrap: balance;
}

.lobpreis-radio {
  margin: clamp(0.35rem, 2vw, 1rem) 0 0;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
  background: transparent;
}

.lobpreis-radio__inner {
  max-width: 40rem;
  margin: 0 auto;
  padding: clamp(2rem, 5.2vw, 2.85rem) clamp(1.35rem, 4vw, 2.25rem) clamp(2.1rem, 5vw, 2.75rem);
  text-align: center;
  border-radius: 1.35rem;
  background:
    radial-gradient(85% 70% at 50% 0%, rgba(232, 213, 160, 0.52) 0%, transparent 62%),
    linear-gradient(180deg, #fbf6ea 0%, #f0e4c9 100%);
  border: 1px solid rgba(184, 152, 79, 0.28);
  box-shadow: 0 14px 36px rgba(19, 39, 68, 0.08);
}

.lobpreis-radio__eyebrow {
  margin: 0 0 clamp(0.85rem, 2vw, 1.1rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.lobpreis-radio__title {
  margin: 0 0 clamp(0.85rem, 2vw, 1.15rem);
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.55rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--midnight);
}

.lobpreis-radio .home-section-ornament {
  margin-bottom: clamp(1.15rem, 2.6vw, 1.55rem);
}

.lobpreis-radio .home-section-ornament__line {
  background: rgba(184, 152, 79, 0.55);
}

.lobpreis-radio__text {
  margin: 0 auto clamp(1.65rem, 3.5vw, 2.15rem);
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.08rem);
  line-height: 1.78;
  color: var(--text-body);
}

.lobpreis-radio__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin: 0 auto;
}

.page-lobpreis .lobpreis-radio__actions .btn-primary,
.page-lobpreis .lobpreis-radio__actions .btn-secondary {
  width: auto;
  min-width: 0;
  min-height: 2.85rem;
  padding-left: 1.85rem;
  padding-right: 1.85rem;
}

.page-lobpreis .lobpreis-radio__actions .btn-secondary,
body.is-inner .page-lobpreis .lobpreis-radio__actions .btn-secondary {
  background: transparent;
  color: var(--deep-navy);
  border-color: rgba(184, 152, 79, 0.5);
  box-shadow: none;
}

.page-lobpreis .lobpreis-radio__actions .btn-secondary:hover,
.page-lobpreis .lobpreis-radio__actions .btn-secondary:focus-visible,
body.is-inner .page-lobpreis .lobpreis-radio__actions .btn-secondary:hover,
body.is-inner .page-lobpreis .lobpreis-radio__actions .btn-secondary:focus-visible {
  background: rgba(201, 168, 76, 0.14);
  border-color: rgba(184, 152, 79, 0.72);
  color: var(--midnight);
  box-shadow: none;
}

.page-lobpreis .lobpreis-radio__actions [hidden] {
  display: none !important;
}

.lobpreis-page-player {
  padding: clamp(1.75rem, 4vw, 2.75rem) clamp(1.25rem, 4vw, 2rem) clamp(2.5rem, 5vw, 3.5rem);
}

.lobpreis-page-player .home-lobpreis__inner {
  max-width: min(100%, 80rem);
  margin: 0 auto;
}

.lobpreis-page-player .home-lobpreis__playlist-panel {
  max-width: none;
  margin-bottom: 0;
  padding: clamp(1.45rem, 3vw, 2rem) clamp(1.25rem, 3.2vw, 1.85rem) clamp(1.35rem, 3vw, 1.75rem);
}

.lobpreis-page-player .home-lobpreis__tracks {
  max-height: clamp(20rem, 48vh, 30rem);
}

@media (min-width: 768px) {
  .lobpreis-page-player .home-lobpreis__player-layout {
    gap: clamp(1rem, 2.2vw, 1.45rem);
  }

  .lobpreis-page-player .home-lobpreis__tracklist {
    flex: 0 0 36%;
    max-width: 36%;
  }

  .lobpreis-page-player .home-lobpreis__player {
    flex: 1 1 64%;
  }

  .lobpreis-page-player .home-lobpreis__embed {
    aspect-ratio: 16 / 9;
    min-height: clamp(18rem, 34vw, 26rem);
  }
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__playlist-head {
  gap: 0.5rem 0.85rem;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__playlist-credit,
.page-lobpreis .lobpreis-page-player .home-lobpreis__playlist-artist {
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.85vw, 1.08rem);
  font-weight: 600;
  font-style: italic;
  letter-spacing: 0.04em;
  text-transform: none;
  color: rgba(250, 246, 238, 0.96);
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__track-item + .home-lobpreis__track-item {
  margin-top: 0.28rem;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__track {
  padding: 0.52rem 0.62rem;
  border-radius: 0.62rem;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__track-title {
  font-size: clamp(0.72rem, 1.35vw, 0.8rem);
  line-height: 1.38;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__track-artist {
  font-size: clamp(0.6rem, 1.05vw, 0.66rem);
  letter-spacing: 0.02em;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__track.is-active {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(201, 160, 80, 0.48);
  box-shadow: inset 0 0 0 1px rgba(212, 175, 55, 0.12);
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__embed {
  border-radius: 0.72rem;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__player-platforms {
  margin-top: clamp(0.85rem, 2vw, 1.15rem);
  padding-top: clamp(0.75rem, 1.6vw, 0.95rem);
  border-top: 1px solid rgba(201, 160, 80, 0.14);
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__player-platforms-title {
  margin-bottom: clamp(0.75rem, 1.6vw, 0.95rem);
  font-size: clamp(0.84rem, 1.6vw, 0.94rem);
  line-height: 1.42;
  letter-spacing: 0.01em;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__platform-pills {
  gap: clamp(0.45rem, 1vw, 0.62rem);
  align-items: stretch;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__platform-pill {
  min-height: clamp(3.25rem, 5.8vw, 3.65rem);
  padding: clamp(0.52rem, 1vw, 0.65rem) clamp(0.32rem, 0.75vw, 0.42rem);
  border-radius: 0.68rem;
}

.page-lobpreis .lobpreis-page-player .home-lobpreis__platform-pill-label {
  font-size: clamp(0.52rem, 1vw, 0.64rem);
  letter-spacing: 0.04em;
}

.page-lobpreis .verse-banner {
  margin-top: 0;
}

.home-hermine__sections {
  display: grid;
  gap: 1.75rem;
  margin-bottom: 2.5rem;
}

@media (min-width: 768px) {
  .home-hermine__sections {
    grid-template-columns: 1fr 1fr;
  }
}

.home-hermine__section {
  padding: 1.25rem 1.1rem;
  border-radius: var(--radius-lg);
  background: rgba(250, 246, 238, 0.55);
  border: 1px solid rgba(201, 168, 76, 0.18);
}

.home-hermine__section-title {
  font-family: var(--font-serif);
  font-size: 1.25rem;
  margin: 0 0 0.65rem;
  color: var(--text-dark);
}

.home-hermine__section-body {
  margin: 0;
  line-height: 1.65;
  color: var(--text-body);
  font-size: 0.98rem;
}

.home-hermine__section-link {
  margin: 0.85rem 0 0;
}

/* Startseite: Hermine Ã¢â‚¬â€œ Autorenwelt */
.home-hermine-world {
  position: relative;
  padding: clamp(4.25rem, 8.5vw, 6.5rem) clamp(1.25rem, 4vw, 2rem);
  background: #ffffff;
  overflow: hidden;
}

.home-hermine-world__inner {
  position: relative;
  max-width: 68rem;
  margin: 0 auto;
}

.home-hermine-world__watermark {
  position: absolute;
  top: 36%;
  left: clamp(-20rem, -16vw, -7rem);
  transform: translateY(-50%);
  font-family: var(--font-serif);
  font-size: clamp(24rem, 58vw, 38rem);
  font-weight: 300;
  font-style: italic;
  line-height: 0.78;
  color: rgba(232, 213, 160, 0.22);
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.home-hermine-world__header {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 44rem;
  margin: 0 auto clamp(3rem, 6.5vw, 4.25rem);
}

.home-hermine-world__eyebrow {
  margin: 0 0 clamp(1.05rem, 2.4vw, 1.35rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.2vw, 0.74rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.home-hermine-world__title {
  margin: 0 0 clamp(1.05rem, 2.4vw, 1.35rem);
  font-family: var(--font-serif);
  font-size: clamp(2.45rem, 5.8vw, 3.65rem);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.015em;
  color: #0f1f36;
}

.home-hermine-world__signature {
  display: block;
  width: min(100%, 20rem);
  height: auto;
  margin: 0 auto clamp(2rem, 4.2vw, 2.75rem);
  color: rgba(201, 168, 76, 0.82);
}

.home-hermine-world__intro {
  margin: 0 auto;
  max-width: 42rem;
  font-family: var(--font-serif);
  font-size: clamp(1.15rem, 2.35vw, 1.38rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.82;
  color: rgba(15, 31, 54, 0.88);
  text-wrap: balance;
}

.home-hermine-world__cards {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(1.25rem, 2.8vw, 1.65rem);
  margin-top: clamp(0.25rem, 0.8vw, 0.5rem);
}

@media (min-width: 768px) {
  .home-hermine-world__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.home-hermine-world__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(2.15rem, 4.2vw, 2.75rem) clamp(1.5rem, 3.2vw, 2rem) clamp(2rem, 4vw, 2.5rem);
  border-radius: 0.95rem;
  border: 1px solid transparent;
  box-shadow: 0 16px 40px rgba(15, 31, 54, 0.1);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.home-hermine-world__card-label {
  margin: 0 0 clamp(0.65rem, 1.4vw, 0.85rem);
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.75vw, 1.12rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

.home-hermine-world__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(2.35rem, 4.5vw, 2.85rem);
  height: clamp(2.35rem, 4.5vw, 2.85rem);
  margin-bottom: clamp(0.85rem, 1.8vw, 1.05rem);
}

.home-hermine-world__card-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-hermine-world__card-tagline {
  margin: 0 0 clamp(0.75rem, 1.6vw, 0.95rem);
  font-family: var(--font-serif);
  font-size: clamp(1.08rem, 2.05vw, 1.22rem);
  font-weight: 500;
  font-style: italic;
  line-height: 1.38;
  text-shadow: none;
}

.home-hermine-world__card-body {
  margin: 0 0 clamp(1.35rem, 2.8vw, 1.65rem);
  max-width: 26rem;
  font-family: var(--font-sans);
  font-size: clamp(0.9rem, 1.6vw, 0.98rem);
  line-height: 1.72;
}

.home-hermine-world__card-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: auto;
  padding: 0.68rem 1.2rem;
  border-radius: 999px;
  font-family: var(--font-sans);
  font-size: clamp(0.6rem, 1.08vw, 0.66rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease;
}

.home-hermine-world__card--books {
  background: linear-gradient(165deg, #f5efe4 0%, #ebe0cf 52%, #e3d4bc 100%);
  border-color: rgba(201, 168, 76, 0.22);
}

.home-hermine-world__card--books .home-hermine-world__card-icon {
  color: #c9a050;
}

.home-hermine-world__card--books .home-hermine-world__card-label {
  color: #0f1f36;
}

.home-hermine-world__card--books .home-hermine-world__card-tagline {
  color: #0f1f36;
}

.home-hermine-world__card--books .home-hermine-world__card-body {
  color: rgba(15, 31, 54, 0.82);
}

.home-hermine-world__card--books .home-hermine-world__card-btn {
  border: 1px solid rgba(201, 168, 76, 0.48);
  background: rgba(255, 255, 255, 0.46);
  color: #0f1f36;
}

.home-hermine-world__card--lebenslieder {
  background: linear-gradient(165deg, #132744 0%, #0f1f36 58%, #0a1628 100%);
  border-color: rgba(201, 168, 76, 0.18);
}

.home-hermine-world__card--lebenslieder .home-hermine-world__card-icon {
  color: #d4af37;
}

.home-hermine-world__card--lebenslieder .home-hermine-world__card-label {
  color: rgba(250, 246, 238, 0.96);
}

.home-hermine-world__card--lebenslieder .home-hermine-world__card-tagline {
  color: #e8d5a0;
}

.home-hermine-world__card--lebenslieder .home-hermine-world__card-body {
  color: rgba(250, 246, 238, 0.82);
}

.home-hermine-world__card--lebenslieder .home-hermine-world__card-btn {
  border: 1px solid rgba(232, 213, 160, 0.55);
  background: rgba(255, 255, 255, 0.06);
  color: #f5ebd3;
}

.home-hermine-world__more {
  position: relative;
  z-index: 1;
  margin: clamp(2.75rem, 5.8vw, 3.5rem) 0 0;
  text-align: center;
}

.home-hermine-world__more-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.72rem 1.35rem;
  border-radius: 999px;
  border: 1px solid rgba(15, 31, 54, 0.22);
  background: transparent;
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.15vw, 0.68rem);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #0f1f36;
  text-decoration: none;
  transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease, color 0.22s ease, gap 0.22s ease;
}

@media (hover: hover) and (pointer: fine) {
  .home-hermine-world__card--books:hover {
    border-color: rgba(201, 168, 76, 0.38);
  }

  .home-hermine-world__card--lebenslieder:hover {
    border-color: rgba(212, 175, 55, 0.32);
  }

  .home-hermine-world__card--books .home-hermine-world__card-btn:hover,
  .home-hermine-world__card--books .home-hermine-world__card-btn:focus-visible {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.72);
    border-color: rgba(201, 168, 76, 0.58);
    color: #0a1628;
  }

  .home-hermine-world__card--lebenslieder .home-hermine-world__card-btn:hover,
  .home-hermine-world__card--lebenslieder .home-hermine-world__card-btn:focus-visible {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(245, 235, 211, 0.72);
    color: #ffffff;
  }

  .home-hermine-world__more-link:hover,
  .home-hermine-world__more-link:focus-visible {
    transform: translateY(-1px);
    background: rgba(15, 31, 54, 0.04);
    border-color: rgba(201, 168, 76, 0.45);
    color: #0a1628;
    gap: 0.55rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hermine-world__card,
  .home-hermine-world__card-btn,
  .home-hermine-world__more-link {
    transition: none;
  }
}

.home-gebet-teaser__prayer-card__name {
  margin: 0 0 0.45rem;
  font-family: var(--font-serif);
  font-size: 1.15rem;
  color: var(--text-dark);
}

.home-gebet-teaser__support-h {
  margin: 0 0 0.85rem;
  font-family: var(--font-serif);
  font-size: 1.2rem;
  color: var(--text-dark);
}

.home-closing {
  padding: 3.5rem 0 4rem;
  background: linear-gradient(180deg, var(--midnight) 0%, var(--deep-navy) 100%);
  text-align: center;
}

.home-closing__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.6rem, 4.5vw, 2.5rem);
  font-weight: 600;
  line-height: 1.35;
  color: var(--gold-light);
  letter-spacing: 0.02em;
}

.home-counter-wrap .sl-counter-widget__heading {
  text-align: center;
  max-width: 20ch;
  margin-left: auto;
  margin-right: auto;
}

/* -------------------------------------------------------------------------- */
/* Schwebende Bedienelemente (Newsletter + Lobpreis)                          */
/* -------------------------------------------------------------------------- */

body.is-soft-nav-loading #main-content,
body.is-soft-nav-loading main.page-main {
  opacity: 0.94;
  transition: opacity 0.18s ease;
}

.site-float-stack {
  --float-btn-size: 3.625rem;
  --float-btn-gap: 0.72rem;
  --float-edge-x: 1.4rem;
  --float-edge-y: 1.4rem;
  position: fixed;
  right: var(--float-edge-x);
  bottom: var(--float-edge-y);
  z-index: 950;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--float-btn-gap);
  pointer-events: none;
}

.site-float-stack .lp-float,
.site-float-stack .nl-float {
  position: relative;
  right: auto;
  bottom: auto;
  pointer-events: none;
}

.nl-float__trigger,
.nl-float__panel,
.lp-float__trigger {
  pointer-events: auto;
}

.nl-float__trigger,
.lp-float__trigger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--float-btn-size);
  height: var(--float-btn-size);
  padding: 0;
  border: 1px solid rgba(201, 168, 76, 0.72);
  border-radius: 50%;
  background: linear-gradient(165deg, #0c182c 0%, var(--deep-navy) 52%, #0a1628 100%);
  color: var(--gold-light);
  cursor: pointer;
  box-shadow:
    0 6px 20px rgba(8, 18, 32, 0.34),
    0 0 0 1px rgba(201, 168, 76, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  transition:
    transform 0.28s ease,
    box-shadow 0.28s ease,
    border-color 0.28s ease,
    color 0.28s ease;
}

.nl-float__trigger:hover,
.nl-float__trigger:focus-visible,
.lp-float__trigger:hover,
.lp-float__trigger:focus-visible {
  transform: translateY(-3px);
  border-color: var(--gold-light);
  color: var(--gold-glow);
  box-shadow:
    0 12px 28px rgba(8, 18, 32, 0.4),
    0 0 22px rgba(201, 168, 76, 0.24),
    0 0 0 1px rgba(232, 213, 160, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
  outline: none;
}

.nl-float__icon,
.lp-float__icon {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.55rem;
  height: 1.55rem;
  color: inherit;
  filter: drop-shadow(0 0 4px rgba(201, 168, 76, 0.28));
}

.nl-float__trigger:hover .nl-float__icon,
.nl-float__trigger:focus-visible .nl-float__icon,
.lp-float__trigger:hover .lp-float__icon,
.lp-float__trigger:focus-visible .lp-float__icon {
  transform: translate(-50%, -50%);
  filter: drop-shadow(0 0 7px rgba(232, 213, 160, 0.42));
}

.nl-float__icon svg,
.lp-float__icon svg {
  width: 100%;
  height: 100%;
}

.nl-float__label,
.lp-float__label {
  position: absolute;
  right: calc(100% + 0.72rem);
  top: 50%;
  transform: translateY(-50%) translateX(0.4rem);
  padding: 0.48rem 0.92rem;
  border-radius: 999px;
  background: rgba(10, 22, 40, 0.94);
  border: 1px solid rgba(201, 168, 76, 0.48);
  color: var(--cream);
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.28s ease,
    transform 0.28s ease,
    visibility 0.28s ease;
  box-shadow: 0 8px 22px rgba(10, 22, 40, 0.26);
}

.nl-float__trigger:hover .nl-float__label,
.nl-float__trigger:focus-visible .nl-float__label,
.lp-float__trigger:hover .lp-float__label,
.lp-float__trigger:focus-visible .lp-float__label {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translateX(0);
}

.lp-float[hidden] {
  display: none;
}

.lp-float__icon--pause[hidden],
.lp-float__icon--play[hidden] {
  display: none;
}

.lp-float__trigger.is-playing {
  animation: lp-float-pulse 2.4s ease-in-out infinite;
}

.lp-float__trigger.is-deferred-by-page-player {
  border-color: rgba(201, 168, 76, 0.45);
  opacity: 0.88;
}

.lp-float__trigger.is-deferred-by-page-player:not(.is-playing):hover,
.lp-float__trigger.is-deferred-by-page-player:not(.is-playing):focus-visible {
  opacity: 1;
}

@keyframes lp-float-pulse {
  0%,
  100% {
    box-shadow:
      0 6px 20px rgba(8, 18, 32, 0.34),
      0 0 0 1px rgba(201, 168, 76, 0.14),
      inset 0 1px 0 rgba(255, 255, 255, 0.07);
  }

  50% {
    box-shadow:
      0 8px 24px rgba(8, 18, 32, 0.38),
      0 0 18px rgba(201, 168, 76, 0.22),
      0 0 0 1px rgba(232, 213, 160, 0.32),
      inset 0 1px 0 rgba(255, 255, 255, 0.09);
  }
}

.lp-float__player-host {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.nl-float__panel {
  position: absolute;
  right: 0;
  bottom: calc(100% + 0.85rem);
  width: min(20.5rem, calc(100vw - 2.5rem));
  padding: 1.35rem 1.25rem 1.15rem;
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(201, 168, 76, 0.38);
  background: linear-gradient(165deg, #0f2038 0%, var(--deep-navy) 100%);
  color: var(--cream);
  box-shadow:
    0 16px 40px rgba(10, 22, 40, 0.42),
    0 0 0 1px rgba(201, 168, 76, 0.08);
  pointer-events: auto;
}

.nl-float__panel[hidden] {
  display: none;
}

.nl-float__close {
  position: absolute;
  top: 0.55rem;
  right: 0.55rem;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: rgba(250, 246, 238, 0.72);
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
  transition: color 0.2s ease, background 0.2s ease;
}

.nl-float__close:hover,
.nl-float__close:focus-visible {
  color: var(--gold-light);
  background: rgba(201, 168, 76, 0.12);
  outline: none;
}

.nl-float__eyebrow {
  margin: 0 0 0.45rem;
  font-family: var(--font-sans);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
}

.nl-float__title {
  margin: 0 0 0.55rem;
  padding-right: 1.5rem;
  font-family: var(--font-serif);
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--cream);
}

.nl-float__lead {
  margin: 0 0 1rem;
  font-size: 0.92rem;
  line-height: 1.55;
  color: rgba(250, 246, 238, 0.82);
}

.nl-float__feedback {
  margin: 0 0 0.85rem;
  text-align: left;
}

.nl-float__feedback[hidden] {
  display: none;
}

.nl-float__form {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.nl-float__consent {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.45;
  color: rgba(250, 246, 238, 0.88);
  cursor: pointer;
}

.nl-float__consent input {
  margin: 0.2rem 0 0;
  flex: 0 0 auto;
}

.nl-float__consent a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.nl-float__consent a:hover {
  color: var(--gold);
}

.nl-float__field {
  display: block;
}

.nl-float__field input {
  width: 100%;
  min-height: 2.75rem;
  padding: 0.65rem 0.85rem;
  border: 1px solid rgba(201, 168, 76, 0.35);
  border-radius: var(--radius);
  background: rgba(250, 246, 238, 0.96);
  color: var(--text-dark);
  font-family: var(--font-sans);
  font-size: 1rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.nl-float__field input::placeholder {
  color: rgba(61, 61, 86, 0.55);
}

.nl-float__field input:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.18);
  outline: none;
}

.nl-float__submit {
  min-height: 2.75rem;
  padding: 0.65rem 1rem;
  border: none;
  border-radius: var(--radius);
  background: var(--gold);
  color: var(--deep-navy);
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.nl-float__submit:hover,
.nl-float__submit:focus-visible {
  background: var(--gold-light);
  outline: none;
}

.nl-float__submit:active {
  transform: translateY(1px);
}

.nl-float__note {
  margin: 0.85rem 0 0;
  font-size: 0.74rem;
  line-height: 1.45;
  color: rgba(250, 246, 238, 0.62);
}

.nl-float__note a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.nl-float__note a:hover {
  color: var(--gold);
}


@media (max-width: 767px) {
  .site-float-stack {
    --float-btn-size: 3.75rem;
    --float-btn-gap: 0.68rem;
    --float-edge-x: 1.1rem;
    --float-edge-y: 1.1rem;
  }

  .nl-float__label,
  .lp-float__label {
    display: none;
  }

  .nl-float__panel {
    width: min(20.5rem, calc(100vw - 2rem));
    bottom: calc(100% + 0.65rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nl-float__trigger,
  .nl-float__label,
  .lp-float__trigger,
  .lp-float__label,
  .nl-float__close,
  .nl-float__submit,
  .nl-float__field input {
    transition: none;
  }

  .lp-float__trigger.is-playing {
    animation: none;
  }
}

/* -------------------------------------------------------------------------- */
/* Startseite Ã¢â‚¬â€œ Typografie & vertikaler Rhythmus (Feinschliff)                */
/* -------------------------------------------------------------------------- */

.page-home .home-welcome {
  padding: clamp(3.25rem, 7.5vw, 5.75rem) clamp(1.25rem, 4vw, 2.5rem) clamp(2.85rem, 6.5vw, 5rem);
}

.page-home .home-welcome__body {
  font-size: clamp(1rem, 1.9vw, 1.08rem);
}

.page-home .home-herzensanliegen {
  padding: clamp(3.5rem, 8vw, 6rem) 0 clamp(3.75rem, 8.5vw, 6.25rem);
}

.page-home .home-herzensanliegen__header {
  margin-bottom: clamp(2.5rem, 5.5vw, 3.75rem);
}

.page-home .home-prose-block {
  padding: 3rem 0;
}

.page-home .home-prose-block--bridge {
  padding: 2.85rem 0;
}

.page-home .home-prose-block__body {
  font-size: clamp(1rem, 1.85vw, 1.06rem);
}

.page-home .home-mitmachen {
  padding: clamp(3.5rem, 8vw, 6rem) 0 clamp(3.75rem, 8.5vw, 6.25rem);
}

.page-home .home-mitmachen__header {
  margin-bottom: clamp(2.35rem, 5vw, 3.25rem);
}

.page-home .home-gebet {
  padding: 0;
}

.page-home .home-gebet__intro {
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
}

.page-home .home-lobpreis-teaser {
  padding: clamp(2.35rem, 5vw, 3.65rem) clamp(1.25rem, 4vw, 2rem);
}

.page-home .home-lobpreis-teaser__header {
  margin-bottom: clamp(1.35rem, 2.8vw, 1.85rem);
}

.page-home .home-lobpreis-teaser__lead {
  font-size: clamp(0.98rem, 1.75vw, 1.05rem);
}

.page-home .home-lobpreis {
  padding: clamp(3.15rem, 7vw, 5.25rem) 0 clamp(3.25rem, 7.2vw, 5.35rem);
}

.page-home .home-lobpreis__header {
  margin-bottom: clamp(2.1rem, 4.5vw, 3.15rem);
}

.page-home .home-lobpreis__intro {
  font-size: clamp(1rem, 1.9vw, 1.08rem);
}

.page-home .home-impulses {
  padding: 0;
}

.page-home .home-impulses__lead {
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
}

.page-home .home-hermine-world {
  padding: clamp(3.75rem, 7.5vw, 6rem) clamp(1.25rem, 4vw, 2rem);
}

.page-home .home-hermine-world__header {
  margin-bottom: clamp(2.75rem, 6vw, 3.85rem);
}

.page-home .home-hermine-world__intro {
  font-size: clamp(1.12rem, 2.25vw, 1.34rem);
}

.page-home .home-closing {
  padding: 3rem 0 3.5rem;
}

@media (min-width: 992px) {
  .page-home .home-gebet__intro,
  .page-home .home-lobpreis__intro p,
  .page-home .home-impulses__card-teaser,
  .page-home .home-hermine-world__card-body {
    font-size: 1.02rem;
    line-height: 1.72;
  }
}

/* Startseite Ã¢â‚¬â€œ Bibel-Counter kompakt (Kernbotschaften, ohne Fortschrittsblock) */
.page-home .home-counter-wrap {
  padding: clamp(2.15rem, 4.8vw, 3.15rem) clamp(1.25rem, 4vw, 2rem);
}

.page-home .home-bibel-counter__card {
  padding: clamp(1.55rem, 3.2vw, 2.1rem) clamp(1.25rem, 2.8vw, 1.85rem);
}

.page-home .home-bibel-counter__header {
  margin-bottom: clamp(0.85rem, 1.9vw, 1.15rem);
}

.page-home .home-bibel-counter__header .home-section-ornament {
  margin-top: 0.55rem;
  margin-bottom: 0;
}

.page-home .home-bibel-counter__main {
  max-width: 34rem;
  margin: 0 auto;
  padding: clamp(0.75rem, 1.8vw, 1rem) clamp(0.65rem, 1.6vw, 0.85rem)
    clamp(0.85rem, 1.9vw, 1.05rem);
  border-radius: 0.85rem;
  background: linear-gradient(
    180deg,
    rgba(255, 252, 245, 0.96) 0%,
    rgba(250, 246, 238, 0.42) 100%
  );
  border: 1px solid rgba(184, 152, 79, 0.18);
}

.page-home .home-bibel-counter__value {
  font-size: clamp(3.15rem, 9.5vw, 4.85rem);
  line-height: 0.95;
}

.page-home .home-bibel-counter__label {
  margin: 0.28rem 0 0;
  font-size: clamp(0.96rem, 1.9vw, 1.12rem);
  line-height: 1.28;
}

.page-home .home-bibel-counter__impact {
  margin: 0.55rem auto 0;
  max-width: 31rem;
  font-size: clamp(0.9rem, 1.65vw, 1rem);
  line-height: 1.52;
}

.page-home .home-bibel-counter__divider--cross,
.page-home .home-bibel-counter__progress,
.page-home .home-bibel-counter__footer-line {
  display: none;
}

.page-home .home-bibel-counter__cta {
  margin-top: clamp(1rem, 2.2vw, 1.35rem);
  padding-top: clamp(0.75rem, 1.7vw, 0.95rem);
  border-top: 1px solid rgba(184, 152, 79, 0.2);
}

.page-home .home-bibel-counter__donate {
  margin: 0 0 0.85rem;
  font-size: clamp(0.9rem, 1.65vw, 1rem);
}

.page-home .home-bibel-counter__btn {
  min-height: 2.55rem;
  padding: 0.58rem 1.45rem;
}

/* Startseite Ã¢â‚¬â€œ Block-Abgrenzung, Rhythmus & straffere ÃƒÅ“bergÃƒÂ¤nge */
.page-home #main-content {
  overflow-x: clip;
}

.page-home #main-content > * {
  margin-top: 0;
  margin-bottom: 0;
}

.page-home #main-content > :is(
  .home-frohe-botschaft,
  .home-welcome,
  .verse-banner,
  .home-herzensanliegen,
  .home-hoffnung,
  .home-counter-wrap,
  .home-ruf,
  .home-mitmachen,
  .home-gebet,
  .home-lobpreis,
  .home-impulses,
  .home-hermine-world,
  .home-closing
) {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-home .home-frohe-botschaft {
  background: var(--warm-white);
  border-bottom: 1px solid rgba(15, 31, 54, 0.07);
  box-shadow: inset 0 -1px 0 rgba(184, 152, 79, 0.14);
}

.page-home .home-welcome {
  padding-bottom: clamp(2.35rem, 5.5vw, 4.25rem);
  border-bottom: 1px solid rgba(184, 152, 79, 0.22);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.page-home .verse-banner.verse-banner--editorial-navy {
  border-top: 1px solid rgba(201, 168, 76, 0.18);
}

/* Startseite Psalm: feste Höhe, einheitliche Typo, kompakte zentrierte Gruppe */
.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner],
.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner]:not(.is-expanded-shell),
.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell {
  --home-verse-banner-h: 15.75rem;
  --home-verse-text-slot-h: 4.4em;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(1.05rem, 2.2vw, 1.35rem) clamp(1.15rem, 3.5vw, 1.85rem);
  height: var(--home-verse-banner-h);
  min-height: var(--home-verse-banner-h);
  max-height: var(--home-verse-banner-h);
  overflow: hidden;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__inner {
  width: min(100%, 40rem);
  max-width: 40rem;
  margin: 0 auto;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] blockquote {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.28rem, 2.4vw, 1.62rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: 0.012em;
  color: rgba(250, 246, 238, 0.96);
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text-wrap {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  height: var(--home-verse-text-slot-h);
  min-height: var(--home-verse-text-slot-h);
  max-height: var(--home-verse-text-slot-h);
  margin: 0 auto;
  overflow: hidden;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text,
.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text.is-clampable:not(.is-expanded) {
  display: block;
  width: 100%;
  max-width: 36rem;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
  text-align: center;
  text-wrap: balance;
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  -webkit-line-clamp: unset;
  -webkit-box-orient: unset;
  transition: opacity 0.32s ease;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__expand-btn {
  display: none !important;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__ornament {
  flex: 0 0 auto;
  width: min(100%, 11.5rem);
  min-height: 0;
  margin: 0.75rem auto 0.55rem;
  padding: 0;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__ornament-img {
  max-width: 11.5rem;
  max-height: 2rem;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] cite {
  flex: 0 0 auto;
  display: block;
  margin: 0;
  font-size: clamp(0.68rem, 1.4vw, 0.76rem);
  line-height: 1.35;
  letter-spacing: 0.3em;
  transition: opacity 0.32s ease;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__more {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  margin-top: 0.65rem;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-verse-fading .verse-banner__text,
.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-verse-fading cite {
  opacity: 0;
}

.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text-wrap.is-expanded-shell,
.page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell .verse-banner__text-wrap {
  min-height: 0;
}

@media (min-width: 768px) {
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner],
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner]:not(.is-expanded-shell),
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell {
    --home-verse-banner-h: 15.25rem;
    --home-verse-text-slot-h: 4.2em;
  }

  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] blockquote {
    font-size: clamp(1.42rem, 2.1vw, 1.62rem);
    line-height: 1.55;
  }
}

@media (min-width: 1440px) {
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner],
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner]:not(.is-expanded-shell),
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell {
    --home-verse-banner-h: 14.75rem;
    --home-verse-text-slot-h: 4em;
  }

  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] blockquote {
    font-size: 1.62rem;
    line-height: 1.55;
  }
}

@media (max-width: 389px) {
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner],
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner]:not(.is-expanded-shell),
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner].is-expanded-shell {
    --home-verse-banner-h: 16.75rem;
    --home-verse-text-slot-h: 5em;
  }

  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] blockquote {
    font-size: 1.26rem;
    line-height: 1.52;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] .verse-banner__text,
  .page-home .verse-banner.verse-banner--editorial.verse-banner--editorial-navy[data-verse-banner] cite {
    transition: none;
  }
}

.page-home .home-herzensanliegen {
  padding-top: clamp(3rem, 6.8vw, 5.25rem);
  padding-bottom: clamp(3.15rem, 7vw, 5.5rem);
  border-bottom: 1px solid rgba(15, 31, 54, 0.06);
}

.page-home .home-hoffnung {
  background: #fff;
  border-top: 1px solid rgba(184, 152, 79, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.page-home .home-counter-wrap {
  border-top: 1px solid rgba(15, 31, 54, 0.06);
  border-bottom: 1px solid rgba(184, 152, 79, 0.2);
  box-shadow:
    inset 0 1px 0 rgba(255, 252, 245, 0.72),
    inset 0 -1px 0 rgba(184, 152, 79, 0.1);
}

.page-home .home-ruf {
  border-top: 1px solid rgba(201, 168, 76, 0.22);
}

.page-home .home-mitmachen {
  padding-top: clamp(3rem, 6.8vw, 5.25rem);
  padding-bottom: clamp(3.15rem, 7vw, 5.5rem);
  background: var(--warm-white);
  border-top: 1px solid rgba(201, 168, 76, 0.18);
  border-bottom: 1px solid rgba(15, 31, 54, 0.07);
}

.page-home .home-gebet {
  padding: 0;
  background: transparent;
  border-top: none;
  box-shadow: none;
}

.page-home .home-lobpreis {
  padding-top: clamp(2.85rem, 6.5vw, 4.85rem);
  padding-bottom: clamp(2.95rem, 6.8vw, 4.95rem);
  background: var(--warm-white);
  border-top: 1px solid rgba(184, 152, 79, 0.22);
  border-bottom: 1px solid rgba(15, 31, 54, 0.06);
}

.page-home .home-lobpreis-teaser {
  padding-top: clamp(2.15rem, 4.8vw, 3.35rem);
  padding-bottom: clamp(2.15rem, 4.8vw, 3.35rem);
}

.page-home .home-impulses {
  padding: 0;
  background: transparent;
  border-top: none;
  box-shadow: none;
}

.page-home .home-hermine-world {
  padding-top: clamp(3.25rem, 6.5vw, 5.25rem);
  padding-bottom: clamp(3.25rem, 6.5vw, 5.25rem);
  background: #fff;
  border-top: 1px solid rgba(184, 152, 79, 0.28);
}

.page-home .home-closing {
  border-top: 1px solid rgba(201, 168, 76, 0.22);
}

/* -------------------------------------------------------------------------- */
/* Bibelprojekt (/verein/bibelprojekt)                                        */
/* -------------------------------------------------------------------------- */

.page-bibelprojekt-main {
  padding: 0;
}

.page-bibelprojekt-main > * {
  margin-top: 0;
  margin-bottom: 0;
}

.page-bibelprojekt-main > :is(
  .bp-hero,
  .bp-why,
  .bp-geschenkbibel,
  .bp-geschenkbibel-einsatz,
  .bp-counter,
  .bp-steps,
  .bp-impact,
  .home-mitmachen,
  .bp-faq,
  .bp-closing
) {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-bibelprojekt .bp-hero {
  padding: clamp(4.5rem, 10vw, 7rem) clamp(1.25rem, 4vw, 2rem) clamp(4rem, 9vw, 6.25rem);
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 52%, #152a45 100%);
  color: var(--cream);
  text-align: center;
}

.page-bibelprojekt .bp-hero__inner {
  max-width: 44rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-hero__eyebrow {
  margin: 0 0 clamp(1.15rem, 2.6vw, 1.55rem);
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--gold-light);
}

.page-bibelprojekt .bp-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4.5vw, 2.85rem);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0.01em;
  color: #ffffff;
}

.page-bibelprojekt .bp-hero__title-line {
  display: block;
}

.page-bibelprojekt .bp-hero__title-line + .bp-hero__title-line {
  margin-top: clamp(0.35rem, 0.9vw, 0.55rem);
}

.page-bibelprojekt .bp-hero .home-section-ornament__line {
  background: rgba(184, 152, 79, 0.55);
}

.page-bibelprojekt .bp-hero__lead {
  margin: 0 auto;
  max-width: 40rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.1vw, 1.2rem);
  line-height: 1.78;
  color: rgba(250, 246, 238, 0.92);
  text-wrap: pretty;
}

.page-bibelprojekt .bp-why {
  padding: var(--verein-section-y) var(--verein-section-x);
  background: var(--warm-white);
  border-bottom: var(--verein-section-divider);
}

.page-bibelprojekt .bp-why__inner {
  max-width: 72rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-why__header {
  text-align: center;
}

.page-bibelprojekt .bp-why__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-why__columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 0;
}

.page-bibelprojekt .bp-why__col {
  max-width: 22rem;
  margin: 0 auto;
  text-align: center;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
}

.page-bibelprojekt .bp-why__col p {
  margin: 0;
}

.page-bibelprojekt .bp-why__divider {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  width: 1px;
  margin: 0 clamp(1rem, 2.5vw, 1.75rem);
  min-height: 100%;
}

.page-bibelprojekt .bp-why__divider-line {
  flex: 1 1 auto;
  width: 1px;
  min-height: 2.5rem;
  background: rgba(184, 152, 79, 0.28);
}

.page-bibelprojekt .bp-why__divider-cross {
  flex: 0 0 auto;
  width: 0.58rem;
  height: 0.82rem;
  margin: 0.7rem 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='none'%3E%3Cpath d='M5 1v12' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3Cpath d='M2 4.5h6' stroke='%23b8984f' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E");
}

.page-bibelprojekt .bp-geschenkbibel {
  padding: 0;
  background: var(--cream);
  border-bottom: var(--verein-section-divider);
  overflow: hidden;
}

.page-bibelprojekt .bp-geschenkbibel__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
  gap: 0;
  align-items: stretch;
  max-width: none;
  margin: 0;
}

.page-bibelprojekt .bp-geschenkbibel__scene {
  position: relative;
  min-height: 100%;
}

.page-bibelprojekt .bp-geschenkbibel__scene-figure {
  position: relative;
  margin: 0;
  height: 100%;
  min-height: clamp(22rem, 44vw, 34rem);
}

.page-bibelprojekt .bp-geschenkbibel__scene-img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  object-position: 44% 38%;
}

.page-bibelprojekt .bp-geschenkbibel__scene-gradient {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(10, 22, 40, 0.05) 0%, transparent 12%),
    linear-gradient(270deg, var(--cream) 0%, rgba(250, 246, 238, 0.82) 3%, rgba(250, 246, 238, 0.26) 9%, rgba(250, 246, 238, 0.06) 16%, transparent 24%),
    linear-gradient(180deg, rgba(10, 22, 40, 0.04) 0%, transparent 38%, rgba(10, 22, 40, 0.06) 100%);
}

.page-bibelprojekt .bp-geschenkbibel__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  padding: var(--verein-section-y) var(--verein-section-x);
  padding-left: clamp(1.35rem, 3.2vw, 2.35rem);
  background: var(--cream);
}

.page-bibelprojekt .bp-geschenkbibel__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-geschenkbibel__content .home-section-ornament {
  margin-left: 0;
  margin-right: auto;
}

.page-bibelprojekt .bp-geschenkbibel__body p {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.98rem, 1.85vw, 1.06rem);
  line-height: 1.78;
  color: rgba(15, 31, 54, 0.88);
}

.page-bibelprojekt .bp-geschenkbibel__body p + p {
  margin-top: clamp(0.95rem, 2.1vw, 1.25rem);
}

.page-bibelprojekt .bp-geschenkbibel-einsatz {
  padding: var(--verein-section-y) var(--verein-section-x);
  background: #fff;
  border-bottom: var(--verein-section-divider);
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__inner {
  max-width: 58rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__header {
  text-align: center;
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.25rem, 2.8vw, 1.55rem);
  font-weight: 500;
  line-height: 1.28;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__grid {
  list-style: none;
  margin: clamp(1.35rem, 3vw, 1.85rem) auto 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(0.75rem, 2.2vw, 0.95rem);
  max-width: 22.5rem;
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-height: 0;
  height: auto;
  gap: 0.7rem;
  padding: clamp(1.05rem, 3vw, 1.35rem) clamp(1rem, 2.6vw, 1.35rem);
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin: 0 auto;
  border-radius: 999px;
  border: 1px solid rgba(184, 152, 79, 0.42);
  background: rgba(255, 252, 247, 0.9);
  color: #b8984f;
  flex-shrink: 0;
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__mark::before {
  content: '';
  width: 0.72rem;
  height: 0.9rem;
  background: center / contain no-repeat
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20' fill='none'%3E%3Cpath d='M8 2v16M4.6 7.3h6.8' stroke='%23b8984f' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
}

.page-bibelprojekt .bp-geschenkbibel-einsatz__text {
  font-family: var(--font-sans);
  font-size: clamp(0.94rem, 1.75vw, 1.02rem);
  line-height: 1.62;
  color: rgba(15, 31, 54, 0.88);
  padding-top: 0;
}

@media (min-width: 700px) {
  .page-bibelprojekt .bp-geschenkbibel-einsatz__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
    gap: var(--grid-gap);
  }

  .page-bibelprojekt .bp-geschenkbibel-einsatz__card {
    min-height: 100%;
    padding: clamp(1.15rem, 2.5vw, 1.45rem) clamp(1.1rem, 2.4vw, 1.45rem);
  }
}

.page-bibelprojekt .bp-counter {
  padding: var(--verein-section-y) var(--verein-section-x);
  background: var(--cream);
  border-top: var(--verein-section-divider);
  border-bottom: var(--verein-section-divider);
}

.page-bibelprojekt .bp-counter .home-counter-wrap--page {
  padding: 0;
  margin: 0;
  background: transparent;
  border-radius: 0;
}

.page-bibelprojekt .bp-counter .home-bibel-counter__card {
  box-shadow: 0 16px 42px rgba(19, 39, 68, 0.06), 0 3px 12px rgba(19, 39, 68, 0.04);
}

.page-bibelprojekt .bp-counter .home-bibel-counter__divider--cross,
.page-bibelprojekt .bp-counter .home-bibel-counter__progress,
.page-bibelprojekt .bp-counter .home-bibel-counter__footer-line {
  display: block;
}

.page-bibelprojekt .bp-steps {
  padding: var(--verein-section-y) var(--verein-section-x);
  background: var(--warm-white);
}

.page-bibelprojekt .bp-steps__inner {
  max-width: 68rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-steps__header {
  text-align: center;
}

.page-bibelprojekt .bp-steps__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-steps__grid {
  list-style: none;
  margin: clamp(1.35rem, 3vw, 1.85rem) 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--grid-gap);
}

.page-bibelprojekt .bp-steps__card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-height: 0;
  height: auto;
  padding: clamp(1.15rem, 2.6vw, 1.55rem) clamp(1.1rem, 2.4vw, 1.4rem);
}

.page-bibelprojekt .bp-steps__card-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin: 0 auto clamp(0.75rem, 1.8vw, 0.95rem);
  border-radius: 999px;
  background: rgba(15, 31, 54, 0.05);
  border: 1px solid rgba(184, 152, 79, 0.38);
  font-family: var(--font-serif);
  font-size: 1rem;
  font-weight: 600;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-steps__card-title {
  margin: 0 0 0.55rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2vw, 1.2rem);
  font-weight: 600;
  line-height: 1.3;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-steps__card-text {
  margin: 0 auto;
  max-width: 22rem;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.7vw, 1rem);
  line-height: 1.65;
  color: rgba(15, 31, 54, 0.8);
}

@media (min-width: 900px) {
  .page-bibelprojekt .bp-steps__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-bibelprojekt .bp-steps__card {
    min-height: 100%;
  }

  .page-bibelprojekt .bp-steps__card-text {
    max-width: none;
  }
}

.page-bibelprojekt .bp-impact {
  padding: clamp(3.75rem, 8.5vw, 6.25rem) clamp(1.25rem, 4vw, 2rem);
  background: linear-gradient(180deg, var(--deep-navy) 0%, var(--midnight) 100%);
  text-align: center;
}

.page-bibelprojekt .bp-impact__inner {
  max-width: 36rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-impact__card {
  padding: clamp(1.75rem, 3.8vw, 2.35rem) clamp(1.35rem, 3vw, 1.85rem);
  border-radius: var(--verein-card-radius);
  border: var(--verein-card-border);
  background: rgba(255, 252, 247, 0.06);
  box-shadow: var(--verein-card-shadow);
}

.page-bibelprojekt .bp-impact__eyebrow {
  margin: 0 0 clamp(1.15rem, 2.5vw, 1.45rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.72rem);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold-on-light);
}

.page-bibelprojekt .bp-impact__equation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(0.85rem, 2vw, 1.25rem);
  margin-bottom: clamp(1.65rem, 3.5vw, 2.15rem);
}

.page-bibelprojekt .bp-impact__equation-part {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.page-bibelprojekt .bp-impact__amount {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(2.85rem, 8vw, 4rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--gold-light);
}

.page-bibelprojekt .bp-impact__amount-label {
  margin-top: 0.35rem;
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.45vw, 0.8rem);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(250, 246, 238, 0.72);
}

.page-bibelprojekt .bp-impact__equation-arrow {
  font-family: var(--font-serif);
  font-size: clamp(1.35rem, 3vw, 1.75rem);
  line-height: 1;
  color: rgba(201, 168, 76, 0.75);
}

.page-bibelprojekt .bp-impact__gift-line {
  display: block;
  font-family: var(--font-sans);
  font-size: clamp(0.92rem, 1.75vw, 1.02rem);
  line-height: 1.45;
  color: rgba(250, 246, 238, 0.88);
}

.page-bibelprojekt .bp-impact__gift-emph {
  display: block;
  margin-top: 0.25rem;
  font-family: var(--font-serif);
  font-size: clamp(1.25rem, 2.6vw, 1.55rem);
  font-weight: 500;
  line-height: 1.25;
  color: var(--cream);
}

.page-bibelprojekt .bp-impact__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.85rem;
  padding: 0.7rem 1.65rem;
  border-radius: 999px;
  border: 0;
  background: linear-gradient(180deg, #ebd591 0%, #dfc07a 52%, #d4af37 100%);
  box-shadow: 0 0 18px rgba(212, 175, 55, 0.22);
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 1.45vw, 0.8rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--deep-navy);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.page-bibelprojekt .bp-impact__btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 0 24px rgba(212, 175, 55, 0.32);
}

.page-bibelprojekt .home-mitmachen {
  border-top: var(--verein-section-divider);
}

.page-bibelprojekt .bp-faq {
  padding: clamp(3.5rem, 8vw, 6rem) clamp(1.25rem, 4vw, 2rem);
  background: var(--warm-white);
  border-top: 1px solid rgba(15, 31, 54, 0.06);
}

.page-bibelprojekt .bp-faq__inner {
  max-width: 44rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-faq__title {
  margin: 0;
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.65rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--deep-navy);
}

.page-bibelprojekt .bp-faq .qa-list {
  margin-top: clamp(1.75rem, 3.8vw, 2.35rem);
}

.page-bibelprojekt .bp-faq .qa-item {
  border-bottom: 1px solid rgba(184, 152, 79, 0.22);
  padding: 0.5rem 0;
}

.page-bibelprojekt .bp-faq .qa-item summary {
  cursor: pointer;
  font-weight: 600;
  padding: 0.65rem 0;
  font-size: 1.05rem;
  font-family: var(--font-sans);
  color: var(--deep-navy);
  list-style: none;
}

.page-bibelprojekt .bp-faq .qa-item summary::-webkit-details-marker {
  display: none;
}

.page-bibelprojekt .bp-faq .qa-answer {
  padding: 0.15rem 0 0.85rem;
  line-height: 1.68;
  font-family: var(--font-sans);
  font-size: clamp(0.96rem, 1.8vw, 1.04rem);
  color: rgba(15, 31, 54, 0.82);
}

.page-bibelprojekt .bp-closing {
  padding: clamp(3.75rem, 8.5vw, 6.25rem) clamp(1.25rem, 4vw, 2rem) clamp(4rem, 9vw, 6.5rem);
  background: linear-gradient(180deg, var(--deep-navy) 0%, var(--midnight) 100%);
  text-align: center;
  border-top: 1px solid rgba(201, 168, 76, 0.22);
}

.page-bibelprojekt .bp-closing__inner {
  max-width: 40rem;
  margin: 0 auto;
}

.page-bibelprojekt .bp-closing__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 4.2vw, 2.55rem);
  font-weight: 500;
  line-height: 1.18;
  color: var(--gold-light);
}

.page-bibelprojekt .bp-closing__lead {
  margin: clamp(1.15rem, 2.6vw, 1.55rem) auto 0;
  max-width: 34rem;
  font-family: var(--font-serif);
  font-size: clamp(1.02rem, 2vw, 1.12rem);
  line-height: 1.72;
  color: rgba(250, 246, 238, 0.9);
}

.page-bibelprojekt .bp-closing__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.85rem;
  margin-top: clamp(1.85rem, 4vw, 2.5rem);
}

@media (max-width: 860px) {
  .page-bibelprojekt .bp-why__columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-bibelprojekt .bp-why__divider {
    flex-direction: row;
    width: min(100%, 12rem);
    height: auto;
    min-height: 0;
    margin: clamp(2rem, 4.5vw, 2.75rem) auto;
  }

  .page-bibelprojekt .bp-why__divider-line {
    flex: 1 1 0;
    width: auto;
    height: 1px;
    min-height: 0;
  }

  .page-bibelprojekt .bp-why__divider-cross {
    margin: 0 0.65rem;
  }

  .page-bibelprojekt .bp-geschenkbibel__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-bibelprojekt .bp-geschenkbibel__scene-figure {
    min-height: clamp(15rem, 54vw, 21rem);
  }

  .page-bibelprojekt .bp-geschenkbibel__scene-img {
    object-position: 46% 34%;
  }

  .page-bibelprojekt .bp-geschenkbibel__scene-gradient {
    background:
      linear-gradient(180deg, rgba(10, 22, 40, 0.03) 0%, transparent 22%),
      linear-gradient(0deg, var(--cream) 0%, rgba(250, 246, 238, 0.68) 10%, rgba(250, 246, 238, 0.16) 28%, transparent 48%);
  }

  .page-bibelprojekt .bp-geschenkbibel__content {
    text-align: center;
    padding-top: clamp(2rem, 5vw, 2.75rem);
  }

  .page-bibelprojekt .bp-geschenkbibel__content .home-section-ornament {
    margin-left: auto;
    margin-right: auto;
  }

  .page-bibelprojekt .bp-impact__equation {
    flex-direction: column;
  }

  .page-bibelprojekt .bp-impact__equation-arrow {
    transform: rotate(90deg);
  }
}

/* -------------------------------------------------------------------------- */
/* Lebenslieder â€“ emotionale ErlebnisblÃ¶cke                                   */
/* -------------------------------------------------------------------------- */

.page-lebenslieder {
  --llx-navy: #0b203b;
}

body.page-lebenslieder .verse-banner {
  display: none !important;
}

.page-lebenslieder #main-content {
  overflow-x: clip;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.page-lebenslieder #main-content > .article-shell {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  overflow-x: clip;
}

.page-lebenslieder .llx-hero,
.page-lebenslieder .llx-emotion,
.page-lebenslieder .llx-occasions,
.page-lebenslieder .llx-listen,
.page-lebenslieder .llx-process,
.page-lebenslieder .llx-package,
.page-lebenslieder .llx-invest,
.page-lebenslieder .llx-form-section,
.page-lebenslieder .llx-trust,
.page-lebenslieder .llx-closing {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.page-lebenslieder .llx-eyebrow {
  margin: 0 0 clamp(0.55rem, 1.25vw, 0.75rem);
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.35vw, 0.76rem);
  font-weight: 700;
  letter-spacing: var(--verein-eyebrow-tracking);
  text-transform: uppercase;
  color: #c9a050;
}

.page-lebenslieder .llx-eyebrow--light {
  color: var(--gold-light);
}

.page-lebenslieder .llx-section-title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.65rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--llx-navy);
  text-wrap: pretty;
}

.page-lebenslieder .llx-section-title span {
  display: block;
}

.page-lebenslieder .llx-section-title--center {
  text-align: center;
  max-width: 22ch;
  margin-left: auto;
  margin-right: auto;
}

.page-lebenslieder .llx-section-head {
  text-align: center;
  margin: 0 auto clamp(1.35rem, 2.9vw, 2rem);
}

.page-lebenslieder .llx-section-head .llx-section-title:has(+ .home-section-ornament) {
  margin-bottom: 0;
}

.page-lebenslieder .llx-section-head .home-section-ornament {
  width: min(100%, 11rem);
  margin: clamp(0.7rem, 1.6vw, 1rem) auto 0;
}

.page-lebenslieder .llx-section-lead {
  margin: clamp(0.75rem, 1.7vw, 1.1rem) auto 0;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.08rem);
  line-height: 1.68;
  color: rgba(11, 32, 59, 0.78);
}

.page-lebenslieder .llx-section-head--on-dark .llx-section-title--light {
  color: var(--warm-white);
}

.page-lebenslieder .llx-section-head--on-dark .home-section-ornament__line {
  background: rgba(201, 168, 76, 0.45);
}

.page-lebenslieder .llx-accent-line {
  margin: clamp(1rem, 2vw, 1.35rem) 0 0;
  font-family: var(--font-serif);
  font-size: clamp(1.15rem, 2vw, 1.35rem);
  font-style: italic;
  font-weight: 500;
  color: var(--gold);
}

/* Hero – kompakt, nur Lebenslieder (leuchtende Noten wie Sterne, kein Lobpreis) */
.page-lebenslieder .llx-hero {
  position: relative;
  padding: calc(var(--nav-h) + clamp(3.25rem, 7vw, 4.75rem)) var(--verein-section-x) clamp(3.5rem, 7.5vw, 5rem);
  background: linear-gradient(
    165deg,
    var(--midnight) 0%,
    var(--deep-navy) 42%,
    var(--royal-blue) 100%
  );
  border-bottom: 1px solid rgba(201, 168, 76, 0.22);
  overflow: hidden;
}

.page-lebenslieder .llx-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 78% 58% at 50% 22%, rgba(201, 168, 76, 0.16), transparent 56%),
    radial-gradient(ellipse 70% 46% at 50% 88%, rgba(7, 24, 46, 0.38), transparent 68%);
}

.page-lebenslieder .llx-hero__melody,
.home-lobpreis-teaser .llx-hero__melody {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}

.page-lebenslieder .llx-hero__melody-svg,
.home-lobpreis-teaser .llx-hero__melody-svg {
  display: none;
}

.page-lebenslieder .llx-hero__notes-drift,
.home-lobpreis-teaser .llx-hero__notes-drift {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.page-lebenslieder .llx-hero-drift-note,
.home-lobpreis-teaser .llx-hero-drift-note {
  position: absolute;
  bottom: 0;
  display: block;
  width: clamp(0.85rem, 2vw, 1.35rem);
  color: rgba(245, 235, 211, 0.95);
  filter:
    drop-shadow(0 0 3px rgba(250, 246, 238, 0.95))
    drop-shadow(0 0 8px rgba(201, 168, 76, 0.7))
    drop-shadow(0 0 16px rgba(201, 168, 76, 0.4));
  pointer-events: none;
  animation-name: llx-drift-rise;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  will-change: transform, opacity;
}

.page-lebenslieder .llx-hero-drift-note svg,
.home-lobpreis-teaser .llx-hero-drift-note svg {
  display: block;
  width: 100%;
  height: auto;
}

.page-lebenslieder .llx-hero-drift-note--flag,
.home-lobpreis-teaser .llx-hero-drift-note--flag {
  width: clamp(1rem, 2.4vw, 1.65rem);
}

.page-lebenslieder .llx-hero-drift-note--beam,
.home-lobpreis-teaser .llx-hero-drift-note--beam {
  width: clamp(1.25rem, 2.9vw, 1.95rem);
}

.page-lebenslieder .llx-hero-drift-note--half,
.home-lobpreis-teaser .llx-hero-drift-note--half {
  width: clamp(0.9rem, 2.15vw, 1.45rem);
}

.page-lebenslieder .llx-hero-drift-note--tiny,
.home-lobpreis-teaser .llx-hero-drift-note--tiny {
  width: clamp(0.7rem, 1.7vw, 1.05rem);
}

.page-lebenslieder .llx-hero__note-svg,
.home-lobpreis-teaser .llx-hero__note-svg {
  display: none;
}

.page-lebenslieder .llx-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 40rem;
  margin: 0 auto;
  text-align: center;
}

.page-lebenslieder .llx-hero__content {
  position: relative;
  margin: 0 auto;
}

/* Keine dunkle Text-Karte mehr – Text schwebt frei über den Noten */
.page-lebenslieder .llx-hero__content::before {
  content: none;
}

.page-lebenslieder .llx-hero__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 3.8vw, 2.45rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.015em;
  color: var(--cream);
  text-wrap: pretty;
  text-shadow: 0 1px 18px rgba(7, 24, 46, 0.45);
}

.page-lebenslieder .llx-hero__title-line {
  display: block;
}

.page-lebenslieder .llx-hero .home-section-ornament {
  width: min(100%, 9.5rem);
  margin: clamp(0.7rem, 1.6vw, 1rem) auto clamp(0.85rem, 1.8vw, 1.15rem);
}

.page-lebenslieder .llx-hero .home-section-ornament__line {
  background: rgba(201, 168, 76, 0.45);
}

.page-lebenslieder .llx-hero__lead {
  margin: 0 auto;
  max-width: 30rem;
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.55vw, 1.04rem);
  line-height: 1.62;
  color: rgba(250, 246, 238, 0.94);
  text-shadow: 0 1px 14px rgba(7, 24, 46, 0.4);
}

.page-lebenslieder .llx-hero .llx-accent-line {
  color: var(--gold-light);
}

.page-lebenslieder .llx-accent-line {
  margin-top: clamp(0.85rem, 1.8vw, 1.15rem);
}

.page-lebenslieder .llx-hero .llx-eyebrow {
  margin-bottom: clamp(0.55rem, 1.3vw, 0.8rem);
}

@keyframes llx-drift-rise {
  0% {
    transform: translate3d(0, 4vh, 0) rotate(var(--llx-rot, -14deg)) scale(0.94);
    opacity: 0;
  }
  5% {
    opacity: var(--llx-opacity, 0.58);
  }
  12% {
    opacity: var(--llx-opacity, 0.58);
  }
  38% {
    transform: translate3d(calc(var(--llx-sway, 0.8rem) * 0.55), -18vh, 0) rotate(calc(var(--llx-rot, -14deg) + 4deg)) scale(1);
  }
  62% {
    transform: translate3d(var(--llx-sway, 0.8rem), -52vh, 0) rotate(calc(var(--llx-rot, -14deg) + 7deg)) scale(1.02);
  }
  86% {
    opacity: calc(var(--llx-opacity, 0.58) * 0.55);
  }
  100% {
    transform: translate3d(calc(var(--llx-sway, 0.8rem) * -0.45), -122vh, 0) rotate(calc(var(--llx-rot, -14deg) - 6deg)) scale(0.96);
    opacity: 0;
  }
}

@keyframes llx-note-gentle {
  0%, 100% {
    transform: translate(0, 0) rotate(0deg);
    opacity: 0.82;
  }
  50% {
    transform: translate(0.35rem, -0.45rem) rotate(4deg);
    opacity: 1;
  }
}

/* Emotional block */
.page-lebenslieder .llx-emotion {
  padding: clamp(2.35rem, 5vw, 3.75rem) var(--verein-section-x);
  background: var(--cream);
}

.page-lebenslieder .llx-emotion__inner {
  max-width: 38rem;
  margin: 0 auto;
  text-align: center;
}

.page-lebenslieder .llx-emotion__text {
  margin-top: clamp(0.85rem, 1.8vw, 1.25rem);
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.1rem);
  line-height: 1.78;
  color: rgba(11, 32, 59, 0.88);
}

.page-lebenslieder .llx-emotion__text p {
  margin: 0 0 0.9rem;
}

.page-lebenslieder .llx-emotion__text p:last-child {
  margin-bottom: 0;
}

.page-lebenslieder .llx-emotion__note {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: clamp(14rem, 32vw, 20rem);
  padding: clamp(1.5rem, 3vw, 2.25rem);
}

.page-lebenslieder .llx-handnote {
  margin: 0;
  font-family: 'Segoe Script', 'Bradley Hand', 'Snell Roundhand', 'Apple Chancery', cursive;
  font-size: clamp(1.55rem, 3.2vw, 2.15rem);
  line-height: 1.45;
  color: rgba(11, 32, 59, 0.78);
  text-align: center;
  transform: rotate(-3deg);
}

.page-lebenslieder .llx-handnote span {
  display: block;
}

.page-lebenslieder .llx-handnote__heart {
  width: 2rem;
  height: auto;
  margin-top: 1.25rem;
  color: var(--gold);
  opacity: 0.75;
  transform: rotate(-3deg);
}

/* Occasions slider */
.page-lebenslieder .llx-occasions {
  padding: clamp(2.35rem, 5vw, 3.75rem) 0 clamp(2rem, 4vw, 3rem);
  background: linear-gradient(180deg, var(--cream) 0%, var(--warm-white) 100%);
}

.page-lebenslieder .llx-occasions__header {
  padding: 0 var(--verein-section-x) clamp(1.25rem, 2.6vw, 1.85rem);
  text-align: center;
}

.page-lebenslieder .llx-occasions__lead {
  margin: clamp(0.65rem, 1.4vw, 0.9rem) auto 0;
  max-width: 36rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.08rem);
  line-height: 1.65;
  color: rgba(11, 32, 59, 0.78);
}

.page-lebenslieder .llx-occasions__slider {
  position: relative;
  max-width: min(76rem, 100%);
  margin: 0 auto;
  padding: 0 clamp(3rem, 6vw, 4.5rem);
}

.page-lebenslieder .llx-occasions__viewport {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 0.5rem 0 1rem;
}

.page-lebenslieder .llx-occasions__viewport::-webkit-scrollbar {
  display: none;
}

.page-lebenslieder .llx-occasions__track {
  display: flex;
  gap: clamp(0.85rem, 2vw, 1.25rem);
  list-style: none;
  margin: 0;
  padding: 0;
}

.page-lebenslieder .llx-occasions__item {
  flex: 0 0 clamp(7.5rem, 13vw, 10.5rem);
  scroll-snap-align: start;
}

.page-lebenslieder .llx-occasions__card {
  margin: 0;
  text-align: center;
}

.page-lebenslieder .llx-occasions__photo-wrap {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(11, 32, 59, 0.1);
  transition: transform 0.55s ease, box-shadow 0.55s ease;
}

.page-lebenslieder .llx-occasions__photo {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

@media (hover: hover) {
  .page-lebenslieder .llx-occasions__photo-wrap:hover {
    transform: scale(1.03);
    box-shadow: 0 16px 40px rgba(11, 32, 59, 0.14);
  }
}

.page-lebenslieder .llx-occasions__icon {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  margin: -1.2rem auto 0;
  border-radius: 50%;
  background: var(--warm-white);
  border: 1px solid rgba(201, 168, 76, 0.45);
  color: var(--gold);
  box-shadow: 0 6px 16px rgba(11, 32, 59, 0.08);
  transition: transform 0.35s ease, border-color 0.35s ease;
}

.page-lebenslieder .llx-occasions__icon svg {
  width: 1.15rem;
  height: 1.15rem;
}

@media (hover: hover) {
  .page-lebenslieder .llx-occasions__card:hover .llx-occasions__icon {
    transform: translateY(-2px);
    border-color: rgba(201, 168, 76, 0.75);
  }
}

.page-lebenslieder .llx-occasions__label {
  margin: 0.75rem 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.78rem, 1.35vw, 0.88rem);
  font-weight: 600;
  line-height: 1.35;
  color: rgba(11, 32, 59, 0.82);
}

.page-lebenslieder .llx-occasions__nav {
  position: absolute;
  top: 42%;
  transform: translateY(-50%);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.65rem;
  height: 2.65rem;
  padding: 0;
  border: 1px solid rgba(201, 168, 76, 0.4);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: var(--llx-navy);
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(11, 32, 59, 0.1);
  transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

.page-lebenslieder .llx-occasions__nav svg {
  width: 1.15rem;
  height: 1.15rem;
}

.page-lebenslieder .llx-occasions__nav--prev { left: clamp(0.35rem, 1.5vw, 0.75rem); }
.page-lebenslieder .llx-occasions__nav--next { right: clamp(0.35rem, 1.5vw, 0.75rem); }

@media (hover: hover) {
  .page-lebenslieder .llx-occasions__nav:hover {
    background: var(--warm-white);
    border-color: rgba(201, 168, 76, 0.65);
    transform: translateY(-50%) scale(1.04);
  }
}

.page-lebenslieder .llx-occasions__nav:disabled {
  opacity: 0.35;
  cursor: default;
}

/* Listen block */
.page-lebenslieder .llx-listen {
  position: relative;
  padding: clamp(2.65rem, 5.5vw, 4rem) var(--verein-section-x) clamp(2.1rem, 4.2vw, 3rem);
  background: linear-gradient(180deg, #ffffff 0%, var(--warm-white) 100%);
  color: var(--llx-navy);
  overflow: hidden;
}

.page-lebenslieder .llx-listen__inner {
  position: relative;
  z-index: 1;
  max-width: var(--verein-inner-wide);
  margin: 0 auto;
}

.page-lebenslieder .llx-listen__header {
  max-width: 40rem;
  margin: 0 auto clamp(1.65rem, 3.4vw, 2.25rem);
  text-align: center;
}

.page-lebenslieder .llx-listen__lead {
  margin: clamp(0.75rem, 1.6vw, 1.05rem) auto 0;
  max-width: 34rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.1rem);
  line-height: 1.68;
  color: rgba(11, 32, 59, 0.78);
}

.page-lebenslieder .llx-listen__player-panel {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: clamp(1.25rem, 3vw, 2rem);
  align-items: stretch;
  min-width: 0;
}

.page-lebenslieder .llx-listen__tracklist {
  min-width: 0;
  padding: clamp(0.85rem, 1.8vw, 1.1rem);
  border-radius: var(--radius-lg);
  background: rgba(250, 246, 238, 0.72);
  border: 1px solid rgba(201, 168, 76, 0.16);
}

.page-lebenslieder .llx-listen__embed-wrap {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(1rem, 2.2vw, 1.35rem);
  border-radius: var(--radius-lg);
  background: var(--llx-navy);
  border: 1px solid rgba(201, 168, 76, 0.28);
  box-shadow: 0 18px 48px rgba(11, 32, 59, 0.14);
}

.page-lebenslieder .llx-listen__tracks {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: clamp(16rem, 38vh, 22rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(201, 168, 76, 0.34) transparent;
}

.page-lebenslieder .llx-listen__tracks::-webkit-scrollbar {
  width: 4px;
}

.page-lebenslieder .llx-listen__tracks::-webkit-scrollbar-thumb {
  background: rgba(201, 168, 76, 0.34);
  border-radius: 999px;
}

.page-lebenslieder .llx-listen__track-item + .llx-listen__track-item {
  margin-top: 0.35rem;
}

.page-lebenslieder .llx-listen__track {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  width: 100%;
  padding: 0.48rem 0.58rem;
  border: 1px solid transparent;
  border-radius: 0.55rem;
  background: transparent;
  color: rgba(11, 32, 59, 0.9);
  text-align: left;
  cursor: pointer;
  transition: background 0.22s ease, border-color 0.22s ease;
}

@media (hover: hover) {
  .page-lebenslieder .llx-listen__track:hover {
    background: rgba(255, 255, 255, 0.72);
    border-color: rgba(201, 168, 76, 0.22);
  }
}

.page-lebenslieder .llx-listen__track.is-active {
  background: rgba(255, 255, 255, 0.92);
  border-color: rgba(201, 168, 76, 0.35);
}

.page-lebenslieder .llx-listen__track-thumb {
  flex: 0 0 auto;
  width: 3.35rem;
  height: 2.25rem;
  object-fit: cover;
  border-radius: 0.35rem;
  background: rgba(0, 0, 0, 0.28);
}

.page-lebenslieder .llx-listen__track-meta {
  flex: 1 1 auto;
  min-width: 0;
}

.page-lebenslieder .llx-listen__track-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-family: var(--font-serif);
  font-size: clamp(0.88rem, 1.5vw, 0.96rem);
  font-weight: 600;
  line-height: 1.35;
}

.page-lebenslieder .llx-listen__track-artist {
  display: block;
  margin-top: 0.15rem;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 32, 59, 0.48);
}

.page-lebenslieder .llx-listen__track-play {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.65rem;
  height: 1.65rem;
  color: var(--gold);
  opacity: 0.85;
}

.page-lebenslieder .llx-listen__track-play svg {
  width: 0.95rem;
  height: 0.95rem;
}

.page-lebenslieder .llx-listen__embed-wrap {
  min-width: 0;
}

.page-lebenslieder .llx-listen__embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: calc(var(--radius-lg) - 4px);
  overflow: hidden;
  background: rgba(0, 0, 0, 0.35);
  flex: 1 1 auto;
}

.page-lebenslieder .llx-listen__embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.page-lebenslieder .llx-listen__playlist-link-wrap {
  margin: 0.75rem 0 0;
  text-align: center;
}

.page-lebenslieder .llx-listen__playlist-link {
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--gold-light);
  transition: color 0.25s ease;
}

@media (hover: hover) {
  .page-lebenslieder .llx-listen__playlist-link:hover {
    color: var(--warm-white);
  }
}

.page-lebenslieder .llx-listen__tagline {
  position: relative;
  z-index: 1;
  margin: clamp(2rem, 4vw, 2.75rem) auto 0;
  max-width: 32rem;
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.12rem);
  font-style: italic;
  line-height: 1.6;
  color: rgba(11, 32, 59, 0.68);
}

.page-lebenslieder .llx-player {
  padding: clamp(1.15rem, 2.5vw, 1.5rem);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(201, 168, 76, 0.22);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.page-lebenslieder .llx-player__main {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.page-lebenslieder .llx-player__cover-wrap {
  flex: 0 0 auto;
  margin: 0;
  width: clamp(4.5rem, 10vw, 5.5rem);
  height: clamp(4.5rem, 10vw, 5.5rem);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
}

.page-lebenslieder .llx-player__cover {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-lebenslieder .llx-player__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.9vw, 1.25rem);
  font-weight: 600;
  line-height: 1.25;
  color: var(--warm-white);
}

.page-lebenslieder .llx-player__occasion {
  margin: 0.35rem 0 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: rgba(254, 252, 247, 0.68);
}

.page-lebenslieder .llx-player__controls {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 0.85rem;
  align-items: center;
  margin-top: 1.1rem;
}

.page-lebenslieder .llx-player__play {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: var(--gold);
  color: var(--llx-navy);
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
}

.page-lebenslieder .llx-player__play:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.page-lebenslieder .llx-player__play .llx-player__icon {
  width: 1.15rem;
  height: 1.15rem;
}

.page-lebenslieder .llx-player__play.is-playing .llx-player__icon--play {
  display: none;
}

.page-lebenslieder .llx-player__play.is-playing .llx-player__icon--pause {
  display: block !important;
}

@media (hover: hover) {
  .page-lebenslieder .llx-player__play:not(:disabled):hover {
    background: var(--gold-light);
    transform: scale(1.04);
  }
}

.page-lebenslieder .llx-player__seek,
.page-lebenslieder .llx-player__vol {
  width: 100%;
  accent-color: var(--gold);
  cursor: pointer;
}

.page-lebenslieder .llx-player__seek:disabled,
.page-lebenslieder .llx-player__vol:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.page-lebenslieder .llx-player__times {
  display: flex;
  justify-content: space-between;
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: rgba(254, 252, 247, 0.62);
  font-variant-numeric: tabular-nums;
}

.page-lebenslieder .llx-player__volume {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  min-width: 5.5rem;
}

.page-lebenslieder .llx-player__volume svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  color: rgba(254, 252, 247, 0.65);
}

.page-lebenslieder .llx-player__hint {
  margin: 0.85rem 0 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: rgba(254, 252, 247, 0.62);
}

.page-lebenslieder .llx-player__audio {
  display: none;
}

.page-lebenslieder .llx-listen__tagline {
  position: relative;
  z-index: 1;
  margin: clamp(2rem, 4vw, 2.75rem) auto 0;
  max-width: 32rem;
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.12rem);
  font-style: italic;
  line-height: 1.6;
  color: rgba(254, 252, 247, 0.78);
}

.page-lebenslieder .llx-listen__cta-wrap {
  position: relative;
  z-index: 1;
  margin: clamp(1.25rem, 2.5vw, 1.75rem) 0 0;
  text-align: center;
}

.page-lebenslieder .llx-listen__cta {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.82rem;
}

@media (max-width: 960px) {
  .page-lebenslieder .llx-listen__player-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-lebenslieder .llx-process__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1.5rem, 3vw, 2rem);
  }

  .page-lebenslieder .llx-process__steps::before {
    display: none;
  }

  .page-lebenslieder .llx-process__step-body {
    max-width: none;
  }
}

@media (max-width: 640px) {
  .page-lebenslieder .llx-hero__melody-svg,
  .home-lobpreis-teaser .llx-hero__melody-svg {
    opacity: 0.58;
  }

  .page-lebenslieder .llx-hero-drift-note,
  .home-lobpreis-teaser .llx-hero-drift-note {
    width: clamp(0.85rem, 3.4vw, 1.2rem);
  }

  .page-lebenslieder .llx-hero-drift-note--flag,
  .home-lobpreis-teaser .llx-hero-drift-note--flag {
    width: clamp(0.95rem, 3.8vw, 1.35rem);
  }

  .page-lebenslieder .llx-occasions__slider {
    padding: 0 0.5rem;
  }

  .page-lebenslieder .llx-occasions__item {
    flex-basis: clamp(6.5rem, 42vw, 8.5rem);
  }

  .page-lebenslieder .llx-process__steps {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    justify-items: center;
  }

  .page-lebenslieder .llx-process__timeline {
    width: 100%;
  }

  .page-lebenslieder .llx-process__step {
    box-sizing: border-box;
    width: 100%;
    max-width: min(22.5rem, calc(100% - 28px));
    margin-inline: auto;
    align-items: center;
    text-align: center;
  }

  .page-lebenslieder .llx-process__step-head {
    margin-inline: auto;
  }

  .page-lebenslieder .llx-process__step-body {
    width: 100%;
    max-width: min(14rem, 100%);
    margin-inline: auto;
    text-align: center;
  }

  .page-lebenslieder .llx-player__controls {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
  }

  .page-lebenslieder .llx-player__volume {
    grid-column: 1 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-lebenslieder .llx-hero__melody-svg,
  .home-lobpreis-teaser .llx-hero__melody-svg,
  .page-lebenslieder .llx-hero-drift-note,
  .home-lobpreis-teaser .llx-hero-drift-note,
  .page-lebenslieder .llx-hero__note-svg,
  .home-lobpreis-teaser .llx-hero__note-svg {
    animation: none;
  }

  .page-lebenslieder .llx-occasions__viewport {
    scroll-behavior: auto;
  }

  .page-lebenslieder .llx-occasions__photo-wrap,
  .page-lebenslieder .llx-occasions__icon,
  .page-lebenslieder .llx-player__play {
    transition: none;
  }
}

/* Lebenslieder â€“ Ablauf (Block 5) */
.page-lebenslieder .llx-process {
  padding: clamp(2.5rem, 5.5vw, 3.85rem) var(--verein-section-x) clamp(2.15rem, 4.5vw, 3.15rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.96) 100%);
}

.page-lebenslieder .llx-process__inner {
  max-width: var(--verein-inner-wide);
  margin: 0 auto;
}

.page-lebenslieder .llx-process__header {
  max-width: 40rem;
  margin: 0 auto clamp(1.65rem, 3.4vw, 2.35rem);
  text-align: center;
}

.page-lebenslieder .llx-process__intro {
  margin-top: clamp(0.8rem, 1.8vw, 1.15rem);
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.1rem);
  line-height: 1.7;
  color: rgba(11, 32, 59, 0.86);
}

.page-lebenslieder .llx-process__intro p {
  margin: 0 0 1rem;
}

.page-lebenslieder .llx-process__intro p:last-child {
  margin-bottom: 0;
}

.page-lebenslieder .llx-process__timeline {
  position: relative;
  max-width: min(56rem, 100%);
  margin: 0 auto;
}

.page-lebenslieder .llx-process__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(0.85rem, 2vw, 1.4rem);
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

.page-lebenslieder .llx-process__steps::before {
  content: '';
  position: absolute;
  top: 1.35rem;
  left: 12%;
  right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201, 168, 76, 0.45) 12%, rgba(201, 168, 76, 0.45) 88%, transparent);
  pointer-events: none;
}

.page-lebenslieder .llx-process__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(0.85rem, 1.8vw, 1.1rem);
  padding: 0;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

.page-lebenslieder .llx-process__step-head {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  margin: 0;
  border-radius: 50%;
  background: var(--warm-white);
  border: 1px solid rgba(201, 168, 76, 0.42);
  box-shadow: 0 8px 22px rgba(11, 32, 59, 0.06);
}

.page-lebenslieder .llx-process__num {
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.6vw, 1.05rem);
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--gold);
  line-height: 1;
}

.page-lebenslieder .llx-process.is-inview .llx-process__step {
  opacity: 1;
  transform: translateY(0);
}

.page-lebenslieder .llx-process.is-inview .llx-process__step:nth-child(1) { transition-delay: 0.1s; }
.page-lebenslieder .llx-process.is-inview .llx-process__step:nth-child(2) { transition-delay: 0.25s; }
.page-lebenslieder .llx-process.is-inview .llx-process__step:nth-child(3) { transition-delay: 0.4s; }
.page-lebenslieder .llx-process.is-inview .llx-process__step:nth-child(4) { transition-delay: 0.55s; }

.page-lebenslieder .llx-process__step-body {
  padding-top: 0;
  max-width: 14rem;
}

.page-lebenslieder .llx-process__step-title {
  margin: 0 0 0.5rem;
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 1.85vw, 1.22rem);
  font-weight: 600;
  line-height: 1.25;
  color: var(--llx-navy);
}

.page-lebenslieder .llx-process__step-text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(0.96rem, 1.65vw, 1.04rem);
  line-height: 1.68;
  color: rgba(11, 32, 59, 0.78);
}

.page-lebenslieder .llx-process__note {
  max-width: 36rem;
  margin: clamp(1.35rem, 2.8vw, 1.85rem) auto 0;
  padding: clamp(0.9rem, 1.9vw, 1.15rem) clamp(1.05rem, 2.3vw, 1.4rem);
  font-family: var(--font-serif);
  font-size: clamp(0.98rem, 1.7vw, 1.06rem);
  line-height: 1.68;
  color: rgba(11, 32, 59, 0.82);
  text-align: center;
  text-wrap: pretty;
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 0.85rem;
}

/* Lebenslieder â€“ Paket (Block 6) */
.page-lebenslieder .llx-package {
  padding: clamp(2rem, 4vw, 3.1rem) var(--verein-section-x);
  background: var(--cream);
}

.page-lebenslieder .llx-package__inner {
  max-width: var(--verein-inner-wide);
  margin: 0 auto;
}

.page-lebenslieder .llx-package__cards {
  list-style: none;
  margin: clamp(1.15rem, 2.4vw, 1.55rem) 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(0.75rem, 1.6vw, 1rem);
}

.page-lebenslieder .llx-package__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-height: 100%;
  padding: clamp(1rem, 2vw, 1.25rem) clamp(0.85rem, 1.8vw, 1.1rem);
  border: 1px solid rgba(201, 168, 76, 0.28);
  border-radius: 14px;
  background: linear-gradient(165deg, var(--midnight) 0%, var(--deep-navy) 55%, #152a45 100%);
  box-shadow: 0 10px 28px rgba(10, 22, 40, 0.22);
}

.page-lebenslieder .llx-package__card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.35rem;
  height: 2.35rem;
  margin-bottom: 0.65rem;
  border-radius: 50%;
  color: var(--gold-light);
  background: rgba(255, 252, 247, 0.1);
  border: 1px solid rgba(232, 204, 122, 0.45);
}

.page-lebenslieder .llx-package__card-icon svg {
  width: 1.1rem;
  height: 1.1rem;
}

.page-lebenslieder .llx-package__card-title {
  margin: 0 0 0.35rem;
  font-family: var(--font-serif);
  font-size: clamp(0.98rem, 1.55vw, 1.05rem);
  font-weight: 600;
  line-height: 1.35;
  color: rgba(250, 246, 238, 0.98);
}

.page-lebenslieder .llx-package__card-desc {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(0.88rem, 1.35vw, 0.94rem);
  line-height: 1.55;
  color: rgba(250, 246, 238, 0.88);
}

.page-lebenslieder .llx-package__privacy {
  margin: clamp(1.05rem, 2.2vw, 1.4rem) auto 0;
  max-width: 34rem;
  padding: clamp(0.8rem, 1.7vw, 1rem) clamp(1rem, 2.2vw, 1.35rem);
  border-top: 1px solid rgba(201, 168, 76, 0.18);
  text-align: center;
}

.page-lebenslieder .llx-package__privacy p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(0.92rem, 1.45vw, 0.98rem);
  line-height: 1.62;
  color: rgba(11, 32, 59, 0.72);
}

.page-lebenslieder .llx-package__privacy p + p {
  margin-top: 0.35rem;
}

@media (min-width: 640px) {
  .page-lebenslieder .llx-package__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.85rem, 1.5vw, 1.1rem);
  }
}

/* Lebenslieder â€“ Investition (Block 7) */
.page-lebenslieder .llx-invest {
  padding: clamp(3rem, 6.5vw, 4.5rem) var(--verein-section-x);
  background: var(--llx-navy);
  color: var(--warm-white);
  text-align: center;
}

.page-lebenslieder .llx-invest__inner {
  max-width: 36rem;
  margin: 0 auto;
}

.page-lebenslieder .llx-invest__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.55rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--warm-white);
}

.page-lebenslieder .llx-invest__title span {
  display: block;
}

.page-lebenslieder .llx-invest__price {
  margin: clamp(1.5rem, 3vw, 2rem) 0 0;
  font-family: var(--font-serif);
  font-size: clamp(2.75rem, 6vw, 3.75rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--gold-light);
}

.page-lebenslieder .llx-invest__price-note {
  margin: 0.55rem 0 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.12rem);
  font-style: italic;
  color: rgba(254, 252, 247, 0.78);
}

.page-lebenslieder .llx-invest__includes {
  margin: clamp(1.35rem, 2.8vw, 1.75rem) auto 0;
  max-width: 32rem;
  font-family: var(--font-serif);
  font-size: clamp(0.98rem, 1.65vw, 1.06rem);
  line-height: 1.72;
  color: rgba(254, 252, 247, 0.82);
}

.page-lebenslieder .llx-invest__verein {
  margin: clamp(1.15rem, 2.4vw, 1.5rem) auto 0;
  max-width: 34rem;
  font-family: var(--font-serif);
  font-size: clamp(0.98rem, 1.65vw, 1.06rem);
  line-height: 1.68;
  color: rgba(254, 252, 247, 0.86);
}

.page-lebenslieder .llx-invest__verein strong {
  color: rgba(254, 252, 247, 0.96);
  font-weight: 600;
}

.page-lebenslieder .llx-invest__verein a {
  color: var(--gold-light);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.page-lebenslieder .llx-invest__verein a:hover,
.page-lebenslieder .llx-invest__verein a:focus-visible {
  color: #f3e4b8;
}

.page-lebenslieder .llx-invest__cta-wrap {
  margin: clamp(1.75rem, 3.5vw, 2.25rem) 0 0;
}

.page-lebenslieder .llx-invest__cta {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.82rem;
}

.page-lebenslieder .llx-invest__disclaimer {
  margin: 0.85rem 0 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: rgba(254, 252, 247, 0.62);
}

@media (prefers-reduced-motion: reduce) {
  .page-lebenslieder .llx-process__step {
    transition: none;
    opacity: 1;
    transform: none;
  }
}

/* Lebenslieder â€“ Anfrageformular (Block 8) */
.page-lebenslieder .llx-form-section {
  padding: clamp(2.85rem, 6vw, 4.35rem) var(--verein-section-x);
  background: var(--warm-white);
  border-top: var(--verein-section-divider);
  scroll-margin-top: calc(var(--nav-h, 4rem) + 0.75rem);
}

.page-lebenslieder .llx-form-section__inner {
  max-width: 38rem;
  margin: 0 auto;
}

.page-lebenslieder .llx-form-section__header {
  text-align: center;
  margin-bottom: clamp(1.55rem, 3.2vw, 2.15rem);
}

.page-lebenslieder .llx-form-section__lead {
  margin: clamp(1rem, 2vw, 1.35rem) auto 0;
  max-width: 34rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.08rem);
  line-height: 1.75;
  color: rgba(11, 32, 59, 0.82);
}

.page-lebenslieder .llx-form-section .form-flash {
  margin-bottom: 1.25rem;
}

.page-lebenslieder .llx-form-wizard__progress {
  margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.page-lebenslieder .llx-form-wizard__progress-track {
  height: 2px;
  background: rgba(201, 168, 76, 0.18);
  border-radius: 999px;
  overflow: hidden;
}

.page-lebenslieder .llx-form-wizard__progress-fill {
  display: block;
  height: 100%;
  width: 25%;
  background: linear-gradient(90deg, rgba(201, 168, 76, 0.55), var(--gold));
  border-radius: inherit;
  transition: width 0.45s ease;
}

.page-lebenslieder .llx-form-wizard__steps-labels {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  list-style: none;
  margin: 0.85rem 0 0;
  padding: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.68rem, 1.2vw, 0.76rem);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 32, 59, 0.42);
}

.page-lebenslieder .llx-form-wizard__steps-labels li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  flex: 1;
  text-align: center;
  transition: color 0.35s ease;
}

.page-lebenslieder .llx-form-wizard__steps-labels li span {
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.6vw, 1.05rem);
  font-weight: 600;
  letter-spacing: 0.06em;
  color: rgba(11, 32, 59, 0.35);
  transition: color 0.35s ease;
}

.page-lebenslieder .llx-form-wizard__steps-labels li.is-active,
.page-lebenslieder .llx-form-wizard__steps-labels li.is-done {
  color: rgba(11, 32, 59, 0.78);
}

.page-lebenslieder .llx-form-wizard__steps-labels li.is-active span,
.page-lebenslieder .llx-form-wizard__steps-labels li.is-done span {
  color: var(--gold);
}

.page-lebenslieder .llx-form-wizard__panel {
  border: none;
  margin: 0;
  padding: 0;
  min-width: 0;
}

.page-lebenslieder .llx-form-wizard__legend {
  margin: 0 0 clamp(1.1rem, 2.2vw, 1.45rem);
  padding: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.25rem, 2.2vw, 1.45rem);
  font-weight: 600;
  line-height: 1.25;
  color: var(--llx-navy);
}

.page-lebenslieder .llx-form-wizard__fields {
  display: grid;
  gap: clamp(1rem, 2vw, 1.35rem);
}

.page-lebenslieder .llx-form-wizard__fields--contact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.page-lebenslieder .llx-form-wizard__field {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  margin: 0;
  font-weight: 400;
}

.page-lebenslieder .llx-form-wizard__field--wide {
  grid-column: 1 / -1;
}

.page-lebenslieder .llx-form-wizard__label {
  font-family: var(--font-sans);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: rgba(11, 32, 59, 0.62);
}

.page-lebenslieder .llx-form-wizard__optional {
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
  color: rgba(11, 32, 59, 0.45);
}

.page-lebenslieder .llx-form-wizard .public-form input,
.page-lebenslieder .llx-form-wizard .public-form textarea,
.page-lebenslieder .llx-form-wizard .public-form select,
.page-lebenslieder .llx-form-wizard input,
.page-lebenslieder .llx-form-wizard textarea,
.page-lebenslieder .llx-form-wizard select {
  width: 100%;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(11, 32, 59, 0.12);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.92);
  font-family: var(--font-serif);
  font-size: clamp(0.98rem, 1.65vw, 1.05rem);
  line-height: 1.5;
  color: var(--llx-navy);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.page-lebenslieder .llx-form-wizard textarea {
  min-height: 9.5rem;
  resize: vertical;
}

.page-lebenslieder .llx-form-wizard input:focus,
.page-lebenslieder .llx-form-wizard textarea:focus,
.page-lebenslieder .llx-form-wizard select:focus {
  outline: none;
  border-color: rgba(201, 168, 76, 0.55);
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
}

.page-lebenslieder .llx-form-wizard__note {
  margin: clamp(1rem, 2vw, 1.25rem) 0 0;
  font-family: var(--font-serif);
  font-size: 0.95rem;
  font-style: italic;
  line-height: 1.6;
  color: rgba(11, 32, 59, 0.68);
}

.page-lebenslieder .llx-form-wizard__check {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  margin: clamp(1.1rem, 2.2vw, 1.35rem) 0 0;
  font-family: var(--font-serif);
  font-size: 0.95rem;
  line-height: 1.55;
  color: rgba(11, 32, 59, 0.82);
  cursor: pointer;
}

.page-lebenslieder .llx-form-wizard__check input {
  width: auto;
  margin-top: 0.2rem;
  flex-shrink: 0;
}

.page-lebenslieder .llx-form-wizard__check a {
  color: var(--gold);
  text-underline-offset: 0.15em;
}

.page-lebenslieder .llx-form-wizard__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  align-items: center;
  margin-top: clamp(1.75rem, 3.5vw, 2.25rem);
  padding-top: clamp(1.25rem, 2.5vw, 1.5rem);
  border-top: 1px solid rgba(201, 168, 76, 0.16);
}

.page-lebenslieder .llx-form-wizard__prev {
  margin-right: auto;
}

.page-lebenslieder .llx-form-wizard__next,
.page-lebenslieder .llx-form-wizard__submit {
  min-width: 8.5rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.82rem;
}

.page-lebenslieder .llx-form-wizard__submit {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.82rem;
}

.page-lebenslieder .llx-form-wizard__prev[hidden],
.page-lebenslieder .llx-form-wizard__next[hidden],
.page-lebenslieder .llx-form-wizard__submit[hidden] {
  display: none !important;
}

.page-lebenslieder .llx-form-wizard__panel[hidden] {
  display: none;
}

html:not(.gottlebt-js) .llx-form-wizard__panel[hidden] {
  display: block !important;
}

html:not(.gottlebt-js) .llx-form-wizard__progress,
html:not(.gottlebt-js) .llx-form-wizard__next,
html:not(.gottlebt-js) .llx-form-wizard__prev {
  display: none !important;
}

html:not(.gottlebt-js) .llx-form-wizard__submit {
  display: inline-flex !important;
}

/* Lebenslieder â€“ Vertrauen + FAQ (Block 9) */
.page-lebenslieder .llx-trust {
  padding: clamp(1.65rem, 3.5vw, 2.55rem) var(--verein-section-x) clamp(1.85rem, 4vw, 2.85rem);
  background: var(--cream);
  border-top: var(--verein-section-divider);
}

.page-lebenslieder .llx-trust__inner {
  max-width: 40rem;
  margin: 0 auto;
}

.page-lebenslieder .llx-trust .llx-section-head {
  margin-bottom: clamp(0.85rem, 1.9vw, 1.25rem);
}

.page-lebenslieder .llx-trust .llx-section-lead {
  margin-top: clamp(0.55rem, 1.3vw, 0.8rem);
  line-height: 1.58;
}

.page-lebenslieder .llx-trust__header {
  text-align: center;
  margin-bottom: clamp(0.85rem, 1.9vw, 1.25rem);
}

.page-lebenslieder .llx-trust__pillars {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.7rem, 1.8vw, 1.2rem);
}

.page-lebenslieder .llx-trust__pillar {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.55rem;
  padding: clamp(0.25rem, 0.8vw, 0.45rem) 0;
}

.page-lebenslieder .llx-trust__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  color: #b8923a;
  background: rgba(201, 168, 76, 0.18);
}

.page-lebenslieder .llx-trust__icon svg {
  width: 1.15rem;
  height: 1.15rem;
  stroke-width: 1.55;
}

.page-lebenslieder .llx-trust__text {
  font-family: var(--font-serif);
  font-size: clamp(0.95rem, 1.6vw, 1.04rem);
  font-weight: 600;
  line-height: 1.4;
  color: rgba(11, 32, 59, 0.92);
}

.page-lebenslieder .llx-faq {
  margin-top: clamp(2.5rem, 5vw, 3.5rem);
  padding-top: clamp(2rem, 4vw, 2.75rem);
  border-top: 1px solid rgba(201, 168, 76, 0.2);
}

.page-lebenslieder .llx-faq__title {
  margin: 0;
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(1.25rem, 2.2vw, 1.45rem);
  font-weight: 600;
  color: var(--llx-navy);
}

.page-lebenslieder .llx-faq__list {
  margin-top: clamp(1.25rem, 2.5vw, 1.65rem);
}

.page-lebenslieder .llx-faq__item {
  border-bottom: 1px solid rgba(201, 168, 76, 0.18);
}

.page-lebenslieder .llx-faq__item summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(0.85rem, 1.8vw, 1.05rem) 0;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.75vw, 1.08rem);
  font-weight: 600;
  line-height: 1.4;
  color: var(--llx-navy);
}

.page-lebenslieder .llx-faq__item summary::-webkit-details-marker {
  display: none;
}

.page-lebenslieder .llx-faq__item summary::after {
  content: '+';
  flex-shrink: 0;
  font-family: var(--font-sans);
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--gold);
  transition: transform 0.3s ease;
}

.page-lebenslieder .llx-faq__item[open] summary::after {
  transform: rotate(45deg);
}

.page-lebenslieder .llx-faq__answer {
  padding: 0 0 clamp(0.85rem, 1.8vw, 1.05rem);
}

.page-lebenslieder .llx-faq__answer p {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(0.96rem, 1.65vw, 1.02rem);
  line-height: 1.68;
  color: rgba(11, 32, 59, 0.78);
}

/* Lebenslieder â€“ Abschluss (Block 10) */
.page-lebenslieder .llx-closing {
  position: relative;
  padding: clamp(3.75rem, 8vw, 5.5rem) var(--verein-section-x) clamp(4rem, 8.5vw, 5.75rem);
  background: linear-gradient(180deg, var(--warm-white) 0%, rgba(250, 246, 238, 0.98) 100%);
  color: var(--llx-navy);
  text-align: center;
  overflow: hidden;
  border-top: var(--verein-section-divider);
}

.page-lebenslieder .llx-closing__notes {
  position: absolute;
  inset: 0;
  pointer-events: none;
  color: rgba(201, 168, 76, 0.42);
}

.page-lebenslieder .llx-closing__note {
  position: absolute;
  font-family: var(--font-serif);
  font-size: clamp(0.85rem, 1.5vw, 1.05rem);
  opacity: 0.5;
  animation: llx-note-float 28s ease-in-out infinite;
}

.page-lebenslieder .llx-closing__note--1 { top: 14%; left: 5%; animation-delay: -3s; }
.page-lebenslieder .llx-closing__note--2 { top: 28%; right: 7%; animation-delay: -11s; opacity: 0.35; }
.page-lebenslieder .llx-closing__note--3 { bottom: 22%; left: 8%; animation-delay: -7s; opacity: 0.4; }

.page-lebenslieder .llx-closing__staff {
  position: absolute;
  width: clamp(5rem, 12vw, 8rem);
  color: rgba(201, 168, 76, 0.18);
}

.page-lebenslieder .llx-closing__staff--left { top: 30%; left: 0; transform: rotate(-6deg); }
.page-lebenslieder .llx-closing__staff--right { bottom: 26%; right: 0; transform: rotate(5deg); }

.page-lebenslieder .llx-closing__inner {
  position: relative;
  z-index: 1;
  max-width: 36rem;
  margin: 0 auto;
}

.page-lebenslieder .llx-closing__title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(1.85rem, 3.8vw, 2.55rem);
  font-weight: 600;
  line-height: 1.16;
  color: var(--llx-navy);
}

.page-lebenslieder .llx-closing__lead {
  margin: clamp(1.15rem, 2.4vw, 1.55rem) auto 0;
  max-width: 32rem;
  font-family: var(--font-serif);
  font-size: clamp(1rem, 1.85vw, 1.1rem);
  line-height: 1.75;
  color: rgba(11, 32, 59, 0.78);
}

.page-lebenslieder .llx-closing__cta-wrap {
  margin: clamp(1.75rem, 3.5vw, 2.35rem) 0 0;
}

.page-lebenslieder .llx-closing__cta {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.82rem;
}

@media (max-width: 720px) {
  .page-lebenslieder .llx-form-wizard__fields--contact {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-lebenslieder .llx-form-wizard__steps-labels li {
    font-size: 0.62rem;
  }

  .page-lebenslieder .llx-form-wizard__nav {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .page-lebenslieder .llx-form-wizard__prev {
    margin-right: 0;
  }

  .page-lebenslieder .llx-trust__pillars {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.85rem;
  }

  .page-lebenslieder .llx-trust__pillar {
    flex-direction: row;
    text-align: left;
    padding: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-lebenslieder .llx-closing__note {
    animation: none;
  }

  .page-lebenslieder .llx-form-wizard__progress-fill {
    transition: none;
  }
}

/* -------------------------------------------------------------------------- */
/* Mobile (<640px) – gezielte Fixes (Desktop/Tablet unverändert)              */
/* -------------------------------------------------------------------------- */

.footer-accordion {
  display: none;
}

.footer-cols {
  display: contents;
}

@media (max-width: 639px) {
  /* --- 1. Hauptmenü --- */
  .nav-links {
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    flex-wrap: nowrap;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: calc(var(--nav-h) + 0.75rem) 1rem 1.5rem;
    gap: 0.15rem;
  }

  .nav-links > li {
    width: 100%;
    flex: 0 0 auto;
  }

  .nav-links a,
  .nav-dropdown li a,
  .nav-cta,
  .nav-admin-link {
    min-height: 44px;
    display: flex;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
  }

  .nav-item-dropdown {
    width: 100%;
  }

  .nav-item-dropdown:not(.is-open) > .nav-dropdown {
    display: none;
  }

  .nav-item-dropdown.is-open > .nav-dropdown {
    display: block;
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .nav-dropdown-toggle {
    justify-content: space-between;
    gap: 0.75rem;
    cursor: pointer;
  }

  .nav-caret {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    font-size: 0.85em;
    opacity: 0.85;
    transition: transform 0.2s ease;
  }

  .nav-item-dropdown.is-open .nav-caret {
    transform: rotate(180deg);
  }

  .nav-dropdown {
    width: 100%;
    padding: 0 0 0.25rem 0.75rem;
  }

  .nav-dropdown li {
    width: 100%;
  }

  .nav-cta {
    margin-top: 0.5rem;
    justify-content: center;
  }

  /* --- 2. Footer-Akkordeon --- */
  .footer-accordion {
    display: block;
    width: 100%;
  }

  .footer-cols {
    display: none;
  }

  .footer-accordion__label {
    margin: 0 0 1rem;
    font-family: var(--font-sans);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--gold-on-light);
  }

  .footer-accordion__item {
    border-bottom: 1px solid rgba(19, 39, 68, 0.1);
  }

  .footer-accordion__item:first-of-type {
    border-top: 1px solid rgba(19, 39, 68, 0.1);
  }

  .footer-accordion__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 44px;
    padding: 0.65rem 0;
    border: 0;
    background: transparent;
    font-family: var(--font-sans);
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--deep-navy);
    cursor: pointer;
    text-align: left;
  }

  .footer-accordion__trigger::after {
    content: '+';
    flex: 0 0 auto;
    margin-left: 0.75rem;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1;
    color: var(--gold-on-light);
    transition: transform 0.2s ease;
  }

  .footer-accordion__trigger[aria-expanded='true']::after {
    content: '−';
  }

  .footer-accordion__trigger:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }

  .footer-accordion__panel {
    padding: 0 0 0.85rem;
  }

  .footer-accordion__panel[hidden] {
    display: none;
  }

  .footer-accordion__panel a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 0.15rem 0;
    font-size: 0.92rem;
    color: var(--text-body);
    text-decoration: none;
  }

  .footer-accordion__panel a:hover {
    color: var(--gold);
  }

  /* --- 3. Trennelemente exakt mittig --- */
  :is(
    .home-section-ornament,
    .home-welcome__ornament,
    .home-welcome__ornament--mid,
    .home-lobpreis__divider,
    .verein-verse__divider,
    .verein-mission-block__divider,
    .verse-banner.verse-banner--editorial .verse-banner__ornament
  ) {
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center;
  }

  .home-section-ornament,
  .home-welcome__ornament--mid {
    width: min(100%, 9rem);
  }

  :is(
    .home-section-ornament__line,
    .home-welcome__ornament-line,
    .home-lobpreis__divider-line,
    .verein-verse__divider-line,
    .verein-mission-block__divider-line
  ) {
    flex: 1 1 0 !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .home-welcome__ornament-line--short {
    flex: 1 1 0 !important;
  }

  /* --- 4. Lebenslieder Prozess einspaltig --- */
  .page-lebenslieder .llx-process__steps {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
    justify-items: center;
    gap: 1.75rem;
  }

  .page-lebenslieder .llx-process__steps::before {
    display: none;
  }

  .page-lebenslieder .llx-process__step {
    box-sizing: border-box;
    width: 100%;
    max-width: min(22.5rem, calc(100% - 28px));
    margin-inline: auto;
    align-items: center;
    text-align: center;
  }

  .page-lebenslieder .llx-process__step-head {
    margin: 0 auto 0.65rem;
  }

  .page-lebenslieder .llx-process__step-body {
    max-width: min(14rem, 100%);
    width: 100%;
    margin-inline: auto;
    text-align: center;
  }

  /* --- 5. Lebenslieder Anlässe – dezente Pfeile mobil --- */
  .page-lebenslieder .llx-occasions__slider {
    padding: 0 clamp(2.25rem, 8vw, 2.75rem);
  }

  .page-lebenslieder .llx-occasions__nav {
    display: inline-flex;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 44px;
    min-height: 44px;
    border-color: rgba(201, 168, 76, 0.28);
    background: rgba(255, 255, 255, 0.82);
    color: rgba(11, 32, 59, 0.72);
    box-shadow: 0 4px 14px rgba(11, 32, 59, 0.08);
  }

  .page-lebenslieder .llx-occasions__nav svg {
    width: 1rem;
    height: 1rem;
    opacity: 0.85;
  }

  .page-lebenslieder .llx-occasions__nav--prev {
    left: 0.15rem;
  }

  .page-lebenslieder .llx-occasions__nav--next {
    right: 0.15rem;
  }

  /* --- 6. Touch-Ziele & Lesbarkeit --- */
  .verse-banner.verse-banner--editorial .verse-banner__more-btn {
    min-height: 44px;
    padding: 0.55rem 1rem;
  }

  .sl-engagement-pray-btn {
    min-height: 44px;
  }

  .home-welcome__topics {
    font-size: 0.6875rem;
  }

  .home-mitmachen__btn {
    font-size: 0.6875rem;
  }
}

/* -------------------------------------------------------------------------- */
/* Zentrale Teilen-Schaltfläche (.gt-share)                                     */
/* -------------------------------------------------------------------------- */

.gt-share {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

/* Default: dezenter runder Button (klar als Aktion, nicht als Schmuckelement) */
.gt-share__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(201, 168, 76, 0.45);
  border-radius: 999px;
  background: rgba(15, 31, 54, 0.04);
  color: var(--gold-on-light, #806b33);
  cursor: pointer;
  line-height: 0;
  appearance: none;
  -webkit-appearance: none;
  box-shadow: none;
  transition: color 0.18s ease, background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.gt-share__icon {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  filter: none;
}

.gt-share__btn:hover,
.gt-share__btn:focus-visible {
  color: var(--gold, #c9a84c);
  background: rgba(201, 168, 76, 0.14);
  border-color: rgba(201, 168, 76, 0.62);
  outline: none;
  transform: translateY(-1px);
}

.gt-share__btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(201, 168, 76, 0.4);
}

.gt-share__btn[aria-expanded='true'] {
  color: var(--gold, #c9a84c);
  background: rgba(201, 168, 76, 0.18);
  border-color: rgba(201, 168, 76, 0.7);
}

.gt-share__menu {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10050;
  min-width: 11.5rem;
  padding: 0.35rem;
  border-radius: 12px;
  border: 1px solid rgba(201, 168, 76, 0.35);
  background: rgba(250, 246, 238, 0.98);
  box-shadow: 0 12px 28px rgba(5, 14, 28, 0.28);
  list-style: none;
  margin: 0;
}

.gt-share__menu[hidden] {
  display: none !important;
}

.gt-share__menu-item {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0.55rem 0.75rem;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--deep-navy, #132744);
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: 0.875rem;
  font-weight: 600;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  line-height: 1.3;
}

.gt-share__menu-item:hover,
.gt-share__menu-item:focus-visible {
  background: rgba(201, 168, 76, 0.18);
  outline: none;
  color: var(--deep-navy, #132744);
}

.gt-share__menu-item.is-copied {
  color: #3d6b3a;
}

/* Einbau-Kontexte */
.article-title-row {
  display: block;
  position: relative;
  padding-right: 2.85rem;
}

.article-title-row .article-title {
  margin: 0;
}

.article-title-row .gt-share,
.article-title-row .page-hero-share-row {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 4;
  margin: 0;
}

.gt-share--hero-inline {
  margin-left: 0;
}

/* Gerahmte Teilen-Buttons: oben rechts (Seiten/Blöcke), nicht zentriert wie Deko */
.hero-share-row,
.page-hero-share-row {
  position: absolute;
  top: 0.2rem;
  right: 0.2rem;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
  margin: 0;
  pointer-events: none;
}

.hero-share-row .gt-share,
.page-hero-share-row .gt-share {
  pointer-events: auto;
}

.page-hero-share-row--start {
  right: auto;
  left: 0.2rem;
  justify-content: flex-start;
}

.hero-column,
.hero-gospel,
.page-mission .verein-hero-block__inner,
.page-spenden .spenden-hero__inner,
.page-flatrate .flatrate-hero__inner,
.page-geschenk .geschenk-hero__inner,
.page-buecher .buecher-hero__inner,
.page-bibelprojekt .bp-hero__inner,
.page-lebenslieder .llx-hero__content,
.page-impulse .impulse-page__hero-inner,
.page-gebet .gebet-hero,
.article-page .article-shell.content-wrapper {
  position: relative;
}

.hero-gospel {
  padding-right: 2.85rem;
}

.hero-gospel__share {
  position: absolute;
  top: 0.55rem;
  right: 0.55rem;
  z-index: 4;
  display: flex;
  justify-content: flex-end;
  margin: 0;
  pointer-events: none;
}

.hero-gospel__share .gt-share {
  pointer-events: auto;
}

.verse-banner.verse-banner--editorial .verse-banner__share-wrap {
  position: absolute;
  top: 0.35rem;
  right: 0.35rem;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  margin: 0;
}

/* Dunkle Hero-Flächen: Button leicht aufhellen */
.page-home .gt-share__btn,
.page-lebenslieder .llx-hero .gt-share__btn,
.page-bibelprojekt .gt-share__btn,
.page-mission .verein-hero-block .gt-share__btn,
.verse-banner.verse-banner--editorial-navy .gt-share__btn {
  color: var(--gold-light, #e8d5a0);
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(232, 213, 160, 0.38);
}

.page-home .gt-share__btn:hover,
.page-home .gt-share__btn:focus-visible,
.page-home .gt-share__btn[aria-expanded='true'],
.page-lebenslieder .llx-hero .gt-share__btn:hover,
.page-lebenslieder .llx-hero .gt-share__btn:focus-visible,
.page-lebenslieder .llx-hero .gt-share__btn[aria-expanded='true'],
.page-bibelprojekt .gt-share__btn:hover,
.page-bibelprojekt .gt-share__btn:focus-visible,
.page-bibelprojekt .gt-share__btn[aria-expanded='true'],
.page-mission .verein-hero-block .gt-share__btn:hover,
.page-mission .verein-hero-block .gt-share__btn:focus-visible,
.page-mission .verein-hero-block .gt-share__btn[aria-expanded='true'],
.verse-banner.verse-banner--editorial-navy .gt-share__btn:hover,
.verse-banner.verse-banner--editorial-navy .gt-share__btn:focus-visible,
.verse-banner.verse-banner--editorial-navy .gt-share__btn[aria-expanded='true'] {
  color: #fff8e7;
  background: rgba(201, 168, 76, 0.2);
  border-color: rgba(232, 213, 160, 0.62);
}

.sl-prayer-card__footer .gt-share {
  margin-left: auto;
  flex: 0 0 auto;
  position: static;
}

.sl-prayer-card__actions {
  display: flex;
  align-items: center;
  gap: 0.45rem 0.65rem;
  flex-wrap: wrap;
  width: 100%;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__actions .sl-engagement {
  flex: 1 1 auto;
  min-width: 0;
}

.page-gebet .gebet-pinboard__cards .sl-prayer-card__actions .gt-share {
  position: static;
  margin-left: auto;
}


.inspiring-spotlight__card {
  position: relative;
  padding-right: 2.75rem;
  padding-top: 0.35rem;
  box-sizing: border-box;
}

.inspiring-spotlight__card > .page-hero-share-row,
.inspiring-spotlight__card > .gt-share {
  position: absolute;
  top: 0.55rem;
  right: 0.55rem;
  z-index: 4;
  margin: 0;
  pointer-events: none;
}

.inspiring-spotlight__card > .page-hero-share-row .gt-share {
  pointer-events: auto;
}
