/* elator drive – Basis der Atomic-Container
   Grundregeln fuer .e-con, .e-flexbox-base, .e-heading-base und Verwandte.
   Sie tragen Anzeigeart, Flussrichtung und Grundabstaende – ohne sie greifen
   die System- und Einzelelementregeln ins Leere.
   Regeln fuer ersetzte Widgets (Menue, Karussell, Loop-Grid) sind entfernt.
   Muss VOR 03-system.css geladen werden.

   REIHENFOLGE IST WESENTLICH: die .e-*-base-Regeln stehen bewusst am Ende
   jedes Abschnitts. Im Bestand heissen sie '.elementor .e-flexbox-base' und
   gewinnen gegen '.e-con' ueber die hoehere Spezifitaet. Ohne den Vorfahren
   sind beide gleich stark, dann entscheidet die Reihenfolge. */

/* ---------- Desktop · 81 Regeln ---------- */

.e-con-inner>.elementor-element.elementor-absolute,.e-con>.elementor-element.elementor-absolute,.elementor-widget-wrap>.elementor-element.elementor-absolute {
  position:absolute;
}
.e-con-inner>.elementor-element.elementor-fixed,.e-con>.elementor-element.elementor-fixed,.elementor-widget-wrap>.elementor-element.elementor-fixed {
  position:fixed;
}
.e-con {
  --border-radius:0;
  --border-top-width:0px;
  --border-right-width:0px;
  --border-bottom-width:0px;
  --border-left-width:0px;
  --border-style:initial;
  --border-color:initial;
  --container-widget-width:100%;
  --container-widget-height:initial;
  --container-widget-flex-grow:0;
  --container-widget-align-self:initial;
  --content-width:min(100%,var(--container-max-width,1140px));
  --width:100%;
  --min-height:initial;
  --height:auto;
  --text-align:initial;
  --margin-top:0px;
  --margin-right:0px;
  --margin-bottom:0px;
  --margin-left:0px;
  --padding-top:var(--container-default-padding-top,10px);
  --padding-right:var(--container-default-padding-right,10px);
  --padding-bottom:var(--container-default-padding-bottom,10px);
  --padding-left:var(--container-default-padding-left,10px);
  --position:relative;
  --z-index:revert;
  --overflow:visible;
  --gap:var(--widgets-spacing,20px);
  --row-gap:var(--widgets-spacing-row,20px);
  --column-gap:var(--widgets-spacing-column,20px);
  --overlay-mix-blend-mode:initial;
  --overlay-opacity:1;
  --overlay-transition:0.3s;
  --e-con-grid-template-columns:repeat(3,1fr);
  --e-con-grid-template-rows:repeat(2,1fr);
  border-radius:var(--border-radius);
  height:var(--height);
  min-height:var(--min-height);
  min-width:0;
  overflow:var(--overflow);
  position:var(--position);
  width:var(--width);
  z-index:var(--z-index);
  --flex-wrap-mobile:wrap;
}
.e-con {
  --margin-block-start:var(--margin-top);
  --margin-block-end:var(--margin-bottom);
  --margin-inline-start:var(--margin-left);
  --margin-inline-end:var(--margin-right);
  --padding-inline-start:var(--padding-left);
  --padding-inline-end:var(--padding-right);
  --padding-block-start:var(--padding-top);
  --padding-block-end:var(--padding-bottom);
  --border-block-start-width:var(--border-top-width);
  --border-block-end-width:var(--border-bottom-width);
  --border-inline-start-width:var(--border-left-width);
  --border-inline-end-width:var(--border-right-width);
}
body.rtl .e-con {
  --padding-inline-start:var(--padding-right);
  --padding-inline-end:var(--padding-left);
  --margin-inline-start:var(--margin-right);
  --margin-inline-end:var(--margin-left);
  --border-inline-start-width:var(--border-right-width);
  --border-inline-end-width:var(--border-left-width);
}
.e-con {
  margin-block-end:var(--margin-block-end);
  margin-block-start:var(--margin-block-start);
  margin-inline-end:var(--margin-inline-end);
  margin-inline-start:var(--margin-inline-start);
  padding-inline-end:var(--padding-inline-end);
  padding-inline-start:var(--padding-inline-start);
}
.e-con.e-flex {
  --flex-direction:column;
  --flex-basis:auto;
  --flex-grow:0;
  --flex-shrink:1;
  flex:var(--flex-grow) var(--flex-shrink) var(--flex-basis);
}
.e-con-full,.e-con>.e-con-inner {
  padding-block-end:var(--padding-block-end);
  padding-block-start:var(--padding-block-start);
  text-align:var(--text-align);
}
.e-con-full.e-flex,.e-con.e-flex>.e-con-inner {
  flex-direction:var(--flex-direction);
}
.e-con,.e-con>.e-con-inner {
  display:var(--display);
}
.e-con.e-grid {
  --grid-justify-content:start;
  --grid-align-content:start;
  --grid-auto-flow:row;
}
.e-con.e-grid,.e-con.e-grid>.e-con-inner {
  align-content:var(--grid-align-content);
  align-items:var(--align-items);
  grid-auto-flow:var(--grid-auto-flow);
  grid-template-columns:var(--e-con-grid-template-columns);
  grid-template-rows:var(--e-con-grid-template-rows);
  justify-content:var(--grid-justify-content);
  justify-items:var(--justify-items);
}
.e-con.e-flex>.e-con-inner {
  align-content:var(--align-content);
  align-items:var(--align-items);
  align-self:auto;
  flex-basis:auto;
  flex-grow:1;
  flex-shrink:1;
  flex-wrap:var(--flex-wrap);
  justify-content:var(--justify-content);
}
.e-con.e-grid>.e-con-inner {
  align-items:var(--align-items);
  justify-items:var(--justify-items);
}
.e-con>.e-con-inner {
  gap:var(--row-gap) var(--column-gap);
  height:100%;
  margin:0 auto;
  max-width:var(--content-width);
  padding-inline-end:0;
  padding-inline-start:0;
  width:100%;
}
:is(.elementor-section-wrap,[data-elementor-id])>.e-con {
  --margin-left:auto;
  --margin-right:auto;
  max-width:min(100%,var(--width));
}
:is([data-widget_type="e-component.default"],[data-widget_type="e-component.default"]>.elementor-section-wrap)>.e-con {
  --margin-right:0px;
  --margin-left:0px;
}
.e-con .elementor-widget.elementor-widget {
  margin-block-end:0;
}
.e-con:before {
  transition:background var(--overlay-transition,.3s),border-radius var(--border-transition,.3s),opacity var(--overlay-transition,.3s);
}
:is(.e-con,.e-con>.e-con-inner)>.elementor-background-slideshow:before {
  z-index:2;
}
.e-con .elementor-widget {
  min-width:0;
}
.e-con>.e-con-inner>.elementor-widget>.elementor-widget-container,.e-con>.elementor-widget>.elementor-widget-container {
  height:100%;
}
.e-con.e-con>.e-con-inner>.elementor-widget,.elementor.elementor .e-con>.elementor-widget {
  max-width:100%;
}
.e-con .elementor-widget:not(:last-child) {
  --kit-widget-spacing:0px;
}
.e-con.e-transform {
  transform:perspective(var(--e-con-transform-perspective,0)) rotate(var(--e-con-transform-rotateZ,0)) rotateX(var(--e-con-transform-rotateX,0)) rotateY(var(--e-con-transform-rotateY,0)) translate(var(--e-con-transform-translate,0)) translateX(var(--e-con-transform-translateX,0)) translateY(var(--e-con-transform-translateY,0)) scaleX(calc(var(--e-con-transform-flipX, 1) * var(--e-con-transform-scaleX, var(--e-con-transform-scale, 1)))) scaleY(calc(var(--e-con-transform-flipY, 1) * var(--e-con-transform-scaleY, var(--e-con-transform-scale, 1)))) skewX(var(--e-con-transform-skewX,0)) skewY(var(--e-con-transform-skewY,0));
  transform-origin:var(--e-con-transform-origin-y) var(--e-con-transform-origin-x);
}
:where(.elementor-widget-n-accordion .e-n-accordion-item>.e-con) {
  border:var(--n-accordion-border-width) var(--n-accordion-border-style) var(--n-accordion-border-color);
}
.elementor-widget-n-accordion .e-n-accordion-item:not([open]) .e-con {
  display:none;
}
.e-con {
  --container-max-width:1140px;
  --container-default-padding-top:0px;
  --container-default-padding-right:0px;
  --container-default-padding-bottom:0px;
  --container-default-padding-left:0px;
}
.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload), .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * {
  background-image: none !important;
}
.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a {
  color:inherit;
  font-size:inherit;
  line-height:inherit;
}
.screen-reader-text {
  word-wrap:normal!important;
  border:0;
  clip-path:inset(50%);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px;
}
.screen-reader-text:focus {
  background-color:#ddd;
  clip-path:none;
  color:#444;
  display:block;
  font-size:1em;
  height:auto;
  left:5px;
  line-height:normal;
  padding:15px 23px 14px;
  text-decoration:none;
  top:5px;
  width:auto;
  z-index:100000;
}
.screen-reader-text {
  clip:rect(1px,1px,1px,1px);
  height:1px;
  overflow:hidden;
  position:absolute!important;
  width:1px;
  word-wrap:normal!important;
}
.screen-reader-text:focus {
  background-color:#eee;
  clip:auto!important;
  clip-path:none;
  color:#333;
  display:block;
  font-size:1rem;
  height:auto;
  left:5px;
  line-height:normal;
  padding:12px 24px;
  text-decoration:none;
  top:5px;
  width:auto;
  z-index:100000;
}
.elementor-grid {
  display:grid;
  grid-column-gap:var(--grid-column-gap);
  grid-row-gap:var(--grid-row-gap);
}
.elementor-grid-3 .elementor-grid {
  grid-template-columns:repeat(3,1fr);
}
.e-con-boxed.e-flex {
  align-content:normal;
  align-items:normal;
  flex-direction:column;
  flex-wrap:nowrap;
  justify-content:normal;
}
.e-con-boxed {
  gap:initial;
  text-align:initial;
}
.elementor-heading-title {
  line-height:1;
  margin:0;
  padding:0;
}
.elementor-button {
  background-color:#69727d;
  border-radius:3px;
  color:#fff;
  display:inline-block;
  fill:#fff;
  font-size:15px;
  line-height:1;
  padding:12px 24px;
  text-align:center;
  transition:all .3s;
}
.elementor-button:focus,.elementor-button:hover,.elementor-button:visited {
  color:#fff;
}
.elementor-button-content-wrapper {
  display:flex;
  flex-direction:row;
  gap:5px;
  justify-content:center;
}
.elementor-button-text {
  display:inline-block;
}
.elementor-button span {
  text-decoration:inherit;
}
.elementor-widget-n-accordion {
  --n-accordion-title-font-size:20px;
  --n-accordion-title-flex-grow:initial;
  --n-accordion-title-justify-content:initial;
  --n-accordion-title-icon-order:-1;
  --n-accordion-border-width:1px;
  --n-accordion-border-color:#d5d8dc;
  --n-accordion-border-style:solid;
  --n-accordion-item-title-flex-grow:initial;
  --n-accordion-item-title-space-between:0px;
  --n-accordion-item-title-distance-from-content:0px;
  --n-accordion-padding:10px;
  --n-accordion-border-radius:0px;
  --n-accordion-icon-size:15px;
  --n-accordion-title-normal-color:#1f2124;
  --n-accordion-title-hover-color:#1f2124;
  --n-accordion-title-active-color:#1f2124;
  --n-accordion-icon-normal-color:var(--n-accordion-title-normal-color);
  --n-accordion-icon-hover-color:var(--n-accordion-title-hover-color);
  --n-accordion-icon-active-color:var(--n-accordion-title-active-color);
  --n-accordion-icon-gap:0 10px;
  width:100%;
}
.elementor-widget-n-accordion .e-n-accordion details>summary::-webkit-details-marker {
  display:none;
}
.elementor-widget-n-accordion .e-n-accordion-item {
  display:flex;
  flex-direction:column;
  position:relative;
}
.elementor-widget-n-accordion .e-n-accordion-item:not(:last-child) {
  margin-block-end:var(--n-accordion-item-title-space-between);
}
.elementor-widget-n-accordion .e-n-accordion-item-title {
  align-items:center;
  border-color:var(--n-accordion-border-color);
  border-radius:var(--n-accordion-border-radius);
  border-style:var(--n-accordion-border-style);
  border-width:var(--n-accordion-border-width);
  color:var(--n-accordion-title-normal-color);
  cursor:pointer;
  display:flex;
  flex-direction:row;
  flex-grow:var(--n-menu-title-flex-grow);
  gap:var(--n-accordion-icon-gap);
  justify-content:var(--n-accordion-title-justify-content);
  list-style:none;
  padding:var(--n-accordion-padding);
}
.elementor-widget-n-accordion .e-n-accordion-item-title-header {
  display:flex;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-header h1,.elementor-widget-n-accordion .e-n-accordion-item-title-header h2,.elementor-widget-n-accordion .e-n-accordion-item-title-header h3,.elementor-widget-n-accordion .e-n-accordion-item-title-header h4,.elementor-widget-n-accordion .e-n-accordion-item-title-header h5,.elementor-widget-n-accordion .e-n-accordion-item-title-header h6,.elementor-widget-n-accordion .e-n-accordion-item-title-header p {
  margin-block-end:0;
  margin-block-start:0;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-text {
  align-items:center;
  font-size:var(--n-accordion-title-font-size);
}
.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
  align-items:center;
  display:flex;
  flex-direction:row;
  order:var(--n-accordion-title-icon-order);
  position:relative;
  width:-moz-fit-content;
  width:fit-content;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
  height:var(--n-accordion-icon-size);
  width:auto;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-icon span>i {
  color:var(--n-accordion-icon-normal-color);
  font-size:var(--n-accordion-icon-size);
}
.elementor-widget-n-accordion .e-n-accordion-item-title-icon span>svg {
  fill:var(--n-accordion-icon-normal-color);
  height:var(--n-accordion-icon-size);
}
.elementor-widget-n-accordion .e-n-accordion-item-title>span {
  cursor:pointer;
}
.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title {
  color:var(--n-accordion-title-active-color);
  margin-block-end:var(--n-accordion-item-title-distance-from-content);
}
.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened {
  display:flex;
}
.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed {
  display:none;
}
.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>i {
  color:var(--n-accordion-icon-active-color);
}
.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>svg {
  fill:var(--n-accordion-icon-active-color);
}
.elementor-widget-n-accordion .e-n-accordion-item:not([open]):hover>.e-n-accordion-item-title {
  color:var(--n-accordion-title-hover-color);
}
.elementor-widget-n-accordion .e-n-accordion-item:not([open]):hover>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>i {
  color:var(--n-accordion-icon-hover-color);
}
.elementor-widget-n-accordion .e-n-accordion-item:not([open]):hover>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>svg {
  fill:var(--n-accordion-icon-hover-color);
}
.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon .e-opened {
  display:none;
}
.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon .e-closed {
  display:flex;
}
.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span>svg {
  fill:var(--n-accordion-icon-normal-color);
}
.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span>i {
  color:var(--n-accordion-icon-normal-color);
}
.elementor-widget-n-accordion .e-n-accordion-item>span {
  cursor:pointer;
}
.e-div-block-base {
  min-width:30px;
  padding:10px;
  display:block;
}
.e-flexbox-base {
  padding:10px;
  display:flex;
  flex-direction:row;
}
.e-heading-base {
  margin:0px;
}
.e-image-base {
  display:block;
}
.e-paragraph-base {
  margin:0px;
}
.e-svg-base {
  width:65px;
  height:65px;
  display:inline-block;
}
.e-button-base {
  text-align:center;
  padding-block-start:12px;
  padding-block-end:12px;
  padding-inline-start:24px;
  padding-inline-end:24px;
  border-radius:2px;
  border-width:0px;
  background-color:#375EFB;
  display:inline-block;
}
.e-divider-base {
  height:1px;
  border-width:0px;
  border-color:transparent;
  border-style:none;
  background-color:#000;
}
.e-con:where(:not(.e-div-block-base)) {
  transition:background var(--background-transition,.3s),border var(--border-transition,.3s),box-shadow var(--border-transition,.3s),transform var(--e-con-transform-transition-duration,.4s);
}
.elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)) .elementor-widget-container,.elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)):not(:has(.elementor-widget-container)) {
  transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);
}
/* End Custom Fonts CSS */ .e-heading-base a, .e-paragraph-base a {
  all: unset;
  cursor: pointer;
}

/* ---------- Tablet (<= 1024px) · 2 Regeln ---------- */

@media (max-width: 1024px) {
  .e-con {
    --container-max-width:1024px;
  }
  .elementor-grid-tablet-2 .elementor-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

/* ---------- Mobil (<= 767px) · 4 Regeln ---------- */

@media (max-width: 767px) {
  .e-con.e-flex {
    --width:100%;
    --flex-wrap:var(--flex-wrap-mobile);
  }
  .e-con.e-flex .elementor-widget-archive-posts {
    width:100%;
  }
  .e-con {
    --container-max-width:767px;
  }
  .elementor-grid-mobile-1 .elementor-grid {
    grid-template-columns:repeat(1,1fr);
  }
}

