* { box-sizing: border-box; margin: 0; padding: 0; text-wrap: pretty; text-rendering: geometricPrecision; }
			html { font-size: 62.5%; overflow-y: scroll; }
			body { font-size: 1.6vw; font-weight: 450; }
			:root {
			  font-family: Inter, sans-serif;
			  font-feature-settings: 'liga' 1, 'calt' 1, 'ss07' 0, 'cv01' 0, 'cv10' 1 ;
			}
			@supports (font-variation-settings: normal) {
			  :root { font-family: InterVariable, sans-serif; }
			}
	 
			
			body { background-color: #c6ced5; line-height: 1.25; }
			body.home { margin-top: 4vw; }
			
			main, footer, header { margin: 0 auto; width: 84vw; padding: 0; }
			h2 { margin: 1.0rem 0; }
			header, article, aside { padding: 2vw; }
			
			article, aside { display: flex; background-color: white; margin: 2vw 0; }
			aside { display: block; background-color: #011; color: rgba(255, 255, 255, 0.66) ; }
			aside h2 { color: white; }
			aside a { color: white !important; }
			aside ol { list-style: none; }
			aside ol li { margin-bottom: 0.66em; }
			article div h2, aside h2 { text-transform: uppercase; letter-spacing: 0.03em; }
			article p { margin: 0.75em 0; }
			main article:nth-child(even) { flex-direction: row-reverse; }
			article div { margin-left: 2vw; margin-right: 0; }
			article:nth-child(even) div { margin-right: 2vw; margin-left: 0; }
			
			
			footer, header { background-color: #dde4ec; }
			footer { margin-bottom: 3em; }
			header { 
				height: 36vw; padding: 4vw 2vw 0 9vw;
				background-color: rgb(228,25,49);  
				font-size: 2.4vw; font-family: "Bitter", serif; font-weight: 550;
				font-style: italic; position: relative; overflow: hidden; 
			}
			header p { width: 50%; line-height: 1.4; }
			.above, .red { background-color: rgb(228,25,49); color: white; }
			.floater, .above, header {
				z-index: 100;
				background-image: url('/assets/img/do_16x9.png'); background-size: 100%; 
				background-attachment: fixed;
				background-repeat: no-repeat; background-position: top right; }
			.only { background-image: none !important; }
			.floater { 
				position: sticky; top: 0; 
			}
			.floater { padding: 2vw 4vw; padding-top: 0; }
			.above { height: 4vw; position: relative; }
			.above h3 { bottom: 0; left: 4vw; position: absolute; line-height: 0.84; font-weight: 450; }
			.floater h1 { top: 0.8rem; position: relative; }
			.floater h1 a { color: white; }
			.floater .logo { height: 8vw; max-height: 2.5em; width: auto; float: right; margin-right: 0vw; margin-top: 1vw; }
			
			.home main img { margin: 0; padding: 0; width: 100%; width: 40vw; height: 40vw; object-fit: cover; }
			h1 { font-size: 3.6vw; color: white; : line-height: 0.92; }	
			h1 small, .above h3 { font-size: 2.0vw; }
			h2 { font-size: 1.6em; color: #E4002B; }
			.lead { font-size: 1.2em; font-weight: 620; }
			
			
			strong, main h2, main h3, footer h3 { font-weight: 800; }
			.logo-byline strong { font-weight: 750; }
		
			footer .logo { min-height: 100px; background-color: transparent; color: black; }
			footer .logo a { color: black !important; }
			footer .logo a:hover { border-bottom: none; }
			footer .logo svg { float: left; margin-right: 1.4rem; } 
			.logo-byline { font-size: 1.3rem; line-height: 1.2; margin: 0; height: 71px; }
			aside hr { display: none; clear: both; visibility: hidden; width: 100%; }
			
			.subpage footer article { background-color: #dde4ec; }
			footer article { display: flex; margin-bottom: 0 !important; }
			footer article div { width: 100%; margin: 0 0 3.0rem 0; }
			footer article li { list-style: none; margin-top: 0.25em; }
			footer article div h3 { text-transform: uppercase; letter-spacing: 0.02em; font-size: 1.1em; }
			footer article div a { color: rgb(228,25,49); border-bottom: 0; }
			footer .logo { background-color: #c6ced5; padding-top: 6vw; margin-top: 0 !important; }
			
			a { text-decoration: none; }
			li a, header a { border-bottom: 1px solid #555; font-weight: 600; color: rgba(0,0,0,0.2);  }
			header p { color: black; }
			header a { color: white; border-bottom: 0.2vw solid rgba(255,255,255,0.66); }
			article a { color: rgb(228,25,49); border-bottom: 1px solid rgba(228,25,49, 0.33); }
			article a:hover, aside a:hover { color: rgb(228,25,49) !important; border-bottom: 1px solid rgba(228,25,49, 1); }
			article a:active { color: black; border-bottom: 1px solid black; }
			
			.textbeitrag { overflow: hidden; }
			.textbeitrag div { max-width: 36em; }
			.textbeitrag div > * { margin-bottom: 1.0em; } 
			.textbeitrag h3, footer h3 { font-size: 1.2em; margin-bottom: 0; }
			.textbeitrag small a { float: right; }
			.textbeitrag figure { float: right; }
			.textbeitrag img { width: 100%; height: auto; }
			.textbeitrag ul { padding-left: 1.5em; }
			.textbeitrag ul li { margin-bottom: 0.75em; }
			.textbeitrag .halbbreit { width: 50%; float: right; position: relative; left: 2.0rem; }
			.textbeitrag .halbbreit figcaption { padding-right: 3.0rem; }
			.textbeitrag iframe { width: 72vw; height: 40.5vw; }
			small, figcaption { font-size: 0.80em; }
			figcaption { margin-top: 0.2em; }
			
			.sp-4-und-5 .textbeitrag h2 { counter-reset: heading; }
			.sp-4-und-5 .textbeitrag h3:before {
				content: "01.0"counter(heading)"   ";
				counter-increment: heading; 
				font-variant-numeric: tabular-nums; font-weight: 600; font-size: 0.8em; color: #333;
				}
			.sp-4-und-5 .textbeitrag h3 + h3 + h3 + h3 + h3 + h3 + h3 + h3 + h3 + h3:before { content: "01."counter(heading)"   "; }
			.sp-4-und-5 .textbeitrag h3 { font-size: inherit; margin: 0.5em 2em; }
			.sp-4-und-5 .textbeitrag p a { font-weight: bold; }

	
	.badge { 
		position: absolute; z-index: 100; 
		top: -1rem; right: 2rem; min-height: 12rem; min-width: 12rem; font-size: 1.33rem;
		transform: rotate(-7deg); transform-origin: center; display: flex; align-items: center;
		border-radius: 50%; background-color: #04e; letter-spacing: 0.025em; 
		color: white; text-align: center; font-weight: 800; line-height: 1.5; vertical-align: center; }
	.badge > * { width: 100%; display: block; opacity: 0.92; }
	.badge a { color: white; border-bottom: 1px solid rgba(255,255,255, 0.5); }
	.badge:hover > * { opacity: 1; }
	
	@media screen and (max-width: 768px) {
		.badge { position: fixed; top: auto; bottom: -2rem; opacity: 0.88; }
		.badge > * { opacity: 1; font-style: italic; }
	}
			
			
		@media screen and (max-width: 768px) {
			
			body { font-size: 1.8rem; }
			main, footer, header { margin: 0 auto; width: 100vw; padding: 0; }
			header, article, aside { padding: 4vw; }
			main article { flex-direction: column !important; }
			.home main img { margin-top: 0.8rem; }
			.home main img + div { margin-top: 0.4em; }
			article, aside { margin: 6vw 0; }
			article img { width: 100%; height: auto; }
			.home main img { width: 100%; height: 69vw;   object-position: bottom center; } /* padding: 4vw */
			article div { margin: 0; }
			
			.floater, .above { background-image: none !important; padding-left: 4vw; }
			.above { height: 6vw; }
			.floater h1 { margin-bottom: 2vw; }
			.floater .logo { margin-right: 1.33vw; margin-top: 0.66em; }
			header {
				background-image: url('/assets/img/do_16x9.png'); background-attachment: scroll; background-position: right bottom; }
			header { font-size: 1.8rem; height: 80vw; background-color: transparent; }
			header p a { color: rgb(228,25,49); border-bottom: 1px solid rgba(228,25,49, 0.2);  }
			header p { width: 66%; padding: 4vw 3vw 0 3vw; }
			h1 { font-size: 3.2rem; }
			h1 small, .above h3 { font-size: 1.6rem; }
			
			.textbeitrag iframe { width: 92vw; height: 50.75vw; border: none; }
			
			footer h3 { margin-top: 0.66em; font-size: 1.2em; font-weight: 800; }
			footer article { display: flex; flex-wrap: wrap; }
			footer article div { flex-basis: 50%; }
		}