/* ==========================================================================
   Колесо-Центр: нові сторінки (товар, послуга, відеогід, база знань,
   блоки головної і категорій). Кольори і шрифти - з kc_layout.css (:root).
   ========================================================================== */

:root {
	--kp-indigo: var(--kc-indigo, #33208c);
	--kp-indigo-d: var(--kc-indigo-d, #1c1450);
	--kp-blue: var(--kc-blue, #1f2fa6);
	--kp-green: var(--kc-green, #0b6b33);
	--kp-yellow: var(--kc-yellow, #f7b500);
	--kp-yellow-d: var(--kc-yellow-d, #e5a800);
	--kp-red: var(--kc-red, #e11d2a);
	--kp-black: var(--kc-black, #0b0b0f);
	--kp-ink: var(--kc-ink, #15122b);
	--kp-muted: var(--kc-muted, #6e6a86);
	--kp-soft: #f4f2fb;
	--kp-soft-2: #e8e4f7;
	--kp-line: #e3e0ef;
	--kp-line-2: #b9b0de;
	--kp-font: var(--kc-font, Roboto, 'Helvetica Neue', Arial, sans-serif);
	--kp-cond: var(--kc-cond, 'Roboto Condensed', 'Arial Narrow', Roboto, Arial, sans-serif);
	--kp-r: 14px;
	--kp-shadow: 0 1px 2px rgba(21, 18, 43, .05), 0 6px 20px rgba(21, 18, 43, .06);
}

.kc-page,
.kc-pp,
.kc-similar {
	color: var(--kp-ink);
	font-family: var(--kp-font);
	font-size: 15px;
	line-height: 1.5;
	text-align: left;
}

.kc-page *,
.kc-page *::before,
.kc-page *::after,
.kc-pp *,
.kc-pp *::before,
.kc-pp *::after,
.kc-similar *,
.kc-vmodal * {
	box-sizing: border-box;
}

.kc-page h1,
.kc-page h2,
.kc-page h3,
.kc-page p,
.kc-page ul,
.kc-pp h1,
.kc-pp h2,
.kc-pp p,
.kc-pp ul,
.kc-similar h2 {
	margin: 0;
	padding: 0;
}

.kc-page ul,
.kc-pp ul {
	list-style: none;
}

.kc-page a,
.kc-pp a,
.kc-similar a {
	color: inherit;
	text-decoration: none;
}

.kc-page a:hover,
.kc-pp a:hover,
.kc-similar a:hover {
	text-decoration: none;
}

/* без ваги селектора - щоб не перебивати шрифти модуля підбору всередині сторінок */
:where(.kc-page, .kc-pp) button {
	font: inherit;
}

.kc-ico {
	display: inline-block;
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	vertical-align: middle;
}

.kc-page [hidden],
.kc-pp [hidden] {
	display: none !important;
}

.kc-page {
	margin: 8px 0 32px;
}

.kc-page > :not(:first-child) {
	margin-top: 28px;
}

/* ----- заголовки і посилання ----- */

.kc-h2 {
	font-family: var(--kp-cond);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: .01em;
	text-transform: uppercase;
	color: var(--kp-ink);
}

.kc-h2--mark {
	padding-left: 12px;
	border-left: 4px solid var(--kp-yellow);
}

.kc-h3 {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--kp-cond);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--kp-ink);
}

.kc-h3__ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 9px;
	background: var(--kp-indigo);
	color: #fff;
}

.kc-h3__ico .kc-ico {
	width: 20px;
	height: 20px;
}

.kc-h3__ico--red {
	background: var(--kp-red);
}

.kc-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--kp-indigo) !important;
	font-weight: 500;
	white-space: nowrap;
	cursor: pointer;
}

.kc-link:hover {
	color: var(--kp-blue) !important;
	text-decoration: underline !important;
}

.kc-block__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px 20px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

.kc-card {
	padding: 24px 28px;
	border: 1px solid var(--kp-line);
	border-radius: var(--kp-r);
	background: #fff;
	box-shadow: var(--kp-shadow);
}

.kc-card > .kc-h2 {
	margin-bottom: 16px;
}

.kc-tag {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 6px;
	background: var(--kp-red);
	color: #fff;
	font-family: var(--kp-cond);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	text-transform: uppercase;
}

.kc-note {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 18px;
	border-radius: 12px;
	background: var(--kp-soft);
	color: var(--kp-indigo-d);
	font-size: 14px;
}

.kc-note .kc-ico {
	color: var(--kp-indigo);
}

/* ----- кнопки ----- */

.kc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 8px 20px;
	border: 1.5px solid transparent;
	border-radius: 10px;
	background: var(--kp-indigo);
	color: #fff !important;
	font-family: var(--kp-cond);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: .02em;
	text-align: center;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color .15s, border-color .15s, color .15s, box-shadow .15s, transform .15s;
}

.kc-btn:hover {
	text-decoration: none !important;
}

.kc-btn:active {
	transform: translateY(1px);
}

.kc-btn:focus-visible,
.kc-link:focus-visible,
.kc-vcard:focus-visible,
.kc-darklink:focus-visible {
	outline: 3px solid rgba(247, 181, 0, .7);
	outline-offset: 2px;
}

.kc-btn--sm {
	min-height: 38px;
	padding: 6px 14px;
	font-size: 15px;
}

.kc-btn--sm .kc-ico {
	width: 18px;
	height: 18px;
}

.kc-btn--lg {
	min-height: 56px;
	padding: 10px 24px;
	font-size: 18px;
}

.kc-btn--indigo {
	background: var(--kp-indigo);
}

.kc-btn--indigo:hover {
	background: var(--kp-indigo-d);
}

.kc-btn--green {
	background: var(--kp-green);
	box-shadow: 0 6px 16px rgba(11, 107, 51, .25);
}

.kc-btn--green:hover {
	background: #08552a;
}

.kc-btn--yellow {
	background: var(--kp-yellow);
	color: #1b1400 !important;
	box-shadow: 0 6px 16px rgba(247, 181, 0, .3);
}

.kc-btn--yellow:hover {
	background: var(--kp-yellow-d);
}

.kc-btn--light {
	border-color: var(--kp-line-2);
	background: #fff;
	color: var(--kp-indigo) !important;
}

.kc-btn--light:hover {
	border-color: var(--kp-indigo);
	background: var(--kp-soft);
}

.kc-btn--ghost-light {
	border-color: rgba(255, 255, 255, .45);
	background: transparent;
}

.kc-btn--ghost-light:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, .08);
}

.kc-btn.is-loading {
	opacity: .7;
	pointer-events: none;
}

/* ----- hero ----- */

.kc-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 260px;
	gap: 24px;
	align-items: center;
	overflow: hidden;
	padding: 36px 40px;
	border-radius: 18px;
	background: linear-gradient(120deg, var(--kp-indigo-d) 0%, var(--kp-indigo) 62%, #4b37b5 100%);
	color: #fff;
}

.kc-hero--dark {
	background: radial-gradient(circle at 85% 40%, #2a2a36 0, var(--kp-black) 60%);
}

.kc-hero__body {
	position: relative;
	z-index: 1;
}

.kc-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	padding: 5px 12px 5px 8px;
	border-radius: 20px;
	background: rgba(255, 255, 255, .12);
	color: #fff !important;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .02em;
}

.kc-eyebrow .kc-ico {
	width: 18px;
	height: 18px;
	color: var(--kp-yellow);
}

a.kc-eyebrow:hover {
	background: rgba(255, 255, 255, .2);
}

.kc-hero__title {
	font-family: var(--kp-cond);
	font-size: 46px;
	font-weight: 700;
	line-height: 1.02;
	text-transform: uppercase;
	color: #fff;
}

.kc-hero__lead {
	max-width: 620px;
	margin-top: 14px !important;
	color: rgba(255, 255, 255, .86);
	font-size: 17px;
}

.kc-hero__cta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 24px;
}

.kc-hero__meta {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 14px !important;
	color: rgba(255, 255, 255, .72);
	font-size: 14px;
}

.kc-hero__meta .kc-ico {
	width: 18px;
	height: 18px;
}

.kc-hero__art {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 220px;
}

.kc-hero__ring {
	position: absolute;
	width: 220px;
	height: 220px;
	border: 26px solid rgba(255, 255, 255, .07);
	border-radius: 50%;
	box-shadow: 0 0 0 26px rgba(255, 255, 255, .035);
}

svg.kc-hero__ico {
	position: relative;
	width: 120px;
	height: 120px;
	color: #fff;
	stroke-width: 1.2;
}

.kc-hero--dark svg.kc-hero__ico {
	color: var(--kp-yellow);
}

/* ----- текст з адмінки ----- */

.kc-prose {
	color: #2c2944;
	font-size: 16px;
	line-height: 1.65;
}

.kc-prose > * + * {
	margin-top: 12px !important;
}

.kc-prose h2,
.kc-prose h3,
.kc-prose h4 {
	margin-top: 22px !important;
	font-family: var(--kp-cond);
	font-weight: 700;
	line-height: 1.2;
	color: var(--kp-ink);
}

.kc-prose h2 {
	font-size: 22px;
}

.kc-prose h3,
.kc-prose h4 {
	font-size: 19px;
}

.kc-prose ul,
.kc-prose ol {
	padding-left: 22px !important;
	list-style: disc;
}

.kc-prose ol {
	list-style: decimal;
}

.kc-prose li + li {
	margin-top: 4px;
}

.kc-prose a {
	color: var(--kp-indigo);
	text-decoration: underline;
}

.kc-prose img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.kc-prose iframe {
	max-width: 100%;
}

.kc-prose table {
	width: 100%;
	border-collapse: collapse;
}

.kc-prose td,
.kc-prose th {
	padding: 8px 10px;
	border: 1px solid var(--kp-line);
}

/* ----- таблиця характеристик ----- */

.kc-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
}

.kc-table + .kc-table {
	margin-top: 12px;
}

.kc-table th,
.kc-table td {
	padding: 10px 12px;
	border-bottom: 1px solid var(--kp-line);
	vertical-align: top;
}

.kc-table th {
	width: 45%;
	color: var(--kp-muted);
	font-weight: 400;
}

.kc-table td {
	font-weight: 500;
}

.kc-table tr:nth-child(odd) th,
.kc-table tr:nth-child(odd) td {
	background: #faf9fe;
}

/* ----- плитки послуг (сторінка послуги) ----- */

.kc-tiles4 {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.kc-tile4 {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 18px;
	border: 1px solid var(--kp-line);
	border-radius: var(--kp-r);
	background: #fff;
	transition: border-color .15s, box-shadow .15s, transform .15s;
}

.kc-tile4:hover {
	border-color: var(--kp-line-2);
	box-shadow: var(--kp-shadow);
	transform: translateY(-2px);
}

.kc-tile4__ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 4px;
	border-radius: 12px;
	background: var(--kp-soft);
	color: var(--kp-indigo);
}

.kc-tile4__ico .kc-ico {
	width: 26px;
	height: 26px;
}

.kc-tile4 b {
	font-family: var(--kp-cond);
	font-size: 18px;
	line-height: 1.2;
}

.kc-tile4 small {
	color: var(--kp-muted);
	font-size: 13px;
	line-height: 1.4;
}

.kc-tile4--ask .kc-tile4__ico {
	background: #fff6dc;
	color: #8a6400;
}

/* ----- рекомендовані рішення ----- */

.kc-reco {
	padding: 24px 28px;
	border: 2px solid rgba(225, 29, 42, .55);
	border-radius: 18px;
	background: #fff;
}

.kc-reco__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 14px;
}

.kc-reco__item {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 18px 16px;
	border: 1px solid var(--kp-line);
	border-radius: var(--kp-r);
	background: #fff;
	transition: box-shadow .15s, transform .15s;
}

.kc-reco__item:hover {
	box-shadow: var(--kp-shadow);
	transform: translateY(-2px);
}

.kc-reco__ico {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 84px;
	margin-bottom: 6px;
	border-radius: 12px;
	background: linear-gradient(135deg, #1b1b24, #34343f);
	color: #fff;
}

.kc-reco__ico .kc-ico {
	width: 48px;
	height: 48px;
	stroke-width: 1.4;
}

.kc-reco__item b {
	font-family: var(--kp-cond);
	font-size: 18px;
	text-transform: uppercase;
}

.kc-reco__item small {
	flex: 1 1 auto;
	color: var(--kp-muted);
	font-size: 13px;
	line-height: 1.4;
}

.kc-reco__go {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 40px;
	margin-top: 8px;
	border: 1.5px solid rgba(225, 29, 42, .6);
	border-radius: 9px;
	color: var(--kp-red);
	font-weight: 500;
}

.kc-reco__go .kc-ico {
	width: 18px;
	height: 18px;
}

.kc-reco__item:hover .kc-reco__go {
	background: var(--kp-red);
	color: #fff;
}

/* ----- смуга «запишіться» ----- */

.kc-band {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px 24px;
	padding: 24px 28px;
	border-radius: 18px;
	background: var(--kp-soft);
}

.kc-band h2 {
	font-family: var(--kp-cond);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
}

.kc-band p {
	margin-top: 4px;
	color: var(--kp-muted);
}

.kc-band__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* ----- темні посилання-плитки (база знань, професійні рішення) ----- */

.kc-dgrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.kc-dgrid--5 {
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

.kc-darklink {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 84px;
	padding: 16px 44px 16px 16px;
	border-radius: 12px;
	background: var(--kp-black);
	color: #fff !important;
	font-family: var(--kp-cond);
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	transition: background-color .15s, transform .15s;
}

.kc-darklink:hover {
	background: var(--kp-indigo-d);
	transform: translateY(-2px);
}

.kc-darklink > .kc-ico:first-child {
	width: 30px;
	height: 30px;
	color: var(--kp-yellow);
}

.kc-darklink span {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.kc-darklink small {
	color: rgba(255, 255, 255, .55);
	font-family: var(--kp-font);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.kc-darklink__go {
	position: absolute;
	right: 14px;
	top: 50%;
	width: 20px !important;
	height: 20px !important;
	margin-top: -10px;
	color: #fff !important;
}

.kc-darklink--sm {
	min-height: 64px;
	font-family: var(--kp-font);
	font-size: 14px;
}

.kc-darklink--sm > .kc-ico:first-child {
	width: 26px;
	height: 26px;
}

.kc-darklink--blue {
	background: var(--kp-blue);
}

.kc-darklink--blue > .kc-ico:first-child {
	color: #fff;
}

.kc-darklink--tile {
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	min-height: 128px;
	padding: 16px;
	background: linear-gradient(160deg, #22222c 0%, var(--kp-black) 70%);
	font-size: 16px;
	hyphens: auto;
	text-transform: uppercase;
}

.kc-darklink--tile > .kc-ico:first-child {
	width: 36px;
	height: 36px;
}

.kc-darklink--tile .kc-darklink__go {
	top: auto;
	bottom: 14px;
	margin-top: 0;
}

.kc-darklink--tile span {
	padding-right: 26px;
	overflow-wrap: break-word;
}

/* ==========================================================================
   Відео
   ========================================================================== */

.kc-sec-tiles {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.kc-sec-tile {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	grid-template-rows: 1fr auto;
	gap: 4px 14px;
	padding: 16px;
	border: 1px solid var(--kp-line);
	border-radius: var(--kp-r);
	background: #fff;
	transition: border-color .15s, box-shadow .15s, transform .15s;
}

.kc-sec-tile:hover {
	border-color: var(--kp-line-2);
	box-shadow: var(--kp-shadow);
	transform: translateY(-2px);
}

.kc-sec-tile__ico {
	grid-row: 1 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: var(--kp-black);
	color: var(--kp-yellow);
}

.kc-sec-tile__ico .kc-ico {
	width: 30px;
	height: 30px;
}

.kc-sec-tile__txt {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.kc-sec-tile__txt b {
	font-family: var(--kp-cond);
	font-size: 18px;
	line-height: 1.15;
	text-transform: uppercase;
}

.kc-sec-tile__txt small {
	color: var(--kp-muted);
	font-size: 13px;
	line-height: 1.35;
}

.kc-sec-tile__n {
	color: var(--kp-indigo);
	font-size: 13px;
	font-weight: 700;
}

.kc-vgrid {
	display: grid;
	gap: 16px;
}

.kc-vgrid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kc-vgrid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kc-vgrid--5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.kc-vcard {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
	padding: 0;
	border: 0;
	background: none;
	color: var(--kp-ink);
	text-align: left;
	cursor: pointer;
}

.kc-vcard__img {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	border-radius: 12px;
	background: #16161d;
}

.kc-vcard__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s, opacity .2s;
}

.kc-vcard:hover .kc-vcard__img img {
	transform: scale(1.04);
	opacity: .85;
}

.kc-vcard__play {
	position: absolute;
	left: 50%;
	top: 50%;
	display: flex;
	width: 54px;
	height: 54px;
	margin: -27px 0 0 -27px;
	border-radius: 50%;
	background: rgba(11, 11, 15, .55);
	color: #fff;
	transition: background-color .15s, transform .15s;
}

.kc-vcard__play .kc-ico {
	width: 54px;
	height: 54px;
	stroke-width: 1.4;
}

.kc-vcard:hover .kc-vcard__play {
	background: var(--kp-red);
	transform: scale(1.08);
}

.kc-vcard__dur {
	position: absolute;
	right: 8px;
	bottom: 8px;
	padding: 2px 7px;
	border-radius: 6px;
	background: rgba(11, 11, 15, .82);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
}

.kc-vcard__t {
	font-weight: 500;
	line-height: 1.35;
	color: var(--kp-blue);
}

.kc-vcard:hover .kc-vcard__t {
	text-decoration: underline;
}

.kc-vsec {
	scroll-margin-top: calc(var(--kc-sticky-h, 0px) + 16px);
}

.kc-vsec__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

.kc-vsec__ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--kp-black);
	color: var(--kp-yellow);
}

.kc-vsec__n {
	margin-left: auto;
	color: var(--kp-muted);
	font-size: 14px;
}

.kc-vsec__more {
	margin-top: 14px;
}

/* модальне вікно відео (створює kc_pages.js) */

.kc-vmodal {
	position: fixed;
	inset: 0;
	z-index: 10050;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(6, 6, 10, .86);
}

.kc-vmodal__box {
	position: relative;
	width: min(1100px, 100%);
	aspect-ratio: 16 / 9;
	border-radius: 12px;
	overflow: hidden;
	background: #000;
	box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
}

.kc-vmodal__box iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.kc-vmodal__close {
	position: absolute;
	right: 16px;
	top: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: var(--kc-ink, #15122b);
	cursor: pointer;
}

.kc-vmodal__close .kc-ico {
	width: 24px;
	height: 24px;
}

html.kc-noscroll {
	overflow: hidden;
}

/* ==========================================================================
   База знань
   ========================================================================== */

.kc-kb__head {
	max-width: 760px;
}

.kc-kb .kc-eyebrow {
	background: var(--kp-soft);
	color: var(--kp-indigo) !important;
}

.kc-kb .kc-eyebrow .kc-ico {
	color: var(--kp-indigo);
}

.kc-kb__title {
	font-family: var(--kp-cond);
	font-size: 44px;
	font-weight: 700;
	line-height: 1.05;
}

.kc-kb__lead {
	margin-top: 10px !important;
	color: #3d3a55;
	font-size: 17px;
}

.kc-kb__grid {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}

.kc-kb__side {
	position: sticky;
	top: calc(var(--kc-sticky-h, 0px) + 16px);
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.kc-kb__nav {
	overflow: hidden;
	border: 1px solid var(--kp-line);
	border-radius: var(--kp-r);
	background: #fff;
	box-shadow: var(--kp-shadow);
}

.kc-kb__nav-a {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 16px;
	border-bottom: 1px solid var(--kp-line);
	font-family: var(--kp-cond);
	font-size: 19px;
	font-weight: 700;
	line-height: 1.15;
	transition: background-color .15s, color .15s;
}

.kc-kb__nav-a:last-child {
	border-bottom: 0;
}

.kc-kb__nav-a .kc-ico {
	width: 22px;
	height: 22px;
	color: var(--kp-indigo);
}

.kc-kb__nav-a:hover {
	background: var(--kp-soft);
}

.kc-kb__nav-a.is-active {
	background: var(--kp-blue);
	color: #fff !important;
}

.kc-kb__nav-a.is-active .kc-ico {
	color: #fff;
}

.kc-kb__nav-a.is-empty span {
	opacity: .55;
}

.kc-kb__nav-a--video .kc-tag {
	margin-left: auto;
}

.kc-kb__useful {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 18px 16px;
	border: 1.5px solid var(--kp-ink);
	border-radius: var(--kp-r);
	background: #fff;
}

.kc-kb__useful h2 {
	font-family: var(--kp-cond);
	font-size: 22px;
	font-weight: 700;
}

.kc-kb__useful p {
	margin-bottom: 4px !important;
	color: var(--kp-muted);
	font-size: 13px;
}

.kc-kb__main > :not(:first-child) {
	margin-top: 28px;
}

.kc-kb__panel {
	scroll-margin-top: calc(var(--kc-sticky-h, 0px) + 16px);
}

.kc-kb__panel > :not(:first-child) {
	margin-top: 26px;
}

.kc-kb.is-tabs .kc-kb__panel:not(.is-active) {
	display: none;
}

.kc-kb:not(.is-tabs) .kc-kb__panel + .kc-kb__panel {
	padding-top: 28px;
	border-top: 1px solid var(--kp-line);
}

.kc-kb__panel-head {
	display: flex;
	align-items: center;
	gap: 16px;
}

.kc-kb__panel-ico {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 60px;
	width: 60px;
	height: 60px;
	border-radius: 16px;
	background: var(--kp-black);
	color: var(--kp-yellow);
}

.kc-kb__panel-ico .kc-ico {
	width: 34px;
	height: 34px;
}

.kc-kb__h {
	font-family: var(--kp-cond);
	font-size: 34px;
	font-weight: 700;
	line-height: 1.1;
}

.kc-kb__panel-head p {
	color: var(--kp-muted);
}

.kc-agrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.kc-acard {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.kc-acard__img {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	border-radius: 12px;
	background: linear-gradient(135deg, #1b1b24, #34343f);
	color: rgba(255, 255, 255, .6);
}

.kc-acard__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kc-acard__img .kc-ico {
	width: 44px;
	height: 44px;
}

.kc-acard b {
	color: var(--kp-blue);
	font-weight: 500;
	line-height: 1.35;
}

.kc-acard small {
	color: var(--kp-muted);
	font-size: 13px;
}

.kc-acard:hover b {
	text-decoration: underline;
}

/* ==========================================================================
   Головна
   ========================================================================== */

.kc-home__top {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 16px;
}

.kc-hstock {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	padding: 24px;
	border: 1.5px solid var(--kp-indigo);
	border-radius: var(--kp-r);
	background: #fff;
}

.kc-hstock__ico {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: var(--kp-indigo);
	color: #fff;
}

.kc-hstock__ico .kc-ico {
	width: 36px;
	height: 36px;
}

.kc-hstock__t {
	margin-bottom: 8px !important;
	color: var(--kp-indigo);
	font-family: var(--kp-cond);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.15;
}

.kc-hstock p {
	color: #2c2944;
	font-size: 14px;
}

.kc-hstock p + p {
	margin-top: 8px !important;
}

.kc-ptiles {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.kc-ptile {
	position: relative;
	display: block;
	overflow: hidden;
	min-height: 118px;
	border-radius: 12px;
	background: #1b1b24;
	color: #fff !important;
}

.kc-ptile img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s;
}

.kc-ptile:hover img {
	transform: scale(1.05);
}

.kc-ptile::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, .75) 100%);
}

.kc-ptile--empty {
	background: linear-gradient(135deg, var(--kp-indigo-d) 0%, var(--kp-indigo) 100%);
}

.kc-ptile--map {
	background-color: #dfe7ee;
	background-image:
		linear-gradient(90deg, rgba(255, 255, 255, .9) 3px, transparent 3px),
		linear-gradient(0deg, rgba(255, 255, 255, .9) 3px, transparent 3px),
		linear-gradient(35deg, transparent 46%, #f7d774 46%, #f7d774 54%, transparent 54%),
		linear-gradient(120deg, #cfe3c8 0 30%, transparent 30%);
	background-size: 46px 46px, 46px 46px, 100% 100%, 100% 100%;
}

.kc-ptile__art {
	position: absolute;
	right: 14px;
	top: 12px;
	color: rgba(255, 255, 255, .22);
}

.kc-ptile__art .kc-ico {
	width: 64px;
	height: 64px;
	stroke-width: 1.3;
}

.kc-ptile--map .kc-ptile__art {
	left: 50%;
	right: auto;
	top: 18%;
	margin-left: -24px;
	color: var(--kp-red);
}

.kc-ptile--map .kc-ptile__art .kc-ico {
	width: 48px;
	height: 48px;
	fill: rgba(225, 29, 42, .25);
	stroke-width: 2;
}

.kc-ptile__cap {
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 10px;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--kp-cond);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
}

.kc-ptile__cap .kc-ico {
	width: 20px;
	height: 20px;
}

.kc-home__bottom {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr);
	gap: 16px;
	align-items: stretch;
}

.kc-home__bottom--two {
	grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
}

.kc-home__bottom > .kc-card {
	padding: 18px 20px;
}

.kc-rev {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.kc-rev__head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px 10px;
}

.kc-rev__head b {
	font-family: var(--kp-cond);
	font-size: 20px;
}

.kc-g {
	width: 22px;
	height: 22px;
}

.kc-rev__rate {
	font-size: 18px;
	font-weight: 700;
}

.kc-rev__head small {
	color: var(--kp-muted);
	font-size: 13px;
}

.kc-stars {
	display: inline-flex;
	gap: 1px;
	color: #d6d3e3;
	font-size: 15px;
	line-height: 1;
}

.kc-stars i {
	font-style: normal;
}

.kc-stars i.on {
	color: #f5a623;
}

.kc-rev__list {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(200px, 1fr);
	gap: 10px;
	overflow-x: auto;
	padding-bottom: 6px;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
}

.kc-rev__item {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 14px;
	border: 1px solid var(--kp-line);
	border-radius: 12px;
	background: #fff;
	scroll-snap-align: start;
	font-size: 14px;
}

.kc-rev__who {
	display: flex;
	align-items: center;
	gap: 10px;
}

.kc-rev__who > span:last-child {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.kc-rev__who small {
	color: var(--kp-muted);
	font-size: 12px;
}

.kc-rev__ava {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--kp-indigo);
	color: #fff;
	font-weight: 700;
}

.kc-rev__ans {
	padding-top: 8px;
	border-top: 1px dashed var(--kp-line);
	color: var(--kp-muted);
	font-size: 13px;
}

.kc-rev__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-top: auto;
}

.kc-here .kc-block__head {
	margin-bottom: 10px;
}

.kc-here__s {
	margin-bottom: 10px !important;
	color: var(--kp-muted);
	font-size: 14px;
}

.kc-here__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.kc-here__item {
	position: relative;
	display: block;
	overflow: hidden;
	min-height: 104px;
	border-radius: 10px;
	background: #1b1b24;
	color: #fff !important;
}

.kc-here__item img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kc-here__item::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 45%, rgba(0, 0, 0, .75));
}

.kc-here__item.is-empty {
	background: linear-gradient(150deg, #262633 0%, var(--kp-black) 100%);
}

.kc-here__art {
	position: absolute;
	right: 10px;
	top: 10px;
	color: var(--kp-yellow);
	opacity: .9;
}

.kc-here__art .kc-ico {
	width: 38px;
	height: 38px;
}

.kc-here__cap {
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 8px;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
}

.kc-here__cap .kc-ico {
	width: 16px;
	height: 16px;
}

.kc-contact {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px;
	border-radius: var(--kp-r);
	background: var(--kp-black);
}

.kc-contact > a {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	grid-template-rows: auto auto;
	align-content: center;
	gap: 0 12px;
	flex: 1 1 auto;
	min-height: 66px;
	padding: 10px 14px;
	border-radius: 10px;
	color: #fff !important;
	line-height: 1.2;
	transition: filter .15s;
}

.kc-contact > a:hover {
	filter: brightness(1.12);
}

.kc-contact > a > .kc-ico {
	grid-row: 1 / 3;
	align-self: center;
	width: 28px;
	height: 28px;
}

.kc-contact b {
	font-family: var(--kp-cond);
	font-size: 17px;
	letter-spacing: .01em;
	text-transform: uppercase;
}

.kc-contact small {
	opacity: .85;
	font-size: 12px;
}

.kc-contact__map {
	background: var(--kp-green);
}

.kc-contact__msg {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	padding: 8px 10px;
	border-radius: 10px;
	background: #1d1d27;
	color: #fff;
}

.kc-contact__msg > small {
	flex: 1 1 100%;
	opacity: .7;
}

.kc-contact__m {
	display: flex;
	flex: 1 1 0;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 38px;
	padding: 6px;
	border-radius: 8px;
	color: #fff !important;
	font-size: 14px;
	font-weight: 500;
}

.kc-contact__m .kc-ico {
	width: 20px;
	height: 20px;
}

.kc-contact__m--viber {
	background: #7360f2;
}

.kc-contact__m--telegram {
	background: #229ed9;
}

.kc-contact__m--whatsapp {
	background: #25a244;
}

.kc-contact__phone {
	background: var(--kp-blue);
}

.kc-contact__phone b {
	font-family: var(--kp-font);
	font-size: 17px;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
}

.kc-contact__book {
	background: var(--kp-yellow);
	color: #1b1400 !important;
}

/* ==========================================================================
   Професійні рішення, колонка «Відео / Статті»
   ========================================================================== */

.kc-sol {
	margin: 32px 0;
}

.kc-kbc {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 16px 0;
}

.kc-page.kc-kbc > * + * {
	margin-top: 0;
}

.kc-kbc__box {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 16px;
	border: 1px solid var(--kp-line);
	border-radius: var(--kp-r);
	background: #fff;
}

.kc-kbc__head {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--kp-cond);
	font-size: 19px;
}

.kc-kbc__head .kc-h3__ico {
	width: 30px;
	height: 30px;
}

.kc-kbc__head .kc-h3__ico .kc-ico {
	width: 18px;
	height: 18px;
}

.kc-kbc__list li + li {
	border-top: 1px solid var(--kp-line);
}

.kc-kbc__list a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 0;
	color: var(--kp-ink);
	font-size: 14px;
	line-height: 1.3;
}

.kc-kbc__list a:hover {
	color: var(--kp-blue);
}

.kc-kbc__list img {
	flex: 0 0 56px;
	width: 56px;
	height: 40px;
	border-radius: 6px;
	object-fit: cover;
}

.kc-kbc__list .kc-ico {
	width: 20px;
	height: 20px;
	color: var(--kp-indigo);
}

.kc-kbc .kc-vcard__t {
	font-size: 14px;
}

.kc-kbc__more {
	font-size: 14px;
}

/* ==========================================================================
   Картка товару
   ========================================================================== */

.kc-pp__note {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 16px !important;
	padding: 12px 16px;
	border-radius: 12px;
	background: #fff6dc;
	color: #5a4200;
	font-size: 14px;
}

.kc-pp__grid {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	gap: 28px;
	align-items: start;
}

.kc-pp__media {
	position: sticky;
	top: calc(var(--kc-sticky-h, 0px) + 16px);
}

.kc-pp__main {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 360px;
	padding: 20px;
	border: 1px solid var(--kp-line);
	border-radius: 16px;
	background: #fff;
}

.kc-pp__main img {
	max-width: 100%;
	max-height: 460px;
	height: auto;
	object-fit: contain;
}

.kc-pp__main a {
	display: block;
	cursor: zoom-in;
}

.kc-pp__badges {
	position: absolute;
	left: 14px;
	top: 14px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.kc-badge {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 6px;
	background: var(--kp-soft-2);
	color: var(--kp-indigo);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
}

.kc-badge--used {
	background: var(--kp-yellow);
	color: #1b1400;
}

.kc-pp__thumbs {
	display: flex;
	gap: 8px;
	margin-top: 10px;
	overflow-x: auto;
}

.kc-pp__thumbs a {
	flex: 0 0 76px;
	height: 76px;
	padding: 4px;
	border: 1px solid var(--kp-line);
	border-radius: 10px;
	background: #fff;
}

.kc-pp__thumbs a:hover {
	border-color: var(--kp-indigo);
}

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

.kc-pp__info {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.kc-pp__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px 16px;
	flex-wrap: wrap;
}

.kc-pp__brand {
	color: var(--kp-blue) !important;
	font-family: var(--kp-cond);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.kc-pp__code {
	color: var(--kp-muted);
	font-size: 14px;
}

.kc-pp__code b {
	color: var(--kp-blue);
}

.kc-pp__title {
	font-family: var(--kp-cond);
	font-size: 34px;
	font-weight: 700;
	line-height: 1.1;
	color: var(--kp-ink);
}

.kc-specs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.kc-specs--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kc-spec {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	min-height: 82px;
	padding: 10px 8px;
	border: 1px solid var(--kp-line);
	border-radius: 12px;
	background: #fff;
	text-align: center;
}

.kc-spec__ico {
	display: none;
}

.kc-spec--text .kc-spec__ico {
	display: block;
	color: var(--kp-blue);
}

.kc-spec__v {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.1;
}

.kc-spec--text .kc-spec__v {
	font-size: 16px;
}

.kc-spec__l {
	color: var(--kp-muted);
	font-size: 13px;
	line-height: 1.25;
}

.kc-spec__s {
	color: var(--kp-indigo);
	font-size: 12px;
	font-weight: 500;
}

.kc-pp__warranty {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	border-radius: 10px;
	background: #e9f6ee;
	color: var(--kp-green) !important;
	font-weight: 500;
}

.kc-pp__warranty span {
	flex: 1 1 auto;
}

.kc-buy {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 20px;
	border: 1px solid var(--kp-line);
	border-radius: 16px;
	background: #fff;
	box-shadow: var(--kp-shadow);
}

.kc-stock {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.kc-stock legend {
	grid-column: 1 / -1;
	float: left;
	width: 100%;
	margin: 0 0 8px;
	color: var(--kp-muted);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.kc-stock__opt {
	position: relative;
	margin: 0;
	cursor: pointer;
}

.kc-stock__opt input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.kc-stock__box {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	grid-template-rows: auto auto;
	gap: 2px 10px;
	height: 100%;
	padding: 12px;
	border: 1.5px solid var(--kp-line);
	border-radius: 12px;
	background: #fff;
	transition: border-color .15s, background-color .15s, box-shadow .15s;
}

.kc-stock__ico {
	grid-row: 1 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--kp-soft);
	color: var(--kp-indigo);
}

.kc-stock__ico .kc-ico {
	width: 20px;
	height: 20px;
}

.kc-stock__txt {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.kc-stock__txt b {
	font-size: 15px;
}

.kc-stock__txt small {
	color: var(--kp-muted);
	font-size: 12px;
}

.kc-stock__price {
	grid-column: 2;
	font-weight: 700;
	font-size: 15px;
}

.kc-stock__opt input:checked + .kc-stock__box {
	border-color: var(--kp-green);
	background: #f1faf4;
	box-shadow: 0 0 0 3px rgba(11, 107, 51, .12);
}

.kc-stock__opt input:checked + .kc-stock__box .kc-stock__ico {
	background: var(--kp-green);
	color: #fff;
}

.kc-stock__opt input:focus-visible + .kc-stock__box {
	outline: 3px solid rgba(247, 181, 0, .7);
}

.kc-stock__opt.is-empty .kc-stock__box {
	opacity: .55;
}

.kc-opt {
	margin: 0;
}

.kc-opt__l {
	display: block;
	margin-bottom: 6px;
	color: var(--kp-muted);
	font-size: 13px;
	font-weight: 500;
	text-transform: uppercase;
}

.kc-opt__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.kc-opt__item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid var(--kp-line);
	border-radius: 10px;
	cursor: pointer;
}

.kc-buy__row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 20px;
}

.kc-buy__price {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.kc-buy__now {
	font-size: 30px;
	font-weight: 700;
	white-space: nowrap;
}

.kc-buy__old {
	color: var(--kp-muted);
	font-size: 16px;
}

.kc-buy__price small,
.kc-buy__total small {
	margin-top: 4px;
	color: var(--kp-muted);
	font-size: 13px;
}

.kc-qty {
	display: inline-flex;
	align-items: stretch;
	overflow: hidden;
	height: 48px;
	border: 1.5px solid var(--kp-line-2);
	border-radius: 10px;
	background: #fff;
}

.kc-qty__btn {
	width: 44px;
	padding: 0;
	border: 0;
	background: var(--kp-soft);
	color: var(--kp-indigo);
	cursor: pointer;
}

.kc-qty__btn:hover {
	background: var(--kp-soft-2);
}

.kc-qty__btn .kc-ico {
	width: 20px;
	height: 20px;
}

.kc-qty input {
	width: 52px;
	padding: 0;
	border: 0;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	outline: none;
}

.kc-buy__total {
	display: flex;
	flex-direction: column;
	margin-left: auto;
	line-height: 1.1;
	text-align: right;
}

.kc-buy__total b {
	font-size: 22px;
	white-space: nowrap;
}

.kc-buy__btns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.kc-buy__btns .kc-btn {
	min-height: 54px;
}

.kc-buy__btns .kc-btn:only-child {
	grid-column: 1 / -1;
}

.kc-pp__min {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--kp-muted);
	font-size: 13px;
}

.kc-pp__terms {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.kc-term {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px;
	border-radius: 14px;
	background: #f3f6fd;
	font-size: 14px;
}

.kc-term__t {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--kp-cond);
	font-size: 17px;
	font-weight: 700;
	text-transform: uppercase;
}

.kc-term__t .kc-ico {
	color: var(--kp-blue);
}

.kc-term li {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 2px 0;
	line-height: 1.35;
}

.kc-term li .kc-ico {
	width: 16px;
	height: 16px;
	margin-top: 2px;
	color: var(--kp-blue);
}

.kc-term a {
	margin-top: auto;
	color: var(--kp-blue) !important;
	font-size: 13px;
	font-weight: 500;
}

.kc-install {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px 18px;
	margin-top: 28px;
	padding: 18px 22px;
	border-radius: 16px;
	background: var(--kp-black);
	color: #fff;
}

.kc-install__ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--kp-yellow);
	color: #1b1400;
}

.kc-install__ico .kc-ico {
	width: 28px;
	height: 28px;
}

.kc-install__txt {
	display: flex;
	flex: 1 1 280px;
	flex-direction: column;
	line-height: 1.3;
}

.kc-install__txt b {
	font-family: var(--kp-cond);
	font-size: 20px;
	text-transform: uppercase;
}

.kc-install__txt span {
	color: rgba(255, 255, 255, .75);
	font-size: 14px;
}

.kc-pp__sections {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px;
	margin-top: 28px;
	align-items: start;
}

.kc-pp__sections > :only-child {
	grid-column: 1 / -1;
}

.kc-pp__short {
	margin-bottom: 12px !important;
	font-weight: 500;
}

.kc-pp__video {
	margin-top: 16px;
	border-radius: 12px;
}

.kc-pp__usedtext {
	margin-top: 16px;
	color: #3d3a55;
	font-size: 14px;
}

.kc-pp__usedtext p + p {
	margin-top: 10px !important;
}

.kc-similar {
	margin-top: 32px;
}

.kc-similar .kc-h2 {
	margin-bottom: 16px;
}

.kc-similar__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.kc-pcard {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 14px;
	border: 1px solid var(--kp-line);
	border-radius: 14px;
	background: #fff;
	transition: box-shadow .15s;
}

.kc-pcard:hover {
	box-shadow: var(--kp-shadow);
}

.kc-pcard__img {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 170px;
}

.kc-pcard__img img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.kc-pcard__name {
	flex: 1 1 auto;
	color: var(--kp-ink) !important;
	font-weight: 500;
	line-height: 1.3;
}

.kc-pcard__name:hover {
	color: var(--kp-blue) !important;
}

.kc-pcard__price {
	font-size: 20px;
}

.kc-pcard__buy .kc-btn {
	width: 100%;
}

/* ==========================================================================
   Адаптив
   ========================================================================== */

@media (max-width: 1199px) {
	.kc-vgrid--5 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.kc-reco__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.kc-home__bottom { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.kc-home__bottom > .kc-rev { grid-column: 1 / -1; }
}

@media (max-width: 991px) {
	.kc-hero { grid-template-columns: minmax(0, 1fr); padding: 28px; }
	.kc-hero__art { display: none; }
	.kc-hero__title { font-size: 38px; }
	.kc-sec-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.kc-vgrid--4,
	.kc-vgrid--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.kc-tiles4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.kc-kb__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.kc-kb__side { position: static; }
	.kc-kb__nav { display: flex; overflow-x: auto; scrollbar-width: none; }
	.kc-kb__nav::-webkit-scrollbar { display: none; }
	.kc-kb__nav-a { flex: 0 0 auto; border-bottom: 0; border-right: 1px solid var(--kp-line); font-size: 17px; white-space: nowrap; }
	.kc-kb__useful { display: none; }
	.kc-home__top { grid-template-columns: minmax(0, 1fr); }
	.kc-pp__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.kc-pp__media { position: static; }
	.kc-pp__main { min-height: 280px; }
	.kc-pp__sections { grid-template-columns: minmax(0, 1fr); }
	.kc-similar__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.kc-page { font-size: 15px; }
	.kc-page > :not(:first-child) { margin-top: 22px; }
	.kc-h2 { font-size: 22px; }
	.kc-card { padding: 18px 16px; }
	.kc-hero { padding: 24px 18px; border-radius: 14px; }
	.kc-hero__title { font-size: 32px; }
	.kc-hero__lead { font-size: 15px; }
	.kc-hero__cta .kc-btn { flex: 1 1 100%; }
	.kc-sec-tiles { grid-template-columns: minmax(0, 1fr); }
	.kc-vgrid--3,
	.kc-vgrid--4,
	.kc-vgrid--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.kc-vcard__play,
	.kc-vcard__play .kc-ico { width: 44px; height: 44px; }
	.kc-vcard__play { margin: -22px 0 0 -22px; }
	.kc-vcard__t { font-size: 14px; }
	.kc-reco { padding: 18px 14px; }
	.kc-reco__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.kc-reco__ico { height: 64px; }
	.kc-dgrid,
	.kc-dgrid--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.kc-darklink { min-height: 72px; padding: 12px 36px 12px 12px; font-size: 16px; }
	.kc-darklink--tile { min-height: 112px; font-size: 14px; }
	.kc-agrid { grid-template-columns: minmax(0, 1fr); }
	.kc-band { padding: 20px 16px; }
	.kc-band__btns,
	.kc-band__btns .kc-btn { width: 100%; }
	.kc-kb__title { font-size: 34px; }
	.kc-kb__h { font-size: 28px; }
	.kc-kb__panel-ico { flex-basis: 48px; width: 48px; height: 48px; }
	.kc-hstock { padding: 18px 16px; gap: 14px; }
	.kc-hstock__ico { flex-basis: 52px; width: 52px; height: 52px; }
	.kc-hstock__ico .kc-ico { width: 28px; height: 28px; }
	.kc-hstock__t { font-size: 20px; }
	.kc-ptile { min-height: 104px; }
	.kc-ptile__cap { font-size: 15px; }
	.kc-home__bottom,
	.kc-home__bottom--two { grid-template-columns: minmax(0, 1fr); }
	.kc-pp__main { min-height: 0; padding: 12px; }
	.kc-pp__main img { max-height: 220px; }
	.kc-pp__thumbs a { flex-basis: 56px; height: 56px; }
	.kc-pp__title { font-size: 26px; }
	.kc-spec { min-height: 72px; }
	.kc-spec__v { font-size: 20px; }
	.kc-buy { padding: 16px 14px; }
	.kc-stock { grid-template-columns: minmax(0, 1fr); }
	.kc-buy__now { font-size: 26px; }
	.kc-buy__total { margin-left: 0; }
	.kc-buy__btns { grid-template-columns: minmax(0, 1fr); }
	.kc-pp__terms { grid-template-columns: minmax(0, 1fr); }
	.kc-install .kc-btn { flex: 1 1 auto; }
	.kc-similar__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.kc-pcard { padding: 10px; }
	.kc-pcard__img { height: 120px; }
	.kc-vmodal { padding: 10px; }
	.kc-vmodal__close { right: 10px; top: 10px; }
}

@media (max-width: 380px) {
	.kc-vgrid--3,
	.kc-vgrid--4,
	.kc-vgrid--5 { grid-template-columns: minmax(0, 1fr); }
	.kc-specs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
	.kc-page *,
	.kc-pp * {
		transition: none !important;
	}
}

/* ==========================================================================
   Макет v2: головна - увесь перший екран без прокрутки.
   Розміри від --u (kc_layout.css): 1 піксель макета 1672×941.
   ========================================================================== */

.kc-page.kc-home {
	display: flex;
	flex-direction: column;
	gap: max(20px, calc(22 * var(--u, 1px)));
	margin-top: max(12px, calc(16 * var(--u, 1px)));
}

.kc-page.kc-home > :not(:first-child) {
	margin-top: 0;
}

.kc-home .kc-home__top {
	grid-template-columns: minmax(0, 598fr) minmax(0, 881fr);
	gap: calc(40 * var(--u, 1px));
	align-items: stretch;
}

.kc-home--nopick .kc-home__top {
	grid-template-columns: minmax(0, 1fr);
}

.kc-home__pick {
	min-width: 0;
}

.kc-home__side {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
	gap: calc(8 * var(--u, 1px));
	min-width: 0;
}

.kc-home .kc-hstock {
	align-items: center;
	gap: calc(26 * var(--u, 1px));
	padding: calc(16 * var(--u, 1px)) calc(26 * var(--u, 1px));
	border-width: 2px;
	border-radius: calc(4 * var(--u, 1px));
}

.kc-home .kc-hstock__ico {
	flex-basis: calc(100 * var(--u, 1px));
	width: calc(100 * var(--u, 1px));
	height: calc(100 * var(--u, 1px));
}

.kc-home .kc-hstock__ico .kc-ico {
	width: 46%;
	height: 46%;
}

.kc-home .kc-hstock__t {
	margin-bottom: calc(10 * var(--u, 1px)) !important;
	font-size: max(16px, calc(28 * var(--u, 1px)));
}

.kc-home .kc-hstock p {
	font-size: max(12px, calc(15.5 * var(--u, 1px)));
	line-height: 1.4;
}

.kc-home .kc-hstock p + p {
	margin-top: calc(6 * var(--u, 1px)) !important;
}

.kc-home .kc-ptiles {
	grid-template-rows: minmax(0, 1fr) minmax(0, 1.2fr);
	gap: calc(8 * var(--u, 1px)) calc(12 * var(--u, 1px));
	min-height: 0;
}

.kc-home .kc-ptile {
	min-height: calc(110 * var(--u, 1px));
	border-radius: calc(6 * var(--u, 1px));
}

.kc-home .kc-ptile__cap {
	left: calc(18 * var(--u, 1px));
	bottom: calc(12 * var(--u, 1px));
	gap: calc(10 * var(--u, 1px));
	font-size: max(13px, calc(24 * var(--u, 1px)));
}

.kc-home .kc-ptile__cap .kc-ico {
	width: 1.1em;
	height: 1.1em;
}

.kc-home .kc-trust {
	margin: 0;
}

@media (max-width: 991px) {
	.kc-page.kc-home {
		gap: 12px;
		margin-top: 12px;
	}

	.kc-home .kc-home__top {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}

	.kc-home .kc-hstock {
		gap: 12px;
		padding: 12px 14px;
	}

	.kc-home .kc-hstock__ico {
		flex-basis: 48px;
		width: 48px;
		height: 48px;
	}

	.kc-home .kc-hstock__t {
		margin-bottom: 4px !important;
		font-size: 17px;
	}

	.kc-home .kc-hstock p {
		font-size: 13px;
	}

	.kc-home .kc-ptiles {
		grid-template-rows: none;
		gap: 8px;
	}

	.kc-home .kc-ptile {
		min-height: 96px;
	}

	.kc-home .kc-ptile__cap {
		left: 10px;
		bottom: 8px;
		font-size: 15px;
	}
}

/* підбір на головній трохи нижчий, щоб рядок відгуків влазив і на 1366×768 */
@media (min-width: 992px) {
	.kc-home .kp--wide .kp-cat {
		height: calc(168 * var(--u, 1px));
	}

	.kc-home .kp--wide .kp-seg__btn {
		height: calc(47 * var(--u, 1px));
	}

	.kc-home .kp--wide .kp-switch {
		margin: calc(10 * var(--u, 1px)) 0 calc(9 * var(--u, 1px));
	}

	.kc-home .kp--wide .kp-f,
	.kc-home .kp--wide .kp-go {
		height: calc(53 * var(--u, 1px));
	}
}

@media (max-width: 991px) {
	.kc-home .kc-home__top {
		gap: 26px;
	}
}

/* ==========================================================================
   Макет v2: категорія / результати - перший екран
   Ліва колонка ділиться на два стовпці: [підбір + відео + статті] | [професійні рішення].
   ПК: 50% ширини поруч із товарами; телефон: на всю ширину над товарами.
   ========================================================================== */

/* макет v3: модуль підбору (той самий, що на головній) - 1/3 екрана, товари - 2/3 */
@media (min-width: 992px) {
	.row > #column-left:has(.kp--side) {
		flex: 0 0 33.3333%;
		max-width: 33.3333%;
	}

	.row:has(> #column-left .kp--side) > #content,
	.row:has(> #column-left .kp--side) > .col-lg-9,
	.row:has(> #column-left .kp--side) > .col-sm-9 {
		flex: 0 0 66.6667%;
		max-width: 66.6667%;
	}

	#column-left .kc-sol__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

#column-left > .kc-sol,
#column-left > .kc-kbc {
	margin: 12px 0 0;
}

/* телефон: спершу підбір, потім товари, а відео / статті / рішення - після товарів */
@media (max-width: 991px) {
	.row > #column-left:has(.kp--side) {
		display: contents;
	}

	.row > #column-left:has(.kp--side) > * {
		flex: 0 0 100%;
		order: 3;
		max-width: 100%;
		padding-right: 15px;
		padding-left: 15px;
	}

	.row > #column-left:has(.kp--side) > .kp--side {
		order: 1;
		margin-bottom: 12px;
	}

	.row:has(> #column-left .kp--side) > #content,
	.row:has(> #column-left .kp--side) > .col-lg-9,
	.row:has(> #column-left .kp--side) > .col-sm-9 {
		order: 2;
	}
}

.kc-sol {
	padding: 12px 10px;
	border: 1px solid #ececf2;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
}

.kc-sol .kc-block__head {
	margin-bottom: 10px;
}

.kc-sol__t {
	font-family: var(--kp-cond);
	font-size: 19px;
	font-weight: 700;
	text-transform: uppercase;
}

.kc-sol .kc-link {
	font-size: 13px;
}

.kc-sol__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 8px;
}

.kc-soltile {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
	color: #111 !important;
}

.kc-soltile__img {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 9;
	border-radius: 4px;
	background: radial-gradient(circle at 50% 40%, #3a3a46 0%, #121218 70%);
	color: #fff;
	transition: filter .15s;
}

.kc-soltile:hover .kc-soltile__img {
	filter: brightness(1.25);
}

.kc-soltile__img .kc-ico {
	width: 40%;
	max-width: 56px;
	height: auto;
	aspect-ratio: 1;
	stroke-width: 1.4;
}

.kc-soltile__t {
	font-family: var(--kp-cond);
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
}

.kc-soltile:hover .kc-soltile__t {
	color: var(--kp-indigo);
}

/* колонка «Відео / Статті» компактніше */
#column-left .kc-kbc__box {
	padding: 10px;
}

@media (max-width: 767px) {
	.kc-sol {
		padding: 8px 6px;
	}

	.kc-sol .kc-block__head {
		flex-wrap: wrap;
	}

	.kc-sol__t {
		font-size: 15px;
	}

	.kc-sol .kc-link {
		display: none;
	}

	.kc-sol__grid {
		gap: 8px 6px;
	}

	.kc-soltile__t {
		font-size: 10px;
	}

	#column-left .kc-kbc__box {
		padding: 8px 6px;
	}
}

/* відео і статті в лівому стовпці - дрібніше, як на макеті */
#column-left .kc-kbc__head {
	gap: 8px;
	font-size: 15px;
	text-transform: uppercase;
}

#column-left .kc-kbc__head .kc-h3__ico {
	width: 26px;
	height: 26px;
}

#column-left .kc-kbc__list a {
	gap: 8px;
	padding: 6px 0;
	font-size: 13px;
	line-height: 1.3;
}

#column-left .kc-kbc .kc-vcard__t,
#column-left .kc-kbc__more {
	font-size: 12.5px;
}

@media (max-width: 991px) {
	#column-left .kc-kbc {
		gap: 8px;
	}

	#column-left .kc-kbc__box {
		gap: 6px;
	}

	#column-left .kc-kbc__head {
		font-size: 13px;
	}

	#column-left .kc-kbc__head .kc-h3__ico {
		width: 22px;
		height: 22px;
	}

	#column-left .kc-kbc__list a {
		padding: 5px 0;
		font-size: 11.5px;
	}

	#column-left .kc-kbc__list .kc-ico {
		width: 15px;
		height: 15px;
	}

	#column-left .kc-kbc .kc-vcard__t,
	#column-left .kc-kbc__more {
		font-size: 11.5px;
	}

	#column-left .kc-vcard__play,
	#column-left .kc-vcard__play .kc-ico {
		width: 36px;
		height: 36px;
	}

	#column-left .kc-vcard__play {
		margin: -18px 0 0 -18px;
	}
}

/* ==========================================================================
   Макет v2: сторінка послуги - великий заголовок, фото праворуч,
   три рядки «іконка / назва / текст / Детальніше», фото робіт, відео,
   рекомендовані рішення в червоній рамці.
   ========================================================================== */

.kc-sv2__hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 38%);
	grid-template-areas:
		"intro art"
		"rows art";
	column-gap: 12px;
	align-items: start;
}

.kc-sv2__intro {
	grid-area: intro;
	position: relative;
	z-index: 1;
}

.kc-sv2__art {
	grid-area: art;
	align-self: stretch;
	position: relative;
	min-height: 260px;
	margin: -8px 0 0;
}

.kc-sv2__art img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0 14px 14px 0;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 30%), linear-gradient(0deg, transparent 0, #000 25%);
	-webkit-mask-composite: source-in;
	mask-image: linear-gradient(90deg, transparent 0, #000 30%), linear-gradient(0deg, transparent 0, #000 25%);
	mask-composite: intersect;
}

.kc-sv2__ring {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: min(100%, 340px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, #f1effa 0%, #f1effa 55%, rgba(241, 239, 250, 0) 72%);
	color: var(--kp-indigo);
}

.kc-sv2__ring .kc-ico {
	width: 46%;
	height: 46%;
	stroke-width: 1.2;
}

.kc-sv2__title {
	font-family: var(--kp-cond);
	font-size: clamp(36px, 4.6vw, 80px);
	font-weight: 700;
	line-height: .95;
	letter-spacing: -.01em;
	text-transform: uppercase;
	color: #0b0b0f;
}

.kc-sv2__lead {
	max-width: 620px;
	margin-top: 14px !important;
	font-size: 17px;
	line-height: 1.5;
	color: #1c1b2b;
}

.kc-sv2__rows {
	grid-area: rows;
	position: relative;
	z-index: 1;
	margin-top: 18px;
}

.kc-sv2__row {
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	padding: 14px 0;
	border-bottom: 1px solid #e3e3ea;
	color: #111 !important;
}

.kc-sv2__ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 74px;
	height: 74px;
	border: 1px solid #e6e6ee;
	border-radius: 10px;
	background: #fff;
	color: #1a1580;
	box-shadow: 0 3px 10px rgba(0, 0, 0, .06);
}

.kc-sv2__ico .kc-ico {
	width: 44px;
	height: 44px;
	stroke-width: 1.7;
}

.kc-sv2__txt {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.kc-sv2__txt b {
	font-family: var(--kp-cond);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
}

.kc-sv2__txt > span {
	font-size: 15px;
	line-height: 1.45;
	color: #2c2944;
}

.kc-sv2__more {
	display: flex;
	align-items: center;
	gap: 8px;
	align-self: end;
	color: #1a1580;
	font-weight: 700;
	white-space: nowrap;
}

.kc-sv2__row:hover .kc-sv2__more,
.kc-sv2__row:hover b {
	color: var(--kp-indigo);
}

.kc-sv2__h {
	font-family: var(--kp-cond);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
	color: #0b0b0f;
}

.kc-sv2__block > .kc-sv2__h {
	margin-bottom: 12px !important;
}

.kc-sv2__photos {
	grid-auto-columns: calc((100% - 3 * 14px) / 4);
	gap: 14px;
}

.kc-sv2__photo {
	display: block;
	overflow: hidden;
	aspect-ratio: 3 / 2;
	border-radius: 10px;
	background: #1b1b24;
}

.kc-sv2__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kc-sv2__video {
	display: grid;
	grid-template-columns: minmax(0, 1.75fr) minmax(0, 1fr);
	gap: 22px;
	align-items: start;
}

.kc-sv2__vmain .kc-vcard__img {
	border-radius: 12px;
}

.kc-sv2__vlist {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.kc-sv2__vitem {
	display: grid !important;
	grid-template-columns: 110px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	text-align: left;
}

.kc-sv2__vitem .kc-vcard__img {
	aspect-ratio: 16 / 10;
	border-radius: 8px;
}

.kc-sv2__vitem .kc-vcard__play,
.kc-sv2__vitem .kc-vcard__play .kc-ico {
	width: 34px;
	height: 34px;
}

.kc-sv2__vitem .kc-vcard__play {
	margin: -17px 0 0 -17px;
}

.kc-sv2__vt {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.kc-sv2__vt .kc-vcard__t {
	margin: 0;
	font-size: 15px;
}

.kc-sv2__vt small {
	color: #555;
	font-size: 14px;
}

.kc-sv2__reco {
	padding: 18px 16px 16px;
	border: 2px solid var(--kp-red, #e11d2a);
	border-radius: 12px;
}

.kc-sv2__reco .kc-block__head {
	margin-bottom: 14px;
}

.kc-sv2__reco .kc-sv2__h {
	font-size: 28px;
}

.kc-sv2__pick {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--kp-red, #e11d2a) !important;
	font-weight: 500;
}

.kc-sv2__rgrid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
}

.kc-sv2__ritem {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px;
	border: 1px solid #ececf2;
	border-radius: 10px;
	background: #fff;
	color: #111 !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .05);
}

.kc-sv2__rico {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 110px;
	border-radius: 8px;
	background: radial-gradient(circle at 50% 45%, #f4f4f8 0%, #fff 70%);
	color: #111;
}

.kc-sv2__rico .kc-ico {
	width: 72px;
	height: 72px;
	stroke-width: 1.3;
}

.kc-sv2__ritem b {
	font-family: var(--kp-cond);
	font-size: 20px;
	line-height: 1.1;
	text-transform: uppercase;
}

.kc-sv2__ritem small {
	flex: 1 1 auto;
	font-size: 13px;
	line-height: 1.45;
	color: #333;
}

.kc-sv2__rgo {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	border: 1.5px solid var(--kp-red, #e11d2a);
	border-radius: 6px;
	color: var(--kp-red, #e11d2a);
	font-weight: 700;
	transition: background-color .15s, color .15s;
}

.kc-sv2__ritem:hover .kc-sv2__rgo {
	background: var(--kp-red, #e11d2a);
	color: #fff;
}

@media (max-width: 1199px) {
	.kc-sv2__rgrid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.kc-sv2__hero {
		grid-template-columns: minmax(0, 1fr) 34%;
		grid-template-areas:
			"intro art"
			"rows rows";
	}

	.kc-sv2__art {
		min-height: 104px;
		margin: 0;
	}

	.kc-sv2__ring {
		width: 100%;
	}

	.kc-sv2__title {
		font-size: 34px;
	}

	.kc-sv2__lead {
		margin-top: 8px !important;
		font-size: 14px;
	}

	.kc-sv2__rows {
		margin-top: 6px;
	}

	.kc-sv2__row {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 4px 12px;
		padding: 10px 0;
	}

	.kc-sv2__ico {
		grid-row: 1 / span 2;
		width: 52px;
		height: 52px;
	}

	.kc-sv2__ico .kc-ico {
		width: 32px;
		height: 32px;
	}

	.kc-sv2__txt b {
		font-size: 17px;
	}

	.kc-sv2__txt > span {
		font-size: 13px;
		line-height: 1.35;
	}

	.kc-sv2__more {
		grid-column: 2;
		justify-self: end;
		font-size: 14px;
	}

	.kc-sv2__h,
	.kc-sv2__reco .kc-sv2__h {
		font-size: 22px;
	}

	.kc-sv2__photos {
		grid-auto-columns: 46%;
		gap: 8px;
	}

	.kc-sv2__video {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}

	.kc-sv2__vitem {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.kc-sv2__reco {
		padding: 12px 10px;
	}

	.kc-sv2__rgrid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.kc-sv2__rico {
		height: 80px;
	}

	.kc-sv2__ritem b {
		font-size: 16px;
	}

	.kc-sv2__ritem small {
		font-size: 12px;
	}
}

/* ==========================================================================
   Макет v2: картка товару - ціна і кнопки на першому екрані
   ========================================================================== */

.kc-pp .kc-pp__grid {
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 24px;
}

.kc-pp .kc-pp__info {
	gap: 12px;
}

.kc-pp__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		"brand acts"
		"title acts"
		"meta meta";
	gap: 4px 16px;
	align-items: start;
}

.kc-pp__head .kc-pp__top {
	display: contents;
}

.kc-pp__head .kc-pp__brand {
	grid-area: brand;
}

.kc-pp__head .kc-pp__title {
	grid-area: title;
	font-size: 32px;
}

.kc-pp__acts {
	grid-area: acts;
	display: flex;
	gap: 8px;
}

.kc-pp__act {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	width: 88px;
	height: 68px;
	padding: 4px;
	border: 1px solid var(--kp-line);
	border-radius: 10px;
	background: #fff;
	color: #1a1733;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.1;
	cursor: pointer;
	transition: border-color .15s, color .15s;
}

.kc-pp__act .kc-ico {
	width: 24px;
	height: 24px;
}

.kc-pp__act:hover,
.kc-pp__act.is-on {
	border-color: var(--kp-indigo);
	color: var(--kp-indigo);
}

.kc-pp__act.is-on .kc-ico {
	fill: currentColor;
}

.kc-pp__meta {
	grid-area: meta;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;
}

.kc-pp__meta:empty {
	display: none;
}

.kc-pp__meta .kc-pp__code {
	margin-left: auto;
}

.kc-pp__rating {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--kp-blue);
	font-size: 14px;
	font-weight: 500;
}

.kc-pp__rating .kc-stars {
	font-size: 18px;
}

.kc-pp .kc-spec {
	min-height: 70px;
	padding: 8px 6px;
}

.kc-pp .kc-spec__v {
	font-size: 22px;
}

.kc-pp__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.kc-tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 30px;
	padding: 0 14px;
	border: 1px solid var(--kp-line);
	border-radius: 999px;
	background: #fff;
	color: #1a1733 !important;
	font-size: 13px;
	font-weight: 700;
}

.kc-tag .kc-ico {
	width: 16px;
	height: 16px;
}

.kc-tag--used {
	border-color: var(--kp-yellow);
	background: var(--kp-yellow);
}

.kc-tag--ok {
	border-color: #cfe9d8;
	background: #eef8f2;
	color: var(--kp-green) !important;
}

.kc-pp .kc-buy {
	gap: 12px;
	padding: 14px;
}

.kc-buy__top {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
}

.kc-buy__top.has-sizes {
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
}

.kc-buy__top.has-sizes .kc-stock {
	grid-template-columns: minmax(0, 1fr);
	gap: 6px;
}

.kc-buy__top.has-sizes .kc-stock__box {
	padding: 8px 10px;
}

.kc-sizes {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--kp-line);
	border-radius: 12px;
	background: #fff;
}

.kc-sizes__t {
	color: #333;
	font-size: 13px;
	font-weight: 500;
}

.kc-sizes select {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	padding: 4px 24px 4px 0;
	border: 0;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231f5bd8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 4px center / 14px 9px;
	color: #1f5bd8;
	font-size: 17px;
	font-weight: 700;
	cursor: pointer;
	outline: none;
}

.kc-pp .kc-buy__row {
	flex-wrap: nowrap;
	gap: 12px;
}

.kc-pp .kc-buy__row.is-noprice .kc-buy__price,
.kc-pp .kc-buy__row.is-noprice .kc-qty {
	display: none;
}

.kc-pp .kc-buy__total {
	display: none;
}

.kc-pp .kc-buy__row .kc-buy__btns {
	flex: 1 1 auto;
	min-width: 0;
}

.kc-pp .kc-buy__btns .kc-btn {
	min-height: 50px;
	padding: 0 10px;
	white-space: nowrap;
}

.kc-toast {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 2000;
	max-width: min(520px, calc(100% - 24px));
	padding: 12px 18px;
	border-radius: 10px;
	background: #111;
	color: #fff;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .3);
	font-size: 14px;
	transform: translateX(-50%);
}

.kc-toast a {
	color: #ffd35c;
	text-decoration: underline;
}

@media (min-width: 1200px) {
	.kc-pp .kc-specs--6 {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.kc-pp .kc-specs--6 .kc-spec__l {
		font-size: 11.5px;
		line-height: 1.15;
	}
}

@media (max-width: 1199px) {
	.kc-pp .kc-buy__row {
		flex-wrap: wrap;
	}

	.kc-pp .kc-buy__row .kc-buy__btns {
		flex-basis: 100%;
	}
}

@media (max-width: 991px) {
	.kc-pp .kc-pp__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}

	/* на телефоні: спершу назва, потім фото, потім решта - як на макеті */
	.kc-pp .kc-pp__info {
		display: contents;
	}

	.kc-pp__head {
		order: -1;
	}

	.kc-pp .kc-pp__media {
		position: static;
	}

	.kc-pp .kc-pp__main {
		min-height: 0;
		padding: 10px;
	}

	.kc-pp .kc-pp__main img {
		max-height: 250px;
	}

	.kc-pp .kc-pp__thumbs a {
		flex-basis: 48px;
		height: 48px;
	}
}

@media (max-width: 767px) {
	.kc-pp__head {
		gap: 2px 10px;
	}

	.kc-pp__head .kc-pp__title {
		font-size: 24px;
	}

	.kc-pp__act {
		width: 64px;
		height: 56px;
		font-size: 10.5px;
	}

	.kc-pp .kc-spec {
		min-height: 58px;
	}

	.kc-pp .kc-spec__v {
		font-size: 19px;
	}

	.kc-buy__top.has-sizes {
		grid-template-columns: minmax(0, 1fr);
	}

	.kc-pp .kc-buy {
		padding: 10px;
	}

	.kc-pp .kc-buy__now {
		font-size: 24px;
	}

	.kc-pp .kc-buy__btns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kc-pp .kc-buy__btns .kc-btn {
		min-height: 46px;
		font-size: 14px;
	}
}

/* склади і «Інші розміри» - одним рядком по три */
.kc-buy__top.has-sizes {
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
}

.kc-buy__top.has-sizes .kc-stock {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kc-pp .kc-stock legend {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

.kc-buy__top.has-sizes .kc-stock__box {
	grid-template-columns: 28px minmax(0, 1fr);
	gap: 1px 8px;
}

.kc-buy__top.has-sizes .kc-stock__ico {
	width: 28px;
	height: 28px;
}

.kc-buy__top.has-sizes .kc-stock__ico .kc-ico {
	width: 16px;
	height: 16px;
}

.kc-buy__top.has-sizes .kc-stock__txt b {
	font-size: 14px;
}

.kc-buy__top.has-sizes .kc-stock__txt small {
	font-size: 11.5px;
}

.kc-sizes select {
	font-size: 15px;
}

@media (max-width: 991px) {
	.kc-pp .kc-pp__main img {
		max-height: 190px;
	}
}

@media (max-width: 767px) {
	.kc-pp .kc-pp__thumbs {
		display: none;
	}

	.kc-buy__top.has-sizes {
		grid-template-columns: minmax(0, 1fr);
	}
}

.kc-pp .kc-pp__gallery,
.kc-pp .kc-pp__media {
	margin-bottom: 0;
}

/* ==========================================================================
   Макет v2: відеогід і база знань - без великих банерів, одразу до відео
   ========================================================================== */

.kc-vg2__head {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 4px 18px;
}

.kc-vg2__title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--kp-cond);
	font-size: 34px;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
	color: #0b0b0f;
}

.kc-vg2__title .kc-ico {
	width: 34px;
	height: 34px;
	color: var(--kp-red, #e11d2a);
}

.kc-vg2__lead {
	flex: 1 1 360px;
	color: #444;
	font-size: 14px;
}

.kc-vg2__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.kc-page .kc-vg2__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 40px;
	padding: 0 14px;
	border: 1px solid var(--kp-line);
	border-radius: 999px;
	background: #fff;
	color: #111;
	font-weight: 700;
	transition: border-color .15s, color .15s;
}

.kc-vg2__chip .kc-ico {
	width: 18px;
	height: 18px;
	color: var(--kp-indigo);
}

.kc-vg2__chip small {
	min-width: 22px;
	padding: 1px 6px;
	border-radius: 999px;
	background: var(--kp-soft);
	color: var(--kp-indigo);
	font-size: 12px;
	text-align: center;
}

.kc-page .kc-vg2__chip:hover {
	border-color: var(--kp-indigo);
	color: var(--kp-indigo);
}

.kc-vg.kc-page > :not(:first-child) {
	margin-top: 18px;
}

.kc-kb__title--side {
	margin-bottom: 10px !important;
	padding: 0 4px;
	font-size: 34px !important;
}

@media (max-width: 991px) {
	.kc-kb__title--side {
		font-size: 26px !important;
	}
}

@media (max-width: 767px) {
	.kc-vg2__title {
		font-size: 26px;
	}

	.kc-vg2__lead {
		font-size: 13px;
	}

	.kc-vg2__chips {
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.kc-page .kc-vg2__chip {
		flex: 0 0 auto;
		height: 36px;
		padding: 0 12px;
		font-size: 13px;
	}
}

/* невисокі екрани: послуга, товар, відео - щільніше, щоб головне було на першому екрані */
@media (min-width: 992px) and (max-height: 760px) {
	.kc-sv2__title {
		font-size: min(4.6vw, 9vh);
	}

	.kc-sv2__lead {
		margin-top: 8px !important;
		font-size: 15px;
	}

	.kc-sv2__rows {
		margin-top: 8px;
	}

	.kc-sv2__row {
		grid-template-columns: 60px minmax(0, 1fr) auto;
		padding: 9px 0;
	}

	.kc-sv2__ico {
		width: 60px;
		height: 60px;
	}

	.kc-sv2__ico .kc-ico {
		width: 36px;
		height: 36px;
	}

	.kc-sv2__txt b {
		font-size: 19px;
	}

	.kc-sv2__txt > span {
		font-size: 14px;
		line-height: 1.35;
	}

	.kc-pp .kc-pp__info,
	.kc-pp .kc-buy {
		gap: 9px;
	}

	.kc-pp .kc-spec {
		min-height: 60px;
		padding: 6px;
	}

	.kc-pp__act {
		height: 58px;
	}

	.kc-pp__head .kc-pp__title {
		font-size: 28px;
	}
}

@media (max-width: 767px) {
	.kc-vg2__lead {
		display: none;
	}
}

@media (max-width: 767px) and (max-height: 620px) {
	.kc-pp .kc-pp__main img {
		max-height: 140px;
	}

	.kc-pp__head .kc-pp__title {
		font-size: 21px;
	}

	.kc-vg2__title {
		font-size: 22px;
	}

	.kc-vg.kc-page > :not(:first-child) {
		margin-top: 10px;
	}

	.kc-page.kc-vg {
		margin-top: 0;
	}

	.kc-page .kc-vg2__chip {
		height: 30px;
		font-size: 12px;
	}

	.kc-vg .kc-block__head {
		margin-bottom: 8px;
	}

	.kc-vg .kc-h2 {
		font-size: 18px;
	}

	.kc-vg .kc-vgrid {
		gap: 8px;
	}

	.kc-vg .kc-vcard__t {
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
		font-size: 13px;
	}
}

/* Головна на телефоні: шапка, модуль підбору і підвал (відгуки, фото, контакти) -
   підбір у повний розмір, підвал - після прокрутки (побажання замовника 30.09) */
@media (max-width: 767px) {
	.kc-home .kc-home__side {
		display: none;
	}

	.kc-home .kc-home__top {
		gap: 0;
	}
}

/* ==========================================================================
   Різноширокі шини / диски: пари і таблиця (макет 31.5)
   ========================================================================== */

.kc-prs {
	margin-top: 0;
}

.kc-prs.kc-page > :not(:first-child) {
	margin-top: 16px;
}

.kc-prs__h1 {
	font-family: var(--kp-cond);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.1;
	color: #0b0b0f;
}

.kc-prs__lead {
	color: #333;
	font-size: 15px;
}

.kc-prs__sizes {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.kc-prs__sizes span {
	display: flex;
	flex-direction: column;
	padding: 8px 16px;
	border: 1.5px solid #6b5fc0;
	border-radius: 6px;
	background: #fff;
}

.kc-prs__sizes small {
	color: #666;
	font-size: 12px;
	font-style: italic;
}

.kc-prs__sizes b {
	color: #1a1580;
	font-family: var(--kp-cond);
	font-size: 22px;
}

/* ----- таблиця ----- */

.kc-stag {
	border: 1px solid #d7e3f2;
	border-radius: 10px;
	background: #fff;
}

.kc-page .kc-stag__toggle {
	display: block;
	width: 100%;
	padding: 12px 16px;
	border: 0;
	border-radius: 10px;
	background: linear-gradient(180deg, #eaf3fd, #d6e7fa);
	color: #0b2c6b;
	font-family: var(--kp-cond);
	font-size: 18px;
	font-weight: 700;
	text-align: left;
	cursor: pointer;
}

.kc-stag.is-open .kc-page .kc-stag__toggle,
.kc-stag.is-open .kc-stag__toggle {
	border-radius: 10px 10px 0 0;
}

.kc-stag__body {
	padding: 10px;
}

.kc-stag__scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.kc-stag__tbl {
	width: 100%;
	min-width: 860px;
	margin-bottom: 8px;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid #d7e3f2;
	border-radius: 8px;
	overflow: hidden;
	font-size: 13px;
}

.kc-stag__tbl th {
	padding: 6px 8px;
	background: linear-gradient(180deg, #dcecfb, #c7e0f8);
	color: #0b2c6b;
	font-weight: 700;
	line-height: 1.15;
	text-align: center;
	vertical-align: middle;
}

.kc-stag__tbl th small {
	display: block;
	font-size: 10px;
	font-weight: 400;
}

.kc-stag__tbl th.kc-stag__r {
	background: #0b2c6b;
	color: #fff;
}

.kc-stag__r a {
	color: #fff !important;
	font-family: var(--kp-cond);
	font-size: 18px;
	text-decoration: none;
}

.kc-stag__r b {
	margin-right: 8px;
	font-size: 24px;
}

.kc-stag__tbl td {
	padding: 4px 6px;
	border-top: 1px solid #e3ecf7;
	text-align: center;
	vertical-align: middle;
}

.kc-stag__tbl tbody tr:nth-child(even) td {
	background: #f5f9fe;
}

.kc-stag__tbl tr.is-active td {
	background: #fff4cc !important;
}

.kc-stag__sz {
	font-family: var(--kp-cond);
	font-size: 19px;
	font-weight: 700;
	white-space: nowrap;
}

.kc-stag__d b,
.kc-stag__d small {
	display: block;
	line-height: 1.15;
	white-space: nowrap;
}

.kc-stag__d b {
	font-size: 15px;
}

.kc-stag__d small {
	color: #444;
	font-size: 11px;
}

.kc-stag__car {
	font-size: 12.5px;
	text-align: left !important;
}

.kc-stag__tbl tr.is-check .kc-stag__sz,
.kc-stag__warn,
.kc-stag__tbl tr.is-check .kc-stag__d {
	color: #d81b1b;
	font-weight: 700;
}

.kc-page .kc-stag__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 54px;
	height: 34px;
	padding: 0 4px;
	border-radius: 4px;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.05;
	text-align: center;
	white-space: normal;
	transition: filter .15s;
}

.kc-page .kc-stag__btn:hover {
	color: #fff;
	filter: brightness(1.12);
}

.kc-stag__btn--tn { background: #13863a; }
.kc-stag__btn--tu { background: #ea5b12; }
.kc-stag__btn--dn { background: #1f4fd8; }
.kc-stag__btn--du { background: #d81b1b; }

.kc-stag__note {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-top: 8px !important;
	padding: 10px 12px;
	border-radius: 8px;
	background: #fdeeee;
	color: #333;
	font-size: 13px;
	line-height: 1.45;
}

.kc-stag__note .kc-ico {
	flex: 0 0 auto;
	width: 26px;
	height: 26px;
	color: #d81b1b;
}

.kc-stag__note b {
	color: #b31212;
}

/* ----- пари ----- */

.kc-prs__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 16px;
}

.kc-prs__sort {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 14px;
}

.kc-prs__sort select {
	height: 36px;
	padding: 0 8px;
	border: 1px solid #c9c4e6;
	border-radius: 6px;
	background: #fff;
}

.kc-prs__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.kc-pair {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 12px;
	border: 1.5px solid #d9d4ee;
	border-radius: 10px;
	background: #fff;
}

.kc-pair__t {
	font-family: var(--kp-cond);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.15;
	text-align: center;
	color: #1a1580;
}

.kc-pair__sides {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.kc-page .kc-pair__side {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	padding: 8px;
	border-radius: 8px;
	background: #f7f6fc;
	color: #111;
	text-align: center;
}

.kc-pair__side small {
	color: #666;
	font-size: 12px;
	font-style: italic;
}

.kc-pair__side img {
	width: 120px;
	height: 120px;
	object-fit: contain;
}

.kc-pair__name {
	font-size: 13px;
	line-height: 1.3;
}

.kc-pair__price {
	font-size: 18px;
}

.kc-pair__price small {
	color: #666;
	font-size: 12px;
	font-weight: 400;
}

.kc-pair__stock {
	color: #13863a;
	font-size: 12px;
}

.kc-pair__stock.is-low {
	color: #b36b00;
}

.kc-pair__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.kc-pair__foot span {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.kc-pair__foot small {
	color: #666;
	font-size: 12px;
}

.kc-pair__foot b {
	font-size: 22px;
}

.kc-prs__info {
	padding: 16px;
	border-radius: 10px;
	background: #f4f6fb;
}

.kc-prs__info h2 {
	margin: 0 0 6px !important;
	font-family: var(--kp-cond);
	font-size: 22px;
	font-weight: 700;
}

.kc-prs__info h2 + p,
.kc-prs__info p + p {
	margin-top: 6px !important;
}

.kc-prs__info p + h2 {
	margin-top: 14px !important;
}

.kc-prs__info p {
	font-size: 14.5px;
	line-height: 1.55;
}

.kc-prs__small {
	color: #555;
	font-size: 13px !important;
}

@media (max-width: 767px) {
	.kc-prs__h1 {
		font-size: 22px;
	}

	.kc-prs__list {
		grid-template-columns: minmax(0, 1fr);
	}

	.kc-pair__side img {
		width: 90px;
		height: 90px;
	}

	.kc-page .kc-stag__toggle {
		font-size: 16px;
	}
}

/* ==========================================================================
   Картка товару: червоний текст «Ціни по складу…» (html.118 у content_top)
   і примітка б/в - поруч із фото, а не над ним (побажання замовника 30.09):
   на телефоні колесо на першому екрані і більше, текст - праворуч від нього.
   ========================================================================== */

.kc-pp__ct {
	margin-top: 12px;
	color: #e11d2a;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

/* вміст html-модуля з адмінки має власні inline-стилі (розмір, відступи, по центру) */
.kc-pp__ct .b_html_module,
.kc-pp__ct .b_html_module_body,
.kc-pp__ct p,
.kc-pp__ct span,
.kc-pp__ct strong,
.kc-pp__ct b,
.kc-pp__ct div {
	margin: 0 !important;
	padding: 0;
	font-size: inherit !important;
	line-height: inherit !important;
}

.kc-pp__ct p + p {
	margin-top: .4em !important;
}

.kc-pp__ct .b_html_module_title {
	display: none;
}

.kc-pp__ct .kc-pp__note {
	margin: 0 !important;
	font-weight: 400;
}

/* комп'ютер: фото трохи нижче, щоб і текст під ним був на першому екрані */
@media (min-width: 992px) {
	.kc-pp .kc-pp__media.has-ct .kc-pp__main {
		min-height: 0;
	}

	.kc-pp .kc-pp__media.has-ct .kc-pp__main img {
		max-height: max(220px, min(460px, calc(100vh - 400px)));
	}
}

@media (max-width: 991px) {
	.kc-pp .kc-pp__media.has-ct {
		display: grid;
		grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
		gap: 10px;
		align-items: center;
	}

	.kc-pp .kc-pp__media.has-ct .kc-pp__main {
		aspect-ratio: 1 / 1;
		padding: 4px;
	}

	.kc-pp .kc-pp__media.has-ct .kc-pp__main a {
		width: 100%;
		height: 100%;
	}

	.kc-pp .kc-pp__media.has-ct .kc-pp__main img {
		width: 100%;
		height: 100%;
		max-height: none;
		object-fit: contain;
	}

	.kc-pp__ct {
		margin-top: 0;
		font-size: 13px;
		text-align: left;
	}

	.kc-pp__ct * {
		text-align: left !important;
	}

	.kc-pp__ct .kc-pp__note {
		flex-direction: column;
		gap: 6px;
		padding: 10px;
		font-size: 13px;
	}
}

@media (max-width: 767px) {
	.kc-pp__ct {
		font-size: 11.5px;
		line-height: 1.3;
		letter-spacing: -.01em;
	}

	.kc-pp__ct .kc-pp__note {
		font-size: 12px;
	}
}

@media (max-width: 374px) {
	.kc-pp .kc-pp__media.has-ct {
		grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
		gap: 8px;
	}

	.kc-pp__ct {
		font-size: 10.5px;
	}
}

/* ==========================================================================
   Посадкова сторінка «Різноширокі шини та диски» (/riznoshyroki-shyny-dysky):
   H1 → таблиця → вступ → заклик → розділи → питання-відповіді
   ========================================================================== */

.kc-prs__et {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #555;
	font-size: 13.5px;
}

.kc-prs__et .kc-ico {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	color: var(--kp-indigo);
}

.kc-stl {
	color: #222;
	font-size: 15.5px;
	line-height: 1.55;
}

.kc-stl > * + * {
	margin-top: 22px !important;
}

.kc-stl__intro p + p,
.kc-stl__intro p + .kc-note {
	margin-top: 10px !important;
}

.kc-stl h2 {
	margin: 0 0 10px !important;
	font-family: var(--kp-cond);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.15;
	color: #0b0b0f;
}

.kc-stl__sec p + p,
.kc-stl__sec p + ul,
.kc-stl__sec ul + p,
.kc-stl__sec p + .kc-stl__sizes,
.kc-stl__sec .kc-stl__sizes + p {
	margin-top: 10px !important;
}

.kc-stl__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kc-stl__list li {
	padding: 5px 12px;
	border: 1px solid var(--kp-line);
	border-radius: 999px;
	background: #fff;
	font-size: 14px;
	line-height: 1.35;
}

.kc-stl__sizes {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.kc-page .kc-stl__pair {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	border: 1px solid var(--kp-line-2, #d9dbe7);
	border-radius: 12px;
	background: var(--kp-soft, #f2f1fb);
	color: #111;
	text-decoration: none;
}

.kc-stl__pair span {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.kc-stl__pair b {
	font-size: 18px;
	font-weight: 700;
	white-space: nowrap;
}

.kc-stl__pair small {
	color: #666;
	font-size: 12px;
}

.kc-stl__pair i {
	color: var(--kp-indigo);
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
}

.kc-stl__pair .kc-ico {
	width: 20px;
	height: 20px;
	color: var(--kp-indigo);
}

.kc-page a.kc-stl__pair:hover {
	border-color: var(--kp-indigo);
	color: var(--kp-indigo);
}

.kc-stl__cta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 16px 24px;
	align-items: center;
	padding: 20px 22px;
	border-radius: 14px;
	background: #0b0b0f;
	color: #e9e8f3;
}

.kc-stl .kc-stl__cta h2 {
	margin-bottom: 6px !important;
	color: #fff;
}

.kc-stl__cta p {
	font-size: 15px;
}

.kc-stl__cta-btns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.kc-stl__cta-btns .kc-btn {
	justify-content: center;
	min-height: 48px;
	white-space: nowrap;
}

.kc-stl__faq {
	padding: 18px 20px;
	border-radius: 14px;
	background: #f4f6fb;
}

.kc-stl__qa {
	border-bottom: 1px solid var(--kp-line);
}

.kc-stl__qa:last-child {
	border-bottom: 0;
}

.kc-stl__qa summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 0;
	cursor: pointer;
	list-style: none;
}

.kc-stl__qa summary::-webkit-details-marker {
	display: none;
}

.kc-stl__qa h3 {
	margin: 0 !important;
	font-size: 16.5px;
	font-weight: 700;
	line-height: 1.3;
	color: #111;
}

.kc-stl__qa summary .kc-ico {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	color: var(--kp-indigo);
	transition: transform .2s;
}

.kc-stl__qa[open] summary .kc-ico {
	transform: rotate(45deg);
}

.kc-stl__qa p {
	padding: 0 0 14px;
	color: #333;
}

@media (max-width: 1199px) {
	.kc-stl__cta {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.kc-stl {
		font-size: 15px;
	}

	.kc-stl h2 {
		font-size: 22px;
	}

	.kc-stl__cta {
		padding: 16px;
	}

	.kc-stl__cta-btns .kc-btn {
		padding-left: 8px;
		padding-right: 8px;
		font-size: 14px;
	}

	.kc-page .kc-stl__pair {
		gap: 8px;
		padding: 8px 12px;
	}

	.kc-stl__pair b {
		font-size: 16px;
	}

	.kc-stl__faq {
		padding: 12px 14px;
	}

	.kc-stl__qa h3 {
		font-size: 15px;
	}
}

/* таблиця різношироких розмірів на ноутбуках (1200-1599): вміщується без прокрутки */
@media (min-width: 1200px) and (max-width: 1599px) {
	.kc-stag__tbl {
		min-width: 0;
		font-size: 12px;
	}

	.kc-stag__tbl th,
	.kc-stag__tbl td {
		padding-left: 4px;
		padding-right: 4px;
	}

	.kc-stag__tbl th small {
		font-size: 9px;
	}

	.kc-stag__sz {
		font-size: 16px;
	}

	.kc-stag__d b {
		font-size: 14px;
	}

	.kc-stag__d small {
		font-size: 10px;
	}

	.kc-stag__car {
		font-size: 11.5px;
	}

	.kc-page .kc-stag__btn {
		min-width: 44px;
		height: 32px;
		padding: 0 2px;
		font-size: 10px;
	}

	.kc-stag__r a {
		font-size: 15px;
	}

	.kc-stag__r b {
		margin-right: 4px;
		font-size: 20px;
	}
}

/* посадкова на телефоні (побажання замовника): одразу під заголовком - таблиця, весь опис нижче */
@media (max-width: 767px) {
	.kc-prs--landing {
		display: flex;
		flex-direction: column;
		gap: 16px;
	}

	.kc-prs.kc-prs--landing > *,
	.kc-prs--landing .kc-stl > * {
		margin-top: 0 !important;
	}

	.kc-prs--landing .kc-stl {
		display: contents;
	}

	.kc-prs--landing .kc-stag {
		order: 1;
	}

	.kc-prs--landing .kc-prs__lead {
		order: 2;
	}

	.kc-prs--landing .kc-stl__cta {
		order: 3;
	}

	.kc-prs--landing .kc-stl__intro {
		order: 4;
	}

	.kc-prs--landing .kc-stl__sec {
		order: 5;
	}

	.kc-prs--landing .kc-stl__faq {
		order: 6;
	}
}

/* таблиця різношироких: вписується в ширину екрана (без горизонтальної прокрутки),
   «Збільшити» / дотик по таблиці - на весь екран у натуральному розмірі */
.kc-stag__scroll {
	overflow: hidden;
}

.kc-stag__inner {
	transform-origin: 0 0;
}

.kc-stag__tbl {
	min-width: 0;
}

.kc-stag__scroll.is-fit {
	cursor: zoom-in;
}

.kc-page .kc-stag__zoom {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 40px;
	margin: 6px 0 4px;
	border: 1px solid #b9cdea;
	border-radius: 8px;
	background: #eef5fd;
	color: #0b2c6b;
	font-family: var(--kp-cond);
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
}

.kc-page .kc-stag__zoom[hidden] {
	display: none;
}

.kc-stag__zoom .kc-ico {
	width: 18px;
	height: 18px;
}

html.kc-lb-open,
html.kc-lb-open body {
	overflow: hidden;
}

.kc-stag-lb {
	position: fixed;
	inset: 0;
	z-index: 3000;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	background: #fff;
	font-family: var(--kc-font, Roboto, Arial, sans-serif);
}

.kc-stag-lb__bar {
	position: sticky;
	top: 0;
	left: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: 100vw;
	padding: 8px 12px;
	background: #0b2c6b;
	color: #fff;
	font-size: 15px;
}

.kc-stag-lb__close {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: #0b2c6b;
	font-size: 26px;
	line-height: 40px;
	cursor: pointer;
}

.kc-stag-lb__body {
	display: inline-block;
	padding: 10px;
}

.kc-page.kc-stag-lb {
	margin: 0 !important;
}

.kc-stag-lb > * {
	margin-top: 0 !important;
}

/* ==========================================================================
   Видача різношироких - таблицею, як на біржі (приклад замовника 02.10):
   пара = два рядки одного бренду й моделі (перший і другий розмір), за алфавітом
   ========================================================================== */

.kc-ptab-wrap {
	border: 1px solid #d7e3f2;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
}

.kc-ptab {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	line-height: 1.3;
}

.kc-ptab th {
	padding: 10px 12px;
	background: linear-gradient(180deg, #eaf3fd, #d6e7fa);
	color: #0b2c6b;
	font-size: 13px;
	font-weight: 700;
	text-align: left;
	white-space: nowrap;
}

.kc-ptab td {
	padding: 9px 12px;
	border-top: 1px solid #e3ecf7;
	vertical-align: middle;
}

.kc-ptab__pair + .kc-ptab__pair tr:first-child td,
.kc-ptab thead + .kc-ptab__pair tr:first-child td {
	border-top: 2px solid #c7d8ef;
}

.kc-ptab__pair.is-odd td {
	background: #f7fafe;
}

.kc-ptab__brand {
	font-weight: 700;
	color: #111;
	white-space: nowrap;
}

.kc-ptab__model {
	color: #222;
}

.kc-ptab__name small {
	display: block;
	color: #7a7f8f;
	font-size: 11.5px;
	line-height: 1.2;
}

.kc-page .kc-ptab__name a {
	color: #1f4fd8;
	text-decoration: none;
}

.kc-page .kc-ptab__name a:hover {
	text-decoration: underline;
}

.kc-ptab__stock {
	white-space: nowrap;
	color: #13863a;
	font-weight: 600;
}

.kc-ptab__stock.is-low {
	color: #c45a00;
}

.kc-ptab__price {
	font-weight: 700;
	white-space: nowrap;
}

.kc-ptab__buy {
	width: 1%;
	text-align: center;
	white-space: nowrap;
}

.kc-ptab__buy b {
	display: block;
	margin-bottom: 6px;
	font-size: 17px;
}

.kc-ptab__buy .kc-btn {
	min-height: 40px;
	padding: 6px 14px;
	font-size: 14px;
}

.kc-ptab__buy .kc-ico {
	width: 18px;
	height: 18px;
}

/* телефон: та сама таблиця, без горизонтальної прокрутки -
   бренд і модель заголовком пари, під ним два розміри, внизу комплект */
@media (max-width: 767px) {
	.kc-ptab,
	.kc-ptab tbody,
	.kc-ptab tr,
	.kc-ptab td {
		display: block;
	}

	.kc-ptab thead {
		display: none;
	}

	.kc-ptab__pair {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto auto;
		gap: 0 10px;
		padding: 10px 12px;
		border-top: 2px solid #c7d8ef;
	}

	.kc-ptab__pair:first-of-type {
		border-top: 0;
	}

	.kc-ptab__pair tr {
		display: contents;
	}

	.kc-ptab__pair td {
		padding: 4px 0;
		border: 0 !important;
		background: transparent !important;
	}

	.kc-ptab__brand,
	.kc-ptab__model {
		display: inline !important;
		grid-column: 1 / -1;
		font-size: 16px;
	}

	.kc-ptab__brand {
		grid-row: 1;
	}

	.kc-ptab__model {
		grid-row: 2;
		padding-top: 0 !important;
		color: #555;
		font-size: 14px;
	}

	.kc-ptab__name {
		grid-column: 1;
		font-size: 13.5px;
	}

	.kc-ptab__stock {
		grid-column: 2;
		align-self: center;
		font-size: 12.5px;
	}

	.kc-ptab__price {
		grid-column: 3;
		align-self: center;
		text-align: right;
	}

	.kc-ptab__buy {
		display: flex !important;
		grid-column: 1 / -1;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		order: 10;
		width: auto;
		padding-top: 8px !important;
	}

	.kc-ptab__buy b {
		margin: 0;
	}
}

/* ==========================================================================
   Різноширокі диски: «Подивіться ще» під точними збігами (як на Booking -
   спершу те, що точно під параметри, нижче - та сама модель з іншою шириною / вильотом)
   ========================================================================== */

.kc-prs__h2 {
	margin: 22px 0 10px;
	color: #111;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.25;
}

.kc-prs__alt {
	margin-top: 26px;
}

.kc-prs__alt .kc-prs__h2 {
	margin-top: 0;
}

.kc-prs__alt-text {
	margin: 0 0 12px;
	color: #555;
	font-size: 14px;
	line-height: 1.45;
}

.kc-ptab--alt th {
	background: linear-gradient(180deg, #fff6e6, #ffe9c2);
	color: #6b4300;
}

.kc-ptab-wrap:has(.kc-ptab--alt) {
	border-color: #f1d9a8;
}

.kc-ptab__diff {
	display: block;
	width: max-content;
	margin-top: 4px;
	padding: 1px 7px;
	border-radius: 999px;
	background: #fff1d6;
	color: #8a5a00;
	font-size: 11.5px;
	font-weight: 600;
	line-height: 1.5;
}

@media (max-width: 767px) {
	.kc-prs__h2 {
		font-size: 18px;
	}

	.kc-ptab__diff {
		display: inline-block;
		margin: 0 0 0 6px;
		vertical-align: 1px;
	}
}
