@charset "UTF-8";
/*============= VARIABLES =============*/
/*$color-two: #bbcf00;*/
:root,
:before,
:after {
  --em-per-pixels: calc(1em / 16);
  --rem-per-pixels: calc(1rem / 16);
  --max-width-xl: 120rem;
  --max-width-l: 100rem;
  --max-width-m: 90rem;
  --max-width-s: 60rem;
  --max-width-xs: 40rem;
  --max-width-xxs: 30rem;
  --vert-whitespace: 5rem;
  --wide-whitespace: 5rem;
  --desktop-whitespace: 5rem;
  --laptop-whitespace: 5rem;
  --mobile-whitespace: 3.75rem;
  --desktop-width: 1600px;
  --laptop-width: 1280px;
  --tablet-width: 1024px;
  --portrait-width: 960px;
  --mobile-width: 640px;
  --gap-col: calc(var(--vert-whitespace) / 2);
  --gap-row: calc(var(--vert-whitespace) / 2);
  --gap-hdl: 1.5625rem;
  --gap-txt: 0.9375rem;
  --black: #1a1a18;
  --black-rgb: 26, 26, 24;
  --darkgrey: #333;
  --darkgrey-rgb: 51, 51, 51;
  --grey: #777;
  --grey-rgb: 119, 119, 119;
  --lightgrey: #efefef;
  --lightgrey-rgb: 239, 239, 239;
  --white: #fff;
  --white-rgb: 255, 255, 255;
  --blue: #1a70b8;
  --blue-rgb: 26, 112, 184;
  --green: #a4c74e;
  --green-rgb: 164, 199, 78;
  --color-bg: var(--white);
  --color-bg-rgb: var(--white-rgb);
  --color-txt: var(--grey);
  --color-txt-rgb: var(--grey-rgb);
  --color-one: var(--blue);
  --color-one-rgb: var(--blue-rgb);
  --color-one-light: #92bcdd;
  --color-one-light-rgb: 179, 217, 247;
  --color-two: var(--green);
  --color-two-rgb: var(--green-rgb);
  --color-two-light: #c3ea61;
  --color-two-light-rgb: 195, 234, 97;
  --color-two-dark: #82b30a;
  --color-two-dark-rgb: 130, 179, 10;
  --color-error: #e42343;
  --linear-gradient-01: linear-gradient(
    to right,
    rgba(var(--color-one-rgb), 1),
    rgba(var(--color-two-rgb), 1) 70%
  );
  --main-font: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-serif: Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text",
    "Times New Roman", serif;
  --font-regular: quicksand-regular;
  --font-bold: quicksand-bold;
  --font-running-text: opensans-regular;
  --font-running-text-bold: opensans-bold;
  --font-condensed: pathway;
  --font-serif: droidserif-italic;
  --font-serif-bold: droidserif-bolditalic;
  --font-script: arsilon;
  --button-fontsize: 1.125rem;
  --running-text-fontsize: 1rem;
  --running-text-lineheight: 1.625rem;
  --border-radius-min: calc(5 * var(--rem-per-pixels));
  --border-radius-std: calc(10 * var(--rem-per-pixels));
  --border-radius-mid: calc(20 * var(--rem-per-pixels));
  --period-one: 500ms;
  --period-two: 750ms;
  --period-three: 1000ms;
  --cubic-bezier: cubic-bezier(0.165, 0.84, 0.44, 1);
  --text-shadow: 1px 3px 8px rgba(0, 0, 0, 0.5);
  --box-shadow-02: 12px 15px 23px -6px rgb(0 0 0 / 31%);
  --menu-height: calc(120 * var(--rem-per-pixels)); }

@media only screen and (min-width: 1600px) {
  --running-text-fontsize: 1.125rem; }

@media only screen and (max-width: 1600px) {
  :root {
    --vert-whitespace: var(--desktop-whitespace); } }

@media only screen and (max-width: 1440px) {
  :root {
    --menu-height: 80px; } }

@media only screen and (max-width: 1280px) {
  :root {
    --vert-whitespace: var(--laptop-whitespace);
    --running-text-lineheight: 1.5rem; } }

@media only screen and (max-width: 1024px) {
  --button-fontsize: 1rem;
  --running-text-lineheight: 1.375rem; }

@media only screen and (max-width: 960px) {
  :root {
    --vert-whitespace: var(--mobile-whitespace);
    --gap-col: 5%;
    --button-fontsize: 0.875rem; } }

@media only screen and (max-width: 640px) {
  --running-text-fontsize: 0.9375rem; }

@keyframes ani-width {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@keyframes ani-bar {
  0% {
    transform: translate3d(-100%, 0, 0); }
  100% {
    transform: translate3d(0, 0, 0); } }

@keyframes scale-pulse {
  0% {
    transform: scale(1);
    opacity: 1; }
  100% {
    transform: scale(1.5);
    opacity: 0; } }

/*========= COOKIE CONSENT =========*/
#cookie-consent {
  position: fixed;
  bottom: 20px;
  left: 20px;
  bottom: 0;
  left: 0;
  z-index: 500;
  width: 100%;
  height: 100vh;
  height: 100svh;
  padding: 0;
  background-color: rgba(var(--white-rgb), 0.92);
  box-shadow: rgba(0, 0, 0, 0.1) 3px 15px 43px;
  transform: none;
  opacity: 1;
  border-radius: 0.3125rem;
  overflow: hidden;
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px); }

@media only screen and (max-width: 1024px) {
  #cookie-consent {
    right: auto;
    left: 50%;
    transform: translateX(-50%); } }

@media only screen and (max-width: 640px) {
  #cookie-consent {
    right: auto;
    left: 0;
    bottom: 0;
    transform: unset; } }

/*@media only screen and (max-width: 768px) {
	#cookie-consent {
		width: 100%;
		left: 50%;
		transform: translateX(-50%); }
}
@media only screen and (max-width: 640px) {
	#cookie-consent { bottom: 0; }
}
@media only screen and (max-height: 375px) {
	#cookie-consent {
		left: 50%; bottom: 5%;
		transform: translateX(-50%); }
}*/
#cookie-settings-frame {
  width: 100%;
  display: block;
  padding: 0;
  overflow-y: scroll;
  scrollbar-width: none; }

#cookie-settings-frame.active {
  scrollbar-width: thin; }

#cookie-settings-frame::-webkit-scrollbar {
  width: 0;
  background-color: #fff; }

#cookie-settings-frame.active::-webkit-scrollbar {
  width: 10px; }

#cookie-settings-frame::-webkit-scrollbar-thumb {
  border-radius: 10px;
  border: 2px solid #fff;
  background: #bbb; }

/*@media only screen and (max-width: 960px) {
	#cookie-settings-frame { max-height: 75vh; }
}*/
@media only screen and (max-height: 375px) {
  #cookie-settings-frame {
    max-height: 60vh; } }

#cookie-consent .wrapper-s::before,
#cookie-consent .wrapper-s::after {
  content: none; }

#cookie-consent .wrapper-s {
  clear: both;
  width: 100%;
  padding: var(--menu-height) 1.25rem 0.625rem 1.25rem;
  margin: 0 auto;
  display: block; }

#cookie-consent .hint {
  float: left;
  clear: both;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.3125rem; }

.cc-hint h1,
.cc-hint h2,
.cc-hint h3,
.cc-hint h4,
.cc-hint h5,
.cc-hint h6,
.cc-hint p {
  padding-bottom: 10px; }

.cc-hint *:last-child {
  padding-bottom: 0;
  margin-bottom: 0; }

#cookie-consent .wrapper-s .wrapper-s {
  padding: 0;
  display: flex;
  flex-flow: row wrap;
  row-gap: 1.25rem; }

#cookie-consent-wrapper #cookie-settings-wrapper {
  padding: 0; }

#cookie-consent .main-wrapper {
  max-width: 960px;
  display: block;
  padding: 10px 20px;
  margin: 0 auto; }

#cookie-consent a,
#cookie-consent input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

#cookie-consent p.title {
  font-size: 1.5rem;
  line-height: 24px;
  font-weight: 600;
  padding-bottom: 0;
  margin: 20px 0 0 0;
  color: var(--color-txt);
  font-family: var(--font-bold), "Helvetica Neue", Helvetica, Arial, sans-serif; }

#cookie-consent a {
  text-decoration: underline;
  text-decoration-thickness: 0.0625rem;
  text-underline-offset: 0.3125em;
  border: none;
  text-decoration: underline !important; }

#cookie-consent .cc-toggle-btn {
  margin: 0;
  padding: 0;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
  cursor: pointer; }

html[lang="en"] #cookie-consent .cc-toggle-btn::before {
  content: "Open ";
  display: inline; }

html[lang="en"] #cookie-consent .cc-toggle-btn.active::before {
  content: "Close "; }

html[lang="de"] #cookie-consent .cc-toggle-btn::after {
  content: " öffnen";
  display: inline; }

html[lang="de"] #cookie-consent .cc-toggle-btn.active::after {
  content: " schließen"; }

#cookie-consent .cc-toggle-btn,
#cookie-consent .cc-toggle-btn::after {
  font-family: var(--font-bold), "Helvetica Neue", Helvetica, Arial, sans-serif;
  position: static;
  transform: none; }

#cookie-consent .cc-toggle-btn,
#cookie-consent .cc-toggle-btn *,
#cookie-consent .cc-toggle-btn::after {
  font-family: var(--font-running-text-bold);
  font-size: 1.125rem;
  line-height: 1.25em;
  color: var(--blue);
  font-weight: 600; }

#cookie-consent .Inputfield {
  float: left;
  width: 100%;
  display: block;
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px solid var(--color-txt); }

#cookie-consent .Inputfield:first-child {
  border-top: none; }

#cookie-consent .Inputfield:last-child {
  padding-bottom: 0; }

#cookie-consent .InputfieldContent {
  position: relative;
  float: left;
  width: 100%;
  display: block; }

#cookie-consent table,
#cookie-consent tbody,
#cookie-consent tr {
  width: 100%;
  justify-content: space-between; }

#cookie-consent tr:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.25); }

#cookie-consent th,
#cookie-consent td {
  font-size: 0.875rem;
  line-height: 18px;
  padding: 5px;
  vertical-align: top; }

#cookie-consent th {
  font-family: opensans-regular, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  padding-right: 15px; }

#cookie-consent td {
  width: 70%;
  font-family: opensans-regular, "Helvetica Neue", Helvetica, Arial, sans-serif;
  background: transparent !important; }

.cc-cat-list,
.cc-cat {
  float: left;
  width: 100%;
  margin: 0;
  display: block; }

.cc-cat {
  margin-top: 30px; }

.cc-cat .title {
  font-size: 1.125rem;
  font-family: var(--font-bold), "Helvetica Neue", Helvetica, Arial, sans-serif;
  padding: 0;
  margin-bottom: 0;
  font-weight: 600;
  color: var(--color-txt); }

#cookie-consent .InputfieldHeader {
  margin-bottom: 5px; }

.cc-hint {
  float: left;
  width: 100%;
  display: block; }

#cookie-consent .cc-hint,
#cookie-consent .cc-hint p {
  width: 100%;
  display: block;
  font-family: opensans-regular, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  color: var(--color-txt); }

#cookie-consent .cc-hint * {
  color: var(--color-txt); }

#cookie-consent .cc-hint p {
  font-size: 0.9375rem;
  line-height: 20px;
  margin-bottom: 0; }

#cookie-consent * {
  hyphens: auto; }

#cookie-consent .title *:last-child,
#cookie-consent .InputfieldHeader * {
  margin-bottom: 0; }

#cookie-consent .title p {
  font-size: 1.25rem;
  font-family: var(--font-bold), "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600; }

#cookie-consent .InputfieldHeader * {
  font-size: 1.25rem; }

#cookie-consent .button-wrapper {
  float: left;
  position: relative;
  top: auto;
  right: auto;
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0;
  display: flex;
  flex-flow: row wrap; }

#cookie-consent .button-wrapper::before,
#cookie-consent .button-wrapper::after {
  content: none; }

#cookie-consent button {
  float: left;
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  margin: 0;
  display: block;
  font-family: var(--font-bold), "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  letter-spacing: 0.04rem;
  cursor: pointer; }

#cookie-consent button:last-child {
  margin-right: 0;
  background: transparent; }

#cookie-consent button span {
  display: inline-block;
  white-space: nowrap; }

#cookie-consent button::before,
#cookie-consent button::after,
#cookie-consent button span::before,
#cookie-consent button span::after {
  content: none !important; }

#cookie-consent button#cc-opt-btn,
#cookie-consent button#cc-req-btn {
  height: 3.125rem;
  line-height: 3.125rem;
  border-radius: 3.125rem; }

#cookie-consent button#cc-opt-btn span,
#cookie-consent button#cc-req-btn span {
  height: 3rem;
  line-height: 3rem; }

#cookie-consent button#cc-req-btn,
#cookie-consent button#cc-req-btn * {
  padding-left: 0;
  padding-right: 0;
  color: var(--color-txt);
  border-color: transparent !important; }

#cookie-consent button#cc-opt-btn {
  border-color: var(--color-one) !important;
  background-color: var(--color-one); }

#main-container #cookie-consent button#cc-req-btn:hover,
#main-container #cookie-consent button#cc-req-btn:hover * {
  color: var(--color-one) !important;
  background-color: transparent;
  opacity: 1; }

#main-container #cookie-consent button#cc-req-btn:hover span:after {
  color: var(--color-txt); }

#cookie-consent button#cc-req-btn,
#cookie-consent button#cc-req-btn *,
#cookie-consent button#cc-req-btn::before,
#cookie-consent button#cc-req-btn::after {
  content: none;
  color: var(--blue);
  background-color: transparent; }

#cookie-consent .InputfieldContent * {
  margin-bottom: 0;
  font-family: opensans-regular, "Helvetica Neue", Helvetica, Arial, sans-serif; }

#cookie-consent .pw-no-select {
  float: left;
  width: 100%;
  padding-left: 35px;
  margin-top: 0;
  line-height: 24px;
  font-family: opensans-bold, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  text-transform: none;
  display: block;
  letter-spacing: initial; }

#cookie-settings-wrapper {
  width: 100%;
  height: 0;
  display: block;
  overflow: hidden; }

@media only screen and (max-width: 640px) {
  #cookie-consent {
    right: 0; }
  #cookie-consent table,
  #cookie-consent tbody,
  #cookie-consent tr,
  #cookie-consent th,
  #cookie-consent td {
    float: left;
    width: 100%;
    padding: 0;
    display: block; }
  #cookie-consent tr {
    padding: 5px 2.5%; }
  #cookie-settings-wrapper {
    padding: 0 2.5%; }
  #cookie-consent input[type="checkbox"] {
    left: 2.5%; }
  #main-container .InputfieldCheckbox label {
    margin-left: 2.5%; } }

#cookie-settings-content {
  padding-bottom: 20px; }

input[readonly="readonly"] {
  pointer-events: none; }

input:read-only {
  pointer-events: none; }

input:-moz-read-only {
  pointer-events: none; }

#cookie-consent input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 24px;
  height: 24px;
  padding: 0;
  margin: 0;
  color: var(--color-txt);
  border: 1px solid var(--color-txt);
  cursor: pointer;
  outline: none; }

#cookie-consent input[type="checkbox"]::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 22px;
  height: 22px;
  font: 20px/20px superduperfont;
  font-family: superduperfont, "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-align: center;
  font-weight: 700; }

#cookie-consent input[type="checkbox"]::before {
  content: none; }

#cookie-consent input[type="checkbox"]:checked,
#cookie-consent input[type="checkbox"]:checked::after {
  content: "✓";
  outline: none; }

#cookie-consent.w-txt {
  background-color: var(--color-one); }

#cookie-consent.w-txt *,
#cookie-consent.w-txt .title p,
#cookie-consent.w-txt .toggle-btn,
#cookie-consent input[type="checkbox"],
#cookie-consent input[type="checkbox"]::after,
#cookie-consent input[type="checkbox"]:checked,
#cookie-consent input[type="checkbox"]:checked::after {
  color: var(--color-txt);
  border-color: var(--color-txt);
  background-color: transparent !important; }

#cookie-consent .Inputfield {
  border-top: 1px dotted var(--color-txt); }

#cookie-consent tr:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.25); }

#cookie-consent .InputfieldCheckbox .InputfieldContent label {
  float: left;
  width: 100%;
  height: auto;
  line-height: 30px;
  padding: 0;
  margin: 0 0 5px 0; }

/*---------- ON PRIVACY PAGE ----------*/
.dp-page #cookie-consent,
.dp-page #cookie-settings-frame {
  position: relative;
  z-index: 2;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  max-width: none;
  max-height: none;
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: block !important;
  opacity: 1 !important;
  border: none;
  overflow: visible;
  box-shadow: none;
  transform: unset; }

.dp-page #cookie-consent {
  padding-top: var(--gap-row);
  padding-bottom: var(--gap-row); }

.dp-page #cookie-consent .wrapper-s {
  padding: 0 var(--gap-col); }

.dp-page #cookie-consent .wrapper-s .wrapper-s {
  padding: 0; }

.dp-page #cookie-consent p.title {
  margin-top: 20px; }

.dp-page #cookie-settings-wrapper {
  height: auto !important; }

.dp-page #cookie-consent .cc-toggle-btn {
  display: none; }

.dp-page #main {
  margin-bottom: 0; }

.dp-page #mainfooter {
  position: relative; }

.dp-page#cookie-consent .cc-toggle-btn {
  display: none; }

.pp-info {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: var(--gap-row) var(--gap-col);
  text-align: center;
  display: flex;
  flex-flow: row wrap;
  row-gap: 0.9375rem;
  justify-content: center;
  align-content: center;
  background-color: var(--lightgrey); }

.pp-info * {
  margin-bottom: 0 !important; }

.pp-info :is(h1, h2, h3, h4, h5, h6, p) {
  float: left;
  clear: both;
  width: 100%; }

.pp-info a {
  text-decoration: underline;
  text-decoration-thickness: 0.0625rem;
  text-underline-offset: 0.3125em;
  color: var(--color-txt); }

.map .pp-info,
.iframe-container .pp-info,
.TextformatterVideoEmbed .pp-info {
  position: absolute; }

iframe[data-pp-gmaps],
.TextformatterVideoEmbed iframe {
  background-color: rgba(var(--white-rgb), 0.25); }

iframe[data-pp-gmaps],
.TextformatterVideoEmbed iframe[data-src-video] {
  z-index: -1; }

iframe[src][data-pp-gmaps],
.TextformatterVideoEmbed iframe[src] {
  z-index: 2; }
