@import url("https://use.typekit.net/jwp7hmg.css");

/* 	VARIABLEN */
:root {
	--background_color: #fdfdfd;
	--brand_color: #ff5000;
	--standard-abstand: 3.5rem;
	--left-minus: -0px;
	--p-standard: 1.6rem;
	--h2-standard: 2.0rem;
	--h3-standard: 2.0rem;
	--line-height-standard: 1.35;
}

/* NORMALISIEREN */
/* Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
}

ol,
ul {
	list-style: none;
	list-style-image: none;
	padding: 0;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

html {
	font-size: 62.8%;
	/* 1rem = 10px */
}

img {
	vertical-align: middle;
	border: none;
	border: 0;
	max-width: 100%;
}

html,
body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}

a,
a:visited,
a:hover,
a:visited:hover {
	color: var(--brand_color);
	text-decoration: none;
}

body {
	font-family: arial-nova, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: var(--p-standard);
	color: #000;
	background: var(--background_color);
}


body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.wrapper {
  flex: 1;
}





/* header */
header {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 100vw;
	height: 82px;
	padding: 10px 0 0 0;
	position: relative;
	z-index: 2;
	margin: 0 auto;
	z-index: 1000;
}


.hamburger {
	display: block;
	z-index: 10;
}

.logoBox {
	z-index: 10;
	position: relative;
	float: left;
	width: 216px;
	height: auto;
	margin: 0px 0 0 9px;
}

.headerBild {
	position: relative;
	width: 100%;
	height: auto;
	margin: -41px auto 2.5rem auto;

}

.wrapper {
	display: flex;
	flex-direction: column;
	width: 86vw;
	margin: 0px auto;
}

ul.teaserList {
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

ul.teaserList li {
	border-top: 1px solid var(--brand_color);
	padding-top: 3.5rem;
	/* width: 47%; */
	margin: 0px;
}



.hamburger{
	display: block;
	height: 32px;
	width: 32px;
	position: fixed;
	right: 7px;
	background-image: url(../elemente/hamburger.svg);
	background-position: 0px 0px;
	background-repeat: no-repeat;
}
.hamburger.is-open{
	background-image: url(../elemente/schliessen.svg);
	background-position: 0px 0px;
	background-repeat: no-repeat;

	
}






header nav {
	/* overflow: hidden;
	opacity: 0;
	max-height: 0;
	transition: max-height .4s ease; */
	z-index: 5; 
	display: none;
	position: absolute;
	left: 0;
	top: 0px;
	width: inherit;
	padding-top: 45px;
	

}

header nav.is-open {
	transition: opacity 2s ease-in;
	opacity: 1;
	
	display: block;
	position: fixed;
	max-height: 500px;
	border-bottom: 1px solid var(--brand_color);
	background: var(--background_color);
	box-shadow: var(--background_color) 0px 100px 80px 80px;
	// color right down blur spread 
	

}
header nav ul {
	margin: 32px 0 0 0;
	border-bottom: 1px solid var(--brand_color);	
}
header nav ul li {
	background: var(--background_color);
	padding: 11px 9px;
	margin: 0;
	border-top: 1px solid var(--brand_color);
}
header nav ul li:hover{
	background: var(--brand_color);
}
header nav ul li a {
	color: var(--brand_color);
	text-transform: uppercase;
	text-decoration: none;
	font-size: 1.8rem;
	letter-spacing: .04em;
	display: block
}


.social{
	height: 52px;
	background: var(--background_color);
	width: 100%;
	align-items: center;
	display: flex;
	padding: 0 9px;
}
.social a{
	width: auto;
	justify-content: right;
	display: flex;
}
.social img{
	display: block;
	height: 24px;
	width: auto;
}
.insta-text {
	display: flex;
	align-items: center;
	font-size: 1.8rem;
	letter-spacing: .04em;
	text-transform: uppercase;
		padding-left: 8px;
	/* writing-mode: vertical-rl;
	text-orientation:  sideways; */
}

/* .insta-text::after {
	content: "gram";
} */

/* -------- footer -------- */

footer{
width: 86vw;
margin: 0px auto;
height: 115px;
padding: 0;
border-top: 1px solid var(--brand_color);
position: relative;
z-index: 2;
margin: 0 auto;
display: block;
}


/* slider // header Bild */
div.slider,
ul.slider {
	list-style: none;
	position: relative;
	float: left;
	width: 100%;
	aspect-ratio: 1172 / 813; 
	margin-top: -26px;
}

.bildunterschrift {
	position: absolute;
	top: calc(100% + 5px);
	left: -25px;
	color: var(--brand_color);
}

section.catText {
	margin: var(--standard-abstand) 0;
}

section.catText article,{
	width: 100%;
}

section.aktuell,
section.texte {
	margin: calc(var(--standard-abstand) * 2) 0 var(--standard-abstand) 0;
}

section.aktuell article.mainText {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	margin-bottom: var(--standard-abstand);
	/* border-bottom: 1px solid var(--brand_color); */
}

section.aktuell article.mainText .aktuellBild{
	width: 100%;

}
section.aktuell article.mainText .aktuellBild img{
	width: auto;
	max-height: 260px

}
section.aktuell article.mainText .aktuellText {
	width: 100%;
	padding: calc(var(--standard-abstand) / 2) 0;
}
/* section.vita {
	display: flex;
	flex-direction: column;
	padding: 0px 0 0px 0;
} */



section.aktuell {
	margin: calc(var(--standard-abstand / 2)) 0 0 0;
}
section.galerie {
	margin: var(--standard-abstand) 0 0 0;
}

section.galerie h2,
section.texte h2,
article.mainText h2 {
	margin: 0 0 var(--standard-abstand) var(--left-minus);
	color: var(--brand_color);
	font-size: var(--h2-standard);
}


section.aktuell article.mainText h2 {
	position: relative;
	z-index: 10;
	margin: calc(var(--standard-abstand) /2 ) 0 calc(var(--standard-abstand) /2 ) var(--left-minus);
	color: var(--brand_color);
	font-size: var(--h2-standard);
	padding: 1px 9px 2px 0;
	background-color: var(--background_color);
}

/* --- vita --- */
.vita-row {
	display: block;
	margin-bottom: 1.5rem;
}

.vita-row p br {
  display: none;
}
.vita-ereignis p a {
  display: block;
}
.vita-jahr p {
	color: var(--brand_color);
	text-align: left;
	margin: 0;
}
/* Galerie */
.media-list {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: calc(var(--standard-abstand) / 2);
}
.media-list li{
  grid-column: span 3;
  margin: 0;
}
.media-list li.portrait {
  grid-column: span 2;
}



ul.teaserList {
display: grid;
grid-template-columns: repeat(12, 1fr);
/* grid-template-columns: repeat(42, 1fr); */
gap: calc(var(--standard-abstand) / 2);
}

ul.teaserList li {
	grid-column: span 6;
	  margin: 0;
}

ul.teaserList li.portrait {
  grid-column: span 4;
}
.start-teaser p a{
	color: var(--brand_color);
}


@media screen and (min-width: 484px) {
	.media-list {
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		gap: calc(var(--standard-abstand) / 2);
	}
}


@media screen and (min-width: 810px) {
	/* -------- footer -------- */
	
	footer{
	width: 86vw;
	height: 115px;
	padding: 3rem 0;
	border-top: 1px solid var(--brand_color);
	position: relative;
	z-index: 2;
	margin: 0 auto;
		display: flex;
	justify-content: space-between;
	}

	
	/* Galerie */
	.media-list {
		display: grid;
		grid-template-columns: repeat(36, 1fr);
		/* grid-template-columns: repeat(42, 1fr); */
		gap: calc(var(--standard-abstand) / 2);
	}
	.media-list li{
	  grid-column: span 6;
	  margin: 0;
	}
	.media-list li.portrait {
	  grid-column: span 4;
	}
	
	/* Teaser */
	
	ul.teaserList {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	/* grid-template-columns: repeat(42, 1fr); */
	gap: calc(var(--standard-abstand) / 2);
	}
	
	ul.teaserList li {
		grid-column: span 4;
		  margin: 0;
	}
	
	ul.teaserList li.portrait {
	  grid-column: span 3;
	}
	
}

/* NAVIGATION UMSCHALTEN BEI 1080 */
@media screen and (min-width: 1080px) {
	
	/* 	VARIABLEN */
	:root {

		--left-minus: -25px;

	}
	
		header{
			padding-right: 8px;
		}
		.hamburger {
			display: none;
		}
		/* NAVIGATION */
		header nav {
			display: flex;
			flex-direction: column;
			align-items: flex-end;
			justify-content: flex-start;
			position: inherit;
			left: inherit;
			top: inherit;
			padding: 0;
			border: none;
			width: 68%;
			
		
		}
		header nav ul{
			height: calc(var(--standard-abstand) / 2);
			background: none;
			margin: 0 0 calc(var(--standard-abstand) / 2) 0;
			display: flex;
			flex-direction: row;
			justify-content: space-between;
			border: none;
		}
		
		footer nav ul li ,
		header nav ul li {
			background: none;
			display: inline;
			padding: 0 0 0 calc(var(--standard-abstand) / 2);
			border: none;
		}
		header nav ul li:hover{
			background: none;
		}
		
		header nav ul li a {
			font-size: 1.4rem;
			display: inherit;
			padding: 0
		}
		header nav ul li a {
			background: var(--background_color);
		}
		
		.social{
			height: 19px;
			width: 60px;
			margin-top: 2px;
			margin-right: 3px;
			padding: 0;
			display: flex;
			justify-content: flex-end;
			background: none;
		}
		.social a{
			width: 60px;
			justify-content: right;
			display: flex;
		}
		.social img{
			display: block;
			height: 21px;
			width: auto;
		}
		.insta-text {
			display: none;
			font-size: 1rem;
			letter-spacing: .04em;
			text-transform: uppercase;
			/* writing-mode: vertical-rl;
			text-orientation:  sideways; */
			
		}
		.insta-text::after {
			content: none;
		}
		
		.social a:hover img {
			display: none;
		}
		
		.social a:hover .insta-text {
			display: block;
		}
		
		/* Aktuelles Startseite*/
			
			section.aktuell article.mainText {
			display: grid;
		grid-template-columns: repeat(24, 1fr);
			/* grid-template-columns: repeat(42, 1fr); */
			gap: calc(var(--standard-abstand) / 2);
			}
			
			section.aktuell article.mainText .aktuellBild {
				grid-column: span 6;
				  margin: 0;
			}
			
			section.aktuell article.mainText .aktuellText  {
			  grid-column: span 15;
			  padding: 0;
			}
			section.aktuell article.mainText h2 {
				position: absolute;
				margin-left: var(--left-minus);
				z-index: 10;
				color: var(--brand_color);
				font-size: var(--h2-standard);
				padding: 1px 9px 2px 0;
				background-color: var(--background_color);
			}
		
}
@media screen and (min-width: 1360px) {
	
	
	/* 	VARIABLEN */
	:root {
		--background_color: #fdfdfd;
		--brand_color: #ff5000;
		--standard-abstand: 3.5rem;
		--left-minus: -70px;
		--h2-standard: 2.0rem;
		--p-standard: 1.8rem;
		--line-height-standard: 1.35;
	}
	p{
		hyphens: none;
	}


	

	/* header */
	header {
		width: 1312px;
		height: 115px;
		padding: 16px 0 0 0;
		position: relative;
		z-index: 2;
		margin: 0 auto;
		
	}

	.logoBox {
		position: relative;
		float: left;
		width: 346px;
		height: auto;
		margin: 0
	}

	.category {
		display: none;
		position: relative;
		float: left;
		width: 408px;
		margin: 30px 0 0 50px;
		font-style: normal;
		color: var(--brand_color);
		text-transform: uppercase;
		font-size: 2.04rem;
		/* Umgewandelt von 2.04em */
	}

	
	
	.headerBild {
		position: relative;
		width: 1172px;
		height: auto;
		margin: -41px auto 2.5rem auto;
	
	}

	.wrapper {
		width: 1172px;
		margin: 0px auto;
	}
	
		/* -------- footer -------- */
	
	footer{
	width: 1312px;
}
	

	

	
	.start-teaser p.teaser-bildunterschrift a{
		color: var(--brand_color);
	}

	
	

	/* slider // header Bild */
	div.slider,
	ul.slider {
		list-style: none;
		position: relative;
		float: left;
		width: 1172px;
		height: 780px;
		margin-top: -41px;
		max-height: 813px;
	}

	.bildunterschrift {
		position: absolute;
		top: calc(100% + 0px);
		left: -70px;
		color: var(--brand_color);
		
	}
	
	section.catText {
		margin: calc(var(--standard-abstand) * 1) 0 calc(var(--standard-abstand) * 1	) 0;
	}
	
	
	section.catText article,
	section.texte article.mainText {
		width: 84%;
		margin-bottom: var(--standard-abstand);
	}
	section.text article.mainText  {
		width: 84%;
	}
	
	section.vita article{
		width: 100%;
	}
	section.aktuell,
	section.texte {
		margin: calc(var(--standard-abstand) * 3) 0 calc(var(--standard-abstand) * 2) 0;
	}
	
	
	section.aktuell article.mainText .aktuellBild img{
		width: auto;
		max-width: 85%

	}
	
	
	section.catText p{
		hyphens: none;
		font-size: 2.0rem;
		width: 96%
	}
	
	section.galerie h2,
	section.texte h2,
	article.mainText h2 {
		margin: var(--standard-abstand) 0 var(--standard-abstand) var(--left-minus);
		color: var(--brand_color);
		font-size: var(--h2-standard);
	}
	section.galerie h2{
		font-weight: 300;
		letter-spacing: 0.04rem;	
		margin-bottom: calc(var(--standard-abstand) / 2);
	}
	
	section.aktuell article.mainText h2 {
		position: absolute;
		z-index: 10;
		color: var(--brand_color);
		font-size: var(--h2-standard);
		padding: 1px 9px 2px 0;
		background-color: var(--background_color);
	}
	
	/* ////////// G R I D //////////// */
	
	/* --- vita --- */
	.vita-row {
		display: grid;
		grid-template-columns: repeat(24, 1fr);
		/* grid-template-columns: repeat(42, 1fr); */
		gap: calc(var(--standard-abstand) / 2);	
	}
	.vita-row .vita-jahr {
		grid-column: span 3;
		  margin: 0;
	}
	.vita-row .vita-ereignis  {
	  grid-column: span 18;
	  padding: 0;
	}
	.vita-row p {
		margin-bottom: 0.35rem;
		margin-top: 0;
	}
	.vita-jahr p {
		color: var(--brand_color);
	}
	.vita-ereignis p br {
	  display: inherit;
	}
	
	/* Galerie */
	.media-list {
		display: grid;
		grid-template-columns: repeat(36, 1fr);
		grid-template-columns: repeat(42, 1fr);
		gap: calc(var(--standard-abstand) / 2);
	}
	.media-list li{
	  grid-column: span 6;
	  margin: 0;
	}
	.media-list li.portrait {
	  grid-column: span 4;
	}
	
	/* Teaser */
	
	ul.teaserList {
	display: grid;
	grid-template-columns: repeat(20, 1fr);
	/* grid-template-columns: repeat(42, 1fr); */
	gap: calc(var(--standard-abstand) / 2);
	}
	
	ul.teaserList li {
		grid-column: span 5;
		  margin: 0;
	}
	
	ul.teaserList li.portrait {
	  grid-column: span 4;
	}
	
	
	/* Aktuelles Startseite*/
	
	section.aktuell article.mainText {
	display: grid;
grid-template-columns: repeat(24, 1fr);
	/* grid-template-columns: repeat(42, 1fr); */
	gap: calc(var(--standard-abstand) / 2);
	}
	
	section.aktuell article.mainText .aktuellBild {
		grid-column: span 6;
		  margin: 0;
	}
	
	section.aktuell article.mainText .aktuellText  {
	  grid-column: span 15;
	  padding: 0;
	}
	



}









/* section {
	position: relative;
	float: left;
	width: 100%;
} */



ul.slider li {
	position: absolute;
	width: 100%;
	opacity: 0;
	transition: opacity 1s;
	box-shadow: inset 0px 188px 188px -88px rgba(0, 0, 0, 0.6);
}



.bildunterschrift a {
	cursor: pointer;
	font-style: italic;
	letter-spacing: 0.03em;
}



ul.teaserList img,
.headerBild img,
.aktuellBild img {
	opacity: 0;
	animation: ImgFadeIn 1.1s ease-out forwards;
}

@keyframes ImgFadeIn {
	to {
		opacity: 1;
	}
}

/* TEASER */


.teaserList a,
.teaserList a:visited {
	border: none;
	color: #000;
	text-decoration: none;
}

.teaserList a:hover {
	color: var(--brand_color);
	transition: color .2s ease-in;
}
.media-list img,
.teaserList img {
	filter: brightness(1.2) saturate(0.3) contrast(0.8);
	transition: filter 0.5s ease;
}
.media-list img:hover,
.teaserList a:hover img {
	filter: brightness(1.0) saturate(1) contrast(1);
}


.teaser-bildunterschrift {
	/* position: absolute;
	top: calc(100% + 10px);
	left: -70px; */
	color: var(--brand_color);
	font-size: 1.5rem;
	line-height: 1.23;
	padding-top: 0;
}



/* --- sections -- */









/* section.texte article.mainText h2{
	position: absolute;
	margin: -88px 0 66px -22px;
} */



/* .dash{
	color: var(--brand_color);
} */

/* --- section Presse--- */
section.presse {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

section.presse article {
	width: 200px;
	height: 244px;
	padding: 8px 22px 0 8px;
	margin: 32px 43px 0 0;
	border-right: 1px solid var(--brand_color);
	border-bottom: 1px solid var(--brand_color);
	background-image: url(../elemente/pdf_laden.svg);
	background-position: 46px 52px;
	background-repeat: no-repeat;
	background-size: 0px;
	font-size: 0.9rem;
	/* Umgewandelt von .9em */
}

section.presse article:hover {
	background-size: 100px;
}

/* --- section filter --- */
section.filter {

	padding-bottom: 122px;
}

/* --- section kategorien text --- */


/* --- sidebar--- */
.sideText {
	width: 38.2%
}


/* TYPO */
h1,
h2,
h3 {
	font-weight: 400;
	font-style: normal;
}
h3{
	font-size: var(--h3-standard);
}

em {
	font-style: italic;
}

b,
strong {
	font-weight: 700;
}

p,
ul,
li {
	margin-bottom: 2.5rem;
	line-height: 1.35;
}

p{
	hyphens: auto
}
.text ul,
.text p{
	font-size: 1.6rem;
}

.text ul{
	list-style: inside;
}
.text ul li {
	margin-bottom: 0.05rem;
	line-height: 1.35;
}

section.catText p{
	hyphens: none;
	font-size: 1.8rem;
	width: 100%
}
section.catText p em{
	display: block;
	hyphens: none;
	font-size: calc(var(--p-standard) * 0.98);
	line-height: 1.35;
}
.vita-row .vita-ereignis p em{
	display: inline;
	font-size: var(--p-standard);
}

hr {
  width: 192px;
  margin: var(--standard-abstand) 0;
  border: 0;
  height: 1px;
  background-color: var(--brand_color);
}
section.text-standard article.mainText,
section.text article.mainText{
	margin: calc(var(--standard-abstand) * 2 ) 0 calc(var(--standard-abstand) * 2 ) 0;
	width: 100%
}
article.mainText p {
	line-height: var(--line-height-standard);
}

.teaserList h2 {
	font-size: 1.4rem;
	font-weight: 700;
	margin-top: 1rem;
	/* Umgewandelt von 1em */
}

section.vita h2 {
	margin: var(--standard-abstand) 0 0 var(--left-minus);
	color: var(--brand_color);
	font-size: 2.3rem;
	margin-bottom: var(--standard-abstand);

}
.bildunterschrift {
	font-size: 1.5rem;
}
section.presse article {
	font-size: 1.4rem;

}
footer p,
footer nav ul li a {
	font-size: 1.4rem;
	color: #000;
	text-transform: uppercase;
}


/* xxxxxxxxxxxxxx */
@keyframes slide-zoom {
	from {
		transform: scale(1);
		object-position: 50% 50%;
	}

	to {
		transform: scale(1.05);
		/* Leichte Verschiebung analog zu deinem alten Code */
		object-position: 48% 48%;
	}
}






