header#masthead{
	position:relative;
	position:fixed;
	width:100%;
	overflow:visible;
	/* top:0; */
	z-index:100;
	transition: all 0.3s;
	/* border-top: 4px solid var(--primary); */
	border-bottom: 1px solid var(--grey-light);
	background:var(--white);

	min-height: var(--headerheight);
    display: flex;
    align-items: center;
	max-height:75px;
}

body #content{
	padding-top:var(--headerheight);
}
#wpadminbar {
	position: fixed;
}
body header#masthead ul.navbar-nav {
	font-size: var(--menu-font-size);
	flex-direction: column;
	background: transparent;
	top: 0;
	min-width: 100%;
	width: 100%;
}
body #masthead .navbar-collapse ul.navbar-nav{
	padding-left:15px;
	padding-right:15px;
}
.logo-wrap{
	position: relative;
	padding: 0;
	left: 50%;
    transform: translateX(-50%);
}
.site-logo {
	width: auto;
	position: relative;
	transition: all 0.5s;
	height: 100%;
}

.site-logo svg{
	height: 100%;
	width: auto;
}
.site-logo svg path{
	/* fill: var(--primary); */
	fill-rule: evenodd;
	clip-rule: evenodd;
	transition:all 0.4s;
}
/* .site-logo a:hover svg path{
	fill:var(--text2);
} */
.logo-wrap .site-logo a:hover svg{
	/* filter:grayscale(0); */
}
nav.navbar{
	padding:0rem 15px;
}
.has-fixed-header .site-logo{
	width: auto;
	/* top: 0px; */
}
.menu-wrap {
	position: absolute;
	right: auto;
	left: 0;
	width: 100%;
}
@media(min-width:768px){
	.site-logo {
		height: 100%;
	}
}


body header#masthead{
	transition: all 0.75s;
}

.navbar-toggler{
	color: var(--text);
	border-color: var(--text);
	border-radius: 0;
	border-top: 0;
	border-right: 0;
}



#masthead .main-header-links{
	color: var(--secondary-light);

	position: absolute;
    top: var(--header-height);
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    text-align: center;
    font-size: 1.34rem;
	background: var(--primary);
}
@media(min-width:768px){
	#masthead .main-header-links{
		top: calc(var(--header-height) - 7px);
		left: 50%;
		width: 100vw;
	}
}
#masthead .main-header-links a{
	font-weight:400;
	text-transform:uppercase;
	color:inherit;
	display:inline-block;
	position:relative;
	padding: 0.5rem 0;
	letter-spacing: 0.03em;
}
@media(min-width:1200px){
	#masthead .main-header-links{
		color: var(--secondary-light);

		position: relative;
		top: auto;
		left: auto;
		width: auto;
		transform: translateX(0%);
		text-align: right;
		font-size: 1.34rem;
	}
}




#primary-menu .nav-item{
	/* padding: 0 0.4rem; */
	border-radius: 0;
	border-right: none;
	color:inherit;
	color: var(--secondary-light);
}

#primary-menu-footer .nav-item a.nav-link,
#primary-menu .nav-item a.nav-link {
	color: inherit!important;
    /* font-weight: 400; */
    word-break: break-word;
    transition: color .3s, font-weight .3s;
}
#masthead .main-header-links a:after,
#primary-menu .nav-item a.nav-link:after{
	/* color:var(--text)!important; */
	/* font-weight:500; */
	height:2px;

}

body .p-relative{
	position:relative;
}
body.has-display-header header#masthead{
	position: absolute;
	top: 0;
	left: 0;
	background:transparent;
	transition: all 0.75s;
}
body:not(.home) header#masthead,
body.has-display-header header#masthead.header-sticking{
	background:var(--white);
}

.rot-caption-inner-wrap{
	margin-bottom:5rem;
	margin-top:5rem;
}

.nav-link.dropdown-toggle,
.nav-link.dropdown-toggle:hover{
	color:var(--text);
}

@media(min-width:576px){

}
@media(min-width:768px){
	#content.site-content{
	padding-top:var(--header-height);
	}
	.navbar-expand-md .navbar-collapse{
		position: relative;
		top: 0;
	}

	.w-md-100,
	body .container.w-100,
	body .container.w-md-100{width:100%; max-width:100%;}
}

@media(min-width:992px){
	header#masthead {
		max-height: 89.5px;
	}
	#content.site-content {
		padding-top: var(--header-height);
	}

}
/*NAVBAR ---------------------NAVBAR--------------------------------NAVBAR*/

.navbar-nav>li{
	padding:0 2.4rem;
	border-radius:0;
	border-right:none;
	margin: 0 3px;
}
.navbar-nav>li:last-child{
	border-right:none;
}

#masthead .container,
#masthead .container>.row,
#masthead .container>.row>nav{
	position: static;
}
#primary-menu-wrap .nav-link{
	text-align:left;
	/* opacity:0; */
	transition:opacity .4s, color .4s;
}

@media(min-width:768px){
	#masthead .container,
	#masthead .container>.row,
	#masthead .container>.row>nav{
	position: relative;
	}
	#primary-menu-wrap .nav-link{
		opacity:1;
	}
	.navbar-nav>li{
		padding:0 1rem;
	}
}

/*2nd level menu animation*/
nav .dropdown-menu{
	padding:0;
	border:0;
	border-radius:1px;
	/*hier müssen bootstrap standard rules ausgehebelt werden, damit nichts aus dem zugeklappten menü "rausschaut"*/
}
nav li.menu-item-has-children:before {
	content: '\f107';
	font-family: 'Line Awesome Free';
	font-weight: 900;
	display: inline;
	position: absolute;
	right: -0.5rem;
	top:0;
	padding:2rem .5rem;
	transition: transform .3s;
}
/* nav .dropdown.show .dropdown-toggle:before {
	transform: rotate(-90deg);
} */
nav .dropdown-toggle:after {
	display:none;
}
/* nav .dropdown-menu, */
nav .nav-item{
	display:block;
}
nav .dropdown-menu {
    right: -2rem;
    top: calc(100% - 1rem);
    overflow: hidden;
    max-height: 0;
    transition: all .8s cubic-bezier(0.83, -0.05, 0.25, 1) 0s;
    background: var(--text);

	font-weight:300;
	color: var(--grey-lightest);
    display: block;
}
nav .dropdown-menu a{
	max-width: 100%;
    position: relative;
    white-space: normal;
	color: inherit;
	font-weight:inherit;
}
nav .dropdown-menu a:hover{
	max-width: 100%;
    position: relative;
    white-space: normal;
	color: inherit;
	background-color: var(--text-light);
}
nav .dropdown-menu.show{
	max-height:1000px;
}
.dropdown-item.active, .dropdown-item:active {
    color: #fff;
    text-decoration: none;
    background-color: var(--text-light);
    font-weight: inherit;
}
@media(max-width:991.998px){
	li.menu-item.menu-item-has-children{
		width: 100%;
		margin-left: 0;
		padding-top: 0!important;
		padding-bottom: 0!important;
		height: auto;
		margin-top: -1.6rem;
	}
	nav .dropdown-menu{
		position:relative;
	}
	nav li.menu-item-has-children:before {
		content: '\f107';
		font-family: 'Line Awesome Free';
		font-weight: 900;
		display: inline;
		position: absolute;
		right: -0.5rem;
		top:-3.4rem;
	}

}
/* ------NAVBAR-COLLAPSE---------*/
body #masthead .navbar-collapse {
    position: fixed;
    top: calc(var(--header-height) + var(--admin-bar-height));
    background: transparent;
    backdrop-filter: blur(4px);
    left: 0;
    right: auto;
    width: 100%;
    overflow-y: auto;
    /* overflow-y: visible; */
    height: calc(100vh - var(--header-height) - var(--admin-bar-height));
    display: block!important;
    transition: width .7s, opacity .3s;
    /* white-space: nowrap; */
    opacity: 1;
	z-index:20;
}
body #masthead .navbar-collapse:not(.show) {
	/* transform: skew(6deg, 0deg); */
	width:100;
	opacity: 0;
	pointer-events: none;
}
body #masthead .navbar-collapse ul.navbar-nav {
    padding-left: var(--container-margin);
    padding-right: 26px;
    padding-top: 0px;
    font-size: var(--menu-font-size);
	font-family:var(--serif);
    padding-bottom: 52px;
	padding-top:26px;
    width: auto;
    min-width: 1px;
    position: absolute;
    background: var(--primary-dark);
    border-radius: 0 20px 20px 0;
}
body #masthead .navbar-collapse ul.navbar-nav .nav-item{
	padding: 2rem 0.2rem;
}

@media(min-width:576px){

}
@media(min-width:768px){
	body #masthead .navbar-collapse {
		top: calc(var(--header-height) + var(--admin-bar-height));
		width:100%;
	}


}
@media(min-width:840px){

}
@media(min-width:992px){
	/* FALLS ES EINE SICHTBARE NAVBAR GIBT - HIER WEITERMACHEN */

	/* body #masthead .navbar-collapse {
		width: auto;
		opacity: 1;
		position: fixed;
		height: auto;
		bottom: 0;
		left: 0;
		height: calc(100vh - var(--header-height) - var(--admin-bar-height));
		background: #a5808069;
		display: flex!important;
		overflow-y: auto;
		margin-right: 1rem;
		z-index: 2232;
	}
	body #masthead .navbar-collapse ul.navbar-nav{
		flex-direction: row;
		width:auto;
		padding:0;
	} */
}



/*TOGGLER*/
body #masthead .navbar-toggler:before {
    content: '';
    position: absolute;
    top: -12px;
    left: -7px;
    width: calc(42px + 20px);
    height: calc(42px + 20px);
    display: inline-block;
	/* background:var(--grey-light); */
	transition: background-color .3s;
}
body #masthead .navbar-toggler.collapsed:before {
	background:transparent;
}
body #masthead .navbar-toggler {
	border:none;
	background:transparent;
	position:relative;
	color:var(--secondary-light);
}
body #masthead .navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    content: "";
    background: 50%/100% 100% no-repeat;
    bottom: -3px;
    left: -3px;
    position: relative;
}

body #masthead .navbar-toggler-icon{
	background-image:none!important;
	position: relative;
}
.navbar-toggler-icon .center-bar,
.navbar-toggler-icon:after,
.navbar-toggler-icon:before{
	display:block;
	content:"";
	width:100%;
	position:absolute;
	height:3px;
	border:1px solid var(--secondary-light);
	border:none;
	border-radius:1px;
	background-color: var(--secondary-light);
	top:7px;
	transition: all 0.5s cubic-bezier(.88,.11,.83,.67) 0.2s;

	height: 2px;
	top:4px;
}
.navbar-toggler-icon .center-bar{
	top:12px;
	transform:scale(1);
	width:70%;
}
.navbar-toggler-icon:after{
	top:20px;
	/* bottom:5px; */
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before{
	transform: rotate(45deg) translate(0.1em, 0.4em);
	width: 1.9em;
	width: 1.5em;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon .center-bar{
	transform: scale(0);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after{
	transform: rotate(-45deg) translate(0.125em, -0.5em);
	width: 1.9em;
	width: 1.58em;
	bottom:3px;
}


/*------------------------------------------------------CUSTOM-------------------------*/




/*SOCIAL*/
.navbar-collapse{
	flex-grow:0;
	-ms-flex-positive:0;
}

.social{
	display: inline-block;
	font-size: 2.25rem;
	vertical-align: bottom;
	margin-right: 1rem;
	position: static;
	/* bottom: -7px; */
	margin-bottom: -1px;
	line-height: 1;
}
body .social a:visited,
body .social a:focus,
body .social a{
	color:var(--text);
	margin-right:5px;
}
body .social a:hover{
	color:var(--primary);
}



section.top-section{
	background:var(--primary);
	padding-top:var(--header-height);
}
.top-section,
.has-bg-img{
    min-height:360px;
	background-size: cover;
    background-position: center 80%;
}
.rot-img-lineart svg,
.top-section>.rot-img-lineart svg{
	position:absolute;
}

.has-bg-img:after {
    content: '';
    bottom: 0;
    height: 280px;
    background: rgb(22,22,34);
    background: linear-gradient(0deg, rgb(22 22 34 / 63%) 0%, rgba(0,0,0,0) 100%);
    width: 100%;
    left: 0;
    pointer-events: none;
    display: block;
    position: absolute;
}
.inner-button{
	font-size:1rem;
	padding-left: 0rem;
	margin-left:.8rem;
	/* display:none; */
}
@media(min-width:768px){
	.inner-button{
		/* display:inline-block; */
	}
	.has-bg-img:after {
		height: 200px;
	}
}

.urlaub{
	min-height:420px;
	position:relative;
	background:var(--text2);
	display:flex;
	margin-top:48px;

	align-items: center;
    justify-content: center;

}
body .urlaub .section-content h2{
    font-family: var(--serif)!important;
    color: var(--secondary);
    font-size: 3.8rem;
    margin-bottom: 1rem;
}

body .urlaub ul,
body .urlaub h2,
body .urlaub p{
	color:var(--secondary);
}
body .urlaub ul strong,
body .urlaub h2 strong,
body .urlaub p strong{
	color:var(--secondary-light);
	display:inline-block;
	padding:0 1rem;
	letter-spacing:0.04em;
	font-weight:initial;
}
@media(min-width:768px){
	.urlaub{
		min-height:540px;
		margin-top:0px;
		padding-top:120px;
	}
}
@media(min-width:992px){
	.urlaub{
		/* margin-top:var(--headerheight); */
	}
}