:root {  --color-primary: #F39200;    --color-secondary: #1F2328;  --color-footer-bg: #383E42;  --color-background: #FFFFFF;    --flaeche-neutral: #F7F7F8;  --color-surface: #FFFFFF;  --color-text: #3A3F44;  --color-text-kopfteil: #1F2328;  --font-heading: Georgia, 'Times New Roman', Times, serif;  --font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;  --radius: 16px;}* { box-sizing: border-box; }html, body {  height: 100%;}body {  margin: 0;  padding: 0;  background: var(--color-background);  color: var(--color-text);  font-family: var(--font-body);  line-height: 1.6;  display: flex;  flex-direction: column;  min-height: 100vh;  min-height: 100dvh;}main {  flex: 1 0 auto;  display: flex;  flex-direction: column;}main > section { flex: 1 0 auto; }.site-footer { flex: none; }h1, h2, h3 {  font-family: var(--font-heading);  font-weight: 700;  margin: 0 0 0.4em;  color: var(--color-secondary);}h1 { font-size: 2.4rem; }h2 { font-size: 1.7rem; }p { margin: 0 0 1em; }a { color: var(--color-primary); text-decoration: none; }a:hover { text-decoration: underline; }.container {  max-width: 70rem;  margin: 0 auto;  padding: 0 1.5rem;}.bg-alt { background: var(--flaeche-neutral); }.site-header {  position: sticky;  top: 0;  background: var(--color-surface);  border-bottom: 1px solid rgba(0,0,0,0.07);  z-index: 10;}.header-inner {  padding-top: 18px;  padding-bottom: 18px;  display: flex;  align-items: center;  justify-content: space-between;}.logo {  display: inline-flex;  align-items: center;  font-family: var(--font-heading);  font-size: 1.4rem;  font-weight: 800;  color: var(--color-primary);}.logo:hover { text-decoration: none; }.site-logo-img {  height: 80px;   width: auto;  display: block;}.nav-toggle {  display: none;  flex-direction: column;  justify-content: center;  align-items: center;  gap: 5px;  width: 42px;  height: 42px;  padding: 0;  border: none;  border-radius: 8px;  background: transparent;  cursor: pointer;  flex-shrink: 0;}.nav-toggle-bar {  display: block;  width: 22px;  height: 2px;  background: var(--color-secondary);  border-radius: 2px;  transition: transform 0.2s ease, opacity 0.2s ease;}.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2) { opacity: 0; }.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }.main-nav ul {  list-style: none;  display: flex;  gap: 30px;  margin: 0;  padding: 0;}.main-nav > ul { position: relative; flex-wrap: wrap; row-gap: 6px; }.main-nav li { position: relative; }.nav-row {  display: flex;  align-items: center;}.nav-toggle-item,.nav-bullet { display: none; }.nav-toggle-item {  background: none;  border: none;  padding: 0;  margin: 0;  cursor: pointer;  color: inherit;  font: inherit;}.nav-toggle-item .nav-caret {  display: inline-block;  transition: transform 0.2s ease;}.main-nav li.is-open > .nav-row > .nav-toggle-item .nav-caret,.mega-column.is-open > .mega-column-head > .nav-toggle-item .nav-caret {  transform: rotate(90deg);}.main-nav > ul > li > .nav-row > a {  color: var(--color-secondary);  font-weight: 600;  font-size: 0.95rem;  padding: 6px 2px;}.main-nav li.active > .nav-row > a { color: var(--color-primary); }.main-nav li ul {  display: none;  position: absolute;  z-index: 30;   background: var(--color-surface);  border: 1px solid rgba(0,0,0,0.08);  border-radius: 12px;  padding: 8px;  min-width: 220px;  box-shadow: 0 12px 28px rgba(20,20,20,0.1);  flex-direction: column;  gap: 2px;  transform: translateX(var(--kante-versatz, 0px)); }.main-nav > ul > li > ul {  top: 100%;  left: 0;}.main-nav li ul li ul {  top: -9px;  left: 100%;  margin-left: -8px; }.main-nav li:hover > ul,.main-nav li:focus-within > ul,.main-nav li.hover-offen > ul { display: flex; } .main-nav li ul a {  display: block;  padding: 8px 10px;  border-radius: 8px;  color: var(--color-text);  font-size: 0.9rem;  font-weight: 500;}.main-nav li ul a:hover { color: var(--color-primary); text-decoration: none; }.main-nav li.has-mega { position: relative; }.mega-panel {  display: none;  position: absolute;  top: 100%;  left: 50%;  transform: translateX(calc(-50% + var(--kante-versatz, 0px)));  width: max-content;  max-width: min(70rem, calc(100vw - 4rem));  z-index: 20;}.main-nav li.has-mega:hover .mega-panel,.main-nav li.has-mega:focus-within .mega-panel,.main-nav li.has-mega.hover-offen .mega-panel {   display: block;}.mega-columns {  max-width: 70rem;  margin: 0 auto;  background: var(--color-surface);  border: 1px solid rgba(0,0,0,0.08);  border-radius: var(--radius);  box-shadow: 0 20px 45px rgba(20,20,20,0.14);  padding: 36px 40px;  display: grid;  grid-template-columns: repeat(4, minmax(7.5rem, 13.75rem));  gap: 32px 48px;}.mega-columns:has(> .mega-column:nth-child(1):last-child) {  grid-template-columns: minmax(7.5rem, 13.75rem);}.mega-columns:has(> .mega-column:nth-child(2):last-child) {  grid-template-columns: repeat(2, minmax(7.5rem, 13.75rem));}.mega-columns:has(> .mega-column:nth-child(3):last-child) {  grid-template-columns: repeat(3, minmax(7.5rem, 13.75rem));}.mega-column { min-width: 0; }.mega-column a,.mega-column-title { overflow-wrap: break-word; }.mega-column {  display: flex;  flex-direction: column;  gap: 8px;}.mega-column-head {  display: flex;  align-items: center;}.mega-column-links {  display: flex;  flex-direction: column;  gap: 8px;}.mega-column-title {  display: block;  flex: 1;  font-weight: 500;  font-size: 0.9rem;  color: var(--color-text);  padding-bottom: 8px;  margin-bottom: 2px;    border-bottom: 2px solid color-mix(in srgb, var(--color-primary) 18%, transparent);}.mega-column-title:hover { color: var(--color-primary); text-decoration: none; }.mega-column a {  color: var(--color-text);  font-size: 0.9rem;  font-weight: 500;}.mega-column a:hover { color: var(--color-primary); text-decoration: none; }.main-nav li ul .nav-row > a { flex: 1 1 auto; min-width: 0; }@media (min-width: 48.8125rem) {  .mega-column-links { gap: 0; }  .mega-column a {    display: block;    padding: 4px 10px;    margin: 0 -10px;    border-radius: 8px;  }}.eyebrow {  text-transform: uppercase;  letter-spacing: 0.08em;  font-size: 0.78rem;  font-weight: 700;  color: var(--color-primary);  margin: 0 0 10px;}.section-label {  display: flex;  align-items: center;  gap: 16px;  text-transform: uppercase;  letter-spacing: 0.08em;  font-size: 0.78rem;  font-weight: 700;  color: var(--color-text);  margin-bottom: 28px;}.section-label::after {  content: "";  flex: 1;  height: 1px;  background: rgba(0,0,0,0.12);}.btn-row { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 8px; }.btn {  display: inline-block;  padding: 13px 26px;  border-radius: 999px;  font-weight: 700;  font-size: 0.95rem;  border: 2px solid transparent;}.btn-primary {  background: var(--color-primary);  color: #fff;}.btn-primary:hover { background: var(--color-primary); text-decoration: none; }.btn-outline {  background: transparent;  color: var(--color-primary);  border-color: var(--color-primary);}.btn-outline:hover { background: var(--color-primary); color: #fff; text-decoration: none; }.hero {  padding: 0;   text-align: center;}.hero .container { max-width: 45rem; }.hero .btn-row { justify-content: center; }.hero-tagline { font-size: 1.1rem; font-weight: 600; color: var(--color-primary); margin-bottom: 4px; }.hero-text { color: var(--color-text-kopfteil); }.hero:not(:has(.header-bild)), .page-header:not(:has(.header-bild)) {  background: var(--color-primary);  color: #fff;}.header-bild-wrap {  position: relative;  display: block;  width: 100%;  overflow: hidden;  opacity: calc(1 - var(--medium-transparenz,0)); }:is(.hero, .page-header) h1 {  font-size: clamp(1.5rem, 6vw, 2.4rem);}.header-bild {  display: block;  width: 100%;  height: auto;  max-height: 50vh;  object-fit: cover;  object-position: center;}.hero .container, .page-header .container {  text-align: center;  max-width: calc(45rem + 2 * clamp(1.25rem, 6vw, 4rem));  padding: 32px clamp(1.25rem, 6vw, 4rem) 24px; }:is(.hero, .page-header) h1,:is(.hero, .page-header) .hero-tagline,:is(.hero, .page-header) .hero-text,:is(.hero, .page-header) .detail-role,:is(.hero, .page-header) .page-intro,:is(.hero, .page-header) .breadcrumb,:is(.hero, .page-header) .breadcrumb a,:is(.hero, .page-header) .breadcrumb li:not(:last-child)::after {  color: #fff; }.hero, .page-header { position: relative; }.hero:has(.header-bild),.page-header:has(.header-bild) {  overflow: hidden;}.hero:has(.header-bild) .container,.page-header:has(.header-bild) .container {  max-width: none;  margin: 0;  padding: 0;}.hero:has(.header-bild) .header-titel-band,.page-header:has(.header-bild) .header-titel-band {  position: absolute;  z-index: 2;  left: 0;  right: 0;  top: var(--bild-hoehe, 220px);  transform: translateY(-100%);  box-sizing: border-box;  display: flex;  flex-direction: column;  align-items: center;  justify-content: center;  gap: 4px;  padding: 10px clamp(1.25rem, 6vw, 4rem);}.hero:has(.header-bild) .header-titel-band h1,.page-header:has(.header-bild) .header-titel-band h1 {  margin: 0;}.hero:has(.header-bild) .header-titel-band::before,.page-header:has(.header-bild) .header-titel-band::before {  content: "";  position: absolute;  inset: 0;  background: var(--color-primary);  opacity: .85; }.hero:has(.header-bild) .header-titel-band > *,.page-header:has(.header-bild) .header-titel-band > * {  position: relative;   z-index: 1;}.hero:has(.header-bild) .header-titel-band .breadcrumb,.page-header:has(.header-bild) .header-titel-band .breadcrumb {  position: absolute;  top: 10px;   left: 0;  right: 0;  padding: 0 clamp(1.25rem, 6vw, 4rem);   margin: 0;}.hero:has(.header-bild) .header-titel-band:has(.breadcrumb),.page-header:has(.header-bild) .header-titel-band:has(.breadcrumb) {  min-height: 136px;  padding-top: 38px;}.hero:has(.header-bild) .header-text-unten,.page-header:has(.header-bild) .header-text-unten {  display: flex;  flex-direction: column;  justify-content: center;    background: var(--color-primary);  padding: 10px clamp(1.25rem, 6vw, 4rem);}.hero:has(.header-bild) .header-text-unten > *,.page-header:has(.header-bild) .header-text-unten > * {  width: 100%;  max-width: 45rem;  margin-left: auto;  margin-right: auto;}.hero:has(.header-bild) .header-text-unten :last-child,.page-header:has(.header-bild) .header-text-unten :last-child {  margin-bottom: 0;}@media (max-width: 48.75rem) {  .hero:has(.header-bild) .header-titel-band,  .page-header:has(.header-bild) .header-titel-band,  .hero:has(.header-bild) .header-titel-band:has(.breadcrumb),  .page-header:has(.header-bild) .header-titel-band:has(.breadcrumb) {    position: relative;    top: auto;    transform: none;    min-height: 0;  }}.stats-bar { padding: 36px 0; }.stats-inner {  display: flex;  justify-content: space-between;  flex-wrap: wrap;  gap: 20px;  text-align: center;}.stat { flex: 1; min-width: 130px; }.stat-value {  display: block;  font-family: var(--font-heading);  font-weight: 800;  font-size: 1.9rem;  color: var(--color-primary);}.stat-label {  display: block;  font-size: 0.85rem;  color: var(--color-text);  font-weight: 500;}.feature-card {  background: var(--color-surface);  border: 1px solid rgba(0,0,0,0.06);  border-radius: var(--radius);  padding: 28px;  box-shadow: 0 8px 24px rgba(20,20,20,0.05);  transition: transform 0.15s ease, box-shadow 0.15s ease;}.feature-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(20,20,20,0.09); }.feature-card h3 { font-size: 1.1rem; }.feature-card p { color: var(--color-text); font-size: 0.95rem; margin: 0; } .feature-icon {  display: block;  width: 152px;  height: 152px;  margin: 0 auto 20px;  border-radius: 50%;  border: 2px solid var(--color-primary);  background: var(--color-surface);  object-fit: cover;  padding: 0;  box-sizing: border-box;}.highlight-link {  display: inline-flex;  align-items: center;   margin-top: 12px;  font-weight: 600;  font-size: 0.92rem;  color: var(--color-primary);}.highlight-link:hover { text-decoration: underline; }.highlight-link[download]::before {  content: "";  display: inline-block;  width: 15px;  height: 15px;  margin-right: 6px;  background-color: currentColor;  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgPHJlY3QgeD0iMTAiIHk9IjMiIHdpZHRoPSI0IiBoZWlnaHQ9IjgiLz4KICA8cG9seWdvbiBwb2ludHM9IjYsMTAgMTgsMTAgMTIsMTciLz4KICA8cGF0aCBkPSJNNCAxOXYyaDE2di0yIiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIvPgo8L3N2Zz4K");  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgPHJlY3QgeD0iMTAiIHk9IjMiIHdpZHRoPSI0IiBoZWlnaHQ9IjgiLz4KICA8cG9seWdvbiBwb2ludHM9IjYsMTAgMTgsMTAgMTIsMTciLz4KICA8cGF0aCBkPSJNNCAxOXYyaDE2di0yIiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIvPgo8L3N2Zz4K");  -webkit-mask-repeat: no-repeat;  mask-repeat: no-repeat;  -webkit-mask-size: contain;  mask-size: contain;  -webkit-mask-position: center;  mask-position: center;}.page-header { padding: 0; } .page-header .container { max-width: 45rem; }.page-intro { font-size: 1.05rem; color: var(--color-text-kopfteil); }.content-blocks { padding: 0; } .downloads-section { padding: 56px 0 16px; } .content-blocks .container,.downloads-section .container { max-width: 45rem; display: flex; flex-direction: column; gap: 20px; }.content-block { display: flex; gap: 16px; align-items: flex-start; }.content-block-photo {  width: clamp(4.5rem, 22vw, 8rem);  height: clamp(4.5rem, 22vw, 8rem);  border-radius: 50%;  object-fit: cover;  flex-shrink: 0;}.content-block-text { flex: 1; min-width: 0; }.content-block h3 { font-size: 1.05rem; margin-bottom: 6px; }.content-block h3:not(:first-child) { margin-top: 0.85em; } .content-block p { color: var(--color-text); margin: 0; } .content-block p + p { margin-top: 0.85em; } .standort-einleitung { padding: 56px 0 0; }.standort-einleitung .container { max-width: 45rem; }.standort-einleitung .beitrag-bild { margin-bottom: 21px; }.standort-einleitung .page-intro { color: var(--color-text); }.standort-section { padding: 56px 0 40px; } .standort-section .container { max-width: 45rem; }.standort-grid {  display: flex;  flex-direction: column;  gap: 16px;}.standort-info h2 { font-size: 1.1rem; margin-bottom: 8px; }.standort-adresse {  font-size: 1rem;  font-weight: 600;  color: var(--color-text);}.standort-adresse a { color: inherit; }.standort-adresse a:hover { color: var(--color-primary); }.standort-karte {  position: relative;  width: 100%;  min-height: 320px;  border-radius: var(--radius);  overflow: hidden;  border: 1px solid rgba(0,0,0,0.08);}.standort-karte iframe {  position: absolute;  inset: 0;  width: 100%;  height: 100%;  border: 0;}.karte-consent {  position: absolute;  inset: 0;  display: flex;  flex-direction: column;  align-items: center;  justify-content: center;  gap: 14px;  padding: 24px;  text-align: center;  background: var(--flaeche-neutral);}.karte-consent p {  margin: 0;  max-width: 20rem;  font-size: 0.85rem;  color: var(--color-text);}.karte-consent .btn { padding: 10px 20px; font-size: 0.9rem; }@media (max-width: 43.75rem) {  .standort-karte { min-height: 240px; }}.liste-section { padding: 56px 0 64px; } .liste-section .container { max-width: 45rem; }.liste-table {  width: 100%;  border-collapse: collapse;  background: var(--color-surface);  border: 1px solid rgba(0,0,0,0.08);  border-radius: var(--radius);  overflow: hidden;}.liste-table th, .liste-table td {  text-align: left;  padding: 14px 20px;}.liste-table th {  background: var(--flaeche-neutral);  font-size: 0.8rem;  text-transform: uppercase;  letter-spacing: 0.06em;  color: var(--color-primary);  font-weight: 700;}.liste-table td:last-child, .liste-table th:last-child { text-align: right; font-weight: 700; color: var(--color-primary); white-space: nowrap; }.liste-table tbody tr + tr td { border-top: 1px solid rgba(0,0,0,0.06); }.quote-section { padding: 48px 0; margin-top: 40px; }.quote-section blockquote {  max-width: 45rem;  margin: 0 auto;  text-align: center;}.quote-section p {  font-family: var(--font-heading);  font-size: 1.4rem;  font-weight: 600;  color: var(--color-secondary);  line-height: 1.4;}.quote-section cite {  font-style: normal;  font-weight: 700;  color: var(--color-primary);}.quote-section cite span { color: var(--color-text); font-weight: 500; }.children-section { padding: 48px 0 64px; }.children-section .container { max-width: 45rem; }.galerie-section:has(.container:empty),.children-section:has(.container:empty) {  display: none;}.avatar-grid {  display: grid;  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));  gap: 28px 20px;}.avatar-item {  display: flex;  flex-direction: column;  align-items: center;  text-align: center;  color: var(--color-text);  transition: transform 0.15s ease;}.avatar-item:hover { text-decoration: none; transform: translateY(-2px); }.avatar-circle {  width: 84px;  height: 84px;  border-radius: 50%;  background: var(--color-primary);  color: #fff;  font-family: var(--font-heading);  font-weight: 700;  font-size: 1.3rem;  display: flex;  align-items: center;  justify-content: center;  margin-bottom: 12px;}.avatar-photo {  width: 84px;  height: 84px;  border-radius: 50%;  object-fit: cover;  margin-bottom: 12px;}.avatar-name { font-weight: 700; color: var(--color-secondary); }.avatar-caption { font-size: 0.85rem; color: var(--color-text); margin-top: 2px; }.profile-photo {  width: 160px;  height: 160px;  border-radius: 50%;  object-fit: cover;  margin-bottom: 16px;}.galerie-section { padding: 8px 0 16px; }.galerie-section .container { max-width: 45rem; }.galerie {  display: grid;  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));  gap: 12px;}.galerie img {  width: 100%;  aspect-ratio: 4 / 3;  object-fit: cover;  border-radius: var(--radius, 12px);  display: block;}.detail-page { padding: 56px 0 64px; }.detail-inner {  display: flex;  gap: 32px;  align-items: flex-start;  max-width: 47.5rem;}.detail-avatar {  flex: none;  width: 96px;  height: 96px;  border-radius: 50%;  background: var(--color-primary);  color: #fff;  font-family: var(--font-heading);  font-size: 1.6rem;  font-weight: 700;  display: flex;  align-items: center;  justify-content: center;}.detail-role { font-weight: 700; color: var(--color-primary); }.breadcrumb {  font-size: 0.85rem;  color: var(--color-text-kopfteil);  margin-bottom: 10px;}.breadcrumb ol {  list-style: none;  display: flex;  flex-wrap: wrap;  margin: 0;  padding: 0;}.breadcrumb li { display: flex; align-items: center; }.breadcrumb li:not(:last-child)::after {  content: "/";  margin: 0 8px;  color: var(--color-text-kopfteil);}.breadcrumb a { color: inherit; text-decoration: underline; }.breadcrumb li[aria-current="page"] { font-weight: 600; }.formular-section {  padding: 56px 0 56px; }.formular-section .container {  max-width: 70rem;}.contact-section { padding: 56px 0 56px; } .contact-block {  display: grid;  grid-template-columns: repeat(3, 1fr);  gap: 20px;}.contact-block > div {  background: var(--color-surface);  border: 1px solid rgba(0,0,0,0.06);  border-radius: var(--radius);  padding: 22px;}.contact-block h3 { font-size: 1rem; }.contact-block a { color: inherit; text-decoration: underline; }.contact-block a:hover { opacity: 0.8; }.faq-section { padding: 56px 0 64px; }.faq-section .container { max-width: 47.5rem; }.faq-list { margin-top: 24px; display: flex; flex-direction: column; gap: 10px; }.faq-item {  background: var(--color-surface);  border: 1px solid rgba(0,0,0,0.08);  border-radius: 12px;  padding: 16px 20px;}.faq-item summary {  cursor: pointer;  font-weight: 700;  color: var(--color-secondary);  list-style: none;}.faq-item summary::-webkit-details-marker { display: none; }.faq-item summary::after { content: "+"; float: right; color: var(--color-primary); font-weight: 800; }.faq-item[open] summary::after { content: "–"; }.faq-item p { margin: 12px 0 0; color: var(--color-text); } .site-footer {  background: var(--color-footer-bg);  color: #f2ede4;}.footer-inner {  padding: 16px 24px 8px;  display: flex;  justify-content: space-between;  align-items: flex-start;  gap: 24px;  flex-wrap: wrap;}.footer-inner p { margin: 0.2em 0; opacity: 0.85; font-size: 0.92rem; }.footer-brand strong { font-family: var(--font-heading); font-size: 1.1rem; }.footer-verband {  display: flex;  align-items: center;  gap: 20px;  flex-wrap: wrap;}.footer-social {  display: flex;  gap: 12px;}.social-icon {  display: inline-flex;  align-items: center;  justify-content: center;  width: 46px;  height: 46px;  border-radius: 50%;  background: rgba(255,255,255,0.08);  color: #f2ede4;}.social-icon:hover { background: var(--color-primary); color: #fff; text-decoration: none; }.app-badges { display: flex; gap: 12px; flex-wrap: wrap; }.app-badge {  display: inline-flex;  align-items: center;  gap: 8px;  background: #000;  color: #fff;  padding: 8px 14px;  border-radius: 8px;  border: 1px solid rgba(255,255,255,0.4);  text-decoration: none;}.app-badge:hover { background: #222; text-decoration: none; }.app-badge-text { display: flex; flex-direction: column; line-height: 1.15; }.app-badge-eyebrow { font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.03em; opacity: 0.85; }.app-badge-title { font-size: 0.95rem; font-weight: 600; }.app-login {  background: var(--color-primary);  color: #fff;  border-color: rgba(255,255,255,0.4);}.app-login:hover { background: var(--color-primary); }.footer-badge {  background: #fff;  padding: 12px 16px;  border-radius: 12px;  display: flex;  align-items: center;  gap: 16px;  flex-wrap: wrap;}.footer-badge img {  height: 56px;  width: auto;  display: block;}.footer-copy {  text-align: center;  font-size: 0.8rem;  opacity: 0.6;  padding: 8px 24px 16px;  margin: 0;}.footer-copy a { color: inherit; text-decoration: underline; }.footer-copy a:hover { opacity: 0.8; }.footer-contact a { color: inherit; text-decoration: underline; }.footer-contact a:hover { opacity: 0.8; }.rechtstext { max-width: 45rem; margin: 0 auto; }.rechtstext ul, .rechtstext ol { padding-left: 1.4em; margin: 0.8em 0; }.rechtstext li { margin: 0.3em 0; }.galerie-uebersicht-section { padding: 56px 0 16px; } .galerie-uebersicht-section .container { max-width: 45rem; }.galerie-eintrag { margin-bottom: 32px; }.galerie-vorschau {  display: grid;  grid-template-columns: repeat(auto-fit, minmax(min(12rem, 100%), 1fr));  gap: 8px;  margin-top: 12px;  align-items: start;}.vorschau-bild {  position: relative;  width: 100%;  padding: 0;  border: none;  background: none;  cursor: pointer;  border-radius: var(--radius);  overflow: hidden;}.vorschau-bild img { width: 100%; height: auto; display: block; }.vorschau-mehr {  position: absolute;  right: 12px;  bottom: 12px;  background: rgba(0,0,0,0.65);  color: #fff;  font-weight: 600;  font-size: 0.85rem;  padding: 4px 10px;  border-radius: 999px;}.lightbox { border: none; padding: 40px; background: transparent; max-width: 94vw; max-height: 94vh; }.lightbox::backdrop { background: rgba(15,15,15,0.9); }.lightbox-bilder { display: flex; align-items: center; justify-content: center; }.lightbox-bilder img { display: none; max-width: 90vw; max-height: 80vh; object-fit: contain; }.lightbox-bilder img.active { display: block; }.lightbox-schliessen, .lightbox-zurueck, .lightbox-weiter {  position: absolute;  border: none;  border-radius: 50%;  background: rgba(255,255,255,0.15);  color: #fff;  cursor: pointer;}.lightbox-schliessen:hover, .lightbox-zurueck:hover, .lightbox-weiter:hover { background: rgba(255,255,255,0.3); }.lightbox-schliessen { top: 8px; right: 8px; width: 40px; height: 40px; font-size: 1.4rem; }.lightbox-zurueck, .lightbox-weiter { top: 50%; transform: translateY(-50%); width: 48px; height: 48px; font-size: 1.6rem; }.lightbox-zurueck { left: 8px; }.lightbox-weiter { right: 8px; }.beitraege-section { padding: 56px 0 16px; } .beitraege-section .container { max-width: 45rem; }.beitrag { margin-bottom: 40px; }.beitrag-bild {  position: relative;  display: block;  width: 100%;  padding: 0;  border: none;  background: var(--flaeche-neutral);  cursor: pointer;  border-radius: var(--radius);  overflow: hidden;}.beitrag-bild img {    width: 100%;  height: auto;  display: block;}.beitrag-mehr {  position: absolute;  right: 12px;  bottom: 12px;  background: rgba(0,0,0,0.65);  color: #fff;  font-weight: 600;  font-size: 0.85rem;  padding: 4px 10px;  border-radius: 999px;}.beitrag-info { margin-top: 21px; } .beitrag-info h3 { font-size: 1.15rem; margin-bottom: 6px; }.beitrag-info p { color: var(--color-text); margin: 0; } .content-with-sidebar {  display: grid;  grid-template-columns: 1fr 16.25rem;  gap: 40px;  align-items: start;}.content-with-sidebar .content-main { min-width: 0; }.sidebar-nav {  position: sticky;  top: 96px;  padding-top: 56px; }.sidebar-nav ul {  list-style: none;  margin: 0;  padding: 0;  display: flex;  flex-direction: column;  gap: 2px;  border-left: 2px solid rgba(0,0,0,0.08);}.sidebar-nav a {  display: block;  padding: 8px 16px;  margin-left: -2px;  border-left: 2px solid transparent;  color: var(--color-text);  font-weight: 500;  font-size: 0.95rem;}.sidebar-nav a:hover { color: var(--color-primary); text-decoration: none; }.sidebar-nav li.active > a {  color: var(--color-primary);  border-left-color: var(--color-primary);  font-weight: 700;}.sidebar-nav ul ul {  margin-top: 2px;  margin-bottom: 6px;  padding-left: 14px;  border-left: 1px solid rgba(0,0,0,0.08);}.sidebar-nav ul ul a { padding: 6px 12px; font-size: 0.95em; }@media (max-width: 48.75rem) {  .content-with-sidebar { grid-template-columns: 1fr; }  .sidebar-nav { display: none; }}.back-to-top {  position: fixed;  right: 24px;  bottom: 24px;  width: 46px;  height: 46px;  border-radius: 50%;  border: none;  background: var(--color-primary);  color: #fff;  font-size: 1.2rem;  cursor: pointer;  opacity: 0;  pointer-events: none;  transform: translateY(8px);  transition: opacity 0.2s ease, transform 0.2s ease;  box-shadow: 0 8px 20px rgba(20,20,20,0.2);}.back-to-top.visible { opacity: 1; pointer-events: auto; transform: translateY(0); }@media (max-width: 48.75rem) {  .feature-grid, .contact-block { grid-template-columns: 1fr; }  .detail-inner { flex-direction: column; }  .stats-inner { justify-content: flex-start; }  .header-inner { position: relative; }  .nav-toggle { display: inline-flex; }  .site-logo-img { height: 40px; }  .main-nav {    position: absolute;    top: 100%;    left: 0;    right: 0;    max-height: 0;    overflow: hidden;    background: var(--color-surface);    border-bottom: 1px solid rgba(0,0,0,0.08);    box-shadow: 0 12px 28px rgba(20,20,20,0.12);    transition: max-height 0.25s ease;  }  .main-nav.open { max-height: 80vh; overflow-y: auto; }  .main-nav > ul { flex-direction: column; flex-wrap: nowrap; gap: 0; padding: 8px 0; }  .main-nav li { width: 100%; }  .nav-row {    gap: 10px;     padding-right: 24px;  }  .main-nav > ul > li > .nav-row { padding-left: 24px; }  .nav-row > a { flex: 1; display: block; padding: 12px 0; }  .nav-toggle-item,  .nav-bullet {    display: inline-flex;    align-items: center;    justify-content: center;    flex-shrink: 0;    align-self: stretch;     min-width: 48px;     padding: 0 8px;    font-size: 1.4rem;  }  .nav-bullet { color: var(--color-text); }  .main-nav li ul,  .mega-panel {    display: block;    position: static;    width: auto;     max-width: none;    transform: none;     max-height: 0;    overflow: hidden;    box-shadow: none;    border: none;    border-radius: 0;    background: var(--color-surface);     min-width: 0;    margin: 0;    padding: 0 0 0 16px;  }  .main-nav li.is-open > ul,  .main-nav li.is-open > .mega-panel {    max-height: 3000px;    padding: 4px 0 4px 16px;  }  .main-nav li ul li ul { padding-left: 16px; }  .mega-columns {    display: block;    box-shadow: none;    border: none;    border-radius: 0;    padding: 0;    margin: 0;  }  .mega-column { margin-bottom: 4px; }  .mega-column:last-child { margin-bottom: 0; }  .mega-column-head {    gap: 10px;   }  .mega-column-title {    padding: 8px 0;    border-bottom: none;    margin-bottom: 0;  }  .mega-column-links {    max-height: 0;     overflow: hidden;    padding-left: 16px;  }  .mega-column.is-open > .mega-column-links {    max-height: 2000px;    padding-top: 4px;    padding-bottom: 4px;  }  .mega-column a {    display: block;    padding: 8px 10px;    border-radius: 8px;  }}.sr-only {  position: absolute;  width: 1px;  height: 1px;  padding: 0;  margin: -1px;  overflow: hidden;  clip: rect(0, 0, 0, 0);  white-space: nowrap;  border: 0;}.skip-link {  position: absolute;  top: -100px;  left: 12px;  z-index: 100;  background: var(--color-primary);  color: #fff;  padding: 10px 18px;  border-radius: 8px;  font-weight: 700;  transition: top 0.15s ease;}.skip-link:focus {  top: 12px;  text-decoration: none;}a:focus-visible,button:focus-visible {  outline: 3px solid var(--color-primary);   outline-offset: 2px;}@media (prefers-reduced-motion: reduce) {  * {    animation-duration: 0.001ms !important;    animation-iteration-count: 1 !important;    transition-duration: 0.001ms !important;    scroll-behavior: auto !important;  }}@media (prefers-color-scheme: dark) {  :root {        --color-background: #17181A !important;    --flaeche-neutral: #1E2022 !important;       --color-surface: #212325 !important;    --color-text: #E7E8EA !important;    --color-text-kopfteil: #E7E8EA !important;      }  h1, h2, h3,  .main-nav > ul > li > .nav-row > a,  .quote-section p,  .avatar-name,  .faq-item summary {    color: var(--color-text);  }  .nav-toggle-bar { background: var(--color-text); }  .site-header,  .main-nav li ul,  .mega-columns,  .feature-card,  .standort-karte,  .liste-table,  .contact-block > div,  .faq-item {    border-color: rgba(255,255,255,0.1);  }    .logo:has(.site-logo-img) {    background: #fff;    padding: 6px 10px;    margin: -6px -10px;    border-radius: 10px;  }      .feature-card {    --darstellung-textfarbe: initial;  }    .darstellung-farbflaeche {    --color-text: #3A3F44;  }    .darstellung-farbflaeche .feature-card {    --color-text: #E7E8EA;    --color-secondary: #E7E8EA;  }}@media (max-width: 48.75rem) and (prefers-color-scheme: dark) {  .main-nav { border-bottom-color: rgba(255,255,255,0.1); }    .logo:has(.site-logo-img) {    padding: 4px 8px;    margin: -4px -8px;    border-radius: 8px;  }}.darstellung-farbflaeche {  background-color: var(--darstellung-farbe, transparent);  padding: clamp(2rem, 5vw, 3.5rem) 0;}.darstellung-farbflaeche .container + .container {  margin-top: 56px;}.darstellung-farbflaeche .container { color: var(--darstellung-textfarbe, var(--color-text)); } .darstellung-farbflaeche a.highlight-link { color: var(--darstellung-textfarbe, var(--color-primary)); text-decoration: underline; } .darstellung-farbflaeche h3 {  color: var(--darstellung-textfarbe, var(--color-secondary)); }.diashow-titelbox {  align-self: stretch;  width: 100%;  box-sizing: border-box;  background: rgba(0, 0, 0, 0.2);  padding: 14px 20px;  border-radius: 8px;  margin-bottom: 24px;}.diashow-titelbox h2 {  margin: 0 0 4px;  font-size: clamp(1.4rem, 4vw, 2.6rem);  line-height: 1.25;  color: #fff;}.diashow-titelbox p {  margin: 0 0 0.5em;  color: #fff;}.diashow-titelbox p:last-child {  margin-bottom: 0;}.darstellung-farbflaeche .content-block p,.darstellung-farbflaeche .beitrag-info p {    color: var(--darstellung-textfarbe, var(--color-text));}.darstellung-farbflaeche .zaehler-zahl {  color: var(--darstellung-textfarbe, var(--color-primary));}.darstellung-farbflaeche .zaehler-label {  color: var(--darstellung-textfarbe, var(--color-text));}.content-blocks > .container {  padding-top: clamp(2rem, 5vw, 3.5rem);  padding-bottom: clamp(2rem, 5vw, 3.5rem);}.container.darstellung-fliesstext {  display: flex;  flex-direction: column;  gap: 24px;  max-width: 70rem;}.darstellung-fliesstext .fliesstext-block { max-width: 70rem; } .container.darstellung-spalten {  display: block;  max-width: 70rem;  column-count: 3;  column-gap: 32px;  column-rule: 1px solid var(--color-border, #e2e2e2);}.container.darstellung-spalten:has(.spalten-item:only-child) {  column-count: 1;}.container.darstellung-spalten:has(.spalten-item:nth-child(2):last-child) {  column-count: 2;}.darstellung-spalten .spalten-item {  break-inside: avoid;  margin-bottom: 24px;}.darstellung-spalten .spalten-item:last-child {  margin-bottom: 0; }.spalten-item .spalten-foto {  display: block;  width: 100%;  height: auto;  border-radius: 8px;  margin: 8px 0 16px;}@media (max-width: 48.75rem) {  .container.darstellung-spalten { column-count: 1 !important; } }.container.darstellung-galerie,.container.darstellung-text-galerie,.container.darstellung-diashow {  display: block;  max-width: 70rem;}.container.darstellung-galerie .galerie-eintrag { margin-bottom: 40px; }.container.darstellung-galerie .galerie-eintrag:not(:has(~ .galerie-eintrag)) { margin-bottom: 0; } .galerie-info { margin-bottom: 16px; }.galerie-raster {  display: grid;  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));  gap: 8px;}.galerie-raster-bild {  display: block;  padding: 0;  border: 0;  background: none;  cursor: pointer;  aspect-ratio: 1 / 1;  overflow: hidden;  border-radius: 8px;}.galerie-raster-bild img { width: 100%; height: 100%; object-fit: cover; display: block; }.darstellung-text-galerie .text-galerie-eintrag {  display: grid;  grid-template-columns: minmax(15rem, 1fr) minmax(280px, 1.2fr);  gap: 32px;  align-items: start;  margin-bottom: 40px;}.darstellung-text-galerie .text-galerie-eintrag:not(:has(~ .text-galerie-eintrag)) { margin-bottom: 0; }@media (max-width: 48.75rem) {  .darstellung-text-galerie .text-galerie-eintrag { grid-template-columns: 1fr; }}.diashow { position: relative; overflow: hidden; border-radius: 12px; }.diashow-slides { position: relative; aspect-ratio: 16 / 9; }.diashow-slide {  position: absolute;  inset: 0;  opacity: 0;  transition: opacity 0.6s ease;  pointer-events: none;}.diashow-slide--aktiv { opacity: 1; pointer-events: auto; }.diashow-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }.diashow-overlay {  position: absolute;  inset: 0;  display: flex;  flex-direction: column;  align-items: center;  justify-content: flex-end;  text-align: center;  padding: 24px clamp(1.25rem, 6vw, 4rem);  color: #fff; }.diashow-overlay a.highlight-link { color: #fff; text-decoration: underline; }.diashow-punkte {  position: absolute;  bottom: 16px;  left: 50%;  transform: translateX(-50%);  display: flex;  gap: 8px;}.diashow-punkt {  width: 10px;  height: 10px;  border-radius: 50%;  border: 1px solid #fff;  background: rgba(255,255,255,0.4);  padding: 0;  cursor: pointer;}.diashow-punkt.diashow-slide--aktiv { background: #fff; }@media (prefers-reduced-motion: reduce) {  .diashow-slide { transition: none; }}.hero, .page-header {  position: fixed;  top: var(--nav-hoehe, 76px);  left: 0;  right: 0;}main#hauptinhalt > .hero ~ *,main#hauptinhalt > .page-header ~ * {  position: relative;}main#hauptinhalt > .hero ~ *:not(.bg-alt),main#hauptinhalt > .page-header ~ *:not(.bg-alt) {  background: var(--color-background, #fff);}main#hauptinhalt > .hero + *,main#hauptinhalt > .page-header + * {  margin-top: var(--kopf-hoehe, 420px);  padding-top: 0;}.content-blocks > .container:empty {  padding: 0;}main > section:empty {  flex: 0 0 auto;}.site-footer {  position: relative;}main#hauptinhalt > .page-header + .contact-section,main#hauptinhalt > .page-header + .formular-section,main#hauptinhalt > .page-header + .liste-section,main#hauptinhalt > .page-header + .downloads-section,main#hauptinhalt > .page-header + .standort-einleitung,main#hauptinhalt > .page-header + .standort-section,main#hauptinhalt > .page-header + .galerie-uebersicht-section,main#hauptinhalt > .page-header + .beitraege-section {  padding-top: 56px;}.container.darstellung-beitraege {  display: flex;  flex-direction: column;  gap: 20px;  max-width: 45rem;}.container.darstellung-beitraege .beitrag:not(:has(~ .beitrag)) {  margin-bottom: 0; }.container.feature-grid {  display: grid;  grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr));   gap: 1.375rem;  max-width: 70rem; }@media (min-width: 48.8125rem) and (max-width: 67.0625rem) {  .container.feature-grid:has(> .feature-card:nth-child(4)):not(:has(> .feature-card:nth-child(5))) {    grid-template-columns: repeat(2, 1fr);  }}@media (min-width: 50.75rem) {  .container.feature-grid:has(> .feature-card:nth-child(5)):not(:has(> .feature-card:nth-child(6))),  .container.feature-grid:has(> .feature-card:nth-child(7)):not(:has(> .feature-card:nth-child(8))) {    grid-template-columns: repeat(6, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(5)):not(:has(> .feature-card:nth-child(6))) > .feature-card:nth-child(-n+3),  .container.feature-grid:has(> .feature-card:nth-child(7)):not(:has(> .feature-card:nth-child(8))) > .feature-card:nth-child(-n+3) {    grid-column: span 2;  }  .container.feature-grid:has(> .feature-card:nth-child(5)):not(:has(> .feature-card:nth-child(6))) > .feature-card:nth-child(n+4),  .container.feature-grid:has(> .feature-card:nth-child(7)):not(:has(> .feature-card:nth-child(8))) > .feature-card:nth-child(n+4) {    grid-column: span 3;  }}@media (min-width: 67.125rem) {  .container.feature-grid:has(> .feature-card:nth-child(6)):not(:has(> .feature-card:nth-child(7))) {    grid-template-columns: repeat(3, 1fr);  }}@media (min-width: 67.125rem) {  .container.feature-grid:has(> .feature-card:nth-child(9)):not(:has(> .feature-card:nth-child(10))) {    grid-template-columns: repeat(3, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(10)):not(:has(> .feature-card:nth-child(11))) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(10)):not(:has(> .feature-card:nth-child(11))) > .feature-card:nth-child(-n+4) {    grid-column: span 3;  }  .container.feature-grid:has(> .feature-card:nth-child(10)):not(:has(> .feature-card:nth-child(11))) > .feature-card:nth-child(n+5) {    grid-column: span 4;  }}@media (min-width: 50.75rem) and (max-width: 67.0625rem) {  .container.feature-grid:has(> .feature-card:nth-child(10)):not(:has(> .feature-card:nth-child(11))) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(10)):not(:has(> .feature-card:nth-child(11))) > .feature-card:nth-child(-n+6) {    grid-column: span 4;  }  .container.feature-grid:has(> .feature-card:nth-child(10)):not(:has(> .feature-card:nth-child(11))) > .feature-card:nth-child(n+7) {    grid-column: span 6;  }}@media (min-width: 67.125rem) {  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(4n+5):last-child) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(4n+5):last-child) > .feature-card {    grid-column: span 3;  }  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(4n+5):last-child) > .feature-card:nth-last-child(-n+5) {    grid-column: span 4;  }  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(4n+5):last-child) > .feature-card:nth-last-child(-n+2) {    grid-column: span 6;  }}@media (min-width: 50.75rem) and (max-width: 67.0625rem) {  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(3n+4):last-child) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(3n+4):last-child) > .feature-card {    grid-column: span 4;  }  .container.feature-grid:has(> .feature-card:nth-child(13)):has(> .feature-card:nth-child(3n+4):last-child) > .feature-card:nth-last-child(-n+4) {    grid-column: span 6;  }}@media (min-width: 67.125rem) {  .container.feature-grid:has(> .feature-card:nth-child(11)):has(> .feature-card:nth-child(4n+3):last-child) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(11)):has(> .feature-card:nth-child(4n+3):last-child) > .feature-card {    grid-column: span 3;  }  .container.feature-grid:has(> .feature-card:nth-child(11)):has(> .feature-card:nth-child(4n+3):last-child) > .feature-card:nth-last-child(-n+3) {    grid-column: span 4;  }  .container.feature-grid:has(> .feature-card:nth-child(14)):has(> .feature-card:nth-child(4n+2):last-child) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(14)):has(> .feature-card:nth-child(4n+2):last-child) > .feature-card {    grid-column: span 3;  }  .container.feature-grid:has(> .feature-card:nth-child(14)):has(> .feature-card:nth-child(4n+2):last-child) > .feature-card:nth-last-child(-n+2) {    grid-column: span 6;  }}@media (min-width: 50.75rem) and (max-width: 67.0625rem) {  .container.feature-grid:has(> .feature-card:nth-child(8)):has(> .feature-card:nth-child(3n+2):last-child) {    grid-template-columns: repeat(12, 1fr);  }  .container.feature-grid:has(> .feature-card:nth-child(8)):has(> .feature-card:nth-child(3n+2):last-child) > .feature-card {    grid-column: span 4;  }  .container.feature-grid:has(> .feature-card:nth-child(8)):has(> .feature-card:nth-child(3n+2):last-child) > .feature-card:nth-last-child(-n+2) {    grid-column: span 6;  }}.container.darstellung-zaehler {  display: flex;  flex-direction: row;   flex-wrap: wrap;  justify-content: center;  gap: 104px;   max-width: 70rem;  text-align: center;}.zaehler-item {  position: relative;}.zaehler-item + .zaehler-item::before {  content: "";  position: absolute;  left: -52px;   top: 4px;  bottom: 4px;  width: 1px;  background: currentColor;  opacity: 0.15;}.zaehler-zahl {  display: block;  font-family: var(--font-heading);  font-size: 2.4rem;  font-weight: 700;  line-height: 1.1;  color: var(--color-primary);}.zaehler-label {  display: block;  margin-top: 4px;  font-size: 0.95rem;  color: var(--color-text);}@media (max-width: 48.75rem) {  .container.darstellung-zaehler { flex-direction: column; gap: 24px; }  .zaehler-item + .zaehler-item::before { display: none; }}