/* minified reset */
*,*::before,*::after{box-sizing:border-box}html,body,#root{height:100%}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block}body{line-height:1.5;font-family:system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;background:#fff;color:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ol,ul{list-style:none}a{background:transparent;text-decoration:none;color:inherit}img,svg,video,canvas,iframe{max-width:100%;height:auto;display:block}table{border-collapse:collapse;border-spacing:0}button,input,select,textarea{font:inherit;background:transparent;border:0;color:inherit;padding:0;margin:0}button{cursor:pointer}:focus{outline:2px solid Highlight;outline-offset:2px}html{font-family:inherit}abbr[title]{text-decoration:underline dotted}progress{vertical-align:baseline}textarea{resize:vertical}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{appearance:none;margin:0}input[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}details{display:block}summary{cursor:pointer}*{box-sizing:inherit}@media (prefers-reduced-motion:reduce){*{animation-duration:0.001ms!important;animation-iteration-count:1!important;transition-duration:0.001ms!important;scroll-behavior:auto!important}}

/* poppins-100 - 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: 'Poppins';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/poppins-v24-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-100italic - 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: 'Poppins';
  font-style: italic;
  font-weight: 100;
  src: url('../fonts/poppins-v24-latin-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-300 - 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: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/poppins-v24-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-300italic - 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: 'Poppins';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/poppins-v24-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-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: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/poppins-v24-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-italic - 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: 'Poppins';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/poppins-v24-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-600 - 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: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/poppins-v24-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-600italic - 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: 'Poppins';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/poppins-v24-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-800 - 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: 'Poppins';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/poppins-v24-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-800italic - 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: 'Poppins';
  font-style: italic;
  font-weight: 800;
  src: url('../fonts/poppins-v24-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


* {
	outline: none;
}

*:focus {
	outline: none
}

main .row,
footer .row {
	width: calc(100% - calc( 2* var(--page-gap)));
	margin: 0 auto
}


html {
	font-size: 10px;
	background: #eee
}
body {
	background: #eee
}

:root {
	margin: 0;
	padding: 0;
	
	--page-gap: 50px;
	--page-gap-top: 20px;
	--page-gap-content-top: 250px;
	--header-meta-fontsize: 1.4rem;
	--main-fontsize: 1.65rem;

	--main-ci-color-red: #8a2432;
	--main-ci-color-grey: #a6a7aa
}

* {
	margin: 0;
	padding: 0;
	font-family: 'Poppins';
	font-style: normal;
	font-weight: 400;
}

@media screen and (min-width: 1200px) {
	:root {
		--page-gap: 100px;
	}
}

@media screen and (min-width: 1300px) {
	:root {
		--page-gap: 150px;
	}
}

@media screen and (min-width: 1500px) {
	:root {
		--page-gap: 250px;
	}
}

@media screen and (min-width: 1700px) {
	:root {
		--page-gap: 350px;
	}
}
@media screen and (min-width: 2000px) {
	:root {
		--page-gap: 450px;
	}
}


.fade-in {
opacity: 0;
transform: translateY(40px);
transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in.visible {
opacity: 1;
transform: translateY(0);
}



/* Logo */

	.fill-grey {
		fill: var(--main-ci-color-grey)
	}
	.fill-red {
		fill: var(--main-ci-color-red)
	}
	

/* Header */
	
	/* MENU */
	
	#header-gradient {
		position: absolute;
		top: 0;
		pointer-events: none;
		left: 0;
		width: 100%;
		height: 300px;
		background: #EEEEEE;
		background: -webkit-linear-gradient(180deg, rgba(238, 238, 238, .97) 50%, rgba(255, 255, 255, 0) 100%);
		background: -moz-linear-gradient(180deg, rgba(238, 238, 238,  .97) 50%, rgba(255, 255, 255, 0) 100%);
		background: linear-gradient(180deg, rgba(238, 238, 238,  .97) 50%, rgba(255, 255, 255, 0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#EEEEEE", endColorstr="#FFFFFF", GradientType=0);
	}
	
	header ul li a:before,
	.modul-stage-menu a {
		-webkit-border-radius: 5px 5px 5px 5px;
		border-radius: 5px 5px 5px 5px;
	}

	header {
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 90000
	}
	
	#header-group {
		padding: var(--page-gap-top) var(--page-gap);
	}
	#header-group #logo {
		width: 200px;
		position: relative;
		z-index: 10
	}
	#header-group #logo > svg {
		width: 100%;
		height: auto
	}
	
	#header-group #logo svg:hover path,
	#header-group #logo svg:hover polygon,
	#header-group #logo svg:hover rect
	{
		fill: #222
	}
	
	#header-meta {
		position: absolute;
		right: var(--page-gap);
		top: var(--page-gap-top);
		z-index: 100
	}
	
		#header-meta li {
			display: inline-block;
			margin: 0 0 0 20px;
			font-size: var(--header-meta-fontsize);
		}
		
		#header-meta li:last-child
		{
			margin: 0 0 0 40px
		}
		
		#header-meta li:last-child a {
			position: relative;
			color: #fff;
		}
		
		#header-meta li a {
			font-weight: 600
		}
		
		#header-meta li a:hover {
			color: var(--main-ci-color-red)
		}
		
		#header-meta li a span {
			position: relative;
			z-index: 10;
		}
		
		#header-meta li:last-child a span {
			font-weight: 800
		}
		
		#header-meta li:last-child a::before {
			background: var(--main-ci-color-red);
			border: 2px solid var(--main-ci-color-red);
			content: '';
			left: -20px;
			top: -10px;
			width: calc(100% + 40px);
			height: calc(100% + 20px);
			position: absolute
		}
		
		#header-meta li:last-child a:hover::before {
			background: #fff;
		}
		
		#main-menu-container {
			position: absolute; 
			right: var(--page-gap);
			text-align: right;
			bottom: calc(var(--page-gap-top) - 4px);
		}
		
		#main-menu-container ul,
		#main-menu-container li {
			margin: 0;
			padding: 0
		}
		
		#main-menu-container li {
			display: inline-block;
			font-size: 1.6rem;
			margin: 0 0 0 40px;
			line-height: 1em
		}
		
		#main-menu-container li a {
			font-weight: 600;
			color: #555;
			position: relative
		}
		#main-menu-container li a:hover,
		#main-menu-container li.current-menu-item > a,
		.single-fachbereiche #main-menu-container li#menu-item-59 a,
		.single-team #main-menu-container li#menu-item-61 a
		{
			color: var(--main-ci-color-red);
		}
		
		#main-menu-container ul#primary-menu > li > a::before {
			background: #fff;
			content:'';
			-webkit-box-shadow: -10px 10px 50px 0 rgba(0,0,0,0);
			box-shadow: -10px 10px 50px 0 rgba(0,0,0,0);
			position: absolute;
			left: -15px;
			width: calc(100% + 30px);
			height: calc(100% + 20px);
			top: -10px;
			width: 0;
			-webkit-transition: all 250ms ease-in-out;
			-moz-transition: all 250ms ease-in-out;
			-ms-transition: all 250ms ease-in-out;
			-o-transition: all 250ms ease-in-out;
			transition: all 250ms ease-in-out;
			opacity: 0
		}
		
		#main-menu-container li a span {
			position: relative;
			z-index: 10;
			font-weight: 600
		}
		
		#main-menu-container ul#primary-menu li.submenu-hover > a::before,
		.home #main-menu-container ul#primary-menu li:first-child a::before,
		#main-menu-container ul#primary-menu > li a:hover::before,
		#main-menu-container li.current-menu-item a::before,
		.single-fachbereiche #main-menu-container li#menu-item-59 a:before,
		.single-team #main-menu-container li#menu-item-61 a:before {
			opacity: 1;
			-webkit-box-shadow: -10px 10px 50px 0 rgba(0,0,0,0.3);
			box-shadow: -10px 10px 50px 0 rgba(0,0,0,0.3);
			width: calc(100% + 30px);
		}
	
	
	
	
	
	
	/* WING */
		#menu-wing {
			position: fixed;
			right: 0;
			top: calc(50% - 77px);
			z-index: 99999
		}
		
		#menu-wing li {
			width: 50px;
			height: 50px;
			background: #ccc;
			margin: 0 0 2px 0;
			position: relative	
		}
		#menu-wing li a { 
			display: block;
			-webkit-transition: all 250ms ease-in-out;
			-moz-transition: all 250ms ease-in-out;
			-ms-transition: all 250ms ease-in-out;
			-o-transition: all 250ms ease-in-out;
			transition: all 250ms ease-in-out;
			width: 100%;
			height: 100%;
			background: #9E9E9E;
			background-image: url("../img/icons/mails.svg");
			background-repeat: no-repeat;
			background-size: 70%;
			background-position: center center;
		}
		#menu-wing li:nth-child(2) a {
			background: #636569;
			background-image: url("../img/icons/phonecall.svg");
			background-repeat: no-repeat;
			background-size: 70%;
			background-position: center center;
		}
		#menu-wing li:last-child a {
			background: var(--main-ci-color-red);
			background-image: url("../img/icons/download.svg");
			background-repeat: no-repeat;
			background-size: 70%;
			background-position: center center;
		}
		
		#menu-wing li a i {
			display: block;
			width: 100%;
			height: 100%;
		}
		
		#menu-wing li a:hover {
			background-color: #111;
			width: 60px;
			margin-left: -10px
		}
	
	/* MAIN */
		.home main {
			padding: 200px 0 0 0
		}
	
	
	/* Modul: Stage */
	
		.modul-stage {
			position: relative;
			padding: 100px 0 100px
		}
		.modul-stage h1 {
			font-size: 4.8rem;
			line-height: 1em;
			font-weight: 800;
			text-align: center;
			color: var(--main-ci-color-red);
			padding: 0 0 30px 0
		}
		
		.modul-stage-content {
			width: 80%;
			margin: 0 auto
		}
		
		.modul-stage-content p {
			font-size: var(--main-fontsize);
			line-height: 1.45em;
			margin: 0;
			color: #333;
			text-align: center
		}
		
		.modul-stage-menu li {
			display: inline-block;
			margin: 0 20px;
			
		}
		.modul-stage-menu {
			text-align: center;
			padding: 30px 0 0 0
		}
		
		.modul-stage-menu li a {
			background: #636569;
			color: #fff;
			display: inline-block;
			padding: 10px 20px;
			font-size: var(--main-fontsize);
			font-weight: 600
		}
		
		.modul-stage-menu li:last-child a {
			background: var(--main-ci-color-red)
		}
	
	/* Modul: Pickup User */
		.modul-pickupuser {
			background: #fff;
			padding: 80px 0
		}
		
		.modul-pickupuser--main-group {
		    display: grid;
		    grid-template-columns: 40% 60%; /* linke Spalte 30%, rechte 70% */
		    align-items: stretch;           /* sorgt dafür, dass beide Spalten die gleiche Höhe haben */
		    gap: 0;                      /* optional: Abstand zwischen den Spalten */
		}
		
		/* Linke Spalte */
		  .module-pickup-left-column {
		    box-sizing: border-box;
		  }
		  
		  .module-pickup-left-column {
			  position: relative
		  }
		  
		  .module-pickup-terms-group {
			  position: relative;
			  z-index: 10;
			  padding: 60px
		  }
		  
		  #module-pickup-terms {
			  padding: 0 50px 0 0
		  }
		  
		  .module-pickup-left-column-background {
			  position: absolute;
			  left: 0;
			  width: calc(100% + 200px);
			  height: 100%;
			  -webkit-box-shadow: -30px 30px 100px 0 rgba(0,0,0,0.3);
			  box-shadow: -30px 30px 100px 0 rgba(0,0,0,0.3);
			  background: #fff
		  }
		  
		  .module-pickup-text-container {
			  position: relative;
			  z-index: 100;
			  -moz-transform: translateY(-50px);
			  -webkit-transform: translateY(-50px);
			  -o-transform: translateY(-50px);
			  -ms-transform: translateY(-50px);
			  transform: translateY(-50px);
		  }
		  
		  .module-pickup-image-container {
			  width: calc(100% + calc( 1 * var(--page-gap)));
			  /* width: 100%; */
			  padding: 50px 0 0 0;
			  position: relative;
			  z-index: 100;
			  margin: 0 0 0 calc(-1 * var(--page-gap));
			  margin: 0
		  }
		  .module-pickup-image-container img {
			  width: 100%;
			  height: auto
		  }
		
		  .module-pickup-left-column ul {
		    list-style: none;
		    padding: 0;
		  }
		  
		  #module-pickup-terms li {
			  position: relative;
			  
		  }
		  
		  #module-pickup-terms li:before {
			  content: '';
			  position: absolute;
			  left: -60px;
			  top: 50%;
			  -webkit-transition: all 250ms ease-in-out;
			  -moz-transition: all 250ms ease-in-out;
			  -ms-transition: all 250ms ease-in-out;
			  -o-transition: all 250ms ease-in-out;
			  transition: all 250ms ease-in-out;
			  margin: -6px 0 0 0;
			  width: 0;
			  height: 12px;
			  background: var(--main-ci-color-red);
		  }
		  
		  #module-pickup-terms li.aktiv:before {
			  width: 40px;
		  }
		  #module-pickup-terms li:hover::before {
			    width: 40px;
		    }
		  
		  .module-pickup-left-column li {
		    margin-bottom: 5px;
		    cursor: pointer;
		    border-radius: 5px;
		    color: #333;
		    font-size: var(--main-fontsize);
		  }
		
		  .module-pickup-left-column li:hover {
		  }
		
		  .module-pickup-left-column li.aktiv {
		    font-weight: bold;
		  }
		  
		  .module-pickup-text-main,
		  .module-pickup-text-main h2,
		  .module-pickup-text-main p {
			  color: #fff;
		  }
		
		  /* Rechte Spalte */
		  .module-pickup-right-column {
		    box-sizing: border-box;
		  }
		  
		  .module-pickup-right-column * {
		  }
		  .module-pickup-right-column h2 {
			  font-weight: 600;
			  font-size: 2.2rem;
			  margin: 0 0 20px 0
		  }
		
		  .module-pickup-right-column img {
		    max-width: 100%;
		    height: auto;
		    display: block;
		    margin-bottom: 20px;
		  }
		  
		  .module-pickup-text--actions a {
			  font-size: var(--main-fontsize);
			  background: #fff;
			  display: inline-block;
			  margin: 20px 0 0 0;
			  color: var(--main-ci-color-red);
			  padding: 10px 20px;
			  font-weight: 600
		  }
		
		.module-pickup-text {
			display: none;
			padding: 25px 25px 40px 25px;
			border-radius: 5px;
			background-color: rgba(138, 36, 50, 0.90);
			backdrop-filter: blur(5px);
			min-height: 150px;
		}
		  
		  .module-pickup-text p {
			  font-size: var(--main-fontsize);
		  }
		
		  .module-pickup-text.aktiv {
		    	display: block; /* Nur aktive Texte anzeigen */
		  }
		  
		  .modul-pickupuser--headline {
			  padding: 0 0 70px;
			  text-align: center;
			  position: relative;
			  z-index: 10
		  }
		  
		  
		  
		  #page-main-content .entry-content .modul-pickupuser--headline h2,
		  #page-main-content .entry-content .modul-pickupuser--headline p {
			    font-size: 4rem;
			    font-weight: 600;
			    color: var(--main-ci-color-red);
			    margin: 0;
			    padding: 0;
			    line-height: 1.1em;
		    }
		 #page-main-content .entry-content .modul-pickupuser--headline p  {
			    font-weight: 400;
			    color: var(--main-ci-color-grey);
		    }
		
		
		
		.page-template-default {
			padding: 250px 0 0 0
		}
		
		.bkra-main-headline {
			padding: 0 0 20px 0
		}
		.bkra-main-headline h1,
		#page-main-content h1.wp-block-heading {
			font-size: 4rem;
			color: var(--main-ci-color-red);
			line-height: 1.3em
		}
		
		#page-main-content .entry-content h3 {
			font-size: 2.6rem;
			font-weight: 600;
			line-height: 1.3em;
			margin: 20px 0 10px 0
		}
		
		#page-main-content .entry-content h4 {
			font-size: 2.2rem;
			font-weight: 500;
			line-height: 1.3em;
			margin: 20px 0 10px 0
		}
		
		#page-main-content .entry-content p,
		#page-main-content .entry-content ul,
		#page-main-content .entry-content ol,
		#page-main-content > .row > .wp-block-paragraph {
			font-size: var(--main-fontsize);
			line-height: 1.35em;
			margin: 0 0 10px 0;
			
		}
		
		#page-main-content .entry-content .wp-block-group {
			color: #444
		}
		
		#page-main-content .wpforms-container {
			margin: 0;
			padding: 0
		}
		.wpforms-container 
		.wpforms-field-container
		.wpforms-field:first-child {
			padding-top: 0
		}
		
		#page-main-content :where(.wp-block-columns.is-layout-flex) {
			gap: 40px;
		}
		
		#page-main-content {
			--wpforms-button-background-color: var(--main-ci-color-red);
		}
		
		
	/* TEAM */
	.team-grid {
	    display: grid;
	    grid-template-columns: repeat(3, 1fr);
	    gap: 2rem;
	}
	
	@media screen and (min-width: 1200px) {
	.team-grid {
	    grid-template-columns: repeat(4, 1fr);
	    gap: 3rem;
	}
	}
	
	@media screen and (max-width: 900px) {
		.team-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 3rem;
		}
		
		.bkra-main-headline h1,
		#page-main-content h1.wp-block-heading {
			font-size: 3rem;
			margin: 0 0 20px 0
		}
	}
	
	@media screen and (max-width: 600px) {
		.bkra-main-headline h1,
		#page-main-content h1.wp-block-heading {
			font-size: 2.4rem;
			margin: 0 0 10px 0;
			line-height: 1.2em
		}
	}
	
	.team-item {
	    text-decoration: none;
	    color: inherit;
	}
	
	.team-card {
	    display: flex;
	    flex-direction: column;
	    background: #fff;
	    border-radius: 12px;
	    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
	    overflow: hidden;
	    transition: transform 0.3s ease, box-shadow 0.3s ease;
	    height: 100%;
	}
	
	.team-card:hover {
	    transform: translateY(-5px);
	    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
	}
	
	.team-image-wrapper {
	    width: 100%;
	    padding-top: 100%; /* quadratisch */
	    position: relative;
	    overflow: hidden;
	}
	
	.team-image-wrapper img.team-image {
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    object-fit: cover; /* passt Bild perfekt ins Quadrat */
	}
	
	.team-content {
	    padding: 2rem;
	    text-align: left;
	}
	
	.team-name {
	    font-size: 1.2rem;
	    font-weight: 700;
	    margin-bottom: 0.25rem;
	}
	
	.team-position {
	    font-size: var(--main-fontsize);
	    color: #666;
	}
	
	.team-content h2 {
		font-size: 2rem;
		color: var(--main-ci-color-red);
	}
	
	/* Mobile */
	@media screen and (max-width: 768px) {
	    .team-grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	    }
	}
	
	.team-archive-container {
		padding: var(--page-gap-content-top) 0 0 0;
	}
	
	
	
	/* FAQ Teaser */
		.faq-section {
		    text-align: left;
		}
		
		.home .faq-section {
		    background: var(--main-ci-color-red);
		    padding: 100px 0
		}
		
		.faq-section h2.faq-title {
			text-align: center;
			font-size: 3rem;
			padding: 0 0 30px 0;
			color: #fff
		}
		
		.faq-button-wrapper {
			text-align: center
		}
		
		.faq-button-wrapper a {
		font-size: var(--main-fontsize);
		background: #fff;
		display: inline-block;
		margin: 20px 0 0 0;
		color: var(--main-ci-color-red);
		padding: 10px 20px;
		font-weight: 600;
		border: 2px solid #fff;
		}
		
		.faq-title {
		    font-size: 2rem;
		    margin-bottom: 2rem;
		}
		
		.faq-list {
		    text-align: left;
		}
		
		.home .faq-item {
		    margin-bottom: 1rem;
		    background: rgba(255,255,255,.1);
		    padding: 20px;
		    margin: 0 0 30px 0
		}
		
		.page-template-default .faq-item {
		    margin-bottom: 1rem;
		    background: #fff;
		    color: var(--main-ci-color-red);
		    padding: 20px;
		    margin: 0 0 30px 0
		}
		
		
		.faq-question {
		    width: 100%;
		    text-align: left;
		    border: none;
		    padding: 0;
		    font-size: 2rem;
		    color: #fff;
		    font-weight: 600;
		    cursor: pointer;
		    position: relative;
		    border: 0;
		    display: flex;
		    justify-content: space-between;
		    align-items: center;
		}
		
		.faq-answer {
		    max-height: 0;
		    overflow: hidden;
		    transition: max-height 0.3s ease;
		    padding: 0;
		    color: #fff;
		}
		
		.faq-question.active {
			margin: 0 0 0 0
		}
		.faq-item .faq-answer p:first-child{
			padding: 10px 0 0 0
		}
		
		#page-main-content .faq-item .faq-answer p {
			line-height: 1.4em;
			margin: 0 0 10px 0
		}
		
		.faq-question.active .faq-toggle {
		    transform: rotate(45deg);
		}
		
		.faq-toggle {
		    font-size: 3rem;
		    transition: transform 0.3s;
		}
		
		.faq-button-wrapper {
		    margin-top: 2rem;
		}
		
		#page-main-content .faq-item button {
			color: var(--main-ci-color-red)
		}
		
		.home #page-main-content .faq-item button {
			color: #fff
		}
		
		#page-main-content .faq-item .faq-answer {
			color: #333
		}
		
		.home #page-main-content .faq-item .faq-answer {
			color: #fff
		}
		
		
		
		.faq-button-wrapper .btn:hover {
		    background: var(--main-ci-color-red);
		    color: #fff
		}



		.footer-main-wrapper {
		padding: 80px 0 50px 0
		}
		
		.bkra-footer-grid-container {
		  display: grid;
		  grid-template-columns: 20% 20% 60%;
		  gap: 30px;
		  
		  --last-box-gap: 50px
		}
		
		
		.bkra-footer-grid-container ul {
			padding: 40px 0 0 0
		}
		
		footer .bkra-footer-grid-container
		li.current-menu-item a span {
			font-weight: 600 !important;
			color: var(--main-ci-color-red)
			
		}
		
		.bkra-footer-grid-container p,
		.bkra-footer-grid-container li {
			font-size: var(--main-fontsize);
			line-height: 1.55em;
		}
		
		.bkra-footer-grid-container h3 {
			font-size: 2rem;
			line-height: 1.3em;
			height: 40px;
			font-weight: 700;
			color: var(--main-ci-color-red);
		}
		
		
		.footer-grid-item3-box {
			padding: 0 0 0 var(--last-box-gap);
		}
		
		.footer-logo {
			padding: 40px 0 0 var(--last-box-gap);
		}
		.footer-logo svg {
			width: 50%;
			height: auto
		}
		
		.bkra-footer-bottom-container {}
		
		.bkra-footer-download-container-box {
			padding: 30px 0;
			width: calc(40% + calc(2* 30px));
		}
		.bkra-footer-download-container-box a {
			background: #fff;
			display: block;
			padding: 30px 30px 30px 100px;
			font-weight: 400;
			color: #222;
			font-size: 2rem;
			line-height: 1.2em;
			position: relative
			
		}
		.bkra-footer-download-container-box a span {
			
			width: 70px;
			height: 100%;
			position: absolute;
			top: 0;
			left: 20px;
			content:'';
			
		}
		.bkra-footer-download-container-box a span svg {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
		.bkra-footer-download-container-box  svg path {
			fill: var(--main-ci-color-red) !important
		}
		
		
		
		/* Tablet: max-width 1024px (kann angepasst werden) */
		@media (max-width: 1024px) {
			.bkra-footer-grid-container {
			grid-template-columns: 1fr 1fr;
			grid-template-rows: auto auto;
			grid-template-areas:
			"item1 item2"
			"item3 item3";
			}
			
			
			.bkra-footer-grid-container .footer-grid-item1 { grid-area: item1; }
			.bkra-footer-grid-container .footer-grid-item2 { grid-area: item2; }
			.bkra-footer-grid-container .footer-grid-item3 { grid-area: item3; }
			
			
			.footer-grid-item3-box {
				padding: 0
			}
		   
		}
		
		/* Mobil: max-width 768px (kann angepasst werden) */
		@media (max-width: 768px) {
		  .bkra-footer-grid-container {
		    grid-template-columns: 1fr;
		    grid-template-areas:
		      "item1"
		      "item2"
		      "item3";
		  }
		}
		
		.bkra-footer-bottom-container {
			padding: 20px 0 50px;
			border-top: 1px solid #ccc;
			margin: 20px 0 0 0
		}
		
		.bkra-footer-bottom-container li {
			display: inline-block;
			padding: 0 20px 20px 0;
			position: relative;
			font-size: 1.2rem;
		}
		.bkra-footer-bottom-container li:after {
			content: '|';
			width: 20px;
			position: absolute;
			left: calc(100% - 20px);
			text-align: center;
			top: 0;
			color: #333;
		}
		
		
		.bkra-footer-bottom-container li:last-child:after {
			display: none
		}
		
		.single main,
		.post-type-archive-fachbereiche #page-main-content,
		.post-type-archive-downloads #page-main-content {
			padding: var(--page-gap-content-top) 0 0 0;
		}
		
		
		
		
		.bkra-fachbereiche-wrapper {
		    padding: 40px 0 60px;
		}
		
		.bkra-fachbereiche-flex {
		    display: flex;
		    flex-wrap: wrap;
		    gap: 30px;
		    align-items: stretch; /* WICHTIG: gleiche Höhe */
		}
		
		.bkra-card {
			position: relative
		}
		.bkra-card:before {
			content: '';
			position: absolute;
			left: 0;
			top: 0;
			width: 3px;
			height: 100%;
			background: var(--main-ci-color-red)
		}
		.bkra-card {
		    flex: 1 1 calc(33.333% - 30px);
		    background: #fff;
		    border-radius: 3px;
		    padding: 25px;
		    text-decoration: none;
		    color: inherit;
		    display: flex;              /* WICHTIG */
		    flex-direction: column;     /* WICHTIG */
		    height: auto;               /* automatisch */
		    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
		    transition: transform .25s ease, box-shadow .25s ease;
		}
		
		.bkra-card p {
			font-size: var(--main-fontsize);
			line-height: 1.4em
		}
		
		.bkra-card-inner {
		    flex: 1;                    /* WICHTIG: füllt die gesamte Kartenhöhe */
		    display: flex;
		    flex-direction: column;
		}
		
		.bkra-card:hover {
		    transform: translateY(-5px);
		    box-shadow: 0 8px 20px rgba(0,0,0,0.12);
		}
		
		.bkra-card-title {
		    margin: 0 0 10px;
		    font-size: 24px;
		}
		
		.bkra-card-kurz {
		    margin-top: auto; /* hält den Text oben und verhindert Dehnen */
		    line-height: 1.5;
		    color: #555;
		}
		
		/* Tablet */
		@media (max-width: 1024px) {
		    .bkra-card {
			flex: 1 1 calc(50% - 30px);
		    }
		}
		
		/* Mobil */
		@media (max-width: 600px) {
		    .bkra-card {
			flex: 1 1 100%;
		    }
		}
		
		
		
		/* Container */
		.bkra-fachbereich-container {
		    display: flex;
		    gap: 40px;
		    padding: 40px 0 60px;
		}
	
		
		.bkra-fachbereich-main-container {
		    flex: 0 0 calc(70% - 20px);
		    min-height: 300px; /* Mindesthöhe, auch bei leerem Content */
		}
		
		/* Optional: Styling für Fallback-Text */
		.bkra-empty-content {
		    font-style: italic;
		    color: #888;
		    font-size: var(--main-fontsize);
		}
		
		/* Sidebar 30% */
		.bkra-fachbereich-sidebar {
		   flex: 0 0 calc(30% - 20px);
		}
		
		/* Titel */
		.bkra-fachbereich-title {
		    margin-top: 0;
		    font-size: 4rem;
		    font-weight: 600;
		    color: var(--main-ci-color-red);
		}
		
		/* Sidebar Navigationsliste */
		.bkra-sidebar-title {
		    margin-bottom: 15px;
		    font-size: 20px;
		    font-weight: 600;
		}
		
		.bkra-sidebar-nav {
		    list-style: none;
		    margin: 0;
		    padding: 0;
		}
		
		.bkra-sidebar-item {
		    margin-bottom: 8px;
		}
		
		.bkra-sidebar-item a {
		    display: block;
		    padding: 10px 25px;
		    border-radius: 3px;
		    text-decoration: none;
		    color: #333;
		    font-size: var(--main-fontsize);
		    background: #f9f9f9;
		    transition: background .2s ease, color .2s ease;
		}
		
		.bkra-fachbereich-content p,
		.bkra-fachbereich-content ul  {
			font-size: var(--main-fontsize);
			line-height: 1.45em;
			margin: 0 0 15px 0
		}
		
		.bkra-fachbereich-content h2 {
			font-size: 2rem;
			margin: 10px 0 5px;
			font-weight: 600
		}
		
		/* Hover */
		.bkra-sidebar-item a:hover {
		    background: var(--main-ci-color-red);
		    color: #fff
		}
		
		/* Aktives Element */
		.bkra-active a {
		    background: var(--main-ci-color-red);
		    color: #fff;
		    font-weight: 600;
		}
		
		/* Responsiv */
		@media (max-width: 900px) {
		    .bkra-fachbereich-container {
			flex-direction: column;
		    }
		
		    .bkra-fachbereich-main,
		    .bkra-fachbereich-sidebar {
			flex: 1 1 100%;
		    }
		}
		
		
		
		/* DOWNLOADS */
			.bkra-downloads-list {
			    display: flex;
			    flex-direction: column;
			    gap: 20px;
			    padding: 40px 0;
			}
			
			/* Einzelnes Item */
			.bkra-download-item {
			    position: relative;
			    background: #ffffff;
			    padding: 25px 25px 25px 25px;
			    border-radius: 3px;
			    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
			    display: flex;
			    flex-direction: column;
			}
			
			/* Nummer oben rechts */
			.bkra-download-number {
			    position: absolute;
			    top: 15px;
			    right: 20px;
			    font-size: 48px;
			    line-height: 48px;
			    font-weight: 700;
			    color: var(--main-ci-color-red);
			    z-index: 0;
			}
			
			.bkra-download-button {
				text-align: right
			}
			.bkra-download-button a {
				color: var(--main-ci-color-red);
				font-weight: 600;
				font-size: 2rem;
				text-decoration: none
			}
			
			/* Content überlagert Nummer */
			.bkra-download-content {
			    position: relative;
			    z-index: 1;
			}
			
			/* Titel */
			.bkra-download-title {
			    margin-top: 0;
			    font-size: 24px;
			    font-weight: 600;
			}
			
			.error--message p {
				color: var(--main-ci-color-red);
				font-family: Courier, monospace;
				font-size: 2rem
			}
			
			/* Excerpt / Kurzbeschreibung */
			.bkra-download-excerpt {
			    margin: 15px 0;
			    color: #555;
			    line-height: 1.5;
			}
			
			/* Link */
			.bkra-download-link {
			    text-decoration: none;
			    color: #005bbb;
			    font-weight: 600;
			}
			
			.bkra-download-content {
				padding: 0 0 0 120px;
				position: relative;
			}
			.bkra-download-excerpt p {
				font-size: var(--main-fontsize);
				line-height: 1.4em;
				padding: 0 200px 0 0
			}
			
			.bkra-download-content-download-icon {
				position: absolute;
				left: 0;
				width: 100px;
				height: 100px;
			}
			.bkra-download-content-download-icon svg {
				width: 100%;
				height: 100%;
				object-fit: contain;
				object-position: top left;
			}
			.bkra-download-content-download-icon svg path {
				fill: var(--main-ci-color-red) !important;
			}
			
			/* Responsive */
			@media (max-width: 768px) {
			    .bkra-download-number {
				font-size: 36px;
			    }
			
			    .bkra-download-title {
				font-size: 20px;
			    }
			}
		
	.bkra-team-single-container {
	    padding: 0 0 60px 0;
	}
	
	.bkra-team-single {
	    display: flex;
	    gap: 50px;
	    align-items: flex-start;
	    flex-wrap: wrap;
	}
	
	/* Bild links */
	.bkra-team-image {
	    flex: 0 0 350px;
	    height: 350px;
	    background-size: cover;
	    background-position: center;
	    border-radius: 5px;
	}
	
	/* Text rechts */
	.bkra-team-content {
	    flex: 1 1 500px;
	    display: flex;
	    flex-direction: column;
	    gap: 10px;
	}
	
	/* Name */
	.bkra-team-name {
	    margin: 0;
	    font-size: 32px;
	    font-weight: 700;
	}
	
	/* Position */
	.bkra-team-position {
	    font-size: 18px;
	    font-weight: 500;
	    color: #555;
	}
	
	/* Content */
	.bkra-team-description {
	    font-size: 16px;
	    line-height: 1.6;
	    color: #333;
	}
	
	/* Kontakt Box */
	.bkra-team-contact-box {
	    margin-top: 20px;
	    padding: 20px;
	    background: #f5f5f5;
	    border-radius: 12px;
	    max-width: 300px;
	}
	
	.bkra-team-contact-box h4 {
	    margin: 0 0 10px;
	    font-size: 18px;
	}
	
	.bkra-team-contact-link {
	    text-decoration: none;
	    color: #005bbb;
	    font-weight: 600;
	}
	
	.bkra-team-contact-link:hover {
	    text-decoration: underline;
	}
	
	/* Responsive */
	@media (max-width: 900px) {
	    .bkra-team-single {
		flex-direction: column;
		align-items: center;
	    }
	
	    .bkra-team-image {
		width: 100%;
		height: 300px;
	    }
	
	    .bkra-team-content {
		width: 100%;
		text-align: center;
	    }
	
	    .bkra-team-contact-box {
		margin: 20px auto 0;
	    }
	}
	
	
	
	.bkra-team-description p {
		margin: 0 0 10px 0
	}
	.bkra-team-description p a {
		color: var(--main-ci-color-red)
	}
	
	#page-main-content p a,
	#page-main-content li a  {
		color: var(--main-ci-color-red);
		font-family: 'Poppins';
		font-style: normal;
		font-weight: 600;
	}
	#page-main-content p a:hover {
		text-decoration: underline;
		text-underline-offset: 4px;      /* Abstand der Linie vom Text */
		  text-decoration-thickness: 2px;  /* Dicke der Linie */
	}
	
	#page-main-content .site--intro-container p {
		font-size: var(--main-fontsize);
		line-height: 1.4em;
		padding: 20px 0 0 0
	} 
	
	
	
	
	/* Volle Breite Box */
	.ra-fachb-team-full {
	  width: 100%;
	  background-color: #fff;
	  border-radius: 12px;
	  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
	  margin: 2rem 0;
	}
	
	/* Überschrift */
	.ra-fachb-team-title {
	  font-size: 2rem;
	  font-weight: 600;
	  margin-bottom: 0.75rem;
	  color: #222;
	}
	
	.ra-fachb-team-full--inner {
		padding: 30px
	}
	
	/* Row: Foto links, Text rechts */
	.ra-fachb-team-row {
	  display: flex;
	  align-items: center;
	  gap: 2rem;
	}
	
	/* Bild links quadratisch */
	.ra-fachb-team-img img {
	  width: 200px;
	  height: 200px;
	  object-fit: cover;
	  border-radius: 8px;
	}
	
	/* Text rechts */
	.ra-fachb-team-info {
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
	}
	
	/* Name */
	.ra-fachb-team-name {
	  font-size: 2rem;
	  font-weight: 600;
	  margin-bottom: 0.25rem;
	  color: #222;
	}
	
	/* Telefon und Mail */
	.ra-fachb-team-phone a,
	.ra-fachb-team-mail a {
	  color: #0073e6;
	  text-decoration: none;
	  font-size: var(--main-fontsize)
	}
	
	.ra-fachb-team-phone a:hover,
	.ra-fachb-team-mail a:hover {
	  text-decoration: underline;
	}
	
	/* Responsive Mobile */
	@media (max-width: 768px) {
	  .ra-fachb-team-row {
	    flex-direction: column;
	    align-items: center;
	    text-align: center;
	  }
	
	  .ra-fachb-team-img img {
	    width: 100px;
	    height: 100px;
	  }
	
	  .ra-fachb-team-info {
	    margin-top: 0.5rem;
	  }
	}
	
	.error-404-row {
		padding: 240px 0 0 0
	}
	.error-404-row h1 {
		font-size: 3rem;
		color: var(--main-ci-color-red)
	}
	
	.error-404-row p,
	.error-404-row ul {
		font-size: var(--main-fontsize);
		  line-height: 1.2em;
		  margin: 0 0 10px 0;
	}
	
	#page-main-content .bkra-sidebar-item a:hover {
		color: #fff
	}
	#page-main-content .bkra-sidebar-item.bkra-active a {
		color: #fff
	}
	
	
	.bkra-fachbereich-container
	h4.wp-block-heading {
		font-size: 2rem;
		line-height: 1.3em;
		font-weight: 600;
		margin: 20px 0 10px 0;
	}
	
	
	/* Team Assisztenz Kachel */
	.team-assistenz-kachel {
	    display: flex;
	    align-items: flex-start;
	    gap: 2rem;
	    margin: 2rem 0;
	    padding: 2rem;
	    background-color: #f9f9f9; /* hellgrauer Hintergrund, optional */
	    border-radius: 10px;
	}
	
	.team-assistenz-text {
	    flex: 1;
	    text-align: left;
	}
	
	.team-assistenz-text h3 {
	    font-size: calc(var(--main-fontsize) * 0.8);
	    color: #333;
	    margin-bottom: 0.5rem;
	}
	
	.team-assistenz-text h4 {
	    font-size: var(--main-fontsize);
	    margin-bottom: 0.5rem;
	    color: var(--main-ci-color-red)
	}
	
	.team-assistenz-text p {
	    font-size: var(--main-fontsize);
	    line-height: 1.5;
	    color: #555;
	}
	
	.team-assistenz-foto {
	    flex: 0 0 200px;
	}
	
	.team-assistenz-foto img {
	    width: 100%;
	    height: auto;
	    border-radius: 8px;
	    object-fit: cover;
	}
	
	/* Responsive für Mobile */
	@media (max-width: 768px) {
	    .team-assistenz-kachel {
		flex-direction: column;
		text-align: center;
		gap: 1rem;
	    }
	
	    .team-assistenz-text {
		text-align: center;
	    }
	
	    .team-assistenz-foto {
		flex: 0 0 auto;
		width: 150px;
		margin: 0 auto;
	    }
	}
	
	.team-meta-nav {
		font-size: var(--main-fontsize);
		padding: 0 0 20px 0
	}
	.team-meta-nav a {
		font-size: var(--main-fontsize);
		color: #777
	}
	
	#page-main-content
	.modul-stage-menu a { color: #fff }
	
	
	.team-mosaic-link {
	    display: block;
	    width: 100%;
	    max-width: 480px; /* optional, Größe begrenzen */
	    margin: 0 auto;
	    text-decoration: none;
	}
	
	.team-mosaic-grid {
	    display: grid;
	    grid-template-columns: repeat(4, 1fr);
	    grid-template-rows: repeat(4, 1fr);
	    width: 100%;
	    aspect-ratio: 1 / 1; /* immer quadratisch */
	}
	
	.mosaic-cell {
	    width: 100%;
	    height: 100%;
	    aspect-ratio: 1 / 1;
	}
	
	.image-cell {
	    background-size: cover;
	    background-position: center;
	    background-repeat: no-repeat;
	}
	
	.color-cell {
	    /* nur Hintergrundfarbe */
	}
	
	.image-section-row {
		padding: 20px 0 40px
	}
	
	
	.home.transparent-header main {
		padding: 0
	}
	
	.home.transparent-header
	#header-gradient {
		background: #000000;
		background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.43) 0%, rgba(0, 0, 0, 0) 100%);
		background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0.43) 0%, rgba(0, 0, 0, 0) 100%);
		background: linear-gradient(180deg, rgba(0, 0, 0, 0.43) 0%, rgba(0, 0, 0, 0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
	}
	
	.home.transparent-header #header-meta li a {
		color: #fff;
	}
	.home.transparent-header #header-meta li:last-child a:hover {
		color: var(--main-ci-color-red) 
	}
	
	.home.transparent-header #main-menu-container li a {
		color: #fff
	}
	.home.transparent-header #main-menu-container li a:hover {
		color: var(--main-ci-color-red) 
	}
	
	.home.transparent-header #main-menu-container li.current_page_item a {
		color: var(--main-ci-color-red) 
	}
	
	.home.transparent-header #header-group .fill-grey,
	.home.transparent-header #header-group .fill-red {
		fill: #fff
	}
	
	.home.isscrolled.transparent-header
	#header-gradient {
		height: 400px;
		background: #000000;
		background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.73) 0%, rgba(0, 0, 0, 0) 100%);
		background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0.73) 0%, rgba(0, 0, 0, 0) 100%);
		background: linear-gradient(180deg, rgba(0, 0, 0, 0.73) 0%, rgba(0, 0, 0, 0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
	}
	
	
	

.acf-spacer {
	    width: 100%;
	    display: block;
	}
	
	.spacer-25 {
	    height: 25px;
	}
	
	.spacer-50 {
	    height: 50px;
	}
	
	.spacer-75 {
	    height: 75px;
	}
	
	.spacer-100 {
	    height: 100px;
	}
	
	.spacer-125 {
	    height: 125px;
	}
	
	.spacer-150 {
	    height: 150px;
	}


.acf-image {
	    margin: 0 0;
	}
	
	.acf-image__img {
	    display: block;
	    width: 100%;
	    height: auto;
	
	    border-radius: 10px;
	    overflow: hidden;
	
	    box-shadow:
		0 10px 40px rgba(0,0,0,.12),
		0 4px 30px rgba(0,0,0,.08);
	
	    transition: transform .3s ease,
			box-shadow .3s ease;
	}

	
	.acf-image__caption {
	    margin-top: .75rem;
	    font-size: .9rem;
	    color: #666;
	    text-align: center;
	}
	
	
	.breuer-klingen-form-container {
		background: #fff;
		box-shadow:
		0 10px 40px rgba(0,0,0,.12),
		0 4px 30px rgba(0,0,0,.08);
		border-radius: 10px;
		padding: 30px
		
	}
	
	
	@media (hover: hover) {
		
	#footer-menu li {
		padding: 0 0 7px 0
	}
		
	  #footer-menu a {
	    position: relative;
	    color: #5f6060;
	    text-decoration: none;
	    transition: color .25s ease;
	  }
	
	  #footer-menu a::after {
	    content: "";
	    position: absolute;
	    left: 0;
	    bottom: -2px;
	    width: 100%;
	    height: 1px;
	    background: currentColor;
	    transform: scaleX(0);
	    transform-origin: right;
	    transition: transform .35s cubic-bezier(.4,0,.2,1);
	  }
	
	  #footer-menu a:hover {
	    color: #222;
	  }
	
	  #footer-menu a:hover::after {
	    transform: scaleX(1);
	    transform-origin: left;
	  }
	}
	
	footer li.current-menu-item a span {
		font-weight: 600 !important;
		color: var(--main-ci-color-red)
	}
	
	
	@media (min-width:1081px){
	
	    /* Parent */
	    #primary-menu > li{
		position:relative;
	    }
	
	    /* Dropdown */
	    #primary-menu > li > .sub-menu{
		position:absolute;
		top:calc(100% + 16px);
		left: -30px;
	
		min-width:180px;
		padding:12px 0;
		margin:0;
	
		list-style:none;
	
		background:rgba(255, 255, 255, 0.9);
		backdrop-filter: blur(5px);
		border-radius:16px;
		box-shadow:
		    0 12px 40px rgba(0,0,0,.12),
		    0 2px 8px rgba(0,0,0,.06);
	
		opacity:0;
		visibility:hidden;
		pointer-events:none;
	
		transform:translateY(8px);
	
		transition:
		    opacity .25s ease,
		    transform .25s ease,
		    visibility .25s ease;
	
		z-index:999;
	    }
	
	    /* Unsichtbarer Hover-Korridor */
	    #primary-menu > li > .sub-menu::before{
		content:"";
		position:absolute;
		left:0;
		right:0;
		top:-8px;
		height:8px;
	    }
	
	    /* Anzeigen */
	    #primary-menu > li:hover > .sub-menu,
	    #primary-menu > li:focus-within > .sub-menu{
		opacity:1;
		visibility:visible;
		pointer-events:auto;
		transform:translateY(0);
	    }
	
	    /* Einträge */
	    #primary-menu > li > .sub-menu > li{
		display:block;
		margin:0;
		text-align:left;
	    }
	
	    #primary-menu > li > .sub-menu > li > a {
		display:block;
		padding: 8px 25px;
		color:#222 !important;
		text-decoration:none;
		white-space:nowrap;
		transition:all .2s ease;
		font-weight: 400
	    }
	    
	    #primary-menu > li > .sub-menu > li.menu-item.current-menu-item a {
		    font-weight: 700;
		    color: rgb(138, 36, 50) !important
	    }
	    
	    #primary-menu > li > .sub-menu > li > a:hover{
		background:#f6f6f6;
		color: #111;
	    }
	
	    #primary-menu .current-menu-item > a{
		color:var(--primary-color);
		font-weight:600;
	    }
	
	}
	
	
	
	#menu-toggle {
	    display: none;
	}
	
	
	@media (max-width: 1150px) {
	
	    #header-group {
		position: relative;
	    }
	    
	    :root {
		    --page-gap-content-top: 200px;
	    }
	
	    #menu-toggle {
		display: flex;
	
		position: absolute;
		right: var(--page-gap);
		bottom: 0;
	
		width: 54px;
		height: 44px;
	
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 6px;
		
		pointer-events: all !important;
		
		border: 0;
		background: transparent;
	
		cursor: pointer !important;
	
		z-index: 10001;
	    }
	    
	    #main-menu-container #primary-menu {
		    text-align: left
	    }
	    
	#main-menu-container #primary-menu li {
		display: block
	}
	
	    #menu-toggle span {
		width: 36px;
		height: 2px;
		background: currentColor;
	
		transition:
		    transform .25s ease,
		    opacity .2s ease;
	    }
	    
	    .home #menu-toggle span {
		    background: #fff
	    }
	    .home.layer-menu-open #menu-toggle span {
			background: #000
		}
	    
	    .layer-menu-open header {
		    pointer-events: none;
	    }
	   .layer-menu-open #main-menu-container {
		   pointer-events: all
	   }
	
	    #main-menu-container {
	
		position: fixed;
	
		inset: 0;
		overflow: auto;
		width: 100%;
		height: 100dvh;
	
		background: rgba(255, 255, 255, 0.933);
		backdrop-filter: blur(5px);
	
		z-index: 10000;
	
		overflow-y: auto;
	
		padding: 0;
	
		opacity: 0;
		visibility: hidden;
	
		transform: translateX(100%);
	
		transition:
		    opacity .25s ease,
		    transform .25s ease,
		    visibility .25s;
	    }
	
		#main-menu-container 
		#primary-menu {
			padding: 50px
		}
	
	    body.layer-menu-open #main-menu-container {
	
		opacity: 1;
	
		visibility: visible;
	
		transform: translateX(0);
	    }
		
		body.layer-menu-open #main-menu-container #primary-menu li a::before {
			display: none !important;
		}
		
		body.layer-menu-open #main-menu-container #primary-menu > li {
		display: block;
		margin: 0 0 30px 0
		} 
		
		body.layer-menu-open #main-menu-container .sub-menu {
			opacity: 1;
			display: block;
			position: relative !important;
			visibility: visible;
			background: none  !important;
			box-shadow: none;
			backdrop-filter: none;
			left: auto !important;
			transform: none;
			position: relative
		} 
		
		body.layer-menu-open #main-menu-container .sub-menu:before {
			content:'';
			position: absolute;
			left: 0;
			top: 20px;
			width: 2px;
			height: calc(100% - 35px);
			background: #555 
		}
	    
	    	body.layer-menu-open #main-menu-container a {
			    color: #555 !important
		    }
		    
		body.layer-menu-open.home #main-menu-container li#menu-item-58 a,
		body.layer-menu-open #main-menu-container li.current-menu-item > a,
		body.layer-menu-open #main-menu-container li.current_page_parent > a,
		body.layer-menu-open.single-fachbereiche #main-menu-container li.menu-item-object-fachbereiche > a   {
		color: rgb(138, 36, 50) !important
		}
		
		body.layer-menu-open #main-menu-container ul#primary-menu > li > a {
			font-weight: 700 !important
		}
		
		body.layer-menu-open #main-menu-container .sub-menu a,
		body.layer-menu-open #main-menu-container .sub-menu a span {
			font-weight: 400 !important
		}
	
	    body.layer-menu-open {
	
		overflow: hidden;
	
		overscroll-behavior: none;
	    }
	
	
	
	    #main-menu ul {
	
		display:flex;
	
		flex-direction:column;
	
		gap:1.2rem;
	
		margin:0;
	
		padding:0;
	
		list-style:none;
	    }
	
	
	
	    #main-menu a {
	
		display:block;
	
		padding:.4em 0;
	
		font-size:clamp(1.3rem,4vw,2rem);
	
		text-decoration:none;
	    }
	
	
	
	    #main-menu ul ul {
	
		padding-left:1.5rem;
	
		margin-top:.8rem;
	
		gap:.5rem;
	    }
	
	
	
	    #main-menu ul ul a {
	
		font-size:1.1rem;
	    }
	
	
	
	    /* Burger -> X */
	
	    body.layer-menu-open #menu-toggle span:nth-child(1) {
	
		transform:
		translateY(8px)
		rotate(45deg);
	    }
	
	
	    body.layer-menu-open #menu-toggle span:nth-child(2) {
	
		opacity:0;
	    }
	
	
	    body.layer-menu-open #menu-toggle span:nth-child(3) {
	
		transform:
		translateY(-8px)
		rotate(-45deg);
	    }
	
	
	
	    @media(prefers-reduced-motion:reduce) {
	
		#main-menu-container,
		#menu-toggle span {
	
		    transition:none;
		}
	    }
	
	}
	
	
	@media (max-width: 1081px) {
		#primary-menu > li > .sub-menu > li > a {
			display: block;
			padding: 8px 25px;
		}
		#primary-menu > li > .sub-menu {
			padding: 12px 0
		}
		
		#main-menu-container li {
			margin: 0
		}
	}
	
	@media screen and (max-width: 1000px) {
		.modul-stage h1,
		#page-main-content .entry-content .modul-pickupuser--headline h2, #page-main-content .entry-content .modul-pickupuser--headline p,
		.faq-section h2.faq-title {
			font-size: 3rem
		}
		
		#menu-wing {
			top: auto;
			bottom: 10px;
			left: 0;
			width: 100%;
			text-align: center;
			
		}
		
		#menu-wing li {
			display: inline-block;
			margin: 0 10px;
			background: none;
			
		}
		
		#menu-wing li a {
		-webkit-border-radius: 50px 50px 50px 50px;
		border-radius: 50px 50px 50px 50px;
		-webkit-box-shadow: 10px 10px 50px 0 rgba(0,0,0,0.1);
		box-shadow: 10px 10px 50px 0 rgba(0,0,0,0.1);
		}
		
		#menu-wing li a:hover {
			background-color: #111;
			width: 50px;
			margin-left: 0;
		}
		
	}
	
	@media screen and (max-width: 800px) {
		.module-pickup-left-column-background {
			width: 100%;	
			position: relative;
			top: auto;
			left: auto	
		}
		
		.ra-fachb-team-full .ra-fachb-team-title { text-align: center }
		
		.modul-pickupuser--main-group {
			display: block
		}
		
		.bkra-fachbereich-title {
		  font-size: 3rem; 
	  	}
	}
	
	@media screen and (max-width: 700px) {
		.modul-stage h1,
		#page-main-content .entry-content .modul-pickupuser--headline h2, #page-main-content .entry-content .modul-pickupuser--headline p,
		.faq-section h2.faq-title {
			font-size: 2.4rem;
			line-height: 1.2em
		}
		
		:root {
			    --page-gap-content-top: 150px;
		    }
		#header-gradient {
			height: 200px
		}
		
		.bkra-footer-download-container-box {
			width: 100%
		}
		
		.modul-stage-content {
			width: 100%;
			margin: 0
		}
		
		#header-meta {
			display: none
		}
		
		#module-pickup-terms {
			padding: 0
		}
		
		.module-pickup-terms-group {
			padding: 20px
		}
		
		.module-pickup-right-column {
			position: relative;
			padding: 0 0 200px 0
		}
		.module-pickup-image-container {
			position: absolute;
			bottom: 0;
			left: 0;
			padding: 0;
			width: 100%;
			height: 200px;
		}
		
		.module-pickup-text-container {
			-moz-transform: translateX(0px) translateY(0px);
			-webkit-transform: translateX(0px) translateY(0px);
			-o-transform: translateX(0px) translateY(0px);
			-ms-transform: translateX(0px) translateY(0px);
			transform: translateX(0px) translateY(0px);
		}
		
		#menu-toggle {
			bottom: auto;
			top: 60px;
			
		}
		
		.bkra-fachbereich-title {
		  font-size: 2.4rem; 
		  }
		
		#header-group #logo {
			width: 160px;
		}
		
		:root {
		  --page-gap: 30px;
		    --main-fontsize: 1.45rem;
	 	}
		 
		 .modul-stage {
			 padding: 20px 0 50px
		 }
		 
		
		.bkra-download-content-download-icon {
			 width: 50px;
			 height: 50px;
			 position: relative;
			 top: auto;
			 left: auto
		 }
		 
		 .bkra-download-excerpt p {
			 padding: 0
		 }
		 
		 .bkra-download-content {
			 padding: 0
		 }
		 
		 .bkra-download-title {
			 line-height: 1.2em;
			 margin: 15px 0;
		 }
		 
	}
	
	.footer-logo 	
	{
		padding: 0
	}
	
	@media screen and (max-width: 1000px) {
		.footer-logo 	
		{
			padding: 40px 0
		}
	}
	
	.bkra-download-title {
		line-height: 1.2em;
	}
	
	.modul-stage-menu a {
		margin-bottom: 20px;
	}
	
	.bkra-download-excerpt p {
		margin: 0 0 10px 0
	}
	
	@media screen and (max-width: 700px) {
	
		.footer-logo svg {
			width: 60%
		}
		
		.bkra-footer-download-container-box a {
			font-size: 1.4rem
		}
		
		#module-pickup-terms li {
			margin: 0 0 15px 0;
			font-size: 1.6rem;
		}
	
	}
	
	
	
	@media screen and (min-width: 1025px) {
		.footer-logo {
			padding: 40px 0 0 50px
		}
	}
	
	.footer-grid-item3-box p {
		padding: 0 40px 0 0
	}
	
	
	#page-main-content ul.wp-block-list {
		padding: 10px 0 10px 30px;
		list-style-type: square;
		line-height: 1.3em
	}
	
	
	#page-main-content ul.wp-block-list li {
		margin: 0 0 5px 0
	}
	
	
	