/* ========== FONTS ========== */

@font-face { src: url("../fonts/Inter-Regular.woff2") format("woff2"); font-family: "Inter"; font-weight: 400; font-style: normal; font-display: swap; }
@font-face { src: url("../fonts/Inter-Italic.woff2") format("woff2"); font-family: "Inter"; font-weight: 400; font-style: italic; font-display: swap; }
@font-face { src: url("../fonts/Inter-Medium.woff2") format("woff2"); font-family: "Inter"; font-weight: 500; font-style: normal; font-display: swap; }
@font-face { src: url("../fonts/Inter-MediumItalic.woff2") format("woff2"); font-family: "Inter"; font-weight: 500; font-style: italic; font-display: swap; }
@font-face { src: url("../fonts/Inter-SemiBold.woff2") format("woff2"); font-family: "Inter"; font-weight: 600; font-style: normal; font-display: swap; }
@font-face { src: url("../fonts/Inter-SemiBoldItalic.woff2") format("woff2"); font-family: "Inter"; font-weight: 600; font-style: italic; font-display: swap; }
@font-face { src: url("../fonts/Inter-Bold.woff2") format("woff2"); font-family: "Inter"; font-weight: 700; font-style: normal; font-display: swap; }
@font-face { src: url("../fonts/Inter-BoldItalic.woff2") format("woff2"); font-family: "Inter"; font-weight: 700; font-style: italic; font-display: swap; }

/* ========== ROOT ========== */

:root {
	--color-accent: #1570EF;
	--color-text: #111927;
	--color-bg: #F3F4F6;
	--color-placeholder: #666666;
	--color-border: #dddddd;

	--font-base: "Inter", Arial, sans-serif;
	--font-system: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

	--fs-base: 16px;
	--line-height-base: 1.6;

	--container-width: 1344px;
	--container-padding: 0px;

	--h1: 48px;
	--h2: 44px;
	--h3: 40px;
	--h4: 36px;
	--h5: 30px;
	--h6: 24px;

	--heading-lineheight: 1.2;
	--heading-weight: 700;
	--text-spacing: 1em;

	--transition-base: 0.25s ease-in-out;
}

/* ========== BASE ========== */

html {
	scroll-behavior: smooth;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	min-width: 320px;
	margin: 0;
	font-family: var(--font-base);
	font-size: var(--fs-base);
	line-height: var(--line-height-base);
	color: var(--color-text);
	background-color: var(--color-bg);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

::selection {
	color: #ffffff;
	background-color: var(--color-accent);
}

::placeholder {
	color: var(--color-placeholder);
}

img,
svg {
	display: block;
	max-width: 100%;
	height: auto;
	user-select: none;
}

picture {
	display: block;
}

a {
	color: inherit;
	text-decoration: none;
	transition: all var(--transition-base);
}

button,
input,
textarea,
select {
	font: inherit;
}

button {
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	transition: all var(--transition-base);
}

input,
textarea {
	outline: none;
}

/* :focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 2px;
} */

strong,
b {
	font-weight: 700;
}

em,
i {
	font-style: italic;
}

hr {
	margin: 40px 0;
	border: 0;
	border-top: 1px solid var(--color-border);
}

/* ========== LAYOUT ========== */

.container {
	width: 100%;
	max-width: var(--container-width);
	margin-inline: auto;
	padding-left: var(--container-padding);
	padding-right: var(--container-padding);
}

.center {
	text-align: center;
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 20px;
	border: 1px solid transparent;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.35;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	user-select: none;
	transition: all var(--transition-base);
}
.btn-primary {
	color: #ffffff;
	background: var(--color-accent);
}
.btn-primary:hover {
	background: #175cd3;
}
.btn-border {
	min-height: 36px;
	padding: 7px 12px;
	border-color: #2e90fa;
	font-size: 14px;
	line-height: calc(20px / 14px);
	color: #384250;
	background: transparent;
}
.btn-border:hover {
	border-color: var(--color-accent);
	color: #ffffff;
	background: var(--color-accent);
}
.btn:active {
	transform: translateY(1px);
}
.btn:disabled,
.btn.disabled {
	opacity: .5;
	cursor: not-allowed;
	pointer-events: none;
}
.btn-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

/* ========== TYPOGRAPHY ========== */

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
blockquote {
	margin-top: 0;
	margin-bottom: var(--text-spacing);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: var(--heading-weight);
	line-height: var(--heading-lineheight);
	color: inherit;
}

h1 {
	font-size: var(--h1);
	margin-bottom: 24px;
}

h2 {
	font-size: var(--h2);
	margin-bottom: 20px;
}

h3 {
	font-size: var(--h3);
	margin-bottom: 18px;
}

h4 {
	font-size: var(--h4);
	margin-bottom: 16px;
}

h5 {
	font-size: var(--h5);
	margin-bottom: 14px;
}

h6 {
	font-size: var(--h6);
	margin-bottom: 12px;
}

small {
	font-size: 14px;
	line-height: 1.4;
}

ul,
ol {
	padding-left: 1.5em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

blockquote {
	margin-left: 0;
	padding-left: 20px;
	border-left: 3px solid var(--color-accent);
	font-style: italic;
}

/* ========== BREAKPOINTS ========== */


.catalog-results__list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-top: 24px;
}
.product-card--list {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	min-height: 222px;
	padding: 20px;
	border-radius: 10px;
	background: #ffffff;
}
.product-card--list .product-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: row;
	gap: 20px;
	min-width: 0;
}
.product-card--list .product-card__image  {
	align-self: flex-start;
	flex: 0 0 180px;
	width: 180px;
	height: auto;
}
.product-card--list .product-card__image img {
	object-fit: contain;
	object-position: center;
}
.product-card--list .product-card__badge {
	border-radius: 2px;
}
.product-card--list .product-card__info {
	flex: 1 1 auto;
	min-width: 0;
	gap: 8px;
}
.product-card--list .product-card__title {
	display: -webkit-box;
	overflow: hidden;
	font-size: 20px;
	line-height: 1.5;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.product-card--list .product-card__meta {
	margin-top: 0;
	gap: 12px;
}
.product-card__specs {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.product-card__specs div {
	min-width: 0;
}
.product-card__specs b {
	font-weight: 400;
	color: #111927;
}
.product-card--list .product-card__side {
	display: flex;
	flex: 0 0 220px;
	flex-direction: column;
	justify-content: center;
	gap: 16px;
	width: 220px;
	align-self: stretch;
}
.product-card--list .product-card__price {
	padding-top: 0;
}
.product-card--list .product-card__price span {
	font-weight: 400;
}
.product-card--list .product-card__actions {
	gap: 8px;
}
.product-card--list .product-card__add,
.product-card--list .product-card__quick,
.product-card--list .product-card__quantity {
	min-height: 44px;
	height: 44px;
}
.product-card--list .product-card__add,
.product-card--list .product-card__quick {
	font-size: 16px;
	line-height: 1.5;
}
.product-card--list .product-card__counter {
	height: 44px;
}
.product-card--list .product-card__counter button::before,
.product-card--list .product-card__cart::before {
	width: 20px;
}
.pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid #e5e7eb;
}
.pagination__numbers {
	display: flex;
	align-items: center;
	gap: 2px;
}
.pagination__numbers a,
.pagination__numbers span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid transparent;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.pagination__numbers a:hover,
.pagination__numbers a.active {
	border-color: #2e90fa;
	color: #384250;
}
.pagination__arrow {
	width: 20px;
	height: 40px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
}
.pagination__arrow--prev {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M12.666 8H3.333M8 3.333 3.333 8 8 12.666'/%3E%3C/svg%3E");
}
.pagination__arrow--next {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M3.334 8h9.333m-4.666 4.666L12.667 8 8.001 3.333'/%3E%3C/svg%3E");
}
.pagination__arrow--prev:hover {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M12.666 8H3.333M8 3.333 3.333 8 8 12.666'/%3E%3C/svg%3E");
}
.pagination__arrow--next:hover {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M3.334 8h9.333m-4.666 4.666L12.667 8 8.001 3.333'/%3E%3C/svg%3E");
}
.pagination__arrow.disabled {
	opacity: .4;
	pointer-events: none;
}

@media (max-width: 1420px) {
	:root {
		--container-width: 1200px;
	}
}

@media (max-width: 1280px) {
	:root {
		--container-width: 960px;
	}
}

@media (max-width: 1020px) {
	:root {
		--container-width: 720px;

		--h1: 40px;
		--h2: 34px;
		--h3: 28px;
		--h4: 24px;
		--h5: 20px;
		--h6: 17px;
	}
}

@media (max-width: 777px) {
	:root {
		--container-width: 540px;
	}
}

@media (max-width: 575px) {
	:root {
		--container-width: 100%;
		--container-padding: 16px;

		--h1: 32px;
		--h2: 28px;
		--h3: 24px;
		--h4: 21px;
		--h5: 18px;
		--h6: 16px;
	}
}

/* ========== USER STYLES ========== */
.header {
	position: relative;
	z-index: 20;
}
.header::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 45;
	background: rgba(0, 0, 0, .25);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--transition-base), visibility var(--transition-base);
}
.header.is-search-active::before {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.header::after {
	content: "";
	position: fixed;
	top: 140px;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 44;
	background: rgba(0, 0, 0, .25);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--transition-base), visibility var(--transition-base);
}
.header.is-catalog-open::after {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.header.is-main-fixed.is-catalog-open::after {
	top: 80px;
}
.header.is-search-active .header__search {
	z-index: 50;
}
.header__city::before,
.header__nav li:has(> ul) > a::before,
.header__catalog-btn::before,
.header__search-btn::before,
.header__cart::before,
.header__mobile-btn::before,
.header__mobile-search::before {
	content: "";
	display: block;
	flex: 0 0 auto;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.header__top {
	position: relative;
	z-index: 61;
	height: 60px;
	background: #f3f4f6;
}
.header__top::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 45;
	background: rgba(0, 0, 0, .25);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--transition-base), visibility var(--transition-base);
}
.header.is-search-active .header__top::before {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.header__top > .container,
.header__main > .container {
	height: 100%;
}
.header__top-container {
	position: relative;
	display: flex;
	align-items: center;
	gap: 40px;
	height: 100%;
}
.header__city {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	flex: 0 0 auto;
	margin-right: auto;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #4d5761;
}
.header__city::before {
	width: 14px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.524' d='M1.991 6.268c-.347-.135-.52-.203-.571-.3a.3.3 0 0 1 0-.27c.05-.097.224-.165.57-.3l9.852-3.844c.313-.123.47-.184.57-.15a.29.29 0 0 1 .184.184c.034.1-.027.257-.15.57l-3.844 9.851c-.135.347-.203.52-.3.571a.3.3 0 0 1-.27 0c-.097-.05-.165-.224-.3-.571L6.2 8.066c-.027-.07-.04-.105-.062-.135a.3.3 0 0 0-.068-.068.6.6 0 0 0-.135-.062z'/%3E%3C/svg%3E");
	transition: .25s all ease-in-out;
}
.header__city:hover::before {
	width: 14px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.524' d='M1.991 6.268c-.347-.135-.52-.203-.571-.3a.3.3 0 0 1 0-.27c.05-.097.224-.165.57-.3l9.852-3.844c.313-.123.47-.184.57-.15a.29.29 0 0 1 .184.184c.034.1-.027.257-.15.57l-3.844 9.851c-.135.347-.203.52-.3.571a.3.3 0 0 1-.27 0c-.097-.05-.165-.224-.3-.571L6.2 8.066c-.027-.07-.04-.105-.062-.135a.3.3 0 0 0-.068-.068.6.6 0 0 0-.135-.062z'/%3E%3C/svg%3E");
}
.header__nav {
	flex: 0 0 auto;
}
.header__nav > ul {
	display: flex;
	align-items: center;
	gap: 32px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.header__nav li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.header__nav > ul > li {
	position: relative;
}
.header__nav a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #4d5761;
	white-space: nowrap;
}
.header__nav li:has(> ul) > a::before {
	order: 2;
	width: 14px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.524' d='M3.5 5.25 7 8.75l3.5-3.5'/%3E%3C/svg%3E");
	transition: .25s all ease-in-out;
}
.header__nav li:has(> ul):hover > a::before,
.header__nav li:has(> ul):focus-within > a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.524' d='M3.5 5.25 7 8.75l3.5-3.5'/%3E%3C/svg%3E");
	transform: rotate(180deg);
}
.header__nav a:hover,
.header__nav li:has(> ul):hover > a,
.header__nav li:has(> ul):focus-within > a,
.header__city:hover {
	color: #1570ef;
}
.header__nav > ul > li > ul {
	position: absolute;
	top: calc(100% + 12px);
	left: 0;
	z-index: 30;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 2px;
	width: 280px;
	margin: 0;
	padding: 6px;
	border-radius: 6px;
	background: #ffffff;
	box-shadow: 0 0 3px -2px rgba(10, 13, 18, .04), 0 0 8px -4px rgba(10, 13, 18, .03), 0 0 24px -4px rgba(10, 13, 18, .08);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(6px);
	transition: opacity var(--transition-base), visibility var(--transition-base), transform var(--transition-base);
}
.header__nav > ul > li > ul::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 100%;
	width: 100%;
	height: 12px;
}
.header__nav > ul > li:hover > ul,
.header__nav > ul > li:focus-within > ul {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}
.header__nav > ul > li > ul a {
	justify-content: flex-start;
	width: 100%;
	padding: 10px 12px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #384250;
}
.header__nav > ul > li > ul a:hover,
.header__nav > ul > li > ul a:focus-visible {
	color: #175cd3;
	background: #f9fafb;
}
.header__callback {
	flex: 0 0 auto;
}
.header__main {
	position: relative;
	z-index: 60;
	height: 80px;
	border-bottom: 1px solid #e5e7eb;
	background: #ffffff;
	box-shadow: 0 4px 6px -2px rgba(10, 13, 18, .03), 0 10px 14px -4px rgba(10, 13, 18, .03);
}
.header__main::before {
	content: "";
	position: absolute;
	inset: 0;
	bottom: -1px;
	z-index: 45;
	background: rgba(0, 0, 0, .25);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--transition-base), visibility var(--transition-base);
}
.header.is-search-active .header__main::before {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.header.is-search-active .header__main {
	border-color: #fff;
}
.header.is-main-fixed {
	padding-bottom: 80px;
}
.header.is-main-fixed .header__main {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 60;
	width: 100%;
}
.header__main-container {
	display: flex;
	align-items: center;
	gap: 40px;
	height: 100%;
}
.header__catalog-search {
	display: flex;
	align-items: center;
	gap: 24px;
	width: 872px;
	min-width: 0;
}
.header__logo {
	width: 150px;
	height: auto;
	aspect-ratio: 150 / 42;
	flex: 0 0 150px;
	overflow: hidden;
}
.header__logo img {
	width: 100%;
	height: auto;
	aspect-ratio: 150 / 42;
	object-fit: contain;
}
.header__logo:hover {
	opacity: .8;
}
.header__catalog-btn {
	gap: 6px;
	flex: 0 0 auto;
}
.header__catalog-btn::before {
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M2.5 10h15m-15-5h15m-15 10h10'/%3E%3C/svg%3E");
}
.header__search {
	display: flex;
	align-items: stretch;
	flex: 1 1 auto;
	min-width: 0;
	height: 52px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #ffffff;
	position: relative;
	z-index: 20;
	transition: border-color var(--transition-base);
}
.header__search::before {
	content: "";
	position: absolute;
	inset: -1px;
	z-index: 5;
	border: 2px solid transparent;
	border-radius: 4px;
	pointer-events: none;
	transition: border-color var(--transition-base);
}
.header__search:hover {
	border-color: #d2d6db;
}
.header__search.is-open::before,
.header__search:focus-within::before {
	border-color: #ff692e;
}
.header__search input {
	position: relative;
	z-index: 2;
	width: 100%;
	min-width: 0;
	padding: 12px 104px 12px 19px;
	border: 0;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #384250;
	background: transparent;
}
.header__search input::placeholder {
	color: #6c737f;
	opacity: 1;
}
.header__search input::-webkit-search-cancel-button,
.header__search input::-webkit-search-decoration {
	-webkit-appearance: none;
	appearance: none;
}
.header__search input::-ms-clear {
	display: none;
}
.header__search-clear {
	position: absolute;
	top: 50%;
	right: 62px;
	z-index: 3;
	display: none;
	width: 28px;
	height: auto;
	aspect-ratio: 1;
	padding: 4px;
	transform: translateY(-50%);
	border-radius: 7px;
}
.header__search-clear.is-visible {
	display: flex;
}
.header__search-clear::before {
	content: "";
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M15 5 5 15M5 5l10 10'/%3E%3C/svg%3E");
	transition: .25s all ease-in-out
}
.header__search-clear:hover {
	opacity: 1;
	background-color: #f3f4f6;
}
.header__search-clear:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23111927' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M15 5 5 15M5 5l10 10'/%3E%3C/svg%3E");
}
.header__search-btn {
	position: absolute;
	top: -1px;
	right: -1px;
	z-index: 4;
	width: 52px;
	height: auto;
	aspect-ratio: 1;
	flex: 0 0 52px;
	border-radius: 4px;
	overflow: hidden;
	background: linear-gradient(84deg, #ff8b07 0%, #eb4701 94.94%);
}
.header__search-btn::before {
	position: relative;
	z-index: 1;
	width: 24px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m21 21-3.5-3.5m2.5-6a8.5 8.5 0 1 1-17 0 8.5 8.5 0 0 1 17 0'/%3E%3C/svg%3E");
}
.header__search-btn::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #ef5302;
	opacity: 0;
	transition: opacity .2s ease;
}
.header__search-btn:hover::after {
	opacity: 1;
}
.header__search-dropdown {
	position: absolute;
	top: -12px;
	left: -12px;
	z-index: 1;
	width: calc(100% + 24px);
	min-height: 172px;
	padding: 84px 12px 12px;
	border-radius: 6px;
	background: #ffffff;
}
.header__search-dropdown[hidden] {
	display: none;
}
.header__search-suggestions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	width: min(451px, 100%);
	margin: 0;
	padding: 0;
	list-style: none;
}
.header__search-suggestions[hidden] {
	display: none;
}
.header__search-suggestions li {
	margin: 0;
	padding: 0;
}
.header__search-suggestions button {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 4px 12px;
	border-radius: 4px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #384250;
	background: #f3f4f6;
	transition: color var(--transition-base), background var(--transition-base);
}
.header__search-suggestions button:hover,
.header__search-suggestions button:focus-visible,
.header__search-suggestions button:active,
.header__search-suggestions button.is-active {
	color: #1570ef;
	background: #f3f4f6;
}
.header__search-not-found {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
}
.header__search-not-found[hidden] {
	display: none;
}
.header__search-message {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}
.header__search-message strong,
.header__search-message p {
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
}
.header__search-message strong {
	font-weight: 500;
	color: #384250;
}
.header__search-message p {
	max-width: 300px;
	font-weight: 400;
	color: #6c737f;
}
.header__search-quick {
	flex: 0 0 auto;
	gap: 6px;
	min-height: 44px;
	padding: 11px 16px;
	border-color: #d2d6db;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20px / 14px);
	color: #1f2a37;
	background: #ffffff;
}
.header__search-quick::before {
	content: "";
	width: 16px;
	height: auto;
	aspect-ratio: 1;
	flex: 0 0 auto;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23F79009' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M8.667 1.333 3.333 8h4L6.667 14.667 12.667 7h-4l.667-5.667Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.header__search-quick:hover {
	border-color: #f79009;
	color: #f79009;
	background: #ffffff;
}
.header__contacts {
	display: flex;
	align-items: center;
	gap: 24px;
	flex: 1 1 auto;
	min-width: 0;
}
.header__offer {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	min-width: 0;
}
.header__offer button {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #111927;
	white-space: nowrap;
}
.header__offer button:hover {
	color: #1570ef;
}
.header__offer span {
	font-size: 12px;
	font-weight: 400;
	line-height: calc(16px / 12px);
	color: #6c737f;
}
.header__contact-list {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 2px;
}
.header__phone {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.5;
	color: #111927;
	white-space: nowrap;
}
.header__email {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #4d5761;
	white-space: nowrap;
}
.header__phone:hover,
.header__email:hover {
	color: #1570ef;
}
.header__cart {
	width: 56px;
	height: auto;
	aspect-ratio: 1;
	flex: 0 0 56px;
	border-radius: 7px;
}
.header__cart::before {
	width: 28px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' fill='none' viewBox='0 0 28 28'%3E%3Cpath stroke='%234d5761' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.944' d='M7.583 19.833h12.634c1.109 0 1.663 0 2.114-.2.399-.177.74-.461.984-.821.278-.409.377-.954.575-2.045L25.466 8.1c.069-.378.103-.567.05-.714a.58.58 0 0 0-.256-.308C25.124 7 24.932 7 24.548 7H5.833m-3.5-4.667h1.536c.283 0 .425 0 .539.052a.6.6 0 0 1 .248.211c.068.105.09.245.135.525l3.251 20.59c.044.28.066.42.135.525a.6.6 0 0 0 .248.212c.114.052.256.052.539.052h13.202'/%3E%3C/svg%3E");
}
.header__cart:hover {
	background: #f3f4f6;
}
.header__cart > span {
	position: absolute;
	top: 5px;
	right: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 6px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	color: #ffffff;
	background: linear-gradient(83deg, #ff8b07 0%, #eb4701 94.94%);
}
.header__mobile {
	position: relative;
	display: none;
	background: #ffffff;
}

.city-confirm[hidden] {
	display: none !important;
}
.city-confirm {
	position: absolute;
	z-index: 40;
	background: #ffffff;
	box-shadow: 0 0 3px -2px rgba(10, 13, 18, .04), 0 0 8px -4px rgba(10, 13, 18, .03), 0 0 24px -4px rgba(10, 13, 18, .08);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-4px);
	transition: opacity var(--transition-base), visibility var(--transition-base), transform var(--transition-base);
}
.city-confirm.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.city-confirm--desktop {
	top: calc(100% + 10px);
	left: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 285px;
	padding: 24px;
	border-radius: 10px;
}
.city-confirm__text {
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28px / 18px);
	color: #111927;
}
.city-confirm__actions {
	display: flex;
	align-items: center;
	gap: 12px;
}
.city-confirm--desktop .btn {
	min-height: 36px;
	padding: 7px 18px;
	font-size: 14px;
	line-height: calc(20px / 14px);
}
.city-confirm--desktop .btn-border {
	padding-left: 13px;
	padding-right: 13px;
	border-color: #d2d6db;
	background: #ffffff;
}
.city-confirm--desktop .btn-border:hover {
	border-color: #1570ef;
	color: #1570ef;
	background: #ffffff;
}
.city-confirm--mobile {
	display: none;
}

@media (max-width: 1420px) {
	.header__top-container,
	.header__main-container {
		gap: 24px;
	}
	.header__nav ul {
		gap: 20px;
	}
	.header__catalog-search {
		gap: 16px;
		width: min(66%, 872px);
	}
	.header__contacts {
		gap: 16px;
	}
}
@media (max-width: 1280px) {
	.header__offer {
		display: none;
	}
	.header__catalog-search {
		width: 68%;
	}
	.header__logo {
		width: 130px;
		flex-basis: 130px;
	}
	.header__logo img {
		width: 130px;
	}
	.header__phone {
		font-size: 18px;
		line-height: calc(26px / 18px);
	}
	.header__email {
		font-size: 14px;
		line-height: calc(20px / 14px);
	}
	.header__search-not-found {
		align-items: flex-start;
		flex-direction: column;
	}
}
@media (max-width: 1120px) {
	.header__nav ul {
		gap: 14px;
	}
	.header__catalog-btn {
		padding-left: 14px;
		padding-right: 14px;
	}
	.header__main-container {
		gap: 16px;
	}
	.header__contacts {
		gap: 10px;
	}
}
@media (max-width: 1020px) {
	.header {
		min-height: 58px;
	}
	.header.is-main-fixed {
		padding-bottom: 0;
	}
	.header__top,
	.header__main {
		display: none;
	}
	.header__mobile {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 60;
		display: block;
		width: 100%;
	}
	.city-confirm--desktop {
		display: none;
	}
	.city-confirm--mobile {
		top: 100%;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 12px 16px;
		border-radius: 0 0 10px 10px;
	}
	.city-confirm--mobile .city-confirm__text {
		font-size: 14px;
		font-weight: 500;
		line-height: calc(20px / 14px);
		color: #111927;
	}
	.city-confirm--mobile .city-confirm__text > span:first-child {
		color: #6c737f;
	}
	.city-confirm--mobile [data-city-confirm-name] {
		font-weight: 600;
		color: #111927;
	}
	.city-confirm--mobile .city-confirm__actions {
		flex: 0 0 auto;
	}
	.city-confirm--mobile [data-city-confirm-action] {
		width: 34px;
		height: auto;
		aspect-ratio: 1;
		border-radius: 6px;
	}
	.city-confirm--mobile [data-city-confirm-action]::before {
		content: "";
		display: block;
		width: 20px;
		height: auto;
		aspect-ratio: 1;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
	}
	.city-confirm--mobile [data-city-confirm-action="accept"] {
		background: #1570ef;
	}
	.city-confirm--mobile [data-city-confirm-action="accept"]::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m16.667 5-9.167 9.167L3.333 10'/%3E%3C/svg%3E");
	}
	.city-confirm--mobile [data-city-confirm-action="accept"]:hover {
		background: #175cd3;
	}
	.city-confirm--mobile [data-city-confirm-action="change"] {
		border: 1px solid #d2d6db;
		background: #ffffff;
	}
	.city-confirm--mobile [data-city-confirm-action="change"]::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-width='1.667' d='m15 5-10 10M5 5l10 10'/%3E%3C/svg%3E");
	}
	.city-confirm--mobile [data-city-confirm-action="change"]:hover {
		border-color: #9da4ae;
		background: #f9fafb;
	}
	.header__mobile-row {
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: 58px;
		padding: 12px 16px;
	}
	.header__mobile-left,
	.header__mobile-actions {
		display: flex;
		align-items: center;
		gap: 6px;
	}
	.header__mobile-btn {
		width: 34px;
		height: auto;
		aspect-ratio: 1;
		flex: 0 0 34px;
		border-radius: 7px;
	}
	.header__mobile-btn::before {
		width: 20px;
		height: auto;
		aspect-ratio: 1;
	}
	.header__mobile-btn--menu::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M2.55 10.2h10.2M2.55 5.1h15.3M2.55 15.3h15.3'/%3E%3C/svg%3E");
	}
	.header__mobile-btn--search::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='m17.85 17.85-3.698-3.697m1.998-4.802a6.8 6.8 0 1 1-13.6 0 6.8 6.8 0 0 1 13.6 0'/%3E%3C/svg%3E");
	}
	.header__mobile-btn--phone::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M7.123 7.526a12.4 12.4 0 0 0 2.42 3.408 12.4 12.4 0 0 0 3.408 2.42c.106.05.159.076.226.095.238.07.531.02.733-.125.057-.04.105-.089.202-.186.297-.297.446-.446.595-.543a1.7 1.7 0 0 1 1.854 0c.15.097.298.246.595.543l.166.166c.451.451.677.677.8.92a1.7 1.7 0 0 1 0 1.534c-.123.243-.349.469-.8.92l-.134.135c-.45.45-.676.675-.982.847a2.9 2.9 0 0 1-1.256.326c-.351 0-.591-.069-1.07-.205a16.2 16.2 0 0 1-7.042-4.142 16.2 16.2 0 0 1-4.142-7.041c-.137-.48-.205-.72-.206-1.071a2.9 2.9 0 0 1 .327-1.257c.172-.306.397-.53.847-.98l.134-.135c.452-.452.678-.677.92-.8a1.7 1.7 0 0 1 1.535 0c.242.123.468.348.92.8l.166.166c.297.297.445.446.543.595a1.7 1.7 0 0 1 0 1.853c-.098.15-.246.298-.543.595-.097.098-.146.146-.187.203a.9.9 0 0 0-.125.733c.02.067.045.12.096.226'/%3E%3C/svg%3E");
	}
	.header__mobile-btn--mail::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='m1.7 5.95 6.94 4.859c.562.393.843.59 1.149.666a1.7 1.7 0 0 0 .822 0c.306-.076.587-.273 1.149-.666L18.7 5.95M5.78 17h8.84c1.428 0 2.142 0 2.688-.277a2.55 2.55 0 0 0 1.114-1.115c.278-.545.278-1.26.278-2.688V7.48c0-1.428 0-2.142-.278-2.687a2.55 2.55 0 0 0-1.114-1.115c-.546-.278-1.26-.278-2.688-.278H5.78c-1.428 0-2.142 0-2.687.278a2.55 2.55 0 0 0-1.115 1.115C1.7 5.338 1.7 6.053 1.7 7.48v5.44c0 1.428 0 2.143.278 2.688.245.48.635.87 1.115 1.114C3.638 17 4.353 17 5.78 17'/%3E%3C/svg%3E");
	}
	.header__mobile-btn--cart::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M5.525 14.45h9.205c.808 0 1.211 0 1.54-.147a1.7 1.7 0 0 0 .717-.598c.203-.298.275-.695.42-1.49l1.147-6.314c.05-.275.076-.413.037-.52a.43.43 0 0 0-.187-.224c-.099-.058-.239-.058-.519-.058H4.25M1.7 1.7h1.12c.205 0 .309 0 .392.038a.43.43 0 0 1 .18.154c.05.077.067.178.099.382L5.86 17.275c.032.204.048.306.098.382a.4.4 0 0 0 .18.154c.084.038.187.038.393.038h9.62'/%3E%3C/svg%3E");
	}
	.header__mobile-btn:hover {
		background: #f3f4f6;
	}
	.header__mobile-logo {
		width: 100px;
		height: auto;
		aspect-ratio: 100 / 30;
		flex: 0 0 100px;
		overflow: hidden;
	}
	.header__mobile-logo img {
		width: 100%;
		height: auto;
		aspect-ratio: 100 / 30;
		object-fit: contain;
	}
	.header__mobile-cart > span {
		position: absolute;
		top: 0;
		right: -1px;
		display: flex;
		align-items: center;
		justify-content: center;
		min-width: 18px;
		height: 18px;
		padding: 0 4px;
		border-radius: 999px;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.5;
		color: #ffffff;
		background: linear-gradient(84deg, #ff8b07 0%, #eb4701 94.94%);
	}
	.header__mobile-search {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		max-width: none;
		height: 0;
		margin: 0;
		padding: 0;
		overflow: hidden;
		opacity: 0;
		visibility: hidden;
		transform: translateY(-4px);
		transition: height .2s ease, padding .2s ease, opacity .2s ease, visibility .2s ease, transform .2s ease;
	}
	.header__mobile.is-search-open .header__mobile-search {
		height: 56px;
		padding: 4px 12px 12px;
		overflow: visible;
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}
	.header.is-search-active .header__mobile-search {
		z-index: 50;
	}
	.header__mobile-search::before {
		position: absolute;
		top: 14px;
		left: 26px;
		z-index: 3;
		width: 20px;
		height: auto;
		aspect-ratio: 1;
		pointer-events: none;
		opacity: 0;
		transform: translateY(-28px);
		transition: opacity .2s ease, transform .2s ease;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m17.5 17.5-2.917-2.917m2.084-5a7.083 7.083 0 1 1-14.167 0 7.083 7.083 0 0 1 14.167 0'/%3E%3C/svg%3E");
	}
	.header__mobile.is-search-open .header__mobile-search::before {
		opacity: 1;
		transform: translateY(0);
	}
	.header__mobile-search input {
		position: relative;
		z-index: 2;
		width: 100%;
		height: 40px;
		padding: 9px 44px 9px 42px;
		border: 1px solid #d2d6db;
		border-radius: 6px;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20px / 14px);
		color: #111927;
		background: #ffffff;
		transition: border-color var(--transition-base), box-shadow var(--transition-base);
	}
	.header__mobile-search.is-results-open input,
	.header__mobile-search:focus-within input {
		border-color: #ff692e;
		box-shadow: 0 0 0 1px #ff692e;
	}
	.header__mobile-search input::placeholder {
		color: #6c737f;
		opacity: 1;
	}
	.header__mobile-search input::-webkit-search-cancel-button,
	.header__mobile-search input::-webkit-search-decoration {
		-webkit-appearance: none;
		appearance: none;
	}
	.header__mobile-search input::-ms-clear {
		display: none;
	}
	.header__search-clear--mobile {
		top: 24px;
		right: 20px;
		z-index: 4;
	}
	.header__search-dropdown--mobile {
		top: 48px;
		left: 0;
		z-index: 1;
		width: 100%;
		min-height: 0;
		padding: 12px;
		border-radius: 6px;
		box-shadow: 0 10px 14px -4px rgba(10, 13, 18, .08), 0 4px 6px -2px rgba(10, 13, 18, .03);
		animation: mobileSearchDropdownIn .18s ease;
	}
	.header__search-dropdown--mobile .header__search-suggestions {
		gap: 8px;
		width: 100%;
	}
	.header__search-dropdown--mobile .header__search-suggestions button {
		padding: 4px 10px;
		font-size: 14px;
		line-height: calc(20px / 14px);
	}
	.header__search-dropdown--mobile .header__search-not-found {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
	}
	.header__search-dropdown--mobile .header__search-message {
		gap: 4px;
	}
	.header__search-dropdown--mobile .header__search-message strong,
	.header__search-dropdown--mobile .header__search-message p {
		font-size: 14px;
		line-height: calc(20px / 14px);
	}
	.header__search-dropdown--mobile .header__search-message p {
		max-width: none;
	}
	.header__search-dropdown--mobile .header__search-quick {
		width: 100%;
	}
	@keyframes mobileSearchDropdownIn {
		from {
			opacity: 0;
			transform: translateY(-4px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}
}
@media (max-width: 359px) {
	.header__mobile-row {
		padding-left: 10px;
		padding-right: 10px;
	}
	.header__mobile-left,
	.header__mobile-actions {
		gap: 3px;
	}
	.header__mobile-logo {
		width: 92px;
		flex-basis: 92px;
	}
	.header__mobile-logo img {
		width: 92px;
	}
	.header__mobile-search {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
}

/* ========== MODALS ========== */
.mfp-bg {
	background: #000000;
}
.mfp-fade.mfp-bg {
	opacity: 0;
	transition: opacity var(--transition-base);
}
.mfp-fade.mfp-bg.mfp-ready {
	opacity: .25;
}
.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	transform: translateY(8px);
	transition: opacity var(--transition-base), transform var(--transition-base);
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
	transform: translateY(0);
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
	transform: translateY(8px);
}
.modal {
	position: relative;
	width: calc(100% - 48px);
	max-width: 480px;
	margin: 40px auto;
	padding: 40px;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 4px 6px -2px rgba(10, 13, 18, .03), 0 10px 14px -4px rgba(10, 13, 18, .03);
}
.modal__title {
	margin: 0 30px 20px 0;
	font-size: 24px;
	font-weight: 600;
	line-height: calc(32px / 24px);
	color: #111927;
}
.modal__content {
	width: 100%;
}
button.mfp-close.modal__close {
	position: absolute;
	top: 22px;
	right: 22px;
	width: 44px;
	height: auto;
	aspect-ratio: 1;
	padding: 10px;
	border-radius: 8px;
	font-size: 0;
	line-height: 1;
	opacity: 1;
	color: transparent;
	display: flex;
}
.modal__close::before,
.city-modal__search::before,
.city-modal__clear::before,
.city-modal__list button.active::after {
	content: "";
	display: block;
	flex: 0 0 auto;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.modal__close::before {
	width: 24px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-width='2' d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E");
}
button.mfp-close.modal__close:hover,
button.mfp-close.modal__close:focus {
	background: #f3f4f6;
}


.modal--success {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: calc(100% - 48px);
	max-width: 440px;
	min-height: 216px;
	padding: 48px 32px 40px;
	overflow: hidden;
	box-shadow: 0 3px 3px -2px rgba(10, 13, 18, .04), 0 8px 8px -4px rgba(10, 13, 18, .03), 0 20px 24px -4px rgba(10, 13, 18, .08);
}
.success-modal__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 48px;
	height: auto;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #d1e9ff;
}
.success-modal__icon::before {
	content: "";
	display: block;
	width: 24px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.success-modal__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 100%;
	text-align: center;
}
.success-modal__title {
	width: 100%;
	font-size: 24px;
	font-weight: 600;
	line-height: calc(32px / 24px);
	color: #111927;
}
.success-modal__text {
	width: 100%;
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}

.modal--form {
	display: flex;
	flex-direction: column;
	gap: 24px;
	overflow: hidden;
	box-shadow: 0 3px 3px -2px rgba(10, 13, 18, .04), 0 8px 8px -4px rgba(10, 13, 18, .03), 0 20px 24px -4px rgba(10, 13, 18, .08);
}
.modal__header {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.modal--form .modal__title {
	margin: 0 24px 0 0;
}
.modal__product {
	display: block;
}
.modal__product[hidden] {
	display: none;
}
.modal__description {
	max-width: 360px;
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}
.form {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.form__group {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.form__label {
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #111927;
}
.form input,
.form textarea,
.form select {
	width: 100%;
	min-height: 48px;
	padding: 11px 16px;
	border: 1px solid #d2d6db;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #111927;
	background: #ffffff;
	transition: border-color var(--transition-base), box-shadow var(--transition-base);
}
.form input::placeholder,
.form textarea::placeholder {
	color: #6c737f;
	opacity: 1;
}
@media (hover: hover) and (pointer: fine) {
	.form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):hover:not(:focus),
	.form textarea:hover:not(:focus),
	.form select:hover:not(:focus) {
		border-color: #9da4ae;
	}
}
.form input:focus,
.form textarea:focus,
.form select:focus {
	border-color: #2e90fa;
	box-shadow: 0 0 0 1px #2e90fa;
}
.form__group--email {
	display: none;
}
.modal--form-email .form__group--email {
	display: flex;
}
.checkbox {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	cursor: pointer;
}
.checkbox input {
	flex: 0 0 auto;
	width: 20px;
	min-height: 0;
	height: auto;
	aspect-ratio: 1;
	margin: 2px 0 0;
	padding: 0;
	border: 1px solid #d2d6db;
	border-radius: 4px;
	appearance: none;
	background-color: #ffffff;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 14px auto;
	cursor: pointer;
}
.checkbox input:checked {
	border-color: #1570ef;
	background-color: #1570ef;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M11.666 3.5 5.25 9.917 2.333 7'/%3E%3C/svg%3E");
}
.checkbox input:focus-visible {
	box-shadow: 0 0 0 2px rgba(46, 144, 250, .2);
}
.checkbox span {
	max-width: 312px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}
.checkbox a {
	color: #175cd3;
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 2px;
	transition: color .2s ease, text-decoration-color .2s ease;
}
.checkbox a:hover {
	color: #1570ef;
	text-decoration-color: currentColor;
}
.form__submit {
	width: 100%;
	margin-top: 4px;
}

.form__file {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 48px;
	padding: 13px 16px;
	border: 1px dashed #d2d6db;
	border-radius: 6px;
	background: #f9fafb;
	cursor: pointer;
	transition: border-color var(--transition-base), box-shadow var(--transition-base);
}
.form__file::before {
	content: "";
	width: 16px;
	height: auto;
	aspect-ratio: 1;
	flex: 0 0 auto;
	margin-right: 6px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m14.102 7.266-6.01 6.01a3.5 3.5 0 0 1-4.95-4.95l6.01-6.01a2.333 2.333 0 0 1 3.3 3.3l-5.775 5.775a1.167 1.167 0 0 1-1.65-1.65l5.068-5.068'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.form__file:hover {
	border-color: #9da4ae;
}
.form__file:focus-within {
	border-color: #2e90fa;
	box-shadow: 0 0 0 1px #2e90fa;
}
.form__file.is-dragover {
	border-color: #2e90fa;
	background: #eff8ff;
	box-shadow: 0 0 0 1px #2e90fa;
}
.form__file.has-file {
	border-style: solid;
}
.form__file input {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	min-height: 0;
	padding: 0;
	border: 0;
	opacity: 0;
	cursor: pointer;
}
.form__file span {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 1 1 auto;
	min-width: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20px / 14px);
	color: #6c737f;
}
.form__file b {
	min-width: 0;
	overflow: hidden;
	font-weight: 600;
	color: #4d5761;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.form__file em {
	flex: 0 0 auto;
	font-style: normal;
	white-space: nowrap;
}
@media (max-width: 359px) {
	.form__file span {
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
	}
	.form__file b,
	.form__file em {
		max-width: 100%;
	}
}

.city-modal {
	display: flex;
	flex-direction: column;
	height: min(600px, calc(100vh - 48px));
	overflow: hidden;
}
.city-modal__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 0;
}
.city-modal__search {
	position: relative;
	flex: 0 0 auto;
	margin-bottom: 12px;
}
.city-modal__search::before {
	position: absolute;
	top: 50%;
	left: 18px;
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m17.5 17.5-2.917-2.917m1.667-5.416a7.083 7.083 0 1 1-14.167 0 7.083 7.083 0 0 1 14.167 0'/%3E%3C/svg%3E");
	transform: translateY(-50%);
	pointer-events: none;
}
.city-modal__search input {
	width: 100%;
	height: 52px;
	padding: 13px 52px 13px 46px;
	border: 2px solid #d2d6db;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #1f2a37;
	background: #ffffff;
	transition: border-color var(--transition-base);
}
.city-modal__search input:focus {
	border-color: #2e90fa;
}
.city-modal__search input::placeholder {
	color: #6c737f;
	opacity: 1;
}
.city-modal__search input::-webkit-search-cancel-button,
.city-modal__search input::-webkit-search-decoration {
	-webkit-appearance: none;
	appearance: none;
}
.city-modal__search input::-ms-clear {
	display: none;
}
.city-modal__clear {
	position: absolute;
	top: 50%;
	right: 10px;
	width: 32px;
	height: auto;
	aspect-ratio: 1;
	border-radius: 6px;
	transform: translateY(-50%);
	opacity: 0;
	visibility: hidden;
}
.city-modal__clear.visible {
	opacity: 1;
	visibility: visible;
}
.city-modal__clear::before {
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23d2d6db' stroke-linecap='round' stroke-width='1.667' d='m5 5 10 10M15 5 5 15'/%3E%3C/svg%3E");
}
.city-modal__clear:hover {
	background: #f3f4f6;
}
.city-modal__label {
	flex: 0 0 auto;
	padding: 12px 16px 4px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}
.city-modal__list {
	flex: 1 1 auto;
	min-height: 0;
	margin: 0;
	padding: 4px 0;
	list-style: none;
	overflow-x: hidden;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: rgba(0, 0, 0, .15) transparent;
}
.city-modal__list::-webkit-scrollbar {
	width: 12px;
}
.city-modal__list::-webkit-scrollbar-track {
	background: transparent;
}
.city-modal__list::-webkit-scrollbar-thumb {
	border: 3px solid #ffffff;
	border-radius: 999px;
	background: rgba(0, 0, 0, .15);
}
.city-modal__list li {
	margin: 0;
	padding: 0;
}
.city-modal__list button {
	position: relative;
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	min-height: 44px;
	padding: 10px 44px 10px 16px;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	text-align: left;
	color: #111927;
}
.city-modal__list button:hover,
.city-modal__list button.active {
	background: #f3f4f6;
}
.city-modal__list button.active::after {
	position: absolute;
	top: 50%;
	right: 16px;
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m3.333 10 4.167 4.167L16.667 5'/%3E%3C/svg%3E");
	transform: translateY(-50%);
}
.city-modal__region {
	font-weight: 400;
	color: #4d5761;
}
.city-modal__empty {
	padding: 18px 16px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
}
@media (max-width: 575px) {
	.mfp-container {
		padding: 0;
	}
	.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
		height: 100dvh;
	}
	.modal.modal--form {
		width: calc(100% - 32px);
		max-width: none;
		height: 100%;
		max-height: calc(100dvh - 32px);
		margin: 16px auto;
		padding: 40px 24px 24px;
		gap: 20px;
		overflow-x: hidden;
		overflow-y: auto;
		border-radius: 12px;
	}
	.modal--form .modal__title {
		margin: 0 24px 0 0;
		font-size: 24px;
		line-height: calc(32px / 24px);
	}
	.modal--form .modal__description {
		max-width: none;
	}
	.modal--form .form__group--email {
		display: flex;
	}
	.modal--form .form__submit {
		min-height: 48px;
		padding: 12px 18px;
	}
	.modal {
		width: calc(100% );
		max-width: none;
		height: calc(100vh);
		height: calc(100dvh);
		margin: 0 auto;
		padding: 28px 20px 20px;
		overflow-x: hidden;
		overflow-y: auto;
		border-radius: 0;
	}
	.modal__title {
		margin-right: 44px;
		font-size: 22px;
		line-height: calc(30px / 22px);
	}
	button.mfp-close.modal__close {
		top: 14px;
		right: 14px;
	}

	.mfp-content .modal--form + button.mfp-close.modal__close,
	.mfp-content .modal--form button.mfp-close.modal__close {
		top: 16px;
		right: 16px;
	}
	.modal.modal--success {
		width: calc(100% - 32px);
		max-width: none;
		min-height: 216px;
		padding: 48px 24px 40px;
	}
	.city-modal {
		width: calc(100% - 32px);
		max-width: none;
		height: calc(100vh - 32px);
		height: calc(100dvh - 32px);
		margin: 16px auto;
		overflow: hidden;
		border-radius: 12px;
	}
	.city-modal__search {
		padding: 4px 12px 12px;
	}
	.city-modal__search::before {
		left: 26px;
	}
	.city-modal__clear {
		right: 22px;
	}
}
.header__catalog-menu {
	position: absolute;
	top: calc(100% - 1px);
	left: 0;
	z-index: 55;
	width: 100%;
	max-height: calc(100vh - 139px);
	max-height: calc(100dvh - 139px);
	padding: 32px 0 80px;
	overflow-y: auto;
	overscroll-behavior: contain;
	background: #ffffff;
	box-shadow: 0 4px 6px -2px rgba(10, 13, 18, .03), 0 10px 14px -4px rgba(10, 13, 18, .03);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(-8px);
	transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
}
.header__catalog-menu.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}
.header.is-main-fixed .header__catalog-menu {
	position: fixed;
	top: 79px;
	max-height: calc(100vh - 79px);
	max-height: calc(100dvh - 79px);
}
.header__catalog-menu[hidden] {
	display: none;
}
.header__catalog-menu-container {
	display: flex;
	align-items: stretch;
	gap: 32px;
	min-height: 600px;
}
.header__catalog-nav {
	flex: 0 0 300px;
}
.header__catalog-nav ul,
.header__catalog-group ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.header__catalog-nav ul {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.header__catalog-nav li,
.header__catalog-group li {
	margin: 0;
	padding: 0;
}
.header__catalog-nav a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 44px;
	padding: 10px 40px 10px 12px;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #384250;
	transition: color var(--transition-base), background var(--transition-base);
}
.header__catalog-nav a:hover,
.header__catalog-nav a.active {
	color: #175cd3;
	background: #f9fafb;
}
.header__catalog-nav a.active::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}
.header__catalog-content {
	flex: 1 1 auto;
	min-width: 0;
	padding: 8px 0 0 32px;
	border-left: 1px solid #e5e7eb;
}
.header__catalog-panel {
	display: flex;
	flex-direction: column;
	gap: 40px;
	opacity: 1;
	transform: translateY(0);
	transition: opacity .18s ease, transform .18s ease;
}
.header__catalog-panel.is-leaving {
	opacity: 0;
	transform: translateY(6px);
}
.header__catalog-panel.is-entering {
	opacity: 0;
	transform: translateY(6px);
}
.header__catalog-panel[hidden] {
	display: none;
}
.header__catalog-title {
	align-self: flex-start;
	font-size: 24px;
	font-weight: 600;
	line-height: calc(32px / 24px);
	color: #1f2a37;
	transition: color var(--transition-base);
}
.header__catalog-title:hover {
	color: #1570ef;
}
.header__catalog-groups {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
	width: 100%;
}
.header__catalog-group {
	min-width: 0;
}
.header__catalog-group h3 {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #1f2a37;
}
.header__catalog-group ul {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.header__catalog-group li {
	opacity: 1;
	transform: translateY(0);
	transition: opacity .16s ease, transform .16s ease;
}
.header__catalog-group li.is-entering,
.header__catalog-group li.is-leaving {
	opacity: 0;
	transform: translateY(-4px);
}
.header__catalog-group li[hidden] {
	display: none;
}
.header__catalog-group a {
	display: inline-flex;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #4d5761;
	transition: color var(--transition-base);
}
.header__catalog-group a:hover {
	color: #1570ef;
}
.header__catalog-more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 8px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #4d5761;
	transition: color var(--transition-base);
}
.header__catalog-more::after {
	content: "";
	width: 16px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.333' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transition: transform var(--transition-base);
}
.header__catalog-more:hover {
	color: #1570ef;
}
.header__catalog-more[aria-expanded="true"]::after {
	transform: rotate(180deg);
}
@media (max-width: 1420px) {
	.header__catalog-menu-container {
		gap: 24px;
	}
	.header__catalog-nav {
		flex-basis: 260px;
	}
	.header__catalog-content {
		padding-left: 24px;
	}
	.header__catalog-groups {
		gap: 32px 24px;
	}
}
@media (max-width: 1280px) {
	.header__catalog-menu {
		padding-bottom: 64px;
	}
	.header__catalog-menu-container {
		min-height: 560px;
	}
	.header__catalog-nav {
		flex-basis: 240px;
	}
	.header__catalog-groups {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 1120px) {
	.header__catalog-nav {
		flex-basis: 220px;
	}
	.header__catalog-nav a,
	.header__catalog-group a,
	.header__catalog-group h3,
	.header__catalog-more {
		font-size: 14px;
	}
	.header__catalog-title {
		font-size: 22px;
		line-height: calc(30px / 22px);
	}
}
@media (max-width: 1020px) {
	.header__catalog-menu {
		display: none !important;
	}
}


/* ========== MOBILE MENU ========== */
.header__mobile-menu {
	display: none;
}
@media (max-width: 1020px) {
	body.is-mobile-menu-open {
		overflow: hidden;
	}
	.header__mobile-menu {
		position: fixed;
		inset: 0;
		z-index: 120;
		display: block;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .22s ease, visibility .22s ease;
	}
	.header__mobile-menu.is-visible {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	.header__mobile-menu-overlay {
		position: absolute;
		inset: 0;
		background: rgba(13, 18, 28, .7);
		backdrop-filter: blur(8px);
		opacity: 0;
		transition: opacity .22s ease;
	}
	.header__mobile-menu.is-visible .header__mobile-menu-overlay {
		opacity: 1;
	}
	.header__mobile-menu-container {
		position: relative;
		z-index: 1;
		display: flex;
		flex-direction: column;
		width: 100%;
		max-width: none;
		height: 100dvh;
		max-height: 100dvh;
		background: #ffffff;
		transform: translateX(-100%);
		transition: transform .25s ease;
	}
	.header__mobile-menu.is-visible .header__mobile-menu-container {
		transform: translateX(0);
	}
	.header__mobile-menu-main {
		flex: 1 1 auto;
		min-height: 0;
		overflow-y: auto;
		overflow-x: hidden;
	}
	.header__mobile-menu-header {
		position: relative;
		z-index: 3;
		display: flex;
		flex-direction: column;
		gap: 16px;
		padding: 12px 16px 0;
	}
	.header__mobile-menu-row,
	.header__mobile-menu-left {
		display: flex;
		align-items: center;
	}
	.header__mobile-menu-row {
		justify-content: space-between;
	}
	.header__mobile-menu-left {
		gap: 6px;
	}
	.header__mobile-menu-close {
		width: 34px;
		height: auto;
		aspect-ratio: 1;
		border-radius: 7px;
	}
	.header__mobile-menu-close::before {
		content: "";
		display: block;
		width: 20px;
		height: auto;
		aspect-ratio: 1;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-width='1.667' d='m15 5-10 10M5 5l10 10'/%3E%3C/svg%3E");
	}
	.header__mobile-menu-close:hover {
		background: #f3f4f6;
	}
	.header__mobile-menu-logo {
		display: block;
		width: 100px;
		height: auto;
		aspect-ratio: 100 / 30;
		overflow: hidden;
	}
	.header__mobile-menu-logo img {
		width: 100%;
		height: auto;
		aspect-ratio: 100 / 30;
		object-fit: contain;
	}
	.header__mobile-menu-city {
		display: flex;
		align-items: center;
		gap: 6px;
		padding: 0;
		font-size: 14px;
		font-weight: 500;
		line-height: calc(20px / 14px);
		color: #4d5761;
	}
	.header__mobile-menu-city::before {
		content: "";
		display: block;
		width: 14px;
		height: auto;
		aspect-ratio: 1;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.524' d='M1.991 6.268c-.347-.135-.52-.203-.571-.3a.3.3 0 0 1 0-.27c.05-.097.224-.165.57-.3l9.852-3.844c.313-.123.47-.184.57-.15a.29.29 0 0 1 .184.184c.034.1-.027.257-.15.57l-3.844 9.851c-.135.347-.203.52-.3.571a.3.3 0 0 1-.27 0c-.097-.05-.165-.224-.3-.571L6.2 8.066c-.027-.07-.04-.105-.062-.135a.3.3 0 0 0-.068-.068.6.6 0 0 0-.135-.062z'/%3E%3C/svg%3E");
	}
	.header__mobile-menu-city:hover {
		color: #1570ef;
	}
	.header__mobile-menu-search {
		position: relative;
		width: 100%;
	}
	.header__mobile-menu-search::before {
		content: "";
		position: absolute;
		top: 12px;
		left: 14px;
		z-index: 3;
		width: 20px;
		height: auto;
		aspect-ratio: 1;
		pointer-events: none;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m17.5 17.5-2.917-2.917m2.084-5a7.083 7.083 0 1 1-14.167 0 7.083 7.083 0 0 1 14.167 0'/%3E%3C/svg%3E");
	}
	.header__mobile-menu-search input {
		position: relative;
		z-index: 2;
		width: 100%;
		height: 44px;
		padding: 11px 44px 11px 42px;
		border: 1px solid #d2d6db;
		border-radius: 6px;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20px / 14px);
		color: #111927;
		background: #ffffff;
		transition: border-color var(--transition-base), box-shadow var(--transition-base);
	}
	.header__mobile-menu-search.is-results-open input,
	.header__mobile-menu-search:focus-within input {
		border-color: #ff692e;
		box-shadow: 0 0 0 1px #ff692e;
	}
	.header__mobile-menu-search input::placeholder {
		color: #6c737f;
		opacity: 1;
	}
	.header__mobile-menu-search input::-webkit-search-cancel-button,
	.header__mobile-menu-search input::-webkit-search-decoration {
		-webkit-appearance: none;
		appearance: none;
	}
	.header__mobile-menu-search input::-ms-clear {
		display: none;
	}
	.header__search-clear--mobile-menu {
		top: 22px;
		right: 8px;
		z-index: 4;
	}
	.header__search-dropdown--mobile-menu {
		top: 52px;
		left: 0;
		z-index: 5;
		width: 100%;
		min-height: 0;
		padding: 12px;
		border-radius: 6px;
		box-shadow: 0 10px 14px -4px rgba(10, 13, 18, .08), 0 4px 6px -2px rgba(10, 13, 18, .03);
		animation: mobileSearchDropdownIn .18s ease;
	}
	.header__mobile-menu-search.is-results-open {
		z-index: 6;
	}
	.header__mobile-menu-nav {
		margin-top: 20px;
		padding: 0 8px;
	}
	.header__mobile-menu-nav ul,
	.header__mobile-menu-nav li {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.header__mobile-menu-nav > ul > li {
		position: relative;
	}
	.header__mobile-menu-nav > ul > li:nth-child(-n+2)::after {
		content: "";
		position: absolute;
		right: 12px;
		bottom: 0;
		left: 12px;
		height: 1px;
		background: #e5e7eb;
	}
	.header__mobile-menu-nav a {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 10px 16px;
		border-radius: 6px;
		font-size: 16px;
		font-weight: 500;
		line-height: 1.5;
		color: #1f2a37;
		transition: color var(--transition-base), background var(--transition-base);
	}
	.header__mobile-menu-nav a:hover {
		color: #1570ef;
		background: #f9fafb;
	}
	.header__mobile-menu-nav li:has(> ul) > a {
		justify-content: space-between;
		gap: 8px;
	}
	.header__mobile-menu-nav li:has(> ul) > a::after {
		content: "";
		display: block;
		width: 16px;
		height: auto;
		aspect-ratio: 1;
		flex: 0 0 16px;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
		transition: transform .25s ease;
	}
	.header__mobile-menu-nav li.open > a::after {
		transform: rotate(180deg);
	}
	.header__mobile-menu-nav li > ul {
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		transform: translateY(-4px);
		transition: max-height .3s ease, opacity .2s ease, transform .2s ease;
	}
	.header__mobile-menu-nav li.open > ul {
		max-height: 310px;
		overflow-y: auto;
		opacity: 1;
		transform: translateY(0);
	}
	.header__mobile-menu:has(.header__mobile-menu-nav > ul > li.open) .header__mobile-menu-container {
		overflow-y: auto;
		overflow-x: hidden;
		overscroll-behavior: contain;
	}
	.header__mobile-menu:has(.header__mobile-menu-nav > ul > li.open) .header__mobile-menu-main {
		flex: 0 0 auto;
		overflow: visible;
	}
	.header__mobile-menu:has(.header__mobile-menu-nav > ul > li.open) .header__mobile-menu-nav li.open > ul {
		max-height: 1000px;
		overflow: visible;
	}
	.header__mobile-menu-nav li > ul a {
		padding-left: 32px;
		color: #384250;
	}
	.header__mobile-menu-footer {
		flex: 0 0 auto;
		background: #ffffff;
	}
	.header__mobile-menu-contacts {
		display: flex;
		flex-direction: column;
		padding: 0 24px;
	}
	.header__mobile-menu-contacts a:first-child {
		padding: 4px 0;
		font-size: 20px;
		font-weight: 600;
		line-height: 1.5;
		color: #111927;
	}
	.header__mobile-menu-contacts a:last-child {
		padding: 4px 0;
		font-size: 16px;
		font-weight: 600;
		line-height: 1.5;
		color: #4d5761;
	}
	.header__mobile-menu-contacts a:hover {
		color: #1570ef;
	}
	.header__mobile-menu-social {
		display: flex;
		align-items: center;
		gap: 8px;
		padding: 12px 16px;
	}
	.header__mobile-menu-social-link {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 34px;
		height: auto;
		aspect-ratio: 1;
		border-radius: 4px;
		background: #f3f4f6;
		transition: background var(--transition-base);
	}
	.header__mobile-menu-social-link::before {
		content: "";
		display: block;
		width: 20px;
		height: auto;
		aspect-ratio: 1;
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
	}
	.header__mobile-menu-social-link--max::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath fill='%231570ef' d='M9.88 2.534c-4.647.243-7.715 3.888-7.521 8.484.084 2.011.893 3.742 1.085 5.651.049.495-.094 1.105.476 1.321.702.265 1.778-.18 2.366-.588.2-.136.392-.294.54-.49.608.403 1.184.793 1.909.967 3.187.764 6.68-.985 8.233-3.794 2.918-5.277-1.027-11.867-7.088-11.55M8.075 13.548c-.252.196-.494.464-.773.617-.403.216-.528-.009-.68-.365-.476-1.134-.534-3.065-.256-4.253.375-1.615 1.624-3.036 3.342-3.188 1.738-.153 3.35.729 4.079 2.322 1.613 3.544-2.515 7.044-5.712 4.87z'/%3E%3C/svg%3E");
	}
	.header__mobile-menu-social-link--telegram::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath fill='%231570ef' fill-rule='evenodd' d='M2.703 9.399c4.715-2.048 7.853-3.409 9.43-4.069 4.485-1.872 5.428-2.195 6.035-2.209.134 0 .43.027.633.189.161.134.202.31.229.444.027.135.054.418.027.633-.243 2.56-1.294 8.77-1.832 11.626-.23 1.212-.674 1.616-1.105 1.657-.943.08-1.657-.62-2.56-1.213-1.428-.93-2.222-1.508-3.61-2.424-1.603-1.051-.566-1.63.35-2.573.243-.243 4.378-4.015 4.46-4.351.013-.04.013-.203-.082-.283-.094-.081-.229-.054-.336-.027-.148.027-2.411 1.535-6.817 4.513-.646.444-1.225.66-1.75.646-.58-.013-1.685-.323-2.52-.593-1.01-.323-1.818-.498-1.751-1.064.04-.296.444-.593 1.199-.902' clip-rule='evenodd'/%3E%3C/svg%3E");
	}
	.header__mobile-menu-social-link--vk::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath fill='%231570ef' d='M10.476 15.31c-5.809 0-9.121-3.981-9.26-10.607h2.91c.096 4.863 2.24 6.923 3.94 7.348V4.703h2.739v4.194c1.678-.18 3.44-2.091 4.035-4.194h2.74c-.457 2.591-2.369 4.502-3.728 5.288 1.36.637 3.536 2.304 4.365 5.32H15.2c-.648-2.018-2.262-3.578-4.396-3.79v3.79z'/%3E%3C/svg%3E");
	}
	.header__mobile-menu-social-link:hover {
		background: #e5e7eb;
	}
	.header__mobile-menu-action {
		padding: 16px 16px 24px;
	}
	.header__mobile-menu-action .btn {
		width: 100%;
		min-height: 44px;
		padding: 10px 16px;
		line-height: 1.5;
	}

	/* На тач-устройствах мобильное меню работает без hover-подсветки. */
	.header__mobile-menu a,
	.header__mobile-menu button {
		-webkit-tap-highlight-color: transparent;
	}
	.header__mobile-menu-close:hover {
		background: transparent;
	}
	.header__mobile-menu-city:hover {
		color: #4d5761;
	}
	.header__mobile-menu .header__search-clear:hover {
		background-color: transparent;
	}
	.header__mobile-menu .header__search-clear:hover::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M15 5 5 15M5 5l10 10'/%3E%3C/svg%3E");
	}
	.header__mobile-menu .header__search-suggestions button:hover,
	.header__mobile-menu .header__search-suggestions button:active {
		color: #384250;
		background: #f3f4f6;
	}
	.header__mobile-menu .header__search-quick:hover {
		border-color: #d2d6db;
		color: #1f2a37;
		background: #ffffff;
	}
	.header__mobile-menu-nav a:hover {
		color: #1f2a37;
		background: transparent;
	}
	.header__mobile-menu-nav li > ul a:hover {
		color: #384250;
	}
	.header__mobile-menu-contacts a:first-child:hover {
		color: #111927;
	}
	.header__mobile-menu-contacts a:last-child:hover {
		color: #4d5761;
	}
	.header__mobile-menu-social-link:hover {
		background: #f3f4f6;
	}
	.header__mobile-menu .btn-primary:hover {
		background: var(--color-accent);
	}
	.header__mobile-menu .btn:active {
		transform: none;
	}
}

/* ========== HERO ========== */
.hero {
	position: relative;
	height: 644px;
	overflow: hidden;
	background: #102A56;
}
.hero__slider,
.hero__slider .swiper-wrapper,
.hero__slide {
	height: 100%;
}
.hero__slide {
	position: relative;
	overflow: hidden;
}
.hero__slide::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	z-index: 1;
	height: 55%;
	background: linear-gradient(180deg, rgba(11, 40, 78, 0) 0%, rgba(10, 39, 78, .9) 100%);
	pointer-events: none;
}
.hero__picture {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}
.hero__picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.hero__slide > .container {
	position: relative;
	z-index: 2;
	height: 100%;
}
.hero__slide-container {
	height: 100%;
}
.hero__content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 832px;
	height: 100%;
	padding: 60px 0;
	color: #ffffff;
}
.hero__stat {
	font-size: 24px;
	font-weight: 500;
	line-height: calc(32px / 24px);
	color: rgba(255, 255, 255, .98);
}
.hero__title {
	margin: 0 0 40px;
	font-size: 48px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -.02em;
	color: #ffffff;
}
.hero__catalog.btn-border {
	min-height: 52px;
	padding: 13px 24px;
	border-color: #fcfcfd;
	font-size: 16px;
	line-height: 1.5;
	color: #ffffff;
}
.hero__catalog.btn-border:hover {
	border-color: #ffffff;
	color: #111927;
	background: #ffffff;
}
.hero__pagination.swiper-pagination {
	left: calc(50% + 90px);
	bottom: 82px;
	z-index: 4;
	display: flex;
	align-items: center;
	width: auto;
}
.hero__pagination .swiper-pagination-bullet {
	width: 10px;
	height: auto;
	aspect-ratio: 1;
	margin: 0 8px !important;
	opacity: 1;
	background: rgba(255, 255, 255, .56);
	transition: background var(--transition-base), transform var(--transition-base);
}
.hero__pagination .swiper-pagination-bullet-active {
	background: rgba(255, 255, 255, .98);
}
.hero__pagination .swiper-pagination-bullet:hover {
	transform: scale(1.15);
}
.hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
}
.hero__overlay > .container {
	height: 100%;
}
.hero__container {
	display: flex;
	justify-content: flex-end;
	height: 100%;
	padding-top: 40px;
}
.hero__form {
	width: 432px;
	align-self: flex-start;
	gap: 20px;
	padding: 32px 40px 40px;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 0 24px -4px rgba(10, 13, 18, .08), 0 0 8px -4px rgba(10, 13, 18, .03), 0 0 3px -2px rgba(10, 13, 18, .04);
	pointer-events: auto;
}
.hero__form-header {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.hero__form-title {
	margin: 0;
	font-size: 24px;
	font-weight: 600;
	line-height: calc(32px / 24px);
	color: #111927;
}
.hero__form-header p {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
}
.hero__form-fields {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.hero__form .form__group {
	gap: 0;
}
.hero__form .form__group > input {
	min-height: 48px;
	padding: 11px 16px;
	border-color: #e5e7eb;
	background: #f9fafb;
}
.hero__form .form__file {
	min-height: 48px;
	padding: 13px 16px;
}
.hero__form .checkbox {
	gap: 12px;
}
.hero__form .checkbox input {
	margin-top: 0;
}
.hero__form .checkbox span {
	max-width: none;
	font-size: 14px;
	line-height: calc(20px / 14px);
}
.hero__form > .btn {
	width: 100%;
}
@media (max-width: 1420px) and (min-width: 1021px) {
	.hero__content {
		width: calc(100% - 500px);
	}
	.hero__form {
		width: 400px;
		padding-inline: 32px;
	}
	.hero__title {
		font-size: 42px;
	}
}
@media (max-width: 1220px) and (min-width: 1021px) {
	.hero__content {
		width: calc(100% - 430px);
	}
	.hero__form {
		width: 372px;
		padding: 28px;
	}
	.hero__title {
		font-size: 38px;
	}
	.hero__pagination.swiper-pagination {
		left: calc(50% + 80px);
	}
}
@media (max-width: 1020px) {
	.hero {
		height: auto;
		border-radius: 0;
		background: #F3F4F6;
	}
	.hero__slider {
		height: 276px;
	}
	.hero__slide::after {
		height: 40%;
		background: linear-gradient(0deg, #102A56 15.87%, rgba(16, 42, 86, 0.00) 100%);
	}
	.hero .container {
		max-width: none;
		padding-left: 16px;
		padding-right: 16px;
	}
	.hero__content {
		width: 100%;
		padding: 24px 0;
	}
	.hero__stat {
		display: none;
	}
	.hero__content-bottom {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		height: 100%;
	}
	.hero__title {
		max-width: 410px;
		margin: 0;
		font-size: 24px;
		line-height: 1.25;
		letter-spacing: 0;
	}
	.hero__catalog.btn-border {
		width: fit-content;
		min-height: 40px;
		padding: 7px 24px;
	}
	.hero__pagination.swiper-pagination {
		left: auto;
		right: 8px;
		bottom: 23px;
	}
	.hero__pagination .swiper-pagination-bullet {
		width: 6px;
		margin: 0 4px !important;
	}
	.hero__overlay {
		position: relative;
		inset: auto;
		padding-bottom: 40px;
		border-radius: 0 0 12px 12px;
		background: #102A56;
	}
	.hero__overlay > .container {
		height: auto;
	}
	.hero__container {
		display: block;
		height: auto;
		padding-top: 0;
	}
	.hero__form {
		width: 100%;
		padding: 24px;
	}
	.hero__form-title {
		font-size: 20px;
		line-height: 1.5;
	}
	.hero__form-header p {
		font-size: 14px;
		line-height: calc(20px / 14px);
		color: #4d5761;
	}
	.form__file {
		width: fit-content;
		min-height: 28px;
		padding: 4px 0;
		border: 0;
		background: transparent;
	}
	.hero__form .form__file {
		min-height: 28px;
		padding: 0;
	}
	.form__file::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m14.102 7.266-6.01 6.01a3.5 3.5 0 0 1-4.95-4.95l6.01-6.01a2.333 2.333 0 0 1 3.3 3.3l-5.775 5.775a1.167 1.167 0 0 1-1.65-1.65l5.068-5.068'/%3E%3C/svg%3E");
	}
	.form__file:hover,
	.form__file:focus-within,
	.form__file.is-dragover,
	.form__file.has-file {
		border: 0;
		background: transparent;
		box-shadow: none;
	}
	.form__file em {
		display: none;
	}
	.form__file b {
		font-weight: 500;
	}
	.hero__form > .btn {
		min-height: 44px;
		padding: 9px 16px;
	}
}
@media (max-width: 575px) {
	.hero__title {
		max-width: 310px;
	}
}
@media (max-width: 359px) {
	.hero .container {
		padding-left: 12px;
		padding-right: 12px;
	}
	.hero__form {
		padding: 20px 16px;
	}
	.hero__title {
		font-size: 22px;
	}
}

/* ========== SECTION HEADER ========== */

.section__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 32px;
}

.section__content {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}

.section__title {
	margin: 0;
	font-size: 36px;
	font-weight: 600;
	line-height: calc(44px / 36px);
	letter-spacing: -0.02em;
	color: #111927;
}

.section__subtitle {
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28px / 18px);
	color: #4d5761;
}

.section__controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	flex: none;
	padding-bottom: 8px;
}

/* ========== CABLE CATEGORIES ========== */

.cable-categories {
	padding: 64px 0 40px;
	background: #F3F4F6;
}

.cable-categories__container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.cable-categories__grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
}

.cable-categories__item {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 1;
	border-radius: 10px;
	background: #e5e7eb;
	overflow: hidden;
	transition: background var(--transition-base);
}

.cable-categories__item:hover {
	background: #d9e0e9;
}

.cable-categories__item span {
	position: absolute;
	top: 15px;
	left: 16px;
	right: 16px;
	z-index: 2;
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28px / 18px);
	color: #111927;
}

.cable-categories__item img {
	position: absolute;
	top: 56px;
	left: -20px;
	width: 162px;
	max-width: none;
	aspect-ratio: 1;
	object-fit: contain;
	pointer-events: none;
}

.section__all {
	min-height: 40px;
	gap: 6px;
	padding: 9px 12px;
	border-color: #d2d6db;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #4d5761;
	background: transparent;
}

.section__all::after {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
	transition: .25s all ease-in-out;
}

.section__all:hover {
	border-color: #9da4ae;
	color: var(--color-accent);
	background: transparent;
}

/* .section__all:hover::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
} */

@media (max-width: 1280px) {
	.cable-categories__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cable-categories__item img {
		width: 74%;
	}
}

@media (max-width: 777px) {
	.section__title {
		font-size: 24px;
		line-height: calc(32px / 24px);
		letter-spacing: 0;
	}

	.section__subtitle {
		font-size: 16px;
		line-height: 1.5;
	}

	.cable-categories {
		padding: 40px 0 24px;
	}

	.cable-categories__container {
		gap: 24px;
	}

	.cable-categories .section__header {
		display: contents;
	}

	.cable-categories .section__content {
		order: 1;
	}

	.cable-categories__grid {
		order: 2;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.cable-categories .section__controls {
		order: 3;
		width: 100%;
		padding-bottom: 0;
	}

	.cable-categories__item span {
		font-size: 16px;
		line-height: 1.5;
	}

	.cable-categories__item img {
		top: 48px;
		left: -6px;
		width: 75.05%;
	}

	.section__all {
		width: 100%;
		min-height: 40px;
		gap: 4px;
		padding: 9px 14px;
		font-weight: 600;
		color: #384250;
	}

	.section__all::after {
		width: 16px;
		background-size: 16px;
	}
}


/* ========== OFFERS ========== */

.offers {
	padding: 40px 0;
	background: #F3F4F6;
}

.offers__container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.offers__slider-wrap {
	position: relative;
	width: 100%;
}

.offers__slider {
	width: 100%;
	overflow: hidden;
}

.product-card {
	transition: box-shadow var(--transition-base);
}

.product-card:hover {
	box-shadow: 0 0 24px -4px rgba(10, 13, 18, 0.08), 0 0 8px -4px rgba(10, 13, 18, 0.03), 0 0 3px -1.5px rgba(10, 13, 18, 0.04);
}

.product-card.swiper-slide {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 24px;
	height: auto;
	padding: 20px;
	border-radius: 10px;
	background: #ffffff;
}

.product-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 16px;
}

.product-card__image  {
	aspect-ratio: 4 / 3;
	position: relative;
	height: auto;
	overflow: hidden;
}

.product-card__image:hover img {
	opacity: .9;
}

.product-card__image img {
	aspect-ratio: 4 / 3;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: contain;
	pointer-events: none;
	transition: .25s opacity ease-in-out;
}

.product-card__badge {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	color: #ffffff;
	background: #41b619;
}

.product-card__info {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 8px;
}

.product-card__title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28px / 18px);
	color: #111927;
}

.product-card__title:hover {
	color: #1570ef;
}

.product-card__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: auto;
}

.product-card__rating,
.product-card__stock {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	white-space: nowrap;
}

.product-card__rating::before {
	content: "";
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='%23fdb022' d='M6.677 1.127a.35.35 0 0 1 .646 0L8.77 4.604a.35.35 0 0 0 .296.214l3.754.301a.35.35 0 0 1 .2.615l-2.86 2.45a.35.35 0 0 0-.114.347l.874 3.663a.35.35 0 0 1-.523.38l-3.214-1.963a.35.35 0 0 0-.364 0l-3.214 1.963a.35.35 0 0 1-.523-.38l.874-3.663a.35.35 0 0 0-.113-.347l-2.86-2.45a.35.35 0 0 1 .2-.615l3.753-.3a.35.35 0 0 0 .296-.215z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h14v14H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
	width: 14px;
	height: auto;
	aspect-ratio: 1;
}

.product-card__rating span {
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #1f2a37;
}

.product-card__rating em {
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: calc(20px / 14px);
	color: #6c737f;
}

.product-card__stock {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	color: #067647;
}

.product-card__stock::before {
	content: "";
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' viewBox='0 0 12 12'%3E%3Cpath stroke='%2317b26a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M10 3 4.5 8.5 2 6'/%3E%3C/svg%3E");
	width: 12px;
	height: auto;
	aspect-ratio: 1;
}

.product-card__price {
	display: flex;
	align-items: flex-end;
	gap: 5px;
	min-width: 0;
	padding-top: 12px;
	white-space: nowrap;
}

.product-card__price span {
	padding-bottom: 2px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	color: #6c737f;
	white-space: nowrap;
}

.product-card__price strong {
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	color: #111927;
	white-space: nowrap;
}

.product-card__price--compact {
	gap: 4px;
}

.product-card__price--compact strong {
	font-size: 20px;
}

.product-card__price--compact span {
	font-size: 12px;
}

.product-card__price--small {
	gap: 3px;
}

.product-card__price--small strong {
	font-size: 17px;
}

.product-card__price--small span {
	font-size: 11px;
}

.product-card__price--tiny strong {
	font-size: 14px;
}

.product-card__price--tiny span {
	font-size: 10px;
}

.product-card__actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}

.product-card__add {
	width: 100%;
	min-height: 44px;
	padding: 11px 16px;
	font-size: 14px;
	line-height: calc(20px / 14px);
}

.product-card__add[hidden] {
	display: none;
}

.product-card__quantity {
	display: flex;
	align-items: stretch;
	gap: 8px;
	width: 100%;
	height: 44px;
}

.product-card__quantity[hidden] {
	display: none;
}

.product-card__counter {
	display: grid;
	grid-template-columns: 40px 1fr 40px;
	flex: 1 1 auto;
	min-width: 0;
	height: 44px;
	border: 1px solid #d2d6db;
	border-radius: 6px;
	overflow: hidden;
	background: #ffffff;
	transition: border-color .2s ease-in-out;
}

.product-card__counter:focus-within {
	border-color: #2e90fa;
}

.product-card__counter button,
.product-card__counter input {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	border: 0;
	outline: 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	color: #111927;
	background: transparent;
}

.product-card__counter input {
	width: 100%;
	padding: 0;
}

.product-card__counter button {
	font-size: 0;
	transition: background-color .2s ease-in-out;
}

.product-card__counter button::before {
	content: "";
	display: block;
	width: 16px;
	height: auto;
	aspect-ratio: 1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.product-card__minus::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M3.334 8h9.333'/%3E%3C/svg%3E");
}

.product-card__plus::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M8 3.333v9.333M3.334 8h9.333'/%3E%3C/svg%3E");
}

.product-card__counter button:hover,
.product-card__counter button:focus-visible,
.product-card__counter button:active {
	background: #eff8ff;
}

.product-card__counter .product-card__minus:hover::before,
.product-card__counter .product-card__minus:focus-visible::before,
.product-card__counter .product-card__minus:active::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M3.334 8h9.333'/%3E%3C/svg%3E");
}

.product-card__counter .product-card__plus:hover::before,
.product-card__counter .product-card__plus:focus-visible::before,
.product-card__counter .product-card__plus:active::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M8 3.333v9.333M3.334 8h9.333'/%3E%3C/svg%3E");
}

.product-card__cart {
	width: 44px;
	flex: 0 0 44px;
	border-radius: 6px;
	background: #1570ef;
}

.product-card__cart::before {
	content: "";
	width: 16px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M4.334 11.333h7.22c.632 0 .949 0 1.207-.114.228-.101.422-.264.562-.47.16-.233.216-.545.329-1.168l.9-4.953c.04-.216.06-.324.03-.408a.33.33 0 0 0-.147-.175C14.357 4 14.247 4 14.028 4H3.334m-2-2.667h.877c.162 0 .243 0 .308.03a.33.33 0 0 1 .142.12c.04.06.052.14.077.3L4.596 13.55c.025.16.038.24.077.3a.33.33 0 0 0 .141.12c.066.03.147.03.309.03h7.544'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.product-card__cart:hover {
	background: #175cd3;
}

.product-card__quick {
	width: 100%;
	min-height: 44px;
	gap: 6px;
	padding: 11px 16px;
	border-color: #d2d6db;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20px / 14px);
	color: #1f2a37;
	background: #ffffff;
}

.product-card__quick::before {
	content: "";
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='url(%23a)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M8.667 1.333 2.729 8.458c-.232.28-.349.419-.35.537-.002.102.044.2.123.264.092.074.274.074.637.074H8l-.667 5.333 5.938-7.125c.233-.279.349-.418.35-.536a.33.33 0 0 0-.123-.265c-.092-.074-.273-.074-.637-.074h-4.86z'/%3E%3Cdefs%3E%3ClinearGradient id='a' x1='2.378' x2='14.143' y1='14.666' y2='13.556' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23ff8b07'/%3E%3Cstop offset='1' stop-color='%23eb4701'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E");
	width: 16px;
	height: auto;
	aspect-ratio: 1;
}

.product-card__quick:hover {
	border-color: #9da4ae;
	color: #111927;
	background: #f9fafb;
}

.offers__arrow {
	position: absolute;
	top: 50%;
	z-index: 5;
	width: 48px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 10px 14px -4px rgba(10, 13, 18, .03), 0 4px 6px -2px rgba(10, 13, 18, .03);
	transform: translateY(-50%);
	border: 1px solid transparent
}

.offers__prev {
	left: -28px;
}

.offers__next {
	right: -28px;
}

.offers__arrow::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
	transition: .25s all ease-in-out;
}

.offers__arrow:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570EF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
}

.offers__prev::before {
	transform: rotate(180deg);
}

.offers__arrow:hover {
	background: #fff;
	border-color: #1570EF;
}

.offers__arrow.swiper-button-disabled {
	opacity: .4;
	pointer-events: none;
}

@media (max-width: 777px) {
	.offers {
		padding: 24px 0;
	}

	.offers__container {
		gap: 24px;
	}

	.offers .section__header {
		display: contents;
	}

	.offers .section__content {
		order: 1;
	}

	.offers__slider-wrap {
		order: 2;
	}

	.offers .section__controls {
		order: 3;
		width: 100%;
		padding-bottom: 0;
	}

	.offers .section__subtitle br {
		display: none;
	}

	.product-card.swiper-slide {
		gap: 16px;
		padding: 12px;
	}

	.product-card__content {
		gap: 12px;
	}

	.product-card__image  {
	aspect-ratio: 4 / 3;
		height: auto;
	}

	.product-card__badge {
		padding: 0 4px;
		border-radius: 2px;
		font-size: 11px;
		line-height: calc(20px / 11px);
	}

	.product-card__info {
		gap: 12px;
	}

	.product-card__title {
		font-size: 16px;
		line-height: 1.5;
	}


	.product-card__rating::before {
		font-size: 12px;
	}

	.product-card__rating span,
	.product-card__rating em,
	.product-card__stock {
		font-size: 12px;
		line-height: 1;
	}

	.product-card__price {
		padding-top: 4px;
	}

	.product-card__price span {
		font-size: 12px;
		font-weight: 400;
	}

	.product-card__add {
		min-height: 36px;
		padding: 7px 12px;
	}

	.product-card__quantity {
		height: 36px;
	}

	.product-card__counter {
		grid-template-columns: 32px 1fr 32px;
		height: 36px;
	}

	.product-card__cart {
		width: 36px;
		flex-basis: 36px;
	}

	.product-card__quick,
	.offers__arrow {
		display: none;
	}

	.offers .section__all {
		width: 100%;
		min-height: 40px;
		font-weight: 600;
	}
}

@media (max-width: 359px) {
	.product-card__quantity {
		gap: 4px;
	}

	.product-card__counter {
		grid-template-columns: 24px minmax(24px, 1fr) 24px;
	}

	.product-card__counter input {
		min-width: 24px;
		font-size: 13px;
	}

	.product-card__counter button::before {
		width: 14px;
	}

	.product-card__cart {
		width: 32px;
		flex-basis: 32px;
	}
}

/* ========== MANUFACTURERS ========== */

.manufacturers {
	padding: 64px 0;
	background: #F3F4F6;
}

.manufacturers__container {
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.manufacturers .section__content {
	max-width: 800px;
}

.manufacturers .section__subtitle {
	max-width: 600px;
}

.manufacturers__all-mobile {
	display: none;
}

.manufacturers__slider-wrap {
	position: relative;
	width: 100%;
	padding: 0 80px;
}

.manufacturers__slider {
	width: 100%;
	overflow: hidden;
}

.manufacturers__item.swiper-slide {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 48px;
	padding: 2px 12px;
	border-radius: 6px;
}

.manufacturers__item img {
	display: block;
	width: auto;
	height: 32px;
	max-width: 160px;
	object-fit: contain;
	transition: opacity var(--transition-base);
}

.manufacturers__item:hover img {
	opacity: .75;
}








.manufacturers__arrow {
	position: absolute;
	top: 50%;
	z-index: 5;
	width: 48px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 10px 14px -4px rgba(10, 13, 18, .03), 0 4px 6px -2px rgba(10, 13, 18, .03);
	transform: translateY(-50%);
	border: 1px solid transparent;
}

.manufacturers__prev {
	left: -28px;
}

.manufacturers__next {
	right: -28px;
}

.manufacturers__arrow::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
	transition: .25s all ease-in-out;
}

.manufacturers__arrow:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570EF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
}

.manufacturers__prev::before {
	transform: rotate(180deg);
}

.manufacturers__arrow:hover {
	background: #fff;
	border-color: #1570EF;
}


@media (max-width: 1280px) {
	.manufacturers__slider-wrap {
		padding: 0 56px;
	}
}

@media (max-width: 1020px) {
	.manufacturers__slider-wrap {
		padding: 0 36px;
	}
}

@media (max-width: 777px) {
	.manufacturers {
		padding: 24px 0;
	}

	.manufacturers__container {
		gap: 24px;
	}

	.manufacturers .section__header {
		display: contents;
	}

	.manufacturers .section__content {
		order: 1;
		max-width: none;
	}

	.manufacturers .section__subtitle {
		max-width: none;
	}

	.manufacturers__slider-wrap {
		order: 2;
		padding: 0;
	}

	.manufacturers__slider {
		height: 88px;
	}

	.manufacturers__item.swiper-slide {
		height: 36px;
		padding: 0 4px;
	}

	.manufacturers__item img {
		width: auto;
		height: 28px;
		max-width: 100%;
	}

	.manufacturers__arrow {
		display: none;
	}

	.manufacturers .section__controls {
		order: 3;
		width: 100%;
		padding-bottom: 0;
	}

	.manufacturers .section__all {
		width: 100%;
		min-height: 40px;
		font-weight: 600;
	}

	.manufacturers__all-desktop {
		display: none;
	}

	.manufacturers__all-mobile {
		display: inline;
	}
}

/* ========== OBJECTS ========== */

.objects {
	padding: 40px 0;
	background: #F3F4F6;
}

.objects__container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.objects .section__content {
	max-width: 800px;
}

.objects .section__subtitle {
	max-width: 800px;
}

.objects__slider-wrap {
	position: relative;
	width: 100%;
}

.objects__slider {
	width: 100%;
	overflow: hidden;
}

.object-card.swiper-slide {
	display: flex;
	flex-direction: column;
	gap: 4px;
	height: auto;
	padding: 24px;
	border-radius: 12px;
	color: #111927;
	background: #ffffff;
	transition: background var(--transition-base), box-shadow var(--transition-base);
}

.object-card:hover {
	color: #111927;
	background: #f9fafb;
	box-shadow: rgb(21 112 239) 0px 0px 0px 1px inset;
}

.object-card__meta {
	overflow: hidden;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #175cd3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.object-card__title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28px / 18px);
	color: #111927;
}

.object-card__text {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}

.objects__arrow {
	position: absolute;
	top: 50%;
	z-index: 5;
	width: 48px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 10px 14px -4px rgba(10, 13, 18, .03), 0 4px 6px -2px rgba(10, 13, 18, .03);
	transform: translateY(-50%);
	border: 1px solid transparent;
}

.objects__prev {
	left: -28px;
}

.objects__next {
	right: -28px;
}

.objects__arrow::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
	transition: .25s all ease-in-out;
}

.objects__arrow:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570EF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
}

.objects__prev::before {
	transform: rotate(180deg);
}

.objects__arrow:hover {
	background: #fff;
	border-color: #1570EF;
}

@media (max-width: 777px) {
	.objects {
		padding: 24px 0;
	}

	.objects__container {
		gap: 24px;
	}

	.objects .section__header {
		display: contents;
	}

	.objects .section__content {
		order: 1;
		max-width: none;
	}

	.objects .section__subtitle {
		max-width: none;
	}

	.objects__slider-wrap {
		order: 2;
	}

	.object-card.swiper-slide {
		width: min(360px, 82vw);
		padding: 24px;
	}

	.object-card__title {
		-webkit-line-clamp: 3;
		font-size: 16px;
		line-height: 1.5;
	}

	.objects__arrow {
		display: none;
	}

	.objects .section__controls {
		order: 3;
		width: 100%;
		padding-bottom: 0;
	}

	.objects .section__all {
		width: 100%;
		min-height: 40px;
		font-weight: 600;
	}
}

/* ========== NEWS ========== */

.news {
	padding: 40px 0 96px;
	background: #F3F4F6;
}

.news__container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.news .section__content {
	max-width: 800px;
}

.news .section__subtitle {
	max-width: 600px;
}

.news__all-mobile {
	display: none;
}

.news__slider-wrap {
	position: relative;
	width: 100%;
}

.news__slider {
	width: 100%;
	overflow: hidden;
}

.news-card.swiper-slide {
	display: flex;
	flex-direction: column;
	gap: 16px;
	height: auto;
	color: #111927;
}

.news-card__image {
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 10px;
	background: #e5e7eb;
}

.news-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--transition-base);
}

.news-card:hover .news-card__image img {
	transform: scale(1.03);
}

.news-card__content {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.news-card__date {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
}

.news-card__title {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
	transition: color var(--transition-base);
}

.news-card:hover .news-card__title {
	color: #175cd3;
}

.news__arrow {
	position: absolute;
	top: 90px;
	z-index: 5;
	width: 48px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 10px 14px -4px rgba(10, 13, 18, .03), 0 4px 6px -2px rgba(10, 13, 18, .03);
	transform: translateY(-50%);
	border: 1px solid transparent;
}

.news__prev {
	left: -28px;
}

.news__next {
	right: -28px;
}

.news__arrow::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
	transition: .25s all ease-in-out;
}

.news__arrow:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570EF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
}

.news__prev::before {
	transform: rotate(180deg);
}

.news__arrow:hover {
	background: #fff;
	border-color: #1570EF;
}

@media (max-width: 777px) {
	.news {
		padding: 24px 0 48px;
	}

	.news__container {
		gap: 20px;
	}

	.news .section__header {
		display: contents;
	}

	.news .section__content {
		order: 1;
		max-width: none;
	}

	.news .section__subtitle {
		max-width: none;
	}

	.news__slider-wrap {
		order: 2;
	}

	.news-card.swiper-slide {
		width: min(360px, 82vw);
		gap: 16px;
	}

	.news-card__image {
		aspect-ratio: 328 / 185;
		border-radius: 12px;
	}

	.news-card__title {
		font-size: 16px;
		line-height: 1.5;
	}

	.news__arrow {
		display: none;
	}

	.news .section__controls {
		order: 3;
		width: 100%;
		padding-bottom: 0;
	}

	.news .section__all {
		width: 100%;
		min-height: 40px;
		font-weight: 600;
	}

	.news__all-desktop {
		display: none;
	}

	.news__all-mobile {
		display: inline;
	}
}


/* ========== FOOTER ========== */

.footer {
	background: #111927;
	color: #9da4ae;
}

.footer__container {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-template-areas:
		"brand products company contacts"
		"divider divider divider divider"
		"bottom bottom bottom bottom";
	column-gap: 24px;
	row-gap: 48px;
	padding: 80px 0;
}

.footer__brand {
	grid-area: brand;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	padding-right: 18px;
}

.footer__logo {
	display: block;
	width: 140px;
	height: auto;
	aspect-ratio: 10 / 3;
	transition: opacity var(--transition-base);
}

.footer__logo:hover {
	opacity: .8;
}

.footer__logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.footer__brand-text {
	display: flex;
	flex-direction: column;
	gap: 20px;
	font-size: 14px;
	font-weight: 400;
	line-height: calc(24px / 14px);
}

.footer__nav-group--products {
	grid-area: products;
}

.footer__nav-group--company {
	grid-area: company;
}

.footer__nav-toggle {
	display: none;
}

.footer__nav ul,
.footer__nav li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer__nav ul {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.footer__nav a {
	display: inline-flex;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #9da4ae;
	transition: color var(--transition-base);
}

.footer__nav a:hover,
.footer__legal a:hover,
.footer__developer:hover {
	color: #e5e7eb;
}

.footer__phone:hover,
a.footer__contact-value:hover {
	color: #1570ef;
}

.footer__contacts {
	grid-area: contacts;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 40px;
}

.footer__contact-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.footer__contact {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	width: 100%;
}

.footer__contact-label,
.footer__schedule {
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20px / 14px);
	color: #9da4ae;
}

.footer__phone {
	font-size: 22px;
	font-weight: 600;
	line-height: calc(30px / 22px);
	color: #ffffff;
	transition: color var(--transition-base);
}

.footer__contact-value {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #ffffff;
}

a.footer__contact-value {
	transition: color var(--transition-base);
}

.footer__social {
	display: flex;
	align-items: center;
	gap: 12px;
}

.footer__social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: auto;
	aspect-ratio: 1;
	border-radius: 4px;
	background: rgba(255, 255, 255, .04);
	transition: background var(--transition-base);
}

.footer__social-link::before {
	content: "";
	display: block;
	width: 24px;
	height: auto;
	aspect-ratio: 1;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.footer__social-link--max::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath fill='%23fff' d='M9.88 2.534c-4.647.243-7.715 3.888-7.521 8.484.084 2.011.893 3.742 1.085 5.651.049.495-.094 1.105.476 1.321.702.265 1.778-.18 2.366-.588.2-.136.392-.294.54-.49.608.403 1.184.793 1.909.967 3.187.764 6.68-.985 8.233-3.794 2.918-5.277-1.027-11.867-7.088-11.55M8.075 13.548c-.252.196-.494.464-.773.617-.403.216-.528-.009-.68-.365-.476-1.134-.534-3.065-.256-4.253.375-1.615 1.624-3.036 3.342-3.188 1.738-.153 3.35.729 4.079 2.322 1.613 3.544-2.515 7.044-5.712 4.87z'/%3E%3C/svg%3E");
}

.footer__social-link--telegram::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M2.703 9.399c4.715-2.048 7.853-3.409 9.43-4.069 4.485-1.872 5.428-2.195 6.035-2.209.134 0 .43.027.633.189.161.134.202.31.229.444.027.135.054.418.027.633-.243 2.56-1.294 8.77-1.832 11.626-.23 1.212-.674 1.616-1.105 1.657-.943.08-1.657-.62-2.56-1.213-1.428-.93-2.222-1.508-3.61-2.424-1.603-1.051-.566-1.63.35-2.573.243-.243 4.378-4.015 4.46-4.351.013-.04.013-.203-.082-.283-.094-.081-.229-.054-.336-.027-.148.027-2.411 1.535-6.817 4.513-.646.444-1.225.66-1.75.646-.58-.013-1.685-.323-2.52-.593-1.01-.323-1.818-.498-1.751-1.064.04-.296.444-.593 1.199-.902' clip-rule='evenodd'/%3E%3C/svg%3E");
}

.footer__social-link--vk::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath fill='%23fff' d='M10.476 15.31c-5.809 0-9.121-3.981-9.26-10.607h2.91c.096 4.863 2.24 6.923 3.94 7.348V4.703h2.739v4.194c1.678-.18 3.44-2.091 4.035-4.194h2.74c-.457 2.591-2.369 4.502-3.728 5.288 1.36.637 3.536 2.304 4.365 5.32H15.2c-.648-2.018-2.262-3.578-4.396-3.79v3.79z'/%3E%3C/svg%3E");
}

.footer__social-link:hover {
	background: #1570ef;
}

.footer__divider {
	grid-area: divider;
	width: 100%;
	height: 1px;
	background: #1F2A37;
}

.footer__bottom {
	grid-area: bottom;
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: start;
	gap: 16px 24px;
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20px / 14px);
	color: #9da4ae;
}

.footer__legal {
	display: flex;
	align-items: center;
	gap: 24px;
}

.footer__developer-wrap {
	position: relative;
	grid-column: 3;
	justify-self: end;
}

.footer__developer {
	display: inline-flex;
	white-space: nowrap;
}

.footer__developer-popover {
	position: absolute;
	right: 0;
	bottom: calc(100% + -86px);
	z-index: 20;
	width: 255px;
	padding: 24px;
	border-radius: 4px;
	background: #1a2230;
	box-shadow: 0 12px 32px rgba(0, 0, 0, .22);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	pointer-events: none;
	transition: opacity .2s ease, visibility .2s ease, transform .2s ease;
}

.footer__developer-wrap.is-open .footer__developer-popover {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.footer__disclaimer {
	grid-column: 1 / 3;
	max-width: 600px;
}

@media (max-width: 1280px) and (min-width: 1021px) {
	.footer__container {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.footer__brand {
		padding-right: 5px;
	}

	.footer__nav a,
	.footer__contact-value {
		font-size: 14px;
	}

	.footer__phone {
		font-size: 20px;
	}

	.footer__bottom {
		grid-template-columns: 1fr auto;
	}

	.footer__legal {
		grid-column: 1;
		flex-wrap: wrap;
		gap: 4px 24px;
	}

	.footer__developer-wrap {
		grid-column: 2;
	}

	.footer__disclaimer {
		grid-column: 1 / -1;
	}
}

@media (max-width: 1020px) {
	.footer__container {
		display: flex;
		flex-direction: column;
		gap: 0;
		padding: 48px 0 96px;
	}

	.footer__nav-group--products {
		order: 1;
	}

	.footer__nav-group--company {
		order: 2;
		margin-top: 4px;
	}

	.footer__contacts {
		order: 3;
		gap: 24px;
		margin-top: 32px;
	}

	.footer__divider {
		order: 4;
		margin-top: 32px;
	}

	.footer__brand {
		order: 5;
		gap: 0;
		margin-top: 32px;
		padding-right: 12px;
	}

	.footer__bottom {
		order: 6;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 24px;
		margin-top: 24px;
		font-size: 14px;
		line-height: calc(20px / 14px);
	}

	.footer__logo {
		display: none;
	}

	.footer__brand-text {
		gap: 20px;
		font-size: 14px;
		line-height: calc(24px / 14px);
	}

	.footer__nav-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 8px;
		width: 100%;
		min-height: 40px;
		padding: 10px 16px;
		border-radius: 6px;
		font-size: 14px;
		font-weight: 500;
		line-height: calc(20px / 14px);
		text-align: left;
		color: #d2d6db;
		background: rgba(255, 255, 255, .04);
	}

	.footer__nav-toggle::after {
		content: "";
		display: block;
		width: 16px;
		height: auto;
		aspect-ratio: 1;
		flex: 0 0 16px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		transition: transform var(--transition-base);
	}

	.footer__nav-group.open .footer__nav-toggle::after {
		transform: rotate(180deg);
	}

	.footer__nav {
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		transform: translateY(-4px);
		transition: max-height .3s ease, opacity .2s ease, transform .2s ease, margin .2s ease;
	}

	.footer__nav-group.open .footer__nav {
		max-height: 430px;
		margin-top: 8px;
		opacity: 1;
		transform: translateY(0);
	}

	.footer__nav ul {
		gap: 0;
	}

	.footer__nav a {
		display: flex;
		align-items: center;
		min-height: 40px;
		padding: 8px 16px;
		border-radius: 6px;
		font-size: 14px;
		line-height: calc(20px / 14px);
		color: #9da4ae;
	}

	.footer__nav a:hover {
		color: #e5e7eb;
		background: transparent;
	}

	.footer__contact-list {
		gap: 20px;
	}

	.footer__phone {
		font-size: 22px;
		line-height: calc(30px / 22px);
	}

	.footer__contact-value {
		font-size: 16px;
		line-height: 1.5;
	}

	.footer__social {
		gap: 8px;
	}

	.footer__social-link {
		width: 34px;
	}

	.footer__social-link::before {
		width: 20px;
	}

	.footer__legal {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}

	.footer__developer-wrap {
		order: 3;
		align-self: flex-start;
	}

	.footer__developer-popover {
		left: 0;
		right: auto;
		bottom: calc(100% + 16px);
		width: min(344px, calc(100vw - 32px));
		padding: 32px;
	}

	.footer__disclaimer {
		order: 2;
		max-width: none;
	}
}


/* Search empty page */

.search-empty {
	min-height: 700px;
	padding: 20px 0 96px;
	background: #ffffff;
}
.search-empty__container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
	padding: 80px 0;
}
.search-empty__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	width: 100%;
}
.search-empty__icon {
	width: 64px;
	height: auto;
	aspect-ratio: 1;
	background-image: url(../img/search-empty-icon.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.search-empty__icon--cart {
	background-image: url(../img/cart-empty-icon.svg);
}
.search-empty__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	width: 600px;
	max-width: 100%;
	text-align: center;
}
.search-empty__title {
	margin: 0;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}
.search-empty__description {
	margin: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #4d5761;
}
.search-empty__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}
.search-empty__actions .btn {
	min-height: 48px;
	padding: 11px 18px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
}
.search-empty__quick {
	gap: 6px;
	border-color: #ff692e;
	color: #1f2a37;
	background: #ffffff;
}
.search-empty__quick::before {
	content: "";
	width: 20px;
	height: auto;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.8331%201.6665L3.41094%2010.573C3.12026%2010.9219%202.97492%2011.0963%202.9727%2011.2436C2.97077%2011.3716%203.02783%2011.4934%203.12744%2011.5739C3.24201%2011.6665%203.46904%2011.6665%203.92308%2011.6665H9.99972L9.16639%2018.3332L16.5885%209.42663C16.8792%209.07782%2017.0245%208.90341%2017.0267%208.75612C17.0287%208.62807%2016.9716%208.50625%2016.872%208.42576C16.7574%208.33317%2016.5304%208.33317%2016.0764%208.33317H9.99972L10.8331%201.6665Z%22%20stroke%3D%22%23FF692E%22%20stroke-width%3D%221.33333%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.search-empty__quick:hover {
	border-color: #ff4405;
	color: #111927;
	background: #fff7ed;
}
.search-empty__features {
	display: grid;
	grid-template-columns: repeat(3, 318px);
	justify-content: center;
	gap: 24px;
	width: 100%;
	padding-top: 8px;
}
.search-empty__feature {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	min-height: 192px;
	padding: 20px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	font: inherit;
	text-align: center;
	color: #111927;
	background: #ffffff;
	cursor: pointer;
	transition: border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);
}
.search-empty__feature:hover {
	border-color: #b2ddff;
	color: #111927;
	background: #f9fafb;
	box-shadow: rgb(21 112 239) 0px 0px 0px 1px inset;
}
.search-empty__feature-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: auto;
	aspect-ratio: 1;
	border-radius: 6px;
	background: #f9fafb;
}
.search-empty__feature-icon::before {
	content: "";
	width: 24px;
	height: auto;
	aspect-ratio: 1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.search-empty__feature-icon--phone::before { background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.38028%208.85335C9.07627%2010.303%2010.0251%2011.6616%2011.2266%2012.8632C12.4282%2014.0648%2013.7869%2015.0136%2015.2365%2015.7096C15.3612%2015.7694%2015.4235%2015.7994%2015.5024%2015.8224C15.7828%2015.9041%2016.127%2015.8454%2016.3644%2015.6754C16.4313%2015.6275%2016.4884%2015.5704%2016.6027%2015.4561C16.9523%2015.1064%2017.1271%2014.9316%2017.3029%2014.8174C17.9658%2014.3864%2018.8204%2014.3864%2019.4833%2014.8174C19.6591%2014.9316%2019.8339%2015.1064%2020.1835%2015.4561L20.3783%2015.6509C20.9098%2016.1824%2021.1755%2016.4481%2021.3198%2016.7335C21.6069%2017.301%2021.6069%2017.9713%2021.3198%2018.5389C21.1755%2018.8242%2020.9098%2019.09%2020.3783%2019.6214L20.2207%2019.779C19.6911%2020.3087%2019.4263%2020.5735%2019.0662%2020.7757C18.6667%2021.0001%2018.0462%2021.1615%2017.588%2021.1601C17.1751%2021.1589%2016.8928%2021.0788%2016.3284%2020.9186C13.295%2020.0576%2010.4326%2018.4332%208.04466%2016.0452C5.65668%2013.6572%204.03221%2010.7948%203.17124%207.76144C3.01103%207.19699%202.93092%206.91477%202.9297%206.50182C2.92833%206.0436%203.08969%205.42311%203.31411%205.0236C3.51636%204.66357%203.78117%204.39876%204.3108%203.86913L4.46843%203.7115C4.99987%203.18006%205.2656%202.91433%205.55098%202.76999C6.11854%202.48292%206.7888%202.48292%207.35636%202.76999C7.64174%202.91433%207.90747%203.18006%208.43891%203.7115L8.63378%203.90637C8.98338%204.25597%209.15819%204.43078%209.27247%204.60655C9.70347%205.26945%209.70347%206.12403%209.27247%206.78692C9.15819%206.96269%208.98338%207.1375%208.63378%207.4871C8.51947%207.60142%208.46231%207.65857%208.41447%207.72538C8.24446%207.96281%208.18576%208.30707%208.26748%208.58743C8.29048%208.66632%208.32041%208.72866%208.38028%208.85335Z%22%20stroke%3D%22%231570EF%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.search-empty__feature-icon--mail::before { background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2%207L10.1649%2012.7154C10.8261%2013.1783%2011.1567%2013.4097%2011.5163%2013.4993C11.8339%2013.5785%2012.1661%2013.5785%2012.4837%2013.4993C12.8433%2013.4097%2013.1739%2013.1783%2013.8351%2012.7154L22%207M6.8%2020H17.2C18.8802%2020%2019.7202%2020%2020.362%2019.673C20.9265%2019.3854%2021.3854%2018.9265%2021.673%2018.362C22%2017.7202%2022%2016.8802%2022%2015.2V8.8C22%207.11984%2022%206.27976%2021.673%205.63803C21.3854%205.07354%2020.9265%204.6146%2020.362%204.32698C19.7202%204%2018.8802%204%2017.2%204H6.8C5.11984%204%204.27976%204%203.63803%204.32698C3.07354%204.6146%202.6146%205.07354%202.32698%205.63803C2%206.27976%202%207.11984%202%208.8V15.2C2%2016.8802%202%2017.7202%202.32698%2018.362C2.6146%2018.9265%203.07354%2019.3854%203.63803%2019.673C4.27976%2020%205.11984%2020%206.8%2020Z%22%20stroke%3D%22%231570EF%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.search-empty__feature-icon--upload::before { background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M21%2015V16.2C21%2017.8802%2021%2018.7202%2020.673%2019.362C20.3854%2019.9265%2019.9265%2020.3854%2019.362%2020.673C18.7202%2021%2017.8802%2021%2016.2%2021H7.8C6.11984%2021%205.27976%2021%204.63803%2020.673C4.07354%2020.3854%203.6146%2019.9265%203.32698%2019.362C3%2018.7202%203%2017.8802%203%2016.2V15M7%208L12%203L17%208M12%203V15%22%20stroke%3D%22%231570EF%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.search-empty__feature-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	width: 100%;
}
.search-empty__feature-content strong {
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
}
.search-empty__feature-content > span {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}
.page-contact-buttons {
	position: fixed;
	right: 32px;
	bottom: 64px;
	z-index: 30;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.page-contact-buttons__item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: auto;
	aspect-ratio: 1;
	border-radius: 50%;
	background: linear-gradient(84deg, #ff8b07 0%, #eb4701 95%);
	box-shadow: 0 4px 8px rgba(17, 25, 39, .12);
	transition: transform var(--transition-base), opacity var(--transition-base);
}
.page-contact-buttons__item::before {
	content: "";
	width: 28px;
	height: auto;
	aspect-ratio: 1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.page-contact-buttons__item--phone::before { background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M9.77699%2010.3289C10.589%2012.0201%2011.6959%2013.6052%2013.0977%2015.0071C14.4996%2016.4089%2016.0847%2017.5158%2017.7759%2018.3278C17.9214%2018.3977%2017.9941%2018.4326%2018.0861%2018.4594C18.4132%2018.5548%2018.8149%2018.4863%2019.0919%2018.2879C19.1698%2018.2321%2019.2365%2018.1654%2019.3699%2018.0321C19.7777%2017.6242%2019.9817%2017.4203%2020.1867%2017.2869C20.9601%2016.7841%2021.9571%2016.7841%2022.7305%2017.2869C22.9356%2017.4203%2023.1395%2017.6242%2023.5474%2018.0321L23.7747%2018.2594C24.3947%2018.8794%2024.7047%2019.1894%2024.8731%2019.5224C25.2081%2020.1845%2025.2081%2020.9665%2024.8731%2021.6287C24.7047%2021.9616%2024.3947%2022.2716%2023.7747%2022.8916L23.5908%2023.0755C22.9729%2023.6934%2022.664%2024.0024%2022.2439%2024.2383C21.7778%2024.5002%2021.0539%2024.6884%2020.5194%2024.6868C20.0376%2024.6854%2019.7083%2024.5919%2019.0498%2024.405C15.5108%2023.4006%2012.1714%2021.5053%209.38544%2018.7194C6.59946%2015.9334%204.70424%2012.594%203.69977%209.05501C3.51287%208.39649%203.41941%208.06723%203.41798%207.58546C3.41639%207.05086%203.60464%206.32696%203.86647%205.86087C4.10242%205.44083%204.41137%205.13188%205.02926%204.51399L5.21317%204.33008C5.83319%203.71007%206.14319%203.40006%206.47614%203.23166C7.13829%202.89674%207.92027%202.89674%208.58242%203.23165C8.91537%203.40006%209.22538%203.71006%209.84539%204.33008L10.0727%204.55743C10.4806%204.9653%2010.6846%205.16924%2010.8179%205.37431C11.3207%206.14769%2011.3207%207.1447%2010.8179%207.91807C10.6846%208.12314%2010.4806%208.32708%2010.0727%208.73495C9.93938%208.86832%209.8727%208.935%209.81688%209.01295C9.61853%209.28995%209.55005%209.69159%209.64539%2010.0187C9.67222%2010.1107%209.70715%2010.1834%209.77699%2010.3289Z%22%20stroke%3D%22white%22%20stroke-width%3D%221.66667%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.page-contact-buttons__item--mail::before { background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.33398%208.1665L11.8597%2014.8345C12.6311%2015.3745%2013.0168%2015.6445%2013.4363%2015.749C13.8069%2015.8414%2014.1944%2015.8414%2014.565%2015.749C14.9845%2015.6445%2015.3702%2015.3745%2016.1416%2014.8345L25.6673%208.1665M7.93398%2023.3332H20.0673C22.0275%2023.3332%2023.0076%2023.3332%2023.7563%2022.9517C24.4149%2022.6161%2024.9503%2022.0807%2025.2858%2021.4221C25.6673%2020.6734%2025.6673%2019.6934%2025.6673%2017.7332V10.2665C25.6673%208.30632%2025.6673%207.32623%2025.2858%206.57754C24.9503%205.91897%2024.4149%205.38354%2023.7563%205.04798C23.0076%204.6665%2022.0275%204.6665%2020.0673%204.6665H7.93398C5.9738%204.6665%204.99371%204.6665%204.24502%205.04798C3.58645%205.38354%203.05102%205.91897%202.71546%206.57754C2.33398%207.32623%202.33398%208.30632%202.33398%2010.2665V17.7332C2.33398%2019.6934%202.33398%2020.6734%202.71546%2021.4221C3.05102%2022.0807%203.58645%2022.6161%204.24502%2022.9517C4.99371%2023.3332%205.9738%2023.3332%207.93398%2023.3332Z%22%20stroke%3D%22white%22%20stroke-width%3D%221.66667%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.page-contact-buttons__item:hover {
	transform: translateY(-2px);
	opacity: .9;
}

@media (max-width: 1280px) {
	.search-empty__features {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1020px) {
	.search-empty {
		min-height: 0;
		padding: 0 0 64px;
	}
	.search-empty__container {
		gap: 32px;
		padding: 64px 0;
	}
	.search-empty__features {
		gap: 16px;
	}
	.search-empty__feature {
		min-height: 176px;
		padding: 16px;
	}
	.page-contact-buttons {
		display: none;
	}
}

@media (max-width: 777px) {
	.search-empty {
		padding-bottom: 48px;
	}
	.search-empty__container {
		gap: 28px;
		padding: 48px 0;
	}
	.search-empty__text {
		gap: 8px;
	}
	.search-empty__title {
		font-size: 24px;
		line-height: calc(32 / 24);
	}
	.search-empty__description {
		font-size: 16px;
		line-height: 1.5;
	}
	.search-empty__features {
		grid-template-columns: 1fr;
		max-width: 520px;
	}
	.search-empty__feature {
		min-height: 144px;
	}
}

@media (max-width: 575px) {
	.search-empty__container {
		padding: 48px 0;
	}
	.search-empty__actions {
		flex-direction: column;
		width: 100%;
	}
	.search-empty__actions .btn {
		width: 100%;
	}
	.search-empty__feature {
		min-height: 136px;
	}
	.search-empty__feature-content strong {
		font-size: 16px;
		line-height: 1.5;
	}
	.search-empty__feature-content > span {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
}


/* ========== CATALOG PAGE ========== */

.breadcrumbs {
	padding-top: 40px;
	background: #f3f4f6;
}
.breadcrumbs__container {
	display: flex;
	align-items: center;
}
.breadcrumbs ol {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}
.breadcrumbs li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20 / 14);
	color: #384250;
}
.breadcrumbs li:not(:last-child)::after {
	content: "";
	width: 20px;
	flex: none;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m5.833 18.334 8.333-16.667'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
}
.breadcrumbs a {
	color: #6c737f;
	transition: color var(--transition-base);
}
.breadcrumbs a:hover {
	color: #1570ef;
}

.catalog-types {
	padding: 20px 0 80px;
	background: #f3f4f6;
}
.catalog-types__container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.catalog-info__heading {
	display: flex;
	align-items: center;
	min-height: 52px;
}
.catalog-info__title {
	margin: 0;
	font-size: 40px;
	font-weight: 600;
	line-height: calc(52 / 40);
	letter-spacing: -0.02em;
	color: #111927;
}
.catalog-types__grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 24px;
}
.catalog-info {
	padding: 0 0 96px;
	background: #f3f4f6;
}
.catalog-info__features {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
}
.catalog-info__feature {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	min-width: 0;
}
.catalog-info__feature-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: auto;
	aspect-ratio: 1;
	border-radius: 6px;
	background: #d1e9ff;
}
.catalog-info__feature-icon::before {
	content: "";
	width: 24px;
	height: auto;
	aspect-ratio: 1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.catalog-info__feature-icon--map::before { background-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M16 6L9 2L2 6V22L9 18M16 6L22 2V18L16 22L9 18M9 18V2M16 22V6%22 stroke%3D%22%231570EF%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.catalog-info__feature-icon--package::before { background-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M20.5 7.27734L12 11.9996M12 11.9996L3.49997 7.27734M12 11.9996L12 21.4996M21 16.0582V7.94104C21 7.5984 21 7.42708 20.9495 7.27428C20.9049 7.1391 20.8318 7.01502 20.7354 6.91033C20.6263 6.79199 20.4766 6.70879 20.177 6.54239L12.777 2.43128C12.4934 2.27372 12.3516 2.19494 12.2015 2.16406C12.0685 2.13672 11.9315 2.13672 11.7986 2.16406C11.6484 2.19494 11.5066 2.27372 11.223 2.43128L3.82297 6.54239C3.52345 6.70879 3.37369 6.792 3.26463 6.91033C3.16816 7.01502 3.09515 7.1391 3.05048 7.27428C3 7.42708 3 7.5984 3 7.94104V16.0582C3 16.4008 3 16.5721 3.05048 16.7249C3.09515 16.8601 3.16816 16.9842 3.26463 17.0889C3.37369 17.2072 3.52345 17.2904 3.82297 17.4568L11.223 21.5679C11.5066 21.7255 11.6484 21.8042 11.7986 21.8351C11.9315 21.8625 12.0685 21.8625 12.2015 21.8351C12.3516 21.8042 12.4934 21.7255 12.777 21.5679L20.177 17.4568C20.4766 17.2904 20.6263 17.2072 20.7354 17.0889C20.8318 16.9842 20.9049 16.8601 20.9495 16.7249C21 16.5721 21 16.4008 21 16.0582Z%22 stroke%3D%22%231570EF%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E%3Cpath d%3D%22M16.5 9.5L7.5 4.5%22 stroke%3D%22%231570EF%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.catalog-info__feature-icon--user::before { background-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M20 21C20 19.6044 20 18.9067 19.8278 18.3389C19.44 17.0605 18.4395 16.06 17.1611 15.6722C16.5933 15.5 15.8956 15.5 14.5 15.5H9.5C8.10444 15.5 7.40665 15.5 6.83886 15.6722C5.56045 16.06 4.56004 17.0605 4.17224 18.3389C4 18.9067 4 19.6044 4 21M16.5 7.5C16.5 9.98528 14.4853 12 12 12C9.51472 12 7.5 9.98528 7.5 7.5C7.5 5.01472 9.51472 3 12 3C14.4853 3 16.5 5.01472 16.5 7.5Z%22 stroke%3D%22%231570EF%22 stroke-width%3D%222%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.catalog-info__feature-content {
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: calc(100% - 40px);
}
.catalog-info__feature-title {
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
}
.catalog-info__feature-text {
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #384250;
}
.catalog-info__description {
	display: flex;
	flex-direction: column;
	gap: 32px;
	margin-top: 80px;
}
.catalog-info__text {
	display: flex;
	flex-direction: column;
	gap: 18px;
	max-width: 1140px;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #4d5761;
}
.catalog-info__text p {
	margin: 0;
}
.catalog-info__link {
	padding: 0;
	border: 0;
	font: inherit;
	line-height: inherit;
	color: #1570ef;
	background: transparent;
	cursor: pointer;
	transition: color var(--transition-base);
	border-bottom: 1px solid transparent;
	transition: .25s all ease-in-out;
}
.catalog-info__link:hover {
	color: #175cd3;
	border-bottom-color: #175cd3;
}

@media (max-width: 1420px) {
	.catalog-types__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media (max-width: 1280px) {
	.catalog-types__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	.catalog-info__features {
		gap: 24px;
	}
}

@media (max-width: 1020px) {
	.catalog-types__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 20px;
	}
	.catalog-info__feature-content {
		max-width: 100%;
	}
	.catalog-info__feature-text,
	.catalog-info__text {
		font-size: 16px;
		line-height: 1.5;
	}
}

@media (max-width: 991px) {
	.breadcrumbs__container {
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.breadcrumbs__container::-webkit-scrollbar {
		display: none;
	}
	.breadcrumbs ol {
		width: max-content;
		min-width: 100%;
		flex: none;
		gap: 4px;
	}
	.breadcrumbs li:not(:last-child)::after {
		width: 16px;
		background-size: 16px;
	}
	.breadcrumbs li {
		flex: none;
		gap: 4px;
		white-space: nowrap;
	}
}

@media (max-width: 777px) {
	.breadcrumbs {
		padding-top: 20px;
	}
	.breadcrumbs li {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-types {
		padding: 8px 0 40px;
	}
	.catalog-types__container {
		gap: 24px;
	}
	.catalog-info__heading {
		min-height: 32px;
	}
	.catalog-info__title {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}
	.catalog-types__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
	.catalog-info {
		padding-bottom: 48px;
	}
	.catalog-info__features {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	.catalog-info__feature-content {
		max-width: calc(100% - 24px);
	}
	.catalog-info__feature-title {
		font-size: 18px;
		line-height: calc(28 / 18);
	}
	.catalog-info__feature-text {
		font-size: 16px;
		line-height: 1.5;
	}
	.catalog-info__description {
		gap: 16px;
		margin-top: 40px;
	}
	.catalog-info__text {
		gap: 16px;
		max-width: none;
		font-size: 16px;
		line-height: 1.5;
	}
}

/* ========== CATEGORY PAGE ========== */

.category {
	padding: 20px 0 80px;
	background: #f3f4f6;
}
.category__container {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.category .section__subtitle {
	display: none;
}
.category__mobile-count {
	display: none;
}
.category__layout {
	display: grid;
	grid-template-columns: 380px minmax(0, 1fr);
	gap: 40px;
	align-items: start;
}
.catalog-filter {
	display: flex;
	flex-direction: column;
	padding: 32px;
	border-radius: 16px;
	background: #ffffff;
}
.catalog-filter__price {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.catalog-filter__title,
.catalog-filter__summary {
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
}
.catalog-filter__price .catalog-filter__title {
	color: #384250;
}
.catalog-filter__price-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}
.catalog-filter__price-field {
	display: flex;
	min-width: 0;
	height: 44px;
	border: 1px solid #d2d6db;
	border-radius: 6px;
	overflow: hidden;
	background: #ffffff;
}
.catalog-filter__price-field span {
	display: flex;
	align-items: center;
	padding: 10px 12px 10px 14px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #4d5761;
}
.catalog-filter__price-field input {
	width: 100%;
	min-width: 0;
	padding: 9px 14px;
	border: 0;
	border-left: 1px solid #d2d6db;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
	background: #ffffff;
}
.catalog-filter__price-field:focus-within {
	border-color: #2e90fa;
	box-shadow: 0 0 0 1px #2e90fa;
}
.catalog-filter__price-field:focus-within input {
	border-left-color: #2e90fa;
}
.catalog-filter__range {
	--price-from: 0%;
	--price-to: 100%;
	position: relative;
	padding-top: 16px;
}
.catalog-filter__range-line {
	position: relative;
	height: 4px;
	border-radius: 9999px;
	background: #e5e7eb;
}
.catalog-filter__range-line span {
	position: absolute;
	top: 0;
	bottom: 0;
	left: var(--price-from);
	right: calc(100% - var(--price-to));
	border-radius: inherit;
	background: #1570ef;
}
.catalog-filter__range-input {
	position: absolute;
	top: 8px;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 20px;
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
}
.catalog-filter__range-input--to {
	z-index: 3;
}
.catalog-filter__range-input::-webkit-slider-runnable-track {
	height: 4px;
	background: transparent;
}
.catalog-filter__range-input::-webkit-slider-thumb {
	width: 12px;
	height: 12px;
	margin-top: -4px;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	pointer-events: auto;
	-webkit-appearance: none;
	appearance: none;
	background: #1570ef;
}
.catalog-filter__range-input::-moz-range-track {
	height: 4px;
	border: 0;
	background: transparent;
}
.catalog-filter__range-input::-moz-range-progress {
	background: transparent;
}
.catalog-filter__range-input::-moz-range-thumb {
	width: 12px;
	height: 12px;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	pointer-events: auto;
	background: #1570ef;
}
.catalog-filter__range-input:focus-visible::-webkit-slider-thumb {
	box-shadow: 0 0 0 4px rgba(21, 112, 239, 0.15);
}
.catalog-filter__range-input:focus-visible::-moz-range-thumb {
	box-shadow: 0 0 0 4px rgba(21, 112, 239, 0.15);
}
.catalog-filter__range-values {
	position: relative;
	height: 30px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #384250;
}
.catalog-filter__range-values span {
	position: absolute;
	top: 6px;
	white-space: nowrap;
}
.catalog-filter__range-values span:first-child {
	left: var(--price-from);
	transform: translateX(var(--price-from-shift, -50%));
}
.catalog-filter__range-values span:last-child {
	left: var(--price-to);
	transform: translateX(var(--price-to-shift, -50%));
}
.catalog-filter__group {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #e5e7eb;
}
.catalog-filter__summary {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 28px;
	padding-right: 28px;
	list-style: none;
	cursor: pointer;
}
.catalog-filter__summary::-webkit-details-marker {
	display: none;
}
.catalog-filter__summary::after {
	content: "";
	position: absolute;
	top: 6px;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
	transition: transform var(--transition-base);
}
.catalog-filter__group[open] > .catalog-filter__summary::after {
	transform: rotate(180deg);
}
.catalog-filter__options {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-top: 16px;
}
.catalog-filter__options > .checkbox:nth-child(n+6) {
	display: none;
}
.catalog-filter__options-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
}
.catalog-filter__options-list .checkbox[hidden] {
	display: none;
}
.catalog-filter__options-list.is-expanded {
	max-height: 348px;
	padding-right: 6px;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: #d2d6db transparent;
}
.catalog-filter__options-list.is-expanded::-webkit-scrollbar {
	width: 4px;
}
.catalog-filter__options-list.is-expanded::-webkit-scrollbar-track {
	background: transparent;
}
.catalog-filter__options-list.is-expanded::-webkit-scrollbar-thumb {
	border-radius: 9999px;
	background: #d2d6db;
}
.catalog-filter .checkbox span {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #384250;
}
.catalog-filter__more {
	position: relative;
	align-self: flex-start;
	padding-right: 20px;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	color: #175cd3;
}
.catalog-filter__more::after {
	content: "";
	position: absolute;
	top: 2px;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23175cd3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
	transition: transform var(--transition-base);
}
.catalog-filter__more[aria-expanded="true"]::after {
	transform: rotate(180deg);
}
.catalog-filter__more:hover {
	color: #1570ef;
}
.catalog-filter__reset {
	width: 100%;
	min-height: 52px;
	margin-top: 20px;
	padding: 13px 20px;
	border-color: #d2d6db;
	font-size: 16px;
	line-height: 1.5;
	background: #ffffff;
}

.catalog-filter__reset:hover {
	border-color: #9da4ae;
	color: #111927;
	background: #f9fafb;
}
.catalog-filter__group--chips {
	position: relative;
}
.catalog-filter__group--chips .catalog-filter__options-list {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 4px 6px;
}
.catalog-filter__group--chips .checkbox {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0;
}
.catalog-filter__group--chips .checkbox input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}
.catalog-filter__group--chips .checkbox span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 7px 20px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20 / 14);
	color: #384250;
	background: #ffffff;
}
.catalog-filter__group--chips .checkbox input:checked + span {
	border-color: #2e90fa;
	background: #f9fafb;
}
.catalog-filter__group--chips .checkbox input:focus-visible + span {
	box-shadow: 0 0 0 2px rgba(46, 144, 250, .2);
}
.catalog-results {
	min-width: 0;
}
.catalog-results__toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 24px;
}
.catalog-results__actions {
	display: flex;
	align-items: center;
	gap: 20px;
	min-width: 0;
}
.catalog-results__count,
.catalog-results__sort {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #384250;
	white-space: nowrap;
}
.catalog-results__count strong {
	font-weight: 500;
	color: #111927;
}
.catalog-results__sort button {
	position: relative;
	padding-right: 20px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #175cd3;
}
.catalog-results__sort button::after {
	content: "";
	position: absolute;
	top: 4px;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23175cd3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
	transition: transform 0.2s ease;
}
.catalog-results__sort-toggle[aria-expanded="true"]::after {
	transform: rotate(180deg);
}
.catalog-results__views {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: none;
}

.catalog-results__filters {
	display: flex;
	align-items: center;
	gap: 20px;
	min-height: 28px;
	overflow: hidden;
}
.catalog-results__filters[hidden] {
	display: none;
}
.catalog-results__filter-list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}
.catalog-results__filter {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 1px 28px 1px 12px;
	border: 1px solid #2e90fa;
	border-radius: 9999px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	white-space: nowrap;
	color: #384250;
	background: transparent;
}
.catalog-results__filter::after {
	content: "";
	position: absolute;
	top: 6px;
	right: 8px;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 4 8 8M12 4l-8 8'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
}
.catalog-results__filter:hover {
	border-color: #1570ef;
	background: #eff8ff;
}
.catalog-results__filter-reset {
	flex: none;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #6c737f;
}
.catalog-results__filter-reset:hover {
	color: #384250;
}
.catalog-results__filters:not([hidden]) + .catalog-results__toolbar {
	margin-top: 24px;
}
.catalog-results__view {
	width: 24px;
	height: 24px;
}
.catalog-results__view::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background-color: #9da4ae;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: 24px;
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: 24px;
	transition: background-color 0.2s ease;
}
.catalog-results__view--list::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M21 12H9m12-6H9m12 12H9m-4-6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0-6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M21 12H9m12-6H9m12 12H9m-4-6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0-6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0'/%3E%3C/svg%3E");
}
.catalog-results__view--grid::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M8.4 3H4.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 3.76 3 4.04 3 4.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 10 4.04 10 4.6 10h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C10 9.24 10 8.96 10 8.4V4.6c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C9.24 3 8.96 3 8.4 3m11 0h-3.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C14 3.76 14 4.04 14 4.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C14.76 10 15.04 10 15.6 10h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C21 9.24 21 8.96 21 8.4V4.6c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C20.24 3 19.96 3 19.4 3m0 11h-3.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C14 14.76 14 15.04 14 15.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C14.76 21 15.04 21 15.6 21h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C21 20.24 21 19.96 21 19.4v-3.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C20.24 14 19.96 14 19.4 14m-11 0H4.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 14.76 3 15.04 3 15.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 21 4.04 21 4.6 21h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C10 20.24 10 19.96 10 19.4v-3.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C9.24 14 8.96 14 8.4 14'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M8.4 3H4.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 3.76 3 4.04 3 4.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 10 4.04 10 4.6 10h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C10 9.24 10 8.96 10 8.4V4.6c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C9.24 3 8.96 3 8.4 3m11 0h-3.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C14 3.76 14 4.04 14 4.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C14.76 10 15.04 10 15.6 10h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C21 9.24 21 8.96 21 8.4V4.6c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C20.24 3 19.96 3 19.4 3m0 11h-3.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C14 14.76 14 15.04 14 15.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C14.76 21 15.04 21 15.6 21h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C21 20.24 21 19.96 21 19.4v-3.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C20.24 14 19.96 14 19.4 14m-11 0H4.6c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 14.76 3 15.04 3 15.6v3.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 21 4.04 21 4.6 21h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C10 20.24 10 19.96 10 19.4v-3.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C9.24 14 8.96 14 8.4 14'/%3E%3C/svg%3E");
}
.catalog-results__view.active::before,
.catalog-results__view:hover::before {
	background-color: #2e90fa;
}

.catalog-results.is-view-switching .product-card--list,
.catalog-results.is-view-switching .product-card--list *,
.catalog-results.is-view-switching .product-card--list::before,
.catalog-results.is-view-switching .product-card--list::after,
.catalog-results.is-view-switching .product-card--list *::before,
.catalog-results.is-view-switching .product-card--list *::after {
	transition: none !important;
}

.catalog-results.is-grid .catalog-results__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}
.catalog-results.is-grid .product-card--list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	min-width: 0;
	min-height: 433px;
	padding: 20px;
}
.catalog-results.is-grid .product-card--list .product-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 16px;
	width: 100%;
}
.catalog-results.is-grid .product-card--list .product-card__image  {
	flex: none;
	width: calc(100% + 24px);
	height: auto;
	margin-inline: -12px;
}

.catalog-results.is-grid .product-card--list .product-card__info {
	width: 100%;
}
.catalog-results.is-grid .product-card--list .product-card__title {
	display: -webkit-box;
	overflow: hidden;
	font-size: 18px;
	line-height: calc(28 / 18);
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.catalog-results.is-grid .product-card__specs {
	display: none;
}
.catalog-results.is-grid .product-card--list .product-card__side {
	display: flex;
	flex: none;
	flex-direction: column;
	justify-content: flex-start;
	gap: 16px;
	width: 100%;
	align-self: auto;
}
.catalog-results.is-grid .product-card--list .product-card__price {
	padding-top: 0;
}
.catalog-results.is-grid .product-card--list .product-card__actions {
	width: 100%;
}
.catalog-results.is-grid .product-card--list .product-card__add,
.catalog-results.is-grid .product-card--list .product-card__quick {
	font-size: 14px;
	line-height: calc(20 / 14);
}

@media (max-width: 1420px) {
	.catalog-results.is-grid .catalog-results__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.category__layout {
		grid-template-columns: 340px minmax(0, 1fr);
		gap: 32px;
	}
	.catalog-filter {
		padding: 28px;
	}
	.catalog-filter__range-values {
		padding-inline: 54px;
	}
}

@media (max-width: 1280px) {
	.product-card--list .product-card__image  {
	align-self: flex-start;
		flex-basis: 150px;
		width: 150px;
	}
	.product-card--list .product-card__side {
		flex-basis: 190px;
		width: 190px;
	}
	.product-card--list .product-card__title {
		font-size: 18px;
		line-height: calc(28 / 18);
	}
	.category__layout {
		grid-template-columns: 300px minmax(0, 1fr);
		gap: 24px;
	}
	.catalog-filter {
		padding: 24px;
	}
	.catalog-filter__range-values {
		padding-inline: 44px;
	}
	.catalog-results__toolbar,
	.catalog-results__actions {
		align-items: flex-start;
	}
	.catalog-results__actions {
		flex-direction: column;
		gap: 4px;
	}
}

@media (max-width: 1020px) {
	.category__layout {
		grid-template-columns: 1fr;
	}
	.catalog-filter {
		max-width: 380px;
	}
	.catalog-results {
		grid-row: 1;
	}
}

@media (max-width: 777px) {
	.catalog-results.is-grid .catalog-results__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
	.catalog-results__filters {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}
	.catalog-results__filter-list {
		width: 100%;
	}
	.product-card--list {
		flex-wrap: wrap;
	}
	.product-card--list .product-card__content {
		width: 100%;
	}
	.product-card--list .product-card__side {
		flex: 1 1 100%;
		width: 100%;
		align-self: auto;
	}
	.product-card--list .product-card__side {
		flex-direction: row;
		align-items: center;
	}
	.product-card--list .product-card__price {
		flex: 1 1 auto;
	}
	.product-card--list .product-card__actions {
		flex: 0 0 220px;
	}
	.category {
		padding: 8px 0 48px;
	}
	.category__container {
		gap: 24px;
	}
	.catalog-results__toolbar {
		align-items: flex-start;
		flex-wrap: wrap;
	}
}

@media (max-width: 575px) {
	.catalog-results.is-grid .product-card--list {
		gap: 16px;
		min-height: 0;
		padding: 16px;
	}
	.catalog-results.is-grid .product-card--list .product-card__content {
		gap: 12px;
	}
	.catalog-results.is-grid .product-card--list .product-card__image  {
		width: calc(100% + 12px);
		height: auto;
		margin-inline: -6px;
	}

	.catalog-results.is-grid .product-card--list .product-card__title {
		font-size: 16px;
		line-height: 1.5;
	}
	.catalog-results.is-grid .product-card--list .product-card__side {
		gap: 12px;
	}
	.product-card--list {
		gap: 16px;
		padding: 16px;
	}
	.product-card--list .product-card__content {
		flex-direction: column;
		gap: 12px;
	}
	.product-card--list .product-card__image  {
	align-self: flex-start;
		flex-basis: auto;
		width: 100%;
		height: auto;
	}

	.product-card--list .product-card__side {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}
	.product-card--list .product-card__actions {
		flex-basis: auto;
		width: 100%;
	}
	.product-card__specs {
		font-size: 13px;
		line-height: calc(18 / 13);
	}
	.pagination {
		gap: 4px;
	}
	.pagination__numbers a,
	.pagination__numbers span {
		width: 34px;
		height: 34px;
	}
	.pagination__numbers a:nth-child(5),
	.pagination__numbers a:nth-child(6) {
		display: none;
	}
	.catalog-filter {
		max-width: none;
		padding: 20px 16px;
		border-radius: 12px;
	}
	.catalog-filter__price-fields {
		gap: 8px;
	}
	.catalog-filter__price-field span {
		padding-inline: 10px;
	}
	.catalog-filter__price-field input {
		padding-inline: 10px;
	}
	.catalog-filter__range-values {
		padding-inline: 48px;
	}
	.catalog-results__toolbar {
		gap: 16px;
	}
	.catalog-results__count,
	.catalog-results__sort,
	.catalog-results__sort button {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
}

@media (max-width: 419px) {
	.catalog-results.is-grid .catalog-results__list {
		grid-template-columns: 1fr;
	}
}

/* ========== CATEGORY REQUEST ========== */

.catalog-info--category {
	padding-top: 0;
}
.catalog-info--category .catalog-info__features {
	margin-top: 80px;
}
.catalog-request {
	position: relative;
	min-height: 392px;
	padding: 64px;
	border-radius: 12px;
	overflow: hidden;
	background: linear-gradient(110deg, #175cd3 0%, #0b4ca7 66%, #083d88 100%);
}
.catalog-request::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 43%;
	height: 100%;
	background-image: linear-gradient(90deg, #0b4ca7 0%, rgba(11, 76, 167, .72) 10%, rgba(11, 76, 167, .08) 30%), url("../img/catalog-request.png");
	background-position: center, 47% center;
	background-repeat: no-repeat;
	background-size: cover;
	pointer-events: none;
}
.catalog-request__content {
	position: relative;
	z-index: 1;
	width: min(100%, 768px);
}
.catalog-request__title {
	max-width: 560px;
	font-size: 40px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #ffffff;
}
.catalog-request__text {
	margin-top: 20px;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #b2ddff;
}
.catalog-request__form {
	width: min(100%, 640px);
	margin-top: 32px;
	gap: 16px;
}
.catalog-request__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}
.catalog-request__form input[type="text"],
.catalog-request__form input[type="tel"] {
	min-height: 48px;
	border-color: transparent;
}
.catalog-request__form input[type="text"]:focus,
.catalog-request__form input[type="tel"]:focus {
	border-color: #2e90fa;
}
.catalog-request__bottom {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 40px;
}
.catalog-request .checkbox {
	flex: 1 1 auto;
	min-width: 0;
}
.catalog-request .checkbox input:not(:checked) {
	border-color: #ffffff;
	background-color: #ffffff;
}
.catalog-request .checkbox span {
	max-width: 280px;
	font-size: 14px;
	line-height: calc(20 / 14);
	color: #b2ddff;
}
.catalog-request .checkbox a {
	color: inherit;
	text-decoration-color: currentColor;
}
.catalog-request__submit {
	flex: 0 0 auto;
	min-width: 119px;
	min-height: 44px;
	padding: 10px 18px;
	border: 0;
	color: #ffffff;
	background: linear-gradient(73deg, #ff8b07 0%, #eb4701 95%);
}
.catalog-request__submit:hover {
	color: #ffffff;
	filter: brightness(.96);
}
.catalog-info--category .catalog-info__text {
	color: #384250;
}

@media (max-width: 1280px) {
	.catalog-request {
		padding: 64px 32px;
	}
	.catalog-request__form {
		width: min(100%, 490px);
	}
}

@media (max-width: 1100px) {
	.catalog-request::after {
		width: 42%;
		opacity: .72;
	}
	.catalog-request__content {
		width: 68%;
	}
}

@media (max-width: 777px) {
	.catalog-info--category .catalog-info__features {
		margin-top: 40px;
	}
	.catalog-request {
		min-height: 0;
		padding: 32px 24px;
		background: linear-gradient(45deg, #194185 0%, #1570EF 100%);
	}
	.catalog-request::after {
		display: none;
	}
	.catalog-request__content {
		width: 100%;
	}
	.catalog-request__title {
		font-size: 28px;
		line-height: calc(36 / 28);
		letter-spacing: -0.01em;
	}
	.catalog-request__text {
		margin-top: 12px;
		font-size: 16px;
		line-height: 1.5;
	}
	.catalog-request__form {
		margin-top: 24px;
	}
	.catalog-request__fields {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.catalog-request__bottom {
		flex-direction: column;
		gap: 20px;
	}
	.catalog-request .checkbox span {
		max-width: none;
	}
}

@media (max-width: 480px) {
	.catalog-request {
		padding: 24px 16px;
		border-radius: 10px;
	}
	.catalog-request__title {
		font-size: 24px;
		line-height: calc(32 / 24);
	}
}

/* ========== CATEGORY MOBILE CATALOG ========== */

.catalog-filter__mobile-header,
.catalog-filter__mobile-actions,
.catalog-results__filter-open,
.catalog-results__more {
	display: none;
}

@media (min-width: 778px) and (max-width: 1020px) {
	body.catalog-filter-open {
		overflow: hidden;
	}
	.category {
		padding: 8px 0 48px;
	}
	.category__container {
		gap: 32px;
	}
	.category .section__subtitle {
		display: block;
	}
	.category__layout {
		display: block;
	}
	.catalog-results {
		display: flex;
		flex-direction: column;
		min-width: 0;
	}
	.catalog-results__toolbar {
		order: 1;
		flex-wrap: nowrap;
		align-items: center;
		gap: 12px;
		min-height: 20px;
	}
	.catalog-results__filter-open {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		flex: none;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20 / 14);
		color: #384250;
	}
	.catalog-results__filter-open::before {
		content: "";
		width: 21px;
		height: 21px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M2.55 6.8h10.2m0 0a2.55 2.55 0 1 0 5.1 0 2.55 2.55 0 0 0-5.1 0m-5.1 6.8h10.2m-10.2 0a2.55 2.55 0 1 1-5.1 0 2.55 2.55 0 0 1 5.1 0'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 21px;
	}
	.catalog-results__actions {
		flex-direction: row;
		align-items: center;
		gap: 12px;
		margin-left: auto;
	}
	.catalog-results__count {
		display: inline-flex;
		gap: 4px;
		font-size: 14px;
		line-height: calc(20 / 14);
		color: #6c737f;
	}
	.catalog-results__count-label {
		display: none;
	}
	.catalog-results__sort {
		gap: 3px;
		font-size: 0;
		line-height: 0;
	}
	.catalog-results__sort::before {
		content: "";
		width: 20px;
		height: 20px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.083' d='M2.5 10h10m-10-5h15m-15 10h5'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 20px;
	}
	.catalog-results__sort button {
		padding: 0;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20 / 14);
		color: #384250;
		text-transform: capitalize;
	}
	.catalog-results__sort button::after {
		display: none;
	}
	.catalog-results__views {
		gap: 0;
	}
	.catalog-results__view {
		width: 20px;
		height: 20px;
		opacity: 1;
	}
	.catalog-results__view::before {
		width: 20px;
		height: 20px;
		background-color: #175cd3;
		-webkit-mask-size: 20px;
		mask-size: 20px;
	}
	.catalog-results__view.active {
		display: none;
	}
	.catalog-results__filters {
		order: 2;
		flex-direction: row;
		align-items: center;
		gap: 16px;
		width: 100%;
		min-width: 0;
		margin-top: 16px;
		overflow: visible;
	}
	.catalog-results__filters:not([hidden]) + .catalog-results__toolbar {
		margin-top: 0;
	}
	.catalog-results__filter-list {
		flex: 1 1 auto;
		min-width: 0;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
	}
	.catalog-results__filter-list::-webkit-scrollbar {
		display: none;
	}
	.catalog-results__filter {
		flex: none;
		min-height: 24px;
		padding: 1px 25px 1px 10px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-results__filter::after {
		top: 4px;
		right: 6px;
		width: 14px;
		height: 14px;
		background-size: 14px;
	}
	.catalog-results__filter-reset {
		flex: none;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-results__list {
		order: 3;
		margin-top: 16px;
	}
	.catalog-results__more {
		position: relative;
		order: 4;
		gap: 4px;
		width: 100%;
		min-height: 40px;
		margin-top: 16px;
		border-color: #d2d6db;
		display: flex;
	}
	.catalog-results__more::after {
		content: "";
		width: 16px;
		height: 16px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 4 4 4-4 4'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 16px;
	}
	.catalog-results .pagination {
		display: none;
	}
	.catalog-filter {
		display: none;
		position: fixed;
		inset: 0;
		z-index: 3000;
		width: 100%;
		max-width: none;
		height: 100dvh;
		padding: 84px 16px 156px;
		border-radius: 0;
		overflow-x: hidden;
		overflow-y: auto;
		background: #ffffff;
	}
	.catalog-filter.open {
		display: flex;
	}
	.catalog-filter__mobile-header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 2;
		display: grid;
		grid-template-columns: 36px minmax(0, 1fr) 36px;
		align-items: center;
		height: 60px;
		padding: 12px 16px;
		border-bottom: 1px solid #f3f4f6;
		background: #ffffff;
	}
	.catalog-filter__mobile-title {
		font-size: 18px;
		font-weight: 600;
		line-height: calc(28 / 18);
		text-align: center;
		color: #111927;
	}
	.catalog-filter__mobile-back,
	.catalog-filter__mobile-close {
		position: relative;
		width: 36px;
		height: 36px;
	}
	.catalog-filter__mobile-back::before,
	.catalog-filter__mobile-close::before {
		content: "";
		position: absolute;
		top: 8px;
		left: 8px;
		width: 20px;
		height: 20px;
		background-repeat: no-repeat;
		background-position: center;
		background-size: 20px;
	}
	.catalog-filter__mobile-back::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m12.5 15-5-5 5-5'/%3E%3C/svg%3E");
	}
	.catalog-filter__mobile-close::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m5 5 10 10M15 5 5 15'/%3E%3C/svg%3E");
	}
	.catalog-filter__title,
	.catalog-filter__summary {
		font-size: 16px;
		line-height: 1.5;
	}
	.catalog-filter__price {
		gap: 12px;
	}
	.catalog-filter__price-field {
		height: 40px;
	}
	.catalog-filter__price-field span,
	.catalog-filter__price-field input {
		padding-top: 7px;
		padding-bottom: 7px;
	}
	.catalog-filter__range-values {
		padding-inline: 65px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-filter__group {
		margin-top: 20px;
		padding-top: 20px;
	}
	.catalog-filter__reset {
		display: none;
	}
	.catalog-filter__mobile-actions {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		display: flex;
		flex-direction: column;
		gap: 12px;
		padding: 12px 16px;
		box-shadow: 0 0 24px -4px rgba(10, 13, 18, .08), 0 0 8px -4px rgba(10, 13, 18, .03);
		background: #ffffff;
	}
	.catalog-filter__mobile-actions .btn {
		width: 100%;
		min-height: 48px;
	}
	.catalog-filter__summary {
		gap: 12px;
		padding-right: 24px;
	}
	.catalog-filter__summary > span {
		flex: 1 1 auto;
		min-width: 0;
	}
	.catalog-filter__summary::after {
		top: 4px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 4 4 4-4 4'/%3E%3C/svg%3E");
	}
	.catalog-filter__group[open] > .catalog-filter__summary::after {
		transform: rotate(90deg);
	}
	.catalog-results__sort-menu {
		top: calc(100% + 8px);
		right: -4px;
		width: 190px;
	}
}

@media (max-width: 777px) {
	body.catalog-filter-open {
		overflow: hidden;
	}
	.category {
		padding: 8px 0 48px;
	}
	.category__container {
		gap: 32px;
	}
	.category .section__subtitle {
		display: block;
	}
	.category__mobile-count {
		display: flex;
		align-items: center;
		gap: 4px;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20 / 14);
		color: #6c737f;
	}
	.category__mobile-count strong {
		font-weight: 500;
		color: #6c737f;
	}
	.category__layout {
		display: block;
	}
	.catalog-results {
		display: flex;
		flex-direction: column;
		min-width: 0;
	}
	.catalog-results__toolbar {
		order: 1;
		flex-wrap: nowrap;
		align-items: center;
		gap: 16px;
		min-height: 20px;
	}
	.catalog-results__filter-open {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		flex: none;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20 / 14);
		color: #384250;
	}
	.catalog-results__filter-open::before {
		content: "";
		width: 21px;
		height: 21px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M2.55 6.8h10.2m0 0a2.55 2.55 0 1 0 5.1 0 2.55 2.55 0 0 0-5.1 0m-5.1 6.8h10.2m-10.2 0a2.55 2.55 0 1 1-5.1 0 2.55 2.55 0 0 1 5.1 0'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 21px;
	}
	.catalog-results__actions {
		flex-direction: row;
		align-items: center;
		gap: 16px;
		margin-left: auto;
	}
	.catalog-results__count {
		display: none;
	}
	.catalog-results__count-label {
		display: none;
	}
	.catalog-results__sort {
		gap: 3px;
		font-size: 0;
		line-height: 0;
	}
	.catalog-results__sort::before {
		content: "";
		width: 20px;
		height: 20px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.083' d='M2.5 10h10m-10-5h15m-15 10h5'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 20px;
	}
	.catalog-results__sort button {
		padding: 0;
		font-size: 14px;
		font-weight: 400;
		line-height: calc(20 / 14);
		color: #384250;
		text-transform: capitalize;
	}
	.catalog-results__sort button::after {
		display: none;
	}
	.catalog-results__views {
		gap: 0;
	}
	.catalog-results__view {
		width: 20px;
		height: 20px;
		opacity: 1;
	}
	.catalog-results__view::before {
		width: 20px;
		height: 20px;
		background-color: #175cd3;
		-webkit-mask-size: 20px;
		mask-size: 20px;
	}
	.catalog-results__view.active {
		display: none;
	}
	.catalog-results__filters {
		order: 2;
		flex-direction: row;
		align-items: center;
		gap: 16px;
		width: 100%;
		min-width: 0;
		margin-top: 16px;
		overflow: visible;
	}
	.catalog-results__filters:not([hidden]) + .catalog-results__toolbar {
		margin-top: 0;
	}
	.catalog-results__filter-list {
		flex: 1 1 auto;
		min-width: 0;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
	}
	.catalog-results__filter-list::-webkit-scrollbar {
		display: none;
	}
	.catalog-results__filter {
		flex: none;
		min-height: 24px;
		padding: 1px 25px 1px 10px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-results__filter::after {
		top: 4px;
		right: 6px;
		width: 14px;
		height: 14px;
		background-size: 14px;
	}
	.catalog-results__filter-reset {
		display: inline-flex;
		align-items: center;
		flex: none;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-results__list {
		order: 3;
		gap: 16px;
		margin-top: 16px;
	}
	.catalog-results__more {
		position: relative;
		order: 4;
		gap: 4px;
		width: 100%;
		min-height: 40px;
		margin-top: 16px;
		border-color: #d2d6db;
		display: flex;
	}
	.catalog-results__more::after {
		content: "";
		width: 16px;
		height: 16px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 4 4 4-4 4'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 16px;
	}
	.catalog-results .pagination {
		display: none;
	}

	.product-card--list {
		display: grid;
		grid-template-columns: 120px minmax(0, 1fr);
		grid-template-rows: auto auto;
		align-content: start;
		gap: 16px 12px;
		min-height: auto;
		padding: 12px;
	}
	.product-card--list .product-card__content {
		display: contents;
	}
	.product-card--list .product-card__image  {
		grid-column: 1;
		grid-row: 1 / span 2;
		width: 120px;
		height: auto;
		align-self: start;
	}

	.product-card--list .product-card__badge {
		padding: 0 4px;
		font-size: 11px;
		line-height: calc(20 / 11);
	}
	.product-card--list .product-card__info {
		grid-column: 2;
		grid-row: 1;
		width: 100%;
		gap: 8px;
	}
	.product-card--list .product-card__title {
		display: -webkit-box;
		overflow: hidden;
		font-size: 16px;
		line-height: 1.5;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}
	.product-card--list .product-card__meta {
		gap: 12px;
	}
	.product-card--list .product-card__rating,
	.product-card--list .product-card__stock {
		font-size: 12px;
		line-height: 1;
	}
	.product-card--list .product-card__rating::before,
	.product-card--list .product-card__stock::before {
		width: 12px;
		height: 12px;
		background-size: 12px;
	}
	.product-card--list .product-card__specs {
		display: none;
	}
	.product-card--list .product-card__side {
		grid-column: 2;
		grid-row: 2;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 8px;
		width: 100%;
		align-self: end;
	}
	.product-card--list .product-card__price {
		flex: none;
		padding: 0;
	}
	.product-card--list .product-card__price strong {
		font-size: 24px;
		line-height: 1;
	}
	.product-card--list .product-card__price span {
		font-size: 12px;
		line-height: 1;
	}
	.product-card--list .product-card__actions {
		flex: none;
		width: 100%;
	}
	.product-card--list .product-card__quick {
		display: none;
	}
	.product-card--list .product-card__add {
		width: 100%;
		min-height: 40px;
		height: 40px;
		padding: 8px 12px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.product-card--list .product-card__quantity {
		width: 100%;
		min-height: 40px;
		height: 40px;
	}
	.product-card--list .product-card__counter {
		height: 40px;
	}

	.catalog-results.is-grid .catalog-results__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
	.catalog-results.is-grid .product-card--list {
		display: flex;
		flex-direction: column;
		gap: 16px;
		min-height: 317px;
		padding: 12px;
	}
	.catalog-results.is-grid .product-card--list .product-card__content {
		display: flex;
		flex: 1 1 auto;
		flex-direction: column;
		gap: 12px;
	}
	.catalog-results.is-grid .product-card--list .product-card__image  {
		width: 100%;
		height: auto;
	}

	.catalog-results.is-grid .product-card--list .product-card__info {
		width: 100%;
		gap: 12px;
	}
	.catalog-results.is-grid .product-card--list .product-card__title {
		font-size: 16px;
		line-height: 1.5;
		-webkit-line-clamp: 2;
	}
	.catalog-results.is-grid .product-card--list .product-card__side {
		display: flex;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		margin-top: auto;
	}
	.catalog-results.is-grid .product-card--list .product-card__price {
		padding-top: 4px;
	}
	.catalog-results.is-grid .product-card--list .product-card__actions {
		width: 100%;
	}
	.catalog-results.is-grid .product-card--list .product-card__quantity {
		min-width: 0;
	}

	.catalog-filter {
		display: none;
		position: fixed;
		inset: 0;
		z-index: 3000;
		width: 100%;
		max-width: none;
		height: 100dvh;
		padding: 84px 16px 156px;
		border-radius: 0;
		overflow-x: hidden;
		overflow-y: auto;
		background: #ffffff;
	}
	.catalog-filter.open {
		display: flex;
	}
	.catalog-filter__mobile-header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 2;
		display: grid;
		grid-template-columns: 36px minmax(0, 1fr) 36px;
		align-items: center;
		height: 60px;
		padding: 12px 16px;
		border-bottom: 1px solid #f3f4f6;
		background: #ffffff;
	}
	.catalog-filter__mobile-title {
		font-size: 18px;
		font-weight: 600;
		line-height: calc(28 / 18);
		text-align: center;
		color: #111927;
	}
	.catalog-filter__mobile-back,
	.catalog-filter__mobile-close {
		position: relative;
		width: 36px;
		height: 36px;
	}
	.catalog-filter__mobile-back::before,
	.catalog-filter__mobile-close::before {
		content: "";
		position: absolute;
		top: 8px;
		left: 8px;
		width: 20px;
		height: 20px;
		background-repeat: no-repeat;
		background-position: center;
		background-size: 20px;
	}
	.catalog-filter__mobile-back::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m12.5 15-5-5 5-5'/%3E%3C/svg%3E");
	}
	.catalog-filter__mobile-close::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23384250' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m5 5 10 10M15 5 5 15'/%3E%3C/svg%3E");
	}
	.catalog-filter__title,
	.catalog-filter__summary {
		font-size: 16px;
		line-height: 1.5;
	}
	.catalog-filter__price {
		gap: 12px;
	}
	.catalog-filter__price-field {
		height: 40px;
	}
	.catalog-filter__price-field span,
	.catalog-filter__price-field input {
		padding-top: 7px;
		padding-bottom: 7px;
	}
	.catalog-filter__range-values {
		padding-inline: 65px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.catalog-filter__group {
		margin-top: 20px;
		padding-top: 20px;
	}
	.catalog-filter__reset {
		display: none;
	}
	.catalog-filter__mobile-actions {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		display: flex;
		flex-direction: column;
		gap: 12px;
		padding: 12px 16px;
		box-shadow: 0 0 24px -4px rgba(10, 13, 18, .08), 0 0 8px -4px rgba(10, 13, 18, .03);
		background: #ffffff;
	}
	.catalog-filter__mobile-actions .btn {
		width: 100%;
		min-height: 48px;
	}

	.catalog-request__content::before {
		content: "";
		display: block;
		width: 80px;
		height: 80px;
		margin-bottom: 24px;
		background-image: url("../img/catalog-request-mobile.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
	}
}

@media (max-width: 575px) {
	.catalog-results.is-grid .product-card--list .product-card__meta {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	.category__container {
		gap: 32px;
	}
	.catalog-results.is-grid .catalog-results__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.catalog-request {
		padding: 24px;
	}
	.catalog-request__title {
		font-size: 30px;
		line-height: calc(32 / 30);
	}
}

@media (max-width: 330px) {
	.catalog-results.is-grid .product-card--list {
		min-height: 0;
	}
	.catalog-results.is-grid .product-card--list .product-card__content {
		flex: none;
	}
	.catalog-results.is-grid .product-card--list .product-card__meta {
		flex-direction: row;
		align-items: center;
	}
	.catalog-results.is-grid .product-card--list .product-card__side {
		margin-top: 0;
	}
	.catalog-results.is-grid .catalog-results__list {
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}
}

/* ========== CATEGORY PAGE - FINAL INTERACTIONS ========== */

.catalog-filter__summary-value {
	display: none;
}
.catalog-results__sort {
	position: relative;
}
.catalog-results__sort-menu {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	z-index: 10;
	width: 210px;
	padding: 6px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	box-shadow: 0 12px 24px rgba(17, 25, 39, .1);
	background: #ffffff;
}
.catalog-results__sort-menu[hidden] {
	display: none;
}
.catalog-results__sort-menu button {
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 40px;
	padding: 8px 10px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20 / 14);
	text-align: left;
	color: #384250;
}
.catalog-results__sort-menu button::after {
	display: none;
}
.catalog-results__sort-menu button:hover,
.catalog-results__sort-menu button.active {
	color: #175cd3;
	background: #F9FAFB;
}
.product-card--mobile-extra,
.catalog-results.is-grid .product-card--mobile-extra {
	display: none;
}
.category-mobile-action {
	display: none;
}

@media (max-width: 777px) {
	.catalog-filter__summary {
		gap: 12px;
		padding-right: 24px;
	}
	.catalog-filter__summary > span {
		flex: 1 1 auto;
		min-width: 0;
	}
	.catalog-filter__summary::after {
		top: 4px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 4 4 4-4 4'/%3E%3C/svg%3E");
	}
	.catalog-filter__group[open] > .catalog-filter__summary::after {
		transform: rotate(90deg);
	}

	.catalog-results__sort-menu {
		top: calc(100% + 8px);
		right: -4px;
		width: 190px;
	}
	.product-card--mobile-extra {
		display: grid;
	}
	.catalog-results.is-grid .product-card--mobile-extra {
		display: flex;
	}
	.category-mobile-action {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 25;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 12px 16px;
		box-shadow: 0 0 24px -4px rgba(10, 13, 18, .08), 0 0 8px -4px rgba(10, 13, 18, .03);
		background: #ffffff;
	}
	.category-mobile-action .btn {
		width: min(100%, 361px);
		min-height: 48px;
	}
	.page-contact-buttons {
		right: 16px;
		bottom: 90px;
		display: flex;
		gap: 0;
	}
	.page-contact-buttons__item--mail {
		display: none;
	}
	body.catalog-filter-open .category-mobile-action {
		display: none;
	}
}

/* ========== PRODUCT PAGE ========== */
.page-product .breadcrumbs {
	padding-top: 20px;
	background: #ffffff;
}

.product-page {
	padding: 20px 0 80px;
	background: #ffffff;
}
.product-page__container {
	width: 100%;
}
.product-page__grid {
	display: grid;
	grid-template-columns: minmax(0, 924px) 380px;
	gap: 40px;
	align-items: start;
}
.product-page__main {
	min-width: 0;
}
.product-page__header {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 12px;
	min-height: 84px;
}
.product-page__title {
	max-width: 800px;
	margin: 0;
	font-size: 40px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.02em;
	color: #111927;
}
.product-page__meta {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.product-page__rating {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #1f2a37;
}
.product-page__rating::before {
	content: "";
	width: 14px;
	aspect-ratio: 1;
	flex: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='%23f3f4f6' d='M6.677 1.127a.35.35 0 0 1 .646 0L8.77 4.604a.35.35 0 0 0 .296.214l3.754.301a.35.35 0 0 1 .2.615l-2.86 2.45a.35.35 0 0 0-.114.347l.874 3.663a.35.35 0 0 1-.523.38l-3.214-1.963a.35.35 0 0 0-.364 0l-3.214 1.963a.35.35 0 0 1-.523-.38l.874-3.663a.35.35 0 0 0-.113-.347l-2.86-2.45a.35.35 0 0 1 .2-.615l3.753-.3a.35.35 0 0 0 .296-.215z'/%3E%3Cg clip-path='url(%23b)'%3E%3Cpath fill='%23fac515' d='M6.677 1.127a.35.35 0 0 1 .646 0L8.77 4.604a.35.35 0 0 0 .296.214l3.754.301a.35.35 0 0 1 .2.615l-2.86 2.45a.35.35 0 0 0-.114.347l.874 3.663a.35.35 0 0 1-.523.38l-3.214-1.963a.35.35 0 0 0-.364 0l-3.214 1.963a.35.35 0 0 1-.523-.38l.874-3.663a.35.35 0 0 0-.113-.347l-2.86-2.45a.35.35 0 0 1 .2-.615l3.753-.3a.35.35 0 0 0 .296-.215z'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h14v14H0z'/%3E%3C/clipPath%3E%3CclipPath id='b'%3E%3Cpath fill='%23fff' d='M0 0h14v14H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-page__rating span {
	font-weight: 500;
}
.product-page__rating em {
	font-style: normal;
	color: #6c737f;
}
.product-page__intro {
	display: grid;
	grid-template-columns: 380px minmax(0, 1fr);
	gap: 40px;
	margin-top: 40px;
}

.product-gallery  {
	aspect-ratio: 4 / 3;
	position: relative;
	width: 380px;
	height: auto;
	overflow: hidden;
	background: #ffffff;
}
.product-gallery__badge {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	color: #ffffff;
	background: #41b619;
}
.product-gallery img {
	aspect-ratio: 4 / 3;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.product-options {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
}
.product-options__group {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
.product-options__group legend,
.product-options__select > span {
	display: block;
	margin-bottom: 6px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
}
.product-options__choices {
	display: flex;
	align-items: center;
	gap: 4px;
	min-height: 44px;
}
.product-options__choices label {
	position: relative;
	display: block;
	cursor: pointer;
}
.product-options__choices input {
	position: absolute;
	op: 0;
	left: 0;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}
.product-options__choices span {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 44px;
	min-width: 48px;
	padding: 8px 20px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	color: #384250;
	background: #ffffff;
	transition: border-color var(--transition-base), background-color var(--transition-base);
}
.product-options__choices label:hover span {
	border-color: #2e90fa;
}
.product-options__choices input:checked + span {
	border-color: #2e90fa;
	background: #f9fafb;
}
.product-options__choices input:focus-visible + span {
	outline: 3px solid rgba(46, 144, 250, .16);
	outline-offset: 1px;
}
.product-options__select {
	position: relative;
	display: block;
	width: 100%;
}
.product-options__select select {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	opacity: 0;
	pointer-events: none;
}
.product-options__select-control {
	display: flex;
	align-items: center;
	width: 100%;
	height: 44px;
	padding: 8px 44px 8px 14px;
	border: 1px solid #d5d7da;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	text-align: left;
	color: #181d27;
	background-color: #ffffff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 20px;
	cursor: pointer;
	transition: border-color var(--transition-base), box-shadow var(--transition-base);
}
.product-options__select-control:hover {
	border-color: #2e90fa;
}
.product-options__select-control:focus-visible {
	outline: 0;
	border-color: #2e90fa;
	box-shadow: 0 0 0 3px rgba(46, 144, 250, .12);
}
.product-options__select.open .product-options__select-control {
	border-color: #2e90fa;
}
.product-options__select-dropdown {
	position: absolute;
	z-index: 30;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	max-height: 228px;
	padding: 6px;
	overflow-y: auto;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #ffffff;
	box-shadow: 0 4px 6px -2px rgba(10, 13, 18, .03), 0 12px 16px -4px rgba(10, 13, 18, .08);
	scrollbar-width: thin;
	scrollbar-color: #d2d6db transparent;
}
.product-options__select-dropdown[hidden] {
	display: none;
}
.product-options__select-dropdown::-webkit-scrollbar {
	width: 10px;
}
.product-options__select-dropdown::-webkit-scrollbar-track {
	background: transparent;
}
.product-options__select-dropdown::-webkit-scrollbar-thumb {
	border: 3px solid #ffffff;
	border-radius: 999px;
	background: #d2d6db;
}
.product-options__select-option {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 44px;
	padding: 10px 44px 10px 8px;
	border: 0;
	border-radius: 4px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	text-align: left;
	color: #181d27;
	background: transparent;
	cursor: pointer;
}
.product-options__select-option:hover,
.product-options__select-option:focus-visible {
	outline: 0;
	background: #f9fafb;
}
.product-options__select-option.active {
	background: #f3f4f6;
}
.product-options__select-option.active::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 20px;
	height: 20px;
	transform: translateY(-50%);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m3.333 10 4.167 4.167L16.667 5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-options__specs {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.product-options__spec {
	display: flex;
	align-items: flex-end;
	gap: 16px;
	min-width: 0;
	font-size: 16px;
	line-height: calc(20 / 14);
}
.product-options__spec span {
	flex: none;
	color: #6c737f;
}
.product-options__spec i {
	min-width: 24px;
	flex: 1;
	border-bottom: 1px dotted #d2d6db;
	transform: translateY(-4px);
}
.product-options__spec strong {
	width: 202px;
	flex: none;
	font-weight: 500;
	color: #111927;
}
.product-options__all {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 4px;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	color: #175cd3;
}
.product-options__all::after {
	content: "";
	width: 16px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m6 12 4-4-4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.product-tabs {
	margin-top: 64px;
	border-bottom: 1px solid #e5e7eb;
}
.product-tabs ul {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	list-style: none;
}
.product-tabs li {
	min-width: 0;
}
.product-tabs a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 36px;
	padding: 0 20px 12px;
	border-bottom: 1px solid transparent;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	white-space: nowrap;
	color: #6c737f;
	transition: color var(--transition-base), border-color var(--transition-base);
}
.product-tabs a:hover,
.product-tabs a.active {
	color: #1570ef;
	border-bottom-color: #1570ef;
}

.product-buy {
	position: sticky;
	top: 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-top: 120px;
	padding: 32px;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 0 24px -4px rgba(10, 13, 18, 0.08), 0 0 8px -4px rgba(10, 13, 18, 0.03), 0 0 3px -1.5px rgba(10, 13, 18, 0.04);
}
.product-buy--desktop {
	top: 104px;
	align-self: start;
}
.product-buy--desktop.is-scrollable {
	max-height: calc(100vh - 128px);
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
}
.product-buy--desktop.is-modal-pinned {
	position: fixed;
	top: var(--product-buy-pinned-top);
	left: var(--product-buy-pinned-left);
	width: var(--product-buy-pinned-width);
	margin-top: 0;
}
.product-buy__price-row {
	display: flex;
	align-items: flex-end;
	gap: 12px;
}
.product-buy__price {
	display: flex;
	align-items: flex-end;
	gap: 8px;
	white-space: nowrap;
}
.product-buy__price span {
	padding-bottom: 2px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
}
.product-buy__price strong {
	font-size: 36px;
	font-weight: 600;
	line-height: calc(38 / 36);
	letter-spacing: -0.02em;
	color: #111927;
}
.product-buy__stock {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	padding-bottom: 3px;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20 / 14);
	white-space: nowrap;
	color: #067647;
}
.product-buy__stock::before {
	content: "";
	width: 12px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' viewBox='0 0 12 12'%3E%3Cpath stroke='%2317b26a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M10 3 4.5 8.5 2 6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-buy__cheaper {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	width: 100%;
	padding: 8px 16px;
	border: 1px solid #f3f4f6;
	border-radius: 6px;
	text-align: left;
	background: #f9fafb;
	cursor: pointer;
	transition: border-color var(--transition-base), background-color var(--transition-base);
}
.product-buy__cheaper:hover {
	border-color: #d2d6db;
	background: #f3f4f6;
}
.product-buy__cheaper strong {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #111927;
}
.product-buy__cheaper span {
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.product-buy__actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.product-buy__cart-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 8px;
}
.product-buy__actions.is-added .product-buy__cart-row {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.product-buy__actions.is-added .product-buy__counter,
.product-buy__actions.is-added .product-buy__cart,
.product-buy__actions.is-added .product-buy__quick {
	min-height: 52px;
}
.product-buy__counter {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr) 40px;
	align-items: center;
	min-width: 0;
	min-height: 52px;
	overflow: hidden;
	border: 1px solid #d2d6db;
	border-radius: 6px;
	background: #ffffff;
	transition: border-color var(--transition-base);
}
.product-buy__counter:focus-within {
	border-color: #2e90fa;
}
.product-buy__counter[hidden] {
	display: none;
}
.product-buy__counter button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
	color: #98a2b3;
	background: transparent;
	cursor: pointer;
	transition: color var(--transition-base), background-color var(--transition-base);
}
.product-buy__counter button:hover,
.product-buy__counter button:focus-visible,
.product-buy__counter button:active {
	color: #1570ef;
	background: #eff8ff;
}
.product-buy__counter input {
	min-width: 0;
	width: 100%;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	color: #111927;
	background: transparent;
}
.product-buy__cart,
.product-buy__quick {
	gap: 8px;
	width: 100%;
	min-height: 52px;
}
.product-buy__cart {
	white-space: nowrap;
}
.product-buy__cart[hidden] {
	display: none;
}
.product-buy__cart::before,
.product-buy__quick::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	flex: none;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-buy__cart::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M5.416 14.167h9.025c.791 0 1.187 0 1.51-.143.284-.126.527-.33.702-.586.199-.292.27-.682.411-1.46l1.126-6.192c.049-.27.073-.405.035-.51a.42.42 0 0 0-.183-.22C17.945 5 17.808 5 17.534 5H4.166m-2.5-3.333h1.097c.202 0 .303 0 .385.037a.4.4 0 0 1 .177.151c.05.075.065.175.097.375l2.322 14.708c.031.2.047.3.096.374a.4.4 0 0 0 .177.151c.082.037.183.037.385.037h9.43'/%3E%3C/svg%3E");
}
.product-buy__quick {
	border-color: #ff692e;
	font-size: 16px;
	color: #1f2a37;
}
.product-buy__quick::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23ff692e' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.333' d='m10.833 1.667-7.422 8.907c-.29.348-.436.523-.438.67a.42.42 0 0 0 .154.33c.115.093.342.093.796.093H10l-.834 6.667 7.422-8.907c.291-.349.436-.523.439-.67a.42.42 0 0 0-.155-.33c-.115-.093-.342-.093-.796-.093H10z'/%3E%3C/svg%3E");
}
.product-buy__quick:hover {
	border-color: #ff692e;
	color: #1f2a37;
	background: #fff4ed;
}
.product-buy__divider {
	height: 1px;
	background: #e5e7eb;
}
.product-buy__delivery {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.product-buy__delivery-item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 16px;
	line-height: 1.5;
}
.product-buy__delivery-item::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	flex: none;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-buy__delivery-item--truck::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M11.9 5.95h1.986c.208 0 .312 0 .41.024a1 1 0 0 1 .245.102c.086.052.16.126.307.273L18.3 9.802c.147.147.22.22.273.306a1 1 0 0 1 .102.246c.023.098.023.202.023.41v2.411c0 .396 0 .595-.065.75a.85.85 0 0 1-.46.46c-.156.065-.354.065-.75.065m-4.25 0H11.9m0 0V6.12c0-.952 0-1.428-.185-1.791a1.7 1.7 0 0 0-.743-.743c-.364-.186-.84-.186-1.792-.186H4.42c-.952 0-1.428 0-1.792.186a1.7 1.7 0 0 0-.742.743c-.186.363-.186.84-.186 1.791v6.63a1.7 1.7 0 0 0 1.7 1.7m8.5 0H8.5m0 0a2.55 2.55 0 0 1-5.1 0m5.1 0a2.55 2.55 0 0 0-5.1 0m14.025.425a2.125 2.125 0 1 1-4.25 0 2.125 2.125 0 0 1 4.25 0'/%3E%3C/svg%3E");
}
.product-buy__delivery-item--package::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='M17.426 6.186 10.2 10.2m0 0L2.976 6.186M10.2 10.2v8.075m1.7-.52-1.04.578c-.24.134-.361.2-.489.227a.9.9 0 0 1-.342 0c-.128-.026-.249-.093-.49-.227l-6.29-3.494c-.254-.142-.382-.213-.474-.313a.85.85 0 0 1-.182-.31c-.043-.13-.043-.275-.043-.566v-6.9c0-.291 0-.437.043-.567a.85.85 0 0 1 .182-.309c.092-.1.22-.171.474-.313l6.29-3.494c.241-.134.362-.201.49-.227a.9.9 0 0 1 .342 0c.128.026.248.093.49.227l6.29 3.494c.254.142.381.212.474.313a.85.85 0 0 1 .182.31c.043.13.043.275.043.566v3.875m-11.475-6.8 7.65 4.25M13.6 15.3l1.7 1.7 3.4-3.4'/%3E%3C/svg%3E");
}
.product-buy__delivery-item span {
	color: #6c737f;
}
.product-buy__delivery-item strong {
	font-weight: 600;
	color: #111927;
}
.product-buy__specification {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.product-buy__specification-title {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #111927;
}
.product-buy__specification-text {
	margin-top: -8px;
	font-size: 14px;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.product-buy__file {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	min-height: 48px;
	padding: 12px 16px;
	border: 1px dashed #d2d6db;
	border-radius: 6px;
	font-family: inherit;
	text-align: left;
	background: #f9fafb;
	cursor: pointer;
	transition: border-color var(--transition-base), background-color var(--transition-base);
}
.product-buy__file:hover {
	border-color: #2e90fa;
	background: #eff8ff;
}
.product-buy__file::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	flex: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m7.5 10.833 4.75-4.75a2.357 2.357 0 1 1 3.333 3.334l-6.666 6.666a4.125 4.125 0 0 1-5.834-5.833l6.25-6.25a2.946 2.946 0 0 1 4.167 4.167l-6.25 6.25a1.768 1.768 0 0 1-2.5-2.5L10.5 6.167'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-buy__file span {
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	color: #4d5761;
}
.product-buy__file em {
	margin-left: auto;
	font-size: 14px;
	font-style: normal;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.product-buy__mail {
	font-size: 14px;
	line-height: calc(20 / 14);
	color: #6c737f;
}
.product-buy__mail a {
	font-weight: 600;
	color: #175cd3;
	transition: color var(--transition-base);
}
.product-buy__mail a:hover {
	color: #2e90fa;
}

@media (max-width: 1280px) {
	.product-page__grid {
		grid-template-columns: minmax(0, 1fr) 340px;
		gap: 24px;
	}
	.product-page__intro {
		grid-template-columns: 320px minmax(0, 1fr);
		gap: 24px;
	}
	.product-gallery  {
	aspect-ratio: 4 / 3;
		width: 320px;
	}
	.product-buy {
		padding: 24px;
	}
}

/* ========== PRODUCT CHARACTERISTICS ========== */
.product-characteristics {
	margin-top: 64px;
	scroll-margin-top: 104px;
}
.product-characteristics__title {
	max-width: 800px;
	margin: 0 0 20px;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}
.product-characteristics__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.product-characteristics__row {
	display: grid;
	grid-template-columns: 454px minmax(0, 1fr);
	gap: 16px;
	align-items: end;
	min-height: 24px;
	font-size: 16px;
	line-height: 1.5;
}
.product-characteristics__row[hidden] {
	display: none;
}
.product-characteristics__name {
	display: flex;
	align-items: flex-end;
	gap: 8px;
	min-width: 0;
	color: #6c737f;
}
.product-characteristics__name span {
	flex: none;
}
.product-characteristics__name i {
	min-width: 24px;
	flex: 1;
	border-bottom: 2px dotted #d2d6db;
	transform: translateY(-5px);
}
.product-characteristics__row strong {
	min-width: 0;
	font-weight: 500;
	color: #111927;
}
.product-characteristics__more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin-top: 12px;
	padding: 6px 0 0;
	border: 0;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	color: #175cd3;
	background: transparent;
	cursor: pointer;
}
.product-characteristics__more::after {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition: transform var(--transition-base);
}
.product-characteristics__more[aria-expanded="true"]::after {
	transform: rotate(180deg);
}


/* ========== PRODUCT DESCRIPTION ========== */
.product-description {
	margin-top: 64px;
	scroll-margin-top: 104px;
}
.product-description__title {
	max-width: 800px;
	margin: 0 0 20px;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}
.product-description__subtitle {
	max-width: 800px;
	margin: 32px 0 16px;
	font-size: 22px;
	font-weight: 600;
	line-height: calc(32 / 22);
	color: #111927;
}
.product-description__title + .product-description__subtitle {
	margin-top: 0;
}
.product-description__text {
	max-width: 800px;
	margin: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #384250;
}
.product-description__text--paragraph {
	margin-bottom: 18px;
}

/* ========== PRODUCT SIZES ========== */
.product-sizes {
	margin-top: 64px;
	scroll-margin-top: 104px;
}
.product-sizes__title {
	max-width: 800px;
	margin: 0 0 32px;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}
.product-sizes__table {
	overflow: hidden;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #ffffff;
}
.product-sizes__head,
.product-sizes__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 120px 84px 92px 140px 44px;
	gap: 20px;
	align-items: center;
}
.product-sizes__head {
	min-height: 72px;
	padding: 16px 24px 16px 20px;
	border-bottom: 1px solid #e5e7eb;
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20 / 14);
	text-align: center;
	color: #6c737f;
	background: #f9fafb;
}
.product-sizes__head-name {
	padding-left: 88px;
	text-align: left;
}
.product-sizes__row {
	min-height: 96px;
	padding: 20px;
	border-bottom: 1px solid #f3f4f6;
}
.product-sizes__row:last-child {
	border-bottom: 0;
}
.product-sizes__row.is-extra:not(.is-visible) {
	display: none;
}
.product-sizes__product {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	min-width: 0;
	color: #111927;
}
.product-sizes__image  {
	aspect-ratio: 4 / 3;
	position: relative;
	width: 64px;
	height: auto;
	flex: none;
	overflow: hidden;
	background: #ffffff;
}
.product-sizes__image img {
	aspect-ratio: 4 / 3;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.product-sizes__product strong {
	min-width: 0;
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
}
.product-sizes__product:hover strong {
	color: #1570ef;
}
.product-sizes__value {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
	color: #4d5761;
}
.product-sizes__price {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 4px;
	white-space: nowrap;
}
.product-sizes__price span {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #6c737f;
}
.product-sizes__price strong {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.2;
	color: #111927;
}
.product-sizes__cart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 12px;
	border: 0;
	border-radius: 6px;
	background: #1570ef;
	cursor: pointer;
	transition: background-color var(--transition-base);
}
.product-sizes__cart:hover {
	background: #175cd3;
}
.product-sizes__cart::before {
	content: "";
	width: 20px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M5.416 14.167h9.025c.791 0 1.187 0 1.51-.143.284-.126.527-.33.702-.586.199-.292.27-.682.411-1.46l1.126-6.192c.049-.27.073-.405.035-.51a.42.42 0 0 0-.183-.22C17.945 5 17.808 5 17.534 5H4.166m-2.5-3.333h1.097c.202 0 .303 0 .385.037a.4.4 0 0 1 .177.151c.05.075.065.175.097.375l2.322 14.708c.031.2.047.3.096.374a.4.4 0 0 0 .177.151c.082.037.183.037.385.037h9.43'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-sizes__more {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin: 24px auto 0;
	padding: 0;
	border: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #175cd3;
	background: transparent;
	cursor: pointer;
}
.product-sizes__more::after {
	content: "";
	width: 16px;
	aspect-ratio: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition: transform var(--transition-base);
}
.product-sizes__more[aria-expanded="true"]::after {
	transform: rotate(180deg);
}


@media (max-width: 1420px) and (min-width: 1281px) {
	.product-options__spec {
		gap: 8px;
	}
	.product-options__spec i {
		min-width: 16px;
	}
	.product-options__spec strong {
		width: 170px;
	}
	.product-sizes__head,
	.product-sizes__row {
		grid-template-columns: minmax(0, 1fr) 94px 76px 90px 112px 44px;
		gap: 12px;
	}
	.product-sizes__head {
		padding: 14px 16px;
	}
	.product-sizes__head-name {
		padding-left: 76px;
	}
	.product-sizes__row {
		min-height: 88px;
		padding: 16px;
	}
	.product-sizes__product {
		align-items: center;
		gap: 12px;
	}
}

/* ========== PRODUCT PAYMENT AND DELIVERY ========== */
.product-payment,
.product-delivery {
	max-width: 800px;
	scroll-margin-top: 104px;
}
.product-payment {
	margin-top: 64px;
}
.product-delivery {
	margin-top: 64px;
}
.product-payment__title,
.product-delivery__title {
	margin: 0 0 20px;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}
.product-payment__subtitle,
.product-delivery__subtitle {
	margin: 0 0 16px;
	font-size: 22px;
	font-weight: 600;
	line-height: calc(32 / 22);
	color: #111927;
}
.product-payment__subtitle--spaced,
.product-delivery__subtitle {
	margin-top: 32px;
}
.product-payment__text,
.product-delivery__text,
.product-info p {
	margin: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #384250;
}
.product-payment__text--narrow,
.product-delivery__text--narrow {
	max-width: 720px;
}
.product-payment__physical,
.product-delivery__group {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.product-info {
	display: flex;
	width: 100%;
	margin-top: 32px;
	overflow: hidden;
	border-radius: 6px;
	background: #f9fafb;
}
.product-info::before {
	content: "";
	width: 3px;
	flex: none;
	background: #1570ef;
}
.product-info__body {
	flex: 1;
	min-width: 0;
	padding: 24px 32px;
}
.product-info__title {
	margin-bottom: 12px;
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
}
.product-info__list,
.product-list {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.product-info__list li,
.product-list li {
	display: flex;
	align-items: flex-start;
	min-width: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #384250;
}
.product-info__list li::before,
.product-list li::before {
	content: "";
	width: 6px;
	height: 6px;
	margin: 11px 12px 0 8px;
	flex: none;
	border-radius: 50%;
	background: #d2d6db;
}
.product-info--text .product-info__body {
	padding-top: 24px;
	padding-bottom: 24px;
}
.product-info--text strong {
	font-weight: 600;
	color: #384250;
}
.product-delivery__paragraphs {
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.product-info--insurance p {
	max-width: 733px;
}


/* ========== PRODUCT REVIEWS ========== */
.product-reviews {
	display: grid;
	scroll-margin-top: 104px;
	grid-template-columns: minmax(0, 924px) 380px;
	gap: 40px;
	width: 100%;
}
.product-reviews__content {
	min-width: 0;
	padding-top: 64px;
}
.product-reviews__title {
	max-width: 800px;
	margin: 0;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38px / 30px);
	color: #111927;
}
.product-reviews__body {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	margin-top: 32px;
}
.product-reviews__cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
}
.product-review.is-extra:not(.is-visible) {
	display: none;
}
.product-review {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-width: 0;
	min-height: 224px;
	padding: 32px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
}
.product-review__top {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.product-review__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.product-review__stars,
.product-reviews__score-stars,
.review-modal__stars {
	display: flex;
	align-items: center;
	gap: 4px;
}
.product-review__stars span,
.product-reviews__score-stars span,
.review-modal__stars span {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='%23f3f4f6' d='M9.538 1.61a.5.5 0 0 1 .924 0l2.066 4.967a.5.5 0 0 0 .422.307l5.362.43a.5.5 0 0 1 .286.878l-4.086 3.5a.5.5 0 0 0-.161.496l1.248 5.233a.5.5 0 0 1-.747.543l-4.591-2.805a.5.5 0 0 0-.522 0l-4.59 2.804a.5.5 0 0 1-.748-.542l1.248-5.233a.5.5 0 0 0-.16-.496l-4.087-3.5a.5.5 0 0 1 .286-.878l5.363-.43a.5.5 0 0 0 .421-.307z'/%3E%3Cg clip-path='url(%23b)'%3E%3Cpath fill='%23fdb022' d='M9.538 1.61a.5.5 0 0 1 .924 0l2.066 4.967a.5.5 0 0 0 .422.307l5.362.43a.5.5 0 0 1 .286.878l-4.086 3.5a.5.5 0 0 0-.161.496l1.248 5.233a.5.5 0 0 1-.747.543l-4.591-2.805a.5.5 0 0 0-.522 0l-4.59 2.804a.5.5 0 0 1-.748-.542l1.248-5.233a.5.5 0 0 0-.16-.496l-4.087-3.5a.5.5 0 0 1 .286-.878l5.363-.43a.5.5 0 0 0 .421-.307z'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3CclipPath id='b'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.review-modal__stars span {
	mix-blend-mode: luminosity;
	cursor: pointer;
}
.review-modal__stars span.is-active {
	mix-blend-mode: normal;
}
.product-review__date {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	white-space: nowrap;
	color: #6c737f;
}
.product-review__text {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #1f2a37;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}
.product-review.is-text-expanded .product-review__text {
	display: block;
	overflow: visible;
	-webkit-line-clamp: unset;
}
.product-review__text-toggle {
	align-self: flex-start;
	margin: -11px 0 0;
	padding: 0;
	border: 0;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	color: #175cd3;
	background: transparent;
	cursor: pointer;
}
.product-review__author {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #1f2a37;
	margin-top: 32px;
}
.product-reviews__more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 0;
	border: 0;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20px / 14px);
	white-space: nowrap;
	color: #175cd3;
	background: transparent;
	cursor: pointer;
}
.product-reviews__more::after {
	content: "";
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%232e90fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transition: transform var(--transition-base);
}
.product-reviews__more[aria-expanded="true"]::after {
	transform: rotate(180deg);
}
.product-reviews__summary {
	position: sticky;
	top: 0;
	align-self: start;
	padding-top: 134px;
}
.product-reviews__summary-card {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 380px;
	padding: 32px;
	border-radius: 8px;
	background: #f3f4f6;
}
.product-reviews__summary-row {
	display: flex;
	align-items: flex-end;
	gap: 20px;
}
.product-reviews__score {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	min-width: 0;
}
.product-reviews__score-value {
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38px / 30px);
	color: #111927;
}
.product-reviews__count {
	padding-bottom: 1px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	white-space: nowrap;
	color: #4d5761;
}
.product-reviews__button {
	width: 100%;
	min-height: 48px;
	padding: 12px 18px;
	line-height: 1.5;
}

/* ========== REVIEW MODAL ========== */
.review-modal__rating {
	display: flex;
	align-items: center;
	gap: 6px;
	min-height: 24px;
}
.review-modal__rating-text {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	white-space: nowrap;
	color: #4d5761;
}
.review-modal__required {
	font-size: 14px;
	font-weight: 500;
	line-height: calc(20px / 14px);
	color: #1570ef;
}
.review-modal__rating input {
	display: none;
}
.review-modal .form__group--textarea textarea {
	min-height: 96px;
	resize: none;
}
.review-modal .form__submit {
	margin-top: 0;
}

/* ========== PRODUCT PAGE RESPONSIVE ========== */
.product-buy--mobile,
.product-sizes__mobile,
.product-fixed-actions {
	display: none;
}

.product-sizes__head-cores-short {
	display: none;
}

@media (min-width: 1021px) and (max-width: 1280px) {
	.product-page__title {
		font-size: 34px;
	}
	.product-page__intro {
		grid-template-columns: 1fr;
	}
	.product-tabs ul {
		justify-content: space-between;
		gap: 0;
	}
	.product-tabs a {
		padding: 0 2px 12px;
		font-size: 14px;
	}
	.product-characteristics__row {
		grid-template-columns: minmax(0, 1fr) 200px;
	}
	.product-sizes__head,
	.product-sizes__row {
		grid-template-columns: minmax(0, 1fr) 64px 56px 70px 88px 44px;
		gap: 6px;
	}
	.product-sizes__head {
		min-height: 76px;
		padding: 10px;
		font-size: 12px;
		line-height: calc(16 / 12);
	}
	.product-sizes__head > * {
		min-width: 0;
	}
	.product-sizes__head-name {
		padding-left: 46px;
	}
	.product-sizes__row {
		min-height: 92px;
		padding: 14px 10px;
	}
	.product-sizes__product {
		align-items: center;
		gap: 8px;
	}
	.product-sizes__image  {
	aspect-ratio: 4 / 3;
		width: 36px;
		height: auto;
	}
	.product-sizes__product strong {
		font-size: 16px;
		line-height: 1.5;
	}
	.product-sizes__value,
	.product-sizes__price span {
		font-size: 14px;
	}
	.product-sizes__price {
		gap: 2px;
	}
	.product-sizes__price strong {
		font-size: 16px;
	}
	.product-sizes__head-cores-full {
		display: none;
	}
	.product-sizes__head-cores-short {
		display: inline;
	}
	.product-reviews__cards {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1020px) {
	.product-page__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
	}
	.product-buy--desktop {
		display: none;
	}
	.product-buy--mobile {
		position: static;
		display: flex;
		width: 100%;
		margin-top: 40px;
	}
	.product-reviews {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}
	.product-reviews__summary {
		position: static;
		padding-top: 0;
	}
	.product-reviews__summary-card {
		width: 100%;
	}
}

@media (max-width: 991px) and (min-width: 778px) {
	.product-page__intro {
		grid-template-columns: 1fr;
	}
	.product-sizes__head,
	.product-sizes__row {
		grid-template-columns: minmax(0, 1fr) 72px 60px 76px 104px 44px;
		gap: 8px;
	}
	.product-sizes__head {
		min-height: 68px;
		padding: 12px;
		font-size: 12px;
		line-height: calc(16 / 12);
	}
	.product-sizes__head > * {
		min-width: 0;
	}
	.product-sizes__head-name {
		padding-left: 60px;
	}
	.product-sizes__head-cores-full {
		display: none;
	}
	.product-sizes__head-cores-short {
		display: inline;
	}
	.product-sizes__row {
		min-height: 88px;
		padding: 14px 12px;
	}
	.product-sizes__product {
		align-items: center;
		gap: 10px;
	}
	.product-sizes__image  {
	aspect-ratio: 4 / 3;
		width: 44px;
		height: auto;
	}
	.product-sizes__product strong {
		font-size: 16px;
		line-height: 1.5;
	}
	.product-sizes__value,
	.product-sizes__price span {
		font-size: 14px;
	}
	.product-sizes__price {
		gap: 2px;
	}
	.product-sizes__price strong {
		font-size: 16px;
	}
}

@media (max-width: 777px) {
	.product-page__header {
		gap: 8px;
		min-height: 0;
	}
	.product-page__title {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}
	.product-page__intro {
		display: flex;
		flex-direction: column;
		gap: 20px;
		margin-top: 24px;
	}
	.product-gallery  {
	aspect-ratio: 4 / 3;
		width: 100%;
		height: auto;
	}
	.product-options__group legend,
	.product-options__select > span {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.product-options__specs {
		display: none;
	}
	.product-options__all {
		padding-top: 8px;
	}
	.product-tabs {
		display: none;
	}
	.product-buy--mobile {
		padding: 20px;
	}
	.product-characteristics,
	.product-description,
	.product-sizes,
	.product-payment,
	.product-delivery {
		margin-top: 40px;
		scroll-margin-top: 88px;
	}
	.product-characteristics__title,
	.product-description__title,
	.product-sizes__title,
	.product-payment__title,
	.product-delivery__title {
		margin-bottom: 16px;
		font-size: 24px;
		line-height: calc(32 / 24);
	}
	.product-characteristics__list {
		gap: 12px;
	}
	.product-characteristics__row {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 4px;
		align-items: end;
		min-height: 20px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.product-characteristics__name {
		gap: 4px;
	}
	.product-characteristics__name span {
		flex: 0 1 auto;
	}
	.product-characteristics__name i {
		min-width: 8px;
		transform: translateY(-4px);
	}
	.product-characteristics__more {
		min-height: 24px;
		margin-top: 12px;
		padding: 0;
	}
	.product-description__subtitle,
	.product-payment__subtitle,
	.product-delivery__subtitle {
		margin-bottom: 12px;
		font-size: 20px;
		line-height: 1.5;
	}
	.product-description__subtitle {
		margin-top: 32px;
	}
	.product-description__title + .product-description__subtitle {
		margin-top: 0;
	}
	.product-description__text,
	.product-payment__text,
	.product-delivery__text,
	.product-info p,
	.product-info__list li,
	.product-list li {
		font-size: 16px;
		line-height: 1.5;
	}
	.product-description__text--paragraph {
		margin-bottom: 16px;
	}
	.product-sizes__title {
		margin-bottom: 20px;
	}
	.product-sizes__table,
	.product-sizes__more {
		display: none;
	}
	.product-sizes__mobile {
		display: block;
		width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		overscroll-behavior-x: contain;
	}
	.product-sizes__mobile::-webkit-scrollbar {
		display: none;
	}
	.product-sizes__mobile-track {
		display: flex;
		align-items: stretch;
		gap: 16px;
		width: max-content;
	}
	.product-sizes__mobile .product-card.swiper-slide {
		width: 156px;
		min-width: 156px;
		min-height: 317px;
		border: 1px solid #e5e7eb;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}
	.product-sizes__mobile .product-card:hover {
		box-shadow: none;
	}
	.product-sizes__mobile .product-card__image  {
		height: auto;
	}
	.product-sizes__mobile .product-card__image img {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}
	.product-sizes__mobile .product-card__meta {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	.product-sizes__mobile .product-card__rating::before {
		width: 12px;
	}
	.product-sizes__mobile .product-card__actions {
		margin-top: auto;
	}
	.product-payment__subtitle--spaced,
	.product-delivery__subtitle {
		margin-top: 32px;
	}
	.product-payment__physical,
	.product-delivery__group {
		gap: 12px;
	}
	.product-info {
		margin-top: 24px;
	}
	.product-info__body,
	.product-info--text .product-info__body {
		padding: 20px 24px;
	}
	.product-info__title {
		margin-bottom: 8px;
		font-size: 18px;
		line-height: calc(28 / 18);
	}
	.product-info__list li::before,
	.product-list li::before {
		margin: 9px 12px 0 8px;
	}
	.product-delivery__paragraphs {
		gap: 16px;
	}
	.product-delivery__paragraphs .product-delivery__text {
		max-width: 320px;
	}
	.product-reviews {
		display: flex;
		flex-direction: column;
		gap: 0;
		scroll-margin-top: 88px;
	}
	.product-reviews__content {
		padding-top: 48px;
	}
	.product-reviews__title {
		font-size: 20px;
		line-height: 1.5;
	}
	.product-reviews__body {
		align-items: stretch;
		gap: 0;
		margin-top: 20px;
	}
	.product-reviews__cards {
		display: flex;
		gap: 16px;
		width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		overscroll-behavior-x: contain;
	}
	.product-reviews__cards::-webkit-scrollbar {
		display: none;
	}
	.product-review {
		flex: 0 0 min(360px, 82vw);
		width: min(360px, 82vw);
		min-width: 0;
		min-height: 220px;
		padding: 20px;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}
	.product-review.is-extra:not(.is-visible) {
		display: flex;
	}
	.product-review__stars span,
	.product-reviews__score-stars span {
		width: 16px;
		height: 16px;
	}
	.product-review__date,
	.product-review__text,
	.product-review__author {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.product-review__author {
		margin-top: 24px;
	}
	.product-reviews__more {
		display: none;
	}
	.product-reviews__summary {
		align-self: stretch;
		width: 100%;
		padding-top: 24px;
	}
	.product-reviews__summary-card {
		gap: 20px;
		width: 100%;
		padding: 24px;
	}
	.product-reviews__button {
		height: 48px;
		min-height: 48px;
	}
	.product-reviews__summary-row {
		gap: 20px;
	}
	.product-reviews__score {
		flex-direction: row;
		align-items: center;
		gap: 8px;
	}
	.product-reviews__score-value {
		font-size: 24px;
		line-height: calc(32 / 24);
	}
	.product-reviews__count {
		padding-bottom: 4px;
	}
	.page-product .page-contact-buttons {
		right: 16px;
		bottom: 90px;
		display: flex;
		gap: 0;
	}
	.page-product .page-contact-buttons__item--mail {
		display: none;
	}
	.product-fixed-actions {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 35;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 12px 16px;
		background: #ffffff;
		box-shadow: 0 0 24px -4px rgba(10, 13, 18, .08), 0 0 8px -4px rgba(10, 13, 18, .03), 0 0 3px -1.5px rgba(10, 13, 18, .04);
	}
	.product-fixed-actions__inner {
		display: flex;
		align-items: center;
		gap: 8px;
		width: 100%;
		max-width: 361px;
	}
	.product-fixed-actions__cart,
	.product-fixed-actions__quick {
		height: 48px;
		min-height: 48px;
		padding: 12px 16px;
		font-size: 16px;
		line-height: 1.5;
	}
	.product-fixed-actions__cart {
		flex: 1 1 auto;
	}
	.product-fixed-actions__quick {
		flex: 0 0 auto;
		gap: 6px;
		border-color: #d2d6db;
		color: #1f2a37;
		background: #ffffff;
	}
	.product-fixed-actions__quick::before {
		content: "";
		width: 16px;
		height: 16px;
		flex: none;
		background: url(../img/product-fixed-flash.svg) center / contain no-repeat;
	}
	.product-fixed-actions__quick:hover {
		border-color: #d2d6db;
		color: #1f2a37;
		background: #ffffff;
	}
}

@media (max-width: 575px) {
	.page-product .breadcrumbs {
		display: block;
		padding-top: 20px;
		background: #ffffff;
	}
	.product-page {
		padding: 8px 0 48px;
	}
	.page-product .footer__nav-group--company {
		margin-top: 0;
	}
	.page-product .footer__nav-toggle {
		min-height: 44px;
		padding-top: 12px;
		padding-bottom: 12px;
	}
	.page-product .footer__brand-text {
		gap: 24px;
	}
	.product-characteristics__row {
		grid-template-columns: minmax(0, 56%) minmax(0, 44%);
		gap: 4px;
	}
	.product-characteristics__name {
		position: relative;
		display: block;
		padding-right: 4px;
	}
	.product-characteristics__name::after {
		content: "";
		position: absolute;
		right: 4px;
		bottom: 4px;
		left: 0;
		border-bottom: 2px dotted #d2d6db;
	}
	.product-characteristics__name span {
		position: relative;
		z-index: 1;
		display: inline;
		padding-right: 4px;
		background: #ffffff;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
	}
	.product-characteristics__name i {
		display: none;
	}
	.product-buy--mobile {
		min-height: 540px;
	}
	.product-buy--mobile .product-buy__cheaper {
		margin-top: -4px;
	}
	.product-buy--mobile .product-buy__actions {
		margin-top: -4px;
	}
	.product-buy--mobile .product-buy__delivery {
		gap: 8px;
	}
	.product-buy--mobile .product-buy__specification-text {
		margin-top: -10px;
	}
	.product-buy--mobile .product-buy__file {
		width: auto;
		min-height: 20px;
		padding: 0;
		border: 0;
		border-radius: 0;
		gap: 4px;
		background: transparent;
	}
	.product-buy--mobile .product-buy__file::before {
		width: 16px;
		height: 16px;
		background-image: url(../img/product-attachment.svg);
	}
	.product-buy--mobile .product-buy__file span {
		font-weight: 500;
	}
	.product-buy--mobile .product-buy__file em {
		display: none;
	}
	.product-buy--mobile .product-buy__mail {
		display: flex;
		align-items: center;
		gap: 4px;
		width: 100%;
	}
	.product-buy__delivery-item {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.product-buy__delivery-item::before {
		width: 16px;
	}
	.product-buy__specification-title {
		font-size: 16px;
		line-height: 1.5;
	}
	.product-buy__specification-text,
	.product-buy__file,
	.product-buy__mail {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
	.review-modal.modal--form {
		width: calc(100% - 32px);
		max-width: none;
		min-height: min(678px, calc(100dvh - 32px));
		margin: 16px auto;
		padding: 0;
		gap: 20px;
	}
	.review-modal .modal__header {
		min-height: 144px;
		padding: 40px 24px 8px;
	}
	.review-modal.modal--form .modal__title {
		margin: 0 24px 0 0;
	}
	.review-modal .form {
		padding: 0 24px 24px;
		gap: 20px;
	}
	.review-modal .checkbox span {
		flex: 1 1 auto;
		min-width: 0;
	}
	.review-modal button.mfp-close.modal__close {
		top: 16px;
		right: 16px;
	}
	.modal.modal--success {
		width: calc(100% - 35px);
		max-width: 325px;
		min-height: 240px;
		padding: 48px 32px 40px;
	}
}

@media (max-width: 330px) {
	.product-options__choices span {
		min-width: 44px;
		padding-left: 16px;
		padding-right: 16px;
	}
	.product-fixed-actions {
		padding-left: 8px;
		padding-right: 8px;
	}
	.product-fixed-actions__cart,
	.product-fixed-actions__quick {
		padding-left: 12px;
		padding-right: 12px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}
}


/* ========== CART: STEP 1 DESKTOP ========== */
.page-cart {
    background: #f3f4f6;
}

.cart-page {
    min-height: 700px;
    padding: 20px 0 147px;
    background: #f3f4f6;
}

.cart-page__title {
    max-width: 800px;
    margin: 0 0 48px;
    font-size: 40px;
    font-weight: 600;
    line-height: calc(52 / 40);
    letter-spacing: -0.8px;
    color: #111927;
}

.cart-page__grid {
    display: grid;
    grid-template-columns: minmax(0, 924px) 380px;
    gap: 40px;
    align-items: start;
}

.cart-list {
    overflow: hidden;
    border-radius: 12px;
    background: #fff;
}

.cart-list__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 76px;
    padding: 32px 32px 24px;
}

.cart-list__select-all {
    align-items: center;
    gap: 8px;
}

.cart-list__select-all input,
.cart-row__check input {
    margin: 0;
}

.cart-list__select-all span {
    max-width: none;
    font-size: 14px;
    font-weight: 500;
    line-height: calc(20 / 14);
    color: #384250;
}

.cart-list__delete {
    padding: 0;
    border: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: calc(20 / 14);
    color: #6c737f;
    background: transparent;
    transition: color .2s ease;
}

.cart-list__delete:hover {
    color: #344054;
}

.cart-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 138px 180px 40px;
    gap: 20px;
    align-items: start;
    min-height: 115px;
    padding: 20px 32px;
    border-top: 1px solid #e5e7eb;
    background: #fff;
}

.cart-row--last {
    min-height: 127px;
    padding-bottom: 32px;
}

.cart-row__product {
    display: grid;
    grid-template-columns: 20px 100px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
    min-width: 0;
}

.cart-row__check {
    display: block;
    width: 20px;
    margin: 0;
}

.cart-row__check span {
    display: none;
}

.cart-row__image  {
	aspect-ratio: 4 / 3;
    position: relative;
    width: 100px;
    height: auto;
    overflow: hidden;
    background: #fff;
}

.cart-row__image img {
	aspect-ratio: 4 / 3;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
}

.cart-row__name {
    align-self: center;
    min-width: 0;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    color: #111927;
    transition: color .2s ease;
}

.cart-row__name:hover {
    color: #1570ef;
}

.cart-counter {
    display: grid;
    grid-template-columns: 40px 58px 40px;
    overflow: hidden;
    border: 1px solid #d2d6db;
    border-radius: 6px;
    background: #fff;
    transition: border-color .2s ease-in-out;
}

.cart-counter:focus-within {
    border-color: #2e90fa;
}

.cart-counter__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    min-height: 44px;
    padding: 0;
    border: 0;
    outline: 0;
    background: #fff;
    transition: background-color .2s ease-in-out;
}

.cart-counter__btn img {
    display: none;
}

.cart-counter__btn::before {
    content: "";
    width: 16px;
    height: auto;
    aspect-ratio: 1;
    background-color: #9da4ae;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    transition: background-color .2s ease-in-out;
}

.cart-counter__btn--minus::before {
    -webkit-mask-image: url("../img/cart-minus.svg");
    mask-image: url("../img/cart-minus.svg");
}

.cart-counter__btn--plus::before {
    -webkit-mask-image: url("../img/cart-plus.svg");
    mask-image: url("../img/cart-plus.svg");
}

.cart-counter__btn:hover,
.cart-counter__btn:focus-visible,
.cart-counter__btn:active {
    background-color: #eff8ff;
}

.cart-counter__btn:hover::before,
.cart-counter__btn:focus-visible::before,
.cart-counter__btn:active::before {
    background-color: #1570ef;
}

.cart-counter input {
    width: 58px;
    min-height: 44px;
    padding: 0 4px;
    border: 0;
    border-radius: 0;
    outline: 0;
    appearance: textfield;
    font-size: 14px;
    font-weight: 500;
    line-height: calc(20 / 14);
    text-align: center;
    color: #111927;
    background: #fff;
}

.cart-counter input::-webkit-outer-spin-button,
.cart-counter input::-webkit-inner-spin-button {
    margin: 0;
    appearance: none;
}

.cart-row__price {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 4px;
    padding-top: 1px;
    white-space: nowrap;
}

.cart-row__price span {
    padding-bottom: 2px;
    font-size: 16px;
    font-weight: 400;
    line-height: calc(20 / 14);
    color: #6c737f;
}

.cart-row__price strong {
    font-size: 24px;
    font-weight: 600;
    line-height: calc(32 / 24);
    color: #111927;
}

.cart-row__remove {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 6px;
    outline: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: #f9fafb;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out, background-color .2s ease-in-out;
}

.cart-row__remove::before {
    content: "";
    width: 20px;
    height: auto;
    aspect-ratio: 1;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m5 5 10 10M15 5 5 15'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.cart-row:hover .cart-row__remove,
.cart-row:focus-within .cart-row__remove {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.cart-row__remove:hover,
.cart-row__remove:focus-visible {
    background: #f2f4f7;
}

.cart-summary {
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: 397px;
    padding: 32px;
    justify-content: center;
    border-radius: 12px;
    background: #fff;
}

.cart-summary__main {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.cart-summary__total {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.cart-summary__total > span {
    padding-bottom: 2px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    color: #384250;
}

.cart-summary__total > div {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    white-space: nowrap;
}

.cart-summary__total small {
    padding-bottom: 1px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #6c737f;
}

.cart-summary__total strong {
    font-size: 36px;
    font-weight: 600;
    line-height: calc(38 / 36);
    letter-spacing: -0.72px;
    color: #111927;
}

.cart-summary__divider {
    width: 100%;
    height: 1px;
    background: #e5e7eb;
}

.cart-summary__note,
.cart-summary__support p {
    margin: 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #384250;
}

.cart-summary__checkout {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    min-height: 52px;
    padding: 14px 24px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    color: #fff;
    background: #1570ef;
    transition: background .2s ease;
}

.cart-summary__checkout:hover {
    background: #175cd3;
}

.cart-summary__checkout img {
    width: 20px;
    height: 20px;
}

.cart-summary__support {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cart-summary__support a {
    align-self: flex-start;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    color: #111927;
    transition: color .2s ease;
}

.cart-summary__support a:hover {
    color: #1570ef;
}



/* ========== CART: STEP 1 ADAPTIVE ========== */
@media (max-width: 1420px) and (min-width: 778px) {
    .cart-page__grid {
        grid-template-columns: minmax(0, 1fr) 320px;
        gap: 24px;
    }

    .cart-list__toolbar {
        padding-right: 24px;
        padding-left: 24px;
    }

    .cart-row,
    .cart-row--last {
        grid-template-columns: minmax(0, 1fr) 122px 145px 40px;
        gap: 16px;
        min-height: 107px;
        padding: 20px 24px;
    }

    .cart-row--last {
        padding-bottom: 24px;
    }

    .cart-row__product {
        grid-template-columns: 20px 88px minmax(0, 1fr);
        gap: 14px;
    }

    .cart-row__image  {
	aspect-ratio: 4 / 3;
        width: 88px;
        height: auto;
    }

    .cart-row__name {
        font-size: 18px;
        line-height: calc(26 / 18);
    }

    .cart-counter {
        grid-template-columns: 36px 50px 36px;
    }

    .cart-counter__btn {
        width: 36px;
    }

    .cart-counter input {
        width: 50px;
    }

    .cart-row__price {
        gap: 3px;
    }

    .cart-row__price strong {
        font-size: 22px;
        line-height: calc(30 / 22);
    }

    .cart-summary {
        height: auto;
        min-height: 397px;
        padding: 24px;
    }

    .cart-summary__total strong {
        font-size: 30px;
        line-height: calc(38 / 30);
        letter-spacing: -0.6px;
    }
}

@media (max-width: 1280px) and (min-width: 778px) {
    .cart-row,
    .cart-row--last {
        grid-template-columns: minmax(0, 1fr) 118px 135px;
        gap: 12px;
        padding-right: 20px;
        padding-left: 20px;
    }

    .cart-list__toolbar {
        padding-right: 20px;
        padding-left: 20px;
    }

    .cart-row__product {
        grid-template-columns: 20px 80px minmax(0, 1fr);
        gap: 12px;
    }

    .cart-row__image  {
	aspect-ratio: 4 / 3;
        width: 80px;
        height: auto;
    }

    .cart-row__name {
        font-size: 16px;
        line-height: 1.5;
    }

    .cart-counter {
        grid-template-columns: 34px 50px 34px;
    }

    .cart-counter__btn {
        width: 34px;
    }

    .cart-row__price strong {
        font-size: 20px;
        line-height: 1.5;
    }

    .cart-row__price span {
        font-size: 12px;
        line-height: calc(18 / 12);
    }
}

@media (max-width: 1020px) and (min-width: 778px) {
    .cart-page__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .cart-summary {
        min-height: 0;
    }
}

/* ========== CART: STEP 2 DESKTOP ========== */
.checkout-page {
    min-height: 700px;
    padding: 20px 0 126px;
    background: #f3f4f6;
}

.checkout-page__title {
    max-width: 800px;
    margin: 0 0 48px;
    font-size: 40px;
    font-weight: 600;
    line-height: calc(52 / 40);
    letter-spacing: -0.8px;
    color: #111927;
}

.checkout-page__grid {
    display: grid;
    grid-template-columns: minmax(0, 924px) 380px;
    gap: 40px;
    align-items: start;
}

.checkout-form {
    min-height: 454px;
    padding: 32px 40px;
    overflow: hidden;
    border-radius: 12px;
    background: #fff;
}

.checkout-form__fields {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.checkout-form__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.checkout-form .form__group {
    margin: 0;
}

.checkout-form .form__label {
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 500;
    line-height: calc(20 / 14);
    color: #111927;
}

.checkout-form input:not([type="checkbox"]):not([type="file"]),
.checkout-form textarea {
    width: 100%;
    border: 1px solid #d2d6db;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #111927;
    background: #fff;
    outline: 0;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.checkout-form input:not([type="checkbox"]):not([type="file"]) {
    height: 48px;
    padding: 11px 16px;
}

.checkout-form textarea {
    height: 96px;
    min-height: 96px;
    padding: 11px 16px;
    resize: none;
}

.checkout-form input::placeholder,
.checkout-form textarea::placeholder {
    color: #6c737f;
    opacity: 1;
}

.checkout-form input:not([type="checkbox"]):not([type="file"]):focus,
.checkout-form textarea:focus {
    border-color: #2e90fa;
    box-shadow: 0 0 0 1px #2e90fa;
}

.checkout-form__comment {
    height: 122px;
}

.checkout-form__file-group {
    min-width: 0;
}

.checkout-form__file {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    height: 48px;
    padding: 13px 16px;
    border: 1px dashed #d2d6db;
    border-radius: 6px;
    cursor: pointer;
    background: #f9fafb;
    transition: border-color .2s ease, background .2s ease;
}

.checkout-form__file:hover {
    border-color: #2e90fa;
    background: #f5faff;
}

.checkout-form__file input {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.checkout-form__file-action {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: none;
    font-size: 14px;
    font-weight: 600;
    line-height: calc(20 / 14);
    color: #4d5761;
}

.checkout-form__file-action img {
    width: 16px;
    height: 16px;
}

.checkout-form__file-types {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    font-size: 14px;
    font-weight: 400;
    line-height: calc(20 / 14);
    color: #6c737f;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.checkout-summary__consent input,
.checkout-summary__newsletter input {
    margin-top: 2px;
    flex: none;
}

.checkout-summary__consent span,
.checkout-summary__newsletter span {
    max-width: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #4d5761;
}

.checkout-summary__consent a,
.checkout-summary__newsletter a {
    color: #175cd3;
}

.checkout-summary__consent a:hover,
.checkout-summary__newsletter a:hover {
    color: #1570ef;
}

.checkout-summary {
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 32px;
    border-radius: 12px;
    background: #fff;
}

.checkout-summary__details {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.checkout-summary__line,
.checkout-summary__total {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.checkout-summary__line {
    align-items: flex-end;
    min-height: 24px;
}

.checkout-summary__line > span,
.checkout-summary__total > span {
    font-size: 16px;
    line-height: 1.5;
    color: #384250;
}

.checkout-summary__line > span {
    font-weight: 400;
}

.checkout-summary__line > div,
.checkout-summary__total > div {
    display: flex;
    align-items: flex-end;
    white-space: nowrap;
}

.checkout-summary__line > div {
    gap: 4px;
}

.checkout-summary__line small,
.checkout-summary__total small {
    font-size: 16px;
    font-weight: 400;
    color: #6c737f;
}

.checkout-summary__line small {
    line-height: calc(18 / 16);
}

.checkout-summary__line strong {
    font-size: 24px;
    font-weight: 600;
    line-height: 1;
    color: #111927;
}

.checkout-summary__line em {
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    line-height: 1.5;
    color: #079455;
    white-space: nowrap;
}

.checkout-summary__divider {
    width: 100%;
    height: 1px;
    flex: none;
    background: #e5e7eb;
}

.checkout-summary__total {
    align-items: flex-end;
    min-height: 38px;
}

.checkout-summary__total > span {
    font-weight: 600;
}

.checkout-summary__total > div {
    gap: 8px;
}

.checkout-summary__total small {
    line-height: 1.5;
}

.checkout-summary__total strong {
    font-size: 36px;
    font-weight: 600;
    line-height: calc(38 / 36);
    letter-spacing: -0.72px;
    color: #111927;
}

.checkout-summary__agreements {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.checkout-summary__consent,
.checkout-summary__newsletter {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    min-height: 48px;
    margin: 0;
}

.checkout-summary__submit {
    width: 100%;
    min-height: 52px;
    padding: 14px 24px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

/* ========== CART: CHECKOUT HEADER ========== */
.checkout-header {
    position: relative;
    z-index: 10;
    min-height: 80px;
    border-bottom: 1px solid #e5e7eb;
    background: #fff;
    box-shadow: 0 4px 6px -2px rgba(10, 13, 18, .03), 0 10px 14px -4px rgba(10, 13, 18, .03);
}

.checkout-header__container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    min-height: 80px;
}

.checkout-header__logo {
    display: block;
    width: 150px;
    height: 42px;
    flex: none;
    overflow: hidden;
    transition: opacity .2s ease;
}

.checkout-header__logo:hover {
    opacity: .8;
}

.checkout-header__logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.checkout-header__contacts {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
}

.checkout-header__phone,
.checkout-header__email {
    white-space: nowrap;
    transition: color .2s ease;
}

.checkout-header__phone {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    color: #111927;
}

.checkout-header__email {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    color: #4d5761;
}

.checkout-header__phone:hover,
.checkout-header__email:hover {
    color: #1570ef;
}

.checkout-back {
    height: 60px;
    background: #f3f4f6;
}

.checkout-back__link {
    display: inline-flex;
    padding-top: 40px;
    font-size: 14px;
    font-weight: 400;
    line-height: calc(20 / 14);
    color: #6c737f;
    transition: color .2s ease;
}

.checkout-back__link:hover {
    color: #1570ef;
}

/* ========== CART: SUCCESS DESKTOP ========== */
.page-cart-success {
    background: #fff;
}

.checkout-success {
    min-height: 790px;
    padding: 20px 0 96px;
    background: #fff;
}

.checkout-success__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    padding: 80px 0;
}

.checkout-success__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
}

.checkout-success__icon {
    width: 64px;
    height: 64px;
    object-fit: contain;
}

.checkout-success__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    width: 600px;
    max-width: 100%;
    text-align: center;
}

.checkout-success__title {
    margin: 0;
    font-size: 30px;
    font-weight: 600;
    line-height: calc(38 / 30);
    color: #111927;
}

.checkout-success__description {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(28 / 18);
    color: #384250;
}

.checkout-success__actions {
    display: flex;
    align-items: center;
    justify-content: center;
}

.checkout-success__actions .btn {
    min-height: 48px;
    padding: 12px 18px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

.checkout-success__features {
    display: grid;
    grid-template-columns: repeat(3, 318px);
    justify-content: center;
    gap: 24px;
    width: 100%;
    padding-top: 8px;
}

.checkout-success__feature {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    min-height: 192px;
    padding: 20px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    font: inherit;
    text-align: center;
    color: #111927;
    background: #fff;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.checkout-success__feature:hover {
    border-color: #b2ddff;
    color: #111927;
    background: #f9fafb;
    box-shadow: inset 0 0 0 1px #1570ef;
}

.checkout-success__feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 6px;
    background: #f9fafb;
}

.checkout-success__feature-icon img {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.checkout-success__feature-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    width: 100%;
}

.checkout-success__feature-content strong {
    font-size: 18px;
    font-weight: 600;
    line-height: calc(28 / 18);
    color: #111927;
}

.checkout-success__feature-content > span {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #384250;
}

.checkout-success__feature:last-child {
    padding: 16px 24px;
}

.checkout-success__feature:last-child .checkout-success__feature-icon {
    border-radius: 10px;
}

/* ========== CART: STEP 1 MOBILE ========== */
.cart-row__unit-price {
    display: none;
}

@media (max-width: 777px) {
    .cart-page {
        min-height: 0;
        padding: 8px 0 48px;
    }

    .cart-page__title {
        margin: 0 0 24px;
        font-size: 24px;
        line-height: calc(32 / 24);
        letter-spacing: 0;
    }

    .cart-page__grid {
        display: flex;
        width: calc(100% + 32px);
        margin-left: -16px;
        flex-direction: column;
        gap: 16px;
    }

    .cart-list {
        display: flex;
        width: 100%;
        flex-direction: column;
        gap: 8px;
        overflow: visible;
        border-radius: 0;
        background: transparent;
    }

    .cart-list__toolbar {
		position: sticky;
		top: 58px;
		z-index: 5;
        min-height: 0;
		padding: 12px 16px;
        justify-content: space-between;
		background: #f3f4f6;
    }

    .cart-list__select-all {
        gap: 8px;
        font-size: 14px;
        font-weight: 500;
        line-height: calc(20 / 14);
        color: #384250;
    }

    .cart-list__select-all input + span::before,
    .cart-row__check input + span::before {
        width: 20px;
        height: 20px;
    }

    .cart-row,
    .cart-row--last {
		position: relative;
        display: grid;
        grid-template-columns: 120px minmax(0, 1fr);
        grid-template-rows: auto auto auto;
        column-gap: 12px;
        row-gap: 12px;
        min-height: 0;
        margin: 0;
        padding: 16px;
        border: 0;
        border-radius: 10px;
        background: #fff;
    }

    .cart-row__product {
        display: contents;
    }

    .cart-row__check {
        grid-column: 1;
        grid-row: 1;
        align-self: start;
        justify-self: start;
        z-index: 2;
        margin: 0;
    }

    .cart-row__image  {
	aspect-ratio: 4 / 3;
        grid-column: 1;
        grid-row: 1 / 4;
        width: 120px;
        height: auto;
        align-self: start;
    }

    .cart-row__name {
        grid-column: 2;
        grid-row: 1;
        align-self: start;
		padding-right: 36px;
        font-size: 16px;
        line-height: 1.5;
    }

    .cart-row__unit-price {
        display: flex;
        grid-column: 2;
        grid-row: 2;
        gap: 5px;
        align-items: flex-end;
        color: #6c737f;
    }

    .cart-row__unit-price span {
        padding-bottom: 2px;
        font-size: 12px;
        font-weight: 400;
        line-height: 1;
        white-space: nowrap;
    }

    .cart-row__unit-price strong {
		font-size: 24px;
        font-weight: 600;
		line-height: calc(32 / 24);
        color: #111927;
        white-space: nowrap;
    }

    .cart-counter {
        grid-column: 2;
        grid-row: 3;
        grid-template-columns: 40px minmax(0, 1fr) 40px;
        width: 100%;
        min-width: 0;
    }

    .cart-counter__btn {
        width: 40px;
        min-height: 40px;
        padding: 0;
    }

    .cart-counter__btn img {
        width: 16px;
        height: 16px;
    }

    .cart-counter input {
        width: 100%;
        min-width: 0;
        min-height: 40px;
        padding: 8px 6px;
        font-size: 14px;
        line-height: calc(20 / 14);
    }

	.cart-row__price {
        display: none;
    }

	.cart-row__remove {
		position: absolute;
		top: 12px;
		right: 12px;
		display: flex;
		width: 36px;
		height: 36px;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		background: transparent;
	}

	.cart-row__remove::before {
		width: 20px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239DA4AE' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M2.5 5h15M7.5 5V3.333c0-.46.373-.833.833-.833h3.334c.46 0 .833.373.833.833V5m3.333 0-.833 12.5H5.833L5 5m3.333 3.333v5.834m3.334-5.834v5.834'/%3E%3C/svg%3E");
	}

	.cart-row__remove:hover,
	.cart-row__remove:focus-visible {
		background: #f3f4f6;
	}

    .cart-summary {
        gap: 16px;
        height: auto;
        min-height: 335px;
        padding: 24px;
        border-radius: 12px;
    }

    .cart-summary__main {
        gap: 16px;
    }

    .cart-summary__total > span {
        padding-bottom: 2px;
        font-size: 16px;
        line-height: 1.5;
        color: #384250;
    }

    .cart-summary__total > div {
        gap: 8px;
    }

    .cart-summary__total small {
        padding-bottom: 2px;
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .cart-summary__total strong {
        font-size: 24px;
        line-height: calc(32 / 24);
        letter-spacing: 0;
    }

    .cart-summary__note,
    .cart-summary__support p {
        font-size: 14px;
        line-height: calc(20 / 14);
        color: #384250;
    }

    .cart-summary__checkout {
        min-height: 48px;
        padding: 12px 18px;
    }

    .cart-summary__checkout img {
        width: 16px;
        height: 16px;
    }

    .cart-summary__support {
        gap: 12px;
    }

    .cart-summary__support a {
        font-size: 20px;
        line-height: 1.5;
    }

    .cart-mobile-action .btn {
        text-decoration: none;
    }
}

/* ========== CART: STEP 2 RESPONSIVE / MOBILE ========== */
@media (min-width: 1021px) and (max-width: 1280px) {
    .checkout-form__row {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

.checkout-mobile-site-header {
    display: none;
}

@media (max-width: 1020px) {
    .checkout-mobile-site-header {
        display: block;
    }

    .checkout-header {
        display: none;
    }

    .checkout-page__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    .checkout-summary {
        position: static;
    }
}

@media (max-width: 777px) {
    .page-cart-checkout .checkout-back {
        height: 40px;
    }

    .page-cart-checkout .checkout-back__link {
        padding-top: 20px;
    }

    .checkout-page {
        min-height: 0;
        padding: 8px 0 48px;
    }

    .checkout-page__title {
        margin: 0 0 24px;
        font-size: 24px;
        line-height: calc(32 / 24);
        letter-spacing: 0;
    }

    .checkout-page__grid {
        display: flex;
        width: calc(100% + 32px);
        margin-left: -16px;
        flex-direction: column;
        gap: 16px;
    }

    .checkout-form {
        width: 100%;
        min-height: 0;
        padding: 24px;
        border-radius: 12px;
    }

    .checkout-form__fields {
        gap: 24px;
    }

    .checkout-form__row {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .checkout-form textarea {
        height: 144px;
        min-height: 144px;
    }

    .checkout-form__comment {
        height: 170px;
    }

    .checkout-summary__consent span,
    .checkout-summary__newsletter span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .checkout-summary {
        width: 100%;
        gap: 16px;
        height: auto;
        min-height: 303px;
        padding: 24px;
        border-radius: 12px;
    }

    .checkout-summary__details {
        gap: 8px;
    }

    .checkout-summary__line {
        min-height: 20px;
    }

    .checkout-summary__line > span,
    .checkout-summary__line small,
    .checkout-summary__line em {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .checkout-summary__line small {
        color: #4d5761;
    }

    .checkout-summary__line strong {
        font-size: 18px;
        line-height: calc(22 / 18);
    }

    .checkout-summary__line em {
        font-weight: 500;
    }

    .checkout-summary__total {
        min-height: 32px;
    }

    .checkout-summary__total > span {
        padding-bottom: 2px;
        font-size: 16px;
        line-height: 1.5;
    }

    .checkout-summary__total small {
        padding-bottom: 2px;
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .checkout-summary__total strong {
        font-size: 24px;
        line-height: calc(28 / 24);
        letter-spacing: 0;
    }

    .checkout-summary__consent,
    .checkout-summary__newsletter {
        min-height: 40px;
    }

    .checkout-summary__submit {
        min-height: 48px;
        padding: 12px 18px;
    }

    .checkout-mobile-action {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        transition: opacity .25s ease, transform .25s ease, visibility 0s linear 0s;
    }

    .checkout-mobile-action .btn {
        text-decoration: none;
    }

    .checkout-mobile-action.is-hidden-by-summary {
        opacity: 0;
        visibility: hidden;
        transform: translateY(100%);
        pointer-events: none;
        transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
    }
}

/* ========== SEARCH EMPTY: RESPONSIVE / MOBILE ========== */
@media (max-width: 777px) {
    .page-search-not-found .search-empty__container {
        gap: 28px;
        padding: 48px 0;
    }

    .page-search-not-found .search-empty__icon {
        width: 64px;
    }

    .page-search-not-found .search-empty__features {
        display: flex;
        flex-direction: column;
        gap: 16px;
        width: 100%;
        max-width: none;
        padding-top: 0;
    }

    .page-search-not-found .search-empty__feature {
        width: 100%;
        min-height: 72px;
        padding: 12px 16px;
        flex-direction: row;
        justify-content: flex-start;
        gap: 16px;
        text-align: left;
    }

    .page-search-not-found .search-empty__feature:nth-child(2) {
        gap: 20px;
    }

    .page-search-not-found .search-empty__feature-content {
        align-items: flex-start;
        gap: 4px;
    }

    .page-search-not-found .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-search-not-found .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-search-not-found .search-empty__feature:last-child {
        min-height: 72px;
        padding: 12px 16px;
        align-items: center;
        gap: 20px;
    }

    .page-search-not-found .search-empty__feature:last-child .search-empty__feature-icon {
        border-radius: 10px;
    }

    .page-search-not-found .search-empty__feature:last-child .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-search-not-found .search-empty__feature:last-child .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }
}

/* ========== CART: SUCCESS RESPONSIVE / MOBILE ========== */
@media (max-width: 777px) {
    .page-cart-success .checkout-success {
        min-height: 600px;
        padding: 48px 0;
    }

    .page-cart-success .checkout-success__container {
        gap: 0;
        padding: 0;
    }

    .page-cart-success .checkout-success__content {
        gap: 16px;
        margin-bottom: 24px;
    }

    .page-cart-success .checkout-success__text {
        gap: 12px;
        width: 100%;
    }

    .page-cart-success .checkout-success__title {
        font-size: 24px;
        line-height: calc(32 / 24);
        letter-spacing: 0;
    }

    .page-cart-success .checkout-success__description {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-success .checkout-success__actions {
        width: 100%;
        margin-bottom: 40px;
    }

    .page-cart-success .checkout-success__actions .btn {
        width: 100%;
        min-height: 48px;
        padding: 12px 18px;
    }

    .page-cart-success .checkout-success__features {
        display: flex;
        flex-direction: column;
        gap: 16px;
        width: 100%;
        padding-top: 0;
    }

    .page-cart-success .checkout-success__feature {
        width: 100%;
        min-height: 72px;
        padding: 12px 16px;
        flex-direction: row;
        justify-content: flex-start;
        gap: 16px;
        text-align: left;
    }

    .page-cart-success .checkout-success__feature:nth-child(2) {
        gap: 20px;
    }

    .page-cart-success .checkout-success__feature:last-child {
        display: flex;
        min-height: 72px;
        padding: 12px 16px;
        align-items: center;
        gap: 20px;
    }

    .page-cart-success .checkout-success__feature:last-child .checkout-success__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-success .checkout-success__feature:last-child .checkout-success__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-cart-success .checkout-success__feature-content {
        align-items: flex-start;
        gap: 4px;
    }

    .page-cart-success .checkout-success__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-success .checkout-success__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }
}

/* ========== CART: EMPTY RESPONSIVE / MOBILE ========== */
@media (max-width: 777px) {
    .page-cart-empty .search-empty {
        min-height: 680px;
        padding: 48px 0;
    }

    .page-cart-empty .search-empty__container {
        gap: 0;
        padding: 0;
    }

    .page-cart-empty .search-empty__content {
        gap: 16px;
        margin-bottom: 24px;
    }

    .page-cart-empty .search-empty__icon {
        width: 64px;
    }

    .page-cart-empty .search-empty__text {
        gap: 12px;
        width: 100%;
    }

    .page-cart-empty .search-empty__title {
        font-size: 24px;
        line-height: calc(32 / 24);
        letter-spacing: 0;
    }

    .page-cart-empty .search-empty__description {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-empty .search-empty__actions {
        flex-direction: column;
        gap: 12px;
        width: 100%;
        margin-bottom: 40px;
    }

    .page-cart-empty .search-empty__actions .btn {
        width: 100%;
        min-height: 48px;
        padding: 12px 18px;
    }

    .page-cart-empty .search-empty__features {
        display: flex;
        flex-direction: column;
        gap: 16px;
        width: 100%;
        max-width: none;
        padding-top: 0;
    }

    .page-cart-empty .search-empty__feature {
        width: 100%;
        min-height: 72px;
        padding: 12px 16px;
        flex-direction: row;
        justify-content: flex-start;
        gap: 16px;
        text-align: left;
    }

    .page-cart-empty .search-empty__feature:nth-child(2) {
        gap: 20px;
    }

    .page-cart-empty .search-empty__feature:last-child {
        display: flex;
        min-height: 72px;
        padding: 12px 16px;
        align-items: center;
        gap: 20px;
    }

    .page-cart-empty .search-empty__feature:last-child .search-empty__feature-icon {
        border-radius: 10px;
    }

    .page-cart-empty .search-empty__feature:last-child .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-empty .search-empty__feature:last-child .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-cart-empty .search-empty__feature-content {
        align-items: flex-start;
        gap: 4px;
    }

    .page-cart-empty .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-empty .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }
}

@media (max-width: 575px) {
    .page-cart-empty .search-empty__icon {
        width: 64px;
    }
}

@media (max-width: 340px) {
    .cart-row,
    .cart-row--last {
        grid-template-columns: 96px minmax(0, 1fr);
    }

    .cart-row__image  {
	aspect-ratio: 4 / 3;
        width: 96px;
        height: auto;
    }
}

/* ========== MOBILE CASCADE FIX: <=575 AFTER <=777 ========== */
@media (max-width: 575px) {
    .page-search-not-found .search-empty__container {
        padding: 48px 0;
    }

    .page-search-not-found .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-search-not-found .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-search-not-found .search-empty__feature:last-child .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-search-not-found .search-empty__feature:last-child .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-cart-empty .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-empty .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-cart-empty .search-empty__feature:last-child .search-empty__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-empty .search-empty__feature:last-child .search-empty__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-cart-success .checkout-success__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-success .checkout-success__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .page-cart-success .checkout-success__feature:last-child .checkout-success__feature-content strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .page-cart-success .checkout-success__feature:last-child .checkout-success__feature-content > span {
        font-size: 14px;
        line-height: calc(20 / 14);
    }
}

/* ========== INNER COMPANY PAGES ========== */

.page-inner {
    background: #fff;
}

.page-inner .breadcrumbs {
    padding-top: 40px;
    background: #fff;
}

.inner-page {
    padding-top: 48px;
    padding-bottom: 96px;
    background: #fff;
}

.inner-page__container {
    display: grid;
    grid-template-columns: 302px minmax(0, 1fr);
    gap: 40px;
    align-items: start;
}


.inner-page__nav ul {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.inner-page__nav a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 6px;
    color: #384250;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    transition: color var(--transition-base), background-color var(--transition-base);
}

.inner-page__nav a:hover {
    color: #175cd3;
    background: #f9fafb;
}

.inner-page__nav a.active {
    padding-right: 40px;
    color: #175cd3;
    background: #f9fafb;
}

.inner-page__nav a.active::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 12px;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='m7.5 15 5-5-5-5'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    transform: translateY(-50%);
}

.inner-page__content {
    min-width: 0;
}

.inner-page__heading {
    width: 100%;
    max-width: 800px;
    margin-bottom: 24px;
}

.inner-page__heading h1,
.content-text h1 {
    margin: 0;
    color: #111927;
    font-size: 40px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.8px;
}

/* Universal text content block for internal and article-like pages. */
.content-text {
    width: 100%;
    max-width: 800px;
    color: #384250;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(28 / 18);
}

.content-text > *:first-child {
    margin-top: 0;
}

.content-text > *:last-child {
    margin-bottom: 0;
}

.content-text h1,
.content-text h2,
.content-text h3,
.content-text h4,
.content-text h5,
.content-text h6 {
    color: #111927;
    font-weight: 600;
}

.content-text h1 {
    margin: 40px 0 24px;
}

.content-text h2,
.about-content__advantages h2 {
    margin: 40px 0 20px;
    color: #111927;
    font-size: 30px;
    font-weight: 600;
    line-height: calc(38 / 30);
}

.content-text h3 {
    margin: 32px 0 16px;
    font-size: 24px;
    line-height: calc(32 / 24);
}

.content-text h4 {
    margin: 28px 0 12px;
    font-size: 20px;
    line-height: 1.5;
}

.content-text h5 {
    margin: 24px 0 12px;
    font-size: 18px;
    line-height: calc(28 / 18);
}

.content-text h6 {
    margin: 24px 0 12px;
    font-size: 16px;
    line-height: 1.5;
}

.content-text p {
    margin: 0 0 18px;
}

.content-text a {
    color: #1570ef;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color var(--transition-base);
}

.content-text a:hover {
    color: #175cd3;
}

.content-text strong,
.content-text b {
    color: #111927;
    font-weight: 600;
}

.content-text ul,
.content-text ol {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 0 0 18px;
    padding: 0;
}

.content-text p + ul,
.content-text p + ol {
    margin-top: -14px;
}

.content-text ul {
    list-style: none;
}

.content-text ol {
    padding-left: 26px;
}

.content-text li {
    min-height: 28px;
}

.content-text ul > li {
    position: relative;
    padding-left: 26px;
}

.content-text ul > li::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 8px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #D2D6DB;
}

.content-text ul ul,
.content-text ul ol,
.content-text ol ul,
.content-text ol ol {
    margin-top: 4px;
    margin-bottom: 0;
}

.content-text hr {
    height: 0;
    margin: 32px 0;
    border: 0;
    border-top: 1px solid #e5e7eb;
}

.content-text img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 24px 0;
}

.content-text video,
.content-text iframe {
    display: block;
    width: 100%;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    margin: 24px 0;
    border: 0;
}

.content-text blockquote {
    margin: 24px 0;
    padding-left: 20px;
    border-left: 3px solid #1570ef;
    color: #4d5761;
}

.content-text figure {
    margin: 24px 0;
}

.content-text figure img,
.content-text figure video,
.content-text figure iframe {
    margin: 0;
}

.content-text figcaption {
    margin-top: 8px;
    color: #697586;
    font-size: 14px;
    line-height: calc(20 / 14);
}

.content-text table {
    width: 100%;
    margin: 24px 0;
    border-collapse: collapse;
}

.content-text th,
.content-text td {
    padding: 12px 16px;
    border: 1px solid #e5e7eb;
    text-align: left;
    vertical-align: top;
}

.content-text th {
    color: #111927;
    font-weight: 600;
    background: #f9fafb;
}

/* ========== REUSABLE CONTENT GALLERY ========== */

.content-gallery {
	width: 100%;
	min-width: 0;
	margin-top: 48px;
}

.content-gallery__title {
	margin: 0 0 24px;
	color: #111927;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
}

.content-gallery__slider {
	width: 100%;
	overflow: hidden;
}

.content-gallery__slide {
	display: block;
	height: auto;
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 10px;
	background: #f3f4f6;
	cursor: zoom-in;
}

.content-gallery__slide img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center;
}

.content-gallery + .product-results-panel {
	margin-top: 32px;
}

@media (max-width: 777px) {
	.content-gallery {
		margin-top: 40px;
	}

	.content-gallery__title {
		margin-bottom: 20px;
		font-size: 24px;
		line-height: calc(32 / 24);
	}

	.content-gallery__slide {
		border-radius: 8px;
	}
}

/* ========== REUSABLE FILE LIST ========== */

.inner-page__heading + .file-list {
    margin-top: 8px;
}

.documents-content .inner-page__heading {
	margin-bottom: 32px;
}

.file-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    width: 100%;
}

.file-card {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    min-width: 0;
    height: 92px;
    padding: 20px;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    color: inherit;
    text-decoration: none;
    background: #fff;
}

.file-card:hover,
.file-card:focus-visible {
    border-color: #d2d6db;
    background: #f9fafb;
}

.file-card__main {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.file-card__type {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    max-width: none;
}

.file-card__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.file-card__content strong {
    overflow: hidden;
    color: #111927;
    font-size: 18px;
    font-weight: 500;
    line-height: calc(28 / 18);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.file-card__content span {
    color: #6c737f;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

.file-card__download {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M15.75 11.25v.9c0 1.26 0 1.89-.245 2.371a2.25 2.25 0 0 1-.984.984c-.48.245-1.11.245-2.371.245h-6.3c-1.26 0-1.89 0-2.371-.245a2.25 2.25 0 0 1-.984-.984c-.245-.48-.245-1.11-.245-2.371v-.9m3-3.75L9 11.25l3.75-3.75M9 11.25v-9'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 18px 18px;
}

.file-card:hover .file-card__download,
.file-card:focus-visible .file-card__download {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%236c737f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M15.75 11.25v.9c0 1.26 0 1.89-.245 2.371a2.25 2.25 0 0 1-.984.984c-.48.245-1.11.245-2.371.245h-6.3c-1.26 0-1.89 0-2.371-.245a2.25 2.25 0 0 1-.984-.984c-.245-.48-.245-1.11-.245-2.371v-.9m3-3.75L9 11.25l3.75-3.75M9 11.25v-9'/%3E%3C/svg%3E");
}

.object-completion-text li a {
	color: #111927;
	font-weight: 600;
	text-decoration: none;
}

.object-completion-text li a:hover,
.object-completion-text li a:focus-visible {
	color: #1570ef;
}

/* ========== ABOUT PAGE: STAGE 2 ========== */

.inner-page__consult {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 302px;
    margin-top: 32px;
    padding: 32px;
    border-radius: 12px;
    background: #f3f4f6;
}

.inner-page__consult-image {
    position: relative;
    width: 80px;
    height: 80px;
    flex: 0 0 80px;
}

.inner-page__consult-image img {
    position: absolute;
    top: -20px;
    left: -15px;
    width: 117px;
    height: 117px;
    max-width: none;
    object-fit: contain;
}

.inner-page__consult-body {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.inner-page__consult-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.inner-page__consult-text strong {
    color: #111927;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
}

.inner-page__consult-text p {
    margin: 0;
    color: #4d5761;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

.inner-page__consult-button {
    gap: 6px;
    width: 100%;
    min-height: 44px;
    padding: 10px 16px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

.inner-page__consult-button::after {
    content: "";
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.667' d='M4.166 10h11.667m-5.834 5.834L15.833 10 9.999 4.167'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 20px 20px;
}

.about-content__metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    width: 100%;
    margin-top: 64px;
    padding: 20px 0;
}

.about-content__metric {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    padding-left: 16px;
    border-left: 2px solid #e5e7eb;
}

.about-content__metric strong {
    color: #1570ef;
    font-size: 30px;
    font-weight: 600;
    line-height: calc(38 / 30);
}

.about-content__metric span {
    color: #111927;
    font-size: 18px;
    font-weight: 600;
    line-height: calc(28 / 18);
}

/* ========== ABOUT PAGE: STAGE 3 ========== */

.about-content__metrics + .content-text {
    margin-top: 64px;
}

.page-about .content-text ul > li::before {
	background: #9da4ae;
}

.about-content__advantages {
    width: 100%;
    margin-top: 64px;
}

.about-content__advantages h2 {
    max-width: 800px;
    margin: 0 0 32px;
}

.about-content__advantages-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    width: 100%;
}

.about-content__advantage {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
    padding: 20px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
}

.about-content__advantage:nth-child(-n + 3) {
    min-height: 236px;
}

.about-content__advantage:nth-child(n + 4) {
    min-height: 264px;
}

.about-content__advantage-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 6px;
    background: #f9fafb;
}

.about-content__advantage-icon img {
    width: 24px;
    height: 24px;
    max-width: none;
}

.about-content__advantage-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.about-content__advantage h3 {
    margin: 0;
    color: #111927;
    font-size: 18px;
    font-weight: 600;
    line-height: calc(28 / 18);
}

.about-content__advantage p {
    margin: 0;
    color: #384250;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

/* ========== ABOUT PAGE: ADAPTIVE ========== */

@media (max-width: 1280px) {
	.inner-page__container {
		gap: 32px;
	}

	.about-content__metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.about-content__advantages-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.about-content__advantage:nth-child(n) {
		min-height: 0;
	}
}

@media (max-width: 1020px) {
	.page-inner .breadcrumbs {
		padding-top: 28px;
	}

	.inner-page {
		padding-top: 24px;
	}

	.inner-page__container {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
	}

	.inner-page__content {
		order: 1;
	}

	.inner-page__sidebar {
		display: block;
		order: 2;
	}

	.inner-page__nav {
		display: none;
	}

	.inner-page__consult {
		gap: 32px;
		width: 100%;
		margin-top: 0;
		padding: 24px;
	}

	.inner-page__consult-button {
		height: 44px;
		min-height: 44px;
		padding: 9px 16px;
	}
}

@media (max-width: 777px) {
	.inner-page {
		padding-top: 8px;
		padding-bottom: 48px;
	}

	.inner-page__container {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
	}


	.inner-page__sidebar {
		display: block;
	}

	.inner-page__nav {
		display: none;
	}

	.inner-page__consult {
		gap: 32px;
		width: 100%;
		margin-top: 0;
		padding: 24px;
	}

	.inner-page__consult-button {
		height: 44px;
		min-height: 44px;
		padding: 9px 16px;
	}

	.inner-page__heading {
		margin-bottom: 16px;
	}

	.documents-content .inner-page__heading {
		margin-bottom: 24px;
	}

	.inner-page__heading h1 {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}

	.file-list {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.file-card {
		height: 76px;
		padding: 16px 20px;
	}

	.file-card__main {
		flex: 1 1 auto;
		align-items: flex-start;
		gap: 16px;
	}

	.file-card__type {
		flex-basis: 32px;
		width: 32px;
		height: 32px;
		margin-top: 2.667px;
	}

	.file-card__content strong {
		font-size: 16px;
		line-height: 1.5;
	}

	.file-card__content span {
		font-size: 14px;
		line-height: calc(20 / 14);
	}

	.about-content__metrics {
		display: flex;
		flex-direction: column;
		gap: 24px;
		margin-top: 40px;
		padding: 20px 0;
	}

	.about-content__metric span {
		font-size: 16px;
		line-height: 1.5;
	}

	.about-content__metrics + .content-text {
		margin-top: 40px;
	}

	.content-text {
		font-size: 16px;
		line-height: 1.5;
	}

	.content-text h1,
	.content-text h2,
	.about-content__advantages h2 {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}

	.content-text h1 {
		margin: 32px 0 16px;
	}

	.content-text h2 {
		margin: 32px 0 16px;
	}

	.content-text h3 {
		margin: 28px 0 14px;
		font-size: 20px;
		line-height: 1.5;
	}

	.content-text h4,
	.content-text h5 {
		margin: 24px 0 12px;
		font-size: 18px;
		line-height: calc(28 / 18);
	}

	.content-text h6 {
		font-size: 16px;
		line-height: 1.5;
	}

	.content-text p {
		margin-bottom: 18px;
	}

	.content-text li {
		min-height: 24px;
	}

	.content-text ul > li::before {
		top: 10px;
	}

	.content-text hr {
		margin: 24px 0;
	}

	.content-text img,
	.content-text video,
	.content-text iframe,
	.content-text figure,
	.content-text table,
	.content-text blockquote {
		margin-top: 20px;
		margin-bottom: 20px;
	}

	.about-content__advantages {
		margin-top: 40px;
	}

	.about-content__advantages h2 {
		margin: 0 0 20px;
	}

	.about-content__advantages-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.about-content__advantage {
		padding: 19px;
	}

	.about-content__advantage:nth-child(1),
	.about-content__advantage:nth-child(2),
	.about-content__advantage:nth-child(3),
	.about-content__advantage:nth-child(6) {
		min-height: 236px;
	}

	.about-content__advantage:nth-child(4) {
		min-height: 264px;
	}

	.about-content__advantage:nth-child(5) {
		min-height: 240px;
	}
}

/* ========== REUSABLE INFO TABLE ========== */

.content-text--wide {
    max-width: 840px;
}

.content-text + .info-table {
    margin-top: 32px;
}

.info-table {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    background: #fff;
}

.info-table__row {
    display: grid;
    grid-template-columns: 302px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    min-height: 60px;
    padding: 16px 20px;
    border-bottom: 1px solid #f3f4f6;
}

.info-table__row:last-child {
    border-bottom: 0;
}

.info-table__row strong {
    color: #111927;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

.info-table__row span {
    min-width: 0;
    color: #384250;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(28 / 18);
}

/* ========== OBJECT PAGE: STAGE 2 / SUPPLIED PRODUCTS ========== */

.info-table + .object-supplied-text {
    margin-top: 64px;
}

.object-supplied-text + .product-results-panel {
    margin-top: 32px;
}

.product-results-panel {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    width: 100%;
    padding: 32px;
    border-radius: 12px;
    background: #f3f4f6;
}

.product-results-panel .product-card--list {
    width: 100%;
    flex: 0 0 auto;
}

.product-results-panel .product-card--more[hidden],
.product-results-panel__more[hidden] {
    display: none;
}

.product-results-panel .product-card--list .product-card__image img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
    object-position: center;
}

.product-results-panel .product-card--list .product-card__add,
.product-results-panel .product-card--list .product-card__quick,
.product-results-panel .product-card--list .product-card__quantity,
.product-results-panel .product-card--list .product-card__counter {
    min-height: 48px;
    height: 48px;
}

.product-results-panel .product-card--list .product-card__add,
.product-results-panel .product-card--list .product-card__quick {
    padding: 12px 16px;
}

.product-results-panel .product-card--list .product-card__counter {
    grid-template-columns: 48px 1fr 48px;
}

.product-results-panel .product-card--list .product-card__counter button::before,
.product-results-panel .product-card--list .product-card__cart::before {
    width: 20px;
}

.product-results-panel .product-card--list .product-card__cart {
    flex-basis: 48px;
    width: 48px;
}

.product-results-panel__more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 24px;
    padding: 0;
    border: 0;
    outline: 0;
    color: #175cd3;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    background: transparent;
    cursor: pointer;
}

.product-results-panel__more::after {
    content: "";
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23175cd3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px 16px;
    transition: transform var(--transition-base);
}

.product-results-panel__more.is-open::after {
    transform: rotate(180deg);
}

/* ========== OBJECT PAGE: STAGE 3 / COMPLETION + OFFER ========== */

.product-results-panel + .object-completion-text {
    margin-top: 64px;
}

.object-completion-text h2 {
    margin: 0 0 20px;
}

.object-completion-text p {
    margin: 0;
}

.object-completion-text > p:first-of-type {
    margin-bottom: 18px;
}

.object-completion-text p + ul {
    margin-top: 0;
}

.object-completion-text ul {
    margin: 0 0 22px;
}

.object-completion-text + .object-offer {
    margin-top: 64px;
}

.object-offer {
    width: 100%;
    padding: 40px;
    border-radius: 12px;
    background: #f3f4f6;
}

.object-offer__inner {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 100%;
}

.object-offer__intro {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 800px;
}

.object-offer__intro h2 {
    margin: 0;
    color: #111927;
    font-size: 30px;
    font-weight: 600;
    line-height: calc(38 / 30);
}

.object-offer__intro p {
    margin: 0;
    color: #384250;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(28 / 18);
}

.object-offer__form {
    gap: 24px;
}

.object-offer__fields {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.object-offer__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
}

.object-offer__form input:not([type="checkbox"]):not([type="file"]),
.object-offer__form textarea {
    border-color: transparent;
    background: #ffffff;
}

.object-offer__form input:not([type="checkbox"]):not([type="file"]) {
    height: 48px;
    min-height: 48px;
}

.object-offer__form textarea {
    height: 96px;
    min-height: 96px;
    resize: none;
}

.object-offer__file {
    height: 48px;
    min-height: 48px;
    background: #ffffff;
}

.object-offer__bottom {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    min-height: 48px;
}

.object-offer__bottom .checkbox {
    flex: 0 0 344px;
    width: 344px;
}

.object-offer__submit {
    gap: 6px;
    width: 253px;
    min-height: 48px;
    height: 48px;
    padding: 12px 18px;
    line-height: 1.5;
}

.object-offer__submit::after {
    content: "";
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    background-image: url(../img/object-arrow-right.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

/* ========== OBJECT PAGE: STAGE 4 / ADAPTIVE ========== */

.object-offer__submit-mobile {
	display: none;
}

@media (max-width: 1280px) and (min-width: 1021px) {
	.page-object .product-results-panel .product-card--list {
		min-height: 222px;
	}

	.page-object .product-results-panel .product-card--list .product-card__image  {
		flex-basis: 130px;
		width: 130px;
		height: auto;
	}

	.page-object .product-results-panel .product-card--list .product-card__specs {
		display: none;
	}
}

@media (max-width: 1020px) {
	.page-object .info-table__row {
		grid-template-columns: 200px minmax(0, 1fr);
	}

	.page-object .product-results-panel .product-card--list .product-card__image  {
		flex: 0 0 150px;
		width: 150px;
		height: auto;
	}

	.page-object .product-results-panel .product-card--list .product-card__title {
		font-size: 18px;
		line-height: calc(28 / 18);
	}

	.page-object .product-results-panel .product-card--list .product-card__side {
		flex: 0 0 190px;
		width: 190px;
	}

	.page-object .object-offer {
		padding: 32px;
	}

	.page-object .object-offer__file {
		width: 100%;
		padding: 13px 16px;
		border: 1px dashed #d2d6db;
	}

	.page-object .object-offer__file::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m14.102 7.266-6.01 6.01a3.5 3.5 0 0 1-4.95-4.95l6.01-6.01a2.333 2.333 0 0 1 3.3 3.3l-5.775 5.775a1.167 1.167 0 0 1-1.65-1.65l5.068-5.068'/%3E%3C/svg%3E");
	}
}

@media (max-width: 777px) {
	.page-object .info-table__row {
		grid-template-columns: 82px minmax(0, 1fr);
		gap: 20px;
		align-items: start;
		min-height: 0;
		padding: 12px 20px;
	}

	.page-object .info-table__row strong,
	.page-object .info-table__row span {
		font-size: 14px;
		line-height: calc(20 / 14);
	}

	.page-object .info-table + .object-supplied-text {
		margin-top: 40px;
	}

	.page-object .object-supplied-text + .product-results-panel {
		margin-top: 32px;
	}

	.page-object .product-results-panel {
		flex-direction: row;
		align-items: stretch;
		gap: 16px;
		padding: 0;
		border-radius: 0;
		overflow-x: auto;
		overflow-y: hidden;
		background: transparent;
		scroll-snap-type: x proximity;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.page-object .product-results-panel::-webkit-scrollbar {
		display: none;
	}

	.page-object .product-results-panel .product-card--list {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto auto;
		flex: 0 0 156px;
		align-content: start;
		gap: 12px;
		width: 156px;
		min-width: 156px;
		max-width: 156px;
		min-height: 317.2px;
		height: 317.2px;
		padding: 12px;
		border: 0;
		border-radius: 10px;
		overflow: hidden;
		outline: 1px solid #e5e7eb;
		outline-offset: -1px;
		background: #ffffff;
		scroll-snap-align: start;
	}

	.page-object .product-results-panel .product-card--list .product-card__content {
		display: flex;
		grid-column: 1;
		grid-row: 1;
		flex: none;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		min-width: 0;
	}

	.page-object .product-results-panel .product-card--list .product-card__image  {
		position: relative;
		flex: none;
		width: 100%;
		height: auto;
		overflow: hidden;
		background: #ffffff;
	}

	.page-object .product-results-panel .product-card--list .product-card__badge {
		padding: 0 4px;
		font-size: 11px;
		line-height: calc(20 / 11);
	}

	.page-object .product-results-panel .product-card--list .product-card__info {
		display: flex;
		flex: none;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		min-width: 0;
	}

	.page-object .product-results-panel .product-card--list .product-card__title {
		display: -webkit-box;
		overflow: hidden;
		font-size: 16px;
		line-height: 1.5;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.page-object .product-results-panel .product-card--list .product-card__meta {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		margin-top: 0;
	}

	.page-object .product-results-panel .product-card--list .product-card__rating,
	.page-object .product-results-panel .product-card--list .product-card__stock,
	.page-object .product-results-panel .product-card--list .product-card__rating span,
	.page-object .product-results-panel .product-card--list .product-card__rating em {
		font-size: 12px;
		line-height: 1;
	}

	.page-object .product-results-panel .product-card--list .product-card__rating::before,
	.page-object .product-results-panel .product-card--list .product-card__stock::before {
		width: 12px;
		height: 12px;
		background-size: 12px;
	}

	.page-object .product-results-panel .product-card--list .product-card__specs,
	.page-object .product-results-panel .product-card--list .product-card__quick {
		display: none;
	}

	.page-object .product-results-panel .product-card--list .product-card__side {
		display: flex;
		grid-column: 1;
		grid-row: 2;
		flex: none;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 16px;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		margin-top: 0;
		align-self: auto;
	}

	.page-object .product-results-panel .product-card--list .product-card__price {
		flex: none;
		width: 100%;
		padding-top: 4px;
	}

	.page-object .product-results-panel .product-card--list .product-card__price strong {
		font-size: 24px;
		line-height: 1;
	}

	.page-object .product-results-panel .product-card--list .product-card__price span {
		font-size: 12px;
		line-height: 1;
	}

	.page-object .product-results-panel .product-card--list .product-card__actions {
		flex: none;
		width: 100%;
	}

	.page-object .product-results-panel .product-card--list .product-card__add,
	.page-object .product-results-panel .product-card--list .product-card__quantity,
	.page-object .product-results-panel .product-card--list .product-card__counter {
		min-height: 36px;
		height: 36px;
	}

	.page-object .product-results-panel .product-card--list .product-card__add {
		padding: 8px 12px;
		font-size: 14px;
		line-height: calc(20 / 14);
	}

	.page-object .product-results-panel .product-card--list .product-card__counter {
		grid-template-columns: 36px minmax(0, 1fr) 36px;
	}

	.page-object .product-results-panel .product-card--list .product-card__cart {
		flex-basis: 36px;
		width: 36px;
		height: 36px;
	}

	.page-object .product-results-panel .product-card--list .product-card__counter button::before,
	.page-object .product-results-panel .product-card--list .product-card__cart::before {
		width: 18px;
	}

	.page-object .product-results-panel__more {
		display: none;
	}

	.page-object .product-results-panel + .object-completion-text {
		margin-top: 40px;
	}

	.page-object .object-completion-text h2 {
		margin-bottom: 16px;
	}

	.page-object .object-completion-text ul {
		margin-bottom: 18px;
	}

	.page-object .object-completion-text ul > li {
		min-height: 0;
		padding-left: 26px;
	}

	.page-object .object-completion-text ul > li::before {
		top: 11px;
	}

	.page-object .object-completion-text li strong,
	.page-object .object-completion-text li a {
		display: block;
		margin-bottom: 4px;
		font-size: 16px;
		line-height: 1.5;
	}

	.page-object .object-completion-text + .object-offer {
		margin-top: 40px;
	}

	.page-object .object-offer {
		padding: 24px;
	}

	.page-object .object-offer__inner {
		gap: 24px;
	}

	.page-object .object-offer__intro {
		gap: 16px;
		max-width: none;
	}

	.page-object .object-offer__intro h2 {
		font-size: 24px;
		line-height: calc(32 / 24);
	}

	.page-object .object-offer__intro p {
		font-size: 16px;
		line-height: 1.5;
	}

	.page-object .object-offer__form,
	.page-object .object-offer__fields,
	.page-object .object-offer__row {
		gap: 12px;
	}

	.page-object .object-offer__row {
		display: flex;
		flex-direction: column;
	}

	.page-object .object-offer__bottom {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
		min-height: 0;
	}

	.page-object .object-offer__bottom .checkbox {
		flex: none;
		width: 100%;
	}

	.page-object .object-offer__bottom .checkbox span {
		max-width: none;
		font-size: 14px;
		line-height: calc(20 / 14);
	}

	.page-object .object-offer__submit {
		width: 100%;
	}

	.page-object .object-offer__submit-desktop {
		display: none;
	}

	.page-object .object-offer__submit-mobile {
		display: inline;
	}

	.page-object .inner-page__consult {
		gap: 24px;
	}

	.page-object .inner-page__consult-image img {
		top: -20.078px;
		left: 14.771px;
		width: 91.321px;
		height: 91.321px;
	}
}

/* ========== OBJECTS PAGE: STAGE 1 / DESKTOP LIST ========== */

.objects-page__intro {
	max-width: 800px;
}

.objects-list {
	width: 100%;
	margin-top: 40px;
}

.objects-list__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
}

.objects-list__grid .object-card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
	height: 236px;
	padding: 24px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	color: #111927;
	background: #ffffff;
	transition: border-color var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base);
}

.objects-list__grid .object-card:hover {
	border-color: #1570ef;
}

.objects-list .pagination {
	margin-top: 24px;
}

/* ========== OBJECTS PAGE: STAGE 2 / DESKTOP OFFER ========== */

.objects-offer {
	width: 100%;
	margin-top: 64px;
	padding: 40px;
	border-radius: 12px;
	background: #f3f4f6;
}

.objects-offer__intro {
	display: flex;
	flex-direction: column;
	gap: 16px;
	max-width: 800px;
}

.objects-offer__intro h2 {
	margin: 0;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}

.objects-offer__intro p {
	margin: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #384250;
}

.objects-offer__form {
	gap: 24px;
	width: 100%;
	margin-top: 32px;
}

.objects-offer__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
}

.objects-offer__column {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.objects-offer__form input:not([type="checkbox"]):not([type="hidden"]),
.objects-offer__form textarea {
	border-color: transparent;
	background: #ffffff;
}

.objects-offer__form input:not([type="checkbox"]):not([type="hidden"]) {
	height: 48px;
	min-height: 48px;
}

.objects-offer__project,
.objects-offer__project textarea {
	height: 100%;
}

.objects-offer__project textarea {
	min-height: 184px;
	resize: none;
}

.objects-offer__bottom {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	min-height: 48px;
}

.objects-offer__bottom .checkbox {
	flex: 0 0 344px;
	width: 344px;
}

.objects-offer__submit {
	flex: none;
	gap: 6px;
	width: 207px;
	min-height: 48px;
	height: 48px;
	padding: 12px 18px;
	line-height: 1.5;
}

.objects-offer__submit::after {
	content: "";
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.333' d='M2.666 8h10.667m-4 4 4-4-4-4'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

/* ========== PAYMENT PAGE ========== */

.payment-page__content {
	width: 100%;
	margin-top: 0;
}

/* ========== DELIVERY PAGE ========== */

.delivery-page__content {
	width: 100%;
	margin-top: 0;
}

/* ========== REQUISITES PAGE ========== */

.requisites-page__details {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 800px;
	color: #384250;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
}

.requisites-page__details strong {
	font-weight: 600;
}

.requisites-page__details span {
	display: block;
}

.requisites-page__download {
	gap: 6px;
	min-height: 48px;
	margin-top: 40px;
	padding: 12px 18px;
	font-weight: 600;
	line-height: 1.5;
}

.requisites-page__download::after {
	content: "";
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.33333' d='M14 10v.8c0 1.12 0 1.68-.218 2.108a2 2 0 0 1-.874.874C12.48 14 11.92 14 10.8 14H5.2c-1.12 0-1.68 0-2.108-.218a2 2 0 0 1-.874-.874C2 12.48 2 11.92 2 10.8V10m2.667-3.333L8 10l3.333-3.333M8 10V2'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

/* ========== COOPERATION PAGE: STAGE 1 / DESKTOP ========== */

.cooperation-page__intro {
	max-width: 800px;
}

.cooperation-logos {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
	margin-top: 40px;
}

.cooperation-logos__item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: 80px;
	padding: 20px 32px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #ffffff;
}

.cooperation-logos__image {
	display: block;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.cooperation-logos__more {
	display: none;
}

.cooperation-offer {
	margin-top: 64px;
}

/* ========== CONTACTS PAGE: STAGE 1 / DESKTOP ========== */

.contacts-page .inner-page__heading {
	margin-bottom: 32px;
}

.contacts-page__cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
}

.contacts-card {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
	min-height: 192px;
	padding: 20px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	color: #111927;
	background: #ffffff;
}

a.contacts-card {
	transition: border-color var(--transition-base), box-shadow var(--transition-base);
}

a.contacts-card:hover {
	border-color: #1570ef;
	box-shadow: 0 1px 2px rgba(16, 24, 40, .05);
}

.contacts-card__icon {
	position: relative;
	display: block;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 6px;
	background: #f9fafb;
}

.contacts-card__icon::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 24px;
	height: 24px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transform: translate(-50%, -50%);
}

.contacts-card--phone .contacts-card__icon::before {
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.38028 8.85335C9.07627 10.303 10.0251 11.6616 11.2266 12.8632C12.4282 14.0648 13.7869 15.0136 15.2365 15.7096C15.3612 15.7694 15.4235 15.7994 15.5024 15.8224C15.7828 15.9041 16.127 15.8454 16.3644 15.6754C16.4313 15.6275 16.4884 15.5704 16.6027 15.4561C16.9523 15.1064 17.1271 14.9316 17.3029 14.8174C17.9658 14.3864 18.8204 14.3864 19.4833 14.8174C19.6591 14.9316 19.8339 15.1064 20.1835 15.4561L20.3783 15.6509C20.9098 16.1824 21.1755 16.4481 21.3198 16.7335C21.6069 17.301 21.6069 17.9713 21.3198 18.5389C21.1755 18.8242 20.9098 19.09 20.3783 19.6214L20.2207 19.779C19.6911 20.3087 19.4263 20.5735 19.0662 20.7757C18.6667 21.0001 18.0462 21.1615 17.588 21.1601C17.1751 21.1589 16.8928 21.0788 16.3284 20.9186C13.295 20.0576 10.4326 18.4332 8.04466 16.0452C5.65668 13.6572 4.03221 10.7948 3.17124 7.76144C3.01103 7.19699 2.93092 6.91477 2.9297 6.50182C2.92833 6.0436 3.08969 5.42311 3.31411 5.0236C3.51636 4.66357 3.78117 4.39876 4.3108 3.86913L4.46843 3.7115C4.99987 3.18006 5.2656 2.91433 5.55098 2.76999C6.11854 2.48292 6.7888 2.48292 7.35636 2.76999C7.64174 2.91433 7.90747 3.18006 8.43891 3.7115L8.63378 3.90637C8.98338 4.25597 9.15819 4.43078 9.27247 4.60655C9.70347 5.26945 9.70347 6.12403 9.27247 6.78692C9.15819 6.96269 8.98338 7.1375 8.63378 7.4871C8.51947 7.60142 8.46231 7.65857 8.41447 7.72538C8.24446 7.96281 8.18576 8.30707 8.26748 8.58743C8.29048 8.66632 8.32041 8.72866 8.38028 8.85335Z' stroke='%231570EF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.contacts-card--mail .contacts-card__icon::before {
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 7L10.1649 12.7154C10.8261 13.1783 11.1567 13.4097 11.5163 13.4993C11.8339 13.5785 12.1661 13.5785 12.4837 13.4993C12.8433 13.4097 13.1739 13.1783 13.8351 12.7154L22 7M6.8 20H17.2C18.8802 20 19.7202 20 20.362 19.673C20.9265 19.3854 21.3854 18.9265 21.673 18.362C22 17.7202 22 16.8802 22 15.2V8.8C22 7.11984 22 6.27976 21.673 5.63803C21.3854 5.07354 20.9265 4.6146 20.362 4.32698C19.7202 4 18.8802 4 17.2 4H6.8C5.11984 4 4.27976 4 3.63803 4.32698C3.07354 4.6146 2.6146 5.07354 2.32698 5.63803C2 6.27976 2 7.11984 2 8.8V15.2C2 16.8802 2 17.7202 2.32698 18.362C2.6146 18.9265 3.07354 19.3854 3.63803 19.673C4.27976 20 5.11984 20 6.8 20Z' stroke='%231570EF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.contacts-card--address .contacts-card__icon::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 13a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 22c4-4 8-7.582 8-12a8 8 0 1 0-16 0c0 4.418 4 8 8 12Z'/%3E%3C/svg%3E");
}

.contacts-card__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.contacts-card__body strong {
	font-size: 18px;
	font-weight: 600;
	line-height: calc(28 / 18);
	color: #111927;
}

.contacts-card__body > span {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #384250;
}

.contacts-feedback {
	width: 100%;
	margin-top: 64px;
	padding: 40px;
	border-radius: 12px;
	background: #f3f4f6;
}

.contacts-feedback__intro {
	display: flex;
	flex-direction: column;
	gap: 16px;
	max-width: 800px;
}

.contacts-feedback__intro h2 {
	margin: 0;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
	color: #111927;
}

.contacts-feedback__intro p {
	margin: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: calc(28 / 18);
	color: #384250;
}

.contacts-feedback__form {
	gap: 24px;
	width: 100%;
	margin-top: 32px;
}

.contacts-feedback__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	width: 100%;
}

.contacts-feedback__column {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.contacts-feedback__form input:not([type="checkbox"]),
.contacts-feedback__form textarea {
	border-color: transparent;
	background: #ffffff;
}

.contacts-feedback__form input:not([type="checkbox"]) {
	height: 48px;
	min-height: 48px;
}

.contacts-feedback__message,
.contacts-feedback__message textarea {
	height: 100%;
}

.contacts-feedback__message textarea {
	min-height: 116px;
	resize: none;
}

.contacts-feedback__bottom {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	min-height: 48px;
}

.contacts-feedback__bottom .checkbox {
	flex: 0 0 344px;
	width: 344px;
}

.contacts-feedback__submit {
	flex: none;
	gap: 6px;
	width: 149px;
	min-height: 48px;
	height: 48px;
	padding: 12px 18px;
	line-height: 1.5;
}

.contacts-feedback__submit-mobile {
	display: none;
}

.contacts-feedback__submit::after {
	content: "";
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%2384caff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.333' d='M2.666 8h10.667m-4 4 4-4-4-4'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

/* ========== CONTACTS PAGE: STAGE 2 / ADAPTIVE ========== */

@media (max-width: 1280px) and (min-width: 1021px) {
	.contacts-page__cards {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.contacts-card {
		flex-direction: row;
		gap: 16px;
		min-height: 84px;
		padding: 16px 20px;
	}

	.contacts-card--address {
		min-height: 104px;
	}

	.contacts-feedback__bottom .checkbox {
		flex: 1 1 auto;
		width: auto;
	}
}

@media (max-width: 1020px) {
	.contacts-feedback {
		padding: 32px;
	}
}

@media (max-width: 777px) {
	.requisites-page__details {
		font-size: 16px;
		line-height: 1.5;
	}

	.requisites-page__details strong {
		font-size: 18px;
		line-height: calc(28 / 18);
	}

	.requisites-page__download {
		width: 100%;
	}

	.contacts-page .inner-page__heading {
		margin-bottom: 24px;
	}

	.contacts-page__cards {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.contacts-card {
		flex-direction: row;
		gap: 16px;
		min-height: 84px;
		padding: 16px 20px;
	}

	.contacts-card--address {
		min-height: 104px;
	}

	.contacts-card__body strong {
		font-size: 18px;
		line-height: calc(28 / 18);
	}

	.contacts-card--address .contacts-card__body strong {
		font-size: 16px;
		line-height: 1.5;
	}

	.contacts-card__body > span {
		font-size: 14px;
		line-height: calc(20 / 14);
	}

	.contacts-feedback {
		margin-top: 40px;
		padding: 24px;
	}

	.contacts-feedback__intro h2 {
		font-size: 24px;
		line-height: calc(32 / 24);
	}

	.contacts-feedback__intro p {
		font-size: 16px;
		line-height: 1.5;
	}

	.contacts-feedback__form {
		gap: 12px;
		margin-top: 24px;
	}

	.contacts-feedback__fields {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.contacts-feedback__column {
		gap: 12px;
	}

	.contacts-feedback__message,
	.contacts-feedback__message textarea {
		height: 96px;
		min-height: 96px;
	}

	.contacts-feedback__bottom {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
		min-height: 0;
	}

	.contacts-feedback__bottom .checkbox {
		flex: none;
		width: 100%;
	}

	.contacts-feedback__bottom .checkbox span {
		max-width: none;
	}

	.contacts-feedback__submit {
		width: 100%;
	}

	.contacts-feedback__submit-desktop {
		display: none;
	}

	.contacts-feedback__submit-mobile {
		display: inline;
	}

	.page-contacts .inner-page__consult {
		gap: 24px;
	}
}

@media (max-width: 350px) {
	.contacts-card {
		gap: 12px;
		padding-right: 16px;
		padding-left: 16px;
	}

	.contacts-card__icon {
		flex-basis: 40px;
		width: 40px;
		height: 40px;
	}

	.contacts-card__icon::before {
		width: 20px;
		height: 20px;
	}

	.contacts-card__body strong {
		overflow-wrap: anywhere;
	}

	.contacts-card--mail .contacts-card__body strong {
		font-size: 16px;
		line-height: 1.5;
	}
}

/* ========== OBJECTS PAGE: STAGE 3 / ADAPTIVE ========== */

@media (max-width: 1280px) {
	.objects-list__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.objects-offer__bottom .checkbox {
		flex: 1 1 auto;
		width: auto;
	}
}

@media (max-width: 1020px) {
	.objects-offer {
		padding: 32px;
	}
}

@media (max-width: 777px) {
	.objects-list__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.objects-list__grid .object-card {
		height: 200px;
	}

	.objects-list__grid .object-card:nth-child(n + 7) {
		display: none;
	}

	.objects-list .pagination {
		display: none;
	}

	.objects-offer {
		margin-top: 40px;
		padding: 24px;
	}

	.objects-offer__intro h2 {
		font-size: 24px;
		line-height: calc(32 / 24);
	}

	.objects-offer__intro p {
		font-size: 16px;
		line-height: 1.5;
	}

	.objects-offer__form {
		gap: 12px;
	}

	.objects-offer__fields {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.objects-offer__column {
		gap: 12px;
	}

	.objects-offer__project,
	.objects-offer__project textarea {
		height: 96px;
		min-height: 96px;
	}

	.objects-offer__bottom {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
		min-height: 0;
	}

	.objects-offer__bottom .checkbox {
		flex: none;
		width: 100%;
	}

	.objects-offer__bottom .checkbox span {
		max-width: none;
		font-size: 14px;
		line-height: calc(20 / 14);
	}

	.objects-offer__submit {
		width: 100%;
	}
}

/* ========== COOPERATION PAGE: STAGE 2 / ADAPTIVE ========== */

@media (max-width: 1280px) {
	.cooperation-logos {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.cooperation-logos__item {
		padding: 20px clamp(20px, 2.5vw, 32px);
	}
}

@media (max-width: 777px) {
	.cooperation-logos {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.cooperation-logos__item {
		height: 64px;
		padding: 12px clamp(12px, 4vw, 24px);
	}

	.cooperation-logos__item:nth-child(n + 21) {
		display: none;
	}

	.cooperation-logos.is-expanded .cooperation-logos__item:nth-child(n + 21) {
		display: flex;
	}

	.cooperation-logos__more {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 4px;
		width: 100%;
		min-height: 40px;
		margin-top: 24px;
		padding: 9px 14px;
		border-color: #d2d6db;
		font-size: 14px;
		font-weight: 600;
		line-height: calc(20 / 14);
		color: #384250;
	}

	.cooperation-logos__more::after {
		content: "";
		flex: 0 0 16px;
		width: 16px;
		height: 16px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath d='m6 12 4-4-4-4' stroke='%239da4ae' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.33333'/%3E%3C/svg%3E");
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		transition: transform var(--transition-base);
	}

	.cooperation-logos__more.is-open::after {
		transform: rotate(-90deg);
	}

	.cooperation-offer {
		margin-top: 40px;
	}
}

/* ========== ARTICLES AND NEWS LIST PAGES ========== */

.posts-page {
	padding: 20px 0 96px;
	background: #ffffff;
}

.posts-page__heading {
	width: 100%;
	max-width: 800px;
}

.posts-page__heading h1 {
	margin: 0;
	color: #111927;
	font-size: 40px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.8px;
}

.posts-page__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 40px;
	width: 100%;
	margin-top: 40px;
}

.posts-page__card {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
	height: auto;
	color: #111927;
}

.posts-page .pagination {
	height: 60px;
	min-height: 60px;
	margin-top: 40px;
	padding-top: 19px;
}

@media (max-width: 1280px) {
	.posts-page__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1020px) {
	.posts-page__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 777px) {
	.page-posts .breadcrumbs {
		padding-top: 20px;
	}

	.posts-page {
		padding: 8px 0 48px;
	}

	.posts-page__heading h1 {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}

	.posts-page__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
		margin-top: 24px;
	}

	.posts-page__card:nth-child(n + 6) {
		display: none;
	}

	.page-articles .posts-page__card {
		min-height: 281px;
	}

	.page-news .posts-page__card {
		min-height: 305px;
	}

	.posts-page .pagination {
		height: 56px;
		min-height: 56px;
		margin-top: 40px;
		padding-top: 15px;
	}

	.page-posts .category-mobile-action {
		display: none;
	}
}

/* ========== TEXT CONTENT PAGES ========== */

.text-page {
	padding: 20px 0 96px;
	background: #ffffff;
}

.text-page__content {
	width: 100%;
	max-width: 800px;
}

.text-page__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}

.text-page__header h1 {
	margin: 0;
	color: #111927;
	font-size: 40px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.8px;
}

.text-page__date {
	color: #697586;
	font-size: 14px;
	font-weight: 400;
	line-height: calc(20 / 14);
}

.text-page__body {
	margin-top: 40px;
}

@media (max-width: 777px) {
	.page-text .breadcrumbs {
		padding-top: 20px;
	}

	.text-page {
		padding: 8px 0 48px;
	}

	.text-page__header {
		gap: 8px;
	}

	.text-page__header h1 {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}

	.text-page__body {
		margin-top: 32px;
	}

	.page-text .category-mobile-action {
		display: none;
	}
}

/* ========== ALL BRANDS PAGE ========== */

.brands-page {
	padding: 20px 0 96px;
	background: #ffffff;
}

.brands-page__heading h1 {
	margin: 0;
	color: #111927;
	font-size: 40px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.8px;
}

.brands-page__alphabet {
	margin-top: 40px;
}

.brands-page__alphabet ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.brands-page__alphabet a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 36px;
	padding: 8px;
	border-radius: 6px;
	color: #6c737f;
	font-size: 14px;
	font-weight: 600;
	line-height: calc(20 / 14);
	transition: color var(--transition-base), background-color var(--transition-base);
}

.brands-page__alphabet a:hover,
.brands-page__alphabet a.active {
	color: #384250;
	background: #f3f4f6;
}

.brands-page__list {
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin-top: 40px;
}

.brands-page__group {
	scroll-margin-top: 24px;
}

.brands-page__group h2 {
	margin: 0 0 20px;
	color: #111927;
	font-size: 30px;
	font-weight: 600;
	line-height: calc(38 / 30);
}

.brands-page__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 40px;
}

.brands-page__column {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.brands-page__column a {
	color: #4d5761;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	transition: color var(--transition-base);
}

.brands-page__column a:hover {
	color: #1570ef;
}

@media (max-width: 777px) {
	.brands-page {
		padding: 8px 0 48px;
	}

	.brands-page__heading h1 {
		font-size: 24px;
		line-height: calc(32 / 24);
		letter-spacing: 0;
	}

	.brands-page__alphabet {
		margin-top: 40px;
	}

	.brands-page__alphabet ul {
		gap: 4px;
	}

	.brands-page__alphabet a {
		height: 36px;
		padding: 8px;
	}

	.brands-page__alphabet a.active {
		border: 1px solid #2e90fa;
		color: #384250;
		background: #f9fafb;
		font-weight: 500;
	}

	.brands-page__list {
		gap: 40px;
		margin-top: 40px;
	}

	.brands-page__group h2 {
		margin-bottom: 16px;
		font-size: 20px;
		line-height: 1.5;
	}

	.brands-page__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.brands-page__column a {
		font-size: 16px;
		line-height: 1.5;
	}

	.page-brands .category-mobile-action {
		display: none;
	}
}

/* ========== 404 PAGE ========== */

.page-404 .search-empty__main {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
	width: 100%;
}

.page-404 .search-empty__code {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 4px;
	height: 193.36px;
	color: #111927;
}

.page-404 .search-empty__code > span:not(.search-empty__code-image) {
	font-size: 200px;
	font-weight: 600;
	line-height: calc(191 / 200);
	letter-spacing: -4px;
}

.page-404 .search-empty__code-image {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 185px;
	height: 193.36px;
	overflow: hidden;
}

.page-404 .search-empty__code-image img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: contain;
}

.page-404 .search-empty__description {
	color: #384250;
}

@media (max-width: 777px) {
	.page-404 .search-empty__container {
		gap: 40px;
	}

	.page-404 .search-empty__main {
		gap: 24px;
	}

	.page-404 .search-empty__code {
		gap: 2px;
		height: 86px;
	}

	.page-404 .search-empty__code > span:not(.search-empty__code-image) {
		font-size: 86px;
		line-height: 1;
		letter-spacing: -1.72px;
	}

	.page-404 .search-empty__code-image {
		width: 80px;
		height: 86px;
	}

	.page-404 .search-empty__actions {
		flex-direction: column;
		gap: 12px;
		width: 100%;
	}

	.page-404 .search-empty__actions .btn {
		width: 100%;
	}

	.page-404 .category-mobile-action {
		display: none;
	}
}

@media (max-width: 767px) {
	input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
	textarea,
	select {
		font-size: 16px !important;
	}
}

/* ========== CATEGORY FILTER - DESIGNER UPDATE ========== */

.catalog-filter__apply--desktop {
	width: 100%;
	min-height: 52px;
	margin-top: 20px;
	padding: 13px 20px;
}
.catalog-filter__apply--desktop + .catalog-filter__reset {
	margin-top: 12px;
}
.catalog-filter__group--chips .catalog-filter__summary {
	padding-right: 28px;
}

@media (hover: hover) and (pointer: fine) and (min-width: 1021px) {
	.catalog-filter__group:not(.catalog-filter__group--chips) .checkbox:hover input:not(:checked) {
		border-color: #9da4ae;
	}
}

@media (max-width: 1020px) {
	.catalog-filter__apply--desktop {
		display: none;
	}
	.catalog-filter__group--chips .catalog-filter__summary {
		padding-right: 24px;
	}
}
