/**
 * Обгортка /katalog/ — один скрол сторінки, iframe = висота контенту.
 */

body.atsp-catalog-wrapper-page,
body.atsp-catalog-wrapper-page .site,
body.atsp-catalog-wrapper-page #page {
	background: #fff;
	overflow-x: clip;
}

html:has(body.atsp-catalog-wrapper-page) {
	overflow-x: clip;
}

body.atsp-catalog-wrapper-page .site-main,
body.atsp-catalog-wrapper-page #content,
body.atsp-catalog-wrapper-page .page-content {
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

.atsp-catalog-frame-shell {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: transparent;
	overflow: visible;
}

.atsp-catalog-frame {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	min-height: 480px;
	height: 480px;
	background: #fff;
	vertical-align: top;
	overflow: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.atsp-catalog-frame::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

body.atsp-catalog-overlay-open {
	overflow: hidden;
}

.atsp-catalog-frame-shell.is-catalog-overlay-open,
.atsp-catalog-frame.is-catalog-overlay-open {
	z-index: 100000;
}

.atsp-catalog-frame.is-catalog-overlay-open {
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100dvh;
	max-height: 100dvh;
	margin: 0;
	border: 0;
	background: #fff;
}

/* Язычок фільтрів на батьківській сторінці (viewport, не iframe) */
.atsp-filters-tab-parent {
	display: none;
}

@media (max-width: 767px) {
	.atsp-filters-tab-parent,
	body.elementor-kit-5 .atsp-filters-tab-parent,
	body[class*="elementor-kit-"] .atsp-filters-tab-parent {
		display: flex;
		align-items: center;
		justify-content: center;
		position: fixed;
		left: 0;
		top: 50dvh;
		z-index: 100001;
		transform: translateY(-50%);
		width: 52px;
		height: 52px;
		padding: 0;
		margin: 0;
		border: 0;
		border-radius: 0 16px 16px 0;
		background: #1a5dc8 !important;
		background-color: #1a5dc8 !important;
		background-image: none !important;
		color: #fff !important;
		-webkit-text-fill-color: #fff !important;
		box-shadow: 8px 0 24px rgba(26, 93, 200, 0.34);
		cursor: pointer;
		font-family: inherit;
		line-height: 1;
		letter-spacing: normal;
		text-transform: none;
		opacity: 1;
		transition:
			opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1),
			box-shadow 0.4s cubic-bezier(0.22, 1, 0.36, 1);
	}

	.atsp-filters-tab-parent:hover,
	.atsp-filters-tab-parent:focus,
	.atsp-filters-tab-parent:focus-visible,
	body.elementor-kit-5 .atsp-filters-tab-parent:hover,
	body[class*="elementor-kit-"] .atsp-filters-tab-parent:hover {
		transform: translateY(-50%);
		background: #1a5dc8 !important;
		background-color: #1a5dc8 !important;
		color: #fff !important;
		-webkit-text-fill-color: #fff !important;
		box-shadow: 8px 0 24px rgba(26, 93, 200, 0.34);
	}

	.atsp-filters-tab-parent.is-open,
	body.atsp-catalog-overlay-open .atsp-filters-tab-parent {
		opacity: 0;
		pointer-events: none;
	}

	.atsp-filters-tab-parent__icon,
	body.elementor-kit-5 .atsp-filters-tab-parent__icon,
	body[class*="elementor-kit-"] .atsp-filters-tab-parent__icon {
		width: 24px;
		height: 24px;
		display: block;
		flex-shrink: 0;
		color: #fff !important;
		-webkit-text-fill-color: #fff !important;
		fill: none !important;
		stroke: #fff !important;
	}

	.atsp-filters-tab-parent__icon path,
	body.elementor-kit-5 .atsp-filters-tab-parent__icon path,
	body[class*="elementor-kit-"] .atsp-filters-tab-parent__icon path {
		stroke: #fff !important;
		fill: none !important;
	}
}

.atsp-catalog-elementor-footer {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.atsp-catalog-elementor-footer .elementor {
	width: 100%;
}
