/*
	qualiplus.de
*/

@font-face { font-family: Montserrat; font-weight: 400; src: url(/files/_tmpl/fonts/Montserrat-Regular.ttf); }
@font-face { font-family: Montserrat; font-weight: 500; src: url(/files/_tmpl/fonts/Montserrat-Medium.ttf); }

:root {
	--nav--main-font-weight: 500;
	--submenu-background: var(--color-red);
	--nav-mobile-color-text: var(--color-text);
	--color-navigation-main--active: #000000 !important;
}

/*
body {
	font-size: 100%;
	font-size: 16px;
	font-size: 1.0rem;
}
*/

[id="header"] {
	background-image: url(/files/_tmpl/img/headerbilderbalken_oben.png);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 1440px 63px;
}
[id="header"]::before {
	height: 0;
	background: transparent;
}
[id="header"] > .inside {
	height: 206px;
	padding-top: 35px;
	padding-bottom: 25px;
	background-image: url(/files/_tmpl/img/header_bg_01.png);
	background-image: url(/files/_tmpl/img/headerbilderbalken_unten.png);
	background-repeat: no-repeat;
	background-position: bottom left;
	background-size: 1440px 76px;
}

.topkontakt {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 15px;
	padding-top: 5px;
	padding-right: var(--wrapper-padding);
	padding-left: var(--wrapper-padding);
}
.topkontakt a {
	padding: 5px 12px 0 5px;
	margin: 0;
}
.topkontakt img {
	display: inline;
	vertical-align: bottom;
	margin-right: 5px;
	width: 25px;
	height: 25px;
}

h1 + h2, 
h2 + h3 { 
	margin-top: 0; 
}


#main a {
	font-weight: var(--links-weight);
}

#main .rahmen {
/*	display: flex;  */
}
#main .rahmen-1 {
	border: 1px solid var(--color-gray-dark);
	padding: 30px 30px 15px 30px;
}
#main .rahmen .ce_text {
	border: 1px solid var(--color-gray-dark);
	padding: 30px 30px 15px 30px;
	height: 100%;
}
#main .ce_text.icons p img {
	display: inline;
	vertical-align: bottom;
}



.logo img {
	width: 196px;
	margin-left: 115px;
	display: inline-block;
}




.nav--main {
	text-transform: uppercase;
	position: absolute;
	top: 131px;
	right: 3vw;
}
.nav--main a.trail, .nav--main strong.active, .nav--main strong.trail, 
.nav--main a:hover {
	color: var(--color-brand);
}
.nav--main .level_2 strong.active {
	color: var(--color-navigation-main--active);
}
.nav--meta {
	text-transform: uppercase;
}



@media only screen and (min-width: 68.75em) {
	.nav--main a, .nav--main a.trail, .nav--main strong.active, .nav--main strong.trail {
		padding-left: 12px;
		padding-right: 12px;
		margin-left: 0;
		margin-right: 0;
	}
}

@media only screen and (min-width: 769px) and (max-width: 68.75em) {
	.nav--main {
		top: 169px;
	}
}

@media only screen and (min-width: 769px) {
	.menu-mobil { display: none !important; }
}

/*  @media only screen and (max-width: 48em) {  */
@media only screen and (max-width: 768px) {
	.topkontakt {
		right: auto;
		left: 0;
	}
	.topkontakt a {
		display: inline-block;
		box-sizing: content-box;
		width: 35px;
		height: 35px;
		overflow: hidden;
	}
	.topkontakt img {
		width: 35px;
		height: 35px;
	}
	.logo img {
		margin-left: 0;
		margin-top: 25px;
		width: 160px;
	}
	.menu-dekstop { display: none; }
	.nav--mobile--active {
		bottom: auto !important;
	}
	.nav--mobile .level_1 {
		display: flex !important;
	}
	.nav--main {
		font-size: 20px !important;
		font-size: 1.5rem !important;
		height: calc(100vh - 206px);
	}
	.nav--main .level_2 {
		font-size: 18px;
		padding-left: 10%;
	}
	.nav--main a, .nav--main a.trail, .nav--main strong.active, .nav--main strong.trail {
		padding: 10px;
	}
}






.hg-grau { background-color: var(--color-gray-light); }

.hg-image-kontakt { background-image: url(/files/QualiPlus/hintergrund_kontakt.jpg); }


.ce_text.link-button p > a, 
.ce_contact.link-button p > a {
	display: table;
/*	background-color: var(--color-gray);  */
	background-color: var(--color-gray-dark);
	color: #ffffff;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	padding: 10px 25px;
}
.ce_text.link-button p > a:hover, 
.ce_contact.link-button p > a:hover {
/*	background-color: var(--color-gray-dark) !important;  */
	background-color: var(--color-gray) !important;
}

.ce_hyperlink.center {
	text-align: center;
}
div.btn--secondary a, 
.ce_hyperlink a {
/*	background-color: var(--color-gray);  */
	background-color: var(--color-gray-dark);
	color: #ffffff;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	padding: 10px 25px;
	border-radius: 0;
	border: none;
}
div.btn--secondary a:hover, 
.ce_hyperlink a:hover {
	color: #ffffff;
/*	background-color: var(--color-gray-dark) !important;  */
	background-color: var(--color-gray) !important;
}


a.btn--secondary, span.btn--secondary, button.btn--secondary, .newsletter-subscribe .submit, .newsletter-unsubscribe .submit {
	border-radius: 0;
	color: #ffffff;
	border: none;
	background-color: var(--color-gray-dark);
}
a.btn--secondary:hover, span.btn--secondary:hover, button.btn--secondary:hover, .newsletter-subscribe .submit:hover, .newsletter-unsubscribe .submit:hover {
	color: #ffffff;
	background-color: var(--color-gray) !important;
}



[id="footer"] {
	background: var(--color-gray-dark);
}
#footer .mod_article > .inside {
	margin: 0;
	padding: 0;
	max-width: none;
}
#footer .nav--meta li.first a, 
#footer .nav--meta li.first strong.active, 
#footer .nav--meta li.first strong.trail {
	padding-left: 0;
}
#footer .nav--meta li.last a, 
#footer .nav--meta li.last strong.active, 
#footer .nav--meta li.last strong.trail {
	padding-right: 0;
}

#footer table {
	width: auto !important;
	border: none;
}
#footer td {
	width: auto !important;
	border: none;
}
#footer a {
	color: #ffffff;
}
#footer a:hover {
	opacity: 0.7;
}
.scrollToTop {
    width: 40px;
    height: 40px;
	border-radius: 20px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    display: none;
    z-index: 9999;
	background-color: var(--color-gray);
	background-image: url("/files/_tmpl/icons/top-button_02.png");
	background-repeat: no-repeat;
	background-size: 75%;
	background-position: center center;
}


.nav--main {
	font-size: 13px;
	font-size: 0.8125rem;
}


.fact__item h1 + p, .fact__item h2 + p, .fact__item h3 + p, .fact__item h4 + p, .fact__item h5 + p, .fact__item h6 + p {
	color: var(--gray-dark);
}

h1 {
	font-size: 46px;
	font-weight: 500;
}
.ce_hero .content_container {
	margin-top: 20px;
}

.ce_hero .content_container h1 {
	font-size: 2.3vw;
}


@media only screen and (max-width: 47.9375em) {
	.ce_hero .content_container h1 {
		color: var(--color-gray-light);
		font-size: 30px;
	}
}


.ce_accordion {
	background-color: #ffffff;
	border: var(--base-border);
	border-width: 2px !important;
	margin-bottom: 10px;
	padding: 0 35px;
}
.ce_accordion .toggler {
	border-top: none;
}
.ce_accordion .ui-accordion-header-icon::before {
	font-size: 1.7em;
	line-height: 1;
}


.ce_hero.claim .content_container {
	display: block;
	position: absolute;
	left: 0;
	bottom: 55px;
	padding: 0;
	margin: 0;
	text-align: right;
	color: #ffffff;
}
.ce_hero.claim .content_container .teaser {
	width: auto;
	max-width: 600px;
	height: 60px;
	padding: 0 60px 0 60px;
	display: table-cell;
	vertical-align: middle;
	background-image: url(/files/_tmpl/img/QP_Balken_claim_rot_leer.png);
	background-repeat: no-repeat;
	background-position: top right;
	background-size: auto 100%;
}
.ce_hero.claim .content_container .teaser h3 {
	font-weight: normal;
	margin: 0;
	padding-bottom: 2px;
	line-height: 1;
	font-size: 20px;
/*	font-size: 1.25rem;  */
	text-transform: uppercase;
}




.text-overlay .teaser {
	background-color: rgba(255,255,255,0.9) !important;
}


.mod_article.kein-rand {
	padding-top: 0;
	padding-bottom: 0;
}
.mod_article.kein-rand > .inside {
	padding-left: 0;
	padding-right: 0;
}



.ce_player video {
	position: relative;
	width: 100%;
	border: 1px solid var(--color-gray-light);
	cursor: pointer;
}
.ce_player .video_container {
	position: relative;
}
.ce_player video::after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	background-image: url(/files/_tmpl/img/video_play_button_qp_100.png);
	background-repeat: no-repeat;
	z-index: 9999;
	content: ' ';
	background-size: 50px 50px;
	cursor: pointer;
	width: 50px;
	height: 50px;
	transform: translate(-50%,-50%);
}


.ce_player .video_container, 
.ce_youtube .video_container {
	padding-bottom: 0;
}


/*  ==========  Formulare  ==========  */

.widget-submit button.submit {
	background-color: var(--color-gray-dark);
	color: #ffffff;
	font-weight: 700;
	border-radius: 0;
	text-transform: uppercase;
	padding: 10px 25px;
}
.widget-submit button.submit:hover {
	background-color: var(--color-gray) !important;
}

/*  ==========  /Formulare  ==========  */



