/******ALLGEMEIN****/
/******ALLGEMEIN****/
/******ALLGEMEIN****/
/******ALLGEMEIN****/
/******ALLGEMEIN****/
@media(max-width:600px){
	body.scrolled .navbar.fixed-top{
	top: 0;
	}
	body>main{
		padding-top: var(--header-height);
	}
}

:root{
	/* --container-width:100%;
	--container-margin:calc(100% - var(--container-width) / 2);
	--container-margin-vw:calc(100vw - var(--container-width) / 2); */

	--container-margin:20px;
	--container-width:calc(100% - var(--container-margin) * 2);
	--container-margin-vw:calc(100vw - var(--container-margin) * 2);
}


@media(min-width:768px){
	:root{
		    --container-margin:44px;
	}
}
@media(min-width:992px){
	:root{
		    --container-margin:62px;
	}
}
@media(min-width:1400px){
	:root{
		    --container-margin:72px;
	}
}
@media(min-width:1800px){
	:root{
		    --container-margin:92px;
	}
}

@media(max-width:1720px){
	:root{
		--regular-p-size:1.1rem;
	}
}
.container{
	padding:0;
}


body .row{
	margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}



.rot-inline-link-plain{
	font-weight:800;
	color:var(--text);
	text-decoration:none;

}
.rot-inline-link-plain:hover{
	color:var(--primary);
}
.rot-inline-link,
.rot-btn {
    text-decoration: none;
    font-weight: 600;
    color: var(--white);
    padding: 0.9rem 1.3rem;
    background: var(--text);
    line-height: 1;
    font-size: .92em;
    position: relative;
    overflow: hidden;
    display: inline-block;
    border-radius: 2px;
    transform: translate(0px, 0px);
    transition: transform .3s, background-color .3s, color .4s;
    text-transform: uppercase;
    letter-spacing: .04em;
	border:none;
}
#masthead .rot-btn{
	font-size:1.7em;
	padding:.1em;

}
.rot-inline-link{
	font-size:1em;
	box-shadow:none;
	font-weight:400;
	background:var(--white-45);
}
.rot-inline-link.back-link{
	background: var(--grey-dark);
	color: white;
}

.rot-menu-contact .rot-btn{
	background:var(--grey-dark);
	color:white;
}
.rot-btn:hover{
	/* box-shadow: 0px 1px 1px #24242463;
    transform: translate(2px, 5px); */
	color:initial;
}
.rot-btn:hover{
	background-color:var(--primary-hover)!important;
	color:white;
}
.rot-btn.bg-secondary:hover{
	background-color:var(--secondary-hover)!important;
	color:white;
}
.rot-btn.bg-primary-light:hover{
	background-color:var(--primary)!important;
	color:white;
}
.rot-inline-link:hover{
	/* background:white; */
}
.rot-inline-link:hover:before{
	/* background:var(--orange); */
}
.rot-inline-link:after,
.rot-btn:after {
    content: '';
}
.rot-inline-link:before,
.rot-btn:before {
    content: '';
}
.rot-inline-link.back-link:after{
	border-color: white;
}
.rot-inline-link.back-link:before{
	background-color: white;
}
.rot-inline-link.back-link:hover{
	color:var(--text);
}
.rot-inline-link.back-link:hover:after{
	border-color: var(--text);
}
.rot-inline-link.back-link:hover:before{
	background-color: var(--text);
}

.rot-btn-wrap{
	display:flex;
	flex-wrap:wrap;
	gap:.8em;
	width:100%;
	margin-bottom: 2rem;
}
.rot-inline-link>.txt,
.rot-btn>.txt{
	z-index:1;
	position:relative;
	font-size:1.2em;
}
.rot-inline-link>.txt{
	font-size:inherit;
}
.rot-inline-link>.theme-ele,
.rot-btn>.theme-ele{
	display:block;
	background:var(--tertiary);
	transform:translate(-140%, 0) skew(20deg);
	will-change:transform;
	transition:transform .7s;
	position:absolute;
	left:-20%;
	top:0;
	height:101%;
	width:160%;
	z-index:0;

}
.rot-inline-link:hover>.theme-ele,
.rot-btn:hover>.theme-ele{
	transform:translate(-20%) skew(20deg);
}

.btn.btn-smaller,
.rot-btn.btn-smaller{
	font-size:1.3em;
}

.rot-btn.btn-primary,
.btn.btn-primary,
.btn-primary{
	background-color:var(--primary);
}
.rot-btn.btn-secondary,
.btn.btn-secondary,
.btn-secondary{
	background-color:var(--secondary);
}
.rot-btn.btn-secondary-dark,
.btn.btn-secondary-dark,
.btn-secondary-dark{
	background-color:var(--secondary-dark);
}
.rot-btn.btn-tertiary,
.btn.btn-tertiary,
.btn-tertiary{
	background-color:var(--tertiary);
}
.rot-btn.btn-tertiary .theme-ele,
.btn.btn-tertiary .theme-ele,
.btn-tertiary .theme-ele{
	background-color:var(--primary);
}
.rot-btn.btn-theme,
.btn.btn-theme,
.btn-theme{
	background-color:var(--tertiary);
}

a{
	text-decoration:none;
	color:var(--primary);
	font-weight:600;
}


.rot-btn2{
	background: var(--btn2-bg-color);
    border: none;
    box-shadow: none;
    color: var(--btn2-color);
    font-weight: var(--btn2-font-weight)!important;
    font-size: 1.1em!important;
	padding:var(--btn2-padding);
	border-radius:var(--btn2-border-radius);
    transition: background-color .4s, color .4s;
}
.rot-btn2:hover{
	background-color:var(--btn2-hover-bg-color);
}




#rot_content{
	position:relative;
}



body .bg-primary{
	background-color:var(--primary)!important;
}

body .bg-primary-light{
	background-color:var(--primary-light)!important;
}
body .bg-primary-dark{
	background-color:var(--primary-dark)!important;
}

body .bg-secondary{
	background-color:var(--secondary)!important;
}
body .bg-secondary-dark{
	background-color:var(--secondary-dark)!important;
}
body .bg-tertiary{
	background-color:var(--tertiary)!important;
}
body .bg-purple{
	background-color:var(--purple)!important;
}
body .bg-white{
	background-color:var(--white)!important;
}
body .btn.bg-white{
	color:var(--primary-dark);
}
body .btn.bg-white:hover{
	color:var(--white);
}

.rot-cpt-items.rot-post-type-class{
	row-gap:30px;
}



@media(min-width:620px) and (max-width:767.98px){
	.col-smd-6{
		flex:0 0 50%;
		max-width:50%;
	}
}
@media(min-width:1820px) {
	.col-xxxl-3{
		flex:0 0 auto;
		max-width:25%;
	}
}



.rotate90{
	display:inline-block;
	transform-origin:center;
	transform:rotate(90deg);
}



[data-sticky]{
	position: sticky;
    top: calc(var(--admin-bar-height) + var(--header-height));
	transition:top .3s;
	margin-bottom:2rem;
}

.scrolled-up [data-sticky]{
	top: calc(var(--admin-bar-height) + var(--header-height) + var(--header-height));
}








/*IMGS*/
/*IMGS*/
/*IMGS*/
/*IMGS*/
.rot-img-relative{
	min-height:16rem;
}
.rot-img-relative img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left center;
}
.rot-img-relative.contain img{
    object-fit: contain;
}




.rot-content-img{
	position: relative;
    height: 0;
    padding-bottom: 30rem;
}
.rot-content-img.landscape{
	padding-bottom:24rem;
}
.rot-content-img img{
	object-fit: cover;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;

}
.rot-logos,
.rot-sponsors{
	--logo-figure-height:9rem;
	--logo-figure-max-w:12rem;
	--logo-figure-max-w:calc(50% - 1.5rem / 2 * 1);
	display:flex;
	flex-wrap:wrap;
	gap:1.5rem;
}
.rot-logos .logo,
.rot-sponsors .sponsor{
	width:var(--logo-figure-max-w,12rem);
	height:var(--logo-figure-height,6rem);
	position: relative;
}
.rot-logos .wp-block-image,
.rot-sponsors .wp-block-image,
.rot-logos .rot-content-img,
.rot-sponsors .rot-content-img{
	padding-bottom:var(--logo-figure-height,6rem);
	height:0;
	max-width:var(--logo-figure-max-w,12rem);
	position:relative;
}
.rot-logos>.logo>.wp-block-image,
.rot-sponsors>.sponsor>.wp-block-image,
.rot-logos.logo>.rot-content-img,
.rot-sponsors>.sponsor>.rot-content-img{
	height: 100%;
    width: 100%;
    position: absolute;
    padding-bottom: 0;
    max-width: 100%;
    margin-bottom: 0;
}
.rot-logos .wp-block-image img,
.rot-sponsors .wp-block-image img,
.rot-logos .rot-content-img img,
.rot-sponsors .rot-content-img img{
	object-fit:contain;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;

}
@media(min-width:768px){
	.rot-logos,
	.rot-sponsors{
		--logo-figure-max-w:calc(33.3334% - 1.5rem / 3 * 2);
	}
}
@media(min-width:992px){
	.rot-logos,
	.rot-sponsors{
		--logo-figure-max-w:calc(50% - 1.5rem / 2 * 1);
	}
}
@media(min-width:1800px){
	.rot-logos,
	.rot-sponsors{
		--logo-figure-max-w:calc(33.3334% - 1.5rem / 3 * 2);
	}
}





/*D HEADER*/
/*D HEADER*/
/*D HEADER*/
/*D HEADER*/
/*D HEADER*/

#no-d-header{
	min-height:var(--header-height);
}

/* .display-header.low-header{
	min-height:calc(var(--display-header-min-h) - 13rem);
} */
.display-header.low-header~#rot_content{
	padding-top:0rem;
}

@media(min-width:992px){
	.display-header.low-header{
		min-height:calc(var(--display-header-min-h) - 9rem);
	}

	.display-header.low-header~#rot_content{
		padding-top:0rem;
	}


}
@media(min-width:1720px){
	.display-header.low-header{
		min-height:calc(var(--display-header-min-h) - 4rem);
	}
}
.has-rot-circles{
	overflow:hidden;
}
[data-rot-circle="secondary"],
[data-rot-circle="primary"]{
	width: 63%;
    height: 0;
    padding-bottom: 63%;
    transform: translate3d(-7%, -37%, 0px);
    background: var(--primary-dark);
    border-radius: 20000px;
}
[data-rot-circle="secondary"] {
    width: 43%;
    padding-bottom: 43%;
    transform: translate3d(23%, -17%, 0px);
    background: var(--primary);
    top: 0;
	position:absolute;
}



.slide-bg-img{
	position:absolute;
	height:100%;
	width:100%;
}


.rot-swiper-head {
    position: absolute;
    top: 242px;
    display: block;
    z-index: 12;
    margin-left: var(--container-margin);
}
.rot-swiper-head button {
	border: none;
    background: var(--primary);
    color: white;
    opacity: 1;
    font-size: 2.03rem;
}
.rot-swiper-head button:hover {
	background: var(--primary-hover);
}

.rot-swiper-head button[data-slider-nav]{
	transition: color .5s, transform .5s, background-color .5s;
	width: 2rem;
    text-align: center;
    display: inline-flex;
    justify-content: center;
}
.rot-swiper-head button[data-slider-nav]>i{
	display:block;
}

.rot-swiper-head button[data-slider-nav="next"].is-transitioning-next{
	/* color:var(--tertiary); */
	transform:scale(1.1);
}
.rot-swiper-head button[data-slider-nav="prev"].is-transitioning-prev{
	/* color:var(--primary); */
	transform:scale(1.1);
}

@media(min-width:640px){
	.rot-swiper-head button[data-slider-nav]{
		width:auto;
	}
}




#masthead.nav-fixed-top,
#masthead{
	padding-top: 0px;
}
#masthead{
		background-color: transparent!important;
}


@media(max-width:767.98px){
	/* :root{
		--display-header-min-h: calc(100vh - var(--admin-bar-height));
	} */
	:root body.single{
		--display-header-min-h: 740px;
	}
	/* .display-header.low-header{
		min-height:360px;
	} */
	.display-header [data-h-fixed-img]{
		object-fit: contain;
		left: auto;
		right: 0;
		width: 100%;
		height: auto;
	}
	.display-header [data-h-fixed-img].rot-img-absolute {
		max-height:520px;
	}
	.display-header [data-h-fixed-img].rot-img-absolute img {
		position: absolute;
		height: 100%;
		width: 100%;
		object-fit: cover;
		object-position: 75%;
	}
	#masthead{
		background-color: transparent!important;
		position: relative;
		height: 0;
		padding-top: 0;
	}
	#masthead.nav-after-dh>nav{
		position: absolute!important;
		height: var(--header-height)!important;
		width:var(--header-height)!important;
		top:-2rem;
		left:50%;
		transform:translate(-50%, -100%);
		padding:0;
		border-radius: 1000px;
	}
	#masthead.nav-after-dh>nav .container{
		display: flex;
		justify-content: center;
		align-items: center;

	}
	[data-rot-circle="secondary"], [data-rot-circle="primary"] {
		width: 1000px;
		height: 0;
		left: 50%;
		right: auto;
		padding-bottom: 1000px;
		transform: translate3d(-100%, -37%, 0px);
		background: var(
		--primary-dark);
		border-radius: 20000px;
		position: absolute;
	}
	[data-rot-circle="secondary"] {
		width: 48%;
		padding-bottom: 48%;
		transform: translate3d(23%, -17%, 0px);
		background: var(--primary);
		top: 0;
		position: absolute;
		will-change: width, padding;
		left: 0;
	}
}
@media(min-width:480px){
	.rot-swiper-head {
		top: 260px;
	}
}
@media(min-width:600.98px){
	#masthead{
		padding-top: 24px;
	}

	#masthead.nav-fixed-top {
		padding-top: var(--header-height);
	}
}
@media(min-width:768px){
	#masthead.nav-fixed-top {
		padding-top: var(--header-height);
	}
}





#primaryOffcanvas .offcanvas-body{
	display:flex;
	flex-direction:column;
}
#rot_menu_contact {
    padding-top: 0rem;
    margin-top: 4rem;
    padding-bottom: 4rem;
    padding-left: calc(var(--container-margin));
    padding-right: calc(var(--container-margin));
}
.rot-menu-contact .theme-btn{
	font-size:1.2em;
}
.rot-menu-contact .social-link{
	font-size:3.3rem;
	color:var(--white);
	transition: color .4s, background-color .4s;
}
.rot-menu-contact .social-link:hover{
	color:var(--primary);
}
@media(min-width:1200px){
	.rot-menu-contact .social-link{
		font-size:2.7rem;
	}

}


[class*="col-"]{
	position: relative;
}
[class*="col-"]>.rot-img-absolute{
	width:calc(100% - var(--bs-gutter-x));
}

.title-wrap{
    position: absolute;
    z-index: 1;
}
.rot-title a{
	text-decoration:none;
}

p.rot-title.h1,
p.rot-title{
	margin-bottom:.5rem;
}

.display-header .rot-swiper article.rot-item,
.display-header .rot-swiper .img-col,
.display-header .rot-swiper .content-col{
	/* min-height:12rem; */
	min-height: var(--display-header-min-h);
}


/*ANIMATION conten-col*/
.display-header .content-col{
	transform: translate3d(-50vw, 0, 0);
	transition: transform 0.5s;
	will-change: transform;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
.display-header .swiper-slide-active .content-col{
	transform: translate3d(0, 0, 0);
}

@media(min-width:768px){
	.display-header .rot-swiper article.rot-item,
	.display-header .rot-swiper .img-col,
	.display-header .rot-swiper .content-col{
		min-height:var(--display-header-min-h);
	}

}
/*__DEBUG__*/
.logged-in #s_toggler1:after{
	content:'';
	width:20px;
	height:1px;
	position: absolute;
	top: 0;
	left:0;
	border-bottom:2px dotted red;
}

.display-header .swiper-slide{
	height: auto;
	background:var(--white);
}

/*navbar transparent*/
/*navbar transparent*/
/*navbar transparent*/


body.header-transparent-scroll-0>main{
	margin-top:calc(0px - var(--header-height) - 0px);
}

#masthead .navbar{
	background-color:transparent!important;
	box-shadow:none!important;
}


body.header-transparent-scroll-0:not(.past-threshold) #masthead,
body.header-transparent-scroll-0:not(.past-threshold) #masthead .navbar{
	/* background-color:var(--semi-transparent-dark)!important; */
	background:transparent!important;
}

.navbar.fixed-top .navbar-collapse {
    position: fixed;
    top: calc(var(--admin-bar-height) + 0px);
    top: calc(0px);
    background: var(--semi-transparent-darker);
    padding-top: calc(var(--header-height) * 3 + 2rem);
    height: calc(100vh - var(--admin-bar-height) - 0rem);
    height: calc(100vh - 0rem);
	transition: padding .5s, height .5s;
}
.navbar.fixed-top .navbar-collapse.show {
}

ul.navbar-nav{
	padding-left:var(--container-margin);
	padding-right:var(--container-margin);
}
body.scrolled-down.past-threshold #masthead:not(.nav-after-dh).primary-nav-showing .navbar.fixed-top {
	transform: translateY(00%);
}
body.scrolled-down.past-threshold #masthead:not(.nav-after-dh).primary-nav-showing .navbar.fixed-top .navbar-collapse{
	height: calc(100vh - 0rem);
}

	body.header-transparent-scroll-0:not(.past-threshold) #masthead .navbar{
		/* background-color:var(--semi-transparent-dark)!important; */
		background:transparent!important;
	}

	#masthead .navbar{
		background-color:var(--grey-dark)!important;
	}

@media(min-width:992px){
	.navbar.fixed-top.navbar-expand-lg .navbar-collapse {
	}
}
@media(min-width:1200px){
	body.header-transparent-scroll-0:not(.past-threshold) #masthead,
	body.header-transparent-scroll-0:not(.past-threshold) #masthead .navbar{
		/* background-color:var(--semi-transparent-dark)!important; */
		background:var(--grey-dark)!important;
	}
	#masthead .navbar{
		background-color:var(--grey-dark)!important;
	}
	.navbar.fixed-top.navbar-expand-xl .navbar-collapse {
		top: calc(var(--admin-bar-height) + 0px);
		top: calc(0px);
		background: transparent;
		padding-top: 0;
		height:auto;
	}
	.navbar-expand-xl #rot_menu_contact {
		padding-bottom: 0rem;
		padding-left: 1rem;
		padding-right: 0px;
		margin-top:0;
	}
	ul.navbar-nav{
		padding-left:0;
		padding-right:0;
	}
}


.navbar.fixed-top {
	transition: transform 200ms ease, background-color 300ms ease, top 0ms;
    will-change: transform, background-color, top;
}
body.scrolled-up .navbar.fixed-top {
	pointer-events:none;
}
body.scrolled-up .navbar.fixed-top .navbar-collapse,
body.scrolled-up .navbar.fixed-top .navbar-toggler{
	pointer-events:all;
}


.navbar-brand>.rot-svg-svg>*{
	pointer-events:none;
}
.navbar-brand>.rot-svg-svg {
    position: relative;
    top: 0px;
    width: auto;
    height: calc(3.2 * var(--header-height));
    transition: height .3s, top .3s, max-height .3s, width .3s;
    will-change: max-height, height, width;
}






.rot-brand-container{
	z-index:4;
}


#masthead .navbar:before {
	content: '';
    background: transparent;
    box-shadow: none;
    width: 150px;
    height: 100%;
    position: absolute;
	transition: box-shadow .5s, background .5s;
	display:none;
}

.past-threshold #masthead .navbar:before {
	content: '';
	background: var(--white);
	box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
}
.past-threshold #masthead .navbar:after {
	content: '';
	background: var(--white);
	box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
}

body .navbar-toggler {
	color:white;
}
.navbar-toggler-icon .center-bar, .navbar-toggler-icon:after, .navbar-toggler-icon:before {
    background-color: var(--primary);

}


.brand-logo-wrap-outer_2{
	width: var(--header-logo-width, 120px);
	pointer-events:all;
	transition: width .5s;
}

a.navbar-brand {
    opacity: 1;
    /* pointer-events: none; */
    transition: opacity 300ms;
    z-index: 3;
    width: 100%;
    position: relative;
    display: block;
    height: calc(var(--header-height) - 2 * var(--bs-navbar-padding-y));
}
body.past-threshold a.navbar-brand{
		opacity:1;
		pointer-events:all;
}


#masthead #primaryNav {
	padding-left: 0;
    padding-right: 0;
	overflow:auto;
}
#masthead.primary-nav-showing #primaryNav {
	display: flex;
	flex-direction: column;
	align-content: flex-start;
	align-items: flex-start;
}



@media(min-width:600px){
	body.header-transparent-scroll-0>main{
		margin-top:calc(0px - var(--header-height) - 0px);
	}

}
@media(min-width:768px){
	body.header-transparent-scroll-0>main{
		margin-top:calc(0px - var(--header-height));
	}
	a.navbar-brand{
		opacity:1;
		pointer-events:all;
	}
}


@media(min-width:1200px){
	/*auch falls mal die nav vom mobile breakpoint offen bleibt, overrulen!*/
	#masthead #primaryNav{
		justify-content:flex-end!important;
		flex-direction:row!important;
		align-items:center!important;
	}
}

/*NAV menu*/
#primaryOffcanvas.offcanvas {
	top:0;
}
body:not(.scrolled) #primaryOffcanvas.offcanvas {
	top: var(--admin-bar-height);
}
@media(min-width:600.98px){
	#primaryOffcanvas.offcanvas {
		top: var(--admin-bar-height);
	}
}
.offcanvas-showing .navbar-toggler-icon {
    transform: rotate(45deg) translate(0px, 0px);
    transform-origin: center;
}

.offcanvas-showing .navbar-toggler-icon:before {
    transform: rotate(450deg) translate(0.35em, 0.82em);
    width: 100%;
    /* width: 1.5em; */
}
.offcanvas-showing .navbar-toggler-icon .center-bar {
    transform: translateX(-0.82em) rotate(360deg);
    width: 100%;
}
.offcanvas-showing .navbar-toggler-icon:after {
	transform: rotate(-450deg) translate(0.36em, -0.4em);
    bottom: 3px;
}
.offcanvas {
	--bs-navbar-toggler-border-radius: var(--bs-border-radius);
	--bs-navbar-toggler-focus-width: 0.25rem;
	--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
}
.offcanvas .navbar-toggler {
	margin-left: auto;
}


.limit-width{
	max-width:1000px!important;
}
.footer-title,
.offcanvas-title{
	font-size: 30px;
    font-weight: 700;
    margin-top: -0.2em;
}
.footer-title{
	font-size:40px;
}

.rot-menu-label{
	opacity:0;
	pointer-events:none;
	width:0;
	display: inline-block;
	overflow:hidden;
	transition: opacity .4s, width .2s;

}
.offcanvas-header .rot-menu-label,
.past-threshold .rot-menu-label{
	opacity: 1;
    width: auto;
	pointer-events: all;
	padding-left: .3em;
}

.offcanvas-body{
	padding-left:0!important;
	padding-right:0!important;
}

.navbar-nav{
	font-size:1.2rem;
}
.offcanvas .navbar-nav{
	font-size:2.625rem;
}

.offcanvas .navbar-nav .nav-link {
    padding: 0.9rem 0;
    /* font-size: 2.625rem; */
    line-height: .9;
}

.offcanvas .navbar-nav .nav-link {
    padding: .5rem 0;
    font-size: inherit;
}


.nav-item.current_page_item>.nav-link{
	color:var(--secondary-hover);
}


.nav-link.dropdown-toggle{
	white-space:normal;
}

/*DROPDOWN NAV*/
/*DROPDOWN NAV*/
/*DROPDOWN NAV*/
ul.navbar-nav{
	--bs-nav-link-color:var(--white);
	--bs-nav-link-hover-color:var(--primary);
	--bs-navbar-active-color:var(--primary);
}
ul.dropdown-menu{
	--bs-dropdown-link-active-color:var(--text);
	--bs-dropdown-link-active-bg:transparent;
	--bs-dropdown-link-hover-color:var(--primary);
    --bs-dropdown-link-hover-bg:transparent;
}
.dropdown-item.active,
.dropdown-item:active{

}

ul.dropdown-menu>li.menu-item{
	font-size: calc(2em - 6px);
}
ul.dropdown-menu>li.menu-item>a{
	font-size: inherit;
}
ul.dropdown-menu>li.menu-item.lvl1{
	margin-bottom:.7rem;
}


ul.dropdown-menu.show{
	position:relative!important;
	transform:translate(0px,0px)!important;
	border:none!important;
}



@media(min-width:768px){
	.offcanvas-header .rot-menu-label,
	#masthead .rot-menu-label{
		opacity: 1;
		width: auto;
		pointer-events: all;
		padding-left: .3em;
	}
}









/* #d_header .swiper-fade .swiper-wrapper,
#d_header .swiper-fade .swiper-wrapper .swiper-slide{
	pointer-events:none;
}
#d_header .swiper-fade .swiper-wrapper .rot-slide-content{
	pointer-events:all;
} */
#d_header .swiper-fade .swiper-slide{
	cursor:auto!important;
}

#d_header .h-top,
#d_header .h1{
	margin-bottom:1rem;
}


#d_header.low-header .header-bg {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#d_header.low-header .header-bg img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#d_header.low-header{
	transition:margin .5s;
}
@media(min-width:992px){
	#d_header.low-header{
		margin-top: calc(var(--header-height) - 0rem);
		margin-top:0;
	}
}





/*TYPO*/
/*TYPO*/
/*TYPO*/
/*TYPO*/
/*TYPO*/

.hyphens-auto{
	hyphens:auto;
}

p {
    line-height: 1.36;
    margin-bottom: 1.1rem;
}
ul{
	margin-bottom: 1.7rem;
}
h1,.h1{
	font-size:var(--rot-h1-size);
	display:block;
	margin-bottom: 2rem;
	font-family:var(--sans2);
	hyphens:auto;
}
.page:not(.home) .h2,
.page:not(.home) h2{
	max-width:25.8rem;
	max-width:100%;
}
.page:not(.home) h2.mighty,
.page:not(.home) .h1.mighty,
.page:not(.home) h1.mighty,
.page:not(.home) .mighty{
	max-width:100%;
}
h2,.h2{
	font-size:var(--rot-h2-size);
	max-width: 8.8em;
	margin-bottom: 1.2rem;
	line-height: 1;
	font-weight:600;
	hyphens:auto;
}

h2.serif,.h2.serif{
	font-weight:300;
	hyphens:auto;
}
h3,.h3{
	font-size:var(--rot-h3-size);
	margin-bottom:.7rem;
}
h4,.h4{
	font-size:var(--rot-h4-size);
	margin-bottom:.67rem;
}

body .serif{
	font-family:var(--serif);
}

body .max-w-11em{
	max-width:11em!important;
}
body .max-w-9em{
	max-width:9em!important;
}

h2.wide,
.h2.wide{
	max-width: 20em;
}
body .sans2{
	font-family:var(--sans2);
}
body .mighty{
	font-weight:300;
	font-family:var(--serif);
	line-height:0.9;
	letter-spacing:-.03em;
}
body .sub-h{
	margin-top:1.1rem;
	font-size:.54em;
	font-weight:500;
	display:block;
}
body .h1 .sub-h,
body h1 .sub-h{
	line-height: 1.1;
}

body .make-strong-serif strong {
    font-family: var(--serif);
    font-size: 1.2em;
    display: inline-block;
    line-height: 0.9;
    margin-right: 0.2em;
}

.list-unstyled{
	list-style:none;
	padding-left:0;
}




/*BORDER*/
/*BORDER*/
/*BORDER*/
/*BORDER*/
/*BORDER*/
/*BORDER*/


.border-padding-left{
	padding-left:var(--rot-border-padding,3rem);
}
.border-right{
	padding-right:var(--rot-border-padding,3rem);
	border-right:var(--rot-border-width,2px) var(--rot-border-stroke,dotted) var(--rot-border-color,var(--text));
}
@media(min-width:768px){
	.border-md-right{
		padding-right:var(--rot-border-padding,3rem);
		border-right:var(--rot-border-width,2px) var(--rot-border-stroke,dotted) var(--rot-border-color,var(--text));
	}
	.border-padding-left-md{
		padding-left:var(--rot-border-padding,3rem);
	}
}
@media(min-width:992px){
	.border-lg-none{
		border:none;
	}
	.border-lg-right{
		padding-right:var(--rot-border-padding,3rem);
		border-right:var(--rot-border-width,2px) var(--rot-border-stroke,dotted) var(--rot-border-color,var(--text));
	}
	.border-padding-left-lg{
		padding-left:var(--rot-border-padding,3rem);
	}
}
@media(min-width:1200px){
	.border-xl-right{
		padding-right:var(--rot-border-padding,3rem);
		border-right:var(--rot-border-width,2px) var(--rot-border-stroke,dotted) var(--rot-border-color,var(--text));
	}
	.border-padding-left-xl{
		padding-left:var(--rot-border-padding,3rem);
	}
}
@media(min-width:1400px){
	.border-xxl-right{
		padding-right:var(--rot-border-padding,3rem);
		border-right:var(--rot-border-width,2px) var(--rot-border-stroke,dotted) var(--rot-border-color,var(--text));
	}
	.border-padding-left-xxl{
		padding-left:var(--rot-border-padding,3rem);
	}
}
@media(min-width:1700px){
	.border-xxxl-right{
		padding-right:var(--rot-border-padding,3rem);
		border-right:var(--rot-border-width,2px) var(--rot-border-stroke,dotted) var(--rot-border-color,var(--text));
	}
	.border-padding-left-xxxl{
		padding-left:var(--rot-border-padding,3rem);
	}
}


.wp-block-separator{
    border-top: 3px solid var(--text);
    margin-top: 2rem;
    padding-bottom: 1.5rem;
}
.border-bottom,
.border-top{
	border-width:2px;
	--bs-border-width:2px;
	border-color:var(--text);
	--bs-border-color: var(--text);
}
.border-top.dotted,
.wp-block-separator.dotted{
    border-top-style: dotted;
    --bs-border-style: dotted;

}


.swiper {
	visibility: hidden;
	opacity:0;
	transition:opacity .5s;
}

[data-rot-swiper].rot-swiper-ready,
.swiper.is-ready {
	visibility: visible;
	opacity:1;
}



/*footer*/
/*footer*/
/*footer*/
body #main_footer h3:after,
body #main_footer .h3:after{
	content:'';
	width:2em;
	border-bottom:2px solid var(--text);
	display:block;
	position:absolute;
	bottom:0;
}
body #main_footer h3,
body #main_footer .h3{
	font-size: calc(var(--rot-h3-size) * .72);
    padding-bottom: 0.9rem;
    margin-bottom: 0.7rem;
    position: relative;
    display: block;
}
body #main_footer ul,
body #main_footer p,
body #main_footer{
	font-size: calc(var(--regular-p-size) * .9);
	line-height:1.6;
}
body #main_footer ul{
	text-transform:uppercase;
	padding-left:0;
	list-style:none;
}
body #main_footer a{
	color: var(--primary);
    text-decoration: none;
    font-weight:600;
    /* text-transform: uppercase; */
	transition:color .5s;
	font-size:.92em;
}
body #main_footer .rot-btns{
	gap:5px;
}
body #main_footer a.rot-btn{
	color: var(--white);
	transition:color .4s, background-color .4s;
}
body #main_footer a:hover{
	color: var(--primary-light);
}
body #main_footer a.rot-btn:hover{
	color: var(--white);
	background:var(--primary-dark);
}






/* body .rotate180:before, */
body .rotate180{
	transform: scaleX(-1);
}




/*animation skip*/
/*animation skip*/
/*animation skip*/
/*animation skip*/
#skip-intro-anim {
    z-index: 200000000;
    position: fixed;
    bottom: 0;
    left: auto;
    right: 0;
    background: var(--white);
    border: none;
    font-weight: 700;
    font-size: 2em;
    margin-right: 2rem;
    margin-bottom: 2rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity .5s;
}
body:not(.load-animations-done) #skip-intro-anim {
	opacity:1;
	pointer-events:all;
}















/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/
/*BROCKMANN ONLY*/


/*LOGO ANIMATION*/
/*LOGO ANIMATION*/
/*LOGO ANIMATION*/
body{
	--stift-2-size: 260px;
	--papierflieger-size:190px;
	--stift-blau-size: 240px;
}


.anim-logo-wrap-outer {
	--papierflieger-size:190px;

    z-index: 100000;
    background-color: transparent;
    transition: transform .5s, width .5s, height .5s, background-color .5s, opacity .5s;
    position: fixed;
    top: var(--admin-bar-height);
    left: 0;
    width: 100%;
    height: calc(100vh - var(--admin-bar-height));
	min-height:600px;
	opacity:0;
	pointer-events:none;
	overflow:hidden;
}
body:not(.load-animations-done) .anim-logo-wrap-outer{
    /* position: fixed; */
    /* top: var(--admin-bar-height); */
    /* left: 0; */
    /* width: 100%; */
    /* height: calc(100vh - var(--admin-bar-height)); */
    background: var(--white);
	opacity:1;

}
@media(max-width:600px){
	body.scrolled .anim-logo-wrap-outer {
		top:0;
		height:100vh;
	}
}


body:not(.load-animations-done) .navbar-anim{
	width: 116px;
    height: 210px;
    display: block;
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
}

.anim-brand {
    max-height: 550px;
    position: absolute;
    width: 300px;
    left: 50%;
    transform: translate(-50%, -50%);
    top: calc(50% - var(--admin-bar-height));
}

/* .scrolled-down .anim-logo-wrap-outer{
	transform:translateY(var(--header-height));
} */


.rot-logo-anim .logo-path-1 {
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
	animation: rotDrawPath 2.2s ease-in-out .5s forwards;
}

@keyframes rotDrawPath {
	to {
		stroke-dashoffset: 0;
	}
}
/* .rot-logo-anim .logo-path-2 {
	opacity: 0;
} */

.rot-logo-anim .logo-path-2 {
	stroke-dasharray: 1;
	stroke-dashoffset: 1;
	animation: rotDrawPath 2.6s ease-in-out 2.1s forwards;
}

.anim-papierflieger {
	position: absolute;
	left: 0;
	top: 70%;
	z-index: 2;
	width: var(--papierflieger-size);
	margin: 0;
	pointer-events: none;
	opacity: 0;
	transform: translate(-140%, 0) rotate(12deg) scaleX(-1);
	will-change:transform, opacity;
	animation: rotPapierfliegerFly 3s ease-in-out 1s forwards;
}
.anim-papierflieger img {
	display: block;
	width: 100%;
	height: auto;
}

@keyframes rotPapierfliegerFly {
	0% {
		opacity: 0;
		transform: translate(-140%, 0) rotate(12deg) scaleX(-1);
	}

	12% {
		opacity: 1;
	}

	/* 65% {
		opacity: 1;
		transform: translate(55vw, -40vh) rotate(12deg) scaleX(-1);
	} */

	100% {
		opacity: 1;
		transform: translate(115vw, -50vh) rotate(12deg) scaleX(-1);
	}
}

@media (min-width: 768px) {
	.anim-logo-wrap-outer {
		--papierflieger-size: 160px;
	}
}

@media (min-width: 1200px) {
	.anim-logo-wrap-outer {
		--papierflieger-size: 190px;
	}
}


.anim-stift-blau {
    --stift-blau-size: 240px;
    width: var(--stift-blau-size);
    transform-origin: left bottom;
    opacity: 0;
    transform: rotate(32deg) scale(1);
    animation: rotStiftBlau 4s ease-in-out 1.8s forwards;
    top: calc(50% - 100px);
    position: absolute;
    left: calc(50% - 193px);
}

@keyframes rotStiftBlau {
	0% {
		opacity: 0;
		transform: rotate(32deg) scale(1);
	}

	5% {
		opacity: 1;
		transform: rotate(32deg) scale(1);

	}

	6% {
		opacity: 1;
		transform: rotate(32deg) scale(1);
	}

	12% {
		opacity: 1;
		transform: rotate(41deg) scale(1);
	}

	65% {
		opacity: 1;
		transform: rotate(41deg) scale(1);
	}

	70% {
		opacity: 1;
		transform: rotate(32deg) scale(1);
	}

	90% {
		opacity: 1;
		transform: rotate(32deg) scale(1);
	}

	100% {
		opacity: 0;
		transform: rotate(32deg) scale(1);
	}
}


.anim-stift2-gruen {
    --stift-2-size: 260px;
    width: var(--stift-2-size);
    transform-origin: left bottom;
    opacity: 0;
    transform: rotate(-8deg) scaleX(-1);
    animation: rotStift2Gruen 5.5s ease-in-out 0s forwards;
    top: calc(50% - 330px);
    position: absolute;
    left: calc(50% - -187px);
}

@keyframes rotStift2Gruen {
	0% {
		opacity: 0;
		transform: rotate(-8deg) scaleX(-1);
	}

	5% {
		opacity: 1;
		transform: rotate(-8deg) scaleX(-1);

	}

	10% {
		opacity: 1;
		transform: rotate(-8deg) scaleX(-1);
	}

	20% {
		opacity: 1;
		transform: rotate(-11deg) scaleX(-1);
	}

	35% {
		opacity: 1;
		transform: rotate(-11deg) scaleX(-1);;
	}

	45% {
		opacity: 1;
		transform: rotate(-8deg) scaleX(-1);
	}

	92% {
		opacity: 1;
		transform: rotate(-8deg) scaleX(-1);
	}

	100% {
		opacity: 0;
		transform: rotate(-8deg) scaleX(-1);
	}
}




/*NAV*/
/*NAV*/
/*NAV*/
@media(max-width:1199.98px){
	body #masthead.primary-nav-showing{
		--header-logo-width:50px;
	}
	body #masthead.primary-nav-showing .navbar.fixed-top .navbar-collapse {
		padding-top: calc(var(--header-height) * 1 + 2rem);
	}
	body #masthead.primary-nav-showing .navbar-brand>.rot-svg-svg {
		height: calc(1 * var(
		--header-height));
	}
	body #masthead .collapse.show #brock_date,
	body #masthead.primary-nav-showing #brock_date{
		display:none;
	}
}




/*D-HEADER*/
/*D-HEADER*/
/*D-HEADER*/
#d_header{
	background:var(--white);
}



.rot-swiper-head{
	padding-left:1.1rem;
}
@media(min-width:640px){
	.rot-swiper-head{
		padding-left:.1rem;
		top:220px;
	}
}
@media(min-width:768px){
	.rot-swiper-head{
		top:250px;
	}
}


#d_header .h1,
#d_header h1{
	font-size: var(--rot-h1-size-xl);
	line-height: 0.9;
	margin-bottom: 1.4rem;
}
body:not(.home) #d_header .h1,
body:not(.home) #d_header h1{
	margin-bottom: 1rem;
}



.rot-swiper-wrap{
	z-index:2;
	position:relative;
}

@media(min-width:992px){
	#d_header .h1,
	#d_header h1{
		margin-bottom: 2rem;
	}


}




.rot-swiper-listener {
    position: absolute;
    /* bottom: 2rem; */
	top:23rem;
    height: auto;
    /* transform: translateY(0); */
    /* border: 1px dotted red; */
    z-index: 2;
    margin-left: var(--container-margin);
    width: var(--container-width);
    margin-right: var(--container-margin);
}
.rot-swiper-listener button,
.rot-swiper-listener a{
	pointer-events:all;
}
.rot-swiper-listener .inner {
    /* margin-top: 18rem; */
    height: calc(100% - 18rem);
    margin-bottom: 1rem;
    padding: 1rem;
    display: flex;
    flex-direction: column;
}
.rot-item-slide>.inner,
#d_header>.inner {
	position: absolute;
    top: 0;
    width: calc(var(--container-width));
    margin-left: var(--container-margin);
    margin-top: calc(var(--header-height) + 4rem);
    height: calc(100% - var(--header-height) - 8rem);
}
#d_header.low-header>.inner {
	height: calc(100% - var(--header-height) - 5rem);
}

#d_header.low-header{
	--header-img-height:300px;
}


#d_header.low-header .header-bg{
	left:auto;
	overflow:hidden;
	max-height:var(--header-img-height);
}
#d_header.low-header .header-bg,
.slide-bg-img {
	position: absolute;
    height: calc(61% - 4rem - var(--header-height));
    width: calc(57% - 1.3rem);
    top: calc(var(--header-height) + 0.5rem);
    border-radius: 20px;
    right: calc(var(--container-margin) + 1rem);
}
#d_header.low-header .header-bg{
	height:var(--header-img-height);
}


.listener-slot p {
    font-size: calc(var(--regular-p-size) + 3px);
    line-height: 1.14;
    font-weight: 400;
    color: var(--primary-dark);
}


/*das ganze als static header low*/
.header-cont-wrap {
    margin-left: var(--container-margin);
    /* margin-top: calc(var(--header-height) + 4rem); */
    position: relative;
    padding-top: calc(var(--header-img-height) + 102px);
    max-width: 100%;
    padding-left: 0.7rem;
	padding-bottom:.5rem;

	display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    min-height: 530px;
}



@media(min-width:768px){
	.header--cont-wrap{
		padding-top: 410px;
	}
}
@media(min-width:992px){
	.header-cont-wrap{
		margin-left: var(--container-margin);
		/* margin-top: calc(var(--header-height) + 4rem); */
		position: relative;
		padding-top: 220px;
		max-width: 47%;
	}
	#d_header.low-header .header-bg,
	.slide-bg-img {
		height: calc(100% - 4rem - var(--header-height));
		top: calc(var(--header-height) + 2rem);
		width: 37%;
	}
	.rot-swiper-head {
		top: 224px;
	}
	.rot-swiper-listener {
		top:280px;
		max-width:47%;
	}
	#d_header.low-header .header-bg{
		max-height:none;
	}
}
@media(min-width:1400px){
	.rot-swiper-listener {
		top:280px;
		max-width:42%;
	}
	/*low header*/
	.header-cont-wrap {
		max-width:46%;
		padding-bottom:2rem;
	}


	.listener-slot p {
		font-size: calc(var(--regular-p-size) + 7px);
	}
}




/*---------SLIDER DRAWINGS-------------*/
.display-header.low-header .drawings,
.swiper-slide .drawings{
	--drawing-size:115px;

	--top-stift-weiss:100px;
	--top-stift-gruen:80px;
	position: absolute;
    right: var(--container-margin);
    top: 0;
	top: calc(var(--header-height) - 1rem);
    width: 70%;
    max-height: 100%;
    overflow: hidden;
	height: calc(61% - .8rem - var(--header-height));
}
.display-header.low-header .drawings {
    height: calc(var(--header-img-height) + 3.2rem);
}

.drawings figure{
	width:var(--drawing-size);
	position:absolute;
	top:0;
	left:0;
	margin:0;
}
.drawings figure.h-anim-papierflieger{
	bottom: 0;
    top: auto;
    left: auto;
    right: 0;
}
.drawings figure.h-anim-stift2-gruen{
	top:var(--top-stift-gruen);
}
.drawings figure.h-anim-stift-blau{
    transform: rotate(41deg);
    top: -7px;
    left: 40px;
}
.drawings figure.h-anim-stift-weiss{
	transform: rotate(-1deg);
    left: 0px;
    top: var(--top-stift-weiss,100px);
    width: calc(var(--drawing-size) + 20px);
}


@media(min-width:640px){
	.display-header.low-header .drawings,
	.swiper-slide .drawings{
		--drawing-size:144px;
	}
}
@media(min-width:992px){
	.display-header.low-header .drawings,
	.swiper-slide .drawings{
		--drawing-size:154px;
		--top-stift-weiss:200px;
		--top-stift-gruen:230px;
		width:43%;
		height: calc(100% - 0rem - var(--header-height));
		top: calc(var(--header-height) + 0rem);
	}
}
@media(min-width:1400px){
	.display-header.low-header .drawings,
	.swiper-slide .drawings{
		--drawing-size:244px;
		--top-stift-weiss:250px;
		--top-stift-gruen:290px;
	}
}
@media(min-width:1920px){
	.display-header.low-header .drawings,
	.swiper-slide .drawings{
		width:48%;
	}
	.slide-bg-img{
		width:44%;
	}
}





.swiper-slide .h-anim-papierflieger {
    transform: translate(0px, 0px) scale(1);
}

.swiper-slide.h-anim-started[data-swiper-slide-index="1"] .h-anim-papierflieger,
.swiper-slide.h-anim-started[data-swiper-slide-index="3"] .h-anim-papierflieger,
.swiper-slide.h-anim-started[data-swiper-slide-index="4"] .h-anim-papierflieger {
	animation: hPapierfliegerFlyIn 1.1s ease-in-out 1.3s forwards;
}

@keyframes hPapierfliegerFlyIn {
	0% {		transform: translate(0px, 0px) scale(1)	}

	15% {		opacity: 1;	}

	90% {		opacity: 1;	}

	100% {		opacity: 0;		transform: translate(-240px, -140px) scale(0.01);	}
}


.swiper-slide .h-anim-papierflieger2 {
    opacity: 0;
    /* pointer-events: none; */
    top: 50px;
    transform: translate(70vw, 10vw) rotate(-22deg);
}

.swiper-slide.h-anim-started[data-swiper-slide-index="1"] .h-anim-papierflieger2,
.swiper-slide.h-anim-started[data-swiper-slide-index="4"] .h-anim-papierflieger2 {
	animation: hPapierfliegerFly 2.7s ease-in-out .6s forwards;
}
@media(min-width:1400px){
	.swiper-slide.h-anim-started .h-anim-papierflieger2 {
		animation-duration: 3.6s;
	}

}
@keyframes hPapierfliegerFly {
	0% {		opacity: 0;		transform: translate(70vw, 10vw) rotate(-22deg);	}

	15% {		opacity: 1;	}

	80% {		opacity: 1;	}

	100% {		opacity: 0;		transform: translate(-60vw, 2vw) rotate(-22deg);	}
}

.h-anim-stift2-gruen {
	transform-origin: left bottom;

}

.swiper-slide.h-anim-started[data-swiper-slide-index="1"] .h-anim-stift2-gruen,
.swiper-slide.h-anim-started[data-swiper-slide-index="3"] .h-anim-stift2-gruen {
	animation: hStiftGruenPaint 3.4s ease-in-out forwards;
}

@keyframes hStiftGruenPaint {
	0% {		transform: rotate(0deg);	}

	15% {		opacity: 1;		transform: rotate(1deg);	}

	28% {		transform: rotate(-3deg);	}

	41% {		transform: rotate(3deg);	}

	54% {		transform: rotate(-2deg);	}

	67% {		transform: rotate(2deg);	}

	80% {		transform: rotate(-1deg);	}

	100% {		opacity: 1;		transform: rotate(0deg);	}
}
.h-anim-stift-weiss {
	transform-origin: left bottom;

}

.swiper-slide[data-swiper-slide-index="2"].h-anim-started .h-anim-stift-weiss,
.swiper-slide.h-anim-started[data-swiper-slide-index="0"] .h-anim-stift-weiss {
	animation: hStiftWeissPaint 4.4s ease-in-out forwards;
}

@keyframes hStiftWeissPaint {
	0% {		transform: rotate(-1deg);	}

	15% {		opacity: 1;		transform: rotate(1deg);	}

	28% {		transform: rotate(-3deg);	}

	41% {		transform: rotate(3deg);	}

	54% {		transform: rotate(-2deg);	}

	67% {		transform: rotate(2deg);	}

	80% {		transform: rotate(-1deg);	}

	100% {		opacity: 1;		transform: rotate(0deg);	}
}



.drawings figure.h-anim-stift-blau {
    transform: rotate(41deg);
    top: -55px;
    left: 40px;
    transform-origin: left bottom;
    width: calc(var(--drawing-size) + 10px);
}


.swiper-slide[data-swiper-slide-index="3"].h-anim-started .h-anim-stift-blau,
.swiper-slide.h-anim-started[data-swiper-slide-index="0"] .h-anim-stift-blau {
	animation: hStiftBlauPaint 4s ease-in-out .5s forwards;
}

@keyframes hStiftBlauPaint {
	0% {		transform: rotate(41deg);	}

	15% {		opacity: 1;		transform: rotate(43deg);	}

	28% {		transform: rotate(36deg);	}

	41% {		transform: rotate(44deg);	}

	54% {		transform: rotate(38deg);	}

	67% {		transform: rotate(43deg);	}

	80% {		transform: rotate(40deg);	}

	100% {		opacity: 1;		transform: rotate(41deg);	}
}






/*ROT CONTENT*/
/*ROT CONTENT*/
/*ROT CONTENT*/
/*ROT CONTENT*/

#rot_content{
	--rot-border-width:2px;
	--rot-border-stroke:dashed;
	--rot-border-color:var(--grey);
}





/*IMGS*/
/*IMGS*/
/*IMGS*/
.rot-content-img.portrait {
    max-width: 24rem;
}


/*---------/slider drawings-------------*/

header .contact{
	color:white;
	text-transform: uppercase;
}




/*KARO PATTERN*/
/*KARO PATTERN*/
/*KARO PATTERN*/
/*KARO PATTERN*/



.kariert {
	--grid-size: 20px;
	--grid-line: rgba(80, 160, 220, 0.25);
	--grid-line-width: 2px;

	background-color: transparent;
	background-image:
		linear-gradient(to right, var(--grid-line) var(--grid-line-width), transparent var(--grid-line-width)),
		linear-gradient(to bottom, var(--grid-line) var(--grid-line-width), transparent var(--grid-line-width));
	background-size: var(--grid-size) var(--grid-size);
	background-position: calc(0px - var(--grid-size) / 2) calc(0px - var(--grid-size) / 2);

	/* padding: 2rem; */
}



.liniert {
	--line-size: 26px;
	--line-color: rgba(80, 160, 220, 0.25);
	--line-width: 2px;
	--margin-line-offset: 2rem;

	position: relative;
	background-color: transparent;
	background-image:
		linear-gradient(
			to bottom,
			var(--line-color) var(--line-width),
			transparent var(--line-width)
		);
	background-size: 100% var(--line-size);
	background-position: 0 calc(0px - var(--line-size) / 2);
}

.liniert::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: var(--margin-line-offset);
	width: var(--line-width);
	background-color: var(--line-color);
	pointer-events: none;
}

.rot-card{
	--card-padding: 1.4rem;
	padding: var(--card-padding);
	border-radius: 12px;
	margin-bottom:2rem;
}
.rot-card p:last-child{
	margin-bottom:0;
}
.rot-card.bg-primary{
	background:var(--primary-lightest)!important;
}
@media(max-width:1199.98px){
	.rot-card.no-pad-x-xs,
	.no-pad-x-xs{
		padding-left:0!important;
		padding-right:0!important;
	}
}


/*NAV*/
/*NAV*/
/*NAV*/
/*NAV*/
/*NAV*/
#masthead{
	--rot-info-outer-width:370px;
	--rot-info-inner-width:310px;
}
#masthead #brock_date {
    opacity: 0;
    pointer-events: all;
    position: absolute;
    top: calc(var(--header-height));
	top: calc(var(--header-height) + var(--display-header-min-h) - 3.6rem);
    right: 0;
    padding-right: var(--container-margin);
    padding-top: 1rem;
    padding-left: 1rem;
    padding-bottom: 1rem;
    background: var(--primary);
    color: white;
    font-size: 2rem;
    font-weight: 200;
    transition: opacity .5s, transform .5s, padding .5s, background-color .5s;
    will-change: opacity,transform;
    max-width: var(--rot-info-outer-width);
}
#brock_date .close-info:before {
    content: '';
    position: absolute;
    top: calc(50% + 2px);
    left: 50%;
    width: 30px;
    height: 30px;
    border-radius: 1000px;
    transform: translate(-50%, -50%);
    background: var(--primary);
    z-index: -1;
}
#brock_date .close-info{
	position: absolute;
    top: 20px;
    left: auto;
    right: 1rem;
    font-size: 3rem;
	transition: color .5s;
	line-height:.7;
	cursor:pointer;
}
#brock_date .brock-date-1{
	display:block;
}


.rot-info-sticky .rot-info-wrap{
	overflow:hidden;
	width: var(--rot-info-inner-width,310px);
	transition:width .8s, max-width .8s;
	will-change:width, max-width;
}

.rot-info-sticky .rot-info-wrap-inner {
    transition: transform .8s;
    width: var(--rot-info-inner-width,310px);
	will-change:transform;
}
.rot-info-sticky.closed .close-info{
	color:var(--white);
}
.rot-info-sticky.closed .rot-info-wrap{
	width:0px;
}
.rot-info-sticky.closed {
	background-color:transparent!important;
	/* transform:translateX(101%); */
}

@media(min-width:600px){
	#masthead #brock_date {
		top: calc(var(--header-height) + var(--display-header-min-h) - 7.7rem);
	}
}
@media(min-width:768px){
	#masthead #brock_date {
		top: calc(var(--header-height));
	}
}

.load-animations-done #masthead #brock_date {
    opacity: 1;
    z-index: 1100;
}
.scrolled-down #masthead #brock_date{
	transform:translateY(calc(0px - 100% - var(--header-height)));
}

.scrolled-up.past-display-h-threshold #masthead #brock_date{
	padding-top:.2rem;
	padding-bottom:.2rem;
}

.navbar-brand>.rot-svg-svg {
    position: relative;
    top: calc(-13px);
    width: 100%;
    height: calc(3.2 * var(
    --header-height));
    transition: height .3s, top .3s, max-height .3s, width .3s;
    will-change: max-height, height, width;
}
body.scrolled-down.past-threshold #masthead:not(.nav-after-dh):not(.primary-nav-showing) .navbar.fixed-top .navbar-brand>svg {
    /* max-height: 100%; */
    /* top: 0px; */
    width: 0;
}
body.scrolled-up.past-threshold #masthead:not(.nav-after-dh):not(.primary-nav-showing) .navbar.fixed-top .navbar-brand>svg {
    /* max-height: 100%; */
    top: -60px;
    width: calc(var(--header-logo-width) / 2);
}


/*sponsor row*/
/*sponsor row*/
.sponsors-row {
    margin-bottom: 0;
    justify-content: center;
}

.sponsors-row .col {
    justify-content: center;
    align-items: flex-end;
    max-width: 100%;
    flex-basis: 100%;
}
.sponsors-row .col{
	flex: 0 0 100%;
	flex-wrap: wrap;
}
.sponsors-row .col figure {
	display: flex;
	flex: 0 0 50%;
	align-items: center;
	min-width: 20%;
	overflow: hidden;
	height: 90px;
	position: relative;
}
.sponsors-row figure img {
	max-height: inherit!important;
	max-width: 84%!important;
	border: none;
	padding: 0;
	margin-left: 8%;
	margin-right: 8%;
	width: 90%!important;
	object-fit: contain;
	position: absolute;
	height: 100%;
	top: 0;
}

figure.single-partner,
figure.single-sponsor{
	max-width: 320px;
    padding-bottom: 0!important;
    height: auto;
}
figure.single-partner.shadow-card,
figure.single-sponsor.shadow-card{
	padding: 2rem;
	padding-bottom: 2rem!important;
	box-shadow: 1px 1px 20px #0000001a;
	margin-top: 2rem;
}
figure.single-partner img,
figure.single-sponsor img{
	object-fit: contain;
    position: relative;
    height: auto;
    width: 100%;
}

.rot-border-bottom{
	margin-bottom: 2rem;
    border-bottom: 2px dotted var(--text);
    padding-bottom: 1rem;
}


@media(min-width:768px){
	.sponsors-row .col {
		max-width: 90%;
		-ms-flex-preferred-size: 90%;
		flex-basis: 90%;
	}
	.sponsors-row .col figure {
		flex: 0 0 25%;
	}
}
@media(min-width:992px){
	.sponsors-row .col {
		max-width: 50%;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
	}
	.sponsors-row .col.spons-full {
		max-width: 100%;
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		margin-top:1.1rem;
	}
	.sponsors-row .col:first-child {
		padding-right: 0px;
	}
	.sponsors-row .col figure {
		flex: 0 0 100%;
	}
	.sponsors-row .col.spons-full figure {
		flex: 0 0 33%;
	}
	.rot-border-bottom{
		margin-bottom:0;
		border-bottom:none;
		padding-bottom:0;
	}
}
@media(min-width:1520px){

	.sponsors-row .col figure {
		flex: 0 0 50%;
	}
	.sponsors-row .col.spons-full figure {
		flex: 0 0 25%;
	}
}
@media(min-width:1700px){
	.sponsors-row .col {
		max-width: 50%;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
	}

	.sponsors-row .col figure {
		flex: 0 0 50%;
	}
	.sponsors-row .col.spons-full figure {
		flex: 0 0 20%;
	}
}

.rot-video{
	--video-min-h:420px;
	min-height: var(--video-min-h);
	position:relative;
}
.rot-video video{
	min-height: var(--video-min-h);
	position:absolute;
	top:0;
	width:100%;
	height:100%;
	object-fit:cover;
}
@media(min-width:1200px){
	.rot-video{
		--video-min-h:620px;
	}
}
@media(min-width:1700px){
	.rot-video{
		--video-min-h:740px;
	}
}




figure.rot-content-img {
    border-radius: 12px;
    margin: 0;
    overflow: hidden;
    margin-bottom: 1.8rem;
}




body{
	--rot-brock-width:70px;
}
.rot-brock{
	height: var(--rot-brock-width, 120px);
    width: var(--rot-brock-width, 120px);
	--color:var(--secondary);
}

.rot-brock[data-form="square"]{
	background:var(--color);
}
.rot-brock[data-form="circle"] {
	--dot-size: var(--rot-brock-width,120px);
    --gap-size: var(--rot-brock-width,120px);
    --dot-color: var(--color);
    background-size: var(--gap-size) var(--gap-size);
    background-position: center;
    background-image: radial-gradient(
		circle,
		var(--dot-color) 0 calc(var(--dot-size) / 2),
		transparent calc((var(--dot-size) / 2) + 1px)
	);
}
.rot-brock[data-form="2circles"] {
	--dot-size: var(--rot-brock-width,120px);
    --gap-size: var(--rot-brock-width,120px);
    --dot-color: var(--color);
    background-size: var(--gap-size) var(--gap-size);
    background-position: calc(var(--rot-brock-width,120px) /2);
    background-image: radial-gradient(
		circle,
		var(--dot-color) 0 calc(var(--dot-size) / 2),
		transparent calc((var(--dot-size) / 2) + 1px)
	);
}

.rot-brock[data-form="2circles"][data-dir="vert"] {
	background-position: 0px calc(var(--rot-brock-width,120px) /2);
}

.rot-brock[data-color="purple"]{--color:var(--purple,purple);}
.rot-brock[data-color="primary"]{--color:var(--primary);}
.rot-brock[data-color="text"]{--color:var(--text);}

[data-brocks="horizontal"]{
	display: flex; flex-wrap:wrap;
	gap:4px;
}

@media(min-width:992px){
	body{
		--brock-width:100px;
	}
}
@media(min-width:1400px){
	body{
		--brock-width:120px;
	}
}






/*MEGA MENU*/
/*MEGA MENU*/
/*MEGA MENU*/
/*MEGA MENU*/

.mega-panel{
	box-shadow: var(--bs-box-shadow-lg);
}

.rot-mega__card,
.rot-mega__group{
	font-size:var(--rot-menu-fontsize,1.1rem);
}

.rot-mega__card-link .rot-mega__link-title,
.rot-mega__group-title {
	font-family: var(--serif);
    color: var(--text);
    font-weight: 400!important;
    font-size: var(--rot-mega-h-title-size,35px);
    line-height: .9;
    margin-bottom: 1rem;
    display: block;
}
.rot-mega__link-description,
.rot-mega__sublink .rot-mega__link-title,
.rot-mega__card-link .rot-mega__link-title{
	transition:color .3s, transform .3s;
	color: var(--text);

}


.rot-mega__link-description {
    font-size: .7em;
    line-height: 1.17;
    font-weight: 400;
    color: #616161 !important;
    display: block;
    margin-bottom: 0.9rem;
}

.rot-mega__sublink .rot-mega__link-title {
    font-size: var(--rot-mega-link-title-size, 1em);
    font-weight: 500;
    line-height: 0.9;
    margin-bottom: 7px;
}
.rot-mega__subitem{
	margin-bottom: 12px;
}
.rot-mega__card-link:focus .rot-mega__link-description,
.rot-mega__card-link:hover .rot-mega__link-description,
.rot-mega__card-link:focus .rot-mega__link-title,
.rot-mega__card-link:hover .rot-mega__link-title,
.rot-mega__sublink:focus .rot-mega__link-description,
.rot-mega__sublink:hover .rot-mega__link-description,
.rot-mega__sublink:focus .rot-mega__link-title,
.rot-mega__sublink:hover .rot-mega__link-title{
	color:var(--primary-dark);
	transform:translateX(5px);
}

#masthead.mega-showing .navbar-brand{
	opacity:0;
}

/*MEGA ATTACHMENT */
.attach-content-col>.rot-mega__attached-content>.rot-card>.rot-gal-slides,
.attach-content-col>.rot-mega__attached-content>.rot-card,
.attach-content-col>.rot-mega__attached-content{
	height:100%;
	margin:0!important;
}

.attach-content-col>.rot-mega__attached-content>.rot-card{
	min-height:300px;
}
.rot-mega__attached-content .rot-mega__title{
	font-size: var(--rot-mega-h-title-size,35px);
    font-family: var(--serif);
    margin-bottom: .5rem;
}

.rot-mega__attached-content .rot-sponsors .sponsor{
	--logo-figure-height: 3.4rem;
	--logo-figure-max-w: calc(50% - 1.5rem / 2 * 1);
}









/*rot gal slide*/
.rot-gal-slides {
	position: relative;
	display: block;
	overflow: hidden;
}
.attach-content-col .rot-card{
	overflow:hidden;
	position:relative;
}
.attach-content-col .rot-gal-slides{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.rot-gal-slides figure {
	position: absolute!important;
	inset: 0;
	height:100%;
	width:100%;
	object-fit:cover;
	margin: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity 900ms ease;
	z-index: 1;
}

.rot-gal-slides figure.is-active {
	opacity: 1;
	pointer-events: auto;
	z-index: 2;
}

.rot-gal-slides img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Höhe vom ersten Bild übernehmen */
.rot-gal-slides::before {
	content: "";
	display: block;
	aspect-ratio: 16 / 9;
}

/* Falls WordPress figure/img eigene Wrapper-Abstände setzen */
.rot-gal-slides .wp-caption,
.rot-gal-slides figure {
	width: 100%;
}

.rot-gal-slider-caption{
	z-index: 10000;
	position: absolute;
	color: var(--white);
	background: rgba(0, 0, 0, 0.116);
	height: 100%;
	top: 0;
	left: 0;
	width: 100%;
	padding: 1.4rem;
}
.rot-gal-slider-caption a{
	padding: 0.5rem;
    background: var(--text);
    color: var(--white)!important;
    width: fit-content;
    border-radius: 8px;
	transition:transform .3s;
}
.rot-gal-slider-caption a,
.rot-gal-slider-caption span{
	color:inherit!important;
}
.rot-gal-slider-caption a:hover,
.rot-gal-slider-caption a:focus{
	transform:translateX(5px);
}
.rot-gal-slider-caption a:hover span,
.rot-gal-slider-caption a:focus span{
	color:var(--primary-light)!important;
	transform:translate(0,0)!important;
}




/*LEHRER*/
.row.rot-cpt-lehrer{
	row-gap:16px;
}
.rot-item-lehrer .rot-img-relative {
    min-height: 20rem;
    border-radius: 12px;
    overflow: hidden;
}

.rot-item img[data-placeholder]{
	object-fit:cover;
	object-position:center;
}

.rot-item-lehrer .item-terms{
	display: flex;
    flex-wrap: wrap;
    gap: 0px 8px;
}
.rot-item-lehrer .term-zusatz{
	display: block;
    font-weight: 800;
	line-height:1.14;

}
.rot-item-lehrer .term-link{
	font-weight: 500;
    display: inline-block;
	line-height:1.14;
}
.rot-item-lehrer .term-suf{
	display: inline-block;
    background: var(--secondary-dark);
    padding: 0 5px;
    margin-left: 3px;
    color: white;
    font-weight: 600;
}
.rot-item-lehrer .lehrer-h{
	font-weight: 300;
    font-family: var(--serif);
    font-size: 2.1rem;
    hyphens: auto;
    line-height: .9;
    margin-bottom: 7px;
}


.rot-filter-group-heading{
	margin-top:3rem;
}


.rot-posts-items.flex-column{
	row-gap:1.5rem;
}


/*download*/
/*download*/
/*download*/
.rot-download {
    font-size: var(--regular-p-size)!important;
    /* background: var(--secondary-light); */
    /* padding: 6px 6px 6px 24px; */
    width: fit-content;
    /* border-radius: 82px; */
    padding-left: 1rem;
    border-left: 8px solid var(--purple);
}
.rot-download a:not([download]) {
    color: var(--text);
    font-weight: 500;
    line-height: 1.14;
    transition: color .4s, font-weight .4s;
    will-change: font-weight;
    margin-right: 12px;
    font-size: 1.2em;
    display: block;
    margin-bottom: 6px;
}
.rot-download a:not([download]):hover {
	font-weight: 900;
}
.rot-download a[download] {
	color: var(--white);
    font-family: var(--serif);
    font-size: 1.6rem;
    font-weight: 100;
    padding: 2px 20px;
    border-radius: 2px;
    background: var(--text);
	transition:background-color .4s, color .4s;
	margin-left:0;
}
.rot-download a[download]:hover {
	background: var(--primary-dark);
}

/*RULES*/
/*RULES*/
/*RULES*/
/*RULES*/
[data-rot-rule]{
	padding-right:1rem;
	position:relative;
	padding-right: 1rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
[data-rot-rule] figure{
	max-width:100%;
	margin-bottom:1.5rem;
	width:100%;
}
[data-rot-rule] figure img{
	max-width: 190px;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

[data-rot-rule] h3{
	max-width: fit-content;
    padding: 2px 10px;
    line-height: 1.14;
	color:var(--white);
	text-align:center;
	hyphens:auto;
}
[data-rot-rule] p {
    font-weight: 600;
    padding: 7px 8px;
    background: #fcf7f7b0;
    border-radius: 8px;
    border: 2px solid #dae1f0;
	text-align:center;
	hyphens:auto;
}



/*table*/
/*table*/
/*table*/
.rot-table{
	--th-size:24px;
	--td-size:.9em;
	--cell-pad: 4px 7px;
	line-height:1.14;
	table-layout:fixed;
	max-width: 100%;
    min-width: 100%;
}
.rot-table tr:nth-of-type(even){
	background: #66a1bc1c;
}
@media(min-width:600px){
	.rot-table{
		--cell-pad: 6px 7px;
		--td-size:1em;;
	}
}
@media(min-width:768px){
	.rot-table{
		--cell-pad: 5px 10px;;
	}
}
@media(min-width:1200px){
	.rot-table{
		--th-size:34px;
	}
}
@media(min-width:1600px){
	.rot-table{
		--td-size:1.1em;
		--cell-pad:9px 12px;
	}
}
.rot-table th,
.rot-table td{
	padding: var(--cell-pad);
	font-size: var(--td-size);
}
.rot-table th:not(:last-child),
.rot-table td:not(:last-child){
	border-right:2px solid var(--primary);
}
.rot-table th{
	font-family: var(--serif);
    font-size: var(--th-size);
    font-weight: 300;
	border-bottom:2px solid var(--primary);
}

.rot-table td[data-termin]{
	font-weight:600;
}
.rot-table td[data-bis],
.rot-table td[data-von],
.rot-table td[data-datum]{
	width:6.7em;
	font-weight:600;
}



ul+h4,
p+h4{
	margin-top:1.1rem;
}
ul+h3,
p+h3{
	margin-top:1.5rem;
}


.text-primary-dark em,
.text-primary-dark i,
em.text-primary-dark,
i.text-primary-dark{
	font-weight:600;
}
.text-primary-dark,
.h3-primary .h3:not(.sub-h),
.h3-primary h3{
	color:var(--primary-dark);
}

.paragraph-mb-small ul,
.paragraph-mb-small p{
	margin-bottom:.8rem;
}


figure.rot-content-img-sm{
	margin-bottom: .8rem;
    padding-bottom: 20rem;
    max-width: 17rem;
}


.liniert:before{
	z-index:0;
}
.liniert>div{
	z-index:1;
	position:relative;
}
.rot-faq-item {
    background: #fdfff0b5;
    border: 0px solid rgba(0,0,0,.1);
    border-radius: 12px;
    box-shadow: 0 12px 36px rgba(0,0,0,.06);
    overflow: hidden;
}


.term-25+.term-suf2{
    display: inline-block;
    background: var(--primary-dark);
    padding: 0 5px;
    margin-left: 3px;
    color: white;
    font-weight: 600;
}


.rot-item-post figure.rot-img-relative{
	min-height:12rem;
	margin-top:2rem;
	border-radius: 8px;
	overflow:hidden;
}

article.rot-item.rot-item-post .rot-item-inner{
	margin-bottom:1rem!important;
}
article.rot-item:last-of-type .rot-item-inner{
	margin-bottom:0!important;
}
.rot-item-post+.rot-item-post .rot-item-inner{
	padding-top: 1.6rem!important;
    border-top: 2px dashed var(--text);
    border-radius: 0;
}

article.rot-item .news-h{
	font-family: var(--serif);
    font-weight: 400!important;
}
article.rot-item .news-subheadline {
    font-weight: 600;
    font-size: 1.2em;
    line-height: 1.05;
    color: var(--grey-dark);
}
article.rot-item .news-date{
	display: inline-block;
    padding: 1px 4px;
    background: var(--secondary);
    font-size: 0.9em;
    font-weight: 500;
}