/* 
 * Version: 2.1
 * File Description: Place here your custom CSS styles
*/

.kompetenzleft h2,.kompetenzright h2 {
	text-transform:none!important;
	letter-spacing:normal;
}

.mehr-link {
	white-space:nowrap;
}

.mehr-link span {
	white-space:nowrap;
}

/* Link styling for accessibility - keep minimal to avoid unwanted underlines */
.link-light {
	color:#fff;
	font-weight:500;
	position:relative;
	text-decoration:none;
}

/* Add subtle visual cue with icon and font-weight instead of underline */
.link-light .fa,
.link-light i {
	opacity:0.9;
}

.link-light:hover,
.link-light:focus {
	color:#fff;
	font-weight:600;
	text-decoration:none;
}

.link-light:hover .fa,
.link-light:hover i,
.link-light:focus .fa,
.link-light:focus i {
	opacity:1;
	transform:translateX(3px);
	transition:transform 0.2s ease;
}

#captcha {
	height:50px;
	width:180px;border:1px solid #dee2e6;
	border-radius:.25rem;
	display:inline-block;
	margin-right:.2rem;
}

#captcha-reload {
	height:40px;
	width:40px;padding:0;
	border-radius:.25rem;
	display:inline-flex;
	justify-content:center;
	align-items:center;
	border:none;
	outline:none;
	box-shadow:none;
	background-color:transparent;
}

#captcha-reload i {
	font-size:1.2rem;
	font-weight:400;
	color:#6b7071
}

#captcha-reload:focus,#captcha-reload:active {
	border:none!important;
	outline:none!important;
	box-shadow:none!important;
}

.captcha-left .form-label { 
	margin-bottom:0!important;
}

.captcha-right label[for="phrase"] {
	margin-bottom:5px;
}

hr {
	opacity:1!important;
	border-top:1px solid #ccc;
}

#form-message-top,#form-message-captcha {
	margin:1rem 0;margin-bottom:1rem;
	padding:.75rem 1rem;
	border:1px solid transparent;
	font-size:.95rem;
	line-height:1.4;
	border-radius:.375rem;
	display:none;}

.input-error {
	color:#842029!important;
	background-color:#f8d7da!important;
	border-color:#f5c2c7!important;
}

#form-message-top.alert-danger,#form-message-captcha.alert-danger {
	color:#842029;
	background-color:#f8d7da;
	border-color:#f5c2c7;
}

#form-message-top:not(.d-none),#form-message-captcha:not(.d-none) {
	display:block;
}

input:-webkit-autofill,textarea:-webkit-autofill,select:-webkit-autofill {
	box-shadow:0 0 0 1000px #fff inset!important;
	-webkit-text-fill-color:#212529!important;
}

.nav-item.d-lg-none>.nav-link:hover {
	background-color:#f8f8f8;
}

a {
	text-decoration:none;
}

a:hover {
	text-decoration:underline;
}

.navbar a,.navbar a:hover,.nav-link,.nav-link:hover,a.btn,a[class*="btn-"],a.button {
	text-decoration:none!important;
}

.subfooter a,.subfooter a:hover,.subfooter a i,.subfooter a i::before {
	text-decoration:none!important;
}

.subfooter a span {
	text-decoration:none;
}

.subfooter a:hover span {
	text-decoration:underline;
}

.list-inline-subfooter {
	margin:0;
	padding:0;}

.image-container {
	position:relative; display:inline-block;
}

.overlay-link {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	padding:0;
	background:rgba(30,30,30,.5);
	z-index:10;
}

.sidebar.contact-box .list i.fa {
	color:#09afdf!important;
}

.navbar-nav .nav-link {
	color:#333;
	transition:color .2s ease;
	text-decoration:none;
	outline:none;
}

@media (hover:hover) and (pointer:fine) {
	.navbar-nav .nav-link:hover{color:#09afdf;}
}

#kompetenzenCollapseMobile {
	overflow:hidden;
	max-height:0;
	opacity:0;
	transition:max-height .4s ease,opacity .3s ease;
	background-color:#fff!important;
	box-shadow:none;
	will-change:height;
}

#kompetenzenCollapseMobile.show {
	max-height:1000px;
	opacity:1;
	background-color:#fff!important;
}

#kompetenzenCollapseMobile * {
	background-color:#fff!important;
	box-shadow:none!important;
}

#kompetenzenCollapseMobile .divider {
	display:none!important;
}

#kompetenzenCollapseMobile .text-uppercase {
	margin-top:10px!important;margin-bottom:0!important;
}

#kompetenzenCollapseMobile .list-unstyled {
	margin-bottom:0!important;
}

#kompetenzen-toggle[aria-expanded="false"] {
	background-color:transparent!important;
	border-bottom:1px solid #f3f3f3!important;
}

#kompetenzen-toggle[aria-expanded="false"]::after {
	display:block!important;
}

#kompetenzen-toggle[aria-expanded="false"] .kompetenzen-label,#kompetenzen-toggle[aria-expanded="false"] .kompetenzen-icon {
	color:#333!important;
}

#kompetenzen-toggle[aria-expanded="false"]:hover,#kompetenzen-toggle[aria-expanded="false"]:focus {
	background-color:transparent!important;
	border-left:none!important;
	border-right:none!important;
	border-bottom:1px solid #f3f3f3!important;
}

#kompetenzen-toggle[aria-expanded="true"] {
	background-color:#fff!important;
	border-bottom:none!important;
}

#kompetenzen-toggle[aria-expanded="true"]::after {
	display:none!important;
}

body .navbar-nav .d-lg-none.nav-item:nth-child(2):not(:has(#kompetenzenCollapseMobile.show)) {
	background-color:transparent!important;
	border-radius:0!important;
	padding:0!important;
}

.nav-item.kompetenzen-dropdown-active {
	background-color:#fff!important;
	border-radius:0!important;
	padding:0!important;
	box-shadow:0 2px 8px rgba(0,0,0,.1)!important;
	outline:none!important;
	overflow:hidden!important;
	border:1px solid #f0f0f0!important;
}

html body .navbar-nav li.d-lg-none.nav-item:has(#kompetenzenCollapseMobile.show) {
	background-color:#fff!important;
	border-radius:0!important;
	padding:0!important;
	box-shadow:0 2px 8px rgba(0,0,0,.1)!important;
	outline:none!important;
	overflow:hidden!important;
	border:1px solid #f0f0f0!important;
}

.hamburger-icon {
	color:#777;
	transition:color .01s ease;
}

.hamburger--active {
	border-color:#5d98ad!important;
}

.border-kompetenz-active {
	border-color:#5d98ad!important;
}

.kompetenzen-icon {
	transition:transform .3s ease,color .3s ease;
	font-size:1rem;color:inherit;
}

.kompetenzen-icon--active {
	transform:rotate(90deg);
	color:#09afdf!important;
}

.text-kompetenz-active {
	color:#09afdf!important;
	font-weight:400!important;
}

.navbar-toggler {
	padding:4px 12px;
	height:40px;
	width:56px;
}

.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container {
	max-width:1110px;
}

.row.stats {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:stretch;
}

.row.stats>.col-lg-3,.row.stats>.col-6 {
	display:flex;
	flex-direction:column;}

.hc-item-box {
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:center;
	flex:1;
	height:100%;
	padding:20px;
	background-color:#fff;
	border:1px solid #ddd;
	text-align:center;
}

.hc-item-box .icon {
	margin-bottom:15px;
	flex-shrink:0;
}

.hc-item-box .content {
	flex-grow:1;
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.feature-box-2 {
	margin-bottom:0!important;
}

.feature-box.white-bg,.feature-box.bordered.shadow {
	padding-bottom:.75rem;
}

.feature-box.white-bg p:last-child,.feature-box.bordered.shadow p:last-child {
	margin-bottom:0;
}

.visually-hidden {
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0 0 0 0)!important;
	clip-path:inset(50%)!important;
	white-space:nowrap!important;
	border:0!important;
}

@media (prefers-reduced-motion:reduce) {

	html:focus-within {
		scroll-behavior:auto!important;
	}

	*,*::before,*::after {
		animation-duration:.001ms!important;
		animation-iteration-count:1!important;
		transition-duration:.001ms!important;
		scroll-behavior:auto!important;
	}

	.object-non-visible,[data-animation-effect],
	.btn-animated {
		animation:none!important;
		transition:none!important;
	}
}

/* Responsive Logo - ein SVG für alle Viewports */
.logo-responsive {
	width:180px;
	height:42px;
	display:block;
}

@media (min-width:992px) {
	.logo-responsive {
		width:216px;
		height:50px;
	}
}

.skip-link {
	position:absolute;
	left:-9999px;
	top:0;
	z-index:10000;
	padding:.5rem 1rem;
	background:#fff;
	border:2px solid #000;
	border-radius:.25rem;
	font-weight:bold;
	color:#000;
	text-decoration:none;
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:.25rem;
	line-height:1.4;
}

.skip-link:focus {
	/* Dynamic positioning via JavaScript - covers logo perfectly */
	left:var(--skip-link-left, 1rem);
	top:var(--skip-link-top, 1rem);
	width:var(--skip-link-width, 220px);
	height:var(--skip-link-height, 50px);
	max-height:var(--skip-link-max-height, 50px);
	box-shadow:0 4px 6px rgba(0,0,0,0.1);
	/* Ensure it stays above header but not blocking other content */
	z-index:999;
	/* Add vertical padding to text inside box */
	padding-top:.625rem;
	padding-bottom:.625rem;
}

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
	outline:3px solid currentColor;
	outline-offset:2px;
}

i[aria-hidden="true"] {
	pointer-events:none;
}

.navbar .dropdown-menu {
	--mega-link:#212529;
	--mega-link-hover:#19a7ce;
}

.navbar .dropdown-menu .menu-kompetenzen {
	text-transform:uppercase;
}

.navbar .dropdown-menu .menu-kompetenzen>a,.navbar .dropdown-menu .menu a {
	color:var(--mega-link);
	text-decoration:none;
	transition:color .15s ease-in-out;
}

.navbar .dropdown-menu .menu-kompetenzen>a:hover,.navbar .dropdown-menu .menu-kompetenzen>a:focus,.navbar .dropdown-menu .menu a:hover,.navbar .dropdown-menu .menu a:focus {
	color:var(--mega-link-hover);
	outline:0;
}

.navbar .dropdown-menu a:focus-visible {
	outline:2px solid var(--mega-link-hover);
	outline-offset:2px;border-radius:2px;
}

.navbar .dropdown-menu .divider[aria-hidden="true"] {
	pointer-events:none;
}

.dropdown-menu .menu-kompetenzen {
	margin-bottom:2px;
}

.dropdown-menu .menu-kompetenzen+.divider {
	margin-top:0;
	margin-bottom:9px;
}


#main-content .tp-arr-imgholder,#main-content .tp-arr-img-over {
	display:none!important;
}

#main-content .tp-bullets .tp-bullet {
	background:rgba(255,255,255,.55)!important;
	box-shadow:0 0 0 1px rgba(0,0,0,.15) inset!important;
}

#main-content .tp-bullets .tp-bullet:hover {
	background:rgba(255,255,255,.75)!important;
}

#main-content .tp-bullets .tp-bullet.selected {
	background:rgba(255,255,255,.95)!important;
}

#main-content .tp-bullets .tp-bullet:focus-visible {
	outline:2px solid rgba(255,255,255,.9);
	outline-offset:2px;
}


#backToTop.scrollToTop.circle {
	border:0!important;
	box-shadow:none!important;
	outline:none!important;
}

#backToTop.scrollToTop.circle::before,#backToTop.scrollToTop.circle::after {
	display:none!important;
}

#backToTop.scrollToTop.circle:focus-visible {
	outline:3px solid #19a7ce;
	outline-offset:3px;
	box-shadow:none;
}

#backToTop.scrollToTop.circle:hover {
	background-color:rgba(0,0,0,.55);
}

html {
	scroll-behavior:auto;
}

.slider-revolution-5-container .tp-caption.dark-translucent-bg,

.slider-revolution-5-container .tp-dottedoverlay,

.slider-revolution-5-container .tp-shape,

.slider-revolution-5-container .tp-bg-overlay {
	pointer-events:none!important;
}

.slider-revolution-5-container a,.slider-revolution-5-container button {
	pointer-events:auto;
	position:relative;
	z-index:60;
}

.scrollToTop {
	opacity:0;
	transform:translateY(8px);
	transition:opacity .2s ease,
	transform .2s ease;
	pointer-events:none;}

.scrollToTop.is-visible {
	opacity:1;transform:translateY(0);
	pointer-events:auto;
}

a:focus:not(:focus-visible),button:focus:not(:focus-visible) {
	outline:none;
	box-shadow:none;
}

[id] {
	scroll-margin-top:80px;
}

.scroll-arrow {
	position:relative;z-index:130;color:#fff;
}

.scroll-arrow i {
	font-size:20px;
	line-height:1;
}

@media (max-width:576px) {
	.scroll-arrow i{font-size:18px;}
}

.tp-caption .scroll-arrow i {
	font-size:inherit;
}

.breadcrumb .breadcrumb-item.active>span {
	color:#09afdf;
	text-decoration:none;
}

.breadcrumb .breadcrumb-item.active:hover>span,.breadcrumb .breadcrumb-item.active:focus>span {
	color:#09afdf;
	text-decoration:underline;
	cursor:default;
}

.banner .breadcrumb .breadcrumb-item.active:hover>span,.banner .breadcrumb .breadcrumb-item.active:focus>span {
	color:#09afdf!important;}

.breadcrumb {
	margin-bottom:0!important;
}

.breadcrumb-container {
	padding-top:.25rem;
	padding-bottom:.25rem;
}

.breadcrumb-container+.main-container {
	padding-top:.75rem;
}

.breadcrumb-container+.main-container>*:first-child {
	margin-top:0!important;
}

@media (max-width:576px) {
	.breadcrumb-container+.main-container{padding-top:.5rem;}
}

.breadcrumb .breadcrumb-item+.breadcrumb-item {
	padding-left:0!important;
}

.breadcrumb .breadcrumb-item.active {
	padding-left:0!important;
}

#intro-heading {
	text-transform:none!important;
	letter-spacing:normal;
}

.call-to-action h1.title,.call-to-action h2.title {
	font-size:33px;
	font-weight:700;
	font-family:inherit;
	text-transform:uppercase;
}

a.btn.moving:focus:not(:focus-visible) {
	outline:0!important;
	box-shadow:none!important;
}

a.btn.moving:focus-visible {
	outline:2px solid #09afdf;
	outline-offset:2px;box-shadow:none;
}

h2.title.title-uc {
	text-transform:uppercase!important;
	font-weight:400;
	font-size:28px;
	margin-bottom:15px;
	letter-spacing:.5px;
	text-align:center;
}

h2.title.no-upper {
	text-transform:none!important;
}

h2.title {
	font-family:"Raleway",
	sans-serif;font-size:33px;
	line-height:1.2;
	margin:0 0 .5rem;
	text-transform:uppercase;
}

h2.title.no-caps {
	text-transform:none;
}

h2.h3,h2.title.h3 {
	font-size:24px;
	line-height:1.2;
	text-transform:none;
}

.h1 {
	font-weight:700;
	text-transform:uppercase;
	line-height:1.2;
	margin:0 0 .5rem;
	color:#333
}

.sitemap .list-icons,.sitemap .sitemap-topics {
	list-style:none;
	margin:0;
	padding:0;
}

.sitemap .list-icons li,.sitemap .sitemap-topics li {
	margin:.35rem 0;
}

.sitemap .list-icons li::before,.sitemap .sitemap-topics li::before {
	content:none!important;
}

.sitemap .list-icons a,.sitemap .sitemap-topics a {
	position:relative;
	display:inline-block;
	padding-left:1.25rem;
	line-height:1.45;
	font-size:17px;
}

.sitemap .list-icons a::before,.sitemap .sitemap-topics a::before {
	content:"\f105";
	font-family:"Font Awesome 5 Pro";
	font-weight:900;
	position:absolute;
	left:0;
	top:.18em;
	line-height:1;
	color:currentColor;
	opacity:.95;}

.sitemap .list-icons a>i.fa-angle-right,.sitemap .sitemap-topics a>i.fa-angle-right {
	display:none!important;
}

.sitemap h4.h6,.sitemap h3.h6 {
	display:inline;
}

.sitemap .container.pv-20 {
	padding-top:20px;
	padding-bottom:20px;
}

.sitemap h2.h3 {
	margin-top:1.25rem;
	margin-bottom:.75rem;
}

.sitemap .col-md-3>h3.h6 {
	margin-top:1rem;
	margin-bottom:.5rem;
	font-weight:600;
}

.sitemap .row:first-of-type .col-md-3:first-child>h3.h6 {
	margin-top:.25rem;
}

@media (max-width:991.98px) {
	.sitemap .col-md-3 {
		margin-bottom:1.25rem;
	}
}

.sitemap .row:first-of-type>.col-lg-12>h2.h3 {
	margin-bottom:1.5rem;
}

@media (min-width:992px) {
	.sitemap .row:first-of-type>.col-lg-12>h2.h3 {
		margin-bottom:1.5rem;
	}
}

.sitemap .list-icons a:hover,.sitemap .sitemap-topics a:hover,.sitemap .list-icons a:focus-visible,.sitemap .sitemap-topics a:focus-visible {
	text-decoration:underline;
	text-underline-offset:.12em;
	text-decoration-thickness:1px;
}

.sitemap .list-icons a:hover h3,.sitemap .list-icons a:hover h4,.sitemap .list-icons a:hover span[role="heading"],.sitemap .sitemap-topics a:hover h3,.sitemap .sitemap-topics a:hover h4,.sitemap .sitemap-topics a:hover span[role="heading"],.sitemap .list-icons a:focus-visible h3,.sitemap .list-icons a:focus-visible h4,.sitemap .list-icons a:focus-visible span[role="heading"],.sitemap .sitemap-topics a:focus-visible h3,.sitemap .sitemap-topics a:focus-visible h4,.sitemap .sitemap-topics a:focus-visible span[role="heading"] {
	text-decoration:inherit;
}

.footer .list-icons a.contact-link {
	display:inline-flex;
	align-items:center;
	gap:.5rem;
	text-decoration:none;
}

.footer .list-icons a.contact-link .link-text {
	text-decoration:underline transparent;
	text-underline-offset:.15em;
	text-decoration-thickness:.08em;
	transition:text-decoration-color .15s ease;
}

.footer .list-icons a.contact-link:hover .link-text,.footer .list-icons a.contact-link:focus-visible .link-text {
	text-decoration-color:currentColor;
}

@supports not (text-decoration-thickness:.08em) {
	.footer .list-icons a.contact-link .link-text {
		text-decoration:none;
		border-bottom:1px solid transparent;
		padding-bottom:.08em;
		transition:border-color .15s ease;
	}
	.footer .list-icons a.contact-link:hover .link-text,.footer .list-icons a.contact-link:focus-visible .link-text {
		border-color:currentColor;
	}
}

:root {
	--focus-ring:#0d6efd;
}

.btn:focus-visible,a.smooth-scroll:focus-visible {
	outline:2px solid var(--focus-ring);
	outline-offset:2px;
	box-shadow:none;
}

.btn:focus:not(:focus-visible),a.smooth-scroll:focus:not(:focus-visible) {
	outline:none!important;
	box-shadow:none!important;
}

.btn:active,a.smooth-scroll:active {
	outline:none!important;
	box-shadow:none!important;
}


.h3 {
	color:#333;font-weight:500;
}

.h2 {
	color:#333;font-weight:600;
}

@media (max-width:991.98px){
	.header.fixed,.header.fixed-desktop {
		position:static!important;
	}
}

#kompetenzenCollapseMobile.collapsing {
	transition-duration:120ms;
	transition-timing-function:ease-out;
}

@media (prefers-reduced-motion:reduce) {
	#kompetenzenCollapseMobile.collapsing {
	transition-duration:1ms;
	}
}

.collapse.no-anim,.collapsing.no-anim {
	transition:none!important;
}

#navbar-collapse-1.no-anim,#navbar-collapse-1.collapsing.no-anim {
	transition:none!important;
}

#navbar-collapse-1.collapsing {
	transition-duration:.2s;
}

@media (prefers-reduced-motion:reduce) {
	#navbar-collapse-1.collapsing {
		transition-duration:0ms!important;
	}
}

#navbar-collapse-1.soft-close.collapsing {
	transition:height .28s cubic-bezier(.22,1,.36,1)!important;will-change:height;
}

.slider-revolution-5-container .rev_slider_wrapper,.slider-revolution-5-container .rev_slider {
	contain:layout paint;
	backface-visibility:hidden;
	transform:translateZ(0);
}

.breadcrumb-container .breadcrumb .breadcrumb-item:last-child {
	color:#09afdf;
}

.kompetenzright {
	padding-left:30px!important;
}

.kompetenzleft {
	padding-right:30px!important;
}

.bg-istplanbar {
	background-color:#09AFDF!important;
}

p {
	text-align:justify;
}

img.halfwidthcentered {
	width:50%;
	margin:auto;
}

img.fullwidthcentered {
	width:100%;
	margin:auto;
}

.fullheightcentered {
	height:100%;
}


#t1:after,#t4:after {
	content:" €";
}

#t2:after {
	content:" %";
}

#t3:after {
	content:" Tage";
}

#t3:before {
	content:"max. ";
}

.tl-go-digital,
.tl-inqa {
	width:250px;
	font-weight:700;
	font-size:17px;
}

.pt-10 {
	padding-top:10px;
}

.pt-20 {
	padding-top:20px;
}

button.submit-button>i.fa {
	margin-right:10px!important;
}

.blog-text p {
	font-size:16px;
	text-align:left;
}

.new-blockquote {
	border-left:2px solid #ccc;
	margin:1.5em 10px;
	padding:.5em 10px;
	quotes:"";}

.new-blockquote:before,.new-blockquote:after {
	content:none!important;}

div.blogcontent {
	margin-top:60px;
}

.footer {
	padding:40px 0 5px 0;
}

.blog-text ul li {
	font-size:16px;
}

.h4 {
	font-size:19px;
	color:#333;
	font-weight:400;
	line-height:1.2;
}

/* Align form fields with hamburger button at medium screens */
@media (min-width:768px) and (max-width:991.98px) {
	.contact-form .form-control,
	.contact-form .captcha-row {
		margin-right:56px;
	}
}

/* Equalize padding for CAPTCHA phrase input */
#phrase.form-control {
	padding-left:.75rem;
	padding-right:.75rem;
}

/* Performance: Reserve space for Revolution Slider to prevent layout shifts */
.slider-revolution-5-container {
	min-height: 450px;
	position: relative;
}

@media (min-width: 768px) {
	.slider-revolution-5-container {
		min-height: 550px;
	}
}

@media (min-width: 1200px) {
	.slider-revolution-5-container {
		min-height: 600px;
	}
}

/* Prevent flash of unstyled content for slider */
.slider-revolution-5-container .rev_slider_wrapper {
	visibility: visible !important;
}

/* Optimize slider rendering */
.rev-slidebg {
	will-change: transform;
	transform: translate3d(0, 0, 0);
}


/* Footer: Limit text width in INQA-Coaching section */
#footer-inqa-coaching + .separator-2 + .row .col p {
	max-width: 280px;
}

/* Force line break after strong tag in list-icons on inqa-coaching page */
.list-icons li strong {
	display: block;
	margin-bottom: 0.25rem;
}

.list-icons li span {
	display: block;
	text-align: left;
}

/* Two-column layout for Gestaltungsfelder on desktop */
.gestaltungsfelder-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
}

@media (min-width: 768px) {
	.gestaltungsfelder-grid {
		grid-template-columns: 1fr 1fr;
		gap: 2rem;
	}
}

/* Remove margin from last list item in first block on mobile */
.gestaltungsfelder-grid > div ul.list-icons {
	margin-bottom: 0;
}

.gestaltungsfelder-intro {
	font-weight: 600;
	margin-bottom: 0.75rem;
	text-align: left;
}

/* Lead-style text with reduced margin */
.lead-compact {
	font-size: 1.25rem;
	font-weight: 300;
	margin-bottom: 0.3rem;
}

/* Timeline: Adjust line to extend fully without fading */
/* Desktop: horizontal layout with connecting lines */
@media (min-width: 992px) {
	.timeline::before {
		background: rgba(0, 0, 0, 0.2) !important;
		top: 50px !important;
		bottom: 130px !important;
		height: auto !important;
	}

	.timeline .timeline-item:before {
		background: #fff !important;
		border: none !important;
		box-shadow: inset 0 0 0 10px rgba(0, 0, 0, 0.2) !important;
		z-index: 10 !important;
	}

	.timeline .timeline-item:after {
		background-color: rgba(0, 0, 0, 0.2) !important;
		width: 40px !important;
		z-index: 1 !important;
	}

	.timeline .timeline-item.pull-right:after {
		width: 40px !important;
		z-index: 1 !important;
	}

	/* Equal spacing: first item after "Projektidee" and last label "Projektabschluss" */
	.timeline .timeline-date-label:first-child {
		margin-bottom: 80px !important;
	}

	.timeline .timeline-item:last-of-type {
		margin-bottom: 80px !important;
	}

	.timeline .timeline-date-label:last-child {
		margin-top: 80px !important;
	}
}

/* Tablet (768px - 991px): horizontal layout - use default responsive behavior */
@media (min-width: 768px) and (max-width: 991px) {
	.timeline::before {
		background: rgba(0, 0, 0, 0.2) !important;
		top: 50px !important;
		bottom: 130px !important;
		height: auto !important;
	}

	.timeline .timeline-item:before {
		background: #fff !important;
		border: none !important;
		box-shadow: inset 0 0 0 10px rgba(0, 0, 0, 0.2) !important;
		z-index: 10 !important;
	}

	.timeline .timeline-item:after {
		background-color: rgba(0, 0, 0, 0.2) !important;
		z-index: 1 !important;
	}

	.timeline .timeline-item.pull-right:after {
		background-color: rgba(0, 0, 0, 0.2) !important;
		z-index: 1 !important;
	}

	/* Equal spacing: first item after "Projektidee" and last label "Projektabschluss" */
	.timeline .timeline-date-label:first-child {
		margin-bottom: 80px !important;
	}

	.timeline .timeline-item:last-of-type {
		margin-bottom: 80px !important;
	}

	.timeline .timeline-date-label:last-child {
		margin-top: 80px !important;
	}
}

/* Mobile only (below 768px): Vertical line for INQA-Coaching timeline */
@media (max-width: 767px) {
	.timeline::before {
		content: "" !important;
		position: absolute !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		width: 1px !important;
		top: 50px !important;
		bottom: 120px !important;
		height: auto !important;
		background: rgba(0, 0, 0, 0.2) !important;
		z-index: 0 !important;
	}

	.timeline .timeline-date-label {
		position: relative;
		z-index: 2;
		background-color: #fff;
	}

	.timeline .timeline-item {
		position: relative;
		z-index: 1;
		margin-bottom: 30px !important;
	}

	/* Equal spacing: first and last date-labels have same margin */
	.timeline .timeline-date-label:first-child {
		margin-bottom: 70px !important;
	}

	.timeline .timeline-date-label:last-child {
		margin-top: 70px !important;
	}
}

/* WCAG 2.4.6: Make H2#page-title look exactly like original H1 */
h2#page-title {
  font-size: 33px;
  font-weight: 700;
  text-transform: uppercase;
}

/* WCAG 2.4.6: Make H2.page-title look exactly like original H1 */
h2.page-title {
  font-size: 33px;
  font-weight: 700;
  text-transform: uppercase;
}

/* WCAG 2.4.6: Add font-weight to h2.title#page-title specifically */
h2.title#page-title {
  font-weight: 700;
}

/* Reduce spacing between breadcrumbs and blog detail content */
.blog-detail-container.pv-40 {
  padding-top: 5px;
  padding-bottom: 5px;
}

/* Reduce spacing between banner image and h2#page-title on competency pages */
.banner + .main-container,
.banner + section.main-container {
  padding-top: 40px;
}

/* Keine Unterstreichung beim Hover für aktive Links (im footer)*/
a[aria-disabled="true"]:hover,
a[aria-disabled="true"]:hover span,
.subfooter a[aria-disabled="true"]:hover span {
  text-decoration: none !important;
}

