:root {
	--cnvs-themecolor: #0E3B2E;
	--cnvs-themecolor-rgb: 14, 59, 46;
	--cnvs-secondary-color: #C2A35D;
	--cnvs-body-font: 'Roboto', sans-serif;
	--cnvs-primary-font: 'Rubik', sans-serif;
	--cnvs-secondary-font: 'Lora', serif;
	--cnvs-font-size-body: 1.1rem;
}

.dark {--cnvs-header-bg: var(--cnvs-themecolor);}

#header {--cnvs-primary-menu-hover-color: var(--cnvs-contrast-900);}

heading-block h1, .heading-block .h1 { word-wrap: break-word; }

#filterlist {
    position: relative;
    background-color: var(--cnvs-body-bg);
}

.real-estate-item-image-grid {
	position: relative;
	width: 100%;
}

.real-estate-item-image-grid::before {
	position: absolute;
	content: '';
	pointer-events: none;
	z-index: 1;
	opacity: 0.90;
	top: auto;
	bottom: 0;
	width: 100%;
	height: 50%;
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.85) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.85))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* IE10+ */
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
    border-radius: var(--bs-border-radius) !important;
}

.real-estate-item-image-grid > a,
.real-estate-item-image-grid > img {
	display: block;
	width: 100%;
	height: auto;
}

.real-estate-item-image-grid .badge {
	display: block;
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 1;
	font-size: 11px;
	padding: 5px 8px;
	text-transform: uppercase;
	font-weight: 400;
	letter-spacing: 1px;
}

.real-estate-item-image .badge, .real-estate-item-image-grid .badge {
    font-size: 14px;
}
.real-estate-item-image .badge.badge-2, .real-estate-item-image-grid .badge.badge-2  {
    top: 50px;
    font-size: 12px;
}

.slider-element .real-estate-info-wrap {
	position: absolute;
	left: auto;
	bottom: 100px;/*bottom: 20px;*/
	width: 100%;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
	letter-spacing: 1px;
}

.real-estate-price {
	position: absolute;
	top: auto;
	left: 0;/* left: auto;*/
	right: auto; /* right: 0; */
	z-index: 1;
}
.real-estate-item-price { bottom: 30px; }
.real-estate-price-span {
	position: absolute;
	top: auto;
	left: 0;/* left: auto;*/
	right: auto; /* right: 0; */
	/* bottom: 50px; */
	z-index: 1;
}

.real-estate-price h3 {
	display: block;
	color: #FFF;
	font-size: 44px;
	margin: 0;
	font-weight: 400;
}

.sidebar-widgets-wrap .widget {
    padding-top: 0;
    border-top: 0;
}

.text ul {
    --icon-space: 1.3em;
    list-style: none;
    padding: 0;
}
.text ul li {padding-left: var(--icon-space);}
.text ul li:before {
    content: "\f00c"; /* FontAwesome Unicode */
    font-family: FontAwesome;
    color: var(--cnvs-themecolor);
    display: inline-block;
    margin-left: calc( var(--icon-space) * -1 );
    width: var(--icon-space);
}

.button-login:not(:hover) {
	color: #FFF;
	background-color: var(--cnvs-secondary-color);
	border-color: var(--cnvs-secondary-color);
}

.style-msg3 ul {
	list-style-type: none;
	margin: 0;
}

.mfp-title {
	visibility: hidden;
	display: none;
}

.emphasis-title h1, .emphasis-title .h1, .emphasis-title h2, .emphasis-title .h2 { font-size: 3rem; };

.img-gallery {
	height: 180px !important;
	object-fit: cover !important;
}

.ribbon .ribbon-label {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px 10px;
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 0;
    transform: translateX(5px) translateY(-50%);
	z-index: 10;
}
.ribbon.ribbon-top .ribbon-label {
    top: 0;
    transform: translateX(-50px) translateY(-4px);
    border-bottom-right-radius: .475rem;
    border-bottom-left-radius: .475rem;
}
.ribbon-vertical .ribbon-label {
    padding: 5px 10px;
    min-width: 36px;
    min-height: 40px;
    text-align: center;
}
.ribbon.ribbon-start .ribbon-label {
    top: 22%;
    left: 0;
    right: auto;
    transform: translateX(0px) translateY(-78%);
    border-top-right-radius: .475rem;
    border-bottom-right-radius: .475rem;
}

.toggle, .accordion {
    --cnvs-toggle-font-size: 1.1rem;
}
.faqs .toggle {
	background-color: var(--cnvs-contrast-100);
	border-radius: 3px;
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.085);
}

.faqs .toggle-header {
	padding: 15px 20px;
	margin: 0;
}

.faqs .toggle-content {
	border-top: 1px solid var(--cnvs-contrast-100);
	padding: 20px 25px;
}

/* Small devices (landscape phones, 576px and up) */
@media (max-width: 575px) {
	.real-estate-price-span { bottom: -22px; }
 }
@media (min-width: 576px) { 
    .real-estate-item-image img, .real-estate-item-image-grid img {height: 400px;}
    .real-estate-item-image-grid::before {bottom: 5%;}
	.real-estate-price-span { bottom: -22px; }
	.img-gallery {
		height: 180px !important;
		object-fit: cover !important;
	}
 }

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 
    .real-estate-item-image img, .real-estate-item-image-grid img {height: 230px;}
	.real-estate-price-span { bottom: -22px; }
 }

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
    .real-estate-item-image img, .real-estate-item-image-grid img {height: 230px;}
    .real-estate-item-image-grid::before {bottom: 6%;}
	.real-estate-price { bottom: -82px; }
	.real-estate-price-span { bottom: -72px; }
 }

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 
	.real-estate-price { bottom: -60px; }
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {  }

@media (max-width: 991px) {
	.real-estate-price {
		position: relative;
		top: auto;
		bottom: auto;
		right: 0;
		margin-top: 15px;
	}

	.slider-element .heading-block >h2 {
		font-size: 24px;
	}

	.slider-element .heading-block { width: auto !important; }
	.faqs .sticky-section { position: relative !important; }
}

.blurry-text {
	text-shadow: 0 0 20px black;
	color: transparent;
 }