/******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:66px;
	}
}
@media(min-width:768px){
	:root{
		    --container-margin:72px;
	}
}
@media(min-width:1400px){
	:root{
		    --container-margin:120px;
	}
}

@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-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-secondary{
	background-color:var(--secondary)!important;
}
body .bg-tertiary{
	background-color:var(--tertiary)!important;
}
body .bg-white{
	background-color:var(--white)!important;
}

.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;
}








/*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:2rem;
}

@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:2rem;
	}


}
@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.23rem;
}
.rot-swiper-head button:hover {
	background: var(--primary-hover);
}

.rot-swiper-head button[data-slider-nav]{
	transition: color .5s, transform .5s, background-color .5s;
}
.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);
}
#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;
}



[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;
}

/*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);
}
.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 {
    max-height: 300%;
    position: absolute;
    top: 11px;
    width: auto;
    height: calc(3.2 * var(--header-height));
    transition: height .3s, top .3s, max-height .3s;
    will-change: max-height, height, top;
}


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;
}



.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(--white);

}


a.navbar-brand{
	opacity:1;
	pointer-events:none;
	transition:opacity 300ms;
	z-index: 3;
}
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){
	#masthead #primaryNav{
		justify-content:flex-end;
	}
}

/*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);
}


/*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;
}






/*TYPO*/
/*TYPO*/
/*TYPO*/
/*TYPO*/
/*TYPO*/

p {
    line-height: 1.36;
    margin-bottom: 1.7rem;
}
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;
}
h2,.h2{
	font-size:var(--rot-h2-size);
	max-width: 8.8em;
	margin-bottom: 1.2rem;
	line-height: 1.05;
}

h2.wide,
.h2.wide{
	max-width: 20em;
}
body .sans2{
	font-family:var(--sans2);
}
body .mighty{
	font-weight:800;
	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;
}



/*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-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 a:hover{
	color: var(--primary-light);
}


/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/
/*AIMS ONLY*/


/*TITLE*/
/*TITLE*/
/*TITLE*/
/*TITLE*/
.title-wrap {
    position: fixed;
    z-index: 10000000;
    top: 0;
    height: calc(100vh - var(--admin-bar-height));
    height: 100vh;
    width: 100%;
    background: var(--semi-transparent-darker);
    display: flex;
    flex-direction: row;
    align-content: center;
    flex-wrap: wrap;
    justify-content: center;
    padding-left: var(--container-margin);
    padding-right: var(--container-margin);
    text-align: center;
	transition: opacity 1s;
	overflow:hidden;
	display:none;
}

.title-wrap .rot-title {
	opacity: 0;
	transition: opacity 1.2s, transform 2.5s cubic-bezier(0.96, 0.19, 0.92, 0.61);
	font-size: clamp(3rem, 15.6vw, 8rem);
	transform-origin: center;
	transform: scale3d(30, 30, 1);
	white-space: nowrap;
	min-width: 100%;
	display: block;
	will-change: transform;
}

body.load-animations-done .title-wrap .rot-title,
body.load-animations-started .title-wrap .rot-title {
	opacity: 1;
	transform: scale3d(1, 1, 1);
}




.title-wrap span{
	font-weight:900;
}
.title-wrap span.space{
	font-size:.1rem;
}

.title-wrap span.special-char{
	color:white;
}
.title-wrap span.special-char2{
	color:var(--primary-light);
}

.rot-t-sub {
    color: var(--grey-light);
    opacity: 0;
    transition: opacity .5s 2.5s, font-size .3s;
    font-size: clamp(1.2rem, 5.5vw, 1.4rem);
    max-width: 20em;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.05em;
}

body.load-animations-done .title-wrap .rot-t-sub,
body.load-animations-started .title-wrap .rot-t-sub{
	opacity:1;
}
body.load-animations-done .title-wrap .rot-title,
body.load-animations-started .title-wrap .rot-title{
	opacity:1;
	transform:scale(1);
}


body.load-animations-done .title-wrap {
	opacity:0;
	pointer-events:none;
}

@media(min-width:992px){
	.title-wrap .rot-title {
		font-size: clamp(7rem, 11vw, 12rem);
	}
}



/*NAV*/
#masthead #aims_date{
	opacity:0;
	pointer-events:none;
    position: absolute;
    top: calc(var(--header-height));
    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;
	will-change: opacity,transform;
}

.load-animations-done #masthead #aims_date{
	opacity:1;
}
.scrolled-down #masthead #aims_date{
	transform:translateY(calc(0px - 100% - var(--header-height)));
}

.scrolled-up.past-display-h-threshold #masthead #aims_date{
	padding-top:.2rem;
	padding-bottom:.2rem;
}




/*D HEADER*/
#d_header .col-inner {
    margin-left: calc(0px - var(--container-margin));
    padding-left: calc(var(--container-margin) + 0px);
    padding-right: var(--container-margin);
    background: var(--blur-dark-bg);
    padding-top: 1.5rem;
    margin-right: calc(0px - var(--container-margin));
    max-width: calc(100% + 2 * var(--container-margin));
    width: calc(100% + 2 * var(--container-margin));
}
#d_header .h-top {
    color: var(--primary-lightest);
    text-transform: uppercase;
    font-size: 1.6rem;
    font-weight: 400;
}
#d_header .h1.extralarge{
	font-size:var(--rot-h1-size-xl);
}
#d_header .h1,
#d_header .h2{
	/* font-size: var(--rot-h2-size); */
    color: white;
	font-weight:800;
	font-family:var(--sans2);
	text-transform:uppercase;
    /* letter-spacing: .05em; */
    /* font-weight: 300; */
}



@media(min-width:576px){

}
@media(max-height:600px) and (orientation:landscape){
	#d_header .content-col{
		order:1;
	}
	#d_header .col-inner {
		margin-left: auto;

		padding-right: var(--container-margin);
		margin-right: calc(0px - var(--container-margin));
		right: 0px;
		max-width:50%;
	}
}
@media(max-height:600px) and (orientation:landscape) and (min-width:768px){
	#d_header .col-inner {
		max-width:100%;
		--rot-h1-size: clamp(1.5rem, calc(1.625rem + 1.6vw), 10rem);
	}
}



/*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;
}

.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;
	}
}





/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/
/*EVENT ITEMS*/




/*___________MODAL______________________*/
/*___________MODAL______________________*/
/*___________MODAL______________________*/
/*___________MODAL______________________*/
.hidden{
	display:none;
}
.modal{
	background: #000000a3;
}
.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10500;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
}
.modal-dialog {
    position: relative;
    width: auto;
    margin: .5rem;
    pointer-events: none;
}
.modal.fade .modal-dialog {
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out,-webkit-transform .3s ease-out;
    -webkit-transform: translate(0,-50px);
    transform: translate(0,-50px);
}
@media(min-width:576px){
	.modal-dialog {
		max-width: 500px;
		margin: 1.75rem auto;
	}
}

.modal-content {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: .3rem;
    outline: 0;
	cursor: auto;
}

.modal-header{
	flex-wrap:wrap;
}
.modal-header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: .3rem;
    border-top-right-radius: .3rem;
}
body .modal-header {
    border-bottom: 2px solid var(--primary-hover);
}
.modal .title-top{
	margin-bottom:.6rem;
	min-width:100%;
}
.modal h3 {
    text-transform: none;
    margin-bottom: .6rem;
    font-size: 1.6rem;
    line-height: 1.24;
}

.modal.show .modal-dialog {
    /* -webkit-transform: none; */
    transform: none;
}
.modal.show .modal-dialog {
    margin-top: 4rem;
    margin-bottom: 5rem;
    max-height: calc(100vh - 4rem - 5rem);
    overflow: auto;
}
.modal .close {
    position: absolute;
    right: 1rem;
}
button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.modal-header .close {
	padding: 1rem 1rem;
    margin: -1rem -1rem -1rem auto;
}

.aims-single-event-head .smalldate,
.aims-single-event-head .smalllink,
.aims-single-event-head .smalltxt{
	font-size:1.24em;
	font-weight:600;
}
.rot-item .smalldate,
.rot-item .smalllink,
.rot-item .smalltxt{
	font-size:.96em;
}
.aims-single-event-head .smalldate,
.modal-header .smalldate {
	width: 100%;
    display: flex;
    column-gap: .1rem;
    margin-top: 0.3rem;
	line-height: 1;
	flex-wrap:wrap;
}
.modal-header a{
	color:var(--primary);
	text-decoration:none;
}
.modal-header a:hover{
	color:var(--primary-light);
}
.modal-header .subt {
	width:100%;
}
.modal-body {
	position: relative;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 1rem;
}

.aims-single-event-head .smalldate .uhrleiwand,
.aims-single-event-head .weekday,
.modal-header .smalldate .uhrleiwand,
.modal .weekday{
	display:none!important;
}
.aims-single-event-head .time,
.aims-single-event-head .daymonth,
.modal .time,
.modal .daymonth{
	display: inline-block;
    margin-right: .5rem;
    padding-right: .5rem;
    border-right: 2px solid var(--grey-dark);
}
p.artists,
.modal-body p.artists,
p i{
	font-style:italic;
	font-weight:600;
}
.modal .e-date{
	margin-bottom: 8px;
}
.modal-body,
.modal-body p{
	font-size: calc(var(--regular-p-size) * .92);
    line-height: 1.56!important;
}
.modal-body p:empty{
	display:none!important;
}
.aims-single-event-head .exc,
.modal-body .exc {
    padding-top: 1rem;
    border-top: 2px solid #777;
}

@media(min-width:768px){
	.aims-single-event-head .time,
	.aims-single-event-head .daymonth,
	.modal .time,
	.modal .daymonth{
		margin-right: 1rem;
		padding-right: 1rem;
	}
}
/*________/MODALS_______________*/
/*________/MODALS_______________*/
/*________/MODALS_______________*/


.rot-prn-filter-row.rot-cpt-items{
	row-gap:20px;
}


.rot-item-aims-event {
	--img-width:5.4rem;
	cursor:pointer;
}
.rot-item-aims-event .rot-item-head{
	display:flex;
	border-right: 4px solid var(--primary);
	flex-wrap:wrap;
}
.rot-item-aims-event .rot-img-relative{
	min-height: 8rem;
    max-width: var(--img-width,7rem);
	margin-bottom:0;
	flex: 0 1 auto;
	height:auto;
}
.rot-item-head aside .weekday{
	display: block;
    font-size: 0.94em;
    margin-bottom: 0;
    line-height: 1;
}
.rot-item-head aside .daymonth {
    font-size: 1.7rem;
    line-height: 1;
    display: inline-block;
    padding-top: 5px;
    margin-right: 0.6rem;
}
.rot-item-head aside .time {
    display: inline-block;
    margin-left: 0;
    background: var(--primary);
    color: white;
    padding: 3px 8px;
    line-height: 1;
    border-radius: 20px;
    position: relative;
    bottom: 3px;
    height: 100%;
    margin-top: 0.6rem;
	font-size:.9em;
}
.rot-item-head aside .uhrleiwand{
	display:none;
}
.rot-item-head aside .e-date{
	margin-left:0rem;
	padding-right:2.7rem;
	padding-bottom:4px;
}
.rot-item-head aside {
    margin-left: 1rem;
    flex: 1 1 auto;
    max-width: calc(100% - 1rem - var(--img-width,7rem));
}
.content-head+.event-venue,
.content-head .aims-event-h,
.content-head .item-terms{
	padding-right: 48px;
}
.content-head .item-terms{
	line-height:1;
	font-size:.9em;
}
.aims-event-h {
    font-size: 1.4rem;
    line-height: 1.1;
    margin-bottom: 8px;
    margin-top: 5px;
    hyphens: auto;
}
.rot-item .modal-opener {
    position: absolute;
    bottom: auto;
    right: 0;
    height: 4.2rem;
    top: 0;
    width: var(--item-info-width,2rem);
}
.rot-item .modal-opener .btn {
    text-transform: lowercase;
    text-decoration: none;
    position: absolute;
    bottom: auto;
    right: 0;
    height: 100%;
    width: 100%;
    top: 0;
    font-size: 1.5em;
    padding: 0 1em 0 0.8em;
    border: none;
}
.rot-item-inner{
	position: relative;
    width: 100%;
}
.rot-item .term{
	font-weight:800;
}

.rot-item a.aims-ical-link,
.rot-item a.event-venue{
	color: var(--primary);
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    padding-top: 9px;
    display: block;
	line-height:1.2;
	padding-bottom:2px;
}
.aims-single-event-head  a.aims-ical-link,
.aims-single-event-head  a.event-venue,
.rot-item .modal a.aims-ical-link,
.rot-item .modal a.event-venue{
	color: var(--primary);
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    padding-top: 0;
    display: block;
}

@media(min-width:768px){
	.rot-item-aims-event {
		--img-width:7rem;
	}
	.rot-item-aims-event .rot-item-head{
		padding-right: var(--item-info-width,2rem);
	}
	.rot-item-head aside .uhrleiwand{
		display: inline-block;
	}
}
img[data-placeholder] {
    object-position: 80% top;
}


body .btn-lg{
	font-size:var(--rot-h2-size);
}
@media(min-width:1200px){
	body .btn-lg{
		font-size:2.4rem;
	}

}

.rot-post-type-aims_venue{
	margin-top: .3rem;
}
article.rot-item-aims_venue .h2,
article.rot-item-aims_venue h2{
	max-width:none;
	font-size:calc(var(--rot-h3-size) - 5px);
	margin-bottom:.2rem;
}
article.rot-item-aims_venue{
	margin-bottom:1.3rem;
}
article.rot-item-aims_venue a{
	text-decoration:none;
	color:var(--primary);
	transition:color .5s;
	position:relative;
	display:block;
	padding-right:2rem;
	width:fit-content;
}
article.rot-item-aims_venue a i{
	position:absolute;
	right:0;
	top:0;
	transition:transform .5s;
	transform-origin:center;
	will-change:transform;
}
article.rot-item-aims_venue a:hover{
	color:var(--primary-hover);
}
article.rot-item-aims_venue a:hover i{
	color:var(--secondary);
	transform:scale(1.2);

}



.single .term{
	font-weight: 800;
    color: var(--text);
	font-size:var(--regular-p-size);
}
.single .aims-single-event-head{
	margin-bottom:.8rem;
}
.aims-event-single-h{
	font-size:var(--rot-h1-size);
	font-weight:700;
}
.aims-event-single-h+.subt {
    margin-top: -.5rem;
    margin-bottom: 1.2rem;
}
@media(min-width:1200px){
	.single .content-col{
		padding-right: 8vw;
	}
	.single .term {
		font-size: calc(var(--regular-p-size) + 0.5rem);
	}
	.single-.img-col .rot-img-relative{
		min-height:22rem;
		height:auto;
	}
}
@media(min-width:1500px){
	.single .content-col{
		padding-right: 15vw;
	}
	.single-.img-col .rot-img-relative{
		min-height:24rem;
		height:auto;
	}
}


.single section.aims-single-event{
	margin-top:2.5rem;
}