:root {--cat-green: #1f7a56;--cat-green-dark: #17604a;--cat-line: #dfe4e1;--cat-muted: #6b7671;--cat-bg: #f3f5f4;--cat-radius: 16px;

	--cat-mask-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M12 22s-7-6.2-7-11.5a7 7 0 1114 0C19 15.8 12 22 12 22zm0-9.5a2.5 2.5 0 100-5 2.5 2.5 0 000 5z'/%3E%3C/svg%3E");--cat-mask-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E");--cat-mask-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");--cat-mask-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");--cat-mask-list: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01'/%3E%3C/svg%3E");--cat-mask-grid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3C/svg%3E");}

.cat-page {padding: 28px 0 56px;}
.cat-head {display: flex;flex-wrap: wrap;align-items: baseline;justify-content: space-between;gap: 8px 20px;margin: 0 0 20px;}
.cat-head__title {margin: 0;font-size: 30px;line-height: 1.2;font-weight: 700;}
.cat-head__count {color: var(--cat-muted);font-size: 15px;}
.cat-layout {display: grid;grid-template-columns: 280px minmax(0, 1fr);align-items: start;gap: 28px;}
.cat-layout:has(> :only-child) {grid-template-columns: minmax(0, 1fr);}
.cat-filters {padding: 12px;border: 1px solid var(--cat-line);border-radius: var(--cat-radius);background: #fff;}
.cat-filters__title {margin: 0 0 16px;font-size: 18px;font-weight: 700;}
.cat-field {margin: 0 0 16px;}
.cat-field__label {display: block;margin: 0 0 6px;color: var(--cat-muted);font-size: 13px;}
.cat-field__select {width: 100%;height: 46px;padding: 0 36px 0 14px;border: 1px solid var(--cat-line);border-radius: 12px;background: #fff var(--cat-mask-arrow) right 12px center / 16px no-repeat;-webkit-appearance: none;appearance: none;color: #22302a;font: inherit;font-size: 14px;cursor: pointer;transition: border-color 0.2s ease;}
.cat-field__select:focus {outline: none;border-color: var(--cat-green);}
.cat-filters__submit {display: block;width: 100%;height: 46px;margin: 4px 0 0;border: none;border-radius: 12px;background: var(--cat-green);color: #fff;font-size: 15px;font-weight: 600;cursor: pointer;transition: background 0.2s ease;}
.cat-filters__submit:hover {background: var(--cat-green-dark);}
.cat-filters__reset {display: block;margin: 14px 0 0;color: var(--cat-muted);font-size: 14px;text-align: center;text-decoration: underline;text-underline-offset: 3px;}
.cat-filters__reset:hover {color: var(--cat-green);}
.cat-filtergroup {margin: 0 0 20px;padding: 0 0 20px;border-bottom: 1px solid var(--cat-line);}
.cat-filtergroup:last-child {margin-bottom: 0;padding-bottom: 0;border-bottom: none;}
.cat-filtergroup__head {display: flex;align-items: center;justify-content: space-between;gap: 10px;margin: 0;font-size: 15px;font-weight: 700;cursor: pointer;list-style: none;}
.cat-filtergroup__head::-webkit-details-marker {display: none;}
.cat-filtergroup__head::after {content: '';flex: none;width: 24px;height: 24px;border: 1px solid var(--cat-line);border-radius: 50%;background: #fff var(--cat-mask-chevron) center / 12px no-repeat;transition: transform 0.2s ease, border-color 0.2s ease;}
.cat-filtergroup__head:hover::after {border-color: var(--cat-green);}
.cat-filtergroup[open] > .cat-filtergroup__head::after {transform: rotate(180deg);}
.cat-filtergroup__body,
.taxonomy-interlinking__list {margin-top: 10px;}
.cat-filtergroup .taxonomy-interlinking__link {border-radius: 10px;font-size: 13px;}
.cat-filtergroup .taxonomy-interlinking__link:hover {color: var(--cat-green-dark);border-color: var(--cat-green);}
.cat-facets__reset {display: block;margin: 0 0 16px;color: var(--cat-muted);font-size: 14px;text-decoration: underline;text-underline-offset: 3px;}
.cat-facets__reset:hover {color: var(--cat-green);}
.cat-facets__apply {width: 100%;margin-top: 16px;padding: 10px;border: 0;border-radius: 10px;background: var(--cat-green);color: #fff;cursor: pointer;}
.cat-facets.is-loading {opacity: 0.6;pointer-events: none;}

.cat-check {display: flex;align-items: flex-start;gap: 10px;padding: 5px 0;font-size: 14px;line-height: 1.35;cursor: pointer;}
.cat-check input {position: absolute;opacity: 0;pointer-events: none;}
.cat-check__box {flex: none;position: relative;width: 18px;height: 18px;margin-top: 1px;border: 1px solid #b7bfba;border-radius: 5px;background: #fff;transition: background-color 0.15s ease, border-color 0.15s ease;}
.cat-check--radio .cat-check__box {border-radius: 50%;}
.cat-check:hover .cat-check__box {border-color: var(--cat-green);}
.cat-check input:focus-visible + .cat-check__box {outline: 2px solid var(--cat-green);outline-offset: 2px;}
.cat-check input:checked + .cat-check__box {border-color: var(--cat-green);background: var(--cat-green);}
.cat-check input:checked + .cat-check__box::after {content: '';position: absolute;left: 5px;top: 2px;width: 5px;height: 9px;border: solid #fff;border-width: 0 2px 2px 0;transform: rotate(45deg);}
.cat-check--radio input:checked + .cat-check__box::after {left: 4px;top: 4px;width: 8px;height: 8px;border: 0;border-radius: 50%;background: #fff;transform: none;}
.cat-check__label {flex: 1;min-width: 0;}
.cat-check__count {flex: none;color: var(--cat-muted);font-size: 13px;}

.cat-more > summary {list-style: none;cursor: pointer;}
.cat-more > summary::-webkit-details-marker {display: none;}
.cat-more__toggle {display: inline-block;margin-top: 6px;color: var(--cat-green-dark);font-size: 14px;text-decoration: underline;text-underline-offset: 3px;}
.cat-more__hide,
.cat-more[open] .cat-more__show {display: none;}
.cat-more[open] .cat-more__hide {display: inline;}
.cat-more[open] > summary {margin-bottom: 4px;}

.cat-price {display: flex;gap: 8px;}
.cat-price__field {display: flex;flex: 1;align-items: center;gap: 4px;min-width: 0;padding: 0 12px;border: 1px solid transparent;border-radius: 10px;background: #f1f2f1;color: var(--cat-muted);font-size: 14px;}
.cat-price__field:focus-within {border-color: var(--cat-green);background: #fff;}
.cat-price__field input {width: 100%;min-width: 0;padding: 10px 0;border: 0;outline: 0;background: transparent;color: #22302a;font: inherit;-moz-appearance: textfield;}
.cat-price__field input::placeholder {color: var(--cat-muted);opacity: 1;}
.cat-price__field input::-webkit-outer-spin-button,
.cat-price__field input::-webkit-inner-spin-button {margin: 0;-webkit-appearance: none;}
.cat-range {--from: 0%;--to: 100%;position: relative;height: 26px;margin: 16px 12px 4px;}
.cat-range::before {content: '';position: absolute;left: 0;right: 0;top: 50%;height: 2px;transform: translateY(-50%);background: linear-gradient(to right, #d9dcda 0, #d9dcda var(--from), #22302a var(--from), #22302a var(--to), #d9dcda var(--to), #d9dcda 100%);}
.cat-range__input {position: absolute;left: -12px;top: 0;width: calc(100% + 24px);height: 26px;margin: 0;background: none;pointer-events: none;-webkit-appearance: none;appearance: none;}
.cat-range__input::-webkit-slider-runnable-track {height: 26px;background: none;}
.cat-range__input::-moz-range-track {height: 26px;background: none;}
.cat-range__input::-webkit-slider-thumb {width: 24px;height: 24px;margin-top: 1px;border: 2px solid #22302a;border-radius: 50%;background: #fff;cursor: pointer;pointer-events: auto;-webkit-appearance: none;appearance: none;}
.cat-range__input::-moz-range-thumb {box-sizing: border-box;width: 24px;height: 24px;border: 2px solid #22302a;border-radius: 50%;background: #fff;cursor: pointer;pointer-events: auto;}
.cat-range__input:focus-visible::-webkit-slider-thumb {outline: 2px solid var(--cat-green);outline-offset: 2px;}
.cat-range__input:focus-visible::-moz-range-thumb {outline: 2px solid var(--cat-green);outline-offset: 2px;}

.cat-empty {padding: 40px 20px;border: 1px dashed var(--cat-line);border-radius: 14px;text-align: center;}
.cat-empty p {margin: 8px 0 0;color: var(--cat-muted);}
.cat-toolbar {display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 12px 16px;margin: 0 0 20px;}
.cat-mapbtn {display: inline-flex;align-items: center;gap: 8px;height: 44px;padding: 0 20px;border: 1px solid var(--cat-line);border-radius: 12px;background: #fff;color: #22302a;font-size: 14px;font-weight: 600;cursor: pointer;transition: border-color 0.2s ease, background 0.2s ease;}
.cat-mapbtn:hover {border-color: var(--cat-green);background: var(--cat-bg);}
.cat-mapbtn__ico {flex: none;width: 18px;height: 18px;background: var(--cat-green);-webkit-mask: var(--cat-mask-pin) center / contain no-repeat;mask: var(--cat-mask-pin) center / contain no-repeat;}
.cat-mapcard {display: block;position: relative;width: 100%;height: 180px;margin: 0 0 20px;padding: 0;border: 1px solid var(--cat-line);border-radius: var(--cat-radius);overflow: hidden;background: var(--cat-bg);cursor: pointer;}
.cat-mapcard img {display: block;width: 100%;height: 100%;object-fit: cover;}
.cat-mapcard__label {position: absolute;left: 10px;right: 10px;bottom: 10px;display: inline-flex;align-items: center;gap: 6px;width: fit-content;padding: 8px 12px;border-radius: 10px;background: #fff;color: #22302a;font-size: 13px;font-weight: 600;box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);}
.cat-toolbar__right {display: flex;flex-wrap: wrap;align-items: center;gap: 12px 16px;}
.cat-sort {display: inline-flex;align-items: center;gap: 10px;color: var(--cat-muted);font-size: 14px;}
.cat-sort__select {height: 44px;padding: 0 36px 0 14px;border: 1px solid var(--cat-line);border-radius: 12px;background: #fff var(--cat-mask-arrow) right 12px center / 16px no-repeat;-webkit-appearance: none;appearance: none;color: #22302a;font: inherit;font-size: 14px;cursor: pointer;}
.cat-viewtoggle {display: inline-flex;align-items: center;padding: 3px;border: 1px solid var(--cat-line);border-radius: 12px;background: #fff;}
.cat-viewtoggle__btn {display: inline-flex;align-items: center;gap: 6px;height: 36px;padding: 0 14px;border: none;border-radius: 9px;background: transparent;color: var(--cat-muted);font-size: 13px;font-weight: 600;cursor: pointer;transition: background 0.2s ease, color 0.2s ease;}
.cat-viewtoggle__btn.is-active {background: var(--cat-bg);color: #22302a;}
.cat-viewtoggle__ico {flex: none;width: 16px;height: 16px;background: currentColor;}
.cat-viewtoggle__btn[data-view="list"] .cat-viewtoggle__ico {-webkit-mask: var(--cat-mask-list) center / contain no-repeat;mask: var(--cat-mask-list) center / contain no-repeat;}
.cat-viewtoggle__btn[data-view="grid"] .cat-viewtoggle__ico {-webkit-mask: var(--cat-mask-grid) center / contain no-repeat;mask: var(--cat-mask-grid) center / contain no-repeat;}
.cat-list {display: flex;flex-direction: column;gap: 20px;}
.cat-list__item {display: block;}
.cat-list:not(.cat-list--grid) .object-card {flex-direction: row;border-radius: var(--cat-radius);border-color: var(--cat-line);}
.cat-list:not(.cat-list--grid) .object-card-imgbox {flex: 0 0 300px;width: 300px;height: 220px;}

.cat-list:not(.cat-list--grid) .object-card-slider,
.cat-list:not(.cat-list--grid) .object-card-slider__track,
.cat-list:not(.cat-list--grid) .object-card-slider__slide,
.cat-list:not(.cat-list--grid) .object-card__img {height: 100%;}
.cat-list:not(.cat-list--grid) .object-card-slider__slide {padding: 0;}
.cat-list:not(.cat-list--grid) .object-card__img img {width: 100%;height: 100%;object-fit: cover;}
.cat-list:not(.cat-list--grid) .object-card__body {padding: 15px;justify-content: center;}
.cat-list:not(.cat-list--grid) .object-card__title {font-size: 19px;}
.cat-list:not(.cat-list--grid) .object-card__price {font-size: 18px;}
.cat-list--grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));gap: 20px;}
.cat-list--grid .object-card {height: 100%;border-radius: var(--cat-radius);border-color: var(--cat-line);}
.cat-pagination {display: flex;justify-content: center;margin: 32px 0 0;}
.cat-pagination .page-numbers {display: inline-flex;align-items: center;justify-content: center;min-width: 40px;height: 40px;margin: 0 4px;padding: 0 6px;border-radius: 10px;color: #22302a;font-size: 14px;font-weight: 600;transition: background 0.2s ease;}
.cat-pagination .page-numbers:hover {background: var(--cat-bg);}
.cat-pagination .page-numbers.current {background: var(--cat-green);color: #fff;}
.cat-pagination .page-numbers.dots {cursor: default;}
.cat-pagination .page-numbers.dots:hover {background: none;}
.page-numbers__arrow-ico {width: 16px;height: 16px;background: currentColor;-webkit-mask: var(--cat-mask-arrow) center / contain no-repeat;mask: var(--cat-mask-arrow) center / contain no-repeat;}
.cat-pagination .page-numbers.prev .page-numbers__arrow-ico {transform: rotate(90deg);}
.cat-pagination .page-numbers.next .page-numbers__arrow-ico {transform: rotate(-90deg);}
.cat-empty {padding: 60px 20px;border: 1px solid var(--cat-line);border-radius: var(--cat-radius);text-align: center;}
.cat-empty__title {margin: 0 0 8px;font-size: 22px;}
.cat-empty__text {margin: 0 0 18px;color: var(--cat-muted);}
.cat-mapmodal {position: fixed;inset: 0;z-index: 10000;display: flex;align-items: center;justify-content: center;padding: 3vh 3vw;}
.cat-mapmodal[hidden] {display: none;}
.cat-mapmodal__backdrop {position: absolute;inset: 0;background: rgba(12, 20, 16, 0.62);}
.cat-mapmodal__box {position: relative;width: min(1100px, 100%);height: min(720px, 100%);border-radius: var(--cat-radius);overflow: hidden;background: #fff;box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);}
.cat-mapmodal__close {position: absolute;top: 14px;right: 14px;z-index: 2;width: 38px;height: 38px;border: none;border-radius: 50%;background: #fff;box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);cursor: pointer;}
.cat-mapmodal__close::after {content: '';position: absolute;inset: 10px;background: #22302a;-webkit-mask: var(--cat-mask-close) center / contain no-repeat;mask: var(--cat-mask-close) center / contain no-repeat;}
.cat-mapmodal .glampings-map-container,
.cat-mapmodal #glampings-map {height: 100%;}
body.cat-mapmodal-lock {overflow: hidden;}
.cat-filters-backdrop,
.cat-filters__head,
.cat-filters__foot {display: none;}
.cat-filters-open {display: none;align-items: center;gap: 8px;height: 44px;padding: 0 16px;border: 1px solid var(--cat-line);border-radius: 12px;background: #fff;color: #22302a;font: inherit;font-size: 14px;font-weight: 600;cursor: pointer;transition: border-color 0.2s ease, background 0.2s ease;}
.cat-filters-open:hover {border-color: var(--cat-green);background: var(--cat-bg);}
.cat-filters-open__ico {flex: none;width: 18px;height: 18px;background: var(--cat-green);-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4'/%3E%3C/svg%3E") center / contain no-repeat;mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M7 12h10M10 18h4'/%3E%3C/svg%3E") center / contain no-repeat;}
body.cat-filters-lock {overflow: hidden;}
@media (max-width: 991px) {.cat-layout {	grid-template-columns: minmax(0, 1fr);}
	.cat-filters {	position: fixed;	top: 0;	bottom: 0;	left: 0;	z-index: 1001;	display: flex;	flex-direction: column;	width: min(400px, 92vw);	padding: 0;	border: 0;	border-radius: 0 var(--cat-radius) var(--cat-radius) 0;	overflow-y: auto;	overscroll-behavior: contain;	visibility: hidden;	transform: translateX(-100%);	box-shadow: 0 0 40px rgba(20, 30, 25, 0.3);	transition: transform 0.3s ease, visibility 0s linear 0.3s;}
	.cat-filters.is-open {	visibility: visible;	transform: none;	transition: transform 0.3s ease, visibility 0s;}
	.cat-filters__head {	position: sticky;	top: 0;	z-index: 2;	display: flex;	align-items: center;	justify-content: center;	flex: none;	min-height: 60px;	padding: 0 56px;	border-bottom: 1px solid var(--cat-line);	background: #fff;}
	.cat-filters__headtitle {	font-size: 17px;	font-weight: 700;}
	.cat-filters__close {	position: absolute;	top: 10px;	right: 12px;	width: 40px;	height: 40px;	border: 0;	border-radius: 50%;	background: transparent;	cursor: pointer;}
	.cat-filters__close:hover {	background: var(--cat-bg);}
	.cat-filters__close::after {	content: '';	position: absolute;	inset: 12px;	background: #22302a;	-webkit-mask: var(--cat-mask-close) center / contain no-repeat;	mask: var(--cat-mask-close) center / contain no-repeat;}
	.cat-filters__body {	flex: 1 0 auto;	padding: 16px;}
	.cat-filters__foot {	position: sticky;	bottom: 0;	z-index: 2;	display: flex;	flex-direction: column;	align-items: center;	justify-content: space-between;	gap: 12px;	flex: none;	padding: 12px 16px;	border-top: 1px solid var(--cat-line);	background: #fff;}
	.cat-filters__clear {	padding: 0;	border: 0;	background: none;	color: #22302a;	font: inherit;	font-size: 15px;	font-weight: 600;	text-decoration: underline;	text-underline-offset: 3px;	cursor: pointer;}
	.cat-filters__apply {	width: 100%;	height: 46px;	padding: 0 22px;	border: 0;	border-radius: 12px;	background: var(--cat-green);	color: #fff;	font: inherit;	font-size: 15px;	font-weight: 600;	cursor: pointer;}
	.cat-filters__apply:hover {	background: var(--cat-green-dark);}
	.cat-filters-backdrop {	display: block;	position: fixed;	inset: 0;	z-index: 1000;	background: rgba(20, 30, 25, 0.5);	opacity: 0;	visibility: hidden;	transition: opacity 0.3s ease, visibility 0s linear 0.3s;}
	.cat-filters-backdrop.is-open {	opacity: 1;	visibility: visible;	transition: opacity 0.3s ease, visibility 0s;}
	.cat-filters-open {	display: inline-flex;}
	.cat-mapcard {	height: 180px;}
}

@media (max-width: 767px) {.cat-page {	padding: 20px 0 40px;}
	.cat-head__title {	font-size: 24px;}
	.cat-toolbar {	flex-direction: column;	align-items: stretch;}
	.cat-sort {	justify-content: space-between;}
	.cat-sort__select {	flex: 1;}
	.cat-toolbar__right {	justify-content: space-between;	gap: 5px;}
	.cat-mapcard {	width: 100%;	height: 160px;}
	.cat-viewtoggle__btn {	width: 100%;	justify-content: center;	padding: 0 13px;}
	.cat-filters-open {	flex: none;	font-size: 12px;}
	.cat-list:not(.cat-list--grid) .object-card {	flex-direction: column;}
	.cat-list:not(.cat-list--grid) .object-card-imgbox {	width: 100%;	height: 200px;}
	.cat-mapmodal {	padding: 0;}
	.cat-mapmodal__box {	width: 100%;	height: 100%;	border-radius: 0;}
}
.cat-search {display: flex;align-items: stretch;margin: 0 0 20px;border: 2px solid #1f7a56;border-radius: 16px;background: #fff;}
.cat-search__dest {position: relative;flex: 1 1 auto;min-width: 0;}
.cat-search__dates {display: flex;flex: none;}
.cat-search__guests {position: relative;flex: none;}
.cat-search__dest,
.cat-search__dates,
.cat-search__guests {border-right: 1px solid var(--cat-line);}
.cat-search__input,
.cat-search__guests-toggle {width: 100%;height: 100%;min-height: 52px;padding: 0 16px;border: 0;border-radius: 0;outline: 0;background: transparent;color: #22302a;font: inherit;font-size: 15px;}
.cat-search__input::placeholder {color: var(--cat-muted);opacity: 1;}
.cat-search__dates .cat-search__input {width: 130px;cursor: pointer;}
.cat-search__dates .cat-search__input + .cat-search__input {border-left: 1px solid var(--cat-line);}
.cat-search__guests-toggle {width: 170px;padding-right: 32px;text-align: left;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;cursor: pointer;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7671' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center / 14px no-repeat;}
.cat-search__guests-toggle[aria-expanded="true"] {background-color: #fafbfa;}

.cat-search {--book-accent: #1f7a56;--book-bg: #f3f5f4;--book-line: #dfe4e1;--book-muted: #6b7671;}
.cat-search__guests .obj-guests {left: auto;right: 0;}
.cat-search__btn {flex: none;padding: 0 34px;border: 0;border-radius: 0 13px 13px 0;background: #1f7a56;color: #fff;font: inherit;font-size: 16px;cursor: pointer;transition: background-color 0.2s ease;}
.cat-search__btn:hover {background: #17604a;}

.cat-search__suggest {position: absolute;z-index: 30;top: calc(100% + 8px);left: 0;min-width: 100%;width: 420px;max-width: calc(100vw - 32px);padding: 8px;border-radius: 14px;background: #fff;box-shadow: 0 12px 40px rgba(20, 30, 25, 0.2);}
.cat-search__suggest[hidden] {display: none;}
.cat-suggest__item {display: flex;flex-direction: column;gap: 2px;padding: 9px 12px;border-radius: 10px;color: #22302a;text-decoration: none;}
.cat-suggest__item:hover,
.cat-suggest__item.is-active {background: var(--cat-bg);}
.cat-suggest__title {font-size: 15px;}
.cat-suggest__sub {color: var(--cat-muted);font-size: 13px;}
.cat-results {position: relative;}
.cat-results.is-loading .cat-list {opacity: 0.45;pointer-events: none;transition: opacity 0.15s ease;}
.cat-empty[hidden],
.cat-loader[hidden],
.cat-facets__reset[hidden] {display: none;}
.cat-loader {display: flex;align-items: center;justify-content: center;gap: 10px;padding: 24px 0;color: var(--cat-muted);font-size: 14px;}
.cat-loader__spin {width: 20px;height: 20px;border: 2px solid var(--cat-line);border-top-color: var(--cat-green);border-radius: 50%;animation: cat-spin 0.7s linear infinite;}
.cat-loader__retry {padding: 0;border: 0;background: none;color: var(--cat-green-dark);font: inherit;text-decoration: underline;cursor: pointer;}
.cat-sentinel {height: 1px;}
@keyframes cat-spin {to { transform: rotate(360deg); }
}

@media (max-width: 767px) {.cat-search {	flex-wrap: wrap;}
	.cat-search__dest {	flex: 1 0 100%;	border-right: 0;	border-bottom: 1px solid var(--cat-line);}
	.cat-search__dates {	flex: 1 1 0;}
	.cat-search__dates .cat-search__input {	width: 50%;	min-width: 0;}
	.cat-search__guests {	flex: 1 1 100%;	border-right: 0;	border-bottom: 1px solid var(--cat-line);	border-top: 1px solid var(--cat-line);}
	.cat-search__guests-toggle {	width: 100%;}
	.cat-search__guests .obj-guests {	left: 0;	right: auto;}
	.cat-search__btn {	flex: 1 1 100%;	min-height: 48px;	border-radius: 0 0 13px 13px;}
}
.fav-page {padding-bottom: 24px;}
.fav__bar {display: flex;align-items: center;justify-content: space-between;gap: 12px;margin: 0 0 20px;}
.fav__bar[hidden],
.fav__empty[hidden],
.fav__loader[hidden] {display: none;}
.fav__count {font-size: 16px;}
.fav__clear {padding: 0;border: 0;background: none;color: var(--cat-muted);font: inherit;font-size: 14px;text-decoration: underline;text-underline-offset: 3px;cursor: pointer;}
.fav__clear:hover {color: var(--cat-green);}
.fav__loader {display: flex;align-items: center;justify-content: center;gap: 10px;padding: 48px 0;color: var(--cat-muted);font-size: 14px;}
.fav__empty {display: flex;flex-direction: column;align-items: center;max-width: 520px;margin: 24px auto 0;padding: 48px 24px;text-align: center;}
.fav__empty-ico {width: 72px;height: 72px;margin: 0 0 20px;border-radius: 50%;background: var(--cat-bg);position: relative;}
.fav__empty-ico:after {content: '';position: absolute;inset: 0;background: var(--cat-green);-webkit-mask: var(--gs-ico-heart) center / 32px no-repeat;mask: var(--gs-ico-heart) center / 32px no-repeat;}
.fav__empty-title {margin: 0 0 12px;font-size: 22px;font-weight: 700;line-height: 1.25;}
.fav__empty-text {margin: 0 0 24px;color: var(--cat-muted);font-size: 15px;line-height: 1.6;}
