/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/


/**
 * @license
 * MyFonts Webfont Build ID 4806220, 2022-05-06T03:14:36-0400
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: TheSans-Plain by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/thesans/plain/
 * 
 * Webfont: TheSans-Bold by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/thesans/bold/
 * 
 * Webfont: TheSerif-Light by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/theserif/light/
 * 
 * 
 * Webfonts copyright: Copyright 1994-2021 Luc(as) de Groot, published by LucasFonts, www.lucasfonts.com  All rights reserved.
 * 
 * © 2022 MyFonts Inc
*/

/*@import url("//hello.myfonts.net/count/49564c");*/
  
@font-face {
  font-family: "TheSansPlain";
  src: url('../fonts/TheSansPlain/font.woff2') format('woff2'), url('../fonts/TheSansPlain/font.woff') format('woff');
}
@font-face {
  font-family: "TheSerif";
  src: url('../fonts/TheSerifLight/font.woff2') format('woff2'), url('../fonts/TheSerifLight/font.woff') format('woff');
}
@font-face {
  font-family: "TheSansPlain";
  src: url('../fonts/TheSansBold/font.woff2') format('woff2'), url('../fonts/TheSansBold/font.woff') format('woff');
    font-weight: bold;
}
/*
canvas {
	display: none !important;
}

.grid__item-img img {
	opacity: 1 !important;
	visibility: visible !important;
}
*/

.cc-revoke {
	display: none !important;
}

body {
    background: #2A3039;
    font-family: "TheSansPlain", serif;
    font-weight:500;
    font-size: 18px;
}

div p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	body {
		font-size: 17px;
	}
}
@media screen and (max-width: 480px) {
	body {
		font-size: 16px;
	}
}
.triagles_effects > div {
	-webkit-transform-style: preserve-3d;
	-webkit-transform:translate3d(0,0,0);
	transform-style: preserve-3d;
	transform:translate3d(0,0,0);
}
h1,h2,h3{
    font-family: "TheSerif", serif;
	color: #ffffff;
}

h4,h5,h6{
	color: #ffffff;
}

h4,h5,h6,p,span,div,a{
    font-family: "TheSansPlain", serif;
}

h1 {
	font-size: 46px !important;
}

h2 {
	font-size: 44px !important;
}

h3 {
	font-size: 42px !important;
}

h4 {
	font-size: 36px !important;
}

h5 {
	font-size: 26px !important;
}

h6 {
	font-size: 18px !important;
}

@media screen and (max-width: 980px) {
	
	h1 {
		font-size: 48px !important;
	}

	h2 {
		font-size: 46px !important;
	}

	h3 {
		font-size: 34px !important;
	}

	h4 {
		font-size: 30px !important;
	}

	h5 {
		font-size: 23px !important;
	}

	h6 {
		font-size: 17px !important;
	}
	
}

@media screen and (max-width: 768px) {
	
	h1 {
		font-size: 30px !important;
	}

	h2 {
		font-size: 28px !important;
	}

	h3 {
		font-size: 26px !important;
	}

	h4 {
		font-size: 24px !important;
	}

	h5 {
		font-size: 20px !important;
	}

	h6 {
		font-size: 16px !important;
	}
	
}


.f_bold{
    font-weight: bold;
}

a {
    color: #ffffff;
    text-decoration: none;
}

a:hover {
    color: #ffffff;
    text-decoration: none;
}

.container-full {
    max-width: 100%;
    padding-left: 50px;
    padding-right: 50px;
    position: relative;
}
.shaper .container-full {
    max-width: 1550px;
    margin: auto;
    width: 100%;
    overflow: hidden;
}

.menu_active {
    overflow: hidden;
}

.img-fluid {
    width: 100%;
}

.rounded-2.img-shadow {
	border-radius: 20px !important;
	box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
	-webkit-box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
	-moz-box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
	-o-box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
}
@media screen and (max-width: 768px) {
    .container-full {
        padding-left: 0px;
        padding-right: 0px;
    }
    #header {
        margin-top: 10px !important;
    }
    #header .container-full {
        padding: 10px 25px;
    }
}

@media screen and (min-width: 768px) {
    .max_90_d {
        max-width: 1550px;
        margin: auto;
    }
    .padd_r{
        padding-right: 2.5rem;
    }
}

.btn-success,
.btn-success:hover,
.btn-success:active,
.btn-success:focus {
    color: #fff;
    background-color: #3BB390;
    border-color: #3BB390;
}

.btn-rounded {
    border-radius: 25px;
    padding: 10px 20px;
}

@media screen and (min-width: 992px) {
    .margin-left-3 {
        margin-left: 3rem;
    }
    .pr-md-25{
        padding-right: 45px;
    }
    .pl-md-25{
        padding-left: 45px;
    }
}

h1.heading {
    font-size: 48px;
}

h2.heading {
    font-size: 3rem;
}

.space_b {
    margin: 80px 0 !important;
}

@media screen and (max-width: 768px) {
    h1.heading {
        font-size: 2.75rem;
    }

    .space_b {
        margin: 0px 0 !important;
    }

}

@media screen and (max-width: 993px) {

    h2.heading {
        font-size: 1.5rem;
    }
}

.text-justify {
    text-align: justify;
}
.logo_hero {
    min-height: 180px;
    padding: 40px;
    width: 100%;
}
/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
    /*[data-aos-delay] {
        transition-delay: 0 !important;
    }*/
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.fixed-top {
    position: absolute;
}

.menu_active .fixed-top {
    position: fixed !important;
}

#header {
    transition: all 0.5s;
    z-index: 997;
    padding: 15px 0;
    margin-top: 25px;
}

#header.header-scrolled,
#header.header-inner-pages {
    background: rgba(0, 0, 0, 0.8);
}

#header .logo {
    font-size: 32px;
    margin: 0;
    padding: 0;
    line-height: 1;
    font-weight: 700;
    z-index: 9999 !important;
}

#header .logo a {
    color: #fff;
}

#header .logo img {
    max-height: 40px;
    filter: drop-shadow(0px 0px 14px #222222bb);
}

/*--------------------------------------------------------------
# info toggle
--------------------------------------------------------------*/

.toggle-badge {
	position: fixed;
	opacity: 0;
	width: 100%;
	max-width: 500px;
	right: 0;
	bottom: 0;
	z-index: 90 !important;
	transition: all 300ms linear;
}

.toggle-badge.show {
	opacity: 1;
}

.toggle-badge.open .badge-button-open {
	transform: translate(100%, 50%);
	opacity: 0;
}

.badge-button-open {
	display: flex;
	flex-direction: row;
	gap: 5px;
	align-items: center;
	position: absolute;
	bottom: 170px;
	right: 0;
	z-index: 9999 !important;
	opacity: 1;
	cursor: pointer;
	background: white;
	transform: translateY(50%);
	padding: 32px 86px 32px 32px;
	border-radius: 20px 0 0 20px;
	-webkit-box-shadow: 0px 4px 25px 0px rgba(0,0,0,0.25); 
	box-shadow: 0px 4px 25px 0px rgba(0,0,0,0.25);
	transition: all 300ms linear;
}

.badge-button-open svg {
	height: initial !important;
}

.badge-button-open .button-icon {
	display: inline-block;
	width: 49px;
	height: 49px;
}

.badge-button-open .button-heading {
	font-size: 32px;
	font-weight: bold;
}

.toggle-badge.open .badge-content {
	transform: translate(0, 0);
	opacity: 1;
}

.badge-content {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 9999999 !important;
	width: 100%;
	transform: translate(100%, 100%);
	padding: 60px;
	border-radius: 20px 0 0 0;
	-webkit-box-shadow: 0px 4px 25px 0px rgba(0,0,0,0.25); 
	box-shadow: 0px 4px 25px 0px rgba(0,0,0,0.25);
	background: white;
	opacity: 0;
	transition: all 300ms linear;
}

.badge-content .badge-meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-bottom: 24px;
}

.badge-content .badge-meta p {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 0;
}

.badge-content .badge-meta span, .badge-content .badge-meta svg {
	display: inline-block;
	width: 35px;
	height: 35px;
	cursor: pointer;
}

.badge-content .badge-description p:last-child {
	margin-bottom: 0 !important;
}

.badge-content .badge-description a {
	margin-top: 20px !important;
	margin-right: 5px !important;
}

@media screen and (max-width: 768px) {
	.badge-content .badge-meta {
		margin-bottom: 18px;
	}
	
	.badge-content {
		padding: 45px;
	}
	
	.badge-content .badge-description a {
		margin-top: 15px !important;
	}
	
	.badge-button-open {
		padding: 23px 66px 23px 23px;
	}
	
	.badge-button-open .button-heading {
		font-size: 28px;
	}
}

@media screen and (max-width: 480px) {
	.badge-content .badge-meta {
		margin-bottom: 10px;
	}
	
	.badge-content {
		padding: 30px;
	}
	
	.badge-content .badge-description a {
		margin-top: 10px !important;
	}
	
	.badge-button-open {
		bottom: 100px;
		padding: 14px 14px 14px 14px;
	}
	
	.badge-button-open .button-heading {
		display: none;
	}
	
	.badge-button-open .button-heading {
		font-size: 24px;
	}
}

/*--------------------------------------------------------------
# notification bar
--------------------------------------------------------------*/
.notification-bar {
	display: none;
	margin-top: -40px;
	margin-bottom: 30px;
	padding: 20px 0;
	width: 100%;
	overflow: hidden;
	background: #3BB390;
	-webkit-box-shadow: 0px 4px 25px 0px rgba(0,0,0,0.25); 
	box-shadow: 0px 4px 25px 0px rgba(0,0,0,0.25);
	position: relative;
	z-index: 99999 !important;
}

.notification-bar .ticker-box {
	display: block;
	position: relative;
	width: 100%;
}

.notification-bar .ticker-box ul.list {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.notification-bar .ticker-box ul.list li.listitem {
	position: absolute;
	color: #ffffff;
	font-size: 22px;
	font-weight: bold;
	white-space: nowrap;
}

@media screen and (max-width: 768px) {
	.notification-bar {
		margin-top: -25px;
		padding: 20px 0;
	}
	
	.notification-bar .ticker-box ul.list li.listitem {
		font-size: 18px;
	}
}


/*--------------------------------------------------------------
# toggle button
--------------------------------------------------------------*/
.toggle__dark {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
}

.toggle__dark input[type=checkbox] {
    height: 0;
    width: 0;
    visibility: hidden;
}

.toggle__dark label {
    cursor: pointer;
    width: 80px;
    height: 40px;
    background: #ffffff;
    border-radius: 100px;
    position: relative;
    box-shadow: 0 0 65px #22222263;
}

.toggle__dark label:after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 34px;
    height: 34px;
    background: #573d90;
    border-radius: 90px;
    transition: 0.3s;
}

.toggle__dark input:checked+label:after {
    left: 43px;	
	/*left: calc(100% - 3px);
    transform: translateX(-100%);*/
}

.toggle__dark label:active:after {
    width: 50px;
}

.toggle__dark .sommer {
    background-image: url(../img/icons/sommer_white.png);
    background-repeat: no-repeat;
    background-size: 30px;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: 1;
}

.toggle__dark input:checked+label .sommer {
    background-image: url(../img/icons/sommer_black.png);
    background-repeat: no-repeat;
    background-size: 30px;
}

.toggle__dark .winter {
    background-image: url(../img/icons/winter_black.png);
    background-repeat: no-repeat;
    background-size: 30px;
    width: 30px;
    height: 30px;
    position: absolute;
    right: 5px;
    top: 5px;
    z-index: 1;
}

.toggle__dark input:checked+label .winter {
    background-image: url(../img/icons/winter_white.png);
    background-repeat: no-repeat;
    background-size: 30px;
}

@media screen and (max-width: 768px) {
    .toggle__dark {
        top: 90px;
        display: none;
    }

    .menu_active .toggle__dark {
        display: block;
    }

    .menu_text {
        display: none;
    }
}


/*--------------------------------------------------------------
#  menu button
--------------------------------------------------------------*/
.notification-bar + .container-full .get-menu-btn  {
	top: 113px;
}

.menu_active .notification-bar + .container-full .get-menu-btn {
	top: 113px !important;
}

@media (max-width: 480px) {
	.menu_active .notification-bar + .container-full .toggle__dark {
		/*display: none !important;*/
		top: 65px !important;
	}
	.menu_active .notification-bar + .container-full #fullnav{
		/*display: none !important;*/
		top: 30px !important;
	}
}
	
.get-menu-btn {
    position: fixed;
	top: 40px;
	right: 50px;
	color: #fff;
    transition: 0.3s;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    z-index: 999999 !important;
    filter: drop-shadow(0px 0px 14px #222222bb);
	cursor: pointer;
}

span.menu_text {
    margin-left: 8px;
    font-size: 20px;
    font-weight:700;
}

.get-menu-btn .menu_icon {
    background: url(../img/icons/menu-open.png) no-repeat;
    background-size: contain;
    width: 34px;
    height: 29px;
    display: inline-block;
}

.menu_active .get-menu-btn .menu_icon {
    background: url(../img/icons/menu_close.png) no-repeat;
    background-size: contain;
    width: 34px;
    height: 29px;
    display: inline-block;
}

@media (max-width: 992px) {
    .get-menu-btn .menu_icon {
        width: 27px;
        height: 27px;
    }
	
	.get-menu-btn {
        right: 25px;
    }
	
	.menu_active .get-menu-btn .menu_icon {
        width: 27px;
        height: 27px;
    }
}

/*--------------------------------------------------------------
#  floating menu links
--------------------------------------------------------------*/
.floating__menu {
    position: absolute;
    left: 40px;
    bottom: 40px;
	z-index: 10;
}

.menu_active .floating__menu {
    position: fixed;
}

.floating__menu:before {
    content: " ";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    z-index: -1;
    border-radius: 50px;
    background: rgba(86, 86, 86, 0.32);
    backdrop-filter: blur(24px);
}

.floating__menu .menu_links {
    display: flex;
    flex-direction: column;
    padding: 15px;
}

.floating__menu .menu_links .menu_link {
    position: relative;
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    color: white;
    margin-bottom: 4px;
    padding: 9px 6px;
    cursor: pointer;
    opacity: 1;
}

.menu_links .menu_link span.menu_link_text:after {
    content: "";
    display: block;
    background: #3BB390;
    /* width: 100%; */
    position: absolute;
    top: -15px;
    bottom: -15px;
    left: -60px;
    right: 0px;
    z-index: -1;
    border-radius: 50px;
    transition: 0.3s;
    right: -22px;
    transform: translate3d(-50px,0,0) scaleX(0.3);
    opacity: 0;
    transform-origin: left;
}

.menu_links .menu_link:hover .menu_link_text:after {
    transform: translate3d(0px,0,0) scaleX(1);
    opacity: 1;
}


.floating__menu .menu_link_text {
    visibility: hidden;
    position: absolute;
    left: 53px;
    transition: transform 0.3s ease-in-out;
    transition: opacity 0.4s ease-in-out;
    font-weight: bold;
    opacity: 0;
}

.menu_links .menu_link:hover .menu_link_text {
    visibility: visible;
    opacity: 1;
}

.menu_links .menu_link:hover .icos {
	opacity: 1;
}

.menu_link .icos {
    background-size: 40px;
    background-position: center;
    width: 40px;
    height: 40px;
	z-index: 2;
}

.icon_suche {
    background: url(../img/icons/suche.png) no-repeat;
}

/* other links menu */

.otherlinks_menu {
    display: none;
}

.menu_active .otherlinks_menu {
    display: block;
}

.otherlinks_menu ul {
    list-style: none;
    padding: 15px;
    padding-top: 30px;
    padding-left: 25px;
    font-size: 15px;
    color: white;
}

.otherlinks_menu ul li {
    padding-bottom: 5px;
}
.otherlinks_menu ul li a{
    font-family: "TheSerif", serif;
}

@media (max-width: 768px) {
    .floating__menu {
        width: calc(100% - 40px);
        left: 20px;
        bottom: 5%;
        z-index: 99;
    }
	
	.menu_links .menu_link:before {
		display: none;
	}

    .menu_active .floating__menu {
        display: block;
    }

    .otherlinks_menu {
        display: none;
    }

    .floating__menu .menu_links {
        display: flex;
        flex-direction: row;
        padding: 15px;
        justify-content: space-between;
        width: 100%;
    }

    .floating__menu .menu_links .menu_link {
        margin-bottom: 0;
        padding: 0px;
        flex-direction: column;
    }

    .menu_active .otherlinks_menu {
        display: none !important;
    }

    .menu_active .floating__menu .menu_link_text {
        display: block !important;
        left: 0 !important;
        padding: 0 !important;
    }

    .menu_active .menu_links .menu_link:hover:before {
        height: calc(100% + 8px);
    }

    .floating__menu .menu_link_text {
        position: relative;
        display: block !important;
        left: 0px;
        font-size: .8rem;
        visibility: visible;
        opacity: 1;
    }
    
    .floating__menu  .menu_link:hover .menu_link_text:after {
    	display: none;
    }

/*     .floating__menu .menu_links .menu_link:last-child {
        display: none;
    } */
	.tohide{
	   display:none !important;	
	}
    .floating__menu:before {
        border-radius: 25px;
    }

    .menu_links .menu_link:hover:before {
        content: " ";
        width: 100%;
        left: 0;
        border-radius: 6px;
        background: none;
    }

    .menu_links .menu_link:hover .menu_link_text {
        display: block;
        left: 0;
    }
}



/*--------------------------------------------------------------
# triagles effects
--------------------------------------------------------------*/
.triagles_effects {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50vw;
    display: inline-block;
    justify-content: right;
}

.triagles_effects div {
    height: 16.6666666vw;
    width: 16.6666666vw;
    border: solid transparent;
    border-width: 8.333333vw;
    float: right;
}

#footer .triagles_effects.full__width_effect.onmobile > {
	z-index: -1 !important;
}

/* green borders */
.right_bottom_green {
    border-right-color: #3BB390 !important;
    border-bottom-color: #3BB390 !important;
}

.right_top_green {
    border-right-color: #3BB390 !important;
    border-top-color: #3BB390 !important;
}

.left_bottom_green {
    border-left-color: #3BB390 !important;
    border-bottom-color: #3BB390 !important;
}

.left_top_green {
    border-left-color: #3BB390 !important;
    border-top-color: #3BB390 !important;
}

.left_top_blue {
    border-left-color: #573D90 !important;
    border-top-color: #573D90 !important;
}

/* blue borders */
.right_top_blue {
    border-right-color: #573D90 !important;
    border-top-color: #573D90 !important;
}

.right_bottom_blue {
    border-right-color: #573D90 !important;
    border-bottom-color: #573D90 !important;
}

.left_top_blue {
    border-left-color: #573D90 !important;
    border-top-color: #573D90 !important;
}

.left_bottom_blue {
    border-left-color: #573D90 !important;
    border-bottom-color: #573D90 !important;
}

/* blue borders */
.right_top_white {
    border-right-color: white !important;
    border-top-color: white !important;
}

.right_bottom_white {
    border-right-color: white !important;
    border-bottom-color: white !important;
}

.left_top_white {
    border-left-color: white !important;
    border-top-color: white !important;
}

.left_bottom_white {
    border-left-color: white !important;
    border-bottom-color: white !important;
}

/* lightblue borders */
.right_top_lightblue {
    border-right-color: #709DCD !important;
    border-top-color: #709DCD !important;
}

.right_bottom_lightblue {
    border-right-color: #709DCD !important;
    border-bottom-color: #709DCD !important;
}

.left_top_lightblue {
    border-left-color: #709DCD !important;
    border-top-color: #709DCD !important;
}

.left_bottom_lightblue {
    border-left-color: #709DCD !important;
    border-bottom-color: #709DCD !important;
}

/* grey borders */
.right_top_grey {
    border-right-color: #3C3C3B !important;
    border-top-color: #3C3C3B !important;
}

.right_bottom_grey {
    border-right-color: #3C3C3B !important;
    border-bottom-color: #3C3C3B !important;
}

.left_top_grey {
    border-left-color: #3C3C3B !important;
    border-top-color: #3C3C3B !important;
}

.left_bottom_grey {
    border-left-color: #3C3C3B !important;
    border-bottom-color: #3C3C3B !important;
}


/* border half width */
.triagles_effects .half_right_blue {
    width: 100%;
    border-right-color: #709DCD !important;
    height: 49vw;
    border-width: 49vw;
    float: left;
}

.triagles_effects .half_right_lightblue {
    width: 100%;
    border-right-color: #573D90 !important;
    height: 50vw;
    border-width: 50vw;
    float: left;
}

.triagles_effects .half_left_lightblue {
    width: 100%;
    border-left-color: #573D90 !important;
    height: 50vw;
    border-width: 40vw;
    float: left;
}
.map_effect{
    left: 0;
    position: relative;
    text-align: left;
	transform: translateY(-100%);
	z-index: 9999 !important;
}
.map_effect div{
    float: left !important;
}


.onmobile {
    display: none
}
.visibleonmobile {
    display: none !important
}

@media (max-width: 768px) {
    .triagles_effects {}

    .triagles_effects div {
        height: 25vw;
        width: 25vw;
        border: solid transparent;
        border-width: 12.5vw;
    }

    .ondesktop {
        display: none !important
    }

    .onmobile {
        display: inline-block;
        width: 100vw !important;
    }
    .visibleonmobile {
        display: block !important
    }
    .visibleondesktop {
        display: none !important
    }
}


/* section 2 animation */
.section_effect_left {
    top: -8vw;
    left: 0;
    right: unset;
}

.section_effect_right {
    top: -8vw;
    right: 0;
}

.half_effect {
    top: -25vw;
    z-index: -1;
    left: 0;
    right: unset;
}

.half_effect_quatre {
        top: -6.25vw;
    z-index: -1;
    left: 0;
    right: unset;
}

.half_effect_quatre div {
    height: 25vw !important;
    border-width: 25vw !important;
}

.middle_effect {
    top: -60vw;
    z-index: -1;
    left: 0;
    right: unset;
}

.full__width_effect {
    width: 100vw;
}

.top__corner {
    position: absolute;
    top: 0;
    width: 100vw;
}

.top__corner div {
    float: left;
}

.right_side_effect {
    width: 100%;
    top: -6.25vw;
}

@media (max-width: 992px) {

    .half_effect_quatre div {
        height: 50vw !important;
        border-width: 50vw !important;
    }

}

@media (max-width: 768px) {

    .half_effect {
        overflow: hidden;
        width: 100%
    }

    .half_effect div {
        border-width: 200vw !important;
    }

    .middle_effect {
        top: -150vw;
    }

    .middle_effect div {
        border-width: 150vw !important
    }
}


/*--------------------------------------------------------------
# full Navigation Menu
--------------------------------------------------------------*/

.fullnav {
    position: fixed;
    background: #573d90;
    top: 0;
    left: 0;
    width: 100%;
    height: 0%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .35s, visibility .35s, height .35s;
    transition: opacity .35s, visibility .35s, height .35s;
    overflow: hidden;
}

.fullnav.open {
    opacity: 1;
    visibility: visible;
    height: 100%;
    z-index: 99;
}

.fullnav.open li {
    -webkit-animation: fadeInRight .5s ease forwards;
    animation: fadeInRight .5s ease forwards;
    -webkit-animation-delay: .35s;
    animation-delay: .35s;
}

.fullnav.open li:nth-of-type(2) {
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.fullnav.open li:nth-of-type(3) {
    -webkit-animation-delay: .45s;
    animation-delay: .45s;
}

.fullnav.open li:nth-of-type(4) {
    -webkit-animation-delay: .50s;
    animation-delay: .50s;
}

.fullnav nav {
    position: relative;
    height: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 60px;
    font-weight: 500;
    text-align: center;
}

.fullnav ul {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    display: inline-block;
    position: relative;
    height: auto;
}

.fullnav ul li {
    display: block;
    height: 25%;
    height: calc(100% / 4);
    min-height: 50px;
    position: relative;
    opacity: 0;
}

.fullnav ul li a {
    display: block;
    position: relative;
    color: #FFF;
    text-decoration: none;
    overflow: hidden;
    font-family: "TheSerif", serif;
}

.fullnav ul li a:hover {
    opacity: .7;
}

.fullnav nav.fullnavSubMenu {
    display: none;
}

.fullnav nav.fullnavSubMenu.open {
    display: flex;
	flex-direction: column;
    top: 55%;
	transform: translateY(-50%);
}

.fullnav button.sub-menu-button {
    display: none;
	font-size: 16px;
	color: rgba(255,255,255,0.7);
	background: transparent;
	border: none !important;
	position: absolute;
	left: 0;
	bottom: 25%;
	z-index: 10;
	width: 100%;
	text-align: center;
	transition: all 250ms ease-in-out;
}

.fullnav button.sub-menu-button svg {
    transition: all 250ms ease-in-out;
	height: auto !important;
}

.fullnav nav.fullnavSubMenu ul li {
    font-size: 20px;
	height: initial;
	min-height: initial;
	margin-bottom: 5px;
}

.fullnav nav.fullnavSubMenuli.open li {
    -webkit-animation: fadeInRight .5s ease forwards;
    animation: fadeInRight .5s ease forwards;
    -webkit-animation-delay: .35s;
    animation-delay: .35s;
}

.fullnav nav.fullnavSubMenuli.open li:nth-of-type(2) {
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.fullnav nav.fullnavSubMenuli.open li:nth-of-type(3) {
    -webkit-animation-delay: .45s;
    animation-delay: .45s;
}

.fullnav nav.fullnavSubMenuli.open li:nth-of-type(4) {
    -webkit-animation-delay: .50s;
    animation-delay: .50s;
}

.fullnav nav.fullnavSubMenuli.open li:nth-of-type(5) {
    -webkit-animation-delay: .50s;
    animation-delay: .55s;
}

.triagles_menuhover{
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: -1;
    display: none;
}
.menu_active .triagles_menuhover{
    display: block;
}
.triagles_menuhover [data-aos=flip-right].aos-animate {
    transform: rotateY(90deg);
}
.menu_active .triagles_menuhover [data-aos=flip-right].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

.menu_active .get-menu-btn,
.menu_active .toggle__dark,
.menu_active .logo,
.menu_active .floating__menu {
    z-index: 999;
}


.menu_active .floating__menu .menu_link_text {
    display: block;
    position: relative;
    left: 10px;
    padding-right: 10px;
    transition: 0.3s;
    visibility: visible;
    opacity: 1;
}

.menu_active .menu_links .menu_link:hover .menu_link_text {
    display: block;
    left: 10px;
}

/*
.menu_active .menu_links .menu_link:hover:before {
    content: " ";
    width: calc(100% + 8px);
}
*/

/*.fullnav ul li a:hover:after, .fullnav ul li a:focus:after, .fullnav ul li a:active:after {
  width: 100%;
}
.fullnav ul li a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 3px;
  background: #FFF;
  -webkit-transition: .35s;
  transition: .35s;
}*/

@media screen and (max-width: 768px) {
	.fullnav nav {
		font-size: 22px;
	}

	.fullnav ul li {
		height: initial;
		height: initial;
		min-height: initial;
		margin-bottom: 0px;
	}
	
	.fullnav button.sub-menu-button {
		display: block;
	}
}


@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        left: 20%;
    }

    100% {
        opacity: 1;
        left: 0;
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        left: 20%;
    }

    100% {
        opacity: 1;
        left: 0;
    }
}


/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.big-header .n2-ss-slide{
  	height: 100vh;
}
.big-header .background_slider{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
}
.small-header .background_slider{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.small-header .background_slider .n2-ss-slider {
	height: 75vh;
}

@media (max-width: 768px) {
	#hero.big-header {
		height: 80vh;
		overflow: hidden;
	}
	
	.big-header .n2-ss-slide{
		height: 80vh;
		overflow: hidden;
	}
	.big-header .background_slider{
		height: 80vh;
		overflow: hidden;
	}
}

#hero {
    width: 100%;
    height: 100vh;
/*     background: url("../img/background.png") top center; */
    background-size: cover;
    position: relative;
	overflow: hidden !important;
}

#hero.smaller_hero {
    width: 100%;
    height: 75vh;
/*     background: url("../img/background2.png") top center; */
    background-size: cover;
    position: relative;
}
#hero.smaller_hero5 {
    width: 100%;
    height: 75vh;
    background: url("../img/background_p5.png") top center;
    background-size: cover;
    position: relative;
}
@media (max-width: 768px) {
	#hero.smaller_hero5 {
        background-position: -200px;
    }
    #hero.smaller_hero5 .model_section {
        top: -100px !important;
        left: 0 !important;
    }
    #hero {
        overflow: hidden !important;
    }
	
	#hero .overlay {
		display: none;
	}
}

#hero .container-full {
    position: relative;
    padding-top: 0px;
    text-align: center;
}

#hero .font_block {
    z-index: 99;
    width: 100%;
    max-width: 1080px;
}

#hero h1 {
    margin: 0;
    font-size: 120px;
    font-weight: 500;
    line-height: 1;
    color: #fff;
}

@media (max-width: 1024px) {
    #hero {
        background-attachment: fixed;
    }

    #hero h1 {
        font-size: 80px;
    }
}

@media (max-width: 768px) {
    #hero h1 {
        font-size: 60px;
    }
	
	#hero .font_block {
		width: 100%;
	}
}

/*--------------------------------------------------------------
# Sections General
--------------------------------------------------------------*/
section {
    padding: 80px 0;
    /*
  overflow: hidden;
  */
}

.section-title {
    padding-bottom: 40px;
}

.section-title h2 {
    font-size: 14px;
    font-weight: 500;
    padding: 0;
    line-height: 1px;
    margin: 0 0 5px 0;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #aaaaaa;
}

.section-title h2::after {
    /*content: "";
  width: 120px;
  height: 1px;
  display: inline-block;
  background: #ffde9e;
  margin: 4px 10px;*/
}

.section-title p {
    margin: 0;
    margin: 0;
    font-size: 36px;
    font-weight: 700;
    text-transform: uppercase;
    color: #151515;
}

@media (max-width: 768px) {
	
	section {
		padding: 40px 0;
		/*
	  overflow: hidden;
	  */
	}
	
}

/*--------------------------------------------------------------
# Packages
--------------------------------------------------------------*/
.card_effect {
    background: #3C3C3B;
    box-shadow: 0px 4px 17px rgb(0 0 0 / 25%);
    border-radius: 20px;
    border: 0;
    /*margin: 10px;*/
	height: 100%;
}
.wetter_page .card_effect {
    margin: 20px;
	height: initial;
}

.packages p {
    /* font-size: 18px; */
}



.packages .card_content{
    padding: 65px 45px 45px 44px;
	height: 100%;
}

@media screen and (max-width: 768px) {
    .packages .card_content{
        padding: 55px 30px 30px 35px;
        height: 100%;
    }
    
    .packages .mb-5{
		margin-bottom: 5rem !important;
	}
	
	.packages{
		margin-bottom: -3.5rem !important;
	}
}

.packages{
		margin-bottom: -1.5rem !important;
	}

/*.card_effect:before {
    content: " ";
    background: url(../img/background_effect.png);
    background-position: 0px 100px;
    height: 50px;
    width: 100%;
    display: block;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}
*/
.card_effect.pos1:before {
    background-position: 0px 100px;
}

.card_effect.pos2:before {
    background-position: 100px 75px;
}

.card_effect.pos3:before {
    background-position: 0px 100px;
}

.card_effect.pos4:before {
    background-position: 0px 100px;
}

.card_effect.pos5:before {
    background-position: 100px 50px;
}

.card-button {
    position: relative;
}

.card-button .btn {
    position: absolute;
    top: -23px;
    right: 20px;
}

/*--------------------------------------------------------------
# column in 2
--------------------------------------------------------------*/
.column_in_2 .content h3 {
    font-size: 28px;
}

.column_in_2 .content {
    list-style: none;
    padding: 0;
    display: flex;
    align-items: inherit;
    justify-content: center;

    flex-direction: column;
    color: white;
}

.column_in_2 .content p:last-child {
    margin-bottom: 0;
}

#packages div.row.max_90_d:nth-child(2) {
	margin-bottom: -3rem !important;
}


/*--------------------------------------------------------------
# SearchBox
--------------------------------------------------------------*/
.searchBox {
    position: relative;
}

.searchbox-changes, .searchbox-changes > div {
	padding-right: 0 !important;
}

.card_searchbox {
    background: #3C3C3B;
    box-shadow: 0px 4px 17px rgb(0 0 0 / 25%);
    border-radius: 20px;
    padding: 25px;
    flex-direction: row;
    max-width: 90vw;
    margin: auto;
}

.searchBox input,
.searchBox select {
    border-radius: 20px !important;
    height: 55px;
    margin-top: -4px;
    background: white !important;
}
.bi-calendar-date{
    z-index: 2;
}
.searchBox .input-group-text {
    border-radius: 20px;
    background: white;
    position: absolute;
    right: 0;
    border: 0;
    height: 100%;
    font-size: 20px;
}
.btn-searchbox {
	margin-right: 0 !important;
}

/*--------------------------------------------------------------
# Highlights
--------------------------------------------------------------*/
.highlights {
    position: relative;
}

/*.highlights:before {
  content: "Highlights.";
    color: rgba(112, 157, 205, 0.2);
    text-align: center;
    font-size: 10vw;
    position: absolute;
    top: 0;
    left: 10%;
    z-index: 9
}
*/
.highlights .highlight {

    border-radius: 20px;
    box-shadow: 0px 4px 17px rgb(0 0 0 / 25%);
    margin-left: 0px;
    margin-right: 0;
    margin-bottom: 30px;
    margin-top: 0px;
    height: 100%;
}





.highlights .highlight .highlight-img {
    position: relative;
    overflow: hidden;

    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.highlights .highlight .highlight-img {
    position: relative;
	height: 0;
	padding-top: 56.25%;
}

.highlights .highlight .highlight-img img {
    position: absolute;
	top: 0;
	left: 0;
	min-width: 100%;
	min-height: 100%;
}

.highlight-img:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    opacity: 0.8;
    background: linear-gradient(1deg, rgba(60, 60, 59, 0.78) -5.97%, rgba(60, 60, 59, 0) 100%);
}

.highlights .highlight .title {
    position: absolute;
    left: 0;
    bottom: 15px;
    right: 0;
    transition: ease-in-out 0.3s;
    z-index: 1;
    color: white;
    padding-left: 45px;
}

.highlights .highlight .time {
    position: absolute;
    background: rgb(60 60 59 / 60%);
    top: 15px;
    right: 15px;
    border: 2px solid white;
    color: white;
    padding: 0px 10px;
    border-radius: 25px;
}

.highlights .highlight .highlight-info {
    padding: 30px 30px 35px;
    background: #3C3C3B;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding-top: 30px;
    padding-right: 54px;
    padding-bottom: 20px;
    padding-left: 45px;
    /* font-size: 18px; */
}

.highlights.events .highlights-slider__ {
	overflow: visible;
}

.highlights.events .highlights-slider__ .highlight {
    height: 100%;
}

.highlights.events .highlights-slider__ .event_block {
    margin-bottom: 4rem !important;
	padding: 15px !important;
}

.highlights.events .highlight .highlight-info {
        padding-top: 30px;
    padding-right: 25px;
    padding-bottom: 65px;
    padding-left: 25px;
    /* font-size: 18px; */
}
.highlights.events .highlight .title{
    bottom: 25px;
    right: 0;
    padding-left: 25px;
}

.highlights .highlight .highlight-info h4 {
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 18px;
    color: #151515;
}

.highlights .highlight .highlight-info span {
    display: block;
    font-size: 15px;
    font-weight: 400;
    color: #ffffff;
}

.highlights .highlight .highlight-info p {
    /* font-size: 18px; */
    line-height: 26px;
    color: #fff;
}

.highlights .highlight .highlight-button {
    position: relative;
}

.highlights .highlight .highlight-button .btn {
    position: absolute;
    top: -23px;
    right: 20px;
}

.bildslider_ {
    overflow: hidden;
}

.bildslider_ .bildslider {
    /*position: relative;*/
}

.swipe_arrows {
    position: absolute;
    top: -80px;
    right: 30px;
    z-index: 99;
    display: flex;
    flex-direction: row-reverse;
}

.bildslider_ .swipe_arrows {
    top: 10px;
}

.btn-primary {
    color: #fff;
    background-color: #709DCD;
    border-color: #709DCD;
}
.b_next{
    height: 46px;
    width: 46px;
    background-image: url(../img/icons/arrow_right.png);
}
.b_prev{
    height: 46px;
    width: 46px;
    background-image: url(../img/icons/arrow_left.png);
    right: 75px !important;
}
.modal .modal-content{
    padding: 0;
    background: none;
    border: 0;
}
.modal .highlights{
    max-width: 640px !important;
}
.close__btn{
    position: absolute;
    z-index: 99;
    background: #3C3C3B;
    border: 0;
    color: white;
    font-size: 38px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    right: 25px;
    top: 25px;
	padding: 0;
}

.close__btn span{
    display: inline;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 1;
}


.button-next {
    position: relative;
    width: 60px;
    height: 60px;
    background: url(../img/icons/arrow-right.png) no-repeat;
    background-size: 60px;
}

.button-prev {
    position: relative;
    width: 60px;
    height: 60px;

    background: url(../img/icons/arrow-left.png) no-repeat;
    background-size: 60px;
}

@media (min-width: 768px) and (max-width: 1600px){
	.highlights .swiper-slide:first-child{
    	padding-left: 15px;
    }
}

@media (max-width: 768px) {

	.bildslider_ .max_90_d .row .title {
		padding-right: 85px;
	}

    .swipe_arrows {
        right: 0px;
        top: -60px;
    }

    .bildslider_ .swipe_arrows {
        top: 0;
    }

    .button-next,
    .button-prev {
        width: 35px;
        height: 35px;
        background-size: 35px;
    }

    .highlights .swiper-slide:first-child,
    .bildslider_ .swiper-slide:first-child {
        margin-left: unset;
    }
    .highlights .swiper-slide,
    .bildslider_ .swiper-slide {
        padding: 0px 20px 20px 20px;
    }

    .highlights .highlight .highlight-info {
        padding-right: 25px;
        padding-left: 25px;
    }
    .highlights .highlight .title {
        padding-left: 25px;
    }
}

/*--------------------------------------------------------------
# Reviews
--------------------------------------------------------------*/

.review-slider {
	padding-top: 36px;
}

.review {
	border-radius: 20px !important;
}

.review .quote {
	position: absolute;
	left: 45px;
	transform: translate(0, -50%);
	z-index: 9999;
}

.review .quote .icon {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: #3BB390;
	position: relative;
}

.review .quote .icon img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.review small.source {
	font-size: 14px !important;
	color: #ffffff !important;
}

.review .highlight-info {
	padding-top: 81px !important;
	border-radius: 20px;
}


@media (max-width: 768px) {
	.review .quote {
		left: 25px;
	}
}

/*--------------------------------------------------------------
# Grid lightbox
--------------------------------------------------------------*/

.enlarge,
.enlarge2,
.packages .wp-block-image a{
    transition: 0.3s;
    position: relative;
    display: block;
    overflow: hidden;
    z-index: 1;
    border-radius: 16px;
    filter: drop-shadow(0px 3.3px 14px rgba(0, 0, 0, 0.25));
}

.packages .wp-block-image a{
	margin-top: 15px;
}

.enlarge:before,
.enlarge2:before,
.packages .wp-block-image a:before{
    content: "";
    background: rgb(59 179 144 / 82%);
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transition: all ease-in-out 0.3s;
    z-index: 2;
    opacity: 0;
    background-image: url(../img/icons/enlarge.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 50px;
}

.enlarge:hover::before,
.enlarge2:hover::before,
.packages .wp-block-image a:hover::before{
    opacity: 1;
}

.glightbox-clean .gnext, .glightbox-clean .gprev {
  	top: 50% !important;
  	transform: translateY(-50%) !important;
	background-color: rgba(0,0,0,0);
}

.packages .n2-section-smartslider .n2-ss-align {
	margin-top: 1rem;
	box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
	-webkit-box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
	-moz-box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
	-o-box-shadow: 0 4px 17px 0 rgba(0,0,0,0.25);
}

.packages .n2-ss-slider [data-force-pointer="zoom-in"], .packages .n2-ss-slider [data-force-pointer="zoom-in"] * {
	cursor: pointer !important;
}

.packages .n2-ss-slide.n2-ss-slide-active:before {
  	content: "" !important;
  	background: rgb(59 179 144 / 82%) !important;
  	position: absolute !important;
  	left: 0 !important;
  	right: 0 !important;
  	top: 0 !important;
  	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
  	z-index: 9999 !important;
  	opacity: 0 !important;
	display: block !important;
	border-radius: 16px !important;
	transition: all ease-in-out 0.3s !important;
  	background-image: url(../img/icons/enlarge.png) !important;
  	background-repeat: no-repeat !important;
  	background-position: center !important;
  	background-size: 50px !important;
	cursor: pointer !important;
}

.packages .n2-ss-slide.n2-ss-slide-active:hover:before {
  	opacity: 1 !important;
}

.litebox-overlay {
	background: rgba(0,0,0,.92) !important;
}

.litebox-overlay .litebox-nav {
	margin-top: 0 !important;
	transform: translateY(-50%) !important;
	opacity: 1 !important;
}

.litebox-overlay .litebox-close {
	background: url('/wp-content/themes/engstligenalp/assets/img/icons/lightbox-close.png') !important;
	background-position: center !important;
	background-size: contain !important;
	background-repeat: no-repeat !important;
	width: 18px !important;
	height: 18px !important;
	top: 23.5px !important;
	right: 28.5px !important;
	opacity: 0.7 !important;
}

@media only screen and (max-width: 479px) {
	.litebox-overlay .litebox-close {
	  display: block !important;
	}
}

.litebox-overlay .litebox-prev {
	background: url('/wp-content/themes/engstligenalp/assets/img/icons/lightbox-previous.png') !important;
	background-position: center !important;
	background-size: auto 25px !important;
	background-repeat: no-repeat !important;
	width: 40px !important;
	height: 50px !important;
	left: 30px !important;
}

.litebox-overlay .litebox-next {
	background: url('/wp-content/themes/engstligenalp/assets/img/icons/lightbox-next.png') !important;
	background-position: center !important;
	background-size: auto 25px !important;
	background-repeat: no-repeat !important;
	width: 40px !important;
	height: 50px !important;
	right: 30px !important;
}

/*--------------------------------------------------------------
# Sponsoren
--------------------------------------------------------------*/

.item_sponsoren {
    background: #ffffff;
    display: block;
    text-align: center;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    border-radius: 16px;
}

/*--------------------------------------------------------------
# team
--------------------------------------------------------------*/

.team .img_grid {
    transition: 0.3s;
    position: relative;
    display: block;
    overflow: hidden;
    z-index: 1;
    border-radius: 16px;
    filter: drop-shadow(0px 3.3px 14px rgba(0, 0, 0, 0.25));
}

.team .team_info {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    padding: 25px 35px;
    background: linear-gradient(358deg, rgba(60, 60, 59, 0.78) -5%, rgb(60 60 59 / 0%) 50%);
    display: flex;
    flex-direction: column;
    justify-content: end;
	min-height: 60px;
}

.team .team_info:hover {
    /*background: linear-gradient(358deg, rgb(34 34 32) -5%, rgb(60 60 59 / 0%) 50%);*/
    /*padding-top: 50%;*/
}
.team .team_info h2 {
    margin: 0;
}


/*--------------------------------------------------------------
# full images grid
--------------------------------------------------------------*/

.full_grid .img_grid {
    transition: 0.3s;
    position: relative;
    display: block;
    overflow: hidden;
    z-index: 1;
    filter: drop-shadow(0px 3.3px 14px rgba(0, 0, 0, 0.25));
}

.full_grid .title_info {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    padding: 35px;
    /*background: linear-gradient(358deg, rgba(60, 60, 59, 0.78) -5%, rgb(60 60 59 / 0%) 50%);*/
    display: flex;
    flex-direction: column;
    justify-content: end;
    pointer-events: none;
}

.full_grid .title_info:hover {
    /*background: linear-gradient(358deg, rgb(34 34 32) -5%, rgb(60 60 59 / 0%) 50%);*/
    padding-top: 50%;
}


@media (min-width: 768px) {
    .text-r h2, .text-r h3{
        text-align: right;
    }
}

/*--------------------------------------------------------------
# max_grid images grid
--------------------------------------------------------------*/

.max_grid .img_grid {
    transition: 0.3s;
    position: relative;
    display: block;
    z-index: 1;
    filter: drop-shadow(0px 3.3px 14px rgba(0, 0, 0, 0.25));
    border-radius: 16px;
}

.max_grid .img_grid img {
    border-radius: 16px;
}

.max_grid .title_info {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    padding: 20px 30px;
    /*background: linear-gradient(358deg, rgba(60, 60, 59, 0.78) -5%, rgb(60 60 59 / 0%) 50%);*/
    display: flex;
    flex-direction: column;
    justify-content: end;
    border-radius: 16px;
    pointer-events: none;
}

.max_grid .title_info:hover {
    /*background: linear-gradient(358deg, rgb(34 34 32) -5%, rgb(60 60 59 / 0%) 50%);*/
    padding-top: 50%;
}



/*--------------------------------------------------------------
# Frequently Asked Questions
--------------------------------------------------------------*/
.faq .faq-list {
    padding: 0px;
}

/*.faq .faq_item:before{
    content: " ";
    background: url(../img/background_effect_reverse.png);
    background-position: 150px 0px;
    background-size: 100px;
    height: 100%;
    width: 40px;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}*/
.faq .faq_item>div {
    margin-top: 20px;
    max-width: 88%;
}

.faq .faq-list>ul {
    padding: 0;
    list-style: none;
}

.faq .faq-list>ul>li+li {
    margin-top: 15px;
}

.faq .faq-list>ul>li {
    padding: 40px 40px 20px 40px;
    background: #3C3C3B;
    position: relative;
    box-shadow: 0px 3.32px 14px rgb(0 0 0 / 25%);
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 25px;
}

.faq .faq-list a{
    display: block;
    position: relative;
    font-size: 22px;
    line-height: 24px;
    font-weight: 600;
    outline: none;
    cursor: pointer;
    padding-right: 50px;
    margin-bottom: 20px;
}

.faq .faq-list div[data-bs-toggle="collapse"]{
    display: block;
    position: relative;
    font-size: 22px;
    line-height: 24px;
    font-weight: 600;
    outline: none;
    cursor: pointer;
    padding-right: 50px;
    margin-bottom: 20px;
    margin-top: 0px;
	max-width: 100%;
}

.faq .faq-list p a{
    display: inline-block;
	font-size: inherit;
	padding-right: 0px;
}

.faq .faq-list a.btn{
	display: inline-block;
	margin-top: 20px !important;
}

.faq .faq-list .icon-show,
.faq .faq-list .icon-close {
    font-size: 23px;
    position: absolute;
    right: -10px;
    top: -10px;
    color: #3BB390;
    background: #fff;
    padding: 10px;
    border-radius: 50%;
}

.faq .faq-list p {
    margin-bottom: 0;
    padding: 10px 0 0 0;
}

.faq .faq-list p:first-child {
    padding: 0 0 0 0;
}

.faq .faq-list .icon-show {
    display: none;
}

.faq .faq-list a.collapsed {
    color: #ffffff;
}

.faq.betriebsinfo .faq-list a.collapsed {
    margin-bottom: 0;
}

.faq .faq-list a.collapsed:hover {
    color: #ffffff;
}

.faq .faq-list a.collapsed .icon-show, .faq .faq-list div.collapsed .icon-show {
    display: inline-block;
}

.faq .faq-list a.collapsed .icon-close, .faq .faq-list div.collapsed .icon-close {
    display: none;
}

@media (max-width: 1200px) {
    .faq .faq-list {
        padding: 0;
    }
}
@media (max-width: 700px) {
    .faq .faq_item div {
        margin-top: 20px;
		max-width: 100%;
    }
	.faq .faq-list div[data-bs-toggle="collapse"]{
		font-size: 18px !important;
	}
}





/*--------------------------------------------------------------
# footer
--------------------------------------------------------------*/
.image_background {
	margin-top: 80px !important;
}

#hero + section + .image_background {
	margin-top: 0px !important;
}


@media (max-width: 768px) {
	.image_background {
		/*margin-top: 30px !important;*/
		margin-top: 0px !important;
	}
	.shaper.cta + .image_background {
		margin-top: 10px !important;
	}
}

#footer {
    color: #000;
    font-size: 18px;
    position: relative;
    height: calc(100vw - 16.66666vw);
}

#footer .triagles_effects {
	z-index: -100 !important;
}

#footer .full__width_effect {
    top: 0;
}

#footer .container {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

#footer .container .row {
    height: 100%;
    align-items: center;
}

#footer .logo img {
    max-height: 45px;
}

#footer .card__foot {
	padding-left: 0;
	padding-right: 0;
}

#footer .card {
    filter: drop-shadow(0px 4px 25px rgba(0, 0, 0, 0.25));
    border-radius: 16px;
	padding: 6rem 3rem !important;
}

@media (max-width: 768px) {
	#footer .card {
		padding: 4rem 2rem !important;
	}
}

#footer .social-links a {
    font-size: 27px;
    display: inline-block;
    background: #573D90;
    color: #fff;
    line-height: 1;
    padding: 12px 0;
    margin: 0 5px;
    border-radius: 25px;
    text-align: center;
    width: 50px;
    height: 50px;
    transition: 0.3s;
}

#footer .social-links a img {
    vertical-align: initial;
}

#footer .footer-contact a {
    color: black;
}

#footer .social-links a:hover {
    background: #2a3039;
    color: #ffffff;
    text-decoration: none;
}

#footer .footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: inline-flex;
}

#footer .footer-links ul li {
    padding: 15px;
    display: flex;
    align-items: center;
    position: relative;
}

#footer .footer-links ul li:after {
    content: "|";
    position: absolute;
    right: 0;
}

#footer .footer-links ul li:last-child:after {
    content: none;
}

#footer .footer-links ul a {
    color: #000;
    transition: 0.3s;
    display: inline-block;
    line-height: 1;
}

#footer .footer-links ul a:hover {
    color: #2a3039;
}

#footer .copyright {
    text-align: center;
}

#footer .copyright a {
    color: black
}
/*
#footer .partners {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 80%;
    padding: 25px 0 0 0;
    margin: auto;
}
#footer .partners a {
    width: 25%;
    text-align: center;
    margin: auto;
}

#footer .partners img{
    width: 25%;
    text-align: center;
    margin: auto;
}

#footer .partners a img{
    width: 100%;
}
*/
#footer .partners {
    display: flex;
    flex-wrap: wrap; /* Erlaubt das Umbrechen auf mehrere Zeilen */
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 25px 0 0 0;
    margin: auto;
}

#footer .partners a, 
#footer .partners img {
    width: 25%; /* Vergrößert die Logos, sodass sie bei fünf pro Zeile passen */
    margin: 10px; /* Abstand zwischen den Logos */
}

#footer .partners a img {
    width: 100%;
    height: auto; /* Beibehaltung des Seitenverhältnisses */
}


@media (max-width: 768px) {
    #footer .footer-links ul {
		flex-direction: column;
		margin-bottom: 15px;
	}
	
	#footer .footer-links ul li {
		padding: 0px;
		display: initial;
	}

	#footer .footer-links ul li:after {
		display: none;
	}
	
    #footer .footer-links ul a {
        color: #000;
        transition: 0.3s;
        display: inline-block;
        line-height: 1;
        font-size: 14px !important;
    }
	
	#footer {
		font-size: 16px;
	}
}



.magic {
    z-index: 99;
    position: absolute;
    display: inline-block;
    border: 8.33333vw solid transparent;
    height: 16.6667vw;
    width: 16.6667vw;
}

.magic.to_left {
    left: 8.33333vw;
}

.magic.to_left2 {
    left: 16.66666vw;
}

.magic.to_right {
    right: 8.33333vw;
}

.magic.to_right2 {
    right: 16.66666vw;
}

@media (min-width: 1920px) {
	.column_in_2 .magic {
		height: 340px !important;
		width: 340px !important;
		border: 170px solid transparent;
	}
	
	.column_in_2 .magic.to_right {
		right: 170px;
	}
	
	.column_in_2 .magic.magic.to_left2 {
		left: 170px;
	}
}


@media (max-width: 768px) {

    .magic {
        z-index: 99;
        position: absolute;
        display: inline-block;
        border: 12.5vw solid transparent;
        height: 12.5vw;
        width: 12.5vw;
    }

    .magic.to_left {
        left: 12.5vw;
    }

    .magic.to_left2 {
        left: 16.66666vw;
    }

    .magic.to_right {
        right: 12.5vw;
    }

    .magic.to_right2 {
        right: 16.66666vw;
    }
}





.magic.to_top {
    top: 10%;
}

.magic.to_bottom {
    bottom: 0;
}

.z-before {
    z-index: -1 !important;
}

@media (max-width: 768px) {
	.magic.to_bottom {
		bottom: 20%;
	}
}


/*
  floating card
*/
.floating_card {
	position: relative;
    z-index: 9;
}

@media (max-width: 768px) {
	.floating_card {
	    bottom: 70px;    
    }
}

.img-box-r .img-fluid, .img-box-l .img-fluid{
	max-width: none;
    width: 110%;
}

.img-box-r > .container-full > .row, .img-box-l > .container-full > .row{
	align-items: center;
}

.img-box-l .img-fluid{
	margin-left: -10%;
}



@media (max-width: 768px) {
    .floating_card {
		bottom: 0px;
	}

}

.floating_card .card {

    background: #3C3C3B;
    border-radius: 20px;
    box-shadow: 0px 4px 17px rgba(0, 0, 0, 0.25);
}


@media (max-width: 993px) {
    .floating_card {
        position: relative;
    }

}

/*
* Kontakt
*
**/
.kontakt_form {
    background: white;
    padding: 60px 40px;
    /*filter: drop-shadow(0px 4px 25px rgba(0, 0, 0, 0.25));*/
    border-radius: 16px;
    color: black;
    border-radius: 10px;
        max-width: 1200px;
    margin: auto !important;
}
.form-control:focus{
    background: white;
    border-color: rgb(33 37 41 / 50%);
    outline: 0;
    color: #3C3C3B;
    box-shadow: 0 0 0 0.25rem rgb(255 255 255 / 10%);
}
.btn:focus{
    box-shadow: 0 0 0 0.25rem rgb(255 255 255 / 10%);
}
/*
.Kontakt p br {
    display: none;
}

.Kontakt > p {
    display: none;
}

.Kontakt .container > p {
	display: none;
}

.Kontakt .container .kontakt_form > p {
	display: none;	
}
*/
.Kontakt .form-control {
        padding: 18px 28px;
    border: 1px solid #575757;
    font-size: 19px;
    border-radius: 20px;
}

.Kontakt .form-control:focus {
    color: #212529;
    background-color: #fff;
    border-color: #000000;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(157 157 157 / 25%);
}

@media (max-width: 993px) {
    .kontakt_form {
        padding: 30px 20px;
    }

}


/*
* newsletter
*
**/

.newsletter_form input[type=checkbox] {
	margin: 0px 10px 4px 0px;
}

.newsletter_form input.form-control {
    background: #3C3C3B;
    box-shadow: 0px 0px 24px rgb(0 0 0 / 10%);
    border-radius: 20px;
    border: 0;
    padding: 15px 20px;
    color: white;
}

.newsletter_form .form-control:focus {
    color: #fff;
    border-color: #000000;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(157 157 157 / 25%);
}

.newsletter_form .form-check-input[type=checkbox] {
    padding: 15px;
    margin-right: 10px;
    margin-top: -5px;
    background-color: #3c3c3b;
    border: 0 !important;
    box-shadow: 0px 0px 24px rgb(0 0 0 / 10%)
}
@media (max-width: 993px) {
.newsletter_form .form-check-input[type=checkbox] {
        margin-top: 1px;
}
.form-check-label {
            font-size: 13px;
}

}


/*
* newsletter
*
**/
.video:before {
    content: " ";
    position: absolute;
    top: 50%;
    left: 50%;
    right: 0;
    bottom: 0;
    background: url(../img/icons/play.png);
    background-size: 80px;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #3C3C3B;
    box-shadow: 0px 0px 20px rgb(0 0 0 / 25%);
    transform: translate(-50%, -50%);
    width: 100px;
    border-radius: 50%;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .3s
}

.video:hover:before {
    content: " ";
    transform: translate(-50%, -50%) scale(1.2);
}

@media (max-width: 768px) {
    .video:before {
        content: " ";
        background-size: 40px;
        width: 50px;
        height: 50px;
    }

}

/*
** shaper
**/
.shaper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
}

.shaper.cta {
	min-height: 49.999999999999999vw;
}

.shaper .shape {
    top: 0;
    z-index: -1;
    width: 67.66666vw !important;
}
.shaper .heading{
    font-size: 4.5rem;
	width:70%;
}

.cta .shaper__text {
	font-size: 72px !important;	
}

@media screen and (max-width: 768px) {
	.cta .container-full {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		margin-bottom: 0 !important;
	}
	
	.cta a.btn {
		margin: 0 !important;
	}
}

@media (max-width: 980px) {
	.cta .shaper__text {
		font-size: 56px !important;		
	}	
}

@media (max-width: 768px) {
	.cta .shaper__text {
		font-size: 40px !important;		
	}	
}

@media (max-width: 1300px) {
    .shaper .heading{
        font-size: 3rem;
		width:80%;
    }

}
@media (max-width: 900px) {
    .shaper {
        flex-direction: column-reverse;
    }
    .shaper .shape {
        width: 100vw !important;
    }
    .shaper .triagles_effects {
        position: relative;
    }
	.shaper .heading{
        font-size: 2.5rem;
		width:100%;
    }

}

/*
** footer__backround
**/
.footer__backround {
    position: relative;
}

@media (max-width: 768px) {
    .card__foot {
        height: calc(25vw * 8);
        align-items: center;
        justify-content: center;
        display: flex;
    }
}





.algolia-autocomplete {
    width: 100%;
}

.algolia-autocomplete .aa-input,
.algolia-autocomplete .aa-hint {
    width: 100%;
}

.algolia-autocomplete .aa-hint {
    color: #999;
}

.algolia-autocomplete .aa-dropdown-menu {
    width: 100%;
    background-color: #fff;
    border: 1px solid #999;
    border-top: none;
}

.algolia-autocomplete .aa-dropdown-menu .aa-suggestion {
    cursor: pointer;
    padding: 5px 4px;
}

.algolia-autocomplete .aa-dropdown-menu .aa-suggestion.aa-cursor {
    background-color: #b2d7ff;
}

.algolia-autocomplete .aa-dropdown-menu .aa-suggestion em {
    font-weight: bold;
    font-style: normal;
}

#map {
    margin-top: 0px;
    width: 100%;
    height: 700px;
}

#mapSearchContainer {
    position: fixed;
    top: 20px;
    right: 40px;
    height: 30px;
    width: 180px;
    z-index: 110;
    font-size: 10pt;
    color: #5d5d5d;
    border: solid 1px #bbb;
    background-color: #f8f8f8;
}



 
.leaflet-control-search {
    width: 100%;
}
.leaflet-control-search.search-exp {/*expanded*/
}
.leaflet-control-search .search-input {
	display: block !important;
    float: left;
    border: 0;
    background: #3C3C3B;
    color: white;
    box-shadow: 0px 0px 24px rgb(0 0 0 / 25%);
    border-radius: 20px;
    height: 100px;
    padding: 35px;
    margin: 0;
    width: 100%;
    outline: 0;
    position: relative;
    padding-right: 70px;
}
.leaflet-control-search label.search-input {
    display: none !important;
}

.leaflet-control-search .search-cancel:hover {
    display: none;
}
.leaflet-control-search .search-cancel span {
    display:none;/* comment for cancel button imageless */
    font-size:18px;
    line-height:20px;
    color:#ccc;
    font-weight:bold;
}
.leaflet-control-search .search-cancel:hover span {
    color:#aaa;
}
.leaflet-control-search .search-button {
    width: 80px;
    height: 100%;
    display: block;
    position: absolute;
    z-index: 1;
    background: url(../img/icons/suche.png);
    background-repeat: no-repeat;
    background-size: 40px;
    background-position: center;
    right: 0;
    margin: 0;
    display: none;
}

.leaflet-control-search .search-tooltip {
    position: absolute;
    top: 80px;
    width: 100%;
    left: 0;
    float: left;
    list-style: none;
    padding-left: 0;
    min-width: 120px;
    max-height: 122px;
    box-shadow: 1px 1px 6px rgb(0 0 0 / 40%);
    background-color: white;
    z-index: 1010;
    overflow-y: auto;
    overflow-x: hidden;
    cursor: pointer;
}
.leaflet-control-search .search-tip {
    margin:2px;
    padding:2px 4px;
    display:block;
    color:black;
    background: #eee;
    border-radius:.25em;
    text-decoration:none;   
    white-space:nowrap;
    vertical-align:center;
}
.leaflet-control-search .search-tip-select,
.leaflet-control-search .search-tip:hover {
    background-color: #fff;
}
.leaflet-control-search .search-alert {
    cursor:pointer;
    clear:both;
    font-size:.75em;
    margin-bottom:5px;
    padding:0 .25em;
    color:#e00;
    font-weight:bold;
    border-radius:.25em;
}

#findbox {
	position: relative;
    max-width: 1201px;
    display: flex;
    width: 45vw;
    justify-content: end;
    margin: 40px;
    margin-left: auto;
    margin: 4vw 4vw 4vw 0;
    float: right;
	display: none;
}

.pointer {
    position: absolute;
    top: 86px;
    left: 60px;
    z-index: 99999;
}

.leaflet-control-attribution {
    display: none;
}


.hidden {
    display: none !important
}

.skrollr,
.skrollr body {
    overflow: visible !important;
}

.skrollr body {
    overflow-x: hidden !important;
}

.search__modal {
    max-width: 70%;
    margin: auto;
}

.search__modal form {
    width: 100%;
}

.search__modal .input-group {
    background: #3C3C3B;
    box-shadow: 0px 4px 25px rgb(0 0 0 / 25%);
    height: 70px;
    border-radius: 50px;
}

.search__modal input{
    height: 70px;
    border-radius: 50px !important;
    padding-left: 25px;
    font-size: 25px;
    color: white;
    background: #3C3C3B;
    border: 0 !important
}

.search__modal button{
	height: 70px;
	padding: 0 15px;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none !important;
    outline: none;
    z-index: 9999 !important;
    border: 0 !important
}

.search__modal input:focus {
    background: #3C3C3B;
    border: 0 !important
}

.btn-search {
    font-size: 40px;
    color: white;
}



@media screen and (max-width: 768px) {
    .max_90_d {
        max-width: 90%;
        margin: auto;
    }
    #findbox {
		position: relative;
		float: none;
		width: calc( 100% - 30px);
		margin: 20px auto;
    }
    .leaflet-control-search .search-input{
            width: 100% !important;
            max-width: 100% !important;
                height: 80px;
    padding: 25px
    }
	
	#map {
		margin-top: 0px;
		width: 100%;
		height: 500px;
	}
	
}

.datum,
.Preis,
.uhrzeit {
    background: rgb(255 255 255 / 10%);
    border-radius: 5px;
    display: flex;
    font-size: 20px;
    line-height: 2;
    font-weight: 600 !important;
	padding: 0 10px;
}

.datum span,
.Preis span,
.uhrzeit span{
    margin: 6px;
    font-size: 17px !important;
    color: white !important;
}

.datum_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/datum.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}

.preis_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/preis.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}

.uhrzeit_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/uhrzeit.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}





.b1_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/b1.png);
    background-repeat: no-repeat;
    background-position: 0px;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}
.b2_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/b2.png);
    background-repeat: no-repeat;
    background-position: 0px;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}
.b3_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/b3.png);
    background-repeat: no-repeat;
    background-position: 0px;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}
.b4_icon {
    padding-left: 36px;
    font-size: 20px;
    min-width: 120px;
    background: url(../img/icons/b4.png);
    background-repeat: no-repeat;
    background-position: 0px;
    background-size: 30px;
    margin: 6px;
    color: white;
    font-weight: 600;
}
#popover {
    background: white;
    height: 15px;
    width: 15px;
    padding: 16px;
    border: 5px solid #3BB390;
    border-radius: 50%;
    animation: beat .5s infinite alternate;
    transform-origin: center;
}

/* Heart beat animation */
@keyframes beat {
    to {
        transform: scale(1.1);
    }
}

.model_section{
    position: relative;
}
.popover_modal{
    display: none;
    background: white;
    text-align: left;
    max-width: 400px;
    width: 350px;
    border-radius: 20px;
    padding: 30px;
    position: absolute;
    right: 70px;
    transform: translateY(-50%);
}
.popover_modal.activ {
    display: block;
}
.popover_modal.activ {
    display: block;
}
.model_section .arrow {
    position: absolute;
    display: block;
    width: 1rem;
    height: 0.5rem;
    margin: 0 0.3rem;
}
.model_section .arrow {
    right: -1.8rem;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    height: 100%;
    margin-top: -20px;
}
.model_section .arrow::before {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
    right: 0;
        border-width: 1.5rem 0 1.5rem 1.5rem;
    border-left-color: rgba(0,0,0,.25);
}
.model_section .arrow::after {
    position: absolute;
    display: block;
    content: "";
    border-color: transparent;
    border-style: solid;
    right: 1px;
    border-left-color: #fff;
    border-width: 1.5rem 0 1.5rem 1.5rem;
}


.model_section .mh{
    color: #3C3C3B
}
.model_section .mp{
    color: #3C3C3B;

}

@media screen and (max-width: 768px) {
    .popover_modal {
        transform: translate(-50%, -50%);
        right: 0;
        left: 20px;
        width: calc(100vw - 40px);
        top: 0;
    }
    .model_section .arrow {
        display: none;
    }
    .datum,
    .Preis,
    .uhrzeit {
        justify-content: space-between;
		padding: 0 15px;
    }
	
	.datum span:last-child,
    .Preis span:last-child,
    .uhrzeit span:last-child {
        text-align: right;
    }
}

.wetter_card{
    display: flex;
        padding: 5px 0;
}
.wetter_time{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-right: 2px solid rgb(255 255 255 / 10%);
    padding: 20px;
    text-align: center;
    line-height: 1.2;
}
.wetter_time span{
    font-size: 1.4rem !important;
    color: rgb(255 255 255 / 80%) !important;
}
.wetter_time strong{
    font-size: 2rem !important;
}
.wetter_details{
    padding: 0 25px !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex:1;
}
.wetter_details .wetter_details_top{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}
.wetter_details .wetter_details_top img{
    width: 110px !important;
}
.wetter_details .wetter_details_top span{
    font-size: 50px !important;
    font-weight: 600 !important;
    margin-left: 11px !important;
}

.wetter_details a{
    color: #ccc !important;
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 5px !important;
}





#modal_wetter .close__btn{
    background: #709dcd;
    top: -12px;
    right: 30px;
}
#modal_wetter .highlight-info{
    border-radius: 20px;
}
#modal_wetter .wetter_details .wetter_details_top img{
    width: 80px !important;
}
#modal_wetter .highlights .highlight .highlight-info span{
        display: flex;
    align-items: center;
}
#modal_wetter .wetter_details .wetter_details_top span img {
    width: 39px !important;
    float: left;
}
#modal_wetter .wetter_time  {
        padding-left: 0;
}
#modal_wetter .wetter_details .wetter_details_top span{
    font-size: 40px !important;
}

#modal_wetter .highlight-info .lignted {
    display: flex;
    align-items: center;
    justify-content: space-between;

}
#modal_wetter .highlight-info .lignted .mmtime{
    margin-right: 25px
}


@media screen and (max-width: 992px) {
    .wetter_card{
            display: flex;
                padding: 15px 0;
        }
    .wetter_time{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        border-right: 2px solid rgb(255 255 255 / 10%);
        padding: 20px;
        text-align: center;
        line-height: 1.2;
    }
    .wetter_time span{
        font-size: 1rem !important;
        color: rgb(255 255 255 / 80%) !important;
    }
    .wetter_time strong{
        font-size: 1.3rem !important;
    }
    .wetter_details{
        padding: 0 25px !important;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .wetter_details .wetter_details_top{
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        flex-direction: column;
    }
    .wetter_details .wetter_details_top img{
        width: 82px !important;
    }
    .wetter_details .wetter_details_top span{
        font-size: 40px !important;
        font-weight: 600 !important;
        margin-left: 11px !important;
    }

    .wetter_details a{
        color: #ccc !important;
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        margin-top: 5px !important;
        font-size:15px;
    }

    #modal_wetter .wetter_details .wetter_details_top span{
		font-size: 25px !important;
    }
	
    #modal_wetter .highlights .highlight .highlight-info span{
        font-size: 15px !important;
	}
    #modal_wetter .highlight-info{
        padding: 15px

    }
}

.grid__item-img img {

}

/* Shine */
.grid__item-img, .img_grid{
	position: relative;
    overflow: hidden;
}

.grid__item-img img, .img_grid img{
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}

.grid__item-img:hover img, .img_grid:hover img{
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}



/*
.grid__item-img img {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: -55;
}
*/

.faq_icons{
    width: 56px;
    height: 56px;
    display: inline-block;
    margin-right: 15px;
    min-width: 40px;
    
}
.faq_icons_small{
    width: 30px;
    height: 30px;
    display: inline-block;
    margin-bottom: -10px;
    min-width: 25px;
    
}

.icthumbsup:hover{
    background: url(../img/icons/hoverthumbsup.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.icthumbsdown:hover{
    background: url(../img/icons/hoverthumbsdown.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.icthumbsup{
    background: url(../img/icons/thumbsup.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.icthumbsdown{
    background: url(../img/icons/thumbsdown.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.funparks{
    background: url(../img/icons/betriebsinfo/funparks.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.fuss{
    background: url(../img/icons/betriebsinfo/fuss.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.gastronomoie{
    background: url(../img/icons/betriebsinfo/gastronomoie.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.langlauf{
    background: url(../img/icons/betriebsinfo/langlauf.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.pisten{
    background: url(../img/icons/betriebsinfo/pisten.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.different {
    background: url(https://engstligenalp.ch/wp-content/infosnow/img/icons/betriebsinfo/different.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.saisons{
    background: url(../img/icons/betriebsinfo/saisons.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.status{
    background: url(../img/icons/betriebsinfo/status.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.valid{
    background: url(../img/icons/valid.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 32px;
    height: 32px;
    margin-right: 15px;
}
/* .invalid{
    background: url(../img/icons/invalid.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 32px;
    height: 32px;
    margin-right: 15px;
} */
.seasons_winter{
        background: url(../img/icons/seasons/winter.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 32px;
    height: 32px;
    margin-right: 15px;
}
.seasons_sommer{
        background: url(../img/icons/seasons/sommer.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 32px;
    height: 32px;
    margin-right: 15px;
}
.smallbox_info{
    background: rgb(255 255 255 / 10%);
    padding: 5px 10px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    flex-wrap:wrap;
}
.info_title{
    min-width: 120px;
}
.info_details{
    color: rgb(255 255 255 / 60%)
}
.flex-1{
    flex:1;
}
.faq.betriebsinfo .faq_item>.collapse.show {
    margin-top: 20px;
}

.faq.betriebsinfo .faq-list li {
    padding: 20px;
}
.faq.betriebsinfo .faq-list a, .faq.betriebsinfo .faq-list div[data-bs-toggle="collapse"] {
    display: flex;
    align-items: center;
	margin-bottom: 0;
}
.faq.betriebsinfo .faq_item div{
    max-width: 100%;
    margin-top: 0;
    margin-bottom: 10px;
    transition: .2s transform ease-in-out;  
}

.info_responsive{
    flex-wrap: wrap;
}
.info_responsive .info_details{
    margin-left: 46px;
}
.faq.betriebsinfo  .faq-list .icon-show, .faq.betriebsinfo  .faq-list .icon-close {
    font-size: 23px;
    position: absolute;
    right: -5px;
    top: 8px;
    color: #3BB390;
    background: #fff;
    padding: 10px;
    border-radius: 50%;
}
.rounded-5 {
    border-radius:  20px !important;
}

.faq .faq-list .sub-list>ul{
        padding: 0 12px;
		list-style: none;
}

.faq .faq-list .sub-list li{
    background: none;
    padding: 0;
    position: relative;
    box-shadow: none;
    border-radius: 0;
    margin-bottom: 15px;
}
.faq .faq-list .sub-list li a[data-bs-toggle="collapse"], .faq .faq-list .sub-list li div[data-bs-toggle="collapse"] {
    background: #3BB390;
    padding: 15px 20px;
    border-radius: 10px;
}
.faq.betriebsinfo .faq-list .details_table > a {
	font-size: initial;
	text-decoration: underline;
}
.details_table table{
table-layout: fixed;
    word-wrap: break-word;
    }
.details_table,
.details_table th,
.details_table tr{
    color: white;
}
.details_table tr td{
    border: 0;
    padding: .5rem;
}
.details_table tbody{
    border-color: rgb(255 255 255 / 10%) !important;
}
.details_table thead th{
    border: 0;
}

.faq.betriebsinfo .sub-list .faq_item div{

}

.faq.betriebsinfo .faq-list .sub-list .icon-show, .faq.betriebsinfo .faq-list .sub-list .icon-close {
    background-color: transparent;
    color: white;
    top: 15px;
    right: 15px;
    font-size: 30px;
    padding: 0;
}
.faq.betriebsinfo  .sub-list li{
    background: rgb(255 255 255 / 10%);
    border-radius: 10px;
}
.faq.betriebsinfo .faq-list li+li{
    margin-top: 10px;
}
@media screen and (max-width: 992px) {
    .details_table:before {
        content: " ";
        background: linear-gradient(270deg, rgba(75, 75, 75, 0.7) 36.52%, rgba(79, 79, 78, 0) 104.41%);
        width: 150px;
        height: calc(100% - 64px);
        position: fixed;
        right: 0;
        top: 0px;
        bottom: 0;
        border-radius: 10px;
        margin-top: 54px;
    }
    .smallbox_info .valid,
    .smallbox_info .invalid,.
    .smallbox_info .seasons_winter,
    ..smallbox_info .seasons_sommer{
        width: 26px !important;
        height: 26px !important;
        margin-right: 10px;
    }
}
#modal_wetter,
#modal_event{
    padding: 0 !important
}

.btn{
	margin-bottom: 25px;
}

.btn.btn-success.btn-rounded {
    font-size: 20px;
    font-weight: bold;
    padding: 13px 29px;
    border-radius: 30px;
    /*margin-top: -10px;*/
	margin-right: 10px;
}
.close_popup{

    position: absolute;
    top: 25px;
    right: 25px;
    font-size: 25px;
    cursor: pointer;
}

/* fixes */
@media screen and (min-width: 992px) {
    .galerie .col-md-3 {
        width: 20%;
        padding-right: 2rem;
        margin-bottom: 3rem !important;
    }

}
/* fixes */
@media screen and (max-width: 992px) {

    .btn.btn-success.btn-rounded {
        font-size: 20px;
        font-weight: bold;
        padding: 10px 25px;
        border-radius: 30px;
        margin: 0px 15px 20px 0;
    }
}


.highlights .swiper-wrapper{
	display: flex;
    align-items: stretch;
    padding-bottom: 44px;
}

.highlights .swiper-wrapper.no-swipe {
	transform: translate3d(240.6px, 0px, 0px) !important;
}

.highlights .swiper-slide{
	height: auto !important;
}


.highlights .highlight{
			display: flex;
    flex-direction: column;
}

.highlights .highlight-info{
			flex-grow: 1;
}

.tablepress {
	width: 100% !important;
	max-width: 100% !important;
	box-shadow: 0 4px 17px 0 rgb(0 0 0 / 25%);
    margin-bottom: 40px !important;
	margin-bottom: 0 !important;
}

.tablepress-scroll-wrapper {
  	box-shadow: 0 4px 17px 0 rgb(0 0 0 / 25%);
	max-width: 100% !important;
}

.tablepress-scroll-wrapper .tablepress {
  	box-shadow: none !important;
}

.tablepress.preise td.column-1 {
	width: 40%;
}

.tablepress.preise td.column-2 {
	width: 30%;
}

@media screen and (max-width: 980px) {
	/*.tablepress td {
		white-space: nowrap;
	}*/
}

.tablepress th{
  background-color: #573d90 !important;
  padding: 15px !important;
  border: none !important;
     color: #fff;
}

.tablepress td{
   padding: 15px !important;
   font-size: 18px;
   color: #fff;
}

.tablepress a{
	text-decoration: underline;
}

/*.tablepress tr:nth-child(even) td, .tablepress-responsive-stack-tablet tr:nth-child(even) td{
  background-color: #2c323a !important;
  border: none;
  padding: 15px !important;
}

.tablepress tr:nth-child(odd) td, .tablepress-responsive-stack-tablet tr:nth-child(odd) td {
  background-color: #39404a !important;
  border: none;
}*/

@media (max-width: 979px) {
	.tablepress.preise td.column-1 {
		width: 100%;
	}

	.tablepress.preise td.column-2 {
		width: 100%;
	}
	
	.tablepress-responsive-stack-tablet thead {
		display: block !important;
	}

	.tablepress-responsive-stack-tablet thead tr, .tablepress-responsive-stack-tablet thead th {
		display: block !important;
		width: 100% !important;
		text-align: center !important;
	}
	
	.tablepress-responsive-stack-tablet th, .tablepress-responsive-stack-tablet td {
		margin-top: -15px;
		font-size: 16px;
	}
	
	.tablepress-responsive-stack-tablet th:first-child, .tablepress-responsive-stack-tablet td:first-child {
		margin-top: 0px;
	}
}

.packages .card h1, .packages .card h2, .packages .card h3{
  font-family: "TheSansPlain", serif !important;
  font-weight: bold;
}

.packages .card:after {
    content: "";
    display: block;
    width: 100%;
    height: 20px;
    background: #3BB390;
    position: absolute;
    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
}

/*
Formular
*/

.wpcf7-not-valid-tip {
	font-size: 14px;
	padding-top: 7px;
}

.wpcf7-form.invalid .wpcf7-response-output {
    color: #D8000C;
    background-color: #FFBABA;
    border: 0;
    padding: 20px;
}
.wpcf7-form.sent .wpcf7-response-output {
    color: #4F8A10;
    background-color: #DFF2BF;
    border: 0;
    padding: 10px;
}
.wpcf7-mail-sent-ok .wpcf7-response-output:before, .wpcf7-form.invalid .wpcf7-response-output:before {
    font: 26px/30px dashicons;
    margin-right: 16px;
    vertical-align: middle;
}
.wpcf7-mail-sent-ok .wpcf7-response-output:before {
    content: "\f147";
}
.wpcf7-form.invalid .wpcf7-response-output:before {
    content: "\f158";
}

.wpcf7-response-output {
	max-width: 1550px;
	width: 100%;
	margin: 0 auto !important;
}

@media screen and (max-width: 768px) {
	.wpcf7-response-output {
		width: 90%;
	}

}

/**/

.single-jobs .big-header, .single-jobs .small-header{
  /*display: none !important;*/
}


.single-jobs{
  /*padding-top: 150px;*/

}

.job-content{
	color: white;
}

.job-side{
  color: #3C3C3B;
}

.jobs-modal-content{
  background-color: #3C3C3B !important;
}

.jobs-modal-form .job-submit, .jp-apply-button, .primary-style, .job-cta a{
  background-color: #3BB390 !important;
  font-size:20px !important;
  padding: 15px 30px !important;
  text-transform: none !important;
  font-weight: bold !important;
}

.jobs-modal-form .choose_file, .jobs-modal-form .choose_file_multi, .jobs-modal-form .choose_file_multi_add{
    background-color: #3BB390 !important;

}

.job-post{
    width: 90% !important;
    max-width: 1550px !important;
    margin: 0 auto !important;
    overflow: auto;
	padding: 80px 0 0 0 !important;
	margin-bottom: 0 !important;
}

.job-post h1 span, .job-post h2 span, .job-post h3 span, .job-post h4 span, .job-post h5 span, .job-post h6 span {
	font-size: inherit !important;
	font-family: inherit !important;
	font-weight: inherit !important;
	color: inherit !important;
	border: none !important;
}

.job-side h1 span, .job-side  h2 span, .job-side  h3 span, .job-side  h4 span, .job-side  h5 span, .job-side  h6 span {
	color: rgb(33, 37, 41) !important;
}

.job-post .job-side .job-content-wrap {
	padding: 30px !important;
}

.job-post .job-side .jobs-row-label {
	font-family: "TheSansPlain", serif;
	font-size: 18px !important;
	color: rgb(33, 37, 41) !important
}

.job-post .job-side .jobs-row-label span {
	border: none !important;
}

.job-post .jobs-row.position_logo .jobs-row-input img {
	margin: 0 !important;
}

.job-post .jobs-row.position_title .jobs-row-input {
	font-size: inherit !important;
	line-height: inherit !important;
}

.job-post .jobs-row:first-child {
	margin-top: 0 !important;
}

.job-post .jobs-row:last-child {
	margin-bottom: 0 !important;
}

.team_info {
	position: absolute;
	bottom: 20px
}

.job-pdf-export {
	color: #3C3C3B !important;
}

.jp-attachment-button {
	background: transparent !important;
	color: #000 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	font-weight: 500;
	font-size: 18px !important;
	margin-top: 0 !important;
	text-transform: initial !important;
	display: inline-block;
	text-align: left !important;
}

.jp-attachment-button::before {
	content: url('../images/clip.svg');
	margin-top: -5px !important;
	width: 20px !important;
	height: 20px !important;
}

.job-post .jobs-row .jobs-row-input svg {
	margin-bottom: 5px !important;
}
.job-post .jobs-row.position_title .jobs-row-input {
	display: none;
}

.job-post .job-side .jobs-row.position_logo {
	margin: 0 0 20px 0 !important;
}

@media screen and (max-width: 980px) {
	.job-post .job-side .jobs-row-label {
		font-size: 17px !important;
	}
	
	.jp-attachment-button {
		font-size: 17px !important;
	}
}

@media screen and (max-width: 768px) {
	.job-post .job-side .jobs-row-label {
		font-size: 16px !important;
	}
	
	.job-post{
		padding: 40px 0 !important;
	}
	
	.jp-attachment-button {
		font-size: 16px !important;
	}
}

.packages .card_content{
  display: flex;
  flex-direction: column;
}

.packages .card_content figure, .packages .card_content .n2-section-smartslider{
  margin-top: auto;
}


.toLessElements {
padding-left: calc((100vw - 1550px)/2);
}

.jobs-row-apply{
	display: none;
}

