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

::-moz-selection {
	background: #F2AB27;
	text-shadow: none;
}

::selection {
	background: #F2AB27;
	text-shadow: none;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #eee;
	margin: 1em 0;
	padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

img {
	max-width: 100%;
	height: auto;
	width: auto;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

textarea {
	resize: vertical;
}

a {
	color: #305e92;
	text-decoration: none;
}

a:hover,
a:active {
	color: #444;
}

a:hover,
a:active,
a:focus {
	outline: 0;
}

em {
	font-style: italic;
}


b,
strong {
	font-weight: bold;
	/* Or 700 */
}

p {
	margin-top: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 700;
}
/* ==========================================================================
   helper
   ========================================================================== */

.float-left {
	float: left;
}

.float-right {
	float: right;
}

.center {
	text-align: center;
}

/*youtube*/

.embed-container {
	position: relative;
	/* ratio 16x9 */
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	width: 100%;
	height: auto;
}

.embed-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ratio 4x3 */

.embed-container.ratio4x3 {
	padding-bottom: 75%;
}

/*Processwire Image Class*/

.align_right {
	float: right;
	margin-left: 15px;
	margin-right: 0;
	margin-top: 0;
}

.align_left {
	float: left;
	margin-left: 0;
	margin-right: 15px;
	margin-top: 0;
}

.align_center {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*animate########################################################*/
.animate {}

.animate.scroll {
	position: relative;
	opacity: 0;
	-moz-transition: all 500ms linear;
	-webkit-transition: all 500ms linear;
	-o-transition: all 500ms linear;
	transition: all 500ms linear;
	-moz-transform: translate(0px, 30px);
	-webkit-transform: translate(0px, 30px);
	-o-transform: translate(0px, 30px);
	-ms-transform: translate(0px, 30px);
	transform: translate(0px, 30px);
}

.animate.in-view {
	opacity: 1;
	-moz-transform: translate(0px, 0px, );
	-webkit-transform: translate(0px, 0px);
	-o-transform: translate(0px, 0px);
	-ms-transform: translate(0px, 0px);
	transform: translate(0px, 0px);
}

/* ==========================================================================
   flex
   https://www.w3.org/TR/css-flexbox-1/
   ========================================================================== */
.flex {
	display: flex;
}
/*column-count */
.cc p {
	/*fix column text*/
	display: inline-block;
}
/*column-count p*/
.cc2 {
	column-count: 2;
}

/* ==========================================================================
   custom styles
   ========================================================================== */

html,
body {
	height: 100%;
}

html {
	box-sizing: border-box;
	overflow-y: scroll;
}

body {
	font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
	font-size: 1em;
	line-height: 1.5;
	font-weight: 300;
	padding: 0;
	background:#efefef;
	position: relative;
    height: 100%;
	color:#072A40;
	background: url(img/bg.png) no-repeat;
	background-size: cover;
}

.color1 { color: #98a19b; }
.color2 { color: #c10230; }
.color3 { color: #c10230; }

.siteheader {
	width: 100%;
	z-index: 100;
	position: fixed;
	top:0;
	-webkit-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	font-size: 2.5em;
	text-shadow: 
     -1px -1px 1px rgba(255,255,255,0.9), 
     1px 1px 1px rgba(255,255,255,0.9);
}
.siteheader-small {
	/*background: rgba(242,171,39,0.9);*/
	background: rgba(255,255,255,0.9);
	font-size: 1em;
	box-shadow: 0px 1px 3px 1px rgba(0,0,0,0.25);
}

.logo{
	-webkit-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	display: inline-block;
	max-width: 280px;
	z-index: 100;
	padding: 10px 20px;
	margin-left: 20px;
	font-size: 2em;
	font-weight: 700;
	color:#0A4B73;

}
.logo img{
width: 350px;
}

.siteheader-small .logo{
max-width: 250px;
}

.content {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 40px;
	font-size: 1.2em;
	margin-top: 160px;
}
.content .intro{

}

.content .intro .tel,.content .anrufen .tel, .content .intro .tel a,.content .anrufen .tel a{
color: #c10230;
}

.content .box{
padding: 40px 0;
}

.content .schritte,.content .anrufen{
border-bottom:  1px solid #d4d4d4;
}
.content .box ul, .content .box ol{
	margin-left: -10px;
}
.content .box li{
color:#444;
font-size: 1.2em;
margin-bottom: 10px;
}

.content .box ul li{
list-style: square;
}
.faq h3{
	padding: 10px;
	color:#c10230;
	font-size: 1.1em;
	cursor: pointer;
	border: 1px solid #d4d4d4;
}

.faq h3 i{
	float: right;
}

.faq .toggle-info{
	background: #f4f4f4;
	padding: 10px;
	margin: -20px 0 0 0;
}

.content .t1{
	font-weight: 700;
}

.shadow {
	box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.19);
}

.my-button {
	background: #f7f7f7;
	border: 1px solid #eee;
	color: #888;
	padding: 5px 10px;
	float: right;
	font-size: 0.8em;
	display: block;
	margin: 10px 10px 10px 0;
}
.my-button i{
	margin-left: 10px;
}
.totop {
	clear: both;
	float: right;
	display: inline-block;
}

.totop a {
	position: relative;
	color: #98a19b;
	display: block;
	margin-right: 	65px;
	margin-top: -60px;
}

.totop .fa-square {}

.totop .fa-angle-double-up {
	margin: 4px 0 0 9px;
}

.footer {
	clear: both;
	max-width: 1000px;
	margin: 0 auto;
	color: #eee;
	margin-top: 5px;
}

.footercontainer {
	border-top: 1px solid #eee;
	margin:  0 40px;
	width: calc(100% - 60px);
	float: left;
	padding: 10px 0 20px 0;
}

.footer-links {
	float: left;
	color: #444;
}

.footer-links a{
	color: #444;
	text-decoration: none;
}

.white-popup {
	position: relative;
	background: #FFF;
	padding: 20px;
	width: auto;
	max-width: 1000px;
	margin: 20px auto;
	border-radius: 4px;
	font-size: 0.9em;
}

.white-popup h1 {
	visibility: visible;
	color: #444;
}

.mfp-bg{
	background: #444;
	opacity: 1;
}

.images{
	width: 100%;
}

.images h2{
	
margin-top: -40px;;	
}

.twentytwenty-container{
width: calc(50% - 20px);
margin-right: 20px;
position: relative;
float: left;
margin-bottom: 20px;


}
.twentytwenty-container.c2{
	margin-right: 0;
	
}
.twentytwenty-container .left,.twentytwenty-container .right{
color:#444;	
font-size: 0.8em;
z-index: 9999;
position: absolute;
bottom: -15px;
background: rgba(255, 255, 255, 0.5);
padding: 3px;
}

.twentytwenty-container .left{
	left:0;
}

.twentytwenty-container .right{
	right: 0;
}
.twentytwenty-overlay{
	display: none;
}


.popup-gallery a{
width: calc(50% - 20px);
margin-right: 20px;
position: relative;
float: left;
margin-bottom: 20px;	
}
.popup-gallery a.c2{
	margin-right: 0;
	
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

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

/*#####################################################################*/

@media (max-width: 992px) {
	.container {
		width: 100%;
	}
}

/*#####################################################################*/

@media (max-width: 768px) {
		.swiper-container .textbox h2{
	 font-size: 2em;
	}
	
	
.twentytwenty-horizontal{
	width: 100%
}
.twentytwenty-container{
	width: 100%;
	margin-bottom: 20px;
 }
	.twentytwenty-container .left,.twentytwenty-container .right{
	display: none
   
	}
	

	
 
.popup-gallery a{
	width: 100%;
 }
}
/*#####################################################################*/

@media (max-width: 576px) {
	.container {
		width: 100%;
		padding: 0;
	}
	.row {
		flex-direction: column;
		padding: 0;
		display: inline-block;
	}
	.col {
	}
	.col25,
	.col50 {
		max-width: 100%;
	}
	.swiper-container .textbox h2{
	 font-size: 1.5em;
	}
	.siteheader .logo{
	max-width: 150px;
	}
	.swiper-button-prev,.swiper-button-next  {
    background-image:none!important;
	}

 

}

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

.hidden {
	display: none !important;
}

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	white-space: nowrap;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	-webkit-clip-path: none;
	clip-path: none;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
	white-space: inherit;
}

.invisible {
	visibility: hidden;
}

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

.clearfix:after {
	clear: both;
}

@media print {

	*,
	*:before,
	*:after {
		background: transparent !important;
		color: #000 !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]:after {
		content: " ("attr(href) ")";
	}

	abbr[title]:after {
		content: " ("attr(title) ")";
	}

	a[href^="#"]:after,
	a[href^="javascript:"]:after {
		content: "";
	}

	pre {
		white-space: pre-wrap !important;
	}

	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	thead {
		display: table-header-group;
	}

	tr,
	img {
		page-break-inside: avoid;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		page-break-after: avoid;
	}
}