
/* nur für den DEV Hinweis */
body:before { content: "DEV"; color: red; font-size: 5em; font-weight: bold; position: fixed; top: 0.5em; left: 0; z-index: 1000;  rotate: -45deg; z-index: 10000; }

@font-face{
	font-family:"Officina"; src: url("/static/fonts/6bd4559e-7068-4e5a-872d-7364bdbf509d.woff2") format("woff2"),url("/static/fonts/e205d81f-d1d9-4619-b1af-94b73f9b296a.woff") format("woff");
    }
@font-face{
	font-family:"Ptsans"; src: url("/static/fonts/pt-sans-v12-latin-regular.woff2") format("woff2"),url("/static/fonts/pt-sans-v12-latin-regular.woff") format("woff"); font-weight: normal;
    }
@font-face{
	font-family:"Ptsans"; src: url("/static/fonts/pt-sans-v12-latin-700.woff2") format("woff2"),url("/static/fonts/pt-sans-v12-latin-700woff") format("woff"); font-weight: bold;
    }
@font-face { font-family: "FameRe"; src: url("/static/fonts/fa-regular-400.woff") format("woff"); font-weight: normal; }
@font-face { font-family: "FameSo"; src: url("/static/fonts/fa-solid-900.woff") format("woff"); font-weight: bold; }
@font-face { font-family: "FameBr"; src: url("/static/fonts/fa-brands-400.woff") format("woff"); font-weight: normal; }

* { position: relative; }
audio, canvas, iframe, img, svg, video { vertical-align: middle; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }
.browserupgrade {  margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0; }
nav ul { margin: 0; padding: 0; list-style-type: none; }
nav a { display: block; text-decoration: none; }
#skip2m { position: absolute; left: -999px; z-index: 10000; }

p:first-child, h1+p, headlike1+p { margin: 0; }
p:last-child { margin-bottom: 0; }
a { color: #01517b; }
a:focus, a:focus-visible { outline: 2px solid #01517b; }
a:focus:not(:focus-visible) { outline: none; }

body { font: 10px/1 Ptsans, Helvetica, Helvetica Neue, Arial; margin: 0; padding: 0; font-weight: 400; color: #1d1d1b; background: #fff; }
.grau .top__bar, .grau .main__container, .grau .footer__container { filter: grayscale(100%); filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 \'/></filter></svg>#grayscale"); }

.text1 { font-size: 11px; }
.text1 .main__container { padding-top: 55px; }
.text2 { font-size: 12.5px; }
.text2 .main__container { padding-top: 60px; }
.active { border-bottom: 3px solid #aa165f; color: #aa165f!important; }

.top__bar { background: #f6f8f6; font-size: 1.4em; line-height: 1; position: fixed; width: 100%; z-index: 3; }
.top__bar .wrapper { text-align: right; }
.top__bar ul { display: flex; justify-content: flex-end; margin-right: calc(25% + 40px); padding: 10px 0; }
.top__bar li { padding: 0 0.9em; }
.top__bar li a { padding: 0.5em 0; color: #1d1d1b; }
.top__bar li a:hover { color: #01517b; text-decoration: none; }
.top__bar li a:before { font-family: FameSo; font-size: 1.2em; vertical-align: middle; }
.textswitch:before { content: " "; }
.langswitch:before { content: " "; }
.colorswitch:before { content: " "; }
.contrastswitch:before { content: " "; }
.moneyswitch:before { content: " "; }
.pipe { border-left: 1px solid #1d1d1b; }
.main__container { padding-top: 51px; }
.main { display: flex; }
.wrapper { width: 1920px; max-width: 100%;  margin: 0 auto; box-sizing: border-box; }
.logo { display: inline-block; margin: 30px 0; }
.logo img { max-height: 100px; width: auto; }
.logo img.wo { display: none; }
.key__visual { height: 340px; width: 100%; text-align: center; overflow: hidden; }
.key__visual { height: auto; width: 100%; text-align: center; overflow: hidden; margin-bottom: 40px; }
.key__visual img { margin-left: calc(50% - 670px); }
.key__visual img { margin-left: 0; width: 100%; height: auto; }
header { padding: 0 60px 0 40px; }
.nav__col { box-sizing: border-box; width: 25%; padding-left: 60px; font-family: Officina; }
.nav__col nav { margin-top: 160px; font-size: 2.4em; line-height: 1.8; letter-spacing: 1px; }
.nav__col nav ul { margin-bottom: 2.4em; }
.nav__col nav li { border-top: 1px solid #575756; }
.nav__col nav a { color: #575756; }
.nav__col nav .hassub > a:after { content: " "; font-family: FameSo; font-size: 0.9em; vertical-align: bottom; }
.nav__col nav a:hover { text-decoration: none; }
.nav__col nav a.current { color: #aa165f; }
.nav__col nav a.current:before { content: ""; background: #aa165f; height: 4px; width: 20px; position: absolute; left: -40px; top: 0.75em; }
.nav__col nav ul ul a.current:before { content: ""; background: #aa165f; height: 4px; width: 4px; position: absolute; left: -12px; border-radius: 2px; top: 0.75em; }
.nav__col nav .subnav { margin-bottom: 0; font-size: 0.8em; position: absolute; top: 0.75em; left: 50%; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.2); z-index: 2; padding: 10px 20px; }
	.nav__col nav .subnav { display: none; position: relative; top: auto; left: auto; box-shadow: none; background: none; z-index: 2; padding: 0 0 5px 12px; }
.nav__col nav .subnav li { border: none; }
.opener, .closer { display: none; }
nav.nav__open { display: none; }
.nav__col nav.nav__open .subnav, .nav__col nav .open .subnav { display: block; }

.main__col { box-sizing: border-box; width: 75%; }
.sponsor { text-align: right; margin: 0 0 3em 0; }
article { width: 66.66%; padding: 0 40px; float: left; box-sizing: border-box; }
aside { width: 33.33%; padding-right: 60px; box-sizing: border-box; float: right; }
aside  img { max-width: 100%; height: auto; }
.ll__structure article { width: 100%; float: none; padding: 0 60px 0 40px; }
.ll__structure aside { width: 100%; float: none; padding: 0 60px 0 40px;  }
.ll__structure .ll__hide { display: none; } 
section { padding: 20px; box-shadow: 0 0 10px rgba(0,0,0,0.2); margin-bottom: 40px; font-size: 1.4em; line-height: 1.6; }
section img { max-width: 100%; height: auto; }
.ll__text{ font-size: 1.4em; }
h1, h2, .headlike1 { font-size: 1.75em; line-height: 1.2; font-weight: normal; font-family: Officina; margin: 0; margin-bottom: 0.2em; }
h1.ll__text, h2.ll__text, .headlike1.ll__text { font-size: 2em; }
.headlike2 { font: 1.5em/1.2 Ptsans, Helvetica, Helvetica Neue, Arial; font-weight: 400; line-height: 1.2; margin-bottom: 0.2em;  }
.date { font: 1.5em/1.2 Ptsans, Helvetica, Helvetica Neue, Arial; font-weight: 700; line-height: 1.2; margin-bottom: 0.2em; color: #aa165f; }
.halbbreit { max-width: calc(50% - 10px); height: auto; margin-right: 20px; float: left; margin-bottom: 20px; }
blockquote { display: block; min-height: 3em; font-weight: 700; color: #aa165f; padding-left: 50px; background: url("/static/images/quote-start.png") no-repeat; background-size: 40px auto; margin: 1em 0; }
.keinTextfluss { clear: left; }
.box__entry { padding: 20px; box-shadow: 0 0 10px rgba(0,0,0,0.2); margin-bottom: 40px; font-size: 1.4em; line-height: 1.6;  }
.more { display: block; text-align: right; font-style: italic; font-size: 0.857em; font-weight: 700; text-decoration: none; }
.more:before { content: "… "; }
.more:after { content: " ›"; }

footer { background: #ecf4f6; padding: 20px; text-align: center; font-size: 1.2em; line-height: 1.2; display: flex; align-items: center; }
footer a { color: #1d1d1b; text-decoration: none; }
footer a:hover { color: #01517b; }
.foot__box__1 { width: 50%; text-align: right; padding-right: 20px; box-sizing: border-box; font-size: 2em; }
.foot__box__2 { width: 50%; border-left: 1px solid #1d1d1b; text-align: left; padding-left: 20px; box-sizing: border-box; }
/* .foot__box__2 { width: 50%; margin: auto; border-left: none; text-align: center; padding-left: 0; box-sizing: border-box; } */
.fa__brands { font-family: FameBr; }
.fa__solid { font-family: FameSo; }
.point:before { content: "・"; }
.sponly { display: none; }

.list__entry { border-top: 1px dotted #1d1d1b; padding: 20px 0; }
.list__entry:first-child { border-top: none; }
.team { display: flex; align-items: flex-start; padding-bottom: 0; }
.team a { text-decoration: none; }

.flex2 { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; row-gap: 1em; padding-top: 2em; border-top: 1px dotted #1d1d1b;  }
.flex2 div { width: 40%; background: #fff; margin: 0 0.5em; }
.flex2 a { text-align: center; display: block; padding: 1.5em 0; transition: 0.25s; }
.flex2 a:hover { box-shadow: 0 0 10px rgba(0,0,0,0.2); transform: scale(1.06); z-index: 1; transition: 0.25s; }
.flex2 img { width: 72%; max-width: 310px; height: auto; }

.flex3 { display: flex; align-items: flex-start; flex-wrap: wrap; justify-content: space-between; row-gap: 1em; padding-top: 2em; border-top: 1px dotted #1d1d1b;  }
.flex3 div { background: #fff; width: 32%; margin: 0.5em 0; }
.flex3 a { text-align: center; display: block; padding: 1em 0; transition: 0.25s; filter: grayscale(100%); filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 \'/></filter></svg>#grayscale"); }
.flex3 a:hover { box-shadow: 0 0 10px rgba(0,0,0,0.2); filter: none; transform: scale(1.06); z-index: 1; transition: 0.25s; }
.flex3 a img { width: 72%; max-width: 310px; height: auto; }

.catch__link { cursor: pointer; }
.catch__link:hover { background: #f6f8f6; }

.elastic-video { position: relative; padding-bottom: 55%; padding-top: 15px; height: 0; overflow: hidden; margin-bottom: -0.5em; }
.elastic-video video { position: absolute; top: 0; left: 0; width: 100%!important; height: 100%!important; cursor: pointer; }

div[style="z-index: 1000;text-align:right;font-size:10px;color:grey;display:block !important;"] { position: absolute; left: 20px; bottom: 12px; }
div[style="z-index: 1000;text-align:right;font-size:10px;color:grey;display:block !important;"] a { text-decoration: none; }



body.invers { background: #293133; color: #fff; }
body.invers a { color: #fff; }
body.invers .top__bar { background: #293133; border-bottom: 2px solid #fff; }
body.invers .top__bar li a { color: #fff; }
body.invers .top__bar li a:hover { color: #fff; }
body.invers .pipe { border-left: 1px solid #fff; }
body.invers .nav__col nav li { border-top: 1px solid #fff; }
body.invers .nav__col nav a { color: #fff; }
body.invers .nav__col nav a.current { color: #dc9bbb; }
body.invers .nav__col nav a.current:before { background: #dc9bbb; }
body.invers .nav__col nav ul ul a.current:before { background: #dc9bbb; }
body.invers .date { color: #dc9bbb; }
body.invers blockquote { color: #dc9bbb; }
body.invers footer { background: none; border-top: 2px solid #fff; }
body.invers footer a { color: #fff; text-decoration: none; }
body.invers footer a:hover { color: #01517b; }
body.invers .foot__box__2 { border-left: 1px solid #fff; }
body.invers .foot__box__2 { border-left: none; }
body.invers .list__entry { border-top: 1px dotted #fff; }
body.invers .catch__link:hover { background: #3e3e3e; }
body.invers .active { border-bottom: 3px solid #dc9bbb; color: #dc9bbb!important; }
body.invers section { box-shadow: 0 0 10px rgba(255,255,255,0.2); }
body.invers .box__entry { box-shadow: 0 0 10px rgba(255,255,255,0.2); }
body.invers .logo img.std { display: none; }
body.invers .logo img.wo { display: inline-block; }
body.invers a:focus, body.invers a:focus-visible { outline: 2px solid #fff; }
body.invers a:focus:not(:focus-visible) { outline: none; }

@media screen and (-webkit-min-device-pixel-ratio:0) { 
}
@media not all and (min-resolution:.001dpcm) { 
	@media {
		.grau .top__bar, .grau .main__container, .grau .footer__container { filter: grayscale(100%); }
		.flex3 a { filter: grayscale(100%); }
	}
}

@media only screen and (max-width: 1279px) {

	article { width: 100%; padding: 0 60px 0 40px; float: none; }
	aside { width: 100%; padding: 0 60px 0 40px; float: none; display: flex; justify-content: space-between; flex-wrap: wrap; }
	.box__entry { width: calc(50% - 20px); box-sizing: border-box; }
	.top__bar ul { margin-right: 60px; }
	.key__visual { height: 250px; width: 100%; text-align: center; overflow: hidden; }
	.key__visual img { margin-left: calc(50% - 492px); width: auto; height: 100%; }

}

@media only screen and (max-width: 1023px) {

	.main__col { width: 100%; }
	header { padding: 0 40px; }
	article { width: 100%; padding: 0 40px; float: none; }
	aside { width: 100%; padding: 0 40px;  float: none; display: flex; justify-content: space-between; }
	.ll__structure article, .ll__structure aside { padding: 0 40px; }
	.box__entry { width: calc(50% - 20px); box-sizing: border-box; }
	.top__bar ul { margin-right: 36px; }

	.nav__col { position: absolute; background: #fff; top: 0; left: 0; width: 100%; display: none; z-index: 2; padding: 40px;  box-shadow: 0 0 10px rgba(0,0,0,0.2); }
	.nav__col nav { margin-top: 0; }
	.nav__col nav ul { margin-bottom: 0; }
	.nav__col nav .subnav { position: relative; top: auto; left: auto; box-shadow: none; z-index: 2; padding: 0 0 5px 20px; }
	.nav__col nav .subnav li { border: none; }
	.opener { display: block; position: absolute; top: 40px; right: 40px; font-family: Officina; line-height: 1.5; }
	.opener button { font-size: 3em; line-height: 1.5; border: none; background: none; padding: 0 0.3em; }
	.opener button:after { content: " "; font-size: 1.6em; font-family: FameSo; vertical-align: middle; }
	.closer { display: block; text-align: right; margin: 0.3em 0; }
	.closer button { font-size: 3em; line-height: 1.5; border: none; background: none; padding: 0 0.3em; }
	.closer button:after { content: " "; font-size: 1.6em; font-family: FameSo; vertical-align: middle; }
	.nav__col nav a.current:before { display: none; }
	.nav__col nav ul ul a.current:before { display: block; }
	nav.nav__open { display: block; }
	nav.nav__closed { display: none; }

	body.invers .nav__col { background: #1d1d1d; border-bottom: 2px solid #fff; box-shadow: 0 0 10px rgba(255,255,255,0.2); }
	body.invers .nav__col nav { margin-top: 0; }
}

@media only screen and (max-width: 767px) {
	header { padding: 0; }
	.logo { margin-left: 40px; }
	/*.key__visual { height: 290px; }
	.key__visual img { margin-top: -30px; } */
	aside { display: block; }
	.box__entry { width: 100%; }
	.halbbreit { max-width: 100%; margin-right: 0; float: none; }
  .list__entry { margin-top: 16px; }
	.sponly { display: inline; }
	.key__visual { height: 200px; }
	.key__visual img { margin-left: calc(50% - 394px); }
	.team { flex-wrap: wrap; }
	footer { padding-bottom: 50px; }
}

@media only screen and (max-width: 559px) {
	.logo { margin-left: 20px; }
	.logo img { max-height: 80px; }
	.opener { top: 20px; right: 20px; }
	.opener button { font-size: 2em; }
	.closer { margin-top: 0; }
	.closer button { font-size: 2em; }
	article, aside { padding: 0 20px; }
	.ll__structure article, .ll__structure aside { padding: 0 20px; }
	section, .box__entry { margin-bottom: 20px; padding: 14px; }
	.nav__col { padding: 20px; }
	.top__bar ul { margin-right: 14px; }
	footer { display: block; }
	.foot__box__1 { width: 100%; text-align: center; }
	.foot__box__2 { width: 100%; margin-top: 20px; border: none; padding-left: 0; }
	.top__bar li a { display: inline-block; font-size: 1.2em; width: 1.4em; text-align: center; }
	.top__bar li a .wording { display: none; }
  .flex2 div { width: 50%; }
  .flex2 img { width: 85%; }
  .flex3 a img { width: 80%; }
}
@media only screen and (max-width: 479px) {
	.opener .wording { display: none; }
	.logo { margin: 20px 0 20px 20px; }
	.logo img { max-height: 70px; }
	.opener { top: 12px; }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

