:root {
  --color-lightblue: #fcdcaa;
  --color-darkblue: #dc6d01;
  --color-red: #a01916;
  --color-text: #333333; /* Dunkelgrauer Text für hohen Kontrast */
  --color-border: #CCCCCC;
  --color-background: #EEEEEE; /* Weißer Hintergrund */
}
body {
  font-size: 16px; /* Grundlegende Schriftgröße */
  line-height: 1.5; /* Angemessener Zeilenabstand */
  background: var(--color-background);
  background-color: var(--color-background);
  color: var(--color-text);
}
/* Sicherstellen, dass Text gut skaliert */
p, h1, h2, h3, h4, h5, h6, li, a, button, input, textarea {
  font-size: 1em; /* Skalierbare Schriftgröße */
}
/* Kontrastreicher Text für Links */
a {
  color: var(--color-darkblue); /* Dunkelblauer Linktext für ausreichenden Kontrast */
  font-weight: 600;
  text-decoration: underline;
}
/* Hover- und Fokus-Stile für Links zur besseren Bedienbarkeit */
a:hover, a:focus {
  color: #dc6d01; /* Etwas dunkler bei Hover/Fokus für Klarheit */
  text-decoration: underline;
  outline: none;
}
.button {
  color: var(--color-darkblue);
}
.button:hover, button:focus {
  color: #0b59d8;
}
/* Sicherstellung der ausreichenden Lesbarkeit von Text */
p {
  margin-bottom: 1em;
}
/* Listenelemente klar und zugänglich gestalten */
ul, ol {
  margin-left: 1.5em;
}
li {
  margin-bottom: 0.5em;
}
/* Überschriften mit klarem Kontrast */
h1, h2, h3, h4, h5, h6 {
  color: var(--color-darkblue); /* Sehr dunkles Grau für klare Lesbarkeit */
  margin-top: 1.5em;
  margin-bottom: 0.5em;
}
h1 {
  margin-top: 0.5em;
  font-size: 2em;
}
h2 {
  font-size: 1.5em;
  font-weight: 600;
}
h3 {
  margin-top: 1em;
  margin-bottom: 0.25em;
  font-size: 1.25em;
}
h4 {}
/* Tastaturbedienbarkeit sicherstellen */
input, textarea {
  font-size: 1em;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #cccccc;
  padding: 0.5em;
  margin: 0.5em 0;
}
input:hover, input:focus, textarea:hover, textarea:focus {
  background-color: #e0e0e0;
  border-color: #999999;
  border-radius: 7px;
  outline: 2px solid var(--color-darkblue); /* Deutliche Umrandung bei Fokus */
}
button {
  font-size: 1em;
  color: #ffffff;
  background-color: #dc6d01;
  border: 1px solid #cccccc;
  padding: 0.5em;
  margin: 0.5em 0;
}
button:hover, button:focus {
  background-color: #e0e0e0;
  color: var(--color-text);
  border-color: #999999;
  border-radius: 7px;
  outline: 2px solid var(--color-darkblue); /* Deutliche Umrandung bei Fokus */
}
.cta {
  text-decoration: none!important;
}
/* Kontraststarke Hintergrundfarben für hervorgehobene Inhalte */
.highlight, .alert {
  background-color: #ffeb3b; /* Helles Gelb für Hervorhebungen */
  color: #000000; /* Schwarzer Text für höchsten Kontrast */
  padding: 1em;
  margin: 1em 0;
}
.blureimage {
  border-radius: 14px; /* Abgerundete Ecken */
  -webkit-mask-image: 
    radial-gradient(circle, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
  mask-image: 
    radial-gradient(circle, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
}
/* Fokus-Indikatoren für alle interaktiven Elemente (WCAG 2.2 Stufe A) */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--color-darkblue); /* Sichtbare und deutliche Umrandung für den Fokus */
}
/* Abstand zwischen interaktiven Elementen sicherstellen (WCAG 2.2 Stufe A) */
button, input[type="submit"] {
  margin: 0.5em; /* Sicherstellen, dass genügend Abstand vorhanden ist */
  padding: 0.75em 1em; /* Angemessene Größe für Touch-Geräte */
  min-width: 44px; /* Mindestgröße von 44px für Touch-Ziele (WCAG 2.2 Stufe A) */
  min-height: 44px; /* Mindestgröße von 44px für Touch-Ziele */
}
#main-content {
  background-color: var(--color-background) !important;
}
.hidden {
  display: none !important;
}
.et_builder_inner_content {
  background: var(--color-background);
}
.et_boxed_layout #page-container {
  max-width: 1080px;
  width: 100%;
}
#s2g-breadcrumb a{
  font-size: 14px;
  margin: 0px;
  padding: 0px;
  min-width: 0px;
  min-height: 0px;
}

/*******************************************/
/*              Blog Overview              */
/*******************************************/
#blog_overview .pagination a {
  color: pink;
}
#blog_overview .alignleft {
  float: right;
}
#blog_overview .alignright {
  float: left;
}
#blog_overview img {
  object-fit: cover;
  max-height: 250px;
  min-height: 250px;
  max-width: unset;
}
#blog_overview .post-content-inner {
  height: 230px;
}
#blog_overview .entry-title {
  height: 90px;
}
#blog_overview .post-meta {
  height: 45px
}
/*******************************************/
/*              Seiten Teaser              */
/*******************************************/
.teaser .et_pb_blurb_description {
  padding-left: 15px;
  padding-right: 15px;
  height: 95px;
  overflow: hidden;
}
.teaser .et_pb_image_wrap {
  height: 160px;
  width: 100%;
  overflow: hidden;
}
/*******************************************/
/*                 Forms                   */
/*******************************************/
form label {
  margin-top: .8rem;
  margin-bottom: .2rem;
}
form label.error {
  color: #dc622a;
  font-size: 0.85em;
  margin-top: .2rem;
  margin-bottom: .4rem;
}
form input.error, form select.error, form textarea.error {
  border-color: #dc622a;
}
form button.btn-success {
  background-color: var(--color-darkblue);
  border-color: var(--color-darkblue);
}

/*******************************************/
/*              Media Query                */
/*******************************************/
/* Medien-Queries zur Unterstützung von Textskalierung */
@media (max-width: 600px) {
  body {
    font-size: 18px; /* Größerer Text auf kleinen Bildschirmen */
  }
}
/*Smartphones*/
@media (max-width: 480px) {
  .et_boxed_layout #page-container, #et-main-area {
    width: 100%;
    overflow-wrap: anywhere;
  }
}
/*Smartphones and small Tablets*/
@media (max-width: 768px) and (min-width: 480px) {
  .et_boxed_layout #page-container, #et-main-area {
    width: 100%;
    overflow-wrap: anywhere;
  }
}
/*Tablets*/
@media (max-width: 980px) and (min-width: 768px) {
  .et_boxed_layout #page-container, #et-main-area {
    width: 100%;
    overflow-wrap: anywhere;
  }
}
/*Laptops and Large Tablets*/
@media (max-width: 1100px) and (min-width: 980px) {}
/*Standard Desktop*/
@media (max-width: 1405px) and (min-width: 1100px) {}