/*
	upHill Value Marketing 

*/


:root {
	--button-bg-hover:    var(--color-orange-darker);
	--farbe-marke:        var(--color-brand-primary);
	--farbe-blau:         var(--color-blue);
	--farbe-blau-hell:    #e2e9ef;
	--farbe-blau-dunkel-1:   #003E60;
	--farbe-blau-dunkel-2:   #002E48;
	--farbe-grau-hell:       #d4d4d4;
	--farbe-grau-ganzhell:   #eeeeee;
	--farbe-grau-dunkel-1:   #8f8e92;
	--farbe-grau-dunkel-2:   #47504f;

	--headings__font-weight:          500;


}


.m-t-0 { margin-top: 0px; }  
.m-t-1 { margin-top: 8px; }  
.m-t-2 { margin-top: 16px; }  
.m-t-3 { margin-top: 32px; }  .m-t-4 { margin-top: 64px; }  .m-t-5 { margin-top: 128px; }
.m-b-0 { margin-bottom: 0px; }  .m-b-1 { margin-bottom: 8px; }  .m-b-2 { margin-bottom: 16px; }  .m-b-3 { margin-bottom: 32px; }  .m-b-4 { margin-bottom: 64px; }  .m-b-5 { margin-bottom: 128px; }
.mod_article.p-t-0 { padding-top: 0px !important; }  
.mod_article.p-t-1 { padding-top: 10px !important; }  
.mod_article.p-t-2 { padding-top: 15px !important; }  
.mod_article.p-t-3 { padding-top: 30px !important; }  
.mod_article.p-t-4 { padding-top: 60px !important; }  
.mod_article.p-t-5 { padding-top: 120px !important; }
.mod_article.p-b-0 { padding-bottom: 0px !important; }  
.mod_article.p-b-1 { padding-bottom: 10px !important; }  
.mod_article.p-b-2 { padding-bottom: 15px !important; }  
.mod_article.p-b-3 { padding-bottom: 30px !important; }  
.mod_article.p-b-4 { padding-bottom: 60px !important; }  
.mod_article.p-b-5 { padding-bottom: 120px !important; }



.kein-abstand {
	padding: 0;
	margin: 0;
}

.col-md-4, 
.col-md-5, 
.col-md-6, 
.col-md-7 {
	display: inline-grid;
}


html {
	font-size: 100%;
	font-size: 16px;
}

body {
	background: var(--color-gray-lighter);
/*	font-size: 16px;  */
}
[id="wrapper"] {
	max-width: none;
}
[id="header"] {
	position: relative;
	background: var(--farbe-grau-hell);
}
[id="header"]::before {
	display: none;
}
[id="header"] > .inside {
	position: relative;
	z-index: 99;
	padding-bottom: 10px;
	align-items: end;
}

.logo img {
	width: 100px;
}

#main > .inside {
	padding-top: 30px;
	padding-bottom: 0;
}
body.startseite #main > .inside {
/*	padding-top: 0;  */
}

[id="footer"] {
	position: relative;
	background-color: var(--color-bg-footer);
}
[id="footer"]::before {
	content: '';
	display: block;
	background-color: #ff0;
	width: 150%;
	height: 250px;
	transform: rotate(-2deg);
	position: absolute;
	z-index: 10;
	top: -55px;
	left: 0;
	background-color: var(--color-bg-footer);
	z-index: 10;
}
[id="footer"] > .inside {
	position: relative;
	z-index: 99;
	padding-top: 0;
}
}
#footer .footer-spalten {
	font-size: 16px !important;
}
#footer a {
	color: var(--color-links-footer);
}
#footer a:hover {
	color: var(--farbe-marke);
}


.error {
	color: #ffffff;
	background-color: #ff0000;
	padding: 5px 10px;
}

h1, h2 {
	text-transform: uppercase;
}
h1 {
	font-size: 2.5rem;;
}
h1.headline-gross {
	font-size: 52px;
}
h2 {
	font-size: 2rem;
	font-weight: normal;
}
h2 + h3 {
	margin-top: 0;
}
h1 strong, h2 strong, h3 strong, h4 strong {
	color: var(--farbe-marke);
}

@media screen and (max-width: 480px) {
	h1 {
		font-size: 1.5rem;;
	}
	h2 {
		font-size: 1.25rem;
		font-weight: normal;
	}
}

.no-border img, .ohne-rahmen, .ohne-rahmen img { border: none !important; }
img.widthauto {
	width: auto !important;
}


/*  ==========  Parallax-Erweiterung  ==========  */

.article_bg+.ce_text {
	position: relative;
	z-index: 2;
}

/*  ==========  Parallax-Erweiterung  ==========  */



.mod_article.hero-video-1 {
	overflow: hidden;
}
/*
.mod_article.hero-video-1 {
	background-image: url(/files/video/hero-video-1-bg.jpg);
	background-repeat;
	background-size: cover;
	filter: blur(5px);
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-o-filter: blur(5px);
	-ms-filter: blur(5px);
}
.mod_article.hero-video-1 > .inside {
	filter: blur(0);
	-webkit-filter: blur(0);
	-moz-filter: blur(0);
	-o-filter: blur(0);
	-ms-filter: blur(0);
}
*/
.mod_article.hero-video-1::before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	content: url(/files/video/hero-video-1-bg.jpg);
	filter: blur(10px);
	-webkit-filter: blur(10px);
	-moz-filter: blur(10px);
	-o-filter: blur(10px);
	-ms-filter: blur(10px);
}
.mod_article.hero-video-2::before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	content: url(/files/video/canva_freiheit-berge-2.jpg);
/*	filter: blur(10px);
	-webkit-filter: blur(10px);
	-moz-filter: blur(10px);
	-o-filter: blur(10px);
	-ms-filter: blur(10px);  */
}
.mod_article.hero-video-2 {
	max-height: 75vh;
	overflow: hidden;
}
.mod_article.hero-video-2 video {
/*	filter: brightness(80%);  */
}
.mod_article.hero-video-2 .ce_text {
	position: absolute;
	left: 15%;
	background: #ff0;
	max-width: 35%;
	bottom: 10%;
	z-index: 99;
	background-color: rgba(244,121,34,0.8);
	color: #ffffff;
	padding: 20px 20px !important;
}

.mod_article.hero-video-3::before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	content: url(/files/Bilder/Videos/gondel-video.mp4);
/*	filter: blur(10px);
	-webkit-filter: blur(10px);
	-moz-filter: blur(10px);
	-o-filter: blur(10px);
	-ms-filter: blur(10px);  */
}
.mod_article.hero-video-3 {
	max-height: 75vh;
	overflow: hidden;
}
.mod_article.hero-video-3 video {
/*	filter: brightness(80%);  */
}
.mod_article.hero-video-3 .ce_text {
/*	position: absolute;
	right: 30%;
	max-width: 80%;
	bottom: 10%;  */
	z-index: 99;
	color: #47504f;
}

.ce_hero.text-unten .content_container {
	margin-top: auto;
	margin-bottom: 3%;
}
.ce_hero .content_container .teaser {
    grid-column: span 12;
	background-color: rgba(244,121,34,0.9);
	color: #ffffff;
	padding: 20px 20px !important;
}
.ce_hero h1 {
	font-size: 30px !important;
	margin-bottom: 10px !important;
}
.ce_hero h2 {
	font-size: 24px !important;
	margin-bottom: 15px !important;
}
.ce_hero h3 {
	font-size: 22px !important;
	margin-bottom: 10px !important;
}
.ce_hero h3 strong {
	color: var(--color-gray-lighter);
}
.ce_hero p, 
.ce_hero ul {
	font-size: 16px;
	margin-bottom: 5px;
}
.ce_hero .image_container img.widthauto {
/*	object-fit: none;  */
	height: auto;
}
.ce_hero img {
	width: 100% !important;
	height: auto !important;
}
.ce_hero .btn {
	margin-top: 10px;
}
.ce_hero a.btn {
	padding: 7px 20px;;
}

@media screen and (min-width: 481px) and (max-width: 767px) {
	.ce_hero h2 {
		font-size: 30px !important;
	}
	.ce_hero h3 {
		font-size: 20px !important;
	}
}
@media screen and (max-width: 480px) {
	.ce_hero h2 {
		font-size: 24px !important;
	}
	.ce_hero h3 {
		font-size: 18px !important;
	}
}

.button_container {
	font-size: 18px !important;
}





/*  ==========  Navigation  ==========  */


.navi-zielgruppen {
	position: absolute;
	z-index: 99;
	width: 100%;
	height: 40px;
	bottom: -40px;
	left: 0;
	background-color: rgba(0,0,0,0.2);
	color: #ffffff;
}
.navi-zielgruppen ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: space-evenly;
}
.navi-zielgruppen ul li {
	display: inline-block;
	text-align: center;
	flex-grow: 1;
	border: 1px solid #ffffff;
	font-size: 20px;
	line-height: 20px;
}
.navi-zielgruppen ul li a, 
.navi-zielgruppen ul li strong {
	display: block;
	color: #ffffff;
	text-decoration: none;
	padding: 10px 15px;
	transition: background-color 0.3s;
}
.navi-zielgruppen ul li strong {
	background-color: var(--color-brand);
}
.navi-zielgruppen ul li a:hover {
	background-color: rgba(160,160,160,1);
	transition: background-color 0.3s;
}


.mod_image_copyright_list p {
	font-size: 14px;
	margin-bottom: 16px;
}


/*  ==========  /Navigation  ==========  */




.bg-weiss {
	background-color: #ffffff;
}
.bg-weiss-t {
	background-color: rgba(255,255,255,0.7);
}
.bg-blau { background-color: var(--farbe-blau); color: #ffffff; }
.bg-blau-dunkel-1 { background-color: var(--farbe-blau-dunkel-1); color: #ffffff; }
.bg-grau {
/*background-color: #fee2c9;  */
	background-color: var(--farbe-grau-hell);
	color: #000000;
	padding: 15px 20px;
}
.bg-hellgrau {
	background-color: var(--color-band-light-background);
}
.bg-hellblau {
	background-color: var(--farbe-blau-hell);
}
.bg-orange {
	background-color: #ee7202;
	color: #ffffff;
}
.ce_text[class*="bg-"] {
	padding: 15px 20px;
}
.ce_text.rahmen {
	border: 1px solid #ffffff;
}
.ce_text.rahmen {
	padding: 15px 20px;
}
.ce_text.text-weiss {
	color: #ffffff !important;
}
.ce_text.rahmen-o {
	border: 1px solid #f47922;
}
.ce_text.rahmen-o {
	padding: 15px 20px;
}

.ce_text.rahmen-b {
	border: 1px solid #004d78;
}
.ce_text.rahmen-b {
	padding: 15px 20px;
}

div[class*="col-"] .ce_text[class*="bg-"], 
div[class*="col-"] .ce_text.rahmen {
	height: 100%;
}
div[class*="col-"] .ce_text.rahmen-o {
	height: 100%;
}
div[class*="col-"] .ce_text.rahmen-b {
	height: 100%;
}

.ce_headline.headline-orange, 
.ce_text.headline-orange h1, 
.ce_text.headline-orange h2, 
.ce_text.headline-orange h3 {
	color: var(--farbe-marke);
}

.text-center {
   text-align:center
}


a.btn, span.btn, button.btn, div.btn > a, div.btn > button, .ce_toplink > a, .ce_toplink > button, .toplink > a, .toplink > button, input.submit, button.submit, .ce_comments .submit {
	border-radius: 0;
	padding: 10px 20px;
}



.ce_plenta_countup {
	font-size: 48px;
}





.news-grid.dreispaltig .layout_short, 
.news-grid.dreispaltig .layout_latest, 
.news-grid.dreispaltig .layout_simple {
	grid-column: span 4 / span 4;	
}
@media screen and (max-width: 960px) {
	.news-grid.dreispaltig .layout_short, 
	.news-grid.dreispaltig .layout_latest, 
	.news-grid.dreispaltig .layout_simple {
		grid-column: span 6 / span 6;
	}
}
@media screen and (max-width: 810px) {
	.news-grid.dreispaltig .layout_short, 
	.news-grid.dreispaltig .layout_latest, 
	.news-grid.dreispaltig .layout_simple {
/*		grid-column: span 6 / span 6;	*/
		grid-column: span 12 / span 12;	
	}
}
@media screen and (max-width: 480px) {
	.news-grid.dreispaltig .layout_short, 
	.news-grid.dreispaltig .layout_latest, 
	.news-grid.dreispaltig .layout_simple {
		grid-column: span 12 / span 12;	
	}
}
.mod_newslist .layout_latest {
	position: relative;
}
body.nfc-lp .mod_newslist .layout_latest h2 {
	hyphens: auto;
}
body.nfc-lp .news-grid .content_container {
  padding: 15px;
}
.mod_newslist .layout_latest p.categories {
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 10px;
	color: #ffffff;
	background-color: var(--farbe-blau);
}

.news-full .layout_full {
	display: block;
}
.news-full .layout_full .ce_image:first-of-type {
	margin-bottom: 30px;
}
.mod_newsreader .layout_full .ce_image + .ce_text {
	margin-top: 15px;
}
.mod_newsreader .layout_full p.categories {
	margin-bottom: 0;
}
.mod_newsreader .layout_full h1 {
	margin-top: 10px;
}

/*
p.more a, 
p.back a {
	padding: 10px 25px;
	background-color: var(--farbe-marke);
	color: #ffffff;
	transition: background-color 0.3s;
}
p.more a:hover, 
p.back a:hover {
	background-color: #000000;
	transition: background-color 0.3s;
}
.back {
	position: relative;
}
.back::before {
	position: absolute;
	content: '<';
	top: 17px;
	left: 5px;
	color: #fffFFF;
	background: none;
	text-indent: initial;
}
*/
.back::before {
	background: none;
	content: '';
	width: 0;
}


p.more a {
	color: #ffffff;
	background-color: var(--farbe-marke);
	padding: 5px 5px 5px 10px;
	text-decoration: none;
}
.ce_contact .text_container {
	border-top: none;
}
.ce_contact p a::after {
	content: ' \2771';
	display: inline-block;
	font-size: 1em;
	padding-left: 5px;
	padding-right: 5px;
	transition: padding 0.3s;
}
.ce_contact p a:hover::after {
	padding-left: 10px;
	padding-right: 0;
	transition: padding 0.3s;
}


p.more a, 
.ce_contact p a {
	color: #ffffff;
	background-color: var(--farbe-marke);
	padding: 5px 15px 5px 10px;
	text-decoration: none;
}
p.more a::after, 
.ce_contact p a::after {
	content: ' \2771';
	display: inline-block;
	font-size: 1em;
	padding-left: 10px;
	padding-right: 5px;
	transition: padding 0.3s;
}
p.more a:hover::after, 
.ce_contact p a:hover::after {
	padding-left: 15px;
	padding-right: 0;
	transition: padding 0.3s;
}
p.back a {
	color: #ffffff;
	background-color: var(--farbe-marke);
	padding: 5px 10px 5px 5px;
	text-decoration: none;
}
p.back a::before {
	content: ' \2771';
	display: inline-block;
	font-size: 1em;
	padding-left: 5px;
	padding-right: 5px;
	transition: padding 0.3s;
}
p.back a::before {
	content: ' \2770';
}
p.back a:hover::before {
	padding-left: 0;
	padding-right: 10px;
	transition: padding 0.3s;
}





.nav--main {
	font-size: 1rem;
}
.nav--main a, .nav--main a.trail, .nav--main strong.active, .nav--main strong.trail, .nav--main strong.forward {
	padding: var(--nav--main__item-padding);
	margin: var(--nav--main__item-padding);
}
.nav--main .level_2 > li {
	background: var(--color-brand-secondary);
	line-height: 1.4;
}
.nav--main .level_2 li.submenu > a::after, 
.nav--main .level_2 li.submenu > strong::after {
	display: none;
}
.nav--main .level_2 a, 
.nav--main .level_2 strong.active, 
.nav--main .level_2 strong.trail {
	padding: 7px 15px;
}

@media screen and (min-width:48em) {
	nav li.mobile-menu {
		display: none;
	}
	nav.mod_customnav li.mobile-menu {
		display: block;
	}
}
@media screen and (max-width:47.9375em) {
	.nav--mobile .level_1 {
		display: block;
	}
	.nav--mobile li a {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.nav--mobile ul.level_2 {
		padding-left: 25px;
	}
}


#footer table, #footer td {
	border: none;
	padding: 0;
}
#footer .nav--horizontal ul {
	flex-direction: row;
}
#footer .nav--horizontal li strong.active, 
#footer .nav--horizontal li a {
	padding-bottom: 10px;
}

a.btn--primary, 
span.btn--primary, 
button.btn--primary, 
button.submit, .ce_comments .submit {
	transition: all 0.3s;
}
a.btn--primary:hover, 
span.btn--primary:hover, 
button.btn--primary:hover, 
button.submit:hover, .ce_comments .submit:hover {
	background: var(--color-gray);
}
div.btn--primary > a, 
div.btn--primary > button, 
.ce_toplink > a, 
.ce_toplink > button, 
.toplink > a, 
.toplink > button {
	transition: all 0.3s;
}
div.btn--primary > a:hover, 
div.btn--primary > button:hover, 
.ce_toplink > a:hover, 
.ce_toplink > button:hover, 
.toplink > a:hover, 
.toplink > button:hover {
	background: var(--color-gray);
}

.ce_hero .content_container {
/*	margin-top: -200px;  */
/*	margin-top: -100px;  */
}
.ce_hero a.btn--primary, 
.ce_hero span.btn--primary, 
.ce_hero button.btn--primary, 
.ce_hero button.submit, .ce_comments .submit {
/*	background: var(--color-blue-dark);  */
	background: var(--farbe-grau-dunkel-2);
	color: #ffffff;
}
.ce_hero a.btn--primary:hover, 
.ce_hero span.btn--primary:hover, 
.ce_hero button.btn--primary:hover, 
.ce_hero button.submit:hover, .ce_comments .submit:hover {
	background: var(--color-gray);
}

@media only screen and (max-width: 768px) {
	.ce_hero .content_container {
		margin-top: 50px;
	}
}




@media screen and (max-width:47.9375em) {
	.desktop-only {
		display: none;
	}
}
@media screen and (min-width:48em) {
}


.ce_text.box {
	border: 2px solid var(--farbe-blau);
	margin: 15px;
	display: block;
	padding: 35px 15px;
	text-align: center;
	background: rgba(255,255,255,0.6);
	transition: background 0.3s;
}
.ce_text.box h3 {
	margin-bottom: 0;
}
.ce_text.box-dunkel {
	border: 2px solid var(--farbe-blau);
	margin: 15px;
	display: block;
	padding: 35px 15px;
	text-align: center;
	background: rgba(0,0,0,0.3);
	transition: background 0.3s;
	color: #ffffff;
}
.ce_text.box-hell {
	border: 2px solid var(--farbe-blau);
	margin: 15px;
	display: block;
	padding: 35px 15px;
	text-align: center;
	background: rgba(255,255,255,0.6);
	transition: background 0.3s;
	color: #000000;
}










.overlap {
	position: absolute;
	top: 0;
	right: 0;
}




.mod_login .widget {
	display: inline-block;
}
.mod_login input.text {
	display: inline-block; 
	width: 100%;
	max-width: 250px;
}
#header .mod_login {
	position: absolute;
	top: 10px;
	right: var(--wrapper-padding);
}
#header .mod_login .login_info {
	display: inline-block;
	padding-right: 10px;
}
#header .mod_login .login_info .line-1 {
	display: inline-block;
}
#header .mod_login .login_info .line-2 {
	display: none;
}
#header .mod_login button.submit {
	padding: 2px 10px;
}











.mod_article.link-liste {
	display: inline-block;
	width: 30%;
	margin-left: 1.5%;
	margin-right: 1.5%;
}
.mod_article.link-liste > .inside {
	padding: 0;
}
.mod_article.link-liste .ce_hyperlink {
	display: inline-block;
	margin: 5px;
}
.mod_article.link-liste .ce_hyperlink a {
	font-size: 20px;
	font-weight: bold;
	padding: 2px 10px;
	border-radius: 3px;
	background-color: var(--farbe-grau-ganzhell);
}
.mod_article.link-liste .ce_hyperlink a:hover {
	background-color: var(--farbe-grau-hell);
}




















