/* ==========================================================================
   EstateNest — Directorist skin (property portal look)
   ========================================================================== */

.directorist-container,
.directorist-container-fluid {
	--directorist-color-primary: var(--en-primary);
	--directorist-color-dark: var(--en-ink);
	--directorist-color-body: var(--en-text);
	--directorist-color-border: var(--en-line);
	font-family: var(--en-font-body);
}
.en-directorist-container { max-width: calc(var(--en-container) + var(--en-gutter) * 2); padding-inline: var(--en-gutter); }

/* Headings inside Directorist use the body font for a clean, app-like UI. */
.directorist-container h1,
.directorist-container h2,
.directorist-container h3,
.directorist-container h4 { font-family: var(--en-font-body); letter-spacing: -.01em; }

/* Buttons */
.directorist-btn {
	border-radius: 999px !important;
	font-weight: 700 !important;
	transition: transform .2s var(--en-ease), box-shadow .2s var(--en-ease), background-color .2s !important;
}
.directorist-btn-primary:hover,
.directorist-btn.directorist-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 8px 18px color-mix(in srgb, var(--en-primary) 30%, transparent); }

/* ---------- Search form (hero) ---------- */
.directorist-search-contents { padding: 0 !important; background: none !important; }
.directorist-search-form__box {
	border-radius: 18px !important;
	border: 0 !important;
	box-shadow: var(--en-shadow-lg) !important;
	padding: 10px !important;
	background: var(--en-white) !important;
}
.directorist-search-form__top { gap: 4px; }
.directorist-search-form .directorist-search-field input,
.directorist-search-form .directorist-search-field select { border: 0; box-shadow: none; font-weight: 500; }
.directorist-search-form-action .directorist-btn,
.directorist-search-form__box .directorist-btn-search,
.directorist-search-form-action__submit .directorist-btn {
	min-height: 54px; padding-inline: 28px !important;
	background: var(--en-primary) !important; border-color: var(--en-primary) !important; color: #fff !important;
}
.directorist-listing-type-selection {
	display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px !important;
	border: 0 !important; padding: 0 !important; background: none !important;
}
.directorist-listing-type-selection a {
	display: inline-block;
	border-radius: 999px !important; padding: 9px 20px !important;
	background: rgb(255 255 255 / 88%) !important; color: var(--en-ink) !important;
	font-weight: 700; text-decoration: none; border: 0 !important;
}
.directorist-listing-type-selection a.directorist-listing-type-selection__link--current,
.directorist-listing-type-selection a:hover { background: var(--en-primary) !important; color: #fff !important; }
.directorist-listing-type-selection a::after,
.directorist-listing-type-selection a::before { display: none !important; }

.directorist-search-contents .directorist-listing-category-top {
	margin-top: 22px;
}
.directorist-search-contents .directorist-listing-category-top ul { gap: 8px; justify-content: flex-start; }
.directorist-search-contents .directorist-listing-category-top li a {
	border-radius: 999px !important; background: rgb(255 255 255 / 92%) !important;
	box-shadow: none !important; color: var(--en-ink) !important; padding: 8px 16px !important;
}

/* ---------- Archive toolbar ---------- */
.directorist-archive-contents { padding-block: 32px 64px; }
.directorist-header-bar { border-radius: var(--en-radius); }
.directorist-listings-header {
	padding: 14px 18px !important; margin-bottom: 22px !important;
	border: 1px solid var(--en-line); border-radius: var(--en-radius); background: var(--en-white);
}
.directorist-listings-header__left .directorist-header-found-title { font-weight: 700; color: var(--en-ink); }

/* Sidebar filters */
.directorist-advanced-filter,
.directorist-search-form-sidebar,
.directorist-archive-sidebar .directorist-search-form {
	border-radius: var(--en-radius) !important;
	border: 1px solid var(--en-line) !important;
	box-shadow: none !important;
}

/* ---------- Property cards ---------- */
.directorist-listing-single {
	border-radius: var(--en-radius) !important;
	border: 1px solid var(--en-line) !important;
	box-shadow: none !important;
	overflow: hidden;
	background: var(--en-white) !important;
	transition: transform .25s var(--en-ease), box-shadow .25s var(--en-ease), border-color .25s !important;
}
.directorist-listing-single:hover {
	transform: translateY(-4px);
	border-color: transparent !important;
	box-shadow: var(--en-shadow-lg) !important;
}
.directorist-listing-single__thumb { border-radius: 0 !important; }
.directorist-listing-single__thumb img,
.directorist-thumnail-card { aspect-ratio: 3 / 2; object-fit: cover; }
.directorist-listing-single__thumb img { transition: transform .5s var(--en-ease); }
.directorist-listing-single:hover .directorist-listing-single__thumb img { transform: scale(1.04); }
.directorist-listing-single__content { padding: 18px 20px !important; }
.directorist-listing-single .directorist-listing-title {
	font-family: var(--en-font-body) !important;
	font-size: 1.08rem !important; font-weight: 700 !important; line-height: 1.35 !important;
}
.directorist-listing-single .directorist-listing-title a { color: var(--en-ink) !important; }
.directorist-listing-single .directorist-listing-title a:hover { color: var(--en-primary) !important; }
.directorist-listing-price {
	font-family: var(--en-font-display);
	font-size: 1.35rem !important; font-weight: 700 !important;
	color: var(--en-ink) !important;
}
.directorist-listing-single__meta { border-top: 1px dashed var(--en-line) !important; padding: 12px 20px !important; }
.directorist-listing-single__info--list li,
.directorist-listing-card-location { color: var(--en-muted) !important; font-size: .9rem; }

/* Badges */
.directorist-badge { border-radius: 6px !important; font-weight: 800 !important; letter-spacing: .04em; text-transform: uppercase; font-size: .68rem !important; }
.directorist-badge-featured { background: var(--en-accent) !important; color: var(--en-ink) !important; }
.directorist-badge-popular { background: var(--en-primary) !important; }

/* ---------- Single property ---------- */
.en-listing-single { padding-bottom: 64px; }
.en-listing-single__crumbs { padding-top: 22px; }
.directorist-single .directorist-single-wrapper { margin-top: 10px; }
.directorist-single-listing-header__title,
.directorist-single .directorist-listing-details__listing-title {
	font-family: var(--en-font-display) !important;
	font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.5rem) !important;
	letter-spacing: -.02em;
}
.directorist-single .directorist-card {
	border-radius: var(--en-radius) !important;
	border: 1px solid var(--en-line) !important;
	box-shadow: none !important;
}
.directorist-single .directorist-card__header { border-bottom: 1px solid var(--en-line) !important; }
.directorist-single .directorist-card__header__title { font-size: 1.1rem !important; font-weight: 700 !important; }
.directorist-single .directorist-single-info { padding-block: 10px; border-bottom: 1px dashed var(--en-line); }
.directorist-single .directorist-single-info:last-child { border-bottom: 0; }
.directorist-single .directorist-single-info__label { color: var(--en-muted) !important; font-weight: 600; }
.directorist-single .directorist-single-info__value { color: var(--en-ink) !important; font-weight: 700; }
.directorist-single-map,
.directorist-single .leaflet-container,
.directorist-single .directorist-single-map { border-radius: var(--en-radius); overflow: hidden; }
.directorist-single-listing-slider,
.directorist-single .directorist-slider { border-radius: var(--en-radius) !important; overflow: hidden; }

/* Contact owner sidebar card stays visible */
@media (min-width: 992px) {
	.directorist-single .directorist-sidebar,
	.directorist-single-wrapper .directorist-col-lg-4 > div:first-child { position: sticky; top: calc(var(--en-header-h) + 20px); }
}

/* ---------- Forms (add listing, login, dashboard) ---------- */
.directorist-add-listing-form .directorist-content-module,
.directorist-authentication,
.directorist-user-dashboard .directorist-user-dashboard__contents {
	border-radius: var(--en-radius) !important;
}
.directorist-form-element {
	border-radius: 10px !important;
}
.directorist-form-element:focus { border-color: var(--en-primary) !important; box-shadow: 0 0 0 4px color-mix(in srgb, var(--en-primary) 14%, transparent) !important; }

/* Category / location grids */
.directorist-categories .directorist-categories__single,
.directorist-taxonomy-list,
.directorist-location-single { border-radius: var(--en-radius) !important; }

/* Pagination */
.directorist-pagination .page-numbers { border-radius: 12px !important; }
.directorist-pagination .page-numbers.current { background: var(--en-ink) !important; border-color: var(--en-ink) !important; }

/* Directory tabs above archives (Buy / Rent) */
.directorist-type-nav__list li a { font-weight: 700; }

/* Sidebar widgets on single property */
.directorist-single .directorist-widget__header__title { font-family: var(--en-font-body) !important; font-size: 1.05rem !important; }
