/*
Theme Name: FS-Naturstein
Theme URI: https://wp.fs-naturstein.de
Author: Bastian Ranft, flexx-hosting.de
Author URI: https://flexx-hosting.de
Description: 
Version: 1.0
Tags: 
/*
@charset "UTF-8";
/* CSS Document */
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 300;
	src: url('assets/fonts/open-sans-v34-latin-300.eot');
	src: url('assets/fonts/open-sans-v34-latin-300.eot?#iefix') format('embedded-opentype'),
		 url('assets/fonts/open-sans-v34-latin-300.woff2') format('woff2'), 
		 url('assets/fonts/open-sans-v34-latin-300.woff') format('woff'), 
		 url('assets/fonts/open-sans-v34-latin-300.ttf') format('truetype'), 
		 url('assets/fonts/open-sans-v34-latin-300.svg#OpenSans') format('svg'); 
    }
*,
*:before,
*:after {
    box-sizing:border-box;
	-ms-box-sizing:border-box;
	-moz-box-sizing:border-box; 
	-webkit-box-sizing:border-box; 
	-o-box-sizing:border-box;
    }
:root {
	--white: rgba(255,255,255,1);
	--white95: rgba(255,255,255,.95);
	--white90: rgba(255,255,255,.9);
	--white80: rgba(255,255,255,.8);
	--white70: rgba(255,255,255,.7);
	--white60: rgba(255,255,255,.6);
	--white50: rgba(255,255,255,.5);
	--white40: rgba(255,255,255,.4);
	--white30: rgba(255,255,255,.3);
	--white20: rgba(255,255,255,.2);
	--white10: rgba(255,255,255,.1);
	--trans: rgba(255,255,255,0);
	--black: rgba(0,0,0,1);
	--black95: rgba(0,0,0,.95);
	--black90: rgba(0,0,0,.9);
	--black80: rgba(0,0,0,.8);
	--black85: rgba(0,0,0,.85);
	--black70: rgba(0,0,0,.7);
	--black60: rgba(0,0,0,.6);
	--black50: rgba(0,0,0,.5);
	--black40: rgba(0,0,0,.4);
	--black30: rgba(0,0,0,.3);
	--black20: rgba(0,0,0,.2);
	--black10: rgba(0,0,0,.1);
	--gray: rgba(165,165,165,1);
    --gray95: rgba(165,165,165,.95);
    --gray90: rgba(165,165,165,.9);
    --gray80: rgba(165,165,165,.8);
    --gray70: rgba(165,165,165,.7);
    --gray60: rgba(165,165,165,.6);
    --gray50: rgba(165,165,165,.5);
    --gray40: rgba(165,165,165,.4);
    --gray30: rgba(165,165,165,.3);
    --gray20: rgba(165,165,165,.2);
    --gray10: rgba(165,165,165,.1);
    --gray-hover-light: rgba(207,207,207,1);
    --gray-hover-dark: rgba(114,114,114,1);
    --lightgray-full: rgba(237,237,237,1);
    --lightgray: rgba(241,237,235,1);
    --lightgray95: rgba(241,237,235,.95);
    --lightgray90: rgba(241,237,235,.9);
    --lightgray80: rgba(241,237,235,.8);
    --lightgray70: rgba(241,237,235,.7);
    --lightgray60: rgba(241,237,235,.6);
    --lightgray50: rgba(241,237,235,.5);
    --lightgray40: rgba(241,237,235,.4);
    --lightgray30: rgba(241,237,235,.3);
    --lightgray20: rgba(241,237,235,.2);
    --lightgray10: rgba(241,237,235,.1);
    --turquoise: rgba(2,151,179,1);
    --turquoise95: rgba(2,151,179,.95);
    --turquoise90: rgba(2,151,179,.9);
    --turquoise80: rgba(2,151,179,.8);
    --turquoise70: rgba(2,151,179,.7);
    --turquoise60: rgba(2,151,179,.6);
    --turquoise50: rgba(2,151,179,.5);
    --turquoise40: rgba(2,151,179,.4);
    --turquoise30: rgba(2,151,179,.3);
    --turquoise20: rgba(2,151,179,.2);
    --turquoise10: rgba(2,151,179,.1);
	--orange: rgba(237,114,1,1);
	--orange90: rgba(237,114,1,.9);
	--orange80: rgba(237,114,1,.8);
	--colorsample: rgba(237,114,1,1);
	--text-font-size: 1.2rem;
	--text-font-line-height: 2.0rem;
	--text-font-size-xs: 0.8rem;
	--text-font-line-height-xs: 1.6rem;
	--font-size-headline-large: 2.6rem;
	--line-height-headline-large: 3.4rem;
	--font-size-headline-xlarge: 4.5rem;
	--line-height-headline-xlarge: 5.2rem;
	--font-size-headline-medium: 1.7rem;
	--line-height-headline-medium: 2.5rem;
	--font-size-headline-small: 1.2rem;
	--line-height-headline-small: 2.0rem;
	--padding-text-element-small: 33px 20px;
	--padding-text-element-medium: 66px 25px;
	--padding-text-element-large: 100px 30px;
	--padding-small: 33px;
	--padding-medium: 66px;
	--padding-large: 100px;
	}
.transition {
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
/* bootstrap */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
    }
audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
    }
audio:not([controls]) {
    display: none;
    height: 0;
    }
[hidden],
template {
    display: none;
    }
a {
    background-color: transparent;
    }
a:active,
a:hover {
    outline: 0;
    }
abbr[title] {
    border-bottom: 1px dotted;
    }
b,
strong {
    font-weight: bold;
    }
dfn {
    font-style: italic;
    }
mark {
    background: #ff0;
    color: #000;
    }
small {
    font-size: 80%;
    }
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
    }
sup {
    top: -0.5em;
    }
sub {
    bottom: -0.25em;
    }
img {
    border: 0;
    }
svg:not(:root) {
    overflow: hidden;
    }
figure {
    margin: 1em 40px;
    }
hr {
	width:100%;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    border:none;
    margin:50px 0;
    }
hr.line {
    width:100%;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    border:none;
    border-bottom: 1px dashed var(--black20);
    margin:50px 0;
    }
pre {
    overflow: auto;
    }
none,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
    }
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
    }
button {
    overflow: visible;
    }
button,
select {
    text-transform: none;
    }
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    }
button[disabled],
html input[disabled] {
    cursor: default;
    }
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
    }
input {
    line-height: normal;
    }
input[type="checkbox"],
input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    }
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
    }
input[type="search"] {
    -webkit-appearance: textfield;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    }
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
    }
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
    }
legend {
    border: 0;
    padding: 0;
    }
textarea {
    overflow: auto;
    }
optgroup {
    font-weight: bold;
    }
table {
    border-collapse: collapse;
    border-spacing: 0;
    }
td,
th {
    padding: 0;
    }
/* print */
@media print {
*,
*:before,
*:after {
	background: transparent !important;
	color: #000 !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
	}
a,
a:visited {
	text-decoration: underline;
	}
a[href]:after {
	content: " (" attr(href) ")";
	}
abbr[title]:after {
	content: " (" attr(title) ")";
	}
a[href^="#"]:after,
a[href^="javascript:"]:after {
	content: "";
	}
pre,
blockquote {
	border: 1px solid #999;
	page-break-inside: avoid;
	}
thead {
	display: table-header-group;
	}
tr,
img {
	page-break-inside: avoid;
	}
img {
	max-width: 100% !important;
	}
p,
h2,
h3 {
	orphans: 3;
	widows: 3;
	}
h2,
h3 {
	page-break-after: avoid;
	}
.navbar {
	display: none;
	}
.btn > .caret,
.dropup > .btn > .caret {
	border-top-color: #000 !important;
	}
.label {
	border: 1px solid #000;
	}
.table {
	border-collapse: collapse !important;
	}
.table td,
.table th {
	background-color: #fff !important;
	}
.table-bordered th,
.table-bordered td {
	border: 1px solid #ddd !important;
	}
}
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    }
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    }

input,
button,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    }
figure {
    margin: 0;
    }
img {
    vertical-align: middle;
    }
content img {
    max-width:100%;
    height:auto;
    }
.img-responsvie,
.img-responsive-100,
.img-responsive-90,
.img-responsive-80,
.img-responsive-70,
.img-responsive-60,
.img-responsive-50,
.img-responsive-40,
.img-responsive-30,
img.thumbs,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
    display: block;
    width: auto ;
    height: auto;
    margin:0 auto;
    box-sizing:border-box;
	-ms-box-sizing:border-box;
	-moz-box-sizing:border-box; 
	-webkit-box-sizing:border-box; 
	-o-box-sizing:border-box;
    border:none;
    }
.img-responsive {
    width: 100%;
    }
.img-responsive-100 {
    max-width: 100%;
    }
.img-responsive-90 {
    max-width: 90%;
    }
.img-responsive-80 {
    max-width: 80%;
    }
.img-responsive-70 {
    max-width: 70%;
    }
.img-responsive-60 {
    max-width: 60%;
    }
.img-responsive-50 {
    max-width: 50%;
    }
.img-responsive-40 {
    max-width: 40%;
    }
.img-responsive-30 {
    max-width: 30%;
    }
img.border-xl {
	border:40px solid var(--white);
}
.img-round {
	border-radius: 100%;
}
img.thumbs {
    margin-bottom:30px;
    }
.slide img {
    width:100%;
    max-width:100%;
    border:none !important;
    }
.img-thumbnail {
    padding: 4px;
    line-height: 1.42857143;
    background-color: #ffffff;
    border: 1px solid #dddddd;
    border-radius: 0px;
    display: inline-block;
    max-width: 100%;
    height: auto;
    }
.img-circle {
    border-radius: 50%;
    }
.img-border {
    -ms-box-sizing:border-box;
	-moz-box-sizing:border-box; 
	-webkit-box-sizing:border-box; 
	-o-box-sizing:border-box;
    border:2px solid rgba(243,243,243,1.0) !important;
    }
.img-symbol-xs {
    width:30px;
    height:auto;
    float:left;
    margin:0 10px 0 0;
    }
.fit-image {
	width:100%;
	height:280px;
}
.fit-image-fullheight {
    width:100%;
    height:100%;
}
.fit-image img,
.fit-image-fullheight img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}


/* ÄRZTETEAM */
.image-grid {
    margin: -20px;
}
.image-grid-item {
    padding: 20px;
}
.image-grid-figure {
    position: relative;
    overflow: hidden;
}
.image-grid-figure img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}
.image-grid-overlay {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.image-grid-figure:hover .image-grid-overlay {
    opacity: 1;
}
.image-grid-caption {
    text-align: center;
    color: #000;
}
.image-grid-name {
    display: block;
    font-weight: bold;
    font-size: 1.1em;
}
.image-grid-position {
    display: block;
    font-size: 0.9em;
    margin-top: 4px;
    color: var(--lightblue);
}




.image-box{
	height: 100%;
	overflow:hidden;
	position: relative;
}

.fg-thumb {
    width: 100%;
    aspect-ratio: 800 / 350;
    object-fit: cover;
    object-position: center;
    display: block;
}

@supports not (aspect-ratio: 1) {
    .fg-thumb {
        height: 0;
        padding-bottom: 43.75%;
    }
}


.square-thumb {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    margin-bottom: 15px;
}

.square-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

@supports not (aspect-ratio: 1 / 1) {
    .square-thumb {
        height: 0;
        padding-bottom: 100%;
    }
}



.symbol-wrap {
    position: relative;
    overflow: hidden;
}

.symbol-bg {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    opacity: 0.10;
    z-index: 1;
    pointer-events: none;
    line-height: 1;
}

.symbol-bg,
.symbol-bg * {
    font-size: clamp(80px, 18vw, 240px);
    height: 100%;
}

.symbol-bg img,
.symbol-bg svg {
    height: 100%;
    width: auto;
    display: block;
}

.symbol-content {
    position: relative;
    z-index: 2;
}


img.filter-grayscale {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    opacity: 0.4;
    filter: alpha(opacity=40);
    -webkit-transition: var(--transition-normal);
    -moz-transition: var(--transition-normal);
    -o-transition: var(--transition-normal);
    -ms-transition: var(--transition-normal);
    transition: var(--transition-normal);
}
img.filter-grayscale:hover {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1;
    filter: alpha(opacity=1);
}
img.fill,
img.fit {
    width:100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
img.scaled-image {
    width: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}
img.scaled-image.small {
    height: 350px;
}
img.scaled-image.medium {
    height: 450px;
}




.quicklinks .inner {
	background-position: top left, top center;
	background-size: auto 100%, 100% auto;
	background-repeat: repeat-x, no-repeat;
	background-color: var(--black);
}
.quicklinks .inner .height-element {
	width: 100%;
	height: 550px;
	position: relative;
}
.quicklinks .inner .height-element h1 {
	position: absolute;
	width: 100%;
	height: auto;
	bottom: 60px;
	color: var(--white);
}
.bottom-element-1 {
	color: var(--white);
	background-position: top left, center center;
	background-size: 100% 100%, cover;
	background-repeat: no-repeat, no-repeat;
	background-color: var(--black);
}

.border-white {
	border: 3px solid var(--white);
}
.symbol-large {
	font-size: var(--font-size-headline-xlarge);
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    }
.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
    }
[role="button"] {
    cursor: pointer;
    }
none,
kbd,
pre,
samp {
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
    }
none {
    padding: 2px 4px;
    font-size: 90%;
    color: #c7254e;
    background-color: #f9f2f4;
    border-radius: 4px;
    }
pre {
    display: block;
    padding: 9.5px;
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.42857143;
    word-break: break-all;
    word-wrap: break-word;
    color: #333333;
    background-color: #f5f5f5;
    border: 1px solid #cccccc;
    border-radius: 4px;
    }
pre none {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0;
    }
.pre-scrollable {
    max-height: 340px;
    overflow-y: scroll;
    }





fieldset {
	padding: 0;
	margin: 0;
	border: 0;
	min-width: 0;
	}
legend {
	display: block;
	width: 100%;
	padding: 0;
	margin-bottom: 20px;
	font-size: 21px;
	line-height: inherit;
	color: #333333;
	border: 0;
	border-bottom: 1px solid #e5e5e5;
	}
/*
label {
	display: inline-block;
	max-width: 100%;
	margin-bottom: 5px;
	font-weight: bold;
	}
*/
input[type="search"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
input[type="radio"],
input[type="checkbox"] {
	margin: 4px 0 0;
	margin-top: 1px;
	line-height: normal;
	}
input[type="file"] {
	display: block;
	}
input[type="range"] {
	display: block;
	width: 100%;
	}
select[multiple],
select[size] {
	height: auto;
	}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
	outline: thin dotted;
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
	}
output {
	display: block;
	padding-top: 7px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555555;
	}
.form-control {
	display: block;
	width: 100%;
	height: 34px;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555555;
	background-color: #ffffff;
	background-image: none;
	border: 1px solid #cccccc;
	border-radius: 4px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);	
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
	-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	}
.form-control:focus {
	border-color: #66afe9;
	outline: 0;
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
	box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
	}
.form-control::-moz-placeholder {
	color: #999999;
	opacity: 1;
	}
.form-control:-ms-input-placeholder {
	color: #999999;
	}
.form-control::-webkit-input-placeholder {
	color: #999999;
	}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
	background-color: #eeeeee;
	opacity: 1;
	}
.form-control[disabled],
fieldset[disabled] .form-control {
	cursor: not-allowed;
	}
textarea.form-control {
	height: auto;
	}
input[type="search"] {
	-webkit-appearance: none;
	}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
	input[type="date"].form-control,
	input[type="time"].form-control,
	input[type="datetime-local"].form-control,
	input[type="month"].form-control {
		line-height: 34px;
		}
	input[type="date"].input-sm,
	input[type="time"].input-sm,
	input[type="datetime-local"].input-sm,
	input[type="month"].input-sm,
	.input-group-sm input[type="date"],
	.input-group-sm input[type="time"],
	.input-group-sm input[type="datetime-local"],
	.input-group-sm input[type="month"] {
		line-height: 30px;
		}
	input[type="date"].input-lg,
	input[type="time"].input-lg,
	input[type="datetime-local"].input-lg,
	input[type="month"].input-lg,
	.input-group-lg input[type="date"],
	.input-group-lg input[type="time"],
	.input-group-lg input[type="datetime-local"],
	.input-group-lg input[type="month"] {
		line-height: 46px;
		}
	}
.form-group {
	margin-bottom: 15px;
	}
.radio,
.checkbox {
	position: relative;
	display: block;
	margin-top: 10px;
	margin-bottom: 10px;
	}
.radio label,
.checkbox label {
	min-height: 20px;
	padding-left: 20px;
	margin-bottom: 0;
	font-weight: normal;
	cursor: pointer;
	}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
	position: absolute;
	margin-left: -20px;
	margin-top: 4px \9;
	}
.radio + .radio,
.checkbox + .checkbox {
	margin-top: -5px;
	}
.radio-inline,
.checkbox-inline {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	margin-bottom: 0;
	vertical-align: middle;
	font-weight: normal;
	cursor: pointer;
	}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
	margin-top: 0;
	margin-left: 10px;
	}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
	cursor: not-allowed;
	}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
	cursor: not-allowed;
	}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
	cursor: not-allowed;
	}
.form-control-static {
	padding-top: 7px;
	padding-bottom: 7px;
	margin-bottom: 0;
	min-height: 34px;
	}
.form-control-static.input-lg,
.form-control-static.input-sm {
	padding-left: 0;
	padding-right: 0;
	}
.input-sm {
	height: 30px;
	padding: 5px 10px;
	font-size: 12px;
	line-height: 1.5;
	border-radius: 3px;
	}
select.input-sm {
	height: 30px;
	line-height: 30px;
	}
textarea.input-sm,
select[multiple].input-sm {
	height: auto;
	}
.form-group-sm .form-control {
	height: 30px;
	padding: 5px 10px;
	font-size: 12px;
	line-height: 1.5;
	border-radius: 3px;
	}
.form-group-sm select.form-control {
	height: 30px;
	line-height: 30px;
	}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
	height: auto;
	}
.form-group-sm .form-control-static {
	height: 30px;
	min-height: 32px;
	padding: 6px 10px;
	font-size: 12px;
	line-height: 1.5;
	}
.input-lg {
	height: 46px;
	padding: 10px 16px;
	font-size: 18px;
	line-height: 1.3333333;
	border-radius: 6px;
	}
select.input-lg {
	height: 46px;
	line-height: 46px;
	}
textarea.input-lg,
select[multiple].input-lg {
	height: auto;
	}
.form-group-lg .form-control {
	height: 46px;
	padding: 10px 16px;
	font-size: 18px;
	line-height: 1.3333333;
	border-radius: 6px;
	}
.form-group-lg select.form-control {
	height: 46px;
	line-height: 46px;
	}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
	height: auto;
	}
.form-group-lg .form-control-static {
	height: 46px;
	min-height: 38px;
	padding: 11px 16px;
	font-size: 18px;
	line-height: 1.3333333;
	}
.has-feedback {
	position: relative;
	}
.has-feedback .form-control {
	padding-right: 42.5px;
	}
.form-control-feedback {
	position: absolute;
	top: 0;	
	right: 0;
	z-index: 2;
	display: block;
	width: 34px;
	height: 34px;
	line-height: 34px;	
	text-align: center;
	pointer-events: none;
	}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
	width: 46px;
	height: 46px;
	line-height: 46px;
	}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
	color: #3c763d;
	}
.has-success .form-control {
	border-color: #3c763d;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	}
.has-success .form-control:focus {
	border-color: #2b542c;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
	}
.has-success .input-group-addon {
	color: #3c763d;
	border-color: #3c763d;
	background-color: #dff0d8;
	}
.has-success .form-control-feedback {
	color: #3c763d;
	}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
	color: #8a6d3b;
	}
.has-warning .form-control {
	border-color: #8a6d3b;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	}
.has-warning .form-control:focus {
	border-color: #66512c;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
	}
.has-warning .input-group-addon {
	color: #8a6d3b;
	border-color: #8a6d3b;
	background-color: #fcf8e3;
	}
.has-warning .form-control-feedback {
	color: #8a6d3b;
	}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
	color: #a94442;
	}
.has-error .form-control {
	border-color: #a94442;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	}
.has-error .form-control:focus {
	border-color: #843534;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
	}
.has-error .input-group-addon {
	color: #a94442;
	border-color: #a94442;
	background-color: #f2dede;
	}
.has-error .form-control-feedback {
	color: #a94442;
	}
.has-feedback label ~ .form-control-feedback {
	top: 25px;
	}
.has-feedback label.sr-only ~ .form-control-feedback {
	top: 0;
	}
.help-block {
	display: block;
	margin-top: 5px;
	margin-bottom: 10px;
	color: #737373;
	}
@media (min-width: 768px) {
	.form-inline .form-group {
		display: inline-block;
		margin-bottom: 0;
		vertical-align: middle;
		}
	.form-inline .form-control {
		display: inline-block;
		width: auto;
		vertical-align: middle;
		}
	.form-inline .form-control-static {
		display: inline-block;
		}
	.form-inline .input-group {
		display: inline-table;
		vertical-align: middle;
		}
	.form-inline .input-group .input-group-addon,
	.form-inline .input-group .input-group-btn,
	.form-inline .input-group .form-control {
		width: auto;
		}
	.form-inline .input-group > .form-control {
		width: 100%;
		}
	.form-inline .control-label {
		margin-bottom: 0;
		vertical-align: middle;
		}
	.form-inline .radio,
	.form-inline .checkbox {
		display: inline-block;
		margin-top: 0;
		margin-bottom: 0;
		vertical-align: middle;
		}
	.form-inline .radio label,
	.form-inline .checkbox label {
		padding-left: 0;
		}
	.form-inline .radio input[type="radio"],
	.form-inline .checkbox input[type="checkbox"] {
		position: relative;
		margin-left: 0;
		}
	.form-inline .has-feedback .form-control-feedback {
		top: 0;
		}
	}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 7px;
	}
.form-horizontal .radio,
.form-horizontal .checkbox {
	min-height: 27px;
	}
.form-horizontal .form-group {
	margin-left: -15px;
	margin-right: -15px;
	}
@media (min-width: 768px) {
	.form-horizontal .control-label {
		text-align: right;
		margin-bottom: 0;
		padding-top: 7px;
		}
	}
.form-horizontal .has-feedback .form-control-feedback {
	right: 15px;
	}
@media (min-width: 768px) {
	.form-horizontal .form-group-lg .control-label {
		padding-top: 14.333333px;
		font-size: 18px;
		}
	}
@media (min-width: 768px) {
	.form-horizontal .form-group-sm .control-label {
		padding-top: 6px;
		font-size: 12px;
		}
	}
.input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
	width: 100%;
	}
.fade {
	opacity: 0;
	-webkit-transition: opacity 0.15s linear;
	-o-transition: opacity 0.15s linear;
	transition: opacity 0.15s linear;
	}
.fade.in {
	opacity: 1;
	}
.collapse {
	display: none;
	}
.collapse.in {
	display: block;
	}
tr.collapse.in {
	display: table-row;
	}
tbody.collapse.in {
	display: table-row-group;
	}
.collapsing {
	position: relative;
	height: 0;
	overflow: hidden;
	-webkit-transition-property: height, visibility;
	-o-transition-property: height, visibility;
	transition-property: height, visibility;
	-webkit-transition-duration: 0.35s;
	-o-transition-duration: 0.35s;
	transition-duration: 0.35s;
	-webkit-transition-timing-function: ease;
	-o-transition-timing-function: ease;
	transition-timing-function: ease;
	}
.caret {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 2px;
	vertical-align: middle;
	border-top: 4px dashed;
	border-top: 4px solid;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	}
.carousel {
	position: relative;
	}
.carousel-inner {
	position: relative;
	overflow: hidden;
	width: 100%;
    border:5px solid rgba(255,255,255,1);
    box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
	}
.carousel-inner > .item {
	display: none;
	position: relative;
	-webkit-transition: 0.6s ease-in-out left;
	-o-transition: 0.6s ease-in-out left;
	transition: 0.6s ease-in-out left;
	}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
	line-height: 1;
	}
@media all and (transform-3d), (-webkit-transform-3d) {
	.carousel-inner > .item {
		-webkit-transition: -webkit-transform 0.6s ease-in-out;
		-o-transition: -o-transform 0.6s ease-in-out;
		transition: transform 0.6s ease-in-out;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-perspective: 1000px;
		perspective: 1000px;
		}
	.carousel-inner > .item.next,
	.carousel-inner > .item.active.right {
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
		left: 0;
		}
	.carousel-inner > .item.prev,
	.carousel-inner > .item.active.left {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		left: 0;
		}
	.carousel-inner > .item.next.left,
	.carousel-inner > .item.prev.right,
	.carousel-inner > .item.active {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		left: 0;
		}
	}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
	display: block;
	}
.carousel-inner > .active {
	left: 0;
	}
.carousel-inner > .next,
.carousel-inner > .prev {
	position: absolute;
	top: 0;
	width: 100%;
	}
.carousel-inner > .next {
	left: 100%;
	}
.carousel-inner > .prev {
	left: -100%;
	}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
	left: 0;
	}
.carousel-inner > .active.left {
	left: -100%;
	}
.carousel-inner > .active.right {
	left: 100%;
	}
.carousel-control {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 15%;
	opacity: 0.5;
	filter: alpha(opacity=50);
	font-size: 20px;
	color: #ffffff;
	text-align: center;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
	}
.carousel-control.left {
	background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
	background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
	background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
	}
.carousel-control.right {
	left: auto;
	right: 0;
	background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
	background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
	background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
	}
.carousel-control:hover,
.carousel-control:focus {
	outline: 0;
	color: #ffffff;
	text-decoration: none;
	opacity: 0.9;
	filter: alpha(opacity=90);
	}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
	position: absolute;
	top: 50%;
	margin-top: -10px;
	z-index: 5;
	display: inline-block;
	}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
	left: 50%;
	margin-left: -10px;
	}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
	right: 50%;
	margin-right: -10px;
	}
.carousel-control .icon-prev,
.carousel-control .icon-next {
	width: 20px;
	height: 20px;
	line-height: 1;
	font-family: serif;
	}
.carousel-control .icon-prev:before {
	content: '\2039';
	}
.carousel-control .icon-next:before {
	content: '\203a';
	}
.carousel-indicators {
	position: absolute;
	bottom: 10px;
	left: 50%;
	z-index: 15;
	width: 60%;
	margin-left: -30%;
	padding-left: 0;
	list-style: none;
	text-align: center;
	}
.carousel-indicators li {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 1px;
	text-indent: -999px;
	border: 1px solid #ffffff;
	border-radius: 10px;
	cursor: pointer;
	background-color: #000;
	background-color: rgba(0, 0, 0, 0);
	}
.carousel-indicators .active {
	margin: 0;
	width: 12px;
	height: 12px;
	background-color: #ffffff;
	}
.carousel-caption {
	position: absolute;
	left: 15%;
	right: 15%;
	bottom: 130px;
	z-index: 10;
	padding-top: 20px;
	padding-bottom: 20px;
	color: #000;
	text-align: left;
	/* text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); */
	}
.carousel-caption .btn {
	text-shadow: none;
	}
@media screen and (min-width: 768px) {
	.carousel-control .glyphicon-chevron-left,
	.carousel-control .glyphicon-chevron-right,
	.carousel-control .icon-prev,
	.carousel-control .icon-next {
		width: 30px;
		height: 30px;
		margin-top: -15px;
		font-size: 30px;
		}
	.carousel-control .glyphicon-chevron-left,
	.carousel-control .icon-prev {
		margin-left: -15px;
		}
	.carousel-control .glyphicon-chevron-right,
	.carousel-control .icon-next {
		margin-right: -15px;
		}
	.carousel-caption {
        top:30%;
        bottom:30%;
		left: 3%;
		right: 50%;
		padding: 20px;
        font-size:21px;
        background: rgba(255, 255, 255, 0.8);
		}
	.carousel-indicators {
		bottom: 20px;
		}
	}
.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after {
	content: " ";
	display: table;
	}
.clearfix:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after {
	clear: both;
	}
.clear {
    clear: both;
    }
.center-block {
	display: block;
	margin-left: auto;
	margin-right: auto;
	}
.pull-right {
	float: right !important;
	}
.pull-left {
	float: left !important;
	}
.hide {
	display: none !important;
	}
.show {
	display: block !important;
	}
.invisible {
	visibility: hidden;
	}
.text-hide {
	font: 0/0 a;
	color: transparent;
	text-shadow: none;
	background-color: transparent;
	border: 0;
	}
.hidden {
	display: none !important;
	}
.affix {
	position: fixed;
	}
@-ms-viewport {
	width: device-width;
	}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
	display: none !important;
	}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
	display: none !important;
	}
@media (max-width: 767px) {
	.visible-xs {
		display: block !important;
		}
	table.visible-xs {
		display: table !important;
		}
	tr.visible-xs {
		display: table-row !important;
		}
	th.visible-xs,
	td.visible-xs {
		display: table-cell !important;
		}
	}
@media (max-width: 767px) {
	.visible-xs-block {
		display: block !important;
		}
	}
@media (max-width: 767px) {
	.visible-xs-inline {
		display: inline !important;
		}
	}
@media (max-width: 767px) {
	.visible-xs-inline-block {
		display: inline-block !important;
		}
	}
@media (min-width: 768px) and (max-width: 991px) {
	.visible-sm {
		display: block !important;
		}
	table.visible-sm {
		display: table !important;
		}
	tr.visible-sm {
		display: table-row !important;
		}
	th.visible-sm,
	td.visible-sm {
		display: table-cell !important;
		}
	}
@media (min-width: 768px) and (max-width: 991px) {
	.visible-sm-block {
		display: block !important;
		}
	}
@media (min-width: 768px) and (max-width: 991px) {
	.visible-sm-inline {
		display: inline !important;
		}
	}
@media (min-width: 768px) and (max-width: 991px) {
	.visible-sm-inline-block {
		display: inline-block !important;
		}
	}
@media (min-width: 992px) and (max-width: 1199px) {
	.visible-md {
		display: block !important;
		}
	table.visible-md {
		display: table !important;
		}
	tr.visible-md {
		display: table-row !important;
		}
	th.visible-md,
	td.visible-md {
		display: table-cell !important;
		}
	}
@media (min-width: 992px) and (max-width: 1199px) {
	.visible-md-block {
		display: block !important;
		}
	}
@media (min-width: 992px) and (max-width: 1199px) {
	.visible-md-inline {
		display: inline !important;
		}
	}
@media (min-width: 992px) and (max-width: 1199px) {
	.visible-md-inline-block {
		display: inline-block !important;
		}
	}
@media (min-width: 1200px) {
	.visible-lg {
		display: block !important;
		}
	table.visible-lg {
		display: table !important;
		}
	tr.visible-lg {
		display: table-row !important;
		}
	th.visible-lg,
	td.visible-lg {
		display: table-cell !important;
		}
	}
@media (min-width: 1200px) {
	.visible-lg-block {
		display: block !important;
		}
	}
@media (min-width: 1200px) {
	.visible-lg-inline {
		display: inline !important;
		}
	}
@media (min-width: 1200px) {
	.visible-lg-inline-block {
		display: inline-block !important;
		}
	}
@media (max-width: 767px) {
	.hidden-xs {
		display: none !important;
		}
	}
@media (min-width: 768px) and (max-width: 991px) {
	.hidden-sm {
		display: none !important;
		}
	}
@media (min-width: 992px) and (max-width: 1199px) {
	.hidden-md {
		display: none !important;
		}
	}
@media (min-width: 1200px) {
	.hidden-lg {
		display: none !important;
		}
	}
.visible-print {
	display: none !important;
	}
@media print {
	.visible-print {
		display: block !important;
		}
	table.visible-print {
		display: table !important;
		}
	tr.visible-print {
		display: table-row !important;
		}
	th.visible-print,
	td.visible-print {
		display: table-cell !important;
		}
	}
.visible-print-block {
	display: none !important;
	}
@media print {
	.visible-print-block {
		display: block !important;
		}
	}
.visible-print-inline {
	display: none !important;
	}
@media print {
	.visible-print-inline {
		display: inline !important;
		}
	}
.visible-print-inline-block {
	display: none !important;
	}
@media print {
	.visible-print-inline-block {
		display: inline-block !important;
		}
	}
@media print {
	.hidden-print {
		display: none !important;
		}
	}
/* position */
.fl {
	float:left;
	}
.fr {
	float:right;
	}
.pr {
	position:relative;
	}
.pa {
	position:absolute;
	}
/* margin and padding styles */
.bbox {
	box-sizing:border-box;
	-ms-box-sizing:border-box;
	-moz-box-sizing:border-box; 
	-webkit-box-sizing:border-box; 
	-o-box-sizing:border-box; 
	}
.no-margin {
    margin:0 !important
    }
.m10 {
	margin:10px;
	}
.m20 {
	margin:20px;
	}
.m30 {
	margin:30px;
	}
.m40 {
	margin:40px;
	}
.m50 {
	margin:50px;
	}
.m60 {
	margin:60px;
	}
.m70 {
	margin:70px;
	}
.m80 {
	margin:80px;
	}
.m90 {
	margin:90px;
	}
.m100 {
	margin:100px;
	}
.m100 {
	margin:100px;
	}
.mt5 {
	margin-top:5px;
	}
.mr5 {
	margin-right:5px;
	}
.mb5 {
	margin-bottom:5px;
	}
.ml5 {
	margin-left:5px;
	}
.mt10 {
	margin-top:10px;
	}
.mr10 {
	margin-right:10px;
	}
.mb10 {
	margin-bottom:10px;
	}
.ml10 {
	margin-left:10px;
	}
.mt15 {
	margin-top:15px;
	}
.mr15 {
	margin-right:15px;
	}
.mb15 {
	margin-bottom:15px;
	}
.ml15 {
	margin-left:15px;
	}
.mt20 {
	margin-top:20px;
	}
.mr20 {
	margin-right:20px;
	}
.mb20 {
	margin-bottom:20px;
	}
.ml20 {
	margin-left:20px;
	}
.mt30 {
	margin-top:30px !important;
	}
.mr30 {
	margin-right:30px !important;
	}
.mb30 {
	margin-bottom:30px !important;
	}
.ml30 {
	margin-left:30px !important;
	}
.mt40 {
	margin-top:40px;
	}
.mr40 {
	margin-right:40px;
	}
.mb40 {
	margin-bottom:40px;
	}
.ml40 {
	margin-left:40px;
	}
.mt50 {
	margin-top:50px !important;
	}
.mr50 {
	margin-right:50px !important;
	}
.mb50 {
	margin-bottom:50px !important;
	}
.ml50 {
	margin-left:50px !important;
	}
.mt60 {
	margin-top:60px;
	}
.mr60 {
	margin-right:60px;
	}
.mb60 {
	margin-bottom:60px;
	}
.ml60 {
	margin-left:60px;
	}
.mt65 {
	margin-top:65px;
	}
.mr65 {
	margin-right:65px;
	}
.mb65 {
	margin-bottom:65px;
	}
.ml65 {
	margin-left:65px;
	}
.mt70 {
	margin-top:70px;
	}
.mr70 {
	margin-right:70px;
	}
.mb70 {
	margin-bottom:70px;
	}
.ml70 {
	margin-left:70px;
	}
.mt80 {
	margin-top:80px;
	}
.mr80 {
	margin-right:80px;
	}
.mb80 {
	margin-bottom:80px;
	}
.ml80 {
	margin-left:80px;
	}
.mt90 {
	margin-top:90px;
	}
.mr90 {
	margin-right:90px;
	}
.mb90 {
	margin-bottom:90px;
	}
.ml90 {
	margin-left:90px;
	}
.mt100 {
	margin-top:100px;
	}
.mr100 {
	margin-right:100px;
	}
.mb100 {
	margin-bottom:100px;
	}
.ml100 {
	margin-left:100px;
	}
.mt150 {
	margin-top:150px;
	}
.mr150 {
	margin-right:150px;
	}
.mb150 {
	margin-bottom:150px;
	}
.ml150 {
	margin-left:150px;
	}
.no-b,
.no-border {
	border:none;
	}
.b1 {
    border:1px solid #fff;
    }
.b2 {
    border:2px solid #fff;
    }
.b5 {
    border:5px solid #fff;
    }
.b10 {
    border:10px solid #fff;
    }
.bb1 {
    border-bottom:1px dotted rgba(0,0,0,.25) !important;
    }
.bt10 {
    border-top:10px solid rgba(255,255,255,1);
    }
.br10 {
    border-right:10px solid rgba(255,255,255,1);
    }
.bb10 {
    border-bottom:10px solid rgba(255,255,255,1);
    }
.bb10_green {
    border-bottom:10px solid rgba(7,64,108,.7);
    }
.bl10 {
    border-left:10px solid rgba(255,255,255,1);
    }
.b20 {
    border:20px solid rgba(255,255,255,1.0);
    }
.bt20 {
    border-top:20px solid rgba(255,255,255,1);
    }
.br20 {
    border-right:20px solid rgba(255,255,255,1);
    }
.bb20 {
    border-bottom:20px solid rgba(255,255,255,1);
    }
.bl20 {
    border-left:20px solid rgba(255,255,255,1);
    }

.bt1 {
    border-top:1px solid #fff;
    }
.br1 {
    border-right:1px solid #fff;
    }
.bb1 {
    border-bottom:1px solid #fff;
    }
.bl1 {
    border-left:1px solid #fff;
    }
.no-p,
.no-padding {
	padding:0 !important;
	}
.p10 {
	padding:10px !important;
	}
.p15 {
	padding:15px !important;
	}
.p20 {
	padding:20px !important;
	}
.p30 {
	padding:30px !important;
	}
.p40 {
	padding:40px !important;
	}
.p50 {
	padding:50px !important;
	}
.p60 {
	padding:60px !important;
	}
.p70 {
	padding:70px !important;
	}
.p80 {
	padding:80px !important;
	}
.p90 {
	padding:90px !important;
	}
.p100 {
	padding:100px !important;
	}
.pt0 {
	padding-top:0px;
	}
.pr0 {
	padding-right:0px;
	}
.pb0 {
	padding-bottom:0px;
	}
.pl0 {
	padding-left:0px;
	}
.pt10 {
	padding-top:10px;
	}
.pr10 {
	padding-right:10px;
	}
.pb10 {
	padding-bottom:10px;
	}
.pl10 {
	padding-left:10px;
	}
.pt15 {
	padding-top:15px;
	}
.pr15 {
	padding-right:15px;
	}
.pb15 {
	padding-bottom:15px;
	}
.pl15 {
	padding-left:15px;
	}
.pt20 {
	padding-top:20px;
	}
.pr20 {
	padding-right:20px;
	}
.pb20 {
	padding-bottom:20px;
	}
.pl20 {
	padding-left:20px;
	}
.pt30 {
	padding-top:30px;
	}
.pr30 {
	padding-right:30px;
	}
.pb30 {
	padding-bottom:30px;
	}
.pl30 {
	padding-left:30px;
	}
.pt40 {
	padding-top:40px;
	}
.pr40 {
	padding-right:40px;
	}
.pb40 {
	padding-bottom:40px;
	}
.pl40 {
	padding-left:40px;
	}
.pt50 {
	padding-top:50px !important;
	}
.pr50 {
	padding-right:50px !important;
	}
.pb50 {
	padding-bottom:50px !important;
	}
.pl50 {
	padding-left:50px !important;
	}
.pt60 {
	padding-top:60px;
	}
.pr60 {
	padding-right:60px;
	}
.pb60 {
	padding-bottom:60px;
	}
.pl60 {
	padding-left:60px;
	}
.pt65 {
	padding-top:65px;
	}
.pr65 {
	padding-right:65px;
	}
.pb65 {
	padding-bottom:65px;
	}
.pl65 {
	padding-left:65px;
	}
.pt70 {
	padding-top:70px;
	}
.pr70 {
	padding-right:70px;
	}
.pb70 {
	padding-bottom:70px;
	}
.pl70 {
	padding-left:70px;
	}
.pt75 {
	padding-top:75px;
	}
.pr75 {
	padding-right:75px;
	}
.pb75 {
	padding-bottom:75px;
	}
.pl75 {
	padding-left:75px;
	}
.pt85 {
	padding-top:80px;
	}
.pr80 {
	padding-right:80px;
	}
.pb80 {
	padding-bottom:80px;
	}
.pl80 {
	padding-left:80px;
	}
.pt100 {
	padding-top:100px !important;
	}
.pr100 {
	padding-right:100px !important;
	}
.pb100 {
	padding-bottom:100px !important;
	}
.pl100 {
	padding-left:100px !important;
	}
.pt200 {
	padding-top:200px !important;
	}
.pr200 {
	padding-right:200px !important;
	}
.pb200 {
	padding-bottom:200px !important;
	}
.pl200 {
	padding-left:200px !important;
	}
.padding-small {
	padding: var(--padding-small) !important;
	}
.padding-small-top {
	padding-top: var(--padding-small) !important;
	}
.padding-small-right {
	padding-right: var(--padding-small) !important;
	}
.padding-small-bottom {
	padding-bottom: var(--padding-small) !important;
	}
.padding-small-left {
	padding-left: var(--padding-small) !important;
	}
.padding-medium {
	padding: var(--padding-medium) !important;
	}
.padding-medium-top {
	padding-top: var(--padding-medium) !important;
	}
.padding-medium-right {
	padding-right: var(--padding-medium) !important;
	}
.padding-medium-bottom {
	padding-bottom: var(--padding-medium) !important;
	}
.padding-medium-left {
	padding-left: var(--padding-medium) !important;
	}
.padding-large {
	padding: var(--padding-large) !important;
	}
.padding-large-top {
	padding-top: var(--padding-large) !important;
	}
.padding-large-right {
	padding-right: var(--padding-large) !important;
	}
.padding-large-bottom {
	padding-bottom: var(--padding-large) !important;
	}
.padding-large-left {
	padding-left: var(--padding-large) !important;
	}
.padding-text-element {
	padding: var(--padding-text-element-large) !important;
	}










.al {
	text-align:left;
	}
.ar {
	text-align:right;
	}
.ac {
	text-align:center;
	}
.aj {
	text-align:justify;
	}
.textuppercase {
	text-transform:uppercase;
	}
.flexbox-container-outer {
	display: flex; 
	flex-wrap: wrap;
	}

.flexbox-container-inner  {
	width:100%;
	margin: auto;
	}
.vertical-align-middle {
	display: flex; 
	display: -webkit-flex; 
	}
.vertical-align-middle span,
.vertical-align-middle div.align {
	margin: auto;
	}
.vertical {
	writing-mode: vertical-rl; 
	}
.textlowercase {
	text-transform:lowercase;
	}
.font_weight_bold {
    font-weight: bold;
    }
.font-size-small {
	font-size: var(--font-size-small);
	line-height: var(--line-height-small);
	padding: 0;
	font-weight: lighter;
	z-index: 9999;
	text-transform: uppercase;
	letter-spacing: 2px;
	}
span.spacer-lg {
	margin:0 20px;
	}
span.spacer-md {
	margin:0 15px;
	}
span.spacer-sm {
	margin:0 10px;
	}
span.spacer-xs {
    margin:0 5px;
    }
p {
	margin:0px;
	}

.shadow {
    -webkit-box-shadow:0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
    box-shadow:0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
    }
/* =============================================
### TEXT / HYPERLINKS
================================================ */
/* TEXT-ALIGNMENT */
.text-align-right {
    text-align: right;
}
.text-align-center {
    text-align: center !important;
}
.text-align-left {
    text-align: left;
}
.text-align-justify {
    text-align: justify;
}

/* TEAM */
.symbols i {
    width: 30px;
    display: inline-block;
}
/* HYPERLINKS */

a#light_a,
a#light_a:hover,
a#light_a:visited,
a#light_a:active,
a.light_a,
a.light_a:hover,
a.light_a:visited,
a.light_a:active {
	margin:0px !important;
	padding:0px !important;
	background:none !important;
    text-decoration: none !important;
    -webkit-user-select: none !important;
    -webkit-touch-callout: none !important;
	}
a,
a:visited,
a:focus,
a:active {
	color:var(--black);
	text-decoration: none;
	background: none;
	padding:0;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	transition: all 0.2s ease;
	}
a:hover {
	color: var(--turquoise);
	text-decoration: none;
	background:none;
	padding:0;
	}
.sticky-bar .imprint {
    text-align: right;
    }
.sticky-bar .imprint a,
.sticky-bar .imprint a:visited,
.sticky-bar .imprint a:focus,
.sticky-bar .imprint a:active,
.sticky-bar .imprint a:hover {
	color:var(--white);
	text-decoration: none;
	background: none var(--turquoise);
	padding:2px 10px ;
	font-size: var(--text-font-size-xs);
	line-height: var(--text-font-line-height-xs);
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	transition: all 0.2s ease;
	}
.sticky-bar .imprint a:hover {
	color: var(--white);
	text-decoration: none;
	background:none var(--black);
	padding:5px 10px;
	}





footer a,
footer a:visited,
footer a:focus,
footer a:active {
	color:var(--white);
	}
footer a:hover {
	color: var(--turquoise);
	padding:0;
	}
a.no-padding,
a.no-padding:visited,
a.no-padding:focus,
a.no-padding:active,
a.no-padding:hover {
	padding:0 !important;
}

a.no-effect:after,
a.no-effect:hover:after,
a#swipebox-close:after,
a#swipebox-close:after {
	height: 0em;
	border-bottom: none;
	}



/* FOOTER HYPERLINKS */
.link-row {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.link-row .link-col {
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.link-row .link-col a {
    display: inline-block;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4;
}




/* BUTTON */
.button {
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 0px 30px !important;
    border-radius: 0;
    text-transform: none;
    margin:15px 0;
    -webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	transition: all 0.2s ease;
	}
.button.button-lg {
	padding: 10px 30px !important;
}
.button.black {
	border: none;
	background-color: var(--black);
	color: var(--white);
	}
.button.black:hover {
	border: none;
	background-color: var(--turquoise);
	color: var(--white);
	}
.button.white {
	border: none;
	background-color: var(--white);
	color: var(--black);
	}
.button.white:hover {
	border: none;
	background-color: var(--turquoise);
	color: var(--white);
	}
.button.turquoise {
    border: none;
    background-color: var(--turquoise);
    color: var(--white);
    }
.button.turquoise:hover {
    border: none;
    background-color: var(--white);
    color: var(--black);
    }

/* IMAGES */
.imagefill {
    background-position: center center;
    background-size: cover;
}


/* ===== AUFZAEHLUNG ===== */
content ul {
    list-style: square;
    margin:0 0 0 18px;
    padding:0;
    }



/* Kontaktformular ===== */
.input_field,
.input_area,
.input_button {
	width:100%;
	height:auto;
	padding:10px 20px !important;
	margin:0 0 20px !important;
	background-color:var(--trans);
	font-size: var(--text-font-size);
	line-height: var(--text-font-line-height);
	border:1px dotted var(--white);
	color:var(--black);
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.input_area {
	height:180px;
}
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder{
    color:var(--white);
    }
.input_button {
	width:100%;
	background-color: var(--turquoise70);
	color:var(--white);
    border:none;
	text-align: center;
	float:left;
	}
.input_button:hover,
.input_button:focus {
    width:100%;
	background-color: var(--turquoise);
	color:var(--white);
	outline-width: 0 !important;
	}
input.honeypot {
	width:100%;
	height:1px;
	color:var(--trans);
	font-size:1px;
	border: none;
	padding: 0;
	margin: 0;
}
label.hp-message {
	display: none;
}
div.haftungshinweis {
	margin-bottom:30px;
	font-size: var(--text-font-size-xs);
	line-height: var(--text-font-line-height-xs);
}  


/* custom checkbox styling for contact form 7 checkbox */
span.wpcf7-list-item {
	display: inline-block;
	margin: 0;
	}
.wpcf7 .wpcf7-list-item {
display: block;
margin-bottom: 10px;
}
.wpcf7-checkbox label {
position: relative;
cursor: pointer;
}
.wpcf7-checkbox input[type=checkbox] {
/*position: relative;*/
position: absolute;
visibility: hidden;
width: 30px;
height: 30px;
top: 0;
left: 0;
}
.wpcf7-checkbox input[type=checkbox] + span {
/* border: 3px solid red; */
}
.wpcf7-checkbox input[type=checkbox] + span:before {
display: block;
position: absolute;
content: '';
border-radius: 0;
height: 30px;
width: 30px;
top: 0px;
left: 0px;
border: none;
background-color:var(--black10);
}
.wpcf7-checkbox input[type=checkbox] + span:after {
display: block;
position: absolute;
content: "\2713";
height: 30px;
width: 30px;
top: 0;
left: 0;
visibility: hidden;
font-size: 18px;
text-align: center;
line-height: 30px;
}
.wpcf7-checkbox input[type=checkbox]:checked + span:before {
background: transparent;
}
.wpcf7-checkbox input[type=checkbox]:checked + span:after {
visibility: visible;
}
.wpcf7-list-item-label {
margin-left: 40px;
display: inline-block;
}
#checkbox_datenschutz .wpcf7-list-item-label {
	color: var(--trans);
}
.wpcf7 img.ajax-loader {
width:auto;
max-width:100%;
height:auto;
border:none;
}
/* =============================================
### TABLE / TABLEPRESS
================================================ */
table.flexx-table {
    width:100%;
    -webkit-border-horizontal-spacing: 2px;
    -webkit-border-vertical-spacing: 2px;
    border-top-color: none;
}
table.flexx-table tr {
    text-align: left;
}
table.flexx-table tr td{
    padding:5px 10px;
}
table.flexx-table thead tr {
    background-color: var(--transparent) !important;
}
table.flexx-table tr:nth-child(even) {
    background-color: var(--gray20);
}
table.flexx-table tr:nth-child(odd) {
    background-color: var(--gray30);
}
table.flexx-table tr:hover {
    background-color: var(--gray50);
    -webkit-transition: var(--transition-normal);
    -moz-transition: var(--transition-normal);
    -o-transition: var(--transition-normal);
    -ms-transition: var(--transition-normal);
    transition: var(--transition-normal);
}
table.flexx-table.flexx-col-1 td,
table.flexx-table.flexx-col-2 td {
    width:50%;
}
table.flexx-table.flexx-col-3 td {
    width:33.3333%;
}
table.flexx-table.flexx-col-4 td {
    width:25%;
}



table.flexx-table.downloads {
  width: 100%;
  table-layout: auto; 
}

table.flexx-table.downloads thead tr {
  background-color: var(--trans) !important;
  color: var(--black) !important;
  
}

table.flexx-table.downloads tbody tr td:first-child {
  width: 1%;
  white-space: nowrap; 
  text-align: center;
}

table.flexx-table.downloads tbody tr td:first-child i {
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  vertical-align: middle;
  
}

table.flexx-table.downloads tbody tr td:last-child {
  width: auto;
}

/* =============================================
### ACCORDION
================================================ */
.flexx-accordion {
    border-top: 1px solid var(--black30);
}

.acc-item {
    border-bottom: 1px solid var(--black30);
    background: var(--gray10);
    transition: background 0.3s ease;
    position: relative;
}

.acc-item:has(.acc-toggle:checked) {
    background: var(--gray30);
}

.acc-toggle {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0;
    height: 0;
}

.acc-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1rem;
    cursor: pointer;
    user-select: none;
    transition: color 0.2s ease;
    margin: 0;
    color: var(--black80);
}

.acc-head:hover {
    color: var(--black);
}

.acc-title {
    font-weight: 600;
    line-height: 1.3;
    overflow-wrap: anywhere;
    min-width: 0;
}

.acc-icon {
    position: relative;
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    transition: transform 0.35s ease;
}

.acc-icon::before,
.acc-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 2px;
    background: currentColor;
    border-radius: 2px;
    transform: translate(-50%, -50%);
}

.acc-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.acc-toggle:checked ~ .acc-head .acc-icon {
    transform: rotate(45deg);
}

.acc-content-wrap {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.35s ease;
}

.acc-toggle:checked ~ .acc-content-wrap {
    grid-template-rows: 1fr;
}

.acc-content {
    min-height: 0;
    overflow: hidden;
    padding: 0 1rem;
    color: var(--black80);
    overflow-wrap: anywhere;
    transition: padding-bottom 0.35s ease;
}

.acc-toggle:checked ~ .acc-content-wrap .acc-content {
    padding-bottom: 1.2rem;
}

.acc-toggle:focus-visible ~ .acc-head {
    outline: 2px solid var(--black50);
    outline-offset: -2px;
}

@media (prefers-reduced-motion: reduce) {
    .acc-item,
    .acc-icon,
    .acc-content-wrap,
    .acc-head {
        transition: none;
    }
}
}


/* =============================================
   IMAGES / GALLERY
================================================ */
img.alignleft,
img.alignright,
img.aligncenter {
    /*
    border:5px solid #fff !important;
    -webkit-box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.75);
    -moz-box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.75);
    box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.75);
    */
    }
img.alignleft {
    margin:0 20px 20px 0;
    float:left;
    }
img.alignright {
    margin:0 0 20px 20px;
    float:right;
    }
img.aligncenter {
    margin:0 auto 20px;
    display:block;
    }
/* IMAGE-GALLERY */
.image-gallery-wrapper {
    position: relative;
    overflow: hidden;
}

.image-gallery-wrapper img.scaled-image {
    width: 100%;
    height: 100%;
    aspect-ratio: 2 / 1;
    object-fit: cover;
    object-position: center center;
    display: block;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.image-gallery-wrapper img.scaled-image:hover {
    transform: scale(1.08);
}


.image-gallery-wrapper_1_1 img.scaled-image {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center center;
    display: block;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.image-gallery-wrapper_1_1 img.scaled-image:hover {
    transform: scale(1.08);
}

/* GALLERY  */
#swipebox-overlay {
    z-index: 999999999!important;
}
.gallery-item {
    margin: 0 !important;
    padding: 0 0 6px 15px!important;
    box-sizing:border-box;
    -ms-box-sizing:border-box;
    -moz-box-sizing:border-box; 
    -webkit-box-sizing:border-box; 
    -o-box-sizing:border-box;
}
img.attachment-thumbnail.size-thumbnail,
img.attachment-medium.size-medium,
img.attachment-large.size-large,
img.attachment-large.size-full,
img.attachment-320px_500px.size-320px_500px,
img.attachment-640px_480px.size-640px_480px,
img.attachment-800px_350px.size-800px_350px,
img.attachment-800px_450px.size-800px_450px,
img.attachment-800px_500px.size-800px_500px,
img.attachment-800px_600px.size-800px_600px,
img.attachment-fix_width_800px_flex_height.size-fix_width_800px_flex_height,
img.attachment-crop_800px_350px.size-crop_800px_350px,
img.attachment-crop_460px_460px.size-crop_460px_460px,
img.attachment-slider_image.size-slider_image,
img.attachment-xs.size-xs,
img.attachment-sm.size-sm,
img.attachment-md.size-md,
img.attachment-lg.size-lg {
    width:100%;
    height:auto;
    border:none !important;
}
.gallery-item a,
.gallery-item a:hover,
.gallery-item a:visited,
.gallery-item a:active {
    color: var(--trans);
    margin:0px !important;
    padding:0px !important;
    background:none !important;
    text-decoration: none !important;
    -webkit-user-select: none !important;
    -webkit-touch-callout: none !important;
    -webkit-transition: var(--transition-normal);
    -moz-transition: var(--transition-normal);
    -o-transition: var(--transition-normal);
    -ms-transition: var(--transition-normal);
    transition: var(--transition-normal);
}
.gallery-item a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -webkit-transition: var(--transition-normal);
    -moz-transition: var(--transition-normal);
    -o-transition: var(--transition-normal);
    -ms-transition: var(--transition-normal);
    transition: var(--transition-normal);
}

/* =============================================
   VIDEO
================================================ */

.container-fluid-outer {
    position: relative;
}

.row.no-padding {
    margin-left: 0;
    margin-right: 0;
}

.row.no-padding > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}









/* =============================================
   VIDEO
================================================ */

body {
    background-color: #fff;
}

.container-fluid-outer {
    position: relative;
}

.row.no-padding {
    margin-left: 0;
    margin-right: 0;
}

.row.no-padding > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

#view-height {
    height: 100vh;
    position: relative;
    overflow: hidden;

    /* Schräger unterer Rand */
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 88%, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% 88%, 0 100%);
}

video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 1;
}


/* =============================================
   OVERLAY LOGO + LINKS
================================================ */

#overlay-logo {
    position: absolute;
    inset: 0;
    z-index: 2;

    width: 100%;
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;

    display: flex;
    align-items: flex-end;     /* unten */
    justify-content: flex-end; /* rechts */

    pointer-events: none;
}

.logo-block {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    width: auto;
    max-width: 100%;
    margin-bottom: 0px;
    pointer-events: auto;
}

.logo-block picture {
    display: block;
    max-width: 100%;
}

.logo-block img {
    display: block;

    width: auto;
    height: auto;
    max-width: 100%;

    margin: 0;
}

.overlay-links {
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.overlay-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 18px 36px;

    background-color: #153761;
    color: #fff;

    text-decoration: none;
    line-height: 1;
}

.overlay-links a:hover,
.overlay-links a:focus {
    text-decoration: none;
    background-color: #0f2a4c;
}


/* =============================================
   RESPONSIVE
================================================ */

@media (max-width: 767px) {
    #view-height {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 94%, 0 100%);
        clip-path: polygon(0 0, 100% 0, 100% 94%, 0 100%);
    }

    .overlay-links {
        margin-top: 20px;
        gap: 12px;
    }

    .overlay-links a {
        padding: 14px 24px;
    }
}










/* =============================================
   ### CUSTOM STYLES
================================================ */
/* GENERAL */
html,
body,
.container-height-100 {
  height:100%;
    }
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: var(--colorsample);
	}
body {
	margin:0;
	padding:0;
	font-family: 'Open Sans';
	font-weight:300;
    font-size:var(--text-font-size);
	line-height:var(--text-font-line-height);
	color:var(--black);
	background-color: var(--white);
	-webkit-font-smoothing: antialiased;
	}
/* CONTAINER */
header .sticky-bar {
	position: fixed;
	width: 100%;
	top: 0px;
	background-color:none;
	z-index: 10000;

}




header .logo_toggle_nav img {
    width: auto;
    height: 100%;
    margin: 0;
    float: right;
}

body.is-frontpage header .logo_toggle_nav img {
    height: 0%;
}
body.is-frontpage header.content .logo_toggle_nav img,
body.is-frontpage header.shrink  .logo_toggle_nav img {
    height: 100%;
}







.container-fluid-outer {
    width:100%;
    min-height:auto;
    }
.container-fluid-outer.no-margin-bottom {
	margin-bottom:0px !important;
    }
.container-fluid-inner {
    max-width:1500px;
    height:auto;
    display:block;
    margin-right:auto;
    margin-left:auto;
	position: relative;
    }
div.spacer {
	width:100%;
	height:100px;
}

main .inner {
	padding:40px 20px;
}
main .inner.no-padding {
	padding:0px;
}


/* SEARCH */
/* backgrounds */
.bg_trans,
.bg_white,
.bg_black,
.bg_black85,
.bg_black40,
.bg_black20,
.bg_black10,
.bg_blue,
.bg_lightgray,
.bg_turquoise,
.bg_contact,
footer .bg_footer {
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	hyphenate-limit-chars: auto 5;
	hyphenate-limit-lines: 2;
	}
.bg_trans {
	background: none;
	}
.bg_white {
	background: none var(--white);
	}
.bg_black {
	background: none var(--black);
	color: var(--white);
	}
.bg_black85 {
	background: none var(--black85);
	color: var(--white);
	}
.bg_black40 {
	background: none var(--black40);
	color: var(--white);
	}
.bg_black20 {
	background: none var(--black20);
	}
.bg_black10 {
	background: none var(--black10);
	}
.bg_blue {
	background: none var(--turquoise);
    color: var(--white);
	}
.bg_lightgray {
    background: none var(--lightgray-full);
    }
.bg_turquoise {
    background: none var(--turquoise);
    color: var(--white);
    }
.bg_contact {
    background:url(assets/images/layout/contact_001.jpg) center center/cover no-repeat var(--black);
    color: var(--white);
}
/* Footer: exakt gleiche Schräge wie der Hero ------------------------ */

.bg_footer {
    position: relative;            /* Bezugspunkt für die schräge Fläche */
    background: url(assets/images/layout/footer_001.jpg) right bottom/cover no-repeat var(--black);
    color: var(--white);
}

/* schwarze Content-Fläche über dem Bild, unten rechts schräg weggeschnitten
   -> dort scheint contact_001.jpg durch.
   12vh = identisch zum Hero (88% von 100vh = 12vh Abfall).            */
.bg_footer::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: var(--black);

    -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12vh), 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12vh), 0 100%);

    pointer-events: none;
}

/* Inhalt über die schwarze Fläche heben */
footer .bg_footer > .container-fluid-inner {
    position: relative;
    z-index: 1;
}

@media (max-width: 767px) {
    footer .bg_footer::before {
        /* identisch zum Hero-Mobile (94% von 100vh = 6vh) */
        -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 6vh), 0 100%);
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 6vh), 0 100%);
    }
}

/*
.bg_ {
	background:url(assets/images/layout/dgh_bg_002_3.png) left bottom repeat-x,url(assets/images/layout/dgh_bg_002_2.png) left top repeat-x,url(assets/images/layout/dgh_bg_002_1.png) center center/cover no-repeat var(--white-trans);
	}
*/
/* Headlines */
h1,
h2,
h3,
h4,
h5 {
    text-decoration: none;
    font-size: var(--font-size-headline-large);
    line-height: var(--line-height-headline-large);
    border: none;
    padding: 0px;
    margin: 0px;
    display: block;
    text-transform: none;
    font-weight: bold;
	color: var(--black);
    }
h2 {
	font-size: var(--font-size-headline-medium);
    line-height: var(--line-height-headline-medium);
    color: var(--turquoise);
	}
h3 {
	font-size:var(--font-size-headline-small);
    line-height:var(--line-height-headline-small);
    margin: 0 0 20px;
	}
h4 {
    font-size:var(--font-size-headline-xlarge);
    line-height:var(--line-height-headline-xlarge);
    margin: 0 0 20px;
    }
:is(h1, h2, h3, h4).white {
  color: var(--white);
}
:is(h1, h2, h3, h4).blue {
  color: var(--turquoise);
}
:is(h1, h2, h3, h4).lightblue {
  color: var(--lightblue);
}
.font-size-xs {
	font-size: var(--text-font-size-xs);
	line-height: var(--text-font-line-height-xs);
}
.fa-fw {
    width: 1.5em;       /* etwas breiter für mehr Luft, optional */
    margin-right: 4px;  /* zusätzlicher Abstand zum Text */
}

/* =============================================
   ### REPEATER FRONT-PAGE > UMSETZUNG
================================================ */
.umsetzung-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.umsetzung-item {
    width: calc(25% - 15px);
    text-align: center;
}

.umsetzung-symbol i {
    font-size: 60px;
    margin-bottom: 10px;
}
/* =============================================
   ### FADE IN ELEMENTS ON SCROLL
================================================ */
.fade-content > *{
	transition: ease opacity .25s, ease transform .25s;
}
.fade-content > *:nth-child(6n+2) {
	transition-delay: .1s;
}
.fade-content > *:nth-child(6n+3) {
	transition-delay: .2s;
}
.fade-content > *:nth-child(6n+4) {
	transition-delay: .3s;
}
.fade-content > *:nth-child(6n+5) {
	transition-delay: .4s;
}
.fade-content > *:nth-child(6n+6) {
	transition-delay: .5s;
}
/* SCROLLTOP */
.scrolltop {
	display:none;
	width:100%;
	margin:0 auto;
	position:fixed;
	bottom:20px;
	right:20px;
    z-index:1000;
    }
.scroll {
	position:absolute;
	right:0px;
	bottom:0px;
	background:var(--black70);
    color:var(--white);
	padding:10px 20px;
	text-align: center;
	margin: 0;
	cursor:pointer;
	border:1px solid var(--white);
	transition: 0.2s;
	-moz-transition: 0.2s;
	-webkit-transition: 0.2s;
	-o-transition: 0.5s; 		
    }
.scroll:hover {
	background:var(--orange80);
	transition: 0.2s;
	-moz-transition: 0.2s;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s; 		
    }
/* SEARCH */
.search-field .header__search {
	position: relative;
	width: 100%;
	height: 67px;
	display: flex;
	align-items: center;
}

.search-field#wrap {
	width: 100%;
	height: 100%;
	display: flex;
	display: -webkit-flex;
	position: relative;
	align-items: center;
}

.search-field input[type="text"] {
	height: auto;
	font-size: var(--font-size-headline-medium);
	display: inline-block;
	border: none;
	outline: none;
	color: var(--colorsample);
	padding: 3px 30px 3px 3px;
	width: 0px;
	position: absolute;
	top: 0;
	right: 0;
	background: none;
	z-index: 3;
	transition: width .4s cubic-bezier(0.000, 0.795, 0.000, 1.000);
	cursor: pointer;
}

.search-field input[type="text"]:focus:hover {
	border-bottom: 1px solid var(--colorsample);
}

.search-field input[type="text"]:focus {
	width: 100%;
	z-index: 1;
	border-bottom: 1px solid var(--colorsample);
	cursor: text;
}

.search-field input[type="submit"] {
	height: 100%;
	width: 40px;
	display: inline-block;
	color: var(--red);
	float: right;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="var(--colorsample)"><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>') center center / 30px 30px no-repeat var(--trans);
	text-indent: -10000px;
	border: none;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	cursor: pointer;
	opacity: 1.0;
	cursor: pointer;
	transition: opacity .2s ease;
	background-color: var(--white);
}

.search-field input[type="submit"]:hover {
	opacity: 0.8;
}
/* =============================================
   ###
================================================ */
@media (max-width: 767px) {
	body {
	    font-size:var(--text-font-size-xs);
		line-height:var(--text-font-line-height-xs);
		}
    .logo-block {
        display: none;
    }
	.padding-medium {
		padding: var(--padding-small) !important;
		}
	.padding-medium-top {
		padding-top: var(--padding-small) !important;
		}
	.padding-medium-right {
		padding-right: var(--padding-small) !important;
		}
	.padding-medium-bottom {
		padding-bottom: var(--padding-small) !important;
		}
	.padding-medium-left {
		padding-left: var(--padding-small) !important;
		}
	.padding-large {
		padding: var(--padding-medium) !important;
		}
	.padding-large-top {
		padding-top: var(--padding-medium) !important;
		}
	.padding-large-right {
		padding-right: var(--padding-medium) !important;
		}
	.padding-large-bottom {
		padding-bottom: var(--padding-medium) !important;
		}
	.padding-large-left {
		padding-left: var(--padding-medium) !important;
		}
	.padding-text-element {
		padding: var(--padding-text-element-medium) !important;
		}
	.button {
	    padding: 0px 20px !important;
	    margin:10px 0;
		}
	.button.button-lg {
		padding: 5px 20px !important;
		}
	.quicklinks .inner .height-element {
		height: 250px;
		}
	.quicklinks .inner .height-element h1 {
		bottom: 30px;
		}
	h1 {
    	font-size: var(--font-size-headline-medium);
    	line-height: var(--line-height-headline-medium);
    	}
	footer .bg_black .inner,
	footer .bg_black .inner.ar {
		text-align: center !important;
	}

}

/* =============================================
   ###
================================================ */
@media (min-width: 768px) {
	


}


/* =============================================
   ###
================================================ */
@media (min-width: 992px) {
	


}

/* =============================================
   ###
================================================ */
@media (min-width: 1200px) {
	

}