/*********************************/
/* CSS RESETS                    */
/*********************************/

*, *::before, *::after          { box-sizing:border-box; }
body                            { min-height:100vh; }
table td, table th              { padding:0px;background-color:transparent; }
table                           { margin-bottom:0px;font-size:1rem; }
ul, ol                          { padding-inline-start:0;margin:0;padding:0; }
ul[class],ol[class]             { margin:0;padding:0;list-style:none; }
textarea:focus,input:focus      { outline:none;transition:0.2s; }
img                             { display:block;max-width:100%; }
input, button, textarea, select { font:inherit; }
:target                         { scroll-margin-block:5ex; }

body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd {
  margin-block-start: 0em;
  margin-block-end: 0em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  margin: 0;
}
mark {
	background:transparent;
}


/*** FONT RENDERING ***/

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  
}
@-moz-document url-prefix() {
  body {font-weight: lighter !important;}
}

/*** IE BLOCK ***/

@media all and (-ms-high-contrast: none) {
  div {display: none !important;}
  *::-ms-backdrop,div {display: none !important;}
  *::-ms-backdrop,body:before {
    display: block !important;
    width: 300px;
    padding: 24px 30px;
    text-align: center;
    background: #111111;
    position: relative;
    z-index: 9999;
    content: "Leider nutzen Sie einen veralteten Browser, der von dieser Webseite nicht mehr unterstützt wird. Um diese Seite korrekt darstellen zu können, nutzen Sie bitte einen aktuellen Browser wie Google Chrome, Firefox, Safari oder Microsoft Edge.";
    color: #FFFFFF;
    margin: 100px auto;
  }
}



/*********************************/
/* CSS VARIABLEN                 */
/*********************************/

:root {

--f-family-headline-primary:    "Headline-Primary", "Open-Sans", Arial, Sans-Serif;
--f-family-headline-secondary:  "Headline-Secondary", "Open-Sans", Arial, Sans-Serif;
--f-family-text-primary:        "Text-Primary", "Open-Sans", Arial, Sans-Serif;
--f-family-text-secondary:      "Text-Secondary", "Courier New", Courier, monospace;

--f-letter-spacing-l:  .2rem;
--f-letter-spacing-m:  .1rem;
--f-letter-spacing-s:  .04rem;

--f-size-h1:  5.5rem;
--f-size-h2:  3.5rem;
--f-size-h3:  3.0rem;
--f-size-h4:  2.5rem;
--f-size-h5:  2.0rem;
--f-size-h6:  1.75rem;
--f-size-p-l: 1.7rem;
--f-size-p-m: 1.5rem;
--f-size-p-s: 1.3rem;

--f-size-btn: 1.2rem;

--f-line-height-h1:  6.5rem;
--f-line-height-h2:  4.5rem;
--f-line-height-h3:  4.0rem;
--f-line-height-h4:  3.3rem;
--f-line-height-h5:  2.9rem;
--f-line-height-h6:  2.2rem;
--f-line-height-p-l: 2.7rem;
--f-line-height-p-m: 2.5rem;
--f-line-height-p-s: 2rem;
--f-line-height-btn: 2.3rem;

--f-weight-regular:  400;
--f-weight-medium:   500; 
--f-weight-semibold: 600; 
--f-weight-bold:     700; 
  
--f-p-h1:  0 0 1.6rem 0;
--f-p-h2:  0 0 1rem 0;
--f-p-h3:  0 0 1.1rem 0;
--f-p-h4:  0 0 1.1rem 0;
--f-p-h5:  0 0 1.1rem 0;
--f-p-h6:  0 0 1.1rem 0;
--f-p-p-l: 0 0 2.4rem 0;
--f-p-p-m: 0 0 1.6rem 0;
--f-p-p-s: 0 0 1.3rem 0;

}


/*********************************/
/* FONTS                         */
/*********************************/

/********* Font Embed *********/

@font-face {
    font-family: 'Headline-Primary';
	src: url('/wp-content/uploads/fonts/Magdalena-SemiBold.eot'); 
    src: url('/wp-content/uploads/fonts/Magdalena-SemiBold.woff2') format('woff2'),
         url('/wp-content/uploads/fonts/Magdalena-SemiBold.woff') format('woff'),
		 url('/wp-content/uploads/fonts/Magdalena-SemiBold.eot?#iefix') format('embedded-opentype'), 
         url('/wp-content/uploads/fonts/Magdalena-SemiBold.ttf') format('truetype'),
		 url('/wp-content/uploads/fonts/Magdalena-SemiBold.svg#Headline-Primary') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Headline-Primary';
	src: url('/wp-content/uploads/fonts/Magdalena-Medium.eot'); 
    src: url('/wp-content/uploads/fonts/Magdalena-Medium.woff2') format('woff2'),
         url('/wp-content/uploads/fonts/Magdalena-Medium.woff') format('woff'),
		 url('/wp-content/uploads/fonts/Magdalena-Medium.eot?#iefix') format('embedded-opentype'), 
         url('/wp-content/uploads/fonts/Magdalena-Medium.ttf') format('truetype'),
		 url('/wp-content/uploads/fonts/Magdalena-Medium.svg#Headline-Primary') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Text-Primary';
	src: url('/wp-content/uploads/fonts/LibreBaskerville-Regular.eot'); 
    src: url('/wp-content/uploads/fonts/LibreBaskerville-Regular.woff2') format('woff2'),
         url('/wp-content/uploads/fonts/LibreBaskerville-Regular.woff') format('woff'),
		 url('/wp-content/uploads/fonts/LibreBaskerville-Regular.eot?#iefix') format('embedded-opentype'), 
         url('/wp-content/uploads/fonts/LibreBaskerville-Regular.ttf') format('truetype'),
		 url('/wp-content/uploads/fonts/LibreBaskerville-Regular.svg#Text-Primary') format('svg');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Text-Primary';
	src: url('/wp-content/uploads/fonts/LibreBaskerville-Bold.eot'); 
    src: url('/wp-content/uploads/fonts/LibreBaskerville-Bold.woff2') format('woff2'),
         url('/wp-content/uploads/fonts/LibreBaskerville-Bold.woff') format('woff'),
		 url('/wp-content/uploads/fonts/LibreBaskerville-Bold.eot?#iefix') format('embedded-opentype'), 
         url('/wp-content/uploads/fonts/LibreBaskerville-Bold.ttf') format('truetype'),
		 url('/wp-content/uploads/fonts/LibreBaskerville-Bold.svg#Text-Primary') format('svg');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Text-Primary';
	src: url('/wp-content/uploads/fonts/LibreBaskerville-Italic.eot'); 
    src: url('/wp-content/uploads/fonts/LibreBaskerville-Italic.woff2') format('woff2'),
         url('/wp-content/uploads/fonts/LibreBaskerville-Italic.woff') format('woff'),
		 url('/wp-content/uploads/fonts/LibreBaskerville-Italic.eot?#iefix') format('embedded-opentype'), 
         url('/wp-content/uploads/fonts/LibreBaskerville-Italic.ttf') format('truetype'),
		 url('/wp-content/uploads/fonts/LibreBaskerville-Italic.svg#Text-Primary') format('svg');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Text-Secondary';
	src: url('/wp-content/uploads/fonts/WorkSans-SemiBold.eot'); 
    src: url('/wp-content/uploads/fonts/WorkSans-SemiBold.woff2') format('woff2'),
         url('/wp-content/uploads/fonts/WorkSans-SemiBold.woff') format('woff'),
		 url('/wp-content/uploads/fonts/WorkSans-SemiBold.eot?#iefix') format('embedded-opentype'), 
         url('/wp-content/uploads/fonts/WorkSans-SemiBold.ttf') format('truetype'),
		 url('/wp-content/uploads/fonts/WorkSans-SemiBold.svg#Text-Secondary') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}


/********* Basic Font Settings *********/

* { box-sizing:border-box; } 

html {
	font-size:   10px;
	font-family: var(--f-family-text-primary);
	line-height: var(--f-line-height-p-m);
	font-weight: var(--f-weight-regular);
	color:       var(--c01);	
    background:  var(--c02);
	/*scroll-behavior: smooth;*/
}
body {
    font-size:   inherit; 
    color:       inherit; 
    text-align:  left;
    min-height:  100vh; 
}

@media screen and (min-width:768px) and (max-width:1549px)  { html { font-size: 9px;  }}
@media screen and (max-width:767px)  						{ html { font-size: 10px; }}




/********* Font Paddings *********/

.f-p-p-m, p, ul, ol { padding: var(--f-p-p-m);   }
.f-p-p-l            { padding: var(--f-p-p-l);   }
.f-p-p-s            { padding: var(--f-p-p-s);   }
.f-h1-p, h1         { padding: var(--f-p-h1);    }
.f-h2-p, h2         { padding: var(--f-p-h2);    }
.f-h3-p, h3         { padding: var(--f-p-h3);    }
.f-h4-p, h4         { padding: var(--f-p-h4);    }
.f-h5-p, h5         { padding: var(--f-p-h5);    }
.f-h6-p, h6         { padding: var(--f-p-h6);    }
.f-p-0              { padding: 0 !important;     }

ul.wp-block-list, ol.wp-block-list { padding: var(--f-p-p-m)!important;}

.content h2:not(.starter)        		{ padding-top:1.5rem!important; }
.content h3:not(.starter)        		{ padding-top:1rem!important; }
.content .btn-headline:not(.starter)    { margin-top:3rem!important;  }

.btn-headline {
	position: relative;
	z-index:5;
	padding:0!important;
	margin:.2rem 0 2.8rem;
}
.btn-headline span {
	background:var(--c02);
	padding-right:.6rem;
}
.btn-headline.f-center span {
	padding-left:.7rem;
}
.btn-headline:after {
	content:'';
	width:100%;
	height:1px;
	background:var(--c05);
	position: absolute;
	z-index:-1;
	left:0;
	top:50%;
}


/********* Rich Text *********/

p, li {
    font-family:    var(--f-family-text-primary);
  	font-size:      var(--f-size-p-m);
	line-height:    var(--f-line-height-p-m);
	font-weight:    var(--f-weight-regular);
	letter-spacing: var(--none);
}
h1 {
    font-family:    var(--f-family-headline-primary);
  	font-size:      var(--f-size-h1);
	line-height:    var(--f-line-height-h1);
	font-weight:    var(--f-weight-medium);
	letter-spacing: var(--f-letter-spacing-s);
}
h2 {
    font-family:    var(--f-family-headline-primary);
  	font-size:      var(--f-size-h2);
	line-height:    var(--f-line-height-h2);
	font-weight:    var(--f-weight-semibold);
	letter-spacing: var(--f-letter-spacing-s);  
}
h3 {
    font-family:    var(--f-family-headline-primary);
  	font-size:      var(--f-size-h3);
	line-height:    var(--f-line-height-h3);
	font-weight:    var(--f-weight-semibold);
	letter-spacing: var(--f-letter-spacing-s);  
}
h4 {
    font-family:    var(--f-family-headline-primary);
  	font-size:      var(--f-size-h4);
	line-height:    var(--f-line-height-h4);
	font-weight:    var(--f-weight-semibold);
	letter-spacing: var(--f-letter-spacing-s);
}
h5 {
    font-family:    var(--f-family-headline-primary);
  	font-size:      var(--f-size-h5);
	line-height:    var(--f-line-height-h5);
	font-weight:    var(--f-weight-semibold);
	letter-spacing: var(--f-letter-spacing-s);
}
h6 {
    font-family:    var(--f-family-headline-primary);
  	font-size:      var(--f-size-h6);
	line-height:    var(--f-line-height-h6);
	font-weight:    var(--f-weight-semibold);
	letter-spacing: var(--f-letter-spacing-s);
}

/********* Font Classes *********/

.f-p-m, .header .dropdown-menu a, .offcanvas a, .trp-ls-language-name,
.data-grid-empty:after, .form-text-input, .form-select, label {
    font-family:    var(--f-family-text-primary)!important;
  	font-size:      var(--f-size-p-m)!important;
	line-height:    var(--f-line-height-p-m)!important;
	font-weight:    var(--f-weight-regular)!important;
}
.f-p-l {
  	font-family:    var(--f-family-text-primary)!important;
  	font-size:      var(--f-size-p-l)!important;
	line-height:    var(--f-line-height-p-l)!important;
	font-weight:    var(--f-weight-regular)!important;
}
.f-p-s, .quelle, .wp-block-table td {
  	font-family:    var(--f-family-text-primary)!important;
  	font-size:      var(--f-size-p-s)!important;
	line-height:    var(--f-line-height-p-s)!important;
	font-weight:    var(--f-weight-regular)!important;
}
.f-h1 {
  	font-family:    var(--f-family-headline-primary)!important;
  	font-size:      var(--f-size-h1)!important;
	line-height:    var(--f-line-height-h1)!important;
	font-weight:    var(--f-weight-bold)!important;
	letter-spacing: var(--f-letter-spacing-s)!important;
}
.f-h2 {
  	font-family:    var(--f-family-headline-primary)!important;
  	font-size:      var(--f-size-h2)!important;
	line-height:    var(--f-line-height-h2)!important;
	font-weight:    var(--f-weight-bold)!important;
	letter-spacing: var(--f-letter-spacing-s)!important;
}
.f-h3 {
  	font-family:    var(--f-family-headline-primary)!important;
  	font-size:      var(--f-size-h3)!important;
	line-height:    var(--f-line-height-h3)!important;
	font-weight:    var(--f-weight-bold)!important;
	letter-spacing: var(--f-letter-spacing-s)!important;
}
.f-h4 {
  	font-family:    var(--f-family-headline-primary)!important;
  	font-size:      var(--f-size-h4)!important;
	line-height:    var(--f-line-height-h4)!important;
	font-weight:    var(--f-weight-bold)!important;
	letter-spacing: var(--f-letter-spacing-s)!important;
}
.f-h5 {
  	font-family:    var(--f-family-headline-primary)!important;
  	font-size:      var(--f-size-h5)!important;
	line-height:    var(--f-line-height-h5)!important;
	font-weight:    var(--f-weight-bold)!important;
	letter-spacing: var(--f-letter-spacing-s)!important;
}
.f-h6 {
  	font-family:    var(--f-family-headline-primary)!important;
  	font-size:      var(--f-size-h6)!important;
	line-height:    var(--f-line-height-h6)!important;
	font-weight:    var(--f-weight-bold)!important;
	letter-spacing: var(--f-letter-spacing-s)!important;
}
.f-btn, 
.header nav > ul > li > a,
#language-toggle span,
.footer-wrap ul a,
.wp-block-table th {
  	font-family:    var(--f-family-text-secondary)!important;
  	font-size:      var(--f-size-btn)!important;
	line-height:    var(--f-line-height-btn)!important;
	font-weight:    var(--f-weight-semibold)!important;
	letter-spacing: var(--f-letter-spacing-m)!important;
	text-transform: uppercase!important;
}

/********* Font Corrections for Mobile Sizes *********/

@media screen and (max-width:767px) {
p, li, .f-p-m {
  	font-size:      calc(var(--f-size-p-m)*.85)!important;
	line-height:    calc(var(--f-line-height-p-m)*.85)!important;
}
.f-p-l {
  	font-size:      calc(var(--f-size-p-l)*.85)!important;
	line-height:    calc(var(--f-line-height-p-l)*.85)!important;
}
.f-p-s, .quelle {
  	font-size:      calc(var(--f-size-p-s)*.85)!important;
	line-height:    calc(var(--f-line-height-p-s)*.85)!important;
}
.f-h1, h1 { 
    font-size:       calc(var(--f-size-h1)*.65)!important; 
    line-height:     calc(var(--f-line-height-h1)*.65)!important; 
}
.f-h2, h2 { 
    font-size:       calc(var(--f-size-h2)*.75)!important; 
    line-height:     calc(var(--f-line-height-h2)*.75)!important; 
}
.f-h3, h3 { 
    font-size:       calc(var(--f-size-h3)*.85)!important; 
    line-height:     calc(var(--f-line-height-h3)*.85)!important; 
}
.f-h3, h4 { 
    font-size:       calc(var(--f-size-h3)*.9)!important; 
    line-height:     calc(var(--f-line-height-h3)*.9)!important; 
}
h1 span.f-h5 {
	font-size:       calc(var(--f-size-h5)*.7)!important; 
    line-height:     calc(var(--f-line-height-h5)*.7)!important; 
}
}



/*********************************/
/* CSS FRAMEWORK                 */
/*********************************/

/********* COLORS *********/ 

:root {

--c01: #0F0F0E;
--c02: #F9F2EB;
--c03: #7C7565;
--c04: #464840;
--c05: #CDC7BD;
--c06: #E9E0D4;
--c07: #E7D9CB;
--c08: #DAD3C8;
--c09: #AAA499;
--c10: rgba(106,99,80,.3);
--c11: #c68232;
--c12: rgba(198,130,50,.4);
--c13: rgba(15,15,14,.7);

}

.c01 { color:var(--c01)!important; }
.c02 { color:var(--c02)!important; }
.c03 { color:var(--c03)!important; }
.c04 { color:var(--c04)!important; }
.c05 { color:var(--c05)!important; }
.c06 { color:var(--c06)!important; }
.c07 { color:var(--c07)!important; }
.c08 { color:var(--c08)!important; }
.c09 { color:var(--c09)!important; }
.c10 { color:var(--c10)!important; }
.c11 { color:var(--c11)!important; }
.c12 { color:var(--c12)!important; }
.c13 { color:var(--c13)!important; }

.bgc01 { background-color:var(--c01)!important; }
.bgc02 { background-color:var(--c02)!important; }
.bgc03 { background-color:var(--c03)!important; }
.bgc04 { background-color:var(--c04)!important; }
.bgc05 { background-color:var(--c05)!important; }
.bgc06 { background-color:var(--c06)!important; }
.bgc07 { background-color:var(--c07)!important; }
.bgc08 { background-color:var(--c08)!important; }
.bgc09 { background-color:var(--c09)!important; }
.bgc10 { background-color:var(--c10)!important; }
.bgc11 { background-color:var(--c11)!important; }
.bgc12 { background-color:var(--c12)!important; }
.bgc13 { background-color:var(--c13)!important; }

.negative {color:#B80909!important;}


/********* FONT STYLES *********/

.f-center, .has-text-align-center   { text-align:center!important; }
.f-left, .has-text-align-left       { text-align:left!important; }
.f-right, .has-text-align-right     { text-align:right!important; }
.f-justify, .has-text-align-justify { text-align:justify!important; }

.f-bold, b, strong                  { font-weight:var(--f-weight-bold)!important; }
.f-reg                              { font-weight:var(--f-weight-regular)!important; }
.f-italic, i, em                    { font-style:italic!important; }

.f-uppercase	                    { text-transform:uppercase!important; }
.f-underline                        { text-decoration:underline!important; }

/********* TAGS & CLASSES *********/

a { 
	transition:.2s ease!important;
	outline:none;
	cursor:pointer; 
	text-decoration:none;
	color:var(--c03);
}
a:hover { 
	color:var(--c04);
}
button { 
	transition:.2s ease!important;
	outline:none;
	cursor:pointer;
}
hr {
	padding:0;
	margin:0;
	border:0;
	border-top:1px solid var(--c03);
}

.list > span:not(:last-child):after {
	content:', ';
}

/********* UNDERLINES *********/

h2.underline, h3.underline, h4.underline,
.f-h2.underline, .f-h3.underline, .f-h4.underline { position:relative;width:100%; }
h2.underline, .f-h2.underline { margin-bottom:1.6rem!important; }
h3.underline, .f-h3.underline { margin-bottom:1.3rem!important; }
h4.underline, .f-h4.underline { margin-bottom:1.1rem!important; }
h2.underline:after, h3.underline:after, h4.underline:after,
.f-h2.underline:after, .f-h3.underline:after, .f-h4.underline:after {
	content:'';
	position: absolute;
	z-index:5;
	pointer-events:none;
	top:calc(100% - .5rem);
	left:0;
	width:100%;
	height:1px;
	background:var(--c03);
	opacity:.3;
}

/********* BG HEADLINES *********/

.hbg-1 {
	width:100%;
	display: flex;
	align-items:center;
	flex-direction:column;
	justify-content:center;
	text-align:center;
	gap:.6rem;
	background:#181b23 url('/wp-content/uploads/Headline-BG-1.webp') center center no-repeat;
	background-size:cover;
	border-radius:1px;
	min-height:14rem;
	margin:5rem 0 3rem 0;
	padding: 0 2rem 1.5rem 2rem;
}
.hbg-1 .spaced {
	letter-spacing:1rem!important;
	font-size:4.5rem!important;
	line-height:4.5rem!important;
	margin-left:.5rem;
}


/********* STARTER *********/

@media screen and (min-width:965px) {
	p.starter {
		margin-top:-.6rem!important;
	}
	h2.starter {
		margin-top:-.8rem!important;
	}
	h4.starter, .f-h4.starter {
		margin-top:-.6rem!important;
	}
	h5.starter, .f-h5.starter {
		margin-top:-.6rem!important;
	}
	.f-btn.starter {
		margin-top:0rem!important;
	}
	
}

/********* TABLES *********/

.wp-block-table, .wp-block-table table {
	width:100%;
	border-collapse: collapse;
	border-spacing: 0;
	min-width:100%;
}
.wp-block-table table, .wp-block-table table * {
    overflow-wrap: normal!important;
}
.scroll-container {
    overflow: auto;
    border: 1px solid var(--c10);
    border-radius:1px;
    margin:1rem 0 2.5rem;
    max-width:100%;
}
.scroll-container ul {
	padding-bottom:0!important;
}
.scroll-container th {
    position: sticky;
    left: 0;
	line-height: 1.6rem !important;
}
.wp-block-table td {
	word-break: keep-all!important;
}
.wp-block-table th, .wp-block-table td {
    padding:.5rem 1rem;
    border-top:1px solid var(--c10);
    border-left:1px solid var(--c10);
    border-right:0;
    border-bottom:0;
}
.wp-block-table th {
    color:var(--c03);
}
.wp-block-table tr:first-child th, 
.wp-block-table tr:first-child td {
    border-top:1px solid transparent;
    border-bottom:1px solid var(--c10);
}
.wp-block-table th:first-child, 
.wp-block-table td:first-child {
    border-left:1px solid transparent;
    border-right:1px solid var(--c10);
}

/********* BUTTONS *********/

/* Button Style V1 */

.btn-style-v1, .btn-style-v2 {
	display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--c06);
    border-radius: 1px;
    cursor: pointer;
    transition: 0.2s ease;
	border:none;
	color:var(--c01);
}
.btn-style-v1:hover, .btn-style-v1.active {
    background: var(--c08);
	color:var(--c03);
}
.btn-style-v1 {
	min-height: 4.9rem;
	padding:0 2rem;
}
.btn-style-v2 {
	min-height: 3.5rem;
	padding:0 1rem;
}

/* ICONS */


.icon-btn-v1, .icon-btn-v3 {
	display: flex;
	align-items:center;
	justify-content:center;
	border-radius:1px;
	background:var(--c06);
}
.icon-btn-v1 {
	width:5rem;
	aspect-ratio: 1/1;
}
.icon-btn-v1:hover {
	background:var(--c08);
}
.grd-5 .icon-btn-v1 {
	width:100%;
	max-height:6.4rem;
}
.icon-btn-v1 svg {
	width:1.8rem;
	height:1.8rem;
	fill:var(--c03);
	transition:.2s;
} 
.icon-btn-v3 {
	width:100%;
	flex-direction:row;
	min-height:6.4rem;
}
.icon-btn-v3 svg {
	margin-right:.75rem;
	width:1.5rem;
	height:1.5rem;
	fill:var(--c03);
	transition:.2s;
}
.icon-btn-v1:hover svg, .icon-btn-v3:hover svg {
	fill:var(--c01);
} 

.icon-btn-v2 {
	display: flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:6.4rem;
	padding:.8rem .3rem;
	border-radius:1px;
	background:var(--c06);
}
.icon-btn-v2:hover {
	background:var(--c08);
}
.grd-3 .icon-btn-v2 {
	width:100%;
}
.icon-btn-v2 span {
	color:var(--c01);
}
.icon-btn-v2 svg {
	width:1.8rem;
	height:1.8rem;
	margin:.4rem 0 0.2rem;
	fill:var(--c03);
	transition:.2s;
} 
.icon-btn-v2:hover svg {
	fill:var(--c01);
} 



.full-btn-v1 {
	width:100%;
	background:var(--c01);
	border-radius:1px;
	overflow: hidden;
	display: flex;
	align-items:center;
	position:relative;
	color:var(--c01);
}
.full-btn-v1 img {
	position: absolute;
	z-index:0;
	transition:.2s;
}
.full-btn-v1:hover {
}
.full-btn-v1:hover img {
	opacity:.7;
}
.full-btn-v1 div {
	position: absolute;
	left:3rem;
	z-index:5;
}
.full-btn-v1 div span {
	transition:.2s;
}
.full-btn-v1 div span.f-btn {
	opacity:.65;
}
.full-btn-v1 div span.f-h5 {
	color:var(--c01)!important;
}
.full-btn-v1:after {
	content:'';
	position:absolute;
	z-index: 0;
	background:var(--c06);
	left:-2px;
	top:-2px;
	width:calc(100% + 4px);
	height:calc(100% + 4px);
	border-radius:1;
	background:var(--c06);
	background: linear-gradient(115deg,rgba(233, 224, 212, 1) 30%,rgba(233, 224, 212, 0.8) 50%,rgba(233, 224, 212, 0) 85%);
}

/********* IMAGES *********/

.img-fill { width:100%!important;height:100%!important;object-fit:cover;object-position:center center; }
.img-full { width:100%!important;height:auto!important; }
.img-float-left {float:left;margin:.6rem 2.5rem 1.5rem 0;}
@media screen and (max-width:767px) {
.img-float-left {float:left;margin:.5rem 1.7rem 1rem 0;}
}
/********* BORDER RADIUS *********/

.br1    { border-radius:1px; }
.br1100 { border-radius:1px 1px 0 0; }
.br0011 { border-radius:0 0 1px 1px; }
.br0110 { border-radius:0 1px 1px 0; }
.br1011 { border-radius:1px 0 0 1px; }

/********* MEDIA QUERIES *********/

/********* BOXES *********/

.w100 { width:100%;  }

/********* GAPS *********/

:root {

--val-xs: .5rem;
--val-s:  1rem;
--val-sm: 2rem;
--val-m:  2.5rem;
--val-l:  4rem;

}

.gap-xs { gap:var(--val-xs);}
.gap-s  { gap:var(--val-s); }
.gap-sm { gap:var(--val-sm);}
.gap-m  { gap:var(--val-m); }
.gap-l  { gap:var(--val-l); }

.hgap-xs { column-gap:var(--val-xs);}
.hgap-s  { column-gap:var(--val-s); }
.hgap-sm { column-gap:var(--val-sm);}
.hgap-m  { column-gap:var(--val-m); }
.hgap-l  { column-gap:var(--val-l); }

.vgap-s { row-gap:1rem;   }
.vgap-m { row-gap:2.5rem; }
.vgap-l { row-gap:4rem;   }

/********* FLEX *********/

.flx                  { display:flex; }
.flx-d-column         { flex-direction:column; }
.flx-d-row            { flex-direction:row; }
.flx-wrap             { flex-wrap:wrap; }
.flx-nowrap           { flex-wrap:no-wrap; }
.flx-jc-start         { justify-content:flex-start; }
.flx-jc-end           { justify-content:flex-end; }
.flx-jc-center        { justify-content:center; }
.flx-jc-space-between { justify-content:space-between; } 
.flx-ai-start         { align-items:flex-start; }
.flx-ai-end           { align-items:flex-end; }
.flx-ai-center        { align-items:center; }
.flx-ai-stretch       { align-items:stretch; }
.flx-ac-start         { align-content:flex-start; }
.flx-ac-end           { align-content:flex-end; }
.flx-ac-center        { align-content:center; }
.flx-ac-stretch       { align-content:stretch; }
.flx-ac-space-between { align-content:space-between; }
.flx-ac-space-around  { align-content:space-around; }

/********* GRID *********/

*[class*="grd-"]      { display:grid; }
.grd-2                { grid-template-columns: repeat(2, minmax(1px, 1fr)); }
.grd-3                { grid-template-columns: repeat(3, minmax(1px, 1fr)); }
.grd-4                { grid-template-columns: repeat(4, minmax(1px, 1fr)); }
.grd-5                { grid-template-columns: repeat(5, minmax(1px, 1fr)); }
.grd-6                { grid-template-columns: repeat(6, minmax(1px, 1fr)); }

.hide_0 {display:none;}


/*********************************/
/* NAVIGATION                    */
/*********************************/

/********* LOGO *********/

.logo {
	width:15.58%;
	height:100%;
	margin:0 auto;
	padding-top:4.4rem;
  	display: flex;
  	align-items: flex-start;
	overflow:hidden;
	position:relative;
}
.logo svg {
	fill:var(--c07);
	width:100%;
	height:auto;
	aspect-ratio:4/1;
	transition:.2s ease;
}
.logo:hover svg {
	fill:var(--c05);
	opacity:.85;
}

/********* HEADER *********/

.header {
    width: 100%;
    z-index: 50000;
  	position: fixed;
  	transition:.2s ease-in-out;
  	transform:translateY(0%);
}
.header nav {
  	height: 12rem;
  	width: 100%;
  	max-width: 140rem;
	padding:0 5rem;
  	margin: 0 auto;
  	transition: .2s ease-in-out;
}
.header nav > ul {
    list-style: none;
    height: 100%;
    width: 38%;
}
.header nav > ul > li {
    height: 100%;
    display: flex;
    align-items: center;
}
.header nav ul li a {
  	text-decoration: none;
  	color: var(--c06);
  	position: relative;
	height:100%;
	display: flex;
	align-items:center;
}
.header nav > ul > li:hover:not(.sprachauswahl) a, .header nav > ul > li > a.current {
	color:var(--c05);
	opacity:.85;
}
.header nav > ul > li:not(.sprache) > a:after {
	content:'';
	width:0;
	transition:.2s ease-in-out;
	height:1px;
	background:var(--c05);
	top:calc(50% + 1.5rem);
	left:50%;
	transform:translateX(-50%);
	position:absolute;
	z-index:5;
	opacity:0;
}
.header nav > ul > li:not(.sprache):hover > a:after {
	width:3.6rem;
	opacity:.5;
}

.disabled {pointer-events:none!important;opacity:.5!important;}

/********* DROPDOWN *********/

.dropdown {
  	position: relative;
}
.dropdown svg {
	width:.8rem;
	height:.8rem;
	fill:var(--c05);
	margin-left:.5rem;
	transition:.35s ease;
}
.dropdown a:hover svg {
	transform:rotate(90deg);
}
.dropdown-menu {
  	position: absolute;
  	background: var(--c02);
	box-shadow:0 1rem 3rem 0 rgba(0,0,0,.2);
  	width: auto;
  	top: 10rem;
  	left: 50%;
	transform:translateX(-50%);
  	opacity: 0;
  	visibility: hidden;
  	transition: all 0.3s ease;
	border-radius:1px;
}
.dropdown-menu > li {
  	display: flex;
  	justify-content: space-between;
  	width: auto;
}
.dropdown-menu li:not(:first-child) {
	border-top:1px solid var(--c05);
}
.dropdown-menu a {
	padding: .8rem 1.6rem;
	color:var(--c01)!important;
}
.dropdown-menu a:hover {
	color:var(--c03)!important;
}
.dropdown:hover .dropdown-menu {
  	top: 10rem;
  	opacity: 1;
  	visibility: visible;
}

/********* MEGA MENU *********/

.mega-menu {
  	position: absolute;
  	left: 50%;
	transform: translateX(-50%);
  	width: 130rem;
  	top: 10rem;
  	opacity: 0;
  	visibility: hidden;
  	transition: all 0.3s ease;
}
.mega-menu .menu-content {
  	background:var(--c02);
	box-shadow:0 1rem 3rem 0 rgba(0,0,0,.2);
  	padding: 0;
  	display: grid;
  	grid-template-columns: repeat(4, 1fr);
  	gap: 0;
  	width: 100%;
  	justify-content: space-between;
	border-radius:1px;
}
.menu-content .menu-col {
  	display: flex;
  	flex-direction: column;
  	justify-content: space-between;
}
.menu-items li:hover .mega-menu {
  	top: 10rem;
  	opacity: 1;
  	visibility: visible;
}

/********* HEADROOM *********/

.headroom--not-top nav {
	height: 7rem;
}
.headroom--not-top {
	background: rgba(0,0,0,.8);
	backdrop-filter: blur(10px);
}
.headroom--not-top .logo {
	height:3rem;
	padding-top:0;
}
.headroom--not-top .dropdown-menu {
  	top: 8rem;
}
.headroom--not-top .dropdown:hover .dropdown-menu {
  	top: 7rem;
}
.headroom--not-top .mega-menu {
  	top: 8rem;
}
.headroom--not-top .menu-items li:hover .mega-menu {
  	top: 7rem;
}

/********* LANGUAGE SWITCHER *********/

.sprache a span {
	transition:.2s ease;
}
html[lang="de"] .sprache .label-en, html[lang="en"] .sprache .label-de {
	opacity:.4;
}
.sprache:hover a {
	opacity:1!important;
	color:var(--c06)!important;
}
html[lang="de"] .sprache a:hover .label-en,
html[lang="en"] .sprache a:hover .label-de {
	opacity:1;
}
html[lang="de"] .sprache a:hover .label-de,
html[lang="en"] .sprache a:hover .label-en {
	opacity:.4;
}
.sprache > a span:last-child {
	margin-left:2rem;
	display:inline-block;
}
.sprache a {
	position:relative;
}
.sprache a:after {
	content:'';
	position: absolute;
	left:48%;
	top:calc(50% - .6rem);
	width:1px;
	height:1.2rem;
	background:var(--c02);
	opacity:.25;
}
html[lang="de"] #language-toggle .label-en, html[lang="en"] #language-toggle .label-de {
	display:none;
}
#language-toggle span {
	color:var(--c02);
	transform:translateY(.05rem);
}

/********* LANGUAGE POPUP *********/

.menu-language-container {
	border-bottom:1px solid var(--c05);
}
.menu-language-container img {
	width:2.2rem!important;
	height:2.2rem!important;
	margin:0 .8rem 0 0!important;
}
.menu-language-container a {
	color:var(--c01);
	display: block;
	border-top:1px solid var(--c05);
	padding: 1rem 0;
}
.menu-language-container a span {
	display: flex;
	align-items:center;
}
.sprachauswahl {
	display: flex;
	flex-direction:column;
	width:100%;
}
.sprachauswahl li:not(.current-language-menu-item) a >span {
	opacity:.6;
	transition:.2s ease;
}
.sprachauswahl li:not(.current-language-menu-item) a:hover >span {
	opacity:1;
}


/********* MOBILE HEADER FIXES *********/

@media screen and (max-width:1400px) { 
	.header nav > ul {width:38.5%;}
	.logo {width:19rem;}
	.headroom--not-top .logo {margin:.35rem auto 0 auto!important;}
}
@media screen and (max-width:1149px) { 
	.header nav {height:10rem;}
	.headroom--not-top nav {height: 7rem;}
	.header nav > ul {display:none!important;}
	.logo {width:22rem;padding-top:2.75rem;}
	.headroom--not-top .logo {margin:0 auto!important;}
}
@media screen and (max-width:767px) { 
	.header nav {height:9rem;}
	.headroom--not-top nav {height: 5.5rem;}
	.logo {width:20rem;padding-top:2.1rem;}
	.headroom--not-top .logo {padding-top:.1rem;}
	.headroom--not-top .hamburger {border-color:transparent;}
	.headroom--not-top #menu-toggle {right:.6rem;}
	.headroom--not-top #language-toggle {left:.6rem;}
}

/********* HAMBURGER *********/

@media screen and (min-width:1150px) { 
	.hamburger {
		display:none;
	}
}
@media screen and (max-width:1149px) { 
	.hamburger {
		display:flex;
		align-items:center;
		justify-content:center;
		position:absolute;
		border:1px solid var(--c04);
		border-radius:50%;
		background:transparent;
		width:5rem;
		height:5rem;
	}
	.hamburger:hover {
		border:1px solid var(--c03);
	}
	.hamburger svg {
		fill:var(--c02);
		width:2.4rem;
		height:2.4rem;
		transform:translateY(.5px);
	}
}
@media screen and (min-width:768px) and (max-width:1149px) { 
	#menu-toggle {right:4.9rem;}
	#language-toggle {left:4.9rem;}
}
@media screen and (max-width:767px) { 
	#menu-toggle {right:1.9rem;}
	#language-toggle {left:1.9rem;}
}

/********* OFF-CANVAS *********/

.offcanvas {
  	position: fixed;
  	top: 0;
  	right: 0;
  	width: 35rem;
  	height: 100%;
  	background: var(--c02);
  	color: var(--c01);
  	padding:0;
  	box-shadow: none;
  	transform: translateX(100%);
  	transition: transform .4s ease;
  	z-index: 60001;
}
.offcanvas.open {
  	transform: translateX(0);
  	box-shadow: 0 0 2rem rgba(0,0,0,.4);
}
.offcanvas ul {
  	list-style:none;
  	padding:0;
	margin:0;
}
.offcanvas > ul {
	margin-top:10rem;
	padding:0 5rem;
}
.offcanvas > ul a {
  	color: var(--c01);
	border-top:1px solid var(--c05);
	display: flex;
	align-items: center;
    justify-content: space-between;
	width:100%;
	padding: 1rem 0;
}
.offcanvas > ul > li:last-child > a {
	border-bottom:1px solid var(--c05);
}
.offcanvas > ul a:hover {
	color:var(--c03);
}
#menu-close {
	display:flex;
	align-items:center;
	justify-content:center;
	position:absolute;
	right:4.9rem;
	top:2.5rem;
	border:1px solid var(--c05);
	border-radius:50%;
	background:transparent;	
	width:5rem;
	height:5rem;
}
#menu-close:hover {
	border:1px solid var(--c03);
}
#menu-close svg {
	fill:var(--c03);
	width:2.4rem;
	height:2.4rem;
}
.backdrop {
  	position: fixed;
  	top: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
  	background: rgba(0,0,0,0.6);
  	opacity: 0;
  	visibility: hidden;
  	transition: opacity .4s ease;
  	z-index: 60000;
}
.backdrop.show {
  	opacity: 1;
  	visibility: visible;
}
@media screen and (max-width:767px) { 
.offcanvas {
  	width: 29rem;
}
.offcanvas > ul {
	margin-top:9rem;
	padding:0 2rem;
}
#menu-close {
	right:1.9rem;
	top:2rem;
}
}

/********* SUBMENU TOGGLE *********/

.submenu.show > a {
	color:var(--c03);
}
.submenu > a svg {
	fill:var(--c03);
	width:1.6rem;
	height:1.6rem;
	transition:.2s ease;
	transform:rotate(45deg);
}
.submenu.show > a svg {
	transform:rotate(90deg);
}
.submenu ul {
  	overflow: hidden;
  	height: 0;
  	transition: height 0.3s ease;
	background:var(--c06);
	padding:0 2rem;
}
.submenu ul li:first-child a {
	border:none;
}

/********* POPUPS *********/

.ppp-container {
  position: fixed;
  top: 0; left: 0;
  width: 100vw; 
  height: 100vh;
  background: rgba(0,0,0,0.6);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 65000;
}
.ppp-container.active {
  opacity: 1;
  pointer-events: all;
}
.ppp-content {
  background: var(--c02);
  padding: 2rem;
  border-radius: 1px;
  min-width: 30rem;
  max-width:calc(100vw - 4rem);
  position: relative;
  box-shadow: 0 1rem 2rem rgba(0,0,0,.4);
  opacity: 0;
  transform: translateY(1.5rem);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.ppp-container.active .ppp-content {
  opacity: 1;
  transform: translateY(0);
}
.ppp-close.btn {
	background:var(--c03);
	border:none;
	border-radius:50%;
	width:3.2rem;
	height:3.2rem;
	position: absolute;
	z-index:5;
	left:100%;
	top:0;
	transform:translate(-50%,-50%);
	padding:0;
	display:flex;
	align-items:center;
	justify-content:center;
	box-shadow: 0 .3rem .4rem rgba(0,0,0,.3);
}
.ppp-close.btn:hover {
	background:var(--c04);
}
.ppp-close.btn svg {
	fill:var(--c02);
	width:1.2rem;
	height:1.2rem;
	transform:rotate(45deg);
	transition:.3s ease;
}
.ppp-close.btn:hover svg {
	transform:rotate(135deg);
}
.ppp-headline.f-btn {
	margin:-.5rem 0 -1.5rem 0;
} 


/********* FOOTER *********/

#footer {display:none;}

.footer {
	width:100%;
	background:var(--c01);
	display:flex;
	flex-direction:column;
	align-items:center;
	position:relative;
	z-index:0;
}
.footer-wrap {
	margin:8rem 5rem 6rem 5rem;
	padding:6rem 5rem 80px;
	width:100%;
	max-width:140rem;
	position: relative;
	z-index:1;
	transition:.2s ease;
}
.footer-col1, .footer-col3 {
	width:16rem;
}
.footer-col2 {
	width:calc(100% - 32rem);
}
.footer-wrap ul a {
	display: flex;
	align-items:center;
	min-height:4rem;
	border-bottom:1px solid rgba(249,242,235,.15);
	color:var(--c02);
}
.footer-col1 {
	border-top:1px solid rgba(249,242,235,.15);
}
.footer-wrap ul a:hover {
	opacity:.85;
	color:var(--c05);
}
.footer-col3 svg {
	width:1.5rem;
	height:1.5rem;
	fill:var(--c02);
	transition:.2s ease;
}
.footer-col3 li:last-child svg {
	width:.8rem;
	height:.8rem;
}

.footer-col3 a:hover svg {
	opacity:.85;
	fill:var(--c05);
}
.ftr-btn {
	border-radius:50%;
	border:1px solid rgba(249,242,235,.15);
	width:100%;
	aspect-ratio: 1/1;
	display: flex;
	align-items:center;
	justify-content:center;
}
.ftr-btn:hover {
	border:1px solid var(--c03);
}
.ftr-btn svg {
	fill:var(--c02);
	width:1.5rem;
	height:1.5rem;
	transition:.2s ease;
}
.footer-col2 {
	padding:0 4%;
	margin:-.3rem 0 -.2rem 0;
}
.footer-col2 svg {
	width:10rem;
	height:1.9rem;
	fill:var(--c05);
}

@media screen and (max-width:1249px) { 
	.br1250 {display:none;}
}
@media screen and (max-width:950px) { 
	.footer-wrap {
		flex-wrap:wrap;
		justify-content:center;
		gap:3rem;
		padding:6rem 2rem 0 2rem;
	}
	.footer-col1, .footer-col3 {
		order:1;
	}
	.footer-col2 {
		order:2;
		width:100%;
		max-width:70rem;
		padding:3rem 0 0 0;
	}
	.footer-col2 svg {
		margin:2.2rem 0;
	}
}
@media screen and (max-width:767px) { 
	.footer-wrap {
		margin:8rem 2rem;
	}
}


@media screen and (max-width:479px) { 
	.footer-wrap {
		flex-direction:column;
		gap:0;
	}
	.footer-col1, .footer-col3 {
		width:100%;
	}
	.footer-col3 {
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
	}
	.footer-col3 li.grd-span {
		order:1;
		width:100%;
	}
	.footer-col3 li:not(.grd-span) {
		order:2;
	}
}


/********* TOOLTIPS *********/

.tippy-box {
  background: var(--c06);
  color:var(--c01);
  border-radius: 1px;
  border: 1px solid var(--c09);
  max-width: 35rem;
  box-shadow: 0 1rem 2rem -1rem rgba(0, 0, 0, 0.75);
}
.tippy-content .data-wrapper {
	margin:-.4rem -.8rem!important;
	background:var(--c06);
	min-width:28rem;
	max-width:35rem;
}
.tippy-content .list-item-thumb, .tippy-content .list-item-block, .tippy-content .list-item-header {
	width:28rem!important;
}
.tooltip-area {
	display:none!important;
	position: fixed;
}


/********* ACCORDEON *********/

.acco-header {
	background:var(--c06);
	border-radius:1px;
	width:100%;
	display: flex;
	align-items:center;
	min-height:5.5rem;
	padding:0 4rem 0 2rem!important;
	margin-top:1rem;
	transition:.2s;
	cursor:pointer;
	position:relative;
}
.acco-header.active, .acco-header:hover {
	background:var(--c08);
}
.acco-header:after {
	content:'+';
	position: absolute;
	right:1.5rem;
	top:50%;
	transform:translateY(-50%);
	pointer-events:none;
	font-size:2.5rem;
	color:var(--c03);
	transition:.2s;
}
.acco-header.active:after {
	transform:translateY(-50%) rotate(45deg);
}
.acco-panel {
	display: none;
}
.acco-panel.active {
    display: block;
	background:var(--c06);
	padding:2rem 2.5rem;
}
.acco-panel > *:last-child, .acco-panel > .wp-block-group__inner-container > *:last-child {
	padding-bottom:0!important;
}


/********* WORDPRESS EDITOR *********/

.wp-block-image, .wp-block-image img {
	border-radius:1px;
}
.wp-block-image.size-full, .wp-block-image.size-full img {
	width:100%;
}
.wp-block-list {
	list-style:inside!important;
}
.wp-block-separator {
	margin:0rem 0 3.5rem;
	opacity: .3;
}
.wp-block-separator.small {
	margin:.5rem 0 2.3rem;
}
p.quelle {
	width:100%;
	background:var(--c06);
	padding:.4rem 1rem!important;
	padding-bottom:.4rem!important;
	margin:.5rem 0 0 0!important;
	min-height:3.6rem;
	display:flex;
	align-items:center;
	border-radius:1px;
}
sup {
	vertical-align: unset!important;
    font-size: unset!important;
	position: relative;
	color:var(--c11);
}
sup:before {
	content:'!';
	font-family: var(--f-family-text-secondary) !important;
	font-weight:bold!important;
	font-size:1.2rem;
	width:1.1em;
	height:1.1em;
	border-radius:50%;
	margin-right:.5rem;
	background:var(--c11);
	color:var(--c02);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	transform:translateY(-.1em);
}
.hinweis {
	padding:1.4rem 2rem;
	border:1px solid var(--c12);
	border-radius:1px;
	margin-bottom:2.5rem;
}
.negativ, .positiv {
	position: relative;
	padding-left:4rem;
}
.negativ:before, .positiv:before {
	position: absolute;
	width:2.8rem;
	height:2.8rem;
	border-radius:50%;
	left:0;
	top:.5rem;
	display: flex;
	align-items:center;
	justify-content:center;
	font-weight:bold;
	font-size:1.7rem;
}
.negativ:before {
	content:'-';
	border:1px solid red;
	color:red;
	padding-bottom:.2rem;
}
.positiv:before {
	content:'+';
	border:1px solid green;
	color:green;
	padding-bottom:.1rem;
}
.is-layout-flex {
	display:flex;
	gap:2.5rem;
	padding:1rem 0 2.5rem 0;
}
.is-layout-flex.pbot-1 {
	padding-bottom:1rem;
}
.is-layout-flex .wp-block-column > *:not(.quelle):last-child {
	padding-bottom:0!important;
}
@media screen and (max-width:964px) { 
	.is-layout-flex {flex-direction:column;gap:2rem;}
}














