/* Search Form */

#shortcode-immomakler-search-form,
#immomakler-search-form {
    padding: 0 10px;
}

#shortcode-immomakler-search-advanced,
#immomakler-search-advanced {
    margin-left: -10px;
    margin-right: -10px;
}

#shortcode-immomakler-search-advanced .panel-heading,
#immomakler-search-advanced .panel-heading {
    padding: 0px 0px;
    background: none;
}

#shortcode-immomakler-search-advanced,
#shortcode-immomakler-search-advanced .panel-heading,
#shortcode-immomakler-search-advanced .panel-body,
#immomakler-search-advanced,
#immomakler-search-advanced .panel-heading,
#immomakler-search-advanced .panel-body {
    border: none;
}

#shortcode-immomakler-search-advanced .immomakler-submit,
#immomakler-search-advanced .immomakler-submit {
    margin-right: 15px;
}

.immomakler-elementor #shortcode-immomakler-search-advanced,
.immomakler-elementor #immomakler-search-advanced {
	margin-left: 5px;
	margin-right: 5px;
}

#immomakler-search fieldset,
#shortcode-immomakler-search fieldset {
    padding: 0px 20px;
    margin: 0px;
    border: none;
}

#immomakler-search .range-label,
#shortcode-immomakler-search .range-label {
    font-weight: bold;
    margin-bottom: 10px;
}
#immomakler-search .immomakler-search-range-text .range-label,
#shortcode-immomakler-search .immomakler-search-range-text .range-label {
    margin-bottom: 0px;
}

.immomakler .noUi-handle,
.immomakler .noUi-target {
    border-radius: 10px;
    box-shadow: none;
    border-color: #cccccc;
}
.immomakler .noUi-connect {
    background: #bbbbbb;
    box-shadow: none;
}
.noUi-horizontal .noUi-handle {
	width: 20px;
	height: 20px;
	left: -3px;
	top: -8px;
	border-color: #999999;
}
.immomakler .noUi-target,
.immomakler .noUi-background {
	border: none;
	background-color: #dddddd;
	box-shadow: none;
}
.noUi-horizontal {
	height: 5px;
}
.noUi-handle:before, .noUi-handle:after {
	display: none;
}

#immomakler-search-for-id #immomakler-search-id {
    width: 70px;
    float: right;
}

#immomakler-search .search-for-id,
#shortcode-immomakler-search .search-for-id {
    width: 25%;
    min-width: 180px;
    float: right;
}

#immomakler-search .search-for-id input[type=text],
#shortcode-immomakler-search .search-for-id input[type=text] {
    margin-left: 7px;
    margin-bottom: 0px;
}

@media (max-width: 767px) {
    #immomakler-search .search-for-id input[type=text],
    #shortcode-immomakler-search .search-for-id input[type=text] {
        margin-left: 0px;
    }
}

#immomakler-search .search-actions.row {
    margin-left: 0px;
    margin-right: 0px;
}

#immomakler-search .search-actions button,
#immomakler-search .search-actions a.btn {
    margin-bottom: 7px;
}

@media (max-width: 767px) {
    .immomakler .search-actions .btn,
    #immomakler-search .search-for-id,
    #shortcode-immomakler-search .search-for-id {
        width: 100%;
    }
}

#immomakler-search .form-control,
#shortcode-immomakler-search .form-control {
    border-radius: 0px;
}

#immomakler-search .bootstrap-select.btn-group,
#shortcode-immomakler-search .bootstrap-select.btn-group {
    float: left;
}
.immomakler .bootstrap-select>.dropdown-toggle.bs-placeholder,
.immomakler .bootstrap-select>.dropdown-toggle.bs-placeholder:active,
.immomakler .bootstrap-select>.dropdown-toggle.bs-placeholder:focus,
.immomakler .bootstrap-select>.dropdown-toggle.bs-placeholder:hover {
    color: inherit;
}
.immomakler .bootstrap-select:not(.input-group-btn),
.immomakler .bootstrap-select[class*=col-] {
    float: left;
}

.immomakler-search-taxonomy {
    padding-right: 5px !important;
    padding-left: 5px !important;
}
.immomakler-search-radius,
.immomakler-search-center {
    padding-right: 0px !important;
    padding-left: 0px !important;
}

.immomakler-search-center input[type=text] {
    width: calc(100% - 100px);
    height: 34px;
    float: left;
    color: #333;
}
.immomakler-search-radius button.btn-default {
    border-left: none;
}
.immomakler-search-radius .btn.disabled {
    opacity: 1;
}
.immomakler .search-taxonomies select,
.immomakler .search-radius select {
    border: 1px solid #ccc;
    background-color: #ffffff;
    padding: 6px 9pt;
}
.immomakler .search-taxonomies select {
    margin: 0px 5px;
}
.immomakler .search-radius select {
    width: 100px;
}

@media (min-width: 768px) {
    .immomakler .search-taxonomies select.col-sm-3 {
        width: calc(25% - 10px);
    }
    .immomakler .search-taxonomies select.col-sm-4 {
        width: calc(33.33% - 10px);
    }
}

.immomakler-search-center input[type=text].input-wide {
    width: 100%;
}
#immomakler-search .immomakler-search-radius.bootstrap-select.btn-group,
#shortcode-immomakler-search .immomakler-search-radius.bootstrap-select.btn-group,
#immomakler-search .immomakler-search-radius.bootstrap-select.bs3,
#shortcode-immomakler-search .immomakler-search-radius.bootstrap-select.bs3,
#searchagent-form .immomakler-search-radius.bs3 {
    width: 100px;
    float: right;
    padding: 0px 0px;
}
.immomakler .open>.dropdown-menu,
.immomakler .open>.dropdown-menu .inner.open {
    min-height: 0px !important;
}
.immomakler-search-center input.radius-error::placeholder {
    color: #ff0000;
}
.immomakler-search-center input.radius-error:-ms-input-placeholder {
    color: #ff0000;
}
.immomakler-search-center input.radius-error::-ms-input-placeholder {
    color: #ff0000;
}

.search-ranges {
    display: block;
}

.immomakler-search-range-text {
    margin-top: 15px;
    margin-bottom: 10px;
}

.immomakler-search-range-slider {
    padding-right: 10px;
}

.immomakler .search-taxonomies.row,
.immomakler .search-radius.row {
    margin-bottom: 10px;
}
.immomakler .search-radius.row {
    padding-left: 5px;
    padding-right: 5px;
}
.immomakler .search-taxonomies {
    min-height: 34px;
}
.immomakler .search-radius {
    min-height: 44px;
}
.immomakler .search-radius {
    min-height: 44px;
}
#immomakler-search-advanced {
    min-height: 42px;
}
.immomakler-search-range {
    font-size: 14px;
}
.immomakler-search-range label {
    padding: 6px 0px;
}

.immomakler .dropdown-menu>.active>a,
.immomakler .dropdown-menu>.active>a:focus,
.immomakler .dropdown-menu>.active>a:hover {
    background-color: #ccc;
}
.immomakler a:focus,
.immomakler .bootstrap-select .dropdown-toggle:focus,
.immomakler .bootstrap-select>select.mobile-device:focus+.dropdown-toggle {
    outline: thin dotted #333!important;
}

/* Cart */

.immomakler-cart-link {
    display: block;
}

.immomakler-cart-item,
.immomakler-cart-item.row {
    margin: 0px;
    margin-top: 15px;
}

.immomakler-cart-item-thumbnail {
    padding-right: 0px !important;
}

.immomakler-cart-item-details {
    line-height: 1em;
}

.immomakler-cart-item-price {
    font-weight: bold;
}

.immomakler-cart-item .immobilie-cart-addremove {
    border: none;
    background: none;
}
.immomakler-archive .property-container.immomakler-archive-item-layout-condensed .immomakler-archive-actions {
	height: 0;
	width: 100%;
	text-align: right;
}
.immomakler-archive .property-container.immomakler-archive-item-layout-condensed .immobilie-cart-addremove {
	top: 0px;
	right: 0px;
	position: relative;
	z-index: 1;
}
.immomakler-archive .property-container.immomakler-archive-item-layout-condensed .immobilie-cart-addremove .in-cart {
	opacity: 1;
	padding: 15px;
	transition: transform .2s;
}
.immomakler-archive .property-container.immomakler-archive-item-layout-condensed .immobilie-cart-addremove .in-cart.is-favorite,
.immomakler-archive .property-container.immomakler-archive-item-layout-condensed .immobilie-cart-addremove .in-cart:hover {
	transform: scale(1.2);
}
.immomakler-archive .property-container.immomakler-archive-item-layout-condensed .immobilie-cart-addremove .in-cart.not-favorite {
	opacity: .6;
}
.immomakler-elementor.immomakler-cart-indicator a.btn.btn-default.immomakler-cart-button {
	border: none;
	padding-left: 5px;
	padding-right: 5px;
}

.immomakler-archive .btn.back-to-archive {
    margin-bottom: 15px;
}


/* Search Agents */

#immomakler-search-agents form {
    margin: 0;
}
#immomakler-search-agents .input-group.immomakler-searchagents-email {
    margin: 10px 0px;
}


#immomakler-search-agents-panel {
    border: 3px solid #ddd;
    width: 100%;
}
#immomakler-search-agents-panel .panel-heading {
    border-bottom: none;
    padding: 0px;
    background-color: #ffffff;
    font-weight: 600;
    font-size: 16px;
}

#immomakler-search-agents-panel .panel-body {
    border-top: 1px solid;
    border-color: #ddd;
}
#immomakler-search-agents-panel .panel-heading a,
#immomakler-search-agents-panel .panel-heading div.immomakler-search-agents-panel-toggle {
    display: block;
    padding: 8px 15px;
}

.immomakler-searchagent-form .form-group.has-error .form-control,
.immomakler-searchagent-form .form-check.has-error label {
    border: 1px solid #a94442 !important;
}

.immomakler-searchagent-form .form-group {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 0px;
}

.immomakler-searchagent-form .search-radius.row {
    margin: 0px;
}
.immomakler-searchagent-form .searchagents-radius{
    margin: 25px 0px 10px 0px;
}
.immomakler-searchagent-form .searchagents-sliders {
    margin: 10px 0px 25px 0px;
}

.immomakler-searchagent-form .bootstrap-select.btn-group:not(.input-group-btn),
.immomakler-searchagent-form .bootstrap-select.btn-group[class*=col-] {
    float: left;
}
.immomakler .dropdown-toggle::after {
    display: none;
}

#immomakler-create-search-agent input[type="email"] {
    margin-bottom: 0px;
}

#immomakler-search-agents-panel a,
#searchagent-settings-panel a,
#immomakler-search-agents-panel div.immomakler-search-agents-panel-toggle,
#searchagent-settings-panel div.immomakler-search-agents-panel-toggle {
    cursor: pointer;
}

#immomakler-search-agents-panel span.searchagent-icon {
    padding-top: 4px;
    float: left;
    margin-right: 15px;
}
#immomakler-search-agents-panel span.searchagent-icon-open {
    font-size: 1em;
    float: right;
    top: 5px;
}

#immomakler-search-agents form {
    padding-left: 0px;
    padding-top: 1em;
}

.immomakler-searchagents-email {
    max-width: 600px;
}

.immomakler .notification-plaintext label {
    font-weight: normal;
}


/* Featured Object Widget */

.immomakler-featured-post-description {
    margin-top: 1em;
}

.immomakler-featured-post-thumbnail img {
    width: 100%;
}


/* Energieausweis */

.immomakler .property-epass .list-group-item>.row>.col-sm-12 {
    padding-left: 0px;
}

.epass {
    width: 100%;
    max-width: 600px;
    display: block;
}

.epass .arrow {
    background-repeat: no-repeat;
    background-size: auto 100%;
    height: 30px;
}

.epass .overlayarrowtop {
    height: 20px;
}

.epass .value-text {
    line-height: 1.1em;
    font-size: 13px;
    width: 100%;
}

.epass .value-text .endenergie_label {
    font-weight: bold;
}

.epass .value-text.move-right {
    width: 45%;
    margin-left: 55%;
}

.epass-diagram {
    height: 51px;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    border-radius: 15px;
    color: #000000;
}

.epass-diagram .classes {
    top: 0px;
    width: 100%;
    height: 20px;
    line-height: 20px;
    font-size: 12px;
}

.epass-diagram .classes span {
    float: left;
    text-align: center;
    border-right: 1px solid #000000;
}

.epass-diagram .classes span:last-child {
    border-right: none;
}

.epass-diagram .classes .a {
    width: 7.27%;
}

.epass-diagram .classes .b,
.epass-diagram .classes .c {
    width: 9.09%;
}

.epass-diagram .classes .aplus {
    width: 11.91%;
}

.epass-diagram .classes .d,
.epass-diagram .classes .e {
    width: 10.91%;
}

.epass-diagram .classes .f {
    width: 14.52%;
}

.epass-diagram .classes .g {
    width: 18.18%;
}

.epass-diagram .classes .h {
    width: 7%;
}

.epass-diagram .classes .active {
    font-weight: bold;
    font-size: 1.5em;
}

.epass-diagram .scala {
    top: 20px;
    width: 100%;
    height: 12px;
    background-color: #ffffff;
}

.epass-diagram .scala span {
    font-size: 12px;
    height: 12px;
    line-height: 12px;
    float: left;
    text-align: left;
    white-space: nowrap;
}

.epass-diagram .alt span {
    width: 11.1%;
}

.epass-diagram .neu span {
    width: 9.05%;
}

.epass-diagram .scala span:first-child {
    padding-left: 1%;
}

.epass-diagram .scala span:last-child {
    width: 8%;
    padding-left: 1%;
}

.epass-diagram-at {
    width: 100%;
    max-width: 450px;
}

.epass-diagram-container {
    padding: 15px;
    max-width: 500px;
}

/* Map */

.immomakler .archive-map {
    padding-bottom: 20px;
    width: 100%;
}

.immomakler.immomakler-map {
    width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.immomakler-map-iframe-gmaps #BorlabsCookieBox,
.immomakler-map-iframe-gmaps #BorlabsCookieBoxWrap {
    display: none;
}

.immomakler .bc-bct-google-maps .bc-thumbnail {
    max-height: 500px;
}

#immomakler-shortcode-map {
    width: 100%;
    height: 100vh;
    border: none;
}

.immomakler .markerwithlabel {
    font-weight: bold;
    color: #000000;
    font-size: 13px;
}

.immomakler-map-infowindow {
    width: 400px;
    max-width: 100%;
    height: 200px;
}

.immomakler-map-infowindow.long {
    height: 300px;
}

.immomakler-map-infowindow .property {
    clear: both;
    display: inline-block;
    margin-bottom: 15px;
    padding-bottom: 10px;
}

.immomakler-map-infowindow.long .property {
    border-bottom: 1px solid #AAAAAA;
}

.immomakler-map-infowindow .property-title {
    width: 100%;
    font-weight: bolder;
    font-size: 1.4em;
    display: inline-block;
    margin-bottom: 7px;
}

.immomakler-map-infowindow .property-subtitle {
    width: 100%;
    display: inline-block;
    font-weight: bolder;
    margin-bottom: 7px;
}

.immomakler-map-infowindow .property-thumbnail {
    width: 200px;
    float: left;
    margin: 0px;
    margin-right: 7px;
    padding: 0px;
    display: inline-block;
    margin-bottom: 5px;
}

.immomakler-map-infowindow .property-thumbnail img {
    margin: 0px;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 170px;
}

.immomakler-map-infowindow .property-data {
    width: 190px;
    display: inline-block;
    float: right;
}

.immomakler-map-infowindow .property-type {
    font-weight: bolder;
}

.immomakler .immomakler-map-infowindow .property-data-item {
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0.3em;
    margin-top: 0px;
}

.immomakler-map-infowindow .details-link {
    margin-top: 7px;
}

.immomakler .immomakler-map-infowindow a:focus {
    outline: none;
}

.immomakler .immomakler-map-infowindow h3 {
    font-size: 1.2em;
    line-height: 1.1em;
    border-bottom: 1px solid #AAAAAA;
}

.immomakler img[src*="gstatic.com/"],
.immomakler img[src*="googleapis.com/"] {
    max-width: none !important;
}


/* Flexslider */

.immomakler-flexslider-property-thumbnail {
    height: 150px;
    overflow: hidden;
    margin-bottom: 1em;
}

.immomakler-flexslider .slides>li {
    margin: 0 7px;
}

.immomakler-flexslider-property-title {
    font-weight: bolder;
}
.immomakler-flexslider-property-title a {
    text-decoration: none;
}

.immomakler-flexslider {
    background-color: transparent;
    border: none;
    box-shadow: none;
}

.immomakler-flexslider ul {
    padding: 0px !important;
    line-height: inherit !important;
    list-style-type: none !important;
}

.textwidget .immomakler a.btn {
    padding: 8px 9pt !important;
}

.immomakler .btn .rating {
    text-align: left;
}

/* OWL Carousel */

.immomakler-carousel .item {
    font-size: 12px;
    padding-bottom: 5px;
}

.immomakler-carousel .carousel-property-container {
    background-color: #ffffff;
    box-shadow: 0 0 5px 0 #00000040;
    min-height: 350px;
}

.immomakler-carousel .property-status {
    position: absolute;
    top: 20px;
    width: 65%;
    min-width: 140px;
    max-width: 170px;
    padding-left: 10px;
    line-height: 1.8em;
    text-transform: uppercase;
    font-weight: bold;
    background-color: #CC3300;
    color: #FFFFFF;
}

.immomakler-carousel .carousel-property-thumbnail {
    height: 150px;
}

.immomakler-carousel .carousel-property-thumbnail a.thumbnail {
    height: 100%;
    width: 100%;
}

.immomakler-carousel .carousel-property-details {
    padding: 15px;
}

.immomakler-carousel .property-title {
    font-size: 18px;
    height: 2em;
    line-height: 1.2em;
}

.immomakler-carousel .property-subtitle {
    margin: 0px 0px 15px 0px;
    font-size: 14px;
    height: 2em;
    line-height: 1.2em;
}

.immomakler-carousel .property-price {
    position: absolute;
    bottom: 0px;
    width: 100%;
    padding: 15px;
}

.immomakler-carousel .property-price hr.price-divider {
    border: 1px solid #dadada;
    margin: 1em 0px;
}

.immomakler-carousel .property-price .property-price-label {
    float: left;
    font-size: 15px;
    position: absolute;
    padding-bottom: 13px;
    bottom: 0px;
}

.immomakler-carousel .property-price .property-price-value {
    float: right;
    font-size: 19px;
    line-height: 24px;
}

.immomakler button.btn.immomakler-load-more-btn {
    display: block;
    margin: 0px auto 25px auto;
}

.immomakler .row-additional-fields {
    border-top: 1px solid #ddd;
    padding-top: 15px;
    margin-top: 15px;
}

.immomakler .immomakler-searchagent-form .form-group>label {
    margin-top: 15px;
}

#immomakler-searchagent-form-submit {
    margin-top: 15px;
}

.immomakler-archive .properties {
	transition: opacity 0.25s;
}

/* archive slider */
.immomakler-archive .owl-carousel .owl-prev {
	left: 10px;
}
.immomakler-archive .owl-carousel .owl-next {
	right: 10px;
}
.immomakler-archive .owl-carousel .owl-nav {
	overflow: hidden;
	height: 0px;
}
.immomakler-archive .owl-theme .owl-nav [class*=owl-] {
	color: #000000;
	font-size: 39px;
	background: #ffffff;
	border-radius: 3px;
	padding: 0px;
	margin: 0px;
	opacity: 0.6;
}
.immomakler-archive .owl-theme .owl-nav [class*=owl-]:hover {
	background: #000000;
	opacity: 1;
	color: #FFF;
	text-decoration: none;
}
.immomakler-archive .owl-carousel .owl-nav .nav-button {
	height: 30px;
	width: 25px;
	cursor: pointer;
	position: absolute;
	top: calc(50% - 15px) !important;
	line-height: 0.5em;
	padding-top: 1px;
}
.immomakler-archive .owl-theme .owl-nav .disabled {
	opacity: .2;
}
.immomakler-archive .owl-stage-outer img {
	object-fit: cover;
	object-position: center;
}
.immomakler-archive .owl-carousel {
    overflow: hidden;
}
.immomakler-archive .property-container .thumbnail .owl-dots {
	display: none;
	position: relative;
    top: -30px;
    height: 0px;
	transition: all .15s;
}
.immomakler-archive .property-container .thumbnail .owl-theme .owl-dots .owl-dot span {
    height: 3px;
    width: 40px;
}
.immomakler-archive .property-container .thumbnail:hover .owl-dots,
.immomakler-archive .property-container .thumbnail:focus .owl-dots {
	display: block;
}
.immomakler-archive .property-container .thumbnail .owl-nav {
	margin: 0px;
}
@media (max-width: 767px) {
    .immomakler-archive .owl-next,
    .immomakler-archive .owl-prev {
        opacity: 1 !important;
    }
}

.immomakler-shortcode-archive-actions {
	display: inline-block;
	width: 100%;
}
/* Propstack */

.propstack-suchprofil .form-group .col-xs-12,
.propstack-suchprofil .form-group .col-xs-6 {
    padding-left: 0px;
    padding-right: 5px;
}
.propstack-suchprofil .form-group .col-xs-6:last-child {
    padding-left: 5px;
    padding-right: 0px;
}

/* Virtual Tours */
.immomakler-single .property-virtual-tours .player {
	padding: 0px 0px 5px 0px;
}
.immomakler-single .property-virtual-tours .player:last-child {
	padding-bottom: 0px;
}
.immomakler-single .property-virtual-tours .player iframe {
	width: 100% !important;
	aspect-ratio: 4/3;
	height: auto;
	border: none;
}
.immomakler-tour-icon {
	width: var( --immomakler-tour-icon-size, 50px);
	position: relative;
	bottom: calc( var( --immomakler-tour-icon-size, 50px) + 10px );
	height: 0;
	margin-left: calc(100% - var( --immomakler-tour-icon-size, 50px) - 10px);
}
.immomakler .immomakler-tour-icon-round-arrow {
	fill: var( --immomakler-primary-color );
}
