:root {
  --background-color-green-dark: #215e4d;
  --background-color-green: #89b288;
  --background-color-green-light: #e0f3e7;
  --text-color: #333;
}

/* Allgemeine Reset-Regeln */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
/* Allgemeine Reset-Regeln */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}



body,
html {
  height: 100%;
  font-size: 62.5%; /* Basisgröße: 10px (62.5% von 16px Standard-Browsergröße) */
  background: var(--background-color-green-light) !important; /* Mobile: gesamter Hintergrund grün */
  max-width: 100%;
  overflow-x: hidden;
}

body {
  line-height: 1.6;
  margin: 0; /* Entfernt alle Standardabstände */
  padding: 0;
  font-size: 1.6rem;
  font-family: 'Roboto', sans-serif; /* Text hat eine gut lesbare Grundlage */
  color: var(--text-color);
}


table {
  font-size: 2rem;
  line-height: 1.6;
  margin-top: 4rem;
  margin-bottom: 4rem;
}

table td {
  vertical-align: top;
  padding-bottom: 1rem;
}

table td:first-child {
  font-weight: 500;
  color: var(--background-color-green-dark);
  padding-right: 2rem;
}

.content-text .wp-block-table,
.content-text .wp-block-table table,
.content-text .wp-block-table td,
.content-text .wp-block-table th,
.content-text .wp-block-table thead,
.content-text .wp-block-table tfoot {
  border: none;
}

.content-text .wp-block-table figure {
  margin: 0;
}

.content-text .wp-block-table td,
.content-text .wp-block-table th {
  padding: 0 0 1rem;
}

/* Typografie für Titel und Texte */
h1 {
  font-size: 3.5rem; /* 32px (3.2rem x 10 = 32px) */
  font-weight: bold;
  margin-bottom: 1rem;
}

h2 {
  font-size: 2.4rem; /* 24px */
  font-weight: bold;
  margin-bottom: 0.8rem;
}

h3 {
  font-size: 2rem; /* 20px */
  font-weight: bold;
  margin-bottom: 0.6rem;
}

.pb {
  padding-bottom: 4rem;
}

h1, h2, h3 {
  font-family: 'Lato', sans-serif;
  font-weight: 700; /* Für eine schön fette Überschrift */
  line-height: 1.3; /* Unterstützt die Lesbarkeit */
  color: var(--background-color-green-dark); /* Überschriftenfarbe */
  padding-bottom: 1.5rem;

}

p {
  font-size: 1.6rem; /* 16px */
  line-height: 1.8; /* Luft zwischen Zeilen */
  padding-top: 0.5rem;
  padding-bottom: 1rem;
}

/* Links */
a {
  font-size: 2rem; /* Standardlink gleich Standardtextgröße */
  text-decoration: underline; /* Keine Unterstreichung */
  color: var(--background-color-green-dark); /* Blauton */
}

a:hover {
  color: #0c332a /* Blauton */
}


.background-wrapper {
  background: var(--background-color-green);
  max-width: 100%;
  overflow-x: hidden;
}


.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: var(--background-color-green-dark);
  background: linear-gradient(180deg, #3b6f5e, var(--background-color-green-dark)); /* Orange nach Rot */

  color: white;
  padding: 0.5rem 1rem;
position: fixed;
  width: 100%;
  max-width: 100vw;
  z-index: 1000;
  top: 0; /* Kein Abstand zum oberen Rand */
  left: 0;
  right: 0;
  height: 6rem;

  padding-left: 4rem ;
  padding-right: 4rem ;
  margin: 0 auto; /* Zentriert den Inhalt horizontal */

}

strong {
  font-weight: bold;
  color: var(--background-color-green-dark);
}

.logo a {
  color: white;
  text-decoration: none;

}

.logo a img {
  max-height: 5rem;
}

.nav-links {
  display: flex;
  gap: 2rem;
  padding-right: 3rem;
}

.nav-links a {
  color: white;
  text-decoration: underline;
  transition: color 0.3s ease;
  font-size: 1.8rem;
  font-family: 'Lato', sans-serif;
}

.nav-links a:hover {
  color: #ff6347;
}

.burger-menu {
  display: none;
  font-size: 4rem;
  background: none;
  color: white;
  border: none;
  cursor: pointer;
  padding: 0;
  line-height: 1;
}

@media (max-width: 768px) {
  .navbar {
    margin-left: 0;
    padding-left: 1.4rem;
    padding-right: 1.4rem;
    width: 100vw;
    height: 5.6rem;
  }

  .logo a img {
    max-height: 3.2rem;
    max-width: calc(100vw - 7rem);
  }

  .nav-links {
    display: none;
    flex-direction: column;
    background-color: var(--background-color-green-dark);
    position: absolute;
    top: 100%;
    right: 1rem;
    left: 1rem;
    width: auto;
    z-index: 1000;
    padding: 1rem 0 1.4rem;
    border-radius: 1.2rem;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
    gap: 0.2rem;
  }


  .nav-links a {
    padding: 0.55rem 1.6rem;
    font-size: 1.5rem;
    line-height: 1.35;
    text-underline-offset: 0.15em;
  }

  .nav-links.show {
    display: flex !important;
  }

  .burger-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.6rem;
    height: 3.6rem;
    font-size: 2.8rem;
    flex-shrink: 0;
    z-index: 1001;
  }
}

main {
  padding: 1rem;
  padding-top: 0;
  max-width: 100%;
  overflow-x: hidden;
}

/* Container für zentrierten Inhalt und maximale Breite */
.container {
  max-width: 1000px;
  padding-left: 4rem ;
  padding-right: 4rem ;
  margin: 0 auto; /* Zentriert den Inhalt horizontal */
  /* padding: 0 1rem;*/
  background-color: var(--background-color-green-light); /* Zusätzlicher Kontrast, falls nötig */
  overflow-x: hidden;

}


/* Inhalt Sektionen */
.content-section {
  display: flex;
  align-items: flex-start; /* Inhalte oben ausrichten */
  justify-content: space-between; /* Platz zwischen Bild und Text */
  gap: 8rem; /* Abstand zwischen Bild und Text */
  padding: 6rem 2rem 4rem 2rem;
  background: var(--background-color-green-light);

}

.content-section.wp-block-group {
  display: flex;
  flex-wrap: nowrap;
}

.content-section > .wp-block-group__inner-container {
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8rem;
}

.content-section > .content-image,
.content-section > .content-text,
.content-section > .wp-block-group__inner-container > .content-image,
.content-section > .wp-block-group__inner-container > .content-text {
  min-width: 0;
}

.content-section:first-of-type {
  padding-top: 12rem;
}

.decorative-line {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--background-color-green-light);

}

.decorative-line::after {
  content: "";
  flex: 1;
  height: 2px; /* Dicke der Linie */
  background-color: var(--background-color-green-dark); /* Farbe der Linie */
  margin: 3rem 15%;
  opacity: 0.25;

}



.content-image {
  flex: 0 0 300px; /* Die Spalte ist fest auf maximal 300px beschränkt */
  max-width: 300px; /* Sicherstellen, dass die Breite nicht über 300px hinausgeht */
  width: 100%; /* Für responsives Verhalten */
  align-self: center; /* Bild vertikal zentrieren */

}


.content-image img {
  width: 100%;
  height: auto;
  border-radius: 1rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.content-image .wp-block-image,
.content-image figure {
  margin: 0;
}

.content-image .wp-block-image + .wp-block-image,
.content-image figure + figure {
  margin-top: 1rem;
}

@media (max-width: 768px) {
  .content-section {
    flex-direction: column; /* Spalten werden untereinander gestapelt */
    text-align: center; /* Zentriert den Inhalt */
  }

  .content-image {
    max-width: 100%; /* Spalte nimmt auf mobilen Geräten die gesamte verfügbare Breite ein */
    flex: none; /* Flex Verhalten deaktivieren */
  }

  .content-section.wp-block-group {
    flex-wrap: wrap;
  }

  .content-section > .wp-block-group__inner-container {
    flex-direction: column;
    gap: 3rem;
  }
}


.content-text {
  flex: 1;
}

.content-text.wp-block-group {
  display: block;
}

.content-text h1 {
  margin-bottom: 1rem;
}

.content-text p {
  font-size: 2rem;
  line-height: 1.7;
}


.date-past {
  text-decoration: line-through;
}

/* Mobile Stil */
@media (max-width: 768px) {
  .content-section {
    flex-direction: column;
    text-align: left;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .content-image,
  .content-text {
    width: 100%;
    max-width: 100%;
  }

  .container {
    max-width: 100%;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .background-wrapper {
    background: var(--background-color-green-light); /* Mobile: gesamter Hintergrund grün */
  }

  body {
    font-size: 1.2rem; /* Reduzierte Standardgröße für kleinere Bildschirme */
  }

  h1 {
    font-size: 2.1rem;
    line-height: 1.25;
    padding-bottom: 1rem;
  }

  h2 {
    font-size: 1.75rem;
    line-height: 1.3;
    padding-bottom: 0.9rem;
  }

  h3 {
    font-size: 1.55rem;
    line-height: 1.35;
    padding-bottom: 0.8rem;
  }

  p,
  a,
  li,
  td,
  th,
  h1,
  h2,
  h3 {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  p,
  li,
  td,
  th {
    font-size: 1.5rem;
    line-height: 1.55;
  }

  a {
    font-size: 1.5rem;
  }

  .content-text ul li,
  .content-text .wp-block-list li {
    padding-left: 1.6rem;
    font-size: 1.5rem;
  }

  .content-section:first-of-type {
    padding-top: 9rem;
  }

  .content-text p {
    font-size: 1.5rem;
    line-height: 1.55;
  }

  .content-text h1 {
    font-size: 2.1rem;
    margin-bottom: 0.6rem;
  }

  .content-text h2 {
    font-size: 1.75rem;
  }

  .content-text h3 {
    font-size: 1.55rem;
  }

  table {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }

  .wp-block-table,
  table {
    width: 100%;
    max-width: 100%;
    display: block;
    border-collapse: collapse;
    table-layout: fixed;
  }

  .wp-block-table {
    overflow-x: visible;
  }

  table td,
  table th {
    display: block;
    width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  table td:first-child {
    font-weight: bold;
    padding-bottom: 0;
  }

  table td:last-child {
    padding-bottom: 2rem;
  }
}

.content-text ul,
.content-text .wp-block-list {
  list-style: none;
  padding-left: 0;
  padding-bottom: 4rem;
}

.content-text ul li,
.content-text .wp-block-list li {
  position: relative;
  margin-left: 0;
  padding-left: 2rem;
  font-size: 2rem;
  padding-bottom: 0.5rem;
}

.content-text ul li::before,
.content-text .wp-block-list li::before {
  content: "-";
  position: absolute;
  left: 0;
  top: 0;
}

.content-text ul li br,
.content-text .wp-block-list li br {
  display: none;
}

@media (max-width: 768px) {
  .content-text ul li,
  .content-text .wp-block-list li {
    padding-left: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.55;
  }
}

.editor-styles-wrapper .content-section.wp-block-group {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8rem;
}

.editor-styles-wrapper .content-section > .wp-block-group__inner-container {
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8rem;
}

.editor-styles-wrapper .content-section > .content-image,
.editor-styles-wrapper .content-section > .wp-block-group__inner-container > .content-image {
  flex: 0 0 300px;
  max-width: 300px;
  width: 100%;
  align-self: center;
}

.editor-styles-wrapper .content-section > .content-text,
.editor-styles-wrapper .content-section > .wp-block-group__inner-container > .content-text {
  flex: 1;
  min-width: 0;
}

.editor-styles-wrapper .content-image .wp-block-image,
.editor-styles-wrapper .content-image figure {
  margin-top: 0;
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .editor-styles-wrapper .content-section.wp-block-group {
    flex-direction: column;
    flex-wrap: wrap;
    gap: 3rem;
  }

  .editor-styles-wrapper .content-section > .wp-block-group__inner-container {
    flex-direction: column;
    gap: 3rem;
  }

  .editor-styles-wrapper .content-section > .content-image,
  .editor-styles-wrapper .content-section > .content-text,
  .editor-styles-wrapper .content-section > .wp-block-group__inner-container > .content-image,
  .editor-styles-wrapper .content-section > .wp-block-group__inner-container > .content-text {
    max-width: 100%;
    width: 100%;
    flex: none;
  }
}
