/*
 Theme Name:     Mag
 Theme URI:      https://www.timmhaas.com
 Description:    Mag Theme
 Author:         TM Internetagentur
 Author URI:     https://www.timmhaas.com
 Template:       Divi
 Version:        1.0.0
*/

@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/roboto-condensed-v18-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Roboto Condensed Light'), local('RobotoCondensed-Light'),
       url('fonts/roboto-condensed-v18-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-condensed-v18-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-300.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-condensed-v18-latin-300.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/roboto-condensed-v18-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Roboto Condensed Italic'), local('RobotoCondensed-Italic'),
       url('fonts/roboto-condensed-v18-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-condensed-v18-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-condensed-v18-latin-italic.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-condensed-v18-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Roboto Condensed Bold'), local('RobotoCondensed-Bold'),
       url('fonts/roboto-condensed-v18-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-condensed-v18-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-condensed-v18-latin-700.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-condensed-v18-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'),
       url('fonts/roboto-condensed-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-condensed-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-condensed-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-condensed-v18-latin-regular.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}

/* body */
body {
	font-family: 'Roboto Condensed', arial, sans-serif;
	font-weight: 300 !important;
	position: relative;
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

body.noscroll {
	overflow-y: hidden !important;
}

.container {
	width: 90%;
}

.section {
	padding: 60px 0 !important;
}

.content-padding {
	padding: 40px !important;
}

@media only screen and (max-width: 980px) {
	
	.section {
		padding: 40px 0 !important;
	}
	
	.content-padding {
		padding: 40px 20px !important;
	}
		
}

/* header */
#main-header, #main-header.et-fixed-header {
	background: #fff;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
}

.home #main-header {
	background: rgba(255,255,255,0.0);
}

.home #top-menu a {
	color: #fff !important;
}

.home #main-header.et-fixed-header {
	background: #fff;
}

.home #et_search_icon:before {
	color: #fff;
}

.home span.et_close_search_field:after {
	color: #fff;
}

.home .et_search_form_container input {
	color: #fff;
}

#et_top_search {
	margin-top: 10px;
}

#et-top-navigation {
	padding: 30px 0 !important;
}

.et-fixed-header #et-top-navigation {
	padding: 30px 0 !important;
}

#et-top-navigation, .et-fixed-header #et-top-navigation {
	width: 70%;
}

#top-menu-nav {
	float: left;
}

#top-menu a {
	padding: 10px 0 !important;
	font-weight: 400 !important;
	border-top: 1px solid transparent;
}

.home #top-menu a.menu-active {
	color: #fff !important;
	border-top: 1px solid #fff;
}

.home #top-menu a:hover {
	border-top: 1px solid rgba(255,255,255,0.6);
}

#top-menu a.menu-active, .et-fixed-header #top-menu a.menu-active, #top-menu a[aria-current=page], #top-menu li.current-menu-item a {
	color: #1D1D1B !important;
	border-top: 1px solid #1D1D1B;
}

#top-menu a:hover {
	border-top: 1px solid #1D1D1B;
}

#top-menu li.current-menu-item>a, .et-fixed-header #top-menu li.current-menu-item>a {
	color: #1D1D1B !important;
}
	
#page-container {
    padding-top:100px !important;
}

.home #page-container {
    padding-top:0 !important;
}

.home #logo {
	display: inline-block;
	display:inherit;
	margin: 0 0 0 0;
	-webkit-transition: all .4s ease-in-out;
	-moz-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
	height: 40px !important;
	max-height: 40px !important;
}

.home #logo.second-logo {
	display: none;
	margin: 0 0 -200px 0;
	-webkit-transition: all .4s ease-in-out;
	-moz-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}

#logo, .et-fixed-header #logo {
	display: none;
	margin: -200px 0px 0 0px;
	-webkit-transition: all .4s ease-in-out;
	-moz-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}

#logo.second-logo, .et-fixed-header #logo.second-logo {
	display: inline-block;
	margin: 0 0 0 0 !important;
	-webkit-transition: all .4s ease-in-out;
	-moz-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
	height: 40px !important;
	max-height: 40px !important;
}

@media only screen and (max-width: 480px) {
	
	.home #main-header {
		background: #fff;
	}
	
    #page-container {
        padding-top:60px !important;
    }
	
}

@media only screen and (max-width: 980px) {
	
	#main-header {
		background: #fff !important;
		height: 60px !important;
	}
	
	#et_top_search {
		display: none;
	}
    
    .et_divi_100_custom_hamburger_menu__icon div {
	    height: 1px;
	    margin: 4.5px auto;
    }
    
    body.et_divi_100_custom_hamburger_menu .et-fixed-header .et_divi_100_custom_hamburger_menu__icon div {
	    background: #1D1D1B;
	}
    
    #page-container, .home #page-container {
        padding-top: 60px !important;
    }
	
	.et_menu_container {
		height: 60px;
	}
	
	#top-header {
		display: none;
	}
	
	.et_divi_100_custom_hamburger_menu .mobile_menu_bar {
	    padding-bottom: 0;
	    margin-bottom: 0;
	}
	
	.et_header_style_left #et-top-navigation, .et_header_style_left .et-fixed-header #et-top-navigation {
	    padding-top: 10px;
	}
	
	#et-top-navigation, .et-fixed-header #et-top-navigation {
		padding: 15px 0 !important;
	}
	
	.home #logo, #logo {
		display: none;
		margin: -200px 0px 0 0px;
		-webkit-transition: all .4s ease-in-out;
		-moz-transition: all .4s ease-in-out;
		transition: all .4s ease-in-out;
		height: 30px !important;
		max-height: 30px !important;
	}
	
	.home #logo.second-logo, #logo.second-logo, .et-fixed-header #logo.second-logo {
		display: inline-block;
		margin: 0 0 0 0 !important;
		-webkit-transition: all .4s ease-in-out;
		-moz-transition: all .4s ease-in-out;
		transition: all .4s ease-in-out;
		height: 30px !important;
		max-height: 30px !important;
	}
	
	.et_header_style_left #logo, .et_header_style_split #logo {
	    max-width: 240px;
	}
	
}

/* go to top */
.et_pb_scroll_top.et-pb-icon {
	background:#1D1D1B !important; 
    -webkit-border-top-left-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    -moz-border-radius-topleft: 0;
    -moz-border-radius-bottomleft: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    bottom: 0 !important;
}

/* sticky widget */
#myprefix-widget-area-wrap { 
	z-index:10000; 
	display:block; 
	right: 0;
	top: 0;
	position:fixed; 
	background-color:#1D1D1B; 
}
.myprefix_widget { 
	padding:0; 
}
.myprefix_widget a {
	display:block;
	font-size: 20px;
	color: #fff;
	padding: 12.5px;
}
.myprefix_widget a:hover {
	background: #000;
}

@media only screen and ( max-width: 980px ) {
	#myprefix-widget-area-wrap {
		display: none;
	}
	.mobile-nav-opened #myprefix-widget-area-wrap {
		top: 240px;
		display: block;
	}
}

/* desktop */

.nav li ul { padding:0; }

/* mobile menu */
#mobile_menu,  .opened #mobile_menu {
	position: fixed;
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100vh;
	min-height: calc(100vh - 140px);
	z-index: 10;
	border: none;
	background: #1D1D1B !important;
	overflow-y:auto;
	top: 140px;
	float: left;
}

#mobile_menu, .opened #mobile_menu, .et-fixed-header #mobile_menu, .et-fixed-header .opened #mobile_menu {
	top: 60px;
	min-height: calc(100vh - 60px);
}

#mobile_menu li {
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
}

#mobile_menu a {
	font-size: 24px !important;
	color: #fff;
	letter-spacing: 0.1em;
	transition: 0.5s all;
}

#mobile_menu .sub-menu li, #mobile_menu .sub-menu {
	padding: 0 !important;
}

#mobile_menu .sub-menu a {
	font-size: 18px !important;
	padding: 5px 0;
}

.menu-item-has-children > a {
	font-weight: 400 !important;
}

.opened #mobile_menu {
	transform: translate3d(0,0,0);
	transition: 0.5s all;
}

.opened .mobile_menu_bar {
	z-index: 11;
}

.et_mobile_menu {
    overflow: scroll !important;
    max-height: 80vh;
}

.et_mobile_menu li a {
	border-bottom: none !important;
}
 
/* Menu animations */
.closed #mobile_menu {
	transform: translate3d(200%,0,0);
	transition: 0.5s all;
}

.et_mobile_menu .menu-item-has-children>a {
	background: transparent !important;
}

/* fixed mobile navigation */
@media (max-width: 980px) {
	
	#main-header {
		transform: translate3d(0,0,0);
	}
	
	.et_non_fixed_nav.et_transparent_nav #main-header, .et_non_fixed_nav.et_transparent_nav #top-header, .et_fixed_nav #main-header, .et_fixed_nav #top-header {
	    position: fixed;
	}
}

/* ##### DROPDOWN MENU STYLES ##### */

#top-menu .sub-menu {
   background-color: rgba(0,0,0,0.5); /* Background color dropdown */
   border-top: 3px solid transparent; /* Top border color dropdown */
}

#top-menu .sub-menu li a {
   font-size: 14px; /* Font size dropdown */
   width: 100%;
   color: #fff;
   text-transform: none;
   border-bottom: none;
}

#top-menu .sub-menu li a[aria-current="page"] {
	font-weight: 700;
}

#top-menu .sub-menu li:hover {
   background-color: rgba(0,0,0,0.1); /* Hover color menu item */
}

#top-menu .sub-menu .current_page_item {
   background-color: rgba(0,0,0,0.2); /* Current menu item color dropdown */
}

#top-menu .sub-menu li {
   padding-left: 0px;
   padding-right: 0px;
   width: 100%;
}

#top-menu li li a {
   padding-top: 10px;
   padding-bottom: 8px;
}

#top-menu .sub-menu {
   padding-top: 0px;
   padding-bottom: 0px;
}

.nav ul li a:hover {
   opacity: 1;
   background-color: rgba(0,0,0,0);
}

/* ##### DROPDOWN MENU WIDTH ##### */

.nav li ul {
	width: 280px !important; /* Width of the dropdown menu */
}

.nav li li ul {
	left: 280px !important; /* Use the same size as above */
}

#top-menu li li a {
	width: 240px; /* Make this 40 less then the width of the dropdown menu */
}

/* individual styles */
blockquote p {
	margin-bottom: 1em;
    font-size: 24px;
    font-weight: 300;
    font-style: normal;
    line-height: 1.6em;
}

blockquote footer {
    font-size: 12px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 2px;
}

blockquote footer, blockquote small, blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.4em;
}

blockquote footer:before, blockquote small:before, blockquote .small:before {
    content: '\2014 \00A0';
}

/* top menu */
#top-menu li { padding-right:30px; }

#top-menu .sub-menu li a { color:#fff !important; }

@media only screen and (min-width: 981px) {
	.et-fixed-header #top-menu .sub-menu a { color:#fff !important; }
}

/* fix dropdown menu */
#top-menu li.menu-item-has-children:last-child > ul {
    right: 0!important;
}

/* style buttons */
.et_button_no_icon .et_pb_button, .et_pb_button, .et_button_no_icon .et_pb_button:hover, .et_pb_button:hover {
	min-width:180px !important;
	padding: 0.5em 2em !important;
}

/* header */
#top-header {
	z-index: 9000;
}

#main-header {
	z-index: 9000;
}

/* main content */
#main-content {
    background: #f9f9f9;
}

.wrapper {
    position: relative;
    padding: 0 40px;
    width: 100%;
}

.wrapper-left, .wrapper-right {
    position: relative;
    padding: 0 40px;
    width: 100%;
}

@media (max-width: 767px) {
	
	.wrapper {
		padding: 0 20px;
	}
	
	.wrapper-left, .wrapper-right {
	    padding: 0 20px;
	}
}

@media screen and (min-width: 1520px) {
	.wrapper {
	    padding: 0;
	    width: 100%;
	    max-width: 1440px;
	    margin: auto;
	}
}

@media screen and (min-width: 1520px) {
	
	.wrapper-left {
	    padding-left: calc((100vw - 1440px)/2);
	    padding-right: 0;
	}
	
	.wrapper-right {
	    padding-right: calc((100vw - 1440px)/2);
	    padding-left: 0;
	}
	
}

/* Zeichnet jeden markierten Text gelb auf rotem Hintergrund */
::-moz-selection {
	color: #fff; background: #1D1D1B;
}

::selection {
	color: #fff; background: #1D1D1B;
}

.et_pb_post_main_image {
	max-width:1160px !important;
	width:100% !important;
	height:auto !important;
}

/* footer */
#menu-footer { margin:0 auto; text-align:center; }

.et-social-icon a:hover { color:#fff !important; }

/* wordpress contact form 7 styling */
.wps-form {
    width: 100%;
    margin: 0 auto;
}

.wps-form-row {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.wps-form-row .wpcf7-form-control {
    width: 100%;
}

.wps-form-column {
    flex: 1;
    padding: 0.5rem 0;
    width: 100%;
}

.wps-form-column.single {
	padding: 0.5rem 0 !important;
}

/* Notebook / Desktop */
@media only screen and ( min-width: 48em ) { 
	
	.wps-form-row {
		flex-direction: row;
	}

	.wps-form-column {
		padding: 0.5rem 1rem;
	}
	
	.wps-form-column:nth-child(odd) {
		padding: 0.5rem 1rem 0.5rem 0;
	}
	
	.wps-form-column:nth-child(even) {
		padding: 0.5rem 0 0.5rem 1rem;
	}
	
}

.wpcf7-form-control-wrap { margin:0 0 10px 0; }
.wpcf7-form label { font-size:16px; color:#1D1D1B; font-weight:400; letter-spacing:1px; cursor:pointer; }
.wpcf7-form label a { text-decoration:underline; }
.wpcf7-select, .wpcf7-text, .wpcf7-textarea { width:100%; padding:10px !important; font-size:16px; letter-spacing:1px; color:#000 !important; line-height:16px; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border:1px solid #ddd !important; }
.wpcf7-select:focus, .wpcf7-text:focus, .wpcf7-textarea:focus { border:1px solid #1D1D1B !important; }
.wpcf7-select { line-height:20px; -webkit-appearance:none; }
.wpcf7-submit { width:100%; padding:20px !important; background:#1D1D1B; font-size:16px; letter-spacing:1px; color:#fff; line-height:18px; text-transform:uppercase; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border:2px solid #1D1D1B; cursor:pointer; }
.wpcf7-submit:hover { background:#000; color:#fff; border:2px solid #000;  }
.required { color:#1D1D1B; }
.wpcf7-form p { margin:0 0 10px 0; }
.wpcf7-not-valid { border:1px solid #DE4343 !important; }
.wpcf7-response-output, .wpcf7-validation-errors, .wpcf7-acceptance-missing { margin:0 0 20px 0 !important; padding:20px !important; font-size:18px; color:#fff; background:#DE4343; border:0 !important; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; }
.wpcf7 form.sent .wpcf7-response-output, .wpcf7-mail-sent-ok { background:#77D79B !important; }
.wpcf7-not-valid-tip { color:#DE4343 !important; }
.wpcf7-list-item { margin:0 !important; }

.wpcf7-form .wpcf7-checkbox label, .wpcf7-form .wpcf7-acceptance label {
	position: relative;
	cursor: pointer;
	font-size:16px;
}

.wpcf7-form .wpcf7-checkbox input[type=checkbox], .wpcf7-form .wpcf7-acceptance input[type=checkbox] {
	position: relative;
 	visibility: hidden;
}

.wpcf7-form .wpcf7-checkbox input[type=checkbox] + span, .wpcf7-form .wpcf7-acceptance input[type=checkbox] + span {
/*   border: 3px solid red;  */
	margin-left:10px;
}

.wpcf7-form .wpcf7-checkbox input[type=checkbox] + span:before, .wpcf7-form .wpcf7-acceptance input[type=checkbox] + span:before {
	display: block;
	position: absolute;
	content: '';
	border-radius: 0;
	height: 20px;
	width: 20px;
	top: 0px;
	border: 1px solid #ccc;
}

.wpcf7-form .wpcf7-checkbox input[type=checkbox] + span:after, .wpcf7-form .wpcf7-acceptance input[type=checkbox] + span:after {
    display: block;
    position: absolute;
    border-radius: 0;
    height: 16px;
    width: 16px;
    top: 3px;
    left: 3px;
    visibility: hidden;
	background:#1D1D1B;
}

.wpcf7-form .wpcf7-checkbox input[type=checkbox]:checked + span:before, .wpcf7-form .wpcf7-acceptance input[type=checkbox]:checked + span:before {
    background: transparent;
}

.wpcf7-form .wpcf7-checkbox input[type=checkbox]:checked + span:after, .wpcf7-form .wpcf7-acceptance input[type=checkbox]:checked + span:after {
	visibility: visible;
}

::placeholder { color:#ccc !important; }

/* Footer */
@media (max-width: 980px) {

	.bottom-nav li {
		display: block;
		padding: 0;
	}
	
}

/* accordions */
.et_pb_accordion .et_pb_accordion_item {
	border: 1px solid #ddd !important;
}

.et_pb_toggle_title {
	font-size: 16px;
	color: #1D1D1B !important;
	letter-spacing: 0.2em;
	line-height: 1.4em;
	text-align: center;
	text-transform: uppercase;
}

.et_pb_accordion .et_pb_toggle_content {
	font-size: 16px;
	font-weight: 300;
	color: #1D1D1B;
	line-height: 1.8em;
	text-align: center;
}

.et_pb_toggle_close {
	background-color: #f8f8f8 !important;
}

.et_pb_toggle_open .et_pb_toggle_title:before {
	content: "\32" !important;
	color: #1D1D1B !important;
}

.et_pb_toggle_close .et_pb_toggle_title:before {
	content: "\33" !important;
	color: #1D1D1B !important;
}

/* texts */
h1, h2, h3, h4, h5, h6 {
	padding:0;
}

h1 {
	font-family: 'Roboto Condensed', arial, sans-serif;
    font-size: 50px !important;
    font-weight: 400 !important;
    letter-spacing: -2px !important;
    line-height: 62px !important;
	color: #1D1D1B !important;
    margin:0 0 40px 0;
    text-transform: uppercase;
}


h2 {
	font-family: 'Roboto Condensed', arial, sans-serif;
	font-size: 40px !important;
	font-weight: 700 !important;
	letter-spacing: -1px !important;
	color: #1D1D1B !important;
    line-height: 52px !important;
    margin:0 0 30px 0;
}

h3 {
	font-family: 'Roboto Condensed', arial, sans-serif;
    font-size: 30px !important;
    font-weight: 400 !important;
    color: #1D1D1B !important;
	letter-spacing: -1px !important;
    line-height: 42px !important;
    margin:0 0 20px 0;
}

h4 {
	font-family: 'Roboto Condensed', arial, sans-serif;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #1D1D1B !important;
    letter-spacing: 2px !important;
    line-height: 24px !important;
    margin: 0 0 5px 0;
    text-transform: uppercase !important;
}

p, address {
	font-size: 18px;
	font-weight: 300;
	font-style: normal;
	letter-spacing: 0;
	color: #1D1D1B;
	line-height: 24px !important;
}

p a {
	text-decoration: none;
}

p a:hover {
	text-decoration: underline;
}

p strong, address strong {
	font-weight: 700;
}

p.address {
	color: #fff;
	line-height: 2em;
}

p.big {
	font-size: 24px;
	line-height: 1.8em;
}

ul li, ol li {
	font-size: 18px;
	font-weight: 300;
	font-style: normal;
	letter-spacing: 0;
}

ul.list {
	list-style: none;
	margin: 0 0 20px 0;
	padding: 10px 0 0 0;
	border-top: 1px solid #1D1D1B;
}

ul.list li {
	margin: 0 0 10px 0;
	padding: 0 0 10px 27px;
	border-bottom: 1px solid #1D1D1B;
	color: #1D1D1B;
}

ul.list li::before {
	font-family: 'ETmodules';
	content: 'L';
	background-size: 7px 7px;
	width: 7px;
	margin-top: 0;
	margin-left: -27px;
    margin-right: 17px;
	font-weight: 700;
	color: #1D1D1B;
	line-height: 1;
	display: inline-block;
}

ol.list {
	list-style: none;
	counter-reset: my-awesome-counter;
	margin: 0;
	padding: 20px 0 0 0;
	border-top: 1px solid #1D1D1B;
}

ol.list li {
	counter-increment: my-awesome-counter;
	margin: 0 0 20px 0;
	padding: 0 0 20px 2.5em;
	border-bottom: 1px solid #1D1D1B;
	font-size: 20px;
}

ol.list li::before {
	content: counter(my-awesome-counter);
	font-weight: 700;
	font-size: 32px;
	color: #1D1D1B;
	width: 1em;
	margin-left: -1.5em;
    margin-right: 0.5em;
	font-family: 'Roboto Condensed', sans-serif;
	line-height: 1;
	display: inline-block;
}

ul.files {
	margin: 0 auto;
	padding: 0;
}

ul.files li { 
	list-style: none;
	font-weight: 400;
	border-right: 1px solid #000;
	padding-right: 10px;
	margin-right: 10px;
	display: inline-block;
}

ul.files li:last-child {
	border-right: 0;
	padding-right: 0;
	margin-right: 0;
}

hr {
	margin: 30px 0;
    border: 0;
    height: 1px;
    background: rgba(0,0,0,0.2);
}

.icon-padding {
	width:36px;
	color:#000;
	text-align:center;
	display:inline-block;
	padding-right:6px;
}

.et_pb_button {
	text-align:center;
}

.et_pb_button:hover {
	text-decoration: none !important;
}

.et_pb_button.fullwidth {
	width:100%;
	display:block;
}

.et_pb_button.fullwidth.big {
	padding:15px 0 !important;
	font-size:16px;
}

.et_pb_button.fullwidth.big:hover {
	padding:15px 0 !important;
}

.et_pb_button:hover.fullwidth.big:after {
	color:#fff;
	content: "\35";
	display:inline-block;
}

h2.entry-title { font-size:18px; }

/* gallery */

.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item {
	width: 32% !important;
	margin: 0 1% 1% 0 !important;
}

@media all and (max-width:980px) {
	.et_pb_column .et_pb_grid_item:nth-child(n) {
		width: 32% !important;
		margin: 0 1% 1% 0 !important;
	}
}

@media all and (max-width:767px) {
	.et_pb_column .et_pb_grid_item:nth-child(n) {
		width: 49%!important;
		margin: 0 1% 1% 0!important;
	}
}

.et_pb_gallery_image {
	overflow: hidden; /* [1.2] Hide the overflowing of child elements */
}

.et_pb_gallery_image img {
	transition: transform .5s ease;
}

.et_pb_gallery_image:hover img {
	transform: scale(1.25);
}

.et_pb_gallery .et_overlay:before {
	font-family: 'hotel-icons' !important;
	top: 50%;
	left: 50%;
	margin: -26px 0 0 -26px;
	background: rgba(0,0,0,0.25);
    font-size: 32px !important;
    color: #fff;
    padding: 20px;
    border-radius: 50%;
    content: '\e80f';
}

.et_overlay {
    background-color: rgba(0,0,0,0.4) !important;
    border: none;
    display: inline-block;
}

.button-nav {
	margin:0 !important;
	padding:0 0 20px 0 !important;
}

.button-nav li {
	list-style:none;
	margin:0 20px 0 0 !important;
	padding:0 !important;
	display:inline-block;
}

.button-nav li:last-child {
	margin:0 !important;
}

.button-nav li a {
	margin:0 !important;
}

@media only screen and (max-width: 767px) {
	
	.button-nav li {
		margin:0 0 20px 0 !important;
		display: block;
	}
	
	.button-nav li a {
		width:100%;
		max-width: 100%;
		display:block;
	}
		
}

/* icon list */
.icon-list {
	margin:0 !important;
	padding:0 !important;
}

.icon-list li {
	margin:0 0 20px 0;
	padding:0;
	list-style:none;
	line-height: 36px;
}

.icon-list li a {
	font-size: 24px;
	color: #1D1D1B;
	cursor: pointer;
	text-decoration: none;
}

.icon-list li a:hover {
	color: #1D1D1B;
}

.icon-list li a::before {
	width: 36px;
	height: 36px;
    speak: none;
    font-style: normal;
    font-weight: 400;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-shadow: 0 0;
	font-size: 36px;
	color: #777;
	float: left;
	margin-right: 10px;
	opacity: 1;
}

.icon-list li a.gartenhof::before {
	content: url('/wp-content/uploads/gartenhof.svg');
}

.icon-list li a.wiesenpark::before {
	content: url('/wp-content/uploads/wiesenpark.svg');
}

.icon-list li a.quartiersplatz::before {
	content: url('/wp-content/uploads/quartiersplatz.svg');
}

.icon-list li a.familiengarten::before {
	content: url('/wp-content/uploads/familiengarten.svg');
}

.icon-list li a.waldpark::before {
	content: url('/wp-content/uploads/waldpark.svg');
}

.icon-list li a:hover::before {
	opacity: 0.7;
}

/* swiper carousel */
.swiper-container {
	width: 100%;
	height: 100%;
	margin-left: auto;
	margin-right: auto;
}

.swiper-slide {
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.swiper-button-next, .swiper-button-prev, .et-pb-arrow-next, .et-pb-arrow-prev {
    background: rgba(0,0,0,1);
    color: #fff;
	position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/ 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(-1 * var(--swiper-navigation-size)/ 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-button-next:after, .swiper-button-prev:after, .et-pb-arrow-next:after, .et-pb-arrow-prev:after {
	font-size: 16px !important;
}

.swiper-button-prev {
	left: 0;
}

.swiper-button-next {
	right: 0;
}

.swiper-pagination-bullet {
	margin-right: 6px !important;
    background: #000;
    opacity: 0.3;
}

.swiper-pagination-bullet-active {
    background: #fff;
    opacity: 1;
}

.swiper-pagination-bullet:only-child {
    visibility: hidden;
}

.et_pb_slider:hover .et-pb-arrow-prev {
	left: 0;
}

.et_pb_slider:hover .et-pb-arrow-next {
	right: 0;
}

.et-pb-arrow-prev, .et-pb-arrow-next {
    font-family: swiper-icons;
}

.et-pb-arrow-prev:before, .et-pb-arrow-next:before {
	content: '';
}

.et-pb-arrow-prev:after {
	content: 'prev'
}
.et-pb-arrow-next:after {
	content: 'next'
}

#info-swiper {
	width: 100%;
	height: 100%;
	margin-left: auto;
	margin-right: auto;
}

#info-swiper .swiper-slide {
	flex-direction: column;
}

#info-swiper .info-icon {
	font-size: 48px;
	color: #fff;
	display: block;
}

#info-swiper h2 {
	font-size: 20px;
	color: #fff !important;
}

#info-swiper p {
	color: #fff !important;
}

#info-swiper-pagination {
	margin: 0 auto;
	text-align: center;
}

#info-swiper .swiper-pagination-bullet {
    background: #fff;
    opacity: 0.3;
}

#info-swiper .swiper-pagination-bullet-active {
    background: #fff;
    opacity: 1;
}

#info-swiper .swiper-pagination-bullet {
	margin-right: 6px !important;
}

@media only screen and (max-width: 480px) {
	.swiper-pagination {
		display: none;
	}
}

/* button link */
.more-link {
	width:100%;
	max-width:320px;
	min-width:240px;
	padding:5px 20px;
	margin:20px 0 0 0;
	font-size:14px;
	font-weight:400;
	color:#1D1D1B;
	letter-spacing:0.2em;
	text-align: center;
	border:2px solid #1D1D1B;
	text-transform:uppercase;
	text-decoration:none;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	display:block;
}

.more-link:hover {
	background:#1D1D1B;
	color:#fff;
	text-decoration:none;
}

/* info + icon */
.information p { text-align:center; }
.information p .icon-big { font-size:72px; }
.information .headline { min-height:96px; display:flex; align-items: center; justify-content: center; }
.information h3 { text-align:center; vertical-align:middle; }

/* address */
.map-marker:before {
	font-family: 'et-line';
	content: "\e047";
	font-size:24px;
	margin-bottom:6px;
	display:block;
}

/* arrow link wrapper */
.slider-down-arrow {
	position: absolute;
	z-index: 10;
	bottom: 70px;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 32px;
	font-family: 'ETmodules';
	color:#fff;
}
/* arrow link */
.slider-down-arrow a {
	line-height: 1em;
	display: inline-block;
	color: #fff !important;
	text-shadow: 0 1px 8px rgba(0,0,0,0.5);
	transition: all 0.2s ease;
}
/* animate the arrow link if not hovered,
note: this uses animation via Divi Booster */
.slider-down-arrow a:not(:hover) {
	animation: fullwidth-header-bounce 2.2s ease-out infinite;
}
/* add hover effect on arrow link */
.slider-down-arrow a:hover {
	text-shadow: 0 2px 10px rgba(0,0,0,0.85);
}

@media (min-width: 1200px) {
	/* increase arrow size, and adjust positioning, for larger screens */
	.slider-down-arrow {
		bottom: 90px;
		font-size: 48px;
	}	
}

@media (max-width: 980px) {
	/* hide arrow when stuff stacks */
	.slider-down-arrow {
		display: none;	
	}
}

.et_pb_slide {
	padding: 0 !important;
}

.et_pb_bg_layout_dark .et_pb_slide_description {
	color: #fff !important;
	text-shadow: none !important;
}

.et_pb_button.et_pb_more_button.db_pb_button_2 {
	margin-left: 15px !important;
}

.et_pb_button.et_pb_more_button, .et_pb_button.et_pb_more_button:hover {
	margin: 40px 0 0 0 !important;
	padding-top: 16px!important;
    padding-right: 40px!important;
    padding-bottom: 16px!important;
    padding-left: 40px!important;
    display: inline-block !important;
}

@media only screen and (max-width: 480px) {
	
	.et_pb_button.et_pb_more_button.db_pb_button_2 {
		margin-left: 0 !important;
	}
	
	.et_pb_slide_0.db_second_more_button .et_pb_more_button {
		margin: 20px 0 0 0 !important;
	}
	
	.et_pb_button.et_pb_more_button, .et_pb_button.et_pb_more_button:hover {
		margin: 40px 0 0 0;
		padding-top: 8px!important;
	    padding-right: 20px!important;
	    padding-bottom: 8px!important;
	    padding-left: 20px!important;
	}
	
}

/* staff */
.staff-container {
	margin: 0 0 40px 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.staff-item {
	width: 49%;
	margin: 0 0 40px 0;
	box-shadow: 0 15px 20px -15px rgba(0, 0, 0, 0.1), 0 35px 50px -25px rgba(0, 0, 0, 0.1), 0 85px 60px -25px rgba(0, 0, 0, 0);
	align-items: flex-start;
	display: flex;
}

.staff-image {
	width:100%;
	height:auto;
	max-width: 240px;
	max-height: 360px;
	margin: 0;
	margin-right: 20px;
	vertical-align: top;
	align-items: flex-start;
}

.staff-content {
	padding: 20px;
	text-align: left;
	align-items: flex-start;
}

.staff-details {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.staff-content p { margin:0 auto 20px 0; padding:0; }
.staff-content .staff-position { margin:0 0 20px 0; color:rgba(0,0,0,0.6); }
.staff-content .staff-title { padding:0; margin:0 0 0 0; color:#1D1D1B !important; line-height:150%; text-transform: none; }
.staff-content .staff-contact { margin:0 0 20px 0; text-align: left; }
.staff-content .et-social-icons { margin:0 auto 20px auto; padding:0; float:none !important; text-align:left; }
.staff-content .et-social-icons li { margin:0 20px 0 0; }
.staff-content .et-social-icons .et-social-icon a { font-size:20px; }

@media (max-width: 980px) {

	.staff-item {
		display: block;
	}
	
}

/* companies */
.companies-container {
	margin: 0 0 40px 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.companies-item {
	width: 31%;
	margin: 0 0 40px 0;
	box-shadow: 0 15px 20px -15px rgba(0, 0, 0, 0.1), 0 35px 50px -25px rgba(0, 0, 0, 0.1), 0 85px 60px -25px rgba(0, 0, 0, 0);
	align-items: flex-start;
}

.companies-image {
	width:100%;
	height:auto;
	margin-right: 20px;
	vertical-align: top;
	align-items: flex-start;
}

.companies-content {
	padding: 20px;
	text-align: left;
	align-items: flex-start;
}

.companies-content { padding:20px; }
.companies-content p { margin:0 auto 20px 0; padding:0; }
.companies-content .companies-title { padding:0; margin:0 0 0 0; line-height:150%; }
.companies-content .companies-contact { margin:0 0 20px 0; }
.companies-content .companies-address { margin:0 0 20px 0; }
.companies-content .et-social-icons { margin:0 auto 20px auto; padding:0; float:none !important; text-align:left; }
.companies-content .et-social-icons li { margin:0 20px 0 0; }
.companies-content .et-social-icons .et-social-icon a { font-size:20px; }

@media (max-width: 980px) {

	.companies-item {
		display: block;
	}
	
}


/* sub menu */
#top-menu .sub-menu {
	color: #fff;
	background: #1D1D1B !important;
}

/* google recaptcha */
.grecaptcha-badge { 
  visibility: hidden !important; 
}

/* cookies */
#cookie-law-info-bar {
	padding: 5px 10px;
	font-size: 1em;
	box-shadow: rgba(0,0,0,0.1) 0 0 30px;
}

#cookie-law-info-again {
	background: #1D1D1B !important;
	color: #fff !important;
	box-shadow: rgba(0,0,0,0.1) 0 0 10px 0;
	border: none !important;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	left: 0 !important;
}

.cli-plugin-button {
	border: 1px solid #1D1D1B !important;
}

.cli-plugin-button:hover {
	background: #1D1D1B !important;
	border: 1px solid #1D1D1B !important;
}

.cli_settings_button {
	background: #fff !important;
	border: 1px solid #777 !important;
}

.cli_settings_button:hover {
	color: #000 !important;
	background: #fff !important;
	border: 1px solid #000 !important;
}

.cli-tab-container h4, .cli-tab-container h1 {
	color: #1D1D1B !important;
}

.cli-plugin-main-link {
	font-weight: 400;	
}

@media (max-width: 480px) {
	.cli-plugin-main-link {
		display: block !important;
	}
}

/* footer */
#footer-info { font-size: 14px; color: #1D1D1B !important; }

#footer-widgets {
	border-bottom: 1px solid #ddd;
}

#footer-widgets p, #footer-widgets address {
	font-size: 16px;
	color: #1D1D1B;
}

#footer-widgets a {
	color: #1D1D1B !important;
	text-decoration: none;
}

#footer-widgets a:hover {
	color: rgba(28, 28, 26, 0.7) !important;
}

#menu-footer {
	margin: 0;
	padding: 0;
	display:block;
}

#menu-footer li {
	display: block;
	list-style: none;
	text-align: left;
	margin: 0 0 10px 0;
	font-size: 16px;
	line-height: 24px;
}

#menu-footer li a {
	color: #1D1D1B !important;
	letter-spacing: 1px;
	text-decoration: none;
	text-transform: uppercase;
}

#menu-footer li a:hover {
	color: rgba(28, 28, 26, 0.7) !important;
}

#menu-footer li a[aria-current="page"] {
	font-weight: 700;
}

#footer-widgets .footer-widget li {
	padding: 0;
}

#footer-widgets .footer-widget li:before {
	display: none;
}

#main-footer .footer-widget h4 {
	font-weight: 700;
	letter-spacing: -2px;
	text-transform: uppercase;
}

@media (max-width: 981px) {
	
	.footer-widget:nth-child(n) {
		width: 100% !important;
	}
	
	#footer-widgets .footer-widget:nth-last-child(-n+2) {
		margin-bottom: 7.5% !important;
	}
	
	#footer-info { text-align: left; }
	
}

/* icons */
.icons-list {
	margin: 0 !important;
	padding: 10px 0 20px 0 !important;
	list-style: none !important;
}

.icons-list li {
	margin: 0 10px 0 0 !important;
	padding: 0 !important;
	display: inline-block !important;
}

.icons-list li a {
	width: 44px;
	height: 44px;
	color: #00a0a0;
}

.icons-list li a.more {
	width: auto;
	font-weight: 700;
	text-align: right;
}

.icons-list li a:hover {
	color: #1D1D1B;
}

.icons-list li .fab, .icons-list li .fas {
	width: 44px;
	height: 44px;
	line-height: 44px;
	text-align: center;
	vertical-align: middle;
	font-size: 24px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-boder-radius: 5px;
	box-shadow: rgba(0,0,0,.1) 0 0 3px;
}

/* search and filter */
.pagination { display:none; }

.searchandfilter ul {
	margin: 0;
	padding: 0;
}

.searchandfilter ul li {
	display: inline-block;
	margin: 0 20px 0 0;
}

.searchandfilter ul li:last-child {
	margin: 0;
}

.searchandfilter input[type="submit"] {
	background: #1D1D1B;
	padding: 3px 20px;
	margin: 0;
	font-size: 1em;
	color: #fff;
	border: 1px solid #1D1D1B;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	outline: 0;
	display: block !important;
	cursor: pointer;
}

.searchandfilter input[type="submit"]:hover {
	background: none;
	color: #1D1D1B;
}

.searchandfilter .noUi-connect {
	background: #1D1D1B;
}

.searchandfilter .sf-label-checkbox {
	letter-spacing: 0;
	cursor: pointer;
}

.searchandfilter .sf-input-select {
	font-size: 1em;
	letter-spacing: 0;
	border: 1px solid #ddd;
	color: #1D1D1B;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
}

.searchandfilter h4 {
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0;
}

.sf-field-post-meta-group_business_meta_business_kitchen {
	display: none;
}

.searchandfilter #sf-input-2fa31f2cd7646ead79d66763d86774c6:checked ~ .sf-field-post-meta-group_business_meta_business_kitchen {
	display: block;
}

@media screen and (max-width: 981px) {
	
	.filter {
		cursor: pointer;
		position:relative;
	}
	
	.filter.active:before {
		content: "\f077";
	}
	
	.filter:before {
		font-family:'Font Awesome 5 Free';
		content: "\f078";
		float: right;
		padding-right: 5px;
	}
	
	.searchandfilter {
		display: none;
	}
	
	.searchandfilter.active {
		display: block;
	}
	
	.searchandfilter [data-sf-field-input-type="select"] label {
		display: block;
	}
	
	/*
	.searchandfilter [data-sf-field-input-type="checkbox"] ul {
		display: none;
	}
	
	.searchandfilter [data-sf-field-input-type="checkbox"] ul.active {
		display: block;
	}
	*/
	
	.searchandfilter select.sf-input-select, .searchandfilter .sf-checkbox {
		-webkit-appearance: none;
	}
	
	.searchandfilter select.sf-input-select, .searchandfilter input[type="submit"] {
		display: block;
		width: 100%;
		min-width: 100%;
		max-width: 100%;
	}
	
}

/*** Hide Sidebar for single project posts ***/
.single-immobilien #sidebar { display:none; }

/*** Take out the divider line between content and sidebar ***/
.single-immobilien #main-content .container:before {background: none;}
 
/*** Expand the content area to fullwidth ***/
@media (min-width: 981px){
	.single-immobilien #left-area {
	    width: 100%;
	    padding: 23px 0px 0px !important;
	    float: none !important;
	}
}

/* real estates */
#swiper-realestate {
	position: relative;
	z-index: 0;
	max-height: 960px;
	background: #fff;
}

#swiper-realestate .swiper-slide img {
	max-height: 960px !important;
}

#swiper-realestate .info {
	padding: 5px 10px;
	background: #1D1D1B;
	font-size: 20px;
	color: #fff;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1000;
}

#swiper-realestate .info.green {
	background: #0f876b;
}

#swiper-realestate .info.red {
	background: #d0092e;
}

.realestate-item-container {
	display: flex;
	display: -webkit-flex;
	align-content: space-between;
	justify-content: flex-start;
	margin: 0 -30px;
	flex-wrap: wrap;
}

.realestate-item {
	width: 100%;
	max-width: 440px;
	background: #fff;
	margin: 30px;
}

.realestate-item .content {
	padding: 20px;
}

.realestate-item {
	position: relative;
	z-index: 0;
}

.realestate-item .info {
	padding: 5px 10px;
	background: #1D1D1B;
	font-size: 20px;
	color: #fff;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1000;
}

.realestate-item .info.green {
	background: #0f876b;
}

.realestate-item .info.red {
	background: #d0092e;
}

.nav-single {
	background: #fff;
	padding: 10px 40px;
	font-family: 'ETmodules';
	display:flex;
	align-items: center;
	justify-content: space-between;
	line-height:24px;
}

.nav-single .nav-label { font-family: 'Roboto Condensed', arial, sans-serif; }

.nav-previous, .nav-next, .nav-grid {
	min-width: 100px;
}

.nav-previous {
	align-items: flex-start;
	flex-direction: column;
	text-align: left;
}

.nav-next {
	align-items: flex-end;
	flex-direction: column;
	text-align: right;
}

.nav-grid {
	align-items: center;
	flex-direction: column;
	text-align: center;
}

.nav-previous span, .nav-next span, .nav-grid span {
	font-size: 18px;
}

@media screen and (max-width: 981px) {
	
	.realestate-item-container {
		margin: 0;
	}
	
	.realestate-item {
		max-width: 100%;
		margin: 30px 0;	
	}
	
}

/* progress steps */
.progressbar-wrapper {
	  width: 100%;
	  text-align: center;
	  display: block;
}

.progressbar {
	margin: 0;
	padding: 0 !important;
}

.progressbar li {
	  list-style-type: none;
	  width: 20%;
	  display: inline-block;
	  font-size: 16px;
	  position: relative;
	  text-align: center;
	  text-transform: uppercase;
	  color: #1D1D1B;
}

.progressbar li:before {
	width: 60px;
	height: 60px;
	content: "";
	line-height: 60px;
	border: 2px solid #1D1D1B;
	display: block;
	font-size: 16px;
	text-align: center;
	margin: 0 auto 10px auto;
	border-radius: 50%;
	position: relative;
	z-index: 2;
	background-color: #fff;
}

.progressbar li:after {
	 width: 100%;
	 height: 2px;
	 content: '';
	 position: absolute;
	 background-color: #1D1D1B;
	 top: 30px;
	 left: -50%;
	 z-index: 0;
}

.progressbar li:first-child:after {
	 content: none;
}

.progressbar li.active {
	color: #1D1D1B;
	font-weight: 700;  
}

.progressbar li.active:before {
	border-color: #1D1D1B;
	background: #1D1D1B;
	color: #fff;
 }
 
.progressbar li.active + li:after {
	background-color: #1D1D1B;
}

.progressbar {
	counter-reset: step;
}

.progressbar li:before {
	content: counter(step);
	counter-increment: step; 
}

@media screen and (max-width: 981px) {
	
	.progressbar li {
		width: 100%;
		margin: 0 0 20px 0;
		display: block;
	}
	
	.progressbar li:after {
		display: none;
	}
	
}

/* table */
.table-row {
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	-webkit-flex-direction: row;
	flex-grow: 0;
	-webkit-flex-grow: 0;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.table-row h2 {
	font-size: 24px !important;
	font-weight: 700 !important;
	margin: 0 !important;
	line-height: 32px !important;
}

.text {
	flex-grow: 1;
	-webkit-flex-grow: 1;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 18px;
}

.table-row.big .text {
	width: 50%;
	flex-grow: inherit;
	-webkit-flex-grow: inherit;
	text-overflow: inherit;
	overflow: auto;
	white-space: normal;
}

.text-big {
	width: 50%;
}

.text {
	width: 100px;
}

.num {
	width: 80px;
}

@media screen and (max-width: 981px) {
	
	.text-big {
		width: 100%;
	}
	
	.text, .num {
		width: 100%;
	}
	
	.table-row {
		display:block;
	}
	
	.text {
		flex-grow: inherit;
		-webkit-flex-grow: inherit;
		text-overflow: inherit;
		overflow: auto;
		white-space: normal;
	}
	
	.desc {
		display: none;
	}
		
}

.table-row {
	border-collapse: collapse;
	border-bottom: 2px solid #fff;
	padding-top: 5px;
	padding-bottom: 5px;
}

.table-row.odd {
	border-bottom: 1px solid #ddd;
}

.table-row.even {
	border-bottom: 1px solid #ddd;
}

.table-row.header {
	background-color: #1D1D1B;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	padding-top: 10px;
	padding-bottom: 10px;
	border-bottom: 2px solid #fff;
}

/* contact */
.contact-block {
	margin: 0 0 40px 0;
	padding: 0 0 40px 0;
	border-bottom: 1px solid #1D1D1B;
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	-webkit-flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
}

.contact-block:last-child {
	border-bottom: none;
}

.contact-block .photo {
	align-items: flex-start;
	margin-right: 40px;
}

.contact-block .logo {
	margin: 20px 0;
}

.contact-block .contact-info {
	flex-grow: 0;
	margin-right: 20px;
	display: block;
}

@media only screen and (max-width: 980px) {
	
	.contact-block {
		display: block;
	}
		
}

/* fancybox */
.fancybox-slide--iframe .fancybox-content {
	width: 90%;
	max-width: 960px;
	padding: 0;
	margin: 20px 0;
	border-radius: 0;
	box-shadow: 0 0.1em 0.4em rgba(0,0,0,.3);
}

.fancybox-slide--html .fancybox-content {
	width: 90%;
	max-width: 960px;
	padding: 40px;
	margin: 20px 0;
	border-radius: 0;
	box-shadow: 0 0.1em 0.4em rgba(0,0,0,.3);
}

.fancybox-slide--iframe #cookie-law-info-bar, .fancybox-slide--iframe #cookie-law-info-bar-again {
	display: none !important;
}

.animated-modal {
	width: 90%;
	max-width: 480px;
	padding: 0;
	margin: 20px 0;
	border-radius: 0;
	box-shadow: 0 0.1em 0.4em rgba(0,0,0,.3);
}

.animated-modal.fancybox-content {
	padding: 0 !important;
}

.animated-modal .popup-content {
	padding: 20px;
}

.fancybox-slide--html .fancybox-close-small {
	background: #1D1D1B;
	color: #fff !important;
}

.modal-container.fancybox-content {
	padding: 0 !important;
}

.modal-container {
	width: 90%;
	max-width: 960px;
	padding: 0;
	margin: 20px 0;
	border-radius: 0;
	box-shadow: 0 0.1em 0.4em rgba(0,0,0,.3);
}

.modal-container .fancybox-close-small {
	color: #fff !important;
}

.modal-title {
	background:#1D1D1B;
	font-size: 20px;
	font-weight: 300;
	color:#fff;
	padding: 1em;
}

.modal-body {
	max-width: 90vw;
	max-height: calc(100vh - 230px);
	min-height: 50px;
	padding: 1.5em 1.5em 1.5em 1.5em;
	overflow-y: auto;
	padding: 1.5em 1.5em 1.5em 1.5em;
}

.modal-footer {
	background: #f9f9f9;
	padding: 1em;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

@media screen and (max-width: 480px) {
	
	.modal-footer {
		display: block;
		justify-content: inherit;
	}
	
	.modal-footer .btn {
		margin: 0 0 10px 0;
	}
		
}

/* accordion */

.accordion {
	max-width: 100%;
	margin: 0 auto;
	border-bottom: 1px solid #1D1D1B;
}

.accordion .accordion-header h2 {
	margin:0;
	padding:0;
	display:inline-block;
	font-size: 28px !important;
	font-weight: 400 !important;
	text-align: center;
	letter-spacing: 0.2em;
    line-height: 1.4em;
    text-align: center;
}

.accordion .accordion-header {
	cursor: pointer;
	margin: 0;
	padding: 10px 20px;
	text-align: left;
	border-top: 1px solid #1D1D1B;
}

.accordion .accordion-header:hover {
	background: #f9f9f9;
}

.accordion .accordion-header:hover h2 {
	color: #1D1D1B !important;
}

.accordion .active.accordion-header, .accordion .active.accordion-header:hover {
	background-color: #1D1D1B;
}

.accordion .active.accordion-header h2, .accordion .active.accordion-header:hover h2 {
	color: #fff !important;
}

.accordion .accordion-header::after {
	font-family: 'ETmodules';
    speak: none;
    font-style: normal;
    font-weight: 400;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-shadow: 0 0;
	content: 'L';
	font-size: 36px;
	color: #1D1D1B;
	float: right;
	margin-top: 5px;
	margin-left: 20px;
}

.accordion .active.accordion-header::after {
    content: "K" !important;
}

.accordion .active.accordion-header:after {
	color: #fff !important;
}

.accordion .accordion-content {
	display: none;
	background: #fff;
	padding: 40px 0;
	margin:0 0 40px 0;
}

@media only screen and (max-width: 480px) {
	
	.accordion .accordion-header {
		padding: 10px;
		text-align: left;
	}
	
	.accordion .accordion-header h2 {
		font-size: 18px;
		letter-spacing: 0.1em;
		text-align: left;
	}
	
	.accordion .accordion-header::after {
		font-size: 24px;
		margin-top: 10px;
		margin-left: 10px;
	}
		
}

.clear {
	clear:both;
}

/* buttons */

.btn, .et_pb_button.et_pb_more_button {
	max-width:280px;
	min-width:240px;
	padding:5px 20px;
	margin:0;
	background:#1D1D1B;
	font-size:14px;
	font-weight:700;
	color:#fff;
	letter-spacing:0.2em;
	text-align: center;
	border:2px solid #1D1D1B;
	text-transform:uppercase;
	text-decoration:none;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	display:block;
}

.btn:hover, .et_pb_button.et_pb_more_button:hover {
	background:#000;
	color:#fff;
	text-decoration:none;
	border:2px solid #000;
}

.btn.btn-primary {
	background:#1D1D1B;
	color:#fff;
}

.btn.btn-primary:hover {
	background: #000;
}

.btn.btn-secondary {
	background: #333;
	color: #1D1D1B;
	border: 2px solid #333;
}

.btn.btn-secondary:hover {
	background: #000;
	color: #fff;
	border: 2px solid #000;
}

.btn.btn-third, .et_pb_button.et_pb_more_button {
	background: #fff !important;
	color: #1D1D1B !important;
	letter-spacing:0.2em;
	border: 2px solid #fff !important;
	padding-top: 16px!important;
    padding-right: 40px!important;
    padding-bottom: 16px!important;
    padding-left: 40px!important;
}

.et_pb_button.et_pb_more_button.db_pb_button_2 {
	background: #1D1D1B !important;
	color: #fff !important;
	border: 2px solid #1D1D1B !important;
}

.btn.btn-third:hover, .et_pb_button.et_pb_more_button:hover {
	background: rgba(255,255,255,0.2) !important;
	color: #fff !important;
	letter-spacing:0.2em;
	border: 2px solid #fff !important;
}

@media only screen and (max-width: 480px) {
	.btn.btn-third, .et_pb_button.et_pb_more_button {
		padding-top: 8px!important;
	    padding-right: 20px!important;
	    padding-bottom: 8px!important;
	    padding-left: 20px!important;
	}
}

.lft {
	justify-content: flex-start;
}

.rgt {
	justify-content: flex-end;
}

/* swiper home */

#swiper-home .et-pb-controllers a, #swiper-realestate .swiper-pagination-bullet {
	width: 14px;
	height: 14px;
	border-radius: 14px;
}

.et-pb-controllers a {
	width: 10px;
	height: 10px;
	border-radius: 10px;
}

#swiper-home .et_pb_slide_title {
	text-shadow: 0 0 20px rgba(0,0,0,0.2);
}

#swiper-home h2 {
	font-size: 44px !important;
	font-weight: 400 !important;
}

#swiper-home .et_pb_slide_content {
	font-size: 18px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.et-pb-controllers a, .swiper-pagination-bullet {
	background: transparent !important;
	border: 1px solid #fff;
	opacity: 1;
}

.et-pb-controllers .et-pb-active-control, .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #fff !important;
	border: 1px solid #fff;
}

.et-pb-arrow-next, .et-pb-arrow-prev {
	background: #1D1D1B;
}

.et-pb-arrow-next:hover, .et-pb-arrow-prev:hover {
	background: #000;
}

#swiper-realestate .row {
	display: flex;
	width: 100%;
}

#swiper-realestate .column01 {
	display: flex;
	flex-direction: column;
	width: 30%;
	flex: 1;
	position:relative;
	text-align:left;
}

#swiper-realestate .column02 {
	display: flex;
	flex-direction: column;
	width: 70%;
	flex: 2;
}

#swiper-realestate .column02 img {
	vertical-align: top;
}

#swiper-realestate .desc {
	margin: 0 0 20px 0;
}

#swiper-realestate .swiper-button-next, #swiper-realestate .swiper-button-prev {
	bottom: 0px;
	top: auto;
	position: absolute;
}

@media only screen and (max-width: 1140px) {
	
	#swiper-realestate .column01 .desc {
		display: none;
	}
	
	#swiper-realestate .text {
		width: 100%;
	}
	
}

@media only screen and (max-width: 980px) {
	
	#swiper-home h2 {
		font-size: 32px !important;
		font-weight: 400 !important;
		line-height: 40px !important;
	}
	
	#swiper-home .et_pb_slide_content {
		display: none;
	}
	
	.et-pb-arrow-next, .et-pb-arrow-prev {
		display: none;
	}
	
	#swiper-realestate .row {
		display: flex;
		flex-direction: column;
	}
		
	#swiper-realestate .column01, #swiper-realestate .column02 {
		width: 100%;
		height: 100%;
		display: block;
		flex-direction: row;
	}
	
	#swiper-realestate .column01 {
		order: 1;
	}
	
	#swiper-realestate .column02 {
		order: 0;
	}
	
}

/* accordion */
.custom-accordion .et_pb_accordion .et_pb_accordion_item, .custom-accordion .et_pb_toggle {
	border: none !important;
}

.custom-accordion .et_pb_accordion .et_pb_accordion_item, .custom-accordion .et_pb_toggle_close, .custom-accordion .et_pb_toggle_open {
	padding: 0 !important;
	background: #fff !important;
}

.custom-accordion .et_pb_toggle_open h5.et_pb_toggle_title, .custom-accordion .et_pb_toggle_close h5.et_pb_toggle_title {
	padding: 20px;
}

.custom-accordion .et_pb_toggle_open h5.et_pb_toggle_title {
	background: #1D1D1B !important;
}

.custom-accordion.blue .et_pb_toggle_open h5.et_pb_toggle_title {
	background: #82d0f5 !important;
}

.custom-accordion .et_pb_toggle_close h5.et_pb_toggle_title {
	background: #f9f9f9 !important;
}

.custom-accordion .et_pb_toggle_close h5.et_pb_toggle_title:hover {
	background: #eee !important;
}

.custom-accordion .et_pb_toggle_open .et_pb_toggle_title:before {
	color: #fff !important;
}

.custom-accordion.blue .et_pb_toggle_close .et_pb_toggle_title:before {
	color: #82d0f5 !important;
}

.custom-accordion .et_pb_toggle_open .et_pb_toggle_title:before, .custom-accordion .et_pb_toggle_close .et_pb_toggle_title:before {
	font-size: 32px;
	right: 20px !important;
}

.custom-accordion .et_pb_toggle_content {
	padding: 40px 20px;
}

.custom-accordion.blue .et_pb_toggle_content h2 {
	color: #82d0f5 !important;
}

/* tabs */
.custom-tab ul.et_pb_tabs_controls:after {
	border: none !important;
}

.custom-tab.blue .et_pb_tab_content h2 {
	color: #82d0f5 !important;
}

@media screen and (min-width: 981px) {
    .two-column {
        width: 47.5%!important;
        float: left!important;
    }
    .two-column:nth-child(2n) {
	    margin: 0 0 0 5%;
    }
    .two-column:nth-child(2n+1) {
        clear: both;
    }
}

/* map */
#osmap {
	width: 100%;
	height: 100%;
	min-height: 720px;
}

#osmap-small {
	width: 100%;
	height: 480px;
}

@media (max-width: 768px) {
	
	#osmap, #osmap-small {
		min-height: 480px;
		max-height: 480px;
	}
	
}

.map-popup p.content {
	font-size: 16px;
}

.map-popup .et_pb_button.small {
	font-size: 16px;
	font-weight: 700;
}

.map-popup .et_pb_button:after, .map-popup .et_pb_button:before {
	display: none;
}

.map-popup .et_pb_button:hover, .map-popup .et_pb_module .et_pb_button:hover {
	background: #1D1D1B;
	color: #fff;
	border-color: #1D1D1B;
	padding: .3em 1em;
}

.leaflet-container a {
	color: #1D1D1B;
}

.leaflet-container a.btn {
	color: #fff;
}