/*
CTC Separate Stylesheet
Updated: 2025-02-20 09:51:08
*/
:root {
	--fancybox-content-bg:#000;
	--fancybox-content-color:#fff;
	--f-button-width: 50px !important;
    --f-button-height: 50px !important;
	 --f-button-svg-width:50px !important;
    --f-button-svg-height:50px !important;
}
html {
	font-size:19px;
}
.lead-size {
	font-size:var(--e-global-typography-82eb62f-font-size);
}
.mb-3 {
	margin-bottom:1rem !important;
}
body .fancybox__content {
	max-width:90%;
	padding:6vw 2rem;
	min-width: 300px;
}
body .fancybox-inner {
	max-width:min(100%, 1320px);
	display:block;
	margin:0 auto;
}
.fancybox__content>.f-button.is-close-btn {
	top:20px !important;
	right:20px !important;
	background:transparent !important;
}
.custom-table td{
	padding:15px 0 !important;
	border:none !important; 	
	border-top:1px solid black !important;
	background-color:transparent !important;
	vertical-align:middle;
	font-size:1rem;
}
.custom-table td:first-child {
	white-space:nowrap;
}
.custom-table td + td {
	padding-left:15px !important;
	
}
.custom-table .color-red td {
	border-color:var(--e-global-color-primary) !important;
	color:var(--e-global-color-primary);
}
.custom-table .color-red + tr td {
	border-color:var(--e-global-color-primary) !important;
}
.custom-table p:last-child {
	margin-bottom:0 !important;
}
.custom-table tr:last-child td {
	border-bottom:1px solid black !important;
}
.custom-table tr.color-red:last-child td {
	border-color:var(--e-global-color-primary) !important;
}
.text-center {
	text-align:center;
}
.black-link {
	color:black;
}
/* Timeline */
.timeline-items{
	position:relative;
}
.timeline-item {
	display:flex;
	justify-content:space-between;
	gap:240px;
	margin-bottom:120px;
	position:relative;
	align-items:center;
}
.timeline-container-title:after {
	content:" ";
	position:absolute;
	left:0;
	right:0;
	z-index:0;
	top:0;
	bottom:-40px;
	background: rgb(245,245,245);
background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 38%);

}
.timeline-container-title span {
	
}
.timeline-container-inner {
	position:relative;
	z-index:1;
	flex-direction:column;
}
.timeline-container-inner > * {
	flex:1;
}
.timeline-container-inner > h2 {
	flex:2;
	margin-bottom:0;
}
.timeline-container-title {
	z-index:5;
	padding:15px 0 25px 0;
}
.timeline-item-column {
	flex:1;
}
.text-column {

}
.text-column-text {
	max-width:450px;
	display:block;
	margin:0 auto 0 0;
}
.position-0 .text-column-text {
	margin:0 0 0 auto;
}
.position-1 .text-column {
	order:2;
}
.position-1 .image-column {
	order:1;
}
.timeline-item-title {
	font-weight:700;
	margin-bottom:0;
}
.timeline-item-images {
	display:flex;
	flex-wrap:wrap;
	gap:15px;
}
.image-layout-1 .timeline-item-images {
	gap:0;
}
.image-layout-1 .image-2 {
	margin-top:150px;
	margin-left:-50px;
}
.multiple-images .timeline-item-image-container {
	width:calc(50% - 15px);
}
.timeline-line {
	width:4px;
	height:0%;
	top:0;
	left:calc(50% - 2px);
	border-radius:2px;
	position:absolute;
	background-color:var(--e-global-color-primary);
}
.timeline-container-inner {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center
}
.timeline-item-dot {
	background-color:var(--e-global-color-primary);align-content
	display:inline-block;
	width:20px;
	height:20px;
	border-radius:50%;
	position:absolute;
	top:calc(50% - 10px);
	left:calc(50% - 10px);
}
.skip-history {
	opacity:0;
	transition:all ease 0.5s;
}
.sticked .skip-history {
	opacity:1;
	color:var(--e-global-color-primary)!important;
}

/* Contact Form */
.contact-row {
	margin-bottom:15px;
	margin-left:-15px;
	margin-right:-15px;
	display:flex;
}
.contact-column {
	padding:0 7.5px;
	flex:1;
}
.contact-column p {
	margin-bottom:0;
}
.contact-container select {
	color:var(--e-global-color-primary) !important;
}
::-webkit-input-placeholder { color:var(--e-global-color-primary); }
::-moz-placeholder { color:var(--e-global-color-primary); }
:-ms-input-placeholder {color:var(--e-global-color-primary);  }


.contact-container input[type=date], .contact-container input[type=email], .contact-container input[type=number], .contact-container input[type=password], .contact-container input[type=search], .contact-container input[type=tel], .contact-container input[type=text], .contact-container input[type=url], .contact-container select, .contact-container textarea {
	border:none;
	border-radius:50px;
	padding:15px 30px
}

.contact-container textarea {
	border-radius:20px;
}
.contact-container select {
	appearance: none; /* Standard-Styling entfernen */
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  
  /* Eigener Chevron (Base64-Icon) */
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDE2IDgiIHZlcnNpb249IjEuMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNNCAybDQgNCA0LTQiIHN0cm9rZT0iI0NDMDgzOSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+");
  background-repeat: no-repeat;
  background-position: right 30px center;
  background-size: 20px;
	
}
.wpcf7-submit {
	margin-top:30px;
}
.wpcf7-list-item .wpcf7-list-item-label:before {
	content:" ";
	width:15px;
	height:15px;
	border-radius:1px;
	border:1px solid var(--e-global-color-primary);
	display:inline-block;
	margin-right:10px;
}
.wpcf7-list-item input:checked + .wpcf7-list-item-label:before {
	background-color: var(--e-global-color-primary);	
}
.wpcf7-list-item input {
	opacity:0;
	position:absolute;
}
.wpcf7-list-item {
	position:relative;
}
.wpcf7 button, .wpcf7 input, .wpcf7 optgroup, .wpcf7 select, .wpcf7 textarea {
	font-size:17px;
}
/* Contact Form End */

/* Polylang */
.polylang_langswitcher {
	display:flex;
	list-style:none;
	margin-left:0;
	padding-left:0;
	gap:10px;
}
@media (max-width:991px) {
	html {
		font-size:18px;
	}
}
@media (max-width:1200px) {
	.timeline-item {
		gap:150px;
	}
}
@media (max-width:991px) {
	html {
		font-size:18px;
	}
	.timeline-item {
		flex-direction:column;
		flex-wrap:wrap;
		gap:30px;
		padding-left:25px;
		margin-bottom:60px;
	}
	.text-column-text {
		max-width:100%;
	}
	.timeline-line {
		left:0;
	}
	.timeline-item-dot {
		left:-8px;
	}
	.timeline-item-column {
		width:100%;
	}
	.timeline-item-column.text-column{
		order:1 !important;
	}
	.timeline-item-column.image-column {
		order:2 !important;
	}
	.contact-row {
		flex-wrap:wrap;
		
	}
	.contact-column {
		flex:initial;
		width:100%;
		
	}
	.contact-column + .contact-column {
		margin-top: 15px;
	}
}

@media (max-width:767px) {
	body .fancybox__content {
		min-width: 100px;
	}
	html {
		font-size:16px;
	}
}