/* w3 */

:root {
    --bs-body-color: #000000;
}

.logo-img {
	max-width: 160px;
}

/* Anchor offset */
html { 
    scroll-behavior: smooth;
    font-size: 16px; 
	overflow-y: scroll; 
	-webkit-text-size-adjust: 16px; 
	-ms-text-size-adjust: 16px; 
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
	font-family: "DINWebBold";
    color: #3c3c3b;
}

h6.section, h5.section, h4.section, h3.section, h2.section, h1.section {
    color: #3c3c3b;
	font-weight: 400;
}

.btn {
	text-transform: uppercase;
}

.btn-primary {
	padding: 0.625rem 1.625rem;
	font-size: 1rem;
}	

.navbar-nav {
    font-family: "DINWebBold";
}

.navbar-nav .btn-primary {
    padding: 0.425rem .725rem;
    font-size: .9rem;
}

.needs-validation .btn-primary {
    font-size: .9rem;
}

.navbar-expand-lg .navbar-nav .nav-link {
	font-size: .925rem;
	text-transform: uppercase;
    padding-right: .6rem;
    padding-left: .6rem;
}

.navbar-expand-lg .navbar-nav .nav-item.cw {
	margin: 5px 0 0 25px;
}

.navbar-brand span {
	font-size: .8rem;
	color: #292929;
}

.blockquote {
    font-family: "DINWebBold";	
    font-size: 1.225rem;
}

#slider .blockquote p {
    font-family: "DINWebBold";		
    font-size: 1.375rem;
	color: #393939;
}

p { 
    font-size: 1.125rem;
}

.section-header h2,
.section-header-nl h2 {
    overflow: hidden;
	font-size: 1.425rem;
	letter-spacing: -1px;
	text-transform: uppercase;
	color: #009fe3;
}

.section-header h2:after {
	position: absolute;
    margin-left: -4.5rem;
	margin-top: 20px;
    left: 50%;
    content:' ';
    display:block;
	width: 9rem;
    border: 1px solid rgba(60,60,59,.3);
}

.section-header-nl h2:after {
	display: none;
}

.mt-minus {
	margin-top: -18rem;
}

h5, .h5 {
    font-size: 1.125rem;
	text-transform: uppercase;
}

/* Progressvav */ 
.progressnav {
	cursor: pointer;
	border-bottom: 4px solid #d9d9d9;
}

.progressnav.active {
	cursor: pointer;
	border-bottom: 4px solid #009fe3;
}

.progressnav .widget-content {
	padding-top: 25px;
}

.progressnav .widget-number {
    float: left;
	margin-right: 15px;	
    font-size: 3.8rem;
	font-weight: bold;
}

.progressnav h3 {
    font-family: "DINWebBold";	
	line-height: .5;
	text-transform: uppercase;
	font-size: 1.125rem;
} 

.progressnav h3,
.progressnav p {
	color: #929292;
}   

.progressnav .widget-number {
    font-family: "DINWebBold";	
	color: #929292;
}  

.progressnav.active h3,
.progressnav.active .widget-number {
    font-family: "DINWebBold";		
	color: #009fe3;
}

.progressnav.active p {
	color: #000;
}

.tns-carousel-wrapper h4 {
	letter-spacing: -1px;	
	text-transform: uppercase;
	font-size: 1.125rem;	
	padding-bottom:  1.125rem;
	margin-bottom:  1.325rem;	
	color: #009fe3;
    border-bottom: 1px solid #b9b9b9;
}

ol, ul {
    padding-left: 1rem;
}

li::marker {
	color: #009fe3;
	font-size: 1.225rem;
}

.fazit {
    color: #23b606;
    font-style: italic;
    text-align: center;
}

.fazit p {
    text-align: center;
	font-weight: bold;
    display: inline-block;
    margin: 0 auto;
    border: 1px solid #23b606;
    border-width: 1px;
    padding: .7rem 3rem;
}

.tns-slide-active .scale-up, 
.tns-slide-active .scale-down {
    transform: scale(1,.95);
    opacity: 1;
}

.tns-carousel-wrapper [data-controls] {
	color: #009fe3;
    font-size: 1.25rem;
    text-align: center;
}

.tns-carousel-wrapper [data-controls="prev"] {
    /* float: left; */
}

.tns-carousel-wrapper [data-controls="next"] {
    float: right;
	margin-right: .9rem;
}

.tns-carousel-wrapper .tns-controls {
    /* margin-top: -115px; */
    top: 0;	
    padding-left: 6rem !important;
	padding-right: 6rem !important;
    z-index: 1000;	
}

.leistungen .tns-carousel-wrapper .tns-controls {
    top: 100%;
    width: 100%;
    padding-top: 1.25rem;
	padding-left: 0 !important;
	padding-right: 0 !important;
    text-align: right;
    white-space: nowrap;
}
/* Progressvav */ 

/* Radius */
.bg-radius {
	border-bottom-left-radius: 50% 90px;
	border-bottom-right-radius: 50% 90px
}

/* Card */
.card .badge-floating {
    position: absolute;	
    top: 270px;
    left: 0;
    z-index: 5;
	background-color: #636363;	
}

.card .img-floating {
    float: left;
	padding: 0 15px 15px 0;
	height: 300px;
}

.card p {
	color: #191919;
	padding-top: 15px;
	line-height: 1.625rem;
}
/* Card */

/* Page load */
.page-loading {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: all .4s .2s ease-in-out;
	transition: all .4s .2s ease-in-out;
	background-color: #fff;
	opacity: 0;
	visibility: hidden;
	z-index: 9999;
}

.page-loading.active {
	opacity: 1;
	visibility: visible;
}

.page-loading-inner {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	text-align: center;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: opacity .2s ease-in-out;
	transition: opacity .2s ease-in-out;
	opacity: 0;
}

.page-loading.active>.page-loading-inner {
	opacity: 1;
}

.page-loading-inner>span {
	display: block;
	font-family: 'Inter', sans-serif;
	font-size: 1rem;
	font-weight: normal;
	color: #737491;
}

.page-spinner {
	display: inline-block;
	width: 2.75rem;
	height: 2.75rem;
	margin-bottom: .75rem;
	vertical-align: text-bottom;
	border: .15em solid #766df4;
	border-right-color: transparent;
	border-radius: 50%;
	-webkit-animation: spinner .75s linear infinite;
	animation: spinner .75s linear infinite;
}

@-webkit-keyframes spinner {
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes spinner {
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.navbar-expand-lg .navbar-nav .nav-link {
	font-size: .9rem;
	text-transform: uppercase;
    padding-right: .6rem;
    padding-left: .6rem;
}

@media (max-width: 1200px) {
	.navbar-expand-lg .navbar-nav .nav-link {
		font-size: .825rem;
		text-transform: uppercase;
		padding-right: .6rem;
		padding-left: .6rem;
	}
	
	.btn-primary {
		padding: 0.425rem .725rem;
		font-size: .8rem;
	}	

	/* Card */
	.card .badge-floating {
		position: absolute;
		top: 170px;
		left: 0;
		z-index: 5;
	}
	
	.card .img-floating {
		float: left;
		padding: 0 15px 5px 0;
		height: 200px;
	}

	.card .fs-base {
	  font-size: 0.9375rem !important;
	}	
	/* Card */
}

@media (max-width: 1080px) {
	.navbar-expand-lg .navbar-nav .nav-link {
		font-size: .725rem;
		text-transform: uppercase;
		padding-right: .5rem;
		padding-left: .5rem;
	}
	
	.navbar-expand-lg .navbar-nav .nav-item.cw {
		margin: 5px 0 0 15px;
	}	
	
	.btn-primary {
		padding: 0.425rem .725rem;
		font-size: .775rem;
	}

	/* Card */
	.card .badge-floating {
		position: absolute;
		top: 120px;
		left: 0;
		z-index: 5;
	}
	
	.card .img-floating {
		float: left;
		padding: 0 15px 5px 0;
		height: 150px;
	}

	.card .fs-base {
       font-size: 0.875rem !important;
	}	
	/* Card */	
}

@media (max-width: 991px) {
	.logo-img {
		max-width: 144px;
	}
	
	.navbar-expand-lg .navbar-nav .nav-link {
		font-size: .9rem;
		text-transform: uppercase;
		padding-right: 0;
		padding-left: 0;
	}	
	
	.navbar-expand-lg .navbar-nav .nav-item.cw {
		margin: 15px 0 15px 0;
	}

	.btn-primary {
		padding: 0.425rem .725rem;
		font-size: .9rem;
	}	
	
	/* Card */
    .card-body h5, .card-body .h5 {
		font-size: .9rem;
	}
	
	.card .badge-floating {
		position: absolute;
		top: 170px;
		left: 0;
		z-index: 5;
	}
	
	.card .img-floating {
		float: left;
		padding: 0 15px 5px 0;
		height: 200px;
	}

	.card .fs-base {
       font-size: 0.9375rem !important;
	}	
	/* Card */
	
	.me-6 {
		margin-right: 1rem !important;
	}
}

@media (max-width: 767px) {
	.progressnav {
		cursor: pointer;
		border-bottom: 4px solid #d9d9d9;
	}

	.progressnav.active {
		cursor: pointer;
		border-bottom: 4px solid #009fe3;
	}
	
	.progressnav .widget-content {
		padding-top: 20px;
	}	
	
	.progressnav .widget-number {
			font-size: 2.8rem;
			font-weight: bold;
			margin-bottom: .25rem;
	}	

	.progressnav h3 {
		text-transform: uppercase;
		font-size: 1rem;
	}  
	
	.progressnav p {
		font-size: .9rem;
		margin-bottom: .75rem;	
	}	

	.tns-carousel-wrapper .tns-controls {
		top: 0;	
		padding-left: 6rem !important;
		padding-right: 1rem !important;
		z-index: 1000;	
	}
	
	.mt-minus {
		margin-top: -16rem;
	}	
	
	.ms-mb-1 {
		margin-bottom: 1rem !important;
	}

	.ms-me-1 {
		margin-right: 1rem !important;
	}	
}

@media (max-width: 560px) {
	.mt-minus {
		margin-top: -14rem;
	}
	
	p {
		font-size: 1rem;
	}	
}

@media (max-width: 450px) {
	.mt-minus {
		margin-top: -12rem;
	}
}
