/* HARCHI KOLO — regional search */
.hk-location-heading {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 22px 0 14px;
	padding: 14px 16px;
	border: 1px solid rgba(199, 154, 43, 0.28);
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(199, 154, 43, 0.08), rgba(18, 63, 47, 0.035));
}

.hk-location-heading__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #123f2f;
	box-shadow: 0 6px 16px rgba(18, 63, 47, 0.14);
}

.hk-location-heading__icon svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: #c79a2b;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.hk-location-heading__copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.hk-location-heading__copy strong {
	color: #123f2f;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
}

.hk-location-heading__copy small {
	color: rgba(18, 63, 47, 0.72);
	font-size: 13px;
	line-height: 1.45;
}

.hk-location-field .hp-field__label,
.hk-location-field .hp-form__label,
.hk-location-field > label {
	color: #123f2f;
	font-weight: 650;
}

.hk-location-field input,
.hk-location-field select,
.hk-location-field .select2-selection,
.hk-location-field .choices__inner {
	border-radius: 11px !important;
}

.hk-location-field input:focus,
.hk-location-field select:focus,
.hk-location-field .select2-container--focus .select2-selection,
.hk-location-field .select2-container--open .select2-selection {
	border-color: #c79a2b !important;
	box-shadow: 0 0 0 3px rgba(199, 154, 43, 0.12) !important;
	outline: none !important;
}

/* The catalog drawer already has its own shell; this subgroup remains subtle. */
.hp-form--listing-filter .hk-location-heading--filter {
	margin: 18px 0 12px;
	padding: 10px 12px;
	border-radius: 12px;
	background: rgba(18, 63, 47, 0.045);
}

.hp-form--listing-filter .hk-location-heading--filter .hk-location-heading__icon {
	flex-basis: 30px;
	width: 30px;
	height: 30px;
	box-shadow: none;
}

.hp-form--listing-filter .hk-location-heading--filter .hk-location-heading__icon svg {
	width: 16px;
	height: 16px;
}

.hp-form--listing-filter .hk-location-heading--filter .hk-location-heading__copy strong {
	font-size: 14px;
}

.hp-form--listing-filter .hk-location-heading--filter .hk-location-heading__copy small {
	font-size: 12px;
}

@media (max-width: 700px) {
	.hk-location-heading {
		gap: 10px;
		margin-top: 18px;
		padding: 12px 13px;
		border-radius: 12px;
	}

	.hk-location-heading__icon {
		flex-basis: 32px;
		width: 32px;
		height: 32px;
	}

	.hk-location-heading__copy strong {
		font-size: 14px;
	}

	.hk-location-heading__copy small {
		font-size: 12.5px;
	}
}

/* Core 1.8.71 — prominent desktop regional search in the catalog. */
.hk-regional-catalog {
	display: none;
}

@media (min-width: 701px) {
	.hk-catalog-page .hk-regional-catalog {
		display: grid;
		grid-template-columns: minmax(250px, 0.8fr) minmax(0, 1.65fr);
		align-items: center;
		gap: 24px;
		margin: 0 0 16px;
		padding: 18px 20px;
		position: relative;
		overflow: visible;
		background:
			linear-gradient(115deg, rgba(18, 63, 47, 0.055), rgba(255, 255, 255, 0.98) 42%, rgba(199, 154, 43, 0.055)),
			#ffffff;
		border: 1px solid rgba(18, 63, 47, 0.14);
		border-radius: 17px;
		box-shadow: 0 10px 28px rgba(18, 63, 47, 0.075);
	}

	.hk-catalog-page .hk-regional-catalog::before {
		content: '';
		position: absolute;
		inset: 0 auto 0 0;
		width: 4px;
		background: linear-gradient(180deg, #c79a2b 0%, #123f2f 100%);
	}

	.hk-regional-catalog__intro {
		display: flex;
		align-items: center;
		gap: 13px;
		min-width: 0;
	}

	.hk-regional-catalog__mark {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 44px;
		width: 44px;
		height: 44px;
		border-radius: 14px;
		border: 1px solid rgba(199, 154, 43, 0.34);
		background: linear-gradient(135deg, #fffdf7 0%, #f5eee0 100%);
		box-shadow:
			0 8px 18px rgba(18, 63, 47, 0.11),
			inset 0 1px 0 rgba(255, 255, 255, 0.72);
	}

	.hk-regional-catalog__mark svg {
		width: 22px;
		height: 22px;
		fill: none;
		stroke: #123f2f;
		stroke-width: 1.85;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.hk-regional-catalog__mark svg circle {
		fill: #c79a2b;
		stroke: none;
	}

	.hk-regional-catalog__copy {
		min-width: 0;
	}

	.hk-regional-catalog__eyebrow {
		display: block;
		margin-bottom: 3px;
		color: #9a7420;
		font-size: 10px;
		font-weight: 800;
		line-height: 1.2;
		letter-spacing: 0.13em;
	}

	.hk-regional-catalog__copy h2 {
		margin: 0;
		color: #123f2f;
		font-size: clamp(18px, 1.35vw, 22px);
		font-weight: 750;
		line-height: 1.2;
	}

	.hk-regional-catalog__copy p {
		margin: 5px 0 0;
		color: rgba(18, 63, 47, 0.68);
		font-size: 12.5px;
		line-height: 1.45;
	}

	.hk-regional-catalog__form {
		display: grid;
		grid-template-columns: minmax(190px, 0.9fr) minmax(220px, 1.05fr) auto;
		align-items: end;
		gap: 11px;
		margin: 0 !important;
	}

	.hk-regional-catalog__field {
		display: grid;
		gap: 6px;
		min-width: 0;
		margin: 0;
	}

	.hk-regional-catalog__field > span {
		color: #123f2f;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.2;
	}

	.hk-regional-catalog__field select,
	.hk-regional-catalog__field input[type='text'] {
		width: 100%;
		min-width: 0;
		height: 48px;
		min-height: 48px;
		margin: 0;
		padding: 0 14px;
		color: #123f2f;
		background: #ffffff;
		border: 1px solid rgba(18, 63, 47, 0.22);
		border-radius: 12px;
		box-shadow: 0 2px 7px rgba(18, 63, 47, 0.035);
		font-size: 14px;
		transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
	}

	.hk-regional-catalog__select-wrap {
		position: relative;
		display: block;
		width: 100%;
		min-width: 0;
	}

	.hk-regional-catalog__select-wrap select {
		appearance: none !important;
		-webkit-appearance: none !important;
		-moz-appearance: none !important;
		padding-right: 40px !important;
		background-image: none !important;
		cursor: pointer;
	}

	.hk-regional-catalog__select-wrap select::-ms-expand {
		display: none;
	}

	.hk-regional-catalog__select-arrow {
		position: absolute;
		top: 50%;
		right: 14px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 16px;
		height: 16px;
		transform: translateY(-50%);
		pointer-events: none;
		z-index: 3;
	}

	.hk-regional-catalog__select-arrow svg {
		display: block;
		width: 14px;
		height: 14px;
		fill: none !important;
		stroke: #123f2f !important;
		stroke-width: 1.8;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.hk-regional-catalog__field select:hover,
	.hk-regional-catalog__field input[type='text']:hover {
		border-color: rgba(18, 63, 47, 0.42);
	}

	.hk-regional-catalog__field select:focus,
	.hk-regional-catalog__field input[type='text']:focus {
		outline: none;
		border-color: #c79a2b;
		box-shadow: 0 0 0 3px rgba(199, 154, 43, 0.12);
	}

	.hk-regional-catalog__field input::placeholder {
		color: rgba(18, 63, 47, 0.46);
	}

	.hk-regional-catalog__actions {
		display: flex;
		align-items: center;
		gap: 9px;
		min-height: 48px;
	}

	.hk-regional-catalog__submit {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 7px;
		height: 48px;
		min-height: 48px;
		margin: 0;
		padding: 0 18px;
		color: #ffffff !important;
		-webkit-text-fill-color: #ffffff;
		background: #123f2f !important;
		border: 1px solid #123f2f !important;
		border-radius: 12px;
		box-shadow: 0 7px 16px rgba(18, 63, 47, 0.14);
		font-size: 13.5px;
		font-weight: 750;
		white-space: nowrap;
		cursor: pointer;
		transition: transform 0.16s ease, background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
	}

	.hk-regional-catalog__submit svg {
		width: 17px;
		height: 17px;
		fill: none;
		stroke: #c79a2b;
		stroke-width: 2;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.hk-regional-catalog__submit:hover {
		background: #0d3326 !important;
		border-color: #0d3326 !important;
		box-shadow: 0 9px 20px rgba(18, 63, 47, 0.18);
		transform: translateY(-1px);
	}

	.hk-regional-catalog__reset {
		height: 48px;
		min-height: 48px;
		margin: 0;
		padding: 0 4px;
		color: rgba(18, 63, 47, 0.72) !important;
		-webkit-text-fill-color: rgba(18, 63, 47, 0.72);
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		font-size: 12px;
		font-weight: 650;
		white-space: nowrap;
		text-decoration: underline;
		text-decoration-color: rgba(199, 154, 43, 0.55);
		text-underline-offset: 3px;
		cursor: pointer;
	}

	.hk-regional-catalog__reset:hover {
		color: #9a7420 !important;
		-webkit-text-fill-color: #9a7420;
	}

	.hk-regional-catalog__reset[hidden] {
		display: none !important;
	}
}

@media (min-width: 701px) and (max-width: 1120px) {
	.hk-catalog-page .hk-regional-catalog {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.hk-regional-catalog__form {
		grid-template-columns: minmax(180px, 0.9fr) minmax(210px, 1fr) auto;
	}
}

@media (max-width: 700px) {
	.hk-regional-catalog {
		display: none !important;
	}
}


/* Core 1.8.73 — visible listing location, sourced from the same regional fields. */
.hk-listing-location {
	box-sizing: border-box;
}

.hk-listing-location--card {
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	margin: 7px 0 1px;
	color: rgba(18, 63, 47, 0.76);
	font-size: 12.5px;
	font-weight: 650;
	line-height: 1.35;
}

.hk-listing-location__pin {
	flex: 0 0 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	color: #c79a2b;
}

.hk-listing-location__pin svg,
.hk-listing-location-panel__pin svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.hk-listing-location__text {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hk-listing-location-panel {
	margin: 18px 0 20px;
	padding: 16px 18px;
	background:
		linear-gradient(135deg, rgba(199, 154, 43, 0.06), transparent 42%),
		#ffffff;
	border: 1px solid rgba(18, 63, 47, 0.12);
	border-top: 2px solid rgba(199, 154, 43, 0.72);
	border-radius: 14px;
	box-shadow: 0 7px 22px rgba(18, 63, 47, 0.055);
}

.hk-listing-location-panel__head {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 13px;
}

.hk-listing-location-panel__pin {
	flex: 0 0 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 7px;
	color: #c79a2b;
	background: rgba(18, 63, 47, 0.055);
	border: 1px solid rgba(199, 154, 43, 0.3);
	border-radius: 50%;
}

.hk-listing-location-panel__head > div {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.hk-listing-location-panel__head strong {
	color: #123f2f;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
}

.hk-listing-location-panel__head small {
	color: rgba(18, 63, 47, 0.58);
	font-size: 11.5px;
	line-height: 1.35;
}

.hk-listing-location-panel__rows {
	display: grid;
	gap: 7px;
}

.hk-listing-location-panel__row {
	display: grid;
	grid-template-columns: minmax(120px, 0.42fr) minmax(0, 1fr);
	align-items: baseline;
	gap: 12px;
	padding-top: 7px;
	border-top: 1px solid rgba(18, 63, 47, 0.07);
}

.hk-listing-location-panel__row span {
	color: rgba(18, 63, 47, 0.58);
	font-size: 12px;
	font-weight: 650;
}

.hk-listing-location-panel__row strong {
	min-width: 0;
	color: #123f2f;
	font-size: 13.5px;
	font-weight: 750;
	word-break: break-word;
}

@media (max-width: 700px) {
	.hk-listing-location--card {
		margin-top: 5px;
		font-size: 12px;
	}

	.hk-listing-location-panel {
		margin: 14px 0 16px;
		padding: 14px;
		border-radius: 13px;
	}

	.hk-listing-location-panel__row {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}

/* Core 1.8.74 — deterministic placement on both owner and public listing views. */
.hk-listing-location-panel--placed {
	margin-top: 16px;
}

@media (max-width: 700px) {
	.hk-listing-location-panel--placed {
		margin-top: 12px;
	}
}

/* 1.8.75 — real map and route actions inside the listing location panel. */
.hk-listing-location-panel__map {
	position: relative;
	overflow: hidden;
	margin: 14px 16px 0;
	border: 1px solid rgba(18, 63, 47, 0.14);
	border-radius: 14px;
	background: #eef3f0;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.65);
	aspect-ratio: 16 / 6.4;
}

.hk-listing-location-panel__map-frame {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 250px;
	border: 0;
}

.hk-listing-location-panel__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	padding: 14px 16px 0;
}

.hk-listing-location-panel__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 17px;
	border: 1px solid #123f2f;
	border-radius: 11px;
	font-size: 13px;
	font-weight: 750;
	line-height: 1;
	text-decoration: none !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.hk-listing-location-panel__button svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.hk-listing-location-panel__button--primary {
	color: #fff !important;
	background: #123f2f;
	box-shadow: 0 7px 16px rgba(18, 63, 47, 0.14);
}

.hk-listing-location-panel__button--primary:hover,
.hk-listing-location-panel__button--primary:focus-visible {
	color: #fff !important;
	background: #0e3427;
	box-shadow: 0 9px 20px rgba(18, 63, 47, 0.2);
	transform: translateY(-1px);
}

.hk-listing-location-panel__button--secondary {
	color: #123f2f !important;
	background: #fff;
}

.hk-listing-location-panel__button--secondary:hover,
.hk-listing-location-panel__button--secondary:focus-visible {
	color: #123f2f !important;
	background: rgba(199, 154, 43, 0.08);
	border-color: #c79a2b;
	transform: translateY(-1px);
}

.hk-listing-location-panel__note {
	margin: 10px 16px 16px;
	color: rgba(18, 63, 47, 0.62);
	font-size: 12px;
	line-height: 1.45;
}

@media (max-width: 700px) {
	.hk-listing-location-panel__map {
		margin: 12px 12px 0;
		aspect-ratio: 4 / 3;
		border-radius: 12px;
	}

	.hk-listing-location-panel__map-frame {
		min-height: 220px;
	}

	.hk-listing-location-panel__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 8px;
		padding: 12px 12px 0;
	}

	.hk-listing-location-panel__button {
		width: 100%;
		min-height: 46px;
	}

	.hk-listing-location-panel__note {
		margin: 9px 12px 14px;
	}
}



/* Core 1.8.76 — mobile regional experience.
 * Desktop rules above remain unchanged. On phones the same native regional
 * controls are mirrored into a compact, touch-friendly HARCHI KOLO panel.
 */
@media (max-width: 700px) {
	.hk-catalog-page .hk-regional-catalog {
		/* 1.8.77: override the old desktop-first mobile hide rule. */
		display: grid !important;
		grid-template-columns: 1fr;
		gap: 13px;
		margin: 10px 0 14px;
		padding: 14px 13px 13px;
		position: relative;
		overflow: hidden;
		background:
			linear-gradient(145deg, rgba(18, 63, 47, 0.055), rgba(255, 255, 255, 0.99) 50%, rgba(199, 154, 43, 0.07)),
			#ffffff;
		border: 1px solid rgba(18, 63, 47, 0.14);
		border-radius: 15px;
		box-shadow: 0 8px 22px rgba(18, 63, 47, 0.065);
	}

	.hk-catalog-page .hk-regional-catalog::before {
		content: '';
		position: absolute;
		inset: 0 auto 0 0;
		width: 3px;
		background: linear-gradient(180deg, #c79a2b 0%, #123f2f 100%);
	}

	.hk-regional-catalog__intro {
		display: flex;
		align-items: center;
		gap: 10px;
		min-width: 0;
		padding-left: 2px;
	}

	.hk-regional-catalog__mark {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 38px;
		width: 38px;
		height: 38px;
		border-radius: 12px;
		background: #123f2f;
		box-shadow: 0 6px 14px rgba(18, 63, 47, 0.14);
	}

	.hk-regional-catalog__mark svg {
		width: 19px;
		height: 19px;
		fill: none;
		stroke: #c79a2b;
		stroke-width: 1.85;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.hk-regional-catalog__copy {
		min-width: 0;
	}

	.hk-regional-catalog__eyebrow {
		display: block;
		margin-bottom: 2px;
		color: #9a7420;
		font-size: 9px;
		font-weight: 800;
		line-height: 1.2;
		letter-spacing: 0.12em;
	}

	.hk-regional-catalog__copy h2 {
		margin: 0;
		color: #123f2f;
		font-size: 17px;
		font-weight: 780;
		line-height: 1.2;
	}

	.hk-regional-catalog__copy p {
		margin: 4px 0 0;
		color: rgba(18, 63, 47, 0.66);
		font-size: 11.5px;
		line-height: 1.4;
	}

	.hk-regional-catalog__form {
		display: grid;
		grid-template-columns: 1fr;
		gap: 9px;
		margin: 0 !important;
	}

	.hk-regional-catalog__field {
		display: grid;
		gap: 5px;
		min-width: 0;
		margin: 0;
	}

	.hk-regional-catalog__field > span {
		color: #123f2f;
		font-size: 11.5px;
		font-weight: 720;
		line-height: 1.2;
	}

	.hk-regional-catalog__field select,
	.hk-regional-catalog__field input[type='text'] {
		width: 100%;
		min-width: 0;
		height: 47px;
		min-height: 47px;
		margin: 0;
		padding: 0 13px;
		color: #123f2f;
		background: #ffffff;
		border: 1px solid rgba(18, 63, 47, 0.2);
		border-radius: 11px;
		box-shadow: 0 2px 6px rgba(18, 63, 47, 0.03);
		font-size: 16px; /* avoids iOS focus zoom */
		line-height: 1.2;
	}

	.hk-regional-catalog__field select:focus,
	.hk-regional-catalog__field input[type='text']:focus {
		border-color: #c79a2b;
		box-shadow: 0 0 0 3px rgba(199, 154, 43, 0.12);
		outline: none;
	}

	.hk-regional-catalog__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 6px;
		margin-top: 1px;
	}

	.hk-regional-catalog__submit {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: 100%;
		min-height: 48px;
		padding: 0 16px;
		color: #ffffff;
		background: #123f2f;
		border: 1px solid #123f2f;
		border-radius: 11px;
		box-shadow: 0 7px 16px rgba(18, 63, 47, 0.14);
		font-size: 14px;
		font-weight: 780;
		line-height: 1;
	}

	.hk-regional-catalog__submit svg {
		width: 17px;
		height: 17px;
		fill: none;
		stroke: #c79a2b;
		stroke-width: 2;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	.hk-regional-catalog__reset {
		justify-self: center;
		min-height: 34px;
		padding: 0 9px;
		color: rgba(18, 63, 47, 0.74);
		background: transparent;
		border: 0;
		border-bottom: 1px solid rgba(199, 154, 43, 0.62);
		border-radius: 0;
		box-shadow: none;
		font-size: 12px;
		font-weight: 650;
		line-height: 1;
	}

	.hk-regional-catalog__reset[hidden] {
		display: none !important;
	}

	/* Compact location line on listing cards. */
	.hk-listing-location--card {
		gap: 5px;
		margin-top: 5px;
		font-size: 11.5px;
		line-height: 1.3;
	}

	.hk-listing-location--card .hk-listing-location__pin {
		flex-basis: 16px;
		width: 16px;
		height: 16px;
	}

	/* Full listing location panel: one clean mobile card, no nested gutters. */
	.hk-listing-location-panel,
	.hk-listing-location-panel--placed {
		margin: 12px 0 15px;
		padding: 12px;
		border-radius: 13px;
	}

	.hk-listing-location-panel__head {
		gap: 9px;
		margin-bottom: 10px;
	}

	.hk-listing-location-panel__pin {
		flex-basis: 31px;
		width: 31px;
		height: 31px;
		padding: 6px;
	}

	.hk-listing-location-panel__head strong {
		font-size: 14px;
	}

	.hk-listing-location-panel__head small {
		font-size: 10.8px;
	}

	.hk-listing-location-panel__rows {
		gap: 5px;
	}

	.hk-listing-location-panel__row {
		grid-template-columns: minmax(92px, 0.42fr) minmax(0, 1fr);
		gap: 8px;
		padding-top: 7px;
	}

	.hk-listing-location-panel__row span {
		font-size: 11px;
	}

	.hk-listing-location-panel__row strong {
		font-size: 12.5px;
		text-align: right;
	}

	.hk-listing-location-panel__map {
		margin: 11px 0 0;
		aspect-ratio: 16 / 10;
		border-radius: 11px;
	}

	.hk-listing-location-panel__map-frame {
		min-height: 205px;
	}

	.hk-listing-location-panel__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 7px;
		padding: 10px 0 0;
	}

	.hk-listing-location-panel__button {
		width: 100%;
		min-height: 48px;
		padding: 0 13px;
		border-radius: 10px;
		font-size: 13px;
	}

	.hk-listing-location-panel__button:hover,
	.hk-listing-location-panel__button:focus-visible {
		transform: none;
	}

	.hk-listing-location-panel__note {
		margin: 8px 0 1px;
		font-size: 10.8px;
		line-height: 1.4;
	}
}

@media (max-width: 380px) {
	.hk-regional-catalog__copy p {
		display: none;
	}

	.hk-listing-location-panel__row {
		grid-template-columns: 1fr;
		gap: 2px;
	}

	.hk-listing-location-panel__row strong {
		text-align: left;
	}
}


/* 1.9.39 — desktop locality writing assistant for the catalog regional search. */
@media (min-width: 1025px) {
	.hk-regional-catalog__field--locality {
		position: relative;
	}

	.hk-regional-catalog__suggestions {
		display: block;
		position: absolute;
		top: calc(100% + 6px);
		left: 0;
		right: 0;
		z-index: 35;
		padding: 6px;
		background: #fffdf8;
		border: 1px solid rgba(199, 154, 43, 0.26);
		border-radius: 14px;
		box-shadow: 0 14px 28px rgba(18, 63, 47, 0.12);
	}

	.hk-regional-catalog__suggestions[hidden] {
		display: none;
	}

	.hk-regional-catalog__suggestion {
		display: grid;
		gap: 2px;
		width: 100%;
		margin: 0;
		padding: 10px 12px;
		text-align: left;
		color: #123f2f;
		background: transparent;
		border: 0;
		border-radius: 10px;
		cursor: pointer;
		transition: background-color 0.14s ease, transform 0.14s ease;
	}

	.hk-regional-catalog__suggestion:hover,
	.hk-regional-catalog__suggestion.is-active {
		background: rgba(199, 154, 43, 0.11);
	}

	.hk-regional-catalog__suggestion-name {
		font-size: 13.5px;
		font-weight: 700;
		line-height: 1.3;
	}

	.hk-regional-catalog__suggestion-meta {
		color: rgba(18, 63, 47, 0.62);
		font-size: 11.5px;
		line-height: 1.25;
	}
}


/* 1.9.40 — make the locality assistant immediately visible on desktop focus. */
@media (min-width: 1025px) {
	.hk-regional-catalog__suggestion-hint,
	.hk-regional-catalog__suggestion-empty {
		display: grid;
		gap: 3px;
		padding: 10px 12px;
		color: rgba(18, 63, 47, 0.72);
		font-size: 12px;
		line-height: 1.35;
	}

	.hk-regional-catalog__suggestion-hint strong {
		color: #9a7420;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.04em;
	}

	.hk-regional-catalog__suggestion-hint span {
		color: rgba(18, 63, 47, 0.72);
	}

	.hk-regional-catalog__field--locality.is-open input[data-hk-regional-locality] {
		border-color: #c79a2b;
		box-shadow: 0 0 0 3px rgba(199, 154, 43, 0.10);
	}
}


/* 1.9.41 — official KATOTTG locality assistant (desktop).
   Region data is loaded lazily only after the user selects an oblast. */
@media (min-width: 1025px) {
	.hk-regional-catalog__suggestion-loading {
		display: grid;
		gap: 3px;
		padding: 10px 12px;
		color: rgba(18, 63, 47, 0.68);
		font-size: 12px;
		line-height: 1.35;
	}

	.hk-regional-catalog__suggestion-loading strong {
		color: #9a7420;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.04em;
	}

	.hk-regional-catalog__suggestion-meta {
		display: block;
		margin-top: 1px;
		color: rgba(18, 63, 47, 0.61);
		font-size: 11.5px;
		font-weight: 550;
	}
}


/* ==================================================
   Mobile regional-search parity — Core 1.9.42
   Brings the approved desktop location mark, select chevron and official
   KATOTTG locality assistant to phones without changing desktop composition.
   ================================================== */
@media (max-width: 700px) {
	/* Let the in-flow assistant expand naturally inside the regional card. */
	.hk-catalog-page .hk-regional-catalog {
		overflow: visible;
	}

	/* Approved lighter brand treatment for the geolocation mark. */
	.hk-regional-catalog__mark {
		border: 1px solid rgba(199, 154, 43, 0.34);
		background: linear-gradient(135deg, #fffdf7 0%, #f5eee0 100%);
		box-shadow:
			0 6px 14px rgba(18, 63, 47, 0.10),
			inset 0 1px 0 rgba(255, 255, 255, 0.72);
	}

	.hk-regional-catalog__mark svg {
		stroke: #123f2f;
	}

	.hk-regional-catalog__mark svg circle {
		fill: #c79a2b;
		stroke: none;
	}

	/* Mobile-native branded chevron for the oblast select. */
	.hk-regional-catalog__field > .hk-regional-catalog__select-wrap {
		position: relative;
		display: block;
		width: 100%;
		min-width: 0;
		font-size: inherit;
		font-weight: inherit;
		line-height: normal;
	}

	.hk-regional-catalog__select-wrap select {
		appearance: none !important;
		-webkit-appearance: none !important;
		-moz-appearance: none !important;
		padding-right: 40px !important;
		background-image: none !important;
	}

	.hk-regional-catalog__select-wrap select::-ms-expand {
		display: none;
	}

	.hk-regional-catalog__select-arrow {
		position: absolute;
		top: 50%;
		right: 13px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 18px;
		height: 18px;
		transform: translateY(-50%);
		pointer-events: none;
		z-index: 3;
	}

	.hk-regional-catalog__select-arrow svg {
		display: block;
		width: 14px;
		height: 14px;
		fill: none !important;
		stroke: #123f2f !important;
		stroke-width: 1.8;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	/* Official KATOTTG assistant: in normal flow on phones for reliable touch use. */
	.hk-regional-catalog__field--locality {
		position: relative;
	}

	.hk-regional-catalog__suggestions {
		display: block;
		position: relative;
		z-index: 4;
		width: 100%;
		max-height: 246px;
		margin-top: 2px;
		padding: 5px;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
		background: #fffdf8;
		border: 1px solid rgba(199, 154, 43, 0.28);
		border-radius: 12px;
		box-shadow: 0 10px 22px rgba(18, 63, 47, 0.10);
	}

	.hk-regional-catalog__suggestions[hidden] {
		display: none !important;
	}

	.hk-regional-catalog__suggestion {
		display: grid;
		gap: 3px;
		width: 100%;
		min-height: 48px;
		margin: 0;
		padding: 9px 10px;
		text-align: left;
		color: #123f2f;
		-webkit-text-fill-color: #123f2f;
		background: transparent !important;
		border: 0 !important;
		border-radius: 9px;
		box-shadow: none !important;
		cursor: pointer;
		touch-action: manipulation;
	}

	.hk-regional-catalog__suggestion + .hk-regional-catalog__suggestion {
		border-top: 1px solid rgba(18, 63, 47, 0.07) !important;
	}

	.hk-regional-catalog__suggestion:active,
	.hk-regional-catalog__suggestion.is-active {
		background: rgba(199, 154, 43, 0.12) !important;
	}

	.hk-regional-catalog__suggestion-name {
		font-size: 14px;
		font-weight: 720;
		line-height: 1.25;
	}

	.hk-regional-catalog__suggestion-meta {
		display: block;
		margin-top: 0;
		color: rgba(18, 63, 47, 0.61);
		-webkit-text-fill-color: rgba(18, 63, 47, 0.61);
		font-size: 11.5px;
		font-weight: 550;
		line-height: 1.3;
	}

	.hk-regional-catalog__suggestion-hint,
	.hk-regional-catalog__suggestion-empty,
	.hk-regional-catalog__suggestion-loading {
		display: grid;
		gap: 3px;
		padding: 9px 10px;
		color: rgba(18, 63, 47, 0.72);
		font-size: 12px;
		line-height: 1.35;
	}

	.hk-regional-catalog__suggestion-hint strong,
	.hk-regional-catalog__suggestion-loading strong {
		color: #9a7420;
		font-size: 10.5px;
		font-weight: 800;
		letter-spacing: 0.035em;
	}

	.hk-regional-catalog__suggestion-hint span,
	.hk-regional-catalog__suggestion-loading span,
	.hk-regional-catalog__suggestion-empty span {
		color: rgba(18, 63, 47, 0.72);
	}

	.hk-regional-catalog__field--locality.is-open input[data-hk-regional-locality] {
		border-color: #c79a2b;
		box-shadow: 0 0 0 3px rgba(199, 154, 43, 0.10);
	}
}

@media (max-width: 380px) {
	.hk-regional-catalog__suggestions {
		max-height: 220px;
	}

	.hk-regional-catalog__suggestion {
		padding-inline: 9px;
	}
}


/* ==================================================
   Listing submit/edit locality assistant — Core 1.9.43
   Reuses the approved KATOTTG assistant from the catalog on native HivePress
   location fields, on both desktop and mobile. The stored field values and
   submit logic remain native HivePress values.
   ================================================== */
.hk-location-assistant--listing {
	position: relative;
	overflow: visible !important;
}

.hk-location-assistant--listing.is-open {
	z-index: 60;
}

.hk-location-assistant--listing input[data-hk-locality-assistant-input="listing"] {
	width: 100%;
}

.hk-location-assistant--listing.is-open input[data-hk-locality-assistant-input="listing"] {
	border-color: #c79a2b !important;
	box-shadow: 0 0 0 3px rgba(199, 154, 43, 0.10) !important;
}

@media (min-width: 1025px) {
	.hk-location-assistant--listing .hk-regional-catalog__suggestions {
		top: calc(100% + 6px);
		left: 0;
		right: 0;
		width: 100%;
		max-height: 290px;
		overflow-y: auto;
		overscroll-behavior: contain;
	}
}

@media (max-width: 1024px) {
	.hk-location-assistant--listing .hk-regional-catalog__suggestions {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		width: 100%;
		max-height: 246px;
		margin-top: 6px;
		padding: 5px;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
		background: #fffdf8;
		border: 1px solid rgba(199, 154, 43, 0.28);
		border-radius: 12px;
		box-shadow: 0 10px 22px rgba(18, 63, 47, 0.10);
	}

	.hk-location-assistant--listing .hk-regional-catalog__suggestion {
		min-height: 48px;
		padding: 9px 10px;
		touch-action: manipulation;
	}

	.hk-location-assistant--listing input[data-hk-locality-assistant-input="listing"] {
		font-size: 16px !important;
	}
}

@media (max-width: 380px) {
	.hk-location-assistant--listing .hk-regional-catalog__suggestions {
		max-height: 220px;
	}
}


/* 1.9.48 — robust listing-form locality assistant.
   HivePress may render submit/edit forms under different wrapper class names.
   Styling now follows the assistant marker itself rather than a specific form class. */
.hk-location-assistant--listing {
	position: relative;
	overflow: visible !important;
}
.hk-location-assistant--listing .hk-regional-catalog__suggestions[hidden] {
	display: none !important;
}


/* 1.9.50 — semantic fallback for HivePress listing form assistant. */
.hk-location-assistant--listing {
	position: relative !important;
	overflow: visible !important;
}
.hk-location-assistant--listing.is-open {
	z-index: 200 !important;
}
.hk-location-assistant--listing .hk-regional-catalog__suggestions:not([hidden]) {
	display: block !important;
	z-index: 210 !important;
}


/* 1.9.51 — independent submit/edit locality helper.
   It lives directly after the native input and stays in normal document flow,
   so HivePress wrappers cannot clip or hide it. */
.hk-listing-locality-helper {
	display: block;
	position: relative;
	z-index: 20;
	width: 100%;
	max-height: 290px;
	margin-top: 6px;
	padding: 6px;
	overflow-x: hidden;
	overflow-y: auto;
	background: #fffdf8;
	border: 1px solid rgba(199,154,43,.30);
	border-radius: 12px;
	box-shadow: 0 10px 22px rgba(18,63,47,.10);
}
.hk-listing-locality-helper[hidden] { display: none !important; }
.hk-listing-locality-helper__message {
	display: grid;
	gap: 3px;
	padding: 9px 10px;
	color: rgba(18,63,47,.72);
	font-size: 12px;
	line-height: 1.35;
}
.hk-listing-locality-helper__message strong {
	color: #9a7420;
	font-size: 11px;
	font-weight: 800;
}
.hk-listing-locality-helper__item {
	display: grid !important;
	gap: 3px;
	width: 100% !important;
	min-height: 46px;
	margin: 0 !important;
	padding: 9px 10px !important;
	text-align: left !important;
	color: #123f2f !important;
	-webkit-text-fill-color: #123f2f !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 9px !important;
	box-shadow: none !important;
	cursor: pointer;
}
.hk-listing-locality-helper__item:hover,
.hk-listing-locality-helper__item:focus-visible { background: rgba(199,154,43,.11) !important; }
.hk-listing-locality-helper__item + .hk-listing-locality-helper__item { border-top: 1px solid rgba(18,63,47,.07) !important; }
.hk-listing-locality-helper__name { font-size: 13.5px; font-weight: 750; line-height: 1.25; }
.hk-listing-locality-helper__meta { color: rgba(18,63,47,.61); -webkit-text-fill-color: rgba(18,63,47,.61); font-size: 11.5px; line-height: 1.3; }
@media (max-width: 1024px) {
	.hk-listing-locality-helper { max-height: 246px; padding: 5px; }
	.hk-listing-locality-helper__item { min-height: 48px; }
	input[data-hk-listing-locality-helper="1"] { font-size: 16px !important; }
}


/* 1.9.52 — neutral KATOTTG suggestion rows in listing submit/edit forms.
   Suggestions are no longer buttons, so global theme CTA styles cannot affect them. */
.hk-listing-locality-helper {
	background: #fffdf8 !important;
	color: #123f2f !important;
}
.hk-listing-locality-helper__item {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 2px !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 9px 11px !important;
	box-sizing: border-box !important;
	font: inherit !important;
	line-height: 1.3 !important;
	text-align: left !important;
	color: #123f2f !important;
	-webkit-text-fill-color: #123f2f !important;
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 9px !important;
	box-shadow: none !important;
	outline: 0;
	cursor: pointer;
	user-select: none;
}
.hk-listing-locality-helper__item:hover,
.hk-listing-locality-helper__item:focus-visible {
	background: rgba(199,154,43,.11) !important;
	background-color: rgba(199,154,43,.11) !important;
	outline: 1px solid rgba(199,154,43,.24) !important;
}
.hk-listing-locality-helper__item + .hk-listing-locality-helper__item {
	border-top: 1px solid rgba(18,63,47,.08) !important;
}
.hk-listing-locality-helper__name {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #123f2f !important;
	-webkit-text-fill-color: #123f2f !important;
	font-size: 13.5px !important;
	font-weight: 750 !important;
	line-height: 1.25 !important;
}
.hk-listing-locality-helper__meta {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(18,63,47,.62) !important;
	-webkit-text-fill-color: rgba(18,63,47,.62) !important;
	font-size: 11.5px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
}
@media (max-width: 1024px) {
	.hk-listing-locality-helper__item {
		min-height: 46px !important;
		padding: 9px 10px !important;
		justify-content: center;
	}
}


/* 1.9.53 — mobile polish for the independent listing locality helper.
   The same KATOTTG controller is used on desktop and mobile; only the touch UI
   is adapted here. The panel remains in normal document flow under the field. */
@media (max-width: 1024px) {
	.hk-listing-locality-helper {
		position: relative !important;
		z-index: 30 !important;
		width: 100% !important;
		max-height: min(42vh, 260px) !important;
		margin-top: 6px !important;
		padding: 5px !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
		background: #fffdf8 !important;
		border: 1px solid rgba(199,154,43,.30) !important;
		border-radius: 12px !important;
		box-shadow: 0 8px 18px rgba(18,63,47,.10) !important;
	}

	.hk-listing-locality-helper__item {
		min-height: 50px !important;
		padding: 10px 11px !important;
		align-content: center !important;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}

	.hk-listing-locality-helper__name {
		font-size: 14px !important;
		line-height: 1.25 !important;
	}

	.hk-listing-locality-helper__meta {
		font-size: 12px !important;
		line-height: 1.3 !important;
	}

	.hk-listing-locality-helper__message {
		min-height: 48px;
		padding: 10px 11px !important;
		align-content: center;
	}

	input[data-hk-listing-locality-helper="1"] {
		font-size: 16px !important;
		scroll-margin-bottom: 290px;
	}
}

@media (max-width: 420px) {
	.hk-listing-locality-helper {
		max-height: min(40vh, 235px) !important;
		border-radius: 11px !important;
	}

	.hk-listing-locality-helper__item {
		min-height: 48px !important;
		padding: 9px 10px !important;
	}
}
