html{ font-size: 16px; scroll-behavior: smooth; }

/* WPBakery "Extra class name": vertical crop, horizontally centred.
   0 = top, 50 = centre, 100 = bottom. Applies to the element carrying the class.
   Specificity also overrides existing hero/mobile background-position rules. */
#page .bg-pos-0   { background-position: center 0% !important; }
#page .bg-pos-10  { background-position: center 10% !important; }
#page .bg-pos-20  { background-position: center 20% !important; }
#page .bg-pos-30  { background-position: center 30% !important; }
#page .bg-pos-40  { background-position: center 40% !important; }
#page .bg-pos-50  { background-position: center 50% !important; }
#page .bg-pos-60  { background-position: center 60% !important; }
#page .bg-pos-70  { background-position: center 70% !important; }
#page .bg-pos-80  { background-position: center 80% !important; }
#page .bg-pos-90  { background-position: center 90% !important; }
#page .bg-pos-100 { background-position: center 100% !important; }

.clear{ clear:both; }
.left{float:left;}
.right{float:right;}
.textleft{text-align:left;}
.textright{text-align:right;}
.textcenter{text-align:center;}
img{ vertical-align:bottom; }

.nomargin{ margin:0; }
.nomargin-top{ margin-top:0; }
.nomargin-bottom{ margin-bottom:0; }

.nopadding{ padding:0; }
.nopadding-top{ padding-top:0; }
.nopadding-bottom{ padding-bottom:0; }

.fullheight{ min-height:100vh; }
.fullheight-90{ min-height:90vh; }
.fullheight-80{ min-height:80vh; }
.fullheight-70{ min-height:70vh; }
.fullheight-60{ min-height:60vh; }
.fullheight-50{ min-height:50vh; }
.fullheight-40{ min-height:40vh; }
.fullheight-30{ min-height:30vh; }
.fullheight-20{ min-height:20vh; }

.uppercase{ text-transform:uppercase; }
.normalcase{ text-transform:none; }

.wpb_single_image.borderRadius img,
section.borderRadius,
.vc_row.borderRadius,
.wpb_column.borderRadius,
.wpb_text_column.borderRadius{
	border-radius: var(--border-radius);
	overflow: hidden;
}

/* Reverse Grid. Reihenfolge der Spalten ändert sich */
@media (max-width: 992px) {
	.vc_row.reverse-grid-992 .wpb_column.first{
		order: 2;
	}
	.vc_row.reverse-grid-992 .wpb_column.second{
		order: 1;
	}
}

h1,h2,h3,h4{
	text-wrap:balance;
	margin-bottom:24px;
	letter-spacing: 0em;
}
p{
	margin-bottom:24px;
}
b, strong{
	font-weight:600;
}

.wpb_single_image.object-top img{
	object-position: 50% 0%;
}
.wpb_single_image.object-top-10 img{
	object-position: 50% 10%;
}
.wpb_single_image.object-top-20 img{
	object-position: 50% 20%;
}
.wpb_single_image.object-top-30 img{
	object-position: 50% 30%;
}
.wpb_single_image.object-bottom img{
	object-position: 50% 100%;
}
.wpb_single_image.object-bottom-10 img{
	object-position: 50% 90%;
}
.wpb_single_image.object-bottom-20 img{
	object-position: 50% 80%;
}
.wpb_single_image.object-bottom-30 img{
	object-position: 50% 70%;
}

@media (max-width: 768px) {
	.wpb_single_image.mobile-768-square img{
		aspect-ratio: 1 / 1;
		object-fit: cover;
	}
}

/* --- Standard-Paddings --------------------------------------------------------------------------------------------- */
.padding-top{
	padding-top: var(--standard-padding-top);
}
.padding-top-half{
	padding-top: calc( var(--standard-padding-top) / 2 );
}
.padding-top-quarter{
	padding-top: calc( var(--standard-padding-top) / 4 );
}
.padding-top-double{
	padding-top: calc( var(--standard-padding-top) * 2 );
}
.padding-top-triple{
	padding-top: calc( var(--standard-padding-top) * 3 );
}
.padding-bottom{
	padding-bottom: var(--standard-padding-bottom);
}
.padding-bottom-half{
	padding-bottom: calc( var(--standard-padding-bottom) / 2 );
}
.padding-bottom-quarter{
	padding-bottom: calc( var(--standard-padding-bottom) / 4 );
}
.padding-bottom-double{
	padding-bottom: calc( var(--standard-padding-bottom) * 2 );
}
.padding-bottom-triple{
	padding-bottom: calc( var(--standard-padding-bottom) * 3 );
}
/* --- Standard-Margins --------------------------------------------------------------------------------------------- */
.margin-top{
	margin-top: var(--standard-margin-top);
}
.margin-top-half{
	margin-top: calc( var(--standard-margin-top) / 2 );
}
.margin-top-quarter{
	margin-top: calc( var(--standard-margin-top) / 4 );
}
.margin-top-double{
	margin-top: calc( var(--standard-margin-top) * 2 );
}
.margin-top-triple{
	margin-top: calc( var(--standard-margin-top) * 3 );
}
.margin-bottom{
	margin-bottom: var(--standard-margin-bottom);
}
.margin-bottom-half{
	margin-bottom: calc( var(--standard-margin-bottom) / 2 );
}
.margin-bottom-quarter{
	margin-bottom: calc( var(--standard-margin-bottom) / 4 );
}
.margin-bottom-double{
	margin-bottom: calc( var(--standard-margin-bottom) * 2 );
}
.margin-bottom-triple{
	margin-bottom: calc( var(--standard-margin-bottom) * 3 );
}
@media (max-width: 992px) {
	.margin-top-992{
		margin-top: var(--standard-margin-top);
	}
	.margin-top-half-992{
		margin-top: calc( var(--standard-margin-top) / 2 );
	}
	.margin-top-quarter-992{
		margin-top: calc( var(--standard-margin-top) / 4 );
	}
	.margin-top-double-992{
		margin-top: calc( var(--standard-margin-top) * 2 );
	}
	.margin-top-triple-992{
		margin-top: calc( var(--standard-margin-top) * 3 );
	}
	.margin-bottom-992{
		margin-bottom: var(--standard-margin-bottom);
	}
	.margin-bottom-half-992{
		margin-bottom: calc( var(--standard-margin-bottom) / 2 );
	}
	.margin-bottom-quarter-992{
		margin-bottom: calc( var(--standard-margin-bottom) / 4 );
	}
	.margin-bottom-double-992{
		margin-bottom: calc( var(--standard-margin-bottom) * 2 );
	}
	.margin-bottom-triple-992{
		margin-bottom: calc( var(--standard-margin-bottom) * 3 );
	}
	.nomargin-992{
		margin-top:0;
		margin-bottom:0;
	}
	.nomargin-top-992{
		margin-top:0;
	}
	.nomargin-bottom-992{
		margin-bottom:0;
	}
	.noDisplay-992{
		display:none;
	}
}
@media (max-width: 768px) {
	.margin-top-768{
		margin-top: var(--standard-margin-top);
	}
	.margin-top-half-768{
		margin-top: calc( var(--standard-margin-top) / 2 );
	}
	.margin-top-quarter-768{
		margin-top: calc( var(--standard-margin-top) / 4 );
	}
	.margin-top-double-768{
		margin-top: calc( var(--standard-margin-top) * 2 );
	}
	.margin-top-triple-768{
		margin-top: calc( var(--standard-margin-top) * 3 );
	}
	.margin-bottom-768{
		margin-bottom: var(--standard-margin-bottom);
	}
	.margin-bottom-half-768{
		margin-bottom: calc( var(--standard-margin-bottom) / 2 );
	}
	.margin-bottom-quarter-768{
		margin-bottom: calc( var(--standard-margin-bottom) / 4 );
	}
	.margin-bottom-double-768{
		margin-bottom: calc( var(--standard-margin-bottom) * 2 );
	}
	.margin-bottom-triple-768{
		margin-bottom: calc( var(--standard-margin-bottom) * 3 );
	}
}
@media (max-width: 576px) {
	.margin-top-576{
		margin-top: var(--standard-margin-top);
	}
	.margin-top-half-576{
		margin-top: calc( var(--standard-margin-top) / 2 );
	}
	.margin-top-quarter-576{
		margin-top: calc( var(--standard-margin-top) / 4 );
	}
	.margin-top-double-576{
		margin-top: calc( var(--standard-margin-top) * 2 );
	}
	.margin-top-triple-576{
		margin-top: calc( var(--standard-margin-top) * 3 );
	}
	.margin-bottom-576{
		margin-bottom: var(--standard-margin-bottom);
	}
	.margin-bottom-half-576{
		margin-bottom: calc( var(--standard-margin-bottom) / 2 );
	}
	.margin-bottom-quarter-576{
		margin-bottom: calc( var(--standard-margin-bottom) / 4 );
	}
	.margin-bottom-double-576{
		margin-bottom: calc( var(--standard-margin-bottom) * 2 );
	}
	.margin-bottom-triple-576{
		margin-bottom: calc( var(--standard-margin-bottom) * 3 );
	}
}
