/*
Farben:
	Blau (bg):	#E0F5FD
	Blau (hell):	#68ade2
	Blau (dunkel):	#005AA9

Fonts:
	Clio C Light
	Clio C Regular
	Clio C Bold
	Clio C Black

Benötigte Dinge:
	- Paderbäder Logo als SVG (EPS kann leider nicht geöffnet werden)
	- Footer Background in breiterer Version als Vektor (2560 px breit)
 */

:root {
	--bs-focus-ring-color: rgba(1, 1, 1, 1);
}

html {
	font-size: unset;
}

body {
	overflow-y: scroll;
	position: relative;
	font-family: "Clio C","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 1.125rem;
}

h1,
.h1 {
	font-size: 2.25rem;
}

h2,
.h2 {
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 600;
	font-size: 1.1875rem;
	line-height: 26px;
	letter-spacing: 0.01em;
	text-transform: uppercase;
}

h3,
.h3 {
	margin-top: 10px;
	margin-bottom: 0;
	font-weight: 600;
	font-size: 1.1875rem;
	line-height: 26px;
	letter-spacing: 0.01em;
	text-transform: none;
}

h4,
.h4 {

}

h5,
.h5 {

}

h6,
.h6 {

}

hr {
	display: block;
	margin: 0;
	margin-bottom: 10px;
	padding: 0;
	height: 30px;
	border: none;
	background: url(/fileadmin/templates/images/border.svg) no-repeat;
	/*background: url(/fileadmin/templates/images/border.svg) repeat-x;*/
	background-position: center;
}

a {
	color: #005AA9;
}

a:focus-visible {
	/*box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);!important*/
	/*outline: -webkit-focus-ring-color auto 2px;!important*/
	outline: 2px solid var(--bs-focus-ring-color)!important;
	outline-offset: 1px;
}

.no-letterspacing {
	letter-spacing: 0 !important;
}
.blueBg {
	/*background: #68ade2;*/
	background: #247ABC;
}
.lightBlueBg {
	background: #E0F5FD;
}
.spacer {
	display: block;
	width: 100%;
	background: transparent;
	height: 30px;
}
.spacer.spacer-footer {
	height: 250px;
}
.row.no-glutter {
	margin-left: 0;
	margin-right: 0;
}
.row.no-glutter > div {
	padding-left: 0;
	padding-right: 0;
}
.frame-indent {
	margin-left: 40px;
	margin-right: 0;
}
.space-top {
	padding-top: 30px;
}

/* Page */
body > header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height:  135px;
	background: rgba(255,255,255,0.95);
	box-shadow: 0 12px 18px rgba(0,0,0,0.1);

	z-index: 100;
}
body > header .logo {
	float: left;
}
body > header .logo img {
	width: auto;
	height: 118px;
	padding-top: 18px;
}

body > header .menuWrap {
	margin-left: 150px;
}
body > header .menuWrap .menuTop {
	text-align: right;
}
body > header .menuWrap .menuTop .item {
	display: inline-block;
	height: 76px;
	padding-left: 28px;

	color: #005AA9;
	font-size: 1.0625rem;
	font-weight: 900;
	line-height: 76px;
	letter-spacing: 0.02em;
	text-transform: uppercase;

}
body > header .menuWrap .menuTop span.item {
	line-height: 25px;
}
body > header .menuWrap .menuMain {}
body > header .menuWrap .menuMain ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
body > header .menuWrap .menuMain ul li {
	width: 140px;
	float: left;
	margin: 0;
	padding: 0;
	padding-top: 15px;
	font-weight: 600;
	text-transform: uppercase;
}
body > header .menuWrap .menuMain ul li:nth-of-type(5),
body > header .menuWrap .menuMain ul li:nth-of-type(6) {
	width: 210px;
}
body > header .menuWrap .menuMain ul li.active {
	padding-top: 5px;
}
body > header .menuWrap .menuMain ul li a {
	display: inline-block;
	color: #005AA9;
	font-size: 0.875rem;
	line-height: 14px;
	letter-spacing: 0.01em;
	outline: none;
	text-decoration: none;
}
body > header .menuWrap .menuMain ul li.active a {
	color: #68ade2;
	padding-bottom: 15px;
	background: url(/fileadmin/templates/images/border.svg) no-repeat;
	background-position: left bottom;
}
/*
body > header .menuWrap .menuMain ul li.active a:hover {
	background-position: right bottom;
	transition: background-position 40s cubic-bezier(0.1, 0, 1, 1);
}*/

#headimage {
	position: relative;
}
#headimage > img {
	width: 100%;
	max-width: none;
}
#headimage .titleWrap {
	position: absolute;
	bottom: 30px;
	left: 0;
	right: 0;
}
#headimage .titleWrap .title {
	color: #fff;
	font-size: 6rem;
	font-weight: 900;
	line-height: 96px;
	text-shadow: 0 0 30px rgba(0, 79, 155, 0.5);
	text-transform: uppercase;
}
#headimage .flexslider {
	margin: 0;
	overflow: hidden;
	border: none;
	border-radius: 0;
	box-shadow: none;
}
#headimage .flexslider .slides > li {
	position: relative;
	padding: 0;
	background: #fff;
}
#headimage .flexslider .flex-caption {
	position: absolute;
	top: 30%;
	left: 0;
	right: 0;
	color: #fff;
	font-size: 1.75rem;
	line-height: 42px;
	letter-spacing: none;
	font-weight: 400;
	/*text-shadow: 0 0 30px rgba(0, 79, 155, 0.5);*/
	filter: drop-shadow(0 0 30px rgba(0, 79, 155, 0.5));
}
#headimage .flexslider .flex-caption .container {
	padding-left: 110px;
	padding-right: 110px;
}
#headimage .flexslider .flex-caption .jumbo {
	font-size: 6rem;
	font-weight: 900;
	line-height: 96px;
	text-transform: uppercase;
}
#headimage .information-drops .jumbo {
	font-weight: 900;
	text-transform: uppercase;
}
#headimage .flexslider .flex-caption .link-arrow p:last-of-type:after {
	content: '';
	display: inline-block;
	height: 28px;
	width: 42px;
	background: url(/fileadmin/templates/images/arrow-right-small.svg) no-repeat;
	background-position: center right;
	background-size: contain;
	vertical-align: text-bottom;
}
#headimage .flexslider .flex-direction-nav a {
	top: 30%;
	height: 160px;
	width: 50px;
	/*width: 80px;*/
	/*margin-top: -40px;*/
	margin-top: 40px;
	opacity: 1;
	text-shadow: none;
	text-indent: 1000px;
	columns: transparent;
	font-size: 0;
}
#headimage .flexslider .flex-direction-nav a:before {
	display: block;
	position: absolute;
	content: '';
	height: 160px;
	width: 50px;
	/*width: 80px;*/
	top: 0;
	left: 0;
	background: url(/fileadmin/templates/images/arrow-left.svg) no-repeat;
	background-position: center;
	background-size: contain;
}
#headimage .flexslider .flex-direction-nav a.flex-prev {
	/*left: 20px;*/
	left: 250px;
}
#headimage .flexslider .flex-direction-nav a.flex-next {
	/*right: 20px;*/
	right: 250px;
}
#headimage .flexslider .flex-direction-nav a.flex-next:before {
	background-image: url(/fileadmin/templates/images/arrow-right.svg);
}


#content {
	min-height: calc(100vh - 100px);
	font-weight: 400;
	font-size: 1.125rem;
	line-height: 24px;
	letter-spacing: 0.01em;
	color: #005AA9;
}
#content a {
	color: #005AA9;
	/*text-decoration: underline;*/
}
#content .blueBg a {
	color: #fff;
	text-decoration: underline;
}
#content .lightBlueBg a {
	color: #005AA9;
	text-decoration: underline;
}
#content table.contenttable {
	width: 100%;
	margin-bottom: 10px;
}
#content .box.blueBg {
	padding: 30px 0 20px;
	color: #fff;
	font-weight: 400;
}
#content ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#content .frame ul {
	padding-bottom: 10px;
}
#content ul li {
	padding-left: 25px;
	background: url(/fileadmin/templates/images/arrow-right-small-blue.svg) no-repeat;
	background-position: top 4px left;
}
#content ul li.text-right {
	float: right;
}
#content .box.blueBg ul li {
	background-image: url(/fileadmin/templates/images/arrow-right-small.svg);
}
#content .frame-layout-2 ul li {
	padding-left: 15px;
	background-image: url(/fileadmin/templates/images/dash.svg);
}
#content .box.blueBg .frame-layout-2 ul li {
	background-image: url(/fileadmin/templates/images/dash-light.svg);
}

#content .frame-layout-3 table tr td {
	width: 50%;
}

#content .galleryWrap {
	overflow: hidden;
	margin-top: 20px;
}
#content .box.gallery {
	height: 120px;
	width: 1000%;
	background: #eee;
}
#content .box.gallery img {
	display: block;
	position: relative;
	float: left;
	z-index: 2;
}
#content .box.gallery img.move {
	margin-left: -190px;
	/*transform: translateX(50%);*/
	transition: margin-left 1.3s cubic-bezier(0, 0, 0.25, 1), transform 1.3s cubic-bezier(0, 0, 0.25, 1);
	z-index: 1;
}

#content .box.lightBlueBg {
	padding-bottom: 250px;
}
#content .box.lightBlueBg hr {
	background-image: url(/fileadmin/templates/images/border_dark.svg);
}


#content.overview {
	overflow: hidden;
}
#content.overview .bg-img-wrap {
	height: 100vh;
	max-height: 100vw;
	min-height: 300px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
#content.overview .bg-img-wrap .description {
	position: absolute;
	top: 50%;
	left: 50%;
	color: #fff;
	font-size: 3.25rem;
	font-weight: 900;
	line-height: 52px;
	text-transform: uppercase;
	text-shadow: 0 0 30px rgba(0, 79, 155, 0.5);
	transform: translate(-50%, -50%);
}
#content.overview .bg-img-wrap .description .additional-infos {
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 30px;
	height: 30px;
	padding-left: 20px;
	text-transform: none;
	background: url(/fileadmin/templates/images/arrow-right.svg) no-repeat;
	background-position: left center;
	background-size: 18px 36px;
}


body > footer {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding-top: 108px;
	padding-bottom: 10px;
	background: url(/fileadmin/templates/images/bg_footer.svg) no-repeat;
	background-position: top center;
	z-index: 20;
	color: #fff;
}
body > footer #menuFoot {

}
body > footer #menuFoot .col-reduced-padding {
	padding-right: 0;
}
body > footer #menuFoot a {
	display: block;
	padding-bottom: 3px;
	color: #fff;
	font-size: 0.875rem;
	line-height: 15px;
	letter-spacing: 0.01em;
	filter: drop-shadow(0 0 30px rgba(0, 79, 155, 0.5));
}
body > footer #menuFoot .level1 {
	font-weight: 600;
	text-transform: uppercase;
}
body > footer #menuFoot .level2 {
	font-weight: 400;
}
body > footer .footerlogos {
	padding-top: 30px;
}
body > footer .footerlogos img {
	padding-right: 2px;
}

/* Box Öffnungszeiten */
.frame-layout-1 {
	margin-bottom: 30px;
	padding: 30px;
	padding-top: 20px;
	border: solid 1px;
}
.frame-layout-1 h3 {
	font-size: 0.875rem;
	line-height: 26px;
	text-transform: uppercase;
}
.frame-layout-1 table {
	width: 100%;
}
.frame-layout-1 table tr {
	border-bottom: solid 1px;
}
.frame-layout-1 table td {
	padding: 3px 0;
}
.frame-layout-1 table td:first-of-type {
	width: 80px;
}

/* Home */
#p1 .spacer.spacer-footer {
	display: none;
}

#headerMap,
.map-none {
	height: 540px;
}

.information-drops {
	position: absolute;
	background-image: url("../images/paderbaeder_stoerer.svg");
		right: 50%;
		transform: translate(175%);
		background-repeat: no-repeat;
		background-position: center;
		background-size: 270px;
		width: 270px;
		text-align: center;
		height: 360px;
		font-size: 1.5625rem;
		line-height: 28px;
		color: #005AA9;
		top: -80px;
		text-shadow: none;
}

.information-drops.small-drops {
	bottom: 0;
	transform: translateY(50%);
	top: inherit;
	right: 15%;
}

#headimage .information-drops > div {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		right: 0;
}

#headimage .information-drops .jumbo {
		font-size: 2.375rem !important;
		line-height: 40px !important;
		margin-bottom: 0 !important;
}

#headimage .information-drops .jumbo:after {
	display: none !important;
}

.socialMediaLink {
		display: block;
		height: 35px;
		width: 35px;
		float: left;
		background-repeat: no-repeat;
		background-position: center;
		background-size: 100%;
		margin-right: 5px;
		margin-top: 19px;
}

.socialMediaLink.facebook {
	background-image: url('../images/facebook.svg');
}

.socialMediaLink.twitter {
	background-image: url('../images/twitter.svg');
}

/** Cookie Notice */

.cc_container{
	background: #005AA9!important;
	color: #fff!important;
		font-family: inherit!important;
	border-top:none!important;
}

.cc_container p.cc_message{
	margin-top: 0;
	font-size: initial!important;
	color: #fff!important;
	line-height: 1.5em;
}

.cc_container p.cc_message,
.cc_container a:hover,
.cc_container a:active,
.cc_container a,
.cc_container a:visited{
	font-size: initial!important;
	color: #fff!important;

}

.cc_container .cc_btn:hover, .cc_container .cc_btn:active

.cc_container a.cc_btn,
.cc_container a.cc_btn:hover,
.cc_container a.cc_btn:active,
.cc_container a.cc_btn:visited,
.cc_container .cc_btn:hover,
.cc_container .cc_btn:active
{
	background-color: #fff!important;
	color: #000!important;
}

.cc-revoke {
	display: none;
}

.cookie-consent-container,
.cookie-consent-container .label,
.cookie-consent-container .buttons .btn,
.cookie-consent-container a,
.cookie-consent-container .detail,
.cookie-consent-container .consent-modal .option-wrapper .option-detail-wrapper .option-detail {
	font-size: 0.875rem!important;
}

.cookie-consent-container .buttons .btn--primary,
.cookie-consent-container .label input:checked~.checkmark {
	background: rgb(0, 90, 169)!important;
}

.cookie-consent-container .buttons .btn--primary {
	border-color: rgb(0, 90, 169)!important;
}


/* Media queries */
@media (min-width: 1200px) {
	body > header .menuWrap .menuMain ul {
		width: 100%;
	}
}

@media (max-width: 1589px) {
	#p1 #content {
		height: 100vh;
	}
	#p1 #headimage {
		height: 100vh;
	}

	#p1 #headimage .flexslider,
	#p1 #headimage .flexslider > div,
	#p1 #headimage .flexslider > div > ul,
	#p1 #headimage .flexslider > div > ul > li {
		height: 100%;
	}

	#p1 #headimage .flexslider > div > ul > li {
		overflow: hidden;
	}

	#p1 #headimage .flexslider > div > ul > li img {
			height: 100%;
		width: auto;
		max-width: none;
	}
	#headimage .flexslider .flex-direction-nav a.flex-prev {
		left: 100px;
	}
	#headimage .flexslider .flex-direction-nav a.flex-next {
		right: 100px;
	}

}

@media (max-width: 1361px) {
}

@media (max-width: 1199px) {
	body > header {
		height: 100px;
	}
	body > header .logo img {
		height: 90px;
		padding-top: 10px;
	}
	body > header .menuWrap {
		margin-left: 110px;
	}
	body > header .menuWrap .menuTop .item {
		height: 40px;
		font-size: 0.875rem;
		line-height: 40px;
	}
	.information-drops.small-drops {
		margin-right: 15px;
	}

	body > header .menuWrap .menuMainButton {
		float: right;
		height: 100px;
		width: 60px;
		line-height: 60px;
		font-size: 0;
		color: transparent;
		background: url(/fileadmin/templates/images/menuBtn.svg) no-repeat;
		background-position: center;
		cursor: pointer;
	}
	body > header .menuWrap .menuMain {
		/*background: #68ade2;*/
		background: #E0F5FD;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		height: calc(100vh - 100px);
		overflow: auto;
		overflow-x: none;
		-webkit-overflow-scrolling: touch;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 30px;
		text-align: center;

		opacity: 0;
		visibility: hidden;
		/*transition: opacity 0.4s ease 0.6s, visibility 0.4s ease 0.6s;*/
		transition: opacity 0.4s, visibility 0.4s;
	}
	body > header .menuWrap .menuMain .abbinder {
		color: #005AA9;
		font-size: 1.25rem;
		font-weight: 900;
		line-height: 19px;
		margin-top: 20px
	}
	body > header .menuWrap .menuMain .abbinder .hotline {
		margin-bottom: 20px
	}
	body > header .menuWrap .menuMain.active {
		opacity: 1;
		visibility: visible;

		/*transition: opacity 0.4s, visibility 0.4s;*/
	}
	body > header .menuWrap .menuMain ul {
		margin: 0 auto;
		padding: 10px 15px;
	}
	body > header .menuWrap .menuMain ul li {
		float: none;
		display: block;
		width: 100% !important;
		padding: 4px 0;
	}
	body > header .menuWrap .menuMain ul li,
	body > header .menuWrap .menuMain ul li.active {
		padding: 10px
	}
	body > header .menuWrap .menuMain ul li a {
		font-size: 1rem;
		line-height: 19px;
	}
	#headimage .flexslider .flex-direction-nav a.flex-prev {
		left: 25px;
	}
	#headimage .flexslider .flex-direction-nav a.flex-next {
		right: 25px;
	}
	.information-drops {
		display: block;
		position: relative;
		transform: none !important;
		top: 0 !important;
		right: 0 !important;
		width: 100%;
		/*background-color: #fbb80d;*/
		height: 270px;
		padding-top: 65px;
		padding-bottom: 15px;
		width: 200px;
		background-size: 100%;
		float: right;
		font-size: 1.125rem;
		line-height: 18px;
	}
	.information-drops > div {
		position: relative !important;
		top: 0 !important;
		transform: none !important;
	}
	#headimage .flexslider .flex-caption .jumbo {
		font-size: 2.25rem;
		line-height: 35px;
	}
	.hiddenOnTable {
		display: none !important;
	}
}

@media (max-width: 991px) {
	#p1 #content {
		height: calc(100vh - 100px);
	}
	.information-drops.small-drops {
		margin-right: 0;
	}
	#p1 #headimage {
		height: calc(100vh - 100px);
	}
	#p1 #headimage .flexslider > div > ul > li img  {
		transform: translateX(-25%);
	}
	#headimage {
		margin-top: 100px;
	}
	#headimage .titleWrap .title {
		font-size: 5rem;
		line-height: 80px;
	}
	#headimage .flexslider .flex-caption,
	#headimage .flexslider .flex-direction-nav a {
		top: 15%;
	}
	#headimage .flexslider .flex-caption  {
		font-size: 4vw;
		line-height: 5vw;
	}
	#headimage .flexslider .flex-caption .jumbo {
		font-size: 9vw;
		line-height: 9vw;
	}
	#headimage .flexslider .flex-caption .link-arrow p:last-of-type:after {
		height: 4vw;
		width: 3vw;
	}

	#content .box.lightBlueBg {
		padding-bottom: 280px;
	}
	.spacer.spacer-footer {
		height: 280px;
	}
	body > footer {
		padding-top: 125px;
	}

	#p1 .information-drops {
		font-size: 1.125rem;
		line-height: 22px;
		padding-top: 7px;
		padding-bottom: 7px;
		background-image: none;
		background-color: #fbb80dc9;
		font-size: 1.6875rem;
		line-height: 27px;
	}
	#headimage .flexslider .flex-caption .jumbo {
		font-size: 3rem !important;
		line-height: 50px !important;
		margin-top: 35px;
	}
	#headimage .flexslider .flex-caption .information-drops .jumbo {
		font-size: 1.625rem !important;
		line-height: 30px !important;
	}
	#headimage .information-drops .jumbo {
		font-size: 1.625rem !important;
		line-height: 30px !important;
	}
	#headimage .flexslider .flex-caption {
		top: 5%;
	}
	#headimage .flexslider .flex-caption .greyBox {
		background-color: rgba(0,0,0,0.35);
		padding: 15px;
	}
	#p1 .information-drops {
		background-image: url("../images/paderbaeder_stoerer.svg");
		background-color: transparent;
		height: 360px;
			width: 270px;
			float: right;
			margin-top: 27px;
			padding-top: 110px;
	}
	.frame-layout-1 {
		margin-top: 15px;
	}
}

@media (max-width: 767px) {
	#p1 .information-drops {
			background-color: rgba(251, 184, 13, 0.75);
			background-image: none;
			padding-top: 10px;
			height: auto;
			font-size: 1.0625rem;
			line-height: 15px;
	}

	#p1 .information-drops .jumbo {
			font-size: 1.25rem;
			line-height: 20px;
			margin: 0;
	}

	#headimage .flexslider .flex-direction-nav a {
		display: none;
	}
	#headimage .flexslider .flex-caption .container {
		padding-left: 15px;
		padding-right: 15px;
	}
	#headimage .flexslider .flex-caption  {
		font-size: 5vw;
		line-height: 5.5vw;
	}
	#headimage .flexslider .flex-caption .jumbo {
		font-size: 9vw;
		line-height: 9vw;
	}
	#headimage .flexslider .flex-caption .link-arrow p:last-of-type:after {
		height: 4vw;
		width: 4.5vw;
	}
	#headimage .titleWrap .title {
		font-size: 9vw;
		line-height: 9vw;
	}

	#content .box.lightBlueBg {
		padding-bottom: 300px;
	}
	.spacer.spacer-footer {
		height: 300px;
	}
	body > footer {
		padding-top: 105px;
	}
	#content.overview {
		margin-bottom: 300px;
	}

	body#p1 > footer {
		padding-top: 85px;
	}
	body > header .menuWrap .menuMain ul li br {
		display: none;
	}
	.frame-layout-4 table tr {
		display: block;
		width: 100%;
		margin-bottom: 15px;
	}
	.frame-layout-4 table tr > td {
		display: block;
		width: 100%;
		text-align: left !important;
	}
	.frame-layout-3 tr {
		display: block;
		margin-bottom: 15px;
	}
	#content .frame-layout-3 table tr td {
		width: 100%;
		display: block;
	}
	#content .frame-layout-3 table tr td p {
		margin: 0;
	}
	#p1 #headimage .flexslider .flex-caption .jumbo {
		font-size: 1.625rem !important;
		line-height: 28px !important;
		margin-top: 5px;
	}
	.information-drops.small-drops {
		float: none;
		background-color: #fbb80d;
		width: 100%;
		padding-top: 15px;
		height: inherit;
	}
}
@media (max-width: 500px) {
	body > header .menuWrap .menuTop .item {
		padding-left: 15px;
		font-size: 0.75rem;
		line-height: 15px;
		height: 15px;
	}
}
