/* ------------------------------------------------------------------ */
/* Lotus Header Redesign - WHITE THEME FORCE OVERRIDE */
/* ------------------------------------------------------------------ */

/* Modern Typography - Inter Font like 99.co */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* Global Gradient for Body */
body {
	background: #f9f9f9 !important;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Modern Typography for All Text */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Inter', sans-serif !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em;
}

p,
span,
a,
li,
td,
th,
label,
input,
select,
textarea,
button {
	font-family: 'Inter', sans-serif !important;
}

/* ===== GREEN MODERN FOOTER (Waisaka Theme) ===== */
.h3footer {
	background: linear-gradient(145deg, #1a3d1a 0%, #2E7D32 40%, #1B5E20 70%, #0d3d0d 100%) !important;
	background-image: none !important;
	position: relative;
	overflow: hidden;
	border-top: 3px solid #4CAF50;
}

/* Subtle glossy overlay */
.h3footer::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 50%;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, transparent 100%);
	pointer-events: none;
}

/* Shimmer animation */
.h3footer::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 50%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.05), transparent);
	animation: footerShimmer 4s ease-in-out infinite;
	pointer-events: none;
}

@keyframes footerShimmer {
	0% {
		left: -100%;
	}

	50%,
	100% {
		left: 150%;
	}
}

.h3footer .footer-widget h3 {
	color: #ffffff !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.h3footer .footer-widget p,
.h3footer .footer-widget strong,
.h3footer .footer-widget span {
	color: rgba(255, 255, 255, 0.9) !important;
}

.h3footer .footer-widget a {
	color: rgba(255, 255, 255, 0.9) !important;
	transition: all 0.3s ease;
}

.h3footer .footer-widget a:hover {
	color: #C8E6C9 !important;
	text-decoration: none;
}

.h3footer .footer-social a {
	background: rgba(255, 255, 255, 0.15) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.3) !important;
	transition: all 0.3s ease;
}

.h3footer .footer-social a:hover {
	background: #F06292 !important;
	/* Pink Background - Same as Header */
	color: #ffffff !important;
	/* White Icon */
	transform: translateY(-3px) scale(1.1);
	box-shadow: 0 5px 15px rgba(240, 98, 146, 0.4);
	border-color: #F06292 !important;
}

.h3footer .footer-copyr {
	border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
	margin-top: 20px;
	padding-top: 20px;
}

.h3footer .footer-copyr p,
.h3footer .footer-copyr a {
	color: rgba(255, 255, 255, 0.8) !important;
}

/* ===== LARGER USER PROFILE IN PROPERTY CARDS ===== */
.card-footer .d-flex .d-flex div[style*="width: 35px"],
.card-footer .d-flex .d-flex>div:first-child {
	width: 45px !important;
	height: 45px !important;
	min-width: 45px !important;
}

.card-footer .d-flex .d-flex img {
	width: 45px !important;
	height: 45px !important;
}

.header-style-3 {
	background-color: transparent !important;
	position: relative;
	z-index: 9999 !important;
	/* Ensure header is above all content */
	padding: 0 !important;
}

.waisaka-header-container {
	/* Main Header Background: WHITE */
	background: #ffffff !important;
	background-color: #ffffff !important;
	border-bottom-left-radius: 50% 40px !important;
	border-bottom-right-radius: 50% 40px !important;
	border-radius: 0 !important;
	/* Reset shorthand */
	padding: 0 0 30px 0 !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
	position: relative;
	display: flex;
	flex-direction: column !important;
	justify-content: center;
	align-items: center;
	/* Ensures child elements clip to curved border radius - DISABLED to allow dropdowns */
	overflow: visible !important;
}

/* Hide Mobile Toggle on Desktop */
@media (min-width: 992px) {
	.waisaka-mobile-toggle {
		display: none !important;
	}
}

.waisaka-header-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 0 40px;
	margin-top: 15px;
	/* Lowered Position */
}

/* Top Accent Line: Mix of Black -> Brown -> Green - REMOVED */
.waisaka-header-container::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: none !important;

	display: none;
}

/* LOGO STYLING - FIXED SIZE CONTAINER */
.waisaka-logo {
	background: transparent !important;
	position: relative;
	margin-left: 0 !important;
	/* Align Left */
	/* Fixed container for logo */
	width: 200px;
	min-width: 200px;
	max-width: 200px;
	display: flex;
	align-items: center;
	overflow: hidden;
}

.waisaka-logo img {
	-webkit-filter: none !important;
	filter: none !important;
	height: 50px;
	max-height: 50px;
	width: auto;
	max-width: 100%;
	object-fit: contain;
	object-position: left center;
}

/* Menu Links - BROWN TEXT, TRANSPARENT BG, TEXT SHADOW, LEAF HOVER */
.waisaka-menu-link,
.waisaka-menu-item>a.waisaka-menu-link {
	color: #160800 !important;
	/* Brown Text */
	font-family: "Poppins", sans-serif;
	font-weight: 600 !important;
	font-size: 12px !important;
	text-transform: uppercase;
	padding: 8px 10px;
	border-radius: 15px 0 15px 0 !important;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.15) !important;
	/* Text Shadow */
	transition: all 0.3s ease;
	opacity: 1 !important;
	visibility: visible !important;
	display: flex !important;
	align-items: center !important;
	gap: 4px;
	background: transparent !important;
	/* Transparent Background */
	border: none !important;
	/* No Border */
	margin: 0 2px;
	box-shadow: none;
	white-space: nowrap;
	position: relative;
	overflow: visible !important;

}

/* Search Wrapper Styling - Brown Border */
.waisaka-search-wrapper {
	border: 2px solid #160800 !important;
}

/* Arrow icon - Brown by default */
.waisaka-menu-link i {
	color: #160800 !important;
	font-size: 12px;
	margin-left: 5px;
	transition: color 0.3s ease;
}

/* Hover State - Green leaf background, white text and arrow */
.waisaka-menu-link:hover,
.waisaka-menu-item.active .waisaka-menu-link {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 50%, #2E7D32 100%) !important;
	/* Green Leaf Background */
	color: #ffffff !important;
	/* White Text on Hover */
	border: none !important;
	box-shadow: 0 4px 15px rgba(46, 125, 50, 0.4);
	text-shadow: none !important;
	border-radius: 0 15px 0 15px !important;
}

/* Arrow icon turns white on hover */
.waisaka-menu-link:hover i,
.waisaka-menu-item.active .waisaka-menu-link i {
	color: #ffffff !important;
}

/* CTA BUTTON - MATCH MENU SIZE */
.waisaka-cta-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 16px;
	background: linear-gradient(135deg, #388E3C 0%, #1B5E20 100%) !important;
	color: #fff !important;
	font-weight: 600;
	font-size: 12px;
	border-radius: 0 15px 0 15px !important;
	box-shadow: 0 4px 10px rgba(46, 125, 50, 0.4);
	transition: all 0.3s ease;
	white-space: nowrap;
	text-transform: uppercase;
}

.waisaka-cta-btn:hover {
	transform: translateY(-2px) scale(1.02);
	box-shadow: 0 6px 15px rgba(40, 167, 69, 0.4);
	border-radius: 15px 0 15px 0 !important;
	color: #fff !important;
	opacity: 1 !important;
}

/* Description Petal */
.description-petal {
	width: 280px !important;
	text-align: center;
	border-top: 4px solid #66BB6A !important;
	border-radius: 0 20px 20px 20px !important;
	background-color: #ffffff !important;
}

.lotus-petal-bg {
	background: #ffffff !important;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 0 20px 20px 20px !important;

}

.menu-description-content {
	position: relative;

}

.menu-desc-text {
	font-size: 14px;
	color: #160800 !important;
	margin-bottom: 15px;
	font-style: italic;
	font-weight: 500;
}

.btn-lotus-readmore {
	display: inline-block;
	padding: 8px 20px;
	background-color: #fff;
	color: #2E7D32 !important;
	border: 1px solid #2E7D32 !important;
	border-radius: 20px;
	font-size: 13px;
	font-weight: 600;
}

.btn-lotus-readmore:hover {
	background: linear-gradient(135deg, #388E3C 0%, #1B5E20 100%) !important;
	/* Glossy Green Background */
	color: #ffffff !important;
	/* White Text */
	border: 1px solid #2E7D32 !important;
	box-shadow: 0 4px 10px rgba(46, 125, 50, 0.4);
}

/* Dropdown General */
.waisaka-dropdown {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 99999 !important;
	/* Very high z-index to appear above everything */
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	border: 2px solid #66BB6A !important;
	/* Green Leaf Border */
	border-radius: 50px 0 50px 0 !important;
	background: linear-gradient(to bottom right, #ffffff, #f1f8e9) !important;
	padding: 25px !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
	transition: all 0.3s ease;
	overflow: hidden;
}

.waisaka-dropdown-row,
.waisaka-dropdown-list,
.waisaka-dropdown-title-link {
	position: relative !important;
	z-index: 100000 !important;
	/* Even higher for nested content */
}

.waisaka-dropdown-title-link {
	color: #160800 !important;
	border-bottom: 2px solid #66BB6A !important;
	display: inline-block;
	margin-bottom: 15px;
	padding-bottom: 5px;
	font-weight: 700;
	text-align: center;
	width: 100%;
}

.waisaka-dropdown-title-link i {
	color: #66BB6A !important;
	margin-right: 5px;
	transition: color 0.3s ease;
}

.waisaka-dropdown-title-link:hover {
	color: #E91E63 !important;
	/* Dark Pink */
	border-bottom-color: #E91E63 !important;
}

.waisaka-dropdown-title-link:hover i {
	color: #F06292 !important;
	/* Pink */
}

.waisaka-dropdown-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.waisaka-dropdown-list li {
	margin-bottom: 10px;
	text-align: center;
}

.waisaka-dropdown-list li a {
	color: #160800 !important;
	/* Revert to Brown */
	font-size: 14px;
	font-weight: 500;
	display: block;
	transition: all 0.3s ease;
	text-align: center;
	padding: 5px 10px;
	border-radius: 8px;
}

.waisaka-dropdown-list li a:hover {
	color: #160800 !important;
	/* Dark Chocolate Brown */
	background: linear-gradient(135deg, #a5d6a7 0%, #66bb6a 100%) !important;
	/* Green BG */
	box-shadow: 0 4px 10px rgba(76, 175, 80, 0.2);
	border-radius: 15px 0 15px 0 !important;
	transform: translateX(5px) !important;
}

.waisaka-dropdown-list li a:hover i {
	color: #ffffff !important;
}

.waisaka-dropdown-sm .waisaka-dropdown-list li a:hover i {
	color: #28a745 !important;
}

.waisaka-dropdown-list li a i {
	color: #66BB6A !important;
	margin-right: 5px;
	width: 20px;
	text-align: center;
	display: inline-block !important;
}

/* Global Button Overrides */
.btn-success,
.btn-primary {
	background: transparent !important;
	border: 2px solid #160800 !important;
	color: #000 !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	font-weight: 700 !important;
	text-transform: uppercase;
}

.btn-success:hover,
.btn-primary:hover {
	background: linear-gradient(135deg, #388E3C 0%, #1B5E20 100%) !important;
	color: #fff !important;
	border-color: transparent !important;
	border-radius: 20px 0 20px 0 !important;
	transform: translateY(-2px);
	box-shadow: 0 6px 15px rgba(40, 167, 69, 0.4);
	opacity: 1;
}

/* Horizontal Dropdowns */
.waisaka-dropdown-sm {
	min-width: 500px !important;
	left: 50% !important;
	transform: translateX(-50%) translateY(10px) !important;
}

.waisaka-dropdown-sm .waisaka-dropdown-list {
	display: flex !important;
	flex-direction: row !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 20px !important;
	flex-wrap: nowrap !important;
}

.waisaka-dropdown-sm .waisaka-dropdown-list li {
	margin-bottom: 0 !important;
	padding: 0;
	border-right: 1px solid #eee;
	white-space: nowrap;
}

.waisaka-dropdown-sm .waisaka-dropdown-list li a {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	background: transparent !important;
	padding: 15px 20px !important;
	border-radius: 15px 0 15px 0 !important;
	border: none !important;
	box-shadow: none !important;
}

.waisaka-dropdown-sm .waisaka-dropdown-list li a:hover {
	background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%) !important;
	transform: translateY(-3px) !important;
	box-shadow: 0 4px 15px rgba(40, 167, 69, 0.2) !important;
}

.waisaka-dropdown-sm .waisaka-dropdown-list li a i {
	margin: 0 0 8px 0 !important;
	font-size: 28px !important;
	width: auto !important;
	display: inline-block !important;
	color: #28a745 !important;
}

.waisaka-dropdown-sm .waisaka-dropdown-list li a:hover i {
	color: #1e7e34 !important;
	transform: scale(1.1);
}

.waisaka-dropdown-sm .waisaka-dropdown-list li:last-child {
	border-right: none;
}

.waisaka-dropdown-lotus:not(.waisaka-dropdown-sm) {
	min-width: 650px !important;
}

.waisaka-menu-item:hover .waisaka-dropdown,
.waisaka-menu-item.active .waisaka-dropdown {
	transform: translateX(-50%) translateY(0) !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

.waisaka-dropdown-row {
	display: flex !important;
	justify-content: center !important;
	gap: 40px;
}

.waisaka-dropdown-col {
	width: 200px;
}

/* Links & Cursor */
a.read-post,
a.view-more,
.katalog-layanan .volbox a {
	background: transparent !important;
	color: #000 !important;
	border: 2px solid #160800 !important;
	box-shadow: none !important;
	transition: all 0.3s ease;
	border-radius: 6px !important;
	display: inline-block;
	padding: 10px 20px;
	text-decoration: none;
	font-weight: 700;
	text-transform: uppercase;
}

a.read-post:hover,
a.view-more:hover,
.katalog-layanan .volbox a:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%) !important;
	color: #fff !important;
	border-color: transparent !important;
	transform: translateY(-3px);
	box-shadow: 0 8px 20px rgba(52, 199, 89, 0.4);
	border-radius: 20px 0 20px 0 !important;
	/* Leaf Shape on Hover */
}

/* Also ensure global btn-success/primary match this if they are used as leaves */
.btn-success,
.btn-primary {
	background: transparent !important;
	border: 2px solid #160800 !important;
	color: #000 !important;
	border-radius: 6px !important;
	box-shadow: none !important;
}

.btn-success:hover,
.btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 15px rgba(40, 167, 69, 0.4);
	opacity: 0.9;
	border-radius: 0 20px 0 20px !important;
	/* REVERSE LEAF HOVER */
}

/* Footer */
footer,
.footer-widgets,
.footer-bottom {
	background: linear-gradient(135deg, #1a3c34 0%, #2d5a4e 100%) !important;
	position: relative;
}

footer::before,
.footer-widgets::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #28a745, #66BB6A, #28a745);

}

footer h3,
footer h4,
footer h5,
.footer-widgets h3,
.footer-widgets h4 {
	color: #66BB6A !important;
}

footer p,
footer a,
footer li,
.footer-widgets p,
.footer-widgets a {
	color: #c8e6c9 !important;
}

footer a:hover,
.footer-widgets a:hover {
	color: #fff !important;
}

/* Nav Utils */
.waisaka-menu {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	align-items: center;
}

.waisaka-menu-item {
	margin-left: 5px;
	position: relative;
}

/* Fix: Hide Mobile Menu on Desktop */
@media (min-width: 992px) {
	.waisaka-mobile-menu {
		display: none !important;
	}
}

/* Restored Button Styles from Index - TRANSPARENT with GREEN HOVER */
.btn-home {
	text-decoration: none;
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
	border: none !important;
	border-radius: 0 15px 0 15px !important;
	background: transparent !important;
	/* Transparent Background for Tabs */
	color: #160800 !important;
	padding: 8px 25px;
	margin: 0 5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: none;
	position: relative;
	overflow: visible !important;
	font-weight: 600;
}

/* New Class for Green Buttons (Filter & Search) */
.btn-green-solid {
	text-decoration: none;
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
	border: none !important;
	border-radius: 0 15px 0 15px !important;
	background: linear-gradient(135deg, #388E3C 0%, #1B5E20 100%) !important;
	color: #ffffff !important;
	padding: 8px 25px;
	margin: 0 5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 10px rgba(46, 125, 50, 0.4);
	position: relative;
	overflow: visible !important;
	font-weight: 600;
}

.btn-green-solid:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%) !important;
	color: #ffffff !important;
	transform: translateY(-2px) scale(1.05) !important;
	box-shadow: 0 6px 16px rgba(40, 167, 69, 0.5);
	border-radius: 15px 0 15px 0 !important;
}

/* Hover State - Lighter Green, Scale Effect */
/* Only applies to transparent btn-home now */
.btn-home.active,
.btn-home:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%) !important;
	color: #ffffff !important;
	font-weight: bold;
	border: none !important;
	box-shadow: 0 6px 16px rgba(40, 167, 69, 0.5);
	border-radius: 15px 0 15px 0 !important;
	transform: translateY(-2px) scale(1.05) !important;
}

/* ENHANCED FLOWER CURSOR - Longer Stem with Small Right Leaves */
a,
button,
.btn,
[role='button'],
.waisaka-menu-link,
.waisaka-menu-item,
.waisaka-dropdown-list li a,
nav a,
nav li,
input[type='submit'],
.btn-home,
img,
.waisaka-logo,
body {
	cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3C!-- Long Stem --%3E%3Cpath d='M24,18 Q25,24 26,30 Q27,36 28,42' stroke='%234CAF50' stroke-width='2.5' fill='none'/%3E%3C!-- Small Right Leaves --%3E%3Cpath d='M25,22 Q27,23 28,24' fill='%2381C784' stroke='%234CAF50' stroke-width='0.5'/%3E%3Cpath d='M26,28 Q28,29 29,30' fill='%2366BB6A' stroke='%234CAF50' stroke-width='0.5'/%3E%3Cpath d='M27,34 Q29,35 30,36' fill='%2381C784' stroke='%234CAF50' stroke-width='0.5'/%3E%3C!-- Flower Petals (Pink) --%3E%3Cellipse cx='24' cy='10' rx='4' ry='7' fill='%23F48FB1' stroke='%23F06292' stroke-width='1' transform='rotate(0 24 18)'/%3E%3Cellipse cx='24' cy='10' rx='4' ry='7' fill='%23F48FB1' stroke='%23F06292' stroke-width='1' transform='rotate(72 24 18)'/%3E%3Cellipse cx='24' cy='10' rx='4' ry='7' fill='%23F48FB1' stroke='%23F06292' stroke-width='1' transform='rotate(144 24 18)'/%3E%3Cellipse cx='24' cy='10' rx='4' ry='7' fill='%23F48FB1' stroke='%23F06292' stroke-width='1' transform='rotate(216 24 18)'/%3E%3Cellipse cx='24' cy='10' rx='4' ry='7' fill='%23F48FB1' stroke='%23F06292' stroke-width='1' transform='rotate(288 24 18)'/%3E%3C!-- Flower Center (Yellow) --%3E%3Ccircle cx='24' cy='18' r='4' fill='%23FFEB3B' stroke='%23FDD835' stroke-width='1'/%3E%3C!-- Center Details --%3E%3Ccircle cx='23' cy='17' r='1' fill='%23FBC02D' opacity='0.7'/%3E%3Ccircle cx='25' cy='17' r='1' fill='%23FBC02D' opacity='0.7'/%3E%3Ccircle cx='24' cy='19' r='1' fill='%23FBC02D' opacity='0.7'/%3E%3C/svg%3E") 24 24, auto !important;
}

/* Search Input Styling */
#location.form-control {
	border-radius: 30px 0 30px 0 !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
	border: none !important;
	padding-left: 20px;
	background: #ffffff !important;
	color: #160800 !important;
}

#location.form-control::placeholder {
	color: #999 !important;
}



/* TOP BAR STYLES - Desktop: Social + Store, Mobile: Logo Centered */
.waisaka-top-bar {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 8px 40px;
	margin-bottom: 0;
	background: #000000;
	border-bottom: none;
}

/* Responsive Visibility Classes */
.desktop-only {
	display: flex !important;
}

.mobile-only {
	display: none !important;
}

@media (max-width: 991px) {
	.desktop-only {
		display: none !important;
	}

	.mobile-only {
		display: flex !important;
	}

	/* Mobile: Center the top bar content */
	.waisaka-top-bar {
		justify-content: center;
		padding: 10px 15px;
	}
}

/* Top Bar Logo - For Mobile Centered View */
.top-bar-logo {
	display: flex;
	justify-content: center;
	align-items: center;
}

.top-bar-logo-img {
	height: 45px;
	width: auto;
	max-height: 50px;
	transition: all 0.3s ease;
}

.top-bar-logo-img:hover {
	transform: scale(1.05);
	opacity: 0.9;
}

/* Mobile Menu Header Store Buttons (Expanded State) */
.store-btn.expanded {
	width: auto !important;
	justify-content: flex-start !important;
	padding-right: 14px !important;
	background: #ffffff !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
	border: 1px solid #e0e0e0 !important;
}

.store-btn.expanded .store-text {
	opacity: 1 !important;
	max-width: 200px !important;
	display: inline-block !important;
	color: #333 !important;
}

/* Ensure icons fit well */
.store-btn.expanded .store-icon {
	width: 20px !important;
	height: 20px !important;
}

/* Adjust header spacing for buttons */
.mobile-menu-store-buttons {
	display: flex;
	gap: 8px;
	align-items: center;
}

/* STORE BUTTONS STYLES - Brighton.co.id Inspired */
.top-left {
	display: flex;
	align-items: center;
	gap: 12px;
}

.download-text {
	font-size: 0.85rem;
	color: #fff;
	font-weight: 500;
	letter-spacing: 0.3px;
}

.store-buttons {
	display: flex;
	gap: 8px;
}

.store-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 36px;
	height: 36px;
	background: #ffffff;
	border-radius: 8px;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, 0.3);
	padding: 6px 6px 6px 12px;
	overflow: hidden;
	white-space: nowrap;
}

.store-btn:hover {
	width: auto;
	justify-content: flex-start;
	padding-right: 14px;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.store-icon {
	width: 22px;
	height: 22px;
	object-fit: contain;
	transition: all 0.3s ease;
	flex-shrink: 0;
}

.store-text {
	font-size: 0.75rem;
	font-weight: 600;
	color: #333;
	opacity: 0;
	max-width: 0;
	overflow: hidden;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.store-btn:hover .store-text {
	opacity: 1;
	max-width: 200px;
}

.header-social a {
	color: #fff !important;
	margin-left: 15px;
	font-size: 14px;
	transition: all 0.3s ease;
	opacity: 0.8;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	width: 30px;
	height: 30px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

.header-social a:hover,
.footer-social a:hover {
	background: #F06292 !important;
	/* Pink Background */
	color: #ffffff !important;
	/* White Icon */
	opacity: 1;
	transform: scale(1.1);
	border-color: #F06292 !important;
}

.header-social a:hover i,
.footer-social a:hover i {
	color: #ffffff !important;
}

/* Footer Social Icons - Ensure Circular Shape */
.footer-social a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	margin-right: 5px;
	transition: all 0.3s ease;
	color: #fff !important;
}

/* Search Section Background - Promo Banner Image */
.donation-join {
	background-color: transparent !important;
	padding: 0 !important;
	margin: -10px 0 50px 0;
	border-radius: 0 0 30px 30px;
	box-shadow: none;
	position: relative;
	overflow: hidden;
}

/* Button spacing utilities */
.mb-2 {
	margin-bottom: 5px;
}

/* Apply Filter Button */
.btn-apply-filter {
	height: 45px;
	font-size: 1.2rem;
	font-weight: 600;
}

/* Promo Banner Image */
.promo-banner-img {
	position: relative;
	width: 100%;
	height: auto;
	display: block;

}

/* Search Container Wrapper */
.search-main-container {
	position: relative;
	text-align: center;
	padding: 20px;
	margin-top: -280px;
}

/* Search Content Wrapper */
.search-container-responsive {
	border: 2px solid rgba(255, 255, 255, 0.3) !important;
	border-radius: 20px !important;
	padding: 25px !important;
	background: rgba(255, 255, 255, 0.15) !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

/* Search page specific wrapper */
.search-page-wrapper {
	width: 75%;
	margin: auto;
}

/* Filter collapse card */
.filter-collapse-card {
	max-height: 250px;
}

/* Wind Breeze Effect for Search Section - DISABLED for promo banner visibility */
.donation-join::before {
	display: none;
}

/* Second Wind Wave for Search - DISABLED for promo banner visibility */
.donation-join::after {
	display: none;
}

/* Target the specific ROW inside donation-join */
.donation-join .container .row {
	background-color: transparent !important;
	background: transparent !important;
	padding: 20px;
	width: 100%;
	margin: 0 auto;
}

/* Search Bar Wrapper Container - Minimal Glassmorphism for Promo Visibility */
.donation-join .container .row .col-sm-12>div {
	border: 2px solid rgba(255, 255, 255, 0.3) !important;
	border-radius: 20px !important;
	padding: 25px !important;
	background: rgba(255, 255, 255, 0.02) !important;
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

/* Quick Menu Icon Gradients */
.quick-menu-icon-blue {
	background: linear-gradient(135deg, #3F51B5, #303F9F) !important;
}

.quick-menu-icon-purple {
	background: linear-gradient(135deg, #9C27B0, #7B1FA2) !important;
}

.quick-menu-icon-lightblue {
	background: linear-gradient(135deg, #4285F4, #1976D2) !important;
}

.quick-menu-icon-green {
	background: linear-gradient(135deg, #4CAF50, #388E3C) !important;
}

.quick-menu-icon-brown {
	background: linear-gradient(135deg, #8D6E63, #6D4C41) !important;
}

.quick-menu-icon-cyan {
	background: linear-gradient(135deg, #00BCD4, #0097A7) !important;
}

.quick-menu-icon-orange {
	background: linear-gradient(135deg, #FF9800, #F57C00) !important;
}

.quick-menu-icon-red {
	background: linear-gradient(135deg, #F44336, #D32F2F) !important;
}

/* Blog section utilities */
.bg-white-rounded {
	background-color: white;
	padding-top: 20px;
	padding-bottom: 20px;
	border-radius: 5px;
}

/* Search Input Box - White with Green Border */
#location.form-control,
.donation-join input.form-control {
	border: 2px solid #4CAF50 !important;
	border-radius: 12px !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
	padding: 12px 20px;
	background: #ffffff !important;
	color: #333 !important;
	font-size: 15px;
	transition: all 0.3s ease;
}

#location.form-control:focus,
.donation-join input.form-control:focus {
	border-color: #2E7D32 !important;
	box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.25), 0 4px 15px rgba(0, 0, 0, 0.15);
	outline: none;
}

#location.form-control::placeholder {
	color: #888 !important;
}

/* Filter Button - Leaf Shape (matching Search button) */
.donation-join .btn-home[data-toggle="collapse"] {
	background: linear-gradient(135deg, #388E3C 0%, #1B5E20 100%) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 30px 0 30px 0 !important;
	/* Leaf shape */
	padding: 10px 24px !important;
	box-shadow: 0 4px 12px rgba(46, 125, 50, 0.4);
	font-weight: 600;
	transition: all 0.3s ease;
}

/* Main Search Button - Green Leaf Hover Effect with Flip */
#btnMainSearch {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #28a745 0%, #20c997 100%) !important;
	border: none !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	padding: 0.65rem 1.5rem !important;
	border-radius: 0 15px 0 15px !important;
	box-shadow: 0 3px 8px rgba(40, 167, 69, 0.3) !important;
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55) !important;
}

#btnMainSearch::before {
	content: '🍃';
	position: absolute;
	font-size: 1.2rem;
	opacity: 0;
	transform: translateY(20px) rotate(-45deg);
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

#btnMainSearch:hover {
	transform: translateY(-2px) scale(1.05) !important;
	box-shadow: 0 6px 16px rgba(40, 167, 69, 0.5) !important;
	background: linear-gradient(135deg, #20c997 0%, #28a745 100%) !important;
	border-radius: 15px 0 15px 0 !important;
}

#btnMainSearch:hover::before {
	opacity: 1;
	transform: translateY(-30px) translateX(40px) rotate(15deg);
	animation: leafFloat 1.5s ease-in-out infinite;
}

@keyframes leafFloat {

	0%,
	100% {
		transform: translateY(-30px) translateX(40px) rotate(15deg);
	}

	50% {
		transform: translateY(-35px) translateX(45px) rotate(20deg);
	}
}

/* Filter Button - Identical to Search Button */
.donation-join .btn-home[data-toggle="collapse"] {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #28a745 0%, #20c997 100%) !important;
	border: none !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	padding: 0.65rem 1.25rem !important;
	border-radius: 15px 0 15px 0 !important;
	box-shadow: 0 3px 8px rgba(40, 167, 69, 0.3) !important;
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55) !important;
}

.donation-join .btn-home[data-toggle="collapse"]::before {
	content: '🍃';
	position: absolute;
	font-size: 1.2rem;
	opacity: 0;
	transform: translateY(20px) rotate(-45deg);
	transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

/* Filter Button Hover - Same as Search Button */
.donation-join .btn-home[data-toggle="collapse"]:hover {
	transform: translateY(-2px) scale(1.05) !important;
	box-shadow: 0 6px 16px rgba(40, 167, 69, 0.5) !important;
	background: linear-gradient(135deg, #20c997 0%, #28a745 100%) !important;
	border-radius: 0 15px 0 15px !important;
}

.donation-join .btn-home[data-toggle="collapse"]:hover::before {
	opacity: 1;
	transform: translateY(-30px) translateX(40px) rotate(15deg);
	animation: leafFloat 1.5s ease-in-out infinite;
}

/* Filter Form Fields - Leaf Theme Border */
.donation-join .collapse .form-control,
.donation-join .collapse select.form-control,
.donation-join .collapse input.form-control,
#collapseExample .form-control,
#collapseExample select,
#collapseExample input {
	background: #ffffff !important;
	color: #160800 !important;
	border: 1px solid #4CAF50 !important;
	/* Green leaf border */
	border-radius: 8px !important;
	font-size: 14px;
	transition: all 0.3s ease;
}

/* Filter Form Fields Focus State */
.donation-join .collapse .form-control:focus,
#collapseExample .form-control:focus,
#collapseExample select:focus,
#collapseExample input:focus {
	border-color: #2E7D32 !important;
	box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.2) !important;
	outline: none;
}

#collapseExample .form-control::placeholder,
.donation-join .collapse input::placeholder {
	color: #999 !important;
}

/* Filter Form Card - Clean Compact Layout */
#collapseExample .card.card-body,
#collapseExample .card-body,
.collapse .card.card-body {
	background: #ffffff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 8px !important;
	padding: 8px !important;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
	max-height: 280px !important;
}

/* Filter Form Row - NO Gaps */
#collapseExample .row,
#collapseExample .card-body>.row,
#collapseExample .card.card-body .row {
	margin: 0 -2px !important;
	padding: 0 !important;
	gap: 0 !important;
	row-gap: 0 !important;
}

/* Filter Form Columns - Minimal Padding */
#collapseExample .col-lg-6,
#collapseExample .col-lg-12,
#collapseExample .col-sm-12,
#collapseExample [class*="col-"] {
	padding: 1px 2px !important;
	margin: 0 !important;
	min-height: 0 !important;
}

/* Input Fields & Groups - MARGIN TOP 6px (User Request) */
.donation-join #collapseExample .card.card-body .row .col-lg-6 .input-group.mb-3,
.donation-join #collapseExample .card.card-body .row .col-lg-12 .input-group.mb-3,
.donation-join #collapseExample .card.card-body .row .col-sm-12 .input-group.mb-3,
#collapseExample .row>div>.input-group.mb-3,
#collapseExample .row>.col-lg-6>.input-group.mb-3,
#collapseExample .row>.col-lg-12>.input-group.mb-3,
#collapseExample .mb-3,
.collapse .mb-3,
#collapseExample .input-group.mb-3,
#collapseExample .input-group,
.collapse .input-group {
	margin-bottom: 0px !important;
	margin-top: 6px !important;
	/* EXACT 6px TOP MARGIN */
	padding: 0 !important;
	align-items: center;
}

/* Input Group Text (Icon) - Taller */
#collapseExample .input-group-prepend .input-group-text {
	background: #f5f5f5 !important;
	background: #f5f5f5 !important;
	border: none !important;
	border-right: none !important;
	color: #160800 !important;
	font-weight: 600;
	min-width: 45px;
	justify-content: center;
	padding: 0 10px !important;
	font-size: 14px !important;
	height: 60px !important;
	line-height: normal !important;
}

/* Form Controls (Inputs/Selects) - Taller */
#collapseExample .input-group .form-control,
#collapseExample select.form-control,
#collapseExample input.form-control {
	border-left: none !important;
	height: 60px !important;
	/* Force TALLER height */
	font-size: 14px !important;
	padding: 2px 12px !important;
	line-height: normal !important;
	min-height: 60px !important;
}

/* Apply Filter Button - Full Width - Minimal Margin */
#collapseExample .d-grid,
#collapseExample .col-lg-12 .d-grid {
	margin-top: 5px !important;
	margin-bottom: 0 !important;
}

#collapseExample #applyFilter {
	width: 100%;
	height: 40px !important;
	padding: 4px 15px !important;
	border-radius: 30px 0 30px 0 !important;
	font-size: 13px !important;
}

/* ------------------------------------------------------------------ */
/* PROPERTY DETAIL PAGE REDESIGN - MATCHING REFERENCE IMAGE           */
/* Maintains green/brown theme from header design                     */
/* ------------------------------------------------------------------ */

/* 0. Inner Header - Minimal Height, No Blur */
.donation-join~.inner-header,
section.inner-header {
	min-height: 40px !important;
	max-height: 60px !important;
	padding: 20px 0 !important;
	background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
	background-image: none !important;
}

.donation-join~.inner-header::before,
section.inner-header::before {
	display: none !important;
}

/* Share Buttons Section - Better Positioning */
.donation-join .d-flex.justify-content-end {
	margin-bottom: 20px !important;
	padding: 15px;
	background: #f8f9fa;
	border-radius: 8px;
	gap: 10px;
}

.donation-join .d-flex.justify-content-end .btn {
	padding: 10px 20px;
	font-weight: 500;
	transition: all 0.3s ease;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.donation-join .d-flex.justify-content-end .btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* For Sell/Rent Badge on Image - Green Theme */
.badge-sell,
.donation-join .top-right-badge .badge-sell {
	background: linear-gradient(135deg, #388E3C 0%, #2E7D32 100%) !important;
	color: #fff !important;
	padding: 8px 15px !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	text-transform: uppercase;
	box-shadow: 0 2px 8px rgba(46, 125, 50, 0.3);
	margin-right: 10px;
}

/* Status Badge (Terjual) - Red Theme */
.badge-status,
.donation-join .top-right-badge .badge-status {
	background: linear-gradient(135deg, #D32F2F 0%, #B71C1C 100%) !important;
	color: #fff !important;
	padding: 8px 15px !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	text-transform: uppercase;
	box-shadow: 0 2px 8px rgba(211, 47, 47, 0.3);
	margin-right: 15px;
}

/* 1. Agent Sidebar & Cards - Proper Layout (like novak_old) */
.property-agent-card {
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
	margin-bottom: 20px;
	overflow: hidden;
}

/* Inner cards styling */
.property-agent-card>.card-body>.card {
	border: none;
	box-shadow: none;
	margin-bottom: 0;
}

/* Agent Image Container - Remove Fixed Height from Card */
.property-agent-card .card.text-start {
	height: auto !important;
	overflow: visible !important;
}

/* KPR Calculator Form - Remove Green Borders */
#kprCalculatorForm .form-control,
#kprCalculatorForm .form-select,
#kprCalculatorForm .input-group-text,
#kprCalculatorForm .btn-outline-secondary {
	border-color: #ced4da !important;
}

#kprCalculatorForm .form-control:focus,
#kprCalculatorForm .form-select:focus {
	border-color: #86b7fe !important;
	box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25) !important;
}

/* Mobile Floating Contact Buttons */
.mobile-floating-contact {
	position: fixed;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%) scale(0.8);
	/* Scale down as requested "50%"-ish implies smaller */
	z-index: 9999;
	background: rgba(255, 255, 255, 0.95);
	padding: 8px 15px;
	border-radius: 50px;
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	display: flex;
	gap: 15px;
	white-space: nowrap;
}

.float-btn {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white !important;
	font-size: 20px;
	text-decoration: none;
	transition: transform 0.2s;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.float-btn:hover {
	transform: scale(1.1);
}

.phone-btn {
	background: linear-gradient(135deg, #424242 0%, #212121 100%);
}

.wa-btn {
	background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
}

/* Agent Image - Fixed Height & Cover */
.property-agent-card .card.text-start img.img-fluid {
	width: 100% !important;
	height: 300px !important;
	/* Set proper height for image */
	object-fit: cover !important;
	object-position: top center !important;
	border-radius: 8px 8px 0 0 !important;
	/* Rounded top only */
}

/* Agent Card Body - Ensure padding */
.property-agent-card .card.text-start .card-body {
	padding: 15px !important;
	background: #fff;
}

/* General Card Style for Map, KPR cards */
.donation-join .col-lg-4>.card {
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
	margin-bottom: 20px;
	margin-top: 15px;
}

/* Agent Contact Buttons - Distinct Colors */

/* Call Button - Dark Theme */
.property-agent-card .d-grid .btn-outline-dark {
	background: linear-gradient(135deg, #343a40 0%, #212529 100%) !important;
	border: none !important;
	color: #fff !important;
	border-radius: 8px !important;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 8px !important;
	text-transform: none !important;
	padding: 10px 15px;
	transition: all 0.3s ease;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.property-agent-card .d-grid .btn-outline-dark:hover {
	background: #000000 !important;
	transform: translateY(-2px);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* Whatsapp Button - Green Theme */
.property-agent-card .d-grid .btn-outline-success {
	background: linear-gradient(135deg, #388E3C 0%, #2E7D32 100%) !important;
	border: none !important;
	color: #fff !important;
	border-radius: 8px !important;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 8px !important;
	text-transform: none !important;
	padding: 10px 15px;
	transition: all 0.3s ease;
	box-shadow: 0 4px 6px rgba(46, 125, 50, 0.2);
}

.property-agent-card .d-grid .btn-outline-success:hover {
	background: linear-gradient(135deg, #2E7D32 0%, #1B5E20 100%) !important;
	transform: translateY(-3px);
	box-shadow: 0 6px 15px rgba(46, 125, 50, 0.5);
}

/* Override View More Button to be standard shape and uppercase */
a.view-more {
	border-radius: 6px !important;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 0.5px;
}

/* Map Card - Earth Tone Style */
.map-card {
	border: none !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
	border-radius: 8px !important;
	overflow: hidden;
}

.map-card .card-header {
	background: #160800 !important;
	/* Brown/Earth Gradient */
	color: #fff !important;
	font-weight: 600;
	padding: 12px 20px;
	border-bottom: none;
	display: flex;
	align-items: center;
	gap: 10px;
}

.map-card .card-header i {
	color: #ffffff !important;
	/* White icon color */
}

/* FIX MENU DISPLAY - FORCE ABSOLUTE & HIGH Z-INDEX */
.waisaka-dropdown,
.waisaka-dropdown-menu,
.dropdown-menu {
	position: absolute !important;
	top: 100%;
	left: 0;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

/* Ensure Parent allows overflow & Stacks Above Content */
.waisaka-header-container,
.header-style-3 {
	overflow: visible !important;
	position: relative !important;
	/* Ensure header is above page content */
}



/* 2. Main Content & Headers - Dark titles */
.donation-join h1,
.donation-join h2,
.donation-join h3,
.donation-join h4,
.donation-join h5,
.donation-join h6 {
	color: #333 !important;
	font-family: "Poppins", sans-serif;
}

/* Badge with Theme Colors */
.donation-join .badge.bg-gray {
	background: linear-gradient(135deg, #388E3C, #2E7D32) !important;
	color: #fff !important;
	border: none;
	font-weight: 500;
	font-size: 12px;
	padding: 6px 12px;
	border-radius: 4px;
}

#price,
#prices {
	color: #2E7D32 !important;
	font-weight: 700;
}

/* 3. Slider & Images */
.donation-join .mainSwiper {
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 10px !important;
}

/* Thumbnails - Green Active Border */
.donation-join .thumbSwiper .swiper-slide {
	opacity: 0.3;
	transition: all 0.3s;
	border: 2px solid transparent;
	border-radius: 4px;
	overflow: hidden;
}

.donation-join .thumbSwiper .swiper-slide-thumb-active {
	opacity: 1;
	border: 2px solid #388E3C !important;
}

/* 4. Share Buttons - Theme Colors */
.donation-join .d-flex.justify-content-end .btn-success {
	background: linear-gradient(135deg, #388E3C 0%, #2E7D32 100%) !important;
	border: none !important;
	border-radius: 8px !important;
}

.donation-join .d-flex.justify-content-end .btn-primary {
	background: #1877F2 !important;
	border: none !important;
	border-radius: 8px !important;
}

/* 5. Specification Section */
.donation-join .table-borderless td {
	padding: 8px 5px !important;
	vertical-align: middle;
	color: #555;
}

.donation-join .detail-icon {
	color: #388E3C !important;
	width: 20px;
	text-align: center;
}

/* 6. KPR Calculator Card */
.donation-join #kprCalculatorForm .form-label {
	font-size: 12px;
	color: #666;
}

.donation-join #kprCalculatorForm .form-control,
.donation-join #kprCalculatorForm .form-select {
	font-size: 13px;
	border-radius: 4px;
	border: 1px solid #ddd;
}

.donation-join #kprCalculatorForm .btn-primary {
	background: linear-gradient(135deg, #388E3C 0%, #2E7D32 100%) !important;
	border: none;
	border-radius: 8px !important;
	font-size: 13px;
	padding: 10px 0;
}

.donation-join #kprResult strong {
	color: #333;
}

/* Map Card Header */
.donation-join .card-header {
	background: linear-gradient(135deg, #388E3C 0%, #2E7D32 100%) !important;
	color: #fff !important;
	font-weight: 600;
	border-radius: 8px 8px 0 0 !important;
}

/* "FOR SELL/RENT" Badge on Image */
.donation-join .top-right-badge span {
	border-radius: 4px;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
}

/* Fasilitas Card */
.donation-join .card:not(.property-agent-card) .card-body {
	padding: 15px;
}

/* =========================================
   PROPERTY CARD CONTACT BUTTONS (BOX SHAPE)
   ========================================= */
.btn-card-wa {
	background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 4px !important;
	/* BOX SHAPE */
	font-weight: 600;
	box-shadow: 0 2px 5px rgba(37, 211, 102, 0.3);
	transition: all 0.3s ease;
}

.btn-card-wa:hover {
	background: linear-gradient(135deg, #128C7E 0%, #075E54 100%) !important;
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(37, 211, 102, 0.4);
	color: #fff !important;
}

.btn-card-call {
	background: linear-gradient(135deg, #495057 0%, #212529 100%) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 4px !important;
	/* BOX SHAPE */
	font-weight: 600;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease;
}

.btn-card-call:hover {
	background: #000000 !important;
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
	color: #fff !important;
}

/* ------------------------------------------------------------------ */
/* Property Card Layout Stabilization */
/* ------------------------------------------------------------------ */

/* Force exactly 3 columns on desktop without squeezed margins */
@media (min-width: 992px) {

	.about .row>.col-lg-4,
	.search-row .row>.col-lg-4 {
		flex: 0 0 33.333333% !important;
		max-width: 33.333333% !important;
		width: 33.333333% !important;
		padding: 10px !important;
	}
}

.about .card,
.search-row .card {
	width: 100% !important;
	min-width: 250px !important;
	/* Prevents card from getting too narrow */
	margin-bottom: 20px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	transition: transform 0.3s ease;
}

.about .card:hover,
.search-row .card:hover {
	transform: translateY(-5px);
}

.about .card-img-top,
.search-row .card-img-top {
	height: 200px !important;
	object-fit: cover !important;
	width: 100% !important;
}

/* Ensure the price stays at the bottom and doesn't push the card height unevenly */
.about .card-body,
.search-row .card-body {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

/* ===== HOMEPAGE QUICK MENU ICON GRID (99.co Style) ===== */
.quick-menu-section {
	padding: 30px 0;
	background: #ffffff;
	margin-top: -90px;
}

.quick-menu-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	max-width: 900px;
	margin: 0 auto;
}

.quick-menu-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px 10px;
	background: #ffffff;
	border-radius: 16px;
	text-decoration: none;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	transition: all 0.3s ease;
	border: 1px solid #f0f0f0;
}

.quick-menu-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
	border-color: transparent;
}

.quick-menu-icon {
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	margin-bottom: 12px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.quick-menu-icon i {
	color: #ffffff;
	font-size: 26px;
}

.quick-menu-item span {
	font-size: 13px;
	font-weight: 600;
	color: #333;
	text-align: center;
	line-height: 1.3;
}

/* Responsive: Tablet (3 columns) */
@media (max-width: 768px) {
	.quick-menu-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
		padding: 0 15px;
	}

	.quick-menu-item {
		padding: 15px 8px;
	}

	.quick-menu-icon {
		width: 50px;
		height: 50px;
	}

	.quick-menu-icon i {
		font-size: 22px;
	}

	.quick-menu-item span {
		font-size: 11px;
	}
}

/* Responsive: Mobile (4 columns, smaller) */
@media (max-width: 480px) {
	.quick-menu-section {
		padding: 20px 0;
	}

	.quick-menu-grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 10px;
		padding: 0 10px;
	}

	.quick-menu-item {
		padding: 12px 5px;
	}

	.quick-menu-icon {
		width: 45px;
		height: 45px;
		border-radius: 12px;
	}

	.quick-menu-icon i {
		font-size: 18px;
	}

	.quick-menu-item span {
		font-size: 10px;
	}
}

/* ===== FOOTER - BROWN WOOD THEME (Seperti Search Section) ===== */
footer.h3footer,
footer.h3footer.wf100,
.h3footer.wf100,
body footer.h3footer {
	background: #000000 !important;
	background-color: #000000 !important;
	background-image: none !important;
	border-top: 4px solid #333 !important;
	position: relative;
	overflow: hidden;
}

/* Wind Breeze Effect - Animated Shimmer */
footer.h3footer::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 60%;
	height: 100%;
	background: linear-gradient(90deg,
			transparent 0%,
			rgba(255, 255, 255, 0.03) 20%,
			rgba(255, 255, 255, 0.08) 50%,
			rgba(255, 255, 255, 0.03) 80%,
			transparent 100%);
	animation: windBreeze 6s ease-in-out infinite;
	pointer-events: none;
}

/* Second Wave for More Natural Wind Effect */
footer.h3footer::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 40%;
	height: 100%;
	background: linear-gradient(90deg,
			transparent 0%,
			rgba(255, 255, 255, 0.02) 30%,
			rgba(255, 255, 255, 0.05) 50%,
			rgba(255, 255, 255, 0.02) 70%,
			transparent 100%);
	animation: windBreeze 8s ease-in-out 2s infinite;
	pointer-events: none;
}

@keyframes windBreeze {
	0% {
		left: -100%;
		opacity: 0;
	}

	10% {
		opacity: 1;
	}

	90% {
		opacity: 1;
	}

	100% {
		left: 150%;
		opacity: 0;
	}
}

/* ===== SEARCH TAB (JUAL, SEWA, KONTRAKTOR) - WHITE TEXT ===== */
.btn-home,
.donation-join .btn-home,
.btn-group .btn-home,
a.btn-home {
	color: #ffffff !important;
}

.btn-home.active,
.btn-home:hover {
	color: #ffffff !important;
}

footer.h3footer .footer-widget,
footer.h3footer .footer-widget h3,
footer.h3footer .container {
	position: relative;
}

footer.h3footer h3,
footer.h3footer .footer-widget h3 {
	color: #ffffff !important;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

footer.h3footer p,
footer.h3footer a,
footer.h3footer span,
footer.h3footer strong,
footer.h3footer li,
footer.h3footer .pdate {
	color: rgba(255, 255, 255, 0.95) !important;
}

footer.h3footer a:hover {
	color: #A5D6A7 !important;
}

footer.h3footer .footer-social a {
	background: rgba(255, 255, 255, 0.2) !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, 0.4) !important;
}

footer.h3footer .footer-social a:hover {
	background: #F06292 !important;
	/* Pink Background - Same as Header */
	color: #ffffff !important;
	/* White Icon */
	transform: translateY(-3px) scale(1.1);
	box-shadow: 0 5px 15px rgba(240, 98, 146, 0.4);
	border-color: #F06292 !important;
}

/* ===== LARGER USER PROFILE & BUTTONS IN PROPERTY WIDGETS ===== */
/* User Profile Photo - 48px */
.card-footer .d-flex>.d-flex>div:first-child,
.card-footer div[style*="width: 35px"],
.card .card-footer div[style*="35px"] {
	width: 48px !important;
	height: 48px !important;
	min-width: 48px !important;
	min-height: 48px !important;
}

.card-footer .d-flex img,
.card-footer div[style*="35px"] img {
	width: 48px !important;
	height: 48px !important;
}

/* Larger WhatsApp & Hubungi Buttons */
.btn-card-wa,
.btn-card-call,
.card-footer .btn-xs,
a.btn.btn-xs.btn-card-wa,
a.btn.btn-xs.btn-card-call {
	padding: 6px 12px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	border-radius: 6px !important;
}

.btn-card-wa,
a.btn.btn-card-wa {
	background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important;
	color: #ffffff !important;
	border: none !important;
}

.btn-card-wa:hover {
	background: linear-gradient(135deg, #128C7E 0%, #075E54 100%) !important;
	transform: translateY(-1px);
}

.btn-card-call,
a.btn.btn-card-call {
	background: linear-gradient(135deg, #2E7D32 0%, #1B5E20 100%) !important;
	color: #ffffff !important;
	border: none !important;
}

.btn-card-call:hover {
	background: linear-gradient(135deg, #1B5E20 0%, #0d3d0d 100%) !important;
	transform: translateY(-1px);
}

/* ===== USER PROFILE - SQUARE SHAPE WITH STRETCH IMAGE ===== */
.card-footer .d-flex>.d-flex>div:first-child,
.card-footer div[style*="width: 35px"],
.card .card-footer div[style*="35px"] {
	width: 50px !important;
	height: 50px !important;
	min-width: 50px !important;
	min-height: 50px !important;
	border-radius: 8px !important;
	overflow: hidden;
}

.card-footer .d-flex img,
.card-footer div[style*="35px"] img {
	width: 100% !important;
	height: 100% !important;
	border-radius: 8px !important;
	object-fit: cover !important;
	/* Cover to prevent distortion */
	object-position: center !important;
}

/* Agent Name - Smaller Font */
.card-footer .d-flex small {
	font-size: 9px !important;
}

.card-footer .d-flex span.d-block.text-truncate {
	font-size: 11px !important;
	font-weight: 600 !important;
}

/* WhatsApp & Hubungi Buttons - Move Up Slightly */
.card-footer .d-flex.flex-column {
	margin-top: -5px !important;
	gap: 3px !important;
}

/* ===== MOBILE SUBMENU - LEAF HOVER EFFECT ===== */
.mobile-dropdown-menu li a {
	transition: all 0.3s ease;
	border-radius: 0;
}

.mobile-dropdown-menu li a:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #2E7D32 100%) !important;
	color: #ffffff !important;
	border-radius: 20px 0 20px 0 !important;
	/* Leaf shape */
	padding-left: 20px !important;
}

/* Submenu Title Styling */
.mobile-submenu-title {
	color: #160800 !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 8px 15px !important;
	background: #f5f5f5;
	border-radius: 0 15px 0 15px !important;
	/* Leaf shape */
	margin: 5px 0 !important;
}

/* ===== HAMBURGER MENU USER PHOTO - SQUARE ===== */
.waisaka-mobile-menu img,
.waisaka-mobile-menu-header img {
	border-radius: 8px !important;
	object-fit: cover !important;
	object-position: center !important;
}

/* ===== FOOTER MENU IMAGES - SQUARE ===== */
footer.h3footer .lastest-products li img,
.h3footer ul.lastest-products img {
	width: 60px !important;
	height: 60px !important;
	border-radius: 8px !important;
	object-fit: cover !important;
	object-position: center !important;
}

/* ===== AGENT PHOTO - FILL CONTAINER ===== */
.card-footer .d-flex>.d-flex>div:first-child,
.card-footer div[style*="width: 35px"],
.card .card-footer div[style*="35px"] {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.card-footer .d-flex img,
.card-footer div[style*="35px"] img {
	width: 100% !important;
	height: 100% !important;
	object-fit: fill !important;
	/* Fill entire container */
}

/* ===== ABOUT WAISAKA & BERITA TITLE - BLACK ===== */
.inner-header h1,
.inner-header .container h1,
section.inner-header h1 {
	color: #0D0D0D !important;
	text-shadow: none !important;
}

/* ===== DESKTOP SUBMENU - LEAF HOVER EFFECT ===== */
.waisaka-dropdown-list li a {
	transition: all 0.3s ease;
}

.waisaka-dropdown-list li a:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #2E7D32 100%) !important;
	color: #ffffff !important;
	border-radius: 20px 0 20px 0 !important;
	/* Leaf shape */
	padding-left: 20px;
}

/* Submenu Section Titles - Dijual/Disewakan */
.waisaka-dropdown-list .submenu-title {
	color: #160800 !important;
	font-weight: 700 !important;
	font-size: 11px !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 8px 12px !important;
	background: #f8f8f8;
	border-radius: 0 15px 0 15px !important;
	/* Leaf shape */
}

/* ===== PROPERTY DETAIL - CONTAINER FLUID WHITE ===== */
.property-detail .container-fluid,
.home.properti .container-fluid,
section.property-detail .container-fluid {
	background-color: #ffffff !important;
}

/* Property Detail Page Background */
.home.properti,
section.property-detail {
	background-color: #ffffff !important;
}

/* ===== FILTER SECTION - MINIMAL ICON & FIELD SPACING (1px) ===== */
.donation-join .collapse .fa,
.donation-join .collapse .fas,
.donation-join .collapse i {
	margin-right: 1px !important;
}

/* Property detail page background handled via inline style in blade file */

/* ===== FASILITAS TERDEKAT - 99.co STYLE ===== */
.fasilitas-99co-section {
	background: #ffffff;
	border-radius: 12px;
	padding: 25px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	margin-top: 20px;
}

.fasilitas-title {
	font-size: 20px;
	font-weight: 700;
	color: #1a365d;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.fasilitas-title i {
	color: #2E7D32;
}

/* Category Tabs */
.fasilitas-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;
	padding-bottom: 15px;
	border-bottom: 1px solid #e5e7eb;
}

.fasilitas-tab {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	background: #ffffff;
	color: #4b5563;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
}

.fasilitas-tab:hover {
	background: #f3f4f6;
	border-color: #2E7D32;
	color: #2E7D32;
}

.fasilitas-tab.active {
	background: linear-gradient(135deg, #2E7D32 0%, #1B5E20 100%);
	border-color: #2E7D32;
	color: #ffffff;
}

.fasilitas-tab i {
	font-size: 12px;
}

/* Facilities Content Grid */
.fasilitas-content {
	background: #fafafa;
	border-radius: 8px;
	padding: 15px;
}

.fasilitas-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

/* Individual Facility Item */
.fasilitas-grid>div,
.fasilitas-grid>p,
.fasilitas-grid li,
.fasilitas-content ul li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 15px;
	background: #ffffff;
	border-radius: 8px;
	border: 1px solid #e5e7eb;
	transition: all 0.2s ease;
}

.fasilitas-grid>div:hover,
.fasilitas-grid>p:hover,
.fasilitas-grid li:hover,
.fasilitas-content ul li:hover {
	border-color: #2E7D32;
	box-shadow: 0 2px 8px rgba(46, 125, 50, 0.15);
}

/* Facility Item - Name & Location */
.fasilitas-grid strong,
.fasilitas-grid b {
	color: #1a365d;
	font-weight: 600;
	font-size: 14px;
}

.fasilitas-grid small,
.fasilitas-grid span.location {
	color: #6b7280;
	font-size: 12px;
	display: block;
	margin-top: 2px;
}

/* Distance Badge */
.fasilitas-grid .distance,
.fasilitas-grid span:last-child {
	background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
	color: #2E7D32;
	font-weight: 600;
	font-size: 12px;
	padding: 4px 10px;
	border-radius: 12px;
	white-space: nowrap;
}

/* List Style Override */
.fasilitas-content ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

.fasilitas-content ul li::before {
	display: none;
}

/* Responsive */
/* Category Block Styling - Plain Text */
.fasilitas-category-block {
	background: transparent;
	border-radius: 0;
	padding: 0;
	margin-bottom: 20px;
	border: none;
}

.fasilitas-category-header {
	font-weight: 700;
	color: #2E7D32;
	font-size: 15px;
	margin-bottom: 8px;
	padding-bottom: 0;
	border-bottom: none;
	display: flex;
	align-items: center;
	gap: 8px;
}

.fasilitas-category-header i {
	color: #2E7D32;
}

/* Plain Text Display - Horizontal */
.fasilitas-text {
	font-size: 14px;
	color: #374151;
	line-height: 1.8;
}

.fasilitas-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.fasilitas-list .fasilitas-item {
	padding: 6px 0;
	margin-bottom: 4px;
	background: transparent;
	border: none;
	border-radius: 0;
	font-size: 14px;
	color: #374151;
	line-height: 1.6;
}

.fasilitas-list .fasilitas-item::before {
	content: "• ";
	color: #2E7D32;
	font-weight: bold;
}

.fasilitas-list .fasilitas-item:hover {
	color: #2E7D32;
}

/* Responsive */
@media (max-width: 768px) {
	.fasilitas-tabs {
		overflow-x: auto;
		flex-wrap: nowrap;
		padding-bottom: 10px;
	}

	.fasilitas-tab {
		flex-shrink: 0;
		font-size: 12px;
		padding: 6px 12px;
	}

	.fasilitas-grid,
	.fasilitas-content ul {
		grid-template-columns: 1fr;
	}

	.fasilitas-category-block {
		padding: 12px;
	}
}

/* ===== AI INSIGHT BADGE ===== */
.ai-insight-badge {
	display: inline-block;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: #ffffff;
	font-size: 10px;
	font-weight: 600;
	padding: 3px 8px;
	border-radius: 12px;
	margin-right: 8px;
	vertical-align: middle;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.ai-insight-badge i {
	margin-right: 3px;
	font-size: 9px;
}

/* ===== MAP CARD - PETA LOKASI RIGHT ALIGN ===== */
.map-card .card-header {
	text-align: right !important;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 8px;
}

/* =========================================
   PROMO BANNER SHIMMER EFFECT
   ========================================= */
.promo-banner-wrapper {
	position: relative;
	overflow: hidden;
	width: 100%;
	display: block;
}

.promo-banner-wrapper::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 80%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
	animation: footerShimmer 6s ease-in-out infinite;
	pointer-events: none;
	transform: skewX(-20deg);
	z-index: 2;
}

/* KPR Input Responsive Width */
.kpr-input-dp {
	max-width: 90px;
}

@media (max-width: 991px) {
	.kpr-input-dp {
		max-width: none !important;
		flex: 0 0 auto !important;
		width: 60px !important;
	}
}

/* LEAF HOVER KEYFRAMES */
@keyframes leafSway {
	0% {
		transform: rotate(0deg);
	}

	25% {
		transform: rotate(3deg);
	}

	75% {
		transform: rotate(-3deg);
	}

	100% {
		transform: rotate(0deg);
	}
}

/* LEAF HOVER STYLE FOR FAVORITE & SHARE BUTTONS */
.btn-leaf-hover {
	transition: all 0.3s ease;
	overflow: hidden;
	/* For border radius animation */
	z-index: 100;
	/* Ensure button clickable */
}

.btn-leaf-hover:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%) !important;
	color: #ffffff !important;
	border-color: transparent !important;
	border-radius: 15px 0 15px 0 !important;
	/* Leaf Shape */
	box-shadow: 0 4px 15px rgba(46, 125, 50, 0.3) !important;
	transform: translateY(-2px);
}

.btn-leaf-hover:hover i {
	color: #ffffff !important;
	animation: leafSway 0.5s ease-in-out;
}

/* PROPERTY SUBMENU HOVER - WATER LEAF STYLE */
/* PROPERTY SUBMENU HOVER - GREEN LEAF STYLE (MATCH MENU) */
.waisaka-dropdown-col .waisaka-dropdown-list li a:hover {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 50%, #2E7D32 100%) !important;
	/* Green Leaf Gradient */
	color: #ffffff !important;
	/* White Text */
	border-radius: 15px 0 15px 0 !important;
	/* Leaf Shape */
	box-shadow: 0 4px 15px rgba(46, 125, 50, 0.4) !important;
	transform: translateY(-2px) !important;
}

.waisaka-dropdown-col .waisaka-dropdown-list li a:hover i {
	color: #ffffff !important;
	/* White Icon on Green BG */
}

/* ========================================
   FIX: Remove any black background on menu hover
   Ensuring consistent green leaf hover styling
   ======================================== */

/* Force transparent background for menu items - no black bg */
.waisaka-menu-item,
.waisaka-menu-item.has-dropdown,
.waisaka-menu-item.has-dropdown.active {
	background: transparent !important;
	background-color: transparent !important;
}

/* Force green gradient hover for menu links - override any black */
.waisaka-menu-link:hover,
.waisaka-menu-item.active>.waisaka-menu-link,
.waisaka-menu-item:hover>.waisaka-menu-link {
	background: linear-gradient(135deg, #4CAF50 0%, #388E3C 50%, #2E7D32 100%) !important;
	background-color: transparent !important;
	color: #ffffff !important;
	border: none !important;
	box-shadow: 0 4px 15px rgba(46, 125, 50, 0.4) !important;
}

/* Dropdown container - ensure white/light-green bg not black */
.waisaka-dropdown,
.waisaka-dropdown-lotus {
	background: linear-gradient(to bottom right, #ffffff, #f1f8e9) !important;
	background-color: #ffffff !important;
}