@charset "utf-8";
/* CSS Document */
/*
Theme Name: Schweisfurth Stiftung
Author: networkerz gmbh
Author URI: https://networkerz.de/
Description: main css
Version: 1.0
License: private
License URI: https://www.networkerz.de
*/
/* font-faces */
/* roboto-slab-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-slab-v34-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-slab-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-slab-v34-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* encode-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/encode-sans-v19-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* encode-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Encode Sans';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/encode-sans-v19-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

* {
	 margin: 0; padding: 0;
	 box-sizing: border-box;
	 }

html, body {
	font-family: 'Encode Sans', sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:19px;
	line-height:1.8;
	margin:0px;
	padding:0px;
  color:var(--bodytext);
}
strong {
	font-weight:700;
}
h1, h2 {
  font-family: 'Roboto Slab', serif;
  font-size: 2.37rem;
  line-height: 1.175;
}
h3 {
  font-family: 'Encode Sans', sans-serif;
  font-weight:700;
  font-size: 1.47rem;
  line-height: 1.4;
}
.summary h3 {
	font-family: 'Roboto Slab', serif;
}
h4 {
  font-family: 'Encode Sans', sans-serif;
  font-weight:700;
  font-size: 1.3rem;
  line-height: 1.4;
	margin-bottom:30px;
}
.sub-menu-box h4 {
	font-family: 'Roboto Slab', serif; 
	font-size:1.1rem;
}
.text-bubble h4 {
	font-family: 'Roboto Slab', serif; 
}
h5, .subline {
  font-size:1.21rem;
  font-weight:normal;
}
.subline {
	line-height:1.3;
}
blockquote {
  font-family: 'Roboto Slab', serif;
  font-weight: 700;
  font-size: 1.58rem;
  line-height: 1.5;
}
.text-in-bubble p {
	font-family: 'Roboto Slab', serif;
	font-size: 1.1rem;
  	line-height: 1.5;
	padding-left:1em;
}
.intro p, .intro a {
  font-size:1.3rem;
}
.author, .rank-math-breadcrumb p {
  font-size:0.75rem;
	}
.caption {
	font-size:0.8rem;
	line-height:1.5;
}
h6, .copyright {
	font-size:0.5em;
	line-height:10px;
	font-weight: normal;
}
.accordion h6 {
	margin-bottom:20px;
}
.topic, .news .date {
  font-size:0.9em;
	}
footer a {
  font-size:1.05em;
	}
@media (min-width:1024px) {
  
}
@media (min-width:1280px) {
html, body {
    font-size:19px;
    line-height:33px;
    line-height:1.8;
  }
	.caption {
		font-size:15px;
	}
}

a {
  text-decoration: underline;
	color:var(--bodytext);
	}
a:visited, a:focus {	}
a:focus { outline: none;}
a:hover,
a:focus {
  color:var(--main);
	}
.post-type-archive-termine .bg-main a,
.post-type-archive-termine .bg-main a:hover,
.post-type-archive-termine .bg-main a:focus{
	color:var(--contrast);
	text-decoration: underline;
}

footer a, .rank-math-breadcrumb a, .hashtags a {
	text-decoration:none;
}
.main-nav > li a {
  position:relative;
  text-decoration:none;
  color:var(--bodytext);
  border-bottom:2px solid transparent;
}
.main-nav > li:last-child a {
	color:var(--main);
	font-weight:700;
}
#main-menu > li > a::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: var(--main);
  transform: scaleX(0);
  transform-origin: top left;
  transition: transform 0.3s ease;
}
#main-menu > li.is-open > a::before {
  transform: scaleX(1);
}
a.bg-animated, a:hover,
a:focus {
  color:var(--main);
  text-decoration: none;
  transition: all .64s var(--ease);
}
.rank-math-breadcrumb p {
	display:flex;
}
.rank-math-breadcrumb a {
	display: inline-block;
	text-align:center;
}
.rank-math-breadcrumb .separator {
	display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
}
.rank-math-breadcrumb a::after {
  content: attr(data-text);
  font-weight: 700;
  visibility: hidden;
  white-space: nowrap;
  height: 0;
  overflow: hidden;
  display: block;
}
.rank-math-breadcrumb a:hover, .rank-math-breadcrumb span.last {
	font-weight:700;
	color:var(--bodytext);
}
.rank-math-breadcrumb a:focus {
	color:var(--bodytext);
}
a.bg-animated:hover, a.bg-animated:focus, a.bg-animated:visited {
  text-decoration:none;
}
a.bg-animated {
	display:inline-block;
}
a.bg-animated span {
  box-shadow: inset 0 -3px 0 0 var(--bodytext);
  color: var(--bodytext);
  padding-bottom: 4px;
  padding-top:4px;
  transition: all .2s var(--ease);
}
a.bg-animated span:focus, a.bg-animated span:hover,
a.bg-animated.blue span:focus, a.bg-animated.blue span:hover,
.link-to-catpage a.bg-animated.blue span {
  box-shadow: inset 0 -3rem 0 0 rgba(0, 157, 197, 0.5);
}
a.bg-animated.red span:focus, a.bg-animated.red span:hover,
.link-to-catpage a.bg-animated.red span {
  box-shadow: inset 0 -3rem 0 0 var(--red);
}
a.bg-animated.green span:focus, a.bg-animated.green span:hover,
.link-to-catpage a.bg-animated.green span,
.single-kaelber .back-btns a.green span {
  box-shadow: inset 0 -3rem 0 0 var(--green);
}
a.bg-animated.pink span:focus, a.bg-animated.pink span:hover,
.link-to-catpage a.bg-animated.pink span {
  box-shadow: inset 0 -3rem 0 0 rgba(177, 0, 77, 0.7);
}
a.bg-animated.mint span:focus, a.bg-animated.mint span:hover,
.link-to-catpage a.bg-animated.mint span {
  box-shadow: inset 0 -3rem 0 0 rgba(65, 179, 143, 0.5);
}
a.bg-animated.indigo span:focus, a.bg-animated.indigo span:hover,
.link-to-catpage a.bg-animated.indigo span {
  box-shadow: inset 0 -3rem 0 0 rgba(0, 80, 118, 0.5);
}
a.bg-animated.light span:focus, a.bg-animated.lightbeige span:hover,
.link-to-catpage a.bg-animated.lightbeige span {
  box-shadow: inset 0 -3rem 0 0 var(--lightbeige);
}
a.bg-animated.light span:focus, a.bg-animated.beige span:hover{
  box-shadow: inset 0 -3rem 0 0 var(--beige);
}
strong {
	font-weight:700;
}
ul, li {
    margin: 0;
    padding: 0;
}
nav ul, nav li {
	list-style:none;
}
.text-wrap ul, .text-wrap ol {
	margin-left:30px;
}
img {
  width:100%;
	height:auto;
	border:none;
	display:block;
	}
p, ul, blockquote,
.imageblock .text-bubble h2,
.imageblock.big-bubble .text-bubble h1,
h3,
.two-columns.textbubble h4,
a.bg-animated {
  margin-bottom: 30px;
}
.post-type-archive-termine .bg-main p {
	margin-bottom:10px;
}
svg + .caption {
  max-width: 60%;
  margin: 0 auto;
}
.two-columns .copyright {
	margin: -23px 3px 13px 3px;
  	color: white;
  	text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
	height: 20px;
	  display: flex;
	  align-items: end;
}
.two-columns.overview .copyright {
	color: var(--bodytext); 
	text-shadow:none;
}
.two-columns.overview .copyright,
.two-columns.teaser .copyright,
.three-columns.teaser .copyright{
  margin: -10px 0 0 100%;
  transform: rotate(-90deg);
  transform-origin: left top;
  width: 145px;
}
.three-columns.teaser .copyright {
  margin: -40px 0 30px 100%;
}
.two-columns.teaser .copyright {
	margin: -40px 0 30px calc(100% - 25px);
}
.two-columns.overview .copyright {
	color: white;
  	text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
	margin: -15px 0 0 calc(100% - 25px);
}
.two-columns.imgbubble .copyright {
  text-align: center;
  margin: -40px auto 0;
  color: white;
  text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
  width: 30%;
  height: 30px;
  display: flex;
  align-items: end;
  justify-content: center;
	line-height: 1.3;
}
.three-columns.teaser.team .copyright {
	color: white;
  text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
  transform: none;
  width: 40%;
  height: 30px;
  position: absolute;
  bottom: 0;
  display: flex;
  align-items: end;
  justify-content: center;
  line-height: 1.3;
  left: calc(50% - 82px);
  margin: 0 auto 15px;
}
/*   colors   */
:root { 
  --main: rgba(0, 157, 197);
  --main:#009DC5;
  --red: #EB5D48B2;
  --green:#A2A700B2;
  --mint: #41B38F;
  --pink:#B1004DB2;
  --indigo:#005076;
  --beige:rgb(190,177,140);
  --lightbeige:#eeebe4;
  --bodytext:#000000;
  --contrast: #fff;
  
  --ease:cubic-bezier(0.2,0.6,0.36,1);
}
.bg-light {
  background-color:var(--lightbeige);
}
.bg-main {
  background-color: rgba(0, 157, 197,0.3);
}
.bg-blue {
  background-color: rgba(0, 157, 197,0.3);
}
.bg-red {
  background-color:rgba(235, 93, 72, 0.2)
}
.bg-green {
  background-color:rgba(162, 167, 0, 0.3);
}
.bg-pink {
  background-color:rgba(177, 0, 77, 0.3);
}
.bg-mint {
  background-color:rgba(65, 179, 143, 0.3);
}
.bg-indigo {
  background-color:rgba(0, 80, 118, 0.3);
}
.text-bubble {
  color:var(--contrast);
}
.blue, .imgbubble .col-4 h3 {
	color:var(--main);
}
.red {
	color:var(--red);
}
.green {
	color:var(--green);
}
.pink {
	color:var(--pink);
}
.mint {
	color:var(--mint);
}
.indigo {
	color:var(--indigo);
}
.bubble svg.blue .cls-1 {
	fill:var(--main);
}
.bubble svg.red .cls-1 {
	fill:var(--red);
}
.bubble svg.green .cls-1 {
	fill:var(--green);
}
.bubble svg.pink .cls-1 {
	fill:var(--pink);
}
.bubble svg.mint .cls-1 {
	fill:var(--mint);
}
.bubble svg.indigo .cls-1 {
	fill:var(--indigo);
}
.two-columns.bg-blue svg,
.two-columns svg.blue {
  stroke: var(--main);
}
.two-columns.bg-red svg,
.two-columns svg.red {
  stroke: var(--red);
}
.two-columns.bg-green svg,
.two-columns svg.green {
  stroke: var(--green);
}
.two-columns.bg-pink svg,
.two-columns svg.pink {
  stroke: var(--pink);
}
.two-columns.bg-mint svg,
.two-columns svg.mint {
  stroke: var(--mint);
}
.two-columns.bg-indigo svg,
.two-columns svg.indigo {
  stroke: var(--indigo);
}
.post-type-archive-termine .two-columns .col-3.bg-main {
	background-color:var(--main);
	color:var(--contrast);
}
.text-bubble.bg-green {
	background: url('/wp-content/uploads/2025/03/bubble-green.svg'); 
}
.text-bubble.bg-blue {
	background: url('/wp-content/uploads/2025/03/bubble-blue.svg'); 
}
.text-bubble.bg-red {
	background: url('/wp-content/uploads/2025/03/bubble-red.svg'); 
}
.text-bubble.bg-pink {
	background: url('/wp-content/uploads/2025/10/bubble-pink.svg'); 
}
.text-bubble.bg-mint {
	background: url('/wp-content/uploads/2026/04/bubble-mint.svg'); 
}
.text-bubble.bg-indigo {
	background: url('/wp-content/uploads/2026/04/bubble-indigo.svg'); 
}
/*  sticky header  */
header#site-header {
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 10000;
  background-color: var(--contrast);
}
header.shrinked {
  border-bottom: var(--lightbeige) solid 1px;
    }
header .container {
  height:80px;
  padding:10px 40px;
}
.header-logo {
  display: flex;
  flex-direction: column;
  height: 50%;
  width: calc(100% - 65px);
  transition:0.5s all ease;
}
.header-logo a {
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
	max-width:300px;
}
.meta-nav {
	width:calc(100% - 80px);
	display: flex;
    justify-content: end;
}
#meta-menu {
	transition: 0.5s ease all;
}
#meta-menu a {
  font-size: 0.75em;
  text-decoration: none;
}
#search {
	display:flex;
}
#search-icon {
  width: 30px;
  height: auto;
  display: inline-block;
  cursor: pointer;
  transition:width ease 0.5s;
}
.active #search-icon {
	display:block;
	visibility:hidden;
	opacity:0;
	width:1px;
}
.iconSearch {
  margin-top: 10px;
}
.wpsearchform {
  position:relative;
  opacity:0;
  visibility:hidden;
  left: 500px;
  width: 1px;
  top: 0;
  z-index: 9999;
  background: #fff;
  transition: 0.5s ease width;
}
.wpsearchform form {
	display:flex;
}
.active .wpsearchform {
  left:0;
  width:250px;
  opacity:1;
  visibility:visible;
  
}
.wpsearchform .img-wrap {
  background-color: #fff;
  position: relative;
  width: 37px;
  height: 37px;
}
.wpsearchform img {
	max-width: 18px;
  margin-top: 10px;
  margin-left: 8px;
}
.search-field {
  font-family: inherit;
  display:inline-block;
  padding: 8px 12px;
  border-radius: 0px !important;
  border: none;
  border: 2px solid var(--beige);
}
.search-field:focus {
	outline: none !important;
	border: 2px solid var(--main);
}
.search-submit {
  position:relative;
  z-index:10;
  line-height: 1;
  padding: 10px 20px;
  border-radius: 0px;
  height: auto;
  font-size: 15px;
  display: inline-block;
  border: none;
  font-family: inherit;
  font-weight: 600;
  cursor: pointer;
	margin-right:-30px;
	background-color:transparent;
}
.navbar {
  height: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width:100%;
  flex-basis: 80%;
  margin:0 auto;
  padding:0;
}
.nav-interaction-zone {
  width: 100%;
}
.nav-desktop-zone {
  width: 100%;
  flex-basis: 80%;
}
.nav-interaction-zone .navbar {
  flex-basis: 100%;
}
.navbar .logo {
  width:262px;
  height:70px ;
  background-size: cover;
  z-index: 1;
}
#main-menu {
  display: flex;
  align-items: center;
  margin-bottom: 0;
	transition:0.5s ease all;
}
.shrinked #main-menu {
  margin-top: -45px;
}
#main-menu > li {
  display: flex;
  justify-content: space-between;
  padding: 84px 0px 24px 40px;
}
#main-menu > li:last-child {
	padding:84px 20px 24px 40px;
}
/* GEÄNDERT 2026-07-21: von :hover auf .is-open (JS-gesteuert) umgestellt,
   siehe Erklärung im NAV BACKDROP-Block am Ende dieser Datei */
#main-menu.main-nav > li.is-open .sub-menu-wrap-1,
#main-menu.main-nav > li.is-open .sub-menu-wrap-2 {
	visibility:visible;
	opacity:1;
}
.sub-menu-wrap-1, .sub-menu-wrap-2 {
  position: absolute;
  left: 0;
  margin-top: 60px;
  visibility:hidden;
  opacity:0;
  background-color: var(--lightbeige);
}
.shrinked .sub-menu-wrap-1 {
	margin-top:60px
}
.shrinked .sub-menu-wrap-2 {
	margin-top:30px
}
.sub-menu-wrap-1 {
	flex-wrap:wrap;
	width:100%;
	padding-left: calc(50% - 720px);
	padding-right: calc(50% - 720px);
}
.main-nav .sub-menu-wrap-1 > .sub-menu > li a {
  border-bottom: 2px solid var(--beige);
  display: block;
  font-weight:700;  
}
#main-menu .sub-menu-wrap-1 > .sub-menu > li a,
#main-menu .sub-menu-wrap-1 > .sub-menu > li a:hover {
	transition: color 0.3s ease; 
}
#main-menu .sub-menu-wrap-1 > .sub-menu > li a:hover,
#main-menu li > .sub-menu-wrap-1 > .sub-menu > li.current_page_item > a,
.main-nav .sub-menu-wrap-2 > .sub-menu > li.current-menu-item > a,
.main-nav .sub-menu-wrap-3 > .sub-menu > li.current-menu-item a {
	color:var(--main);
}
.main-nav .sub-menu-wrap-2 > .sub-menu > li,
.main-nav .sub-menu-wrap-3 > .sub-menu > li {
	line-height:1.5;
	margin-bottom:10px;
}
.main-nav .sub-menu-wrap-3 {
	margin-top:10px;
}
.main-nav .sub-menu-wrap-2 > .sub-menu > li a {
  border-bottom:none;
  display: inline-block;
  font-weight:400;
}
.main-nav .sub-menu-wrap-3 > .sub-menu > li a {
	display: inline-flex;
}
.sub-menu-wrap-2 {
  left: auto;
  margin-top: 30px;
}
.submenu-wrap-1 svg {
  width: 100%;
  position: absolute;
  left:0;
  bottom: -1px;
  z-index: 100;
}
#main-menu .sub-menu-wrap-1 > .sub-menu {
  padding: 40px 85px 0 0;
  display: flex;
  gap:30px;
  width: 75%;
  justify-content: space-between;
}
 #main-menu.main-nav .sub-menu-wrap-1 {
    display:flex;
  }
 #main-menu.main-nav li .sub-menu-box {
    width:25%;
  }
  #main-menu.main-nav li > .sub-menu-wrap-1 > .sub-menu > li {
    width: 33.33%;
    position: relative;
  }
#main-menu.main-nav li .sub-menu-box p {
	font-size: 0.9rem;
	line-height:1.3
}
.sub-menu-box .img-wrap {
  position: relative;
  padding-top: 75%;
  overflow: hidden;
  margin: 80px 0 30px;
  background-size: cover;
}
.sub-menu-box .text-bubble {
  position: absolute;
  bottom: -30%;
  left: -8%;
  width: 75%;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  background-repeat: no-repeat;
}
.socials {
  display: flex;
  justify-content: end;
  margin-top: 30px;
}
#meta-nav-social .icon-instagram img {
  width: 30px;
  height: 30px;
}
header .icon-instagram, .icon-facebook {
  width: 36px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
}
header .icon-facebook {
  margin-left: 15px;
  margin-top: -6px;
  width: 40px;
  border: none;
  display: inline-block;
}
#meta-nav-social .icon-facebook img {
  max-width: 36px;
  height: 36px;
}
#main-menu .bottom-curve {
  width: 100%;
  position: absolute;
  z-index: 100;
  left: 0;
  top: 100%;
  fill:var(--lightbeige);
  top: calc(100% - 2px);
  pointer-events: none;
}
.menu-btn {
  position: absolute;
  display: none;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 30px;
  right:40px;
  cursor: pointer;
  z-index: 2;
}
.navbar .menu-btn__lines, .navbar .menu-btn__lines::before, .navbar .menu-btn__lines::after {
  width: 45px;
  height: 1px;
  background: transparent;
  transition: all 0.4s ease-in-out;
}
.shrinked .navbar .menu-btn__lines, .shrinked .navbar .menu-btn__lines::before, .shrinked .navbar .menu-btn__lines::after {
	width:30px;
}
.navbar .menu-btn__lines::before {
  transform: translateY(-0.4rem);
}
.navbar .menu-btn__lines::after {
  transform: translateY(0.3rem);
}
.navbar .menu-btn__lines::before, .navbar .menu-btn__lines::after {
  background: var(--bodytext);
}
.navbar .menu-btn__lines::before, .navbar .menu-btn__lines::after {
  content: "";
  position: absolute;
}
.menu-btn.open .menu-btn__lines::before {
  transform: rotate(45deg);
}
.menu-btn.open .menu-btn__lines::after {
  transform: rotate(-45deg);
}
#main-menu-mobile.menu-items {
    position: fixed;
    height: 100%;
    max-height: initial;
    overflow-y: auto;
    width: 100vw;
    top: 145px;
    left: 0;
    transform: translateY(-100vh);
    transition: 0.3s ease-out;
    padding: 60px 40px 370px;
	background-color: var(--lightbeige);
  	z-index: -1;
  }
.shrinked #main-menu-mobile.menu-items {
	top:60px;
}
 #main-menu-mobile.menu-items.open {
    transform: translateY(0);
  }
 #main-menu-mobile.main-nav > li {
    position: relative;
    display: block;
    padding: 0;
	max-width: 400px;
	}
#main-menu-mobile.menu-items li span {
    position: absolute;
    top: 0;
    right: 0px;
    display: block;
	z-index:10;
	width: 30px;
    height: 30px;
    background-position: center;
	background-repeat: no-repeat;
	cursor:pointer
  }
#main-menu-mobile.menu-items > li a ~ span {
	background-image: url('/wp-content/uploads/2025/05/plus.svg');	
}
#main-menu-mobile.menu-items > li a.open ~ span {
	background-image: url('/wp-content/uploads/2025/05/minus.svg');	
}
#main-menu-mobile.menu-items .sub-menu > li a ~ span {
	background-image: url('/wp-content/uploads/2025/05/chevron-down.svg');	
}
#main-menu-mobile.menu-items .sub-menu > li a.open ~ span {
	background-image: url('/wp-content/uploads/2025/05/chevron-up.svg');
	margin-top: 5px;
}
.sub-menu-wrap-3 .sub-menu {
  margin-left: 10px;
}
#main-menu .sub-menu-wrap-3 .sub-menu {
  margin-bottom: 0;
}
.sub-menu-wrap-3 .sub-menu li {
	list-style: disc;
  margin-left: 10px;
}
/*  content  */
header, main, footer {
	width:100%;
  }
main {
  position:relative;
}
section {
    margin:70px 0;
  }
  section.imageblock {
    margin-bottom:35px;
  }
  section.bg {
    margin:0;
    padding:50px 0;
  }
	.two-columns.bubble.bg-light {
		padding-top:100px;
	}
  main section:first-of-type,
  section.bg + .imageblock.fullwidth {
    margin-top:0;
  }
  .bottom-curved.bg {
    margin:0;
    padding:0;
  }
  .bottom-curved + .textblock {
    margin-top:50px;
  }
.container {
  width:100%;
  max-width:1440px;
  padding:0 40px;
  margin:0 auto;
	}
/*   rank math breadcrumbs   */
.rank-math-breadcrumb {
	max-width: 1200px;
  	margin: 0 auto;
}
/*   Imageblock    */
.imageblock.fullwidth.top {
  margin-top:0;
}
.imageblock.fullwidth .img-wrap {
  position:relative;
	padding-top:42%;
  overflow:hidden;
  background-size: cover;
}
.imageblock.fullwidth.small-bubble .img-wrap {
	padding-top: 56%;
}
.imageblock.fullwidth.big-bubble .img-wrap {
	padding-top:42%;
}
.imageblock .text-bubble {
  position: absolute;
  bottom: 0;
  left: 10%;
  width: 40%;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom:10px;
  background-repeat: no-repeat;
}
.imageblock.big-bubble .text-bubble {
  width: 60%;
  left: -14%;
  bottom: -10%;
}
.imageblock.big-bubble .text-bubble .text-wrap {
  margin-left: 20%;
  min-height: 35%;
  max-width: 50%;
  margin-top: 10%;
}
.imageblock .text-bubble.bubble-blue {
	background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 954 945' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cg transform='matrix(3.25816,1.17774e-15,-2.69095e-16,3.38633,-904.221,-222.456)'%3E%3Cpath d='M280.499,165.307C289.601,128.733 327.738,89.924 363.43,75.24C399.121,60.556 461.386,64.077 494.648,77.204C526.525,89.784 553.784,120.969 563,154C575.787,199.829 572.085,262.56 546.093,291.37C517.811,322.718 467.844,344.692 428.839,344.721C389.897,344.749 343.17,335.588 308.816,294.683C283.856,264.962 271.396,201.881 280.499,165.307Z' style='fill:rgba(0, 157, 197, 0.7);' /%3E%3C/g%3E%3C/svg%3E");
}
.imageblock .text-bubble.bubble-red {
	background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 954 945' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cg transform='matrix(3.25816,1.17774e-15,-2.69095e-16,3.38633,-904.221,-222.456)'%3E%3Cpath d='M280.499,165.307C289.601,128.733 327.738,89.924 363.43,75.24C399.121,60.556 461.386,64.077 494.648,77.204C526.525,89.784 553.784,120.969 563,154C575.787,199.829 572.085,262.56 546.093,291.37C517.811,322.718 467.844,344.692 428.839,344.721C389.897,344.749 343.17,335.588 308.816,294.683C283.856,264.962 271.396,201.881 280.499,165.307Z' style='fill:rgba(235, 93, 72, 0.7);' /%3E%3C/g%3E%3C/svg%3E%0A");
}
.imageblock .text-bubble.bubble-green {
	background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 954 945' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cg transform='matrix(3.25816,1.17774e-15,-2.69095e-16,3.38633,-904.221,-222.456)'%3E%3Cpath d='M280.499,165.307C289.601,128.733 327.738,89.924 363.43,75.24C399.121,60.556 461.386,64.077 494.648,77.204C526.525,89.784 553.784,120.969 563,154C575.787,199.829 572.085,262.56 546.093,291.37C517.811,322.718 467.844,344.692 428.839,344.721C389.897,344.749 343.17,335.588 308.816,294.683C283.856,264.962 271.396,201.881 280.499,165.307Z' style='fill:rgba(162, 167, 0, 0.7);' /%3E%3C/g%3E%3C/svg%3E");
}
.imageblock .text-bubble.bubble-pink {
	background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 954 945' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cg transform='matrix(3.25816,1.17774e-15,-2.69095e-16,3.38633,-904.221,-222.456)'%3E%3Cpath d='M280.499,165.307C289.601,128.733 327.738,89.924 363.43,75.24C399.121,60.556 461.386,64.077 494.648,77.204C526.525,89.784 553.784,120.969 563,154C575.787,199.829 572.085,262.56 546.093,291.37C517.811,322.718 467.844,344.692 428.839,344.721C389.897,344.749 343.17,335.588 308.816,294.683C283.856,264.962 271.396,201.881 280.499,165.307Z' style='fill:rgba(177, 0, 77, 0.7);' /%3E%3C/g%3E%3C/svg%3E%0A");
}
.imageblock .text-bubble.bubble-mint {
	background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 954 945' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cg transform='matrix(3.25816,1.17774e-15,-2.69095e-16,3.38633,-904.221,-222.456)'%3E%3Cpath d='M280.499,165.307C289.601,128.733 327.738,89.924 363.43,75.24C399.121,60.556 461.386,64.077 494.648,77.204C526.525,89.784 553.784,120.969 563,154C575.787,199.829 572.085,262.56 546.093,291.37C517.811,322.718 467.844,344.692 428.839,344.721C389.897,344.749 343.17,335.588 308.816,294.683C283.856,264.962 271.396,201.881 280.499,165.307Z' style='fill:rgba(65, 179, 143, 0.7);' /%3E%3C/g%3E%3C/svg%3E%0A");
}
.imageblock .text-bubble.bubble-indigo {
	background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 954 945' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cg transform='matrix(3.25816,1.17774e-15,-2.69095e-16,3.38633,-904.221,-222.456)'%3E%3Cpath d='M280.499,165.307C289.601,128.733 327.738,89.924 363.43,75.24C399.121,60.556 461.386,64.077 494.648,77.204C526.525,89.784 553.784,120.969 563,154C575.787,199.829 572.085,262.56 546.093,291.37C517.811,322.718 467.844,344.692 428.839,344.721C389.897,344.749 343.17,335.588 308.816,294.683C283.856,264.962 271.396,201.881 280.499,165.307Z' style='fill:rgba(0, 80, 118, 0.7);' /%3E%3C/g%3E%3C/svg%3E%0A");
}
.imageblock.bubble-right .text-bubble {
  left: auto;
  right: 10%;
}
.imageblock.fullwidth.bottom-curved .img-wrap svg {
  width: 100%;
  position: absolute;
  bottom: -1px;
  z-index:100;
}
.imageblock.fullwidth.bottom-curved.small-bubble .img-wrap svg {
	z-index:0;
}
svg.bottom-curve {
  fill:var(--contrast);
}
svg.bottom-curve.beige {
  fill:var(--lightbeige);
}
.text-bubble .text-wrap {
  max-width: 70%;
  z-index: 200;
  margin-left: 15%;
  margin-bottom: 10%;
  width: 70%;
  height: 35%;
  display: flex;
  align-items: flex-end;
}
.imageblock .text-bubble .text-wrap {
	display:block;
}
.imageblock.small-bubble .text-bubble .text-wrap {
	margin-left:20%;
	margin-right:12%;
	height:auto;
	margin-bottom:0;
}
.link-wrap {
  position: relative;
  cursor: pointer;
}
.link-wrap a {
  position: absolute;
  width:100%;
  height: 100%;
  z-index: 10;
}
.link-wrap span {
  margin-right: 30px;
  width: auto;
  display: inline-block;
}
.link-wrap span:first-of-type {
	max-width: calc(100% - 150px);
	line-height:1.5;
}
.link-wrap .svg-wrap {
  width: 80px;
  display: inline-block;
  overflow: hidden;
  position: absolute;
  height: 50px;
  transition: all 0.5s ease;
  left:auto;
}
.two-columns .link-wrap .svg-wrap {
	left: calc(100% - 70px);
}
.link-wrap:hover .svg-wrap,
.link-wrap:focus .svg-wrap{
  width:100px;
}
.imageblock.fullwidth.bottom-curved .img-wrap .svg-wrap svg,
.two-columns .link-wrap svg{
  position: absolute;
  right: 0;
  top: 0;
  width: 100px;
}
/*   Textblock    */
.two-columns .col-4, .two-columns .col-5, .two-columns .col-6 {
  position:relative;
  margin:30px 0;
}
.two-columns img + .caption,
.imageblock .caption {
  margin-top:10px;
}
.text-in-bubble, .img-in-bubble {
  position: absolute;
  top: 0;
  width: 100%;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.text-in-bubble {
  color:var(--contrast);
}
.text-in-bubble p {
  max-width: 65%;
	margin-bottom:0;
}
.imgbubble .col-4 h3 {
	text-align:center;
	margin-bottom:100px;
}
.imgbubble .bg-wrap {
  background-repeat: no-repeat;
  background-size:cover;
}
.single-kaelber .imgbubble .bg-wrap {
	width: 100%;
  	aspect-ratio: 1/1;
}
.imgbubble svg {
  width:100%;
}
.single-kaelber .imgbubble svg  {
  fill: var(--contrast);
  position: absolute;
  top: 0;
  left: 0;
}
.imgbubble svg {
  fill:#FFF;
}
.bg-light.imgbubble .col-4 svg {
  fill:var(--lightbeige);
}
.imgbubble caption {
	margin-top:30px;
	text-align:center;
}
.text-wrap {
  max-width:650px;
}
.textblock.centered .text-wrap {
	margin:0 auto;
}
/*   Blockquote   */
blockquote {
  position:relative;
}
.blockquote .text-wrap {
  max-width: 650px;
  margin: 0 auto;
}
.blockquote .line {
  width:50%;
  border-top: 1px solid var(--beige);
}
.author {
  padding-top:30px;
}
/*  Two columns   */
.summary {
  margin-top: 50px;
  padding:0 30px;
}
.video-wrap {
  position: relative;
  padding-bottom: 56%;
  height: 0;
  overflow:hidden;
}
video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
	height: 100%; 
}
.video-wrap .icon-wrap {
  position: absolute;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  z-index: 10;
  overflow: hidden;
}
.video-wrap .icon-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
.video-wrap .icon-wrap svg {
  cursor: pointer;
  z-index: 10;
}
.video-wrap .icon-wrap svg:hover path {
  stroke: var(--main);
}
/*   two columns - with bubble   */
.bubble svg {
  display:block;
} 
.bubble svg .cls-1 {
  fill-rule: evenodd;
}
.bubble #kreis_2,
.bubble #kreis_3,
.bubble #kreis_4,
.bubble #kreis_5 {
  visibility:hidden;
}
.two-columns.bubble .col-4 {
		max-width:450px;
		margin:30px auto;
  }
.two-columns.imgbubble .bg-wrap {
  width: calc(100% - 2px);
  aspect-ratio: 1/1;
  margin-top: 1px;
}
.two-columns.imgbubble.bubble .col-4 svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.two-columns.imgbubble.bubble .caption {
	max-width:74%;
		margin-left:auto;
		margin-right:auto;
}
.two-columns.imgbubble.bubble .copyright + .caption {
	margin-top:30px;
}
.two-columns.imgbubble.bubble svg + .caption {
	margin:25px auto 0;
}
/*   two columns teaser - projects overview   */
.two-columns.overview .text-wrap {
	padding: 70px 70px 50px;
	max-width: none;
}
.two-columns.overview .img-wrap {
  height: 100%;
  background-size: cover;
  background-position:center;
}
.two-columns .link-wrap {
	text-align: right;
    padding-right: 70px;
	display: flex;
    align-items: center;
	justify-content: end;
}
.two-columns .link-wrap span:first-of-type {
	max-width:none;
	text-align:left;
}
.two-columns .link-wrap a {
	display: inline-block;
  	left: 0;
}
.two-columns.overview .copyright + .caption {
	margin-top:-5px;
}
.two-columns.overview.termine .container {
		display:flex;
		flex-wrap:wrap;
	margin-bottom:30px;
	}
.three-columns .link-to-catpage,
.single-termine .link-to-catpage {
		margin-top:20px;
		width:100%;
		text-align:center;
	}
.three-columns .link-to-catpage a span {
	cursor:pointer;
}
.three-columns.kaelbchen .text-wrap p.bg-green {
    display:inline-block;
  }
/*   Accordion    */
.accordion h3 {
		margin:0 40px 30px;
	}
.details__summary {
  font-family: 'Encode Sans', sans-serif;
  font-size: 1.47rem;
  line-height: 1.4;
  padding: 20px 20px 20px 40px;
  position: relative;
  outline: 0;
  list-style:none;
  cursor: pointer;
  border-top: 1px solid var(--beige);
  transition: all 0.4s ease-out; 
  transition: color 300ms ease-in-out;
}
[open] > .details__summary {
  border-top: 1px solid var(--beige);
  transition: all 0.4s ease-out;
}
.details:last-child {
  border-bottom: 1px solid var(--beige);
}
   .details__summary:after {
	   margin-top:-10px;
      content:''; 
      position: absolute; 
      right: 0;
      margin-right: 30px; 
      width:25px; 
      height: 25px; 
      display: block; 
      top: 30px;
      transition: transform 0.2s ease-out;
      background-repeat:no-repeat;
    }
.details__summary:after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='31' viewBox='0 0 31 31'%3E%3Cg id='Mehr' transform='translate(-1389 -1483)'%3E%3Cg id='Gruppe_292' data-name='Gruppe 292' transform='translate(91.766 -6.234)'%3E%3Cline id='Linie_48' data-name='Linie 48' y2='17.531' transform='translate(1312.734 1495.969)' fill='none' stroke='%23056CA7' stroke-width='1'/%3E%3Cline id='Linie_49' data-name='Linie 49' y2='17.531' transform='translate(1321.5 1504.734) rotate(90)' fill='none' stroke='%23056CA7' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
[open] .details__summary:after { 
		margin-top: -11px;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='31' viewBox='0 0 31 31'%3E%3Cg id='Mehr' transform='translate(-1389 -1483)'%3E%3Cg id='Gruppe_292' data-name='Gruppe 292' transform='translate(91.766 -6.234)'%3E%3Cline id='Linie_49' data-name='Linie 49' y2='17.531' transform='translate(1321.5 1504.734) rotate(90)' fill='none' stroke='%23000000' stroke-width='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
      transition: transform 0.2s ease-out;
    }
.details__summary::-webkit-details-marker {
  display: none;
}
.details {
  overflow: hidden;
  transition: all 300ms ease-in-out;
}
.details[open] {
	background-color: var(--lightbeige);
}
.details .details__content {
  display:flex;
  padding: 20px 20px 30px 40px;
  background-color: var(--lightbeige);
}
.details__content .col-4 {
	position:relative;
	margin-left:40px;
}
.details__content .bg-wrap  {
  background-position: 50% 50%;
  background-size: cover;
  width:100px;
  height:100px;
	margin-top: 1px;
}
.details__content svg {
	fill:var(--lightbeige);
	position: absolute;
	  top: 0;
	  left: 0;
	  width: 101px;
	  height: 101px;
	}
.details__summary::-webkit-details-marker {
  display: none;
}
/*  News Slider   */
.slider-wrap {
    margin:0;
    padding:50px 20px;
  }
.slider-wrap img {
  aspect-ratio: 1.5;
  object-fit: cover;
  margin-bottom: 30px;
}
.slider-wrap a.bg-animated {
		margin-bottom:0;
	}
.splide__arrow {
  background:none;
}
.splide__arrow svg {
  width: auto;
  height: 40px;
}
.splide__arrow--next {
  right: -50px;
}
.splide__arrow--prev {
  left: -50px;
}
/*  Teaser   */
.teaser .img-wrap {
  position: relative;
  padding-top: 75%;
  overflow: hidden;
  margin-bottom: 30px;
  background-size: cover;
}
.teaser .video-wrap {
	margin-bottom:30px;
}
.teaser .text-bubble {
  background-image: url('img/bubble-bordeau.svg');
  position: absolute;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  background-repeat: no-repeat;
  bottom: -48%;
  width: 75%;
  left: -20%;
}
.teaser .text-bubble .text-wrap {
  height: 35%;
  display: flex;
  align-items: flex-end;
  margin-left: 27%;
  margin-bottom: 42%;
  margin-right: 6%;
  width: 52%;
}
/*   Team   */
.team .text-wrap {
      margin-bottom:30px;
    }
.three-columns.team .text-wrap p {
	font-size:0.95rem;
	min-height:unset;
}
    .three-columns.team .text-wrap h3 {
      min-height: unset;
    }
   .team h2 {
  margin-bottom: 30px;
}
    .team .col-3 {
  position: relative;
      max-width:300px;
    }
  .team .bg-wrap {
    position:relative;
  background-position: 50% 50%;
  background-size: cover;
  margin-top: 1px;
    width: 100%;
    aspect-ratio: 1;
    margin-bottom: 30px;
}
  .team img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*  Copyright for images  */
.imageblock .copyright {
  position: absolute;
  bottom: 30%;
  left: 3px;
  color: white;
  text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
  transform: rotate(-90deg);
  transform-origin: top left;
  width: 28%;
  line-height: 1;
  z-index:1;
}
.imageblock.small-bubble .copyright {
	bottom: 22%;
	width: 43%;
}
.imageblock.content .caption {
	width:100%;
	max-width: 1200px;
  margin: 10px auto 0;
}
.imageblock.content .img-wrap {
	position:relative;
	width:100%;
	max-width:1200px;
}
.imageblock.content .img-wrap img {
	width:auto;
	max-width:100%;
	margin:0 auto;
}
.imageblock.content .copyright {
	position: unset;
	width: 100%;
  margin-left: calc(100% + 10px);
  text-shadow: none;
  color: var(--bodytext);
  padding-left: 10px;
}
/*   hashtags   */
.list-wrap {
  max-width: 1040px;
  margin: 0 auto;
}
.hashtags h3 {
  margin: 0 40px 30px;
}
.hashtags ul {
  list-style: none;
  display: flex;
  flex-wrap:wrap;
  padding: 20px 20px 20px 40px;
  border-top: 1px solid var(--beige);
  border-bottom: 1px solid var(--beige);
}
.hashtags li:not(:last-child) {
  margin-right: 30px;
}
.hashtags li a:before {
	content:"#";
}
/*   Logos    */
.logos ul {
  list-style: none;
	display:flex;
	gap:30px;
	align-items:center;
	justify-content: center;
}
.logos img {
  filter: grayscale(1);
}
.logos li.landscape img {
  width: 100%;
  height: auto;
  max-width: 200px;
}
.logos li.portrait img {
  height: 100%;
  width: auto;
  max-height: 100px;
}
/*   single Kälber    */
.single-kaelber .back-btns {
	margin-top:50px;
}
.single-kaelber a.green {
	color:var(--contrast);
	text-decoration:none;
}
.single-kaelber a.green:hover {
	color:var(--bodytext);
}
.single-kaelber a.green:first-child {
	margin-right:20px;
}
.single-kaelber a.green span {
	padding:5px 10px 8px;
}
/*   News    */
.post-template-default .link-to-catpage {
	text-align:center;
}
.news .date {
	margin:-10px 0 0px 0;
}
/*  Footer  */
footer, .footer-logo {
  position:relative;
	}
.top-curve {
  margin-bottom: -15px;
  fill: var(--lightbeige);
}
footer .inner-footer {
  background-color: var(--lightbeige);
}
footer .col-wrap {
  display: flex;
  flex-wrap:wrap;
  justify-content: flex-end;
  max-width:700px;
  margin:0 auto;
}
footer .col-4:first-child {
  flex-basis: 100%;
  min-height: 100px;
}
footer .col-4:nth-child(2) {
  flex-basis: 50%;
}
footer .col-4:nth-child(3) {
  flex-basis: 35%;
}
footer .col-4:last-child {
  flex-basis: 15%;
}
.footer-logo {
  width:100%;
  max-width:250px;
  min-height:100px;
  margin:0 auto;
}
.footer-logo a {
  position:absolute;
  display:block;
  width:100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
}
#footer-nav-1 li.current-page-ancestor a,
#footer-nav-2 li.current-menu-item a {
	color: var(--main);
}
footer li {
  list-style:none;
}
footer .icon-instagram {
  width: 62px;
  height: 62px;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .icon-facebook {
	width: 62px;
  	height: 62px;
	display: flex;
  justify-content: center;
  align-items: center;
  border: none;
}
/* back to Top - Button  */
a.scroll-up, a.scroll-up:visited {
    position: fixed;
    z-index: 2000;
    left: calc(50% - 30px);
    bottom: -20px;
    width:40px;
		display: none;
    outline: none;
    padding: 10px 5px 0px;
    transition: all 0.8s ease;
    background-color: rgba(0,0,0,0.3);
    height: 60px;
}
a.scroll-up:hover {
  background-color: rgba(0,0,0,1);
  bottom:0;
}
/*  DESKTOP  */
@media (min-width:600px) {
	.details__content .col-4 {
	flex-basis:calc(40% - 30px);
}
	.details__content .col-6 {
    flex-basis:calc(60% - 30px);
  }
  .slider-wrap h3 {
    min-height: 65px;
  }
}
@media (min-width:500px) {
	.home .imageblock:first-of-type .text-bubble {
		left:-5%;
	}
	.home .imageblock:first-of-type .text-bubble .text-wrap {
		margin-left:20%;
	}
}
@media (min-width: 768px) {
.post-type-archive-termine .bg-main p {
	font-size:0.8rem;
	line-height:1.5;
}
  header .container {
    height: 145px;
    display: flex;
    justify-content: space-between;
    align-items: center;
	transition: 0.5s ease all;
}
	header.shrinked .container {
		height:100px
	}
  section {
    margin:100px 0;
  }
  section.imageblock {
    margin-bottom:0px;
  }
	section.teaser + section.teaser {
		margin-top:-100px;
	}
	section.teaser.team + section.teaser.team {
		margin-top:100px;
	}
  section.blockquote.bg {
	margin:0;
	padding:100px 0 70px;
	}
  section.bg {
    margin:0;
    padding:100px 0;
  }
	.two-columns.bubble.bg-light {
		padding-top:100px;
	}
  main section:first-of-type,
  section.bg + .imageblock.fullwidth {
    margin-top:0;
  }
.single-kaelber	main .rank-math-breadcrumb {
    margin-top:100px;
  }
  .bottom-curved.bg {
    margin:0;
    padding:0;
  }
  .bottom-curved + .textblock {
    margin-top:50px;
  }
  .container {
    padding:0 60px;
  }
  .two-columns .container,
  .three-columns .container {
  display:flex;
  flex-wrap:wrap;
  max-width:1200px;
	  gap:40px;
}
	.two-columns.overview .container,
	.two-columns.teaser .container{
		gap:30px;
	}
	.post-type-archive-termine .two-columns .col-3 .text-wrap {
		padding: 50px 25px 40px 35px;
	}
	.post-type-archive-termine .two-columns .col-7 .text-wrap {
		padding: 50px 30px 40px 40px;
	}
	.two-columns.bubble .container {
	gap:60px;	
	}
  .three-columns .container {
    gap:20px;
  }
	.two-columns .col-3 {
    flex-basis:calc(30% - 15px);
  }
  .two-columns .col-4 {
    flex-basis:calc(40% - 20px);
  }
	.two-columns.bubble .col-4 {
    flex-basis:calc(40% - 30px);
  }
  .two-columns .col-5 {
    flex-basis:calc(50% - 20px);
  }
  .two-columns .col-6 {
    flex-basis:calc(60% - 30px);
  }
	.two-columns .col-7 {
    flex-basis:calc(70% - 15px);
  }
  .two-columns.items-centered .container {
    align-items:center;
  }
  .two-columns.bubble-right .container,
  .two-columns.img-right .container{
    flex-direction:row-reverse;
  }
	.two-columns.intro .container {
		padding:0 40px;
	}
	.two-columns.intro .col-4 {
    flex-basis:calc(40% - 60px);
  }
	.two-columns.intro .col-6 {
    flex-basis:calc(60% - 60px);
  }
  .three-columns .col-3 {
    flex-basis:calc(33.33% - 20px);
  }
  .three-columns .text-wrap p {
    min-height:180px;
  }
  .three-columns.kaelbchen .text-wrap p {
    min-height:auto;
  }
		.three-columns.team .container {
    gap: 60px 60px;
  }
		.three-columns.team .container {
      display:flex;
      flex-wrap:wrap;
       gap: 60px 60px;
    }
.three-columns.team .col-3 {
    flex-basis: calc(50% - 30px);
      max-width:unset;
  }
	.details__content .bg-wrap  {
  width: 215px;
  height: 215px;
}
	.details__content svg {
	  width: 217px;
	  height: 217px;
	}
  .slider-wrap h3 {
    min-height:77px;
  }
	.slider-wrap p:last-of-type,
	.slider-wrap a.bg-animated {
		margin-bottom:0;
	}
footer .icon-instagram img {
  width: 50px;
  height: 50px;
  max-width:50px;
}
footer .icon-facebook img {
  width: 62px;
  height: 62px;
  max-width:62px;
}
}
@media (min-width:950px) {
	  .three-columns.team .col-3 {
    flex-basis: calc(33.33% - 40px);
  }
}
@media (min-width:1024px) {
  .container {
    padding:0 85px;
  }
	.home .imageblock:first-of-type .text-bubble {
		left:5%;
	}
	.imageblock.small-bubble h1,
	.imageblock.small-bubble h2 {
		font-size: 2.1rem;
	}
    .team svg {
    width: 100%;
    height: 100%;
  }
	footer .col-wrap {
    max-width:none;
    flex-wrap: nowrap;
  }
  footer .col-4:first-child {
  flex-basis: 37%;
    flex-grow: 2;
}
	.footer-logo {
		margin:0;
	}
  footer .col-4:nth-child(2) {
  flex-basis: 35%;
}
  footer .col-4:nth-child(3) {
  flex-basis: 20%;
}
  footer .col-4:nth-child(4) {
  flex-basis: 8%;
}	
}
@media screen and (min-width:1280px) {
	.meta-nav {
	  position: fixed;
	  max-width: 1360px;
	  padding-right: 20px;
	  top: 0;
	  padding-top: 10px;
	  transition:0.5s ease all;
}
	.shrinked .meta-nav {
		top:-50px;
	}
	#meta-menu {
  text-align: right;
  display: flex;
  gap: 40px;
  justify-content: end;
  margin-bottom: 0;
}
	#meta-nav-social {
		display:none;
	}
	.header-logo {
			flex-basis:20%;
	}
	.main-nav > li:hover a,
	.main-nav > li:focus a {
	  color:var(--bodytext);
	}
	#main-menu.main-nav .sub-menu-wrap-1 {
  		min-height: 500px;
	}
	#main-menu > li:hover a.icon-facebook,
	#main-menu > li:hover a.icon-instagram {
		border:none;
	}
	#main-menu-mobile {
		display:none;
	}
	.imageblock.big-bubble .text-bubble .text-wrap {
		margin-top:25%;
	}
  .two-columns .container, .three-columns .container {
		padding:0;
	}
  .text-wrap {
    max-width:875px;
  }
	.centered .text-wrap {
		margin:0 auto;
	}
  .intro .text-wrap, .accordion .acc-wrap, .logos .text-wrap {
    max-width:1040px;
    margin:0 auto;
  }
	.textblock .text-wrap {
		max-width:690px;
	}
	.post-type-archive-termine .two-columns .col-3 .text-wrap {
		padding: 50px 30px 40px 40px;
	}
	.post-type-archive-termine .two-columns .col-7 .text-wrap {
		padding: 70px 70px 50px;
	}
}
@media (min-width:1440px) {
	.imageblock.small-bubble h1,
	.imageblock.small-bubble h2 {
		font-size: 3vw;
	}
	.imageblock.small-bubble .subline {
		font-size:1.6vw;
	}
	.imageblock.small-bubble .text-bubble {
		left:10%;
	}
	.imageblock.small-bubble .text-wrap {
		margin-bottom:0;
	}
	.imageblock.small-bubble .link-wrap {
		display:flex;
		align-items: center;
	}
	.imageblock.small-bubble .link-wrap .subline {
		min-height:50px;
		display: inline-flex;
        align-items: center;
	}
	.imageblock.small-bubble .link-wrap .svg-wrap {
		position:relative;
	}
}
@media (min-width:1520px) {
	header .container {
		padding:0;
	}
	.meta-nav {
		max-width:1440px;
	}
}
@media (max-width:1559px) { 
.sub-menu-wrap-1 {
	padding-left:60px;
	padding-right:60px;
	padding-bottom:60px;
		}
}
@media (max-width:1279px) {
	.meta-nav {
		display:none;
		bottom: 0;
		position: fixed;
		background-color: #fff;
		left: 0;
		width: 100%;
		padding: 20px 40px;
		justify-content: space-between;
	}
	.meta-nav.open {
		display:flex;
	}
	#meta-menu {
		margin-bottom:0;
	}
	#meta-nav-social { margin-bottom:0; }
	#meta-nav-social li { margin: 15px 0; }
	#meta-nav-social .icon-facebook {
  margin: 0 0 5px;
}
	#main-menu, 
	#main-menu-mobile .sub-menu-box,
	#main-menu-mobile .socials,
	#main-menu-mobile svg.bottom-curve {
		display:none;
	}
	.menu-btn {
    display: flex;
  }
	#main-menu-mobile li.current-menu-item > a {
		color:var(--main);
	}
	#main-menu-mobile .sub-menu-wrap-1,
	#main-menu-mobile .sub-menu-wrap-2 {
		position:unset;
		visibility:visible;
		opacity:1;
		padding:0;
		margin-top:0;
	}
	#main-menu-mobile .sub-menu-wrap-1 {
		display:flex;
		gap:30px;
		flex-wrap: nowrap;
	}
 	#main-menu-mobile .sub-menu {
	position: static;
    opacity: 1;
    visibility: visible;
    width: auto;
    max-height: 0;
	margin-bottom: 10px;
    margin-top: 15px;
    transform: scaleX(0);
    transform-origin: left;
    overflow: hidden;
    transition: all 0.5s ease;
	}
	#main-menu-mobile .sub-menu-wrap-1 > .sub-menu {
		flex-basis:60%;
	}
	#main-menu-mobile .sub-menu-wrap-1 > .sub-menu-box {
		flex-basis:40%;
	}
	#main-menu-mobile.main-nav > li {
		max-width:none;
	}
	#main-menu-mobile .sub-menu .sub-menu {
		margin-top:0;
	}
	#main-menu-mobile .sub-menu .sub-menu li:first-child {
		margin-top:10px;
	}
	#main-menu-mobile .sub-menu .sub-menu .sub-menu li:first-child {
		margin-top:0px;
	}
#main-menu-mobile .menu-item-has-children > .open + .sub-menu-wrap-1 > .sub-menu,
#main-menu-mobile .sub-menu-wrap-1 .menu-item-has-children > .open +  .sub-menu-wrap-2 .sub-menu {
    max-height: 100%;
    transform: scaleZ(1);
  }
	#main-menu-mobile .menu-item-has-children > .open + .sub-menu-wrap-1 > .sub-menu-box {
		display:block;
		margin-top: 30px;
	}
	#main-menu-mobile .sub-menu li {
	  position:relative;
	}
	#main-menu-mobile.main-nav .sub-menu li a {
		display: inline-block;
		  border-bottom: 1px solid var(--beige);
		  padding-bottom: 10px;
		  width: 100%;
	}
	#main-menu-mobile.main-nav .sub-menu .sub-menu li a {
		border-bottom:none;
	}
	#main-menu-mobile.main-nav .sub-menu li a {
		font-weight:700;
	} 
	#main-menu-mobile.main-nav .sub-menu .sub-menu li a {
		font-weight:normal;
	}
	#main-menu-mobile .sub-menu-box .img-wrap {
		margin-top:0;
	}
	header .container {
		background-color:#fff;
	}
	.container, .rank-math-breadcrumb {
		padding:0 40px;
	}
  .imageblock.fullwidth.small-bubble .img-wrap {
    padding-top: 0;
    height: 700px;
  }
  .imageblock .text-bubble {
    bottom: -50px;
    width: 500px;
  }
	.imageblock.big-bubble .text-bubble {
    	bottom: -38%;
    left: -19%;
    width: 66%;
  }
	.imageblock.big-bubble .text-bubble .text-wrap {
		margin-left:32%;
			margin-top: 0%;
	}
	.imageblock.small-bubble .text-bubble .text-wrap {
		margin-bottom:30px;
	}
	.imageblock.big-bubble .copyright {
	  bottom: 150px;
	  width: 530px;
	}
	.imageblock.small-bubble .copyright {
	  bottom: 150px;
	  width: 530px;
	}
}
@media (max-width:1023px) {
	.imageblock.big-bubble .img-wrap {
		min-height:430px
	}
	.imageblock.big-bubble .text-bubble {
		width: 100%;
  		max-width: 650px;
	}
	.imageblock.big-bubble .text-bubble .text-wrap {
	  margin-left: 38%;
  	  margin-bottom: 35%;
	  margin-top: auto;
	  max-width: none;
	  min-height: 0;
	}
.imageblock.small-bubble h1, .imageblock.small-bubble h2 {
    font-size: 2.1rem;
  }
	.team .text-wrap p {
		font-size:16px;
	}
}
@media (max-width:949px) {
	.two-columns.overview.termine .container {
		margin-bottom:50px;
	}
	.post-type-archive-termine .two-columns .col-3,
	.post-type-archive-termine .two-columns .col-7 {
		flex-basis:100%;
	}
}
@media(max-width:767px) {
	html, body {
		font-size:15px;
	}
	.team .text-wrap p {
		font-size:0.85rem;
	}
	.header-logo, .shrinked .header-logo {
	  height: 90%;
	  padding-top: 8px;
	}
	#main-menu-mobile.menu-items {
		top:80px;
	}
	#main-menu-mobile .sub-menu-wrap-1 {
		display:block;
	}
	#main-menu-mobile .sub-menu-wrap-1 > .sub-menu-box {
		max-width:400px;
	}
	#main-menu-mobile .sub-menu-box .img-wrap {
		flex-basis: 50%;
		padding-top:35%;
	}
	#main-menu-mobile .sub-menu-box .text-bubble {
		display:none;
	}
	#main-menu-mobile .sub-menu-box p {
	  flex-basis: 50%;
	}
.menu-btn {
  top: 25px;
  right: 20px;
}
	.navbar .menu-btn__lines, .navbar .menu-btn__lines::before, .navbar .menu-btn__lines::after {
		width:30px;
	}
	#main-menu-mobile .menu-item-has-children > .open + .sub-menu-wrap-1 > .sub-menu-box a {
		display:flex;
		gap: 20px;
		align-items: start;
	}
	.imageblock.big-bubble .text-bubble {
		width: 100%;
    	bottom: -30%;
	}
	.imageblock.big-bubble .text-bubble .text-wrap {
		margin-right: 30px;
    	margin-left: 28%;
	}
	.imageblock.small-bubble .text-bubble {
		width:500px;
		bottom: -150px;
	}
	.imageblock.small-bubble .text-bubble .text-wrap {
		margin-bottom:90px;
		max-width:320px;
	}
.two-columns.overview .img-wrap {
  aspect-ratio: 1.5;
  background-position: center;
}
	.two-columns.overview .col-3 {
		margin: 30px 0 30px;
	}
	.two-columns .link-wrap .svg-wrap {
		width:60px;
	}
	.two-columns .link-wrap:hover .svg-wrap,
	.two-columns .link-wrap svg {
		width:80px;
	}
  .slider-wrap {
    padding-bottom:70px
  }
  .splide {
  margin-bottom: 0;
}  
  .splide__arrow {
    top: 100%;
  	transform: none;
  }
	.slider-wrap p:last-of-type {
		margin-bottom:40px;
	}
	.splide__arrow svg {
		height:28px;
	}
  .splide__arrow--prev {
  left: calc(50% - 100px);
}
  .splide__arrow--next {
  right: calc(50% - 100px);
}
.logos ul {
  flex-wrap: wrap;	
  justify-content: center;
}
.logos ul li {
	flex-basis: 100%;
	}
	.footer-logo {
		max-width:180px;
	}
footer .icon-instagram img {
  height: 30px;
  max-width:30px;
}
footer .icon-facebook img {
  max-width: 38px;
  height: 38px;
}
	footer .col-wrap {
		max-width:450px;
	}
		footer .col-4:nth-child(2) {
  flex-basis: 70%;
}
	footer .col-4:nth-child(3) {
  flex-basis: 30%;
}
	footer .col-4:last-child {
		flex-basis:100%;
	}
	#footer-nav-social {
		display: flex;
  		justify-content: center;
	}
	.icon-facebook {
		display:inline-block;
	}
	.icon-instagram {
  width: 36px;
  height: 36px;
  display: flex;
  margin-right: 10px;
}
}
@media (max-width:599px) {
	.accordion .container {
  padding:0;
}
	.details__summary {
		padding: 20px 60px 20px 40px;
		hyphens:auto;
	}
	.details__content {
	flex-wrap:wrap;
	flex-direction:column-reverse;
		padding: 0 20px 0 40px;
}
	.details__content .col-4,
	.details__content .col-6 {
		flex-basis:100%
	}
	.details__content .col-4 {
		margin-left:0px;
	}
	.details__content .col-4 .bg-wrap {
		margin-bottom:20px;
	}
	.hashtags h3 {
		margin-left:0;
	}
	.hashtags ul {
		padding-left:0;
		padding-right:0;
	}
}
@media (max-width:499px) {
	header .container {
		padding: 10px 20px;
	}
	#main-menu-mobile.menu-items {
  padding: 60px 40px 326px;
	}
	.meta-nav {padding:10px 40px 0 ; }
  #meta-nav-social li {
    margin: 10px 0px;
  }
	.wpsearchform {
		margin-top:5px;
	}
	.search-field {
		max-width:150px;
	}
 .imageblock.fullwidth .img-wrap {
    height: calc(100vh - 85px);
    max-height:700px;
  }
  .imageblock .text-bubble,
  .imageblock.big-bubble .text-bubble {
    bottom: -50px;
    padding-left: 50px;
    width: 500px;
    left: -75px;
  }
	.imageblock.big-bubble .text-bubble .text-wrap {
		max-width: 70%; 
		margin-left: 7%;
    	margin-right: 7%;
	}
.two-columns.overview .text-wrap {
  padding: 40px;
}
.details__content .col-4 {
	flex-wrap:wrap;
}
  footer .col-wrap {
    justify-content: center;
}
.footer-logo {
    max-width: 150px;
  }
  footer a {
    font-size:0.83rem;
    line-height: 1.4;
    display: inline-block;
}
}
@media (max-width:474px) {
	.imageblock.small-bubble .text-bubble .text-wrap {
		margin-right:15%;
		margin-bottom: 110px;
	}
	.imageblock.small-bubble h1,
	.imageblock.small-bubble h2 {
		font-size: 2rem;
	}
}

/* ==========================================================================
   NAV BACKDROP (Mega-Menü Overlay) – hinzugefügt 2026-06-23
   Abdunkelung des Seiteninhalts bei geöffnetem Menü + Scroll schließt Menü (JS)
   ========================================================================== */

/* Overlay-Element (Markup in footer.php) */
.nav-backdrop {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.45);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 9990;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* Overlay sichtbar, wenn Navigation geöffnet ist (Klasse per JS auf body) */
body.nav-open .nav-backdrop {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Mobile: Hintergrund-Scroll sperren, solange Burger-Menü offen ist */
@media screen and (max-width: 1279px) {
  body.nav-open {
    overflow: hidden;
  }
}

/* ==========================================================================
   UPDATE 2026-07-21: Fix für Desync zwischen Untermenü und Backdrop
   ==========================================================================
   Problem: Das Untermenü öffnete sich rein über CSS ":hover" auf dem
   Hauptmenüpunkt – unabhängig vom JS-Zustand "nav-open". Beim Scrollen
   wurde "nav-open" per JS entfernt (Hintergrund wird hell), aber wenn die
   Maus weiterhin auf demselben Menüpunkt stand (kein neues "mouseenter"-
   Event), griff nach kurzer Zeit wieder die reine CSS-":hover"-Regel und
   das Untermenü klappte erneut auf – ohne dass das Backdrop erneut
   erschien.

   Lösung: Die Sichtbarkeit des Untermenüs hängt jetzt ausschließlich von
   der Klasse ".is-open" ab (siehe geänderte Regel weiter oben in dieser
   Datei, Suche nach "GEÄNDERT 2026-07-21"). Diese Klasse wird nur noch per
   JavaScript gesetzt/entfernt (init.js: openDesktopNav / scheduleCloseDesktopNav),
   also exakt zusammen mit "nav-open". Damit gibt es nur noch eine einzige
   Quelle für den Menü-Zustand – Untermenü und Backdrop laufen nicht mehr
   auseinander. Der bisherige Notlösungs-Block "nav-force-close", der die
   CSS-":hover"-Regel per !important überschrieben hat, ist dadurch
   überflüssig geworden und wurde entfernt.
   ========================================================================== */

/* END NAV BACKDROP */

/* ==========================================================================
   DESKTOP NAV HOVER-ZONEN – hinzugefügt 2026-08-05
   Präzise Hover-Bereiche, Mausweg-Brücke, Strich an .is-open
   ========================================================================== */
@media screen and (min-width: 1280px) {
  .nav-desktop-zone {
    flex-basis: 80%;
    width: 100%;
  }

  .nav-interaction-zone {
    width: 100%;
  }

  /* Kein position:relative auf #main-menu – sonst wird sub-menu-wrap-1 nur so breit wie die Nav-Leiste */
  #main-menu > li {
    position: static;
    pointer-events: none;
  }

  /* Nav-Links über dem Mega-Menü, damit Wechsel zwischen Punkten möglich ist */
  #main-menu > li > a {
    position: relative;
    z-index: 10003;
    cursor: pointer;
  }

  #main-menu > li .sub-menu-wrap-1 {
    z-index: 10001;
  }

  #main-menu > li > a,
  #main-menu > li.is-open .sub-menu-wrap-1,
  #main-menu > li.is-open .sub-menu-wrap-2,
  #main-menu > li.is-open .sub-menu-wrap-3 {
    pointer-events: auto;
  }

  #main-menu > li:not(.is-open) .sub-menu-wrap-1,
  #main-menu > li:not(.is-open) .sub-menu-wrap-2,
  #main-menu > li:not(.is-open) .sub-menu-wrap-3 {
    pointer-events: none;
  }

  /* Brücke: volle Header-Breite über #site-header positionieren */
  .nav-hover-bridge {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 60px;
    bottom: 0;
    transform: translateY(100%);
    pointer-events: auto;
    z-index: 9995;
  }

  body.nav-open .nav-hover-bridge {
    display: block;
  }

  #main-menu > li.is-open > a::before {
    transform: scaleX(1);
  }
}
/* END DESKTOP NAV HOVER-ZONEN */