/* ------------------------------------------------------------------
Project: Semantic
Version: 1.1
Do not edit this file - Place your styles in custom.css
------------------------------------------------------------------ */

@import url("https://www.komponist-film.de/assets/css/slider.css");
@import url("https://www.komponist-film.de/assets/css/vertical.css");
@import url("https://fonts.googleapis.com/css?family=Montserrat:400");
@import url("https://fonts.googleapis.com/css?family=Inconsolata:400,700");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400italic,400,700");

/* ------------------------------------------------------------------
General Styles
------------------------------------------------------------------- */

html {
	overflow-y: scroll;
	overflow-x: hidden;
	-ms-overflow-style: scrollbar;
    scroll-behavior: smooth;
}

body {
	background: #fff;
	font: 400 14px/1.7 "Open Sans", Verdana, sans-serif;
	color: #000;
	-webkit-font-smoothing: antialiased;
}

img {
	max-width: 100%;
	height: auto;
	border-radius: 5px;
	border-color: #DFF2F9;
	border-width: 1px;
	border-style: solid;	
}

iframe {
	border-radius: 5px;
	border-color: gray;
	border-width: 1px;
	border-style: solid;	
}

.leftauto {
	right: 0 !important;
	left: auto !important;
}

/* Selection */

::-moz-selection {
	background: #000;
	color: #fff;
}

::-webkit-selection{
	background: #000;
	color: #fff;
}

::selection{
	background: #000;
	color: #fff;
}

/* Transition elsements */

.form-control,
.navbar-custom,
.navbar-custom .navbar-brand {
	-webkit-transition: all 0.2s ease-in-out 0s;
	   -moz-transition: all 0.2s ease-in-out 0s;
		-ms-transition: all 0.2s ease-in-out 0s;
		 -o-transition: all 0.2s ease-in-out 0s;
			transition: all 0.2s ease-in-out 0s;
}

a,
.btn,
.navbar a {
	-webkit-transition: all 0.2s ease-in-out 0s;
	   -moz-transition: all 0.2s ease-in-out 0s;
		-ms-transition: all 0.2s ease-in-out 0s;
		 -o-transition: all 0.2s ease-in-out 0s;
			transition: all 0.2s ease-in-out 0s;		
}

.navbar a:focus,
.navbar a:hover {
	background: none;
	color: #D8D8D8;
}

.team-detail,
.team-image:after,
.work-caption,
.work-image > img,
.work-image:after {
	-webkit-transition: all 0.2s ease-in-out 0s;
	   -moz-transition: all 0.2s ease-in-out 0s;
		-ms-transition: all 0.2s ease-in-out 0s;
		 -o-transition: all 0.2s ease-in-out 0s;
			transition: all 0.2s ease-in-out 0s;
}

/* Reset border-radius */

.well,
.label,
.alert,
.progress,
.form-control,
.modal-content,
.panel-heading,
.panel-group .panel,
.nav-tabs > li > a,
.nav-pills > li > a {
	-webkit-border-radius: 3px;
	   -moz-border-radius: 3px;
		 -o-border-radius: 3px;
			border-radius: 3px;
}

/* Reset box-shadow */

.btn,
.well,
.panel,
.progress,
.progress-bar,
.form-control,
.form-control:hover,
.form-control:focus,
.navbar-custom .dropdown-menu {
	-webkit-box-shadow: none;
			box-shadow: none;
}

/* ------------------------------------------------------------------
Form styles
------------------------------------------------------------------- */

.form-control {
	font-family: "Inconsolata", sans-serif;
	letter-spacing: 0.1em;
	font-size: 11px;
	height: 33px;
	border: 1px solid gray;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.form-control:focus {
	border-color: #CACACA;
}

/* Form sizes */

.input-lg,
.form-horizontal .form-group-lg .form-control {
	height: 43px;
	font-size: 13px;
}

.input-sm, .form-horizontal .form-group-sm .form-control {
	height: 29px;
	font-size: 10px;
}

/* ------------------------------------------------------------------
Button styles
------------------------------------------------------------------- */

.btn {
	padding: 8px 37px;
	font-family: "Inconsolata", sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 11px;
}

.btn.focus,
.btn.active.focus,
.btn.active:focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus {
	outline: 0;
}

.btn.btn-round {
	-webkit-border-radius: 3px;
	   -moz-border-radius: 3px;
	        border-radius: 3px;
}

.btn.btn-circle {
	-webkit-border-radius: 30px;
	   -moz-border-radius: 30px;
	        border-radius: 30px;
}

/* Button colors */

.btn.btn-g {
	background: transparent;
	border: 1px solid #b2b2b2;
	color: #666;
}

.btn.btn-g:hover,
.btn.btn-g:focus {
	background: #b2b2b2;
	color: #fff;
}

.btn.btn-border-d {
	background: transparent;
	border: 1px solid #000;
	color: #000;
}

.btn.btn-border-d:hover,
.btn.btn-border-d:focus {
	background: #000;
	color: #fff;
}

.btn.btn-border-gray {
	background: transparent;
	border: 1px solid dimgray;
	color: black;
}

.btn.btn-border-gray:hover,
.btn.btn-border-gray:focus {
	background: dimgray;
	color: #fff;
}


.btn.btn-d {
	background: rgba(0, 0, 0, 0.8);
	color: #fff;
}

.btn.btn-d:hover,
.btn.btn-d:focus {
	background: #000;
	color: #fff;
}

/* Button sizes */

.btn.btn-lg {
	padding: 12px 45px;
	font-size: 13px;
}

.btn.btn-sm {
	padding: 6px 25px;
	font-size: 10px;
	letter-spacing: 1px;
}

.btn.btn-xs {
	padding: 4px 19px;
	font-size: 10px;
	letter-spacing: 0;
}

.btn-list .btn {
	margin: 5px 0;
}

/*-----------------------------------------------
|   Backgrounds
-----------------------------------------------*/
.bg-holder {
  position: absolute;
  width: 100%;
  min-height: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  will-change: transform, opacity, filter;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-repeat: no-repeat;
  z-index: 0;
}
.bg-holder.bg-right {
  left: auto;
  right: 0;
}
.bg-holder.overlay:before {
  position: absolute;
  content: "";
  background: rgba(0, 0, 0, 0.3);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.bg-holder.overlay-primary:before {
  background: rgba(0, 123, 255, 0.4);
}
.bg-holder.overlay-info:before {
  background: rgba(23, 162, 184, 0.4);
}
.bg-holder.overlay-success:before {
  background: rgba(40, 167, 69, 0.4);
}
.bg-holder.overlay-warning:before {
  background: rgba(255, 193, 7, 0.4);
}
.bg-holder.overlay-danger:before {
  background: rgba(220, 53, 69, 0.4);
}
.bg-holder.overlay-0:before {
  background: rgba(0, 0, 0, 0.7);
}
.bg-holder.overlay-1:before {
  background: rgba(0, 0, 0, 0.55);
}
.bg-holder.overlay-2:before {
  background: rgba(0, 0, 0, 0.4);
}
.bg-holder.overlay-gradient:before {
  background: -o-linear-gradient(135deg, rgba(0, 25, 66, 0.702) 0, rgba(244, 244, 234, 0.5) 100%);
  background: linear-gradient(-45deg, rgba(0, 25, 66, 0.702) 0, rgba(244, 244, 234, 0.5) 100%);
}
.bg-holder .bg-video {
  position: absolute;
  display: block;
  z-index: -1;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  min-width: 100%;
}
.bg-holder .bg-youtube {
  position: absolute !important;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.bg-fixed {
  background-attachment: fixed;
}

.bg-glass {
  background-color: rgba(255, 255, 255, 0.9);
}

.bg-card {
  background-size: contain;
  background-position: right;
  border-top-right-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
}
[dir=rtl] .bg-card {
  background-position: left;
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1);
  border-top-left-radius: 0.375rem;
  border-bottom-left-radius: 0.375rem;
}

.header-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.mb_YTPBar {
  display: none !important;
}

.ytp-chrome-top {
  display: none !important;
  visibility: hidden !important;
}

.ytp-title {
  display: none;
}

/* ------------------------------------------------------------------
Tabs and Accordions
------------------------------------------------------------------- */

.tab-content {
	padding: 20px 0;
}

.panel-title {
	font-size: 14px;
}

.panel-heading a {
	position: relative;
	display: block;
}

.panel-heading a:after {
	position: absolute;
	content: "\f106";
	top: 50%;
	right: 0px;
	font-family: "FontAwesome";
	line-height: 1;
	font-size: 14px;
	margin-top: -7px;
}

.panel-heading a.collapsed:after {
	content: "\f107";
}

/* ------------------------------------------------------------------
Progress bars
------------------------------------------------------------------- */

.progress {
	overflow: visible;
	height: 4px;
}

.progress-bar {
	position: relative;
}

.progress-bar.pb-dark {
	background: #000;
}

.progress-bar span {
	position: absolute;
	display: block;
	right: -0px;
	top: 6px;
	opacity: 0;
	line-height: 12px;
	font-size: 12px;
	color: #666;
	padding: 4px 0px;
}

.progress-bar span:after {
	display: inline-block;
	content: "%";
}

.progress-title {
	margin: 0 0 5px;
	text-transform: uppercase;
	font-size: 14px;
}

/* ------------------------------------------------------------------
Examples
------------------------------------------------------------------- */

.et-icons .box1 {
	border: 1px solid #e5e5e5;
	display: block;
	width: 25%;
	float: left;
	padding: 0;
	font-size: 13px;
	margin: -1px 0 0 -1px;
}

.et-icons .box1 > span {
	display: inline-block;
	border-right: 1px solid #e5e5e5;
	min-width: 60px;
	min-height: 60px;
	text-align: center;
	line-height: 60px;
	font-size: 28px;
	margin-right: 5px;
}

.fa-icons > div {
	padding: 0;
	border: 1px solid #e5e5e5;
	margin: -1px 0 0 -1px;
	font-size: 13px;
}

.fa-icons > div > i {
	display: inline-block;
	margin-right: 5px;
	min-width: 40px;
	min-height: 40px;
	border-right: 1px solid #f1f1f1;
	line-height: 40px;
	text-align: center;
	font-size: 14px;
}

.help-block ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

/* ------------------------------------------------------------------
Overlays
------------------------------------------------------------------- */

/* Dark background */

.bg-dark,
.bg-dark-30,
.bg-dark-50,
.bg-dark-90,
.bg-dark .module-title,
.bg-dark-30 .module-title,
.bg-dark-50 .module-title,
.bg-dark-90 .module-title {
	color: #fff;
}

.bg-dark {
	background: #111;
}

.bg-dark-30:before {
	position: absolute;
	background: rgba(0, 0, 0, .3);
	content: " ";
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.bg-dark-50:before {
	position: absolute;
	background: rgba(0, 0, 0, .5);
	content: " ";
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.bg-dark-90:before {
	position: absolute;
	background: rgba(0, 0, 0, .9);
	content: " ";
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

/* Light background */

.bg-light,
.bg-light-30,
.bg-light-50,
.bg-light-90 {
	color: #000;
}

.bg-light {
	background: rgba(234, 234, 234, 0.7);
}

.bg-light-30:before {
	position: absolute;
	background: rgba(255, 255, 255, .3);
	content: " ";
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.bg-light-50:before {
	position: absolute;
	background: rgba(255, 255, 255, .5);
	content: " ";
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.bg-light-90:before {
	position: absolute;
	background: rgba(255, 255, 255, .9);
	content: " ";
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

/* ------------------------------------------------------------------
Typography
------------------------------------------------------------------- */

a {
	color: #000;
}

a:hover, a:focus {
	text-decoration: none;
	color: #585858;
	outline: 0;
}

.bg-dark a {
	color: #CDCDCD;
}

.bg-dark a:hover, .bg-dark a:focus {
	color: #000;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.4;
	font-weight: 400;
}

p, ol, ul, blockquote {
	margin: 0 0 20px;
}

blockquote {
	border: 0;
	font-style: italic;
	font-size: 14px;
	padding: 0;
}

.font-alt {
	font-family: "Montserrat", sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

.font-inc {
	font-family: "Inconsolata", sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

.font-serif {
	font-family: Georgia, sans-serif;
}

.font-uppercase {
	text-transform: uppercase;
	font-style: normal;
}

.align-center {
	text-align: center;
}

.rotate {
	text-shadow: none !important;
}

/* ------------------------------------------------------------------
Navbar
------------------------------------------------------------------- */

.navbar-custom {
	background: #fff;
	border: 0;
	border-color: #f5f5f5 !important;
	border-bottom: 1px solid #f5f5f5 !important;
	border-radius: 0;
	font-family: "Inconsolata", sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	font-size: 13px;
	z-index: 1000;
}

.navbar-custom .dropdown-menu {
	background: #fff;
	border: 1px solid #f5f5f5;
	border-radius: 0;
	padding: 0;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.navbar-custom .dropdown-menu .dropdown-menu {
	top: 0;
	left: 100%;
	right: auto;
	margin-top: -1px;
}

.navbar-custom .navbar-brand {
	font-family: "Montserrat", sans-serif;
	letter-spacing: 0.1em;
	font-weight: 400;
	font-size: 20px;
	color: #000;
}

.navbar-custom .nav li > a {
	position: relative;
	color: #000;
}

.navbar-custom .nav > li > a:focus,
.navbar-custom .nav > li > a:hover,
.navbar-custom .nav .open > a,
.navbar-custom .nav .open > a:focus,
.navbar-custom .nav .open > a:hover,
.navbar-custom .dropdown-menu > li > a:focus,
.navbar-custom .dropdown-menu > li > a:hover {
	background: none;
	color: #D8D8D8;
}

.navbar-custom .dropdown-menu > li > a:hover {
	background: #f5f5f5 !important;
}

.navbar-custom .dropdown-menu > li > a {
	border-bottom: 1px solid #f5f5f5 !important;
	padding: 11px 15px;
	letter-spacing: 0.15em;
	font-size: 11px;
	color: #666;
}

.navbar-custom .dropdown-menu > li:last-child > a {
	border: 0 !important;
}

.navbar-custom .dropdown-toggle:after {
	position: absolute;
	display: block;
	right: 0;
	top: 50%;
	margin-top: -5px;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 9px;
	content: "\f107";
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.navbar-custom .navbar-nav > .dropdown > .dropdown-toggle {
	padding-right: 28px;
}

.navbar-custom .navbar-nav > .dropdown > .dropdown-toggle:after {
	position: absolute;
	display: block;
	right: 15px;
	top: 50%;
	margin-top: -5px;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 9px;
	content: "\f107";
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.navbar-custom .navbar-toggle .icon-bar {
	background: #000;
}

/* -------------------------------------------------------------------
Home Section
------------------------------------------------------------------- */

.module-hero {
	position: relative;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	width: 100%;
	z-index: 0;
	-webkit-background-size: cover;
	   -moz-background-size: cover;
		 -o-background-size: cover;
			background-size: cover;
}

.hs-title-size-1 {
	letter-spacing: 0.1em;
	font-size: 14px;
}

.hs-title-size-2 {
	letter-spacing: 0.2em;
	font-size: 18px;
}

.hs-title-size-3 {
	letter-spacing: 0.1em;
	font-size: 28px;
}

.hs-title-size-4 {
	letter-spacing: 0.2em;
	font-size: 36px;
}

/* Video */

.video-controls-box {
	position: absolute !important;
	bottom: 40px;
	left: 0;
	width: 100%;
	z-index: 1;
}

.video-controls-box a {
	visibility: hidden;
	display: inline-block;
	color: #fff;
	margin: 0 5px 0 0;
}

/* -------------------------------------------------------------------
Sections
------------------------------------------------------------------- */

.wrapper {
	position: relative;
	background: #fff;
	z-index: 1;
}

.module,
.module-small,
.module-header {
	position: relative;
	padding: 60px 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	-webkit-background-size: cover;
	   -moz-background-size: cover;
		 -o-background-size: cover;
			background-size: cover;
}

.module-small {
	padding: 70px 0;
}

.module-header {
	padding: 190px 0 100px;
}

.col-bg {
	background: rgba(255, 255, 255, .9);
	padding: 140px 60px;
}

/* Module title */

.module-title {
	position: relative;
	margin: 0 0 70px;
	letter-spacing: 0.15em;
	font-size: 30px;
	color: #000;
}

.module-subtitle {
	margin-bottom: 60px;
	font-size: 15px;
}

.module-subtitle a:hover{
	margin-bottom: 60px;
	font-size: 15px;
	color: #999;
}

.module-title + .module-subtitle {
	margin-top: -35px;
}

/* Sections dividers */

.divider-w {
	border-top: 1px solid #E0E0E0;
	margin: 0;
}

/* -------------------------------------------------------------------
Sections Dark NEU von Christian Rheber
------------------------------------------------------------------- */

.wrapper-light {
	position: relative;
	background: #000;
	z-index: 1;
}

.module-light,
.module-light-small,
.module-light-header {
	position: relative;
	padding: 60px 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	-webkit-background-size: cover;
	   -moz-background-size: cover;
		 -o-background-size: cover;
			background-size: cover;
}

.module-light small {
	padding: 70px 0;
}

.module-light header {
	padding: 190px 0 100px;
}

.col-light-bg {
	background: rgba(255, 255, 255, .9);
	padding: 140px 60px;
}

/* Module light title */

.module-light-title {
	position: relative;
	margin: 0 0 70px;
	letter-spacing: 0.15em;
	font-size: 30px;
	color: #fff;
}

.module-light-subtitle {
	margin-bottom: 70px;
	font-size: 15px;
	color: #fff;	
}

.module-light h3 {
	color: #fff;
}

.module-light h4 {
	color: #fff;
}

.module-light p {
	color: #fff;
}

.module-light a {
	color:#fff;
}

.module-light a:hover, a:focus {
	text-decoration: none;
	color: #999;
	outline: 0;
}

.module-light img {
	max-width: 100%;
	height: auto;
	border-radius: 5px;
	border-color: #093157;
	border-width: 1px;
	border-style: solid;
}

.btn.btn-border-light-d {
	background: transparent;
	border: 1px solid #fff;
	color: #fff;
}

.btn.btn-border-light-d:hover,
.btn.btn-border-light-d:focus {
	background: #fff;
	color: #000;
}

.module-light-title + .module-light-subtitle {
	margin-top: -35px;
}

/* Sections dividers */

.divider-w {
	border-top: 1px solid #E0E0E0;
	margin: 0;
}

/* ------------------------------------------------------------------
Social list
------------------------------------------------------------------- */

.social-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.social-list > li {
	display: inline-block;
	font-size: 24px;
	margin: 5px 5px 5px 0;
}

/* ------------------------------------------------------------------
Content boxes
------------------------------------------------------------------- */

.content-box {
	text-align: center;
	margin: 25px 0;
}

.content-box-icon {
	font-size: 36px;
}

.content-box-title {
	margin: 5px 0 0;
	font-size: 14px;
}

.content-box-text {
	margin: 15px 0 0;
}

/* ------------------------------------------------------------------
Counters
------------------------------------------------------------------- */

.counter-item {
	text-align: center;
}

.counter-number {
	font-size: 36px;
}

.counter-title {
	text-transform: uppercase;
	font-size: 14px;
}

/* ------------------------------------------------------------------
Google map
------------------------------------------------------------------- */

#map-section {
	position: relative;
	height: 450px;
	width: 100%;
}

#map {
	height: 100%;
	width: 100%;
}

#map img {
	max-width: none;
}

.ajax-response {
	text-align: center;
}

/* ------------------------------------------------------------------
Footer
------------------------------------------------------------------- */

.footer {
	background: #E6E6E6;
	padding: 20px 0;
}

.copyright {
	font-size: 14px;
}

/* ------------------------------------------------------------------
Portfolio
------------------------------------------------------------------- */

/* Portfolio filter */

.filter {
	text-align: center;
	list-style: none;
	padding: 0;
	margin: 0 0 20px;
}

.filter > li {
	display: inline-block;
	padding: 5px 0;
	margin: 0 25px;
}

.filter > li a {
	text-transform: uppercase;
	font-size: 14px;
	color: rgba(102, 102, 102, 0.5);
}

.filter > li a:hover,
.filter > li a.current {
	color: #000;
}

/* Portfolio grid */

.works-grid {
	list-style: none;
	padding: 0;
	margin: 0;
}

.works-grid.works-grid-gut {
	margin: 0 0 0 -10px;
}

.works-grid.works-grid-gut .work-item {
	padding: 0 0 10px 10px;
}

.work-item {
	width: 50%;
	float: left;
	margin: 0;
}

.works-grid-3 .work-item {
	width: 33.333%;
}

.container > .works-grid-3 .work-item {
	width: 33.2%;
}

.works-grid-4 .work-item {
	width: 25%;
}

/* Portfolio item */

.work-item > a {
	position: relative;
	display: block;
	overflow: hidden;
}

.work-image {
	position: relative;
	overflow: hidden;
}

.work-image img {
	display: block;
	overflow: hidden;
	width: 100%;
}

.work-image:after {
	position: absolute;
	display: block;
	content: "";
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
}

.work-caption {
	width: 100%;
	padding: 0 20px;
	opacity: 0;
	position: absolute;
	bottom: 100%;
	left: 0;
	text-align: center;
	overflow: hidden;
}

.work-title {
	font-size: 18px;
	color: #fff;
	margin: 0 0 6px;
}

.work-descr {
	text-transform: uppercase;
	font-size: 14px;
	color: #999;
}

/* */
.works-grid-4 .work-title {
	font-size: 14px;
}

.works-grid-4 .work-descr {
	font-size: 12px;
}

/* Portfolio item hover */

.work-item:hover .work-image:after {
	background: rgba(0, 0, 0, .7);
}

.work-item:hover .work-image > img {
	-webkit-transform: scale(1.1);
	   -moz-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	     -o-transform: scale(1.1);
	        transform: scale(1.1);
}

.work-item:hover .work-caption {
	bottom: 50%;
	opacity: 1;
	z-index: 3;
	-webkit-transform: translateY(50%);
	   -moz-transform: translateY(50%);
	        transform: translateY(50%);
}

/* Work item white background */

.works-grid.works-hover-w .work-title {
	color: #000;
}

.works-grid.works-hover-w .work-descr {
	color: #666;
}

.works-grid.works-hover-w .work-item:hover .work-image:after {
	background: rgba(255, 255, 255, .8);
}

.works-grid.works-hover-g .work-image:after {
	opacity: 0;
}
.works-grid.works-hover-g .work-title,
.works-grid.works-hover-g .work-descr {
	color: #000;
}

.works-grid.works-hover-g .work-item:hover .work-image:after {
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjZmZmZmRmIiBzdG9wLW9wYWNpdHk9IjAuOSIvPgogICAgPHN0b3Agb2Zmc2V0PSIyNSUiIHN0b3AtY29sb3I9IiNmZmZmZGYiIHN0b3Atb3BhY2l0eT0iMC45Ii8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmY2YwYjMiIHN0b3Atb3BhY2l0eT0iMC45Ii8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
background: -moz-linear-gradient(-45deg,  rgba(255,255,223,0.8) 0%, rgba(255,255,223,0.8) 25%, rgba(252,240,179,0.8) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,rgba(255,255,223,0.8)), color-stop(25%,rgba(255,255,223,0.8)), color-stop(100%,rgba(252,240,179,0.8))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(-45deg,  rgba(255,255,223,0.8) 0%,rgba(255,255,223,0.8) 25%,rgba(252,240,179,0.8) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(-45deg,  rgba(255,255,223,0.8) 0%,rgba(255,255,223,0.8) 25%,rgba(252,240,179,0.8) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(-45deg,  rgba(255,255,223,0.8) 0%,rgba(255,255,223,0.8) 25%,rgba(252,240,179,0.8) 100%); /* IE10+ */
background: linear-gradient(135deg,  rgba(255,255,223,0.8) 0%,rgba(255,255,223,0.8) 25%,rgba(252,240,179,0.8) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e6ffffdf', endColorstr='#e6fcf0b3',GradientType=1 ); /* IE6-8 fallback on horizontal gradient */
opacity: 1;
}

/* Portfolio single */

.work-details {
	margin: 0 0 20px;
}

.work-details-title {
	color: #000;
	margin: 0 0 20px;
}

.work-details ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.work-details ul > li {
	margin: 0 0 10px;
}

.work-title > i,
.work-title > span {
	font-size: 30px;
}

/* ------------------------------------------------------------------
Team
------------------------------------------------------------------- */

.team-item {
	position: relative;
	text-align: center;
}

.team-image {
	position: relative;
	overflow: hidden;
}

.team-image img {
	width: 100%;
}

.team-image:after {
	position: absolute;
	background: transparent;
	content: " ";
	display: block;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.team-detail {
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 50%;
	opacity: 0;
	z-index: 2;
	padding: 20px;
	-webkit-transform: translateY(50%);
	   -moz-transform: translateY(50%);
	        transform: translateY(50%);
}

.team-detail h5 {
	text-transform: uppercase;
	font-size: 14px;
}

.team-descr {
	margin: 20px 0 0;
}

.team-name {
	text-transform: uppercase;
	font-size: 14px;
	color: #000;
}

.team-role {
	text-transform: uppercase;
	font-size: 12px;
}

/* Team member hover */

.team-item:hover .team-image:after {
	background: rgba(255, 255, 255, .9);
}

.team-item:hover .team-detail {
	opacity: 1;
}

/* ------------------------------------------------------------------
Post
------------------------------------------------------------------- */

.post-columns .post {
	margin: 0 0 60px;
}

.post {
	margin: 0 0 80px;
}

.post-video,
.post-thumbnail,
.post-images-slider {
	margin: 0 0 20px;
}

.post-images-slider {
	position: relative;
}

.post-quote {
	background: #f5f5f5;
	text-align: center;
	padding: 20px;
}

.post-quote blockquote {
	margin: 0;
}

.post-header {
	margin: 0 0 20px;
}

.post-title {
	font-size: 18px;
	color: #000;
	margin: 0;
}

.post-columns .post-title {
	font-size: 14px;
}

.post-meta {
	font-size: 13px;
}

.post-more {
	text-transform: uppercase;
	letter-spacing: 0.15em;
	font-size: 13px;
}

/* Blog standart */

.post-header-small {
	position: relative;
	padding: 0 0 0 60px;
}

.post-icon {
	position: absolute;
	left: 0;
	top: 0;
	height: 48px;
	width: 48px;
	line-height: 48px;
	font-size: 36px;
}

.post-icon > i,
.post-icon > span {
	line-height: 48px;
}

/* ------------------------------------------------------------------
Pagination
------------------------------------------------------------------- */

.pagination {
	display: block;
	text-align: center;
	font-size: 14px;
}

.pagination a + a {
	padding-left: 20px;
}

/* -------------------------------------------------------------------
Comments and comment form
------------------------------------------------------------------- */

.comments,
.comment-form {
	margin: 80px 0 0;
}

.comments .comment-title,
.comment-form .comment-form-title {
	font-size: 18px;
	color: #000;
	margin: 0 0 40px;
}

.comment-author {
	text-transform: uppercase;
	font-size: 14px;
	margin: 0 0 10px;
}

.comment-avatar {
	width: 55px;
	float: left;
	margin-top: 10px;
}

.comment-avatar img {
	-webkit-border-radius: 50%;
	   -moz-border-radius: 50%;
	        border-radius: 50%;
}

.comment-content {
	padding-top: 5px;
	margin-left: 75px;
	margin-bottom: 30px;
}

.comment-meta {
	text-transform: uppercase;
	font-size: 12px;
}

/* -------------------------------------------------------------------
Scroll to top
------------------------------------------------------------------- */

.scroll-up {
	position: fixed;
	display: none;
	bottom: 24px;
	right: 24px;
	z-index: 999;
	border-color: #E0E0E0;
	border-width: 1px;
	border-style: solid;
	border-radius: 3px;
}

.scroll-up a {
	background: #fff;
	display: block;
	height: 28px;
	width: 28px;
	text-align: center;
	line-height: 28px;
	font-size: 14px;
	color: #000;
	opacity: 0.6;
	-webkit-border-radius: 2px;
	   -moz-border-radius: 2px;
		 -o-border-radius: 2px;
			border-radius: 2px;
}

.scroll-up a:hover,
.scroll-up a:active {
	opacity: 1;
	color: #000;
}

/* ------------------------------------------------------------------
Preloader
------------------------------------------------------------------- */

.page-loader {
	position: fixed;
	background: #fff;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
	z-index: 9998;
}

.loader {
	position: absolute;
	border-left: 2px solid #b2b2b2;
	border-top: 2px solid rgba(245, 245, 245, 0.8);
	border-right: 2px solid rgba(245, 245, 245, 0.8);
	border-bottom: 2px solid rgba(245, 245, 245, 0.8);
	height: 46px;
	width: 46px;
	left: 50%;
	top: 50%;
	margin: -23px 0 0 -23px;
	text-indent: -9999em;
	font-size: 10px;
	z-index: 9999;
	-webkit-animation: load 0.8s infinite linear;
	   -moz-animation: load 0.8s infinite linear;
		 ms-animation: load 0.8s infinite linear;
		  o-animation: load 0.8s infinite linear;
			animation: load 0.8s infinite linear;
}

.loader,
.loader:after {
	border-radius: 50%;
	width: 46px;
	height: 46px;
}

@-webkit-keyframes load {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes load {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

/* -------------------------------------------------------------------
Responsive Media Querries
------------------------------------------------------------------- */

@media (min-width: 768px) {

	.align-right {
		text-align: right;
	}

	.navbar-transparent {
		background: transparent;
		border: 0 !important;
		border-color: #f5f5f5 !important;
		padding-bottom: 15px;
		padding-top: 15px;
	}

	.navbar-transparent .nav li > a,
	.navbar-transparent .navbar-brand {
		color: #fff;
	}

	.navbar-transparent .dropdown-menu > li > a {
		color: #666;
	}

	.nabar-dark .nav > li > a,
	.nabar-dark .navbar-brand {
		color: #000;
	}

	.navbar-custom .dropdown-menu .dropdown-toggle:after {
		position: absolute;
		display: block;
		right: 9px;
		top: 50%;
		margin-top: -6px;
		font: normal normal normal 14px/1 FontAwesome;
		font-size: 9px;
		content: "\f105";
		text-rendering: auto;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	.navbar-custom .dropdown-menu {
		position: absolute;
		display: block;
		visibility: hidden;
		opacity: 0;
	}

	.navbar-custom .open > .dropdown-menu {
		visibility: visible;
		opacity: 1;
	}

	.navbar-right .dropdown-menu {
		right: auto;
		left: 0;
	}

	/* Comments */

	.comment .comment {
		margin-left: 75px;
	}

}

@media (max-width: 991px) {

	/* Headers */

	.hs-title-size-3 {
		font-size: 24px;
	}

	.hs-title-size-4 {
		font-size: 32px;
	}

	.work-item,
	.works-grid-3 .work-item,
	.works-grid-4 .work-item,
	.works-grid-5 .work-item {
		width: 50%;
	}

}

@media (max-width: 767px) {

	/* Navbar */

	.navbar-custom .navbar-nav {
		margin-top: 0;
		margin-bottom: 0;
	}

	.navbar-custom li a:hover {
		background: #f5f5f5 !important;
	}

	.navbar-custom .navbar-nav .open .dropdown-menu .dropdown-header,
	.navbar-custom .navbar-nav .open .dropdown-menu > li > a {
		padding: 10px 25px;
	}

	.navbar-custom .navbar-nav .open .dropdown-menu .dropdown-menu .dropdown-header,
	.navbar-custom .navbar-nav .open .dropdown-menu .dropdown-menu > li > a {
		padding: 10px 35px;
	}

	.navbar-custom li a,
	.navbar-custom .dropdown-menu > li:last-child > a {
		border-bottom: 1px solid #f5f5f5 !important;
	}

	.navbar-custom .navbar-nav > .dropdown > .dropdown-toggle:after,
	.navbar-custom .dropdown-toggle:after,
	.navbar-custom .dropdown-menu .dropdown-toggle:after {
		right: 7px;
		content: "\f107";
	}

	.navbar-custom .navbar-nav > .open > .dropdown-toggle:after,
	.navbar-custom .nav > .open >.dropdown-toggle:after,
	.navbar-custom .dropdown-menu .dropdown.open .dropdown-toggle:after {
		content: "\f106";
	}

	.navbar-custom .navbar-collapse {
		border-top: 1px solid #f5f5f5;
		-webkit-box-shadow: none;
		        box-shadow: none;
	}

	/* Headers */

	.hs-title-size-1 {
		font-size: 12px;
	}

	.hs-title-size-2 {
		font-size: 16px;
	}

	.hs-title-size-3 {
		font-size: 20px;
	}

	.hs-title-size-4 {
		font-size: 24px;
	}

}

@media only screen and (max-width: 480px) {

	.work-item,
	.works-grid-3 .work-item,
	.works-grid-4 .work-item,
	.works-grid-5 .work-item {
		width: 100%;
	}

}


/* -------------------------------------------------------------------
Multi-columns-row
------------------------------------------------------------------- */

.multi-columns-row .first-in-row {
	clear: left;
}

.multi-columns-row .col-xs-6:nth-child(2n + 3) { clear: left; }
.multi-columns-row .col-xs-4:nth-child(3n + 4) { clear: left; }
.multi-columns-row .col-xs-3:nth-child(4n + 5) { clear: left; }
.multi-columns-row .col-xs-2:nth-child(6n + 7) { clear: left; }
.multi-columns-row .col-xs-1:nth-child(12n + 13) { clear: left; }

@media (min-width: 768px) {

	.multi-columns-row .col-xs-6:nth-child(2n + 3) { clear: none; }
	.multi-columns-row .col-xs-4:nth-child(3n + 4) { clear: none; }
	.multi-columns-row .col-xs-3:nth-child(4n + 5) { clear: none; }
	.multi-columns-row .col-xs-2:nth-child(6n + 7) { clear: none; }
	.multi-columns-row .col-xs-1:nth-child(12n + 13) { clear: none; }

	.multi-columns-row .col-sm-6:nth-child(2n + 3) { clear: left; }
	.multi-columns-row .col-sm-4:nth-child(3n + 4) { clear: left; }
	.multi-columns-row .col-sm-3:nth-child(4n + 5) { clear: left; }
	.multi-columns-row .col-sm-2:nth-child(6n + 7) { clear: left; }
	.multi-columns-row .col-sm-1:nth-child(12n + 13) { clear: left; }
}

@media (min-width: 992px) {

	.multi-columns-row .col-sm-6:nth-child(2n + 3) { clear: none; }
	.multi-columns-row .col-sm-4:nth-child(3n + 4) { clear: none; }
	.multi-columns-row .col-sm-3:nth-child(4n + 5) { clear: none; }
	.multi-columns-row .col-sm-2:nth-child(6n + 7) { clear: none; }
	.multi-columns-row .col-sm-1:nth-child(12n + 13) { clear: none; }

	.multi-columns-row .col-md-6:nth-child(2n + 3) { clear: left; }
	.multi-columns-row .col-md-4:nth-child(3n + 4) { clear: left; }
	.multi-columns-row .col-md-3:nth-child(4n + 5) { clear: left; }
	.multi-columns-row .col-md-2:nth-child(6n + 7) { clear: left; }
	.multi-columns-row .col-md-1:nth-child(12n + 13) { clear: left; }
}

@media (min-width: 1200px) {

	.multi-columns-row .col-md-6:nth-child(2n + 3) { clear: none; }
	.multi-columns-row .col-md-4:nth-child(3n + 4) { clear: none; }
	.multi-columns-row .col-md-3:nth-child(4n + 5) { clear: none; }
	.multi-columns-row .col-md-2:nth-child(6n + 7) { clear: none; }
	.multi-columns-row .col-md-1:nth-child(12n + 13) { clear: none; }

	.multi-columns-row .col-lg-6:nth-child(2n + 3) { clear: left; }
	.multi-columns-row .col-lg-4:nth-child(3n + 4) { clear: left; }
	.multi-columns-row .col-lg-3:nth-child(4n + 5) { clear: left; }
	.multi-columns-row .col-lg-2:nth-child(6n + 7) { clear: left; }
	.multi-columns-row .col-lg-1:nth-child(12n + 13) { clear: left; }

}


/* ========================================
Lightbox Container
======================================== */

.lightboxContainer {
  position:relative;
  display:inline-block;
  width: 100%;
  height: auto;  
}
 
.lightboxContainer:after {
  content: url("../images/playbutton.png");
  z-index:999;
  position:absolute;
  top:50%;
  left:50%;
  margin-left:-32px;
  margin-top:-32px;
  opacity:0.8;
  transition-duration: 0.2s;  
}
 
.lightboxContainer:hover:after {
  opacity:1;
  transition-duration: 0.2s;
  
}
 
.lightboxContainer img {
  width: 100%;
  height: auto;
}

.btn-back-to-top {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 999;
  background: #eee;
  height: 1.75rem;
  width: 1.75rem;
  text-align: center;
  line-height: 1.75rem;
  font-size: 0.875rem;
  color: #000;
  opacity: 0.6;
  border-radius: 2px;
}

.btn-back-to-top:hover {
  color: #000;
  opacity: 1;
}


/* ========================================
COOKIE BANNER
======================================== */

#mws-cookie {
	position: fixed;
	left: 25px;
	bottom: 25px;
	width: 380px;
	max-width: calc(100% - 40px);
	z-index: 999999;
	background: rgba(18,18,18,0.96);
	color: #fff;
	border-radius: 6px;
	padding: 22px;
	box-shadow: 0 20px 50px rgba(0,0,0,0.5);
	font-family: inherit;
	opacity: 0;
	visibility: hidden;
	transform: perspective(1000px) translateY(30px) rotateX(50deg) scale(0.94);
	pointer-events: none;
	transition:
		opacity 0.8s cubic-bezier(.22,1,.36,1),
		transform 0.8s cubic-bezier(.22,1,.36,1),
		visibility 0.8s ease;  
	transform-origin: bottom center;  
}

/* SICHTBAR */
#mws-cookie.show {
  opacity: 1;
  visibility: visible;

  transform:
	perspective(1000px)
	translateY(0)
	rotateX(0deg)
	scale(1);
  pointer-events: auto;
}

/* AUSBLENDEN */
#mws-cookie.hide {
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px) scale(0.96);
  pointer-events: none;
}

#mws-cookie h3 {
  margin: 0 0 10px;
  font-size: 18px;
}

#mws-cookie p {
  font-size: 14px;
  line-height: 1.5;
  opacity: 0.85;
}

.mws-cookie-buttons {
  display: flex;
  gap: 10px;
  margin-top: 15px;
}

.btn-primary1,
.btn-secondary1 {
  flex: 1;
  padding: 10px;
  border-radius: 50px;
  border: none;
  cursor: pointer;
  font-weight: 600;
}

.btn-primary1 {
  background: #007bff !important;
  color: #111;
  transition: background 0.3s ease, transform 0.3s ease;
}

.btn-primary1:hover {
  background: #005fc8 !important;
  color: #111;
}

.btn-secondary1 {
  background: rgba(255,255,255,0.3);
  color: #fff;
  transition: background 0.3s ease, transform 0.3s ease;
}

.btn-secondary1:hover {
  background: rgba(255,255,255,0.2) !important;
}

.mws-cookie-links {
  margin-top: 12px;
  font-size: 12px;
  opacity: 0.7;
  display: flex;
  justify-content: space-between;
}

.mws-cookie-links a {
  color: #fff;
  text-decoration: none;
}

@media (max-width: 575px) {
  #mws-cookie {
    right: 20px;
    left: 20px;
    bottom: 20px;
  }
}

@media (max-width: 500px) {
  #mws-cookie {
    right: 21px;
    left: 21px;
    bottom: 21px;
	max-width: 100%;
    width: auto;
  }

  .mws-cookie-buttons {
    flex-direction: column;
  }
}

@media (max-width: 400px) {
  #mws-cookie {
    right: 20px;
    left: 20px;
    bottom: 20px;
	max-width: 100%;
    width: auto;
  }

  .mws-cookie-buttons {
    flex-direction: column;
  }
}		
/* Ende Cockies consent Banner */

/* ================================
   YouTube Consent Overlay
================================ */

.embed-container.yt-consent {
    position: relative; /* bleibt kompatibel + nötig fürs Overlay */
}

/* Overlay */
.yt-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.92);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 5;
    color: #fff;
    text-align: center;
    padding: 20px;
    border-radius: 5px; /* passt zu iframe */
}

/* Text */
.yt-text {
    font-size: 14px;
    opacity: 0.85;
    margin-bottom: 12px;
}

/* Button */
.yt-btn {
    background: #ff0000;
    color: #fff;
    border: none;
    padding: 10px 16px;
    border-radius: 999px;
    cursor: pointer;
    font-weight: 600;
}

/* iframe sauber unter Overlay */
.embed-container iframe {
    position: absolute; /* wichtig für Overlay-Stapel */
    inset: 0;
    z-index: 1;
}

/* =========================================
   BigPicture Consent Overlay
========================================= */

.lightboxContainer {
    position: relative;
}

/* Thumbnail */
.lightboxContainer img {
    display: block;
    width: 100%;
    border-radius: 5px;
}

/* =========================================
   BigPicture Link States
========================================= */

.bp-consent {
    cursor: default;
}

.bp-consent[data-bp-enabled="1"] {
    cursor: pointer;
}

/* =========================================
   Overlay
========================================= */

.bp-overlay {
    position: absolute;
    inset: 0;
	top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.92);
    z-index: 9999;
    color: #fff;
    text-align: center;
    padding: 20px;
    border-radius: 5px;
    pointer-events: auto;
    opacity: 1;
}

/* Overlay versteckt */
.bp-overlay.hidden {
    opacity: 0;
}

/* =========================================
   Overlay Text
========================================= */

.bp-overlay .bp-text {
    font-size: 14px;
    opacity: 0.85;
    margin-bottom: 12px;
    line-height: 1.4;
}

/* =========================================
   Overlay Button
========================================= */

.bp-overlay .bp-btn {
    background: #ff0000;
    color: #fff;
    border: none;
    padding: 10px 16px;
    border-radius: 999px;
    cursor: pointer;
    font-weight: 600;
    transition:
        background .2s ease,
        transform .15s ease;
    /* NUR der Button klickbar */
    pointer-events: auto;
}

/* ================================
   Google Maps Consent Overlay
================================ */

.embed-container.gmaps-consent {
    width: 100%;
    height: 346px;
    position: relative;
	margin-top: 20px;
}

/* Overlay */
.gmaps-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.92);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 5;
    color: #fff;
    text-align: center;
    padding: 20px;
    border-radius: 5px; /* passt zum iframe */
}

/* Text */
.gmaps-text {
    font-size: 14px;
    opacity: 0.85;
    margin-bottom: 12px;
}

/* Button */
.gmaps-btn {
    background: #ff0000;
    color: #fff;
    border: none;
    padding: 10px 16px;
    border-radius: 999px;
    cursor: pointer;
    font-weight: 600;
}

/* iframe sauber unter Overlay */
.embed-container.gmaps-consent iframe {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.gmaps-overlay {
    cursor: default;
}

.gmaps-overlay * {
    cursor: default;
}

.gmaps-btn,
.gmaps-btn * {
    cursor: pointer;
}

/* ========================================
   COOKIE INFO OVERLAY
======================================== */

#mws-cookie-info {

    position: fixed;
    inset: 0;

    z-index: 1000000;

    display: flex!important;
    justify-content: center;

    /* wichtig */
    align-items: flex-start;

    padding: 20px;

    /* scrollt jetzt der Overlay-Container */
    overflow-y: auto;

    background: rgba(0,0,0,0.62);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity .45s ease,
        visibility .45s ease;
}

/* Sichtbar */

#mws-cookie-info.show {

    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* ========================================
   BOX
======================================== */

.mws-cookie-info-box {

    position: relative;

    width: 760px;
    max-width: 100%;

    /* entfernt */
    /* max-height: calc(100dvh - 40px); */
    /* overflow-y: auto; */

    margin: auto 0;

    background:
        linear-gradient(
            180deg,
            rgba(44,44,44,0.985) 0%,
            rgba(40,40,40,0.985) 100%
        );

    color: #ffffff;

    border-radius: 6px;

    padding: 34px;

    box-shadow:
        0 35px 90px rgba(0,0,0,0.6),
        0 0 0 1px rgba(0,123,255,0.14),
        0 0 40px rgba(0,123,255,0.18);

    border:
        1px solid #646464;

    transform:
        translateY(22px);

    transition:
        transform .45s cubic-bezier(.22,1,.36,1);
}

/* Animation */

#mws-cookie-info.show .mws-cookie-info-box {

    transform:
        translateY(0);
}
/* ========================================
   CLOSE BUTTON
======================================== */

.mws-cookie-info-close {

    position: absolute;

    top: 16px;
    right: 16px;

    width: 40px;
    height: 40px;

    border: none;
    border-radius: 50%;

    background: rgba(255,255,255,0.08);

    color: #ffffff;

    display: flex;
    justify-content: center;
    align-items: center;

    font-size: 22px;
    line-height: 1;

    cursor: pointer;

    transition:
        background .2s ease,
        transform .2s ease;
}

.mws-cookie-info-close:hover {

    background: rgba(255,255,255,0.16);

    transform: scale(1.08);
}

/* ========================================
   HEADLINE
======================================== */

.mws-cookie-info-box h3 {

    color: #ffffff !important;

    margin-top: 0;
    margin-bottom: 12px;

    font-size: 24px;
    font-weight: 700;

    letter-spacing: 0.02em;
}

/* ========================================
   INTRO
======================================== */

.mws-cookie-info-intro {

    color: rgba(255,255,255,0.82);

    font-size: 14px;
    line-height: 1.6;

    margin-bottom: 26px;
}

/* ========================================
   GRID
======================================== */

.mws-cookie-info-grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 18px;
}

/* ========================================
   CARDS
======================================== */

.mws-cookie-card {

	background:
		linear-gradient(
			180deg,
			rgb(38 38 38) 0%,
			rgba(255,255,255,0.075) 100%
		);

	border:
		1px solid rgb(73 105 141);

    border-radius: 20px;

    padding: 22px;

    color: #ffffff;
}

/* ========================================
   CARD TITLES
======================================== */

.mws-cookie-card h4 {

    color: #ffffff !important;

    margin-top: 0;
    margin-bottom: 18px;

    font-size: 17px;
    font-weight: 700;
}

/* ========================================
   LIST
======================================== */

.mws-cookie-card ul {

    list-style: none;

    padding: 0;
    margin: 0;
}

.mws-cookie-card li {

    color: rgba(255,255,255,0.92);

    padding: 12px 0;

	border-bottom:
		1px solid #16a2b8;

    font-size: 14px;

    line-height: 1.45;
}

/* letzte Linie entfernen */

.mws-cookie-card li:last-child {

    border-bottom: none;
}

/* ========================================
   COOKIE SWITCHES
======================================== */

.mws-switch-row {
    display: flex;
    align-items: center;
    gap: 14px;
    cursor: pointer;
    user-select: none;
}

/* Switch Basis */

.mws-switch {
    position: relative;
    width: 50px;
    height: 26px;
    flex-shrink: 0;
}

.mws-switch input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}

/* Track */

.mws-slider {
    position: absolute;
    inset: 0;

    border-radius: 999px;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,0.12),
            rgba(255,255,255,0.04)
        );

    border: 1px solid rgba(255,255,255,0.14);

    transition:
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

/* Knopf */

.mws-slider::before {

    content: "";

    position: absolute;

    width: 18px;
    height: 18px;

    left: 3px;
    top: 3px;

    border-radius: 50%;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #dcdcdc 100%
        );

    box-shadow:
        0 3px 10px rgba(0,0,0,0.35);

    transition:
        transform .28s cubic-bezier(.22,1,.36,1);
}

/* AKTIV */

.mws-switch input:checked + .mws-slider {

    background:
        linear-gradient(
            180deg,
            #0084ff 0%,
            #005fcc 100%
        );

    border-color: rgba(0,123,255,0.55);

    box-shadow:
        0 0 18px rgba(0,123,255,0.35);
}

.mws-switch input:checked + .mws-slider::before {

    transform: translateX(24px);
}

/* Hover */

.mws-switch-row:hover .mws-slider {

    border-color: rgba(255,255,255,0.28);
}

/* ========================================
   DISABLED ITEMS
======================================== */

.mws-cookie-card li.disabled {

    color: rgba(255,255,255,0.32);
    text-decoration: line-through;
	padding-top: 17px;
    padding-bottom: 23px;
}

/* ========================================
   MOBILE
======================================== */

@media (max-width: 630px) {
    #mws-cookie-info {
        padding: 20px; /* oder 8px / 12px je nach gewünschter Nähe */
    }
    .mws-cookie-info-grid {
        grid-template-columns: 1fr;
    }
    .mws-cookie-info-box {
        padding: 20px;
		border: 1px solid #404040;	
		background: rgba(35,35,35,0.92);	
    }	
    .mws-cookie-info-box h3 {
        font-size: 20px;
    }
}

/* ========================================
ENDE von COOKIE BANNER
======================================== */