html {
position:relative
}

body {
font-family:arial ,sans-serif;
font-weight:300;
font-style:normal;
font-size:21px;
line-height:180%;
color:#000;
background-color:#fff;
overflow-anchor:none
}

@media only screen and (max-width: 1440px) {
body {
font-size:18px;
line-height:160%
}
}

@media only screen and (max-width: 970px) {
body {
font-size:18px;
line-height:190%
}
}

a {
transition:all .3s ease-in-out
}

a:hover {
opacity:.6;
transition:all .3s ease-in-out
}

a:focus {
outline:0!important;
box-shadow:0 0 0 0 #0000!important;
-webkit-touch-callout:none;
-webkit-user-select:none;
-khtml-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none
}

b,strong {
font-weight:400
}

mark {
background-color:#D7E8FC
}

.container {
max-width:1280px
}

.container-fluid {
max-width:80%
}

@media only screen and (max-width: 1400px) {
.container {
max-width:90%
}

.container-fluid {
max-width:90%
}
}

h1,h2,h3,h4,h5,h6 {
font-family:arial,sans-serif;
font-weight:300;
line-height:130%
}

h1 {
font-size:200%
}

h2 {
font-size:200%
}

h3 {
font-size:180%
}

h4 {
font-size:110%
}

h5 {
font-size:105%
}

@media only screen and (max-width: 1440px) {
h1 {
font-size:180%
}

h2 {
font-size:160%
}

h3 {
font-size:140%
}

h4 {
font-size:110%
}
}

@media only screen and (max-width: 970px) {
h1 {
font-size:180%
}

h2 {
font-size:160%
}

h3 {
font-size:140%
}

h4 {
font-size:110%
}

h1,h2,h3,h4,h5 {
word-break:break-word
}
}

.h2,.h3,.h4 {
font-weight:300;
line-height:130%
}

.h2 {
font-size:180%
}

.h3 {
font-size:140%
}

.h4 {
font-size:120%
}

.res-header {
position:relative
}

.logo {
padding-top:2vh;
padding-bottom:2vh
}

.logo img {
max-width:100%
}

@media only screen and (min-width: 970px) {
.res-head.container-fluid {
max-width:95%
}

.res-head.container-fluid.with-burger-nav {
padding-right:3vw
}

.res-head .col-md-9.res-nav-section {
display:flex;
flex-direction:row-reverse!important;
justify-content:space-between
}

.res-head .res-nav-right {
width:66.666%!important;
margin-bottom:auto
}

.res-head #res-menu {
flex-basis:100%;
max-width:fit-content!important
}

.res-head .navbar.navbar-expand-md {
max-width:fit-content!important
}

.res-head .col-md-9.res-nav-section > div:nth-of-type(2) .res-nav {
justify-content:center!important
}

.res-head .res-topheader-right {
margin-top:auto;
margin-bottom:auto;
font-weight:400
}

.res-head .res-topheader-right .mt-2 {
margin-top:auto!important;
margin-bottom:auto
}

.res-head .res-nav-topheader ul:not(.dropdown-menu) .nav-item {
padding:.75rem .5rem
}

.res-head .res-nav-topheader ul:not(.dropdown-menu) .nav-item.res-search-header-icon {
padding:.75rem .5rem .75rem .2rem
}

.res-nav-topheader .nav-link {
padding:0
}

.res-head .res-nav-topheader ul:not(.dropdown-menu) .nav-item:last-of-type:not(.wpml-ls-item,.res-search-header-icon) {
background-color:#000!important;
padding:.58em .95em .62em;
border-radius:.45em;
line-height:120%;
font-weight:500;
transition:all .2s ease-in-out
}

.res-head .res-nav-topheader ul:not(.dropdown-menu) .nav-item:last-of-type:not(.wpml-ls-item,.res-search-header-icon):hover {
transform:scale(0.95)
}

.res-head .res-nav-topheader ul:not(.dropdown-menu) .nav-item:last-of-type:not(.wpml-ls-item,.res-search-header-icon) a {
color:#fff!important;
text-align:center
}

.res-nav-topheader .nav-link i {
font-weight:400!important;
font-size:110%
}
}

@media only screen and (max-width: 970px) {
.res-search-header-icon i {
font-weight:400!important
}
}

.res-head .nav-link {
font-size:85%;
line-height:110%
}

.res-nav-section li a:hover {
transition:all .3s ease-in-out;
opacity:1;
color:#4a90e2
}

li.active > a.nav-link,li.active .current-menu-item a.dropdown-item {
color:#4a90e2
}

.dropdown-item:hover {
transition:all .2s ease-in-out;
transform:translateX(3px)
}

.dropdown-item.active,.dropdown-item:active {
color:unset;
background:transparent
}

.res-nav-topheader {
position:relative;
line-height:100%;
gap:.5em
}

.res-nav-topheader .nav-tabs {
flex-wrap:nowrap;
gap:.5em
}

.res-nav-topheader .res-login-profile a {
line-height:160%
}

.res-nav-topheader .res-login-profile {
display:flex;
font-size:85%
}

.res-nav-topheader .res-login-profile .user-profil {
margin-left:.5rem!important;
margin-right:.5rem!important;
white-space:nowrap
}

.user-profil i {
font-size:100%;
font-weight:400
}

.res-nav-topheader .res-login-profile .dropdown-toggle::after {
display:inline-block;
content:"\f078";
font-family:"Font Awesome 6 Pro";
font-weight:400;
border:none!important;
opacity:.6;
font-size:70%;
margin-left:.5rem;
transition:all .2s ease-in-out
}

.res-nav-topheader .res-login-profile .show .dropdown-toggle::after {
transform:scaleY(-1);
transition:all .001s ease-in-out
}

@media only screen and (max-width: 970px) {
.res-nav-section .mobile-nav {
display:block
}

.user-profil .dropdown-toggle::after {
display:none!important
}

.res-login-mobile-profile .user-profil span {
font-size:100%
}

.res-nav .nav-link {
font-size:150%;
line-height:120%;
padding-top:.4em;
padding-bottom:.4em;
outline:0!important
}

.res-nav .navbar-nav {
min-height:calc(100vh - 70px);
padding:30px 8%
}

.res-header-mobile {
position:absolute;
top:0;
z-index:999;
width:100%;
background-color:transparent
}

.res-nav .logo-mobile {
display:block;
position:relative;
width:80%;
padding:18px 0 18px 8%
}

.res-mobile-bar {
display:block;
position:relative;
width:100%;
background-color:transparent
}

.res-nav .logo-mobile img {
height:30px;
width:auto;
max-width:100%
}

.res-header .container,.res-header .container-fluid {
max-width:100%;
padding:0
}

.res-nav .navbar-collapse {
margin:-1px 0 0;
background:#ffff
}

.res-nav .navbar-collapse .dropdown-menu {
background:transparent
}

.nav-up-mobile {
top:-170px
}

.res-header-mobile.transition-top {
transition:top .2s ease-out
}

.navbar-toggler,.navbar-toggler:focus {
font-size:100%;
border:0;
outline:0
}

.res-nav .navbar {
padding:0
}

.shop-nav-mobile-dropdown-iconbar i {
font-size:150%!important;
font-weight:400!important
}

.res-nav .navbar-toggler {
position:absolute;
top:24px;
right:14px;
z-index:2
}

.mobile-x-close {
width:30px;
height:20px;
position:relative;
margin:0;
transform:rotate(0deg);
transition:.3s ease-in-out;
cursor:pointer;
display:block
}

.mobile-x-close.open {
margin:-6px 0 0
}

.mobile-x-close span {
display:block;
position:absolute;
height:2px;
width:100%;
border-radius:9px;
opacity:1;
left:0;
transform:rotate(0deg);
transition:.25s ease-in-out;
background:#000
}

.animated-icon1 span:nth-child(1) {
top:0
}

.animated-icon1 span:nth-child(2) {
top:10px
}

.mobile-x-close span:nth-child(1) {
top:0;
transform-origin:left center
}

.mobile-x-close span:nth-child(2) {
display:none;
top:10px;
-webkit-transform-origin:left center;
transform-origin:left center
}

.mobile-x-close span:nth-child(3) {
top:10px;
transform-origin:left center
}

.mobile-x-close.open span:nth-child(1) {
transform:rotate(45deg);
top:0;
left:3px
}

.mobile-x-close.open span:nth-child(2) {
width:0;
opacity:0
}

.mobile-x-close.open span:nth-child(3) {
transform:rotate(-45deg);
top:21px;
left:3px;
color:#000;
display:inline
}

.oversize-header {
overflow-y:auto;
overflow-x:hidden;
max-height:100vh
}

.shop-produkte-suche form {
display:flex;
gap:5px
}

.shop-produkte-suche .search-field {
border:none;
background-color:#EDEDED;
padding:.45em .75em;
border-radius:.4em!important;
width:65%
}

.shop-produkte-suche button {
border:none;
background-color:#000;
color:#fff;
padding:.45em .75em;
border-radius:.4em!important
}
}

#burgermenuX-btn {
position:absolute;
transition:top .2s ease-in-out
}

@media only screen and (min-width: 970px) and (max-width: 1660px) {
.res-nav .nav-link {
font-size:100%
}
}

.dropdown-menu .dropdown-menu {
box-shadow:none;
border:0
}

.menu-item-has-children.dropdown .dropdown-menu {
border:0
}

.dropdown-item {
padding:.5rem 2rem;
font-weight:300;
font-size:120%
}

.res-fixnav.show .res-nav .dropdown-item {
font-size:110%
}

@media only screen and (min-width: 970px) {
.dropdown-menu {
background:#fffffff2;
box-shadow:0 2px 10px -5px #00000040;
border-radius:.5em;
backdrop-filter:blur(3px);
border:none
}
}

ul .dropdown-toggle::after,.dropdown-submenu > .dropdown-item::after {
content:"\f078";
font-family:"Font Awesome 6 Pro";
font-weight:400;
border:none!important;
opacity:.6;
font-size:70%;
margin-left:.7rem;
transition:all .2s ease-in-out;
display:inline-block;
vertical-align:0
}

@media only screen and (max-width: 970px) {
ul .dropdown-toggle::after,.dropdown-submenu > .dropdown-item::after {
position:absolute;
right:.5rem
}
}

ul .show .dropdown-toggle::after,.dropdown-submenu:has(.show) > .dropdown-item::after {
transform:scaleY(-1);
transition:all .001s ease-in-out
}

.dropdown-submenu {
position:relative
}

.dropdown-submenu .dropdown-menu {
background:transparent
}

.dropdown-submenu .dropdown-menu .dropdown-item {
font-size:110%;
padding:.3rem .5rem .3rem 1.8rem
}

.dropdown-submenu .dropdown-item.active,.dropdown-submenu .dropdown-item:hover,.dropdown-submenu .dropdown-item:focus,.dropdown-submenu .dropdown-item:active {
color:#ccc
}

@media (min-width: 970px) {
.navbar-expand-md .navbar-nav .dropdown-submenu .dropdown-menu {
position:relative;
padding-left:.7em;
padding-top:0;
margin-top:0;
line-height:180%;
backdrop-filter:none
}

.res-nav-topheader .dropdown-submenu .dropdown-menu.show {
padding-left:.7em;
display:block;
position:relative
}
}

@media only screen and (max-width: 970px) {
.dropdown-submenu .dropdown-menu .dropdown-item {
padding:8px 0!important
}

.res-header .dropdown-menu {
box-shadow:none;
border:0;
padding:0 0 0 .25em;
margin:0
}

.res-header .dropdown-menu .dropdown-menu {
padding:0 0 0 .75em
}

.res-header .dropdown-menu .dropdown-item {
padding:5px;
padding-left:0;
font-size:115%;
font-weight:400
}
}

@media only screen and (min-width: 970px) {
.megamenu {
position:static
}

.megamenu > .dropdown-menu {
width:100%;
border:none;
margin-top:-2px;
top:100%;
position:absolute;
float:none;
background:#fffffff2;
box-shadow:0 2px 10px -5px #00000040;
border-radius:.5em;
backdrop-filter:blur(3px);
-webkit-column-count:3;
-moz-column-count:3;
column-count:3;
padding:2.5rem 3rem
}

.megamenu > .dropdown-menu.show {
width:70vw;
margin-left:-15vw
}

.megamenu > .dropdown-menu .dropdown-item:hover {
transform:none;
padding-left:5px
}

.megamenu > .dropdown-menu > li {
width:100%;
border:0;
outline:0;
break-inside:avoid-column
}

.megamenu .dropdown-submenu > a.dropdown-item {
width:90%;
border-bottom:0 solid #AAA;
padding:0;
margin-bottom:10px;
font-size:130%
}

.megamenu .dropdown-menu .dropdown-menu {
backdrop-filter:none
}

.megamenu .dropdown-submenu .dropdown-menu a {
font-size:120%;
padding:8px 0;
margin:0;
min-width:1rem;
background:transparent;
border:0
}

ul .megamenu .dropdown-toggle::before {
position:absolute;
right:1vw;
content:"\f078";
font-family:"Font Awesome 6 Pro";
font-weight:400;
border:none!important;
opacity:.6;
font-size:70%;
display:inline-block;
transition:opacity .2s ease-in-out
}

ul .megamenu.show .dropdown-toggle::before {
content:"\f077";
opacity:.6
}

ul .megamenu:hover .dropdown-toggle::before {
opacity:.6
}

.megamenu > .dropdown-menu > li a.dropdown-item:after {
display:none
}

.megamenu > .dropdown-menu .dropdown-menu {
display:block;
padding-left:0!important
}

.megamenu .dropdown-toggle {
position:relative
}

.megamenu .dropdown-toggle::after {
display:none
}

.megamenu.show .dropdown-toggle::after {
position:absolute;
content:"";
display:inline;
width:0;
height:0;
top:45px;
left:50%;
margin-left:-5px;
border-top:0 solid transparent!important;
border-left:12px solid transparent!important;
border-right:12px solid transparent!important;
border-bottom:12px solid #eee!important;
opacity:1;
transform:scaleY(1)
}

.page-header-fixiert .megamenu.show .dropdown-toggle::after {
border-bottom:12px solid #fff!important
}

.megamenu .nav-link {
padding-right:clamp(12px,2.9vw,49px)
}
}

@media only screen and (max-width: 1390px) {
.megamenu .dropdown-menu {
font-size:85%;
line-height:120%
}
}

@media only screen and (max-width: 970px) {
.megamenu .dropdown-menu {
font-size:90%;
line-height:140%
}

.megamenu .dropdown-submenu .dropdown-menu {
display:block
}

.megamenu .dropdown-submenu>a::after {
display:none
}
}

.res-header .wpml-ls-menu-item .dropdown-menu {
min-width:5rem;
border:1px solid #eee;
top:10px!important;
background:#ffff;
box-shadow:0 5px 10px -5px #0009
}

.res-header .wpml-ls-item {
opacity:1;
display:flex
}

.res-header .wpml-ls-current-language {
opacity:1
}

.res-header .wpml-ls-menu-item .dropdown-menu .dropdown-item {
color:#000;
line-height:120%
}

.res-header .res-nav-topheader .wpml-ls-menu-item .dropdown-menu .dropdown-item {
font-size:100%
}

@media only screen and (min-width: 970px) {
.res-header .wpml-ls-menu-item .dropdown-menu {
left:50%!important;
transform:translate3d(-50%,33px,0px)!important
}

.res-header .wpml-ls-menu-item .dropdown-menu .wpml-ls-menu-item {
padding:.35rem .5rem!important
}

.res-header .wpml-ls-menu-item .dropdown-menu .dropdown-item {
padding:0 1rem
}
}

@media only screen and (max-width: 970px) {
.res-header li.wpml-ls-current-language.wpml-ls-menu-item {
display:block
}

.res-header li.wpml-ls-menu-item {
display:inline-block;
padding-right:10px
}

.res-header .wpml-ls-menu-item a {
opacity:.6;
margin:0;
padding:1em 15px 10px 0;
font-size:90%
}

.res-header .wpml-ls-current-language a {
opacity:1
}

.res-header .wpml-ls-menu-item .dropdown-menu {
min-width:0;
border:0;
top:0!important;
box-shadow:0 5px 10px -5px #0000;
padding:0
}

.wpml-ls-menu-item .dropdown-toggle::after,.wpml-ls-menu-item .dropdown-submenu .dropdown-item::after {
position:unset;
right:unset
}

.res-header .wpml-ls-menu-item .dropdown-menu .dropdown-item {
font-size:95%
}

.res-menu-mobile .wpml-ls-current-language {
padding-top:30px
}
}

#res-nav-clone {
display:block;
position:absolute;
top:0;
z-index:99;
opacity:1;
transition:top .2s ease-in-out
}

.res-fixnav {
width:100%;
z-index:100
}

@media only screen and (min-width: 970px) {
.res-fixnav.show {
background:#ffff
}

.res-fixnav.show .res-nav li a {
font-size:90%
}

.res-fixnav.show .res-nav-topheader {
margin:5px 0 10px
}

.res-fix-nas-in-viewport.res-fixnav.show {
box-shadow:0 5px 10px -5px #dcdcdccc
}

.res-header.header-option-absolute:not(#res-nav-clone) a {
color:#fff
}

.res-header.header-option-absolute:not(#res-nav-clone) .dropdown-menu a {
color:#000
}
}

@media only screen and (max-width: 970px) {
.res-fix-nas-in-viewport.page-on-top .res-fixnav {
background:transparent;
box-shadow:none
}

.res-fix-nas-in-viewport:not(.page-on-top) .res-fixnav .res-mobile-bar {
background-color:#fff;
box-shadow:3px 8px 10px #6464644d
}
}

@media only screen and (max-width: 971px) and (min-width: 969px) {
.res-nav .navbar-expand-md .navbar-nav .nav-link {
padding-right:.4rem;
padding-left:.4rem
}

.res-nav .nav-link {
font-size:80%!important;
line-height:120%!important;
padding-top:5px;
padding-bottom:5px
}

.res-fixnav {
padding:0 5%;
background-color:#fff
}

.logo {
padding:10px
}

.logo img {
max-width:70%
}
}

.res-content-topspace {
padding-top:4rem
}

@media only screen and (max-width: 970px) {
.res-content {
margin-top:70px
}

.home .res-header-mobile {
box-shadow:none!important
}
}

.res-content .postContent ul,.res-collapse ul,.res-table ul {
list-style:none;
padding:5px 0
}

.res-content .postContent li,.res-collapse li,.res-table li {
padding-bottom:8px;
margin-left:30px
}

.res-content .postContent li:before,.res-collapse li:before,.res-table li:before {
content:"\f068";
font-family:"Font Awesome 6 Pro";
position:absolute;
margin-left:-25px;
text-decoration:inherit;
font-weight:700;
font-size:10px;
opacity:.6
}

.res-content .postContent ul.checklist li:before {
content:"\f00c";
font-family:"Font Awesome 6 Pro";
position:absolute;
margin-left:-25px;
text-decoration:inherit;
font-weight:700;
font-size:13px;
opacity:.3
}

@media only screen and (max-width: 970px) {
.res-content .postContent li,.res-collapse li,.res-table li {
margin-left:25px
}

.res-content .postContent li:before,.res-collapse li:before,.res-table li:before {
margin-left:-25px
}
}

.res-content .postContent ol li {
padding-left:5px;
margin-left:0
}

.res-content .postContent ol li:before {
display:none
}

ul.link-liste {
margin:6px 0;
padding-inline-start:0
}

ul.link-liste li {
padding:6px 25px 6px 37px;
margin:6px 0;
margin-left:0!important;
font-weight:300!important;
display:inline-block
}

ul.link-liste li a {
font-weight:300!important;
border:0!important
}

.res-block.ausgeblendet {
display:none!important
}

.res-block.border-red div {
border:1px solid red
}

.res-block.border-grau div {
border:1px solid #eee
}

.btn,.button {
margin:8px 0;
border-radius:2px
}

.btn-sm,.button {
font-size:85%;
padding:10px 20px
}

.btn-primary {
border:0;
background-color:#000;
color:#eee
}

.btn-secondary {
border:1px solid #eee;
background-color:#eee;
color:#666
}

.btn-secondary:hover {
background:transparent
}

.btn-outline {
border:1px solid #000;
background-color:transparent;
color:#000
}

.btn-text-link {
padding:0;
margin:10px 0;
transition:all .5s ease-in-out
}

.btn-text-link:hover {
padding-left:6px;
transition:all .2s ease-in-out
}

.btn:focus,.btn.focus {
text-decoration:none;
box-shadow:none
}

.btn-arrow {
position:relative;
padding:0;
margin:0;
border-radius:0;
transition:all .3s ease-in-out
}

.btn-arrow:after {
content:"\f178";
font-family:"Font Awesome 6 Pro";
position:absolute;
margin-left:8px;
font-weight:400;
font-size:100%;
text-decoration:none;
transition:all .3s ease-in-out
}

.btn-arrow:hover {
padding-left:3px
}

.btn-arrow:hover:after {
margin-left:12px
}

.nl-btn {
padding:.6rem 2rem;
background:#eee;
border:0
}

.fa-res-icon svg {
height:clamp(12px,1.4vw,60px);
padding:0 30px
}

.res-widget-footer {
font-size:80%;
line-height:200%
}

@media only screen and (max-width: 970px) {
.res-widget-footer {
padding-top:20px
}

.res-footer-mobile-framer {
padding-bottom:3rem
}
}

.footer-title {
font-size:110%;
font-weight:600;
margin-bottom:15px
}

.res-footer .footer-logo img {
width:100%;
height:auto
}

.footer-links .nav-link {
display:block;
padding:.1rem 0
}

.footer-social-box a {
transition:all .3s ease-in-out;
margin:5px 10px 5px 0;
border-radius:100%;
display:inline-block;
background:#000
}

.res-widget-footer div.footer-social-box a:hover {
opacity:.8;
transform:scale(1.1)
}

@media only screen and (max-width: 970px) {
.footer-social-box {
text-align:left!important;
padding-bottom:1rem
}
}

.res-widget-footer.footer-social-icon .fa-res-icon svg {
fill:#fff;
height:clamp(20px,1.0vw,80px);
padding:0
}

.res-widget-footer.footer-social-icon span.fa-res-icon,.res-widget-footer.footer-social-icon span.fa-res-i {
width:45px;
height:45px;
border-radius:100%;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:clamp(18px,1.2vw,30px)
}

.footerlink-collapse-frame p.title-collapse {
font-size:140%;
margin-bottom:10px
}

.footerlink-collapse-frame a p.title-collapse::after {
content:"\f078";
font-family:"Font Awesome 6 Pro";
font-weight:700;
border:none!important;
opacity:.8;
font-size:80%;
margin-left:.7rem;
transition:all .2s ease-in-out
}

@media only screen and (max-width: 970px) {
.footerlink-collapse-frame p.title-collapse {
margin:1rem 0
}
}

.footerlink-collapse-frame .card-header {
padding:0;
margin:0;
background:transparent;
border:0
}

.footerlink-collapse-frame .card {
background:transparent;
border:0;
margin-bottom:2rem
}

.footerlink-collapse-frame .card-body {
padding:.1rem;
padding-left:0
}

.res-footer-copyright .footer-link-liste ul {
padding:0;
font-size:140%;
line-height:140%
}

.res-footer-copyright .footer-link-liste li {
padding:0;
margin-right:1.2rem;
display:inline;
line-height:190%
}

.res-footer-copyright .footer-link-liste li a {
transition:all .2s ease-in-out
}

.res-footer-copyright .footer-link-liste li a:hover {
transform:translateY(-2px)
}

@media only screen and (max-width: 970px) {
.res-footer-copyright .footer-link-liste li {
padding:5px;
padding-left:0;
margin:0;
border:0;
display:block
}
}

@media only screen and (min-width: 970px) {
.footer-link-liste ul {
padding:0;
margin:0;
width:100%
}

.footer-link-liste ul li {
padding:0;
margin:0;
width:100%
}

.footer-link-liste ul li a {
transition:all .3s ease-in-out
}

.footer-link-liste ul li a:hover {
opacity:1;
transition:all .1s ease-in-out
}
}

.res-footer-newsletter .form-control {
padding:.4rem 1rem;
font-size:70%;
font-weight:400;
color:#000;
background-color:#fff;
border:1px solid #dedede;
max-width:80%
}

.newsletter-subscribe-iframe {
max-width:600px;
margin:0 auto;
padding-top:20px;
font-size:100%
}

.newsletter-subscribe-iframe h1 {
font-size:200%;
font-weight:300
}

.newsletter-subscribe-iframe
.newsletter-subscribe-iframe .vfb-fieldType-checkbox div {
margin-left:0
}

@media only screen and (max-width: 970px) {
.newsletter-subscribe-iframe .vfb-fieldType-checkbox small {
font-size:11px;
opacity:.5
}

.newsletter-subscribe-iframe .vfbp-form .vfb-help-block {
font-size:10px
}

.newsletter-subscribe-iframe .vfb-fieldType-checkbox div {
margin-left:0
}
}

iframe#newsletter-modal-iframe {
width:100%;
height:500px;
border:0
}

.res-footer-blog p {
line-height:160%;
margin-bottom:8px;
width:75%
}

.res-footer-blog i {
padding-right:8px;
font-size:85%
}

.res-footer-blog span {
font-weight:400
}

.res-footer-copyright {
font-size:12px;
opacity:.8
}

@media only screen and (min-width: 970px) {
.res-footer-copyright .copyright-col1 span {
padding:0 10px
}

.res-footer-copyright .copyright-col1 span.copyright {
padding-left:0;
border:0
}

.res-footer-copyright .copyright-col2 span {
padding:0 10px
}

.res-footer-copyright .copyright-col2 span.impress-nl {
padding-left:0;
border:0
}

.res-footer-copyright .copyright-col2 span.impress-nl i {
padding-right:5px;
opacity:.6
}

.res-footer-copyright .copyright-col2 span:last-child {
border:0
}
}

@media only screen and (max-width: 970px) {
.res-footer-copyright {
line-height:180%
}

.res-footer-copyright .copyright-col1 {
margin-bottom:20px
}

.res-footer-copyright .copyright-col1 span {
padding:0;
display:block
}

.res-footer-copyright .copyright-col1 span.impress {
padding:0 10px 0 0;
display:inline-block
}

.res-footer-copyright .copyright-col2 span {
padding:0 10px 0 0;
display:inline-block
}

.res-footer-copyright .copyright-col2 span.impress-nl {
padding:0 0 10px;
display:block
}
}

html:not(:has(.res-fx-footer-reveal)) {
height:-webkit-fill-available
}

body:not(:has(.res-fx-footer-reveal)) {
min-height:100vh;
display:flex;
flex-direction:column
}

body:not(:has(.res-fx-footer-reveal)) #page {
flex:1 0 auto
}

.jarallax {
position:relative;
z-index:0
}

.jarallax > .jarallax-img {
position:absolute;
object-fit:cover;
top:0;
left:0;
width:100%;
height:100%;
z-index:-1
}

.modal-header {
border-bottom:0
}

.modal-header i {
font-size:120%;
margin:10px 15px
}

.modal-header span:active {
outline:0
}

.modal-header .close {
text-shadow:none;
outline:0
}

.modal-content {
border:none;
border-radius:.5em
}

.modal-body {
padding:0 2.2em 1.9em;
line-height:140%
}

.modal-open .modal {
backdrop-filter:blur(10px)
}

.modal-dialog.modal-sm {
max-width:570px
}

.modal-dialog.modal-lg {
max-width:90%
}

.modal-dialog {
max-width:1100px
}

.modal-backdrop.show {
opacity:.8
}

.boxes-modal .modal-content .container {
max-width:100%
}

@media only screen and (max-width: 970px) {
.modal-backdrop.show {
opacity:.8
}

.modal-dialog {
margin:1rem
}
}

.fancybox__backdrop {
background:#18181bcc!important
}

.fancybox__toolbar {
background:transparent!important
}

.fancybox__toolbar button {
border-radius:0;
margin-top:1rem;
margin-right:1rem
}

.carousel__button svg {
width:40px;
height:40px;
stroke-width:1px;
text-shadow:none;
box-shadow:none
}

.fancybox__toolbar .fancybox__button--zoom svg,.fancybox__toolbar .fancybox__button--slideshow svg,.fancybox__toolbar .fancybox__button--thumbs svg,.fancybox__toolbar .fancybox__button--fullscreen svg {
opacity:.4
}

.fancybox__thumbs .carousel__slide {
width:50px;
margin:0 0 15px
}

.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
border:2px solid #eee
}

.fancybox__thumb {
padding-top:70%;
border-radius:0
}

.res-blog .blog-sidebar .blog-filters {
font-size:90%
}

.res-blog .blog-box h3 {
font-size:120%;
padding:10px 0
}

.res-blog .blog-vorschau-txt {
display:block;
font-size:80%;
line-height:160%;
margin-right:8px
}

.res-blog .blogpost-btn span.btn-text-link {
font-size:85%;
padding:0;
margin:0
}

.res-sidebar-widgets h3 {
font-size:140%
}

.res-sidebar-widgets li {
margin-left:1px;
font-size:90%;
transition:all .6s ease-in-out
}

.res-sidebar-widgets li:hover {
transition:all .3s ease-in-out;
transform:translateX(3px)
}

.res-sidebar-widgets li.current-cat a {
font-weight:700
}

.res-sidebar-widgets li ul {
padding-left:0;
margin-left:10px;
font-size:95%
}

.res-sidebar-widgets li ul li {
padding-left:0;
margin-left:0;
list-style:none
}

.res-sidebar-widgets .share-tools i {
font-size:80%;
margin-right:10px;
min-width:20px
}

.res-blog h1.blog-category-title {
font-size:180%;
margin:0;
padding:0
}

@media only screen and (max-width: 970px) {
.res-blog h1.blog-category-title {
padding-bottom:15px
}
}

.res-sidebar-filter .blog-filters ul {
margin-bottom:0;
list-style-type:none
}

.res-sidebar-filter .blog-filters li {
position:relative;
font-size:90%;
font-weight:300;
margin-right:3rem;
padding-left:16px;
transition:all .5s ease-in-out
}

.res-sidebar-filter .blog-filters li:hover {
opacity:.6;
transition:all .1s ease-in-out
}

@media only screen and (max-width: 970px) {
.res-sidebar-filter .blog-filters li {
padding-left:5px
}
}

.res-boxes .postBox,.res-slider-content .postBox {
display:flex;
flex-direction:column;
height:100%
}

.res-boxes .postContent,.res-slider-content .postContent {
display:flex;
flex-direction:column;
height:100%;
gap:.35em
}

.res-boxes .postContent h2,.res-boxes .postContent h3,.res-boxes .postContent h4,.res-slider-content .postContent h2,.res-slider-content .postContent h3,.res-slider-content .postContent h4 {
margin-bottom:0
}

.res-boxes .postContent .btn,.res-boxes .postContent i,.res-slider-content .postContent .btn,.res-slider-content .postContent i {
margin-top:auto!important;
max-width:fit-content
}

.res-boxes .postImg,.res-slider-content .postImg {
overflow:visible!important
}

.res-slider-content .postContent .btn-sm.btn-text-link,.res-boxes .postContent .btn-sm.btn-text-link {
padding:0
}

.res-blog .blogbox-no-paddding {
padding-top:15px
}

.res-blog .blogbox-padding01 {
padding:5px 15px
}

.res-blog .blogbox-padding02 {
padding:10px 20px
}

.res-blog .blogbox-padding03 {
padding:15px 30px
}

.res-blog .blogbox-padding04 {
padding:25px 45px
}

.res-blog .blog-boxes .scale-boximg img {
transition:all .7s ease-in-out
}

.res-blog .blog-boxes .scale-boximg:hover img {
transition:all .3s ease-in-out;
transform:scale(1.03);
opacity:.9
}

.res-blog .blog-boxes .scale-box {
transition:all .4s ease-in-out
}

.res-blog .blog-boxes .scale-box:hover {
transition:all .1s ease-in-out;
transform:scale(1.01);
opacity:.8
}

.res-blog .blog-boxes .postImg + .box-overlayer {
opacity:1;
position:absolute;
bottom:0;
left:0;
transition:all .4s ease-in-out;
background:#0006;
color:#fff;
height:100%;
width:100%
}

.res-blog .blog-boxes .box-overlayer .postContent {
color:#fff
}

.res-blog .blog-boxes .postImg + .box-overlayer .postContent {
height:100%
}

.res-blog .blog-boxes .box-overlayer span.btn-text-link {
text-align:start;
padding-left:0;
color:#fff
}

.res-blog .blog-boxes .box-custom {
background:linear-gradient(60deg,#eee 30%,#f8f8f8);
border-radius:0 0 30px 0
}

.res-blog .blog-boxes .blogbox-content {
padding-top:15px;
padding-left:35px;
padding-right:15px
}

.res-blog .blog-boxes .darkmode {
background-color:#000;
color:#fff
}

.res-blog .blog-boxes .darkmode a,.res-blog .blog-boxes .darkmode span,.res-blog .blog-boxes .darkmode a.btn {
color:#fff
}

.res-filter-list {
padding:20px 0
}

.res-filter-item .nav-link {
display:block;
padding:0 2rem 0 0;
font-size:80%;
transition:all .5s ease-in-out
}

.res-filter-item:hover a.nav-link {
opacity:.4;
transform:translateX(-1px);
transition:all .3s ease-in-out
}

.res-filter-item.active a.nav-link {
font-weight:600;
color:#000
}

.close {
opacity:1
}

.x-close {
margin:10px 20px 0 0;
width:40px;
height:40px;
position:relative;
display:inline-block
}

.x-close:after {
content:'';
height:40px;
border-left:2px solid #000;
position:absolute;
transform:rotate(45deg);
left:18px
}

.x-close:before {
content:'';
height:40px;
border-left:2px solid #000;
position:absolute;
transform:rotate(-45deg);
left:18px
}

@media only screen and (max-width: 970px) {
.x-close:after {
border-left:2px solid #444
}

.x-close:before {
border-left:2px solid #444
}
}

.scale {
transition:all .7s ease-in-out
}

.scale:hover {
transition:all .7s ease-in-out;
transform:scale(1.04);
opacity:.9
}

.res-animate {
animation-name:fadeIn;
animation-fill-mode:both;
animation-duration:3s
}

.notransition {
-o-transition:none!important;
-ms-transition:none!important;
-moz-transition:none!important;
-webkit-transition:none!important;
transition:none!important
}

small,.small {
font-size:85%;
line-height:160%;
font-weight:300
}

.text-underline {
padding-bottom:20px;
border-bottom:1px solid #dedede;
margin-bottom:30px
}

.header-option-absolute {
width:100%;
max-width:100%;
position:absolute;
z-index:90;
border:0;
background:transparent;
box-shadow:0 .125rem .25rem #0000!important
}

.header-option-absolute.res-fixnav.show {
box-shadow:0 .125rem .25rem #00000013!important
}

.carousel-control-prev-icon,.carousel-control-next-icon {
background:none
}

#nav-on-top {
height:45px;
width:45px;
text-align:center;
font-size:130%;
line-height:161%;
border:0 solid #dedede;
color:#000;
border-radius:45px;
bottom:0;
right:1%;
padding:0;
display:none;
position:fixed;
z-index:999;
overflow:hidden;
-webkit-transition:all .2s ease-in-out;
transition:all .2s ease-in-out
}

@media only screen and (max-width: 490px) {
#nav-on-top {
padding-top:5px;
border:0;
right:0
}
}

#nav-on-top:hover {
opacity:.8;
-webkit-transform:translateY(-3px);
transform:translateY(-3px)
}

.pgc-rev-slider-view .pgc-rev-slider-next-prev-button {
background-color:transparent!important
}

.cookies {
display:none
}

.cta-sticker {
display:none
}

.overlayer-burgermenu,.burgermenu-nav-section {
display:none
}

.side-bar {
display:none
}

@media only screen and (min-width: 1600px) {
.alignwide {
margin-left:-150px;
margin-right:-150px
}
}

@media only screen and (min-width: 1920px) {
.alignwide {
margin-left:-50px;
margin-right:-50px
}
}

.alignfull {
margin-left:calc(-100vw / 2 + 100% / 2);
margin-right:calc(-100vw / 2 + 100% / 2);
max-width:calc(100vw - var(--scrollbarWidth))
}

@media only screen and (max-width: 970px) {
.alignfull {
max-width:calc(100vw)
}
}

.alignfull .inner-container.container-off {
max-width:90%;
margin:0 auto
}

.alignfull .container-wide {
max-width:90%;
margin:0 auto
}

.alignfull .inner-container.container-off:has(.txt50-50) {
max-width:100%
}

@media only screen and (min-width: 1280px) {
.alignwide .inner-container.container-wide,.alignwide .inner-container.container-off {
max-width:100%;
margin:0 auto;
width:100%
}

.alignfull .inner-container.container-off,.alignfull .inner-container.container-wide {
max-width:80%;
margin:0 auto;
width:100%;
padding:0 15px
}
}

.container-small {
max-width:1100px;
margin:0 auto
}

.wp-block-embed-youtube iframe {
width:100%;
max-width:900px;
height:520px
}

@media only screen and (max-width: 970px) {
.wp-block-embed-youtube iframe {
height:200px
}
}

.wp-block-image img {
max-width:100%;
height:auto
}

.res-block.Schwarz,.res-block.Dunkelgrau,.res-block.Schwarz a:not(.btn-secondary),.res-block.Dunkelgrau a:not(.btn-secondary),.res-block.Schwarz a:not(.btn-outline),.res-block.Dunkelgrau a:not(.btn-outline) {
color:#fff
}

blockquote {
padding-left:40px;
position:relative;
font-style:italic
}

blockquote:before {
content:'\201D';
width:35px;
font-family:serif;
font-size:170%;
line-height:120%;
font-weight:700;
font-style:normal;
text-align:center;
position:absolute;
top:0;
left:0
}

.form-control {
padding:.4rem 1rem;
font-size:90%;
font-weight:400;
color:#000;
background-color:#eee;
border:0 solid transparent
}

input.form-control {
height:calc(2.67em + 0.8rem + 2px)
}

.res-page-content select {
-webkit-appearance:none;
-moz-appearance:none;
background:transparent;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!--%3E%3Cpath d='M4.251 181.1C7.392 177.7 11.69 175.1 16 175.1c3.891 0 7.781 1.406 10.86 4.25l197.1 181.1l197.1-181.1c6.5-6 16.64-5.625 22.61 .9062c6 6.5 5.594 16.59-.8906 22.59l-208 192c-6.156 5.688-15.56 5.688-21.72 0l-208-192C-1.343 197.7-1.749 187.6 4.251 181.1z'/%3E%3C/svg%3E")!important;
background-repeat:no-repeat;
background-position-x:98%;
background-position-y:45%;
background-size:17px;
border:1px solid #DDD;
border-radius:.45em!important;
padding:.45em 1.2em;
padding-right:2rem;
font-size:16px;
line-height:140%
}

#wpadminbar {
position:fixed;
z-index:99;
max-width:80%;
right:auto;
left:10%;
top:auto;
bottom:1%;
background-color:#333;
height:auto;
opacity:.7
}

#wpadminbar .ab-submenu {
margin-top:-120px;
background-color:#333
}

@media only screen and (max-width: 970px) {
#wpadminbar {
display:none
}
}

#wpadminbar #wp-admin-bar-wp-logo,#wpadminbar #wp-admin-bar-customize,#wpadminbar #wp-admin-bar-comments,.otgs-development-site-front-end {
display:none
}

.grecaptcha-badge {
visibility:hidden!important
}

.google-captcha-text {
font-size:clamp(10px,0.7vw,16px);
line-height:180%
}

body.single .res-singlepage-scroll-bar-frame {
position:fixed;
top:0;
z-index:999;
width:100%;
background-color:transparent
}

body.single .res-single-scroll-bar {
width:100%;
height:5px;
background:#fff0
}

body.single .res-single-scroll-bar-progress {
height:5px;
background:#000f;
width:0
}

body.single.footer-in-viewport .res-single-scroll-bar-progress {
background:#f1f1f1
}

.pb-5,.py-5 {
padding-bottom:9.1em!important
}

.pt-5,.py-5 {
padding-top:9.1em!important
}

.pb-4,.py-4 {
padding-bottom:6.5em!important
}

.pt-4,.py-4 {
padding-top:6.5em!important
}

.pb-3,.py-3 {
padding-bottom:3.25em!important
}

.pt-3,.py-3 {
padding-top:3.25em!important
}

@media only screen and (max-width: 1500px) {
.pb-5,.py-5 {
padding-bottom:7.5rem!important
}

.pt-5,.py-5 {
padding-top:7.5rem!important
}

.mb-5,.my-5 {
margin-bottom:7.5rem!important
}

.mt-5,.my-5 {
margin-top:7.5rem!important
}

.pb-4,.py-4 {
padding-bottom:5.5rem!important
}

.pt-4,.py-4 {
padding-top:5.5rem!important
}

.mb-4,.my-4 {
margin-bottom:5.5rem!important
}

.mt-4,.my-4 {
margin-top:5.5rem!important
}

.pb-3,.py-3 {
padding-bottom:2rem!important
}

.pt-3,.py-3 {
padding-top:2rem!important
}

p {
margin-bottom:1em
}
}

@media only screen and (max-width: 1500px) and (min-width: 970px) {
.pt-md-3,.py-md-3 {
padding-top:2rem!important
}

.pb-md-3,.py-md-3 {
padding-bottom:2rem!important
}
}

@media only screen and (max-width: 1350px) {
.res-content-topspace {
padding-top:5vh
}

.pb-5,.py-5 {
padding-bottom:6rem!important
}

.pt-5,.py-5 {
padding-top:6rem!important
}

.mb-5,.my-5 {
margin-bottom:6rem!important
}

.mt-5,.my-5 {
margin-top:6rem!important
}

.pb-4,.py-4 {
padding-bottom:4.5rem!important
}

.pt-4,.py-4 {
padding-top:4.5rem!important
}

.mb-4,.my-4 {
margin-bottom:4.5rem!important
}

.mt-4,.my-4 {
margin-top:4.5rem!important
}

.pb-3,.py-3 {
padding-bottom:1.75rem!important
}

.pt-3,.py-3 {
padding-top:1.75rem!important
}

body .wp-block-columns {
margin-bottom:1em
}
}

@media only screen and (max-width: 1350px) and (min-width: 970px) {
.pt-md-3,.py-md-3 {
padding-top:1.75rem!important
}

.pb-md-3,.py-md-3 {
padding-bottom:1.75rem!important
}
}

@media only screen and (max-width: 1100px) {
.pb-5,.py-5 {
padding-bottom:5rem!important
}

.pt-5,.py-5 {
padding-top:5rem!important
}

.mb-5,.my-5 {
margin-bottom:5rem!important
}

.mt-5,.my-5 {
margin-top:5rem!important
}

.pb-4,.py-4 {
padding-bottom:3.5rem!important
}

.pt-4,.py-4 {
padding-top:3.5rem!important
}

.mb-4,.my-4 {
margin-bottom:3.5rem!important
}

.mt-4,.my-4 {
margin-top:3.5rem!important
}

.pb-3,.py-3 {
padding-bottom:1.5rem!important
}

.pt-3,.py-3 {
padding-top:1.5rem!important
}

.pb-2,.py-2 {
padding-bottom:.8rem!important
}

.pt-2,.py-2 {
padding-top:.8rem!important
}
}

@media only screen and (max-width: 970px) {
.home .res-content,.res-content {
margin-top:0
}

body:not(.page-header-fixiert) .res-content {
padding-top:70px
}

.page-header-fixiert-mobile .res-content {
margin-top:0
}

.page-header-fixiert-mobile .mobile-x-close span {
background:#fff
}

.res-fix-nav-in-viewport:not(.page-on-top).page-header-fixiert-mobile .res-fixnav .res-mobile-bar {
background-color:#262626
}

.res-footer {
margin-top:0!important
}

.pb-5,.py-5 {
padding-bottom:4rem!important
}

.pt-5,.py-5 {
padding-top:4rem!important
}

.mb-5.pt-5,.my-5.pt-5 {
padding-bottom:0!important
}

.mt-5.pt-5,.my-5.pt-5 {
padding-top:0!important
}

.mb-5,.my-5 {
margin-bottom:4rem!important
}

.mt-5,.my-5 {
margin-top:4rem!important
}

.pb-4,.py-4 {
padding-bottom:3rem!important
}

.pt-4,.py-4 {
padding-top:3rem!important
}

.mb-4,.my-4 {
margin-bottom:3rem!important
}

.mt-4,.my-4 {
margin-top:3rem!important
}

.pb-3,.py-3 {
padding-bottom:1rem!important
}

.pt-3,.py-3 {
padding-top:1rem!important
}

.mb-3,.my-3 {
margin-bottom:2rem!important
}

.mt-3,.my-4 {
margin-top:2rem!important
}

.pb-2,.py-2 {
padding-bottom:.5rem!important
}

.pt-2,.py-2 {
padding-top:.5rem!important
}

p {
margin-bottom:.5rem
}
}

@media only screen and (min-width: 970px) {
body:has(.res-fx-footer-reveal) {
:root--page-bg-gap:24px
}

#page {
position:relative;
z-index:1;
background:transparent;
min-height:100vh
}

#page > :not(.page-bg) {
position:relative
}

.page-bg {
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
background:#FAFAFA;
border-radius:0;
will-change:left,right,border-radius;
pointer-events:none
}

.footer-wrapper {
position:relative;
z-index:0
}

.res-footer {
overflow:hidden
}
}

@media (max-width: 970px) {
.res-fx-footer-reveal .footer-container {
transform:none!important
}

#page .page-bg {
left:0!important;
right:0!important;
border-radius:0!important
}
}