
/* Start Custom Fonts CSS */

@font-face {
	font-family: 'Grtsk Tera';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-Tera.ttf') format('truetype');
}

@font-face {
	font-family: 'Grtsk Tera';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-BoldTera.ttf') format('truetype');
}

@font-face {
	font-family: 'Grtsk Giga Bold';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-BoldGiga.ttf') format('truetype');
}

@font-face {
	font-family: 'Grtsk Light';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-Light.woff2') format('woff2'), url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-Light.woff') format('woff'), url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-Light.ttf') format('truetype');
}

@font-face {
	font-family: 'Grtsk SemiBold';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-SemiBold.woff2') format('woff2'), url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-SemiBold.woff') format('woff'), url('https://www.bela-karriere.de/wp-content/uploads/Grtsk-SemiBold.ttf') format('truetype');
}
/* End Custom Fonts CSS */

/* Start Variables */
:root {
  --color-bg-transparent: transparent;
  --header-height: 100px;
  --max-width: 1440px;
  --transition-speed: 0.3s;
  --radius: 999px;
  --arrow-right: url("data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9ImUtZm9udC1pY29uLXN2ZyBlLWZhcy1hcnJvdy1yaWdodCIgdmlld0JveD0iMCAwIDQ0OCA1MTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE5MC41IDY2LjlsMjIuMi0yMi4yYzkuNC05LjQgMjQuNi05LjQgMzMuOSAwTDQ0MSAyMzljOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlMMjQ2LjYgNDY3LjNjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwbC0yMi4yLTIyLjJjLTkuNS05LjUtOS4zLTI1IC40LTM0LjNMMzExLjQgMjk2SDI0Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNHYtMzJjMC0xMy4zIDEwLjctMjQgMjQtMjRoMjg3LjRMMTkwLjkgMTAxLjJjLTkuOC05LjMtMTAtMjQuOC0uNC0zNC4zeiI+PC9wYXRoPjwvc3ZnPg==");
  --map-pin: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAxNyAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTguMjUgMTEuMjVDOS45MDY4NSAxMS4yNSAxMS4yNSA5LjkwNjg1IDExLjI1IDguMjVDMTEuMjUgNi41OTMxNSA5LjkwNjg1IDUuMjUgOC4yNSA1LjI1QzYuNTkzMTUgNS4yNSA1LjI1IDYuNTkzMTUgNS4yNSA4LjI1QzUuMjUgOS45MDY4NSA2LjU5MzE1IDExLjI1IDguMjUgMTEuMjVaIiBzdHJva2U9IiMxODE5MUMiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTE1Ljc1IDguMjVDMTUuNzUgMTUgOC4yNSAyMC4yNSA4LjI1IDIwLjI1QzguMjUgMjAuMjUgMC43NSAxNSAwLjc1IDguMjVDMC43NSA2LjI2MDg4IDEuNTQwMTggNC4zNTMyMiAyLjk0NjcgMi45NDY3QzQuMzUzMjIgMS41NDAxOCA2LjI2MDg4IDAuNzUgOC4yNSAwLjc1QzEwLjIzOTEgMC43NSAxMi4xNDY4IDEuNTQwMTggMTMuNTUzMyAyLjk0NjdDMTQuOTU5OCA0LjM1MzIyIDE1Ljc1IDYuMjYwODggMTUuNzUgOC4yNVoiIHN0cm9rZT0iIzE4MTkxQyIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K);
  --badge: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjM1IiBoZWlnaHQ9IjIzNSIgdmlld0JveD0iMCAwIDIzNSAyMzUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMDAuODcgNy43OTg2N0MxMDkuODY1IC0yLjA3MzUyIDEyNS4zOTcgLTIuMDczNTIgMTM0LjM4OCA3Ljc5ODY3QzE0MC4zNTQgMTQuMzQ1MSAxNDkuNTkgMTYuODE5NCAxNTguMDI5IDE0LjEzNDdDMTcwLjc1MSAxMC4wODI2IDE4NC4yMDUgMTcuODUxMiAxODcuMDYgMzAuODkzOUMxODguOTUzIDM5LjU0OSAxOTUuNzEgNDYuMzA1NyAyMDQuMzY1IDQ4LjE5OUMyMTcuNDA4IDUxLjA1NCAyMjUuMTc2IDY0LjUwMjQgMjIxLjEyNCA3Ny4yMjk2QzIxOC40MzQgODUuNjY5MyAyMjAuOTA5IDk0LjkwNTQgMjI3LjQ2IDEwMC44NzFDMjM3LjMzMiAxMDkuODY2IDIzNy4zMzIgMTI1LjM5OCAyMjcuNDYgMTM0LjM4OUMyMjAuOTE0IDE0MC4zNTQgMjE4LjQzOSAxNDkuNTkxIDIyMS4xMjQgMTU4LjAzQzIyNS4xNzYgMTcwLjc1MiAyMTcuNDA4IDE4NC4yMDYgMjA0LjM2NSAxODcuMDYxQzE5NS43MSAxODguOTU0IDE4OC45NTMgMTk1LjcxMSAxODcuMDYgMjA0LjM2NkMxODQuMjA1IDIxNy40MDkgMTcwLjc1NiAyMjUuMTc3IDE1OC4wMjkgMjIxLjEyNUMxNDkuNTkgMjE4LjQzNSAxNDAuMzU0IDIyMC45MSAxMzQuMzg4IDIyNy40NjFDMTI1LjM5MiAyMzcuMzMzIDEwOS44NiAyMzcuMzMzIDEwMC44NyAyMjcuNDYxQzk0LjkwNDQgMjIwLjkxNSA4NS42NjgzIDIxOC40NCA3Ny4yMjg2IDIyMS4xMjVDNjQuNTA2NCAyMjUuMTc3IDUxLjA1MyAyMTcuNDA5IDQ4LjE5OCAyMDQuMzY2QzQ2LjMwNDcgMTk1LjcxMSAzOS41NDggMTg4Ljk1NCAzMC44OTI5IDE4Ny4wNjFDMTcuODUwMiAxODQuMjA2IDEwLjA4MTcgMTcwLjc1NyAxNC4xMzM3IDE1OC4wM0MxNi44MjM0IDE0OS41OTEgMTQuMzQ5MSAxNDAuMzU0IDcuNzk3NyAxMzQuMzg5Qy0yLjA3NDQ5IDEyNS4zOTMgLTIuMDc0NDkgMTA5Ljg2MSA3Ljc5NzcgMTAwLjg3MUMxNC4zNDQxIDk0LjkwNTQgMTYuODE4NCA4NS42NjkzIDE0LjEzMzcgNzcuMjI5NkMxMC4wODE3IDY0LjUwNzQgMTcuODUwMiA1MS4wNTQgMzAuODkyOSA0OC4xOTlDMzkuNTQ4IDQ2LjMwNTcgNDYuMzA0NyAzOS41NDkgNDguMTk4IDMwLjg5MzlDNTEuMDUzIDE3Ljg1MTIgNjQuNTAxNCAxMC4wODI2IDc3LjIyODYgMTQuMTM0N0M4NS42NjgzIDE2LjgyNDQgOTQuOTA0NCAxNC4zNTAxIDEwMC44NyA3Ljc5ODY3WiIgZmlsbD0iI0UyMDAxQSI+PC9wYXRoPgogICAgCTwvc3ZnPg==);
}
/* End Variables */






body {
	font-family: "Grtsk Light", sans-serif !important;
}

h1 {
	color:rgb(0, 0, 0);
	display:block;
	font-family:"Grtsk Tera", sans-serif !important;
	font-size:18px;
	font-weight:400;
	hyphens:auto;
	letter-spacing:normal;
	line-height:28.8px;    
}


p {
	color:rgb(0, 0, 0);
	display:block;
	font-family:"Grtsk Light", sans-serif;
	font-size:18px;
	font-weight:400;
	hyphens:auto;
	letter-spacing:normal;
	line-height:28.8px;
}

#content_zone {
	max-width: 1140px !important;
}

.frame_zone h1 {
	color:rgb(0, 0, 0);
	display:block;
	font-family:"Grtsk Giga Bold", sans-serif !important;
	font-size:32px;
	font-weight:400;
}


#dialog-form, .cc-window, #frame_zone, #popup_zone, .ui-widget {
	font-family: "Grtsk Light", sans-serif;
}

.ui-selectmenu-button, button.ui-multiselect {
	font-family: "Grtsk Light", sans-serif;
}


#agb_checkbox.agreement_new+label, #job_alert_checkbox+label, #agree_pool_inclusion+label, #personal_consulting_activ.personal_agreement_new+label {
	font-family: "Grtsk Light", sans-serif;
}

#agb_checkbox.agreement_new+label {
	padding-left: 18px;
}

#agb_checkbox.agreement_new+label i.fa {
	margin: 0 15px 0 -18px
}


/* Jobliste */

.jobs_introduction_text > h1 {
	hyphens: none;
}

#volltext {
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
	border-top-left-radius: var( --radius ) !important;
	border-bottom-left-radius: var( --radius ) !important;
}

.ac_input{
	border-collapse: collapse;
}

.ac_results {
	font-family: 'Grtsk Light', sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: #000000;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
	border: 1px solid #4753D9;
	margin-top: -1px;
	margin-left: 20px;
	max-height: fit-content;
}

.ac_results li {
	border-bottom: 1px solid #4753D9;
	padding: 0;
}

.ac_results li:last-child {
	border-bottom: 0;
}

li.ac_over {
	background-color: #f5f5f5;
}

.autocomplete_item {
	margin: 10px;
	line-height: 1.5;
}

.autocomplete_item strong {
	font-family: 'Grtsk SemiBold';
	color: #4753D9;
}

.autocomplete_item span {
	font-style: normal;
	font-size: 14px;
	color: #000;
	font-family: 'Grtsk Light';
}

#filter_volltext, #filter_range {
	padding-right: 0;
}

#btn_reset_search.css_button {
	margin: 0;
}

#btn_submit_search a {
	border-radius: 0 !important;
}

#btn_reset_search a {
	border-bottom-right-radius: var( --radius );
	border-top-right-radius: var( --radius );
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}

#filter_area .extended_filter hr {
	height: 0px;
	border-top: 0px;
}

.joboffer_container {
	border: 1px solid #797979;
	border-radius: 0px;
	margin-bottom: 20px;
}

.joboffer_container:hover{
	box-shadow: none;
}

.joboffer_outer {
	border-left: none;
}

.joboffer_outer:hover {
	border-left: none;
}

.joboffer_inner {
	margin: 20px 30px;
	display: flex;
	flex-direction: column;
}

#jobslisting > div.jobs_introduction_text > p:nth-child(2) {
	font-family: "Grtsk SemiBold", sans-serif;
}

.joboffer_title_text.joboffer_box {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding-left: unset;
}

.joboffer_box.joboffer_informations{
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin-top: -2px;
}

.joboffer_title_text.joboffer_box > a {
	color:#4753D9;
	display:block;
	font-family:"Grtsk Giga Bold", sans-serif !important;
	font-size:18px;
	font-weight:400;
}

.job_details_second {
	font-family:"Grtsk SemiBold", sans-serif;
	font-size:14px;
	font-weight:normal;
	color: #000000;
	hyphens:auto;
}

.job_details_second::before {
	content: "Karrierelevel: ";
	font-family:"Grtsk Light", sans-serif;
}

.job_location {
	font-family:"Grtsk Semibold", sans-serif;
	font-size:14px;
	font-weight:normal;
	color: #1E2F7D;
	hyphens:auto;
	width: fit-content;
}

.job_standort {
	font-family:"Grtsk Semibold", sans-serif;
	font-size:16px;
	font-weight:normal;
	color: #1E2F7D;
	hyphens:auto;
	text-align: left;
}

.job_standort:hover {
	color: #1E2F7D;
}

.job_standort::before {
	content: "";
	display: inline-block;
	width: 24px;
	height: 16px;
	position: relative;
	top: 3px;
	right: 2px;
	background-color: #1E2F7D;
	-webkit-mask: var( --map-pin );
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask: var( --map-pin );
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	flex: 0 0 auto;
	transform-origin: center;
}

.job_standort:hover::before{
	background-color: #1E2F7D;
}

@media (max-width: 767px) {
	.jobs_introduction_text > h1 {
		font-size: 24px;
	}
	
	#volltext {
		border-bottom-right-radius: 0;
		border-top-right-radius: 0;
		border-top-left-radius: 0 !important;
		border-bottom-left-radius: 0 !important;
	}
	
	.ac_results {
		margin-left: 0px;
		width: calc(100vw - 22px);
		min-width: unset;
	}
	
	.ac_results li {
		white-space: normal;
	}
	
	#btn_submit_search, #btn_reset_search {
		display: inline-flex;
		width: 49%;
	} 
	
	#btn_submit_search a, #btn_reset_search a {
		width: 100%;
	} 
	
	#btn_submit_search a {
		border-radius: var( --radius ) 0 0 var( --radius ) !important;
	}
	
	#btn_reset_search a {
		border-bottom-right-radius: var( --radius );
		border-top-right-radius: var( --radius );
		border-top-left-radius: 0 !important;
		border-bottom-left-radius: 0 !important;
	}
}

@media (min-width: 768px) {
	#filter_area .group_line {
		display: flex;
		margin-bottom: unset;
		align-items: flex-start;
		justify-content: center;
	}
}

/* Stellenangebot */


@media (max-width: 767px) {
	.scheme-content.scheme-title > h1{
		font-size:20px;
	}
}

h2.scheme-headline {
	color:rgb(0, 0, 0);
	display:block;
	font-family:"Grtsk Tera", sans-serif !important;
	font-size:18px;
	font-weight:bold;
	hyphens:auto;
	letter-spacing:normal;
	line-height:28.8px; 
}

#jobTplContainer .scheme-additional-data li, .scheme-additional-data i {
	color: #1E2F7D;
}

.scheme-content.scheme-margin li::before {
	content: "";
	position: absolute;
	margin-left: -20px;
	margin-top: 6px;
	width: 14px;
	height: 14px;
	background-color: #E2001A;
	-webkit-mask: var(--badge) no-repeat center / contain;
	mask: var(--badge) no-repeat center / contain;
}

#jobTplContainer {
	border: none;
}

.scheme-introduction > div > section:nth-child(1), .scheme-contact{
	font-family: "Grtsk SemiBold", sans-serif;
}


.scheme-content .user-data {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#jobTplContainer .scheme-user ul {
	margin: 0;
	padding: 0;
}

#jobTplContainer .scheme-user ul li {
	font-size: 18px;
	line-height: 21.6px;
	letter-spacing: normal;
}

#jobTplContainer .scheme-user ul li:nth-child(1) {
	font-family:"Grtsk Tera", sans-serif !important;
	font-weight: 700;
	hyphens: manual;
}

#jobTplContainer .scheme-user ul li:nth-child(2) {
	font-size: 14px;
}


/* Jobalert */

#sticky_jobalert a {
	font-family: "Grtsk SemiBold", sans-serif;
	font-weight: normal;
	border-radius: var(--radius);
	position: relative;
	right: 10px;
	top: -75px;
	background-image: var( --badge );
	background-size: contain;
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	height: 100px;
	width: 100px;
	aspect-ratio: 1/1;
	text-align: center;
	line-height: 100px;
	transform: rotate(-15deg);
	
}

#sticky_jobalert a:hover {
	background-image: var( --badge );
	background-size: contain;
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	aspect-ratio: 1/1;
}

@media (max-width: 767px) {
	#sticky_jobalert a {
		font-size: 12px;
		margin: auto;
		top: 35px;
		padding: 15px 5px 15px 15px;
	}

	a.job_alert_link::after {
		width: 20px !important;
		height: 14px !important;
	}
}


/* Buttons */

.more_loads_link {
	font-family: "Grtsk SemiBold", sans-serif;
	font-weight: normal;
}

a.more_loads_link,
a.job_alert_link{
	display: inline-flex;
	align-items: center;
	border-radius: var( --radius );
}

a.more_loads_link::after,
a.job_alert_link::after, 
#btn_jobalert_send a::after,
#btn_online_application_send > a::after,
#btn_online_application > a::after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 18px;
	position: relative;
	top: 2px;
	background-color: #ffffff;
	-webkit-mask: var( --arrow-right );
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask: var( --arrow-right );
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	flex: 0 0 auto;
	animation: arrowBounce 600ms ease-out;
	transform-origin: center;
}

/* nur beim Hover/Focus abspielen */
a.more_loads_link:hover::after, a.more_loads_link:focus-visible::after,
a.job_alert_link:hover::after, a.job_alert_link:focus-visible::after,
#btn_jobalert_send a:hover::after, #btn_jobalert_send a:focus-visible::after,
#btn_online_application_send > a:hover::after, #btn_online_application_send > a:focus-visible::after,
#btn_online_application > a:hover::after, #btn_online_application > a:focus-visible::after {
	animation: arrowBounce 600ms ease-out;
}

/* sicherstellen, dass es beim erneuten Hover wieder startet */
a.more_loads_link::after, 
a.job_alert_link::after,
#btn_jobalert_send a::after,
#btn_online_application_send > a::after,
#btn_online_application > a::after {
	animation: none;
}

.frame_zone .css_button a {
	border-radius: var( --radius ) !important;
}

.frame_zone #content_zone #cvparser .css_button a, .frame_zone #content_zone .css_button.btn_xing a, .frame_zone #content_zone .css_button.btn_linkedin a, .frame_zone #content_zone .css_button.btn_finest_jobs a, .frame_zone .css_button a {
	font-family: "Grtsk SemiBold", sans-serif;
}

.upload .facade {
	border-radius: var(--radius);
}

.cc-allow {
	background-color: #1E2F7D;
	color: #ffffff;
	border-color: #1E2F7D;
}

.cc-btn {
	border-radius: var(--radius);
	border: 2px solid !important;
}

.cc-btn.cc-choose, .cc-btn.cc-deny {
	background-color: #ffffff;
	color: #1E2F7D;
	border-color: #1E2F7D;
}

.cc-revoke.cc-bottom {
	background-color: #1E2F7D;
}

/* Animationen */

@keyframes arrowBounce {
	0% {
		transform: translateX(0);
	}
	25% {
		transform: translateX(8px);
	}
	50% {
		transform: translateX(-2px);
	}
	75% {
		transform: translateX(4px);
	}
	100% {
		transform: translateX(0);
	}
}

/* Header */

	/* HEADER CONTAINER */
.site-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	background-color: #1E2F7D;
	box-shadow: 0 2px 10px rgba(0,0,0,0.05);
	transition: background-color var(--transition-speed) ease;
	padding: 0 20px;
}

/* Spezial-Klasse: Blauer Hintergrund wenn Menü offen */
.site-header.menu-open-bg {
	background-color: #1E2F7D !important;
}

/* LAYOUT */
.header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: var(--max-width);
	margin: 0 auto;
	height: var(--header-height);
}

/* LOGO */
.site-logo a {
	display: block;
	line-height: 0;
	text-decoration: none;
}
.site-logo img {
	display: block;
	max-height: 55px;
	width: auto;
	transition: opacity 0.3s;
}

/* NAVIGATION DESKTOP */
.main-navigation {
	flex-grow: 1;
	display: flex;
	justify-content: flex-end;
	margin-right: 40px;
}

.nav-list {
	display: flex;
	list-style: none;
	gap: 30px;
	margin: 0;
	padding: 0;
}

.nav-item {
	position: relative;
	display: flex;
	align-items: center;
}

.nav-link {
	background: none;
	border: none;
	cursor: pointer;
	color: #ffffff;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 25px 0;
	transition: color 0.3s;
	text-decoration: none;
	font-family: "Grtsk SemiBold", sans-serif;
	font-size: 18px;
	font-weight: normal;
	height: 18px;
	letter-spacing: 0.2px;
	line-height: 18px;
}

.nav-link:hover {
	color: #E2001A;
}

.nav-link i {
	font-size: 0.8em;
	transition: transform 0.3s ease;
}

/* Pfeil Rotation */
.nav-item:hover .nav-link i,
.nav-link[aria-expanded="true"] i {
	transform: rotate(180deg);
}

/* MEGA MENU DROPDOWN */
.dropdown-menu {
	position: fixed;
	top: var(--header-height);
	left: 0;
	width: 100%;
	background: #1E2F7D;
	border-top: 2px solid #1E2F7D;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	padding: 30px 20px;
	z-index: 1100;
	text-align: left;
}

/* Hover Logik für Desktop */
@media (min-width: 1025px) {
	.nav-item:hover .dropdown-menu {
		opacity: 1;
		visibility: visible;
	}
}

.dropdown-inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 50px;
	max-width: var(--max-width);
	margin: 0 auto;
}

.dropdown-item {
	text-decoration: none;
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 8px;
	border-radius: 4px;
	transition: background-color 0.2s;
	color: #ffffff;
}

.dropdown-item:hover {
	color: #E2001A;
}

.dd-title {
	font-family: "Grtsk SemiBold", sans-serif;
	font-size: 18px;
	font-weight: normal;
	height: 26px;
	letter-spacing: 0.5px;
	line-height: 26px;
}

.dd-text {
	font-family: "Grtsk Light", sans-serif;
	font-size: 12px;
	font-weight: 400;
	height: 26px;
	letter-spacing: 0.5px;
	line-height: 26px;
	color: #ffffff;
	margin-left: 16px;
}

/* CTA BUTTON */
.header-cta {
	flex-shrink: 0;
}

.cta-button {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background-color: #E2001A;
	color: #ffffff;
	padding: 12px 24px;
	text-decoration: none;
	font-weight: 600;
	font-size: 14px;
	transition: background-color 0.3s;
	border-radius: 999px;
}

.cta-button:hover {
	background-color: #000;
}

/* MOBILE TOGGLE */
.menu-toggle {
	background: none;
	border: none;
	font-size: 24px;
	cursor: pointer;
	color: #ffffff;
	z-index: 1200;
	padding: 10px;
}

.menu-toggle {
	visibility: hidden;
	pointer-events: none; /* verhindert Klick-/Fokus-Diebstahl */
}
@media (max-width: 1024px) {
	.menu-toggle {
		visibility: visible;
		pointer-events: auto;
	}
}

/* Farb-Override wenn Menü offen (für weißen Text auf blauem BG) */
.site-header.menu-open-bg .menu-toggle,
.site-header.menu-open-bg .nav-link,
.site-header.menu-open-bg .dd-title,
.site-header.menu-open-bg .dd-text {
	color: #fff !important; 
}

/* RESPONSIVE STYLES (TABLET & MOBILE) */
@media (max-width: 1024px) {
	.menu-toggle {
		display: block;
	}

	.header-cta {
		display: none; 
	}

	.nav-list {
		position: fixed;
		top: var(--header-height);
		left: 0;
		width: 100%;
		height: calc(100vh - var(--header-height));
		background: #1E2F7D;
		flex-direction: column;
		align-items: flex-start;
		padding: 0;
		overflow-y: auto;
		transform: translateX(100%);
		transition: transform 0.3s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	}

	.main-navigation.is-open .nav-list {
		transform: translateX(0);
	}

	.nav-item {
		width: 100%;
		flex-direction: column;
		align-items: flex-start;
	}

	.nav-link {
		width: 100%;
		justify-content: space-between;
		padding: 20px 30px;
		color: #fff;
		font-size: 18px;
	}

	/* Mobile Dropdown Reset */
	.dropdown-menu {
		position: static;
		width: 100%;
		transform: none;
		opacity: 1;
		visibility: visible;
		box-shadow: none;
		border: none;
		border-radius: 0;
		padding: 0;
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.3s ease-out;
	}
	
	.nav-link[aria-expanded="true"] + .dropdown-menu {
		max-height: 1200px;
	}

	.dropdown-inner {
		grid-template-columns: 1fr;
		gap: 0;
		padding: 10px 0;
	}

	.dropdown-item {
		padding: 15px 30px;
		border-radius: 0;
	}

	.dd-title { color: #fff; font-size: 16px; }
	.dd-text { color: rgba(255,255,255,0.7); }
}

/* Toggle Icons Logik */
.menu-toggle .close-icon { display: none; }
.menu-toggle[aria-expanded="true"] .open-icon { display: none; }
.menu-toggle[aria-expanded="true"] .close-icon { display: block; }


/* Footer */
body {
	font-family: 'Grtsk Light', sans-serif;
	font-size: 18px;
	line-height: 1.6;
	color: #000000;
}

a {
	text-decoration: none;
	color: inherit;
	transition: color 0.3s;
}

/* Kontakt & Quicklinks Section */
.contact-quicklinks {
	background: linear-gradient(90deg, #E2001A 60%, #FFFFFF 60%);
	display: flex;
	max-width: 100%;
	margin-top: 80px;
}

.contact-quicklinks-grid {
	display: grid;
	grid-template-columns: 60% 40%;
	width: 100%;
	max-width: var(--max-width);
	margin: 0 auto;
}

.contact-section {
	background-color: #E2001A;
	padding: 3.75rem 6rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.contact-section h3 {
	font-family: 'Grtsk Tera', sans-serif;
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.38;
	color: #000000;
	margin-bottom: 0.9rem;
	display: inline;
	background: #FFFFFF;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	padding: 0.2rem 0.5rem;
}

.contact-section h3 strong {
	font-family: 'Grtsk Tera', sans-serif;
	font-weight: 700;
}

.heading-wrapper {
	margin-bottom: 0.9rem;
	line-height: 1.38;
}

.contact-section p {
	color: #FFFFFF;
	margin-bottom: 2rem;
	font-size: 18px;
	line-height: 1.6;
	width: 100%;
}

.contact-section p b {
	font-family: 'Grtsk SemiBold', sans-serif;
	font-weight: normal;
}

.contact-button {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	background: transparent;
	color: #FFFFFF;
	border: 1px solid #FFFFFF;
	border-radius: 99px;
	padding: 0.75rem 1.5rem;
	font-family: 'Grtsk SemiBold', sans-serif;
	font-size: 18px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s;
}

.contact-button:hover {
	background-color: rgba(255, 255, 255, 0.1);
}

.contact-button svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
}

.quicklinks-section {
	background-color: #FFFFFF;
	padding: 7.5rem 5rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.quicklinks-section h4 {
	font-family: 'Grtsk Tera', sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	color: #000000;
	margin-bottom: 1rem;
}

.quicklinks-section h4 strong {
	font-family: "Grtsk Giga Bold", Sans-serif !important;
	font-weight: 700;
}

.quicklinks-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.quicklinks-list a {
	color: #4753D9;
	font-size: 18px;
	line-height: 1.6;
	text-decoration: underline;
	font-family: 'Grtsk SemiBold', sans-serif;
	font-weight: normal;
}

.quicklinks-list a:hover {
	color: #E2001A;
}

/* Main Footer */
.main-footer {
	background-color: #1E2F7D;
	color: #FFFFFF;
	padding: 2.5rem 0;
}

.footer-container {
	max-width: var(--max-width);
	margin: 0 auto;
	padding: 0 1.5rem;
}

.footer-logo {
	margin-bottom: 2rem;
}

.footer-logo img {
	width: 125px;
	height: auto;
}

.footer-content {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 4rem;
	margin-bottom: 2.5rem;
	align-items: start;
}

.footer-column h4 {
	font-family: 'Grtsk SemiBold', sans-serif;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 1.25rem;
}

.footer-menu {
	list-style: none;
}

ul.footer-menu {
	padding: 0;
}

.footer-menu li {
	margin-bottom: 10px;
	line-height: 18px;
}

.footer-menu a {
	font-size: 12px;
	line-height: 1;
	color: #FFFFFF;
	font-family: 'Grtsk Tera', sans-serif;
}

.footer-menu a:hover {
	color: #C8D5DC;
}

.footer-social {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.5rem;
	align-self: end;
}

.footer-social h6 {
	font-family: "Grtsk SemiBold", sans-serif;
	font-size: 18px;
	font-weight: normal;
	line-height: 26px;
	margin-bottom: 0.5rem;
}

.social-icons {
	display: flex;
	gap: 20px;
}

.social-icons a {
	color: #FFFFFF;
	font-size: 23px;
	transition: color 0.3s;
}

.social-icons a:hover {
	color: #C8D5DC;
}

.social-icons svg {
	width: 23px;
	height: 23px;
	fill: currentColor;
}

.footer-divider {
	border: none;
	border-top: 1px solid #FFFFFF;
	margin: 0;
	margin-bottom: 2.5rem;
}

.footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
}

.footer-copyright {
	font-size: 12px;
	font-family: 'Grtsk Tera', sans-serif;
}

.footer-legal {
	display: flex;
	list-style: none;
	gap: 2rem;
}

.footer-legal a {
	font-size: 12px;
	font-family: 'Grtsk Tera', sans-serif;
}

.footer-legal a:hover {
	color: #C8D5DC;
}

/* Tablet Styles */
@media (max-width: 1024px) {
	.contact-quicklinks-grid {
		grid-template-columns: 1fr;
	}

	.contact-section {
		padding: 2.24rem;
	}

	.quicklinks-section {
		padding: 2.25rem;
	}

	.quicklinks-list {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 1rem 3rem;
	}

	.footer-logo {
		text-align: center;
	}

	.footer-content {
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	.footer-social {
		grid-column: 1 / -1;
		align-items: center;
		align-self: auto;
		flex-direction: row;
		justify-content: center;
	}
}

/* Mobile Styles */
@media (max-width: 767px) {
	body {
		font-size: 14px;
	}

	.contact-section {
		padding: 3.75rem 1rem 3rem;
		max-width: calc( 100vw - 2rem);
	}

	.contact-section h3 {
		font-size: 1.5rem;
	}

	.contact-section p {
		font-size: 14px;
	}

	.contact-button {
		font-size: 14px;
	}

	.quicklinks-section {
		padding: 3rem 1rem 3.75rem;
	}

	.quicklinks-list {
		flex-direction: column;
		gap: 4px;
	}

	.quicklinks-list a {
		font-size: 14px;
	}

	.main-footer {
		padding: 1rem 0 5rem;
	}

	.footer-logo img {
		width: 110px;
	}

	.footer-content {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.footer-column h4 {
		font-size: 14px;
		margin-bottom: 5px;
	}

	.footer-menu a {
		font-size: 14px;
	}

	.footer-menu li {
		margin-bottom: 8px;
	}

	.footer-social {
		flex-direction: row;
		justify-content: flex-start;
		align-items: center;
		gap: 1rem;
	}

	.footer-social h6 {
		font-size: 14px;
		margin-bottom: 0;
	}

	.social-icons {
		gap: 1rem;
	}

	.social-icons svg {
		width: 18px;
		height: 18px;
	}

	.footer-divider {
		margin-bottom: 1.5rem;
	}

	.footer-bottom {
		flex-direction: column;
		text-align: center;
		gap: 0.5rem;
	}

	.footer-copyright,
	.footer-legal a {
		font-size: 12px;
	}

	.footer-legal {
		gap: 1rem;
		padding: 0;
	}
}



#rexx_footer {display: none;}