
/* ----------------------------------------------------------------
	Basic
-----------------------------------------------------------------*/

* {
	margin: 0;
	padding:0;
	border: 0;
}

:root {font-size:16px}

@-webkit-viewport{width:device-width}
@-moz-viewport{width:device-width}
@-ms-viewport{width:device-width}
@-o-viewport{width:device-width}
@viewport{width:device-width}


html, body 
{
	background-color:#F7F9FA;
	margin:0px auto;
	text-align: center;
	color:#515151;
}

html 
{
	height: 100%;
	padding-bottom:1px;
	scroll-behavior: smooth;
}


body 
{
	height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	font-family: 'Fira Sans', sans-serif;
	font-size:1.1rem;
	font-weight: 400;
	line-height:1.5;
	color: #515151;
}

body.modal-open 
{
	overflow-y: auto;
	padding-right: 0 !important;
}

.modal-content * , .card * 
{
	min-height: .01px;
}


/* ----------------------------------------------------------------
	Bootsatrap XXL Viewport
-----------------------------------------------------------------*/

@media (min-width: 1600px) {

	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1520px;
	}

}


/* ----------------------------------------------------------------
	accessibility
-----------------------------------------------------------------*/

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}



/* ----------------------------------------------------------------
	Main layout
-----------------------------------------------------------------*/

#wrapper
{
	margin-top: 190px;
}

@media (max-width: 767.98px) {

	#wrapper
	{
		margin-top: 140px;
	}

}

#main
{
	padding-bottom:3.0rem;
}

body.layout-Start #main
{
	padding-bottom:0;
}


@media (max-width: 1199.98px) {

	#main
	{
		margin-top:190px;
	}

}

@media (max-width: 767.98px) {

	#main
	{
		margin-top:140px;
		padding-bottom: 1.0rem;
	}

}



@media (min-width: 992px) {

	#col-content
	{
		padding-left:0;
	}

	#col-right
	{
		padding-right:0;
	}

}

.row
{
	position: relative;
}

.row.row-eq-height > .mr-auto.justify-content-start > .frame.frame-default
{
	height:100%;
}



/* ----------------------------------------------------------------
	Header
-----------------------------------------------------------------*/

#header 
{
	position: relative;
	width: 100%;
	height: 190px;
	background-color: #FFFFFF;
	border-bottom: 0px solid #F5F5F5;
	-webkit-transition:all 0.4s ease-out;
	-moz-transition:all 0.4s ease-out;
	-o-transition:all 0.4s ease-out;
	transition:all 0.4s ease-out;
}
#header.isfixed 
{
	position: fixed;
	top: 0px;
	right: 0;
	left: 0;
	z-index: 1030;
	width: 100%;
	background-color: #FFFFFF;
	border-bottom: 0px solid #F5F5F5;
}
#header.isfixed.scrolled
{
	height: 140px;
	border-bottom: 0px solid #EBF1F4;
}

#header > .container
{
	position: relative;
	background-color: #FFFFFF;
	height: auto;
	-webkit-transition:all 0.4s ease-out;
	-moz-transition:all 0.4s ease-out;
	-o-transition:all 0.4s ease-out;
	transition:all 0.4s ease-out;
}

@media (max-width: 1199.98px) {

	#header, 
	#header.isfixed
	{
		height: 190px;
	}

	#header.isfixed.scrolled
	{
		height: 140px;
	}


}

@media (max-width: 767.98px) {

	#header.isfixed,
	#header.isfixed.scrolled
	{
		height: 140px;
	}

}


@media (max-width: 575.98px) {

	#header > .container
	{
		padding-left: 0px;
		padding-right:0px;
	}

}



/* ----------------------------------------------------------------
	Topheader
-----------------------------------------------------------------*/

#topheader
{
	border-top: 15px solid #00519E;
	background-color:#FFFFFF;
	height:auto;
  min-height:52px;
	padding-top:12px;
	padding-bottom:0px;
	color:#040404;
	-webkit-transition:margin-top 0.4s ease;
	-moz-transition:margin-top 0.4s ease;
	-o-transition:margin-top 0.4s ease;
	transition: margin-top 0.4s ease;
}

#topheader.hideonscroll.scrolled 
{
	margin-top: -52px;
}

#topheader > .container > div
{
	display:inline-block;
	float:left;
}

#topheader > .container > div.justify-content-center
{
	float:none;
}

#topheader > .container > div.justify-content-end
{
	float:right;
}


#topheader > .container > div > a
{
	margin-left:0px;
	margin-right:15px;
	display:inline-block;
	text-decoration:none;
	line-height: 1em;
}

#topheader > .container > div.justify-content-center > a
{
	margin-left:15px;
	margin-right:15px;
}

#topheader > .container > div.justify-content-end > a
{
	margin-left:15px;
	margin-right:0px;
}




/* ----------------------------------------------------------------
	Logo
-----------------------------------------------------------------*/

#logo
{
	position:absolute;
	top:-52px;
	left: 0px;
	z-index: 1600;
	padding: 0px;
	margin-right: 0;
	background-color: #FFFFFF;
	border-radius: 50%;
	text-decoration:none;
	-webkit-transition:all 0.4s ease-out;
	-moz-transition:all 0.4s ease-out;
	-o-transition:all 0.4s ease-out;
	transition:all 0.4s ease-out;
}

#header.isfixed.scrolled #logo
{
	top:0px;
}

#logo > img
{
	background-color:transparent;
	position: relative;
	opacity: 1;
	padding-top:0px;
	padding-bottom:0px;
	height: auto;
	border-radius: 50%;
	border: 0px;

	-webkit-mask-image: linear-gradient(45deg,#000 25%,rgba(0,0,0,.2) 50%,#000 75%);
	mask-image: linear-gradient(45deg,#000 25%,rgba(0,0,0,.2) 50%,#000 75%);
	-webkit-mask-size: 800%;
	mask-size: 800%;
	-webkit-mask-position: 0;
	mask-position: 0;

	-webkit-transition:all 0.4s ease-out;
	-moz-transition:all 0.4s ease-out;
	-o-transition:all 0.4s ease-out;
	transition:all 0.4s ease-out;
}

#logo > img:hover 
{
	-webkit-transition: mask-position 2s ease,-webkit-mask-position 2s ease;
	-moz-transition: mask-position 2s ease,-webkit-mask-position 2s ease;
	transition: mask-position 2s ease,-webkit-mask-position 2s ease;
	-webkit-mask-position: 120%;
	mask-position: 120%;
	opacity: 1;
}


@media (max-width: 1199.98px) {

	#header.isfixed.scrolled #logo 
	{
		top: 0px;
	}

}

@media (max-width: 991.98px) {

	#logo 
	{
		top: -52px;
	}

	#header.isfixed.scrolled #logo 
	{
		/* top: -52px; */
		top: 0px;
		margin-left: 0px;
	}

}

@media (max-width: 767.98px) {

	#header.isfixed.scrolled #logo 
	{
		top: -52px;
	}

}



@media (max-width: 479.98px) {

	#logo > img 
	{
		width: 150px;
	}

}


#logomobile
{
	display:none;
}



/* ----------------------------------------------------------------
	Footer
-----------------------------------------------------------------*/

#footer
{
	position: relative;
	display:block;
	width:100%;
	background-color: #00519E;
	color: #FFFFFF;
	font-size: 1.0rem;
	font-weight: 400;
	border-top: 0px;
}

#footer .container
{
	text-align:left;
}

#footer > .container
{
	padding-bottom: 2rem;
}


#footer a
{
	color: #FFFFFF;
	text-decoration:none;
	-webkit-transition:color 0.4s ease-out;
	-moz-transition:color 0.4s ease-out;
	-o-transition:color 0.4s ease-out;
	transition:color 0.4s ease-out;
}
#footer a:hover
{
	color: #B9D2F5;
	text-decoration:none;
}


#footer ul.menupages
{
	/* margin-top:80px; */
}

@media (max-width: 1399.98px) {

	#footer .container .mob-order-4.col-xxl-2 .frame-space-before-small, 
	#footer .container .mob-order-5.col-xxl-2 .frame-space-before-small,
	#footer .container .mob-order-6.col-xxl-2 .frame-space-before-small
	{
		padding-top: 0;
		margin-top: 0;
	}

}


@media (max-width: 1199.98px) {

	#footer .container .mob-order-2.col-xxl-2 .frame-space-before-small,
	#footer .container .mob-order-3.col-xxl-2 .frame-space-before-small
	{
		padding-top: 0;
		margin-top: 0;
	}

}

@media (max-width: 991.98px) {

	#footer .mob-order-3.col-md-6 ul.menupages,
	#footer .mob-order-4.col-md-6 ul.menupages
	{
		margin-top:0px;
	}

}

@media (max-width: 767.98px) {

	#footer .mob-order-2.col-md-6 ul.menupages
	{
		margin-top:10px;
	}

}

#footer a#logo-footer
{
	display:inline-block;
	text-decoration:none;
	margin-bottom:30px;
}

#footer #footer-logo-address, 
#footer #footer-logo-address .footer-logo,
#footer .address p.footer-phone, 
#footer .address p.footer-mail
{
	display:none;
}

#footer div.container h4,
#footer div.container h4.text-black
{
	color:#FFFFFF !important;
	margin-bottom: 2rem;
}

#footer div.container .frame-type-container_4_columns .row > .mob-order-2.col-md-6 > .frame-space-before-small h4
{
	margin-bottom: 0.25rem;
}

#footer a.link-telephone
{
	font-size: 1.3rem;
	font-weight: 700;
	text-decoration:none;
}

@media (max-width: 767.98px) {

	#footer div.container h4,
	#footer div.container h4.text-black
	{
		color:#FFFFFF !important;
		margin-bottom: 0.75rem;
	}

}

#footer div.container .frame-type-container_4_columns .row > .mob-order-2.col-md-6 .frame-type-image figure.image a picture img.image-embed-item.img-fluid
{
	width:32px  !important;
	height:32px !important;
	margin-right:20px;
}



/* ----------------------------------------------------------------
	Copyrights
-----------------------------------------------------------------*/

#copyrights 
{
	min-height: 50px;
	padding: 1rem 0 1rem 0;
	background-color: #FDAA34;
	color:#040404;
	font-size: 1.0rem;
	line-height: 1.1;
}

#copyrights > .container
{
	padding-right: 30px;
}


#copyrights p
{
	margin-bottom:0;
}

#copy 
{
	text-align:left;
	margin-top:20px;
	margin-left: -7px;
}

@media (min-width: 992px) {

	#copy 
	{
		text-align:right;
		margin-top:0px;
		margin-left:auto;
	}

}

#copy span
{
	padding: 4px 6px 4px 7px;
	line-height:1.1;
	display: inline-block;
	vertical-align: top;
}

#copy a.copylink
{
	display: inline-block;
	text-decoration:none;
	font-size: 1.0rem;
	color:#040404;
	padding:4px 6px 4px 7px;
	line-height:1.1;
	border:0px;
}


#copy a.copylink:active, #copy a.copylink:focus, #copy a.copylink:hover, #copy a.copylink.show
{
	outline: 0px solid #040404;
}



/* ----------------------------------------------------------------
	Go To Top
-----------------------------------------------------------------*/

#footer a#totop
{
	display: block;
	z-index: 599;
	position: fixed;
	width: 40px;
	height: 40px;
	background-color: #00519E;
	font-size: 1.25rem;
	line-height: 40px;
	text-align: center;
	color: #FFFFFF;
	top: auto;
	left: auto;
	right: 10px;
	bottom: 10px;
	cursor: pointer;
	border-radius: 0px;
	border: 1px solid #00519E;
	opacity: 0.0;
	-webkit-transition:opacity 0.4s ease-out, background-color 0.4s ease-out, border-color 0.4s ease-out;
	-moz-transition:opacity 0.4s ease-out, background-color 0.4s ease-out, border-color 0.4s ease-out;
	-o-transition:opacity 0.4s ease-out, background-color 0.4s ease-out, border-color 0.4s ease-out;
	transition:opacity 0.4s ease-out, background-color 0.4s ease-out, border-color 0.4s ease-out;
}


#footer a#totop:hover,
#footer a#totop:focus 
{
	background-color: #FDAA34;
	border: 1px solid #FFFFFF;
	text-decoration:none;
}



/* ----------------------------------------------------------------
	icon fonts
-----------------------------------------------------------------*/

@font-face {
	font-family: 'fontello';
	src: url('../Fonts/fontello.eot?67470629');
	src: url('../Fonts/fontello.eot?67470629#iefix') format('embedded-opentype'),
			 url('../Fonts/fontello.woff2?67470629') format('woff2'),
			 url('../Fonts/fontello.woff?67470629') format('woff'),
			 url('../Fonts/fontello.ttf?67470629') format('truetype'),
			 url('../Fonts/fontello.svg?67470629#fontello') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: never;
	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: .2em;
	text-align: center;
	/* opacity: 0.8; */
	font-variant: normal;
	text-transform: none;
	line-height: 1em;
	margin-left: .2em;
	font-size: 110%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-search:before { content: '\e800'; }
.icon-user:before { content: '\e801'; }
.icon-down-open-big:before { content: '\e802'; }
.icon-left-open-big:before { content: '\e803'; }
.icon-right-open-big:before { content: '\e804'; }
.icon-up-open-big:before { content: '\e805'; }
.icon-check:before { content: '\e806'; }
.icon-phone-1:before { content: '\e807'; }
.icon-mail:before { content: '\e808'; }
.icon-menu:before { content: '\e809'; }
.icon-quote:before { content: '\e80a'; }
.icon-rss:before { content: '\e80b'; }
.icon-location:before { content: '\e80c'; }
.icon-home:before { content: '\e80d'; }
.icon-phone:before { content: '\e80e'; }
.icon-download:before { content: '\e80f'; }
.icon-link-ext:before { content: '\f08e'; }
.icon-twitter:before { content: '\f099'; }
.icon-facebook:before { content: '\f09a'; }
.icon-gplus:before { content: '\f0d5'; }
.icon-linkedin:before { content: '\f0e1'; }
.icon-mobile:before { content: '\f10b'; }
.icon-youtube:before { content: '\f167'; }
.icon-xing:before { content: '\f168'; }
.icon-instagram:before { content: '\f16d'; }
.icon-pinterest:before { content: '\f231'; }
.icon-whatsapp:before { content: '\f232'; }



/* ----------------------------------------------------------------
	selection
-----------------------------------------------------------------*/

::selection 
{
	background: #00519E;
	color: #FFFFFF;
	text-shadow: none;
}

::-moz-selection 
{
	background: #00519E;
	color: #FFFFFF;
	text-shadow: none;
}

::-webkit-selection 
{
	background: #00519E;
	color: #FFFFFF;
	text-shadow: none;
}

a:active, a:focus, a:hover, a.show,
input:active, input:focus, input:hover,input.show,
button:active, button:focus, button:hover, button.show 
{
	/*
	outline: 1px solid #000000;
	*/
}



/* ----------------------------------------------------------------
	Section and Colors
-----------------------------------------------------------------*/

section 
{
	position:relative;
	text-align:left;
	padding-top:0px;
	padding-bottom:0px;
}


section.section-space-before-extra-small,
div.section-space-before-extra-small,
div.row-space-before-extra-small, 
div.frame-space-before-extra-small
{
	padding-top: 1rem;
}
section.section-space-before-small, 
div.section-space-before-small, 
div.row-space-before-small, 
div.frame-space-before-small
{
	padding-top: 2rem;
}
section.section-space-before-medium,
div.section-space-before-medium,
div.row-space-before-medium, 
div.frame-space-before-medium
{
	padding-top: 3rem;
}
section.section-space-before-large, 
div.section-space-before-large, 
div.row-space-before-large, 
div.frame-space-before-large
{
	padding-top: 4.5rem;
}
section.section-space-before-extra-large,
div.section-space-before-extra-large,
div.row-space-before-extra-large, 
div.frame-space-before-extra-large
{
	padding-top: 6rem;
}

section.section-space-after-extra-small, 
div.section-space-after-extra-small, 
div.row-space-after-extra-small, 
div.frame-space-after-extra-small
{
	padding-bottom: 1rem;
}
section.section-space-after-small, 
div.section-space-after-small, 
div.row-space-after-small,
div.frame-space-after-small
{
	padding-bottom: 2rem;
}
section.section-space-after-medium,
div.section-space-after-medium,
div.row-space-after-medium, 
div.frame-space-after-medium
{
	padding-bottom: 3rem;
}
section.section-space-after-large, 
div.section-space-after-large, 
div.row-space-after-large, 
div.frame-space-after-large
{
	padding-bottom: 4.5rem;
}
section.section-space-after-extra-large, 
div.section-space-after-extra-large, 
div.row-space-after-extra-large, 
div.frame-space-after-extra-large
{
	padding-bottom: 6rem;
}

section.fullheight, 
div.carousel.fullheight, 
div.carousel-item.fullheight  
{
	height: 100vh !important;
}

div.bg-white, 
div.card.bg-white, 
div.imagetext.bg-white, 
section.bg-white 
{
	background-color:#FFFFFF;
	color:#515151;
}

div.bg-white a, 
div.imagetext.bg-white a, 
section.bg-white a
{
	color:#515151;
	text-decoration:none;
}

div.bg-grey, 
div.card.bg-grey, 
div.imagetext.bg-grey, 
section.bg-grey 
{
	background-color:#F4F4F4;
	color:#515151;
}

div.bg-grey a, 
div.imagetext.bg-grey a, 
section.bg-grey a
{
	color:#515151;
	text-decoration:none;
}

div.bg-darkgrey, 
div.card.bg-darkgrey, 
div.imagetext.bg-darkgrey, 
section.bg-darkgrey 
{
	background-color:#353535;
	color:#FFFFFF;
}

div.bg-darkgrey a, 
div.imagetext.bg-darkgrey a, 
section.bg-darkgrey a
{
	color:#FFFFFF;
	text-decoration:none;
}

div.bg-lightblue, 
div.card.bg-lightblue, 
div.imagetext.bg-lightblue, 
section.bg-lightblue 
{
	background-color:#F7FAFB !important;
	color:#515151;
}
div.bg-lightblue a, 
div.imagetext.bg-lightblue a, 
section.bg-lightblue a
{
	color:#515151;
	text-decoration:none;
}

div.bg-darkblue, 
div.card.bg-darkblue, 
div.imagetext.bg-darkblue, 
section.bg-darkblue 
{
	background-color:#3B8DC7 !important;
	color:#F7FAFB;
}
div.bg-darkblue a, 
div.imagetext.bg-darkblue a, 
section.bg-darkblue a
{
	color:#F7FAFB;
	text-decoration:none;
}


/* ----------------------------------------------------------------
	Animations
-----------------------------------------------------------------*/

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}


@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@keyframes heartBeat {
  0% {
    transform: scale(1);
  }

  14% {
    transform: scale(1.05);
  }

  28% {
    transform: scale(1);
  }

  42% {
    transform: scale(1.05);
  }

  70% {
    transform: scale(1);
  }
}

.heartBeat {
  animation-name: heartBeat;
  animation-duration: 1.3s;
  animation-timing-function: ease-in-out;
}



/* ----------------------------------------------------------------
	Bootstrap Carousel
-----------------------------------------------------------------*/

#top .carousel .carousel-inner .carousel-item .carousel-image
{
	margin:0 auto;
	text-align: center;
}

#top .carousel .carousel-inner .carousel-item .carousel-caption 
{
	position: absolute;
	right: 25%;
	bottom: 30%;
	left: 5%;
	padding-top: 0;
	padding-bottom: 0;
	color: #FFFFFF;
	text-align: center;
}

#top .carousel .carousel-inner .carousel-item .carousel-caption .frame
{
	background-color:rgba(0,0,0,0.35);
	width: auto;
	display: inline-block;
	text-align: left;
	padding: 2rem 3rem;
	-webkit-transition:all 0.4s ease;
	-moz-transition:all 0.4s ease;
	-o-transition:all 0.4s ease;
	transition:all 0.4s ease;
}

#top .carousel .carousel-inner .carousel-item .carousel-caption h1
{
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 4rem;
}
#top .carousel .carousel-inner .carousel-item .carousel-caption h1.text-white
{
	color: #FFFFFF !important;
}

#top .carousel .carousel-inner .carousel-item.active .carousel-caption .frame
{
	-webkit-animation-duration: 1.0s;
	animation-duration: 1.0s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name:fadeInLeft;
	animation-name:fadeInLeft;
}

#top .carousel .carousel-inner .carousel-item.active .carousel-caption .frame h1,
#top .carousel .carousel-inner .carousel-item.active .carousel-caption .frame p
{
	-webkit-animation-delay:1.0s;
	animation-delay:1.0s;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name:fadeInUp;
	animation-name:fadeInUp;
}

@media (max-width: 1399.98px) {

	#top .carousel .carousel-inner .carousel-item .carousel-caption 
	{
		bottom: 20%;
	}

}


@media (max-width: 991.98px) {

	#top .carousel .carousel-inner .carousel-item .carousel-caption 
	{
		right: 5%;
		bottom: 10%;
		left: 5%;
	}

	#top .carousel .carousel-inner .carousel-item .carousel-caption .frame
	{
		padding: 1rem 1.5rem;
	}

	#top .carousel .carousel-inner .carousel-item .carousel-caption h1
	{
		font-size: 2.0rem;
		line-height: 3.2rem;
	}

}

@media (max-width: 767.98px) {

	#top .carousel .carousel-inner .carousel-item .carousel-caption 
	{
		position: relative;
		right: auto;
		bottom: 20px;
		left: auto;
		margin-top:0;
		color: #00519E;
		text-align: center;
	}

	#top .carousel .carousel-inner .carousel-item .carousel-caption .frame
	{
		background-color: #FFFFFF;
		width: auto;
		display: block;
		padding: 1rem 2rem;
		border-top: 15px solid #00519E;
		max-width: 510px;
		margin: 0 auto;
		box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
	}

	#top .carousel .carousel-inner .carousel-item .carousel-caption h1.text-white, 
	#top .carousel .carousel-inner .carousel-item .carousel-caption h1 span.text-white
	{
		color: #00519E !important;
		font-size: 2.0rem;
		line-height: 3.2rem;
	}

}


@media (max-width: 575.98px) {

	#top .carousel .carousel-inner .carousel-item .carousel-caption 
	{
		bottom: 20px;
		margin-top:20px;
	}

	#top .carousel .carousel-inner .carousel-item .carousel-caption .frame
	{
		max-width: 94%;
	}


	#top .carousel .carousel-inner .carousel-item .carousel-caption h1
	{
		margin-bottom: 1.5rem;
	}

	#top .carousel .carousel-inner .carousel-item .carousel-caption h1.text-white, 
	#top .carousel .carousel-inner .carousel-item .carousel-caption h1 span.text-white
	{
		font-size: 1.6rem;
		line-height: 2.4rem;
	}

}


@media (max-width: 429.98px) {

	#top .carousel .carousel-inner .carousel-item .carousel-caption .frame
	{
		padding: 1rem 1.4rem;
	}

}

@media (max-width: 379.98px) {

	#top .carousel .carousel-inner .carousel-item .carousel-caption h1
	{
		font-size: 2.0rem;
		line-height: 2.6rem;
	}

}


/* ----------------------------------------------------------------
	Header image
-----------------------------------------------------------------*/

#top .ce-center .ce-outer,
#top .ce-center .ce-inner 
{
	position: relative;
	float: none;
	right: auto;
}

#top .ce-image .ce-gallery figure.image
{
	position:relative;
	overflow:hidden;
}

#top .ce-image.ce-center .ce-gallery figure.image
{
	display: flex !important;
	justify-content: center !important;
}

#top .ce-image .ce-gallery figure.image > figcaption
{
	display:none;
}

#top .ce-image .ce-gallery figure.image > picture > img.img-fluid
{
	width: auto;
	max-width: none;
	height: 255px;
	margin: 0 auto 0 auto;
}

@media (min-width: 480px) {

	#top .ce-image .ce-gallery figure.image > picture > img.img-fluid
	{
		width: auto;
		max-width: none;
		height: 270px;
		margin: 0 auto;
	}

}

@media (min-width: 768px) {

	#top .ce-image.ce-center .ce-gallery figure.image
	{
		display: block !important;
	}

	#top .ce-image .ce-gallery figure.image > picture > img.img-fluid
	{
		width: auto;
		max-width: none;
		height: 290px;
		margin: 0 auto;
	}

	#top .ce-image .ce-gallery figure.image figcaption
	{
		display:block;
		position: absolute;
		bottom: 5%;
		width: 40%;
		margin: 0 10% 0 50%;
		font-size: 100%;
		text-align:right;
		line-height: 1.3;
	}
	
	#top .ce-image .ce-gallery figure.image figcaption p.text-quote
	{
		font-size:1.4rem;
	}

}

@media (min-width: 992px) {

	#top .ce-image .ce-gallery figure.image > picture > img.img-fluid
	{
		width: 100%;
		max-width: 100%;
		height: auto;
		min-height: 290px;
		margin: 0 auto;
	}

	#top .ce-image .ce-gallery figure.image figcaption
	{
		position: absolute;
		bottom: 5%;
		width: 38%;
		margin: 0 14% 0 48%;
		font-size:110%;
		text-align:right;
	}

	#top .ce-image .ce-gallery figure.image figcaption p.text-quote
	{
		font-size:1.4rem;
	}

}

@media (min-width: 1200px) {

	#top .ce-image .ce-gallery figure.image figcaption
	{
		position: absolute;
		bottom: 10%;
		width: 40%;
		margin: 0 11% 0 47%;
		font-size:110%;
		text-align:right;
	}

	#top .ce-image .ce-gallery figure.image figcaption p.text-quote
	{
		font-size:1.4rem;
	}

}

@media (min-width: 1400px) {

	#top .ce-image .ce-gallery figure.image figcaption
	{
		position: absolute;
		bottom: 12%;
		width: 40%;
		margin: 0 11% 0 47%;
		font-size:110%;
		text-align:right;
	}

	#top .ce-image .ce-gallery figure.image figcaption p
	{
		font-size:1.2rem;
	}

	#top .ce-image .ce-gallery figure.image figcaption p.text-quote
	{
		font-size:1.5rem;
	}

}


@media (min-width: 1600px) {

	#top .ce-image .ce-gallery figure.image figcaption
	{
		position: absolute;
		bottom: 15%;
		width: 40%;
		margin: 0 11% 0 47%;
		font-size:110%;
		text-align:right;
	}

	#top .ce-image .ce-gallery figure.image figcaption p.text-quote
	{
		font-size:1.6rem;
	}

}


@media (min-width: 1700px) {

	#top .ce-image .ce-gallery figure.image figcaption p.text-quote
	{
		font-size:1.8rem;
	}

}




/* ----------------------------------------------------------------
	Content Elements
-----------------------------------------------------------------*/

section .card, 
section .container
{
	text-align:left;
}

.frame-type-container_card
{
	height: 100% !important;
}

/* ie fix */
figure 
{
	display: block !important;
}


.contentbox > .contentbox-content p:last-child
{
	margin-bottom:0;
}


/* ----------------------------------------------------------------
	Padding für Sektion mit weißem Hintergrund
-----------------------------------------------------------------*/

#content > .container  section.section-space-before-small.section-space-after-small.bg-white,
#content > .container  section.section-space-before-medium.section-space-after-small.bg-white,
#content > .container  section.section-space-before-medium.section-space-after-medium.bg-white
{
	padding-left: 1rem;
	padding-right: 1rem;
}



/* ----------------------------------------------------------------
	Card Element für Bild und Text übereinander
-----------------------------------------------------------------*/

.card 
{
	border-radius: 0;
}

.card.border-none 
{
	border: 0 !important;
}
.card.border-white 
{
	border: 1px solid #FFFFFF !important;
}
.card.border-grey 
{
	border: 1px solid #DFDFDF !important;
}
.card.border-darkgrey 
{
	border: 1px solid #353535 !important;
}
.card.border-primary 
{
	border: 1px solid #00519E !important;
}
.card.border-secondary 
{
	border: 1px solid #CD0D0E !important;
}


.card-shadow-sm 
{
	box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.card-shadow-md 
{
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.card-shadow-lg 
{
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.card-shadow-none 
{
	box-shadow: none !important;
}

.card-shadow-mover
{
	-webkit-transition:box-shadow 0.4s ease-out;
	-moz-transition:box-shadow 0.4s ease-out;
	-o-transition:box-shadow 0.4s ease-out;
	transition:box-shadow 0.4s ease-out;
	box-shadow: 0 0.25rem 0.45rem rgba(0, 0, 0, 0) !important;
}
.card-shadow-mover:hover
{
	box-shadow: 0 0.30rem 0.50rem rgba(0, 0, 0, 0.25) !important;
}


.card-img-top
{
	border-radius: 0;
}

.card .card-body,
.card .card-header 
{
	padding: 1.25rem;
}
.card .card-body.p-0, 
.card .card-header.p-0 
{
	padding: 0rem !important;
}
.card .card-body.p-2, 
.card .card-header.p-2 
{
	padding: 0.75rem !important;
}
.card .card-body.p-3,
.card .card-header.p-3 
{
	padding: 1.25rem !important;
}
.card .card-body.p-4, 
.card .card-header.p-4 
{
	padding: 2.0rem !important;
}
.card .card-body.p-5, 
.card .card-header.p-5 
{
	padding: 3rem !important;
}

.card .ce-above .ce-gallery,
.card .ce-image .ce-gallery
{
	margin-bottom: 0;
}

.card-footer 
{
	padding: 0rem 1.25rem;
	padding-top:0 !important;
	background-color: transparent;
	border-top: 0px;
}

.card-footer > .frame-type-text > p
{
	margin-bottom:0;
}

#leistungen .row-eq-height > *
{
	display: flex;
	margin-bottom:20px;
}

#leistungen a.cardbox-link .card figure.image
{
	padding: 1.5rem 1.25rem 0.5rem 1.25rem;
}


/* ----------------------------------------------------------------
	cookiebutton
-----------------------------------------------------------------*/

#cookiebutton 
{
	display: block;
	position: fixed;
	background-color: rgba(255,255,255,0);
	background-image: url('../Images/cookiebutton.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	width: 40px;
	height: 40px;
	bottom: 10px;
	left: 10px;
	border-radius: 20px;
	text-align: left;
	text-indent: -9999px;
	z-index: 2;
	cursor: pointer;
}



/* ----------------------------------------------------------------
	image columns
-----------------------------------------------------------------*/

.ce-gallery .ce-column,
#main .ce-gallery .ce-column 
{
	margin: 0;
	padding: 0 5px;
	box-sizing: border-box;
}

.ce-gallery.ce-columns-1,
.ce-gallery.ce-columns-1 .ce-column, 
.ce-gallery[data-ce-columns="1"] .ce-column,
#main .ce-gallery[data-ce-columns="1"] .ce-column 
{
	width: 100%;
	padding: 0 0px;
}

.ce-gallery.ce-columns-2 .ce-column,
.ce-gallery[data-ce-columns="2"] .ce-column,
#main .ce-gallery[data-ce-columns="2"] .ce-column 
{
	width: 49%;
	width: calc(50% - 10px);
}

.ce-gallery.ce-columns-3 .ce-column,
.ce-gallery[data-ce-columns="3"] .ce-column,
#main .ce-gallery[data-ce-columns="3"] .ce-column 
{
	width: 32%;
	width: calc(33.33% - 10px);
}

.ce-gallery.ce-columns-4 .ce-column,
.ce-gallery[data-ce-columns="4"] .ce-column,
#main .ce-gallery[data-ce-columns="4"] .ce-column 
{
	width: 24%;
	width: calc(25% - 10px);
}

.ce-gallery.ce-columns-5 .ce-column,
.ce-gallery[data-ce-columns="5"] .ce-column,
#main .ce-gallery[data-ce-columns="5"] .ce-column 
{
	width: 20%;
	width: calc(20% - 10px);
}

.ce-gallery.ce-columns-6 .ce-column,
.ce-gallery[data-ce-columns="6"] .ce-column,
#main .ce-gallery[data-ce-columns="6"] .ce-column 
{
	width: 16%;
	width: calc(16.66% - 10px);
}



/* ----------------------------------------------------------------
	image in top section
-----------------------------------------------------------------*/

#top .ce-intext.ce-right .ce-gallery, 
#top .ce-intext.ce-left .ce-gallery, 
#top .ce-above .ce-gallery 
{
	margin-bottom: 0px;
}

#top .ce-gallery figure 
{
	display: table;
	margin: 0;
}

#top .ce-gallery figcaption 
{
	display: block;
	position: absolute;
	bottom: 1rem;
	width: 100%;
	text-align: center;
}


/* ----------------------------------------------------------------
	special box on start page
-----------------------------------------------------------------*/

#specialbox
{
	position: relative;
	margin-top: -5rem !important;
	border-top: 15px solid #00519E;
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
	z-index: 1;
	overflow: hidden;
}

#specialbox .ce-image .ce-gallery
{
	margin-bottom:0;
}


#specialbox figure.image picture img.image-embed-item.img-fluid
{
	max-width: unset;
	height: auto;
	width: 100%;
}


@media (max-width: 991.98px) {

	#specialbox
	{
		margin-top: -1.5rem !important;
	}

}

@media (max-width: 767.98px) {

	#specialbox
	{
		margin-top: 4rem !important;
	}

}


@media (max-width: 429.98px) {

	#specialbox
	{
		margin-top: 3rem !important;
	}

	#specialbox .p-5
	{
		padding: 2rem !important;
	}

}


/* ----------------------------------------------------------------
	GLightbox
	html/body haben height:100%. GLightbox setzt beim Öffnen
	overflow:hidden; unter 769px wird das Dokument dadurch auf
	Fensterhöhe begrenzt und die Seite springt an den Anfang.
	(glightbox.css setzt height:auto nur ab 769px.)
-----------------------------------------------------------------*/

html.glightbox-open,
body.glightbox-open
{
	height: auto;
}


/* ----------------------------------------------------------------
	modal popup
-----------------------------------------------------------------*/

.modal-header 
{
	display: block !important;
	align-items: unset;
	justify-content: unset;
	padding: 1rem;
	border-bottom: 0px;
	border-top-left-radius: 0.3rem;
	border-top-right-radius: 0.3rem;
}

.modal-backdrop 
{
	z-index: 100000 !important;
}

.modal 
{
	z-index: 100001 !important;
}





/* ----------------------------------------------------------------
	Kontakt formular
-----------------------------------------------------------------*/

form#kontakt-27 label.form-label
{
	color:#515151;
	font-weight:700;
	margin-bottom: .5rem;
	margin-top: 1.5rem;
}

form#kontakt-27 > .form-element > input.form-control,
form#kontakt-27 > .form-element > select.form-control,
form#kontakt-27 > .form-element > textarea.form-control,
form#kontakt-27 > .input > input.form-control, 
form#kontakt-27 > .input > select.form-control,
form#kontakt-27 > .input > textarea.form-control,
form > div.form-group > div.input > input.form-control,
form > div.form-group > div.input > select.form-control,
form > div.form-group > div.input > textarea.form-control
{
	border-radius:0px;
	border:1px solid #CBCBCB;
	color:#515151;
	font-size:100%;
}


form#kontakt-27 > .form-element-textarea > textarea.form-control,
form#kontakt-27 > .input > textarea.form-control,
form > div.form-group > div.input > textarea.form-control
{
	height:10em;
}

form#kontakt-27 > .input.checkbox > label.form-check-label,
form > div.form-group > div.input.checkbox > div.form-check > label.add-on.form-check-label
{
	position:relative;
	width:auto !important;
	display:inline-block;
	padding-left: 0px;
	padding-right:10px;
	font-weight: 400;
}

form#kontakt-27 > .input.checkbox
{
	margin-top:30px;
}

form#kontakt-27 > .input.checkbox > label.form-check-label > input.form-check-input,
form > div.form-group > div.input.checkbox > div.form-check > label.add-on.form-check-label > input.add-on,
form > div.form-group > div.input.checkbox > div.form-check > label.add-on.form-check-label > input#kontakt-checkbox-1.add-on
{
	float:left;
	max-width:15px;
	margin-top: 7px;
	margin-left: 0px;
	margin-bottom: 20px;
	border-radius: 0;
}

form#kontakt-27 > .input.checkbox > label.form-check-label > span,
form > div.form-group > div.input.checkbox > span.help-block
{
	padding-left: 25px;
	display: block;
}

form#kontakt-27 div div#c169 > p
{
	margin-top: 25px;
	font-size:1.0rem;
}


form#kontakt-27 > div > nav > button,
form#kontakt-27 > div > nav > button:hover,
form#kontakt-27 > div > nav > button:focus,
form > div.actions > nav.form-navigation > div.btn-toolbar > div.btn-group > span.next.submit > button.btn.btn-primary
{
	display: inline-block;
	line-height: 1.5;
	background-color:#00519E;
	color:#FFFFFF;
	font-size:1.0rem;
	font-weight:400;
	padding:10px 18px;
	border-radius:0px;
	border: 0px;
	text-decoration:none;
}


form > .form-group.has-error > .input > .error,
form > .form-group.has-error > .input.checkbox > .form-check > label.form-check-label > .error
{
	color:#D02525;
	font-size:1rem;
}

form > .form-group.has-error > .input > .error.valid,
form > .form-group.has-error > .input.checkbox > .form-check > label.form-check-label > .error.valid
{
	color:#2CB72C;
	font-size:1rem;
}



body#p7 #content div.container .ce-gallery.ce-columns-2 figure.image a picture img.image-embed-item.img-fluid
{
	width:32px  !important;
	height:32px !important;
	margin-left: 20px;
	margin-right:20px;
}


/* ----------------------------------------------------------------
	hh_video_extender
-----------------------------------------------------------------*/

.video[data-type="external"] .video-embed 
{
	padding-top: 56.25%;
	overflow: hidden;
}

.video[data-type="external"] .video-embed > iframe 
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.video-embed 
{
	left: 0;
	position: relative;
	top: 0;
}
.video-embed .video-embed-item 
{
	max-width: 100%;
}
.video-embed .video-preview 
{
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.video-embed .video-defer
{
	opacity: 0;
	transition: all 500ms;
}
.video-embed.loaded .video-preview 
{
	display: none;
}
.video-embed.loaded .video-defer 
{
	opacity: 1;
}



/* ----------------------------------------------------------------
	typography and styles
-----------------------------------------------------------------*/

h1, h2, h3, h4, h5
{
	font-family: 'Fira Sans', sans-serif;
	color:#040404;
	font-size:1.75rem;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 1.0rem;
}

h1 
{
	font-size:2.0rem;
	font-weight: 700;
	margin-bottom: 2.5rem;
	/* text-transform:uppercase; */
}
h1 > a
{
	font-size:2.00rem;
	color:#040404;
	text-decoration:none;
}

h2
{
	font-size:1.75rem;
	font-weight: 700;
	margin-bottom: 1.25rem;
	/* text-transform:uppercase; */
}
h2 > a
{
	font-size:1.75rem;
	color:#040404;
	text-decoration:none;
}

body.layout-Startwide h2, 
body.layout-Startwide h2 > a
{
	font-size:2.0rem;
}


h2.modal-title, 
h3.modal-title
{
	float:left;
}

h3 
{
	font-size:1.5rem;
	font-weight: 700;
	text-transform:none;
}
h3 > a
{
	font-size:1.5rem;
	color:#040404;
	text-decoration:none;
}

h4 
{
	font-size:1.25rem;
	font-weight: 400;
	text-transform:none;
}

h5 
{
	font-size:1.0rem;
	font-weight: 400;
	text-transform:none;
}

h1.align-left, 
h2.align-left, 
h3.align-left, 
h4.align-left, 
h5.align-left,
h1.ce-headline-left, 
h2.ce-headline-left, 
h3.ce-headline-left, 
h4.ce-headline-left, 
h5.ce-headline-left
{
	text-align:left;
}

h1.align-center, 
h2.align-center, 
h3.align-center, 
h4.align-center, 
h5.align-center,
h1.ce-headline-center, 
h2.ce-headline-center, 
h3.ce-headline-center, 
h4.ce-headline-center, 
h5.ce-headline-center
{
	text-align:center;
}

h1.align-right, 
h2.align-right, 
h3.align-right, 
h4.align-right, 
h5.align-right,
h1.ce-headline-right, 
h2.ce-headline-right, 
h3.ce-headline-right, 
h4.ce-headline-right, 
h5.ce-headline-right
{
	text-align:right;
}


.carousel-title, 
.video-title
{
	font-size:1.75rem;
	font-weight: 400;
	text-transform:none;
	margin-bottom: 1rem;
}


ul 
{
	background-image:none;
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 0px 0px;
}
ul li 
{
	background-image:none;
	list-style-type:none;
	padding:0px 4px 0px 0px;
	margin: 0px 0px 0px 0px;
}


ul.contentlist 
{
	list-style-type:none;
	margin:0px 0px 1.0rem 20px;
	padding:0px 0px 5px 0px;
}

ul.contentlist li 
{
	list-style-type:none;
	padding:0px 0px 0px 10px;
	margin: 0px 0px 4px 0px;
	text-align:left;
}

ul.contentlist li::before 
{
	content: "■";
	color: #00519E;
	display: inline-block; 
	width: 1.5em;
	margin-left: -1.5em;
}

ul.contentlist > li > ul.contentlist, 
ul.contentlist > li > ul.contentlist > li > ul.contentlist
{
	margin-left: 30px;
}


ul.checklist 
{
	list-style-type:none;
	margin:0px 0px 0px 20px;
	padding:0px 0px 5px 0px;
}

ul.checklist li 
{
	list-style-type:none;
	padding:0px 0px 0px 10px;
	margin: 0px 0px 4px 0px;
	text-align:left;
}

ul.checklist li::before 
{
	content: "✔";
	color: #00519E;
	display: inline-block; 
	width: 1.5em;
	margin-left: -1.5em;
}

ul.checklist > li > ul, 
ul.checklist > li > ul > li > ul
{
	margin-left: 30px;
}



ol, ol.orderedlist 
{
	list-style-type:none;
	margin:0px 0px 0px 0px;
	padding:0px 0px 5px 25px;
	border:0px;
}

ol > li, 
ol.orderedlist > li 
{
	counter-increment: li;
}

ol li::before, 
ol.orderedlist li::before 
{
	content: counter(li);
	color: #00519E;
	display: inline-block;
	width: 1em;
	margin-left: -1.5em;
	margin-right: 0.5em;
	text-align: right;
	direction: rtl;
}

ol > li > ol, 
ol.orderedlist > li > ol.orderedlist 
{
	margin-left: 20px;
}

ol.carousel-indicators li::before 
{
	content:'';
}


ul.sitemap 
{
	list-style-type:none;
	margin:0px 0px 0px 20px;
	padding:0px 0px 5px 0px;
}

ul.sitemap li 
{
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 4px 0px;
	text-align:left;
}

ul.sitemap li::before 
{
	content: "■";
	color: #00519E;
	display: inline-block; 
	width: 1em;
	margin-left: -1em;
}

ul.sitemap > li > ul.sitemap 
{
	margin-left: 20px;
}

ul.sitemap li a
{
	padding:2px;
}


.frame-type-menu_pages > ul 
{
	list-style-type:none;
	margin:0px 0px 0px 20px;
	padding:0px 0px 5px 0px;
}

.frame-type-menu_pages > ul > li 
{
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 5px 0px;
	text-align:left;
}

.frame-type-menu_pages > ul > li::before 
{
	content: "›";
	color: #515151;
	display: inline-block; 
	width: 1em;
	margin-left: -1em;
}
#footer .frame-type-menu_pages > ul > li::before 
{
	content: "›";
	color: #FFFFFF;
}

/* footer list */
#footer ul.contentlist
{
	list-style-type:none;
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
}

#footer ul.contentlist > li 
{
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 25px 0px 22px 0px;
	text-align:left;
}

#footer ul.contentlist li::before 
{
	content: "";
	display: none; 
}

#footer ul.contentlist > li > strong > a
{
	display: inline-block;
	padding:2px;
	margin-bottom: 22px;
	color: #FFFFFF;
	font-size:1.4rem;
	font-weight:800;
}
#footer ul.contentlist > li > strong > a:hover, 
#footer ul.contentlist > li > strong > a:focus
{
	color: #FFFFFF;
	text-decoration:none;
}

#footer ul.contentlist > li > ul
{
	list-style-type:none;
	margin:0px 0px 0px 1em;
	padding:0px 0px 0px 0px;
}

#footer ul.contentlist > li > ul > li 
{
	list-style-type:none;
	padding:0px 0px 0px 0px;
	margin: 0px 0px 5px 0px;
	text-align:left;
}

#footer ul.contentlist > li > ul > li::before 
{
	content: "•";
	color: #FFFFFF;
	font-weight:800;
	display: inline-block; 
	width: 1em;
	margin-left: -1em;
}
#footer ul.contentlist > li > ul > li > a
{
	padding:2px;
	color: #FFFFFF;
	font-weight:400;
}




img.img-responsive
{
	display: block;
	max-width: 100%;
	height: auto;
}
img.img-right 
{
	float:right;
	margin-left:5px;
	margin-bottom:5px;
}
img.img-left 
{
	float:right;
	margin-left:5px;
	margin-bottom:5px;
}


hr, 
.ce-div hr 
{
	margin: 1rem 0 1rem 0;
	padding:0px;
	border-top: 1px solid #00519E;
}



span.text-blue, 
p.text-blue,
.text-blue 
{
	color:#00519E;
}

span.text-black, 
p.text-black,
.text-black 
{
	color:#040404;
}

span.text-grey, 
p.text-grey,
.text-grey  
{
	color:#515151;
}

span.text-red, 
p.text-red, 
.text-red 
{
	color:#CD0D0E;
}

span.text-white, 
p.text-white,
.text-white 
{
	color:#FFFFFF !important;
}

.text-quote,
p.text-quote, 
span.text-quote 
{
	font-size: 1.2rem;
	color:#00519E;
}

.text-leadin,
p.text-leadin, 
span.text-leadin 
{
	font-size: 1.2rem;
	font-weight:600;
	text-transform:uppercase;
	color:#00519E;
	margin-bottom:0.5rem;
}

.text-italic,
p.text-italic, 
span.text-italic 
{
	font-style: italic;
}

.text-headline,
p.text-headline, 
span.text-headline 
{
	font-size:1.75rem;
}

.text-verylarge,
p.text-verylarge, 
span.text-verylarge 
{
	font-size:1.5rem;
}

.text-large,
p.text-large, 
span.text-large 
{
	font-size:1.3rem;
}

.text-small,
p.text-small, 
span.text-small 
{
	font-size:0.875rem;
}

span.text-uppercase, 
p.text-uppercase,
.text-uppercase
{
	text-transform:uppercase;
}


p {
	margin-bottom:1.0rem;
}


p.align-left, span.align-left, td.align-left 
{
	text-align:left;
}
p.align-center, span.align-center, td.align-center 
{
	text-align:center;
}
p.align-right, span.align-right, td.align-right 
{
	text-align:right;
}



p a, p a:link, p a:visited, p a:active 
{
	color:#00519E;
	text-decoration:none;
}

p a:focus, p a:hover 
{
	color:#515151;
	text-decoration:none;
}

a, a:link, a:visited, a:active 
{
	color:#00519E;
	text-decoration:none;
}

a:focus, a:hover 
{
	color:#515151;
	text-decoration:none;
}


b, strong
{
	font-weight: 700;
}




a.link-mail, a.link-mail:link, a.link-mail:visited, a.link-mail:active, 
p a.link-mail, p a.link-mail:link, p a.link-mail:visited, p a.link-mail:active 
{
	color:#515151;
	text-decoration:none;
}
a.link-mail:focus, a.link-mail:hover, 
p a.link-mail:focus, p a.link-mail:hover 
{
	color:#040404;
	text-decoration:none;
}

a.link-blue, a.link-blue:link, a.link-blue:visited, a.link-blue:active, 
p a.link-blue, p a.link-blue:link, p a.link-blue:visited, p a.link-blue:active 
{
	color:#00519E;
	text-decoration:none;
}
a.link-blue:focus, a.link-blue:hover, 
p a.link-blue:focus, p a.link-blue:hover 
{
	color:#040404;
	text-decoration:none;
}

a.link-grey, a.link-grey:link, a.link-grey:visited, a.link-grey:active, 
p a.link-grey, p a.link-grey:link, p a.link-grey:visited, p a.link-grey:active 
{
	color:#515151;
	text-decoration:none;
}
a.link-grey:focus, a.link-grey:hover, 
p a.link-grey:focus, p a.link-grey:hover 
{
	color:#040404;
	text-decoration:none;
}

a.link-black, a.link-black:link, a.link-black:visited, a.link-black:active, 
p a.link-black, p a.link-black:link, p a.link-black:visited, p a.link-black:active 
{
	color:#040404;
	text-decoration:none;
}
a.link-black:focus, a.link-black:hover, 
p a.link-black:focus, p a.link-black:hover 
{
	color:#000000;
	text-decoration:none;
}

p a.link-red, p a.link-red:link, p a.link-red:visited, p a.link-red:active 
{
	color:#CD0D0E;
	text-decoration:none;
}
a.link-red:focus, a.link-red:hover, 
p a.link-red:focus, p a.link-red:hover 
{
	color:#CD0D0E;
	text-decoration:none;
}

p a.link-white, p a.link-white:link, p a.link-white:visited, p a.link-white:active 
{
	color:#DDDDDD;
	text-decoration:none;
}
a.link-white:focus, a.link-white:hover, 
p a.link-white:focus, p a.link-white:hover 
{
	color:#DDDDDD;
	text-decoration:none;
}



a.link-download, a.link-download:link, a.link-download:visited, a.link-download:active, 
p a.link-download, p a.link-download:link, p a.link-download:visited, p a.link-download:active 
{
	display: inline-flex;
	justify-content: left;
	align-items: center;
	background-image: url('../Icons/icon-pdf.png');
	background-repeat: no-repeat;
	line-height: 1.5;
	min-height: 66px;
	padding-left: 60px;
	font-size: 1.2rem;
	font-weight:600;
	color:#00519E;
	text-decoration:none;
}
a.link-download:focus, a.link-download:hover, 
p a.link-download:focus, p a.link-download:hover 
{
	color:#515151;
	text-decoration:none;
}

input.btn,
input.btn:hover,
input.btn:focus,
p > a.btn, 
a.btn, 
a.btn:hover,
a.btn:focus
{
	font-size: 1.0rem;
	font-weight: 400;
	padding: 6px 18px;
	line-height: 1.5;
	border-radius: 3px;
	text-decoration:none;
}

button.btn-blue,
button.btn-blue:hover,
button.btn-blue:focus,
input.btn-blue, 
input.btn-blue:hover,
input.btn-blue:focus,
p > a.btn-blue, 
a.btn-blue, 
a.btn-blue:hover,
a.btn-blue:focus, 
section a.btn-blue, 
section a.btn-blue:hover,
section a.btn-blue:focus
{
	display: inline-block;
	line-height: 1.5;
	background-color:#00519E;
	color:#FFFFFF;
	font-size:1.0rem;
	font-weight:400;
	padding:10px 18px;
	border-radius:0px;
	border: 1px solid #00519E;
	text-decoration:none;
	-webkit-transition:all 0.4s ease;
	-moz-transition:all 0.4s ease;
	-o-transition:all 0.4s ease;
	transition:all 0.4s ease;
}

.carousel-caption  p > a.btn-blue
{
	border: 1px solid #FFFFFF;
}

button.btn-blue:hover,
button.btn-blue:focus,
input.btn-blue:hover,
input.btn-blue:focus,
p > a.btn-blue:hover, 
p > a.btn-blue:focus, 
a.btn-blue:hover,
a.btn-blue:focus, 
section a.btn-blue:hover,
section a.btn-blue:focus
{
	background-color:#FFFFFF;
	color:#00519E;
	border: 1px solid #00519E;
	text-decoration:none;
}



input.btn-red, 
input.btn-red:hover,
input.btn-red:focus,
p > a.btn-red, 
a.btn-red, 
a.btn-red:hover,
a.btn-red:focus, 
section a.btn-red, 
section a.btn-red:hover,
section a.btn-red:focus
{
	display: inline-block;
	line-height: 1.5;
	background-color:#CD0D0E;
	color:#FFFFFF;
	font-size:1.0rem;
	font-weight:400;
	padding:10px 18px;
	border-radius:0px;
	border: 1px solid #CD0D0E;
	text-decoration:none;
}

button.btn-outline,
button.btn-outline:hover,
button.btn-outline:focus,
input.btn-outline,
input.btn-outline:hover,
input.btn-outline:focus,
p > a.btn-outline, 
a.btn-outline, 
a.btn-outline:hover,
a.btn-outline:focus, 
section a.btn-outline, 
section a.btn-outline:hover,
section a.btn-outline:focus
{
	display: inline-block;
	min-width:145px;
	line-height: 1.5;
	background-color:#FFFFFF;
	color:#515151;
	font-size:1.0rem;
	font-weight:400;
	padding:10px 18px;
	border-radius:0px;
	border: 1px solid #515151;
	text-align:center;
	text-decoration:none;
	-webkit-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-moz-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-o-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
}

button.btn-outline:hover,
button.btn-outline:focus,
input.btn-outline:hover,
input.btn-outline:focus,
a.btn-outline:hover,
a.btn-outline:focus, 
section a.btn-outline:hover,
section a.btn-outline:focus
{
	background-color:#515151;
	color:#FFFFFF;
	border: 1px solid #515151;
	text-decoration:none;
}

button.btn-outline-blue,
button.btn-outline-blue:hover,
button.btn-outline-blue:focus,
input.btn-outline-blue,
input.btn-outline-blue:hover,
input.btn-outline-blue:focus,
p > a.btn-outline-blue, 
a.btn-outline-blue, 
a.btn-outline-blue:hover,
a.btn-outline-blue:focus, 
section a.btn-outline-blue, 
section a.btn-outline-blue:hover,
section a.btn-outline-blue:focus
{
	display: inline-block;
	min-width:145px;
	line-height: 1.5;
	background-color:#FFFFFF;
	color:#00519E;
	font-size:1.0rem;
	font-weight:400;
	padding:10px 18px;
	border-radius:0px;
	border: 1px solid #00519E;
	text-align:center;
	text-decoration:none;
	-webkit-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-moz-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-o-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
}

button.btn-outline-blue:hover,
button.btn-outline-blue:focus,
input.btn-outline-blue:hover,
input.btn-outline-blue:focus,
a.btn-outline-blue:hover,
a.btn-outline-blue:focus, 
section a.btn-outline-blue:hover,
section a.btn-outline-blue:focus
{
	background-color:#00519E;
	color:#FFFFFF;
	border: 1px solid #00519E;
	text-decoration:none;
}


input.btn-round-red, 
p > a.btn-round-red, 
a.btn-round-red,
section a.btn-round-red
{
	display: inline-flex;
	width: 18rem;
	height: 18rem;
	align-items: center;
	justify-content: center;
	text-align: center;
	line-height: 1.3;
	/* background-color:#CD0D0E; */
	background-color:#00519E;
	color:#FFFFFF;
	font-size:3.0rem;
	font-weight:700;
	padding:1.0rem;
	border-radius:50%;
	border: 5px solid #FFFFFF;
	/* outline: 2px solid #CD0D0E; */
	outline: 4px solid #FDAA34;
	text-decoration:none;
	text-transform:uppercase;
	-webkit-transform: rotate(355deg);
	-moz-transform: rotate(355deg);
	-ms-transform: rotate(355deg);
	-o-transform: rotate(355deg);
	transform: rotate(355deg);
	animation-name: heartBeat;
	animation-duration: 2.0s;
	animation-timing-function: ease-in-out;
	animation-delay: 3s;
	animation-iteration-count: 3;
	-webkit-transition:all 0.4s ease;
	-moz-transition:all 0.4s ease;
	-o-transition:all 0.4s ease;
	transition:all 0.4s ease;
}

input.btn-round-red:hover,
input.btn-round-red:focus,
a.btn-round-red:hover,
a.btn-round-red:focus, 
section a.btn-round-red:hover,
section a.btn-round-red:focus
{
	font-size:3.2rem;
	-webkit-transform: rotate(360deg);
	-moz-transform: rotate(360deg);
	-ms-transform: rotate(360deg);
	-o-transform: rotate(360deg);
	transform: rotate(360deg);
}

#button-bewerben
{
	position:absolute;
	top:5px;
	right:30px;
	z-index:1;
}

@media (max-width: 1199.98px) {

	input.btn-round-red, 
	p > a.btn-round-red, 
	a.btn-round-red,
	section a.btn-round-red
	{
		width: 15rem;
		height: 15rem;
		line-height: 1.3;
		font-size:2.4rem;
		padding:1.0rem;
		border: 5px solid #FFFFFF;
		/* outline: 2px solid #CD0D0E; */
		outline: 4px solid #FDAA34;
	}

	input.btn-round-red:hover,
	input.btn-round-red:focus,
	a.btn-round-red:hover,
	a.btn-round-red:focus, 
	section a.btn-round-red:hover,
	section a.btn-round-red:focus
	{
		font-size:2.55rem;
	}

	#button-bewerben
	{
		top:0px;
		right:10px;
	}

}

@media (max-width: 991.98px) {

	#button-bewerben
	{
		position:relative;
		top:0px;
		right:0px;
		z-index:1;
		margin: -10px 0px auto auto;
		float: right;
	}

}

@media (max-width: 767.98px) {

	#button-bewerben
	{
		display: flex;
		z-index: 0;
		margin: 0px 0px -35px auto;
		float: none;
	}

}



.align-center > button.btn-red,
.align-center > input.btn-red,
.align-center > a.btn-red,
.align-center > button.btn-blue,
.align-center > input.btn-blue,
.align-center > a.btn-blue,
.align-center > button.btn-outline,
.align-center > input.btn-outline,
.align-center > a.btn-outline,
.align-center > button.btn-outline-blue,
.align-center > input.btn-outline-blue,
.align-center > a.btn-outline-blue, 
.align-center > button.btn-red:hover,
.align-center > input.btn-red:hover,
.align-center > a.btn-red:hover,
.align-center > button.btn-blue:hover,
.align-center > input.btn-blue:hover,
.align-center > a.btn-blue:hover,
.align-center > button.btn-outline:hover,
.align-center > input.btn-outline:hover,
.align-center > a.btn-outline:hover,
.align-center > button.btn-outline-blue:hover,
.align-center > input.btn-outline-blue:hover,
.align-center > a.btn-outline-blue:hover,
.align-center > button.btn-red:focus,
.align-center > input.btn-red:focus,
.align-center > a.btn-red:focus,
.align-center > button.btn-blue:focus,
.align-center > input.btn-blue:focus,
.align-center > a.btn-blue:focus,
.align-center > button.btn-outline:focus,
.align-center > input.btn-outline:focus,
.align-center > a.btn-outline:focus,
.align-center > button.btn-outline-blue:focus,
.align-center > input.btn-outline-blue:focus,
.align-center > a.btn-outline-blue:focus
{
	margin:0 auto;
	display:table;
}


blockquote
{
	position: relative; 
	padding:0px;
	margin-bottom: 0rem;
	border:0px;
}

blockquote > p
{
	display:inline-block;
	font-family: 'Fira Sans', sans-serif;
	color:#515151;
	font-size:1.5rem;
	font-weight:400;
	font-style:italic;
	padding:0px;
	border:0px;
}
blockquote > footer
{
	display:inline-block;
	font-family: 'Fira Sans', sans-serif;
	color:#515151;
	font-size:1.0rem;
	font-weight:400;
	font-style:italic;
	text-align:right;
	margin-top:-20px;
	margin-right:20px;
	padding:0px;
	border:0px;
}

blockquote > p:before
{
	display:inline-block;
	content:"“";
	color:#00519E;
	font-family: 'Fira Sans', sans-serif;
	font-size:1.5rem;
	font-weight:400;
	margin-right: 0.2rem;
}

blockquote > p:after
{
	display:inline-block;
	content:"”";
	color:#00519E;
	font-family: 'Fira Sans', sans-serif;
	font-size:1.5rem;
	font-weight:400;
	margin-left: 0.2rem;
}


table.contenttable, 
table.htmlarea-showtableborders, 
table.table-openingtimes 
{
	clear:both;
	text-align:left;
	color:#515151;
	border-spacing:2px;
	margin: 0px 0px 10px 0px;
	padding:0px;
	width:100%;
}

table.contenttable thead tr th, 
table.htmlarea-showtableborders thead tr th, 
table.table-openingtimes thead tr th
{
	vertical-align:top;
	background-color:#00519E;
	font-family: 'Fira Sans', sans-serif;
	color:#FFFFFF;
	font-size:26px;
	font-weight:700;
	text-align:center;
	margin: 0px 0px 0px 0px;
	padding:17px 10px 17px 12px;
	line-height:50px;
	border: 0px;
}

table.contenttable td, 
table.htmlarea-showtableborders td 
{
	vertical-align:top;
	padding:1px;
}

table.contenttable td.spre, 
table.htmlarea-showtableborders td 
{
	vertical-align:top;
	text-align:right;
	padding:1px;
}


table.table-openingtimes
{
	max-width:400px;
}

table.table-openingtimes tr
{
	border:0px;
}

table.table-openingtimes td
{
	vertical-align:top;
	padding:1px 1px 1px 1px;
	border:0px;
	width:49%;
}

table.table-openingtimes tr td:nth-child(2n) 
{
	vertical-align:top;
	text-align:right;
	padding:1px 1px 1px 1px;
	width:49%;
}

table.contenttable caption, 
table.htmlarea-showtableborders caption 
{
	background-color:#f4f4f4;
	color:#515151;
	font-weight: 700;
	text-align:left;
	margin:0px 0px 2px 0px;
	padding:3px 3px 3px 3px;
	border:0px;
}

table.contenttable tbody td, 
table.htmlarea-showtableborders tbody tr 
{
	vertical-align:top;
}


/* --------- main navigation in menu.css ---------- */



/* ----------------------------------------------------------------
	matomo analytics
-----------------------------------------------------------------*/

#matomo-opt-out
{
	margin-top:1rem;
	margin-bottom:1.5rem;
}

#matomo-opt-out input#trackVisits
{
	margin-right:1rem;
}




/* ----------------------------------------------------------------
	custom responsive settings
-----------------------------------------------------------------*/
/* 1199.98px */
/* 991.98px */

@media (max-width: 1199.98px) {

	.imagetext.g-0 > .image,
	.imagetext.g-0 > .content
	{
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
		clear:both;
	}

}

@media (max-width: 991.98px) {

	.mob-order-1
	{
		order: 1 !important;
	}
	.mob-order-2
	{
		order: 2 !important;
	}
	.mob-order-3
	{
		order: 3 !important;
	}
	.mob-order-4
	{
		order: 4 !important;
	}
	.mob-order-5
	{
		order: 5 !important;
	}
	.mob-order-6
	{
		order: 6 !important;
	}

}

@media (max-width: 767.98px) {

	#topheader > .container > div > a.tel, 
	#topheader > .container > div > a.mail 
	{
		display:inline-block;
		margin-left:20px;
		width:46px;
		height:40px;
		overflow:hidden;
		border: 1px solid #00519E;
	}

	[class^="icon-"]:before, [class*=" icon-"]:before {
		width: 1em;
		margin-right: auto;
		text-align: left;
		line-height: 40px;
		margin-left: 4px;
		font-size: 170%;
	}
	#topheader > .container > div > a.tel:before
	{
		margin-left: 5px;
	}
	#topheader > .container > div > a.mail:before 
	{
		margin-left: 4px;
	}


	.card.h-100
	{
		height: auto !important;
	}

	.row.row-eq-height > .mr-auto.justify-content-start > .frame.frame-default
	{
		height:auto;
	}

	.card
	{
		margin-bottom:30px;
	}

	#totop
	{
		bottom:30px;
	}

	#footer > .footercontent  .row > .col-md-6 
	{
		margin-bottom:30px;
	}

	#footer > .container .mob-order-2 div.frame-space-before-small, 
	#footer > .container .mob-order-3 div.frame-space-before-small,
	#footer > .container .mob-order-4 div.frame-space-before-medium
	{
		padding-top: 1rem;
		margin-top: 0;
	}

	.ce-gallery .ce-column,
	#main .ce-gallery .ce-column 
	{
		margin-bottom:20px;
		padding: 0px;
	}
	.ce-gallery .ce-column:first-child,
	#main .ce-gallery .ce-column:first-child 
	{
		margin-left: 0px;
	}

	.ce-gallery.ce-columns-2 .ce-column,
	.ce-gallery.ce-columns-3 .ce-column,
	.ce-gallery.ce-columns-4 .ce-column,
	.ce-gallery.ce-columns-5 .ce-column,
	.ce-gallery.ce-columns-6 .ce-column,
	.ce-gallery[data-ce-columns="2"] .ce-column, 
	.ce-gallery[data-ce-columns="3"] .ce-column, 
	.ce-gallery[data-ce-columns="4"] .ce-column, 
	.ce-gallery[data-ce-columns="5"] .ce-column, 
	.ce-gallery[data-ce-columns="6"] .ce-column, 
	#main .ce-gallery[data-ce-columns="2"] .ce-column, 
	#main .ce-gallery[data-ce-columns="3"] .ce-column, 
	#main .ce-gallery[data-ce-columns="4"] .ce-column, 
	#main .ce-gallery[data-ce-columns="5"] .ce-column, 
	#main .ce-gallery[data-ce-columns="6"] .ce-column 
	{
		width: 100%;
	}

	.carousel-caption, 
	.video-caption
	{
		bottom: 0px;
	}

	#start-specialbox .ce-gallery  .ce-column
	{
		margin-bottom:0px;
	}

}



@media (max-width: 575.98px) {

	#header > .container
	{
		padding-left:0px;
		padding-right:0px;
	}

	#col-content.col-lg-9 .frame-type-container_2_columns .col-xl-3.pe-5
	{
		padding-right: 0.75rem !important;
	}

}



@media (max-width: 479.98px) {

	#topheader
	{
		padding-top: 10px;
	}

}



@media (max-width: 359.98px) {

	#totop 
	{
		bottom: 12px;
	}

	body.layout-Startwide h2, 
	body.layout-Startwide h2 > a
	{
		font-size:1.8rem;
	}

	body.layout-Startwide #specialbox.specialbox h3
	{
		word-break: break-all;
	}


}




/* --- 2025-05-28 email temp disabled --- */

#topheader > .container > div > span.mail
{
	margin-left:15px;
	margin-right:0px;
	display:inline-block;
	text-decoration:none;
	line-height: 1em;
	color: #00519E;
	font-size: 1.1rem;
	font-weight: 400;
}

@media (max-width: 767.98px) {

	#topheader > .container > div > a.mail, 
	#topheader > .container > div > a.mail:before,
	#topheader > .container > div > span.mail, 
	#topheader > .container > div > span.mail.icon-mail,
	#topheader > .container > div > span.mail:before
	{
		display:none !important;
	}

}