/********************************************************************
*
*	tsv-asendorf.de - style
*	Copyright 2019 metastack.de
*
*	by Patrick Bredemeier (patrick.bredemeier@metastack.de)
*
********************************************************************/
body {
	font-family: 'Source Sans Pro', sans-serif;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-tap-highlight-color: transparent;
	font-weight: 400;
	font-size: 16px;
}
::selection {
	background: #3C8760;
	color: #fff;
	text-shadow: none
}
a {
	background-color: transparent;
	color: #979797;
	text-decoration: none;
}
a:hover {
	color: #3C8760;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #3C8760;
	text-decoration: none;
}

h1 {
	font-size: 28px;
	text-decoration: underline;
	text-decoration-color: #979797;
}
h2 {
	margin-bottom:0px;
}
@media (min-width: 992px) {
	h1 {
		font-size: 40px;
	}
}
@media (min-width: 992px) {
	h2 {
		font-size: 36px;
	}
}
@media (min-width: 992px) {
	h3 {
		font-size: 34px;
	}
}
@media (min-width: 992px) {
	h4 {
		font-size: 24px;
	}
}

/* =============================================================================
 * page-navigation
 * ========================================================================== */
.page-navigation-overlay {
	background: black;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 600;
	opacity: 0;
	transition: opacity 0.3s;
	width: 0;
	height: 0;
}
.page-navigation {
	z-index: 700;
	position: fixed;
	transition: transform 0.3s;
	transform: translateX(100%);
	overflow-y: scroll;
	width: 100%;
	height: 100%;
	background: rgba(60,135,96,0.9);
	background-size: 621px 421px;
	background-position: center bottom;
	padding-top: 60px;
	padding-left: 60px;
	padding-right: 60px;
	top: 0;
	right: 0;
}
body.show-nav {
	overflow: hidden;
	min-height: 100%;
}
body.show-nav .page-navigation-overlay {
	width: 100%;
	height: 100%;
	opacity: 0.4;
}
body.show-nav .page-navigation {
	transform: translateX(0);
}
@media (min-width: 768px) {
	.page-navigation {
		width: 50%;
		min-width: 500px;
		max-width: 720px
	}
}
.page-navigation-header {
	display: flex;
	justify-content: flex-end;
	width: 100%;
}
.page-navigation-menu {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
.page-navigation-menu .btn {
	margin-bottom:40px;
}
.page-navigation-menu .logo {
	margin-bottom:40px;
}

/* =============================================================================
 * header
 * ========================================================================== */
.top-bar {
	background: #3C8760;
    height: 36px;
}
.logo-bar {
	display:flex;
	justify-content: center;
	height: 1px;
    position: relative;
}
.logo-bar .logo {
	position: relative;
    z-index: 100;
	margin-top: -25px;
	width:150px;
	height:150px;
}
@media (max-width: 768px) {
	.logo-bar .logo {
		width:120px;
		height:120px;
	}
}
.header-bar {
	padding: 35px 0;
	margin-bottom: 40px;
}
/* @media (min-width:991px) {
	.header-bar {
		box-shadow: rgba(0,0,0,.2) 0 0 5px;
	}
} */
body.content-page .header-bar {
	padding-bottom: 80px;
}
@media (max-width:768px) {
	.header-bar {
		padding-top: 25px;
	}
	body.content-page .header-bar {
		padding-bottom: 25px;
	}
}
@media (max-width:576px) {
	.header-bar .container-fluid {
		padding-right: 0px;
		padding-left: 0px;
	}
	.menu-bar.container {
		padding-right: 30px;
		padding-left: 30px;
	}
}
.header-bar .menu-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	/* justify-content: flex-end; */
}

.left-menu {
	display: flex;
    align-items: center;
}
@media (max-width: 991px) {
	.left-menu .lm--links {
		display: none;
	}
}
.navbar-socials {
	margin-right:30px;
}
.navbar-socials a {
	font-size: 26px;
	margin-right: 5px;
	display: inline-block;
}

/* =============================================================================
 * something else
 * ========================================================================== */
.h1--main {
    text-decoration: none;
    font-size: 50px;
    font-weight: 400;
    /* text-shadow: 4px 4px 10px rgba(0,0,0,0.2); */
    margin: 30px 0;
	text-align: center;
	color: #979797;
}
.h1--main .upper {
	text-transform: uppercase;
	font-weight: 900;
	font-size:65px;
	color: #3C8760;
}
.p--main {
	text-align: center;
    font-size: 28px;
}
.divider-v1 {
	background: #979797;
    width: 65px;
    height: 5px;
    margin: 0 auto;
}
.divider-v2 {
	background: #979797;
    width: 65px;
	height: 5px;
	margin: 20px 0;
}
.d-flex {
	display: flex;
}
.jc-flex-end {
	justify-content: flex-end;
}
.text-center {
	text-align: center;
}

/* =============================================================================
 * trigger
 * ========================================================================== */
.navbar-trigger {
	display: flex;
	align-items: center;
}
.navbar-trigger:hover {
	cursor: pointer;
}
.navbar-trigger .menu-name {
	margin-right: 10px;
	font-size: 20px;
	text-transform: uppercase;
	font-weight: 700;
}
@media (max-width: 768px) {
	.navbar-trigger .menu-name {
		font-size: 14px;
		display: none;
	}
}
.hamburger {
	position:relative;
	width: 35px;
	height: 25px;
	padding:0;
	background:0 0;
	border:0;
	outline:0;
	color:inherit;
	cursor:pointer;
	-webkit-appearance:normal;
	-moz-appearance:normal;
	appearance:normal;
}
@media (max-width:1280px){
	.hamburger {
		font-size:10px;
	}
}
@media (max-width:359px){
	.hamburger {
		font-size:8px;
	}
}
.hamburger span {
	width:30px;
}
.hamburger span,.hamburger span::after,.hamburger span::before {
	display:block;
	position:absolute;
	height:4px;
	right:0;
	background:#3C8760;
	transition:width .2s;
	border-radius:5px;
}
.hamburger span::after,.hamburger span::before {
	content:'';
}
.hamburger span::before {
	width:20px;
	top:10px;
}
.hamburger span::after {
	width:25px;
	top:20px;
}
.hamburger:hover span::after,.hamburger:hover span::before{
	width:100%
}
/* .close {
	padding: 10px;
	margin-right: 5px;
} */
.close .line {
	width: 25px;
	border-radius: 5px;
	height: 4px;
	background-color: #fff;
	display: block;
	margin: 5px auto;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.navbar-trigger:hover .hamburger {
	cursor: pointer;
	opacity: .7;
}
.navbar-trigger:hover .hamburger span::after, .navbar-trigger:hover .hamburger span::before{
	width:100%
}
.navbar-trigger:hover .menu-name {
	color: #009238;
}
.close:hover {
	cursor: pointer;
	opacity: .7;
}
.close .line:nth-child(1){
	-webkit-transform: translateY(2px) rotate(45deg);
	-ms-transform: translateY(2px) rotate(45deg);
	-o-transform: translateY(2px) rotate(45deg);
	transform: translateY(2px) rotate(45deg);
}
.close .line:nth-child(2){
	-webkit-transform: translateY(-7px) rotate(-45deg);
	-ms-transform: translateY(-7px) rotate(-45deg);
	-o-transform: translateY(-7px) rotate(-45deg);
	transform: translateY(-7px) rotate(-45deg);
}
.close:hover .line:nth-child(1) {
	-webkit-transform: translateY(2px) rotate(135deg);
	-ms-transform: translateY(2px) rotate(135deg);
	-o-transform: translateY(2px) rotate(135deg);
	transform: translateY(2px) rotate(135deg);
}
.close:hover .line:nth-child(2) {
	-webkit-transform: translateY(-7px) rotate(-135deg);
	-ms-transform: translateY(-7px) rotate(-135deg);
	-o-transform: translateY(-7px) rotate(-135deg);
	transform: translateY(-7px) rotate(-135deg);
}

/* =============================================================================
 * a-line
 * ========================================================================== */
 .a-line a {
	position: relative;
	/* color: #3C8760; */
	font-weight: bold;
	/* display: inline-block; */
	/* margin: 0 10px; */
	text-decoration: none;
}
.a-line a span {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 0;
	border-bottom: 2px solid; /* underline style */
	border-color: #3C8760;
	transition: width .3s;
}
.a-line a:hover span {
	width: 100%;
}

/* =============================================================================
 * input, button, textarea, forms
 * ========================================================================== */
button[type="submit"] {
	display: inline-block;
	font-weight: bold;
	line-height: 1.8em;
	text-align: center;
	text-decoration: none;
	-webkit-appearance: none;
	outline: none;
	margin: 0;
	border: none;
	border-radius: 3px;
	box-shadow: none;
	cursor: pointer;
	color: #fff;
	background: #3C8760;
	transition: all 0.2s;
	padding: 10px 25px;
	font-size: 16px;
}
button[type="submit"]:hover {
	color: #fff;
	background: #3C8760;
}

input:focus,
textarea:focus {
	outline: none;
}
textarea {
	font-family: 'Open Sans', sans-serif;
	width: 100%;
	padding: 5px;
	border: 2px solid #ededed;
	outline: none;
	margin-bottom:25px;
}
textarea:focus {
	border-color: #3C8760;
	outline: none;
}
textarea.active {
	border-color: #3C8760;
}

.mform-group {
	position: relative;
	margin-top: 25px;
	margin-bottom: 25px;
	display: block;
}
.mform-group label {
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
			transform: translateY(-50%);
	transition: all .2s ease-in-out;
}
.mform-group input[type="text"].form-control,
.mform-group input[type="password"].form-control,
.mform-group input[type="email"].form-control {
	height: 48px;
	background: none;
	border-radius: 0;
	box-shadow: none;
	padding-left: 0;
	padding-right: 0;
	border: none;
	border-bottom: 2px solid #ededed;
	transition: all .1s ease-in-out;
	position: relative;
	z-index: 2;
	width: 100%;
	font-family: 'Open Sans', sans-serif;
}
.mform-group input[type="text"].form-control:focus, .mform-group input[type="text"].form-control:active,
.mform-group input[type="password"].form-control:focus,
.mform-group input[type="password"].form-control:active,
.mform-group input[type="email"].form-control:focus,
.mform-group input[type="email"].form-control:active {
	outline: none;
	box-shadow: none;
	border: none;
}
.mform-group input[type="text"].form-control:active + label, .mform-group input[type="text"].form-control:focus + label, .mform-group input[type="text"].form-control.active + label,
.mform-group input[type="password"].form-control:active + label,
.mform-group input[type="password"].form-control:focus + label,
.mform-group input[type="password"].form-control.active + label,
.mform-group input[type="email"].form-control:active + label,
.mform-group input[type="email"].form-control:focus + label,
.mform-group input[type="email"].form-control.active + label {
	color: #3C8760;
	font-size: 11px;
	top: -10px;
	-webkit-transform: none;
			transform: none;
}
.mform-group input[type="text"].form-control:active ~ .input-border, .mform-group input[type="text"].form-control:focus ~ .input-border, .mform-group input[type="text"].form-control.active ~ .input-border,
.mform-group input[type="password"].form-control:active ~ .input-border,
.mform-group input[type="password"].form-control:focus ~ .input-border,
.mform-group input[type="password"].form-control.active ~ .input-border,
.mform-group input[type="email"].form-control:active ~ .input-border,
.mform-group input[type="email"].form-control:focus ~ .input-border,
.mform-group input[type="email"].form-control.active ~ .input-border {
	width: 100%;
}
.mform-group .input-border {
	display: block;
	width: 0%;
	height: 2px;
	background: #3C8760;
	transition: all .2s ease-in-out;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 3;
	margin: 0 auto;
}


/* =============================================================================
 * service-unavailable
 * ========================================================================== */
.service-unavailable {
	background: #F8F9FB;
}
.service-unavailable .page-intro {
	max-width:300px;
}
.service-unavailable .page-intro .contact-box {
	/* box-shadow: 0 10px 15px rgba(0,0,0,0.5); */
	background: #fff;
	margin:20px 0;
}
.service-unavailable .page-intro .info {
	margin-top:40px;
	text-align: center;
}
.service-unavailable .page-intro img {
	margin:20px 0;
}
.service-unavailable .page-intro .contact-box .content {
	padding: 20px;
	font-size: 14px;
}
@media (min-width: 992px) {
	.service-unavailable .page-intro {
		padding-top: 75px;
	}
}

/* =============================================================================
 * callto-section
 * ========================================================================== */
/* .callto-section {
	margin-bottom: 40px;
}
@media (min-width: 992px) {
	.callto-section {
		margin-bottom: 100px;
	}
}
.item.item-cta {
	color: rgba(255, 255, 255, 0.5);
	font-size: 16px;
	position: relative;
}
.item.item-cta:before {
	width: 100%;
	height: 100%;
	background-color: #F95373;
	position: absolute;
	content: '';
	z-index: 0;
	transition: 500ms;
	left: 10px;
	top: 10px;
}
@media (min-width: 768px) {
	.item.item-cta:before {
		left: 20px;
		top: 20px;
	}
}
.item.item-cta .inner {
	background: #0B3258;
	position: relative;
	padding-right: 11.08871vw;
	padding-left: 11.08871vw;
	padding-top: 12.09677vw;
	padding-bottom: 8.06452vw
}
@media (min-width: 992px) {
	.item.item-cta .inner {
		padding-right: 110px;
		padding-left: 110px;
		padding-top: 50px;
		padding-bottom: 50px;
	}
}
@media (min-width: 1200px) {
	.item.item-cta .item-caption--link {
		display: flex;
		justify-content: center;
		align-items: center;
		margin-left: 60px;
	}
	.item.item-cta p {
    font-size: 21px;
	}
	.item.item-cta .inner {
		display: flex;
		justify-content: space-between;
	}
}
.item.item-cta .item-caption--link p {
	padding: 0;
}
@media (min-width: 992px) {
	.item.item-cta .item-caption--link .btn,
	.item.item-cta .item-caption--link .main-navigation ul li:last-child a,
	.main-navigation ul li:last-child .item.item-cta .item-caption--link a {
		white-space: nowrap
	}
}
.item.item-cta h2,
.item.item-cta h3 {
	color: white;
}
.item.item-cta h2 strong,
.item.item-cta h3 strong {
	color: #F95373;
} */

/* =============================================================================
 * footer
 * ========================================================================== */
.page-footer {
	font-size: 18px;
}
.page-footer a {
	color: #979797;
	border: none;
}
.page-footer a:hover,
.page-footer a:focus {
	color: #3C8760;
}
.page-footer .col-6 {
	white-space: nowrap;
}
.page-footer-info {
	padding-bottom: 40px;
}
.page-footer-info .col-10 {
	border-bottom: 1px solid #F1F1F1;
	background: url("../images/tsv-footer-bg3.svg") no-repeat;
	background-size: 1467px 330px;
	background-position: center bottom;
	padding-top: 10.08065vw;
	padding-bottom: 40px;
}
@media (min-width: 768px) {
	.page-footer-info .col-10 {
		padding-top: 100px;
	}
}
.page-footer-info .a-line {
	padding-bottom: 45px;
}
@media (min-width: 992px) {
	.page-footer-info .a-line {
		padding-top: 0px;
	}
}
.page-footer-info .a-line h3 {
	font-size: 38px;
}
.page-footer-info .a-line a {
	font-size: 18px;
	color: #979797;
}
@media (min-width: 992px) {
	.page-footer-info .a-line {
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
}
.page-footer-info h5 {
	font-size: 20px;
	font-weight: 700;
}
.page-footer-info h3 {
	color: #3C8760;
	max-width: 300px;
}
.page-footer-info ul {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-bottom: 45px;
}
@media (min-width: 992px) {
	.page-footer-info ul {
		padding-top: 0px;
	}
}
.page-footer-info ul li a {
	border: none;
	color: #979797;
}
.page-footer-info ul li a:hover,
.page-footer-info ul li a:focus {
	color: #3C8760;
}
.page-footer-info ul li.selected>a {
	color: #3C8760;
}
.page-footer-info ul li:not(:last-child) {
	margin-bottom: 1.81452vw;
}
@media (min-width: 992px) {
	.page-footer-info ul li:not(:last-child) {
		margin-bottom: 18px;
	}
}

/* =============================================================================
 * bottom
 * ========================================================================== */
.page-footer-bottom .col-10 {
	display: flex;
	justify-content: space-between;
	padding-bottom: 45px;
}
.page-footer-bottom ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.page-footer-bottom ul li {
	margin-left: 10px;
}
@media (min-width: 576px) {
	.page-footer-bottom ul li.disclaimer {
		margin-right: 10px;
	}
}
.page-footer-bottom ul li a {
	border: none;
	color: #979797;
}
.page-footer-bottom ul li a:hover,
.page-footer-bottom ul li a:focus {
	color: #3c8760;
}

/* =============================================================================
 * modalbox
 * ========================================================================== */
.modalbox {
	margin: 120px 15px 30px 15px;
}
.modalbox.success,
.modalbox.info,
.modalbox.error {
	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	background: #fff;
	padding: 25px 25px 15px;
	text-align: center;
}
.modalbox.success.animate .icon,
.modalbox.info.animate .icon,
.modalbox.error.animate .icon {
	-webkit-animation: fall-in 0.75s;
	-moz-animation: fall-in 0.75s;
	-o-animation: fall-in 0.75s;
	animation: fall-in 0.75s;
	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}
.modalbox.success .icon,
.modalbox.info .icon,
.modalbox.error .icon {
	position: relative;
	margin: 0 auto;
	margin-top: -75px;
	background: #4caf50;
	height: 100px;
	width: 100px;
	border-radius: 50%;
}
.modalbox.success .icon span {
	font-size: 4em;
	color: #fff;
	text-align: center;
	display: block;
	padding-top: 2px;
}
.modalbox.info .icon span {
	font-size: 4em;
	color: #fff;
	text-align: center;
	display: block;
	padding-top: 12px;
}
.modalbox.error .icon span {
	font-size: 3em;
	color: #fff;
	text-align: center;
	display: block;
}
.modalbox.info .icon {
	background: #979797;
}
.modalbox.error .icon {
	background: #f44336;
}
.modalbox.error .icon span {
	padding-top: 12px;
}
.modal-back {
	text-align: center;
}
@-webkit-keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-moz-keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-o-keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-webkit-keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 25%;
	}
}
@-moz-keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 25%;
	}
}
@-o-keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 25%;
	}
}
@-moz-keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-webkit-keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-o-keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@keyframes fall-in {
	0% {
		-ms-transform: scale(3, 3);
		-webkit-transform: scale(3, 3);
		transform: scale(3, 3);
		opacity: 0;
	}
	50% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 1;
	}
	60% {
		-ms-transform: scale(1.1, 1.1);
		-webkit-transform: scale(1.1, 1.1);
		transform: scale(1.1, 1.1);
	}
	100% {
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-moz-keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 15%;
	}
}
@-webkit-keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 15%;
	}
}
@-o-keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 15%;
	}
}
@keyframes plunge {
	0% {
		margin-top: -100%;
	}
	100% {
		margin-top: 15%;
	}
}

/* =============================================================================
 * news-teaser--v1
 * ========================================================================== */
.news-teaser--v1 .news-teaser-media img {
	height: 100%;
	margin: auto;
	object-fit: cover;
	display: block;
	width: 100%;
	background-color: #000;
	z-index: 1;
	display: flex;
	justify-content: center;
	transition: all 0.25s ease-in-out;
}
.news-teaser--v1 .news-teaser-media {
	display: flex;
	justify-content: center;
	background-color: #F2F1F2;
	overflow: hidden;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}
.news-teaser--v1 .content {
	display: flex;
	flex-direction: column;
	margin-top: auto;
}
.news-teaser--v1 h2 {
    font-size: 30px;
    font-weight: 600;
    color: white;
	transition: all 0.2s ease-in-out;
}
.news-teaser--v1 .article-content {
	background-color: #FFFFFF;
	box-shadow: 8px 8px 10px 0 rgba(0, 0, 0, 0.1), 2px 2px 4px 2px rgba(0, 0, 0, 0.1);
	padding: 16px;
	display: flex;
	flex-direction: column;
	padding-top: 0;
	height: 100%;
}
.news-teaser--v1 {
	height: 360px;
    position: relative;
    display: block;
    box-sizing: border-box;
    overflow: hidden;
	/* margin: 8px; */
	margin-bottom:20px;
}
.news-teaser--v1 a {
	text-decoration: none;
}
.news-teaser--v1 .footer {
	margin-left: -16px;
	margin-right: -16px;
	padding-left: 16px;
	padding-right: 16px;
	background: linear-gradient(to bottom, transparent 0%, transparent 2%, rgba(60,135,96, 0.65) 44%, rgba(60,135,96, 0.65) 48%, rgba(60,135,96) 100%);
	margin-bottom: -16px;
	margin-top: 0;
	padding-bottom: 16px;
	padding-top: 32px;
	z-index: 1;
	display: block;
	box-sizing: border-box;
	transition: all 0.25s ease-in-out;
}
.news-teaser--v1:hover .news-teaser-media img {
	transform: scale(1.1);
}
.news-teaser--v1:hover .footer {
	padding-top: 40px;
}
.news-teaser--v1:hover .footer h2 {
	transform: translateY(-8px);
}
.news-teaser--v1 .info {
	color:#fff;
	font-size: 20px;
}

/* =============================================================================
 * section
 * ========================================================================== */
section {
	margin: 40px 0;
}

/* =============================================================================
 * buttons
 * ========================================================================== */
.cta-btn {
	color: #fff;
	background: #009238;
	margin-top: 20px;
	border-radius: 2px;
	overflow: hidden;
	border: none;
	padding: 8px 50px;
	display: inline-block;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 1px;
	font-weight: 700;
	outline: none;
	position: relative;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.12), 0 1px 5px 0 rgba(0,0,0,.2);
}
.cta-btn:hover {
	cursor: pointer;
	color: #fff;
	background: #009238;
}
.cta-btn:hover:before {
	left: 110%;
}
.cta-btn:before {
	left: 140%;
	top: 0;
}
.cta-btn:before {
	position: absolute;
	height: 100%;
	color: #fff;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
.icon-arrow-right:before {
	position: relative;
	content: '\f178';
	font-family: 'Font Awesome 5 Pro';
}

/* =============================================================================
 * event list
 * ========================================================================== */
.mod_eventlist.home-list {

}
.event--ctn-v1 {
	margin: 20px 0;
	display: flex;

	position: relative;
    left: 0px;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}
.event--ctn-v1:hover {
	left: 26px;
    -webkit-transition: all 0.25s;
    -o-transition: all 0.25s;
    transition: all 0.25s;
}
.event--ctn-v1 .date-ctn {
	background-color: #3C8760;
    text-align: center;
    position: relative;
    padding: 10px 20px;
    display: flex;
    color: #fff;
    flex: 1;
    flex-direction: column;
    justify-content: center;
}
.event--ctn-v1 .date-ctn .day {
	font-size: 25px;
    font-weight: 900;
}
.event--ctn-v1 .date-ctn .month {
	font-size: 22px;
}
.event--ctn-v1 .event-content {
	background-color: rgb(244, 244, 244);
	padding: 10px 20px;
	width: 100%;
}
.event--ctn-v1 h2 {
	margin:0;
	font-size: 22px;
	color:#979797;
}
.event--ctn-v1 .header {
	font-size: 20px;
	color:#222;
}

/* =============================================================================
 * skewslide
 * ========================================================================== */
.slider-wrap {
	max-width: 100%;
	margin: 0px auto;
	overflow: hidden;
	margin:30px 0;
}
.slider {
	background: transparent;
	height: 500px;
	overflow: hidden;
	display: flex;
	margin-left: -50px;
	margin-right: -285px;
}
.slider__item {
	flex: 1;
	border-left: 15px solid #fff;
	-webkit-transform: skew(-10deg);
			transform: skew(-10deg);
	overflow: hidden;
	position: relative;
	left: -120px;
	opacity: 1;
	transition: all 0.9s;
}
.slider__item .text-ctn {
	font-size:40px;
	color:#fff;
	font-weight: 900;
	padding:10px;
	background:rgba(60,135,96, 0.65);
	display:none;
}
.slider__img-platz {
	background-image: url('../images/IMG_6635_c.jpg');
	background-blend-mode: multiply;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0px;
	bottom: 0;
	right: -170px;
	-webkit-transform: skew(10deg);
			transform: skew(10deg);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.5s;
}
.slider__img-halle {
	background-image: url('../images/IMG_6685_c.jpg');
	background-blend-mode: multiply;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: -50px;
	bottom: 0;
	right: -50px;
	-webkit-transform: skew(10deg);
			transform: skew(10deg);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.5s;
}
.slider__img-tennis {
	background-image: url('../images/IMG_6659_c.jpg');
	background-blend-mode: multiply;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: -170px;
	bottom: 0;
	right: 0px;
	-webkit-transform: skew(10deg);
			transform: skew(10deg);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.5s;
}
.slider__item.active {
	flex: 4;
	opacity: 1;
}
.slider__item.active .slider__img-platz, .slider__item.active .slider__img-halle, .slider__item.active .slider__img-tennis {
	background-color:#fff;
	transition: all 0.5s;
}

/* =============================================================================
 * album
 * ========================================================================== */
.albums {
	margin-top: 20px;
}
@media (min-width:1200px) {
	.album--v1 {
		margin-right: 50px;
	}
}
.album--v1 .image_container img {
	height: 100%;
	margin: auto;
	object-fit: cover;
	display: block;
	width: 100%;
	background-color: #000;
	z-index: 1;
	display: flex;
	justify-content: center;
	transition: all 0.25s ease-in-out;
}
.album--v1 .image_container {
	display: flex;
	justify-content: center;
	background-color: #F2F1F2;
	overflow: hidden;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}
.album--v1 .content {
	display: flex;
	flex-direction: column;
	margin-top: auto;
}
.album--v1 h2 {
    font-size: 30px;
    font-weight: 600;
    color: white;
	transition: all 0.2s ease-in-out;
	margin: 20px 0;
}
.album--v1 .article-content {
	background-color: #FFFFFF;
	box-shadow: 8px 8px 10px 0 rgba(0, 0, 0, 0.1), 2px 2px 4px 2px rgba(0, 0, 0, 0.1);
	padding: 16px;
	display: flex;
	flex-direction: column;
	padding-top: 0;
	height: 100%;
}
.album--v1 {
	height: 400px;
    position: relative;
    display: block;
    box-sizing: border-box;
    overflow: hidden;
	margin-bottom:20px;
}
.album--v1 a {
	text-decoration: none;
	color: #fff;
}
.album--v1 .footer {
	margin-left: -16px;
	margin-right: -16px;
	padding-left: 16px;
	padding-right: 16px;
	background: linear-gradient(to bottom, transparent 0%, transparent 2%, rgba(60,135,96, 0.65) 44%, rgba(60,135,96, 0.65) 48%, rgba(60,135,96) 100%);
	margin-bottom: -16px;
	margin-top: 0;
	padding-bottom: 16px;
	padding-top: 32px;
	z-index: 1;
	display: block;
	box-sizing: border-box;
	transition: all 0.25s ease-in-out;
}
.album--v1:hover .image_container img {
	transform: scale(1.1);
}
.album--v1:hover .footer {
	padding-top: 40px;
}
.album--v1:hover .footer h2 {
	transform: translateY(-8px);
}
.album--v1 .info {
	color:#fff;
	font-size: 20px;
}

/* =============================================================================
 * icons
 * ========================================================================== */
.icons {
	margin: 30px 0;
}
