/*
	upHill Value Marketing 

*/


:root {
	--button-bg-hover:    var(--color-orange-darker);
	--farbe-marke:        var(--color-brand-primary);  /*  rgb(239,118,46)  */
	--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;

	--farbe-hero-text-bg:    rgba(239,118,46,0.7);
	--farbe-hero-text-text:  #ffffff;


	--headings__font-weight:          500;

}


.m-0 { margin: 0px; }  .m-1 { margin: 15px; }  .m-2 { margin: 30px; }  .m-3 { margin: 45px; }  .m-4 { margin: 60px; }  .m-5 { margin: 75px; }
.m-t-0 { margin-top: 0px; }  
.m-t-1 { margin-top: 15px; }  
.m-t-2 { margin-top: 30px; }  
.m-t-3 { margin-top: 45px; }  
.m-t-4 { margin-top: 60px; }  
.m-t-5 { margin-top: 75px; }
.m-b-0 { margin-bottom: 0px; }  
.m-b-1 { margin-bottom: 15px; }  
.m-b-2 { margin-bottom: 30px; }  
.m-b-3 { margin-bottom: 45px; }  
.m-b-4 { margin-bottom: 60px; }  
.m-b-5 { margin-bottom: 75px; }
.p-t-0 { padding-top: 0px; }  
.p-t-1 { padding-top: 15px; }  
.p-t-2 { padding-top: 30px; }  
.p-t-3 { padding-top: 45px; }  
.p-t-4 { padding-top: 60px; }  
.p-t-5 { padding-top: 75px; }
.p-b-0 { padding-bottom: 0px; }  
.p-b-1 { padding-bottom: 15px; }  
.p-b-2 { padding-bottom: 30px; }  
.p-b-3 { padding-bottom: 45px; }  
.p-b-4 { padding-bottom: 60px; }  
.p-b-5 { padding-bottom: 75px; }

.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: absolute;
	background: rgba(255,255,255,0.9);
	background: transparent;
}
/*
[id="header"]::before {
    content: '';
    background: -webkit-gradient(linear, left top, right top, from(var(--color-orange-dark)), to(var(--color-orange)));
    background: linear-gradient(to right, var(--color-orange-dark), var(--color-orange));
}
[id="header"]::after {
	content: '';
	display: block;
	width: 150%;
	height: 250px;
	background: #ffffff;
	position: absolute;
	right: 0;
	bottom: -50px;
	transform: rotate(-3deg);
	z-index: 10;
}
*/

[id="header"] > .inside {
	position: relative;
	z-index: 99;
	padding-bottom: 0;
	align-items: end;
}

.logo img {
	width: 160px;
}

#main > .inside {
	padding-top: 160px;
	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);
	text-decoration: none;
}
#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;
}

@media screen and (max-width: 480px) {
	h1 {
		font-size: 1.5rem;;
	}
	h2 {
		font-size: 1.25rem;
		font-weight: normal;
	}
}
@media screen and (min-width: 481px) and (max-width: 767px) {
	h1 { font-size: 1.75rem; }
	h2 { font-size: 1.5rem; }
	h1 { font-size: 1.25rem; }
}

.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;
}
.article_bg.image picture {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.mod_article.blass .article_bg.image img {
	filter: brightness(120%) contrast(73%);
}

/*  ==========  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: 25vh;
	overflow: hidden;
	overflow: visible;
}
.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-2 .ce_text.rechts-unten {
	position: absolute;
	left: auto;
	right: 15%;
	bottom: 5%;
}
.mod_article.hero-video-2 .ce_text h1 {
	font-size: 2rem;
}
@media screen and (min-width:48em) {
}
@media screen and (max-width:47.9375em) {
	.mod_article.hero-video-2 .ce_text.rechts-unten {
		left: 50%;
		right: auto;
		transform: translate(-50%,85%);
		width: 90%;
		max-width: none;
	}
	.mod_article.hero-video-2 .ce_text h1 {
		font-size: 1.5rem;
	}
}

.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;
}
.mod_article.hero-video-4 {
	overflow: hidden;
}
.mod_article.hero-video-4 .ce_text {
	margin-top: 300px;
	margin-bottom: 100px;
	background: #ff0;
	max-width: 42%;
	bottom: 10%;
	z-index: 99;
	background-color: rgba(244,121,34,0.8);
	color: #ffffff;
	padding: 20px 20px !important;
}
@media screen and (max-width: 960px) {
	.mod_article:not(.has_inside) .article_bg {
		position: relative;
	}
	.mod_article:not(.has_inside) .article_bg video {
		width: 100%;
		position: relative;
	}
	.mod_article.hero-video-4 .ce_text {
		margin-top: 0;
		margin-bottom: 0;
		background: #ff0;
		max-width: 100%;
		bottom: 10%;
		z-index: 99;
		background-color: rgba(244,121,34,0.8);
		color: #ffffff;
		padding: 20px 20px !important;
	}
	.mod_article.hero-video-4 .ce_text h1 {
		font-size: 2rem;
	}
}


.hero.slickslider .slick-slide, 
.hero .slickslider .slick-slide {
	display: grid !important;
}
.slick-prev, .slick-next {
	z-index: 99;
	width: 45px;
	height: 45px;
}
.slick-prev::before, .slick-next::before {
	font-size: 45px;
}
.slick-prev {
	left: 30px;
}
.slick-next {
	right: 30px;
}

.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;;
}


/*  ==========  Störer-Element  ==========  */

/*
.mod_article.hero .ce_image.stoerer {
	position: absolute;
	top: 50px;
	left: 100px;
	transform: rotate(-15deg);
}
.ce_image.stoerer img {
	border: none;
	max-width: 45vw;
	height: auto;
}

@media screen and (min-width: 481px) and (max-width: 767px) {
	.ce_hero h2 {
		font-size: 30px !important;
	}
	.ce_hero h3 {
		font-size: 20px !important;
	}
	.mod_article.hero .ce_image.stoerer {
		top: -25px;
		left: auto;
		right: 20px;
		transform: rotate(15deg);
	}
	.ce_image.stoerer img {
		max-width: 30vw;
	}
}

@media screen and (max-width: 480px) {
	.slick-prev, .slick-next, 
	.slick-prev::before, .slick-next::before {
		display: none;
	}
	.ce_hero h2 {
		font-size: 24px !important;
	}
	.ce_hero h3 {
		font-size: 18px !important;
	}
	.mod_article.hero .ce_image.stoerer {
		top: -25px;
		left: auto;
		right: 20px;
		transform: rotate(15deg);
	}
}
*/

/*  ==========  /Störer-Element  ==========  */



.button_container {
	font-size: 18px !important;
}




.ce_player.hochkant .video_container, 
.ce_youtube.hochkant .video_container {
	padding-bottom: 178%;
}


/*  ==========  .ce_text Hero-Element - neu  ==========  */


.mod_article.hero {
	max-height: calc(100vh - 160px);  /*  160px = Höhe der Kopfzeile  */
	overflow: hidden;
}

@media screen and (max-width: 480px) {
	.mod_article.hero {
		overflow: visible;
	}
/*
	.ce_text.hero-text {
		position: absolute;
		bottom: -12%; 
		left: 50%;
		transform: translate(-50%,0);
		width: 100%;
		max-width: 72em;
	}
	.ce_text.hero-text > .inner {
		position: absolute;
		top: -4rem;
		margin: 0 15px;
		padding: 1.25rem 15px;
		color: var(--farbe-hero-text-text);
		background-color: var(--farbe-hero-text-bg);
		max-width: 90%;
	}
*/
	.ce_text.hero-text {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		max-width: 72em;
	}
	.ce_text.hero-text > .inner {
		position: absolute;
		top: auto;
		right: auto;
		bottom: 0;
		left: auto;
		margin: 0 15px;
		padding: 0.75rem 15px;
		color: var(--farbe-hero-text-text);
		background-color: var(--farbe-hero-text-bg);
	}
	.ce_text.hero-text h1 {
		margin: 0;
		text-align: left;
		font-size: 1.2rem;
	}
}
@media screen and (min-width: 481px) and (max-width: 767px) {
	.mod_article.hero {
		overflow: visible;
	}
	.ce_text.hero-text {
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%,0);
		width: 100%;
		max-width: 72em;
		margin: 0;
	}
	.ce_text.hero-text > .inner {
		position: absolute;
		top: auto;
		margin: 0 15px;
		padding: 1rem 20px;
		color: var(--farbe-hero-text-text);
		background-color: var(--farbe-hero-text-bg);
		max-width: 100%;
		bottom: 0;
		margin: 0;
	}
	.ce_text.hero-text h1 {
		font-size: 1.5rem;
		margin: 0;
		text-align: left;
	}
}
@media screen and (min-width: 768px) {
	.ce_text.hero-text {
		position: absolute;
		bottom: 12%; 
		left: 50%;
		transform: translate(-50%,0);
		width: 100%;
		max-width: 72em;
	}
	.ce_text.hero-text.oben-links {
		top: 12%; 
		bottom: auto; 
	}
	.ce_text.hero-text.oben-rechts {
		top: 12%; 
		bottom: auto; 
		left: auto;
		right: 0;
		transform: translate(0,0);
	}
	.ce_text.hero-text > .inner {
		margin: 0 30px;
		padding: 1.5rem 30px;
		color: var(--farbe-hero-text-text);
		background-color: var(--farbe-hero-text-bg);
		max-width: 60%;
	}
	.ce_text.hero-text.text-weiss > .inner {
		color: #ffffff !important;
		background-color: transparent !important;
	}
	.ce_text.hero-text h1 {
		margin: 0;
		text-align: left;
		font-size: calc(1vw + 22px);
	}
	.ce_text.hero-text.oben-rechts h1 {
		text-align: right;
	}
}


/*  ==========  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;
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
	[id="header"] > .inside {
		display: block;
	}
	.logo img {
		width: 120px;
		marggin-bottom: 10px;
	}
	.nav--horizontal ul {
		justify-content: end;
	}
}

.nav--mobile {
	right: auto !important;
	width: 80%;
	max-width: 340px;
}


/*  ==========  /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;
}
.bg-orange h1 strong, .bg-orange h2 strong, .bg-orange h3 strong, .bg-orange h4 strong {
	font-weight: bold;
	color: #ffffff;
}
.bg-orange a {
	font-weight: normal;
	color: #000000;
}
.bg-orange .ce_accordion .toggler:not(.active) {
	font-weight: normal;
}
.bg-orange .ce_accordion .toggler:hover {
	color: var(--farbe-grau-dunkel-2);
}
.bg-orange .ce_hyperlink.btn--primary > a {
	background-color: var(--farbe-grau-dunkel-2);
	color: #ffffff;
transition: all 0.3s;	
}
.bg-orange .ce_hyperlink.btn--primary > a:hover {
	background-color: var(--color-gray);
	color: #ffffff;
}



.ce_text[class*="bg-"] {
	padding: 15px 20px;
}
.ce_text.rahmen {
	border: 5px solid #ffffff;
}
.ce_text.rahmen {
	padding: 15px 20px;
}
.ce_text.text-weiss {
	color: #ffffff !important;
}
.ce_text.rahmen-o {
	border: 5px solid #f47922;
}
.ce_text.rahmen-o {
	padding: 15px 20px;
}

.ce_text.rahmen-b {
	border: 5px 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_text p strong a {
	background-color: var(--farbe-marke);
	color: #ffffff;
	font-weight: normal;
	text-decoration: none;
	border-radius: 0;
	padding: 10px 20px;
	transition: all 0.3s;
}
.ce_text p strong a:hover {
	background: var(--color-gray);
}


.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);
}
.mod_newslist.dreispaltig p {
	hyphens: auto;
}

.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;
}

.mod_newscategories ul {
	list-style-type: none;
	padding: 0;
	margin: 0 0 15px 0;
}
.mod_newscategories ul li {
	display: inline-block;
	margin: 5px;
}
.mod_newscategories ul li.first {
	margin-left: 0;
}
.mod_newscategories ul li.last {
	margin-right: 0;
}
.mod_newscategories ul li a {
	display: inline-block;
	text-decoration: none;
	border: 1px solid var(--farbe-marke);
	padding: 5px 10px;
	transition: all 0.3s;
}
.mod_newscategories ul li a:hover {
	background-color: var(--farbe-marke);
	color: #ffffff;
}
.mod_newscategories ul li strong {
	display: inline-block;
	border: 1px solid transparent;
	padding: 5px 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;
}



.ce_contact.bild-kachel {
	position: relative;
	margin-bottom: 25px;
	height: auto;
}
.ce_contact.bild-kachel .text_container {
	position: absolute;
	bottom: 0;
	left: 0;
	border: none;
	height: 50%;
	width: 100%;
	color: #ffffff;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+33,000000+100&0+0,0.2+33,0.33+100 */
background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.2) 33%, rgba(0,0,0,0.33) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.2) 33%,rgba(0,0,0,0.33) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.2) 33%,rgba(0,0,0,0.33) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#54000000',GradientType=0 ); /* IE6-9 */
}
.ce_contact.bild-kachel .text_container .contact__description {
	position: absolute;
	bottom: 18px;
}

.ce_contact.bild-kachel-2 {
	position: relative;
	margin-bottom: 25px;
	height: auto;
}
.ce_contact.bild-kachel-2 .text_container {
	position: absolute;
	top: 0; 
	right: 0;
	bottom: 0;
	left: 0;
	padding: 0;
	border: none;
	color: #ffffff;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+33,000000+100&0+0,0.2+33,0.33+100 */
	background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.2) 33%, rgba(0,0,0,0.33) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.2) 33%,rgba(0,0,0,0.33) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.2) 33%,rgba(0,0,0,0.33) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#54000000',GradientType=0 ); /* IE6-9 */
}
.ce_contact.bild-kachel-2 .text_container .contact__name {
	display: none;
}
.ce_contact.bild-kachel-2 .text_container .contact__description {
	position: absolute;
	bottom: 18px;
}
.ce_contact.bild-kachel-2 p a {
	background-color: transparent;
	padding: 0 15px 0 0;
	font-size: 22px;
	line-height: 1.2;
	font-weight: 500;
}


/*  ==========  Flip-Card  ==========  */

.mod_article .row.flipcards > div, 
.flip-card {
	background-color: transparent;
	height: 250px;
}
/* This container is needed to position the front and back side */
.mod_article .row.flipcards .ce_text, 
.flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.8s;
	transform-style: preserve-3d;
}
/* Do an horizontal flip when you move the mouse over the flip box container */
.mod_article .row.flipcards > div:hover .ce_text, 
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}
/* Position the front and back side */
.mod_article .row.flipcards > div .ce_text > h3, 
.mod_article .row.flipcards > div .ce_text > div, 
.flip-card-front, .flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden; /* Safari */
	backface-visibility: hidden;
	display: flex;
	flex-direction:column;
	justify-content: center;
	margin: 0;
	padding: 20px;
}
/* Style the front side (fallback if image is missing) */
.mod_article .row.flipcards > div .ce_text > h3, 
.flip-card-front {
  background-color: var(--farbe-marke);
  color: #ffffff;
}
.mod_article .row.flipcards > div .ce_text.orange > h3, 
.flip-card-front {
  background-color: var(--farbe-marke);
  color: #ffffff;
}
.mod_article .row.flipcards > div .ce_text.hellgrau > h3, 
.flip-card-front {
  background-color: var(--farbe-grau-hell);
  color: var(--color-text);
}

/* Style the back side */
.mod_article .row.flipcards > div .ce_text > div, 
.flip-card-back {
  background-color: var(--farbe-marke);
  color: #ffffff;
  transform: rotateY(180deg);
}
.mod_article .row.flipcards > div .ce_text.hellgrau > div, 
.flip-card-back {
  background-color: var(--farbe-grau-hell);
  color: var(--color-text);
}

.mod_article .row.flipcards .ce_text ul {
	margin-left: 0;
	list-style-type: none;
}

.mod_article .row.flipcards > div .ce_text > h3::before {
	position: absolute;
	bottom: 10px;
	right: 10px;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\f061';
	display: block;
	opacity: 0.4;
	font-size: 32px;
}
.flipcards .ce_text.orange p a {
	display: inline-block;
	background-color: var(--farbe-grau-hell);
	color: var(--color-text);
	padding: 7px 20px;
	margin-top: 10px;
	text-decoration: none;
}
.flipcards .ce_text.orange p a:hover {
	background-color: var(--farbe-grau-ganzhell);
}
.flipcards .ce_text.hellgrau p a {
	display: inline-block;
	background-color: var(--farbe-marke);
	color: #ffffff;
	padding: 7px 20px;
	margin-top: 10px;
	text-decoration: none;
}
.flipcards .ce_text.hellgrau p a:hover {
	background-color: var(--farbe-grau-ganzhell);
	color: var(--color-text)
}


/*  ==========  /Flip-Card  ==========  */




.slider-schmal {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 15px;
	border: 2px solid var(--color-brand);
}


.nl-anmeldeformular form > div div:first-child > div label {
	display: none;
}
.nl-anmeldeformular form > div div:first-child > div input {
	width: 100%;
	max-width: 400px;
}
.nl-anmeldeformular form > div div:nth-child(2) > div label {
	width: 80%;
	vertical-align: text-top;
	line-height: 1.3;
	padding-left: 13px;
}
.nl-anmeldeformular form button {
	background-color: var(--button-bg) !important;
	padding: 10px 20px;
}
.nl-anmeldeformular form button:hover {
	background-color: var(--button-bg-hover) !important;
}
input[type=checkbox] {
  -ms-transform: scale(1.5); /* IE */
  -moz-transform: scale(1.5); /* FF */
  -webkit-transform: scale(1.5); /* Safari and Chrome */
  -o-transform: scale(1.5); /* Opera */
  transform: scale(1.5);
}
.widget-text, .widget-password {
    margin-bottom: var(--base-spacing-unit);
}
fieldset.checkbox_container input {
	margin-right: 15px;
}

.widget.dsgvo-zustimmung label {
	padding-left: 12px;
}
.widget.dsgvo-zustimmung .checkbox_container > span {
	display: flex;
	flex-direction: row;
	align-items: baseline;
}

.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;
	}
}



.ce_hyperlink.big-button {
	border: 2px solid var(--farbe-blau);
	margin: 15px;
}
.ce_hyperlink.big-button a {
	display: block;
	font-size: 28px;
	font-family: var(--headings__font-family); 
	text-transform: uppercase;
	padding: 35px 15px;
	text-align: center;
	background: rgba(255,255,255,0.6);
	transition: background 0.3s;
}
.ce_hyperlink.big-button a:hover {
	background: rgba(255,255,255,0.3);
	transition: background 0.3s;
}
.ce_hyperlink.bild-kachel {
	position: relative;
}
.ce_hyperlink.bild-kachel .caption {
	transition: all 0.3s;
	position: absolute;
	bottom: 0;
	left: 0;
	color: #ffffff;
	font-size: 20px;
	line-height: 1.2;
	font-weight: 500;
	height: 100%;
	width: 100%;
	padding: 15px;
	display: flex;
	flex-direction: row;
	align-items: end;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+33,000000+60,000000+100&0.15+0,0.15+33,0.25+60,0.5+100 */
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.15) 33%, rgba(0,0,0,0.25) 60%, rgba(0,0,0,0.5) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.15) 33%,rgba(0,0,0,0.25) 60%,rgba(0,0,0,0.5) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.15) 33%,rgba(0,0,0,0.25) 60%,rgba(0,0,0,0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#26000000', endColorstr='#80000000',GradientType=0 ); /* IE6-9 */
}
.ce_hyperlink.bild-kachel .caption:hover {
	transition: all 0.3s;
	color: var(--farbe-blau);
	text-shadow: 0 0 5px #ffffff;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+33,ffffff+60,ffffff+100&0+0,0.25+33,0.59+60,0.75+100 */
	background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,0.25) 33%, rgba(255,255,255,0.59) 60%, rgba(255,255,255,0.75) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.25) 33%,rgba(255,255,255,0.59) 60%,rgba(255,255,255,0.75) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.25) 33%,rgba(255,255,255,0.59) 60%,rgba(255,255,255,0.75) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#bfffffff',GradientType=0 ); /* IE6-9 */
}
.ce_hyperlink.bild-kachel .caption::after {
	content: ' \2771';
	display: inline-block;
	font-size: 1em;
	padding-left: 5px;
	padding-right: 5px;
	transition: padding 0.3s;
}
.ce_hyperlink.bild-kachel .caption:hover::after {
	padding-left: 10px;
	padding-right: 0;
	transition: padding 0.3s;
}




#usercentrics-button.layout-1 #uc-banner-modal .btn-list.show-deny-btn.show-more-btn #uc-btn-accept-banner {
	background-color: #009900 !important;
	max-width: 25% !important;
	margin: 10px 4% !important;
}
#usercentrics-button.layout-1 #uc-banner-modal .btn-list.show-deny-btn.show-more-btn #uc-btn-deny-banner {
	background-color: #dddddd !important;
	max-width: 15% !important;
	margin: 10px 4% !important;
}
#usercentrics-button.layout-1 #uc-banner-modal .btn-list.show-deny-btn.show-more-btn #uc-btn-more-info-banner {
	background-color: #cccccc !important;
	max-width: 15% !important;
	margin: 10px 4% !important;
}
#usercentrics-button.layout-1 #uc-banner-modal .btn-list.show-deny-btn.show-more-btn #uc-btn-more-info-banner::after {
	content: '...';
	display: inline;
}
.usercentrics-button .uc-btn:hover {
	opacity: 0.7;
}



@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;
	height: 100%;
}
.ce_text.box h3 {
	margin-bottom: 0;
}
body.landingpage .ce_text.box h3 {
	margin-bottom: 10px;
	color: var(--farbe-marke);
}
.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: left;
	background: rgba(255,255,255,0.6);
	transition: background 0.3s;
	color: #000000;
}










body.nfc-lp [id="header"] {
	background: rgba(255,255,255,0.9);
}

body.nfc-lp [id="header"]::after {
	display: none;
}
body.nfc-lp [id="header"] > .inside {
	padding-bottom: 15px;
}
body.nfc-lp #main > .inside {
	padding-top: 135px;
}





body.nfc-lp .logo img {
	width: 140px;
}
body.nfc-lp .nav-toggler {
	display: block;
}
body.nfc-lp #header, 
body.nfc-lp #footer, 
body.nfc-lp #container {
	max-width: 810px;
	margin: 0 auto;
}

body.nfc-lp .nav--mobile {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  z-index: 1004;
  visibility: visible;
  font-size: var(--base-font-size--xl);
  position: fixed;
  background: var(--nav-mobile-color-background);
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -ms-touch-action: touch;
  -ms-overflow-style: none;
  -webkit-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  pointer-events: auto;
}
body.nfc-lp .nav--mobile--active {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

body.nfc-lp .ce_hero {
	display: block;
	margin-bottom: 35px;
}
body.nfc-lp .ce_hero .content_container {
	display: block;
}
body.nfc-lp .ce_hero .float_left {
	float: none;
}
body.nfc-lp .ce_hero.text-unten .content_container {
	margin-bottom: 0;
}
body.nfc-lp .ce_hero .float_left + .content_container .teaser, 
body.nfc-lp .ce_hero .float_right + .content_container .teaser {
	position: absolute;
	top: auto;
	right: 0;
	bottom: -36px;
	left: -11px;
	margin-top: 0;
}
body.nfc-lp .ce_hero .content_container .teaser {
	padding: 12px 35px !important;
}
body.nfc-lp .ce_hero h2 {
	margin-bottom: 0 !important;
	font-size: 22px !important;
}
body.nfc-lp .ce_hyperlink.w3-btn {
/*	background-color: var(--farbe-dunkelgrau) !important;  */
/*	background-color: var(--farbe-marke) !important;  */
	background-color: var(--farbe-blau) !important;
}
body.nfc-lp .ce_hyperlink.w3-btn:hover {
	background-color: var(--farbe-dunkelgrau) !important;
}
body.nfc-lp  div.btn--primary > a, 
body.nfc-lp div.btn--primary > button, 
body.nfc-lp .ce_toplink > a, 
body.nfc-lp .ce_toplink > button, 
body.nfc-lp .toplink > a, .toplink > button {
	background-color: var(--farbe-blau) !important;
}
body.nfc-lp  div.btn--primary > a:hover, 
body.nfc-lp div.btn--primary > button:hover, 
body.nfc-lp .ce_toplink > a:hover, 
body.nfc-lp .ce_toplink > button:hover, 
body.nfc-lp .toplink > a, .toplink > button:hover {
	opacity: 0.7;
}


body.nfc-lp .ce_hyperlink a {
	padding-top: 15px;
	padding-bottom: 15px;
	position: relative;
	display: block;
}
body.nfc-lp .ce_hyperlink.icon a {
	padding-top: 60px;
}
body.nfc-lp .ce_hyperlink.icon a::before {
	display: block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900;
	font-size: 35px;
	color: var(--farbe-button-icon);
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	text-align: center;
}
body.nfc-lp .ce_hyperlink.icon.home a::before { content: "\f015"; }
body.nfc-lp .ce_hyperlink.icon.blog a::before { content: "\f570"; }
body.nfc-lp .ce_hyperlink.icon.kontakt a::before { content: "\f2b9"; }
body.nfc-lp .ce_hyperlink.icon.shop a::before { content: "\f07a"; }
body.nfc-lp .ce_hyperlink.icon.vcf a::before { content: "\f2bb"; }
body.nfc-lp .ce_hyperlink.icon.book a::before { content: "\f02d"; }
body.nfc-lp .ce_hyperlink.icon.video a::before { content: "\f03d"; }  
body.nfc-lp .ce_hyperlink.icon.book a::before { content: "\f02d"; }  
body.nfc-lp .ce_hyperlink.icon.youtube a::before { content: "\f167"; font-family: "Font Awesome 5 Brands"; }
body.nfc-lp .ce_hyperlink.icon.linkedin a::before { content: "\f08c"; font-family: "Font Awesome 5 Brands"; }
body.nfc-lp .ce_hyperlink.icon.xing a::before { content: "\f169"; font-family: "Font Awesome 5 Brands"; }
body.nfc-lp .ce_hyperlink.icon.instagram a::before { content: "\e055"; font-family: "Font Awesome 5 Brands"; }




.mod_recommendationlist .layout_full {
	padding: 15px;
	border: 1px solid var(--farbe-marke);
}
.mod_recommendationlist h2 {
	font-size: 20px;
	font-size: 1.25rem;
	margin-bottom: 1rem;
}
.mod_recommendationlist .info .author {
	font-style: italic;
}





.overlap {
	position: absolute;
	top: 0;
	right: 0;
}


#header .socialmedia-links {
	position: absolute;
	top: 0;
	right: calc(var(--wrapper-padding) - 5px);
}
.socialmedia-links a {
	padding: 0 5px;
}
.socialmedia-links i {
	font-size: 32px;
}




.ce_text.programm td em {
	font-style: normal;
	color: var(--farbe-marke);
}




.mod_article.volle-breite {
	padding: 0;
}
.mod_article.volle-breite > .inside {
	max-width: 100%;
	padding: 0;
}
.mod_article.volle-breite > .inside > .row {
	grid-gap: 0;
}


#main ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main ul li {
	margin: 0 0 10px 0;
	padding: 0 0 0 25px;
	background-image: url('/files/_tmpl/img/UpHill_Haken.svg');
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-position: 0 5px;
}
#main .ce_gallery ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#main .ce_gallery ul li {
	margin: 0;
	padding: 0;
	background-image: none;
}
#main a img {
	transition: all 0.3s;
}
#main a:hover img {
	opacity: 0.7;
}


