/*
Theme Name: KMHH
*/

/* Fallback font metrics */
:root {
  --fallback-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* source-sans-3-300 - latin */
@font-face {
  font-display: optional;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 300;
  src: local('Source Sans 3 Light'),
       url('fonts/source-sans-3-v18-latin-300.woff2') format('woff2'); 
  size-adjust: 100%;
  ascent-override: 90%;
  descent-override: 25%;
  line-gap-override: 0%;
}

/* source-sans-3-regular - latin */
@font-face {
  font-display: optional;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  src: local('Source Sans 3 Regular'),
       url('fonts/source-sans-3-v15-latin-regular.woff2') format('woff2'); 
  size-adjust: 100%;
  ascent-override: 90%;
  descent-override: 25%;
  line-gap-override: 0%;
}

/* source-sans-3-500 - latin */
@font-face {
  font-display: optional;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 500;
  src: local('Source Sans 3 Medium'),
       url('fonts/source-sans-3-v15-latin-500.woff2') format('woff2'); 
  size-adjust: 100%;
  ascent-override: 90%;
  descent-override: 25%;
  line-gap-override: 0%;
}

/* source-sans-3-600 - latin */
@font-face {
  font-display: optional;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  src: local('Source Sans 3 SemiBold'),
       url('fonts/source-sans-3-v15-latin-600.woff2') format('woff2'); 
  size-adjust: 100%;
  ascent-override: 90%;
  descent-override: 25%;
  line-gap-override: 0%;
}

/* source-sans-3-700 - latin */
@font-face {
  font-display: optional;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 700;
  src: local('Source Sans 3 Bold'),
       url('fonts/source-sans-3-v15-latin-700.woff2') format('woff2'); 
  size-adjust: 100%;
  ascent-override: 90%;
  descent-override: 25%;
  line-gap-override: 0%;
}





:root {

  /* Light */
  /* color */
  --colors-beere: #b51e3f;
  --colors-beere-10: #b51e3f1a;
  --colors-granit: #454140;
  --colors-granit-30: #4541404d;
  --colors-granit-60: #45414099;
  --colors-granit-80: #454140cc;
  --colors-gruen: #00963e;
  --colors-magenta: #ff00ff;
  --colors-rot: #cc0100;
  --colors-schnee: #ffffff;
  --colors-schnee-20: #ffffff33;
  --colors-schnee-80: #ffffffcc;
  --colors-sonne: #f7a42e;
  --colors-sonne-20: #f7a42e33;
  --colors-sonne-20-hex: #FDEDD5;
  --colors-traube: #582047;
  --colors-traube-10: #5820471a;
  --colors-semantic-accent: var(--colors-sonne);
  --colors-semantic-accent-subtle: var(--colors-sonne-20);
  --colors-semantic-accent-subtle-hex: var(--colors-sonne-20-hex);
  --colors-semantic-background: var(--colors-schnee);
  --colors-semantic-highlight-primary: var(--colors-beere);
  --colors-semantic-highlight-secondary: var(--colors-traube);
  --colors-semantic-marked: var(--colors-magenta);
  --colors-semantic-negative: var(--colors-rot);
  --colors-semantic-positive: var(--colors-gruen);
  --colors-semantic-separator: var(--colors-granit-30);
  --colors-semantic-text: var(--colors-granit);
  --colors-semantic-text-secondary: var(--colors-granit-80);
  --colors-semantic-text-tertiary: var(--colors-granit-60);
  --colors-semantic-warning: var(--colors-sonne);
  /* number */
  --negatives-48: -3rem;
  --negatives-32: -2rem;


  /* Dark */
  /* color */
  /* --colors-semantic-accent: var(--colors-schnee-80);
  --colors-semantic-accent-subtle: var(--colors-schnee-20);
  --colors-semantic-background: var(--colors-schnee);
  --colors-semantic-highlight-primary: var(--colors-beere);
  --colors-semantic-highlight-secondary: var(--colors-traube);
  --colors-semantic-marked: var(--colors-magenta);
  --colors-semantic-negative: var(--colors-rot);
  --colors-semantic-positive: var(--colors-gruen);
  --colors-semantic-separator: var(--colors-granit-30);
  --colors-semantic-text: var(--colors-schnee);
  --colors-semantic-text-secondary: var(--colors-schnee-80);
  --colors-semantic-text-tertiary: var(--colors-schnee-80);
  --colors-semantic-warning: var(--colors-sonne); */

  /*font weight*/
  --weight-light: 300;
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  
  /* typography */
	--font-family-primary: 'Source Sans 3', Helvetica Neue,Arial,sans-serif;
	--font-family-secondary: 'Source Sans 3', Helvetica Neue,Arial,sans-serif;
  
  --font-size-xs: clamp(0.75rem, 0.7143rem + 0.1786vw, 0.875rem); /* 320px: 12px | 1440px: 14px */
  --font-size-s: clamp(0.875rem, 0.8393rem + 0.1786vw, 1rem);     /* 320px: 14px | 1440px: 16px */
  --font-size-base: clamp(1rem, 0.9643rem + 0.1786vw, 1.25rem);   /* 320px: 16px | 1440px: 18px | 2560px: 20px */
  --font-size-m: clamp(1.125rem, 1.0893rem + 0.1786vw, 1.375rem); /* 320px: 18px | 1440px: 20px | 2560px: 22px */
  --font-size-l: clamp(1.25rem, 1.2143rem + 0.1786vw, 1.5rem);    /* 320px: 20px | 1440px: 22px | 2560px: 24px */
  --font-size-xl: clamp(1.375rem, 1.3214rem + 0.2679vw, 1.75rem); /* 320px: 22px | 1440px: 24px | 2560px: 28px */
  --font-size-2xl: clamp(1.5rem, 1.4286rem + 0.3571vw, 2rem);     /* 320px: 24px | 1440px: 28px | 2560px: 32px */
  --font-size-3xl: clamp(1.75rem, 1.6786rem + 0.3571vw, 2.25rem); /* 320px: 28px | 1440px: 32px | 2560px: 36px */
  --font-size-3xl_2: clamp(2.1875rem, 2.0982rem + 0.4464vw, 2.5rem); /* 320px: 35px | 1440px: 40px | 2560px: 45px */
  /* --font-size-4xl: clamp(2.5rem, 1.9286rem + 0.3571vw, 3.375rem); 320px: 36px | 1440px: 54px */
  --font-size-4xl: clamp(2.25rem, 1.9286rem + 1.6071vw, 3.375rem); /* 320px: 36px | 1440px: 54px */
  --font-size-4xl_2: clamp(2rem, 1.6786rem + 1.6071vw, 3.125rem); /* 320px: 32px | 1440px: 50px */

  --clr-input-text: rgba(7, 14, 23, .8);
  --clr-input-text-placeholder: rgba(7, 14, 23, .5);

  --btn-primary-bg: #2F3778;
  --btn-primary-bg-hover: #2F3778;
  --btn-primary-color: #fff;
  --btn-secondary-color: #fff;
  --btn-primary-focus-shadow: 0 0 0 .2rem rgba(0,0,0,.5);

  --header-height: clamp(88px, 10.84vw, 13rem);
  --fixed-header-minus: clamp(0px, 2.29vw, 0px);
  --fixed-header-height: calc(var(--header-height) - var(--fixed-header-minus));


  --clamp_vw_devider: 1440; 
  --wrapper-max-width: 2560px; 
  --side-gap: 10rem;
  --wrapper-width: calc(100% - (var(--side-gap) * 2));
  --wrapper-side-padding: clamp(1.5rem, 5.33vw, 3rem);

  --base-multiplier: 1;
  --base-multiplier-lg: 1;
  --base-divider: calc(1 / 18 * var(--font-size-base) * var(--base-multiplier));
  --base-divider-lg: calc(1 / 18 * var(--font-size-base) * var(--base-multiplier-lg));

  --calc-size-2: calc(2 * var(--base-divider));
  --calc-size-4: calc(4 * var(--base-divider));
  --calc-size-6: calc(6 * var(--base-divider));
  --calc-size-8: calc(8 * var(--base-divider));
  --calc-size-10: calc(10 * var(--base-divider));
  --calc-size-12: calc(12 * var(--base-divider));
  --calc-size-14: calc(14 * var(--base-divider));
  --calc-size-16: calc(16 * var(--base-divider));
  --calc-size-18: calc(18 * var(--base-divider));
  --calc-size-20: calc(20 * var(--base-divider));
  --calc-size-24: calc(24 * var(--base-divider));
  --calc-size-26: calc(26 * var(--base-divider));
  --calc-size-28: calc(28 * var(--base-divider));
  --calc-size-30: calc(30 * var(--base-divider));
  --calc-size-32: calc(32 * var(--base-divider));
  --calc-size-36: calc(36 * var(--base-divider));
  --calc-size-40: calc(40 * var(--base-divider));

  --calc-size-48: calc(48 * var(--base-divider-lg));
  --calc-size-56: calc(56 * var(--base-divider-lg));
  --calc-size-64: calc(64 * var(--base-divider-lg));
  --calc-size-72: calc(72 * var(--base-divider-lg));
  --calc-size-80: calc(80 * var(--base-divider-lg));
  --calc-size-88: calc(88 * var(--base-divider-lg));
  --calc-size-96: calc(96 * var(--base-divider-lg));
  --calc-size-128: calc(128 * var(--base-divider-lg));
  --calc-size-144: calc(144 * var(--base-divider-lg));
  --calc-size-160: calc(160 * var(--base-divider-lg));

  
   
}


html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td 
{	margin: 0;	padding: 0;	border: 0;	font-size: 100%;	vertical-align: baseline;	background: transparent;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, picture {display: block; margin: 0;}
html, body {display: block;}
/* @media (prefers-reduced-motion: no-preference) { html {scroll-behavior: smooth;} } */
html {font-size: 100%; -webkit-text-size-adjust:100%;  -webkit-tap-highlight-color:rgba(0,0,0,0);  font-family:sans-serif;  line-height:1.15}
body {-webkit-font-smoothing: antialiased; font-smoothing: antialiased;	text-rendering: optimizeSpeed;}

.touchevents.no-scrolling, .touchevents.no-scrolling body {overflow: hidden;}

@media (prefers-reduced-motion: no-preference) { 

  :root {
    /* animation settings */
    --base-easing: ease;
    --base-duration: 350ms;
    --short-duration: 200ms;
  }

}

ol, ul {}
header ul, footer ul, .fixed-container ul {list-style-type: none;}
.wpb_text_column ul, .wpb_text_column ol {padding-left: 1.5em;}
.wpb_text_column ul {list-style-type: disc;}
.wpb_text_column ol ul {padding-left: 0; list-style-type: disc;}
.wpb_text_column ol > li::marker {font-weight: var(--weight-medium);}
.wpb_text_column ol > li:not(:last-child) {margin: 0 0 var(--calc-size-24);}
.ticklist ul {list-style: none; padding-left: var(--calc-size-24);}
.checklist ul, .squarelist ul {list-style: none; padding-left: 0;}
.checklist ul {font-size: var(--font-size-m); line-height: 115%; border-bottom: solid 1px var(--colors-semantic-separator);}
.checklist ul strong, .checklist ul b {font-weight: var(--weight-bold);}
.ticklist ul li, .checklist ul li {position: relative;  padding-left: var(--calc-size-40);}
.checklist ul li {padding: var(--calc-size-24) var(--calc-size-32) var(--calc-size-24) var(--calc-size-72); border-top: solid 1px var(--colors-semantic-separator);}
.squarelist ul li {padding: 16px 0 16px 16px; position: relative; }
.squarelist ul li:not(:first-child) {border-top: solid 1px var(--colors-semantic-separator);}
.ticklist ul li::before, .checklist ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.35em;
  width: var(--calc-size-24);
  height: var(--calc-size-24);
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 6L9 17L4 12' stroke='%23F7A42E' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.checklist ul li::before {width: var(--calc-size-32);  height: var(--calc-size-32); left: var(--calc-size-24); top: var(--calc-size-20);}
.squarelist ul li::before {content: '';  position: absolute; background: var(--colors-semantic-accent); width: 8px;  height: 8px; left: 0; top: 1.55em;}

* ,::before, ::after {-webkit-box-sizing: border-box;-ms-box-sizing: border-box;-moz-box-sizing: border-box;-o-box-sizing: border-box;box-sizing: border-box;}
b, strong {font-weight: var(--weight-semibold);}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,q:before, q:after {	content: '';	content: none;}
address {font-style: normal;}
sup {position: relative;top: -.6rem;font-size: 75%;}
/* skip to content */ .skiplink {position: absolute;	background-color: white;	z-index: 1000000;	left: 0;	top: 0;	padding: 20px;	font-size: var(--font-size-l); transform: translateX(-200%); outline-color: transparent;  transition: outline-color var(--base-duration) var(--base-easing);}
.skiplink:focus {transform: translateX(0%); outline: 2px solid var(--colors-semantic-highlight-primary);  border-radius: 0.01px;}
/* screenreader */ .sr-only {border: 0;	clip: rect(1px, 1px, 1px, 1px);	clip-path: inset(50%);	height: 1px;	margin: -1px;	overflow: hidden;	padding: 0;	position: absolute;	width: 1px;	word-wrap: normal !important;}

ins {	text-decoration: none;}del {	text-decoration: line-through;}table {	border-collapse: collapse;	border-spacing: 0;}td {vertical-align: top;} td:not(:last-child) {padding-right: 2rem;}
.align-center {text-align: center;}.align-right {text-align: right;}.align-left {text-align: left;}
img {max-width: 100%; height: auto; vertical-align: middle;}
figure .caption {padding: .5em 0 0; font-size: var(--font-size-xs);}
.as-ratio {overflow: clip;}
.as-ratio picture, .as-ratio figure, .as-ratio .vc_single_image-wrapper {height: 100%;}
.as-ratio img {width: 100%; height: 100%; object-fit: cover;}
.ratio-4-3 {aspect-ratio: 4 / 3;}
.ratio-3-2 {aspect-ratio: 3 / 2;}
.ratio-1-1 {aspect-ratio: 1;}
.ratio-16-9 {aspect-ratio: 16 / 9;}
.ratio-2-1 {aspect-ratio: 2 / 1;}
.ratio-4-5 {aspect-ratio: 4 / 5;}
.ratio-3-4 {aspect-ratio: 3 / 4;}
.ratio-45-16 {aspect-ratio: 2.8125 / 1;} /* 1440x512 */
.ratio-45-16 img {object-position: center top;}
picture.no-image {background: var(--colors-traube-10);}
picture.no-image-hidden {opacity: 0; height: 0;}




.map-container {position: relative; width: 100%; padding-bottom: 42%;}
.contact-map img {max-width: 1000em;}
.alignleft {float: left; margin: 0 2em 2em 0;}.alignright {float: right; margin: 0 0 2em 2em;}.aligncenter {display: block;	margin-left: auto;	margin-right: auto;}
.wpb_single_image.vc_align_center {text-align: center;}

body {font-family: var(--font-family-primary); color: var(--colors-semantic-text); margin: 0; padding: 0; font-size: 1.25rem; font-size: var(--font-size-base); line-height: 1.75; letter-spacing: 0.0025em; font-weight: var(--weight-normal); font-style: normal; background: var(--colors-semantic-background); text-align:left}

a {color: var(--colors-semantic-text); text-decoration: none;}
a:hover {color: var(--colors-semantic-text);}

p:not(:last-child) {margin: 0 0 var(--calc-size-16);} small {font-size: 80%;}
ul:not(:last-child), ol:not(:last-child) {margin: 0 0 var(--calc-size-16);}

h1,h2,h3,h4,h5,h6 { margin: 0 0 var(--calc-size-24); font-size: var(--font-size-base); line-height: 1.15; padding: 0; font-family: var(--font-family-secondary); position: relative; font-weight: var(--weight-bold); }

blockquote {}
blockquote p {margin: 0;}

h1, .h1 {font-size: var(--font-size-4xl); line-height: 109.25%; letter-spacing: -.015em;} /* 54px */
h2, .h2 {font-size: var(--font-size-3xl); margin: 0 0 var(--calc-size-24);}  /* 32px */
h3, .h3 {font-size: var(--font-size-2xl); margin: 0 0 var(--calc-size-16);} /* 28px */
h4, .h4 {font-size: var(--font-size-xl);} /* 24px */
h5, .h5 {font-size: var(--font-size-l);} /* 22px */
h6, .h6 {font-size: var(--font-size-m);} /* 20px */

:is(h4, .h4, h5, .h5, h6, .h6) {margin: 0 0 var(--calc-size-8)}
:is(h4, .h4, h5, .h5, h6, .h6).vc_custom_heading:not([class*="mb-"]) {margin: 0 0 var(--calc-size-16);}
:is(h1, h2, h3, h4, h5, h6):not([class*="mb-"]):last-child, blockquote:last-child {margin: 0;}

.entry-content h2:not(.no-square) {padding-left: calc(.75em + .5rem);}
.entry-content h2:not(.no-square)::before {content: ''; width: .75em; height: .75em; background: var(--colors-semantic-accent); display: inline-block;  margin-right: .5rem; position: relative; position: absolute; left: 0;  top: .0625em; top: .3rem;}

/* .as-vc_row_parent > .vc_col-sm-3 :is(h1, h2, h3, h5, h6) {} */

.txt-fluid-xs {font-size: var(--font-size-xs);} /* 320px: 12px | 1440px: 14px */
.txt-fluid-s {font-size: var(--font-size-s);} /* 320px: 14px | 1440px: 16px */
.txt-fluid-base {font-size: var(--font-size-base);} /* 320px: 16px | 1440px: 18px | 2560px: 20px */
.txt-fluid-m {font-size: var(--font-size-m);} /* 320px: 18px | 1440px: 20px | 2560px: 22px */
.txt-fluid-l {font-size: var(--font-size-l);} /* 320px: 20px | 1440px: 22px | 2560px: 24px */
.txt-fluid-xl {font-size: var(--font-size-xl);} /* 320px: 22px | 1440px: 24px | 2560px: 28px */
.txt-fluid-2xl {font-size: var(--font-size-2xl);} /* 320px: 24px | 1440px: 28px | 2560px: 32px */
.txt-fluid-3xl {font-size: var(--font-size-3xl);} /* 320px: 28px | 1440px: 32px | 2560px: 36px */
.txt-fluid-3xl_2 {font-size: var(--font-size-3xl_2);} /* 320px: 35px | 1440px: 40px | 2560px: 45px */
.txt-fluid-4xl {font-size: var(--font-size-4xl);} /* 320px: 36px | 1440px: 54px */
.txt-fluid-4xl_2 {font-size: var(--font-size-4xl_2);} /* 320px: 36px | 1440px: 54px */

.font-light {font-weight: var(--weight-light);}
.font-normal {font-weight: var(--weight-normal);}
.font-medium {font-weight: var(--weight-medium);}
.font-bold {font-weight: var(--weight-bold);}

.hyphenate {-webkit-hyphens: auto; -moz-hyphens: auto;-ms-hyphens: auto;	hyphens: auto;	word-wrap: break-word; word-break: break-word; overflow: hidden;}
.hyphenate:not(.no-balance) {text-wrap: balance;}
.txt-upper, .text-uppercase {text-transform: uppercase;}
.txt-upper-normal {text-transform: none;}

.wpb_wrapper h1:first-child, .wpb_wrapper h2:first-child, .wpb_wrapper h3:first-child, .wpb_wrapper h4:first-child, .wpb_wrapper h5:first-child, .wpb_wrapper h6:first-child {margin-top: 0;}

.as-flexbox, .as-flexbox-static {display: -webkit-box;  display: -moz-box;  display: -ms-flexbox;  display: -webkit-flex;  display: flex; position: relative;}
.as-flexbox-static {position: static;}
.as-flexbox-inline {display: inline-flex;}
.as-flex-nowrap {-webkit-flex-wrap: nowrap;-ms-flex-wrap: nowrap;flex-wrap: nowrap;}
.as-flex-wrap {-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;flex-wrap: wrap;}
.as-flex-align-top {-webkit-align-items: flex-start;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}
.as-flex-align-center {-webkit-align-items: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.as-flex-align-bottom {-webkit-align-items: flex-end;-webkit-box-align: flex-end;-ms-flex-align: flex-end;align-items: flex-end;}
.as-flex-justify-space-between {-webkit-box-pack: justify;-webkit-justify-content: space-between;-ms-flex-pack: justify;justify-content: space-between;}
.as-flex-justify-center {-webkit-box-pack: center;-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;}
.as-flex-justify-right {-webkit-justify-content: flex-end;-ms-flex-pack: flex-end;justify-content: flex-end;}
.as-flex-row {flex-direction: row;}
.as-flex-row-reverse {flex-direction: row-reverse;}
.as-flex-direction-column {-webkit-flex-direction: column;-ms-flex-direction: column;flex-direction: column;height: 100%;}
.as-flex-direction-row-reverse {flex-direction: row-reverse;}
.as-flex-shrink-0 {flex-shrink: 0;}
.as-flex-grow-1 {flex-grow: 1;}

.fa {vertical-align: middle;}
.abs-link {position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 10000; text-indent: -1000em;}
.max640 {max-width: 40rem;}

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0;}
:focus:not(:focus-visible) {outline: none;}

.ww {position: fixed; z-index: 1000000; left: 0; bottom: 50%; background: #f00; padding: 5px; color: #fff; font-size: 12px; display: none;}
.ww-right {right: 0; left: auto;}
#loaderImage {will-change: opacity; position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: var(--colors-semantic-background); z-index: 10000; opacity: 1; visibility: visible;}
.loaderEnd #loaderImage {transition: opacity .5s ease .2s; transition: opacity .3s linear .0s; opacity: 0!important;}
.topAnimsStart #loaderImage {visibility: hidden!important;}

#page {position: relative; z-index: 100;  width: 100%; }
.content-wrapper {margin: 0 auto; width: var(--wrapper-width); max-width: calc(var(--wrapper-max-width) - (var(--side-gap) * 2)); position: relative; /*outline: solid 1px red; */}
.vc_row-no-padding .content-wrapper {width: 100%; max-width: 100%; padding: 0;}
.row-with-bg .content-wrapper {z-index: 100;}


.no-wrap {white-space: nowrap;}
.word-wrap {word-wrap: break-word;}
.word-hyphens {-webkit-hyphens: auto;-moz-hyphens: auto;-ms-hyphens: auto;hyphens: auto;}
.overflow-visible {overflow: visible!important;}

.txt-clr-accent, .txt-clr-accent a {color: var(--colors-semantic-accent);}
.txt-clr-primary, .txt-clr-primary a {color: var(--colors-semantic-text-primary);}
.txt-clr-secondary, .txt-clr-secondary a {color: var(--colors-semantic-text-secondary);}
.txt-clr-tertiary, .txt-clr-tertiary a {color: var(--colors-semantic-text-tertiary);}
.txt-clr-separator, .txt-clr-separator a {color: var(--colors-semantic-separator);}
.txt-clr-highlight-primary, .txt-clr-highlight-primary a {color: var(--colors-beere);}
.txt-clr-highlight-secondary, .txt-clr-highlight-secondary a {color: var(--colors-traube);}
.txt-clr-negative, .txt-clr-negative a {color: var(--colors-rot);}


.bg-white {background: var(--colors-semantic-background);}
.bg-primary {background: var(--colors-semantic-highlight-primary);}
.bg-secondary {background: var(--colors-semantic-highlight-secondary);}
.bg-dark:not(.bg-white), .bg-dark:not(.bg-white) a, .bg-dark:not(.bg-white) .txt-clr-primary, .bg-dark:not(.bg-white) .txt-clr-secondary, .bg-dark:not(.bg-white) .txt-clr-primary a, .bg-dark:not(.bg-white) .txt-clr-secondary a {
  color: var(--colors-schnee);
}


/* header */
header#masthead {position: sticky; top: 0; z-index: 100000; transition: all .3s ease; height: var(--header-height); height: auto; background: var(--colors-semantic-background);}
header#masthead .header-logo {}
header#masthead .header-logo a {display: block; outline-color: transparent;  transition: outline-color var(--base-duration) var(--base-easing);}
header#masthead .header-logo a:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary);  outline-offset: 0.25rem;  border-radius: 0.01px;}
header#masthead .header-logo a svg {}
/* header#masthead.header-fixed {height: var(--fixed-header-height);} */
header#masthead .content-wrapper {height: 100%; z-index: 100;}
header#masthead .header-content {height: 100%; position: relative;}
header#masthead .header-navi {gap: 1.8em;}
.header-meta { gap: var(--calc-size-32);}
.header-content-inner > div:first-child {padding: var(--calc-size-24) 0 var(--calc-size-16); border-bottom: solid 1px var(--colors-semantic-separator);}
/* header end */

/* main navi */


.main-navigation a {display: flex; line-height: 155.556%; align-items: center; outline-color: transparent; gap: var(--calc-size-4); position: relative; font-weight: var(--weight-medium); padding: var(--calc-size-8) var(--calc-size-12) var(--calc-size-8) var(--calc-size-18);
  transition: background-color var(--base-duration) var(--base-easing), outline-color var(--base-duration) var(--base-easing)
}
.main-navigation a:active span, .main-navigation a:active::after {transition: none;  translate: 0 2px;}
.main-navigation a:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary);  outline-offset: 0.25rem;  border-radius: 0.01px;}
.main-navigation li.menu-item-has-children > a span, .main-navigation a::after  {flex-shrink: 0;}

.main-navigation ul {margin: 0; /*gap: 2rem;*/ align-items: center;  justify-content: space-between;}
.main-navigation ul ul li {position: relative; z-index: 10;}
.main-navigation ul li {padding: var(--calc-size-16) 0 var(--calc-size-8);}
.main-navigation a[aria-current="page"], .main-navigation li.current-page-ancestor > a {color: var(--colors-semantic-text-secondary)}
.page-id-5491 .main-navigation li.menu-item-1493 > a {color: var(--colors-semantic-text);}
.main-navigation ul[aria-expanded="true"] {visibility: visible; opacity: 1;}

.main-navigation li > a::after {
  content: '';
  width: 17px;
  height: 16px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  display: inline-block;
  
}
.main-navigation li.menu-item-has-children > a::after {
  background-image: url('data:image/svg+xml;utf8,<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.6001 6L8.6001 10L12.6001 6" stroke="%23454140" stroke-opacity="0.8" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  transition: rotate 200ms ease;
}
.main-navigation li.menu-item-has-children > a.active {background-color: var(--colors-semantic-accent-subtle);}
.main-navigation li.menu-item-has-children > a.active::after {rotate: 180deg;}

.main-navigation ul.sub-menu li > a::after {
  width: 16px;
  transition: all var(--base-duration) var(--base-easing);
  background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.3335 8.00001H12.6668M12.6668 8.00001L8.00016 3.33334M12.6668 8.00001L8.00016 12.6667" stroke="%23454140" stroke-opacity="0.8" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
.main-navigation ul.sub-menu li > a:hover::after, .main-navigation ul.sub-menu a[aria-current="page"]::after {
  background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.3335 8.00001H12.6668M12.6668 8.00001L8.00016 3.33334M12.6668 8.00001L8.00016 12.6667" stroke="%23f7a42e" stroke-opacity="0.8" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}


.main-navigation ul.sub-menu li {padding: 0; border-top: solid 1px var(--colors-semantic-separator);}
.main-navigation ul.sub-menu a {gap: var(--calc-size-16); padding: var(--calc-size-16) 0; justify-content: space-between;}

@media only screen and (min-width: 901px) {
  header#masthead .menu-overlay {visibility: hidden; opacity: 0; /*transition: all .3s ease 0s;*/ position: fixed;  left: 0;  bottom: 0;  width: 100%;  height: 100%;  background: rgba(17, 17, 17, .6);  z-index: 1;}
  header#masthead.has-active-submenu .menu-overlay {visibility: visible; opacity: 1; /*transition: all .3s ease .3s;*/} 
  .main-navigation {margin: 0 calc(var(--calc-size-12) * -1) 0 calc(var(--calc-size-18) * -1);}
  .main-navigation a:hover {background-color: var(--colors-semantic-accent-subtle);}
  .main-navigation ul ul {visibility: hidden; opacity: 0; /*transition: all .3s ease; */display: grid; position: absolute; left: var(--calc-size-18); top: 100%; z-index: 1000; background: var(--colors-semantic-background); overflow: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    /* display: grid; */
    gap: 0 var(--calc-size-32);
    align-items: start;
    padding-top: var(--calc-size-16);
    margin-left: calc(var(--side-gap) * -1);
    padding: var(--calc-size-16) var(--side-gap) var(--calc-size-56);
    width: calc(100% - var(--calc-size-18) - var(--calc-size-12) + (var(--side-gap) * 2));
  }

}




.secondary-navigation ul {gap: var(--calc-size-24);}
.secondary-navigation ul li a {display: flex; gap: var(--calc-size-8);}
.secondary-navigation ul li a img {flex-shrink: 0; width: 16px; height: 16px;}
.secondary-navigation a[aria-current="page"] {font-weight: 600; text-decoration-color: var(--colors-semantic-accent);}

/* sub navi */
/* .main-navigation ul ul {}
.main-navigation ul ul[aria-hidden="true"] {display: none;}
.main-navigation ul ul a[aria-current="page"] {} */


/* main navi end */

/* lang navi */
.lang-navigation {}
.lang-navigation ul {line-height: 1.14286; font-weight: 500;}
.lang-navigation ul li:first-child {height: 1rem;}
.lang-navigation ul li:not(:first-child):not(:nth-child(2)) {padding-left: .5rem; position: relative;}
.lang-navigation ul li:not(:first-child):not(:nth-child(2))::after {content: ''; position: absolute; left: 0; top: 50%; width: 1px; height: 1rem; background: var(--colors-semantic-separator); transform: translateY(-50%);}
.lang-navigation a:not(:hover):not([aria-current="true"]) {color: var(--colors-semantic-text-secondary);}
.lang-navigation a[aria-current="true"] {font-weight: 600; text-decoration-color: var(--colors-semantic-accent);}
.lang-navigation svg {width: 1rem; height: 1rem;}
/* lang navi end */


/* #main {position: relative; z-index: 50;} */
.site-content {position: relative; z-index: 50;}
.single-related_content .site-content, .single-textmedia .site-content {padding-bottom: var(--calc-size-144)}
.entry-content {position: relative; padding-bottom: var(--calc-size-48);}
.mobile-only {display: none!important;}


/* footer */

footer.page-footer {position: relative; z-index: 60; border-top: 1px solid var(--colors-semantic-separator);  background: var(--colors-semantic-background); padding: var(--calc-size-64) 0 var(--calc-size-160);}
footer.page-footer ul {padding: 0; list-style-type: none;}
footer.page-footer ul li a {line-height: 175%;  display: block;  width: fit-content;}
footer.page-footer .as_def_link a {line-height: 175%;  display: flex;  width: fit-content;}
footer.page-footer h5 {color: var(--colors-semantic-text-secondary); font-size: var(--font-size-s); font-weight: var(--weight-semibold); line-height: 100%; letter-spacing: -.015em; margin: 0 0 var(--calc-size-28);}

.footer-top {gap: var(--calc-size-40) var(--calc-size-32); border-bottom: 1px solid var(--colors-semantic-separator); padding: var(--calc-size-40) 0 var(--calc-size-80);}
.footer-middle {gap: var(--calc-size-32); padding: var(--calc-size-40) 0 0; }
.footer-bottom {gap: var(--calc-size-32); padding: var(--calc-size-24) 0 var(--calc-size-40); flex-direction: row-reverse;}
.special-logo-item {display: flex; align-items: center; justify-content: center;}
.special-logo-item picture {width: 30%; }

.footer-middle a, .footer-logo a {display: block; outline-color: transparent;  transition: outline-color var(--base-duration) var(--base-easing);}
.footer-middle a:focus-visible, .footer-logo a:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary);  outline-offset: 0.25rem;  border-radius: 0.01px;}

.footer-socials a {display: block; border-radius: 2px; flex-shrink: 0; outline-color: transparent; padding: var(--calc-size-10); background: var(--colors-traube-10); transition: background var(--short-duration) var(--base-easing), outline-color var(--base-duration) var(--base-easing)}
.footer-socials img {display: block;}
@media screen and (hover) {.footer-socials a:hover {background: var(--colors-semantic-accent-subtle);}}
.footer-socials a:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary);  outline-offset: 4px;}
.footer-socials a:active {transition: none; translate: 0 2px;}


@media only screen and (min-width: 361px) {
	.hide-before-xxs {display: none;}
}

@media only screen and (min-width: 480px) {
	.hide-before-xs {display: none;}
}


@media only screen and (min-width: 601px) {
	.hide-before-s {display: none;}


  footer.page-footer h5 {height: 4.375rem; padding-top: 1.0625rem; margin: 0;}
  footer.page-footer .footer-logo {height: 4.375rem; margin: 0;}
  footer.page-footer .footer-logo a {margin: 0 0 1rem; max-width: 10.75rem;}

  .special-logo-item:not(.as-flex-justify-center) {justify-content: flex-end;}

}



@media only screen and (min-width: 768px) {

  .hide-before-sm {display: none;}
	/* h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child, blockquote:last-child { margin: 0;} */

}

@media only screen and (min-width: 901px) {

	.hide-before-md, .emergency-mobile-button.as-button {display: none;}

  /* main menu */
  
}

@media only screen and (min-width: 1024px) {
	.hide-before-lg {display: none;}
}







@media only screen and (max-width: 1680px) {
	
}

@media only screen and (max-width: 1439px) {
  :root {
    --side-gap: clamp(3rem, calc((100vw - 900px) * 0.296), 10rem);
  }
}	

@media only screen and (max-width: 1280px) {
	
}	

@media only screen and (max-width: 1080px) {
	header#masthead .header-logo {width: clamp(130px, 16.667vw, 180px); flex-shrink: 0;}
	header#masthead .header-logo img {width: 100%; height: auto;}
  .header-meta {gap: var(--calc-size-16);}
  .secondary-navigation ul {gap: var(--calc-size-12);}
  .main-navigation ul {font-size: var(--font-size-s);}
}

@media only screen and (max-width: 1023px) {
	.hide-on-lg {display: none;}
  .main-navigation a {padding: var(--calc-size-8) var(--calc-size-8) var(--calc-size-8) var(--calc-size-12);}
}



@media only screen and (max-width: 900px) {

	.hide-on-md {display: none;}

  .content-wrapper {width: 100%; padding: 0 var(--wrapper-side-padding); }
  
  .as-col-flexbox-md {flex-direction: column; flex-wrap: nowrap;}
  .as-col-reverse-flexbox-md {flex-direction: column-reverse;}

  .as-flex-shrink-0-md {flex-shrink: 0;}
  .as-flex-grow-1-md {flex-grow: 1;}

  /* hamburger menu */
  .menu-button-container {}
  .menu-toggle {z-index: 40000; cursor: pointer; gap: .5rem; padding: .5rem .625rem .5rem 1rem; margin-right: -.625rem; font-family: inherit;  background: none;  border: none;  outline: none; color: var(--colors-semantic-text);}
  .menu-toggle:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary); outline-offset: 4px; border-radius: 2px;}
  .menu-toggle div {position: relative; width: 1.5rem; height: 1.5rem;}
  .menu-toggle span {font-size: 1rem; line-height: 125%; font-weight: var(--weight-semibold); }
  .line {-webkit-transition: all .3s ease; transition: all .3s ease; cursor: pointer; z-index: 100; width: 18px; left: 3px; top: 5px; position: absolute; display: block; height: 2px;  background: var(--colors-semantic-text);}
  .line-2 {top: 11px;}
  .line-3 {top: 17px;}

  .menu-toggle[aria-expanded="true"] .line-1 { transform: rotate(45deg); top: 11px;}
  .menu-toggle[aria-expanded="true"] .line-2 { opacity: 0;}
  .menu-toggle[aria-expanded="true"] .line-3 { transform: rotate(-45deg); top: 11px;}

  header#masthead {height: auto;}
  .mobile-header-content {height: 88px; padding: 0 var(--wrapper-side-padding); background: var(--colors-schnee);  z-index: 196000;}
  .mobile-header-logo {width: clamp(172px, 31vw, 220px);}
  .mobile-header-logo a {display: block;}
  .mobile-header-logo a img {width: 100%; height: auto;}
  .mobile-header-logo a:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary); outline-offset: 4px; border-radius: 2px;}

  header#masthead .content-wrapper {
      position: fixed; z-index: 195000; width: 100%; height: calc(100% - 88px); right: 0; top: 88px; 
      transform: translateY(-100%);
      visibility: hidden; /*opacity: 0;*/  
      background: #fff;
  }
  .topAnimsStart header#masthead .content-wrapper {transition: all .8s cubic-bezier(.77,0,.18,1); padding: 0;}
  header#masthead .content-wrapper .header-content {width: 100%; height: 100%; position: relative; padding: 0; z-index: 100; overflow: auto; padding: 0 var(--wrapper-side-padding) /*-ms-touch-action: none; touch-action: none;*/}
  header#masthead .content-wrapper[aria-hidden="false"] {visibility: visible; transform: translateY(0%); transition: all .8s cubic-bezier(.19,1,.22,1); }
  .header-content-inner {display: flex;  flex-direction: column-reverse;}
  .main-navigation ul {flex-direction: column;  gap: 0;  justify-content: flex-start;  align-items: flex-start; font-size: var(--font-size-base);}
  .main-navigation ul li {width: 100%; padding: 0; display: grid;    grid-template-rows: 0fr 0fr;    transition: grid-template-rows .3s ease;}
  .main-navigation ul a {justify-content: space-between; padding: var(--calc-size-20) var(--calc-size-4) var(--calc-size-20) var(--calc-size-12); line-height: 125%; }
  .main-navigation ul.sub-menu a {padding: var(--calc-size-20) var(--calc-size-4) var(--calc-size-20) var(--calc-size-12);}
  .main-navigation ul ul {max-height: 100%!important; overflow: hidden;}
  .main-navigation ul li[aria-expanded="true"] {grid-template-rows: 0fr 1fr;}
  .header-content-inner > div:first-child {border-bottom: none; border-top: solid 1px var(--colors-semantic-separator); padding: var(--calc-size-24) 0 var(--calc-size-48); }
  .header-meta {flex-direction: column;  justify-content: flex-start;  align-items: flex-start; flex-grow: 1; gap: var(--calc-size-32);}
  .header-meta > nav {flex-grow: 1; width: 100%; font-size: var(--font-size-s);}
  .header-meta .as-button {display: none;}
  .secondary-navigation ul {flex-wrap: wrap; gap: var(--calc-size-32) 0;}
  .secondary-navigation ul li {flex-shrink: 0; width: 50%; }
  .emergency-mobile-button {padding: var(--calc-size-16) 0 var(--calc-size-24);}
  .emergency-mobile-button.as-button a {width: 100%; gap: .5rem; color: var(--colors-semantic-highlight-primary); line-height: 114.286%;  letter-spacing: .0025em; justify-content: center;}
}


@media only screen and (max-width: 767px) {

  :root {
    --base-multiplier: calc(0.75 * 1.125);
    --base-multiplier-lg: calc(0.5 * 1.125);
  }

  .hide-on-sm {display: none;}

	body, h1,h2,h3,h5,h6 {
		-webkit-text-size-adjust: none;
	}

	ul, ol, p, h1, h2, h3 {
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
		word-wrap: break-word;
	}
  .checklist ul li::before {left: var(--calc-size-8);}
  /* h1, h2, h3 {text-wrap: balance;} */
	
  .as-flex-shrink-0-sm {flex-shrink: 0;}
  .as-flex-grow-1-sm {flex-grow: 1;}

	.as-flex-direction-column-reverse-mobile {flex-direction: column-reverse;}
  .as-col-flexbox-sm {flex-direction: column;}
	
	.no-wrap {white-space: normal;}

  picture.no-image-hidden {display: none;}
	
}

@media only screen and (max-width: 600px) {

  .lang-navigation {right: auto; left: 20px;}

  .hide-on-s {display: none;}

  .footer-middle picture {max-width: 250px; margin: 0 auto;}
  .special-logo-item picture {width: 75px; height: auto;}
  .footer-bottom {flex-direction: column; flex-wrap: wrap; padding: var(--calc-size-96) 0 0;}
}


@media only screen and (max-width: 479px) {
  .hide-on-xs {display: none;}
}

@media only screen and (max-width: 390px) {
	
}

@media only screen and (max-width: 360px) {
	.hide-on-xxs {display: none;}
  
}

