/* ===== CSS Variables & Reset ===== */
:root {
  --color-primary: #003366;
  --color-white: #ffffff;
  --color-bg-light: #f5f7fa;
  --color-accent: #1d4ed8;
  --color-gov-bar: #1a1a2e;
  --color-text: #1a1a1a;
  --color-text-muted: #4a4a4a;
  --color-border: #d0d5dd;
  --color-shadow: rgba(0,0,0,0.08);
  --color-focus: #003366;
  --color-urgent: #c0392b;
  --font-scale: 1;
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-2xl: 48px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --shadow-sm: 0 1px 3px var(--color-shadow);
  --shadow-md: 0 2px 8px var(--color-shadow);
  --shadow-lg: 0 4px 16px var(--color-shadow);
  --max-width: 1200px;
}

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

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

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  font-size: calc(1rem * var(--font-scale));
  line-height: 1.6;
  color: var(--color-text);
  background-color: var(--color-white);
  min-width: 320px;
}

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

ul, ol {
  list-style: none;
}

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

/* ===== Skip Link ===== */
.skip-link {
  position: absolute;
  top: -100%;
  left: 0;
  background: var(--color-primary);
  color: var(--color-white);
  padding: var(--spacing-sm) var(--spacing-md);
  z-index: 200;
  font-size: 0.875rem;
  border-radius: 0 0 var(--radius-md) 0;
}
.skip-link:focus {
  top: 0;
}

/* ===== Government Bar ===== */
.gov-bar {
  background-color: var(--color-gov-bar);
  color: var(--color-white);
  font-size: 0.8125rem;
  padding: var(--spacing-xs) 0;
}
.gov-bar__inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
}
.gov-bar__icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.gov-bar__icon svg {
  opacity: 0.8;
}
.gov-bar__full-text {
  opacity: 0.9;
}
.gov-bar__short-text {
  display: none;
  opacity: 0.9;
}

@media (max-width: 640px) {
  .gov-bar__full-text { display: none; }
  .gov-bar__short-text { display: inline; }
}

/* ===== Header Top Bar ===== */
.header-bar {
  height: 5px;
  background: #59595b;
}

/* ===== Header ===== */
.header {
  background-color: #ffffff;
  border-bottom: none;
  height: 120px;
  box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.12);
  transition: height 0.3s ease;
  display: flex;
  align-items: center;
}
.header.header--shrink {
  height: 70px;
}
.header__container {
  width: 100%;
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header__logo {
  display: flex;
  align-items: center;
}
.header__logo-img {
  height: 100px;
  width: auto;
  object-fit: contain;
  transition: height 0.3s ease;
}
.header__logo-img--scroll {
  display: none;
  height: 50px;
  width: auto;
  object-fit: contain;
  transition: height 0.3s ease;
}
.header--shrink .header__logo-img {
  display: none;
}
.header--shrink .header__logo-img--scroll {
  display: block;
  height: 60px;
}
.header__reg-btn {
  background-color: #EA5153;
  color: #ffffff;
  padding: 10px 28px;
  border-radius: 0;
  font-size: 1rem;
  font-family: 'Roboto', 'Arial', sans-serif;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.25s, transform 0.15s;
}
.header__reg-btn:hover {
  background-color: #d4393b !important;
  transform: translateY(-1px);
}
.header__desktop-nav {
  display: flex;
  align-items: center;
}
.header__nav-list {
  display: flex;
  gap: 40px;
  align-items: center;
}
.header__nav-link {
  color: #6D8BA7;
  font-size: 1.1rem;
  font-weight: 400;
  font-family: 'Arial', sans-serif;
  padding: 8px 0;
  position: relative;
  transition: color 0.3s;
  line-height: 26px;
}
.header__nav-link::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #59595b;
  opacity: 0;
  transition: opacity 0.3s;
}
.header__nav-link:hover {
  color: #59595b;
}
.header__nav-link:hover::after {
  opacity: 1;
}
.header__nav-link--active {
  color: #59595b;
}
.header__nav-link--active::after {
  opacity: 1;
}
/* Dropdown submenu */
.header__nav-item {
  position: relative;
}
.header__nav-link .header__sub-arrow {
  display: inline-flex;
  align-items: center;
  margin-left: 8px;
  vertical-align: middle;
}
.header__nav-link .header__sub-arrow svg {
  width: 12px;
  height: 12px;
  fill: #6D8BA7;
  transition: fill 0.3s, transform 0.3s;
}
.header__nav-link:hover .header__sub-arrow svg,
.header__nav-link--active .header__sub-arrow svg {
  fill: #59595b;
}
.header__dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 150px;
  background: #ffffff;
  box-shadow: 0 2px 16px rgba(0,0,0,0.13);
  padding: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s, visibility 0.25s;
  z-index: 200;
  list-style: none;
}
.header__nav-item:hover > .header__dropdown {
  opacity: 1;
  visibility: visible;
}
.header__dropdown li {
  position: relative;
}
.header__dropdown-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  color: #000000;
  font-size: 0.9rem;
  font-family: 'Arial', sans-serif;
  font-weight: 400;
  line-height: 22px;
  transition: color 0.2s, background 0.2s;
  white-space: nowrap;
  border-bottom: 1px solid #f0f0f0;
}
.header__dropdown li:last-child .header__dropdown-link {
  border-bottom: none;
}
.header__dropdown-link:hover {
  color: #59595b;
  background: #f7f7f7;
}
/* Nested sub-submenu */
.header__dropdown-link .header__sub-arrow-right {
  display: inline-flex;
  margin-left: 12px;
}
.header__dropdown-link .header__sub-arrow-right svg {
  width: 8px;
  height: 14px;
  fill: #000000;
  transition: fill 0.2s;
}
.header__dropdown-link:hover .header__sub-arrow-right svg {
  fill: #59595b;
}
.header__sub-dropdown {
  position: absolute;
  top: 0;
  right: 100%;
  min-width: 280px;
  background: #ffffff;
  box-shadow: 0 2px 16px rgba(0,0,0,0.13);
  padding: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s, visibility 0.25s;
  z-index: 210;
  list-style: none;
}
.header__dropdown li:hover > .header__sub-dropdown {
  opacity: 1;
  visibility: visible;
}

.header__burger {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  color: #59595b;
  padding: 10px;
  border-radius: 8px;
  transition: background 0.2s;
}
.header__burger:hover {
  background: #f5f5f5;
}

@media (max-width: 768px) {
  .header { height: 80px; }
  .header.header--shrink { height: 60px; }
  .header__desktop-nav { display: none; }
  .header__burger { display: flex; }
  .header__logo-img { height: 60px; }
  .header--shrink .header__logo-img { display: none; }
  .header--shrink .header__logo-img--scroll { display: block; height: 42px; }
}

/* ===== Mobile Menu ===== */
.mobile-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 280px;
  height: 100vh;
  height: 100dvh;
  background: var(--color-white);
  box-shadow: var(--shadow-lg);
  z-index: 10001;
  transition: right 0.3s ease;
  display: flex;
  flex-direction: column;
}
.mobile-menu.open {
  right: 0;
}
.mobile-menu__header {
  display: flex;
  justify-content: flex-end;
  padding: var(--spacing-md);
}
.mobile-menu__close {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-text);
  padding: var(--spacing-xs);
}
.mobile-menu__nav {
  padding: 0 var(--spacing-md);
}
.mobile-menu__list {
  display: flex;
  flex-direction: column;
}
.mobile-menu__link {
  display: block;
  padding: var(--spacing-md) 0;
  font-size: 1rem;
  font-weight: 500;
  color: var(--color-text);
  border-bottom: 1px solid var(--color-border);
  transition: color 0.2s;
}
.mobile-menu__link:hover {
  color: var(--color-primary);
}

.mobile-menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.4);
  z-index: 10000;
  display: none;
}
.mobile-menu-overlay.visible {
  display: block;
}

/* ===== Breadcrumbs ===== */
.breadcrumbs {
  background: var(--color-bg-light);
  padding: var(--spacing-sm) 0;
  font-size: 0.8125rem;
}
.breadcrumbs__container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
.breadcrumbs__list {
  display: flex;
  gap: var(--spacing-sm);
}
.breadcrumbs__current {
  color: var(--color-text-muted);
}

/* ===== Hero Banner ===== */
.hero-banner {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.hero-banner__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 110px 50px 0 50px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  height: 100%;
}
.hero-banner__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2rem;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}
.hero-banner__divider {
  width: 12%;
  border: none;
  border-top: 3px solid #ffffff;
  margin: 20px 0 0 0;
  padding: 0 0 15px 0;
}
.hero-banner__btn {
  display: inline-block;
  margin-bottom: 50px;
  padding: 14px 40px;
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 1rem;
  font-weight: 500;
  color: #ffffff;
  background-color: #EA5153;
  border: none;
  border-radius: 0;
  text-decoration: none;
  letter-spacing: 0.03em;
  transition: background-color 0.25s, transform 0.15s;
}
.hero-banner__btn:hover {
  background-color: #d4393b;
  transform: translateY(-1px);
}

@media (max-width: 768px) {
  .hero-banner__inner {
    padding: 50px 20px 0 20px;
    flex-direction: column;
    align-items: flex-start;
  }
  .hero-banner__title {
    font-size: 1.5rem;
  }
  .hero-banner__btn {
    margin-top: 20px;
    margin-bottom: 15px;
  }
}

/* ===== Image Cards ===== */
.image-cards {
  background-color: #6D8BA7;
  padding: 35px 0 0 0;
  width: 100%;
}
.image-cards__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 50px;
  display: flex;
  flex-direction: row;
  gap: 20px;
}
.image-card {
  position: relative;
  flex: 1;
  overflow: hidden;
  display: block;
  text-decoration: none;
  line-height: 0;
  height: 300px;
}
.image-card__img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  display: block;
}
.image-card__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(109, 139, 167, 0.25);
  transition: background-color 0.3s;
}
.image-card:hover .image-card__overlay {
  background-color: rgba(109, 139, 167, 0.7);
}
.image-card__text {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 20px;
}
.image-card__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 40px;
  font-weight: 400;
  color: #ffffff;
  margin: 0;
  line-height: 1.2;
  white-space: nowrap;
}
.image-card__link {
  font-family: 'Arial', sans-serif;
  font-size: 1rem;
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (max-width: 768px) {
  .image-cards__inner {
    flex-direction: column;
    padding: 0 20px;
  }
  .image-card__title {
    font-size: 28px;
  }
}

/* ===== Mission Text ===== */
.mission-text {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.mission-text__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 60px 50px 0 50px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.mission-text__paragraph {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 20px;
  font-weight: 400;
  color: #ffffff;
  line-height: 26px;
  margin: 0;
}
@media (max-width: 768px) {
  .mission-text__inner {
    padding: 40px 20px 0 20px;
  }
  .mission-text__paragraph {
    font-size: 16px;
    line-height: 22px;
  }
}

/* ===== Quote & Journal ===== */
.quote-journal {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.quote-journal__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 60px 50px 0 50px;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: flex-start;
}
.quote-journal__quote {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.quote-journal__bubble {
  background: transparent;
  border: 2px solid #ffffff;
  padding: 30px;
  position: relative;
  margin-bottom: 20px;
}
.quote-journal__bubble::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #ffffff;
}
.quote-journal__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 22px;
  font-weight: 400;
  color: #ffffff;
  line-height: 1.5;
  margin: 0;
  text-align: center;
}
.quote-journal__author {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin-top: 10px;
}
.quote-journal__name {
  font-family: 'Arial', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #ffffff;
}
.quote-journal__role {
  font-family: 'Arial', sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #ffffff;
}
.quote-journal__image {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.quote-journal__image img {
  width: 100%;
  max-width: 500px;
  height: auto;
  display: block;
}
.quote-journal__caption {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #ffffff;
  text-decoration: underline;
  line-height: 30px;
  margin-top: 10px;
  text-align: right;
  width: 100%;
}
@media (max-width: 768px) {
  .quote-journal__inner {
    flex-direction: column;
    padding: 40px 20px 0 20px;
    gap: 30px;
  }
}

/* ===== Aktuell Banner ===== */
.aktuell-banner {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.aktuell-banner__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 60px 50px 0 50px;
  display: flex;
  flex-direction: column;
}
.aktuell-banner__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}
.aktuell-banner__divider {
  width: 100%;
  border: none;
  border-top: 3.5px solid #ffffff;
  margin: 0;
  padding: 30px 0 15px 0;
}
@media (max-width: 768px) {
  .aktuell-banner__inner {
    padding: 40px 20px 0 20px;
  }
  .aktuell-banner__title {
    font-size: 1.75rem;
  }
}

/* ===== News Cards ===== */
.news-cards {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.news-cards__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 35px 35px 0 35px;
  display: flex;
  flex-direction: row;
  gap: 0;
}
.news-card {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.news-card__image-wrap {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 0;
  height: 300px;
}
.news-card__img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  display: block;
}
.news-card__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(109, 139, 167, 0.25);
  transition: background-color 0.3s;
}
.news-card__image-wrap:hover .news-card__overlay {
  background-color: rgba(109, 139, 167, 0.7);
}
.news-card__text {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 20px;
}
.news-card__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 40px;
  font-weight: 400;
  color: #ffffff;
  margin: 0;
  line-height: 1.2;
  white-space: nowrap;
}
.news-card__desc {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 20px;
  font-weight: 400;
  color: #ffffff;
  line-height: 26px;
  margin: 20px 0 0 0;
  padding: 0 10px;
}
@media (max-width: 768px) {
  .news-cards__inner {
    flex-direction: column;
    padding: 20px 20px 0 20px;
    gap: 20px;
  }
  .news-card__title {
    font-size: 28px;
  }
  .news-card__desc {
    font-size: 16px;
    line-height: 22px;
  }
}

/* ===== Blog Heading ===== */
.blog-heading {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.blog-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 60px 50px 0 50px;
  display: flex;
  flex-direction: column;
}
.blog-heading__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.8rem;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}
@media (max-width: 768px) {
  .blog-heading__inner {
    padding: 40px 20px 0 20px;
  }
  .blog-heading__title {
    font-size: 1.75rem;
  }
}

/* ===== Blog Slider ===== */
.blog-slider {
  background-color: #6D8BA7;
  padding: 0;
  width: 100%;
}
.blog-slider__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 30px 50px 0 50px;
  position: relative;
}
.blog-slider__bordered {
  border: 2px solid #ffffff;
  padding: 46px;
}
.blog-slider__track {
  display: flex;
  gap: 25px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.blog-slider__track::-webkit-scrollbar {
  display: none;
}
.blog-slide {
  min-width: calc((100% - 50px) / 3);
  max-width: calc((100% - 50px) / 3);
  flex-shrink: 0;
}
.blog-slide__media {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1;
}
.blog-slide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s;
}
.blog-slide__media:hover img {
  transform: scale(1.05);
}
.blog-slide__date {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #6D8BA7;
  color: #ffffff;
  font-family: 'Arial', sans-serif;
  font-size: 14px;
  font-weight: 400;
  padding: 6px 12px;
}
.blog-slide__content {
  padding: 15px 0;
}
.blog-slide__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 18px;
  font-weight: 400;
  color: #ffffff;
  line-height: 1.4;
  margin: 0 0 10px 0;
}
.blog-slide__title a {
  color: #ffffff;
  text-decoration: none;
}
.blog-slide__title a:hover {
  text-decoration: underline;
}
.blog-slide__more {
  font-family: 'Arial', sans-serif;
  font-size: 14px;
  color: #ffffff;
  text-decoration: none;
  border: 1px solid #ffffff;
  padding: 6px 16px;
  display: inline-block;
  transition: background-color 0.3s, color 0.3s;
}
.blog-slide__more:hover {
  background-color: #ffffff;
  color: #6D8BA7;
}
.blog-slider__nav {
  display: flex;
  gap: 10px;
  margin-bottom: 15px;
}
.blog-slider__arrow {
  background: none;
  border: none;
  color: #ffffff;
  cursor: pointer;
  padding: 4px;
  transition: opacity 0.3s;
}
.blog-slider__arrow:hover {
  opacity: 0.7;
}
@media (max-width: 768px) {
  .blog-slider__inner {
    padding: 20px 20px 0 20px;
  }
  .blog-slider__bordered {
    padding: 20px;
  }
  .blog-slider__track {
    gap: 25px;
  }
  .blog-slide {
    min-width: 80%;
  }
}

/* ===== Programme Einblick ===== */
.programme-einblick {
  background-color: #6D8BA7;
  width: 100%;
}
.programme-einblick__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 90px 50px 0 50px;
}
.programme-einblick__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 400;
  color: #ffffff;
  margin: 0;
  line-height: 1.3;
}
.programme-einblick__divider {
  border-top: 3.5px solid #ffffff;
  margin: 15px 0;
  width: 100%;
}
.programme-einblick__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #ffffff;
  text-decoration: none;
  border: 2px solid #ffffff;
  padding: 10px 20px;
  transition: background-color 0.3s, color 0.3s;
}
.programme-einblick__btn:hover {
  background-color: #ffffff;
  color: #6D8BA7;
}
@media (max-width: 768px) {
  .programme-einblick__inner {
    padding: 50px 20px 0 20px;
  }
  .programme-einblick__title {
    font-size: 1.75rem;
  }
}

/* ===== Programme Video ===== */
.programme-video {
  background-color: #6D8BA7;
  width: 100%;
}
.programme-video__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 30px 50px 0 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.programme-video__wrapper {
  position: relative;
  width: 70%;
  padding-bottom: 39.375%;
  height: 0;
  overflow: hidden;
  margin: 0 auto;
}
.programme-video__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (max-width: 768px) {
  .programme-video__inner {
    padding: 20px 20px 0 20px;
  }
}

/* ===== Partner Heading ===== */
.partner-heading {
  background-color: #6D8BA7;
  width: 100%;
}
.partner-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 60px 50px 0 50px;
}
.partner-heading__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 400;
  color: #ffffff;
  margin: 0;
  line-height: 1.3;
}
.partner-heading__divider {
  border-top: 3.5px solid #ffffff;
  margin: 15px 0 0 0;
  width: 100%;
}
@media (max-width: 768px) {
  .partner-heading__inner {
    padding: 40px 20px 0 20px;
  }
  .partner-heading__title {
    font-size: 1.75rem;
  }
}

/* ===== Partner Logos ===== */
.partner-logos {
  background-color: #6D8BA7;
  width: 100%;
}
.partner-logos__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 30px 50px 60px 50px;
}
.partner-logos__container {
  background-color: #ffffff;
  padding: 40px 40px 30px 40px;
  overflow: hidden;
}
.partner-logos__track {
  display: flex;
  gap: 60px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.partner-logos__track::-webkit-scrollbar {
  display: none;
}
.partner-logos__slide {
  min-width: calc((100% - 120px) / 3);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 80px;
}
.partner-logos__slide img {
  max-width: 100%;
  max-height: 80px;
  object-fit: contain;
  transition: opacity 0.3s;
}
.partner-logos__slide img:hover {
  opacity: 0.7;
}
.partner-logos__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 20px;
}
.partner-logos__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #b0b0b0;
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background-color 0.3s;
}
.partner-logos__dot--active {
  background-color: #EA5153;
}
@media (max-width: 768px) {
  .partner-logos__inner {
    padding: 0 20px 50px 20px;
  }
  .partner-logos__container {
    padding: 30px 20px;
  }
  .partner-logos__track {
    gap: 20px;
  }
  .partner-logos__slide {
    min-width: calc((100% - 20px) / 2);
  }
}

/* ===== Bottom Row ===== */
.bottom-row {
  border-top: 2px solid #6D8BA7;
  width: 100%;
}
.bottom-row__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 40px 50px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.bottom-row__col {
  display: flex;
  flex-direction: column;
}
.bottom-row__col--left {
  flex: 0 0 auto;
}
.bottom-row__col--center {
  flex: 1;
  align-items: center;
  text-align: center;
}
.bottom-row__col--right {
  flex: 0 0 auto;
  align-items: flex-end;
}
.bottom-row__logo {
  max-width: 200px;
  height: auto;
}
.bottom-row__contact-title {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(109,139,167,0.7);
  margin-bottom: 8px;
  display: block;
}
.bottom-row__contact-hours {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 1rem;
  color: #000000;
  line-height: 1.6;
  margin: 0;
}
.bottom-row__telegram {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #0088cc, #00aaee);
  color: #ffffff;
  padding: 10px 24px;
  border-radius: 50px;
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  text-decoration: none;
  margin-top: 12px;
  width: fit-content;
  transition: transform 0.15s, box-shadow 0.2s;
  box-shadow: 0 4px 16px rgba(0,136,204,0.35);
}
.bottom-row__telegram:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(0,136,204,0.5);
}
.bottom-row__links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.bottom-row__links a {
  font-family: 'Arial', sans-serif;
  font-size: 1rem;
  color: #000000;
  text-decoration: none;
  transition: color 0.2s;
}
.bottom-row__links a:hover {
  color: #6D8BA7;
}
.bottom-row__social {
  display: inline-flex;
  align-items: center;
  margin-top: 15px;
  color: #0077b5;
  transition: opacity 0.2s;
}
.bottom-row__social:hover {
  opacity: 0.7;
}
.bottom-row__badge {
  max-width: 180px;
  height: auto;
}
@media (max-width: 768px) {
  .bottom-row__inner {
    padding: 40px 20px 50px 20px;
    flex-direction: column;
    gap: 30px;
  }
  .bottom-row__col {
    align-items: center;
    text-align: center;
  }
  .bottom-row__links {
    align-items: center;
  }
}

/* ===== Quick Access ===== */
.quick-access {
  padding: var(--spacing-2xl) 0;
}
.quick-access__container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
.quick-access__title {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: var(--spacing-lg);
  text-align: center;
}
.quick-access__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-md);
}
.quick-access__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--spacing-lg);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-top: 3px solid var(--color-primary);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  transition: box-shadow 0.2s, transform 0.15s;
  gap: var(--spacing-md);
}
.quick-access__card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.quick-access__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  background: var(--color-bg-light);
  border-radius: 50%;
  color: var(--color-primary);
}
.quick-access__label {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--color-text);
}

@media (max-width: 900px) {
  .quick-access__grid { grid-template-columns: repeat(2, 1fr); }
}

/* ===== Footer ===== */
.footer {
  background: linear-gradient(160deg, #0a1628 0%, #142744 40%, #1a3355 100%);
  color: var(--color-white);
  padding: 48px 0 0;
}
.footer__container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
.footer__top {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--spacing-2xl);
  padding-bottom: 36px;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.footer__logo {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
}
.footer__logo-icon {
  display: flex;
  align-items: center;
  opacity: 0.8;
}
.footer__logo-text {
  font-weight: 700;
  font-size: 1.125rem;
}
.footer__logo-desc {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.55);
  line-height: 1.6;
  margin-top: var(--spacing-sm);
}
.footer__links {
  display: flex;
  flex-direction: column;
}
.footer__links-title {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255,255,255,0.45);
  margin-bottom: var(--spacing-md);
}
.footer__link-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer__link {
  color: rgba(255,255,255,0.75);
  font-size: 0.9375rem;
  transition: color 0.2s, padding-left 0.2s;
}
.footer__link:hover {
  color: var(--color-white);
  padding-left: 4px;
}
.footer__contact-info {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  font-size: 0.9375rem;
  color: rgba(255,255,255,0.75);
}
.footer__contact-title {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255,255,255,0.45);
  margin-bottom: var(--spacing-sm);
}
.footer__telegram-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: linear-gradient(135deg, #0088cc, #00aaee);
  color: var(--color-white);
  padding: 11px 28px;
  border-radius: 50px;
  font-size: 0.9375rem;
  font-weight: 600;
  transition: transform 0.15s, box-shadow 0.2s;
  box-shadow: 0 4px 16px rgba(0,136,204,0.35);
  margin-top: 4px;
  width: fit-content;
}
.footer__telegram-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(0,136,204,0.5);
}
.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-md) 0;
  margin-top: 0;
}
.footer__copyright {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.4);
}
.footer__bottom-links {
  display: flex;
  gap: var(--spacing-md);
}
.footer__bottom-link {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.4);
  transition: color 0.2s;
}
.footer__bottom-link:hover {
  color: rgba(255,255,255,0.7);
}
@media (max-width: 768px) {
  .footer__top {
    grid-template-columns: 1fr;
    gap: var(--spacing-xl);
    text-align: center;
  }
  .footer__logo { justify-content: center; }
  .footer__link-list { align-items: center; }
  .footer__contact-info { align-items: center; }
  .footer__bottom {
    flex-direction: column;
    gap: var(--spacing-sm);
    text-align: center;
  }
  .footer__telegram-btn { margin: 4px auto 0; }
}

/* ===== Reg Hero ===== */
.reg-hero {
  background-color: #6D8BA7;
  width: 100%;
}
.reg-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 50px 50px 40px 50px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.reg-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2rem;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
  margin: 0;
}
.reg-hero__divider {
  width: 12%;
  border: none;
  border-top: 3px solid #ffffff;
  margin: 20px 0 0 0;
}
@media (max-width: 768px) {
  .reg-hero__inner {
    padding: 50px 20px 30px 20px;
  }
  .reg-hero__title {
    font-size: 1.5rem;
  }
}

/* ===== Registration Form ===== */
.reg-form {
  background-color: #ffffff;
  padding: 50px 0;
  min-height: 40vh;
}
.reg-form__container {
  max-width: 520px;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
.reg-form__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.5rem;
  font-weight: 400;
  color: #333333;
  margin-bottom: 20px;
}
.reg-form__description {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 1rem;
  color: #333333;
  line-height: 1.6;
  margin-bottom: 30px;
}
.reg-form__form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.reg-form__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.reg-form__label {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 0.9375rem;
  font-weight: 500;
  color: #333333;
}
.reg-form__input {
  width: 100%;
  padding: 12px 16px;
  font-size: 1rem;
  font-family: inherit;
  border: 1px solid #dcdcdc;
  border-radius: 0;
  background: #ffffff;
  color: #333333;
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.reg-form__input:focus {
  border-color: #6D8BA7;
  box-shadow: 0 0 0 2px rgba(109,139,167,0.15);
}
.reg-form__input::placeholder {
  color: #999999;
}
.reg-form__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #EA5153;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 500;
  font-family: 'Roboto', 'Arial', sans-serif;
  padding: 14px 40px;
  border-radius: 0;
  border: none;
  cursor: pointer;
  transition: background-color 0.25s, transform 0.15s;
  min-height: 48px;
  width: 100%;
  letter-spacing: 0.03em;
}
.reg-form__button:hover {
  background-color: #d4393b;
  transform: translateY(-1px);
}

.breadcrumbs__link {
  color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.breadcrumbs__link:hover {
  opacity: 0.7;
}
.breadcrumbs__separator {
  margin: 0 var(--spacing-xs);
  color: var(--color-text-muted);
}

/* ===== Inner Page (Legal) ===== */
.inner-page {
  padding: var(--spacing-2xl) 0;
  min-height: 50vh;
}
.inner-page__container {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
.inner-page__title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--color-primary);
  margin-bottom: var(--spacing-xl);
}
.inner-page__section {
  margin-bottom: var(--spacing-xl);
}
.inner-page__section-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-text);
  margin-bottom: var(--spacing-sm);
}
.inner-page__text {
  font-size: 1rem;
  color: var(--color-text-muted);
  line-height: 1.7;
}

/* ===== About Page ===== */
.about-page {
  padding: var(--spacing-2xl) 0;
}
.about-page__container {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
.about-page__intro {
  margin-bottom: var(--spacing-2xl);
}
.about-page__title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--color-primary);
  margin-bottom: var(--spacing-md);
}
.about-page__name {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: var(--spacing-lg);
}
.about-page__text {
  font-size: 1rem;
  color: var(--color-text-muted);
  line-height: 1.7;
  margin-bottom: var(--spacing-md);
}
.about-page__section {
  margin-bottom: var(--spacing-2xl);
}
.about-page__section-title {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: var(--spacing-lg);
}

/* Tags */
.about-page__tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
}
.about-page__tag {
  display: inline-block;
  background: var(--color-bg-light);
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: 500;
  padding: var(--spacing-xs) var(--spacing-md);
  border-radius: 20px;
  border: 1px solid var(--color-border);
}

/* Goal Banner */
.about-page__banner {
  background: var(--color-primary);
  color: var(--color-white);
  font-size: 1.125rem;
  font-weight: 600;
  text-align: center;
  padding: var(--spacing-lg) var(--spacing-xl);
  border-radius: var(--radius-lg);
  margin-bottom: var(--spacing-2xl);
  line-height: 1.5;
}

/* Numbered Steps */
.about-page__steps {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}
.about-page__step {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-md);
}
.about-page__step-num {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  background: var(--color-primary);
  color: var(--color-white);
  font-size: 0.9375rem;
  font-weight: 700;
  border-radius: 50%;
  flex-shrink: 0;
}
.about-page__step-text {
  font-size: 1rem;
  color: var(--color-text);
  line-height: 1.6;
  padding-top: 6px;
}

/* Trust List */
.about-page__trust-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}
.about-page__trust-item {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-md);
  font-size: 1rem;
  color: var(--color-text);
  line-height: 1.6;
}
.about-page__trust-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  background: var(--color-accent);
  color: var(--color-white);
  font-size: 0.875rem;
  font-weight: 700;
  border-radius: 50%;
  flex-shrink: 0;
}

/* FAQ */
.about-page__faq-section {
  margin-bottom: var(--spacing-2xl);
}
.about-page__faq-title {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--color-primary);
  margin-bottom: var(--spacing-lg);
}
.about-page__faq-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.about-page__faq-item {
  border-bottom: 1px solid var(--color-border);
}
.about-page__faq-q {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-md);
  padding: var(--spacing-md) 0;
  background: none;
  border: none;
  font-size: 1rem;
  font-weight: 600;
  font-family: inherit;
  color: var(--color-text);
  cursor: pointer;
  text-align: left;
  line-height: 1.5;
}
.about-page__faq-q:hover {
  color: var(--color-primary);
}
.about-page__faq-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.2s;
}
.about-page__faq-item.open .about-page__faq-icon {
  transform: rotate(45deg);
}
.about-page__faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  font-size: 0.9375rem;
  color: var(--color-text-muted);
  line-height: 1.6;
  padding: 0 0 0 0;
}
.about-page__faq-item.open .about-page__faq-a {
  max-height: 300px;
  padding-bottom: var(--spacing-md);
}

/* ===== WBS Page ===== */

/* Hero Banner */
.wbs-hero {
  background-color: #6D8BA7;
  padding: 120px 50px 0;
}
.wbs-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.wbs-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}
.wbs-hero__divider {
  width: 80px;
  height: 2px;
  background: #fff;
  border: none;
}

/* Subtitle Banner */
.wbs-subtitle {
  background-color: #6D8BA7;
  padding: 0 50px 30px;
}
.wbs-subtitle__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wbs-subtitle__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.85rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}

/* Mission & Vision */
.wbs-mv {
  background-color: #fff;
  padding: 50px 50px 0;
}
.wbs-mv__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.wbs-mv__box {
  flex: 1;
  background: #fff;
  border: 1px solid #6D8BA7;
  padding: 50px 48px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.wbs-mv__heading {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2rem;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.wbs-mv__subheading {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.3rem;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.5;
}
.wbs-mv__text {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 1.05rem;
  font-weight: 400;
  color: #000;
  line-height: 1.7;
  margin: 0;
}

/* Der Stifter Title */
.wbs-stifter {
  background: #fff;
  padding: 90px 50px 0;
}
.wbs-stifter__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wbs-stifter__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #000;
  margin: 0;
}

/* Der Stifter Content */
.wbs-stifter-content {
  background: #fff;
  padding: 0 50px;
}
.wbs-stifter-content__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: stretch;
}
.wbs-stifter-content__text {
  flex: 1;
  padding: 20px 40px 20px 0;
}
.wbs-stifter-content__text p {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 1.05rem;
  font-weight: 400;
  color: #000;
  line-height: 1.7;
  margin: 0;
}
.wbs-stifter-content__photo {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wbs-stifter-content__img {
  width: 100%;
  max-width: 600px;
  height: auto;
  object-fit: cover;
  display: block;
}

/* Stats Counters */
.wbs-stats {
  background: #fff;
  padding: 60px 50px;
}
.wbs-stats__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.wbs-stats__item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
}
.wbs-stats__label {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 0.95rem;
  font-weight: 400;
  color: #59595b;
  margin: 0;
}
.wbs-stats__number {
  display: flex;
  align-items: baseline;
  gap: 2px;
}
.wbs-stats__prefix {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #EA5153;
}
.wbs-stats__value {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #EA5153;
}

/* ===== Programme Page ===== */
.prog-spacer {
  background-color: #6D8BA7;
  height: 80px;
}
.prog-hero {
  background-color: #6D8BA7;
  padding: 0 50px;
}
.prog-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.prog-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}
.prog-hero__divider {
  width: 80px;
  height: 2px;
  background: #fff;
  border: none;
  margin-top: 20px;
}
.prog-intro {
  background-color: #6D8BA7;
  padding: 60px 50px 30px;
}
.prog-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.prog-intro__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.6;
  margin: 0;
}
.prog-showcase {
  padding-top: 30px;
}

/* ===== Organisation Page ===== */
.org-spacer {
  background-color: #6D8BA7;
  height: 80px;
}
.org-hero {
  background-color: #6D8BA7;
  padding: 0 50px;
}
.org-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.org-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}
.org-hero__divider {
  width: 80px;
  height: 2px;
  background: #fff;
  border: none;
  margin-top: 20px;
}
.org-intro {
  background-color: #6D8BA7;
  padding: 60px 50px 30px;
}
.org-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.org-intro__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.6;
  margin: 0;
}
.org-vorstand {
  background: #fff;
  padding: 90px 50px 0;
}
.org-vorstand__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.org-vorstand__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.org-photo {
  background: #fff;
  padding: 10px 50px 0;
  text-align: center;
}
.org-photo__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.org-photo__img {
  width: 100%;
  height: auto;
  display: block;
}
.org-bios {
  background: #fff;
  padding: 0 50px;
}
.org-bios__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 0;
}
.org-bios__card {
  width: 50%;
  background-color: #EDF4FC;
  padding: 50px;
}
.org-bios__name {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.35rem;
  font-weight: 600;
  color: #EA5153;
  margin: 0 0 20px;
}
.org-bios__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 16px;
}
.org-bios__text:last-child {
  margin-bottom: 0;
}
.org-stiftungsrat {
  background: #fff;
  padding: 60px 50px 0;
}
.org-stiftungsrat__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.org-stiftungsrat__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.org-member {
  background: #fff;
  padding: 20px 50px 60px;
}
.org-member__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: flex-start;
}
.org-member__photo {
  flex: 0 0 auto;
  width: 40%;
}
.org-member__img {
  width: 100%;
  height: auto;
  display: block;
}
.org-member__bio {
  flex: 1;
  padding-left: 30px;
}
.org-member__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0;
}

/* ===== Partner Page ===== */
.ptr-spacer {
  background-color: #6D8BA7;
  height: 80px;
}
.ptr-hero {
  background-color: #6D8BA7;
  padding: 0 50px;
}
.ptr-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ptr-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}
.ptr-hero__divider {
  width: 80px;
  height: 2px;
  background: #fff;
  border: none;
  margin-top: 20px;
}
.ptr-intro {
  background-color: #6D8BA7;
  padding: 60px 50px 30px;
}
.ptr-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ptr-intro__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.6;
  margin: 0;
}

/* Logo Marquee */
.ptr-logos {
  background: #fff;
  padding: 60px 0;
  overflow: hidden;
}
.ptr-logos__track {
  display: flex;
  align-items: center;
  gap: 50px;
  animation: ptr-scroll 40s linear infinite;
  width: max-content;
}
.ptr-logos__slide {
  flex: 0 0 auto;
  width: 220px;
}
.ptr-logos__slide img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}
@keyframes ptr-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Partner Detail */
.ptr-detail {
  background: #fff;
  padding: 0 50px;
  margin-top: 90px;
}
.ptr-detail__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: flex-start;
}
.ptr-detail__logo {
  flex: 0 0 auto;
  width: 300px;
  padding-right: 30px;
}
.ptr-detail__logo-img {
  width: 100%;
  height: auto;
  display: block;
}
.ptr-detail__content {
  flex: 1;
}
.ptr-detail__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.35rem;
  font-weight: 600;
  color: #EA5153;
  margin: 0 0 16px;
}
.ptr-detail__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 16px;
}
.ptr-detail__contact {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 16px 0;
}
.ptr-detail__partner-label {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 600;
  color: #000;
  margin: 16px 0 4px;
}
.ptr-detail__partner-link {
  margin: 0;
}
.ptr-detail__partner-link a {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  color: #EA5153;
  text-decoration: underline;
  font-weight: 500;
}
.ptr-detail__partner-link a:hover {
  color: #c0392b;
}

.ptr-detail__partner-extra {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  margin: 4px 0 0;
}
.ptr-detail__quote {
  border-left: 3px solid #EA5153;
  padding: 16px 0 16px 24px;
  margin: 0 0 16px;
}
.ptr-detail__quote p {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  font-style: italic;
  color: #000;
  line-height: 1.6;
  margin: 0 0 12px;
}
.ptr-detail__quote footer {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.95rem;
  color: #000;
  line-height: 1.5;
}
.ptr-detail__quote footer strong {
  font-weight: 600;
}
.ptr-detail__quote footer span {
  font-weight: 400;
  color: #555;
}

/* Partner Divider */
.ptr-divider {
  background: #fff;
  padding: 0 50px;
  margin-top: 50px;
}
.ptr-divider__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ptr-divider__inner hr {
  border: none;
  border-top: 1px solid #ddd;
  margin: 0;
}

/* Organisation Team */
.org-team-title {
  background: #fff;
  padding: 90px 50px 0;
}
.org-team-title__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.org-team-title__heading {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.org-team {
  background: #fff;
  padding: 30px 50px 60px;
}
.org-team__inner {
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.org-team__card {
  flex: 0 0 calc(100% / 3);
  max-width: calc(100% / 3);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 20px;
  box-sizing: border-box;
}
.org-team__img {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 16px;
}
.org-team__name {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 600;
  color: #000;
  margin: 0 0 4px;
}
.org-team__role {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.95rem;
  font-weight: 400;
  color: #000;
  margin: 0 0 2px;
}
.org-team__programs {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.95rem;
  font-weight: 400;
  color: #000;
  margin: 0 0 12px;
}
.org-team__divider {
  width: 60px;
  height: 2px;
  background: #EA5153;
  margin-top: auto;
}

/* Generation Alpha */
.ga-spacer {
  background: linear-gradient(180deg, #FEEF39B5 0%, #9DCE61 100%);
  height: 120px;
  display: flex;
  align-items: flex-end;
  padding: 0 50px 20px;
}
.ga-spacer__inner {
  max-width: 1250px;
  margin: 0 auto;
  width: fit-content;
}
.ga-spacer__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
  line-height: 1.3;
}
.ga-spacer__divider {
  width: 100%;
  height: 3px;
  background: #fff;
  margin-top: 10px;
}
.ga-hero {
  background: #fff;
  padding: 0 50px 30px;
}
.ga-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ga-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.3;
}
.ga-hero__divider {
  width: 100%;
  height: 3px;
  background: #000;
  margin-top: 20px;
}
.ga-gallery {
  background: #fff;
  padding: 30px 50px 40px;
}
.ga-gallery__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 10px;
}
.ga-gallery__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ga-gallery__img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
  object-fit: cover;
}

.ga-intro {
  background: #fff;
  padding: 0 50px;
}
.ga-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ga-intro__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 16px;
}
.ga-event {
  background: linear-gradient(180deg, #FFFFFF 49%, #9DCE61A3 86%);
  padding: 30px 50px 0;
}
.ga-event__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ga-event__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 16px;
}
.ga-event__video {
  margin-top: 20px;
}
.ga-event__video-el {
  width: 100%;
  height: auto;
  display: block;
}
.ga-quote-row {
  padding: 60px 50px 0;
}
.ga-quote-row--green-yellow {
  background: linear-gradient(180deg, #9DCE61A3 0%, #FEEF39B5 100%);
}
.ga-quote-row--yellow {
  background: linear-gradient(180deg, #FEEF39B5 0%, #FEEF39B5 100%);
}
.ga-quote-row__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.ga-quote-row__text {
  flex: 1;
  display: flex;
  align-items: center;
}
.ga-quote-row__text p {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.05rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0;
}
.ga-quote-row__media {
  flex: 1;
  display: flex;
  align-items: center;
}
.ga-quote-row__img {
  width: 100%;
  height: auto;
  display: block;
}
.ga-quote-row__video {
  width: 100%;
  height: auto;
  display: block;
}

.ga-impressions-heading {
  padding: 90px 50px 0;
  background: linear-gradient(180deg, #FEEF39B5 0%, #9DCE61A3 100%);
}
.ga-impressions-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ga-impressions-heading__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.6rem;
  font-weight: 600;
  color: #000;
  margin: 0 0 20px;
}
.ga-impressions-heading__subtitle {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  margin: 0;
}
.ga-testimonials {
  padding: 30px 50px 0;
}
.ga-testimonials--green {
  background: linear-gradient(180deg, #9DCE61A3 0%, #9DCE61A3 67%);
}
.ga-testimonials--green-white {
  background: linear-gradient(180deg, #9DCE61A3 6%, #FFFFFF 68%);
}
.ga-testimonials__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.ga-testimonials__item {
  flex: 1;
}
.ga-testimonials__video {
  width: 100%;
  height: auto;
  display: block;
}
.ga-testimonials__name {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  margin: 8px 0 0;
}
.ga-cta {
  margin-top: 60px;
  padding: 0 50px;
  background: #fff;
}
.ga-cta__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.ga-cta__icon {
  flex: 1;
  display: flex;
  align-items: flex-start;
}
.ga-cta__icon-img {
  width: 100%;
  max-width: 400px;
  height: auto;
}
.ga-cta__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ga-cta__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 16px;
}
.ga-cta__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #84CE61;
  color: #fff;
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 600;
  padding: 12px 24px;
  border-radius: 4px;
  text-decoration: none;
  transition: background .3s;
  width: fit-content;
}
.ga-cta__btn:hover {
  background: #6fb84e;
}
.ga-cta__btn svg {
  flex-shrink: 0;
}
.ga-bottom {
  margin-top: 60px;
  padding: 0 50px 60px;
  background: #fff;
}
.ga-bottom__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row-reverse;
  gap: 0;
}
.ga-bottom__links {
  flex: 1;
}
.ga-bottom__heading {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.4rem;
  font-weight: 600;
  color: #000;
  margin: 0 0 20px;
}
.ga-bottom__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ga-bottom__list-item {
  margin-bottom: 16px;
}
.ga-bottom__link {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  text-decoration: none;
  color: #000;
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.05rem;
  line-height: 1.5;
  transition: color .3s;
}
.ga-bottom__link:hover {
  color: #84CE61;
}
.ga-bottom__link-icon {
  flex-shrink: 0;
  margin-top: 2px;
  color: #84CE61;
}
.ga-bottom__gallery {
  flex: 1;
}
.ga-bottom__gallery-title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  margin: 0 0 12px;
}
.ga-bottom__carousel {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
}
.ga-bottom__slides {
  display: flex;
  transition: transform .5s ease;
}
.ga-bottom__slide {
  min-width: 100%;
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.ga-bottom__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,.45);
  color: #fff;
  border: none;
  font-size: 2rem;
  line-height: 1;
  padding: 8px 14px;
  cursor: pointer;
  z-index: 2;
  transition: background .3s;
}
.ga-bottom__arrow:hover {
  background: rgba(0,0,0,.7);
}
.ga-bottom__arrow--prev { left: 0; }
.ga-bottom__arrow--next { right: 0; }

/* Zahlen Daten Fakten */
.zdf-carousel {
  margin-top: 60px;
  padding: 0 50px;
  background: #fff;
}
.zdf-carousel__inner {
  max-width: 1250px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
.zdf-carousel__slides {
  display: flex;
  transition: transform .5s ease;
}
.zdf-carousel__slide {
  min-width: 100%;
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.zdf-carousel__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,.45);
  color: #fff;
  border: none;
  font-size: 2.5rem;
  line-height: 1;
  padding: 10px 16px;
  cursor: pointer;
  z-index: 2;
  transition: background .3s;
}
.zdf-carousel__arrow:hover {
  background: rgba(0,0,0,.7);
}
.zdf-carousel__arrow--prev { left: 0; }
.zdf-carousel__arrow--next { right: 0; }
.zdf-intro {
  margin-top: 30px;
  padding: 0 50px;
  background: #fff;
}
.zdf-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.zdf-intro__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0;
}
.zdf-cards {
  margin-top: 30px;
  padding: 0 50px;
  background: #fff;
}
.zdf-cards__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.zdf-cards__item {
  flex: 1 1 33.333%;
  padding: 20px 30px 20px 0;
}
.zdf-cards__item:last-child {
  padding-right: 0;
}
.zdf-cards__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.4rem;
  font-weight: 600;
  color: #000;
  margin: 0 0 12px;
}
.zdf-cards__desc {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0;
}
.zdf-survey-heading {
  margin-top: 60px;
  padding: 0 50px;
  background: #fff;
}
.zdf-survey-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.zdf-survey-heading__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.4rem;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.zdf-progress {
  padding: 0 50px;
  background: #fff;
}
.zdf-progress__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.zdf-progress__item {
  margin-top: 20px;
}
.zdf-progress__label {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 600;
  color: #000;
  margin: 0 0 6px;
}
.zdf-progress__bar-wrap {
  background: #e8e8e8;
  border-radius: 4px;
  height: 28px;
  overflow: hidden;
}
.zdf-progress__bar {
  background: #84CE61;
  height: 100%;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 10px;
  transition: width 1s ease;
}
.zdf-progress__val {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #fff;
}
.zdf-progress__source {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.85rem;
  font-weight: 400;
  color: #6D8BA7;
  line-height: 1.5;
  margin: 30px 0 0;
}
.zdf-grid {
  margin-top: 60px;
  background: #fff;
}
.zdf-grid__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.zdf-grid__col {
  flex: 1 1 25%;
  min-width: 0;
  padding: 10px;
}
.zdf-grid__img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
  object-fit: cover;
}
.zdf-grid__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 16px;
}
.zdf-grid__text:last-child {
  margin-bottom: 0;
}
.zdf-experts-heading {
  padding: 60px 50px 0;
  background: #fff;
}
.zdf-experts-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.zdf-experts-heading__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.4rem;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.5;
}
.zdf-testimonials {
  padding: 30px 50px 40px;
  background-image: radial-gradient(at center center, #fff 0%, #fff 57%);
}
.zdf-testimonials__inner {
  max-width: 1250px;
  margin: 0 auto;
  position: relative;
}
.zdf-testimonials__track {
  overflow: hidden;
}
.zdf-testimonials__slides {
  display: flex;
  transition: transform .5s ease;
}
.zdf-testimonials__slide {
  min-width: 50%;
  box-sizing: border-box;
  padding: 0 20px;
}
.zdf-testimonials__quote {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1rem;
  font-style: italic;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 20px;
  padding: 20px;
  background: #f5f5f5;
  border-radius: 8px;
  position: relative;
}
.zdf-testimonials__quote::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 40px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #f5f5f5;
}
.zdf-testimonials__footer {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 10px 0 0;
}
.zdf-testimonials__avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
}
.zdf-testimonials__cite {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.85rem;
  color: #000;
  line-height: 1.4;
}
.zdf-testimonials__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,.45);
  color: #fff;
  border: none;
  font-size: 2.5rem;
  padding: 10px 16px;
  cursor: pointer;
  z-index: 2;
  transition: background .3s;
  border-radius: 4px;
}
.zdf-testimonials__arrow:hover { background: rgba(0,0,0,.7); }
.zdf-testimonials__arrow--prev { left: -10px; }
.zdf-testimonials__arrow--next { right: -10px; }
.zdf-weiterlesen {
  padding: 60px 50px 0;
  background: #fff;
}
.zdf-weiterlesen__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.zdf-weiterlesen__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.4rem;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.zdf-reading {
  margin-top: 30px;
  padding: 0 50px;
  background: #fff;
}
.zdf-reading__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.zdf-reading__card {
  flex: 1 1 20%;
  min-width: 0;
  padding: 16px 20px 16px 0;
  border-top: 1px solid #e8e8e8;
}
.zdf-reading__card:last-child {
  padding-right: 0;
}
.zdf-reading__text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.9rem;
  font-weight: 400;
  color: #000;
  line-height: 1.5;
  margin: 0 0 8px;
}
.zdf-reading__meta {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 0.85rem;
  color: #6D8BA7;
  margin: 0;
}
.zdf-reading__meta a {
  color: #1982C4;
  text-decoration: underline;
}
.zdf-reading__meta a:hover {
  color: #000;
}

/* ===== Blog Page ===== */
.blog-spacer {
  background-color: #6D8BA7;
  height: 20px;
}
.blog-hero {
  background-color: #6D8BA7;
  padding: 0 50px 35px;
}
.blog-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.blog-hero__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2.2rem;
  font-weight: 600;
  color: #fff;
  margin: 0 0 12px;
}
.blog-hero__divider {
  width: 60px;
  height: 3px;
  background: #fff;
}
.blog-feature {
  margin-top: 90px;
  padding: 0 50px;
}
.blog-feature__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.blog-feature__left {
  flex: 1 1 50%;
  position: relative;
  overflow: hidden;
  min-height: 380px;
}
.blog-feature__bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.blog-feature__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.45);
  display: flex;
  align-items: flex-end;
  padding: 30px;
}
.blog-feature__overlay-text {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.25rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.6;
  margin: 0;
}
.blog-feature__right {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
}
.blog-feature__card {
  display: flex;
  flex: 1;
}
.blog-feature__card-meta {
  background: #6D8BA7;
  color: #fff;
  padding: 16px 14px;
  display: flex;
  align-items: flex-start;
}
.blog-feature__card-date {
  font-family: 'Roboto', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
}
.blog-feature__card-body {
  padding: 20px 24px;
  flex: 1;
}
.blog-feature__card-category {
  display: inline-block;
  font-family: 'Roboto', sans-serif;
  font-size: 0.8rem;
  font-weight: 500;
  color: #6D8BA7;
  margin-bottom: 8px;
}
.blog-feature__card-title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 600;
  color: #6D8BA7;
  margin: 0 0 10px;
  line-height: 1.45;
}
.blog-feature__card-title a {
  color: inherit;
  text-decoration: none;
}
.blog-feature__card-title a:hover {
  color: #000;
  text-decoration: underline;
}
.blog-feature__card-excerpt {
  font-family: 'Roboto', sans-serif;
  font-size: 0.92rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0 0 14px;
}
.blog-feature__card-link {
  font-family: 'Roboto', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  color: #6D8BA7;
  text-decoration: none;
}
.blog-feature__card-link:hover {
  text-decoration: underline;
}
.blog-feature__subtitle {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.1rem;
  font-weight: 400;
  color: #000;
  padding: 16px 24px;
  margin: 0;
}
.blog-heading {
  padding: 60px 50px 0;
  background: #fff;
}
.blog-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.blog-heading__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 2rem;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.blog-filter {
  padding: 20px 50px 10px;
  background: #fff;
}
.blog-filter__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}
.blog-filter__btn {
  font-family: 'Roboto', sans-serif;
  font-size: 0.85rem;
  font-weight: 500;
  color: #000;
  background: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 20px;
  padding: 8px 18px;
  cursor: pointer;
  transition: background .2s, color .2s;
}
.blog-filter__btn:hover {
  background: #6D8BA7;
  color: #fff;
  border-color: #6D8BA7;
}
.blog-filter__btn--active {
  background: #6D8BA7;
  color: #fff;
  border-color: #6D8BA7;
}
.blog-grid {
  padding: 0 50px 60px;
  margin-bottom: 90px;
  background: #fff;
}
.blog-grid__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px;
}
.blog-grid__card {
  display: flex;
  flex-direction: column;
}
.blog-grid__img-wrap {
  overflow: hidden;
}
.blog-grid__img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  display: block;
  transition: transform .3s;
}
.blog-grid__card:hover .blog-grid__img {
  transform: scale(1.05);
}
.blog-grid__content {
  padding: 5px 0 0;
}
.blog-grid__date {
  font-family: 'Roboto', sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  color: #000;
  display: block;
}
.blog-grid__title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 600;
  color: #6D8BA7;
  margin: 15px 0 0;
  line-height: 1.45;
}
.blog-grid__title a {
  color: inherit;
  text-decoration: none;
}
.blog-grid__title a:hover {
  color: #000;
}
.blog-grid__excerpt {
  margin-top: 0;
}
.blog-grid__excerpt p {
  font-family: 'Roboto', sans-serif;
  font-size: 0.95rem;
  font-weight: 500;
  color: #000;
  line-height: 1.5;
}
.blog-pagination {
  padding: 0 50px 60px;
  background: #fff;
}
.blog-pagination__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
}
.blog-pagination__link {
  font-family: 'Roboto', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  color: #6D8BA7;
  text-decoration: none;
  padding: 6px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: background .2s, color .2s;
}
.blog-pagination__link:hover {
  background: #6D8BA7;
  color: #fff;
  border-color: #6D8BA7;
}
.blog-pagination__link--current {
  background: #6D8BA7;
  color: #fff;
  border-color: #6D8BA7;
}
.blog-pagination__link--disabled {
  color: #bbb;
  cursor: default;
  border-color: #eee;
}

/* ===== Medien Page ===== */
.medien-spacer {
  height: 20px;
}
.medien-hero {
  padding: 75px 50px 35px;
}
.medien-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.medien-hero__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0 0 20px;
}
.medien-hero__divider {
  width: 100%;
  height: 1px;
  background: #ddd;
}
.medien-copyright {
  padding: 15px 50px 33px;
}
.medien-copyright__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.medien-copyright__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
  white-space: pre-line;
}
.medien-section-heading {
  padding: 10px 50px;
}
.medien-section-heading--first {
  margin-top: 60px;
}
.medien-section-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.medien-section-heading__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.medien-entry {
  padding: 10px 50px;
}
.medien-entry__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.medien-entry__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  margin: 0 0 10px;
}
.medien-entry__text a {
  color: #000;
  text-decoration: none;
}
.medien-entry__text a:hover {
  color: #6D8BA7;
}
.medien-entry__text b {
  font-weight: 700;
}
.medien-entry__link {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  color: #6D8BA7;
  margin: 0;
}
.medien-entry__link a {
  color: #6D8BA7;
  text-decoration: none;
}
.medien-entry__link a:hover {
  text-decoration: underline;
}
.medien-entry__download {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: #6D8BA7;
  color: #fff;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 4px;
  transition: background .2s;
  margin-top: 5px;
}
.medien-entry__download:hover {
  background: #5a7a94;
}
.medien-entry__pdf-icon {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

/* ===== Angekommen Page ===== */
.ang-spacer {
  height: 33px;
}
.ang-hero {
  padding: 0 50px;
}
.ang-hero__inner {
  max-width: 1402px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: stretch;
}
.ang-hero__left {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 30px 0;
}
.ang-hero__logo {
  max-width: 480px;
  width: 100%;
  height: auto;
  margin-bottom: 30px;
}
.ang-hero__heading {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.3;
  color: #000;
  margin: 0;
}
.ang-hero__right {
  flex: 1;
  min-height: 460px;
  position: relative;
}
.ang-slideshow {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.ang-slideshow__slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.ang-slideshow__slide--active {
  opacity: 1;
}
.ang-intro {
  padding: 60px 50px 30px;
}
.ang-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 5% 0 5%;
}
.ang-intro__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0 0 30px;
}
.ang-intro__subtitle {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0 0 15px;
}
.ang-intro__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.ang-standorte {
  padding: 30px 50px;
}
.ang-standorte__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.ang-standorte__subtitle {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ang-standorte__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.ang-cities {
  padding: 10px 50px;
}
.ang-cities__inner {
  max-width: 1236px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.ang-cities__card {
  flex: 1 1 0;
  min-width: 0;
  min-height: 280px;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  position: relative;
}
.ang-cities__card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.15);
  pointer-events: none;
}
.ang-cities__logo {
  position: relative;
  max-width: 85%;
  width: 100%;
  height: auto;
  z-index: 1;
}
.ang-prog {
  margin-top: 60px;
  background: #fff;
  padding: 0 54px 10px;
}
.ang-prog__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.ang-prog__subtitle {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ang-prog__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.ang-topics {
  background: #fff;
  padding: 10px 54px 40px;
}
.ang-topics__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 5%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 30px;
}
.ang-topics__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.ang-topics__item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  color: #6D8BA7;
  line-height: 1.4;
}
.ang-topics__icon {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  color: #FECA39;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ang-topics__icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.ang-voices-heading {
  background: #fff;
  padding: 60px 50px 10px;
}
.ang-voices-heading__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ang-voices-heading__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ang-voices-city {
  padding: 30px 50px 0;
}
.ang-voices-city--yellow {
  background: #FFF6DD;
}
.ang-voices-city__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ang-voices-city__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 28px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ang-testimonials {
  padding: 0 50px 30px;
}
.ang-testimonials--yellow {
  background: #FFF6DD;
}
.ang-testimonials__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0;
  min-height: 335px;
}
.ang-testimonials__left {
  flex: 1 1 55%;
  min-width: 0;
  display: flex;
  align-items: center;
  padding: 20px 0;
}
.ang-testimonials__right {
  flex: 1 1 45%;
  min-width: 0;
}
.ang-testimonials__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ang-testimonials__carousel {
  position: relative;
  width: 100%;
  padding: 0 40px;
}
.ang-testimonials__track {
  display: flex;
  gap: 10px;
  overflow: hidden;
  transition: transform .5s ease;
}
.ang-testimonials__slide {
  flex: 0 0 50%;
  min-width: 0;
  padding: 10px;
  box-sizing: border-box;
}
.ang-testimonials__card {
  background: #fff;
  padding: 28px 24px;
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  text-align: center;
  position: relative;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
}
.ang-testimonials__card::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 20px;
  height: 20px;
  background: #fff;
  box-shadow: 3px 3px 5px rgba(0,0,0,0.04);
}
.ang-testimonials__text {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.5;
  color: #000;
  margin: 0;
}
.ang-testimonials__cite {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  font-style: normal;
  color: #6D8BA7;
  display: block;
  margin-top: 20px;
}
.ang-testimonials__role {
  display: block;
  font-weight: 400;
  font-size: 13px;
  color: #6D8BA7;
  margin-top: 4px;
}
.ang-testimonials__btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border: none;
  background: transparent;
  color: #000;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.ang-testimonials__btn:disabled {
  opacity: 0.25;
  cursor: default;
}
.ang-testimonials__btn svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}
.ang-testimonials__btn--prev { left: 0; }
.ang-testimonials__btn--next { right: 0; }
.ang-wirkung {
  background: #fff;
  margin-top: 90px;
  padding: 0 54px 10px;
}
.ang-wirkung__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 5%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.ang-wirkung__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0 0 10px;
}
.ang-wirkung__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.ang-impact {
  background: #fff;
  padding: 30px 0;
}
.ang-impact__inner {
  max-width: 1235px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
}
.ang-impact__card {
  background: #FFF6DD;
  min-height: 277px;
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 20px;
}
.ang-impact__icon {
  width: 64px;
  height: 64px;
  color: #FECA39;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ang-impact__icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.ang-impact__label {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.35;
}
.ang-download {
  background: #fff;
  padding: 90px 50px 0;
}
.ang-download__inner {
  max-width: 1240px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
}
.ang-download__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #EA5153;
  color: #fff;
  text-decoration: none;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  padding: 12px 22px;
  border-radius: 3px;
  transition: background .2s;
}
.ang-download__btn:hover {
  background: #d33e40;
}
.ang-download__icon {
  width: 16px;
  height: 20px;
  display: inline-flex;
}
.ang-download__icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.ang-partners {
  background: #fff;
  padding: 40px 50px 60px;
}
.ang-partners__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 21px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.ang-partners__item {
  flex: 1 1 0;
  min-width: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ang-partners__item img {
  max-width: 100%;
  height: auto;
  display: block;
}
.ang-contacts-heading {
  background: #fff;
  padding: 90px 50px 0;
}
.ang-contacts-heading__inner {
  max-width: 1240px;
  margin: 0 auto;
}
.ang-contacts-heading__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ang-contacts {
  background: #fff;
  padding: 30px 50px 0;
}
.ang-contacts__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
}
.ang-contacts__card {
  background: linear-gradient(135deg, #FFE9A3 0%, #FECA39 100%);
  padding: 40px 30px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 260px;
}
.ang-contacts__city {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0 0 10px;
  letter-spacing: 1px;
}
.ang-contacts__name {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ang-contacts__role,
.ang-contacts__tel {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000;
  margin: 0;
}
.ang-contacts__email {
  margin: 10px 0 0;
  font-size: 16px;
  font-weight: 500;
  font-family: 'Roboto', Arial, sans-serif;
}
.ang-contacts__email a {
  color: #EA5153;
  text-decoration: none;
}
.ang-contacts__email a:hover {
  text-decoration: underline;
}
.ang-wbs-contact {
  margin-top: 150px;
  background: #FFF6DD;
}
.ang-wbs-contact__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  min-height: 323px;
  flex-wrap: wrap;
}
.ang-wbs-contact__left {
  flex: 0 0 auto;
  width: 323px;
  max-width: 100%;
}
.ang-wbs-contact__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ang-wbs-contact__right {
  flex: 1 1 auto;
  padding: 40px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  min-width: 0;
}
.ang-wbs-contact__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  line-height: 1.4;
  margin: 0;
}
.ang-wbs-contact__email {
  margin: 0;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
}
.ang-wbs-contact__email a {
  color: #EA5153;
  text-decoration: none;
}
.ang-wbs-contact__email a:hover {
  text-decoration: underline;
}

/* ===== durchstarten page ===== */
.dst-hero {
  background: #fff;
  padding: 160px 50px 0;
}
.dst-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
}
.dst-hero__left {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 20px;
}
.dst-hero__logo {
  max-width: 100%;
  width: 100%;
  max-width: 520px;
  height: auto;
  display: block;
}
.dst-hero__heading {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  color: #000;
  line-height: 1.4;
  margin: 0;
}
.dst-hero__right {
  flex: 1 1 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dst-hero__right img {
  width: 100%;
  max-width: 600px;
  height: auto;
  display: block;
}
.dst-intro {
  background: #fff;
  margin: 3% 0 1%;
  padding: 0 4%;
}
.dst-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.dst-intro__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0 0 10px;
}
.dst-intro__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.dst-quote {
  background: #fff;
  padding: 30px 50px 0;
}
.dst-quote__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
.dst-quote__card {
  background: #FFF6DD;
  border-radius: 8px;
  padding: 40px 40px;
  max-width: 900px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 30px;
  position: relative;
}
.dst-quote__text {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  font-style: italic;
  line-height: 1.6;
  color: #000;
  margin: 0;
  text-align: center;
}
.dst-quote__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.dst-quote__img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.dst-quote__cite {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-style: normal;
}
.dst-quote__name {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  color: #000;
}
.dst-quote__title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #6D8BA7;
}
.dst-steckbrief-head {
  margin-top: 90px;
  background: #F4D4DD;
  padding: 30px 50px 0;
}
.dst-steckbrief-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.dst-steckbrief-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.dst-steckbrief {
  background: #F4D4DD;
  padding: 30px 50px 60px;
}
.dst-steckbrief__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
.dst-steckbrief__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px 10px;
}
.dst-steckbrief__label {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #B11943;
  margin: 0;
}
.dst-steckbrief__value {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.3;
}
.dst-steckbrief__logo {
  max-width: 280px;
  width: 100%;
  height: auto;
  display: block;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .dst-hero {
    padding: 80px 20px 0;
  }
  .dst-hero__inner {
    flex-direction: column;
    gap: 30px;
  }
  .dst-hero__left {
    padding: 0;
  }
  .dst-hero__heading {
    font-size: 22px;
  }
  .dst-intro {
    padding: 0 20px;
  }
  .dst-intro__title {
    font-size: 26px;
  }
  .dst-intro__text {
    font-size: 16px;
  }
  .dst-quote {
    padding: 20px 20px 0;
  }
  .dst-quote__card {
    padding: 30px 22px;
  }
  .dst-quote__text {
    font-size: 16px;
  }
  .dst-steckbrief-head {
    padding: 30px 20px 0;
    margin-top: 50px;
  }
  .dst-steckbrief-head__title {
    font-size: 22px;
  }
  .dst-steckbrief {
    padding: 20px 20px 40px;
  }
  .dst-steckbrief__inner {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.dst-gallery {
  background: #fff;
  margin-top: 90px;
  padding: 0 50px;
}
.dst-gallery__inner {
  max-width: 1000px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 24px;
  aspect-ratio: 3 / 2;
}
.dst-gallery__item {
  display: block;
  overflow: hidden;
  border-radius: 4px;
  position: relative;
  height: 100%;
}
.dst-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
.dst-gallery__item:hover img {
  transform: scale(1.05);
}
.dst-gallery__item--tall {
  grid-column: 1 / 2;
  grid-row: 1 / 3;
}
.dst-gallery__item--wide {
  grid-column: 2 / 4;
  grid-row: 1 / 2;
}
.dst-gallery__item--sq1 {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}
.dst-gallery__item--sq2 {
  grid-column: 3 / 4;
  grid-row: 2 / 3;
}
.dst-kroker {
  margin-top: 150px;
  background: #FFF6DD;
}
.dst-kroker__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  min-height: 323px;
  flex-wrap: wrap;
}
.dst-kroker__left {
  flex: 0 0 auto;
  width: 323px;
  max-width: 100%;
}
.dst-kroker__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.dst-kroker__right {
  flex: 1 1 auto;
  padding: 40px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  min-width: 0;
}
.dst-kroker__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  line-height: 1.4;
  margin: 0 0 14px;
}
.dst-kroker__name {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.dst-kroker__role,
.dst-kroker__tel {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000;
  margin: 0;
}
.dst-kroker__email {
  margin: 10px 0 0;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
}
.dst-kroker__email a {
  color: #EA5153;
  text-decoration: none;
}
.dst-kroker__email a:hover {
  text-decoration: underline;
}
@media (max-width: 768px) {
  .dst-gallery {
    display: none;
  }
  .dst-kroker {
    margin-top: 80px;
  }
  .dst-kroker__inner {
    flex-direction: column;
  }
  .dst-kroker__left {
    width: 100%;
    max-height: 260px;
  }
  .dst-kroker__right {
    padding: 30px 20px;
  }
  .dst-kroker__title {
    font-size: 18px;
  }
}

/* ===== gut:gehen page ===== */
.gg-hero {
  background: #fff;
  padding: 160px 50px 0;
}
.gg-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: stretch;
}
.gg-hero__left {
  flex: 1 1 44%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
  min-width: 0;
}
.gg-hero__logo {
  width: 100%;
  max-width: 360px;
  height: auto;
  display: block;
}
.gg-hero__heading {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.35;
  color: #000;
  margin: 0;
}
.gg-hero__right {
  flex: 1 1 56%;
  min-width: 0;
}
.gg-carousel {
  position: relative;
  min-height: 430px;
  border-radius: 8px;
  overflow: hidden;
  background: #ddd;
}
.gg-carousel__slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity .6s ease;
}
.gg-carousel__slide--active {
  opacity: 1;
}
.gg-carousel__btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 34px;
  height: 34px;
  border: none;
  background: rgba(255, 255, 255, .85);
  color: #000;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
}
.gg-carousel__btn svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.gg-carousel__btn--prev { left: 10px; }
.gg-carousel__btn--next { right: 10px; }
.gg-carousel__dots {
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 2;
}
.gg-carousel__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  border: none;
  background: rgba(255, 255, 255, .55);
  padding: 0;
  cursor: pointer;
}
.gg-carousel__dot.is-active {
  background: #fff;
}
.gg-intro,
.gg-life {
  background: #fff;
  margin: 3% 0 1%;
  padding: 0 4%;
}
.gg-intro__inner,
.gg-life__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.gg-intro__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.gg-intro__text,
.gg-life__text,
.gg-life__subtitle {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.gg-life__subtitle {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  color: #000;
}

@media (max-width: 768px) {
  .gg-hero {
    padding: 80px 20px 0;
  }
  .gg-hero__inner {
    flex-direction: column;
    gap: 26px;
  }
  .gg-hero__heading {
    font-size: 24px;
  }
  .gg-carousel {
    min-height: 300px;
  }
  .gg-intro,
  .gg-life {
    margin: 30px 0 0;
    padding: 0 20px;
  }
  .gg-intro__title {
    font-size: 28px;
  }
  .gg-intro__text,
  .gg-life__text,
  .gg-life__subtitle {
    font-size: 17px;
  }
  .gg-life__subtitle {
    font-size: 22px;
  }
}

.gg-skills {
  background: #fff;
  padding: 15px 50px 0;
}
.gg-skills__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.gg-skills__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.gg-skills__item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  line-height: 1.45;
  color: #6D8BA7;
  margin-bottom: 14px;
}
.gg-skills__icon {
  width: 18px;
  height: 18px;
  color: #EA5153;
  flex: 0 0 18px;
  margin-top: 5px;
}
.gg-skills__icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}

.gg-video-head {
  background: #fff;
  margin: 3% 0 1%;
  padding: 0 4%;
}
.gg-video-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.gg-video-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

.gg-video {
  background: #fff;
  margin: 3% 0 1%;
  padding: 0 4%;
}
.gg-video__inner {
  max-width: 1140px;
  margin: 0 auto;
}
.gg-video__frame {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border-radius: 8px;
  overflow: hidden;
}
.gg-video__frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 768px) {
  .gg-skills {
    padding: 10px 20px 0;
  }
  .gg-skills__inner {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .gg-skills__item {
    font-size: 17px;
  }
  .gg-video-head,
  .gg-video {
    margin: 30px 0 0;
    padding: 0 20px;
  }
  .gg-video-head__title {
    font-size: 28px;
  }
}

.gg-process,
.gg-steps-head {
  background: #fff;
  margin: 3% 0 1%;
  padding: 0 4%;
}
.gg-process__inner,
.gg-steps-head__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.gg-process__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.gg-process__text,
.gg-process__note {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}
.gg-process__note a {
  color: #EA5153;
  text-decoration: none;
}
.gg-process__note a:hover {
  text-decoration: underline;
}

.gg-facts {
  background: #fff;
  margin-top: 9px;
  padding: 0 4%;
}
.gg-facts__inner {
  max-width: 1273px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}
.gg-facts__card {
  background: #F4D4DD;
  min-height: 210px;
  padding: 24px 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 8px;
}
.gg-facts__line {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.35;
  color: #6D8BA7;
  margin: 0;
}
.gg-facts__line--strong {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  color: #000;
}
.gg-facts__line a {
  color: #EA5153;
  text-decoration: none;
}
.gg-facts__line a:hover {
  text-decoration: underline;
}
.gg-facts__img {
  width: 100%;
  max-width: 180px;
  height: auto;
  display: block;
  margin-top: 8px;
}

.gg-steps-head {
  margin-top: 120px;
  margin-bottom: 30px;
}
.gg-steps-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

.gg-steps {
  background: #fff;
  margin-top: 30px;
  padding: 0 4% 20px;
}
.gg-steps__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.gg-steps__row {
  display: grid;
  grid-template-columns: 42% 58%;
  gap: 0;
}
.gg-steps__topic {
  background: #F4D4DD;
  padding: 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.gg-steps__detail {
  background: #FFF6DD;
  padding: 18px 18px;
  margin: 0;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  line-height: 1.35;
  display: flex;
  align-items: center;
}
.gg-steps__unit {
  margin: 0;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 500;
  color: #6D8BA7;
}
.gg-steps__headline {
  margin: 0;
  font-family: 'Gelasio', Georgia, serif;
  font-size: 28px;
  font-weight: 600;
  color: #000;
  line-height: 1.2;
}

@media (max-width: 768px) {
  .gg-process,
  .gg-steps-head,
  .gg-facts,
  .gg-steps {
    margin: 30px 0 0;
    padding: 0 20px;
  }
  .gg-process__title {
    font-size: 28px;
  }
  .gg-process__text,
  .gg-process__note {
    font-size: 17px;
  }
  .gg-facts__inner {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .gg-facts__card {
    min-height: auto;
  }
  .gg-facts__line {
    font-size: 17px;
  }
  .gg-facts__line--strong {
    font-size: 21px;
  }
  .gg-steps-head {
    margin-top: 50px;
    margin-bottom: 0;
  }
  .gg-steps-head__title {
    font-size: 24px;
  }
  .gg-steps__row {
    grid-template-columns: 1fr;
  }
  .gg-steps__detail,
  .gg-steps__unit {
    font-size: 17px;
  }
  .gg-steps__headline {
    font-size: 23px;
  }
}

.gg-followup,
.gg-advanced,
.gg-imagefilm-head,
.gg-imagefilm {
  background: #fff;
  margin: 3% 0 1%;
  padding: 0 4%;
}

.gg-followup__inner,
.gg-advanced__inner,
.gg-imagefilm-head__inner,
.gg-imagefilm__inner {
  max-width: 1250px;
  margin: 0 auto;
}

.gg-followup {
  margin-top: 60px;
  margin-bottom: 10px;
}
.gg-followup__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
  color: #6D8BA7;
  margin: 0;
}

.gg-advanced {
  margin-top: 60px;
}
.gg-advanced__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.gg-advanced__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.55;
  color: #6D8BA7;
}
.gg-advanced__icon {
  flex: 0 0 18px;
  margin-top: 3px;
  color: #EA5153;
  font-size: 18px;
}

.gg-imagefilm-head {
  margin-top: 4%;
}
.gg-imagefilm-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

.gg-imagefilm {
  margin-top: 2%;
  margin-bottom: 0;
  background-image: linear-gradient(180deg, #ffffff 50%, #EDF4FC 50%);
  padding-bottom: 40px;
}
.gg-imagefilm__frame {
  position: relative;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding-top: 56.25%;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
}
.gg-imagefilm__frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 768px) {
  .gg-followup,
  .gg-advanced,
  .gg-imagefilm-head,
  .gg-imagefilm {
    margin: 30px 0 0;
    padding: 0 20px;
  }
  .gg-followup__text,
  .gg-advanced__item {
    font-size: 17px;
  }
  .gg-imagefilm-head__title {
    font-size: 28px;
  }
  .gg-imagefilm {
    padding-bottom: 24px;
  }
}

.gg-impact,
.gg-impact-cta,
.gg-impact-chart,
.gg-voices-head,
.gg-voices,
.gg-locations-head,
.gg-locations-legend {
  background: #EDF4FC;
  padding: 0 4%;
}

.gg-impact__inner,
.gg-impact-cta__inner,
.gg-impact-chart__inner,
.gg-voices-head__inner,
.gg-voices__inner,
.gg-locations-head__inner,
.gg-locations-legend__inner {
  max-width: 1250px;
  margin: 0 auto;
}

.gg-impact {
  margin-top: 0;
  padding-top: 90px;
  padding-bottom: 10px;
}
.gg-impact__title,
.gg-voices-head__title {
  margin: 0;
  font-family: 'Gelasio', Georgia, serif;
  font-size: 36px;
  font-weight: 600;
  color: #000;
}
.gg-impact__text {
  margin: 20px 0 0;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  line-height: 1.6;
  color: #6D8BA7;
}

.gg-impact-cta {
  padding-top: 0;
  padding-bottom: 0;
}
.gg-impact-cta__inner {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.gg-impact-cta__button {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #EA5153;
  color: #fff;
  text-decoration: none;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 17px;
  font-weight: 500;
  padding: 10px 16px;
  border-radius: 8px;
}
.gg-impact-cta__button-icon {
  font-size: 18px;
}
.gg-impact-cta__title {
  margin: 0;
  font-family: 'Gelasio', Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  color: #000;
}
.gg-impact-cta__note {
  width: fit-content;
  color: #6D8BA7;
  text-decoration: none;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
}
.gg-impact-cta__note:hover {
  text-decoration: underline;
}

.gg-impact-chart {
  padding-top: 30px;
  padding-bottom: 0;
}
.gg-impact-chart__image {
  width: 100%;
  height: auto;
  display: block;
}

.gg-voices-head {
  padding-top: 90px;
  padding-bottom: 10px;
}

.gg-voices {
  padding-top: 30px;
  padding-bottom: 50px;
}
.gg-voices-carousel {
  position: relative;
}
.gg-voices-carousel__viewport {
  overflow: hidden;
}
.gg-voices-carousel__track {
  display: flex;
  gap: 10px;
  transition: transform .35s ease;
  will-change: transform;
}
.gg-voice-card {
  flex: 0 0 calc((100% - 20px) / 3);
  min-height: 280px;
  background: #fff;
  border-radius: 12px;
  padding: 24px 18px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .07);
}
.gg-voice-card__text {
  margin: 0;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.6;
  color: #6D8BA7;
}
.gg-voice-card__cite {
  margin-top: 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-style: normal;
}
.gg-voice-card__name {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
}
.gg-voice-card__role {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 14px;
  color: #6D8BA7;
}
.gg-voices-carousel__btn {
  position: absolute;
  top: 42%;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .95);
  color: #EA5153;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .12);
}
.gg-voices-carousel__btn--prev { left: -16px; }
.gg-voices-carousel__btn--next { right: -16px; }
.gg-voices-carousel__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
}
.gg-voices-carousel__dot {
  width: 10px;
  height: 10px;
  border: 0;
  border-radius: 50%;
  background: #c7d5e4;
  cursor: pointer;
}
.gg-voices-carousel__dot.is-active {
  background: #EA5153;
}

.gg-locations-head {
  background: #fff;
  padding-top: 100px;
  padding-bottom: 0;
}
.gg-locations-head__eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  color: #EA5153;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 500;
}
.gg-locations-head__title {
  margin: 0;
  font-family: 'Gelasio', Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  color: #000;
}

.gg-locations-legend {
  background: #fff;
  padding-top: 15px;
  padding-bottom: 0;
}
.gg-locations-legend__inner {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.gg-locations-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  color: #6D8BA7;
}
.gg-locations-legend__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #EA5153;
}
.gg-locations-legend__dot--wbs {
  background: #6D8BA7;
}

@media (max-width: 1100px) {
  .gg-voice-card {
    flex-basis: calc((100% - 10px) / 2);
  }
  .gg-voices-carousel__btn--prev { left: -8px; }
  .gg-voices-carousel__btn--next { right: -8px; }
}

@media (max-width: 768px) {
  .gg-impact,
  .gg-impact-cta,
  .gg-impact-chart,
  .gg-voices-head,
  .gg-voices,
  .gg-locations-head,
  .gg-locations-legend {
    padding-left: 20px;
    padding-right: 20px;
  }
  .gg-impact,
  .gg-voices-head {
    padding-top: 56px;
  }
  .gg-impact__title,
  .gg-voices-head__title {
    font-size: 30px;
  }
  .gg-impact__text,
  .gg-impact-cta__note,
  .gg-locations-legend__item {
    font-size: 17px;
  }
  .gg-impact-cta__title {
    font-size: 23px;
  }
  .gg-voice-card {
    flex-basis: 100%;
    min-height: 260px;
  }
  .gg-voices-carousel__btn {
    display: none;
  }
  .gg-locations-head {
    padding-top: 60px;
  }
  .gg-locations-head__title {
    font-size: 25px;
  }
}

.gg-map,
.gg-partners,
.gg-contact-card {
  background: #fff;
  padding: 0 4%;
}

.gg-map__inner,
.gg-partners__inner,
.gg-contact-card__inner {
  max-width: 1250px;
  margin: 0 auto;
}

.gg-map {
  padding-top: 16px;
}
.gg-map__frame {
  width: 100%;
  height: 800px;
  border: 0;
  display: block;
  background: #ddd;
}

.gg-partners {
  padding-top: 90px;
}
.gg-partners__title {
  margin: 0 0 24px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 24px;
  font-weight: 500;
  color: #6D8BA7;
}
.gg-partners__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 20px;
  align-items: center;
}
.gg-partners__grid img {
  width: 100%;
  height: 90px;
  object-fit: contain;
}

.gg-contact-card {
  margin-top: 150px;
  background: #FFE1F0;
}
.gg-contact-card__inner {
  min-height: 323px;
  display: grid;
  grid-template-columns: 34% 66%;
  align-items: center;
}
.gg-contact-card__photo-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.gg-contact-card__photo {
  width: 100%;
  max-width: 360px;
  height: auto;
  display: block;
}
.gg-contact-card__content {
  padding: 24px 8px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.gg-contact-card__headline,
.gg-contact-card__name,
.gg-contact-card__role,
.gg-contact-card__phone,
.gg-contact-card__mail {
  margin: 0;
}
.gg-contact-card__headline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 34px;
  line-height: 1.2;
  color: #000;
  margin-bottom: 8px;
}
.gg-contact-card__name,
.gg-contact-card__role,
.gg-contact-card__phone,
.gg-contact-card__mail {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: #6D8BA7;
}
.gg-contact-card__mail a {
  color: #EA5153;
  text-decoration: none;
}
.gg-contact-card__mail a:hover {
  text-decoration: underline;
}

@media (max-width: 1024px) {
  .gg-partners__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .gg-contact-card__headline {
    font-size: 30px;
  }
}

@media (max-width: 768px) {
  .gg-map,
  .gg-partners,
  .gg-contact-card {
    padding-left: 20px;
    padding-right: 20px;
  }
  .gg-map__frame {
    height: 250px;
  }
  .gg-partners {
    padding-top: 56px;
  }
  .gg-partners__title {
    font-size: 18px;
  }
  .gg-partners__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .gg-contact-card {
    margin-top: 70px;
  }
  .gg-contact-card__inner {
    grid-template-columns: 1fr;
    gap: 12px;
    padding-top: 16px;
  }
  .gg-contact-card__photo {
    max-width: 260px;
  }
  .gg-contact-card__content {
    padding: 8px 4px 24px;
  }
  .gg-contact-card__headline {
    font-size: 24px;
  }
  .gg-contact-card__name,
  .gg-contact-card__role,
  .gg-contact-card__phone,
  .gg-contact-card__mail {
    font-size: 18px;
  }
}

/* ===== neustart Page ===== */
.ns-hero {
  background: #fff;
  padding: 160px 0 0;
}
.ns-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 10px;
  align-items: center;
}
.ns-hero__text {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.ns-hero__logo {
  max-width: 100%;
  height: auto;
}
.ns-hero__tagline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.35;
  color: #000;
  margin: 0;
}
.ns-hero__image {
  flex: 1 1 50%;
}
.ns-hero__image img {
  width: 100%;
  height: auto;
  display: block;
}

.ns-intro {
  background: #fff;
  padding: 0 4%;
  margin-bottom: 1%;
}
.ns-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.ns-intro__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ns-intro__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 26px;
  color: #6D8BA7;
  margin: 0;
}

.ns-stats {
  background: #fff;
  padding: 60px 0 0;
}
.ns-stats__inner {
  max-width: 1251px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.ns-stats__left {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.ns-stats__right {
  flex: 1 1 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ns-stats__chart-title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}
.ns-stats__chart {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.ns-stats__chart canvas {
  display: block;
  max-width: 100%;
  height: auto;
}
.ns-stats__chart-legend {
  display: flex;
  gap: 21px;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
}
.ns-stats__legend-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  color: #000;
}
.ns-stats__legend-dot {
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  flex-shrink: 0;
}
.ns-stats__fact {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.35;
  color: #000;
  margin: 0;
}
.ns-stats__source {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}

.ns-voice-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 500px;
}
.ns-voice-card__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
}
.ns-voice-card__cite {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #6D8BA7;
  font-style: normal;
}

.ns-profile-head {
  background: #fff;
  margin-top: 90px;
  padding: 0 4%;
}
.ns-profile-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ns-profile-head__title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0 0 20px;
}

.ns-profile-cards {
  background: #fff;
  padding: 0 4%;
}
.ns-profile-cards__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
.ns-profile-cards__card {
  background: #E5FAF5;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-right: 1px solid #fff;
}
.ns-profile-cards__card:last-child {
  border-right: none;
}
.ns-profile-cards__label {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.ns-profile-cards__value {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 26px;
  color: #6D8BA7;
  margin: 0;
}

.ns-partners {
  background: #fff;
  padding: 90px 4% 0;
}
.ns-partners__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.ns-partners__title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 24px;
  font-weight: 500;
  color: #6D8BA7;
  margin: 0 0 24px;
}
.ns-partners__grid {
  display: flex;
  gap: 20px;
  align-items: center;
}
.ns-partners__grid img {
  height: 90px;
  width: auto;
  object-fit: contain;
}

.ns-contact-card {
  background: #E5FAF5;
  margin-top: 150px;
  padding: 0 4%;
}
.ns-contact-card__inner {
  max-width: 1250px;
  margin: 0 auto;
  min-height: 323px;
  display: grid;
  grid-template-columns: 34% 66%;
  align-items: center;
}
.ns-contact-card__photo-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.ns-contact-card__photo {
  width: 100%;
  max-width: 360px;
  height: auto;
  display: block;
}
.ns-contact-card__content {
  padding: 24px 8px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ns-contact-card__headline,
.ns-contact-card__name,
.ns-contact-card__role,
.ns-contact-card__phone,
.ns-contact-card__mail {
  margin: 0;
}
.ns-contact-card__headline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 34px;
  line-height: 1.2;
  color: #000;
  margin-bottom: 8px;
}
.ns-contact-card__name,
.ns-contact-card__role,
.ns-contact-card__phone,
.ns-contact-card__mail {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: #6D8BA7;
}
.ns-contact-card__mail a {
  color: #EA5153;
  text-decoration: none;
}
.ns-contact-card__mail a:hover {
  text-decoration: underline;
}

@media (max-width: 1024px) {
  .ns-hero__inner {
    flex-direction: column;
    padding: 0 4%;
  }
  .ns-hero {
    padding-top: 80px;
  }
  .ns-stats__inner {
    flex-direction: column;
    padding: 0 4%;
    gap: 40px;
  }
  .ns-profile-cards__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .ns-contact-card__headline {
    font-size: 30px;
  }
}

@media (max-width: 768px) {
  .ns-hero {
    padding-top: 60px;
  }
  .ns-hero__inner {
    padding: 0 20px;
  }
  .ns-hero__tagline {
    font-size: 20px;
  }
  .ns-intro {
    padding-left: 20px;
    padding-right: 20px;
  }
  .ns-intro__title {
    font-size: 28px;
  }
  .ns-stats {
    padding-top: 30px;
  }
  .ns-stats__inner {
    padding: 0 20px;
  }
  .ns-profile-head,
  .ns-profile-cards,
  .ns-partners,
  .ns-contact-card {
    padding-left: 20px;
    padding-right: 20px;
  }
  .ns-profile-head {
    margin-top: 50px;
  }
  .ns-profile-cards__inner {
    grid-template-columns: 1fr;
  }
  .ns-partners {
    padding-top: 50px;
  }
  .ns-partners__title {
    font-size: 18px;
  }
  .ns-contact-card {
    margin-top: 70px;
  }
  .ns-contact-card__inner {
    grid-template-columns: 1fr;
    gap: 12px;
    padding-top: 16px;
  }
  .ns-contact-card__photo {
    max-width: 260px;
  }
  .ns-contact-card__content {
    padding: 8px 4px 24px;
  }
  .ns-contact-card__headline {
    font-size: 24px;
  }
  .ns-contact-card__name,
  .ns-contact-card__role,
  .ns-contact-card__phone,
  .ns-contact-card__mail {
    font-size: 18px;
  }
}

/* ===== was geht! Page ===== */
.wg-hero {
  background: #fff;
  padding: 160px 0 0;
}
.wg-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 10px;
  align-items: center;
}
.wg-hero__text {
  flex: 1 1 33%;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.wg-hero__logo {
  max-width: 100%;
  height: auto;
}
.wg-hero__tagline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.35;
  color: #000;
  margin: 0;
}
.wg-hero__image {
  flex: 1 1 33%;
}
.wg-hero__image img {
  width: 100%;
  height: auto;
  display: block;
}
.wg-hero__image--desktop {
  display: block;
}

.wg-intro {
  background: #fff;
  padding: 0 4%;
  margin-top: 3%;
  margin-bottom: 1%;
}
.wg-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.wg-intro__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.wg-intro__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 26px;
  color: #6D8BA7;
  margin: 0;
}

.wg-testimonial {
  background: #fff;
  padding: 0 4%;
}
.wg-testimonial__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-voice-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 700px;
}
.wg-voice-card__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  color: #000;
}
.wg-voice-card__cite {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-style: normal;
}
.wg-voice-card__name {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #000;
}
.wg-voice-card__title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
}

.wg-infofilm {
  background: #fff;
  padding: 0 4%;
  margin-top: 5%;
  margin-bottom: 1%;
}
.wg-infofilm__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-infofilm__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

.wg-profile-head {
  background: #fff;
  margin-top: 90px;
  padding: 0 4%;
}
.wg-profile-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-profile-head__title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0 0 20px;
}

.wg-profile-cards {
  background: #fff;
  padding: 0 4%;
}
.wg-profile-cards__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
.wg-profile-cards__card {
  background: #FFF6DD;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-right: 1px solid #fff;
}
.wg-profile-cards__card:last-child {
  border-right: none;
}
.wg-profile-cards__label {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.wg-profile-cards__value {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 26px;
  color: #6D8BA7;
  margin: 0;
}

.wg-partners {
  background: #fff;
  padding: 90px 4% 0;
}
.wg-partners__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-partners__title {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 24px;
  font-weight: 500;
  color: #6D8BA7;
  margin: 0 0 24px;
}
.wg-partners__grid {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}
.wg-partners__grid img {
  height: 90px;
  width: auto;
  object-fit: contain;
}

.wg-contact-card {
  background: #FFF6DD;
  margin-top: 150px;
  padding: 0 4%;
}
.wg-contact-card__inner {
  max-width: 1250px;
  margin: 0 auto;
  min-height: 323px;
  display: grid;
  grid-template-columns: 34% 66%;
  align-items: center;
}
.wg-contact-card__photo-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.wg-contact-card__photo {
  width: 100%;
  max-width: 360px;
  height: auto;
  display: block;
}
.wg-contact-card__content {
  padding: 24px 8px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.wg-contact-card__headline,
.wg-contact-card__name,
.wg-contact-card__role,
.wg-contact-card__phone,
.wg-contact-card__mail {
  margin: 0;
}
.wg-contact-card__headline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 34px;
  line-height: 1.2;
  color: #000;
  margin-bottom: 8px;
}
.wg-contact-card__name,
.wg-contact-card__role,
.wg-contact-card__phone,
.wg-contact-card__mail {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: #6D8BA7;
}
.wg-contact-card__mail a {
  color: #EA5153;
  text-decoration: none;
}
.wg-contact-card__mail a:hover {
  text-decoration: underline;
}

.wg-video {
  background: linear-gradient(180deg, #FFFFFF 30%, #E1F3FF 30%);
  padding: 0 4%;
  margin-top: 2%;
}
.wg-video__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-video__wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border-radius: 8px;
  overflow: hidden;
}
.wg-video__overlay {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wg-video__play {
  width: 72px;
  height: 72px;
  fill: rgba(255,255,255,.85);
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.3));
  transition: transform .2s;
}
.wg-video__overlay:hover .wg-video__play {
  transform: scale(1.12);
}
.wg-video__wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.wg-tracks {
  background: #fff;
  margin-top: 100px;
  padding: 0;
}
.wg-tracks__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
  border: 1px solid #fff;
}
.wg-track {
  flex: 1 1 50%;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.wg-track__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.wg-track__subtitle {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.wg-track__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 26px;
  color: #6D8BA7;
  margin: 0;
}
.wg-track__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  background: #000;
  padding: 10px 20px;
  border-radius: 4px;
  text-decoration: none;
  align-self: flex-start;
  transition: background .2s;
}
.wg-track__btn:hover {
  background: #333;
}
.wg-track__divider {
  border: none;
  border-top: 1px solid #e0e0e0;
  margin: 8px 0;
}
.wg-track__partners-label {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
  margin: 0;
}
.wg-track__partners-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  align-items: center;
}
.wg-track__partners-grid img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.wg-map-head {
  background: #fff;
  padding: 100px 4% 0;
}
.wg-map-head__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.wg-map-head__label {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
}
.wg-map-head__subtitle {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}

.wg-map-legend {
  background: #fff;
  padding: 20px 4% 0;
}
.wg-map-legend__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}
.wg-map-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
}
.wg-map-legend__dot {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.wg-map-legend__dot--rs { fill: #EA5153; }
.wg-map-legend__dot--bk { fill: #1982C4; }
.wg-map-legend__dot--wbs { fill: #000; }

.wg-map {
  background: #fff;
  padding: 30px 4% 0;
}
.wg-map__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-map__canvas {
  width: 100%;
  height: 800px;
  border-radius: 8px;
  overflow: hidden;
  z-index: 1;
}

.wg-marker {
  border-radius: 50%;
  border: none !important;
}
.wg-marker--rs {
  background: #EA5153;
  box-shadow: 0 0 0 3px rgba(234,81,83,.35);
}
.wg-marker--bk {
  background: #1982C4;
  box-shadow: 0 0 0 3px rgba(25,130,196,.35);
}
.wg-marker--wbs {
  background: #000;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  box-shadow: 0 0 0 3px rgba(0,0,0,.2);
}

.wg-steckbrief {
  background: #fff;
  padding: 100px 4% 0;
}
.wg-steckbrief__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wg-steckbrief__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

.wg-facts {
  background: #fff;
  padding: 20px 4% 0;
}
.wg-facts__inner {
  max-width: 1262px;
  margin: 0 auto;
  display: flex;
  gap: 4px;
}
.wg-fact {
  flex: 1 1 0;
  background: #EDF4FC;
  border-radius: 12px;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.wg-fact__label {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.wg-fact__value {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
  color: #000;
  margin: 0;
}

.wg-contacts {
  background: #E1F3FF;
  margin-top: 150px;
  padding: 20px 0;
}
.wg-contacts__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 2px;
}
.wg-contact {
  flex: 1 1 50%;
  display: flex;
  gap: 0;
}
.wg-contact__left {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.wg-contact__program {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 30px;
  font-weight: 600;
  color: #000;
  padding: 0 0 8px 30px;
}
.wg-contact__photo {
  width: 200px;
  height: 200px;
  object-fit: cover;
  border-radius: 50%;
  margin-left: 30px;
}
.wg-contact__right {
  padding: 20px 20px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  justify-content: center;
}
.wg-contact__heading {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  color: #EA5153;
  margin: 0;
}
.wg-contact__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
  color: #6D8BA7;
  margin: 0;
}
.wg-contact__name {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.wg-contact__role {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}
.wg-contact__phone {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}
.wg-contact__email {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  margin: 0;
}
.wg-contact__email a {
  color: #EA5153;
  text-decoration: none;
}
.wg-contact__email a:hover {
  text-decoration: underline;
}

@media (max-width: 1024px) {
  .wg-hero__inner {
    flex-direction: column;
    padding: 0 4%;
  }
  .wg-hero {
    padding-top: 80px;
  }
  .wg-hero__image--desktop {
    display: none;
  }
  .wg-tracks__inner {
    flex-direction: column;
  }
  .wg-facts__inner {
    flex-wrap: wrap;
  }
  .wg-fact {
    flex: 1 1 calc(50% - 4px);
  }
  .wg-contacts {
    margin-top: 80px;
  }
  .wg-contacts__inner {
    flex-direction: column;
    padding: 0 4%;
  }
  .wg-profile-cards__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .wg-contact-card__headline {
    font-size: 30px;
  }
}

@media (max-width: 768px) {
  .wg-hero {
    padding-top: 60px;
  }
  .wg-hero__inner {
    padding: 0 20px;
  }
  .wg-hero__tagline {
    font-size: 20px;
  }
  .wg-intro,
  .wg-testimonial,
  .wg-infofilm,
  .wg-video {
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-intro__title,
  .wg-infofilm__title {
    font-size: 28px;
  }
  .wg-video__play {
    width: 48px;
    height: 48px;
  }
  .wg-tracks {
    margin-top: 50px;
  }
  .wg-tracks__inner {
    flex-direction: column;
  }
  .wg-track {
    padding: 20px 16px;
  }
  .wg-track__title {
    font-size: 28px;
  }
  .wg-track__subtitle {
    font-size: 22px;
  }
  .wg-track__text {
    font-size: 17px;
  }
  .wg-track__partners-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .wg-map-head {
    padding-top: 50px;
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-map-head__label {
    font-size: 28px;
  }
  .wg-map-legend {
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-map-legend__inner {
    gap: 16px;
  }
  .wg-map-legend__item {
    font-size: 15px;
  }
  .wg-map {
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-map__canvas {
    height: 350px;
  }
  .wg-steckbrief {
    padding-top: 50px;
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-steckbrief__title {
    font-size: 28px;
  }
  .wg-facts {
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-facts__inner {
    flex-direction: column;
  }
  .wg-fact {
    flex: 1 1 100%;
  }
  .wg-contacts {
    margin-top: 50px;
    padding: 20px 20px;
  }
  .wg-contacts__inner {
    flex-direction: column;
    gap: 30px;
    padding: 0;
  }
  .wg-contact {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .wg-contact__left {
    align-items: center;
  }
  .wg-contact__program {
    padding-left: 0;
  }
  .wg-contact__photo {
    margin-left: 0;
    width: 160px;
    height: 160px;
  }
  .wg-contact__right {
    padding: 16px 0 0;
    align-items: center;
  }
  .wg-profile-head,
  .wg-profile-cards,
  .wg-partners,
  .wg-contact-card {
    padding-left: 20px;
    padding-right: 20px;
  }
  .wg-profile-head {
    margin-top: 50px;
  }
  .wg-profile-cards__inner {
    grid-template-columns: 1fr;
  }
  .wg-partners {
    padding-top: 50px;
  }
  .wg-partners__title {
    font-size: 18px;
  }
  .wg-contact-card {
    margin-top: 70px;
  }
  .wg-contact-card__inner {
    grid-template-columns: 1fr;
    gap: 12px;
    padding-top: 16px;
  }
  .wg-contact-card__photo {
    max-width: 260px;
  }
  .wg-contact-card__content {
    padding: 8px 4px 24px;
  }
  .wg-contact-card__headline {
    font-size: 24px;
  }
  .wg-contact-card__name,
  .wg-contact-card__role,
  .wg-contact-card__phone,
  .wg-contact-card__mail {
    font-size: 18px;
  }
}

/* ===== wir2 page ===== */
.w2-hero {
  background: linear-gradient(180deg, #FCE1D2 59%, #fff 59%);
  padding: 160px 0 0;
}
.w2-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 10px;
  align-items: flex-end;
}
.w2-hero__text {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: 40px;
}
.w2-hero__logo {
  max-width: 380px;
  width: 100%;
  height: auto;
}
.w2-hero__tagline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: #000;
  margin: 0;
  line-height: 1.35;
}
.w2-hero__image {
  flex: 0 0 auto;
}
.w2-hero__image img {
  display: block;
  width: 280px;
  height: auto;
  border-radius: 12px;
}
.w2-hero__image--desktop img {
  width: 260px;
}

.w2-intro {
  background: #fff;
  padding: 3% 4% 1%;
}
.w2-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.w2-intro__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2-intro__subtitle {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: #F28B52;
  margin: 0;
  line-height: 1.4;
}
.w2-intro__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.5;
}

.w2-buttons {
  background: #fff;
  padding: 0 4%;
}
.w2-buttons__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.w2-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  background: #F28B52;
  padding: 12px 28px;
  border-radius: 4px;
  text-decoration: none;
  transition: background .2s;
}
.w2-btn:hover {
  background: #d38c3b;
}
.w2-btn__icon {
  width: 14px;
  height: 14px;
  fill: currentColor;
  flex-shrink: 0;
}

/* Programmziele */
.w2-goals {
  background: #fff;
  padding: 0 4%;
  margin-top: 60px;
}
.w2-goals__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2-goals__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: #F28B52;
  margin: 0 0 20px;
}
.w2-goals__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.w2-goals__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  line-height: 1.4;
}
.w2-goals__icon {
  width: 20px;
  height: 20px;
  fill: #F28B52;
  flex-shrink: 0;
  margin-top: 3px;
}

/* Photo gallery */
.w2-gallery {
  background: linear-gradient(180deg, #fff 66%, #EDF4FC 55%);
  margin-top: 60px;
}
.w2-gallery__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
  min-height: 387px;
}
.w2-gallery__img {
  flex: 1 1 0;
  overflow: hidden;
}
.w2-gallery__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Versorgungsmodell heading */
.w2-versorgung-head {
  background: #EDF4FC;
  padding: 60px 4%;
}
.w2-versorgung-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2-versorgung-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: #F28B52;
  margin: 0;
}

/* Versorgungsmodell 3 cards */
.w2-versorgung {
  background: #EDF4FC;
  padding: 0 4% 30px;
}
.w2-versorgung__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
  flex-wrap: wrap;
}
.w2-versorgung__card {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  padding: 24px 20px;
  text-align: center;
}
.w2-versorgung__divider {
  border: none;
  border-top: 1px solid #6D8BA7;
  margin: 12px 20%;
}
.w2-versorgung__name {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0 0 6px;
}
.w2-versorgung__sub {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0 0 8px;
}
.w2-versorgung__desc {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 8px 0;
  line-height: 1.4;
}
.w2-versorgung__highlight {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #000;
  margin: 2px 0;
}
.w2-versorgung__detail {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 10px 0;
  line-height: 1.4;
}
.w2-versorgung__funder {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #F28B52;
  margin: 4px 0 0;
}

/* wir2ambulant Module heading */
.w2-module-head {
  background: #EDF4FC;
  padding: 0 4%;
  margin-top: -12px;
}
.w2-module-head__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
}
.w2-module-head__left {
  display: flex;
  align-items: center;
  gap: 14px;
}
.w2-module-head__arrow {
  width: 28px;
  height: 28px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2-module-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: #F28B52;
  margin: 0;
  line-height: 1.3;
}

/* Rahmenbedingungen */
.w2-rahmen {
  background: #EDF4FC;
  padding: 2% 4% 3%;
}
.w2-rahmen__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.w2-rahmen__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2-rahmen__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.w2-rahmen__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  line-height: 1.4;
}
.w2-rahmen__icon {
  width: 22px;
  height: 22px;
  fill: #F28B52;
  flex-shrink: 0;
  margin-top: 2px;
}

/* wir2-Training row */
.w2-training {
  background: #EDF4FC;
  padding: 0 4%;
}
.w2-training__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  gap: 11px;
}
.w2-training__info {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding: 20px 0;
}
.w2-training__heading {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2-training__sub {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.3;
}
.w2-training__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
}
.w2-training__arrow-icon {
  width: 32px;
  height: 32px;
  fill: #F28B52;
}
.w2-training__arrow-icon--right {
  display: block;
}
.w2-training__arrow-icon--down {
  display: none;
}
.w2-training__module {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 20px 8px;
  gap: 6px;
}
.w2-training__mod-title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2-training__mod-desc {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 15px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.3;
}
.w2-training__mod-session {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 15px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.3;
}

/* Inhaltliche Ausrichtung */
.w2-inhalt {
  background: rgba(129, 183, 234, 0.14);
  padding: 60px 4% 30px;
}
.w2-inhalt__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.w2-inhalt__heading {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: #F28B52;
  margin: 0;
  line-height: 1.4;
}
.w2-inhalt__text {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.5;
}

/* Kooperationsmodell heading */
.w2-koop-head {
  background: #fff;
  padding: 10px 4%;
  margin-top: 90px;
}
.w2-koop-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2-koop-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

/* Kooperationspartner 2-col */
.w2-koop {
  background: #fff;
  padding: 5px 4% 0;
  margin-top: 5px;
}
.w2-koop__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.w2-koop__text {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding-right: 30px;
}
.w2-koop__paragraph {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.5;
}
.w2-koop__image {
  flex: 1 1 0;
}
.w2-koop__image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
}

/* Förderer und Partner */
.w2-foerderer {
  background: #fff;
  padding: 10px 4%;
  margin-top: 90px;
}
.w2-foerderer__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.w2-foerderer__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}
.w2-foerderer__grid {
  display: flex;
  gap: 20px;
}
.w2-foerderer__item {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.w2-foerderer__item img {
  max-width: 300px;
  width: 100%;
  height: auto;
}
.w2-foerderer__desc {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.4;
}

/* Weitere Informationen heading */
.w2-weitere-head {
  background: #fff;
  padding: 10px 4%;
  margin-top: 130px;
}
.w2-weitere-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2-weitere-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

/* Info cards 2-col */
.w2-infocards {
  background: #fff;
  padding: 10px 4%;
}
.w2-infocards__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
}
.w2-infocards__card {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 10px 20px 10px 0;
}
.w2-infocards__icon {
  width: 36px;
  height: 36px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2-infocards__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2-infocards__desc {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.5;
}

/* Contact card */
.w2-contact {
  background: #FCE1D2;
  padding: 0 4%;
  margin-top: 150px;
  min-height: 323px;
}
.w2-contact__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 0;
  align-items: stretch;
}
.w2-contact__photo {
  flex: 0 0 auto;
}
.w2-contact__photo img {
  display: block;
  width: 280px;
  height: auto;
}
.w2-contact__info {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding: 30px 0 30px 40px;
}
.w2-contact__quote {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  color: #000;
  margin: 0 0 12px;
  line-height: 1.4;
}
.w2-contact__name {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2-contact__role,
.w2-contact__phone {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
  margin: 0;
}
.w2-contact__email {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  margin: 0;
}
.w2-contact__email a {
  color: #F28B52;
  text-decoration: underline;
}
.w2-contact__email a:hover {
  color: #d38c3b;
}

/* ===================== wir2-veranstaltungen page ===================== */

/* Hero */
.w2v-hero {
  background: linear-gradient(180deg, #FCE1D2 60%, #fff 60%);
  padding: 140px 4% 0;
}
.w2v-hero__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  gap: 30px;
  align-items: stretch;
}
.w2v-hero__text {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
}
.w2v-hero__logo {
  max-width: 420px;
  width: 100%;
  height: auto;
}
.w2v-hero__tagline {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.4;
}
.w2v-hero__image {
  flex: 1 1 50%;
}
.w2v-hero__image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
}

/* Section heading */
.w2v-section-head {
  background: #fff;
  padding: 10px 4%;
  margin-top: 3%;
}
.w2v-section-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-section-head__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 40px;
  font-weight: 600;
  color: #000;
  margin: 0;
}

/* Standortkarte */
.w2v-standort {
  background: #fff;
  padding: 10px 4%;
}
.w2v-standort__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-standort__label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}
.w2v-standort__icon {
  width: 20px;
  height: 20px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2v-standort__label-text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
}
.w2v-standort__desc {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.5;
}

/* Legend row */
.w2v-legend {
  background: #fff;
  padding: 10px 4%;
}
.w2v-legend__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.w2v-legend__item {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 0;
}
.w2v-legend__dot {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.w2v-legend__dot--ambulant {
  fill: #F28B52;
}
.w2v-legend__dot--kompakt {
  fill: #8BC926;
}
.w2v-legend__dot--stiftung {
  fill: #EA5153;
}
.w2v-legend__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000;
}

/* Map embed */
.w2v-map {
  background: #fff;
  padding: 10px 4% 40px;
}
.w2v-map__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-map__frame {
  width: 100%;
  height: 1300px;
  border: none;
  display: block;
}

/* Literatur section */
.w2v-literatur {
  background: #fff;
  padding: 10px 4%;
  margin-top: 40px;
}
.w2v-literatur__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-literatur__label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}
.w2v-literatur__icon {
  width: 20px;
  height: 20px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2v-literatur__label-text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
}
.w2v-literatur__desc {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0 0 24px;
  line-height: 1.5;
}

/* Accordion */
.w2v-accordion {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.w2v-accordion__item {
  border-bottom: 1px solid #dcdcdc;
}
.w2v-accordion__item:first-child {
  border-top: 1px solid #dcdcdc;
}
.w2v-accordion__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 0;
  cursor: pointer;
  list-style: none;
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
}
.w2v-accordion__title::-webkit-details-marker {
  display: none;
}
.w2v-accordion__title::marker {
  content: '';
}
.w2v-accordion__plus,
.w2v-accordion__minus {
  width: 18px;
  height: 18px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2v-accordion__minus {
  display: none;
}
.w2v-accordion__item[open] .w2v-accordion__plus {
  display: none;
}
.w2v-accordion__item[open] .w2v-accordion__minus {
  display: block;
}
.w2v-accordion__body {
  padding: 0 0 20px;
}
.w2v-accordion__body h5 {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0 0 12px;
  line-height: 1.6;
}
.w2v-accordion__body h5:last-child {
  margin-bottom: 0;
}
.w2v-accordion__body a {
  color: #6D8BA7;
  text-decoration: none;
}
.w2v-accordion__body a:hover {
  color: #F28B52;
  text-decoration: underline;
}

/* Veranstaltungen events section */
.w2v-events {
  background: #FCE1D2;
  padding: 30px 4% 60px;
}
.w2v-events__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-events__header {
  margin-bottom: 24px;
}
.w2v-events__label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}
.w2v-events__icon {
  width: 20px;
  height: 20px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2v-events__label-text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
}
.w2v-events__desc {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
  line-height: 1.5;
}
.w2v-events__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.w2v-events__col {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px 20px 20px 0;
}
.w2v-events__col-title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.w2v-events__dates {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.w2v-events__dates li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  color: #000;
}
.w2v-events__bullet {
  width: 10px;
  height: 10px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2v-events__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #F28B52;
  color: #fff;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  padding: 10px 20px;
  border-radius: 4px;
  text-decoration: none;
  width: fit-content;
  transition: background .2s;
}
.w2v-events__btn:hover {
  background: #d97a45;
}
.w2v-events__btn svg {
  width: 14px;
  height: 14px;
  fill: #fff;
  flex-shrink: 0;
}
.w2v-events__mailto {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0;
}
.w2v-events__mailto a {
  color: #6D8BA7;
  text-decoration: underline;
}
.w2v-events__mailto a:hover {
  color: #F28B52;
}

/* Literatur und nuetzliche Links heading */
.w2v-lit-head {
  background: #fff;
  padding: 10px 4%;
  margin-top: 3%;
}
.w2v-lit-head__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-lit-head__label {
  display: flex;
  align-items: center;
  gap: 10px;
}
.w2v-lit-head__icon {
  width: 20px;
  height: 20px;
  fill: #F28B52;
  flex-shrink: 0;
}
.w2v-lit-head__text {
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #000;
}

/* Divider */
.w2v-divider {
  padding: 0 4%;
}
.w2v-divider__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-divider__line {
  border: none;
  border-top: 1px solid #dcdcdc;
  margin: 0;
}

/* Weitere Infos section */
.w2v-infos {
  background: #fff;
  padding: 10px 4%;
  margin-top: 40px;
}
.w2v-infos__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.w2v-infos__card {
  background: #EDF4FC;
  border-radius: 8px;
  padding: 30px 30px 30px 30px;
}
.w2v-infos__title {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  color: #000;
  margin: 0 0 8px;
}
.w2v-infos__desc {
  font-family: 'Gelasio', Georgia, serif;
  font-size: 18px;
  font-weight: 400;
  color: #6D8BA7;
  margin: 0 0 16px;
  line-height: 1.5;
}
.w2v-infos__links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.w2v-infos__links li a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  color: #F28B52;
  text-decoration: none;
  transition: color .2s;
}
.w2v-infos__links li a:hover {
  color: #d97a45;
  text-decoration: underline;
}
.w2v-infos__links li a svg {
  width: 14px;
  height: 14px;
  fill: #F28B52;
  flex-shrink: 0;
}

@media (max-width: 1024px) {
  .w2-hero {
    padding-top: 100px;
  }
  .w2-hero__inner {
    flex-wrap: wrap;
    padding: 0 4%;
  }
  .w2-hero__text {
    flex: 1 1 100%;
  }
  .w2-hero__image--desktop {
    display: none;
  }
  .w2-hero__image img {
    width: 240px;
  }
  .w2-intro__title {
    font-size: 32px;
  }
  .w2-gallery__img--desktop {
    display: none;
  }
  .w2-gallery__inner {
    min-height: 260px;
  }
  .w2-versorgung__card {
    flex: 1 1 100%;
  }
  .w2-rahmen__title {
    font-size: 32px;
  }
  .w2-training__inner {
    flex-wrap: wrap;
  }
  .w2-training__info {
    flex: 1 1 100%;
  }
  .w2-training__arrow-icon--right {
    display: none;
  }
  .w2-training__arrow-icon--down {
    display: block;
  }
  .w2-training__module {
    flex: 1 1 40%;
  }
  .w2-koop-head__title {
    font-size: 32px;
  }
  .w2-koop__inner {
    flex-direction: column;
  }
  .w2-koop__text {
    padding-right: 0;
  }
  .w2-foerderer__grid {
    flex-wrap: wrap;
  }
  .w2-foerderer__item {
    flex: 1 1 40%;
  }
  .w2-weitere-head__title {
    font-size: 32px;
  }
  .w2-contact__photo img {
    width: 220px;
  }
  .w2-contact__quote {
    font-size: 20px;
  }
  .w2v-hero {
    padding-top: 100px;
  }
  .w2v-hero__inner {
    flex-wrap: wrap;
  }
  .w2v-hero__text {
    flex: 1 1 100%;
  }
  .w2v-hero__image {
    flex: 1 1 100%;
  }
  .w2v-section-head__title {
    font-size: 32px;
  }
  .w2v-map__frame {
    height: 900px;
  }
  .w2v-events__grid {
    gap: 20px;
  }
  .w2v-events__col {
    flex: 1 1 280px;
  }
  .w2v-accordion__title {
    font-size: 18px;
  }
}

@media (max-width: 768px) {
  .w2-hero {
    padding-top: 80px;
    background: linear-gradient(180deg, #FCE1D2 50%, #fff 50%);
  }
  .w2-hero__inner {
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
  }
  .w2-hero__text {
    align-items: center;
    text-align: center;
  }
  .w2-hero__logo {
    max-width: 260px;
  }
  .w2-hero__tagline {
    font-size: 20px;
  }
  .w2-hero__image img {
    width: 200px;
  }
  .w2-intro {
    padding: 40px 20px 20px;
  }
  .w2-intro__title {
    font-size: 28px;
  }
  .w2-intro__subtitle {
    font-size: 20px;
  }
  .w2-intro__text {
    font-size: 18px;
  }
  .w2-buttons {
    padding: 0 20px;
  }
  .w2-buttons__inner {
    flex-direction: column;
    gap: 12px;
  }
  .w2-btn {
    justify-content: center;
  }
  .w2-goals {
    margin-top: 40px;
    padding: 0 20px;
  }
  .w2-goals__item {
    font-size: 18px;
  }
  .w2-gallery {
    margin-top: 40px;
  }
  .w2-gallery__inner {
    min-height: 200px;
  }
  .w2-versorgung-head {
    padding: 40px 20px;
  }
  .w2-versorgung {
    padding: 0 20px 20px;
  }
  .w2-versorgung__card {
    flex: 1 1 100%;
    padding: 16px 0;
  }
  .w2-module-head {
    padding: 0 20px;
  }
  .w2-module-head__title {
    font-size: 20px;
  }
  .w2-rahmen {
    padding: 30px 20px;
  }
  .w2-rahmen__title {
    font-size: 28px;
  }
  .w2-rahmen__item {
    font-size: 18px;
  }
  .w2-training {
    padding: 0 20px;
  }
  .w2-training__inner {
    flex-wrap: wrap;
  }
  .w2-training__info {
    flex: 1 1 100%;
  }
  .w2-training__arrow {
    flex: 1 1 100%;
    padding: 10px 0;
  }
  .w2-training__arrow-icon--right {
    display: none;
  }
  .w2-training__arrow-icon--down {
    display: block;
  }
  .w2-training__module {
    flex: 1 1 100%;
  }
  .w2-inhalt {
    padding: 40px 20px 20px;
  }
  .w2-inhalt__heading {
    font-size: 20px;
  }
  .w2-inhalt__text {
    font-size: 18px;
  }
  .w2-koop-head {
    margin-top: 50px;
    padding: 10px 20px;
  }
  .w2-koop-head__title {
    font-size: 28px;
  }
  .w2-koop {
    padding: 5px 20px 0;
  }
  .w2-koop__inner {
    flex-direction: column;
    gap: 20px;
  }
  .w2-koop__text {
    padding-right: 0;
  }
  .w2-koop__paragraph {
    font-size: 18px;
  }
  .w2-foerderer {
    margin-top: 50px;
    padding: 10px 20px;
  }
  .w2-foerderer__grid {
    flex-direction: column;
    gap: 24px;
  }
  .w2-weitere-head {
    margin-top: 60px;
    padding: 10px 20px;
  }
  .w2-weitere-head__title {
    font-size: 28px;
  }
  .w2-infocards {
    padding: 10px 20px;
  }
  .w2-infocards__inner {
    flex-direction: column;
    gap: 30px;
  }
  .w2-infocards__card {
    padding: 0;
  }
  .w2-infocards__desc {
    font-size: 18px;
  }
  .w2v-events__grid {
    flex-direction: column;
    gap: 30px;
  }
  .w2v-events__col {
    padding: 0;
  }
  .w2v-events__desc {
    font-size: 17px;
  }
  .w2v-events__col-title {
    font-size: 18px;
  }
  .w2v-lit-head {
    padding: 10px 20px;
  }
  .w2v-infos {
    padding: 10px 20px;
  }
  .w2v-infos__card {
    padding: 20px;
  }
  .w2v-infos__title {
    font-size: 20px;
  }
  .w2v-infos__desc {
    font-size: 16px;
  }
  .w2-contact {
    margin-top: 60px;
    min-height: auto;
  }
  .w2-contact__inner {
    flex-direction: column;
    align-items: center;
  }
  .w2-contact__photo img {
    width: 200px;
  }
  .w2-contact__info {
    padding: 20px 0;
    align-items: center;
    text-align: center;
  }
  .w2-contact__quote {
    font-size: 20px;
  }
  .w2v-hero {
    padding-top: 80px;
    background: linear-gradient(180deg, #FCE1D2 50%, #fff 50%);
  }
  .w2v-hero__inner {
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
  }
  .w2v-hero__text {
    align-items: center;
    text-align: center;
  }
  .w2v-hero__logo {
    max-width: 280px;
  }
  .w2v-hero__tagline {
    font-size: 20px;
  }
  .w2v-section-head {
    padding: 10px 20px;
  }
  .w2v-section-head__title {
    font-size: 28px;
  }
  .w2v-standort {
    padding: 10px 20px;
  }
  .w2v-legend {
    padding: 10px 20px;
  }
  .w2v-legend__inner {
    flex-direction: column;
    gap: 6px;
  }
  .w2v-map {
    padding: 10px 20px 30px;
  }
  .w2v-map__frame {
    height: 500px;
  }
  .w2v-literatur {
    padding: 10px 20px;
    margin-top: 20px;
  }
  .w2v-accordion__title {
    font-size: 16px;
    padding: 14px 0;
  }
  .w2v-accordion__body h5 {
    font-size: 16px;
  }
}

/* Jahresjournal */
.wbs-journal {
  background: #fff;
  padding: 0 50px;
}
.wbs-journal__inner {
  max-width: 1250px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: center;
}
.wbs-journal__text {
  flex: 1;
  padding-right: 40px;
}
.wbs-journal__text p {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0;
}
.wbs-journal__image {
  flex: 1;
  text-align: center;
}
.wbs-journal__img {
  width: 100%;
  max-width: 600px;
  height: auto;
  display: block;
  margin: 0 auto;
}
.wbs-journal__caption {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 0.85rem;
  color: #59595b;
  margin-top: 8px;
}

/* Section Divider */
.wbs-section-divider {
  margin-top: 60px;
  padding: 15px 50px;
}
.wbs-section-divider__inner {
  max-width: 1250px;
  margin: 0 auto;
  height: 1.1px;
  background: #6D8BA7;
}

/* Programs Intro */
.wbs-programs-intro {
  padding: 0 50px;
  margin-top: 0;
}
.wbs-programs-intro__inner {
  max-width: 1250px;
  margin: 0 auto;
}
.wbs-programs-intro__text {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 0.95rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin: 0;
}

/* Interactive Program Showcase */
.wbs-showcase {
  padding: 30px 0 0;
}
.wbs-showcase__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 48px;
  border-left: 48px solid #fff;
  border-right: 48px solid #fff;
}
.wbs-showcase__heading {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.25rem;
  font-weight: 400;
  color: #000;
  margin: 0 0 30px;
}
.wbs-showcase__split {
  display: flex;
  gap: 0;
  min-height: 500px;
}
.wbs-showcase__items {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.wbs-showcase__item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 24px;
  text-decoration: none;
  color: #000;
  border-bottom: 1px solid #e8e8e8;
  transition: background 0.2s;
  position: relative;
}
.wbs-showcase__item:first-child {
  border-top: 1px solid #e8e8e8;
}
.wbs-showcase__item-title {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.5rem;
  font-weight: 600;
  color: #000;
  transition: color 0.2s;
}
.wbs-showcase__item-desc {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-size: 0.9rem;
  color: #59595b;
  line-height: 1.5;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.35s ease, opacity 0.25s ease, padding 0.25s ease;
}
.wbs-showcase__item--active .wbs-showcase__item-title {
  color: #EA5153;
}
.wbs-showcase__item--active .wbs-showcase__item-desc {
  max-height: 120px;
  opacity: 1;
  padding-top: 4px;
}
.wbs-showcase__item::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 2px;
  background: #EA5153;
  transition: width 0.3s;
}
.wbs-showcase__item--active::after {
  width: 100%;
}

/* Showcase Images */
.wbs-showcase__images {
  flex: 1;
  position: relative;
  overflow: hidden;
  border-radius: 4px;
}
.wbs-showcase__img {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.4s ease;
}
.wbs-showcase__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
}
.wbs-showcase__img--active {
  opacity: 1;
  z-index: 1;
}

/* WBS Contact Person */
.wbs-contact-person {
  padding: 60px 0 80px;
  background: #EDF4FC;
  margin-top: 60px;
}
.wbs-contact-person__inner {
  max-width: 1250px;
  margin: 0 auto;
  padding: 0 50px;
  display: flex;
  align-items: center;
  gap: 48px;
}
.wbs-contact-person__photo {
  flex-shrink: 0;
}
.wbs-contact-person__img {
  width: 240px;
  height: 240px;
  border-radius: 50%;
  object-fit: cover;
}
.wbs-contact-person__info {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.wbs-contact-person__quote {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: #000;
  line-height: 1.6;
  margin-bottom: 12px;
}
.wbs-contact-person__name {
  font-family: 'Gelasio', 'Georgia', serif;
  font-size: 1.1rem;
  font-weight: 600;
  color: #000;
  margin: 0;
}
.wbs-contact-person__role {
  font-size: 0.95rem;
  color: #59595b;
  margin: 0;
}
.wbs-contact-person__phone {
  font-size: 0.95rem;
  color: #59595b;
  margin: 0;
}
.wbs-contact-person__email {
  font-size: 0.95rem;
  color: #EA5153;
  text-decoration: underline;
  font-weight: 500;
}
.wbs-contact-person__email:hover {
  color: #c0392b;
}

/* WBS Responsive */
@media (max-width: 768px) {
  .wbs-hero {
    padding: 90px 20px 0;
  }
  .wbs-hero__title {
    font-size: 1.8rem;
  }
  .wbs-subtitle {
    padding: 0 20px 20px;
  }
  .wbs-subtitle__text {
    font-size: 1.3rem;
  }
  .wbs-mv {
    padding: 0 20px;
  }
  .wbs-mv__inner {
    flex-direction: column;
  }
  .wbs-mv__box {
    padding: 30px 24px;
  }
  .wbs-section-divider {
    padding: 15px 20px;
    margin-top: 40px;
  }
  .wbs-programs-intro {
    padding: 0 20px;
  }
  .wbs-showcase__inner {
    padding: 0 20px;
    border-left: none;
    border-right: none;
  }
  .wbs-showcase__split {
    flex-direction: column;
    min-height: auto;
  }
  .wbs-showcase__images {
    min-height: 300px;
    margin-top: 20px;
    border-radius: 8px;
  }
  .wbs-contact-person__inner {
    flex-direction: column;
    text-align: center;
    gap: 24px;
    padding: 0 20px;
  }
  .wbs-contact-person__img {
    width: 180px;
    height: 180px;
  }
  .wbs-stifter {
    padding: 60px 20px 0;
  }
  .wbs-stifter__title {
    font-size: 1.6rem;
  }
  .wbs-stifter-content {
    padding: 0 20px;
  }
  .wbs-stifter-content__inner {
    flex-direction: column;
  }
  .wbs-stifter-content__text {
    padding: 20px 0;
  }
  .wbs-stats {
    padding: 40px 20px;
  }
  .wbs-stats__inner {
    flex-wrap: wrap;
    gap: 30px;
  }
  .wbs-stats__item {
    flex: 1 1 40%;
  }
  .wbs-stats__value,
  .wbs-stats__prefix {
    font-size: 2rem;
  }
  .wbs-journal {
    padding: 0 20px;
  }
  .wbs-journal__inner {
    flex-direction: column;
  }
  .wbs-journal__text {
    padding-right: 0;
    padding-bottom: 20px;
  }
  .prog-hero {
    padding: 0 20px;
  }
  .prog-hero__title {
    font-size: 1.8rem;
  }
  .prog-intro {
    padding: 40px 20px 20px;
  }
  .org-hero {
    padding: 0 20px;
  }
  .org-hero__title {
    font-size: 1.8rem;
  }
  .org-intro {
    padding: 40px 20px 20px;
  }
  .org-vorstand {
    padding: 60px 20px 0;
  }
  .org-vorstand__title {
    font-size: 1.6rem;
  }
  .org-photo {
    padding: 10px 20px 0;
  }
  .org-bios {
    padding: 0 20px;
  }
  .org-bios__inner {
    flex-direction: column;
  }
  .org-bios__card {
    width: 100%;
    padding: 30px 20px;
  }
  .org-stiftungsrat {
    padding: 40px 20px 0;
  }
  .org-stiftungsrat__title {
    font-size: 1.6rem;
  }
  .org-member {
    padding: 20px 20px 40px;
  }
  .org-member__inner {
    flex-direction: column;
  }
  .org-member__photo {
    width: 100%;
  }
  .org-member__bio {
    padding-left: 0;
    padding-top: 20px;
  }
  .org-team-title {
    padding: 60px 20px 0;
  }
  .org-team-title__heading {
    font-size: 1.6rem;
  }
  .org-team {
    padding: 20px 20px 40px;
  }
  .org-team__card {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 10px;
  }
  /* Partner responsive */
  .ptr-spacer {
    height: 40px;
  }
  .ptr-hero {
    padding: 0 20px;
  }
  .ptr-hero__title {
    font-size: 1.6rem;
  }
  .ptr-intro {
    padding: 40px 20px 20px;
  }
  .ptr-intro__text {
    font-size: 1rem;
  }
  .ptr-logos {
    padding: 30px 0;
  }
  .ptr-logos__slide {
    width: 150px;
  }
  .ptr-logos__track {
    gap: 30px;
  }
  .ptr-detail {
    padding: 0 20px;
    margin-top: 50px;
  }
  .ptr-detail__inner {
    flex-direction: column;
  }
  .ptr-detail__logo {
    width: 100%;
    max-width: 250px;
    padding-right: 0;
    margin-bottom: 20px;
  }
  .ptr-divider {
    padding: 0 20px;
    margin-top: 30px;
  }
  /* Generation Alpha responsive */
  .ga-spacer {
    height: auto;
    min-height: 80px;
    padding: 0 20px 15px;
  }
  .ga-spacer__title {
    font-size: 1.5rem;
  }
  .ga-hero {
    padding: 0 20px 20px;
  }
  .ga-gallery {
    padding: 0 20px;
  }
  .ga-gallery__grid {
    columns: 2;
  }
  .ga-intro {
    padding: 0 20px;
  }
  .ga-event {
    padding: 30px 20px 0;
  }
  .ga-quote-row {
    padding: 40px 20px 0;
  }
  .ga-quote-row__inner {
    flex-direction: column;
  }
  .ga-impressions-heading {
    padding: 60px 20px 0;
  }
  .ga-testimonials {
    padding: 20px 20px 0;
  }
  .ga-testimonials__inner {
    flex-direction: column;
    gap: 30px;
  }
  .ga-cta {
    margin-top: 40px;
    padding: 0 20px;
  }
  .ga-cta__inner {
    flex-direction: column;
  }
  .ga-cta__icon-img {
    max-width: 200px;
    margin-bottom: 20px;
  }
  .ga-bottom {
    margin-top: 40px;
    padding: 0 20px 40px;
  }
  .ga-bottom__inner {
    flex-direction: column;
  }
  .ga-bottom__gallery {
    margin-bottom: 30px;
  }
  /* Zahlen Daten Fakten responsive */
  .zdf-carousel {
    margin-top: 40px;
    padding: 0 20px;
  }
  .zdf-intro {
    margin-top: 20px;
    padding: 0 20px;
  }
  .zdf-cards {
    margin-top: 20px;
    padding: 0 20px;
  }
  .zdf-cards__inner {
    flex-direction: column;
  }
  .zdf-cards__item {
    padding: 20px 0;
  }
  .zdf-survey-heading {
    margin-top: 40px;
    padding: 0 20px;
  }
  .zdf-progress {
    padding: 0 20px;
  }
  .zdf-grid {
    margin-top: 40px;
  }
  .zdf-grid__col {
    flex: 1 1 100%;
  }
  .zdf-experts-heading {
    padding: 40px 20px 0;
  }
  .zdf-testimonials {
    padding: 20px 20px 30px;
  }
  .zdf-testimonials__slide {
    min-width: 100%;
  }
  .zdf-testimonials__arrow--prev { left: 0; }
  .zdf-testimonials__arrow--next { right: 0; }
  .zdf-weiterlesen {
    padding: 40px 20px 0;
  }
  .zdf-reading {
    padding: 0 20px;
  }
  .zdf-reading__card {
    flex: 1 1 100%;
    padding-right: 0;
  }
  .blog-hero {
    padding: 0 20px 25px;
  }
  .blog-feature {
    margin-top: 40px;
    padding: 0 20px;
  }
  .blog-feature__inner {
    flex-direction: column;
  }
  .blog-feature__left {
    min-height: 260px;
  }
  .blog-heading {
    padding: 40px 20px 0;
  }
  .blog-filter {
    padding: 20px 20px 10px;
    justify-content: flex-start;
  }
  .blog-grid {
    padding: 0 20px 40px;
    margin-bottom: 40px;
  }
  .blog-grid__inner {
    grid-template-columns: 1fr;
  }
  .blog-pagination {
    padding: 0 20px 40px;
  }
  .medien-hero {
    padding: 40px 20px 25px;
  }
  .medien-hero__title {
    font-size: 28px;
  }
  .medien-copyright {
    padding: 10px 20px 20px;
  }
  .medien-section-heading {
    padding: 10px 20px;
    margin-top: 40px;
  }
  .medien-section-heading__title {
    font-size: 28px;
  }
  .medien-entry {
    padding: 10px 20px;
  }
  .medien-entry__text {
    font-size: 17px;
  }
  .ang-hero {
    padding: 0 20px;
  }
  .ang-hero__inner {
    flex-direction: column;
    gap: 25px;
  }
  .ang-hero__logo {
    max-width: 320px;
    margin-bottom: 20px;
  }
  .ang-hero__heading {
    font-size: 22px;
  }
  .ang-hero__right {
    min-height: 260px;
  }
  .ang-intro {
    padding: 40px 20px 20px;
  }
  .ang-intro__inner {
    padding: 0;
  }
  .ang-intro__title {
    font-size: 26px;
    margin-bottom: 20px;
  }
  .ang-intro__subtitle {
    font-size: 18px;
  }
  .ang-intro__text {
    font-size: 16px;
  }
  .ang-standorte {
    padding: 20px 20px;
  }
  .ang-standorte__inner {
    padding: 0;
  }
  .ang-standorte__subtitle {
    font-size: 18px;
  }
  .ang-standorte__text {
    font-size: 16px;
  }
  .ang-cities {
    padding: 10px 20px;
  }
  .ang-cities__inner {
    flex-direction: column;
  }
  .ang-cities__card {
    min-height: 220px;
  }
  .ang-prog {
    padding: 0 20px 10px;
    margin-top: 40px;
  }
  .ang-prog__inner {
    padding: 0;
  }
  .ang-prog__subtitle {
    font-size: 18px;
  }
  .ang-prog__text {
    font-size: 16px;
  }
  .ang-topics {
    padding: 10px 20px 30px;
  }
  .ang-topics__inner {
    padding: 0;
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .ang-topics__item {
    font-size: 16px;
  }
  .ang-voices-heading {
    padding: 40px 20px 10px;
  }
  .ang-voices-heading__title {
    font-size: 26px;
  }
  .ang-voices-city {
    padding: 25px 20px 0;
  }
  .ang-voices-city__title {
    font-size: 22px;
  }
  .ang-testimonials {
    padding: 0 20px 30px;
  }
  .ang-testimonials__inner {
    flex-direction: column-reverse;
    min-height: auto;
  }
  .ang-testimonials__left,
  .ang-testimonials__right {
    flex: 1 1 100%;
  }
  .ang-testimonials__right {
    min-height: 260px;
  }
  .ang-testimonials__carousel {
    padding: 0 34px;
  }
  .ang-testimonials__slide {
    flex: 0 0 100%;
  }
  .ang-wirkung {
    padding: 0 20px 10px;
    margin-top: 50px;
  }
  .ang-wirkung__inner {
    padding: 0;
  }
  .ang-wirkung__title {
    font-size: 26px;
  }
  .ang-wirkung__text {
    font-size: 16px;
  }
  .ang-impact {
    padding: 20px 20px;
  }
  .ang-impact__inner {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .ang-impact__card {
    min-height: 220px;
  }
  .ang-impact__label {
    font-size: 18px;
  }
  .ang-download {
    padding: 50px 20px 0;
  }
  .ang-partners {
    padding: 30px 20px 40px;
  }
  .ang-partners__inner {
    gap: 15px;
  }
  .ang-partners__item {
    flex: 1 1 45%;
    min-width: 140px;
  }
  .ang-contacts-heading {
    padding: 50px 20px 0;
  }
  .ang-contacts-heading__title {
    font-size: 20px;
  }
  .ang-contacts {
    padding: 20px 20px 0;
  }
  .ang-contacts__inner {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .ang-contacts__card {
    padding: 30px 22px;
    min-height: auto;
  }
  .ang-contacts__city {
    font-size: 20px;
  }
  .ang-wbs-contact {
    margin-top: 80px;
  }
  .ang-wbs-contact__inner {
    flex-direction: column;
  }
  .ang-wbs-contact__left {
    width: 100%;
    max-height: 260px;
  }
  .ang-wbs-contact__right {
    padding: 30px 20px;
  }
  .ang-wbs-contact__title {
    font-size: 18px;
  }
}

/* ===== Back to Top ===== */
.back-to-top {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-md);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s, background 0.2s;
  z-index: 50;
}
.back-to-top.visible {
  opacity: 1;
  visibility: visible;
}
.back-to-top:hover {
  background: #002244;
}
