/* CSS Document */

:root 
{
	--primaer_color_1: 					#ffffff;
	--primaer_color_2:					#2d2d70;
	--primaer_color_3: 					#fffa96;
	--primaer_color_4:					#cacadb;
	--primaer_color_5:					#dddbbe;
	--primaer_color_6:					#42427f;
	--primaer_color_7:					#9696b5;
	--color_headline:					var(--primaer_color_2);

	--font-family_default: 				"swizalight", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
		--font-size_headline:				28px;
	--font-size_headline2:				20px;
	--font-size_buchen_button:			14px;
	--font-size_remark:					80%;

	--page_margin_left:					150px;
	--page_margin_right:				150px;
	--head_padding_top:					20px;
	--head_padding_bottom:				20px;
	--main_container_margin_top:		0px;
	--main_container_margin_bottom: 	0px;

	--head_logo_height:					40px;
	--head_logo_margin-left:			50px;
	--intro_logo: 						url('../../images/intro/logo_gross.png');
	--intro_2: 							url('../../images/intro/a7_00722_2000px_2.jpg');
	--intro_banner_color: 				#000000A0;
	--intro_banner_textcolor: 			var(--primaer_color_1);
	--intro_banner_font-size:			300%;
	--subtext_text_color:				var(--primaer_color_3);

	--content_max_width:				1024px;

	--content_viewable_area_height: 	calc(4px + 100vh - var(--head_logo_height) - var(--head_padding_top) - var(--head_padding_bottom) - 5px );

	--footer-height:					50px;
	--head_height:						calc(var(--head_logo_height) + var(--head_padding_top) + var(--head_padding_bottom));
	--default_line-height:				1.5;

	--link_color:						var(--primaer_color_2);
	--link_color_2:						var(--primaer_color_4);

	--nav_font-family:					"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--nav_font-size:					.875rem; /* 15pt */
	--nav_font-weight:					normal;
	--nav_letter-spacing: 				0.025em;
	--nav_text-transform: 				uppercase;

	--nav_cta_font-family:				"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--nav_cta_font-size:				0.7rem;
	--nav_cta_font-weight:				normal;
	--nav_cta_letter-spacing: 			0.025em;
	--nav_cta_text-transform: 			uppercase;

	--headline_font-family:				"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--headline_font-size:				3.5rem;
	--headline_font-weight:				normal;
	--headline_letter-spacing: 			0.025em;
	--headline_text-transform: 			inherit;

	--copy_highlight_font-family:		"swizasemibold", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--copy_highlight_font-size:			1.283rem;
	--copy_highlight_font-weight:		normal;
	--copy_highlight_letter-spacing: 	0.005em;
	--copy_highlight_text-transform: 	inherit;

	--copy_font-family:					"swizaregular", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--copy_font-size:					1.283rem;
	--copy_font-weight:					normal;
	--copy_letter-spacing: 				0.005em;
	--copy_text-transform: 				inherit;	

	--quote_font-family:				"swizalight_italic", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--quote_font-size:					2.5rem;
	--quote_font-weight:				normal;
	--quote_letter-spacing: 			0.005em;
	--quote_text-transform: 			inherit;		

	--quote_name_font-family:			"swizalight_italic", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--quote_name_font-size:				1.5rem;
	--quote_name_font-weight:			normal;
	--quote_name_letter-spacing: 		0.005em;
	--quote_name_text-transform: 		inherit;	

	--default_text_headline_font-family:		"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--default_text_headline_font-size:			1.283rem;
	--default_text_headline_font-weight:		normal;
	--default_text_headline_letter-spacing: 	0.025em;
	--default_text_headline_text-transform: 	inherit;	

	--default_text_font-family:			"swizaregular", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--default_text_font-size:			0.992rem;
	--default_text_font-weight:			normal;
	--default_text_letter-spacing: 		0.005em;
	--default_text_text-transform: 		inherit;	

	--modul_container_headline_font-family:		var(--default_text_headline_font-family);
	--modul_container_headline_font-size:		1.75rem;
	--modul_container_headline_font-weight:		var(--default_text_headline_font-weight);
	--modul_container_headline_letter-spacing: 	var(--default_text_headline_letter-spacing);
	--modul_container_headline_text-transform: 	var(--default_text_headline_text-transform);	

	--modul_container_font-family:		var(--default_text_font-family);
	--modul_container_font-size:		var(--default_text_font-size);
	--modul_container_font-weight:		var(--default_text_font-weight);
	--modul_container_letter-spacing: 	var(--default_text_letter-spacing);
	--modul_container_text-transform: 	var(--default_text_text-transform);	

	--modul_cta_headline_font-family:	"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--modul_cta_headline_font-size:		3.5rem;
	--modul_cta_headline_font-weight:	normal;
	--modul_cta_headline_letter-spacing: 0.025em;
	--modul_cta_headline_text-transform: inherit;		

	--modul_cta_font-family:			"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--modul_cta_font-size:				1.167rem;
	--modul_cta_font-weight:			normal;
	--modul_cta_letter-spacing: 		0.025em;
	--modul_cta_text-transform: 		uppercase;

	--footer_headline_font-family:		"swizamedium", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--footer_headline_font-size:		1.283rem;
	--footer_headline_font-weight:		normal;
	--footer_headline_letter-spacing: 	0.025em;
	--footer_headline_text-transform: 	inherit;	

	--footer_copy_font-family:			"swizaregular", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	--footer_copy_font-size:			0.992rem;
	--footer_copy_font-weight:			normal;
	--footer_copy_letter-spacing: 		0.005em;
	--footer_copy_text-transform: 		inherit;	
}


@media (min-width: 1350px)
{
	:root
	{
		--inner_content: 				1130px;
		--page_margin_left: 			calc((100vw - var(--inner_content)) / 2);
		--page_margin_right: 			calc((100vw - var(--inner_content)) / 2);
	}
}

html
{
	min-height: 		100vh;
}

body, textarea, input
{
	background-color: 			var(--primaer_color_1);
	color: 						var(--primaer_color_2);
	line-height: 				var(--default_line-height);

	font-family: 				var(--default_text_font-family);
	font-size:  				var(--default_text_font-size);
	font-weight: 				var(--default_text_font-weight);
	letter-spacing:  			var(--default_text_letter-spacing);
	text-transform:  			var(--default_text_text-transform);	
}

.site_content {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 220ms ease, transform 220ms ease;
}

body.page-out .site_content {
  transform: translateY(8px);
}

html,
body {
  background: #ffffff;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  background: #ffffff;
  opacity: 0;
  pointer-events: none;
  z-index: 999999;
  transition: opacity 220ms ease;
}

body.page-out::after {
  opacity: 1;
}

a,
a:visited
{
	color: 						var(--link_color);
	text-decoration: 			none;
	transition: 				all ease 0.5s;
	border-bottom: 				1px solid #00000000;
}

a:hover
{
	/* text-shadow: 				0px 0px 5px; */
	border-bottom: 				1px solid var(--link_color);
}

body
{
	overflow-x: 				hidden;
}

::-webkit-scrollbar 
{
	width: 						5px;
	height: 					5px;
	background-color: 			transparent;
	-webkit-border-radius: 		100px;
}
::-webkit-scrollbar:hover 
{
	width: 						7px;
}

::-webkit-scrollbar-thumb 
{
	background: 				var(--primaer_color_4);
	-webkit-border-radius: 		100px;
}

::-webkit-scrollbar-thumb:hover,
::-webkit-scrollbar-thumb:active  
{
	background: 				var(--primaer_color_4);
}

ul
{
	padding-inline-start: 		14px;
}

.zoom_box
{
	transform: 					translateY(0px) scale(1);
	transition: 				all ease 0.3s;
	box-shadow: 				rgba(45, 45, 113, 0) 0px 0px 0px 0px;
}

.zoom_box:hover
{
	transform: 					translateY(-6px) scale(1.01);
}

.zoom_box.hover_shadow:hover
{
	box-shadow: 				rgba(45, 45, 113, 0.12) 0px 20px 60px -15px;
}

.normal
{
	font-size: 					var(--default_text_font-size);
	text-transform: 			none;
}


.headline
{
	font-family: 				var(--headline_font-family);
	font-size:  				var(--headline_font-size);
	font-weight: 				var(--headline_font-weight);
	letter-spacing:  			var(--headline_letter-spacing);
	text-transform:  			var(--headline_text-transform);
}

.copy_highlight
{
	font-family: 				var(--copy_highlight_font-family);
	font-size:  				var(--copy_highlight_font-size);
	font-weight: 				var(--copy_highlight_font-weight);
	letter-spacing:  			var(--copy_highlight_letter-spacing);
	text-transform:  			var(--copy_highlight_text-transform);
}

.copy
{
	font-family: 				var(--copy_font-family);
	font-size:  				var(--copy_font-size);
	font-weight: 				var(--copy_font-weight);
	letter-spacing:  			var(--copy_letter-spacing);
	text-transform:  			var(--copy_text-transform);
}

.quote
{
	font-family: 				var(--quote_font-family);
	font-size:  				var(--quote_font-size);
	font-weight: 				var(--quote_font-weight);
	letter-spacing:  			var(--quote_letter-spacing);
	text-transform:  			var(--quote_text-transform);
}

.quote_name
{
	font-family: 				var(--quote_name_font-family);
	font-size:  				var(--quote_name_font-size);
	font-weight: 				var(--quote_name_font-weight);
	letter-spacing:  			var(--quote_name_letter-spacing);
	text-transform:  			var(--quote_name_text-transform);
}

.modul_cta_headline
{
	font-family: 				var(--modul_cta_headline_font-family);
	font-size:  				var(--modul_cta_headline_font-size);
	font-weight: 				var(--modul_cta_headline_font-weight);
	letter-spacing:  			var(--modul_cta_headline_letter-spacing);
	text-transform:  			var(--modul_cta_headline_text-transform);
}

.modul_cta
{
	font-family: 				var(--modul_cta_font-family);
	font-size:  				var(--modul_cta_font-size);
	font-weight: 				var(--modul_cta_font-weight);
	letter-spacing:  			var(--modul_cta_letter-spacing);
	text-transform:  			var(--modul_cta_text-transform);
}

.rubrik_footer .headline
{
	color: 						var(--primaer_color_1);
}

.headline_2
{
	font-family: 				var(--default_text_headline_font-family);
	font-size:  				var(--default_text_headline_font-size);
	font-weight: 				var(--default_text_headline_font-weight);
	letter-spacing:  			var(--default_text_headline_letter-spacing);
	text-transform:  			var(--default_text_headline_text-transform);
}

.text_bold
{
	font-weight: 				bold;
}

.textalign_center 
{
	text-align: 				center;
}

.textalign_left
{
	text-align: 				left;
}

.subtext
{
	color: 						var(--primaer_color_3);
}

.vertical-center-content 
{
  display: 						flex;
  flex-direction: 				column;
  justify-content: 				center; /* vertikal mittig */
  align-items: 					center;     /* horizontal mittig */
}

.head
{
	position: 					fixed;
	display: 					grid;
	top: 						0px;
	left:						0px;
	right: 						0px;
	height: 					auto;
	width: 						auto;
	grid-template-columns: 		1fr var(--content_max_width) 1fr;
	gap: 						20px;
	background-color: 			hsl(var(--primaer_color_1) / .8);
	color: 						var(--primaer_color_2);
	/** border-bottom: 				var(--primaer_color_4) 1px solid; **/
	z-index: 					999999;

  background-color: rgba(255, 255, 255, 0.8); /* halbtransparent */
  backdrop-filter: blur(10px);                /* Hintergrund dahinter blur */
  -webkit-backdrop-filter: blur(10px);        /* Safari */
	
	/*
	-webkit-box-shadow: 		0px 0px 15px 5px var(--primaer_color_3); 
	box-shadow: 				0px 0px 15px 5px var(--primaer_color_3);
	z-index: 					10;
	*/
}

.head > div:nth-child(2)
{
	display: 					grid;
	grid-template-columns: 		max-content 1fr max-content max-content;
	align-items: 				center;
	margin-top: 				var(--head_padding_top);
	margin-bottom: 				var(--head_padding_bottom);
}

.head > div:nth-child(2) > div
{
	display: 					inline-block;
}

.rubrik
{
	position: 					relative;
	display: 					grid;
	grid-template-rows: 		1fr min-content;
	min-height: 				calc((100dvh) - var(--head_height));
}

.rubrik_content > div.content_container
{
	display: 					grid;
	width: 						100vw;
	grid-template-columns: 		1fr var(--content_max_width) 1fr;
}

.rubrik_content.center_vertical
{
	display: 					flex;
  	align-items: 				center;     	/* vertikal zentrieren */
}

.rubrik_content.slide_header .levelup-slider
{
	max-height: 				50vh;
	margin-bottom:				50px;
}

.rubrik.first
{
	padding-top: 				var(--head_height);
}

.rubrik_content .tab_image_text_left
{
	display: 					grid;
	grid-template-columns: 		45% 1fr;
	gap:						40px;
}

.rubrik_content .tab_image_text_left .text
{
	text-align: 				left;
}

.rubrik_content .tab_image_text_left .image img
{
	width: 						100%;
	border-radius: 				25px 25px 25px 25px;;
}

.rubrik_content .tab_image_text_left .headline_2
{
	padding-bottom: 			7px;
}

.rubrik_content .video-bg.site_intro
{
	position: 					absolute;
	left:						0px;
	right: 						0px;
	top: 						var(--head_height);
	width: 						auto;
}

.rubrik_content .video-bg.site_intro
{
	position: 					absolute;
	left:						0px;
	right: 						0px;
	top: 						var(--head_height);
	width: 						auto;
}

.rubrik_content .video-bg video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.full_height
{
	min-height: 				calc(100vh - var(--head_height));
	max-height: 				calc(100vh - var(--head_height));
}

.tab_image_text_right
{
	display: 					grid;
	grid-template-columns: 		1fr 45%;
	gap:						80px;
}

.rubrik_footer .tab_image_text_right
{
	grid-template-columns: 		300px 1fr;
}

.tab_image_text_right .text
{
	text-align: 				left;
}

.tab_image_text_right .image img
{
	width: 						100%;
	border-radius: 				25px 25px 25px 25px;;
}

.tab_image_text_right .headline_2
{
	padding-bottom: 			7px;
}

.rubrik.was_uns_anders_macht .content_container > div:nth-child(2)
{
	margin-top: 				50px;
}

.rubrik_footer
{
	position: 					relative;
  	isolation: 					isolate;
  	background: 				var(--primaer_color_2);
  	color: 						white;
  	min-height: 				20px;
  	padding: 					10px 0px 40px;
  	text-align: 				center;
	margin-top: 				130px;
}

/**
.rubrik_footer::before 
{

	content: 					"";
  	position: 					absolute;
  	top: 						-55px;
  	left: 						-5%;
  	width: 						110%;
  	height: 					120px;
  	background: 				var(--primaer_color_2);
  	border-radius: 				50% 50% 0 0;
  	transform: 					rotate(-0.7deg);
  	z-index: 					-1;
}
**/

.rubrik_footer.background_2,
.rubrik_footer.background_2::before 
{
	background: 				#659388;
}

.rubrik_footer > div:nth-child(1)
{
	display: 					grid;
	grid-template-columns: 		1fr var(--content_max_width) 1fr;
}

.rubrik_footer > div:nth-child(1)
{
	margin-top: 				150px;
	margin-bottom: 				150px;
}

.rubrik_footer.site_footer_container > div:nth-child(1)
{
	margin-top: 				50px;
	margin-bottom: 				50px;
}

.rubrik_footer.double_footer
{
	padding: 					0px 0px 0px;
	background:					radial-gradient(circle at 95% 10%, rgba(173, 210, 132, 0.85), transparent 42%),
								radial-gradient(circle at 72% 60%, rgba(70, 125, 135, 0.45), transparent 48%),
								linear-gradient(100deg, #35397b 0%, #34377a 45%, #3c6085 72%, #97c287 100%);

	transform: 					translateY(50px);
}

.rubrik_footer.double_footer > div:nth-child(1)
{
	padding-top: 				50px;
}

.rubrik_footer.double_footer::before 
{
  	position: 					inherit;
  	top: 						inherit;
  	left: 						inherit;
  	width: 						inherit;
  	height: 					inherit;	
  	border-radius: 				inherit;
  	transform: 					inherit;
}

.rubrik_footer > div:nth-child(1) > div.Zitat
{
	line-height: 				1.2;
}

.rubrik_footer > div:nth-child(1) > div.Zitat > div:nth-child(1)
{
	color: 						var(--primaer_color_1);

}

.rubrik_footer > div:nth-child(1) > div.Zitat > div:nth-child(2)
{
	margin-top: 				20px;
	color: 						var(--primaer_color_3);
}

div.Zitat_2
{
	border-left:				4px solid var(--primaer_color_3);
	padding-left: 				20px;
	font-style: 				italic;
}

.transition_zoom,
.transition_move_right
{
	transition: 				0.4s ease;
}

.transition_zoom:hover
{
	transform: 					scale(103%);
}

.transition_move_right:hover
{
	transform: 					translateX(10px);
}

.rubrik_footer,
.levelup-slider {
  position: relative;
  overflow: hidden;
  padding-top: 60px;
  padding-bottom: 60px;

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 360' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,30 Q980,18 1440,32 V328 Q460,342 0,330 Z' fill='black'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;

  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 360' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,30 Q980,18 1440,32 V328 Q460,342 0,330 Z' fill='black'/%3E%3C/svg%3E");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
}

.rubrik_footer.bottom, .rubrik_footer.bottom_curve_disabled 
{
  position: relative;
  overflow: hidden;
  padding-top: 60px;
  padding-bottom: 0;

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 360' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,30 Q980,18 1440,32 V360 H0 Z' fill='black'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;

  mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 360' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,30 Q980,18 1440,32 V360 H0 Z' fill='black'/%3E%3C/svg%3E");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
}

.site_footer_container
{
	margin-top: 				0px;
	padding-top: 				0px;
}

.rubrik_footer.bottom
{
	 padding-bottom: 40px;
}

.rubrik_footer.bottom > div:nth-child(1)
{
	margin-top: 				10px;
	margin-bottom: 				10px;
}

.rubrik_footer.bottom.double_footer > div:nth-child(1)
{
	margin-bottom: 				60px;
}

.rubrik_content.slide_header
{
	position: 					relative;
}

.rubrik_content.slide_header::before
{
	content: 					"";
	position: 					absolute;
	height: 					100px;
	width: 						100vw;
	background-color: 			var(--primaer_color_2);
	left:						0px;
	top:						0px;
}

.rubrik_content.slide_header .levelup-slider
{
	background-color: 			var(--primaer_color_1);
}

.rubrik_content.slide_header .levelup-slider .slider-dots
{
	bottom: 					60px;
	/* filter: 					drop-shadow(1px 2px 3px #000000); */
}

.rubrik_content .card_list_container
{
	display: 					grid;
	grid-template-columns: 		minmax(0, 1fr) minmax(0, 1fr);
	gap:						30px;

}

.rubrik_content .card_list_container .card
{
	position: 					relative;
	background-color: 			#e5e3f1;
	border-radius: 				20px 20px 20px 20px;
}

.rubrik_content .card_list_container .card
{
	background-size: 			cover;
}

.rubrik_content .card_list_container .card.arbeitswelt
{
	background-image: 			url('../../images/background/arbeitswelt.jpg');
}

.rubrik_content .card_list_container .card.lebensfuehrung
{
	background-image: 			url('../../images/background/lebensfuehrung.jpg');
}

.rubrik_footer.cta_background
{
	background-size: 			cover;
	background-image: 			url('../../images/background/cta.png');
}

.rubrik_content .card_list_container .card .card_icon
{
	position: 					absolute;
	left:						30px;
	top:						-27px;
	background-color: 			var(--primaer_color_3);
	border-radius: 				18px 18px 18px 18px;
	width: 						40px;
	height: 					40px;
	padding: 					8px;
}

.rubrik_content .card_list_container .card .card_icon img
{
	width: 						100%;
	height: 					100%;
}

.rubrik_content .card_list_container .card .card_content
{
	padding: 					30px;
	padding-top:				50px;
	text-align: 				left;

	font-family: 				var(--modul_container_font-family);
	font-size:  				var(--modul_container_font-size);
	font-weight: 				var(--modul_container_font-weight);
	letter-spacing:  			var(--modul_container_letter-spacing);
	text-transform:  			var(--modul_container_text-transform);	
}

.modul_container_headline
{
	font-family: 				var(--modul_container_headline_font-family);
	font-size:  				var(--modul_container_headline_font-size);
	font-weight: 				var(--modul_container_headline_font-weight);
	letter-spacing:  			var(--modul_container_headline_letter-spacing);
	text-transform:  			var(--modul_container_headline_text-transform);	
}

.rubrik_footer .card_list_container
{
	display: 					grid;
	grid-template-columns: 		minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
	gap:						10px;
}

.rubrik_footer .card_list_container .card
{
	position: 					relative;
	background-color: 			#ffffff0d;
	border-radius: 				20px 20px 20px 20px;
	
	padding: 					30px;
	color: 						var(--primaer_color_1);
	text-align: 				left;

	font-family: 				var(--default_text_font-family);
	font-size:  				var(--default_text_font-size);
	font-weight: 				var(--default_text_font-weight);
	letter-spacing:  			var(--default_text_letter-spacing);
	text-transform:  			var(--default_text_text-transform);	
}

.saeulen
{
	text-align: 				left;
}

.saeulen .titel
{	
	font-weight: 				bold;
}

.saeulen .module
{
	background-color: 			var(--primaer_color_4);
	border-radius: 				20px;
	padding:					40px
}

.rubrik_footer .module
{
	background-color: 			var(--primaer_color_6);

}

.rubrik_footer .saeulen .text
{
	color:						var(--primaer_color_4)
}

.saeulen .module:not(:first-child)
{
	margin-top: 				40px;
}

.saeulen .module .modul_titel
{
	display: 					inline-block;
	background-color: 			var(--primaer_color_3);
	border-radius: 				17px;
	padding:					5px;
	padding-left: 				15px;
	padding-right: 				15px;
	font-size: 					var(--default_text_font-size);
	font-weight: 				bold;
	margin-bottom: 				10px;
}

.rubrik_footer .saeulen .modul_titel
{
	background-color: 			var(--primaer_color_7);
}

.rubrik_footer .saeulen .titel,
.rubrik_footer .saeulen .modul_titel
{
	color:						var(--primaer_color_3);
}

.rubrik.trainings .rubrik_footer
{
	margin-top: 				0px;
}

.rubrik.trainings .rubrik_footer.double_footer
{
	height: 					300px;
	transform: 					translateY(0px);
}

.rubrik.trainings .rubrik_footer.double_footer > div
{
	padding-bottom: 			0px;
	margin-bottom: 				0px;
}

.rubrik.trainings .rubrik_footer.double_footer > div > div:nth-child(2)
{
	padding-bottom: 			0px;
}

.rubrik.trainings .rubrik_footer.double_footer
{
	position: 					absolute;
	bottom: 					-60px;
	left: 						0px;
	right: 						0px;
	height: 					230px;
	width: 						auto;
}

.rubrik_footer > div:nth-child(1)
{
	/* padding-bottom: 			80px; */
}

.termine_tabelle
{
	border: 					1px solid var(--primaer_color_4);
	border-radius: 				20px;
	display: 					grid;

	grid-template-columns: 		1fr 30% 20%;
}

.termine_tabelle > div:not(:nth-child(-n + 3))
{
	border-top: 				1px solid var(--primaer_color_4);
}

.termine_tabelle > div
{
	padding: 					20px;
}

.termine_tabelle .empty_message
{
	grid-column: 				span 3;
	text-align: 				center;
	padding-top: 				40px;
	padding-bottom: 			40px;
}

.rubrik.kontakt .kontakt_form
{
	margin-left: 				10vw;
	margin-right:				10vw;
}

.rubrik.kontakt .kontakt_form input,
.rubrik.kontakt .kontakt_form textarea
{
	width: 						100%;
	transition: 				ease 0.25s all;
	border-radius: 				10px;
	padding-left: 				10px;
	padding-right: 				10px;
	padding-top: 				10px;
	padding-bottom: 			10px;
	border: 					var(--primaer_color_4) 1px solid;
}

.rubrik.kontakt .kontakt_form .form_input
{
	margin-top: 				20px;
}

.rubrik.kontakt .kontakt_form .form_input,
.rubrik.kontakt .kontakt_form .form_sendbutton
{
	margin-top: 				20px;
}

.rubrik.kontakt .kontakt_form .form_sendbutton
{
	width: 						calc(100% - (25px));
	border-radius: 				20px;
	height: 					20px;
	text-align: 				center;
}

.rubrik.kontakt .kontakt_form .form_follow_us
{
	margin-top: 				40px;
}

.rubrik.kontakt .kontakt_form .form_follow_us > div
{
	text-align: 				center;
}

.rubrik.kontakt .kontakt_form .form_follow_us > div.links > span:not(:first-child)
{
	margin-left: 				15px;
}

.site_footer
{
	
}

.site_footer a
{
	color: 						var(--link_color_2);
}

.site_footer a:hover
{
	/* text-shadow: 				0px 0px 5px; */
	border-bottom: 				1px solid var(--link_color_2);
}

.site_footer
{
	display: 					grid;
	grid-template-columns: 		50% 25% 1fr;

	font-family: 				var(--footer_copy_font-family);
	font-size:  				var(--footer_copy_font-size);
	font-weight: 				var(--footer_copy_font-weight);
	letter-spacing:  			var(--footer_copy_letter-spacing);
	text-transform:  			var(--footer_copy_text-transform);	
}

.site_footer div
{
	text-align: 				left;
}

.site_footer .headline_2
{
	font-family: 				var(--footer_headline_font-family);
	font-size:  				var(--footer_headline_font-size);
	font-weight: 				var(--footer_headline_font-weight);
	letter-spacing:  			var(--footer_headline_letter-spacing);
	text-transform:  			var(--footer_headline_text-transform);
	padding-bottom: 			10px;
}

.site_footer > div > div:not(:nth-child(1)),
.site_footer > div.fussnote
{
	padding-bottom: 			5px;
}

.site_footer > div.fussnote
{
	border-top: 				var(--primaer_color_7) 1px solid;
	padding-top: 				40px;
	margin-top: 				40px;
	grid-column: 				span 3;
	color: 						var(--primaer_color_7);
}

.site_footer > div.fussnote > div
{
	text-align: 				center;
}

.language_selection
{
	position: 					relative;
	display: 					inline-block;
	transform: 					translateY(2px);
	margin-right: 				10px;
}

.language_selection > div
{
	display: 					inline-block;
	font-size: 					var(--nav_font-size);
	font-family: 				var(--nav_font-family);
    font-weight: 				var(--nav_font-weight);
    letter-spacing: 			var(--nav_letter-spacing);
}

.language_selection > div.language_icon > svg
{
	position: 					absolute;
	top: 						2px;
	left: 						-14px;
}

.language_selection > div:not(:first-child)
{
	padding-left: 				5px;
	padding-right: 				5px;
}

.language_selection > div:last-child
{
	border-left: 				1px solid var(--primaer_color_7);
}

.language_button
{
	border-bottom: 				1px solid rgba(0, 0, 0, 0);
}

.language_button.selected
{
	font-weight: 				bold;
}

.language_button:hover
{
	border-bottom: 				1px solid var(--primaer_color_2);
}

/* Impressum */
.impressum-section {
  padding: clamp(70px, 9vw, 120px) 20px;
  background: var(--primaer_color_01, var(--primaer_color_light, transparent));
}

.impressum-container {
  max-width: 1080px;
  margin: 0 auto;
}

.impressum-card {
  background: var(--primaer_color_02, var(--card_background, #ffffff));
  border: 1px solid var(--primaer_color_04, rgba(0, 0, 0, 0.08));
  border-radius: 28px;
  padding: clamp(32px, 6vw, 64px);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08);
}

.impressum-kicker {
  margin: 0 0 14px;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--primaer_color, var(--primaer_color_06, currentColor));
}

.impressum-card h1 {
  margin: 0;
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: 1.05;
  font-weight: 800;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.impressum-subline {
  margin: 18px 0 42px;
  max-width: 620px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.impressum-content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}

.impressum-block {
  padding: 28px;
  border-radius: 22px;
  background: var(--primaer_color_01, rgba(0, 0, 0, 0.03));
  border: 1px solid var(--primaer_color_03, rgba(0, 0, 0, 0.06));
}

.impressum-block h2 {
  margin: 0 0 16px;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.impressum-block p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.75;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.impressum-block strong {
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.impressum-block a {
  color: var(--primaer_color, var(--primaer_color_07, currentColor));
  font-weight: 700;
  text-decoration: none;
}

.impressum-block a:hover {
  color: var(--primaer_color_dark, var(--primaer_color_10, currentColor));
  text-decoration: underline;
  text-underline-offset: 4px;
}

@media (max-width: 760px) {
  .impressum-section {
    padding: 64px 18px;
  }

  .impressum-card {
    border-radius: 22px;
  }

  .impressum-content {
    grid-template-columns: 1fr;
  }

  .impressum-block {
    padding: 24px;
  }
}

/* Datenschutz */
.privacy-section {
  padding: clamp(70px, 9vw, 120px) 20px;
  background: var(--primaer_color_01, transparent);
}

.privacy-container {
  max-width: 1080px;
  margin: 0 auto;
}

.privacy-card {
  background: var(--primaer_color_02, #ffffff);
  border: 1px solid var(--primaer_color_04, rgba(0, 0, 0, 0.08));
  border-radius: 28px;
  padding: clamp(32px, 6vw, 64px);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08);
}

.privacy-kicker {
  margin: 0 0 14px;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--primaer_color, var(--primaer_color_06, currentColor));
}

.privacy-card h1 {
  margin: 0;
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: 1.05;
  font-weight: 800;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.privacy-subline {
  margin: 18px 0 10px;
  max-width: 720px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.privacy-date {
  display: inline-block;
  margin: 0 0 44px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--primaer_color_01, rgba(0, 0, 0, 0.04));
  border: 1px solid var(--primaer_color_03, rgba(0, 0, 0, 0.06));
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.privacy-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.privacy-block {
  padding: clamp(24px, 4vw, 34px);
  border-radius: 22px;
  background: var(--primaer_color_01, rgba(0, 0, 0, 0.03));
  border: 1px solid var(--primaer_color_03, rgba(0, 0, 0, 0.06));
}

.privacy-block h2 {
  margin: 0 0 18px;
  font-size: clamp(1.25rem, 2.2vw, 1.55rem);
  line-height: 1.3;
  font-weight: 800;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.privacy-block h3 {
  margin: 26px 0 10px;
  font-size: 1.05rem;
  line-height: 1.4;
  font-weight: 700;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.privacy-block p {
  margin: 0 0 16px;
  max-width: 880px;
  font-size: 1rem;
  line-height: 1.75;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.privacy-block p:last-child {
  margin-bottom: 0;
}

.privacy-block strong {
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.privacy-block a {
  color: var(--primaer_color, var(--primaer_color_07, currentColor));
  font-weight: 700;
  text-decoration: none;
}

.privacy-block a:hover {
  color: var(--primaer_color_dark, var(--primaer_color_10, currentColor));
  text-decoration: underline;
  text-underline-offset: 4px;
}

.privacy-block ul {
  margin: 0 0 18px;
  padding-left: 1.25rem;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.privacy-block li {
  margin: 8px 0;
  font-size: 1rem;
  line-height: 1.65;
}

.privacy-block li::marker {
  color: var(--primaer_color, currentColor);
}

@media (max-width: 760px) {
  .privacy-section {
    padding: 64px 18px;
  }

  .privacy-card {
    border-radius: 22px;
  }

  .privacy-block {
    padding: 24px;
  }

  .privacy-date {
    margin-bottom: 32px;
  }
}

/* AGB */
.terms-section {
  padding: clamp(70px, 9vw, 120px) 20px;
  background: var(--primaer_color_01, transparent);
}

.terms-container {
  max-width: 1080px;
  margin: 0 auto;
}

.terms-card {
  background: var(--primaer_color_02, #ffffff);
  border: 1px solid var(--primaer_color_04, rgba(0, 0, 0, 0.08));
  border-radius: 28px;
  padding: clamp(32px, 6vw, 64px);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08);
}

.terms-kicker {
  margin: 0 0 14px;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--primaer_color, var(--primaer_color_06, currentColor));
}

.terms-card h1 {
  margin: 0;
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: 1.05;
  font-weight: 800;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.terms-subline {
  margin: 18px 0 44px;
  max-width: 760px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.terms-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.terms-block {
  padding: clamp(24px, 4vw, 34px);
  border-radius: 22px;
  background: var(--primaer_color_01, rgba(0, 0, 0, 0.03));
  border: 1px solid var(--primaer_color_03, rgba(0, 0, 0, 0.06));
}

.terms-block h2 {
  margin: 0 0 18px;
  font-size: clamp(1.25rem, 2.2vw, 1.55rem);
  line-height: 1.3;
  font-weight: 800;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.terms-block h3 {
  margin: 26px 0 10px;
  font-size: 1.05rem;
  line-height: 1.4;
  font-weight: 700;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.terms-block p {
  margin: 0 0 16px;
  max-width: 880px;
  font-size: 1rem;
  line-height: 1.75;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.terms-block p:last-child {
  margin-bottom: 0;
}

.terms-block strong {
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.terms-block a {
  color: var(--primaer_color, var(--primaer_color_07, currentColor));
  font-weight: 700;
  text-decoration: none;
}

.terms-block a:hover {
  color: var(--primaer_color_dark, var(--primaer_color_10, currentColor));
  text-decoration: underline;
  text-underline-offset: 4px;
}

.terms-block ul {
  margin: 0 0 18px;
  padding-left: 1.25rem;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.terms-block li {
  margin: 8px 0;
  font-size: 1rem;
  line-height: 1.65;
}

.terms-block li::marker {
  color: var(--primaer_color, currentColor);
}

@media (max-width: 760px) {
  .terms-section {
    padding: 64px 18px;
  }

  .terms-card {
    border-radius: 22px;
  }

  .terms-block {
    padding: 24px;
  }
}

/* Kontakt für Unternehmen */
.business-contact-section {
  padding: clamp(70px, 9vw, 120px) 20px;
  background: var(--primaer_color_01, transparent);
}

.business-contact-container {
  max-width: 1080px;
  margin: 0 auto;
}

.business-contact-card {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(330px, 0.8fr);
  gap: clamp(28px, 5vw, 56px);
  align-items: stretch;
  /* background: var(--primaer_color_02, #ffffff); */
  /* border: 1px solid var(--primaer_color_04, rgba(0, 0, 0, 0.08)); */
  border-radius: 28px;
  padding: clamp(32px, 6vw, 64px);
  /* box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08); */
}

.business-contact-kicker {
  margin: 0 0 14px;
  font-family: var(--default_text_font-family);
  font-size: var(--default_text_font-size);
  letter-spacing: var(--default_text_letter-spacing);
  font-weight: var(--default_text_font-weight);
  text-transform: uppercase;
  color: var(--primaer_color, var(--primaer_color_06, currentColor));
}

.business-contact-intro h1 {
  margin: 0;
  font-family: var(--default_text_headline_font-family);
  font-size: var(--default_text_headline_font-size);
  letter-spacing: var(--default_text_headline_letter-spacing);
  font-weight: var(--default_text_headline_font-weight);
  line-height: 1.05;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.business-contact-subline {
  margin: 18px 0 18px;
  max-width: 680px;
  font-family: var(--default_text_headline_font-family);
  font-size: var(--default_text_headline_font-size);
  letter-spacing: var(--default_text_headline_letter-spacing);
  font-weight: var(--default_text_headline_font-weight);
  line-height: 1.6;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.business-contact-intro p:not(.business-contact-kicker):not(.business-contact-subline) {
  margin: 0;
  max-width: 680px;
  font-family: var(--default_text_headline_font-family);
  font-size: var(--default_text_headline_font-size);
  letter-spacing: var(--default_text_headline_letter-spacing);
  font-weight: var(--default_text_headline_font-weight);
  line-height: 1.75;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.business-contact-person {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(24px, 4vw, 34px);
  border-radius: 22px;
  /* background: var(--primaer_color_01, rgba(0, 0, 0, 0.03)); */
  border: 1px solid var(--primaer_color_03, rgba(0, 0, 0, 0.06));
}

.business-contact-label {
  margin: 0 0 14px;
  font-family: var(--default_text_font-family);
  font-size: var(--default_text_font-size);
  letter-spacing: var(--default_text_letter-spacing);
  font-weight: var(--default_text_font-weight);
  color: var(--primaer_color, var(--primaer_color_06, currentColor));
}

.business-contact-person h2 {
  margin: 0 0 8px;
  font-family: var(--default_text_headline_font-family);
  font-size: var(--default_text_headline_font-size);
  letter-spacing: var(--default_text_headline_letter-spacing);
  font-weight: var(--default_text_headline_font-weight);
  line-height: 1.2;
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.business-contact-role {
  margin: 0 0 24px;
  font-family: var(--default_text_headline_font-family);
  font-size: var(--default_text_headline_font-size);
  letter-spacing: var(--default_text_headline_letter-spacing);
  font-weight: var(--default_text_headline_font-weight);
  line-height: 1.6;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.business-contact-links {
  display: grid;
  gap: 12px;
}

.business-contact-links a {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  color: var(--primaer_color, var(--primaer_color_07, currentColor));
  font-family: var(--default_text_font-family);
  font-size: var(--default_text_font-size);
  letter-spacing: var(--default_text_letter-spacing);
  font-weight: var(--default_text_font-weight);
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
}

.business-contact-links a:hover {
  color: var(--primaer_color_dark, var(--primaer_color_10, currentColor));
  text-decoration: underline;
  text-underline-offset: 4px;
}

@media (max-width: 860px) {
  .business-contact-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .business-contact-section {
    padding: 64px 18px;
  }

  .business-contact-card {
    border-radius: 22px;
  }

  .business-contact-person {
    padding: 24px;
  }
}

.business-contact-privacy {
  margin-top: 84px;
  padding: clamp(22px, 3vw, 30px);
  border-radius: 22px;
  background: var(--primaer_color_02, #ffffff);
  border: 1px solid var(--primaer_color_04, rgba(0, 0, 0, 0.08));
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}

.business-contact-privacy h2 {
  margin: 0 0 12px;
  font-family: var(--default_text_headline_font-family);
  font-size: var(--default_text_headline_font-size);
  letter-spacing: var(--default_text_headline_letter-spacing);
  font-weight: var(--default_text_headline_font-weight);
  color: var(--primaer_color_dark, var(--primaer_color_10, inherit));
}

.business-contact-privacy p {
  margin: 0;
  max-width: 880px;
  font-family: var(--default_text_font-family);
  font-size: var(--default_text_font-size);
  letter-spacing: var(--default_text_letter-spacing);
  font-weight: var(--default_text_font-weight);
  line-height: 1.75;
  color: var(--text_color, var(--primaer_color_08, inherit));
}

.business-contact-privacy a {
  color: var(--primaer_color, var(--primaer_color_07, currentColor));
  font-weight: 700;
  text-decoration: none;
}

.business-contact-privacy a:hover {
  color: var(--primaer_color_dark, var(--primaer_color_10, currentColor));
  text-decoration: underline;
  text-underline-offset: 4px;
}

.business-contact-privacy {
  background: var(--primaer_color_01, rgba(0, 0, 0, 0.03));
  box-shadow: none;
}

.head #main_nav
{
	font-family: 				var(--nav_font-family);
	font-size:					var(--nav_font-size);
	font-weight:				var(--nav_font-weight);
	letter-spacing:				var(--nav_letter-spacing);
	text-transform:				var(--nav_letter-spacing);
}

.head #main_nav ul
{
	list-style: 				none;
    display: 					flex;
	margin-top: 				0px;
	margin-bottom: 				0px;
}
.head #main_nav ul li
{
	margin-right: 				40px;
}

.head #main_nav ul li.site_link,
.language_button
{
	cursor: 					pointer;
	transition: 				all 0.5s ease-in-out;
	text-shadow: 				var(--primaer_color_1) 0px 0px 0px;

}

.head #main_nav ul li.site_link.active
{
	font-weight: 				bold;
}

.head #main_nav ul li.site_link:hover
{
	color: 						var(--primaer_color_1);
	text-shadow: 				var(--primaer_color_1) 0px 0px 5px;
}

.head #main_nav
{
	display: 					flex;
	justify-content: 			flex-end;
}
.head #main_nav > ul > li
{
	transform: 					translateY(2px);
}

.head .logo img
{
	height: 					var(--head_logo_height);
}

.head .logo
{
	line-height: 				0;
}

.bt_level_waehlen,
.rubrik.kontakt .kontakt_form .form_sendbutton
{
	display: 					inline-block;
	background-color: 			var(--primaer_color_3);
	color: 						var(--primaer_color_2);
	padding-left: 				15px;
	padding-right: 				15px;
	padding-top: 				10px;
	padding-bottom: 			10px;
	border-radius: 				20px;
	line-height: 				1;
	cursor: 					pointer;

	font-family: 				var(--modul_cta_font-family);
	font-size:					var(--modul_cta_font-size);
	font-weight:				var(--modul_cta_font-weight);
	letter-spacing:				var(--modul_cta_letter-spacing);
	text-transform:				var(--modul_cta_letter-transform)
}

.head .bt_level_waehlen
{
	font-family: 				var(--nav_cta_font-family);
	font-size:					var(--nav_cta_font-size);
	font-weight:				var(--nav_cta_font-weight);
	letter-spacing:				var(--nav_cta_letter-spacing);
}

.bt_level_waehlen
{
	text-transform:				var(--nav_cta_text-transform);
}

.bt_level_waehlen,
.bt_level_waehlen.with_arrow::after,
.rubrik.kontakt .kontakt_form .form_sendbutton
{
	transition:					transform 180ms ease,
								box-shadow 180ms ease,
								background-color 180ms ease;
}

.rubrik_content .bt_level_waehlen,
.rubrik.kontakt .kontakt_form .form_sendbutton
{
	padding-left: 				25px;
	padding-right: 				25px;
	padding-top: 				15px;
	padding-bottom: 			15px;
	border-radius: 				20px;
}

a:has(.bt_level_waehlen):hover
{
	border-bottom: 				1px solid transparent;
}

.with_arrow
{
	padding-right: 				20px;
}

.with_arrow::after
{
	content: 					'\27A4 ';
	position: 					absolute;
	right:						20px;
}

.bt_level_waehlen,
.rubrik.kontakt .kontakt_form .form_sendbutton
{
	position: 					relative;
}

.bt_level_waehlen:hover,
.rubrik.kontakt .kontakt_form .form_sendbutton:hover 
{
	background: 				#fff781;
	box-shadow: 				0 0px 8px rgba(255, 243, 109, 1);
}

.bt_level_waehlen:active 
{
	transform: 					translateY(0);
	box-shadow: 				0 4px 10px rgba(255, 243, 109, 0.25);
}

.bt_level_waehlen > span,
.rubrik.kontakt .kontakt_form .form_sendbutton > span
{
	position: 					relative;
	display: 					inline-block;
	transform: 					translateY(1px);
}

.bt_level_waehlen.with_arrow
{
	padding-right: 				40px;
}

.bt_level_waehlen.with_arrow::after
{
	top: 						16px;
}

.bt_level_waehlen.with_arrow:hover::after
{
	transform: 					translateX(5px);
}

@keyframes fadeOut 
{
	0%		{ opacity: 1; }
	70%		{ opacity: 1; }
	100% 	{ opacity: 0; }
}
@keyframes fadeInOut 
{
	0% 			{ opacity: 0; }
	30% 		{ opacity: 1; }
	70% 		{ opacity: 1; }
	100% 		{ opacity: 0; }
}
@keyframes fadeIn 
{
	0% 			{ opacity: 0; }
	30% 		{ opacity: 1; }
	100% 		{ opacity: 1; }
}

.hide
{
	display: 				none !important;
}

#did_dialogbox:empty
{
    display: none;
}
#did_dialogbox
{
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    overflow: auto;
    padding: 40px;
    padding-top: 90px;
    background: rgba(255,252,252,0.79);
}

#did_dialogbox > div
{
	width: 				100%;
	max-width: 			400px;
	background-color: 	rgba(255,252,252,1);
	border: 			rgba(0,0,0,0.78) 1px solid;
	box-shadow: 		2px 2px 5px rgba(0,0,0,0.78);
	padding: 			10px;
	position: 			absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	
	
    max-height: 		90vh;
    overflow: 			auto;
}


#did_pagebox:empty
{
    display: none;
}
#did_pagebox
{
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    overflow: auto;
    padding: 40px;
    padding-top: 90px;
    background: rgba(255,252,252,0.79);
}

#did_pagebox > div
{
	background-color: 	rgba(255,252,252,1);
	border: 			rgba(0,0,0,0.78) 1px solid;
	box-shadow: 		2px 2px 5px rgba(0,0,0,0.78);
	padding: 			10px;
	position: 			absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	
	
    height: 			90vh;
	width: 				90vw;
    overflow: 			auto;
}

#did_pagebox .dialog_close_btn
{
	position: 			sticky;
	top: 				0px;
	width: 				100%;
	user-select: 		none;
}
#did_pagebox .dialog_close_btn > div
{
	position: 			absolute;
	right: 				0px;
	padding: 			5px;
	color: 				#119911;
	background: 		#CDCFFF;
	
    margin-right: 		-10px;
    margin-top: 		-10px;
}
#did_pagebox .dialog_close_btn > div:hover
{
	cursor: 			pointer;
	background: 		#C1FFCE;
}
.edit_buttons .option_bar .icon-envelope2, .icon-envelope2.preview_example
{
	color: 				rgba(255,254,80,1.00) !important;
	text-shadow: 		0px 0px 2px #000000;
}

.flex_break 
{
  flex-basis: 				100%;
  height: 					0;
}
	

#ui-datepicker-div
{
	background-color: 		#F5F5F5;
	box-shadow: 			1px 1px 1px #000000;
	padding: 				5px;
}
#ui-datepicker-div .ui-widget-header, #ui-datepicker-div td[data-handler="selectDay"] a
{
	background-color: 		rgba(4,120,73,0.49);
	color: 					#000000;
}
#ui-datepicker-div td[data-handler="selectDay"] a:hover
{
	background-color: 		rgba(120,3,3,0.49);
	color: 					#ffffff;
}
#ui-datepicker-div td[data-handler="selectDay"].ui-datepicker-today a
{
	background-color: 		rgba(4,120,73,0.7);
}
#ui-datepicker-div td[data-handler="selectDay"] a.ui-state-active
{
	background-color: 		rgba(8,3,120,0.50);
	color: 					#ffffff;
}
#ui-datepicker-div thead
{
	color: 					#000000;
}

/* Desktop sicherstellen */
@media (max-width: 1024px) 
{
	:root
	{
		--content_max_width:			680px;
	}
}

@media (max-width: 699px) 
{
	.head #main_nav 
	{
		display: 						block;
	}

	:root
	{
		--content_max_width:			95%;
	}

	.rubrik_content .card_list_container
	{
		grid-template-columns: 			1fr;
		gap:							40px;
	}

	.rubrik_footer .card_list_container 
	{
		grid-template-columns: 			1fr;
		gap:							20px;
	}

	.tab_image_text_left,
	.rubrik_content .tab_image_text_left,
	.tab_image_text_right,
	.rubrik_footer .tab_image_text_right
	{
		grid-template-columns: 			1fr;
		gap:							20px;
	}

	.tab_image_text_left > div:nth-child(1),
	.tab_image_text_right > div:nth-child(1)
	{
		grid-column: 					1;
		grid-row: 						2;
	}

	.tab_image_text_left > div:nth-child(2),
	.tab_image_text_right > div:nth-child(2)
	{
		grid-column: 					1;
		grid-row: 						1;
	}

	.site_footer
	{
		display: 					grid;
		grid-template-columns: 		50% 1fr;
	}

	.site_footer > div:first-child
	{
		padding-bottom: 			30px;
		grid-column: 				span 2;
	}

	.site_footer > div.fussnote
	{
		grid-column: 			span 2;
	}
}

@media print 
{
	
}