/*
	BLAU: #00a0d3;
	ROT:  #c5186f;
	GRAU: #4f4f4f;
*/

* 
{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	line-height: 1.6;
}

body 
{
	font-size: 100%;
	color: #727272;
	font-family: 'Ubuntu', sans-serif;
	font-weight: 300;
	overflow-x: hidden;
}

::selection 
{
  background-color: #c5186f; 
  color: #fff;
}

::-moz-selection 
{
  background-color: #c5186f; 
  color: #fff;
}

.wrap
{
	position: relative;
	max-width: 1360px;
	display: block;
	margin: auto;
	padding: 0px 30px;
}

.text
{
	margin: 70px 0px;
}

.text a 
{
	color: #c5186f;
	text-decoration: none;
	border-bottom: 1px dashed #c5186f;
}

.text a:hover
{
	border-bottom: 1px solid #c5186f;
}

.text.withGrid + .text.withButton
{
	margin-top: -58px;
	text-align: center;
}

.text.withButton
{
	margin-top: -35px;
}

#header
{
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
	z-index: 100;
}

#navigation
{
	text-align: right;
}

#navigation ul li
{
	display: inline-block;
	margin-left: 15px;
	padding: 45px 0px;
}

#navigation ul li a
{
	text-decoration: none;
	color: #00a0d3;
	display: block;
	padding: 3px 10px;
}

#navigation ul li a:hover
{
	background-color: #00a0d3;
	color: #fff;
}

#navigation ul li.active a, #navigation ul li.active a:hover
{
	background-color: #c5186f;
	color: #fff;
	font-weight: 500;
}

#logo
{
	position: absolute;
	left: 30px;
	height: 100%;
	padding: 12px 0px;
}

#opener
{
	width: 100%;
	height: 68vh;
	background-size: cover;
	background-position: center;
	margin-top: 118px;
	position: relative;
	overflow: hidden;
}

.openerPattern
{
	position: absolute;
	bottom: -40%;
	right: -5%;
	height: 120%;
	transform: rotate(5deg);
}

h1, h2, h3, h4, .text p, .fancybox img, .youtube
{
	max-width: 850px;
}

.youtube
{
	width: 100%;
}

.text p
{
	display: block;
}

h1, h2, h3
{
	line-height: 1.3;
}

h1
{
	padding: 0.3em 0.5em;
}

h1, h2
{
	font-size: 2.8em;
	background-color: #00a0d3;
	color: #fff;
	display: inline;
	font-weight: 500;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	-moz-box-decoration-break: clone;
}

h2
{
	padding: 0.3em 0.5em;
}

h2 + p
{
	margin-top: 1.9em;
}

h2
{
	font-size: 1.6em;
	margin-bottom: 0.8em;
}

h2, h3
{
	line-height: 1.4em;
}

h3
{
	font-size: 1.6em;
	color: #c5186f;
	font-weight: 500;
	margin-bottom: 0.8em;
}

h4
{
	color: #c5186f;
	font-size: 1.2em;
	font-weight: 500;
	margin-bottom: 0.2em;
}

.text a.button
{
	background-color: #c5186f;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	padding: 0.8em 1em;
	border-bottom: none;
	text-align: center;
	line-height: 1.4;
}

.text a.button:hover
{
	background-color: #00a0d3;
}

.divider
{
	width: 100%;
	height: 58vh;
	background-size: cover;
	background-position: center;
}

.grid
{
	display: flex;
	flex-wrap: wrap;
	width: calc(100% + 30px);
	margin-left: -30px;
	margin-bottom: -30px;
}

.gridItem
{
	width: calc(25% - 30px);
	margin-left: 30px;
	margin-bottom: 30px;
}

.gridImage
{
	padding-bottom: 64%;
	background-size: cover;
	background-position: center;
}

.text-center
{
	text-align: center;
}

.gridText
{
	padding: 20px;
	border: 1px solid #e2e2e2;
}

.gridText strong
{
	color: #fff;
	background-color: #c5186f;
	box-decoration-break: clone;
	padding: 0.1em 0.2em;
}

#footer
{
	padding: 35px 0px;
	background-color: #00a0d3;
	color: #fff;
}

.footerImg
{
	max-width: 240px;
}

.footerList
{
	margin: 35px 0px 20px;
}

.footerList li
{
	display: inline-block;
	margin: 0 0.6em;
}

#footer a 
{
	color: #fff;
	text-decoration: none;
}

#footer a:hover
{
	border-bottom: 1px solid #fff;
}

.copy
{
	font-size: 0.8em;
}

.text a.fancybox
{
	border-bottom: 0;
}

.textFlex
{
	display: flex;
	flex-wrap: wrap;
}

.fancybox img
{
	width: 100%;
}

.textFlex .textFlexItem:nth-child(1)
{
	width: 25%;
}

.textFlex .textFlexItem:nth-child(2)
{
	width: 75%;
	padding-left: 30px;
}

.date
{
	font-size: 0.9em;
	background-color: #00a0d3;
	color: #fff;
	display: inline-block;
	padding: 0.1em 0.5em;
	margin-bottom: 1em;
}

strong
{
	font-weight: 500;
}

.dividerLine
{
	height: 1px;
	background-color: #e2e2e2;
	position: relative;
}

.withDivider
{
	padding: 5px 0px;
}

.dividerLine:after
{
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 30px;
	height: 30px;
	background-color: #fff;
	background-image: url(heart_grey.svg);
	background-size: 80%;
	background-position: center;
	background-repeat: no-repeat;
}

.textImg
{
	display: flex;
}

.textImg.imgRight
{
	flex-direction: row-reverse;
}

.textImgItem
{
	width: 50%;
}

.textBox
{
	position: relative;
	background-color: #fff;
	padding: 35px;
	margin-top: 70px;
	margin-left: -70px;
}

.imgRight .textBox
{
	margin-left: 0;
	margin-right: -70px;
}

#cookieNotice
{
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	background-color: #00a0d3;
	font-size: 0.9em;
	padding: 30px 0px;
	color: #fff;
}

#cookieNotice a, #accepted
{
	border-bottom: 1px dashed #fff;
	color: #fff;
	text-decoration: none;
}

#cookieNotice a:hover, #accepted:hover
{
	border-bottom: 1px solid #fff;
}

#cookieSpace
{
	height: 60px;
	position: absolute;
	z-index: -100;
}

#accepted
{
	cursor: pointer;
	font-weight: 500;
	font-size: 1em;
	float: right;
	margin-top: 1em;
}

.text ul
{
	margin-left: 1em;
	margin-top: 1em;
}

.text p a
{
	font-weight: 500;
}

.facebook
{
	border: 1px solid #fff;
	text-decoration: none!important;
	font-size: 0.8em;
	padding: 0.6em 0.8em 0.6em 2.4em;
	display: inline-block;
	margin-bottom: 20px;
	background-image: url(facebook.svg);
	background-size: auto 16px;
	background-repeat: no-repeat;
	background-position: left 0.6em center;
}

.facebook:hover
{
	background-color: #fff;
	color: #00a0d3!important;
	background-image: url(facebook_blue.svg);
}

img.smallImg
{
	max-width: 560px;
	width: 100%;
}

#footerLogo 
{
	position: absolute;
	right: 30px;
	bottom: -35px;
	width: 150px;
}

#kommune 
{
	position: absolute;
	left: 30px;
	bottom: 30px;
	width: 150px;
}

@media all and (max-width: 550px){
	.gridItem
	{
		width: calc(100% - 30px);
	}

	#opener
	{
		max-height: 250px;
		min-height: 230px;
	}

	.openerPattern
	{
		bottom: -35%;
		right: -8%;
		height: 100%;
	}

	.footerList li
	{
		display: block;
		margin: 0 0.6em;
	}

	.textFlex .textFlexItem:nth-child(1)
	{
		width: 100%;
		margin-bottom: 14px;
	}

	.textFlex .textFlexItem:nth-child(2)
	{
		width: 100%;
		padding-left: 0px;
	}

	.textImg
	{
		flex-wrap: wrap;
	}

	.textImg img
	{
		margin-bottom: 25px;
	}

	.textImgItem
	{
		width: 100%;
	}

	.textBox, .imgRight .textBox
	{
		padding: 0;
		margin: 0;
	}
}

@media all and (max-width: 660px){
	h1, h2
	{
		font-size: 1.6em;
	}

	h2
	{
		font-size: 1.2em;
	}

	h2 + p
	{
		margin-top: 1.5em;
	}

	h3
	{
		font-size: 1.2em;
		margin-bottom: 0.6em;
	}

	h4
	{
		font-size: 1em;
	}

	.text
	{
		margin: 50px 0px;
	}

	.footerList
	{
		margin: 20px 0px 20px;
	}

	.text.withGrid + .text.withButton
	{
		margin-top: -50px;
	}

	.text.withButton
	{
		margin-top: -25px;
	}

	.divider
	{
		max-height: 230px;
		min-height: 200px;
	}

	.footerImg
	{
		max-width: 150px!important;
	}

	#footer
	{
		padding: 30px 0px 28px;
	}

	.withDivider
	{
		padding: 3px 0px;
	}

	.dividerLine:after
	{
		width: 25px;
		height: 25px;
	}

	#cookieNotice
	{
		padding: 25px 0px;
	}

	#cookieSpace
	{
		height: 50px;
	}

	#footerLogo 
	{
		margin-bottom: 0px!important;
		width: 100px!important;
	}

	#kommune
	{
		width: 100px!important;
		margin-right: 15px!important;
		margin-bottom: -35px!important;
	}
}

@media all and (min-width: 551px) and (max-width: 800px){
	.gridItem
	{
		width: calc(50% - 30px);
	}

	#opener
	{
		max-height: 330px;
		min-height: 240px;
	}

	.textFlex .textFlexItem:nth-child(1)
	{
		width: 35%;
	}

	.textFlex .textFlexItem:nth-child(2)
	{
		width: 65%;
	}

	.textBox
	{
		position: relative;
		background-color: #fff;
		padding: 30px;
		margin-top: 40px;
		margin-left: -40px;
	}

	.imgRight .textBox
	{
		margin-left: 0;
		margin-right: -40px;
	}

	.divider
	{
		min-height: 240px;
	}
}

@media all and (max-width: 850px){
	#footerLogo 
	{
		position: relative;
		right: auto;
		margin-bottom: -7px;
		width: 120px;
	}

	#kommune 
	{
		position: relative;
		left: auto;
		width: 120px;
		margin-bottom: -30px;
		margin-right: 20px;
	}
}

@media all and (min-width: 801px) and (max-width: 1000px){
	.gridItem
	{
		width: calc(33% - 30px);
	}
}

@media all and (max-width: 1100px){
	#navigation
	{
		background-color: #fff;
		position: fixed;
		width: 100%;
		left: 0px;
		top: 80px;
		padding: 0px 30px;
		display: none;
	}

	#navigation ul
	{
		padding: 20px 0px;
	}

	#navigation ul li
	{
		display: block;
		text-align: center;
		padding: 0;
		margin-bottom: 10px;
		margin-left: 0;
	}

	#header .wrap
	{
		height: 80px;
	}

	#opener
	{
		margin-top: 80px;
	}

	#logo
	{
		padding: 8px 0px;
	}

	#opener
	{
		height: 53vh;
	}

	.divider
	{
		height: 40vh;
	}

	#navOpener
	{
		position: fixed;
		right: 30px;
		top: 30px;
		width: 30px;
		height: 22px;
		cursor: pointer;
	}

	.line
	{
		position: absolute;
		width: 100%;
		height: 3px;
		background-color: #c5186f;
		left: 50%;
		transform: translateX(-50%);
		transition: all 0.2s;
	}

	#navOpener .line:nth-child(1)
	{
		top: 0px;
	}

	#navOpener .line:nth-child(2)
	{
		top: 50%;
		transform: translate(-50%, -50%);
	}

	#navOpener .line:nth-child(3)
	{
		bottom: 0px;
	}

	#navOpener.active .line:nth-child(1)
	{
		top: 50%;
		transform: translate(-50%, -50%) rotate(45deg);
	}

	#navOpener.active .line:nth-child(2)
	{
		top: 50%;
		transform: translate(-50%, -50%);
		width: 0;
	}

	#navOpener.active .line:nth-child(3)
	{
		bottom: auto;
		top: 50%;
		transform: translate(-50%, -50%) rotate(-45deg);
	}
}

@media all and (min-width: 1101px){
	#navigation
	{
		display: block!important;
	}
}

@media all and (min-width: 1101px) and (max-width: 1280px){
	#navigation ul li
	{
		margin-left: 10px;
		padding: 30px 0px;
	}

	#opener
	{
		margin-top: 90px;
	}

	#opener
	{
		height: 58vh;
	}

	.divider
	{
		height: 48vh;
	}
}

@media all and (max-width: 1280px){
	.footerImg
	{
		max-width: 180px;
	}
}