/**
 * Royal Realty - Luxury Refined UI system
 * Aesthetic: Luxury / Refined (editorial real estate)
 * Constraint: same brand gold/black, Open Sans throughout, same content
 * DFII: Impact 4 + Fit 5 + Feasibility 5 + Performance 4 − Risk 1 = 17→15
 * Anchor: hairline gold rules + generous vertical rhythm + soft glass panels
 */

:root {
	--rr-gold: #c9a227;
	--rr-gold-dark: #8b6914;
	--rr-gold-light: #e8d48b;
	--rr-black: #111111;
	--rr-charcoal: #1c1c1c;
	--rr-cream: #f7f4ec;
	--rr-text: #333333;
	--rr-muted: #666666;
	--rr-line: rgba(201, 162, 39, 0.35);
	--rr-glass: rgba(255, 255, 255, 0.96);
	--rr-shadow: 0 24px 60px rgba(0, 0, 0, 0.12);
	--rr-shadow-soft: 0 12px 32px rgba(0, 0, 0, 0.08);
	--font-display: 'Open Sans', 'Helvetica Neue', sans-serif;
	--font-body: 'Open Sans', 'Helvetica Neue', sans-serif;
	--space-xs: 8px;
	--space-sm: 16px;
	--space-md: 28px;
	--space-lg: 48px;
	--space-xl: 80px;
	--radius: 10px;
	--radius-lg: 16px;
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
}

.rr-form-privacy {
	display: block;
	width: 100%;
	margin: 12px 0 0;
	padding: 0;
	font-size: 12px;
	line-height: 1.45;
	color: var(--rr-muted);
	font-weight: 400;
	box-sizing: border-box;
}

.rr-form-privacy__text {
	display: block;
	min-width: 0;
}

.rr-form-privacy a {
	color: var(--rr-gold-dark);
	text-decoration: underline;
}

body.project-page .proj-sidebar-form .rr-form-privacy,
body.project-page .proj-modal__body .rr-form-privacy {
	margin: 12px 0 0;
}

html {
	scroll-padding-top: 120px;
	scroll-behavior: smooth;
}

/* =========================================================
   BASE TYPOGRAPHY & SURFACE
   ========================================================= */

body.realestate_version {
	font-family: 'Open Sans', 'Helvetica Neue', sans-serif;
	color: var(--rr-text);
	background: #fbfaf7;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* Google Material Symbols - must beat Open Sans !important on spans */
.material-symbols-outlined,
body.realestate_version .material-symbols-outlined,
body.realestate_version span.material-symbols-outlined {
	font-family: 'Material Symbols Outlined' !important;
	font-weight: normal !important;
	font-style: normal !important;
	font-size: 22px;
	line-height: 1 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'liga' !important;
	-webkit-font-feature-settings: 'liga' !important;
	font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
	vertical-align: middle;
	user-select: none;
	speak: never;
	overflow: hidden;
}

.rr-quote-left {
	margin-right: 6px;
}

.rr-quote-right {
	margin-left: 6px;
	transform: scaleX(-1);
}

.rr-social-icon {
	display: block;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	overflow: visible;
}

.rr-social-icon path {
	fill: currentColor;
}

.rr-social-icon--sm {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 8px;
	vertical-align: -3px;
}

body.realestate_version,
body.realestate_version p,
body.realestate_version .lead,
body.realestate_version .navbar-nav > li > a,
body.realestate_version .form-control,
body.realestate_version .btn,
body.realestate_version .footer,
body.realestate_version .copyrights,
body.realestate_version h1,
body.realestate_version h2,
body.realestate_version h3,
body.realestate_version h4,
body.realestate_version h5,
body.realestate_version h6,
body.realestate_version .section-title h3,
body.realestate_version .message-box h2,
body.realestate_version .item-body h3,
body.realestate_version .single-feature h4,
body.realestate_version .rr-feature-card h4,
body.realestate_version .single-services-desc h4,
body.realestate_version .testimonial .desc h3,
body.realestate_version .widget-title h3,
body.realestate_version .right-box-contact h4,
body.realestate_version .contact_form h3,
body.realestate_version .testi-meta h4,
body.realestate_version small,
body.realestate_version span:not(.material-symbols-outlined),
body.realestate_version a,
body.realestate_version li,
body.realestate_version label,
body.realestate_version input,
body.realestate_version select,
body.realestate_version textarea,
body.realestate_version button {
	font-family: 'Open Sans', 'Helvetica Neue', sans-serif !important;
}

body.realestate_version h1,
body.realestate_version h2,
body.realestate_version h3,
body.realestate_version h4,
body.realestate_version h5,
body.realestate_version h6,
body.realestate_version .section-title h3,
body.realestate_version .message-box h2,
body.realestate_version .item-body h3,
body.realestate_version .single-feature h4,
body.realestate_version .rr-feature-card h4,
body.realestate_version .single-services-desc h4,
body.realestate_version .testimonial .desc h3,
body.realestate_version .widget-title h3,
body.realestate_version .right-box-contact h4,
body.realestate_version .contact_form h3 {
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--rr-black);
}
body.realestate_version .section-title .lead,
body.realestate_version .message-box p,
body.realestate_version .item-body .info,
body.realestate_version .adderess {
	color: var(--rr-muted);
	line-height: 1.7;
}

.rr-tagline {
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-size: 11px;
	color: var(--rr-gold) !important;
	font-weight: 600;
	font-family: var(--font-body);
	margin: 0 0 var(--space-sm);
}

/* =========================================================
   BRAND COLOR OVERRIDES (kill template green/blue)
   ========================================================= */

body.realestate_version .section-title small,
body.realestate_version .property-detail i,
body.realestate_version .customwidget li i,
body.realestate_version .navbar-nav span,
body.realestate_version .lead strong,
body.realestate_version .icon-wrapper:hover a,
body.realestate_version a:hover,
body.realestate_version a:focus,
body.realestate_version .agencies_meta span a:hover {
	color: var(--rr-gold) !important;
}

body.realestate_version .property-detail i,
body.realestate_version .property-detail .col-md-3:hover img {
	border-color: var(--rr-gold) !important;
}

body.realestate_version .icon_wrap:hover,
body.realestate_version .nav-pills > li.active > a,
body.realestate_version .icon-wrapper:hover i,
body.realestate_version .grd1,
body.realestate_version .btn.grd1,
body.realestate_version .label-status.label,
body.realestate_version .p-color-bg {
	color: #ffffff !important;
	background: var(--rr-gold) !important;
	background-image: none !important;
}

body.realestate_version .dmtop:hover,
body.realestate_version .grd1:hover,
body.realestate_version .grd1:focus,
body.realestate_version .btn.grd1:hover,
body.realestate_version .owl-next:hover i,
body.realestate_version .owl-prev:hover i {
	color: #ffffff !important;
	background: var(--rr-gold-dark) !important;
	background-image: none !important;
}

body.realestate_version .effect-1,
body.realestate_version .effect-1:after {
	box-shadow: 0 0 0 1px var(--rr-gold) !important;
}

body.realestate_version .owl-theme .owl-dots .owl-dot.active span,
body.realestate_version .owl-theme .owl-dots .owl-dot:hover span {
	background: var(--rr-gold) !important;
}

/* =========================================================
   NAVBAR - solid white bar in document flow (fixes carousel bleed)
   ========================================================= */

/* Sticky in-flow header - stops carousel bleed from absolute overlay */
body.realestate_version .header_style_01 {
	position: sticky !important;
	top: 0 !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	border-bottom: 1px solid rgba(201, 162, 39, 0.22);
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	z-index: 1000 !important;
	transition: box-shadow 0.3s var(--ease);
}

body.realestate_version .header_style_01.fixed-menu {
	position: sticky !important;
	top: 0 !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08) !important;
	padding: 0 !important;
	z-index: 1000 !important;
}

/* Kill theme rule that pulls .navbar-default out of the header (causes the bleed) */
body.realestate_version .header_style_01 .navbar-default,
body.realestate_version .header_style_01.fixed-menu .navbar-default,
body.realestate_version .fixed-menu .navbar-default {
	background: #ffffff !important;
	background-color: #ffffff !important;
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	position: relative !important;
	left: auto !important;
	top: auto !important;
	width: 100% !important;
	box-shadow: none !important;
	animation: none !important;
	-webkit-animation: none !important;
}

body.realestate_version .rr-nav-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 110px;
	padding: 6px 32px;
	position: relative;
	background: #ffffff;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}

body.realestate_version .navbar-header {
	float: none;
	margin: 0;
	flex: 0 0 auto;
	z-index: 2;
	display: flex;
	align-items: center;
}

body.realestate_version .navbar-brand {
	padding: 0 !important;
	height: auto !important;
	float: none;
	display: flex;
	align-items: center;
}

body.realestate_version .navbar-brand img {
	max-height: 100px !important;
	width: auto !important;
	max-width: 280px !important;
	height: auto !important;
	object-fit: contain;
	display: block;
}

body.realestate_version #navbar.navbar-collapse {
	float: none;
	padding: 0;
	border: none;
	box-shadow: none;
	position: static;
	background: transparent;
	min-height: 0;
}

body.realestate_version .rr-nav-links {
	float: none !important;
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
	gap: 0;
}

body.realestate_version .rr-nav-links > li {
	float: none;
	margin: 0;
	display: flex;
	align-items: center;
}

body.realestate_version .navbar-default .navbar-nav > li > a,
body.realestate_version .rr-nav-links > li > a {
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-size: 13px;
	padding: 10px 12px !important;
	margin: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--rr-charcoal) !important;
	position: relative;
	transition: color 0.25s var(--ease);
	line-height: 1.2;
	white-space: nowrap;
}

body.realestate_version .navbar-default .navbar-nav > li > a::after,
body.realestate_version .rr-nav-links > li > a::after {
	content: "";
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 4px;
	height: 2px;
	background: var(--rr-gold);
	transform: scaleX(0);
	transition: transform 0.28s var(--ease);
}

body.realestate_version .navbar-default .navbar-nav > li > a.active,
body.realestate_version .navbar-default .navbar-nav > li:hover > a,
body.realestate_version .navbar-default .navbar-nav > li:focus > a,
body.realestate_version .rr-nav-links > li > a.active,
body.realestate_version .rr-nav-links > li:hover > a {
	color: var(--rr-gold) !important;
	background: transparent !important;
}

body.realestate_version .navbar-default .navbar-nav > li > a.active::after,
body.realestate_version .navbar-default .navbar-nav > li:hover > a::after,
body.realestate_version .rr-nav-links > li > a.active::after,
body.realestate_version .rr-nav-links > li:hover > a::after {
	transform: scaleX(1);
}

body.realestate_version .rr-nav-social {
	float: none !important;
	margin: 0 0 0 4px !important;
	padding: 0 0 0 14px !important;
	border-left: none !important;
	display: flex;
	align-items: center;
	align-self: center;
	gap: 10px;
	position: static;
	right: auto;
	top: auto;
	transform: none;
	z-index: 2;
	flex: 0 0 auto;
	height: auto !important;
	min-height: 0 !important;
}

/* Short divider - matches icon height, equal space on both sides */
body.realestate_version .rr-nav-social::before {
	content: "";
	display: block;
	width: 1px;
	height: 22px;
	background: rgba(201, 162, 39, 0.4);
	margin-right: 4px;
	flex-shrink: 0;
}

body.realestate_version .rr-nav-social > li {
	float: none;
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

body.realestate_version .rr-nav-social > li > a {
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

body.realestate_version .rr-nav-social > li > a::after {
	display: none;
}

body.realestate_version .social-links > a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

body.realestate_version .social-links .rr-social-icon,
body.realestate_version .social-links i {
	border: 1px solid var(--rr-line) !important;
	border-radius: 50% !important;
	color: var(--rr-gold) !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 32px;
	min-height: 32px;
	padding: 7px !important;
	box-sizing: border-box;
	line-height: 1 !important;
	transition: background 0.25s var(--ease), color 0.25s var(--ease), border-color 0.25s var(--ease);
}

body.realestate_version .social-links a:hover .rr-social-icon,
body.realestate_version .social-links a:hover i {
	background: var(--rr-gold) !important;
	color: #fff !important;
	border-color: var(--rr-gold) !important;
}

/* Desktop nav - open row layout only above tablet */
@media (min-width: 992px) {
	body.realestate_version #navbar.navbar-collapse,
	body.realestate_version #navbar.navbar-collapse.collapse {
		flex: 1 1 auto;
		display: flex !important;
		align-items: center;
		justify-content: flex-end;
		gap: 0;
		height: auto !important;
		overflow: visible !important;
	}

	body.realestate_version .navbar-toggle {
		display: none !important;
	}
}

/* =========================================================
   PRELOADER - logo branded
   ========================================================= */

body.realestate_version #preloader {
	background: #ffffff !important;
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
}

body.realestate_version .rr-preloader {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 28px;
}

body.realestate_version .rr-preloader-logo {
	width: 280px;
	max-width: 70vw;
	height: auto;
	object-fit: contain;
	animation: rrLogoPulse 1.6s ease-in-out infinite;
}

body.realestate_version .rr-preloader-bar {
	width: 120px;
	height: 2px;
	background: rgba(201, 162, 39, 0.2);
	border-radius: 2px;
	overflow: hidden;
	position: relative;
}

body.realestate_version .rr-preloader-bar span {
	position: absolute;
	inset: 0;
	width: 40%;
	background: var(--rr-gold);
	border-radius: 2px;
	animation: rrBarSlide 1.1s ease-in-out infinite;
}

@keyframes rrLogoPulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.85; transform: scale(1.04); }
}

@keyframes rrBarSlide {
	0% { left: -40%; }
	100% { left: 100%; }
}

/* =========================================================
   BUTTONS - refined, soft, intentional
   ========================================================= */

body.realestate_version .rr-btn,
body.realestate_version .btn.grd1,
body.realestate_version .btn-brd.grd1,
body.realestate_version a.btn.grd1,
body.realestate_version .btn-light.grd1 {
	border: none !important;
	border-radius: var(--radius) !important;
	font-family: var(--font-body);
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-size: 11px;
	padding: 15px 30px !important;
	line-height: 1.25;
	transition: background 0.28s var(--ease), transform 0.22s var(--ease), box-shadow 0.28s var(--ease) !important;
	box-shadow: 0 10px 28px rgba(201, 162, 39, 0.28);
}

body.realestate_version .rr-btn:hover,
body.realestate_version .btn.grd1:hover,
body.realestate_version a.btn.grd1:hover {
	transform: translateY(-2px);
	box-shadow: 0 16px 36px rgba(201, 162, 39, 0.38);
	background: var(--rr-gold-dark) !important;
	color: #fff !important;
}

body.realestate_version .rr-btn-outline {
	background: transparent !important;
	background-image: none !important;
	border: 1px solid rgba(255, 255, 255, 0.75) !important;
	color: #fff !important;
	box-shadow: none;
}

body.realestate_version .rr-btn-outline:hover {
	background: #fff !important;
	color: var(--rr-black) !important;
	border-color: #fff !important;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
}

body.realestate_version .global-radius,
body.realestate_version .btn-brd {
	border-radius: var(--radius) !important;
}

/* =========================================================
   HERO - cinematic full-bleed composition
   ========================================================= */

body.realestate_version .rr-hero {
	position: relative;
	min-height: calc(100vh - 96px);
	display: flex;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
	background: var(--rr-black);
}

body.realestate_version .rr-hero-overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(105deg, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.42) 48%, rgba(0, 0, 0, 0.28) 100%);
	pointer-events: none;
}

body.realestate_version .rr-hero-inner {
	position: relative;
	z-index: 2;
	width: 100%;
	padding: 72px 0 90px;
}

body.realestate_version .rr-hero-row {
	display: flex;
	align-items: center;
}

body.realestate_version .rr-hero-form.contact_form {
	background: var(--rr-glass);
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-top: none !important;
	border-radius: var(--radius-lg);
	padding: 28px 24px 28px;
	box-shadow: var(--rr-shadow);
	margin: 0;
	max-width: 360px;
	width: 100%;
	min-height: 0 !important;
	height: auto;
	backdrop-filter: blur(8px);
	display: block;
}

body.realestate_version .rr-hero-form h3,
body.realestate_version .rr-hero-form-title {
	margin: 0 0 22px;
	font-size: 17px;
	line-height: 1.3;
	display: flex;
	align-items: center;
	gap: 10px;
}

body.realestate_version .rr-hero-form-title-text {
	flex: 1;
	min-width: 0;
	font-weight: 700;
	color: var(--rr-charcoal);
	line-height: 1.25;
}

body.realestate_version .rr-hero-form h3 .material-symbols-outlined,
body.realestate_version .rr-hero-form h3 i,
body.realestate_version .rr-hero-form-title .material-symbols-outlined {
	margin-right: 0;
	border-radius: 50%;
	vertical-align: middle;
	font-size: 20px !important;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	color: #fff !important;
	background: var(--rr-gold) !important;
	background-image: none !important;
}

body.realestate_version .rr-hero-form form {
	display: block;
	margin: 0;
}

body.realestate_version .rr-hero-field {
	margin: 0 0 16px;
}

body.realestate_version .rr-hero-field:last-of-type {
	margin-bottom: 20px;
}

body.realestate_version .rr-hero-label {
	display: block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--rr-charcoal);
	margin: 0 0 6px;
}

body.realestate_version .rr-hero-form .form-control {
	margin-bottom: 0 !important;
	height: 44px !important;
	border-radius: 8px;
	border: 1px solid #ebe6da;
	padding: 10px 14px !important;
	font-size: 14px;
	background: #fff;
	width: 100%;
	transition: border-color 0.2s var(--ease), box-shadow 0.2s var(--ease);
}

body.realestate_version .rr-hero-form .form-control:focus {
	border-color: var(--rr-gold);
	box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.15) !important;
}

body.realestate_version .rr-hero-form .rr-btn {
	margin-top: 0 !important;
	width: 100%;
}

body.realestate_version .rr-hero-copy {
	padding: 8px 8px 8px 40px;
	max-width: 580px;
}

body.realestate_version .rr-hero-copy .rr-tagline {
	color: var(--rr-gold-light) !important;
	margin-bottom: 18px;
}

body.realestate_version .rr-hero-copy h1,
body.realestate_version .rr-hero-copy h2 {
	color: #fff;
	font-size: 48px;
	line-height: 1.12;
	margin: 0 0 20px;
	padding: 0;
	text-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
}

body.realestate_version .rr-hero-copy .lead {
	color: rgba(255, 255, 255, 0.88);
	font-size: 17px;
	line-height: 1.7;
	margin: 0 0 32px;
	padding: 0;
}

body.realestate_version .rr-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
}

/* =========================================================
   SECTION RHYTHM
   ========================================================= */

body.realestate_version .about-box {
	padding: var(--space-xl) 0 calc(var(--space-xl) - 20px);
	background: #fff;
}

body.realestate_version .section.wb {
	padding: var(--space-xl) 0;
	background: #fff;
}

body.realestate_version .section.lb {
	padding: var(--space-xl) 0;
	background: var(--rr-cream) !important;
}

body.realestate_version .section-title {
	margin-bottom: var(--space-lg);
	position: relative;
}

body.realestate_version .section-title h2,
body.realestate_version .section-title h3 {
	margin: 10px 0 18px;
	font-size: 34px;
	position: relative;
	display: inline-block;
}

body.realestate_version .section-title h2::after,
body.realestate_version .section-title h3::after {
	content: "";
	display: block;
	width: 48px;
	height: 1px;
	background: var(--rr-gold);
	margin: 16px auto 0;
}

body.realestate_version .section-title.row.text-center h2::after,
body.realestate_version .section-title.row.text-center h3::after {
	margin-left: auto;
	margin-right: auto;
}

body.realestate_version .hr1 {
	margin: var(--space-lg) 0;
	border: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--rr-line), transparent);
}

body.realestate_version .message-box {
	padding: 12px 0 0 12px;
}

body.realestate_version .message-box h4 {
	color: var(--rr-gold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-size: 12px;
	font-family: var(--font-body);
	font-weight: 600;
	margin-bottom: 12px;
}

body.realestate_version .message-box h2 {
	margin: 0 0 20px;
	line-height: 1.25;
	font-size: 32px;
}

body.realestate_version .message-box p {
	margin-bottom: 16px;
}

body.realestate_version .message-box .btn {
	margin-top: 12px;
}

/* =========================================================
   FEATURE CARDS / SERVICES
   ========================================================= */

body.realestate_version .rr-feature-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	margin-left: -10px;
	margin-right: -10px;
}

body.realestate_version .rr-feature-col {
	display: flex;
	float: none;
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 20px;
}

body.realestate_version .rr-feature-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	width: 100%;
	height: 100%;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: var(--radius-lg);
	padding: 28px 20px 24px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
	transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease), border-color 0.3s var(--ease);
}

body.realestate_version .rr-feature-card:hover {
	transform: translateY(-4px);
	border-color: rgba(201, 162, 39, 0.28);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.08);
}

body.realestate_version .rr-feature-card .rr-feature-icon {
	margin-bottom: 16px;
}

body.realestate_version .rr-feature-card h4 {
	margin: 0 0 10px;
	font-size: 17px;
	color: var(--rr-black);
}

body.realestate_version .rr-feature-card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--rr-muted);
	flex: 1 1 auto;
}

body.realestate_version .rr-feature-icon .material-symbols-outlined,
body.realestate_version .rr-service-icon .material-symbols-outlined {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: rgba(201, 162, 39, 0.12);
	color: var(--rr-gold);
	font-size: 32px;
	line-height: 1;
	font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 32;
	transition: background 0.25s var(--ease), color 0.25s var(--ease);
}

body.realestate_version .rr-service-icon {
	display: flex;
	justify-content: center;
	margin-bottom: 22px;
}

body.realestate_version .rr-service-icon .material-symbols-outlined {
	width: 72px;
	height: 72px;
	font-size: 36px;
}

body.realestate_version .rr-feature-card:hover .rr-feature-icon .material-symbols-outlined,
body.realestate_version .single-services:hover .rr-service-icon .material-symbols-outlined {
	background: var(--rr-gold);
	color: #fff;
}

body.realestate_version .single-services {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.04);
	border-top: none !important;
	border-bottom: none !important;
	border-radius: var(--radius-lg);
	padding: 36px 28px 32px;
	margin-bottom: 28px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
	text-align: center;
	transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease);
	min-height: 340px;
}

body.realestate_version .single-services:hover {
	transform: translateY(-5px);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.08);
}

body.realestate_version .single-services-img {
	margin-bottom: 0;
}

body.realestate_version .single-services-desc h4 {
	margin-bottom: 14px;
}

body.realestate_version .single-services-desc p {
	margin-bottom: 22px;
	line-height: 1.7;
}

body.realestate_version .single-services .btn {
	margin-top: 4px;
}

@media (max-width: 767px) {
	body.realestate_version .rr-feature-grid {
		display: block;
	}

	body.realestate_version .rr-feature-col {
		display: block;
		width: 100%;
	}
}

/* =========================================================
   IMAGES
   ========================================================= */

/* Kill theme thick gold frame on image wrappers */
body.realestate_version .post-media {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

.rr-brand-banner {
	margin: 0 0 var(--space-sm);
	width: 100%;
	height: 380px;
	object-fit: cover;
	object-position: center top;
	border: none !important;
	border-radius: var(--radius-lg);
	display: block;
	background: var(--rr-cream);
	box-shadow: var(--rr-shadow-soft);
}

.rr-gallery-banners {
	margin-bottom: var(--space-md);
}

.rr-gallery-banners .rr-brand-banner {
	height: 400px;
	margin-bottom: 20px;
}

.rr-award-grid .rr-brand-banner {
	height: 420px;
}

body.realestate_version #agent .post-media img {
	width: 100%;
	height: 360px;
	object-fit: cover;
	object-position: center top;
	display: block;
	border: none !important;
	border-radius: var(--radius-lg);
	box-shadow: var(--rr-shadow);
}

body.realestate_version .about-box .post-media img:not(.rr-brand-banner) {
	width: 100%;
	height: 360px;
	object-fit: cover;
	display: block;
	border: none !important;
	border-radius: var(--radius-lg);
	box-shadow: var(--rr-shadow-soft);
}

body.realestate_version .property-wrap .post-media img,
body.realestate_version .property-wrap figure img {
	width: 100%;
	height: 230px;
	object-fit: cover;
	display: block;
}

body.realestate_version .da-thumbs .post-media_g img,
body.realestate_version #da-thumbs img {
	width: 100%;
	height: 210px;
	object-fit: cover;
	display: block;
}

body.realestate_version .testi-meta img {
	width: 64px;
	height: 64px;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid var(--rr-line);
}

/* =========================================================
   AGENT / FOUNDER
   ========================================================= */

body.realestate_version .agent-parallax,
body.realestate_version #agent.section.db {
	background-color: var(--rr-charcoal) !important;
	background-image: url(../uploads/parallax_02.png);
	background-size: cover;
	background-position: center;
	padding: var(--space-xl) 0 !important;
	position: relative;
}

body.realestate_version #agent::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(17, 17, 17, 0.72);
	z-index: 0;
}

body.realestate_version #agent > .container {
	position: relative;
	z-index: 1;
}

body.realestate_version #agent .section-title h3,
body.realestate_version #agent .message-box h2,
body.realestate_version #agent .message-box h4 {
	color: #fff;
}

body.realestate_version #agent .section-title .lead,
body.realestate_version #agent .message-box p,
body.realestate_version #agent .message-box .rr-quote {
	color: rgba(255, 255, 255, 0.82);
}

body.realestate_version #agent .rr-tagline {
	color: var(--rr-gold-light) !important;
}

.rr-quote {
	font-family: var(--font-body);
	font-style: italic;
	font-size: 17px;
	line-height: 1.75;
	border-left: 2px solid var(--rr-gold);
	padding-left: 18px;
	margin: 22px 0;
}

body.realestate_version .agencies_meta span {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 14px;
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 14px;
}

body.realestate_version .agencies_meta span a {
	color: rgba(255, 255, 255, 0.85) !important;
}

body.realestate_version .agencies_meta span .material-symbols-outlined,
body.realestate_version .agencies_meta span i {
	background: var(--rr-gold) !important;
	border: none !important;
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	color: #fff !important;
}

/* =========================================================
   PROPERTIES - equal-height partnership cards
   ========================================================= */

body.realestate_version .rr-prop-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	margin-left: -15px;
	margin-right: -15px;
}

body.realestate_version .rr-prop-col {
	display: flex;
	float: none;
	margin-bottom: 28px;
}

body.realestate_version .rr-prop-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: var(--radius-lg);
	border: 1px solid rgba(0, 0, 0, 0.05);
	box-shadow: var(--rr-shadow-soft);
	overflow: hidden;
	transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease);
}

body.realestate_version .rr-prop-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 48px rgba(0, 0, 0, 0.12);
}

body.realestate_version .rr-prop-media {
	position: relative;
	height: 220px;
	overflow: hidden;
	background: var(--rr-cream);
}

body.realestate_version .rr-prop-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.45s var(--ease);
}

body.realestate_version .rr-prop-card:hover .rr-prop-media img {
	transform: scale(1.04);
}

body.realestate_version .rr-prop-badge {
	position: absolute;
	left: 14px;
	top: 14px;
	z-index: 2;
	background: rgba(17, 17, 17, 0.88);
	color: var(--rr-gold-light);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 7px 11px;
	border-radius: 4px;
}

body.realestate_version .rr-prop-body {
	flex: 1 1 auto;
	padding: 22px 22px 8px;
}

body.realestate_version .rr-prop-body h3 {
	font-size: 18px;
	line-height: 1.3;
	margin: 0 0 8px;
	color: var(--rr-black);
	min-height: 2.6em;
}

body.realestate_version .rr-prop-meta {
	margin: 0 0 10px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--rr-gold-dark);
}

body.realestate_version .rr-prop-blurb {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: var(--rr-muted);
}

body.realestate_version .rr-prop-foot {
	margin-top: auto;
	padding: 16px 22px 22px;
}

body.realestate_version .rr-prop-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--rr-black) !important;
	text-decoration: none !important;
	border-bottom: 2px solid var(--rr-gold);
	padding-bottom: 2px;
	transition: color 0.2s var(--ease);
}

body.realestate_version .rr-prop-link .material-symbols-outlined {
	font-size: 18px;
	color: var(--rr-gold);
	transition: transform 0.2s var(--ease);
}

body.realestate_version .rr-prop-link:hover {
	color: var(--rr-gold-dark) !important;
}

body.realestate_version .rr-prop-link:hover .material-symbols-outlined {
	transform: translateX(3px);
}

@media (max-width: 767px) {
	body.realestate_version .rr-prop-grid {
		display: block;
	}

	body.realestate_version .rr-prop-col {
		display: block;
		width: 100%;
	}

	body.realestate_version .rr-prop-body h3 {
		min-height: 0;
	}
}

/* =========================================================
   GALLERY
   ========================================================= */

body.realestate_version .da-thumbs .pitem,
body.realestate_version .post-media_g {
	border-radius: var(--radius);
	overflow: hidden;
	margin-bottom: 16px;
}

body.realestate_version .da-thumbs .pitem a div .material-symbols-outlined,
body.realestate_version .da-thumbs .pitem a div i {
	background-color: var(--rr-gold) !important;
	border-radius: 100%;
	bottom: 0;
	color: #fff !important;
	font-size: 28px;
	height: 60px;
	width: 60px;
	left: 0;
	right: 0;
	margin: -25px auto;
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

body.realestate_version .hoverbutton .material-symbols-outlined {
	font-size: 28px;
	line-height: 50px;
	color: #1f1f1f;
}

body.realestate_version .item-body .adderess .material-symbols-outlined,
body.realestate_version .item-foot .material-symbols-outlined {
	font-size: 18px;
	vertical-align: middle;
	margin-right: 4px;
	color: var(--rr-gold);
}

body.realestate_version .testimonial .desc h3 .material-symbols-outlined {
	font-size: 22px;
	color: var(--rr-gold);
	vertical-align: middle;
}

/* =========================================================
   FLOATING ACTION STACK - matched size + alignment
   ========================================================= */

body.realestate_version .rr-float-stack {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 9998;
	width: 52px;
	height: 52px;
}

body.realestate_version .rr-float-btn {
	position: absolute !important;
	right: 0 !important;
	left: auto !important;
	top: auto !important;
	width: 52px !important;
	height: 52px !important;
	min-width: 52px;
	min-height: 52px;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	line-height: 1 !important;
	box-sizing: border-box;
	text-decoration: none !important;
	cursor: pointer;
	transition: transform 0.25s var(--ease), box-shadow 0.25s var(--ease), background 0.25s var(--ease), opacity 0.25s var(--ease) !important;
	animation: none !important;
	-webkit-animation: none !important;
}

body.realestate_version .rr-whatsapp {
	bottom: 0 !important;
	background: #25d366 !important;
	color: #fff !important;
	box-shadow: 0 8px 20px rgba(37, 211, 102, 0.35);
}

body.realestate_version .rr-whatsapp svg {
	width: 26px;
	height: 26px;
	display: block;
}

body.realestate_version .rr-call {
	bottom: 64px !important;
	background: var(--rr-gold) !important;
	color: #fff !important;
	box-shadow: 0 8px 20px rgba(201, 162, 39, 0.35);
}

body.realestate_version .rr-call .material-symbols-outlined {
	font-size: 26px !important;
	line-height: 1 !important;
	color: #fff !important;
	width: auto;
	height: auto;
	display: block;
}

body.realestate_version #scroll-to-top,
body.realestate_version .dmtop,
body.realestate_version .dmtop.show {
	bottom: 128px !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	background: var(--rr-gold) !important;
	color: #fff !important;
	box-shadow: 0 8px 20px rgba(201, 162, 39, 0.35);
	font-size: inherit !important;
}

body.realestate_version #scroll-to-top.show,
body.realestate_version .dmtop.show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	bottom: 128px !important;
}

body.realestate_version #scroll-to-top .material-symbols-outlined {
	font-size: 26px !important;
	line-height: 1 !important;
	color: #fff !important;
	width: auto;
	height: auto;
	display: block;
}

body.realestate_version #scroll-to-top:hover,
body.realestate_version .rr-call:hover,
body.realestate_version .rr-call:focus,
body.realestate_version .rr-whatsapp:hover,
body.realestate_version .rr-whatsapp:focus {
	transform: translateY(-2px);
	outline: none;
}

body.realestate_version #scroll-to-top:hover {
	background: var(--rr-gold-dark) !important;
	box-shadow: 0 10px 24px rgba(201, 162, 39, 0.45);
}

body.realestate_version .rr-call:hover,
body.realestate_version .rr-call:focus {
	background: var(--rr-gold-dark) !important;
	color: #fff !important;
	box-shadow: 0 10px 24px rgba(201, 162, 39, 0.45);
}

body.realestate_version .rr-whatsapp:hover,
body.realestate_version .rr-whatsapp:focus {
	background: #1ebe57 !important;
	color: #fff !important;
	box-shadow: 0 10px 24px rgba(37, 211, 102, 0.45);
}

body.realestate_version .footer-links .rr-social-icon {
	color: var(--rr-gold);
}

/* =========================================================
   PARTNERS - real logo wall
   ========================================================= */

.rr-partners {
	background:
		radial-gradient(ellipse 70% 45% at 50% 0%, rgba(201, 162, 39, 0.12), transparent 55%),
		linear-gradient(165deg, #0d0d0d 0%, #17120a 55%, #0f0c08 100%);
	color: #fff;
	padding: var(--space-xl) 0;
	position: relative;
	overflow: hidden;
}

.rr-partners::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(201, 162, 39, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(201, 162, 39, 0.035) 1px, transparent 1px);
	background-size: 48px 48px;
	mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, #000 20%, transparent 75%);
	pointer-events: none;
}

.rr-partners .container {
	position: relative;
	z-index: 1;
}

.rr-partners .rr-tagline {
	color: var(--rr-gold-light) !important;
}

.rr-partners h3 {
	color: #f5f0e6 !important;
	margin: 10px 0 14px;
}

.rr-partners .lead {
	color: rgba(245, 240, 230, 0.65);
	max-width: 620px;
	margin: 0 auto 8px;
}

.rr-partner-wall {
	position: relative;
	z-index: 1;
	padding: 40px 0 8px;
}

.rr-partner-grid {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.rr-partner-tile {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 140px;
	padding: 28px 32px;
	border-radius: 14px;
	background: #ffffff !important;
	background-color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.2);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);
	transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease);
}

.rr-partner-tile--dark {
	background: #111111 !important;
	background-color: #111111 !important;
	border-color: rgba(255, 255, 255, 0.08);
}

.rr-partner-tile img {
	width: 100%;
	max-width: 220px;
	height: 72px;
	object-fit: contain;
	object-position: center;
	display: block;
	background: transparent;
	filter: none;
	opacity: 1;
}

.rr-partner-tile:hover {
	transform: translateY(-4px);
	background: #ffffff !important;
	background-color: #ffffff !important;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.38);
}

.rr-partner-tile--dark:hover {
	background: #111111 !important;
	background-color: #111111 !important;
}

@media (max-width: 991px) {
	.rr-partner-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.rr-partner-tile {
		min-height: 120px;
	}

	.rr-partner-tile img {
		height: 60px;
		max-width: 190px;
	}
}

@media (max-width: 575px) {
	.rr-partner-grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.rr-partner-tile {
		min-height: 110px;
		padding: 22px 24px;
	}

	.rr-partner-tile img {
		height: 56px;
		max-width: 200px;
	}
}

/* =========================================================
   AWARDS - equal cards + icons
   ========================================================= */

.rr-award-layout {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.rr-award-media-col,
.rr-award-cards-col {
	display: flex;
	float: none;
}

.rr-award-media {
	width: 100%;
	height: 100%;
	min-height: 420px;
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--rr-shadow-soft);
	background: var(--rr-cream);
}

.rr-award-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	display: block;
}

.rr-award-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	width: 100%;
	height: 100%;
}

.rr-award-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: var(--radius-lg);
	padding: 22px 20px 20px;
	box-shadow: var(--rr-shadow-soft);
	transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease), border-color 0.3s var(--ease);
}

.rr-award-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.1);
	border-color: rgba(201, 162, 39, 0.28);
}

.rr-award-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: 14px;
	border-radius: 50%;
	background: rgba(201, 162, 39, 0.12);
	flex: 0 0 auto;
}

.rr-award-icon .material-symbols-outlined {
	font-size: 24px;
	color: var(--rr-gold);
	line-height: 1;
}

.rr-award-card h4 {
	font-size: 16px;
	line-height: 1.35;
	margin: 0 0 8px;
	color: var(--rr-black);
}

.rr-award-card p {
	margin: 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--rr-muted);
	flex: 1 1 auto;
}

@media (max-width: 991px) {
	.rr-award-media-col,
	.rr-award-cards-col {
		display: block;
		width: 100%;
	}

	.rr-award-media {
		min-height: 300px;
		margin-bottom: 20px;
	}
}

@media (max-width: 575px) {
	.rr-award-cards {
		grid-template-columns: 1fr;
		gap: 12px;
	}
}

/* =========================================================
   TESTIMONIALS
   ========================================================= */

body.realestate_version .rr-testi-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	margin-left: -15px;
	margin-right: -15px;
}

body.realestate_version .rr-testi-col {
	display: flex;
	float: none;
	margin-bottom: 24px;
}

body.realestate_version .rr-testi-col .testimonial {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-align: left;
	background: #fff;
	border-radius: var(--radius-lg);
	padding: 32px 28px;
	border: 1px solid rgba(0, 0, 0, 0.04) !important;
	border-top: none !important;
	border-bottom: none !important;
	box-shadow: var(--rr-shadow-soft);
	margin: 0;
}

body.realestate_version .rr-testi-col .testimonial .desc {
	flex: 1 1 auto;
}

body.realestate_version .rr-testi-col .testimonial .desc h3 {
	font-size: 18px;
	margin-bottom: 14px;
	color: var(--rr-black);
	text-align: center;
}

body.realestate_version .rr-testi-col .testimonial .desc .lead {
	font-size: 15px;
	line-height: 1.7;
	color: var(--rr-muted);
	text-align: center;
	min-height: 0;
}

body.realestate_version .rr-testi-col .testi-meta {
	margin-top: auto;
	padding-top: 18px;
	text-align: center;
}

body.realestate_version .rr-testi-col .testi-meta h4 {
	font-family: var(--font-display);
	font-size: 15px;
	padding-top: 0;
	margin: 0;
	color: var(--rr-black);
}

body.realestate_version .rr-testi-col .testi-meta small {
	color: var(--rr-muted);
}

body.realestate_version .rr-testi-col .testi-meta img {
	display: none;
}

@media (max-width: 767px) {
	body.realestate_version .rr-testi-grid {
		display: block;
	}

	body.realestate_version .rr-testi-col {
		display: block;
		width: 100%;
	}
}

/* =========================================================
   CONTACT
   ========================================================= */

body.realestate_version #contact.section.wb {
	background: var(--rr-cream);
}

body.realestate_version #contact .contact_form {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.04);
	border-top: none !important;
	border-bottom: none !important;
	border-radius: var(--radius-lg);
	padding: 36px 32px;
	box-shadow: var(--rr-shadow-soft);
}

body.realestate_version #contact .rr-contact-field {
	margin: 0 0 18px;
}

body.realestate_version #contact .rr-contact-label {
	display: block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--rr-charcoal);
	margin: 0 0 6px;
}

body.realestate_version #contact .contact_form .form-control {
	border-radius: 8px;
	height: 48px;
	margin-bottom: 0;
	border: 1px solid #ebe6da;
	padding: 10px 14px;
	font-size: 14px;
	background: #fff;
	width: 100%;
	box-shadow: none;
	transition: border-color 0.2s var(--ease), box-shadow 0.2s var(--ease);
}

body.realestate_version #contact .contact_form select.form-control {
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M1.4.6 6 5.2 10.6.6 12 2 6 8 0 2z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 12px 8px;
	padding-right: 36px;
	cursor: pointer;
}

body.realestate_version #contact .contact_form .form-control:focus {
	border-color: var(--rr-gold);
	box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.15) !important;
	outline: none;
}

body.realestate_version #contact .contact_form textarea.form-control {
	height: 140px !important;
	resize: vertical;
	min-height: 120px;
}

body.realestate_version #contact .rr-contact-form .rr-btn {
	margin-top: 4px;
	width: 100%;
}

body.realestate_version .right-box-contact {
	margin-bottom: 22px;
}

body.realestate_version .right-box-contact h4 {
	margin-bottom: 8px;
	font-size: 15px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.realestate_version .right-box-contact .support-info {
	background: #fff;
	border-radius: var(--radius);
	box-shadow: var(--rr-shadow-soft);
	border: 1px solid rgba(0, 0, 0, 0.04);
	border-top: none !important;
	border-bottom: none !important;
	padding: 22px 24px 22px 84px;
	margin-top: 8px;
	transition: transform 0.25s var(--ease);
}

body.realestate_version .right-box-contact .support-info:hover {
	transform: translateY(-2px);
}

body.realestate_version .support-info .info-title .material-symbols-outlined,
body.realestate_version .support-info .info-title i {
	background: var(--rr-gold) !important;
	border-radius: 50%;
	width: 48px;
	height: 48px;
	line-height: 48px;
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	color: #fff !important;
}

body.realestate_version .support-info {
	position: relative;
}

body.realestate_version #map {
	min-height: 340px;
	margin: 0;
	filter: grayscale(0.25) contrast(1.05);
}

/* =========================================================
   FOOTER
   ========================================================= */

body.realestate_version .footer {
	background: var(--rr-charcoal) !important;
	color: rgba(255, 255, 255, 0.78);
	padding: 70px 0 36px;
	border-top: 1px solid var(--rr-line);
}

body.realestate_version .footer h3,
body.realestate_version .footer .widget-title h3 {
	color: var(--rr-gold) !important;
	margin-bottom: 18px;
	font-size: 16px;
	letter-spacing: 0.08em;
}

body.realestate_version .footer a {
	color: rgba(255, 255, 255, 0.75);
	transition: color 0.2s var(--ease);
}

body.realestate_version .footer a:hover {
	color: var(--rr-gold) !important;
}

body.realestate_version .footer .widget {
	margin-bottom: 28px;
}

body.realestate_version .footer .widget-title img {
	max-height: 92px;
	width: auto;
	max-width: 180px;
	object-fit: contain;
	margin-bottom: 16px;
}

body.realestate_version .footer-links li {
	margin-bottom: 8px;
}

body.realestate_version .copyrights {
	background: var(--rr-black) !important;
	color: rgba(255, 255, 255, 0.78);
	padding: 22px 0 !important;
	border-top: 1px solid rgba(201, 162, 39, 0.15);
	overflow: visible;
}

body.realestate_version .copyrights > .container {
	padding-left: 24px !important;
	padding-right: 24px !important;
}

body.realestate_version .copyrights .footer-distributed {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px 24px;
	float: none;
	padding: 0 !important;
	text-align: left;
	overflow: visible;
}

body.realestate_version .copyrights .footer-left,
body.realestate_version .copyrights .footer-right {
	float: none !important;
	max-width: none;
	margin: 0 !important;
}

body.realestate_version .copyrights .footer-company-name {
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.45;
}

body.realestate_version .copyrights .rr-rera {
	display: block;
	margin-top: 4px;
	color: rgba(255, 255, 255, 0.65);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
}

body.realestate_version .copyrights .rr-tagline {
	margin: 0 !important;
	color: var(--rr-gold-light) !important;
	font-size: 11px;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

body.realestate_version .rr-powered-by {
	margin: 6px 0 0;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.55);
}

body.realestate_version .rr-powered-by a {
	color: var(--rr-gold-light) !important;
	text-decoration: none;
	font-weight: 700;
}

body.realestate_version .rr-powered-by a:hover {
	color: #fff !important;
	text-decoration: underline;
}

@media (max-width: 767px) {
	body.realestate_version .copyrights > .container {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	body.realestate_version .copyrights .footer-distributed {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	body.realestate_version .copyrights .rr-tagline {
		white-space: normal;
	}
}

body.realestate_version #scroll-to-top:hover {
	background: var(--rr-gold-dark) !important;
}

/* =========================================================
   ALERTS / FORMS MISC
   ========================================================= */

body.realestate_version .alert {
	border-radius: var(--radius);
	border: none;
	font-size: 14px;
}

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

@media (max-width: 991px) {
	body.realestate_version .header_style_01 {
		position: sticky !important;
		top: 0 !important;
		padding: 0 !important;
		background: #ffffff !important;
	}

	body.realestate_version .rr-nav-wrap {
		min-height: 84px;
		padding: 8px 16px;
		flex-wrap: wrap;
		gap: 0;
		max-width: none;
		align-items: center;
	}

	body.realestate_version .navbar-header {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		float: none;
		gap: 12px;
	}

	body.realestate_version .navbar-brand {
		order: 0;
		float: none;
		padding: 0 !important;
		margin: 0;
		flex: 1 1 auto;
		min-width: 0;
	}

	body.realestate_version .navbar-brand img {
		max-height: 76px !important;
		max-width: 240px !important;
		width: auto !important;
	}

	body.realestate_version .navbar-toggle,
	body.realestate_version .rr-menu-toggle {
		order: 0;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		float: none;
		margin: 0 !important;
		padding: 0 !important;
		width: 44px;
		height: 44px;
		border: none !important;
		border-radius: 50%;
		background: rgba(201, 162, 39, 0.12) !important;
		color: var(--rr-gold) !important;
		box-shadow: none !important;
		flex: 0 0 auto;
	}

	body.realestate_version .navbar-toggle:hover,
	body.realestate_version .navbar-toggle:focus,
	body.realestate_version .rr-menu-toggle:hover,
	body.realestate_version .rr-menu-toggle:focus {
		background: var(--rr-gold) !important;
		color: #fff !important;
		outline: none;
	}

	body.realestate_version .navbar-toggle .icon-bar {
		display: none !important;
	}

	body.realestate_version .rr-menu-toggle .rr-menu-icon {
		font-size: 26px !important;
		line-height: 1 !important;
		width: auto;
		height: auto;
		color: inherit !important;
		background: transparent !important;
		display: none !important;
	}

	body.realestate_version .rr-menu-toggle.collapsed .rr-menu-icon--open,
	body.realestate_version .rr-menu-toggle:not(.collapsed) .rr-menu-icon--close {
		display: inline-flex !important;
	}

	/* Collapsed by default - only open with .in */
	body.realestate_version #navbar.navbar-collapse,
	body.realestate_version #navbar.navbar-collapse.collapse {
		display: none !important;
		flex: none;
		float: none;
		width: 100%;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		gap: 0;
		background: #fff;
		padding: 8px 0 16px;
		margin: 0;
		border: none;
		border-top: 1px solid rgba(201, 162, 39, 0.2);
		box-shadow: none;
		height: auto !important;
		overflow: hidden !important;
	}

	body.realestate_version #navbar.navbar-collapse.in,
	body.realestate_version #navbar.navbar-collapse.collapsing {
		display: flex !important;
	}

	body.realestate_version .rr-nav-links {
		flex-direction: column;
		flex-wrap: wrap;
		width: 100%;
		gap: 0;
		justify-content: flex-start;
		align-items: stretch;
	}

	body.realestate_version .rr-nav-links > li {
		width: 100%;
		display: block;
	}

	body.realestate_version .rr-nav-links > li > a {
		font-size: 14px;
		padding: 12px 4px !important;
		text-align: left;
		width: 100%;
	}

	body.realestate_version .rr-nav-links > li > a::after {
		left: 4px;
		right: auto;
		width: 28px;
		bottom: 6px;
	}

	body.realestate_version .rr-nav-social {
		position: static;
		transform: none;
		justify-content: flex-start;
		width: 100%;
		margin: 12px 0 0 !important;
		padding: 12px 0 0 !important;
		border-top: 1px solid rgba(201, 162, 39, 0.15);
		border-left: none;
		gap: 12px;
	}

	body.realestate_version .rr-nav-social::before {
		display: none;
	}

	body.realestate_version .rr-hero {
		min-height: calc(100vh - 72px);
	}

	body.realestate_version .rr-hero-inner {
		padding: 48px 0 56px;
	}

	body.realestate_version .rr-hero-row {
		display: block;
	}

	body.realestate_version .rr-hero-form.contact_form {
		margin: 0 auto 28px;
		max-width: 100%;
	}

	body.realestate_version .rr-hero-copy {
		padding: 0;
		max-width: 100%;
	}

	body.realestate_version .rr-hero-copy h1,
	body.realestate_version .rr-hero-copy h2 {
		font-size: 32px;
	}

	body.realestate_version .rr-hero-copy .lead {
		font-size: 15px;
	}

	body.realestate_version .rr-hero-actions {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	body.realestate_version .rr-hero-actions .rr-btn {
		width: 100%;
		text-align: center;
	}

	body.realestate_version .section-title h3 {
		font-size: 28px;
	}

	body.realestate_version .rr-float-stack {
		right: 14px;
		bottom: 14px;
		width: 48px;
		height: 48px;
	}

	body.realestate_version .rr-float-btn {
		width: 48px !important;
		height: 48px !important;
		min-width: 48px;
		min-height: 48px;
	}

	body.realestate_version #scroll-to-top,
	body.realestate_version .dmtop,
	body.realestate_version .dmtop.show {
		bottom: 120px !important;
	}

	body.realestate_version .rr-call {
		bottom: 60px !important;
	}

	.rr-brand-banner,
	.rr-gallery-banners .rr-brand-banner,
	.rr-award-grid .rr-brand-banner {
		height: 280px;
	}

	body.realestate_version .about-box,
	body.realestate_version .section.wb,
	body.realestate_version .section.lb {
		padding: 48px 0;
	}

	.rr-partners {
		padding: 48px 0;
	}

	body.realestate_version .message-box {
		padding: 16px 0 0;
	}

	body.realestate_version .message-box h2 {
		font-size: 26px;
	}
}

@media (max-width: 767px) {
	body.realestate_version .rr-nav-wrap {
		min-height: 78px;
		padding: 6px 14px;
	}

	body.realestate_version .navbar-brand img {
		max-height: 70px !important;
		max-width: 220px !important;
	}

	body.realestate_version .rr-menu-toggle {
		width: 42px;
		height: 42px;
	}

	body.realestate_version .rr-menu-toggle .rr-menu-icon {
		font-size: 24px !important;
	}

	body.realestate_version .rr-preloader-logo {
		width: 220px;
	}

	body.realestate_version .rr-hero {
		min-height: auto;
	}

	body.realestate_version .rr-hero-inner {
		padding: 36px 0 44px;
	}

	body.realestate_version .rr-hero-copy h1,
	body.realestate_version .rr-hero-copy h2 {
		font-size: 26px;
	}

	body.realestate_version .rr-hero-actions {
		flex-direction: column;
		align-items: stretch;
	}

	body.realestate_version .rr-btn,
	body.realestate_version .btn.grd1 {
		width: 100%;
		text-align: center;
	}

	body.realestate_version .rr-hero-form.contact_form,
	body.realestate_version #contact .contact_form {
		padding: 24px 18px;
		max-width: 100%;
	}

	body.realestate_version .container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.rr-brand-banner,
	.rr-gallery-banners .rr-brand-banner,
	.rr-award-grid .rr-brand-banner,
	body.realestate_version #agent .post-media img,
	body.realestate_version .about-box .post-media img:not(.rr-brand-banner) {
		height: 220px;
	}

	body.realestate_version .property-wrap figure img,
	body.realestate_version #da-thumbs img {
		height: 180px;
	}

	body.realestate_version .rr-feature-card,
	body.realestate_version .single-services {
		min-height: 0;
		padding: 24px 20px;
	}

	body.realestate_version .support-info .info-title {
		padding-left: 72px;
	}
}

/* =========================================================
   SUCCESS MODAL - form thank-you
   ========================================================= */

.rr-success-modal[hidden] {
	display: none !important;
}

.rr-success-modal {
	position: fixed;
	inset: 0;
	z-index: 10050;
	display: grid;
	place-items: center;
	padding: 20px;
}

.rr-success-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(17, 17, 17, 0.62);
}

.rr-success-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(440px, 100%);
	background: #fff;
	border-radius: 16px;
	border: 1px solid var(--rr-line);
	box-shadow: var(--rr-shadow);
	padding: 36px 28px 28px;
	text-align: center;
}

.rr-success-modal__close {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.06);
	color: var(--rr-charcoal);
	cursor: pointer;
	display: grid;
	place-items: center;
}

.rr-success-modal__close:hover {
	background: rgba(0, 0, 0, 0.1);
}

.rr-success-modal__icon {
	width: 64px;
	height: 64px;
	margin: 0 auto 12px;
	border-radius: 50%;
	background: linear-gradient(160deg, rgba(201, 162, 39, 0.18), rgba(201, 162, 39, 0.05));
	display: grid;
	place-items: center;
	color: var(--rr-gold-dark);
}

.rr-success-modal__icon .material-symbols-outlined {
	font-size: 40px;
}

.rr-success-modal__dialog .rr-tagline {
	margin: 0 0 6px;
}

.rr-success-modal__dialog h3 {
	margin: 0 0 10px;
	font-size: 26px;
	font-weight: 700;
	color: var(--rr-black);
}

.rr-success-modal__message {
	margin: 0 0 8px;
	font-size: 16px;
	line-height: 1.5;
	color: var(--rr-text);
}

.rr-success-modal__note {
	margin: 0 0 20px;
	font-size: 14px;
	line-height: 1.45;
	color: var(--rr-muted);
}

.rr-success-modal__actions {
	display: grid;
	gap: 10px;
}

.rr-success-modal__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 12px 18px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.rr-success-modal__btn--primary {
	background: var(--rr-gold) !important;
	border: 1px solid var(--rr-gold) !important;
	color: #fff !important;
}

.rr-success-modal__btn--primary:hover,
.rr-success-modal__btn--primary:focus {
	background: var(--rr-gold-dark) !important;
	border-color: var(--rr-gold-dark) !important;
	color: #fff !important;
}

.rr-success-modal__btn--secondary {
	background: #fff !important;
	border: 1px solid var(--rr-charcoal) !important;
	color: var(--rr-charcoal) !important;
}

.rr-success-modal__btn--secondary:hover,
.rr-success-modal__btn--secondary:focus {
	background: var(--rr-charcoal) !important;
	border-color: var(--rr-charcoal) !important;
	color: #fff !important;
}

.rr-success-modal__dismiss {
	display: inline-block;
	margin-top: 14px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--rr-muted);
	font-size: 14px;
	text-decoration: underline;
	cursor: pointer;
}

.rr-success-modal__dismiss:hover {
	color: var(--rr-charcoal);
}

body.rr-success-modal-open {
	overflow: hidden;
}

/* =========================================================
   ERROR PAGES - 404 / 500
   Full-viewport stage; no inner-page title banner
   ========================================================= */

body.realestate_version.rr-error-page {
	background: var(--rr-cream);
}

body.realestate_version.rr-error-page main {
	display: block;
}

body.realestate_version .rr-error {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: calc(100vh - 120px);
	padding: clamp(48px, 8vw, 96px) 24px;
	overflow: hidden;
	background:
		radial-gradient(ellipse 90% 55% at 50% -10%, rgba(201, 162, 39, 0.16), transparent 58%),
		linear-gradient(180deg, #fbfaf7 0%, var(--rr-cream) 55%, #efe8d8 100%);
}

body.realestate_version .rr-error__glow {
	position: absolute;
	left: 50%;
	bottom: -30%;
	width: min(720px, 90vw);
	height: 50%;
	transform: translateX(-50%);
	background: radial-gradient(ellipse at center, rgba(201, 162, 39, 0.12), transparent 70%);
	pointer-events: none;
}

body.realestate_version .rr-error__frame {
	position: relative;
	z-index: 1;
	width: min(680px, 100%);
	text-align: center;
}

body.realestate_version .rr-error__code {
	margin: 0 0 clamp(4px, 1.5vw, 12px);
	font-size: clamp(100px, 24vw, 180px);
	font-weight: 700;
	line-height: 0.85;
	letter-spacing: 0.04em;
	color: transparent;
	background: linear-gradient(180deg, var(--rr-gold) 18%, rgba(201, 162, 39, 0.18) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	user-select: none;
	animation: rr-error-rise 0.85s var(--ease) both;
}

body.realestate_version .rr-error__body {
	animation: rr-error-rise 0.85s var(--ease) 0.1s both;
}

body.realestate_version .rr-error__eyebrow {
	margin: 0 0 12px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--rr-gold-dark);
}

body.realestate_version .rr-error__title {
	margin: 0 0 16px !important;
	font-size: clamp(28px, 5vw, 40px) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	letter-spacing: 0.01em;
	color: var(--rr-charcoal) !important;
}

body.realestate_version .rr-error__title::after {
	content: "";
	display: block;
	width: 48px;
	height: 1px;
	margin: 18px auto 0;
	background: var(--rr-gold);
}

body.realestate_version .rr-error__text {
	max-width: 400px;
	margin: 0 auto 32px;
	font-size: 16px;
	line-height: 1.65;
	color: var(--rr-muted);
}

body.realestate_version .rr-error__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 18px 28px;
}

body.realestate_version .rr-error__btn {
	display: inline-block;
	min-width: 180px;
}

body.realestate_version .rr-error__link {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--rr-charcoal);
	text-decoration: none;
	border-bottom: 1px solid var(--rr-line);
	padding-bottom: 2px;
	transition: color 0.25s var(--ease), border-color 0.25s var(--ease);
}

body.realestate_version .rr-error__link:hover,
body.realestate_version .rr-error__link:focus {
	color: var(--rr-gold-dark);
	border-bottom-color: var(--rr-gold);
	outline: none;
}

@keyframes rr-error-rise {
	from {
		opacity: 0;
		transform: translateY(16px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.realestate_version .rr-error__code,
	body.realestate_version .rr-error__body {
		animation: none;
	}
}

@media (max-width: 767px) {
	body.realestate_version .rr-error {
		min-height: calc(100vh - 90px);
		padding: 56px 20px 72px;
	}

	body.realestate_version .rr-error__text {
		font-size: 15px;
		margin-bottom: 28px;
	}

	body.realestate_version .rr-error__actions {
		flex-direction: column;
		gap: 20px;
	}
}
