/**
 * Puhastuskeskus — theme styles.
 * Supplements theme.json tokens with component-level polish that's awkward in JSON.
 */

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

:root {
	--pk-radius-sm: 8px;
	--pk-radius-md: 14px;
	--pk-radius-lg: 22px;
	--pk-radius-xl: 32px;
	--pk-radius-pill: 9999px;
	--pk-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--pk-header-h: 80px;
}
@media (max-width: 640px) {
	:root { --pk-header-h: 68px; }
}

html { scroll-behavior: smooth; }

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-x: clip;
}

/* Kill default blockGap between sticky header and first main section */
body > .wp-site-blocks > main,
main#wp--skip-link--target { margin-top: 0 !important; }
main > .pk-hero:first-child { margin-top: 0 !important; }

/* Sticky-footer pattern — body fills viewport, content flex-grows.
   Prevents any white gap below footer regardless of content length. */
html, body { min-height: 100%; }
html { height: 100%; }
body { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
body > .wp-site-blocks { flex: 1 0 auto; display: flex; flex-direction: column; }
body > .wp-site-blocks > footer {
	flex-shrink: 0;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
	padding: 0 !important;
}
body > .wp-site-blocks > main { flex: 1 0 auto; margin-bottom: 0 !important; }
.site-footer { margin: 0 !important; }

/* Header */
.site-header {
	position: sticky;
	top: 0;
	z-index: 40;
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: saturate(160%) blur(14px);
	-webkit-backdrop-filter: saturate(160%) blur(14px);
	border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}
.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(1rem, 3vw, 2.5rem);
}
.site-header__logo {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}
.site-header__logo img {
	display: block;
	height: 48px;
	width: auto;
	object-fit: contain;
}
.site-header__nav {
	display: flex;
	align-items: center;
	gap: clamp(1rem, 2vw, 2rem);
	flex: 1;
	justify-content: center;
}
.site-header__nav a {
	color: var(--wp--preset--color--foreground);
	text-decoration: none;
	font-weight: 500;
	font-size: 0.9375rem;
	position: relative;
	padding: 0.5rem 0;
	transition: color 180ms var(--pk-ease);
}
.site-header__nav a::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: 0;
	height: 2px;
	background: var(--wp--preset--color--accent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 220ms var(--pk-ease);
}
.site-header__nav a:hover { color: var(--wp--preset--color--brand); }
.site-header__nav a:hover::after { transform: scaleX(1); }
.site-header__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.7rem 1.25rem;
	background: var(--wp--preset--color--brand);
	color: #fff !important;
	border-radius: var(--pk-radius-pill);
	text-decoration: none;
	font-weight: 600;
	font-size: 0.9375rem;
	box-shadow: 0 4px 16px rgba(18, 55, 122, 0.22);
	transition: transform 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
	white-space: nowrap;
}
.site-header__cta:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 24px rgba(18, 55, 122, 0.3);
}
.site-header__cta svg { width: 16px; height: 16px; }
/* Language dropdown — flags + native names */
.pk-langdrop {
	position: relative;
	flex-shrink: 0;
}
.pk-langdrop[open] { z-index: 50; }
.pk-langdrop summary {
	list-style: none;
	cursor: pointer;
}
.pk-langdrop summary::-webkit-details-marker,
.pk-langdrop summary::marker { display: none; }

.pk-langdrop__current {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--brand-dark);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	transition: background 160ms var(--pk-ease), border-color 160ms var(--pk-ease);
}
.pk-langdrop__current:hover {
	border-color: var(--wp--preset--color--brand);
}
.pk-langdrop__flag {
	width: 20px;
	height: 14px;
	display: block;
	border-radius: 2px;
	flex-shrink: 0;
	object-fit: cover;
}
.pk-langdrop__name { white-space: nowrap; }
.pk-langdrop__arrow {
	width: 16px;
	height: 16px;
	color: var(--wp--preset--color--muted);
	transition: transform 220ms var(--pk-ease);
}
.pk-langdrop[open] .pk-langdrop__arrow { transform: rotate(180deg); }

.pk-langdrop__menu {
	position: absolute;
	top: calc(100% + 4px);
	right: 0;
	min-width: 100%;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 6px;
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	box-shadow: 0 12px 28px rgba(3, 14, 30, 0.12);
	z-index: 51;
}
.pk-langdrop__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 8px;
	color: var(--wp--preset--color--brand-dark);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	white-space: nowrap;
	transition: background 160ms var(--pk-ease);
}
.pk-langdrop__item:hover { background: var(--wp--preset--color--surface); }

.pk-langdrop--mobile { display: none; }

/* Dark variant — used in footer (brand bg) */
.pk-langdrop--dark .pk-langdrop__current {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.16);
	color: #fff;
}
.pk-langdrop--dark .pk-langdrop__current:hover {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.24);
}
.pk-langdrop--dark .pk-langdrop__arrow { color: rgba(255, 255, 255, 0.6); }
/* Footer is at the bottom — open menu UPWARDS */
.pk-langdrop--dark .pk-langdrop__menu {
	top: auto;
	bottom: calc(100% + 4px);
	right: auto;
	left: 0;
	background: var(--wp--preset--color--brand-dark);
	border-color: rgba(255, 255, 255, 0.12);
	box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.32);
}
.pk-langdrop--dark .pk-langdrop__item {
	color: #fff;
}
.pk-langdrop--dark .pk-langdrop__item:hover {
	background: rgba(255, 255, 255, 0.08);
}

.site-header__burger {
	display: none;
	background: transparent;
	border: 0;
	padding: 0.5rem;
	cursor: pointer;
	color: var(--wp--preset--color--brand-dark);
}
.site-header__burger-icon { display: block; }
.site-header__burger-icon--close { display: none; }
.site-header.is-open .site-header__burger-icon--open { display: none; }
.site-header.is-open .site-header__burger-icon--close { display: block; }

@media (max-width: 980px) {
	.site-header__inner {
		gap: 8px;
	}
	.site-header__logo { margin-right: auto; }
	.site-header__cta { margin-left: 0; }

	.site-header__nav {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: #fff;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 0;
		padding: 8px 24px 24px;
		border-bottom: 1px solid var(--wp--preset--color--border);
		box-shadow: 0 12px 24px rgba(3, 14, 30, 0.08);
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		pointer-events: none;
		transition: max-height 240ms var(--pk-ease), opacity 200ms var(--pk-ease), padding 200ms var(--pk-ease);
	}
	.site-header.is-open .site-header__nav {
		max-height: 80vh;
		opacity: 1;
		pointer-events: auto;
		overflow-y: auto;
	}
	.site-header__nav > a {
		padding: 14px 0;
		font-size: 16px;
		border-bottom: 1px solid var(--wp--preset--color--border);
	}
	.site-header__nav > a:last-of-type { border-bottom: 0; }
	.site-header__nav > a::after { display: none; }
	.site-header__burger { display: inline-flex; }
	.site-header.is-open .site-header__burger { color: var(--wp--preset--color--brand); }

	/* Hide desktop dropdown on mobile, show inside burger drawer as a full-width pill */
	.pk-langdrop--desktop { display: none; }
	.pk-langdrop--mobile {
		display: block;
		width: 100%;
		margin-top: 12px;
		padding-top: 16px;
		border-top: 1px solid var(--wp--preset--color--border);
	}
	.pk-langdrop--mobile summary { display: block; }
	.pk-langdrop--mobile .pk-langdrop__current {
		display: flex;
		width: 100%;
		justify-content: space-between;
		padding: 12px 14px;
		font-size: 15px;
	}
	.pk-langdrop--mobile .pk-langdrop__menu {
		position: static;
		right: auto;
		left: auto;
		transform: none;
		margin-top: 6px;
		min-width: 0;
		width: 100%;
		box-shadow: none;
		border: 1px solid var(--wp--preset--color--border);
	}
	.pk-langdrop--mobile .pk-langdrop__item {
		padding: 12px 14px;
		font-size: 15px;
	}
}
@media (max-width: 640px) {
	.site-header__cta span { display: none; }
	.site-header__cta {
		padding: 0.55rem 0.7rem;
		gap: 0;
	}
	.site-header__cta svg { width: 18px; height: 18px; }
	.site-header__burger { padding: 0.4rem; }
	.site-header__logo img { height: 38px; }
}

/* Buttons — pill variant */
.wp-block-button.is-style-pill .wp-block-button__link {
	border-radius: var(--pk-radius-pill);
	box-shadow: 0 4px 16px rgba(18, 55, 122, 0.22);
	transition: transform 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease), background-color 180ms var(--pk-ease);
}
.wp-block-button.is-style-pill .wp-block-button__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 28px rgba(18, 55, 122, 0.32);
}
.wp-block-button.is-style-ghost .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--foreground);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--pk-radius-pill);
	transition: border-color 180ms var(--pk-ease), color 180ms var(--pk-ease), background-color 180ms var(--pk-ease);
}
.wp-block-button.is-style-ghost .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand);
}
.wp-block-button.is-style-gold .wp-block-button__link {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
	border-radius: var(--pk-radius-pill);
	font-weight: 700;
	box-shadow: 0 6px 20px rgba(245, 197, 24, 0.35);
	transition: transform 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
}
.wp-block-button.is-style-gold .wp-block-button__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 28px rgba(245, 197, 24, 0.45);
}

/* Sections — consistent vertical rhythm for landing blocks */
.pk-section {
	padding-block: clamp(3rem, 8vw, 7rem);
}
.pk-section--tight { padding-block: clamp(2rem, 5vw, 4rem); }

.pk-section__head {
	max-width: 760px;
	margin: 0 auto clamp(2rem, 4vw, 3.5rem);
	text-align: center;
}
.pk-section__head--start { text-align: left; margin-inline: 0; }

/* Editorial split head with gold stat callouts */
.pk-section__head--split {
	max-width: var(--wp--style--global--wide-size, 1280px);
	margin-inline: auto;
	text-align: left;
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
	gap: clamp(1.5rem, 3vw, 3rem);
	align-items: end;
	margin-bottom: clamp(2.25rem, 4vw, 3.5rem);
}
.pk-section__head--split > :first-child { min-width: 0; max-width: 560px; }
.pk-section__head--split .pk-section__title {
	font-size: clamp(2rem, 3.8vw, 3rem);
	margin-bottom: 0.75rem;
	max-width: 18ch;
}
.pk-section__head--split .pk-section__title em {
	position: relative;
	font-style: normal;
	color: var(--wp--preset--color--brand);
}
.pk-section__head--split .pk-section__title em::after {
	content: "";
	position: absolute;
	left: -1%; right: -1%; bottom: -4px;
	height: 8px;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 10' preserveAspectRatio='none'><path d='M2 7 Q 50 1, 100 5 T 198 6' stroke='%23F5C518' stroke-width='2.5' fill='none' stroke-linecap='round'/></svg>") no-repeat center / 100% 100%;
}
.pk-section__head--split .pk-section__lead { max-width: 48ch; }

.pk-section__head-aside {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(1rem, 2vw, 1.5rem);
	padding-bottom: 0.5rem;
}
.pk-section__head-stat {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	padding: 1.1rem 1.25rem;
	background: linear-gradient(180deg, rgba(245, 197, 24, 0.1) 0%, rgba(245, 197, 24, 0) 100%);
	border-left: 3px solid var(--wp--preset--color--accent);
	border-radius: 0 var(--pk-radius-md) var(--pk-radius-md) 0;
}
.pk-section__head-stat strong {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.875rem, 3vw, 2.5rem);
	font-weight: 800;
	color: var(--wp--preset--color--brand-dark);
	line-height: 1;
	letter-spacing: -0.025em;
}
.pk-section__head-stat span {
	font-size: 0.8125rem;
	color: var(--wp--preset--color--muted);
	line-height: 1.4;
}

@media (max-width: 820px) {
	.pk-section__head--split { grid-template-columns: 1fr; align-items: start; }
	.pk-section__head-aside { order: 2; }
}
@media (max-width: 480px) {
	.pk-section__head-aside { grid-template-columns: 1fr; }
}

.pk-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.4rem 0.9rem;
	border-radius: var(--pk-radius-pill);
	background: var(--wp--preset--color--brand-soft);
	color: var(--wp--preset--color--brand);
	font-weight: 600;
	font-size: 0.8125rem;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	margin-bottom: 1.25rem;
}
.pk-eyebrow::before {
	content: "";
	width: 6px; height: 6px; border-radius: 50%;
	background: var(--wp--preset--color--accent);
	box-shadow: 0 0 0 3px rgba(245, 197, 24, 0.25);
}

.pk-section__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 800;
	font-size: clamp(1.75rem, 3.4vw, 2.75rem);
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--brand-dark);
	margin: 0 0 1rem;
	text-wrap: balance;
}
.pk-section__title em {
	font-style: normal;
	color: var(--wp--preset--color--brand);
}

.pk-section__lead {
	font-size: clamp(1rem, 1.1vw, 1.125rem);
	color: var(--wp--preset--color--muted);
	line-height: 1.6;
	margin: 0;
	text-wrap: pretty;
}

/* Calculator ------------------------------------------------------- */
.pk-calc-section {
	background: var(--wp--preset--color--background);
	padding-block: clamp(3.5rem, 7vw, 6rem);
}

.pk-calc {
	--pk-input-h: 48px;
	--pk-input-radius: 10px;

	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
	gap: clamp(1.25rem, 2.5vw, 2.5rem);
	align-items: start;
}
@media (max-width: 900px) {
	.pk-calc { grid-template-columns: 1fr; }
}

.pk-calc__form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.pk-calc__rows {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.pk-calc__row {
	position: relative;
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: var(--pk-radius-lg);
	padding: 1.75rem 1.25rem 1.25rem;
	display: grid;
	grid-template-columns: minmax(180px, 1.1fr) minmax(220px, 1.3fr) auto;
	column-gap: 1rem;
	row-gap: 1rem;
	align-items: end;
	transition: border-color 200ms var(--pk-ease), box-shadow 200ms var(--pk-ease);
}
.pk-calc__row:focus-within {
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 0 0 4px rgba(18, 55, 122, 0.08);
}
@media (max-width: 720px) {
	.pk-calc__row {
		grid-template-columns: 1fr;
		padding: 1.75rem 1.1rem 1.1rem;
	}
}

.pk-calc__row-number {
	position: absolute;
	top: -10px;
	left: 1.25rem;
	background: var(--wp--preset--color--brand-dark);
	color: var(--wp--preset--color--accent);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 800;
	font-size: 0.7rem;
	padding: 4px 10px;
	border-radius: var(--pk-radius-pill);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1;
}

/* Fields ---------- */
.pk-calc__field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}
.pk-calc__field label {
	font-size: 0.7rem;
	font-weight: 700;
	color: var(--wp--preset--color--muted);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	line-height: 1;
}
.pk-calc__field select,
.pk-calc__field input {
	width: 100%;
	height: var(--pk-input-h);
	padding: 0 0.95rem;
	border: 1px solid rgba(15, 23, 42, 0.14);
	border-radius: var(--pk-input-radius);
	background: #fff;
	font-family: inherit;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--wp--preset--color--brand-dark);
	transition: border-color 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	line-height: 1.2;
}
.pk-calc__field input[type="number"] { -moz-appearance: textfield; }
.pk-calc__field input::-webkit-outer-spin-button,
.pk-calc__field input::-webkit-inner-spin-button {
	-webkit-appearance: none; margin: 0;
}
.pk-calc__field select {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2312377A' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	padding-right: 2.5rem;
	cursor: pointer;
}
.pk-calc__field select:focus,
.pk-calc__field input:focus {
	outline: none;
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 0 0 3px rgba(18, 55, 122, 0.1);
}
.pk-calc__field input::placeholder {
	color: rgba(100, 116, 139, 0.7);
	font-weight: 400;
}

/* Size: two inputs separated by × — flex, vertically centered */
.pk-calc__size {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}
.pk-calc__size input { flex: 1; min-width: 0; }
.pk-calc__size .pk-calc__x {
	color: var(--wp--preset--color--muted);
	font-weight: 600;
	font-size: 0.875rem;
	flex-shrink: 0;
	user-select: none;
}

.pk-calc__qty { display: none; }
.pk-calc__row[data-mode="piece"] .pk-calc__size { display: none; }
.pk-calc__row[data-mode="piece"] .pk-calc__qty { display: block; }

/* Row end: total + remove — matches input baseline */
.pk-calc__row-end {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	height: var(--pk-input-h);
}
.pk-calc__row-total {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 800;
	font-size: 1.375rem;
	color: var(--wp--preset--color--brand-dark);
	min-width: 84px;
	text-align: right;
	white-space: nowrap;
	letter-spacing: -0.02em;
}
.pk-calc__remove {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid rgba(15, 23, 42, 0.12);
	background: #fff;
	color: var(--wp--preset--color--muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 180ms var(--pk-ease);
	flex-shrink: 0;
}
.pk-calc__remove:hover {
	border-color: #DC2626;
	color: #DC2626;
	background: #FEF2F2;
}
.pk-calc__remove svg { width: 14px; height: 14px; }
.pk-calc__rows[data-single="true"] .pk-calc__remove { display: none; }

@media (max-width: 720px) {
	.pk-calc__row-end {
		height: auto;
		justify-content: space-between;
		padding-top: 0.75rem;
		border-top: 1px dashed rgba(15, 23, 42, 0.08);
	}
}

/* Add-button */
.pk-calc__add {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	align-self: flex-start;
	padding: 0.8rem 1.3rem;
	border-radius: var(--pk-radius-pill);
	background: var(--wp--preset--color--brand-soft);
	color: var(--wp--preset--color--brand);
	font-weight: 600;
	font-size: 0.9375rem;
	border: 1px dashed rgba(18, 55, 122, 0.3);
	cursor: pointer;
	transition: all 180ms var(--pk-ease);
	font-family: inherit;
}
.pk-calc__add:hover {
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-color: transparent;
	transform: translateY(-1px);
}
.pk-calc__add svg { width: 14px; height: 14px; }

/* Summary sidebar */
.pk-calc__summary {
	position: sticky;
	top: calc(var(--pk-header-h) + 1rem);
	background: linear-gradient(145deg, #0B2354 0%, #12377A 100%);
	color: #fff;
	border-radius: var(--pk-radius-lg);
	padding: clamp(1.5rem, 2.2vw, 2rem);
	box-shadow: 0 24px 48px -16px rgba(11, 35, 84, 0.3);
	overflow: hidden;
	isolation: isolate;
}
.pk-calc__summary::before {
	content: "";
	position: absolute;
	top: -30%; right: -20%;
	width: 70%; aspect-ratio: 1;
	background: radial-gradient(closest-side, rgba(245, 197, 24, 0.22), transparent 70%);
	pointer-events: none;
	z-index: -1;
}
@media (max-width: 900px) { .pk-calc__summary { position: static; } }

.pk-calc__summary-title {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
	margin: 0 0 1.25rem;
}
.pk-calc__summary-title::before {
	content: "";
	width: 6px; height: 6px;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
	box-shadow: 0 0 0 3px rgba(245, 197, 24, 0.2);
}

.pk-calc__stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	padding-bottom: 1.25rem;
	margin-bottom: 1.25rem;
	border-bottom: 1px dashed rgba(245, 197, 24, 0.25);
}
.pk-calc__stat {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}
.pk-calc__stat strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 800;
	font-size: 1.625rem;
	color: #fff;
	line-height: 1;
	letter-spacing: -0.02em;
}
.pk-calc__stat span {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.6);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.pk-calc__total {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 1.5rem;
}
.pk-calc__total-label {
	font-size: 0.9375rem;
	color: rgba(255, 255, 255, 0.72);
}
.pk-calc__total-value {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 800;
	font-size: clamp(2rem, 3.2vw, 2.75rem);
	color: var(--wp--preset--color--accent);
	line-height: 1;
	letter-spacing: -0.03em;
	text-shadow: 0 4px 16px rgba(245, 197, 24, 0.28);
}

.pk-calc__note {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	padding: 0.75rem 0.9rem;
	background: rgba(255, 255, 255, 0.06);
	border-radius: 10px;
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.72);
	line-height: 1.4;
	margin-bottom: 1.25rem;
}
.pk-calc__note svg { width: 14px; height: 14px; flex-shrink: 0; margin-top: 2px; color: var(--wp--preset--color--accent); }

.pk-calc__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	padding: 0.95rem 1.25rem;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
	border-radius: var(--pk-radius-pill);
	text-decoration: none;
	font-weight: 700;
	font-size: 0.9375rem;
	box-shadow: 0 10px 24px rgba(245, 197, 24, 0.3);
	transition: transform 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
	margin-bottom: 0.75rem;
}
.pk-calc__cta:hover { transform: translateY(-1px); box-shadow: 0 14px 32px rgba(245, 197, 24, 0.4); }
.pk-calc__cta svg { width: 16px; height: 16px; }

.pk-calc__phone {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	color: #fff;
	text-decoration: none;
	font-size: 0.875rem;
	opacity: 0.85;
	padding: 0.5rem 0;
	transition: opacity 180ms var(--pk-ease), color 180ms var(--pk-ease);
}
.pk-calc__phone:hover { opacity: 1; color: var(--wp--preset--color--accent); }
.pk-calc__phone svg { width: 14px; height: 14px; }

/* Packages — 3-tier pricing with center highlighted ---------------- */
.pk-packages {
	background: #fff;
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.pk-packages__head {
	max-width: 1280px;
	margin: 0 auto 40px !important;
	display: flex;
	flex-direction: column;
	gap: 20px;
	text-align: left;
}
.pk-packages__head > * { width: 100%; }
.pk-packages__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-packages__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

.pk-packages__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-template-rows: repeat(4, auto);
	gap: 16px;
	align-items: stretch;
	width: 100%;
}
@media (max-width: 900px) {
	.pk-packages__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 760px; margin-inline: auto; }
}
@media (max-width: 560px) {
	.pk-packages__grid { grid-template-columns: 1fr; max-width: 480px; }
}

.pk-pkg {
	position: relative;
	min-width: 0;
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 16px;
	padding: 24px;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	row-gap: 20px;
	overflow: hidden;
}

/* Highlighted (Gold) card — brand bg, white text. */
.pk-pkg--highlighted {
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 16px 32px rgba(7, 54, 118, 0.24);
}

/* Card head — icon + title cluster horizontally */
.pk-pkg__head {
	display: flex;
	align-items: center;
	gap: 16px;
}
.pk-pkg__head-text {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.pk-pkg__icon {
	width: 56px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.pk-pkg__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.pk-pkg__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
	letter-spacing: 0;
	text-transform: none;
}
.pk-pkg--highlighted .pk-pkg__title { color: #fff; }

.pk-pkg__sub {
	font-size: 13px;
	line-height: 18px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}
.pk-pkg--highlighted .pk-pkg__sub { color: rgba(255, 255, 255, 0.72); }

/* Meta row — time pill (left) + price (right) */
.pk-pkg__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}

.pk-pkg__time {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px 6px 10px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand-dark);
	font-size: 13px;
	line-height: 18px;
}
.pk-pkg__time svg { width: 14px; height: 14px; }
.pk-pkg--highlighted .pk-pkg__time {
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

.pk-pkg__price {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	margin: 0;
	color: var(--wp--preset--color--brand-dark);
}
.pk-pkg__price-from {
	font-size: 13px;
	line-height: 18px;
	color: var(--wp--preset--color--muted);
}
.pk-pkg__price-num {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 18px;
	line-height: 24px;
	color: inherit;
}
.pk-pkg__price-unit {
	font-size: 13px;
	line-height: 18px;
	color: var(--wp--preset--color--muted);
}
.pk-pkg--highlighted .pk-pkg__price { color: #fff; }
.pk-pkg--highlighted .pk-pkg__price-from,
.pk-pkg--highlighted .pk-pkg__price-unit { color: rgba(255, 255, 255, 0.72); }

/* Features list — left-aligned with checkmarks */
.pk-pkg__features {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-self: start;
}
.pk-pkg__features li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
}
.pk-pkg__check {
	width: 16px;
	height: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--brand);
	flex-shrink: 0;
}
.pk-pkg__check svg { width: 16px; height: 16px; }
.pk-pkg--highlighted .pk-pkg__features li { color: #fff; }
.pk-pkg--highlighted .pk-pkg__check { color: var(--wp--preset--color--accent); }

/* CTA button — full-width, sits at bottom of card */
.pk-pkg__cta {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	padding: 12px 22px;
	border-radius: 100px;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border: 0;
	cursor: pointer;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease), transform 180ms var(--pk-ease);
	align-self: end;
}
.pk-pkg__cta:hover {
	background: var(--wp--preset--color--brand-dark);
	transform: translateY(-1px);
}
.pk-pkg__cta svg { width: 20px; height: 20px; flex-shrink: 0; }

.pk-pkg--highlighted .pk-pkg__cta {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
}
.pk-pkg--highlighted .pk-pkg__cta:hover {
	background: #FFD42E;
}

/* Badge — tucked into the top-right corner of the highlighted card */
.pk-pkg__badge {
	position: absolute;
	top: 0;
	right: 0;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
	padding: 6px 14px;
	border-radius: 0 16px 0 12px;
	font-family: inherit;
	font-weight: 500;
	font-size: 13px;
	line-height: 18px;
	white-space: nowrap;
	z-index: 1;
}

/* Contact / Request form ----------------------------------------- */
.pk-contacts {
	background: #fff;
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.pk-contacts__head {
	max-width: 1280px;
	margin: 0 auto 40px !important;
	display: flex;
	flex-direction: column;
	gap: 20px;
	text-align: left;
}
.pk-contacts__head > * { width: 100%; }
.pk-contacts__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-contacts__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

.pk-contacts__grid {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	width: 100%;
}
@media (max-width: 1024px) {
	.pk-contacts__grid {
		flex-direction: column;
		align-items: stretch;
	}
	.pk-contacts__side { order: 2; width: 100%; }
	.pk-form { order: 1; width: 100%; }
}

/* Side: navy summary card */
.pk-contacts__side {
	width: 418px;
	flex-shrink: 0;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-radius: 16px;
	padding: 32px;
	display: flex;
	flex-direction: column;
	gap: 28px;
	position: sticky;
	top: calc(var(--pk-header-h) + 16px);
}
@media (max-width: 1024px) { .pk-contacts__side { position: static; } }
@media (max-width: 1024px) { .pk-contacts__side { width: 100%; } }

.pk-contacts__side-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: #fff;
	margin: 0;
}

.pk-contacts__summary {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.pk-contacts__summary-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 24px;
	gap: 12px;
}
.pk-contacts__summary-row > span {
	font-size: 14px;
	line-height: 20px;
	color: #9CAFC8;
}
.pk-contacts__summary-row strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: #fff;
}

.pk-contacts__divider {
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
	margin: 0;
	width: 100%;
}

.pk-contacts__total-block {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.pk-contacts__total-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
}
.pk-contacts__total-row > span {
	font-size: 14px;
	line-height: 20px;
	color: #9CAFC8;
}
.pk-contacts__total-row strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 24px;
	line-height: 32px;
	color: var(--wp--preset--color--accent);
	letter-spacing: 0;
}
.pk-contacts__note {
	background: rgba(255, 255, 255, 0.1);
	padding: 16px;
	border-radius: 12px;
	font-size: 14px;
	line-height: 20px;
	color: #fff;
}
.pk-contacts__sr {
	position: absolute;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.pk-contacts__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.pk-contacts__list li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	line-height: 20px;
	color: #fff;
}
.pk-contacts__list li svg {
	width: 20px; height: 20px;
	flex-shrink: 0;
}
.pk-contacts__list a { color: inherit; text-decoration: none; }
.pk-contacts__list a:hover { color: var(--wp--preset--color--accent); }

.pk-contacts__hours {
	background: rgba(255, 255, 255, 0.1);
	padding: 16px;
	border-radius: 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	font-size: 14px;
	line-height: 20px;
}
.pk-contacts__hours strong {
	color: #fff;
	font-weight: 500;
}
.pk-contacts__hours span {
	color: #9CAFC8;
	font-weight: 400;
}

/* Form (right) */
.pk-form {
	flex: 1 0 0;
	min-width: 0;
	background: #fff;
	border-radius: 16px;
	padding: 32px;
	box-shadow: 0 6px 24px rgba(3, 14, 30, 0.08);
}
.pk-form form {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.pk-form__section {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.pk-form__section-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}

.pk-form__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
/* The HTML `hidden` attribute should win over our explicit display:flex
   (used by the JS to hide the address field when "Привезу сам" is chosen). */
.pk-form__field[hidden] { display: none; }
.pk-form__field label {
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	letter-spacing: 0;
	text-transform: none;
	margin: 0;
}
.pk-form__field input[type="text"],
.pk-form__field input[type="tel"],
.pk-form__field input[type="email"],
.pk-form__field input[type="date"],
.pk-form__field input[type="number"],
.pk-form__field select,
.pk-form__field textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	background: #fff;
	font-family: inherit;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--brand-dark);
	transition: border-color 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
	-webkit-appearance: none;
	appearance: none;
}
.pk-form__field input::placeholder,
.pk-form__field select option:disabled,
.pk-form__field textarea::placeholder {
	color: #9DA7BB;
	font-weight: 500;
}
.pk-form__field textarea {
	resize: vertical;
	min-height: 96px;
}
.pk-form__select-wrap { position: relative; }
.pk-form__select-wrap select {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230b2354' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 40px;
	cursor: pointer;
}
.pk-form__field input:focus,
.pk-form__field select:focus,
.pk-form__field textarea:focus {
	outline: none;
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 0 0 3px rgba(7, 54, 118, 0.12);
}

/* Контакты: 3-col row */
.pk-form__row-3 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}
@media (max-width: 700px) {
	.pk-form__row-3 { grid-template-columns: 1fr; }
}

.pk-form__row-2 {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: 16px;
}
/* When user picks "Привезу сам" the address field is hidden — collapse the
   row to a single column so the city select occupies the full width. */
.pk-form__row-2[data-pickup="true"] { grid-template-columns: 1fr; }
@media (max-width: 700px) {
	.pk-form__row-2 { grid-template-columns: 1fr; }
}

.pk-form__pickup-info {
	display: flex;
	gap: 8px;
	align-items: flex-start;
	padding: 12px 14px;
	background: var(--wp--preset--color--surface);
	border-radius: 12px;
	font-size: 13px;
	line-height: 18px;
	color: var(--wp--preset--color--brand-dark);
}
.pk-form__pickup-info svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: var(--wp--preset--color--brand);
	margin-top: 1px;
}
.pk-form__pickup-info strong { font-weight: 600; }

/* Carpets surface block */
.pk-form__carpets {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.pk-form__rows {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.pk-form__row {
	display: flex;
	flex-direction: column;
	gap: 16px;
	scroll-margin-top: 80px;
	border-radius: 12px;
	transition: box-shadow 600ms var(--pk-ease), background 600ms var(--pk-ease);
}
/* Brief highlight when a row is just added — gives visual feedback so the
   user knows where the new carpet appeared, especially on mobile. */
.pk-form__row--just-added {
	box-shadow: 0 0 0 2px var(--wp--preset--color--accent);
	background: rgba(255, 203, 8, 0.08);
}
.pk-form__row-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.pk-form__row-number {
	font-size: 12px;
	line-height: 18px;
	color: #9DA7BB;
	font-weight: 400;
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0;
	background: transparent;
	padding: 0;
	border-radius: 0;
}
.pk-form__row-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 12px;
	align-items: end;
}
@media (max-width: 600px) { .pk-form__row-grid { grid-template-columns: 1fr; } }

.pk-form__size {
	display: grid;
	grid-template-columns: 1fr 8px 1fr;
	gap: 12px;
	align-items: center;
}
.pk-form__size input { min-width: 0; }
.pk-form__x {
	color: var(--wp--preset--color--muted);
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-align: center;
}
.pk-form__qty { display: none; }
.pk-form__row[data-mode="piece"] .pk-form__size { display: none; }
.pk-form__row[data-mode="piece"] .pk-form__qty { display: block; }

.pk-form__exclusive {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
	font-weight: 500;
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0;
	align-self: flex-start;
}
.pk-form__exclusive input {
	-webkit-appearance: none;
	appearance: none;
	width: 20px; height: 20px;
	border: 1px solid #D5D8E1;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin: 0;
	transition: background 160ms, border-color 160ms;
}
.pk-form__exclusive input:checked {
	background: var(--wp--preset--color--brand);
	border-color: var(--wp--preset--color--brand);
}
.pk-form__exclusive input:checked::after {
	content: "";
	width: 10px; height: 6px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg) translate(1px, -1px);
}

.pk-form__row-divider {
	border: 0;
	border-top: 1px solid var(--wp--preset--color--border);
	margin: 0;
	width: 100%;
}
.pk-form__row-foot {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
}
.pk-form__row-foot-label {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
}
.pk-form__row-foot strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	color: var(--wp--preset--color--brand-dark);
}
.pk-form__row-remove {
	width: 24px; height: 24px;
	border-radius: 50%;
	border: 1px solid var(--wp--preset--color--border);
	background: #fff;
	color: var(--wp--preset--color--muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 180ms var(--pk-ease);
	flex-shrink: 0;
}
.pk-form__row-remove:hover {
	border-color: #DC2626;
	color: #DC2626;
}
.pk-form__row-remove svg { width: 12px; height: 12px; }
.pk-form__rows:has(> :only-child) ~ * .pk-form__row-remove,
.pk-form__rows[data-single="true"] .pk-form__row-remove { display: none; }

/* Package picker — 3 inline radio cards */
.pk-form__packages {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
}
@media (max-width: 1100px) {
	.pk-form__packages { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
}
@media (max-width: 700px) {
	.pk-form__packages { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
	.pk-form__packages { grid-template-columns: 1fr; }
}
.pk-form__pkg { position: relative; display: flex; }
.pk-form__pkg input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.pk-form__pkg label {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
	padding: 16px;
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	cursor: pointer;
	margin: 0;
	transition: background 180ms var(--pk-ease), border-color 180ms var(--pk-ease);
	text-transform: none;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--wp--preset--color--brand-dark);
	line-height: 1.4;
}
.pk-form__pkg-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.pk-form__pkg-text strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
}
.pk-form__pkg-text small {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
}
.pk-form__pkg-meta {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}
.pk-form__pkg-price {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
}
.pk-form__pkg-price[hidden] { display: none; }
.pk-form__pkg-multiplier {
	display: inline-flex;
	align-items: center;
	padding: 6px 12px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	border: 1px solid #fff;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	color: var(--wp--preset--color--brand);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
}
.pk-form__pkg input:checked + label {
	background: rgba(7, 54, 118, 0.04);
	border-color: var(--wp--preset--color--brand);
}
.pk-form__pkg input:checked + label .pk-form__pkg-multiplier {
	background: var(--wp--preset--color--brand);
	color: #fff;
}

/* Add carpet button — dashed brand */
.pk-form__add {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	align-self: flex-start;
	padding: 12px 16px;
	border-radius: 100px;
	background: rgba(7, 54, 118, 0.04);
	color: var(--wp--preset--color--brand-dark);
	border: 1px dashed var(--wp--preset--color--brand);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	cursor: pointer;
	transition: background 180ms var(--pk-ease);
}
.pk-form__add:hover {
	background: rgba(7, 54, 118, 0.08);
}
.pk-form__add svg { width: 20px; height: 20px; flex-shrink: 0; }

/* Delivery choices — 2 option cards with icon */
.pk-form__choices {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
@media (max-width: 700px) { .pk-form__choices { grid-template-columns: 1fr; } }
.pk-form__choice { position: relative; display: flex; }
.pk-form__choice input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.pk-form__choice label {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px;
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	cursor: pointer;
	margin: 0;
	transition: background 180ms var(--pk-ease), border-color 180ms var(--pk-ease);
	text-transform: none;
	letter-spacing: 0;
	font-weight: 400;
	min-height: 0;
}
.pk-form__choice label::before { display: none; }
.pk-form__choice-icon {
	width: 48px; height: 48px;
	border-radius: 8px;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease);
}
.pk-form__choice-icon svg { width: 32px; height: 32px; }
.pk-form__choice-body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}
.pk-form__choice-body strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
}
.pk-form__choice-body small {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	font-weight: 400;
}
.pk-form__choice input:checked + label {
	background: rgba(7, 54, 118, 0.04);
	border-color: var(--wp--preset--color--brand);
}
.pk-form__choice input:checked + label .pk-form__choice-icon {
	background: var(--wp--preset--color--brand);
	color: #fff;
}

/* Agreement */
.pk-form__agree {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	cursor: pointer;
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
	font-weight: 400;
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0;
}
.pk-form__agree input {
	-webkit-appearance: none;
	appearance: none;
	width: 20px; height: 20px;
	border: 1px solid #D5D8E1;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	transition: background 160ms, border-color 160ms;
}
.pk-form__agree input:checked {
	background: var(--wp--preset--color--brand);
	border-color: var(--wp--preset--color--brand);
}
.pk-form__agree input:checked::after {
	content: "";
	width: 10px; height: 6px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg) translate(1px, -1px);
}
.pk-form__agree a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
	font-weight: 500;
}

/* Submit + status */
.pk-form__submit {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	padding: 12px 16px 12px 22px;
	border-radius: 100px;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border: 0;
	cursor: pointer;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	transition: background 180ms var(--pk-ease), transform 180ms var(--pk-ease), opacity 180ms var(--pk-ease);
	letter-spacing: 0;
	text-transform: none;
}
.pk-form__submit:hover {
	background: var(--wp--preset--color--brand-dark);
	transform: translateY(-1px);
}
.pk-form__submit:disabled { opacity: 0.7; cursor: wait; transform: none; }
.pk-form__submit svg { width: 20px; height: 20px; flex-shrink: 0; }

.pk-form__status {
	min-height: 0;
	padding: 0;
	margin: 0;
	font-size: 13px;
	line-height: 1.45;
	color: var(--wp--preset--color--muted);
}
.pk-form__status[data-state="sending"] { color: var(--wp--preset--color--brand); padding: 8px 12px; background: var(--wp--preset--color--brand-soft); border-radius: 8px; }
.pk-form__status[data-state="success"] { color: #0B7A4F; padding: 10px 12px; background: #E7F7EF; border-left: 3px solid #10B981; border-radius: 8px; font-weight: 600; }
.pk-form__status[data-state="error"] { color: #B91C1C; padding: 10px 12px; background: #FEF2F2; border-left: 3px solid #DC2626; border-radius: 8px; font-weight: 500; }

/* Calculator / contacts — mobile tightening */
@media (max-width: 640px) {
	.pk-contacts__head {
		margin: 0 auto 24px !important;
		gap: 12px;
	}
	.pk-contacts__title { font-size: 24px; line-height: 32px; }
	.pk-contacts__lead { font-size: 13px; }
	.pk-contacts__grid { gap: 12px; }

	.pk-contacts__side {
		padding: 20px;
		gap: 20px;
		border-radius: 14px;
	}
	.pk-contacts__total-row strong { font-size: 22px; line-height: 28px; }
	.pk-contacts__list li,
	.pk-contacts__hours { font-size: 13px; line-height: 19px; }
	.pk-contacts__note { padding: 12px; font-size: 13px; line-height: 18px; }

	.pk-form {
		padding: 20px;
		border-radius: 14px;
	}
	.pk-form form { gap: 20px; }
	.pk-form__section { gap: 12px; }

	.pk-form__field input[type="text"],
	.pk-form__field input[type="tel"],
	.pk-form__field input[type="email"],
	.pk-form__field input[type="date"],
	.pk-form__field input[type="number"],
	.pk-form__field select,
	.pk-form__field textarea {
		padding: 11px 12px;
		font-size: 16px; /* prevent iOS zoom */
	}

	.pk-form__carpets {
		padding: 14px;
		gap: 14px;
	}
	.pk-form__row { gap: 12px; }
	.pk-form__row-grid { gap: 12px; }
	.pk-form__row-foot strong { font-size: 18px; line-height: 24px; }

	.pk-form__choice label {
		padding: 12px;
		gap: 10px;
	}
	.pk-form__choice-icon { width: 40px; height: 40px; }
	.pk-form__choice-icon svg { width: 24px; height: 24px; }
	.pk-form__choice-body strong { font-size: 15px; line-height: 22px; }
	.pk-form__choice-body small { font-size: 13px; line-height: 18px; }

	.pk-form__pkg label {
		padding: 14px;
		gap: 12px;
	}
	.pk-form__pkg-text strong { font-size: 15px; line-height: 22px; }
	.pk-form__pkg-text small { font-size: 13px; line-height: 18px; }

	.pk-form__add { padding: 11px 14px; }
	.pk-form__submit {
		padding: 12px 16px 12px 18px;
		font-size: 15px;
	}
}

/* FAQ — 2-column accordion ---------------------------------------- */
.pk-faq {
	background: #fff;
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.pk-faq__layout {
	display: flex;
	gap: 40px;
	align-items: flex-start;
}
@media (max-width: 900px) {
	.pk-faq__layout { flex-direction: column; gap: 32px; }
}
@media (max-width: 640px) {
	.pk-faq__title { font-size: 24px; line-height: 32px; }
	.pk-faq__intro { gap: 12px; }
	.pk-faq__intro-text { gap: 12px; }
	.pk-faq__contact {
		align-self: stretch;
		width: 100%;
		justify-content: center;
	}
}

.pk-faq__intro {
	flex: 1 0 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.pk-faq__intro-text {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pk-faq__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-faq__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}
.pk-faq__contact {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 16px;
	border-radius: 100px;
	background: #fff;
	color: var(--wp--preset--color--brand-dark);
	border: 1px solid var(--wp--preset--color--border);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	align-self: flex-start;
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease), border-color 180ms var(--pk-ease);
}
.pk-faq__contact:hover {
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-color: var(--wp--preset--color--brand);
}
.pk-faq__contact svg { width: 20px; height: 20px; flex-shrink: 0; }

/* Accordion list */
.pk-faq__list {
	flex: 1 0 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.pk-faq__item {
	background: var(--wp--preset--color--surface);
	border-radius: 16px;
	overflow: hidden;
}

.pk-faq__summary {
	list-style: none;
	cursor: pointer;
	padding: 16px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}
.pk-faq__summary::-webkit-details-marker,
.pk-faq__summary::marker { display: none; content: ""; }

.pk-faq__question {
	flex: 1 0 0;
	min-width: 0;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
}

.pk-faq__toggle {
	width: 24px;
	height: 24px;
	border-radius: 100px;
	background: #fff;
	color: var(--wp--preset--color--brand);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-top: 0;
	transition: transform 220ms var(--pk-ease), background 220ms var(--pk-ease), color 220ms var(--pk-ease);
}
.pk-faq__toggle svg { width: 16px; height: 16px; }
.pk-faq__item[open] .pk-faq__toggle {
	background: var(--wp--preset--color--brand);
	color: #fff;
	transform: rotate(45deg);
}

.pk-faq__answer {
	padding: 0 16px 16px;
	color: var(--wp--preset--color--muted);
	font-size: 14px;
	line-height: 20px;
}
.pk-faq__answer :last-child { margin-bottom: 0; }

/* Reviews — 4-card social proof with split header CTA -------------- */
.pk-reviews {
	background: var(--wp--preset--color--surface);
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.pk-reviews__head {
	display: flex;
	gap: 32px;
	align-items: flex-end;
	max-width: 1280px;
	margin: 0 auto 40px !important;
}
.pk-reviews__head-text {
	flex: 1 0 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pk-reviews__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-reviews__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}
.pk-reviews__cta {
	display: none !important;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 320px;
	max-width: 100%;
	flex-shrink: 0;
	padding: 12px 16px 12px 22px;
	border-radius: 100px;
	background: #fff;
	color: var(--wp--preset--color--brand-dark);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease), transform 180ms var(--pk-ease);
}
.pk-reviews__cta:hover {
	background: var(--wp--preset--color--brand);
	color: #fff;
	transform: translateY(-1px);
}
.pk-reviews__cta svg { width: 20px; height: 20px; flex-shrink: 0; }

.pk-reviews__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	align-items: stretch;
}
@media (max-width: 1024px) { .pk-reviews__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px)  {
	.pk-reviews__grid {
		display: flex;
		grid-template-columns: none;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		gap: 12px;
		margin-inline: -16px;
		padding-inline: 16px;
		padding-bottom: 4px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.pk-reviews__grid::-webkit-scrollbar { display: none; }
	.pk-review {
		flex: 0 0 calc(85% - 6px);
		scroll-snap-align: start;
	}
}

.pk-review {
	background: #fff;
	border-radius: 16px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.pk-review__stars {
	display: inline-flex;
	gap: 0;
	color: var(--wp--preset--color--accent);
}
.pk-review__stars svg { width: 16px; height: 16px; }

.pk-review__text {
	color: var(--wp--preset--color--brand-dark);
	font-size: 14px;
	line-height: 20px;
	margin: 0;
	flex: 1;
}

.pk-review__divider {
	border: 0;
	border-top: 1px solid var(--wp--preset--color--border);
	margin: 0;
	width: 100%;
}

.pk-review__author {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}
.pk-review__avatar {
	width: 40px;
	height: 40px;
	border-radius: 100px;
	border: 1.5px solid #fff;
	flex-shrink: 0;
	background-color: var(--wp--preset--color--surface);
	background-size: cover;
	background-position: center;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
}
.pk-review__meta {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	white-space: nowrap;
}
.pk-review__name {
	color: var(--wp--preset--color--brand-dark);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
}
.pk-review__source {
	color: var(--wp--preset--color--muted);
	font-size: 12px;
	line-height: 18px;
}

@media (max-width: 1024px) {
	.pk-reviews__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.pk-reviews__cta { width: 100%; max-width: 320px; }
}

/* Process — Horizontal timeline ----------------------------------- */
/* Process — 6 steps from order to delivery -------------------------- */
.pk-process {
	background: #fff;
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.pk-process__head {
	max-width: 1280px;
	margin: 0 auto 40px !important;
	display: flex;
	flex-direction: column;
	gap: 20px;
	text-align: left;
}
.pk-process__head > * { width: 100%; }
.pk-process__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-process__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

.pk-process__row {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
}

.pk-process__card {
	background: var(--wp--preset--color--surface);
	border-radius: 16px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.pk-process__head-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding-right: 10px;
}
.pk-process__icon {
	width: 48px;
	height: 48px;
	border-radius: 9999px;
	background: var(--wp--preset--color--brand);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	margin-right: -10px;
	flex-shrink: 0;
}
.pk-process__icon svg { width: 24px; height: 24px; }

.pk-process__num {
	min-width: 32px;
	padding: 4px 8px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	border: 1px solid #fff;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	color: var(--wp--preset--color--brand);
	font-family: inherit;
	font-weight: 500;
	font-size: 12px;
	line-height: 12px;
	text-align: center;
	margin-right: -10px;
	flex-shrink: 0;
}

.pk-process__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.pk-process__step-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-process__step-desc {
	font-size: 12px;
	line-height: 18px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

@media (max-width: 1024px) {
	.pk-process__row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.pk-process__row {
		display: flex;
		grid-template-columns: none;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		gap: 12px;
		padding-bottom: 4px;
		margin-inline: -16px;
		padding-inline: 16px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.pk-process__row::-webkit-scrollbar { display: none; }
	.pk-process__card {
		flex: 0 0 calc(85% - 6px);
		scroll-snap-align: start;
	}
}

/* Services / Carpet types ------------------------------------------ */
.pk-services {
	background: #fff;
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.pk-services__head {
	max-width: 1280px;
	margin: 0 auto 40px !important;
	display: flex;
	flex-direction: column;
	gap: 20px;
	text-align: left;
}
.pk-services__head > * { width: 100%; }
.pk-services__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-services__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

.pk-services__grid {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.pk-services__row {
	display: flex;
	gap: 12px;
	align-items: stretch;
}
@media (max-width: 900px) {
	.pk-services__row { flex-direction: column; }
}

/* Feature card */
.pk-services__feature {
	position: relative;
	flex: 1 0 0;
	min-width: 0;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-radius: 16px;
	padding: 20px;
	min-height: 420px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 24px;
	overflow: hidden;
	background-image: var(--pk-card-img);
	background-size: cover;
	background-position: center;
}
.pk-services__feature-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.32);
	pointer-events: none;
}
.pk-services__feature > *:not(.pk-services__feature-overlay) { position: relative; z-index: 1; }

.pk-services__feature-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
.pk-services__feature-bottom {
	display: flex;
	flex-direction: column;
	gap: 20px;
	max-width: 552px;
}
.pk-services__feature-text {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.pk-services__feature-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 24px;
	line-height: 32px;
	margin: 0;
	color: #fff;
}
.pk-services__feature-desc {
	font-size: 14px;
	line-height: 20px;
	color: rgba(255, 255, 255, 0.85);
	margin: 0;
}

/* "Самый частый заказ" tag */
.pk-services__tag {
	display: inline-flex;
	align-items: center;
	padding: 8px 16px 8px 12px;
	border-radius: 100px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	white-space: nowrap;
}

/* 2x2 grid for small cards */
.pk-services__sub-grid {
	flex: 1 0 0;
	min-width: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
@media (max-width: 600px) {
	.pk-services__sub-grid { grid-template-columns: 1fr; }
}

/* Small card */
.pk-services__small {
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 16px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-height: 204px;
	justify-content: space-between;
}
.pk-services__small-text {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.pk-services__small-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	margin: 0;
	color: var(--wp--preset--color--brand-dark);
}
.pk-services__small-desc {
	font-size: 14px;
	line-height: 20px;
	margin: 0;
	color: var(--wp--preset--color--muted);
}

/* Price block */
.pk-services__price {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	white-space: nowrap;
	font-family: var(--wp--preset--font-family--display);
}
.pk-services__price-from {
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	color: var(--wp--preset--color--muted);
}
.pk-services__price-num {
	font-size: 20px;
	line-height: 28px;
	font-weight: 700;
	color: var(--wp--preset--color--brand-dark);
}
.pk-services__price-unit {
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	color: var(--wp--preset--color--muted);
}
.pk-services__price--lg .pk-services__price-from,
.pk-services__price--lg .pk-services__price-unit {
	color: rgba(255, 255, 255, 0.8);
}
.pk-services__price--lg .pk-services__price-num {
	font-size: 24px;
	line-height: 32px;
	color: #fff;
}

/* CTA buttons */
.pk-services__cta {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	border-radius: 100px;
	text-decoration: none;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease), opacity 180ms var(--pk-ease);
}
.pk-services__cta--white {
	background: #fff;
	color: var(--wp--preset--color--brand);
	padding: 12px 16px 12px 22px;
	width: 256px;
	max-width: 100%;
}
.pk-services__cta--white:hover {
	opacity: 0.92;
}
.pk-services__cta--surface {
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand-dark);
	padding: 12px 16px;
	width: 100%;
}
.pk-services__cta--surface:hover {
	background: #ECEEF1;
}
.pk-services__arrow { width: 20px; height: 20px; flex-shrink: 0; }

/* Banner (delivery) */
.pk-services__banner {
	position: relative;
	flex: 1 0 0;
	min-width: 0;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-radius: 16px;
	padding: 20px clamp(220px, 32vw, 380px) 20px 20px;
	min-height: 204px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 20px;
	overflow: hidden;
}
.pk-services__banner-img {
	position: absolute;
	top: 0;
	right: 0;
	width: clamp(220px, 38vw, 460px);
	/* max-width: 50%; */
	height: 100%;
	object-fit: contain;
	object-position: center;
	display: block;
	pointer-events: none;
}
.pk-services__banner-text {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 537px;
}
.pk-services__banner-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	margin: 0;
	color: #fff;
}
.pk-services__banner-title em {
	font-style: normal;
	color: var(--wp--preset--color--accent);
}
.pk-services__banner-desc {
	font-size: 14px;
	line-height: 20px;
	color: rgba(255, 255, 255, 0.8);
	margin: 0;
}
.pk-services__banner > .pk-services__cta { position: relative; z-index: 1; }

/* Bottom row: small card has fixed width */
.pk-services__row--bottom > .pk-services__small {
	width: 311px;
	flex-shrink: 0;
}

@media (max-width: 900px) {
	.pk-services__feature { min-height: 360px; }
	.pk-services__row--bottom > .pk-services__small { width: 100%; }
}
@media (max-width: 700px) {
	/* Same mobile layout as the article banner (.pk-post__cta) — text on top,
	   full-width courier photo with bottom: -30px to overlap the button slightly,
	   full-width pill CTA at the bottom. */
	.pk-services__feature { padding: 16px; gap: 16px; min-height: 320px; }
	.pk-services__feature-bottom { gap: 16px; }
	.pk-services__cta--white { width: 100%; }
	.pk-services__banner {
		padding: 16px;
		min-height: 0;
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
		flex: 1 1 100%;
		overflow: hidden;
	}
	.pk-services__banner-text {
		order: 1;
		max-width: none;
	}
	.pk-services__banner-img {
		order: 2;
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		bottom: -30px;
		width: 100%;
		max-width: none;
		height: 230px;
		max-height: none;
		min-height: 0;
		aspect-ratio: auto;
		object-fit: cover;
		object-position: center bottom;
		align-self: stretch;
		flex-shrink: 0;
	}
	.pk-services__banner > .pk-services__cta {
		order: 3;
		width: 100%;
		justify-content: space-between;
	}
}

/* Card surface */
.pk-card {
	background: var(--wp--preset--color--background);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--pk-radius-lg);
	padding: clamp(1.25rem, 2.5vw, 2rem);
	transition: transform 220ms var(--pk-ease), box-shadow 220ms var(--pk-ease), border-color 220ms var(--pk-ease);
}
.pk-card:hover {
	transform: translateY(-2px);
	border-color: transparent;
	box-shadow: var(--wp--preset--shadow--md);
}

/* Hero ------------------------------------------------------------- */
.pk-hero {
	background: #fff;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.pk-hero > .pk-hero__grid { padding-block: clamp(2.5rem, 5vw, 5rem); }

.pk-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 40px;
	align-items: stretch;
}
@media (max-width: 900px) {
	.pk-hero__grid { grid-template-columns: 1fr; gap: 32px; }
}

.pk-hero__content {
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 60px;
}
.pk-hero__text-block {
	display: flex;
	flex-direction: column;
	gap: 28px;
}
.pk-hero__text-cluster {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pk-hero__text-cluster > * { margin: 0; }

.pk-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px 8px 12px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand);
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	align-self: flex-start;
}
.pk-hero__eyebrow-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--wp--preset--color--brand);
	flex-shrink: 0;
}

.pk-hero__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(2rem, 3.2vw, 44px);
	line-height: 1.18;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
	text-wrap: balance;
}

.pk-hero__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
	max-width: 620px;
}

.pk-hero__ctas {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	align-items: center;
	margin: 0;
}
.pk-hero__btn-primary,
.pk-hero__btn-ghost {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border-radius: 100px;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	transition: transform 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease), background-color 180ms var(--pk-ease), border-color 180ms var(--pk-ease);
}
.pk-hero__btn-primary {
	background: var(--wp--preset--color--brand);
	color: #fff;
	padding: 12px 16px 12px 22px;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
}
.pk-hero__btn-primary:hover {
	background: var(--wp--preset--color--brand-dark);
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(3, 14, 30, 0.18);
}
.pk-hero__btn-primary svg { width: 20px; height: 20px; flex-shrink: 0; }
.pk-hero__btn-ghost {
	background: #fff;
	color: var(--wp--preset--color--brand-dark);
	border: 1px solid var(--wp--preset--color--border);
	padding: 12px 16px;
}
.pk-hero__btn-ghost:hover {
	border-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand);
}

.pk-hero__trust {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
}
.pk-hero__avatars {
	display: flex;
	flex-shrink: 0;
	padding-right: 12px;
}
.pk-hero__avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1.5px solid #fff;
	margin-left: -12px;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: inherit;
	font-weight: 600;
	font-size: 18px;
	line-height: 1;
	background-color: var(--wp--preset--color--surface);
	background-size: cover;
	background-position: center;
}
.pk-hero__avatars > :first-child { margin-left: 0; }
.pk-hero__avatar--yellow {
	background-color: var(--wp--preset--color--accent-soft);
	color: var(--wp--preset--color--accent);
}
.pk-hero__avatar--brand {
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand);
}

.pk-hero__trust-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.pk-hero__trust-rating {
	display: flex;
	align-items: center;
	gap: 8px;
}
.pk-hero__trust-rating strong {
	color: var(--wp--preset--color--brand-dark);
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
}
.pk-hero__trust-text small {
	color: var(--wp--preset--color--muted);
	font-size: 12px;
	line-height: 18px;
}
.pk-hero__stars {
	display: inline-flex;
	color: var(--wp--preset--color--accent);
}
.pk-hero__stars svg { width: 16px; height: 16px; display: block; }

/* Visual side */
.pk-hero__visual {
	position: relative;
	width: 100%;
	height: 600px;
	overflow: hidden;
}
.pk-hero__visual-img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 540px;
	height: 580px;
	max-width: 100%;
	object-fit: cover;
	border-radius: 16px;
	display: block;
}

.pk-hero__card {
	position: absolute;
	background: #fff;
	border-radius: 12px;
	padding: 8px 12px 8px 8px;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	display: flex;
	align-items: center;
	gap: 8px;
}
.pk-hero__card--delivery { top: 40px; right: 16px; }
.pk-hero__card--rating  { bottom: 40px; left: 16px; }
.pk-hero__card-icon {
	width: 48px;
	height: 48px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.pk-hero__card--delivery .pk-hero__card-icon {
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand);
}
.pk-hero__card--rating .pk-hero__card-icon {
	background: var(--wp--preset--color--accent-soft);
	color: var(--wp--preset--color--accent);
}
.pk-hero__card-icon svg { width: 24px; height: 24px; }
.pk-hero__card-body {
	display: flex;
	flex-direction: column;
	gap: 0;
	line-height: 1;
	white-space: nowrap;
}
.pk-hero__card-body strong {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
	font-weight: 500;
}
.pk-hero__card-body small {
	font-size: 12px;
	line-height: 18px;
	color: var(--wp--preset--color--muted);
}

@media (max-width: 900px) {
	.pk-hero__visual { height: auto; aspect-ratio: 540 / 580; max-width: 540px; margin-inline: auto; }
	.pk-hero__visual-img {
		position: static;
		transform: none;
		width: 100%;
		height: 100%;
	}
	.pk-hero__content { gap: 32px; }
}
@media (max-width: 640px) {
	.pk-hero__title { font-size: 28px; line-height: 36px; }
	.pk-hero__content { gap: 24px; }
	.pk-hero__text-block { gap: 20px; }
}
@media (max-width: 540px) {
	.pk-hero__card { padding: 8px 10px 8px 8px; }
	.pk-hero__card-body { white-space: normal; }
	.pk-hero__card-body strong { font-size: 13px; }
	.pk-hero__card-body small  { font-size: 11px; }
	.pk-hero__card-icon { width: 40px; height: 40px; }
	.pk-hero__card-icon svg { width: 20px; height: 20px; }
}

/* Stats — proof bar after hero ------------------------------------ */
.pk-stats {
	background: #fff;
	padding-block: 40px;
}
.pk-stats__row {
	display: flex;
	gap: 20px;
	align-items: stretch;
	width: 100%;
}
.pk-stats__item {
	flex: 1 0 0;
	min-width: 0;
	padding: 0 28px;
	border-left: 1px solid var(--wp--preset--color--border);
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
}
.pk-stats__item:first-child {
	border-left: 0;
	padding-left: 0;
}
.pk-stats__num {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 36px;
	line-height: 44px;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
	white-space: nowrap;
}
.pk-stats__label {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

@media (max-width: 900px) {
	.pk-stats__row {
		flex-wrap: wrap;
		gap: 24px 16px;
	}
	.pk-stats__item {
		flex: 1 1 calc(50% - 8px);
		padding: 0 16px;
	}
	.pk-stats__item:nth-child(odd) {
		border-left: 0;
		padding-left: 0;
	}
}
@media (max-width: 540px) {
	.pk-stats__num { font-size: 28px; line-height: 36px; }
}

/* Blog — card grid + single article ------------------------------- */

/* Latest articles block on homepage --------------------------------- */
.pk-blog {
	background: var(--wp--preset--color--surface);
	padding-block: clamp(2.5rem, 5vw, 5rem);
}
.pk-blog--surface { background: var(--wp--preset--color--surface); }

.pk-blog__head {
	display: flex;
	gap: 32px;
	align-items: flex-end;
	max-width: 1280px;
	margin: 0 auto 40px !important;
}
.pk-blog__head-text {
	flex: 1 0 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pk-blog__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-blog__lead {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}
.pk-blog__cta {
	display: inline-flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 220px;
	max-width: 100%;
	flex-shrink: 0;
	padding: 12px 16px 12px 22px;
	border-radius: 100px;
	background: #fff;
	color: var(--wp--preset--color--brand-dark);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease), transform 180ms var(--pk-ease);
}
.pk-blog__cta:hover {
	background: var(--wp--preset--color--brand);
	color: #fff;
	transform: translateY(-1px);
}
.pk-blog__cta svg { width: 20px; height: 20px; flex-shrink: 0; }

.pk-blog__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	align-items: stretch;
}
@media (max-width: 1024px) { .pk-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px)  {
	.pk-blog__grid { grid-template-columns: 1fr; }
	.pk-article__cover { height: 192px; }
}

/* Latest-articles foot CTA — only visible on mobile, full-width */
.pk-blog__cta--foot {
	display: none !important;
	width: 100% !important;
	max-width: none !important;
	margin-top: 24px;
	box-sizing: border-box;
}
@media (max-width: 640px) {
	.pk-blog .pk-blog__grid {
		display: flex;
		grid-template-columns: none;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		gap: 12px;
		margin-inline: -16px;
		padding-inline: 16px;
		padding-bottom: 4px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.pk-blog .pk-blog__grid::-webkit-scrollbar { display: none; }
	.pk-blog .pk-article {
		flex: 0 0 calc(85% - 6px);
		scroll-snap-align: start;
	}
	.pk-blog__cta--head { display: none !important; }
	.pk-blog__cta--foot {
		display: flex !important;
		justify-content: center;
	}
}

.pk-article {
	position: relative;
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: transform 220ms var(--pk-ease), box-shadow 220ms var(--pk-ease);
}
.pk-article:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(3, 14, 30, 0.08);
}

.pk-article__cover {
	position: relative;
	height: 174px;
	overflow: hidden;
	background: linear-gradient(135deg, var(--wp--preset--color--brand-soft) 0%, var(--wp--preset--color--surface-alt) 100%);
	flex-shrink: 0;
}
.pk-article__img,
.pk-article__cover img {
	position: absolute;
	inset: 0;
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform 400ms var(--pk-ease);
}
.pk-article:hover .pk-article__img,
.pk-article:hover .pk-article__cover img { transform: scale(1.03); }
.pk-article__cover-fallback {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--brand);
	opacity: 0.25;
}
.pk-article__cover-fallback svg { width: 48px; height: 48px; }

.pk-article__category {
	position: absolute;
	top: 8px; left: 8px;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--brand);
	border: 1px solid #fff;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	padding: 4px 8px;
	border-radius: 100px;
	font-family: inherit;
	font-weight: 500;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0;
	text-transform: none;
}

.pk-article__body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex: 1;
}
.pk-article__text {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.pk-article__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
	letter-spacing: 0;
	transition: color 180ms var(--pk-ease);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.pk-article:hover .pk-article__title { color: var(--wp--preset--color--brand); }

.pk-article__excerpt {
	color: var(--wp--preset--color--muted);
	font-size: 14px;
	line-height: 20px;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.pk-article__divider {
	border: 0;
	border-top: 1px solid var(--wp--preset--color--border);
	margin: 0;
	width: 100%;
}

.pk-article__meta {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 12px;
	line-height: 18px;
	color: #9DA7BB;
	margin-top: auto;
}
.pk-article__meta > * {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	white-space: nowrap;
}
.pk-article__meta svg { width: 16px; height: 16px; flex-shrink: 0; }

.pk-blog__empty {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	padding: 64px 24px;
	background: #fff;
	border-radius: 16px;
}
.pk-blog__empty-icon {
	width: 64px;
	height: 64px;
	color: var(--wp--preset--color--brand);
	opacity: 0.4;
}
.pk-blog__empty-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 20px;
	line-height: 28px;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-blog__empty-desc {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
	max-width: 360px;
}
.pk-blog__empty-cta {
	display: inline-flex;
	align-items: center;
	padding: 12px 22px;
	border-radius: 100px;
	background: var(--wp--preset--color--brand);
	color: #fff;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	margin-top: 8px;
	transition: background 180ms var(--pk-ease);
}
.pk-blog__empty-cta:hover { background: var(--wp--preset--color--brand-dark); }

@media (max-width: 720px) {
	.pk-blog__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.pk-blog__cta { width: 100%; max-width: 320px; }
}

/* Blog page — hero with image -------------------------------------- */
.pk-blog-hero {
	background: var(--wp--preset--color--brand);
	color: #fff;
	overflow: hidden;
	padding-block: 0 !important;
}
.pk-blog-hero__inner {
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
	padding: clamp(60px, 10vw, 120px) clamp(16px, 4vw, 40px);
	display: flex;
	align-items: center;
	min-height: 360px;
}
.pk-blog-hero__text {
	position: relative;
	z-index: 1;
	max-width: 520px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pk-blog-hero__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(2rem, 4vw, 44px);
	line-height: 1.18;
	letter-spacing: 0;
	color: #fff;
	margin: 0;
}
.pk-blog-hero__lead {
	font-size: 14px;
	line-height: 20px;
	color: #9DA7BB;
	margin: 0;
}
.pk-blog-hero__img {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 484px;
	max-width: 50%;
	height: auto;
	object-fit: contain;
	pointer-events: none;
	user-select: none;
}
@media (max-width: 900px) {
	.pk-blog-hero { overflow: hidden; }
	.pk-blog-hero__inner {
		flex-direction: column;
		align-items: stretch;
		min-height: auto;
		padding: 40px 16px 0;
		gap: 24px;
	}
	.pk-blog-hero__text { max-width: none; gap: 16px; }
	.pk-blog-hero__title { font-size: 28px; line-height: 36px; }
	.pk-blog-hero__img {
		position: relative;
		right: auto;
		top: auto;
		transform: none;
		align-self: center;
		width: 100%;
		max-width: 320px;
		height: auto;
		max-height: 240px;
		object-fit: cover;
		object-position: center top;
		margin: 0 auto;
	}
}

/* Blog list — search + grid + pagination */
.pk-blog-list {
	background: var(--wp--preset--color--surface);
	padding-block: 0 80px;
	margin-top: 0;
}
.pk-blog-list__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 40px clamp(16px, 4vw, 40px) 0;
	display: flex;
	flex-direction: column;
	gap: 40px;
}
@media (max-width: 640px) {
	.pk-blog-list { padding-block: 0 40px; }
	.pk-blog-list__inner { gap: 28px; }
}

/* Search input */
.pk-blog-search {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	padding: 12px 14px;
	transition: border-color 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
}
.pk-blog-search:focus-within {
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 0 0 3px rgba(7, 54, 118, 0.12);
}
.pk-blog-search__icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	color: #9DA7BB;
}
.pk-blog-search input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	outline: none;
	font-family: inherit;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--brand-dark);
	-webkit-appearance: none;
	appearance: none;
}
.pk-blog-search input::placeholder { color: #9DA7BB; font-weight: 500; }
.pk-blog-search__clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--muted);
	flex-shrink: 0;
	text-decoration: none;
	transition: background 160ms var(--pk-ease), color 160ms var(--pk-ease);
}
.pk-blog-search__clear:hover {
	background: var(--wp--preset--color--brand);
	color: #fff;
}
.pk-blog-search__clear svg { width: 14px; height: 14px; }

/* Pagination */
.pk-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
}
.pk-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 8px;
	background: #fff;
	border: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--brand-dark);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	transition: background 160ms var(--pk-ease), color 160ms var(--pk-ease), border-color 160ms var(--pk-ease);
}
.pk-pagination .page-numbers:hover {
	border-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--brand);
}
.pk-pagination .page-numbers.current {
	background: var(--wp--preset--color--brand);
	border-color: var(--wp--preset--color--brand);
	color: #fff;
}
.pk-pagination .page-numbers.dots {
	border-color: transparent;
	background: transparent;
	cursor: default;
}
.pk-pagination .page-numbers.dots:hover {
	color: var(--wp--preset--color--brand-dark);
}
.pk-pagination .page-numbers svg { width: 16px; height: 16px; display: block; }

/* Single article (post) ---------------------------------------------- */
.pk-post {
	padding-block: 40px 80px;
	background: #fff;
}

/* Breadcrumbs at top, full content width */
.pk-breadcrumbs {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 12px;
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0 auto 40px;
	max-width: 1280px;
	width: 100%;
	min-width: 0;
	overflow: hidden;
	white-space: nowrap;
}
.pk-breadcrumbs a {
	color: inherit;
	text-decoration: none;
	flex-shrink: 0;
}
.pk-breadcrumbs a:hover { color: var(--wp--preset--color--brand); }
.pk-breadcrumbs__home { display: inline-flex; flex-shrink: 0; }
.pk-breadcrumbs__home svg { width: 20px; height: 20px; }
.pk-breadcrumbs__sep { color: var(--wp--preset--color--muted); flex-shrink: 0; }
.pk-breadcrumbs__current {
	color: var(--wp--preset--color--brand-dark);
	font-weight: 400;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Centered article column 800px */
.pk-post__column {
	max-width: 800px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.pk-post__header {
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: flex-start;
}
.pk-post__category {
	display: inline-flex;
	align-items: center;
	padding: 8px 16px;
	border-radius: 100px;
	background: var(--wp--preset--color--surface);
	border: 1px solid #fff;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	color: var(--wp--preset--color--brand);
	font-family: inherit;
	font-weight: 500;
	font-size: 12px;
	line-height: 12px;
	letter-spacing: 0;
	text-transform: none;
	text-decoration: none;
}
.pk-post__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-post__meta {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	font-size: 12px;
	line-height: 18px;
	color: #9DA7BB;
}
.pk-post__meta > * { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.pk-post__meta svg { width: 16px; height: 16px; flex-shrink: 0; }

.pk-post__hero {
	width: 100%;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: var(--wp--preset--color--surface);
}
.pk-post__hero img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Long-form body */
.pk-post__body {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
	display: flex;
	flex-direction: column;
	gap: 32px;
}
.pk-post__body > p:first-child {
	color: var(--wp--preset--color--muted);
}
.pk-post__body > * { margin: 0; }
.pk-post__body p { margin: 0; line-height: 20px; color: var(--wp--preset--color--muted); }
.pk-post__body h2 {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 24px;
	line-height: 32px;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-post__body h3 {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-post__body h2 + p,
.pk-post__body h3 + p { margin-top: -12px; }
.pk-post__body img,
.pk-post__body .wp-block-image { border-radius: 16px; overflow: hidden; }
.pk-post__body ul,
.pk-post__body ol {
	padding-left: 22px;
	margin: 0;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.pk-post__body li { margin: 0; line-height: 20px; }
.pk-post__body blockquote {
	margin: 0;
	padding: 16px;
	border-left: 4px solid var(--wp--preset--color--accent);
	background: var(--wp--preset--color--surface);
	border-radius: 0 12px 12px 0;
	font-style: normal;
	color: var(--wp--preset--color--brand-dark);
	font-size: 14px;
	line-height: 20px;
}
.pk-post__body blockquote p { margin: 0; color: inherit; }
.pk-post__body a {
	color: var(--wp--preset--color--brand);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.pk-post__body code {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 0.9em;
	background: var(--wp--preset--color--surface);
	padding: 2px 6px;
	border-radius: 4px;
}

/* Inline CTA card with image — mirrors .pk-services__banner sizing so the
   courier photo extends to the card edges fluidly with viewport. */
.pk-post__cta {
	position: relative;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border-radius: 16px;
	padding: 30px clamp(220px, 32vw, 380px) 30px 36px;
	min-height: 204px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 20px;
	overflow: hidden;
	margin: 0;
}
.pk-post__cta-text {
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 380px;
	position: relative;
	z-index: 1;
}
.pk-post__cta-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	color: #fff;
	margin: 0;
	letter-spacing: 0;
}
.pk-post__cta-desc {
	color: rgba(255, 255, 255, 0.8);
	font-size: 14px;
	line-height: 20px;
	margin: 0;
}
.pk-post__cta-btn {
	position: relative;
	z-index: 1;
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 256px;
	max-width: 100%;
	padding: 12px 16px 12px 22px;
	border-radius: 100px;
	background: #fff;
	color: var(--wp--preset--color--brand);
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-decoration: none;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	transition: opacity 180ms var(--pk-ease), transform 180ms var(--pk-ease);
}
.pk-post__cta-btn:hover { opacity: 0.92; transform: translateY(-1px); }
.pk-post__cta-btn svg { width: 20px; height: 20px; flex-shrink: 0; }
.pk-post__cta-img {
	position: absolute;
	right: 0;
	top: 0;
	width: clamp(220px, 38vw, 460px);
	height: 100%;
	object-fit: contain;
	object-position: right center;
	display: block;
	pointer-events: none;
}

@media (max-width: 900px) {
	.pk-post__cta { padding: 24px 240px 24px 24px; }
	.pk-post__cta-img { width: 220px; }
}
/* Mobile (Figma 147:7966): padding 16px all around, text → image (full width,
   230px tall) → full-width CTA pill. The image fills the band between text and
   button so the courier sits flush with the button top. */
@media (max-width: 700px) {
	.pk-post__cta {
		padding: 16px;
		min-height: 0;
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
		overflow: hidden;
	}
	.pk-post__cta-text {
		order: 1;
		max-width: none;
	}
	.pk-post__cta-img {
		order: 2;
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		bottom: -30px;
		width: 100%;
		max-width: none;
		height: 230px;
		max-height: none;
		object-fit: cover;
		object-position: center bottom;
		align-self: stretch;
	}
	.pk-post__cta-btn {
		order: 3;
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		width: 100%;
		justify-content: space-between;
	}
}

/* Related — full-width section with light gray background, H2 + 4 cards
   inside a max-1280px inner. Sits as its own section after the article. */
.pk-post-related {
	background: var(--bg-secondary, #F6F7F7);
	padding-block: 80px;
	margin: 0;
	max-width: none;
}
.pk-post-related__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding-inline: clamp(16px, 4vw, 40px);
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.pk-post-related__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}

@media (max-width: 600px) {
	.pk-post__column { gap: 24px; }
	.pk-post-related { padding-block: 48px; }
	.pk-post-related__inner { padding-inline: 0; }
}

/* Legal / Policy page ----------------------------------------------- */
.pk-legal {
	background: #fff;
	padding-block: 40px 80px;
}

.pk-legal__column {
	max-width: 800px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.pk-legal__header {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.pk-legal__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: clamp(1.75rem, 3.2vw, 36px);
	line-height: 1.22;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 0;
}
.pk-legal__date {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--muted);
	margin: 0;
}

.pk-legal__body {
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.pk-legal__body > * { margin: 0; }
.pk-legal__body p {
	margin: 0;
	color: var(--wp--preset--color--muted);
	line-height: 20px;
}
.pk-legal__body h2 {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 24px;
	line-height: 32px;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 16px 0 0;
}
.pk-legal__body h3 {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	letter-spacing: 0;
	color: var(--wp--preset--color--brand-dark);
	margin: 8px 0 -12px;
}
.pk-legal__body h2 + p,
.pk-legal__body h3 + p { margin-top: 0; }
.pk-legal__body ul,
.pk-legal__body ol {
	padding-left: 22px;
	margin: 0;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.pk-legal__body li { margin: 0; line-height: 20px; }
.pk-legal__body a {
	color: var(--wp--preset--color--brand);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.pk-legal__body strong { color: var(--wp--preset--color--brand-dark); font-weight: 600; }
.pk-legal__body blockquote {
	margin: 0;
	padding: 16px;
	border-left: 4px solid var(--wp--preset--color--accent);
	background: var(--wp--preset--color--surface);
	border-radius: 0 12px 12px 0;
	color: var(--wp--preset--color--brand-dark);
}
.pk-legal__body blockquote p { color: inherit; }

@media (max-width: 600px) {
	.pk-legal__column { gap: 24px; }
}

/* Site footer ----------------------------------------------------- */
.site-footer {
	background: var(--wp--preset--color--brand);
	color: #fff;
	padding-block: 40px;
	margin-top: 0;
}
.site-footer__inner {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.site-footer__top {
	display: flex;
	gap: 40px;
	align-items: flex-start;
}
@media (max-width: 1024px) {
	.site-footer__top { flex-wrap: wrap; }
	.site-footer__top > .site-footer__col { flex: 1 1 calc(50% - 20px); min-width: 240px; }
}
@media (max-width: 600px) {
	.site-footer__top { flex-direction: column; gap: 32px; }
	.site-footer__top > .site-footer__col { flex: 1 1 auto; width: 100%; }
}

.site-footer__col {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
}
.site-footer__brand { flex: 1 0 0; min-width: 0; }
.site-footer__col:not(.site-footer__brand) { width: 290px; flex-shrink: 0; }
@media (max-width: 1024px) {
	.site-footer__col:not(.site-footer__brand) { width: auto; }
}

.site-footer__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--wp--preset--color--accent);
	margin: 0;
	letter-spacing: 0;
	text-transform: none;
}

.site-footer__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.site-footer__list li {
	display: block;
	font-size: 14px;
	line-height: 20px;
	color: #D5D8E1;
}
.site-footer__list a {
	color: inherit;
	text-decoration: none;
	transition: color 180ms var(--pk-ease);
}
.site-footer__list a:hover { color: #fff; }

.site-footer__list--contacts li {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: #fff;
}
.site-footer__list--contacts li svg {
	width: 20px; height: 20px;
	flex-shrink: 0;
	color: #fff;
}

/* Brand column */
.site-footer__logo {
	display: inline-flex;
	align-items: center;
	height: 44px;
	max-width: 194px;
}
.site-footer__logo img {
	height: 44px;
	width: auto;
	max-width: 100%;
	object-fit: contain;
	display: block;
}
.site-footer__about {
	color: #D5D8E1;
	font-size: 14px;
	line-height: 20px;
	margin: 0;
}

/* Language switcher */
.site-footer__langs {
	display: inline-flex;
	align-items: stretch;
	padding: 2px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 100px;
	align-self: flex-start;
}
.site-footer__langs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 6px 12px;
	border-radius: 100px;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	color: #D5D8E1;
	text-decoration: none;
	transition: background 180ms, color 180ms;
}
.site-footer__langs a:hover { color: #fff; }
.site-footer__langs a.is-active {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
}

/* Hours box */
.site-footer__hours {
	background: rgba(255, 255, 255, 0.1);
	padding: 16px;
	border-radius: 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	font-size: 14px;
	line-height: 20px;
}
.site-footer__hours strong {
	color: #fff;
	font-weight: 500;
}
.site-footer__hours span {
	color: #9CAFC8;
	font-weight: 400;
}

/* Social */
.site-footer__social {
	display: flex;
	gap: 8px;
}
.site-footer__social a {
	width: 40px;
	height: 40px;
	border-radius: 100px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 180ms var(--pk-ease), color 180ms var(--pk-ease);
}
.site-footer__social a:hover {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
}
.site-footer__social svg { width: 24px; height: 24px; }

.site-footer__divider {
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	margin: 0;
	width: 100%;
}

/* Bottom bar */
.site-footer__bottom {
	display: flex;
	justify-content: flex-start;
	gap: 16px;
	font-size: 14px;
	line-height: 20px;
	color: #9DA7BB;
}
.site-footer__bottom p { margin: 0; }
.site-footer__bottom a { color: inherit; text-decoration: none; }
.site-footer__bottom a:hover { color: #fff; }

/* Promo popup — discount for phone -------------------------------- */
body.pk-no-scroll { overflow: hidden; }

.pk-promo {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: grid;
	grid-template-columns: min(100%, 480px);
	grid-auto-rows: min-content;
	justify-content: center;
	align-content: center;
	padding: 24px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 260ms var(--pk-ease);
}
.pk-promo.is-visible {
	opacity: 1;
	pointer-events: auto;
}
.pk-promo__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.4);
}

/* Sheet wrapper — positioning context for the close button on desktop
   so it can sit OUTSIDE the card to the upper-right (Figma 147:10742). */
.pk-promo__sheet {
	position: relative;
	width: 100%;
	max-width: 480px;
}

/* Close button — flat white X icon outside the card on the dark backdrop.
   No background, just the icon. Hover increases opacity. */
.pk-promo__close {
	position: absolute;
	top: -36px;
	right: -36px;
	width: 28px;
	height: 28px;
	border: 0;
	background: transparent;
	color: rgba(255, 255, 255, 0.92);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: color 180ms var(--pk-ease), transform 180ms var(--pk-ease);
	z-index: 12;
	padding: 0;
}
.pk-promo__close:hover         { color: #fff; transform: scale(1.08); }
.pk-promo__close:focus-visible { outline: 2px solid var(--wp--preset--color--accent); outline-offset: 4px; border-radius: 4px; }
.pk-promo__close svg           { width: 28px; height: 28px; display: block; }

.pk-promo__card {
	position: relative;
	z-index: 1;
	background: #fff;
	border-radius: 16px;
	padding: 20px;
	width: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 20px;
	transform: translateY(14px) scale(0.98);
	transition: transform 320ms var(--pk-ease);
}
.pk-promo.is-visible .pk-promo__card { transform: translateY(0) scale(1); }

/* Drag handle — only shown on mobile bottom-drawer layout */
.pk-promo__handle { display: none; }

.pk-promo__body {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Title cluster — tighter gap between H2 and subtitle, per Figma */
.pk-promo__head {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Yellow sticker badge — overlaps card top-RIGHT corner, clipped by card
   overflow (Figma 147:10742). Close button sits OUTSIDE card so they don't
   conflict. */
.pk-promo__badge {
	position: absolute;
	top: -35px;
	right: -20px;
	width: 110px;
	height: 110px;
	border-radius: 100px;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 32px 24px 24px;
	transform: rotate(15deg);
	box-shadow: 0 4px 16px rgba(255, 203, 8, 0.4);
	font-family: inherit;
	text-align: center;
	z-index: 3;
	pointer-events: none;
}
.pk-promo__badge-pre {
	font-size: 12px;
	font-weight: 400;
	line-height: 18px;
	letter-spacing: 0;
	text-transform: none;
	margin: 0;
}
.pk-promo__badge-num {
	font-size: 28px;
	font-weight: 800;
	line-height: 28px;
	letter-spacing: 0;
	margin: 0;
}
.pk-promo__badge-star { display: none; }

.pk-promo__title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 24px;
	line-height: 32px;
	color: var(--wp--preset--color--brand-dark);
	letter-spacing: 0;
	margin: 0;
	max-width: 283px;
}
.pk-promo__subtitle {
	color: var(--wp--preset--color--muted);
	font-size: 14px;
	line-height: 20px;
	margin: 0;
}

.pk-promo__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
}
.pk-promo__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.pk-promo__field label {
	display: block;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--muted);
	text-transform: none;
	letter-spacing: 0;
	margin: 0;
}
.pk-promo__field input {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	background: #fff;
	font-family: inherit;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--brand-dark);
	transition: border-color 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease);
	-webkit-appearance: none;
	appearance: none;
}
.pk-promo__field input::placeholder { color: #9DA7BB; }
.pk-promo__field input:focus {
	outline: none;
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 0 0 3px rgba(7, 54, 118, 0.12);
}

.pk-promo__agree {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--brand-dark);
	cursor: pointer;
}
.pk-promo__agree input {
	-webkit-appearance: none;
	appearance: none;
	width: 20px;
	height: 20px;
	border: 1px solid #D5D8E1;
	border-radius: 6px;
	background: #fff;
	flex-shrink: 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 160ms var(--pk-ease), border-color 160ms var(--pk-ease);
}
.pk-promo__agree input:checked {
	background: var(--wp--preset--color--brand);
	border-color: var(--wp--preset--color--brand);
}
.pk-promo__agree input:checked::after {
	content: "";
	width: 10px;
	height: 6px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg) translate(1px, -1px);
}
.pk-promo__agree a {
	color: inherit;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.pk-promo__submit {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	padding: 12px 22px 12px 16px;
	border-radius: 100px;
	background: var(--wp--preset--color--brand);
	color: #fff;
	border: 0;
	cursor: pointer;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 0;
	box-shadow: 0 2px 12px rgba(3, 14, 30, 0.12);
	transition: background 180ms var(--pk-ease), transform 180ms var(--pk-ease), box-shadow 180ms var(--pk-ease), opacity 180ms var(--pk-ease);
}
.pk-promo__submit:hover { background: var(--wp--preset--color--brand-dark); transform: translateY(-1px); box-shadow: 0 6px 18px rgba(3, 14, 30, 0.18); }
.pk-promo__submit:disabled { opacity: 0.7; cursor: wait; transform: none; }
.pk-promo__submit svg { width: 20px; height: 20px; flex-shrink: 0; }

.pk-promo__status {
	margin: 0;
	font-size: 13px;
	min-height: 0;
	line-height: 1.4;
}
.pk-promo__status:empty { display: none; }
.pk-promo__status[data-state="sending"] { color: var(--wp--preset--color--brand); padding: 8px 12px; background: var(--wp--preset--color--brand-soft); border-radius: 8px; }
.pk-promo__status[data-state="success"] { color: #0B7A4F; padding: 10px 12px; background: #E7F7EF; border-left: 3px solid #10B981; border-radius: 8px; font-weight: 600; }
.pk-promo__status[data-state="error"]   { color: #B91C1C; padding: 10px 12px; background: #FEF2F2; border-left: 3px solid #DC2626; border-radius: 8px; font-weight: 500; }

.pk-promo__fine {
	margin: 0;
	font-size: 12px;
	line-height: 18px;
	color: #9DA7BB;
}

/* Mobile (Figma 147:10743) — bottom drawer with 16px from screen edges,
   badge top-right overhang, close OUTSIDE drawer above-right on backdrop. */
@media (max-width: 560px) {
	.pk-promo {
		padding: 0 16px 16px;
		grid-template-columns: 100%;
		align-content: end;
	}
	.pk-promo__sheet { max-width: 100%; width: 100%; }
	.pk-promo__card {
		border-radius: 16px;
		padding: 16px;
		gap: 16px;
		max-height: calc(100vh - 80px);
		overflow-y: auto;
		transform: translateY(100%);
		transition: transform 320ms var(--pk-ease);
	}
	.pk-promo.is-visible .pk-promo__card { transform: translateY(0); }

	/* No drag handle on mobile drawer — Figma design doesn't show one. */
	.pk-promo__handle { display: none; }

	.pk-promo__title { font-size: 22px; line-height: 30px; max-width: 220px; }

	/* Badge top-right overhang, smaller, mirrors Figma 147:10856 */
	.pk-promo__badge {
		width: 80px;
		height: 80px;
		top: -26px;
		right: -8px;
		left: auto;
		padding: 23px 17px 17px;
	}
	.pk-promo__badge-num { font-size: 20px; line-height: 20px; }
	.pk-promo__badge-pre { font-size: 9px; line-height: 13px; }

	/* Close — flat white X above drawer, aligned with right edge */
	.pk-promo__close {
		top: -40px;
		right: 0;
		left: auto;
		width: 28px;
		height: 28px;
	}
	.pk-promo__close svg { width: 28px; height: 28px; }
}

/* Cookie consent banner ------------------------------------------- */
.pk-cookies {
	position: fixed;
	left: 16px;
	right: 16px;
	bottom: 16px;
	z-index: 100;
	max-width: 880px;
	margin-inline: auto;
	pointer-events: none;
	opacity: 0;
	transform: translateY(16px);
	transition: opacity 240ms var(--pk-ease), transform 240ms var(--pk-ease);
}
.pk-cookies.is-visible {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}

.pk-cookies__card {
	background: var(--wp--preset--color--brand);
	color: #fff;
	border: 1px solid #204a84;
	border-radius: 16px;
	padding: 16px;
	display: flex;
	gap: 16px;
	align-items: center;
	box-shadow: 0 8px 16px rgba(3, 14, 30, 0.12);
}

.pk-cookies__icon {
	width: 60px;
	height: 60px;
	border-radius: 100px;
	background: rgba(255, 255, 255, 0.1);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 26px;
	line-height: 1;
}

.pk-cookies__body {
	min-width: 0;
	flex: 1 0 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.pk-cookies__body h3 {
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 0;
	margin: 0;
	color: #fff;
}
.pk-cookies__body p {
	margin: 0;
	color: #9da7bb;
	font-size: 12px;
	line-height: 18px;
}
.pk-cookies__body a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.pk-cookies__body a:hover { color: #fff; }

.pk-cookies__actions {
	display: flex;
	gap: 8px;
	align-items: center;
	flex-shrink: 0;
}
.pk-cookies__btn {
	padding: 6px 12px;
	border-radius: 100px;
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	cursor: pointer;
	border: 0;
	white-space: nowrap;
	transition: background 160ms var(--pk-ease), color 160ms var(--pk-ease), opacity 160ms var(--pk-ease);
}
.pk-cookies__btn--primary {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
}
.pk-cookies__btn--primary:hover { opacity: 0.9; }
.pk-cookies__btn--ghost {
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
}
.pk-cookies__btn--ghost:hover { background: rgba(255, 255, 255, 0.18); }

/* Stack on mobile */
@media (max-width: 720px) {
	.pk-cookies__card {
		flex-direction: column;
		align-items: stretch;
		gap: 14px;
	}
	.pk-cookies__icon { width: 48px; height: 48px; font-size: 22px; }
	.pk-cookies__actions { flex-direction: column-reverse; }
	.pk-cookies__btn { width: 100%; text-align: center; padding: 10px 12px; }
}

/* Section H2 — match Figma H2-mob (24/32) on mobile */
@media (max-width: 640px) {
	.pk-services__title,
	.pk-process__title,
	.pk-packages__title,
	.pk-reviews__title,
	.pk-blog__title {
		font-size: 24px;
		line-height: 32px;
	}
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
	* { transition: none !important; animation: none !important; }
	html { scroll-behavior: auto; }
}

/* Flatpickr — match brand palette and form input shape. */
.flatpickr-input[readonly] {
	background-color: #fff;
	cursor: pointer;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' fill='none' stroke='%23073676' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='3' y='4.5' width='14' height='13' rx='2'/%3E%3Cline x1='3' y1='8.5' x2='17' y2='8.5'/%3E%3Cline x1='7' y1='2.5' x2='7' y2='6.5'/%3E%3Cline x1='13' y1='2.5' x2='13' y2='6.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 18px 18px;
	padding-right: 40px;
}
.flatpickr-calendar {
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(7, 54, 118, 0.18);
	font-family: var(--wp--preset--font-family--sans, inherit);
}
.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.startRange,
.flatpickr-day.selected.endRange {
	background: var(--wp--preset--color--brand);
	border-color: var(--wp--preset--color--brand);
}
.flatpickr-day.today {
	border-color: var(--wp--preset--color--accent);
}
.flatpickr-day.today:hover {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
	border-color: var(--wp--preset--color--accent);
}
.flatpickr-months .flatpickr-month,
.flatpickr-current-month,
.flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
	color: var(--wp--preset--color--brand-dark);
}
.flatpickr-weekdays,
span.flatpickr-weekday {
	color: var(--wp--preset--color--brand);
	font-weight: 600;
}

/* Scroll-to-top button — yellow accent so it pops against both the light
   page body and the dark navy footer. Round, fixed bottom-right. */
.pk-scroll-top {
	position: fixed;
	right: 24px;
	bottom: 24px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--brand-dark);
	border: 0;
	box-shadow: 0 6px 20px rgba(3, 14, 30, 0.28);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	z-index: 90;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 200ms var(--pk-ease), transform 200ms var(--pk-ease), background 180ms var(--pk-ease);
}
.pk-scroll-top.is-visible {
	opacity: 1;
	transform: translateY(0);
}
.pk-scroll-top:hover         { background: #ffd633; transform: translateY(-2px); }
.pk-scroll-top:focus-visible { outline: 2px solid var(--wp--preset--color--brand); outline-offset: 3px; }
.pk-scroll-top svg           { width: 20px; height: 20px; display: block; }
@media (max-width: 560px) {
	.pk-scroll-top { right: 16px; bottom: 16px; width: 44px; height: 44px; }
	.pk-scroll-top svg { width: 18px; height: 18px; }
}
