/**
 * GeoDirectory places archive presentation.
 *
 * Applies to the GD Archive page and gd_place archive output only.
 */

:is(body.geodir-archive, body.post-type-archive-gd_place) {
	--cns-archive-green: #7cae15;
	--cns-archive-green-dark: #68980f;
	--cns-archive-header: #1a3a05;
	--cns-archive-text: #444;
	--cns-archive-muted: #888;
	--cns-archive-border: #eee;
	--cns-hero-search-field-h: 48px;
	--cns-hero-search-radius: 10px;
}

/* Page header */
:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-6924 .elementor-element.elementor-element-add602c {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 220px;
	background: var(--cns-archive-header) !important;
	text-align: center;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-6924 .elementor-element.elementor-element-add602c > .elementor-container {
	width: 100%;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-6924 .elementor-element.elementor-element-add602c :is(h1, .entry-title, .page-title, .elementor-heading-title) {
	margin: 0 0 8px;
	color: #fff !important;
	font-size: 38px !important;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-6924 .elementor-element.elementor-element-add602c :is(p, .archive-description, .elementor-widget-text-editor, .elementor-widget-text-editor p) {
	margin-top: 0;
	color: #fff !important;
	font-size: 16px !important;
	line-height: 1.55;
	text-align: center;
}

/* Admin hints — hidden for non-admins via body.cns-gd-hide-admin-hints */
body.cns-gd-hide-admin-hints :is(.geodir-loop-container, .geodir-page, #content) :is(.gd-info-notice, .geodir-info, .alert-info),
body.cns-gd-hide-admin-hints :is(.geodir-loop-container, .geodir-page) .alert.alert-info {
	display: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place).logged-in:not(.cns-gd-hide-admin-hints) .geodir-loop-container :is(.gd-info-notice, .geodir-info) {
	margin: 0 0 16px !important;
	padding: 10px 14px 10px 12px !important;
	color: #555 !important;
	background: #fff !important;
	border: 1px solid #eee !important;
	border-left: 4px solid var(--cns-archive-green) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	font-size: 13px !important;
	line-height: 1.45;
}

/* :is(body.geodir-archive, body.post-type-archive-gd_place).logged-in:not(.cns-gd-hide-admin-hints) .geodir-loop-container :is(.gd-info-notice, .geodir-info) a {
	color: var(--cns-archive-green) !important;
	font-weight: 600;
	text-decoration: none !important;
} */

:is(body.geodir-archive, body.post-type-archive-gd_place).logged-in:not(.cns-gd-hide-admin-hints) .geodir-loop-container :is(.gd-info-notice, .geodir-info) :is(h2, h3, strong, b) {
	color: #444 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}

/* Match the standard BuddyBoss directory/sidebar frame used on Location. */
:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar.elementor-template-full-width .site-content {
	padding-right: 30px !important;
	padding-left: 30px !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar.elementor-template-full-width .site-content > .container {
	width: 100%;
	max-width: 1200px !important;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px !important;
	padding-left: 10px !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar .site-content-grid {
	display: flex;
	flex-flow: row wrap;
	align-items: start;
}

:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar #primary.cns-gd-directory-main {
	flex: 1 1 calc(100% - 300px);
	width: 100%;
	max-width: 900px;
	min-width: 0;
}

:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar #secondary.cns-gd-directory-sidebar {
	flex: 0 0 300px;
	width: 100%;
	max-width: 300px;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-directory-layout {
	display: flex;
	align-items: flex-start;
	gap: 28px;
	width: 100%;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-directory-main {
	flex: 1 1 auto;
	min-width: 0;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-directory-sidebar {
	flex: 0 0 300px;
	width: 300px;
	min-width: 0;
	margin: 0;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-widget-wp-widget-gd_search,
:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-widget-wp-widget-gd_search > .elementor-widget-container {
	position: relative;
	z-index: 20;
	overflow: visible !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container {
	box-sizing: border-box;
	width: 100% !important;
	margin-bottom: 16px !important;
	padding: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
	overflow: visible !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.geodir-search-form-wrapper, form.geodir-listing-search) {
	width: 100% !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search {
	display: flex !important;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0.65rem;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search > :is(.gd-search-field-search:not(:has(.geodir_submit_search)), .gd-search-field-near) {
	flex: 1 1 12rem;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search > .gd-search-field-search:has(.geodir_submit_search),
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search > .gd-search-field-search-filters {
	flex: 0 0 var(--cns-hero-search-field-h);
	width: var(--cns-hero-search-field-h) !important;
	max-width: var(--cns-hero-search-field-h) !important;
	margin: 0 !important;
	padding: 0 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search :is(.input-group-inside, .form-group) {
	position: relative;
	width: 100%;
	margin-bottom: 0 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search .input-group-inside {
	display: block;
	z-index: 1;
	height: var(--cns-hero-search-field-h) !important;
	min-height: var(--cns-hero-search-field-h) !important;
	max-height: var(--cns-hero-search-field-h) !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search .input-group-inside:has(.show) {
	z-index: 10051;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.form-control.search_text, .form-control.gd_search_text, .form-control.snear) {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	height: var(--cns-hero-search-field-h) !important;
	min-height: var(--cns-hero-search-field-h) !important;
	max-height: var(--cns-hero-search-field-h) !important;
	padding: 0 1rem 0 2.65rem !important;
	color: #34443a !important;
	background-color: #fff !important;
	border: 1px solid #d8e2d4 !important;
	border-radius: var(--cns-hero-search-radius) !important;
	box-shadow: none !important;
	font-size: 0.875rem !important;
	line-height: 1.25 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.form-control.search_text, .form-control.gd_search_text, .form-control.snear)::placeholder {
	color: #87927f !important;
	opacity: 1;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.form-control.search_text, .form-control.gd_search_text, .form-control.snear):focus {
	color: #34443a !important;
	background-color: #fff !important;
	border-color: var(--cns-archive-green) !important;
	box-shadow: 0 0 0 0.2rem rgba(124, 174, 21, 0.18) !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.input-group-text, .geodir-search-input-label, .geodir-search-input-label i) {
	color: #87927f !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .input-group-inside > .input-group-text {
	position: absolute !important;
	top: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	z-index: 4 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 2.5rem !important;
	min-width: 2.5rem !important;
	height: var(--cns-hero-search-field-h) !important;
	margin: 0 !important;
	padding: 0 0 0 0.15rem !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	pointer-events: none;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir_submit_search {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: var(--cns-hero-search-field-h) !important;
	min-width: var(--cns-hero-search-field-h) !important;
	height: var(--cns-hero-search-field-h) !important;
	min-height: var(--cns-hero-search-field-h) !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	background: var(--cns-archive-green) !important;
	border: 1px solid var(--cns-archive-green) !important;
	border-radius: var(--cns-hero-search-radius) !important;
	box-shadow: 0 8px 24px rgba(15, 24, 10, 0.18) !important;
	font-weight: 600 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir_submit_search:hover,
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir_submit_search:focus {
	background: var(--cns-archive-green-dark) !important;
	border-color: var(--cns-archive-green-dark) !important;
	box-shadow: 0 0 0 0.2rem rgba(124, 174, 21, 0.35) !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.gdas-search-suggestions, .gdlm-location-suggestions, .gd-suggestions-dropdown) {
	position: absolute !important;
	top: calc(100% + 2px) !important;
	right: 0 !important;
	left: 0 !important;
	z-index: 10050 !important;
	min-width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0.35rem 0 !important;
	background: #fff !important;
	border: 1px solid #e3ebe0 !important;
	border-radius: 10px !important;
	box-shadow: 0 12px 32px rgba(36, 53, 26, 0.14) !important;
	overflow: hidden;
	transform: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.gdas-search-suggestions, .gdlm-location-suggestions, .gd-suggestions-dropdown) :is(.list-group-item, li) {
	padding: 0.55rem 0.85rem !important;
	color: #2f4638 !important;
	background: transparent !important;
	border: 0 !important;
	font-size: 0.9rem !important;
	line-height: 1.35 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container :is(.gdas-search-suggestions, .gdlm-location-suggestions, .gd-suggestions-dropdown) :is(.list-group-item, li):hover {
	background: rgba(124, 174, 21, 0.12) !important;
}

/* Sort and layout actions */
:is(body.geodir-archive, body.post-type-archive-gd_place, body.geodir-page-search) .geodir-loop-actions-container > [role="toolbar"],
:is(body.geodir-archive, body.post-type-archive-gd_place, body.geodir-page-search) .wp-block-geodirectory-geodir-widget-loop-actions > [role="toolbar"],
:is(body.geodir-archive, body.post-type-archive-gd_place, body.geodir-page-search) .geodir-loop-actions-container .geodir-loop-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px;
	width: 100%;
	margin-bottom: 20px !important;
	padding: 10px 16px !important;
	background: #fff !important;
	border: 1px solid var(--cns-archive-border) !important;
	border-radius: 8px !important;
	box-shadow: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) :is(.geodir-tax-sort select, .geodir-loop-actions-container select, #geodir-sort-by) {
	height: 38px !important;
	min-height: 38px !important;
	padding: 8px 12px !important;
	color: #444 !important;
	background: #fff !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	font-size: 14px !important;
	line-height: 20px !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container .geodir-sort-by {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .gd-list-view-select .btn,
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container .btn-group:not(.geodir-sort-by) .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0 !important;
	color: var(--cns-archive-green) !important;
	background: #fff !important;
	border: 1px solid #d3e5b4 !important;
	box-shadow: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container .geodir-sort-by #geodir-sort-by {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: auto !important;
	min-width: 112px !important;
	padding: 8px 12px !important;
	border-color: #d3e5b4 !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container .geodir-sort-by #geodir-sort-by i {
	color: #7cae15 !important;
	font-size: 13px !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) :is(.gd-list-view-select .btn.active, .geodir-loop-actions-container .btn-group .btn.active, .geodir-loop-actions-container .btn-group .btn[aria-pressed="true"]) {
	color: var(--cns-archive-green) !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container :is(#geodir-sort-by, .gd-list-view-select-grid):hover,
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container :is(#geodir-sort-by, .gd-list-view-select-grid):focus,
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container :is(#geodir-sort-by, .gd-list-view-select-grid).show {
	color: #28491d !important;
	background: #f3f9e9 !important;
	border-color: var(--cns-archive-green) !important;
	box-shadow: 0 0 0 0.15rem rgba(124, 174, 21, 0.15) !important;
}

/* Listing grid and cards: assets/css/cns-gd-listing-cards.css */

/* Empty state */
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-container .geodir-info,
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-container .geodir-info .alert {
	grid-column: 1 / -1;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	grid-column: 1 / -1;
	width: 100%;
	min-height: 300px;
	padding: 44px 20px;
	text-align: center;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty__icon {
	margin-bottom: 16px;
	color: #ccc;
	font-size: 42px;
	line-height: 1;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty h2 {
	margin: 0 0 8px;
	color: #444;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty p {
	margin: 0 0 22px;
	color: #888;
	font-size: 15px;
	line-height: 1.5;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 24px;
	color: #fff !important;
	background: var(--cns-archive-green) !important;
	border: 1px solid var(--cns-archive-green) !important;
	border-radius: 8px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty__button:hover,
:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-archive-empty__button:focus {
	background: var(--cns-archive-green-dark) !important;
	border-color: var(--cns-archive-green-dark) !important;
}

/* Directory map */
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-archive-map-wrap,
:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-map-wrap {
	border: 2px dotted var(--cns-archive-green) !important;
	border-radius: 12px !important;
	overflow: hidden;
	box-sizing: border-box;
}

/* Pagination matches the location directory page. */
:is(body.geodir-archive, body.post-type-archive-gd_place) :is(.geodir-wgt-pagination, .gd-loop-paging, .geodir-loop-paging, .navigation.pagination, .aui-pagination) :is(.page-link, .page-numbers) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	min-height: 2.25rem;
	padding: 0.35rem 0.65rem !important;
	color: #2f4638 !important;
	background: #fff !important;
	border: 1px solid #d8e2d4 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	text-decoration: none !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) :is(.geodir-wgt-pagination, .gd-loop-paging, .geodir-loop-paging, .navigation.pagination, .aui-pagination) :is(.page-item.active .page-link, .page-item.active span.page-link, .page-numbers.current) {
	color: #fff !important;
	background: var(--cns-archive-green) !important;
	border-color: var(--cns-archive-green) !important;
}

:is(body.geodir-archive, body.post-type-archive-gd_place) :is(.geodir-wgt-pagination, .gd-loop-paging, .geodir-loop-paging, .navigation.pagination, .aui-pagination) :is(.page-item:not(.active) .page-link:hover, .page-item:not(.active) .page-link:focus, a.page-numbers:hover, a.page-numbers:focus) {
	color: #2f4638 !important;
	background: rgba(124, 174, 21, 0.18) !important;
	border-color: rgba(124, 174, 21, 0.45) !important;
}

@media (max-width: 767px) {
	:is(body.geodir-archive, body.post-type-archive-gd_place) .elementor-6924 .elementor-element.elementor-element-add602c :is(h1, .entry-title, .page-title, .elementor-heading-title) {
		font-size: 32px !important;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search {
		flex-direction: column;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir-search > .gd-search-field-search:has(.geodir_submit_search) {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-search-container .geodir_submit_search {
		max-width: 100% !important;
		width: 100% !important;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container > [role="toolbar"],
	:is(body.geodir-archive, body.post-type-archive-gd_place) .wp-block-geodirectory-geodir-widget-loop-actions > [role="toolbar"],
	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-actions-container .geodir-loop-actions {
		flex-wrap: wrap;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-container > .row,
	:is(body.geodir-archive, body.post-type-archive-gd_place) .geodir-loop-container .geodir-category-list-view {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 991px) {
	:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar.elementor-template-full-width .site-content {
		padding-right: 10px !important;
		padding-left: 10px !important;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar .site-content-grid {
		flex-direction: column;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar #primary.cns-gd-directory-main,
	:is(body.geodir-archive, body.post-type-archive-gd_place).has-sidebar #secondary.cns-gd-directory-sidebar {
		flex-basis: auto;
		width: 100%;
		max-width: none;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-directory-layout {
		flex-direction: column;
	}

	:is(body.geodir-archive, body.post-type-archive-gd_place) .cns-gd-directory-sidebar {
		flex-basis: auto;
		width: 100%;
	}
}
