@charset "UTF-8";
:root {
  --font-size-xlarge: clamp(1.875rem, 1.25rem + 3.125vw, 5rem); /* 30px → 80px */
  --font-size-large: clamp(1.75rem, 1.35rem + 2vw, 3.75rem); /* 28px → 60px */
  --font-size-xmedium: clamp(1.5625rem, 1.3125rem + 1.25vw, 2.8125rem); /* 25px → 45px */
  --font-size-medium: clamp(1.25rem, 1.0625rem + 0.9375vw, 2.1875rem); /* 20px → 35px */
  --font-size-default: clamp(1.125rem, 0.975rem + 0.75vw, 1.875rem); /* 18px → 30px */
  --font-size-button: clamp(1.125rem, 1.0375rem + 0.4375vw, 1.5625rem); /* 18px → 25px */
  --color-default: #000;
  --color-primary: #425D3F;
  --color-secondary: #F8F212;
  --color-grey: #CAD4C4;
}

html,
body {
  font-family: "Mulish", sans-serif;
  font-size: 16px;
}

body {
  color: var(--color-default);
  font-size: var(--font-size-default);
}

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

a {
  text-decoration: none;
  transition: all 400ms;
}

p {
  margin-top: 0;
}
p:last-child {
  margin-bottom: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--color-primary);
}

/* START: helpers */
.font-size-xlarge {
  font-size: var(--font-size-xlarge);
}

.font-size-large {
  font-size: var(--font-size-large);
}

.font-size-xmedium {
  font-size: var(--font-size-xmedium);
}

.font-size-medium {
  font-size: var(--font-size-medium);
}

.color-brand {
  color: var(--color-primary);
}

.color-seondary {
  color: var(--color-secondary);
}

.text-center,
.ce-headline-center {
  text-align: center;
}

.text-right,
.ce-headline-right {
  text-align: right;
}

/* END: helpers */
/* START: buttons */
.btn-default {
  background-color: var(--color-primary);
  border-radius: 5px;
  color: var(--color-grey);
  display: inline-block;
  font-size: var(--font-size-button);
  text-decoration: none;
  transition: all 400ms;
}
.btn-default a {
  color: var(--color-grey);
  display: inline-block;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-decoration: none;
}
.btn-default:not(:has(a)) {
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.btn-default:hover, .btn-default:focus-visible {
  box-shadow: 2px 4px 4px 1px rgba(0, 0, 0, 0.5);
}

.btn-secondary {
  background-color: var(--color-secondary);
  border-radius: 5px;
  color: var(--color-primary);
  display: inline-block;
  font-size: var(--font-size-button);
  text-decoration: none;
  transition: all 400ms;
}
.btn-secondary a {
  color: var(--color-primary);
  display: inline-block;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-decoration: none;
}
.btn-secondary:not(:has(a)) {
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.btn-secondary:hover, .btn-secondary:focus-visible {
  box-shadow: 2px 4px 4px 1px rgba(0, 0, 0, 0.5);
}

/* END: buttons */
/* START: container / grid */
.frame-type-grid {
  --grid-column-gap: clamp(2.5rem, 1.75rem + 3.75vw, 6.25rem);
  --grid-row-gap: 40px;
  --grid-item-min-width: min(320px, 100%);
}
.frame-type-grid > .row {
  display: grid;
  column-gap: var(--grid-column-gap);
  row-gap: var(--grid-row-gap);
}
.frame-type-grid .frame-type-grid-col-4 > .row {
  grid-template-columns: repeat(auto-fill, minmax(max(25% - var(--grid-column-gap), var(--grid-item-min-width)), 4fr));
}

@media screen and (min-width: 1280px) {
  .frame-type-grid.layout-line-between > .row > .column:not(:first-child) {
    position: relative;
  }
  .frame-type-grid.layout-line-between > .row > .column:not(:first-child)::after {
    background-color: var(--color-primary);
    content: " ";
    height: 100%;
    position: absolute;
    top: 0;
    left: calc(var(--grid-column-gap) / 2 * -1);
    width: 1px;
  }
  .frame-type-grid-col-3 > .row {
    grid-template-columns: repeat(auto-fill, minmax(max(33.3333333333% - var(--grid-column-gap), var(--grid-item-min-width)), 3fr));
  }
}
/* END: container / grid */
/* START: fluid_styled_content */
.frame {
  margin-left: auto;
  margin-right: auto;
  margin-top: clamp(1.875rem, 1.25rem + 3.125vw, 5rem);
  margin-bottom: clamp(1.875rem, 1.25rem + 3.125vw, 5rem);
  max-width: min(1490px, 90%);
}
.frame.frame-fullwidth {
  max-width: 100%;
}
.frame.frame-container-fullwidth {
  max-width: min(1920px, 100%);
}
.frame.frame-container-medium {
  max-width: min(1200px, 90%);
}
.frame.frame-container-small {
  max-width: min(860px, 90%);
}

.frame-space-before-none {
  margin-top: 0px;
}

.frame-space-before-small {
  margin-top: clamp(1.25rem, 0.75rem + 2.5vw, 3.75rem);
}

.frame-space-before-large {
  margin-top: clamp(2.5rem, 1.75rem + 3.75vw, 6.25rem);
}

.frame-space-before-extra-large {
  margin-top: clamp(3.125rem, 1.875rem + 6.25vw, 9.375rem);
}

.frame-space-after-none {
  margin-bottom: 0px;
}

.frame-space-after-small {
  margin-bottom: clamp(1.25rem, 0.75rem + 2.5vw, 3.75rem);
}

.frame-space-after-large {
  margin-bottom: clamp(2.5rem, 1.75rem + 3.75vw, 6.25rem);
}

.frame-space-after-extra-large {
  margin-bottom: clamp(3.125rem, 1.875rem + 6.25vw, 9.375rem);
}

.ce-image.ce-center .ce-column,
.ce-textpic.ce-center .ce-column {
  text-align: center;
}

.ce-gallery {
  --grid-column-gap: clamp(1.25rem, 0.8125rem + 2.1875vw, 3.4375rem);
  --grid-row-gap: clamp(1.25rem, 0.8125rem + 2.1875vw, 3.4375rem);
  --grid-item-min-width: min(320px, 100%);
}
.ce-gallery .ce-inner {
  display: grid;
  grid-template-columns: 100%;
  column-gap: var(--grid-column-gap);
  row-gap: var(--grid-row-gap);
}
.ce-gallery[data-ce-columns="4"] .ce-inner {
  grid-template-columns: repeat(auto-fill, minmax(max(25% - var(--grid-column-gap), var(--grid-item-min-width)), 4fr));
}

/* END: fluid_styled_content */
/* START: CUSTOM fluid_styled_content */
.frame-background-primary {
  background-color: var(--color-primary);
  color: var(--color-grey);
}

.frame-background-secondary {
  background-color: var(--color-secondary);
  color: var(--color-grey);
}

.frame-layout-image-card figure {
  position: relative;
}
.frame-layout-image-card figure > a {
  display: inline-block;
  position: relative;
}
.frame-layout-image-card figure > a:hover figcaption::before {
  left: 20px;
}
.frame-layout-image-card figure figcaption {
  bottom: 0;
  color: #fff;
  font-size: var(--font-size-button);
  left: 0;
  padding-left: 4.5ch;
  padding-right: 10px;
  margin-bottom: 10px;
  position: absolute;
}
.frame-layout-image-card figure figcaption::before {
  background-image: url("../../Icons/arrow-link-right.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  content: " ";
  display: block;
  height: 100%;
  left: 15px;
  position: absolute;
  top: 50%;
  width: 2ch;
  transform: translateY(-50%);
  transition: all 400ms;
}

/* END: CUSTOM fluid_styled_content */
.header-container {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: min-content;
  position: relative;
}
.header-container #header {
  grid-row-start: 1;
  grid-row-end: 2;
  grid-column-start: 1;
  grid-column-end: 2;
  text-align: center;
  z-index: 100;
}
.header-container #banner {
  grid-row-start: 1;
  grid-row-end: 2;
  grid-column-start: 1;
  grid-column-end: 2;
  display: grid;
  grid-template-columns: 100%;
}
.header-container #banner > .frame {
  grid-column: 1/2;
  grid-row: 1/2;
}
.header-container #banner > .frame-type-text {
  align-self: center;
  color: #fff;
  margin-top: 300px;
  z-index: 150;
}
.header-container #banner > .frame-type-image .ce-image, .header-container #banner > .frame-type-image .ce-gallery, .header-container #banner > .frame-type-image .ce-outer, .header-container #banner > .frame-type-image .ce-inner, .header-container #banner > .frame-type-image .ce-column, .header-container #banner > .frame-type-image .image-wrapper, .header-container #banner > .frame-type-image figure {
  height: 100%;
}
.header-container #banner > .frame-type-image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

#main .frame-type-image:last-child {
  margin-bottom: -11vw;
}

#footer {
  margin-left: auto;
  margin-right: auto;
  max-width: min(1920px, 100%);
  position: relative;
}
#footer a {
  color: #fff;
}
#footer a:hover, #footer a:focus-within {
  color: var(--color-secondary);
}
#footer .bg-footer, #footer .footer-content {
  grid-row-start: 1;
  grid-row-end: 2;
  grid-column-start: 1;
  grid-column-end: 2;
}
#footer .footer-content {
  background-color: #9bbc53;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -9vw;
  padding-left: min(12vw, 230px);
  padding-right: min(12vw, 230px);
  padding-top: 40px;
  position: relative;
  width: 100%;
  z-index: 50;
}

.color-layout-2 #footer .footer-content {
  background-color: #425d3f;
}

.color-layout-3 #footer .footer-content {
  background-color: #04416a;
}

@media screen and (min-width: 1921px) {
  #main .frame-type-image:last-child {
    margin-bottom: -220px;
  }
  #footer .footer-content {
    margin-top: -172px;
  }
}
/* START: gewinnspiel form */
.tx-powermail {
  font-size: clamp(1.25rem, 1.15rem + 0.5vw, 1.75rem);
}
.tx-powermail form > div, .tx-powermail form > input {
  display: none;
}
.tx-powermail form fieldset {
  border: 0;
}
.tx-powermail form textarea, .tx-powermail form input {
  border-radius: 5px;
  display: block;
  font-size: inherit;
  padding: 4px 8px;
  width: 100%;
}
.tx-powermail form input[type=text], .tx-powermail form input[type=email], .tx-powermail form input[type=tel], .tx-powermail form input[type=url], .tx-powermail form input[type=checkbox] {
  height: 40px;
}
.tx-powermail form input[type=checkbox] {
  border: 2px solid var(--color-grey);
  appearance: none;
}
.tx-powermail form input[type=checkbox]:checked {
  background-image: url("../../Icons/arrow-link-right.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.tx-powermail form input[type=submit] {
  background-color: var(--color-secondary);
  border-width: 0;
  border-radius: 5px;
  color: var(--color-primary);
  cursor: pointer;
  display: inline-block;
  font-size: var(--font-size-button);
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-decoration: none;
  text-transform: uppercase;
  width: auto;
  transition: all 400ms;
}
.tx-powermail form input[type=submit]:hover, .tx-powermail form input[type=submit]:focus-visible {
  box-shadow: 2px 4px 4px 1px rgba(0, 0, 0, 0.5);
}
.tx-powermail form .powermail_fieldwrap:not(:last-child) {
  margin-bottom: 10px;
}
.tx-powermail form .powermail_fieldwrap_type_input {
  position: relative;
}
.tx-powermail form .powermail_fieldwrap_type_input .powermail_label {
  left: 10px;
  pointer-events: none;
  position: absolute;
  z-index: 100;
  transition: all 400ms;
}
.tx-powermail form .powermail_fieldwrap_type_input .powermail_field {
  z-index: 50;
}
.tx-powermail form .powermail_fieldwrap_type_input:hover .powermail_label, .tx-powermail form .powermail_fieldwrap_type_input:focus .powermail_label, .tx-powermail form .powermail_fieldwrap_type_input:focus-within .powermail_label, .tx-powermail form .powermail_fieldwrap_type_input:has(input:not(:placeholder-shown)) .powermail_label {
  opacity: 0;
}
.tx-powermail form .powermail_fieldwrap_type_check > .powermail_field .checkbox:not(:last-child) {
  margin-bottom: 10px;
}
.tx-powermail form .powermail_fieldwrap_type_check > .powermail_field label:has(input) {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: clamp(0.625rem, 0.125rem + 2.5vw, 3.125rem);
}
.tx-powermail form .powermail_fieldwrap_checkboxlink > .powermail_field {
  display: grid;
  grid-template-columns: 40px 1fr;
  column-gap: clamp(0.625rem, 0.125rem + 2.5vw, 3.125rem);
}
.tx-powermail form .powermail_fieldwrap_checkboxlink > .powermail_field .powermail-errors-list {
  grid-column: 1/3;
}

.frame-background-primary .tx-powermail,
.frame-background-secondary .tx-powermail {
  margin-left: auto;
  margin-right: auto;
  max-width: min(1333px, 90%);
  padding-top: clamp(2.5rem, 1.75rem + 3.75vw, 6.25rem);
  padding-bottom: clamp(2.5rem, 1.75rem + 3.75vw, 6.25rem);
}
.frame-background-primary .powermail_form.powermail_form_2 input:not([type=submit]),
.frame-background-secondary .powermail_form.powermail_form_2 input:not([type=submit]) {
  background-color: transparent;
  border: 2px solid var(--color-grey);
}

.powermail_form.powermail_form_2 {
  container-type: inline-size;
  container-name: formGewinnspiel;
  display: grid;
  gap: clamp(1.25rem, 0.8125rem + 2.1875vw, 3.4375rem);
}
.powermail_form.powermail_form_2 .powermail_fieldwrap_antwort > label {
  display: block;
  margin-bottom: 50px;
}
.powermail_form.powermail_form_2 .powermail-errors-list {
  color: red;
  font-size: 0.8em;
  margin-top: 0;
}
.powermail_form.powermail_form_2 .powermail_fieldwrap_type_submit {
  margin-top: 80px;
}
.powermail_form.powermail_form_2 .powermail_fieldwrap_type_submit input {
  max-width: 280px;
  width: 100%;
}
.powermail_form.powermail_form_2 .checkbox-description a {
  color: inherit;
  font-weight: 800;
}

@container formGewinnspiel (width > 800px) {
  .powermail_form.powermail_form_2 fieldset:nth-child(odd) {
    grid-column: 1/2;
  }
  .powermail_form.powermail_form_2 fieldset:nth-child(even) {
    grid-column: 2/3;
  }
  .powermail_form.powermail_form_2 fieldset:nth-child(3) {
    grid-row: 1/3;
  }
  .powermail_form.powermail_form_2 .powermail_fieldwrap_antwort > label {
    margin-bottom: 110px;
  }
}
/* END: gewinnspiel form */
/*# sourceMappingURL=../sourcemaps/landingpage/layout.css.map */
