@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("../fonts/manrope-cyrillic.woff2") format("woff2");
	unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("../fonts/manrope-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--pp-red: #e21a25;
	--pp-ink: #211d1d;
	--pp-muted: #68615f;
	--pp-line: #e7e2de;
	--pp-bg: #f7f6f3;
	--pp-panel: #ffffff;
	--pp-green: #23483b;
}

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

html {
	min-width: 320px;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	color: var(--pp-ink);
	font-family: Manrope, Arial, sans-serif;
	background: var(--pp-bg);
}

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

img {
	max-width: 100%;
	height: auto;
}

.site,
.site-main {
	width: 100%;
	max-width: none;
}

a {
	color: inherit;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	border: 0;
	white-space: nowrap;
}

.screen-reader-text:focus,
.skip-link:focus {
	z-index: 100000;
	top: 12px;
	left: 12px;
	width: auto;
	height: auto;
	margin: 0;
	padding: 12px 16px;
	overflow: visible;
	clip: auto;
	clip-path: none;
	border-radius: 4px;
	background: #fff;
	color: #111;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.22);
}

.alignleft {
	float: left;
	margin: 0 1.5rem 1rem 0;
}

.alignright {
	float: right;
	margin: 0 0 1rem 1.5rem;
}

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.wp-caption,
.gallery-caption {
	max-width: 100%;
}

.pp-container {
	width: min(1320px, calc(100% - 40px));
	margin: 0 auto;
}

.pp-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(255, 255, 255, 0.96);
	border-bottom: 1px solid var(--pp-line);
	backdrop-filter: blur(12px);
}

.pp-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 76px;
	gap: 18px;
}

.pp-logo {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
	font-weight: 800;
	font-size: 24px;
	text-decoration: none;
	letter-spacing: 0;
}

.pp-logo span {
	color: var(--pp-red);
}

.pp-logo img {
	display: block;
	width: 174px;
	max-width: 100%;
	height: auto;
}

.pp-nav ul {
	display: flex;
	align-items: center;
	gap: 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pp-nav a {
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.pp-header__actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.pp-phone {
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.pp-button,
.button,
button.single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--pp-red);
	border-radius: 6px;
	background: var(--pp-red);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.pp-button--ghost {
	background: transparent;
	color: var(--pp-ink);
	border-color: var(--pp-line);
}

.pp-button--small {
	min-height: 38px;
	padding: 0 14px;
	font-size: 14px;
}

.pp-menu-toggle {
	display: none;
	width: 44px;
	height: 44px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
	font-size: 22px;
}

.site-main {
	min-height: 56vh;
}

.pp-hero {
	background: linear-gradient(135deg, #221e1d 0%, #334e43 100%);
	color: #fff;
}

.pp-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
	gap: 42px;
	align-items: center;
	padding: 74px 0;
}

.pp-eyebrow {
	margin: 0 0 14px;
	color: var(--pp-red);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.pp-hero h1,
.pp-page-hero h1 {
	margin: 0;
	font-size: clamp(34px, 5vw, 64px);
	line-height: 1.02;
	letter-spacing: 0;
}

.pp-hero p,
.pp-page-hero p {
	max-width: 680px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 18px;
	line-height: 1.6;
}

.pp-hero__panel {
	padding: 28px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.08);
}

.pp-hero__stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
	margin-top: 28px;
}

.pp-stat {
	padding: 18px;
	border-radius: 8px;
	background: #fff;
	color: var(--pp-ink);
}

.pp-stat strong {
	display: block;
	font-size: 28px;
}

.pp-section {
	padding: 64px 0;
}

.pp-section--white {
	background: #fff;
}

.pp-section__head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 28px;
}

.pp-section__head--center {
	display: block;
	max-width: 720px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.pp-section__head--center p {
	margin: 14px auto 0;
	max-width: 560px;
	color: var(--pp-muted);
	line-height: 1.55;
}

.pp-section__head span {
	color: var(--pp-red);
}

.pp-section h2,
.entry-title {
	margin: 0;
	font-size: clamp(28px, 3vw, 44px);
	line-height: 1.08;
	letter-spacing: 0;
}

.pp-section__footer {
	display: flex;
	justify-content: center;
	margin-top: 34px;
}

.pp-home-strip {
	overflow: hidden;
	background: var(--pp-red);
	color: #fff;
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.pp-home-strip__track {
	display: flex;
	width: max-content;
	min-width: max-content;
	will-change: transform;
	animation: pp-home-marquee 28s linear infinite;
}

.pp-home-strip__group {
	display: flex;
	flex: none;
	min-width: max-content;
}

.pp-home-strip__group span {
	display: inline-block;
	padding: 9px 28px;
}

@keyframes pp-home-marquee {
	to {
		transform: translate3d(-50%, 0, 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.pp-home-strip__track {
		width: 100%;
		animation: none;
		transform: none;
	}

	.pp-home-strip__group {
		width: 100%;
		justify-content: center;
	}

	.pp-home-strip__group[aria-hidden="true"],
	.pp-home-strip__group span + span {
		display: none;
	}

	.pp-home-strip__group span {
		white-space: normal;
		text-align: center;
	}
}

.pp-front-breadcrumbs {
	padding: 14px 0;
	background: #f1f1f1;
}

.pp-front-product-page {
	background: #f8f8f8;
}

.pp-front-product {
	padding: 34px 0 74px;
	background: #f8f8f8;
}

.pp-front-product__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.9fr);
	gap: 64px;
	align-items: start;
}

.pp-front-product__summary h1 {
	max-width: 650px;
	margin: 0 0 14px;
	font-size: clamp(38px, 4vw, 58px);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: 0;
}

.pp-front-product__price {
	margin: 22px 0 20px;
	color: var(--pp-ink);
	font-size: 36px;
	font-weight: 800;
}

.pp-front-product__summary .pp-product-card__options,
.pp-front-static-options {
	max-width: 420px;
}

.pp-front-product__summary .pp-product-card__colors {
	margin: 16px 0 0;
}

.pp-front-product__description {
	max-width: 650px;
	margin: 24px 0 22px;
	color: #444;
	font-size: 16px;
	line-height: 1.65;
}

.pp-front-product__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 520px;
	padding: 42px;
	background: #fff;
	text-decoration: none;
}

.pp-front-product__media img {
	display: block;
	width: 100%;
	max-width: 440px;
	max-height: 460px;
	object-fit: contain;
}

.pp-home-hero {
	position: relative;
	background-color: #f2f1ed;
	background-position: center;
	background-size: cover;
}

.pp-home-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.58);
}

.pp-home-hero__inner {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 54px;
	align-items: start;
	padding: 42px 0 70px;
}

.pp-home-direction {
	display: block;
	text-decoration: none;
}

.pp-home-direction span {
	display: block;
	margin-bottom: 4px;
	color: var(--pp-ink);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.1;
}

.pp-home-direction strong {
	display: block;
	margin-bottom: 12px;
	color: var(--pp-red);
	font-size: 18px;
	line-height: 1.1;
}

.pp-home-direction img {
	display: block;
	width: 100%;
	aspect-ratio: 1.05 / 1;
	object-fit: cover;
	filter: grayscale(1);
	transition: filter 280ms ease;
}

.pp-home-direction:hover img,
.pp-home-direction:focus-visible img {
	filter: none;
}

.pp-home-phone-card {
	position: absolute;
	right: 0;
	bottom: 28px;
	display: grid;
	gap: 5px;
	width: min(330px, 42vw);
	padding: 16px 24px;
	background: rgba(33, 29, 29, 0.82);
	color: #fff;
}

.pp-home-phone-card span {
	font-size: 13px;
}

.pp-home-phone-card a {
	color: #fff;
	font-size: 22px;
	font-weight: 800;
	text-decoration: none;
}

.pp-application-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	max-width: 620px;
	margin: 0 auto;
}

.pp-application-tile {
	position: relative;
	display: block;
	overflow: hidden;
	min-height: 158px;
	background: #ddd;
	color: #fff;
	text-decoration: none;
}

.pp-application-tile--static {
	cursor: default;
}

.pp-application-tile.pp-application-tile--static:hover img {
	transform: none;
}

.pp-application-tile img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 158px;
	object-fit: cover;
	transition: transform 180ms ease;
}

.pp-application-tile:hover img {
	transform: scale(1.035);
}

.pp-application-tile span {
	position: absolute;
	left: 12px;
	bottom: 12px;
	max-width: calc(100% - 24px);
	padding: 7px 10px;
	background: var(--pp-red);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.15;
}

.pp-advantage-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	max-width: 560px;
	margin: 0 auto;
}

.pp-advantage {
	display: grid;
	place-items: center;
	gap: 12px;
	min-height: 148px;
	padding: 16px;
	border: 1px solid #bfb8b2;
	border-radius: 6px;
	background: #fff;
	text-align: center;
}

.pp-advantage span {
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	color: #2f2c2b;
	font-size: 38px;
	line-height: 1;
}

.pp-advantage strong {
	max-width: 120px;
	font-size: 13px;
	line-height: 1.2;
}

.pp-delivery {
	position: relative;
	color: #fff;
	background-color: #1f2b34;
	background-position: center;
	background-size: cover;
}

.pp-delivery::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(11, 25, 36, 0.82), rgba(11, 25, 36, 0.58));
}

.pp-delivery__inner {
	position: relative;
	padding: 76px 0;
}

.pp-delivery h2 {
	margin: 0 0 8px;
	font-size: clamp(28px, 3vw, 42px);
	line-height: 1.08;
}

.pp-delivery__lead {
	margin: 0 0 20px;
	font-size: 18px;
	font-weight: 700;
}

.pp-delivery__logos {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	max-width: 620px;
	margin-bottom: 26px;
}

.pp-delivery__logos img {
	width: auto;
	max-width: 92px;
	height: 30px;
	padding: 4px 8px;
	object-fit: contain;
	background: #fff;
}

.pp-delivery p:last-child {
	max-width: 680px;
	margin: 0;
	color: rgba(255, 255, 255, 0.88);
	line-height: 1.7;
}

.pp-client-photos {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.pp-client-photos img {
	display: block;
	width: 100%;
	aspect-ratio: 1.35 / 1;
	object-fit: cover;
}

.pp-home-contacts {
	background: #f1efeb;
}

.pp-home-contacts__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
	max-width: 880px;
	margin: 0 auto;
	text-align: center;
}

.pp-home-contacts__grid div {
	display: grid;
	gap: 7px;
}

.pp-home-contacts__grid strong {
	font-size: 15px;
}

.pp-home-contacts__grid a {
	color: var(--pp-ink);
	font-size: 14px;
	text-decoration: none;
}

.pp-grid-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.pp-feature {
	padding: 24px;
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
}

.pp-feature h3 {
	margin: 0 0 10px;
	font-size: 20px;
}

.pp-feature p,
.entry-content,
.term-description {
	color: var(--pp-muted);
	line-height: 1.7;
}

.pp-page-hero {
	padding: 54px 0;
	background: var(--pp-green);
	color: #fff;
}

.pp-category-page-hero {
	position: relative;
	min-height: 380px;
	padding: 40px 0 70px;
	background-color: #f4f1ef;
	background-position: center;
	background-size: cover;
	color: var(--pp-ink);
}

.pp-category-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.2);
}

.pp-category-page-hero .pp-container {
	position: relative;
}

.pp-category-page-hero h1 {
	max-width: 720px;
	margin: 72px 0 34px;
	font-size: clamp(42px, 5vw, 72px);
	line-height: 1.14;
	letter-spacing: 0;
}

.pp-category-page-hero p {
	max-width: 640px;
	margin: 0 0 28px;
	color: #666;
	font-size: 24px;
	line-height: 1.45;
}

.pp-category-description {
	max-width: 640px;
	margin: 0 0 28px;
	color: #666;
	font-size: 22px;
	line-height: 1.45;
}

.pp-category-description p {
	margin: 0;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

.pp-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	color: #666;
	font-size: 17px;
}

.pp-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.pp-breadcrumbs a:hover {
	color: var(--pp-red);
}

.pp-city-hero {
	position: relative;
	padding: 86px 0;
	background:
		radial-gradient(circle at 78% 28%, rgba(217, 35, 46, 0.14), transparent 34%),
		linear-gradient(125deg, #fff 0%, #f7f7f7 58%, #ececec 100%);
	color: var(--pp-ink);
}

.pp-city-hero h1 {
	max-width: 760px;
	margin: 0 0 22px;
	font-size: clamp(42px, 5vw, 76px);
	line-height: 1.08;
	letter-spacing: 0;
}

.pp-city-hero p {
	max-width: 720px;
	margin: 0 0 30px;
	color: #555;
	font-size: 22px;
	line-height: 1.45;
}

.pp-page-layout {
	padding: 48px 0 64px;
}

.pp-content-panel {
	max-width: 880px;
	padding: 32px;
	border-radius: 8px;
	background: #fff;
	border: 1px solid var(--pp-line);
}

.pp-tilda-intro {
	padding: 36px 0 52px;
	background: #fff;
	color: var(--pp-ink);
}

.pp-tilda-intro__center {
	max-width: 920px;
	margin: 58px auto 0;
	text-align: center;
}

.pp-tilda-intro__center h1 {
	margin: 0;
	font-size: clamp(34px, 4vw, 58px);
	font-weight: 500;
	line-height: 1.14;
	letter-spacing: 0;
}

.pp-tilda-intro__center h1 span,
.pp-tilda-redline {
	color: var(--pp-red);
}

.pp-tilda-intro__center p {
	max-width: 900px;
	margin: 18px auto 0;
	color: var(--pp-ink);
	font-size: 20px;
	line-height: 1.5;
}

.pp-tilda-redline {
	font-style: italic;
	font-weight: 800;
}

.pp-tilda-sections {
	display: grid;
	gap: 0;
	background: #fff;
}

.pp-tilda-split {
	padding: 36px 0;
	background: #fff;
}

.pp-tilda-split__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 44px;
	align-items: center;
}

.pp-tilda-split--reverse .pp-tilda-split__media {
	order: 2;
}

.pp-tilda-split__media img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	filter: grayscale(1);
}

.pp-tilda-split__content {
	max-width: 560px;
}

.pp-tilda-split__content h2 {
	margin: 0 0 18px;
	font-size: clamp(26px, 3vw, 42px);
	font-weight: 700;
	line-height: 1.14;
	letter-spacing: 0;
}

.pp-tilda-split__content p,
.pp-about-lead p {
	margin: 0;
	color: var(--pp-muted);
	font-size: 17px;
	line-height: 1.72;
}

.pp-tilda-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 24px;
}

.pp-tilda-links a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0 14px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-ink);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
}

.pp-tilda-links a:hover {
	border-color: var(--pp-red);
	color: var(--pp-red);
}

.pp-tilda-bullets {
	display: grid;
	gap: 10px;
	margin: 22px 0 0;
	padding-left: 22px;
	color: var(--pp-muted);
	font-size: 17px;
	line-height: 1.62;
}

.pp-tilda-bullets li::marker {
	color: var(--pp-ink);
}

.pp-tilda-split__content .pp-button {
	margin-top: 26px;
}

.pp-tilda-slider {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(280px, 38%);
	gap: 18px;
	overflow-x: auto;
	padding: 4px 0 12px;
	scroll-snap-type: x mandatory;
}

.pp-tilda-slider img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	scroll-snap-align: start;
}

.pp-form-panel {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1fr);
	gap: 32px;
	align-items: start;
	padding: 34px;
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
}

.pp-form-panel h2 {
	margin: 0 0 12px;
	font-size: clamp(26px, 3vw, 40px);
	line-height: 1.12;
}

.pp-form-panel p:not(.pp-eyebrow) {
	margin: 0;
	color: var(--pp-muted);
	font-size: 17px;
	line-height: 1.6;
}

.pp-form-panel form {
	display: grid;
	gap: 12px;
}

.pp-form-panel input,
.pp-form-panel textarea,
.pp-form-panel select {
	width: 100%;
	min-height: 46px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
}

.pp-about-lead {
	display: grid;
	gap: 14px;
	max-width: 900px;
	margin: 0 auto 30px;
	text-align: center;
}

.pp-about-facts--row {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.pp-about-facts--row div {
	padding: 0 18px;
	border-bottom: 0;
	border-right: 1px solid var(--pp-line);
}

.pp-about-facts--row div:last-child {
	border-right: 0;
}

.pp-contacts-top {
	padding: 34px 0 28px;
	background: #fff;
}

.pp-contacts-top .pp-breadcrumbs {
	justify-content: center;
}

.pp-contact-map-section {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
	min-height: 520px;
	background: #2f2f2f;
}

.pp-contact-map iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 520px;
	border: 0;
}

.pp-contact-location {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 520px;
	padding: 64px;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(245, 245, 245, 0.86)),
		url("../images/category-hero.png") center / cover;
}

.pp-contact-location > div {
	width: min(520px, 100%);
}

.pp-contact-location h2 {
	margin: 0 0 18px;
	font-size: clamp(34px, 4vw, 54px);
	font-weight: 400;
}

.pp-contact-location p:not(.pp-eyebrow) {
	margin: 0 0 28px;
	font-size: 19px;
	line-height: 1.6;
}

.pp-contact-dark {
	display: flex;
	align-items: center;
	background: #303030;
	color: #fff;
}

.pp-contact-dark__inner {
	width: min(560px, calc(100% - 72px));
	margin: 0 auto;
}

.pp-contact-dark h1 {
	margin: 0 0 46px;
	font-size: clamp(34px, 4vw, 50px);
	font-weight: 400;
	line-height: 1.14;
	letter-spacing: 0;
}

.pp-contact-lines {
	display: grid;
	gap: 34px;
}

.pp-contact-lines div {
	display: grid;
	gap: 8px;
}

.pp-contact-lines strong {
	font-size: 22px;
	line-height: 1.2;
}

.pp-contact-lines em {
	color: rgba(255, 255, 255, 0.82);
	font-size: 20px;
	line-height: 1.2;
}

.pp-contact-lines a {
	color: rgba(255, 255, 255, 0.86);
	font-size: 20px;
	text-decoration: none;
}

.pp-contact-lines .pp-contact-red {
	color: var(--pp-red);
}

.pp-contact-question {
	max-width: 1440px;
	text-align: center;
}

.pp-contact-question h2 {
	margin: 0 0 22px;
	font-size: clamp(34px, 4vw, 58px);
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: 0;
}

.pp-contact-question > p {
	margin: 0 auto 32px;
	max-width: 960px;
	color: var(--pp-ink);
	font-size: 28px;
	line-height: 1.45;
}

.pp-contact-question__form {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.pp-delivery-page,
.pp-contact-layout,
.pp-about-layout,
.pp-industrial-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 0.42fr);
	gap: 24px;
	align-items: start;
}

.pp-delivery-page__aside,
.pp-about-facts,
.pp-industrial-list,
.pp-contact-card {
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
}

.pp-delivery-page__aside,
.pp-about-facts,
.pp-industrial-list {
	padding: 24px;
}

.pp-delivery-page__aside h2 {
	margin: 0 0 18px;
	font-size: 24px;
}

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

.pp-delivery-page__logos img {
	display: block;
	width: 100%;
	height: 48px;
	padding: 8px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	object-fit: contain;
}

.pp-contact-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 24px;
}

.pp-contact-card {
	display: grid;
	gap: 8px;
	padding: 20px;
}

.pp-contact-card a {
	color: var(--pp-ink);
	text-decoration: none;
}

.pp-about-facts,
.pp-industrial-list {
	display: grid;
	gap: 12px;
}

.pp-about-facts div,
.pp-industrial-list div {
	display: grid;
	gap: 4px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--pp-line);
}

.pp-about-facts div:last-child,
.pp-industrial-list div:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.pp-about-facts strong {
	color: var(--pp-red);
	font-size: 34px;
	line-height: 1;
}

.pp-about-facts span,
.pp-industrial-list span {
	color: var(--pp-muted);
	line-height: 1.45;
}

.pp-landing-content {
	max-width: none;
	margin-bottom: 34px;
}

.pp-landing-page-hero {
	padding: 34px 0 56px;
	background: #f2f2f2;
	color: var(--pp-ink);
}

.pp-landing-page-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.52fr);
	gap: 48px;
	align-items: center;
	max-width: 980px;
	margin: 34px auto 0;
}

.pp-landing-page-hero h1 {
	margin: 0 0 18px;
	font-size: clamp(34px, 4vw, 56px);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: 0;
}

.pp-landing-page-hero p {
	max-width: 640px;
	margin: 0 0 24px;
	color: #444;
	font-size: 18px;
	line-height: 1.6;
}

.pp-landing-page-hero__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 300px;
	padding: 28px;
	background: #fff;
}

.pp-landing-page-hero__media img {
	display: block;
	width: 100%;
	max-height: 300px;
	object-fit: contain;
}

.pp-landing-page-hero__media--category span {
	color: var(--pp-red);
	font-size: clamp(28px, 3vw, 42px);
	font-weight: 800;
	line-height: 1.1;
	text-align: center;
}

.pp-landing-note {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 12px 0 0;
}

.pp-landing-note span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 4px 10px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-muted);
	font-size: 14px;
	font-weight: 600;
}

.pp-landing-product {
	display: grid;
	grid-template-columns: minmax(260px, 0.42fr) minmax(0, 0.58fr);
	gap: 28px;
	align-items: center;
	padding: 28px;
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
}

.pp-landing-product__image {
	display: block;
	padding: 24px;
	background: #fafafa;
	text-decoration: none;
}

.pp-landing-product__image img {
	display: block;
	width: 100%;
	max-height: 360px;
	object-fit: contain;
}

.pp-landing-product__body h3 {
	margin: 0 0 12px;
	font-size: clamp(26px, 3vw, 40px);
	line-height: 1.12;
}

.pp-landing-product__price {
	margin-bottom: 16px;
	color: var(--pp-red);
	font-size: 24px;
	font-weight: 800;
}

.pp-router-landing {
	padding: 34px 0 72px;
	background: #f2f2f2;
}

.pp-router-landing .pp-breadcrumbs {
	margin-bottom: 28px;
}

.pp-router-landing__top {
	display: grid;
	grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.1fr);
	gap: 54px;
	align-items: start;
	max-width: 980px;
	margin: 0 auto 44px;
}

.pp-router-landing__media {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-height: 360px;
	padding: 34px;
	background: #fff;
}

.pp-router-landing__media img {
	display: block;
	width: auto;
	max-width: 48%;
	max-height: 300px;
	object-fit: contain;
}

.pp-router-landing__media img:only-child {
	max-width: 88%;
}

.pp-router-landing__summary h1 {
	margin: 0 0 8px;
	font-size: clamp(28px, 3vw, 44px);
	font-weight: 700;
	line-height: 1.14;
	letter-spacing: 0;
}

.pp-router-landing__brand {
	margin: 0 0 24px;
	color: #858585;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
}

.pp-router-landing__lead,
.pp-router-landing__text p {
	margin: 0 0 16px;
	color: #333;
	font-size: 16px;
	line-height: 1.65;
}

.pp-router-specs {
	display: grid;
	max-width: 820px;
	margin: 0 auto;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #fff;
}

.pp-router-specs__row {
	display: grid;
	grid-template-columns: minmax(180px, 0.34fr) minmax(0, 0.66fr);
	min-height: 74px;
}

.pp-router-specs__row strong,
.pp-router-specs__row span {
	padding: 18px 20px;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	font-size: 15px;
	line-height: 1.5;
}

.pp-router-specs__row strong {
	background: #f5f5f5;
	font-weight: 600;
}

.pp-router-specs__row span {
	color: #555;
}

.pp-product-grid,
.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pp-product-card,
.products .product {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.pp-product-card:hover,
.products .product:hover {
	border-color: rgba(226, 26, 37, 0.28);
	box-shadow: 0 14px 34px rgba(33, 29, 29, 0.08);
	transform: translateY(-2px);
}

.pp-product-card__badge {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: #f5ca45;
	color: #211d1d;
	font-size: 12px;
	font-weight: 800;
}

.pp-product-card__image,
.woocommerce-loop-product__link {
	display: block;
	padding: 24px;
	background: #fff;
	text-decoration: none;
}

.pp-product-card__image > img,
.products .product .pp-product-card__image > img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
}

.pp-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 16px;
}

.pp-product-card__title,
.woocommerce-loop-product__title {
	display: block;
	margin: 0 0 10px;
	color: var(--pp-ink);
	font-size: 17px;
	font-weight: 800;
	line-height: 1.25;
	text-decoration: none;
}

.pp-product-card__sku {
	margin: 0 0 12px;
	color: #9d9692;
	font-size: 13px;
}

.pp-product-card__price,
.price {
	margin-bottom: 12px;
	color: var(--pp-red);
	font-weight: 800;
}

.pp-product-card__options {
	display: grid;
	gap: 8px;
	margin: 14px 0 12px;
	font-size: 15px;
}

.pp-product-card__option-label {
	margin-bottom: 4px;
	color: var(--pp-ink);
	font-size: 15px;
	font-weight: 700;
}

.pp-product-card__option {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
	min-height: 46px;
	padding: 3px 0;
	border: 0;
	background: transparent;
	color: var(--pp-muted);
	font: inherit;
	line-height: 1.25;
	text-align: left;
	cursor: pointer;
}

.pp-product-card__option img {
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border: 1px solid var(--pp-line);
	border-radius: 4px;
	object-fit: contain;
	background: #fff;
}

.pp-radio-dot {
	width: 16px;
	height: 16px;
	border: 1px solid #c9c4c0;
	border-radius: 50%;
	background: #fff;
	flex: 0 0 auto;
}

.pp-product-card__option.is-active .pp-radio-dot {
	border-color: #8d8985;
	box-shadow: inset 0 0 0 3px #fff;
	background: #8d8985;
}

.pp-product-card__colors {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	min-height: 24px;
	margin: 10px 0 16px;
}

.pp-product-card__body .pp-button {
	align-self: flex-start;
	margin-top: auto;
}

.pp-product-card__color {
	width: 34px;
	height: 34px;
	padding: 3px;
	border: 1px solid rgba(0, 0, 0, 0.18);
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
}

.pp-product-card__color::before {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: var(--pp-card-color);
	content: "";
}

.pp-product-card__color.is-active {
	border-color: #555;
	box-shadow: 0 0 0 2px #fff, 0 0 0 3px #777;
}

.pp-product-card__option.is-unavailable,
.pp-product-card__color.is-unavailable {
	opacity: 0.3;
	cursor: not-allowed;
}

.pp-product-card__meta {
	min-height: 24px;
	margin-bottom: 14px;
	color: var(--pp-muted);
	font-size: 13px;
}

.pp-catalog-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 28px;
}

.pp-catalog-nav__item {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 13px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-ink);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: border-color 160ms ease, color 160ms ease, background-color 160ms ease;
}

.pp-catalog-nav__item:hover,
.pp-catalog-nav__item.is-active {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}

.pp-store-hero {
	position: relative;
	background-color: #f3f1ee;
	background-position: center;
	background-size: cover;
}

.pp-store-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.78) 42%, rgba(255, 255, 255, 0.24) 100%);
}

.pp-store-hero .pp-container {
	position: relative;
	padding: 86px 0 92px;
}

.pp-store-hero h1 {
	max-width: 620px;
	margin: 0;
	font-size: clamp(36px, 4.8vw, 64px);
	font-weight: 500;
	line-height: 1.08;
}

.pp-store-breadcrumbs {
	padding: 16px 0;
	background: #fff;
}

.pp-catalog-toolbar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	margin: 0 0 22px;
}

.pp-catalog-toolbar form {
	display: flex;
	align-items: stretch;
}

.pp-catalog-toolbar input[type="search"] {
	min-height: 42px;
	width: min(260px, 48vw);
	border: 1px solid var(--pp-line);
	border-radius: 6px 0 0 6px;
	background: #fff;
}

.pp-catalog-toolbar button {
	min-height: 42px;
	border-radius: 0 6px 6px 0;
}

.pp-catalog-toolbar .woocommerce-ordering {
	margin: 0;
}

.pp-catalog-toolbar select {
	min-height: 42px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
}

.pp-category-info {
	display: grid;
	grid-template-columns: minmax(260px, 0.75fr) minmax(0, 1.25fr);
	gap: 34px;
	align-items: start;
}

.pp-category-info h2 {
	margin: 0;
	font-size: clamp(28px, 3.4vw, 46px);
	line-height: 1.1;
}

.pp-category-info p {
	margin: 0;
	color: var(--pp-muted);
	font-size: 18px;
	line-height: 1.68;
}

.pp-category-use-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 28px;
}

.pp-category-use-grid div {
	padding: 20px;
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
}

.pp-category-use-grid strong,
.pp-category-use-grid span {
	display: block;
}

.pp-category-use-grid strong {
	margin-bottom: 8px;
	font-size: 17px;
}

.pp-category-use-grid span {
	color: var(--pp-muted);
	line-height: 1.55;
}

.pp-catalog-layout {
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

.pp-catalog-main {
	min-width: 0;
}

.pp-catalog-sidebar {
	position: sticky;
	top: 96px;
	display: grid;
	gap: 16px;
}

.pp-filter-block {
	padding: 16px;
	border: 1px solid var(--pp-line);
	border-radius: 8px;
	background: #fff;
}

.pp-filter-block h2 {
	margin: 0 0 12px;
	font-size: 16px;
	line-height: 1.2;
}

.pp-price-filter {
	display: grid;
	gap: 8px;
	margin-bottom: 10px;
}

.pp-price-filter label {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	gap: 6px;
	align-items: center;
	color: var(--pp-muted);
	font-size: 13px;
}

.pp-price-filter input {
	width: 100%;
	min-height: 36px;
}

.pp-filter-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.pp-filter-swatches a {
	display: inline-flex;
	width: 24px;
	height: 24px;
	padding: 3px;
	border: 1px solid #c9c4c0;
	border-radius: 50%;
	background: #fff;
}

.pp-filter-swatches span {
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 50%;
}

.pp-filter-links {
	display: grid;
	gap: 8px;
}

.pp-filter-links a {
	color: var(--pp-muted);
	font-size: 14px;
	line-height: 1.25;
	text-decoration: none;
}

.pp-filter-links a:hover {
	color: var(--pp-red);
}

.woocommerce-result-count,
.woocommerce-ordering {
	margin: 0 0 18px;
}

.woocommerce-result-count {
	float: left;
	color: var(--pp-muted);
	font-size: 14px;
}

.woocommerce-ordering {
	float: right;
}

.woocommerce-ordering select {
	min-width: 220px;
	background: #fff;
	font-size: 14px;
}

.woocommerce-pagination {
	clear: both;
	margin-top: 34px;
}

.woocommerce-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-pagination li {
	margin: 0;
}

.woocommerce-pagination a,
.woocommerce-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	padding: 0 10px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-ink);
	font-weight: 700;
	text-decoration: none;
}

.woocommerce-pagination .current,
.woocommerce-pagination a:hover {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}

.pp-contact-band {
	background: var(--pp-ink);
	color: #fff;
}

.pp-contact-band__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

.pp-contact-band p {
	color: rgba(255, 255, 255, 0.76);
}

.pp-contact-band__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.pp-footer {
	background: #161313;
	color: #fff;
}

.pp-footer__inner {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr;
	gap: 30px;
	padding: 42px 0;
}

.pp-footer a {
	color: #fff;
}

.pp-footer__links {
	display: grid;
	gap: 10px;
}

.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
	gap: 42px;
}

.pp-product-detail {
	padding: 54px 0 64px;
	background: #f7f7f7;
}

.pp-single-product {
	align-items: start;
	grid-template-columns: minmax(360px, 1fr) minmax(340px, 0.9fr);
	gap: 54px;
}

.pp-single-product__media {
	order: 2;
	background: #fff;
	min-height: 560px;
	padding: 32px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

.pp-single-product__summary {
	order: 1;
	padding: 10px 0 0;
}

.pp-single-product__summary .product_title {
	margin: 0 0 8px;
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 500;
	line-height: 1.14;
}

.pp-product-sku,
.pp-single-product__summary .sku_wrapper,
.pp-single-product__summary .posted_in {
	color: var(--pp-muted);
	font-size: 15px;
	margin-bottom: 26px;
}

.pp-single-product__summary .price {
	color: var(--pp-ink);
	font-size: 30px;
	font-weight: 800;
	margin: 0 0 14px;
}

.pp-single-product__media .woocommerce-product-gallery {
	width: 100% !important;
	max-width: 620px;
}

.pp-single-product__media .woocommerce-product-gallery__image img {
	width: 100%;
	max-height: 520px;
	object-fit: contain;
}

.pp-single-product__media .flex-control-thumbs {
	display: flex;
	justify-content: center;
	gap: 12px;
	margin-top: 16px !important;
}

.pp-single-product__media .flex-control-thumbs li {
	width: 64px !important;
	height: 64px;
	border: 1px solid var(--pp-line);
}

.pp-single-product__media .flex-control-thumbs img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.pp-native-variations {
	display: none;
}

.pp-variation-controls {
	display: grid;
	gap: 20px;
	margin: 20px 0;
}

.pp-variation-label {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
	font-weight: 700;
}

.pp-selected-option {
	color: var(--pp-muted);
	font-size: 14px;
	font-weight: 600;
}

.pp-option-list {
	display: grid;
	gap: 8px;
}

.pp-option-row {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-height: 42px;
	padding: 6px 10px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-ink);
	text-align: left;
	cursor: pointer;
	transition: border-color 160ms ease, opacity 160ms ease, box-shadow 160ms ease;
}

.pp-option-row::before {
	content: "";
	width: 16px;
	height: 16px;
	border: 1px solid #c9c4c0;
	border-radius: 50%;
	background: #fff;
}

.pp-option-row.is-active::before {
	border-color: var(--pp-red);
	box-shadow: inset 0 0 0 4px #fff;
	background: var(--pp-red);
}

.pp-option-row:focus-visible,
.pp-color-swatch:focus-visible {
	outline: 2px solid var(--pp-red);
	outline-offset: 2px;
}

.pp-option-row.is-unavailable,
.pp-color-swatch.is-unavailable {
	cursor: not-allowed;
	opacity: 0.38;
}

.pp-option-row img {
	width: 28px;
	height: 28px;
	object-fit: contain;
	border: 1px solid var(--pp-line);
	border-radius: 4px;
}

.pp-swatch-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.pp-color-swatch {
	width: 30px;
	height: 30px;
	padding: 3px;
	border: 1px solid #c9c4c0;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	transition: border-color 160ms ease, opacity 160ms ease, box-shadow 160ms ease;
}

.pp-color-swatch.is-active {
	border-color: var(--pp-red);
	box-shadow: 0 0 0 2px rgba(226, 26, 37, 0.18);
}

.pp-color-swatch__dot {
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 50%;
}

.single_variation_wrap {
	margin-top: 18px;
}

.woocommerce-variation-price {
	margin-bottom: 14px;
	font-size: 28px;
	font-weight: 800;
	color: var(--pp-red);
}

.pp-variation-debug {
	margin: 22px 0;
	padding: 14px;
	border: 1px solid #f0b8bd;
	border-radius: 8px;
	background: #fff7f7;
	color: var(--pp-ink);
	font-size: 13px;
}

.pp-variation-debug strong {
	display: block;
	margin-bottom: 6px;
	color: var(--pp-red);
	font-size: 14px;
}

.pp-variation-debug p {
	margin: 0 0 10px;
	color: var(--pp-muted);
	font-size: 13px;
	line-height: 1.45;
}

.pp-variation-debug pre {
	max-height: 360px;
	margin: 0;
	overflow: auto;
	padding: 12px;
	border-radius: 6px;
	background: #1d1d1d;
	color: #d7ffd7;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 12px;
	line-height: 1.45;
	white-space: pre-wrap;
	word-break: break-word;
}

.woocommerce-variation-add-to-cart {
	display: flex;
	align-items: stretch;
	gap: 8px;
	margin-top: 16px;
}

.pp-quantity {
	display: inline-grid;
	grid-template-columns: 40px 48px 40px;
	align-items: center;
	width: auto;
	border: 1px solid #c9c4c0;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}

.pp-quantity .qty {
	width: 48px;
	min-height: 46px;
	padding: 0;
	border: 0;
	border-radius: 0;
	text-align: center;
	appearance: textfield;
}

.pp-quantity .qty::-webkit-inner-spin-button,
.pp-quantity .qty::-webkit-outer-spin-button {
	margin: 0;
	appearance: none;
}

.pp-qty-btn {
	width: 40px;
	min-height: 46px;
	border: 0;
	background: #fff;
	color: var(--pp-muted);
	font-size: 20px;
	cursor: pointer;
}

.single_add_to_cart_button {
	min-height: 48px;
	padding-inline: 28px;
}

.woocommerce div.product .summary {
	float: none;
	width: auto;
}

.woocommerce div.product div.images {
	float: none;
	width: auto;
}

.variations select,
.quantity input,
input,
textarea,
select {
	min-height: 44px;
	border: 1px solid var(--pp-line);
	border-radius: 6px;
	padding: 8px 12px;
}

@media (max-width: 900px) {
	.pp-header__inner {
		flex-wrap: wrap;
	}

	.pp-menu-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.pp-nav {
		display: none;
		width: 100%;
		order: 4;
	}

	.pp-nav.is-open {
		display: block;
	}

	.pp-nav ul {
		display: grid;
		gap: 0;
		padding-bottom: 16px;
	}

	.pp-nav a {
		display: block;
		padding: 12px 0;
		border-top: 1px solid var(--pp-line);
	}

	.pp-hero__inner,
	.woocommerce div.product,
	.pp-footer__inner,
	.pp-contact-band__inner,
	.pp-front-product__grid,
	.pp-tilda-split__grid,
	.pp-contact-map-section,
	.pp-router-landing__top,
	.pp-landing-page-hero__inner,
	.pp-home-hero__inner,
	.pp-delivery-page,
	.pp-contact-layout,
	.pp-about-layout,
	.pp-industrial-layout,
	.pp-landing-product,
	.pp-form-panel,
	.pp-category-info {
		grid-template-columns: 1fr;
	}

	.pp-home-hero__inner {
		gap: 28px;
		padding-bottom: 118px;
	}

	.pp-front-product__media {
		min-height: 360px;
		order: -1;
	}

	.pp-single-product__media,
	.pp-tilda-split--reverse .pp-tilda-split__media {
		order: 0;
	}

	.pp-contact-map-section {
		min-height: 0;
	}

	.pp-contact-map iframe {
		min-height: 360px;
	}

	.pp-contact-dark {
		padding: 48px 0;
	}

	.pp-router-landing__top {
		max-width: 680px;
		gap: 28px;
	}

	.pp-home-phone-card {
		right: 0;
		left: 0;
		width: auto;
	}

	.pp-product-grid,
	.products,
	.pp-grid-3,
	.pp-application-grid,
	.pp-advantage-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pp-home-contacts__grid {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.pp-category-use-grid {
		grid-template-columns: 1fr;
	}

	.pp-catalog-toolbar {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	.pp-contact-grid {
		grid-template-columns: 1fr;
	}

	.pp-catalog-layout {
		grid-template-columns: 1fr;
	}

	.pp-catalog-sidebar {
		position: static;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-result-count,
	.woocommerce-ordering {
		float: none;
	}

	.woocommerce-ordering select {
		width: 100%;
	}
}

@media (max-width: 560px) {
	.pp-container {
		width: min(100% - 20px, 1180px);
	}

	.pp-header__actions .pp-button {
		display: none;
	}

	.pp-phone {
		font-size: 14px;
	}

	.pp-hero__inner,
	.pp-section {
		padding: 42px 0;
	}

	.pp-home-strip {
		font-size: 14px;
	}

	.pp-home-hero__inner {
		padding: 28px 0 122px;
	}

	.pp-front-product {
		padding: 24px 0 46px;
	}

	.pp-front-product__summary h1,
	.pp-category-page-hero h1,
	.pp-city-hero h1,
	.pp-tilda-intro__center h1 {
		font-size: 34px;
	}

	.pp-front-product__price {
		font-size: 28px;
	}

	.pp-front-product__media {
		min-height: 280px;
		padding: 24px;
	}

	.pp-category-page-hero,
	.pp-city-hero {
		min-height: 0;
		padding: 34px 0 46px;
	}

	.pp-category-page-hero p,
	.pp-city-hero p,
	.pp-tilda-intro__center p {
		font-size: 17px;
	}

	.pp-tilda-intro {
		padding: 26px 0 38px;
	}

	.pp-tilda-intro__center {
		margin-top: 34px;
	}

	.pp-tilda-split {
		padding: 24px 0;
	}

	.pp-tilda-split__grid {
		gap: 24px;
	}

	.pp-store-hero .pp-container {
		padding: 56px 0 62px;
	}

	.pp-store-hero h1 {
		font-size: 36px;
	}

	.pp-catalog-toolbar {
		display: grid;
		grid-template-columns: 1fr;
	}

	.pp-catalog-toolbar input[type="search"] {
		width: 100%;
	}

	.pp-form-panel {
		padding: 22px;
	}

	.pp-tilda-slider {
		grid-auto-columns: minmax(240px, 82%);
	}

	.pp-about-facts--row {
		grid-template-columns: 1fr;
	}

	.pp-about-facts--row div {
		padding: 0 0 14px;
		border-right: 0;
		border-bottom: 1px solid var(--pp-line);
	}

	.pp-contact-dark__inner {
		width: min(100% - 40px, 560px);
	}

	.pp-contact-lines strong,
	.pp-contact-lines em,
	.pp-contact-lines a {
		font-size: 17px;
	}

	.pp-contact-question p {
		font-size: 20px;
	}

	.pp-router-landing {
		padding: 24px 0 46px;
	}

	.pp-router-landing__media {
		min-height: 260px;
		padding: 22px;
	}

	.pp-router-specs__row {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.pp-landing-page-hero {
		padding: 24px 0 42px;
	}

	.pp-landing-page-hero__inner {
		gap: 24px;
	}

	.pp-home-direction span {
		font-size: 22px;
	}

	.pp-home-phone-card {
		padding: 14px 16px;
	}

	.pp-home-phone-card a {
		font-size: 19px;
	}

	.pp-product-grid,
	.products,
	.pp-grid-3,
	.pp-application-grid,
	.pp-advantage-grid,
	.pp-client-photos {
		grid-template-columns: 1fr;
	}

	.pp-catalog-sidebar {
		grid-template-columns: 1fr;
	}

	.pp-application-grid {
		max-width: none;
	}

	.pp-application-tile,
	.pp-application-tile img {
		min-height: 188px;
	}

	.pp-delivery__inner {
		padding: 52px 0;
	}

	.pp-content-panel {
		padding: 20px;
	}
}

/* Tilda parity pass — shared home, category and contact sections. */
.pp-application-section {
	background: #f6f4f3;
}

.pp-application-section .pp-section__head {
	margin-bottom: 42px;
}

.pp-application-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	max-width: 960px;
}

.pp-application-tile,
.pp-application-tile img {
	min-height: 270px;
}

.pp-application-tile {
	border-radius: 0;
}

.pp-application-tile span {
	left: 0;
	bottom: 0;
	max-width: calc(100% - 20px);
	padding: 11px 16px;
	font-size: 15px;
	font-weight: 500;
}

.pp-advantages-section .pp-section__head {
	max-width: 760px;
	text-align: left;
}

.pp-advantages-section .pp-section__head p {
	max-width: 680px;
	margin: 22px 0 0;
	color: #202020;
	font-size: 17px;
}

.pp-advantage-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	max-width: 820px;
	margin-top: 48px;
}

.pp-advantage {
	min-height: 226px;
	padding: 24px 18px;
	border: 1px solid #8c8c8c;
	border-radius: 8px;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
}

.pp-advantage span {
	width: 96px;
	height: 96px;
	padding: 9px;
	border-radius: 50%;
	background: #f4f4f4;
}

.pp-advantage svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: #171717;
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.pp-advantage strong {
	max-width: 170px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.28;
}

.pp-delivery {
	min-height: 610px;
	background-color: #163053;
	background-position: center;
}

.pp-delivery::before {
	background: linear-gradient(90deg, rgba(8, 25, 48, 0.14) 0%, rgba(8, 25, 48, 0.34) 44%, rgba(8, 25, 48, 0.78) 100%);
}

.pp-delivery__inner {
	display: flex;
	justify-content: flex-end;
	padding: 54px 0 48px;
}

.pp-delivery__content {
	width: min(700px, 64%);
}

.pp-delivery h2 {
	margin-bottom: 10px;
	font-size: clamp(38px, 4vw, 58px);
	font-weight: 600;
}

.pp-delivery__lead {
	font-size: 20px;
	line-height: 1.3;
}

.pp-delivery__logos {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 0;
	width: 100%;
	max-width: none;
	margin: 24px 0 30px;
	padding: 14px 18px;
	background: #fff;
}

.pp-delivery__logos img {
	width: 100%;
	max-width: none;
	height: 42px;
	padding: 4px 7px;
}

.pp-delivery__content > p:not(.pp-delivery__lead) {
	margin: 0 0 9px;
	color: rgba(255, 255, 255, 0.94);
	font-size: 14px;
	line-height: 1.52;
}

.pp-delivery__pickup {
	margin-top: 22px !important;
}

.pp-clients-section {
	padding-top: 68px;
	padding-bottom: 78px;
}

.pp-clients-section .pp-section__head {
	margin-bottom: 34px;
}

.pp-client-swiper {
	position: relative;
	width: 100%;
	padding: 0 54px 42px;
}

.pp-client-swiper .swiper-slide {
	height: 390px;
	background: #eee;
}

.pp-client-swiper img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pp-client-swiper .swiper-button-prev,
.pp-client-swiper .swiper-button-next {
	width: 42px;
	height: 42px;
	border: 1px solid #d9d9d9;
	border-radius: 50%;
	background: #fff;
	color: #222;
}

.pp-client-swiper .swiper-button-prev::after,
.pp-client-swiper .swiper-button-next::after {
	font-size: 16px;
	font-weight: 800;
}

.pp-client-swiper .swiper-pagination-bullet-active {
	background: var(--pp-red);
}

.pp-home-contacts {
	padding: 74px 0 82px;
	background: #f5f5f5;
}

.pp-home-contacts .pp-section__head {
	margin-bottom: 58px;
}

.pp-home-contacts__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(42px, 6vw, 96px);
	max-width: 1200px;
	text-align: left;
}

.pp-home-contacts__grid div {
	align-content: start;
	gap: 10px;
}

.pp-home-contacts__grid strong {
	font-size: 21px;
}

.pp-home-contacts__grid em {
	margin-top: 22px;
	color: #777;
	font-size: 18px;
}

.pp-home-contacts__grid a {
	font-size: 19px;
}

.pp-home-contacts__grid .pp-contact-red {
	color: var(--pp-red);
}

.pp-contact-form-section {
	min-height: 0;
	padding: 58px 0 54px;
	background: #f4f4f4;
}

.pp-contact-question {
	max-width: 1440px;
}

.pp-contact-question h2 {
	max-width: 760px;
	margin: 0 auto 22px;
	font-size: clamp(36px, 4vw, 52px);
	line-height: 1.12;
}

.pp-contact-question > p {
	max-width: 660px;
	margin: 0 auto 38px;
	color: var(--pp-ink);
	font-size: clamp(18px, 1.7vw, 22px);
	line-height: 1.45;
}

.pp-contact-question__form {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.pp-contact-question .wpcf7-form,
.pp-cf7-form {
	display: grid;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	grid-template-columns: 1fr;
	gap: 16px;
	text-align: left;
}

.pp-contact-question .wpcf7-form > .pp-cf7-form {
	display: grid;
	width: 100%;
	grid-column: 1 / -1;
	grid-template-columns: 1fr;
	gap: 24px;
}

.pp-contact-question .pp-cf7-form > p:first-child {
	display: grid;
	width: 100%;
	margin: 0;
	max-width: none;
	gap: 24px;
}

.pp-contact-question .wpcf7,
.pp-contact-question .wpcf7-form-control-wrap,
.pp-contact-question .wpcf7-form label {
	width: 100%;
}

.pp-contact-question .wpcf7-form > p,
.pp-contact-question .wpcf7-form .pp-cf7-form > p {
	grid-column: 1;
	width: 100%;
	margin: 0;
	color: var(--pp-ink);
	font-size: 17px;
	line-height: 1.4;
}

.pp-contact-question .wpcf7-form > p:nth-of-type(n+3),
.pp-cf7-form > label:nth-of-type(n+3),
.pp-cf7-consent,
.pp-cf7-privacy,
.pp-cf7-form input[type="submit"],
.pp-contact-question .wpcf7-form > .wpcf7-response-output {
	grid-column: 1 / -1;
}

.pp-contact-question .wpcf7-form label,
.pp-cf7-form label {
	display: grid;
	gap: 0;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.55;
}

.pp-contact-question .wpcf7-form input:not([type="checkbox"], [type="submit"]),
.pp-contact-question .wpcf7-form textarea,
.pp-cf7-form input:not([type="checkbox"]),
.pp-cf7-form textarea {
	width: 100%;
	min-height: 60px;
	padding: 12px 20px;
	border: 1px solid #000;
	border-radius: 5px;
	background: #fff;
	font-size: 16px;
}

.pp-contact-question .wpcf7-form textarea,
.pp-cf7-form textarea {
	height: 102px;
	min-height: 102px;
	max-height: 102px;
	resize: vertical;
}

.pp-contact-question .wpcf7-acceptance .wpcf7-list-item,
.pp-contact-question .wpcf7-list-item {
	margin: 0;
}

.pp-contact-question .wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.55;
}

.pp-contact-question .wpcf7-acceptance input[type="checkbox"] {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 1px 0 0;
}

.pp-cf7-form .pp-cf7-consent {
	display: block;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.45;
}

.pp-contact-question .wpcf7-form input[type="submit"],
.pp-cf7-form input[type="submit"] {
	grid-column: 1 / -1;
	justify-self: center;
	width: min(100%, 249px);
	min-height: 60px;
	padding: 0 28px;
	border: 0;
	border-radius: 6px;
	background: var(--pp-red);
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
}

body.pp-modal-open {
	overflow: hidden;
}

body.pp-search-open {
	overflow: hidden;
}

.pp-contact-modal[hidden] {
	display: none;
}

.pp-contact-modal {
	position: fixed;
	z-index: 100000;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 24px;
}

.pp-contact-modal__backdrop {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: rgb(0 0 0 / 72%);
	cursor: default;
}

.pp-contact-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(100%, 560px);
	max-height: calc(100vh - 48px);
	overflow: auto;
	padding: 40px 45px;
	background: #fff;
	text-align: center;
}

.pp-contact-modal__close {
	position: fixed;
	top: 18px;
	right: 24px;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 34px;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
}

.pp-contact-modal__eyebrow {
	margin: 0 0 11px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.23;
}

.pp-contact-modal h2 {
	margin: 0 0 24px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.55;
}

.pp-contact-modal .wpcf7-form,
.pp-contact-modal .pp-cf7-form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	text-align: left;
}

.pp-contact-modal .wpcf7-form label,
.pp-contact-modal .pp-cf7-form label {
	display: grid;
	gap: 0;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.55;
}

.pp-contact-modal .pp-cf7-form > p:first-child {
	display: contents;
}

.pp-contact-modal .pp-cf7-form > p:first-child > label:nth-of-type(2) {
	order: 1;
}

.pp-contact-modal .pp-cf7-form > p:first-child > label:nth-of-type(1) {
	order: 2;
}

.pp-contact-modal .pp-cf7-form > p:first-child > label:nth-of-type(3) {
	display: none;
}

.pp-contact-modal .pp-cf7-consent {
	display: none;
}

.pp-contact-modal input[type="submit"] {
	order: 4;
}

.pp-contact-modal .pp-cf7-form > p:nth-of-type(2) {
	order: 4;
	margin: 11px 0 0;
}

.pp-contact-modal .pp-cf7-privacy {
	display: none;
}

.pp-contact-modal .wpcf7-form input:not([type="checkbox"], [type="submit"]),
.pp-contact-modal .pp-cf7-form input:not([type="checkbox"], [type="submit"]) {
	width: 100%;
	min-height: 60px;
	padding: 10px 18px;
	border: 1px solid #c9c9c9;
	border-radius: 5px;
	font-size: 16px;
}

.pp-contact-modal .wpcf7-form textarea,
.pp-contact-modal .pp-cf7-form textarea,
.pp-contact-modal .pp-cf7-form > label:nth-of-type(3) {
	display: none;
}

.pp-contact-modal input[type="submit"] {
	width: 100%;
	min-height: 60px;
	border: 0;
	border-radius: 5px;
	background: #111;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.pp-contact-modal__privacy {
	margin: 20px 0 0;
	color: #221e1d;
	font-size: 17px;
	line-height: 1.55;
	text-align: center;
}

@media (max-width: 600px) {
	.pp-contact-modal {
		padding: 12px;
	}

	.pp-contact-modal__dialog {
		max-height: calc(100vh - 24px);
		padding: 42px 24px 28px;
	}
}

.pp-callback-widget[hidden],
.pp-search-modal[hidden],
.pp-live-search__suggestions[hidden],
.pp-live-search__clear[hidden] {
	display: none;
}

.pp-callback-widget {
	position: fixed;
	right: clamp(22px, 5.5vw, 116px);
	bottom: 132px;
	z-index: 100002;
	width: min(360px, calc(100vw - 36px));
	padding: 26px 26px 22px;
	border: 1px solid #e7e7e7;
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 16px 42px rgb(0 0 0 / 20%);
	color: #222;
}

.pp-callback-widget::after {
	position: absolute;
	right: 28px;
	top: 100%;
	border: 10px solid transparent;
	border-top-color: #fff;
	content: "";
}

.pp-callback-widget__close {
	position: absolute;
	top: 8px;
	right: 10px;
	width: 32px;
	height: 32px;
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #777;
	font-size: 28px;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
}

.pp-callback-widget h2 {
	max-width: 285px;
	margin: 0 0 18px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.pp-callback-cf7,
.pp-callback-widget .wpcf7-form {
	display: grid;
	gap: 10px;
	margin: 0;
}

.pp-callback-cf7 label,
.pp-callback-cf7 .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
	margin: 0;
}

.pp-callback-cf7 input[type="tel"],
.pp-callback-widget .wpcf7-form input[type="tel"] {
	width: 100%;
	height: 48px;
	padding: 0 14px;
	border: 1px solid #bbb;
	border-radius: 4px;
	background: #fff;
	font-size: 16px;
}

.pp-callback-cf7 input[type="submit"],
.pp-callback-widget .wpcf7-form input[type="submit"] {
	width: 100%;
	min-height: 48px;
	padding: 0 14px;
	border: 0;
	border-radius: 4px;
	background: var(--pp-red);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	cursor: pointer;
}

.pp-callback-widget .wpcf7-spinner {
	position: absolute;
	right: 30px;
	bottom: 86px;
	margin: 0;
}

.pp-callback-widget__phone {
	display: block;
	margin-top: 14px;
	color: #222;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}

.pp-callback-widget__privacy {
	margin: 11px 0 0;
	color: #777;
	font-size: 11px;
	line-height: 1.45;
	text-align: center;
}

.pp-callback-widget__privacy a {
	color: var(--pp-red);
}

.pp-search-modal {
	position: fixed;
	z-index: 100003;
	inset: 0;
}

.pp-search-modal__backdrop {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: rgb(0 0 0 / 42%);
}

.pp-search-modal__dialog {
	position: relative;
	z-index: 1;
	min-height: 220px;
	padding: 34px 0 44px;
	background: #fff;
	box-shadow: 0 18px 42px rgb(0 0 0 / 18%);
}

.pp-search-modal__inner {
	width: min(100% - 40px, 1080px);
}

.pp-search-modal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
}

.pp-search-modal__head h2 {
	margin: 0;
	font-size: 24px;
	font-weight: 600;
}

.pp-search-modal__close {
	width: 44px;
	height: 44px;
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--pp-red);
	font-size: 40px;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
}

.pp-live-search {
	position: relative;
	min-width: 0;
}

.pp-global-search-form,
.pp-results-search-form {
	position: relative;
	display: block;
}

.pp-global-search-form input[type="search"],
.pp-results-search-form input[type="search"] {
	width: 100%;
	height: 64px;
	padding: 0 112px 0 22px;
	border: 0;
	border-bottom: 2px solid #222;
	border-radius: 0;
	background: #fff;
	font-size: clamp(22px, 2.4vw, 34px);
}

.pp-live-search__submit,
.pp-live-search__clear {
	position: absolute;
	top: 50%;
	display: grid;
	width: 38px;
	height: 38px;
	min-height: 0;
	padding: 0;
	place-items: center;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #222;
	box-shadow: none;
	line-height: 1;
	text-decoration: none;
	transform: translateY(-50%);
}

.pp-live-search__submit {
	right: 8px;
}

.pp-live-search__submit svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
}

.pp-live-search__clear {
	right: 47px;
	font-size: 27px;
}

.pp-live-search__suggestions {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	left: 0;
	z-index: 60;
	display: grid;
	max-height: min(520px, calc(100vh - 220px));
	padding: 8px;
	overflow-y: auto;
	border: 1px solid #ddd;
	background: #fff;
	box-shadow: 0 16px 34px rgb(0 0 0 / 16%);
}

.pp-live-search__item {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	align-items: center;
	gap: 14px;
	min-height: 74px;
	padding: 8px 10px;
	border-bottom: 1px solid #eee;
	color: #222;
	text-decoration: none;
}

.pp-live-search__item:hover,
.pp-live-search__item:focus-visible {
	background: #f7f7f7;
}

.pp-live-search__item img {
	width: 64px;
	height: 58px;
	object-fit: contain;
}

.pp-live-search__item-copy {
	display: grid;
	gap: 4px;
}

.pp-live-search__item-copy strong {
	font-size: 15px;
	line-height: 1.3;
}

.pp-live-search__price {
	color: var(--pp-red);
	font-size: 14px;
	font-weight: 700;
}

.pp-live-search__price del,
.pp-live-search__price ins {
	font-size: inherit;
}

.pp-live-search__all {
	padding: 14px 12px 10px;
	color: var(--pp-red);
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.pp-live-search__empty {
	margin: 0;
	padding: 18px 14px;
	color: #666;
	text-align: center;
}

.pp-search-results-hero {
	padding: 62px 0 50px;
	background: #f4f4f4;
}

.pp-search-results-hero h1 {
	max-width: 980px;
	margin: 0 0 34px;
	font-size: clamp(36px, 4vw, 58px);
	line-height: 1.12;
}

.pp-search-results-hero .pp-live-search {
	max-width: 920px;
}

.pp-search-results {
	background: #fff;
}

@media (max-width: 600px) {
	.pp-callback-widget {
		right: 12px;
		bottom: 92px;
		width: calc(100vw - 24px);
		padding: 24px 20px 20px;
	}

	.pp-search-modal__dialog {
		min-height: 180px;
		padding: 20px 0 30px;
	}

	.pp-search-modal__head {
		margin-bottom: 14px;
	}

	.pp-global-search-form input[type="search"],
	.pp-results-search-form input[type="search"] {
		height: 56px;
		padding-left: 12px;
		font-size: 20px;
	}
}

.pp-cf7-privacy {
	margin: 0 !important;
	color: #777 !important;
	font-size: 17px !important;
	line-height: 1.55 !important;
	text-align: center;
}

.pp-form-admin-note {
	padding: 16px;
	border: 1px dashed var(--pp-red);
	color: #555 !important;
	font-size: 14px !important;
}

.pp-footer {
	background: #363636;
}

.pp-footer__inner {
	grid-template-columns: 1.35fr 0.7fr 1.1fr 1fr;
	gap: clamp(32px, 4vw, 64px);
	align-items: center;
	min-height: 174px;
	padding: 30px 0;
}

.pp-footer .pp-logo img {
	width: 164px;
	filter: brightness(0) invert(1);
}

.pp-footer p,
.pp-footer span,
.pp-footer a {
	font-size: 14px;
	line-height: 1.5;
}

.pp-footer__brand p {
	margin: 10px 0 0;
	color: rgba(255, 255, 255, 0.58);
}

.pp-footer__links,
.pp-footer__legal {
	display: grid;
	gap: 7px;
}

.pp-footer__legal a {
	color: rgba(255, 255, 255, 0.78);
}

.pp-footer__phone {
	display: grid;
	gap: 6px;
}

.pp-footer__phone > a {
	font-size: 23px;
	font-weight: 600;
	text-decoration: none;
}

.pp-footer__phone span {
	color: rgba(255, 255, 255, 0.6);
}

.pp-tilda-intro {
	padding-bottom: 28px;
}

.pp-tilda-intro__center {
	margin-top: 38px;
}

.pp-tilda-split {
	padding: 34px 0 42px;
}

.pp-tilda-split__grid {
	grid-template-columns: 460px 500px;
	justify-content: center;
	gap: 40px;
}

.pp-tilda-split__media img {
	width: 460px;
	height: 340px;
	aspect-ratio: auto;
	border-radius: 0;
	filter: none;
}

.pp-tilda-split__content h2 {
	font-size: 30px;
}

.pp-tilda-split__content p {
	font-size: 16px;
	line-height: 1.55;
}

.pp-tilda-links {
	gap: 4px;
	margin-top: 16px;
}

.pp-tilda-links a {
	font-size: 14px;
	line-height: 1.35;
}

.pp-tilda-section-cta {
	width: 200px;
	min-height: 60px;
	margin-top: 14px;
}

.pp-industrial-materials__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.pp-industrial-material {
	display: grid;
	gap: 14px;
	color: #222;
	font-size: 17px;
	line-height: 1.35;
	text-decoration: none;
}

.pp-industrial-material__image {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 260px;
	padding: 24px;
	background: #f5f5f5;
}

.pp-industrial-material__image img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.pp-category-tilda-hero {
	position: relative;
	min-height: 510px;
	background-position: center;
	background-size: cover;
}

.pp-category-tilda-hero::before {
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.62);
	content: "";
}

.pp-category-tilda-hero__inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 430px);
	gap: 46px;
	align-items: center;
	padding: 95px 0 70px;
}

.pp-category-tilda-hero__content {
	position: relative;
	z-index: 2;
	grid-column: 1;
	grid-row: 1;
}

.pp-category-tilda-hero__visual {
	position: relative;
	z-index: 1;
	display: grid;
	grid-column: 2;
	grid-row: 1;
	place-items: center;
}

.pp-category-tilda-hero__visual img {
	display: block;
	width: min(100%, 430px);
	max-height: 390px;
	object-fit: contain;
}

.pp-category-tilda-hero h1 {
	max-width: 760px;
	margin: 0;
	font-size: clamp(42px, 4.4vw, 66px);
	font-weight: 500;
	line-height: 1.12;
}

.pp-catalog-hero-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: clamp(30px, 3.4vw, 56px);
	margin-top: 38px;
}

.pp-category-tilda-hero .pp-catalog-hero-actions {
	position: relative;
	z-index: 2;
	grid-column: 1 / -1;
	grid-row: 2;
	flex-wrap: nowrap;
	margin-top: 0;
}

.pp-store-hero .pp-catalog-hero-actions__button,
.pp-category-tilda-hero .pp-catalog-hero-actions__button {
	flex: 0 0 360px;
	width: 360px;
	min-width: 0;
	min-height: 84px;
	padding: 18px 30px;
	border: 1px solid var(--pp-red);
	border-radius: 18px;
	background: var(--pp-red);
	color: #fff;
	font-size: clamp(18px, 1.25vw, 22px);
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
}

.pp-catalog-hero-actions__button:hover,
.pp-catalog-hero-actions__button:focus-visible {
	border-color: #d70d17;
	background: #d70d17;
	color: #fff;
}

.pp-catalog-hero-actions__phone {
	display: grid;
	grid-template-columns: 58px minmax(0, auto);
	gap: 19px;
	align-items: center;
}

.pp-catalog-hero-actions__phone img {
	display: block;
	width: 58px;
	height: 62px;
	object-fit: contain;
}

.pp-catalog-hero-actions__phone span {
	display: block;
	margin-bottom: 5px;
	color: #747474;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.25;
}

.pp-catalog-hero-actions__phone a {
	display: block;
	color: #151515;
	font-size: clamp(27px, 2.25vw, 38px);
	font-weight: 400;
	line-height: 1.08;
	text-decoration: none;
	white-space: nowrap;
}

.pp-catalog-hero-actions__phone a:hover,
.pp-catalog-hero-actions__phone a:focus-visible {
	color: var(--pp-red);
}

.pp-category-catalog {
	padding-top: 28px;
}

.pp-category-toolbar {
	display: flex;
	gap: 26px;
	margin-bottom: 32px;
	font-size: 14px;
}

.pp-category-catalog .pp-product-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 34px;
}

.pp-category-copy .pp-container {
	max-width: 980px;
}

.pp-category-copy h2 {
	margin-bottom: 24px;
}

.pp-category-copy p {
	color: #333;
	font-size: 17px;
	line-height: 1.75;
}

.pp-category-accordions {
	background: #f5f5f5;
}

.pp-category-accordions .pp-container {
	max-width: 720px;
}

.pp-category-accordions details {
	border-bottom: 1px solid #ddd;
	background: #fff;
}

.pp-category-accordions summary {
	position: relative;
	padding: 24px 54px 24px 24px;
	color: var(--pp-red);
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.pp-category-accordions summary::after {
	position: absolute;
	top: 20px;
	right: 24px;
	font-size: 24px;
	font-weight: 300;
	content: "+";
}

.pp-category-accordions details[open] summary::after {
	content: "−";
}

.pp-category-accordions details p {
	margin: 0;
	padding: 0 24px 24px;
	color: #555;
	line-height: 1.65;
}

.pp-product-card__sku,
.product_meta .sku_wrapper {
	display: none !important;
}

@media (max-width: 1000px) {
	.pp-tilda-split__grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.pp-tilda-split__media img {
		width: 100%;
		height: auto;
		aspect-ratio: 460 / 340;
	}

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

	.pp-delivery__content {
		width: 72%;
	}
}

@media (max-width: 760px) {
	.pp-application-grid,
	.pp-advantage-grid,
	.pp-category-catalog .pp-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pp-application-tile,
	.pp-application-tile img {
		min-height: 210px;
	}

	.pp-delivery {
		min-height: 0;
		background-position: 35% center;
	}

	.pp-delivery::before {
		background: rgba(8, 25, 48, 0.76);
	}

	.pp-delivery__content {
		width: 100%;
	}

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

	.pp-client-swiper {
		padding-inline: 0;
	}

	.pp-client-swiper .swiper-slide {
		height: 330px;
	}

	.pp-client-swiper .swiper-button-prev,
	.pp-client-swiper .swiper-button-next {
		display: none;
	}

	.pp-home-contacts__grid,
	.pp-footer__inner,
	.pp-tilda-split__grid {
		grid-template-columns: 1fr;
	}

	.pp-tilda-split__media,
	.pp-tilda-split__content,
	.pp-tilda-split--reverse .pp-tilda-split__media,
	.pp-tilda-split--reverse .pp-tilda-split__content {
		order: 0;
	}

	.pp-footer__inner {
		padding: 32px 0;
	}

	.pp-category-tilda-hero .pp-catalog-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 22px;
		margin-top: 0;
	}

	.pp-category-tilda-hero__inner {
		grid-template-columns: minmax(0, 1fr) minmax(180px, 32vw);
		gap: 24px;
	}
}

@media (max-width: 520px) {
	.pp-application-grid,
	.pp-advantage-grid,
	.pp-category-catalog .pp-product-grid,
	.pp-industrial-materials__grid {
		grid-template-columns: 1fr;
	}

	.pp-application-tile,
	.pp-application-tile img {
		min-height: 260px;
	}

	.pp-advantage {
		min-height: 200px;
	}

	.pp-contact-form-section {
		min-height: 0;
	}

	.pp-category-tilda-hero {
		min-height: 430px;
	}

	.pp-category-tilda-hero__inner {
		display: block;
		padding-top: 68px;
	}

	.pp-category-tilda-hero .pp-catalog-hero-actions {
		margin-top: 28px;
	}

	.pp-category-tilda-hero__visual {
		position: absolute;
		right: -34px;
		bottom: 26px;
		width: 122px;
		opacity: .82;
	}
}

/*
 * Tilda visual parity layer.
 *
 * The migration deliberately keeps WooCommerce behaviour in the templates and
 * applies the original site's quiet, editorial visual language here: a wide
 * white header, red actions, square content planes and dense product controls.
 */
:root {
	--pp-red: #ed1c24;
	--pp-ink: #151515;
	--pp-muted: #5e5e5e;
	--pp-line: #e3e3e3;
	--pp-bg: #f6f6f6;
	--pp-panel: #fff;
	--pp-green: #f6f6f6;
}

body {
	background: #f6f6f6;
	color: var(--pp-ink);
	font-family: Manrope, Arial, sans-serif;
}

.pp-container {
	width: min(1200px, calc(100% - 48px));
}

.pp-header {
	background: #fff;
	border: 0;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
	backdrop-filter: none;
}

.pp-header .pp-header__inner {
	width: min(1960px, calc(100% - 72px));
	min-height: 72px;
	gap: 30px;
}

.pp-logo img {
	width: 178px;
}

.pp-nav {
	margin-left: auto;
}

.pp-nav ul {
	gap: clamp(22px, 2.5vw, 48px);
}

.pp-nav a,
.pp-phone {
	color: #242424;
	font-size: 17px;
	font-weight: 400;
}

.pp-nav a:hover,
.pp-nav .current-menu-item > a,
.pp-nav .current_page_item > a {
	color: var(--pp-red);
	text-decoration: underline;
	text-decoration-color: var(--pp-red);
	text-underline-offset: 6px;
}

.pp-header__actions {
	gap: 12px;
}

.pp-phone {
	font-weight: 700;
}

.pp-header__search,
.pp-button,
.button,
button.single_add_to_cart_button {
	min-height: 48px;
	border: 0;
	border-radius: 6px;
	background: var(--pp-red);
	color: #fff;
	box-shadow: none;
	font-size: 15px;
	font-weight: 700;
}

.pp-header__search {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 0 19px;
	font-family: inherit;
	text-decoration: none;
	cursor: pointer;
}

.pp-header__search span {
	font-size: 25px;
	line-height: 1;
}

.pp-header .pp-button {
	padding: 0 24px;
	white-space: nowrap;
}

.pp-button--ghost {
	border: 1px solid #cfcfcf;
	background: #fff;
	color: #222;
}

.pp-floating-cart,
.pp-floating-phone {
	position: fixed;
	z-index: 45;
	display: grid;
	place-items: center;
	text-decoration: none;
}

.pp-floating-cart {
	top: 126px;
	right: clamp(18px, 6vw, 128px);
	width: 66px;
	height: 66px;
	border: 1px solid var(--pp-red);
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.14);
}

.pp-floating-cart__icon {
	position: relative;
	width: 23px;
	height: 27px;
	border: 1.5px solid var(--pp-red);
}

.pp-floating-cart__icon::before {
	position: absolute;
	left: 5px;
	top: -9px;
	width: 10px;
	height: 10px;
	border: 1.5px solid var(--pp-red);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
	content: "";
}

.pp-floating-cart b {
	position: absolute;
	right: -7px;
	bottom: -3px;
	display: grid;
	place-items: center;
	min-width: 25px;
	height: 25px;
	border-radius: 50%;
	background: var(--pp-red);
	color: #fff;
	font-size: 13px;
}

body.pp-cart-open {
	overflow: hidden;
}

.pp-cart-drawer[hidden] {
	display: none;
}

.pp-cart-drawer {
	position: fixed;
	z-index: 100001;
	inset: 0;
}

.pp-cart-drawer__backdrop {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: rgb(0 0 0 / 46%);
}

.pp-cart-drawer__panel {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	width: min(100%, 760px);
	height: 100%;
	padding: 34px 38px;
	overflow: auto;
	background: #fff;
	box-shadow: -18px 0 48px rgb(0 0 0 / 16%);
	flex-direction: column;
	animation: pp-cart-panel-in 0.24s ease-out both;
}

@keyframes pp-cart-panel-in {
	from { transform: translateX(100%); }
	to { transform: translateX(0); }
}

.pp-cart-drawer__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 28px;
}

.pp-cart-drawer__header h2 {
	margin: 0;
	font-size: 28px;
	font-weight: 500;
}

.pp-cart-drawer__close {
	width: 42px;
	height: 42px;
	min-height: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #222;
	font-size: 36px;
	font-weight: 300;
}

.pp-cart-drawer__content,
.pp-cart-drawer__content .widget_shopping_cart_content {
	display: flex;
	min-height: 0;
	flex: 1;
	flex-direction: column;
}

.pp-cart-drawer .woocommerce-mini-cart {
	display: grid;
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pp-cart-drawer .woocommerce-mini-cart-item {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(110px, auto);
	align-items: center;
	column-gap: 24px;
	min-height: 92px;
	padding: 0 42px 24px 0;
	border-bottom: 1px solid #e6e6e6;
}

.pp-cart-drawer .pp-mini-cart-product {
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	min-width: 0;
	color: #222;
	font-size: 15px;
	line-height: 1.4;
	text-decoration: none;
}

.pp-cart-drawer .woocommerce-mini-cart-item img {
	float: none;
	width: 92px;
	height: 92px;
	margin: 0;
	object-fit: contain;
}

.pp-mini-cart-product__details {
	display: grid;
	gap: 5px;
	min-width: 0;
}

.pp-mini-cart-product__details strong {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
}

.pp-cart-drawer .woocommerce-mini-cart-item dl.variation {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 4px 8px;
	min-width: 0;
	margin: 0;
	color: #666;
	font-size: 13px;
	line-height: 1.35;
}

.pp-cart-drawer .woocommerce-mini-cart-item dl.variation dt,
.pp-cart-drawer .woocommerce-mini-cart-item dl.variation dd,
.pp-cart-drawer .woocommerce-mini-cart-item dl.variation p {
	float: none;
	clear: none;
	min-width: 0;
	margin: 0;
	padding: 0;
	overflow-wrap: anywhere;
}

.pp-cart-drawer .woocommerce-mini-cart-item dl.variation dt {
	font-weight: 600;
}

.pp-cart-drawer .woocommerce-mini-cart-item .remove {
	position: absolute;
	top: 0;
	right: 0;
	color: #222 !important;
	font-size: 24px;
	text-decoration: none;
}

.pp-mini-cart-quantity {
	display: grid;
	grid-template-columns: 30px 36px 30px;
	align-items: center;
	gap: 4px;
}

.pp-mini-cart-quantity button,
.pp-mini-cart-quantity input {
	width: 30px;
	height: 30px;
	min-height: 0;
	padding: 0;
	border: 1px solid #bbb;
	border-radius: 50%;
	background: #fff;
	color: #333;
	font-size: 18px;
	line-height: 28px;
	text-align: center;
}

.pp-mini-cart-quantity input {
	width: 36px;
	border-color: transparent;
	border-radius: 0;
	font-size: 17px;
	-moz-appearance: textfield;
}

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

.pp-mini-cart-quantity.is-loading {
	opacity: 0.55;
}

.pp-mini-cart-line-total {
	font-size: 19px;
	font-weight: 500;
	white-space: nowrap;
}

.pp-cart-drawer .woocommerce-mini-cart__total {
	display: flex;
	justify-content: space-between;
	margin: auto 0 18px;
	padding-top: 24px;
	border-top: 1px solid #ddd;
	font-size: 20px;
}

.pp-cart-drawer .woocommerce-mini-cart__buttons {
	display: grid;
	gap: 10px;
	margin: 0;
}

.pp-cart-drawer .woocommerce-mini-cart__buttons .button {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	border-radius: 0;
	background: #222;
	color: #fff;
	text-decoration: none;
}

.pp-cart-drawer .woocommerce-mini-cart__buttons .checkout {
	background: var(--pp-red);
}

.pp-cart-error {
	margin: 0 0 18px;
	padding: 12px 14px;
	border-left: 3px solid var(--pp-red);
	background: #fff1f1;
	color: #8a1117;
	font-size: 14px;
	line-height: 1.45;
}

.pp-product-card__add.is-loading,
.single_add_to_cart_button.is-loading {
	opacity: 0.65;
	cursor: wait;
}

.pp-floating-phone {
	right: clamp(22px, 5.5vw, 116px);
	bottom: 54px;
	width: 64px;
	height: 64px;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--pp-red);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	color: #fff;
	cursor: pointer;
}

.pp-floating-phone svg {
	width: 32px;
	height: 32px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.pp-home-hero::before {
	background: rgba(255, 255, 255, 0.3);
}

.pp-home-hero__inner {
	gap: 72px;
	padding: 18px 0 100px;
}

.pp-home-direction {
	position: relative;
}

.pp-home-direction__title,
.pp-home-direction strong {
	font-weight: 400;
}

.pp-home-direction__title {
	font-size: clamp(28px, 2.15vw, 43px) !important;
	line-height: 1.16 !important;
}

.pp-home-direction strong {
	margin-bottom: 26px;
	font-size: clamp(24px, 1.8vw, 34px);
}

.pp-home-direction img {
	aspect-ratio: 1.03 / 1;
}

.pp-home-direction__cta {
	position: absolute;
	bottom: 18%;
	left: 0;
	width: 100%;
	margin: 0 !important;
	padding: 18px 28px;
	box-sizing: border-box;
	background: var(--pp-red);
	color: #fff !important;
	font-size: clamp(20px, 1.7vw, 31px) !important;
	font-weight: 400 !important;
	line-height: 1.24 !important;
	text-align: center;
}

.pp-home-phone-card {
	right: 0;
	bottom: 28px;
	width: min(420px, 40vw);
	padding: 18px 28px;
	background: rgba(36, 36, 36, 0.85);
}

.pp-home-phone-card span {
	font-size: 16px;
}

.pp-home-phone-card a {
	font-size: clamp(24px, 2.1vw, 38px);
	font-weight: 400;
}

.pp-section {
	padding: 74px 0;
}

.pp-section h2,
.entry-title {
	font-weight: 400;
}

.pp-section__head--center {
	max-width: 950px;
}

.pp-application-grid {
	max-width: 700px;
	gap: 14px;
}

.pp-application-tile,
.pp-application-tile img {
	min-height: 176px;
}

.pp-application-tile span {
	left: 0;
	bottom: 0;
	max-width: 100%;
	padding: 10px 12px;
	font-weight: 400;
}

.pp-tilda-intro {
	padding: 36px 0 66px;
}

.pp-breadcrumbs,
.pp-store-breadcrumbs .pp-breadcrumbs {
	justify-content: center;
	color: #5f5f5f;
	font-size: 17px;
}

.pp-tilda-intro__center {
	margin-top: 70px;
}

.pp-tilda-intro__center h1 {
	font-size: clamp(36px, 3.1vw, 54px);
}

.pp-tilda-intro__center p {
	font-size: 18px;
}

.pp-tilda-split {
	padding: 48px 0;
}

.pp-tilda-split__grid {
	max-width: 1140px;
	gap: 46px;
}

.pp-tilda-split__content {
	order: -1;
	max-width: 550px;
}

.pp-tilda-split--reverse .pp-tilda-split__media {
	order: 0;
}

.pp-tilda-split--reverse .pp-tilda-split__content {
	order: 2;
}

.pp-tilda-split__media img {
	border-radius: 6px;
}

.pp-tilda-split__content h2 {
	margin-bottom: 20px;
	font-size: clamp(28px, 2.4vw, 40px);
}

.pp-tilda-split__content p,
.pp-about-lead p {
	color: #222;
	font-size: 20px;
	line-height: 1.62;
}

.pp-tilda-links {
	display: grid;
	gap: 8px;
	margin-top: 23px;
}

.pp-tilda-links a {
	display: inline;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #181818;
	font-size: 16px;
	font-weight: 700;
}

.pp-tilda-section-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 238px;
	min-height: 68px;
	margin: 34px auto 0;
	border-radius: 6px;
	background: var(--pp-red);
	color: #fff;
	font-size: 16px;
	text-decoration: none;
}

.pp-contacts-top {
	padding: 36px 0 24px;
}

.pp-contact-map-section {
	min-height: 620px;
}

.pp-contact-map iframe {
	min-height: 620px;
}

.pp-contact-dark h1 {
	font-size: 38px;
}

.pp-contact-lines strong,
.pp-contact-lines em,
.pp-contact-lines a {
	font-size: 18px;
}

.pp-contact-question h2 {
	font-size: clamp(36px, 4vw, 52px);
}

.pp-contact-question > p {
	font-size: clamp(18px, 1.7vw, 22px);
}

.pp-store-breadcrumbs {
	padding: 13px 0 15px;
	background: #f5f5f5;
}

.pp-store-hero {
	width: 100%;
	max-width: none;
	margin: 0 auto;
	background-position: center;
}

.pp-store-hero::before {
	background: rgba(255, 255, 255, 0.57);
	backdrop-filter: blur(2px);
}

.pp-store-hero .pp-container {
	padding: 120px 0 94px;
}

.pp-store-hero h1 {
	max-width: 700px;
	font-size: 48px;
	font-weight: 400;
}

.pp-catalog-layout {
	grid-template-columns: 210px minmax(0, 1fr);
	gap: 50px;
}

.pp-catalog-sidebar {
	top: 100px;
	gap: 26px;
}

.pp-filter-block {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.pp-filter-block h2 {
	font-size: 18px;
	font-weight: 400;
}

.pp-filter-links {
	gap: 14px;
}

.pp-filter-links a {
	font-size: 17px;
}

.pp-filter-links a::before {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 9px;
	border: 2px solid #858585;
	box-sizing: border-box;
	content: "";
	vertical-align: -3px;
}

.pp-filter-swatches {
	gap: 9px;
}

.pp-filter-swatches a {
	width: 30px;
	height: 30px;
	padding: 3px;
}

.pp-catalog-nav {
	display: none;
}

.pp-catalog-toolbar {
	margin-bottom: 50px;
}

.pp-catalog-toolbar input[type="search"] {
	min-height: 36px;
	border-color: #d7d7d7;
	border-radius: 0;
}

.pp-catalog-toolbar button {
	min-height: 36px;
	border-radius: 0;
}

.pp-catalog-toolbar select,
.woocommerce-ordering select {
	min-height: 36px;
	border-color: #d7d7d7;
	border-radius: 0;
}

.pp-product-grid,
.products {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 28px;
}

.pp-product-card,
.products .product {
	overflow: visible;
	border: 0;
	border-radius: 0;
	background: transparent;
	transform: none !important;
	box-shadow: none !important;
}

.pp-product-card__image,
.woocommerce-loop-product__link {
	min-height: 300px;
	padding: 28px;
	background: #fff;
}

.pp-product-card__image > img,
.products .product .pp-product-card__image > img {
	aspect-ratio: 1 / 1.08;
}

.pp-product-card__badge {
	top: 12px;
	right: 12px;
	width: 60px;
	height: 60px;
	background: #f6c93e;
	font-size: 12px;
}

.pp-product-card__body {
	padding: 20px 0 0;
}

.pp-product-card__title,
.woocommerce-loop-product__title {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
}

.pp-product-card__sku {
	font-size: 15px;
}

.pp-product-card__price,
.price {
	color: var(--pp-red);
	font-size: 18px;
	font-weight: 700;
}

.pp-product-card__body .pp-button {
	min-height: 44px;
	margin-top: 12px;
}

.pp-category-page-hero,
.pp-page-hero {
	min-height: 0;
	padding: 46px 0 54px;
	background-color: #f4f4f4;
	color: #161616;
}

.pp-category-page-hero::before {
	background: rgba(255, 255, 255, 0.48);
}

.pp-category-page-hero h1,
.pp-page-hero h1 {
	max-width: 840px;
	margin: 66px 0 28px;
	font-size: clamp(40px, 4.2vw, 62px);
	font-weight: 400;
}

.pp-category-page-hero p,
.pp-category-description,
.pp-page-hero p {
	color: #555;
	font-size: 22px;
}

.pp-category-page-hero .pp-button {
	min-width: 250px;
	min-height: 70px;
	font-size: 18px;
}

.pp-product-detail {
	padding: 0 0 68px;
	background: #f5f5f5;
}

.pp-single-product {
	grid-template-columns: minmax(420px, 1.05fr) minmax(420px, 0.95fr);
	gap: clamp(44px, 5vw, 78px);
	align-items: start;
}

.pp-single-product__summary {
	padding: 14px 0 0;
}

.pp-single-product__summary .product_title {
	max-width: 640px;
	margin-bottom: 10px;
	font-size: clamp(26px, 2.1vw, 34px);
	font-weight: 400;
	line-height: 1.18;
}

.pp-product-sku {
	margin: 0 0 24px;
	color: #8b8b8b;
	font-size: 16px;
}

.pp-single-product__summary .price {
	font-size: 30px;
}

.pp-single-product__media {
	position: sticky;
	top: 92px;
	min-height: 560px;
	padding: 28px 34px 22px;
	background: #fff;
}

.pp-product-primary-price {
	margin: 18px 0 10px;
	color: #111;
	font-size: clamp(26px, 2.4vw, 34px);
	font-weight: 700;
}

.pp-single-product__purchase .woocommerce-variation-price,
.pp-single-product__purchase .woocommerce-variation-description {
	display: none;
}

.pp-single-product__media .woocommerce-product-gallery__image img {
	max-height: 500px;
}

.pp-single-product__media .flex-control-thumbs {
	justify-content: center;
	margin-top: 18px !important;
}

.pp-single-product__media .flex-control-thumbs li {
	width: 62px !important;
	height: 62px;
	border-color: #ddd;
}

.pp-variation-controls {
	gap: 18px;
	margin: 0 0 24px;
	padding-top: 0;
}

.pp-variation-label {
	font-size: 16px;
	font-weight: 400;
}

.pp-option-list {
	gap: 10px;
}

.pp-option-row {
	min-height: 42px;
	padding: 4px 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	font-size: 16px;
}

.pp-option-row::before {
	width: 17px;
	height: 17px;
}

.pp-option-row.is-active::before {
	border-color: #888;
	box-shadow: inset 0 0 0 4px #fff;
	background: #888;
}

.pp-option-row img {
	width: 36px;
	height: 36px;
	border-radius: 0;
}

.pp-swatch-list {
	gap: 7px;
}

.pp-color-swatch {
	width: 34px;
	height: 34px;
	border-radius: 50%;
}

.pp-color-swatch.is-active {
	border-color: #888;
	box-shadow: 0 0 0 2px #fff, 0 0 0 3px #888;
}

.pp-single-product__purchase .single_variation_wrap {
	margin: 0;
	padding: 0;
}

.pp-quantity {
	border-radius: 0;
}

.single_add_to_cart_button {
	min-height: 54px;
	border-radius: 6px;
	font-size: 17px;
	flex: 1 1 auto;
}

.pp-product-live-description {
	max-width: 620px;
	margin-top: 44px;
	color: #3e3e3e;
	font-size: 17px;
	line-height: 1.55;
}

.pp-product-live-description p {
	margin: 0 0 16px;
}

.pp-product-gallery-arrow {
	position: absolute;
	top: 44%;
	z-index: 5;
	display: grid;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid #777;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	color: #333;
	font-size: 30px;
	line-height: 1;
	place-items: center;
	cursor: pointer;
}

.pp-product-gallery-arrow--prev {
	left: 18px;
}

.pp-product-gallery-arrow--next {
	right: 18px;
}

.pp-content-panel,
.pp-landing-product,
.pp-feature,
.pp-form-panel,
.pp-contact-card,
.pp-delivery-page__aside,
.pp-about-facts,
.pp-industrial-list {
	border-radius: 0;
	box-shadow: none;
}

.pp-contact-band,
.pp-footer {
	background: #333;
}

@media (max-width: 1100px) {
	.pp-header .pp-header__inner {
		width: min(100% - 36px, 1200px);
		gap: 18px;
	}

	.pp-nav ul {
		gap: 20px;
	}

	.pp-nav a,
	.pp-phone {
		font-size: 14px;
	}

	.pp-home-hero__inner {
		gap: 40px;
	}

	.pp-product-grid,
	.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.pp-header__actions .pp-header__search {
		display: none;
	}

	.pp-tilda-split__content,
	.pp-tilda-split--reverse .pp-tilda-split__content,
	.pp-tilda-split--reverse .pp-tilda-split__media {
		order: 0;
	}

	.pp-store-hero {
		max-width: none;
	}

	.pp-single-product {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.pp-single-product__summary {
		order: initial;
	}

	.pp-single-product__media {
		order: initial;
		position: relative;
		top: auto;
	}

	.pp-single-product__media {
		min-height: 360px;
	}

	.pp-contact-map-section {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.pp-contact-location {
		min-height: 360px;
		padding: 48px 28px;
	}

	.pp-contact-dark {
		padding: 52px 0;
	}

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

@media (max-width: 560px) {
	.pp-container {
		width: min(100% - 28px, 1200px);
	}

	.pp-header .pp-header__inner {
		width: min(100% - 28px, 1200px);
		min-height: 64px;
	}

	.pp-logo img {
		width: 138px;
	}

	.pp-floating-cart {
		top: 86px;
		right: 14px;
		width: 52px;
		height: 52px;
	}

	.pp-cart-drawer__panel {
		padding: 24px 20px;
	}

	.pp-cart-drawer .woocommerce-mini-cart-item {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 14px;
		padding-right: 34px;
	}

	.pp-cart-drawer .pp-mini-cart-product {
		grid-column: 1 / -1;
		grid-template-columns: 78px minmax(0, 1fr);
		gap: 14px;
	}

	.pp-cart-drawer .woocommerce-mini-cart-item img {
		width: 78px;
		height: 78px;
	}

	.pp-mini-cart-line-total {
		justify-self: end;
		font-size: 17px;
	}

	.pp-floating-phone {
		right: 18px;
		bottom: 20px;
		width: 54px;
		height: 54px;
		font-size: 26px;
	}

	.pp-home-hero__inner {
		padding: 24px 0 136px;
	}

	.pp-home-direction__cta {
		bottom: 14%;
		padding: 12px;
	}

	.pp-home-phone-card {
		bottom: 30px;
	}

	.pp-store-hero .pp-container {
		padding: 72px 0 58px;
	}

	.pp-catalog-hero-actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 22px;
		margin-top: 28px;
	}

	.pp-store-hero .pp-catalog-hero-actions__button,
	.pp-category-tilda-hero .pp-catalog-hero-actions__button {
		flex-basis: auto;
		width: 100%;
		min-width: 0;
		min-height: 64px;
		padding: 15px 22px;
		border-radius: 14px;
		font-size: 18px;
	}

	.pp-catalog-hero-actions__phone {
		grid-template-columns: 46px minmax(0, auto);
		gap: 15px;
	}

	.pp-catalog-hero-actions__phone img {
		width: 46px;
		height: 50px;
	}

	.pp-catalog-hero-actions__phone span {
		font-size: 14px;
	}

	.pp-catalog-hero-actions__phone a {
		font-size: clamp(24px, 7.4vw, 30px);
	}

	.pp-catalog-layout {
		gap: 28px;
	}

	.pp-product-grid,
	.products {
		grid-template-columns: 1fr;
	}

	.pp-product-card__image,
	.woocommerce-loop-product__link {
		min-height: 260px;
	}

	.pp-category-page-hero h1,
	.pp-page-hero h1 {
		margin-top: 38px;
	}

	.pp-contact-question h2 {
		font-size: 36px;
	}
}

/* Keep parity overrides last: the source stylesheet contains legacy duplicate rules. */
.pp-application-section .pp-application-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	max-width: 960px;
}

.pp-application-section .pp-application-tile,
.pp-application-section .pp-application-tile img {
	min-height: 270px;
}

.pp-application-section .pp-application-tile span {
	max-width: calc(100% - 20px);
	padding: 11px 16px;
	font-size: 15px;
	font-weight: 500;
}

.pp-tilda-sections .pp-tilda-split {
	padding: 34px 0 42px;
}

.pp-direction-carousel__controls {
	display: none;
}

.pp-tilda-sections .pp-tilda-split__grid {
	grid-template-columns: 460px 500px;
	justify-content: center;
	gap: 40px;
	max-width: 1140px;
}

.pp-tilda-sections .pp-tilda-split__media img {
	width: 460px;
	height: 340px;
	aspect-ratio: auto;
	border-radius: 0;
	filter: none;
}

.pp-tilda-sections--grayscale-hover .pp-tilda-split__media img {
	filter: grayscale(1);
	transition: filter 280ms ease;
}

.pp-tilda-sections--grayscale-hover .pp-tilda-split__media:hover img {
	filter: none;
}

.pp-tilda-sections .pp-tilda-split__content h2 {
	font-size: 30px;
}

.pp-tilda-sections .pp-tilda-split__content p {
	font-size: 16px;
	line-height: 1.55;
}

.pp-tilda-sections .pp-tilda-links {
	gap: 4px;
	margin-top: 16px;
}

.pp-tilda-sections .pp-tilda-links a {
	font-size: 14px;
	line-height: 1.35;
}

.pp-about-brand {
	max-width: 900px;
	margin: 38px auto 0;
	text-align: center;
}

.pp-about-brand > strong {
	display: block;
	margin-bottom: 12px;
	color: var(--pp-red);
	font-size: 25px;
}

.pp-about-brand .pp-rich-text {
	font-size: 16px;
	line-height: 1.65;
}

.pp-about-brand .pp-rich-text p {
	margin: 0 0 8px;
}

.pp-tilda-sections .pp-source-links {
	display: grid;
	gap: 5px;
	margin-top: 18px;
}

.pp-tilda-sections .pp-source-links a {
	display: block;
	color: #171717;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

.pp-tilda-sections .pp-source-links a:hover {
	color: var(--pp-red);
}

.pp-direction-copy {
	padding: 58px 0;
}

.pp-direction-copy > .pp-container > h2 {
	margin: 0 auto 34px;
	font-size: clamp(30px, 3vw, 46px);
	text-align: center;
}

.pp-industrial-source-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.pp-industrial-source-grid article {
	display: flex;
	min-height: 230px;
	padding: 24px;
	border: 1px solid #e1e1e1;
	background: #fff;
	flex-direction: column;
}

.pp-industrial-source-grid h3 {
	margin: 0 0 14px;
	font-size: 20px;
	line-height: 1.25;
}

.pp-industrial-source-grid p {
	margin: 0 0 20px;
	color: #555;
	font-size: 15px;
	line-height: 1.55;
}

.pp-industrial-source-grid a {
	margin-top: auto;
	color: var(--pp-red);
	font-weight: 700;
}

@media (max-width: 1000px) {
	.pp-tilda-sections .pp-tilda-split__grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.pp-tilda-sections .pp-tilda-split__media img {
		width: 100%;
		height: auto;
		aspect-ratio: 460 / 340;
	}

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

@media (max-width: 1360px) and (min-width: 901px) {
	.pp-header .pp-header__inner {
		width: calc(100% - 36px);
		gap: 14px;
	}

	.pp-logo img {
		width: 150px;
	}

	.pp-nav ul {
		gap: 16px;
	}

	.pp-nav a,
	.pp-phone {
		font-size: 14px;
	}

	.pp-header .pp-button {
		padding: 0 12px;
		font-size: 13px;
	}
}

@media (max-width: 760px) {
	.pp-application-section .pp-application-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pp-application-section .pp-application-tile,
	.pp-application-section .pp-application-tile img {
		min-height: 210px;
	}

	.pp-tilda-sections .pp-tilda-split__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.page-template-page-city .pp-tilda-intro h1 {
		font-size: 26px;
		line-height: 1.25;
	}

	.page-template-page-industrial .pp-tilda-intro h1 {
		font-size: 30px;
		line-height: 1.22;
	}

	.page-template-page-city .pp-direction-carousel__track,
	.page-template-page-industrial .pp-direction-carousel__track {
		display: flex;
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.page-template-page-city .pp-direction-carousel__track::-webkit-scrollbar,
	.page-template-page-industrial .pp-direction-carousel__track::-webkit-scrollbar {
		display: none;
	}

	.page-template-page-city .pp-direction-carousel__track > .pp-tilda-split,
	.page-template-page-industrial .pp-direction-carousel__track > .pp-tilda-split {
		flex: 0 0 100%;
		min-width: 0;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}

	.page-template-page-city .pp-direction-carousel__controls,
	.page-template-page-industrial .pp-direction-carousel__controls {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 16px;
		padding: 8px 14px 26px;
		background: #fff;
		color: #555;
		font-size: 13px;
	}

	.pp-direction-carousel__controls button {
		width: 44px;
		height: 44px;
		min-height: 0;
		padding: 0;
		border: 1px solid #bbb;
		border-radius: 50%;
		background: #fff;
		color: #222;
		box-shadow: none;
		font-size: 20px;
	}

	.pp-tilda-sections .pp-tilda-split {
		padding: 22px 0 28px;
	}

	.pp-tilda-sections .pp-tilda-split__media img {
		height: min(54vw, 220px);
		aspect-ratio: auto;
		object-fit: cover;
	}

	.pp-tilda-sections .pp-tilda-split__content h2 {
		font-size: 25px;
		line-height: 1.18;
	}

	.pp-tilda-sections .pp-tilda-split__content p {
		font-size: 15px;
		line-height: 1.45;
	}

	.pp-tilda-sections .pp-tilda-links,
	.pp-tilda-sections .pp-source-links {
		margin-top: 12px;
	}

	.pp-tilda-sections .pp-tilda-split__media,
	.pp-tilda-sections .pp-tilda-split__content,
	.pp-tilda-sections .pp-tilda-split--reverse .pp-tilda-split__media,
	.pp-tilda-sections .pp-tilda-split--reverse .pp-tilda-split__content {
		order: 0;
	}

	.pp-about-brand {
		margin-top: 28px;
	}

	.pp-industrial-source-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px) {
	.pp-application-section .pp-application-grid {
		grid-template-columns: 1fr;
	}

	.pp-application-section .pp-application-tile,
	.pp-application-section .pp-application-tile img {
		min-height: 260px;
	}
}

/*
 * Catalog, navigation and variation parity — release 1.3.
 * Kept last because this stylesheet still contains legacy Underscores layers.
 */
.pp-primary-menu > .menu-item {
	position: relative;
}

.pp-nav__parent {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.pp-submenu-toggle {
	position: relative;
	width: 18px;
	height: 22px;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #202020;
}

.pp-submenu-toggle::before {
	position: absolute;
	top: 7px;
	left: 5px;
	width: 6px;
	height: 6px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	content: "";
	transform: rotate(45deg);
	transition: transform 0.18s ease;
}

.pp-primary-menu .sub-menu {
	position: absolute;
	top: calc(100% + 18px);
	left: -18px;
	z-index: 20;
	display: grid;
	gap: 0;
	min-width: 265px;
	margin: 0;
	padding: 10px 0;
	border: 1px solid #ececec;
	background: #fff;
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.13);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
}

.pp-primary-menu .sub-menu::before {
	position: absolute;
	right: 0;
	bottom: 100%;
	left: 0;
	height: 20px;
	content: "";
}

.pp-primary-menu .sub-menu li {
	display: block;
	width: 100%;
}

.pp-primary-menu .sub-menu a {
	display: block;
	padding: 11px 18px;
	color: #222;
	font-size: 15px;
	line-height: 1.3;
	white-space: nowrap;
}

.pp-primary-menu .sub-menu a:hover {
	background: #f5f5f5;
	color: var(--pp-red);
	text-decoration: none;
}

.pp-primary-menu .menu-item-has-children:hover > .sub-menu,
.pp-primary-menu .menu-item-has-children:focus-within > .sub-menu,
.pp-primary-menu .menu-item-has-children.is-submenu-open > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.pp-primary-menu .menu-item-has-children.is-submenu-open .pp-submenu-toggle::before {
	transform: translateY(3px) rotate(225deg);
}

.pp-primary-menu > li > a,
.pp-primary-menu > li > .pp-nav__parent > a {
	white-space: nowrap;
}

.pp-catalog-shell {
	width: calc(100% - 40px);
	max-width: none;
}

.pp-category-catalog-shell {
	width: min(100% - 40px, 1200px);
	max-width: 1200px;
}

.pp-catalog-toolbar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 20px;
	margin-bottom: 50px;
	padding-right: 10px;
}

.pp-catalog-toolbar > .pp-live-search {
	position: relative;
	flex: 0 0 220px;
}

.pp-catalog-search {
	position: relative;
	width: 100%;
}

.pp-catalog-search input {
	width: 100%;
	height: 31px;
	padding: 0 62px 0 10px;
	border: 1px solid #ddd;
	border-radius: 0;
	background: #f8f8f8;
	font-size: 16px;
}

.pp-catalog-search .pp-live-search__submit {
	position: absolute;
	top: 0;
	right: 0;
	width: 31px;
	height: 31px;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #222;
	box-shadow: none;
	font-size: 18px;
	transform: none;
}

.pp-catalog-search .pp-live-search__clear {
	right: 29px;
	width: 30px;
	height: 30px;
	font-size: 20px;
}

.pp-catalog-toolbar .pp-live-search__suggestions {
	min-width: 340px;
}

.pp-catalog-toolbar .woocommerce-ordering {
	flex: 0 0 200px;
	margin: 0;
}

.pp-catalog-toolbar .woocommerce-ordering select {
	width: 100%;
	height: 31px;
	padding: 0 8px;
	border: 1px solid #ddd;
	border-radius: 0;
	background: #f8f8f8;
	font-size: 16px;
}

.pp-catalog-layout {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	align-items: start;
	gap: 60px;
}

.pp-filter-drawer-toggle {
	display: none;
}

.pp-catalog-sidebar {
	position: sticky;
	top: 98px;
	display: block;
	padding-top: 50px;
}

.pp-catalog-filter-form {
	display: grid;
	gap: 30px;
}

.pp-filter-block {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.pp-filter-block legend {
	width: 100%;
	margin: 0 0 15px;
	padding: 0;
	color: #1b1b1b;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.55;
}

.pp-filter-checkboxes {
	display: grid;
	gap: 11px;
}

.pp-filter-block--colors .pp-filter-checkboxes {
	grid-template-columns: repeat(6, 36px);
	gap: 8px 0;
	padding-left: 8px;
}

.pp-filter-check {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #272727;
	font-size: 16px;
	line-height: 1.55;
	cursor: pointer;
}

.pp-filter-check input,
.pp-filter-color input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.pp-filter-check__box {
	position: relative;
	display: block;
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	border: 2px solid #111;
	background: var(--pp-filter-color, #fff);
	box-shadow: none;
}

.pp-filter-block--colors .pp-filter-check {
	width: 30px;
	min-height: 30px;
}

.pp-filter-color {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 26px;
	cursor: pointer;
}

.pp-filter-block--colors .pp-filter-check__box {
	flex-basis: 26px;
	width: 26px;
	height: 26px;
	border: 1px solid #ddd;
	border-radius: 50%;
}

.pp-filter-check input:checked + .pp-filter-check__box,
.pp-filter-color input:checked + .pp-filter-check__box {
	border-color: #222;
	box-shadow: inset 0 0 0 3px #fff, 0 0 0 1px #222;
}

.pp-filter-check input:checked + .pp-filter-check__box::after,
.pp-filter-color input:checked + .pp-filter-check__box::after {
	position: absolute;
	top: 5px;
	left: 7px;
	width: 5px;
	height: 8px;
	border-right: 2px solid #111;
	border-bottom: 2px solid #111;
	content: "";
	transform: rotate(45deg);
}

.pp-filter-color input:checked + .pp-filter-check__box::after {
	top: 7px;
	left: 10px;
}

.pp-filter-block--colors .pp-filter-check__box::after {
	filter: drop-shadow(0 0 1px #fff);
}

.pp-filter-check.is-extra,
.pp-filter-color.is-extra {
	display: none;
}

.pp-filter-block.is-expanded .pp-filter-check.is-extra,
.pp-filter-block.is-expanded .pp-filter-color.is-extra {
	display: flex;
}

.pp-filter-more,
.pp-filter-reset {
	display: inline;
	width: fit-content;
	min-height: 0;
	margin-top: 13px;
	padding: 0;
	border: 0;
	border-bottom: 1px dashed #777;
	border-radius: 0;
	background: transparent;
	color: #555;
	box-shadow: none;
	font-size: 13px;
	font-weight: 400;
	text-decoration: none;
}

.pp-price-range {
	position: relative;
	height: 28px;
	margin: 5px 0 8px;
}

.pp-price-range::before {
	position: absolute;
	top: 12px;
	right: 0;
	left: 0;
	height: 3px;
	background: #c9c9c9;
	content: "";
}

.pp-price-range input[type="range"] {
	position: absolute;
	top: 4px;
	left: 0;
	width: 100%;
	height: 20px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}

.pp-price-range input[type="range"]::-webkit-slider-thumb {
	width: 18px;
	height: 18px;
	border: 2px solid #222;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	pointer-events: auto;
	margin-top: -7.5px;
	-webkit-appearance: none;
}

.pp-price-range input[type="range"]::-webkit-slider-runnable-track {
	height: 3px;
	background: transparent;
}

.pp-price-range input[type="range"]::-moz-range-thumb {
	width: 15px;
	height: 15px;
	border: 2px solid #222;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	pointer-events: auto;
}

.pp-price-range input[type="range"]::-moz-range-track {
	height: 3px;
	background: transparent;
}

.pp-price-filter {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 7px;
}

.pp-price-filter input {
	width: 100%;
	height: 38px;
	min-width: 0;
	padding: 6px 8px;
	border: 1px solid #d6d6d6;
	border-radius: 0;
	font-size: 13px;
}

.pp-filter-submit {
	display: none;
}

.pp-catalog-main {
	min-width: 0;
}

.pp-catalog-main .woocommerce-result-count {
	margin: 0 0 20px;
	color: #777;
	font-size: 14px;
}

.pp-catalog-main .products,
.pp-catalog-main .pp-product-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 90px 0;
}

.pp-category-catalog-toolbar {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin: 0 20px 50px;
}

.pp-category-catalog-toolbar .pp-catalog-toolbar {
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
}

.pp-category-filter-form {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.pp-category-filter-dropdown {
	position: relative;
}

.pp-category-filter-dropdown > summary {
	display: flex;
	align-items: center;
	gap: 7px;
	min-height: 31px;
	padding: 0 10px;
	border: 1px solid #ddd;
	background: #f8f8f8;
	font-size: 15px;
	list-style: none;
	cursor: pointer;
}

.pp-category-filter-dropdown > summary::-webkit-details-marker {
	display: none;
}

.pp-category-filter-dropdown > summary::after {
	width: 6px;
	height: 6px;
	border-right: 1px solid currentColor;
	border-bottom: 1px solid currentColor;
	content: "";
	transform: translateY(-2px) rotate(45deg);
}

.pp-category-filter-dropdown > summary span {
	display: grid;
	place-items: center;
	min-width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--pp-red);
	color: #fff;
	font-size: 11px;
}

.pp-category-filter-dropdown > .pp-filter-block {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	z-index: 18;
	width: 300px;
	max-height: 390px;
	padding: 20px;
	overflow: auto;
	border: 1px solid #dedede;
	background: #fff;
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.13);
}

.pp-category-filter-dropdown > .pp-filter-block--price {
	width: 320px;
}

.pp-category-filter-form > .pp-filter-reset {
	margin: 7px 0 0 6px;
}

.pp-category-catalog-main .pp-product-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pp-catalog-main .pp-product-card {
	padding: 0 20px;
}

.pp-catalog-main .pp-product-card__image {
	min-height: 0;
	padding: 0;
	aspect-ratio: 1 / 1;
}

.pp-catalog-main .pp-product-card__image > img {
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
}

.pp-catalog-main .pp-product-card__body {
	padding: 20px 0 0;
}

.pp-catalog-main .pp-product-card__price {
	margin: 0 0 44px;
	font-size: 22px;
	font-weight: 700;
}

.pp-catalog-main .pp-product-card__title {
	margin: 0 0 16px;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
}

.pp-catalog-main .pp-product-card__cart-row {
	display: block;
}

.pp-catalog-main .pp-product-card__cart-row .qty {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	border: 0;
}

.pp-catalog-main .pp-product-card__cart-row .pp-product-card__add {
	min-height: 53px;
	font-size: 14px;
}

.pp-product-card__cart-row {
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr);
	gap: 8px;
	margin-top: auto;
}

.pp-product-card__cart {
	margin-top: auto;
}

.pp-product-card__cart-row .qty {
	width: 52px;
	min-width: 0;
	height: 48px;
	padding: 0 4px;
	border: 1px solid #cfcfcf;
	border-radius: 0;
	text-align: center;
}

.pp-product-card__cart-row .pp-product-card__add {
	width: 100%;
	min-width: 0;
	padding: 0 10px;
	font-size: 13px;
}

.pp-product-documents {
	padding-top: 76px;
	padding-bottom: 82px;
}

.pp-product-documents .pp-section__head {
	max-width: 760px;
	margin-right: auto;
	margin-left: auto;
}

.pp-product-documents__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 34px;
}

.pp-product-documents__grid > a {
	display: flex;
	align-items: center;
	gap: 17px;
	min-height: 112px;
	padding: 20px 22px;
	border: 1px solid #e1e1e1;
	background: #fff;
	color: #242424;
	font-size: 16px;
	line-height: 1.35;
	text-decoration: none;
	transition: border-color 0.2s ease, transform 0.2s ease;
}

.pp-product-documents__grid > a:hover {
	border-color: var(--pp-red);
	transform: translateY(-2px);
}

.pp-product-documents__icon {
	display: grid;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	place-items: center;
	color: var(--pp-red);
}

.pp-product-documents__icon svg {
	width: 42px;
	height: 42px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.pp-home-numbers {
	background: #1f1f1f;
	color: #fff;
}

.pp-home-numbers .pp-section__head {
	margin-bottom: 42px;
}

.pp-home-numbers .pp-section__head h2 {
	max-width: 980px;
	font-size: clamp(36px, 4vw, 58px);
	line-height: 1.08;
}

.pp-number-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	background: rgba(255, 255, 255, 0.16);
}

.pp-number-card {
	display: grid;
	grid-template-rows: minmax(82px, auto) 1fr;
	min-height: 300px;
	padding: 34px 28px;
	background: #272727;
}

.pp-number-card__value {
	display: flex;
	align-items: baseline;
	gap: 12px;
	margin: 0 0 28px;
	color: #fff;
	font-size: clamp(44px, 4.2vw, 72px);
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.pp-number-card__value span {
	color: var(--pp-red);
	font-size: 0.32em;
	line-height: 1;
	white-space: nowrap;
}

.pp-number-card > p:last-child {
	margin: 0;
	color: #ddd;
	font-size: 17px;
	line-height: 1.55;
}

.pp-editor-section:nth-of-type(even) {
	background: #fff;
}

.pp-editor-section__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 42px;
	align-items: center;
}

.pp-editor-section--media .pp-editor-section__inner {
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
}

.pp-editor-section--notice .pp-editor-section__inner {
	padding: 32px;
	border-left: 5px solid var(--pp-red);
	background: #fff;
}

.pp-editor-section__content h2 {
	margin: 0 0 22px;
	font-size: clamp(28px, 3.2vw, 48px);
}

.pp-rich-text {
	color: #383838;
	font-size: 17px;
	line-height: 1.7;
}

.pp-rich-text .pp-source-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.pp-rich-text .pp-source-links a {
	color: var(--pp-red);
	font-weight: 700;
}

.pp-editor-section__media {
	margin: 0;
}

.pp-editor-section__media img {
	display: block;
	width: 100%;
	max-height: 560px;
	object-fit: contain;
	background: #fff;
}

.pp-landing-trail {
	padding: 26px 0 10px;
	background: #f5f5f5;
}

.pp-landing-trail .pp-breadcrumbs {
	max-width: 1080px;
	margin: 0 auto;
	font-size: 14px;
}

.pp-landing-intro {
	padding: 36px 0 30px;
	background: #f5f5f5;
}

.pp-landing-intro__grid {
	display: grid;
	grid-template-columns: 460px minmax(0, 660px);
	gap: 40px;
	align-items: start;
	max-width: 1160px;
}

.pp-landing-intro__grid--text-only .pp-landing-intro__content {
	grid-column: 2;
}

.pp-landing-intro__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 560px;
	margin: 0;
	padding: 0;
	background: #fff;
}

.pp-landing-intro__media img {
	display: block;
	width: 100%;
	height: 560px;
	object-fit: cover;
}

.pp-landing-intro__content h1 {
	margin: 0 0 8px;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.2;
}

.pp-button--disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.pp-landing-brand {
	margin: 0 0 24px;
	color: #737373;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.pp-landing-intro__content .pp-rich-text {
	font-size: 15px;
	line-height: 1.55;
}

.pp-landing-intro__content .pp-button {
	margin-top: 22px;
}

.pp-landing-download {
	padding: 26px 0 34px;
	text-align: center;
	background: #f5f5f5;
}

.pp-landing-spec,
.pp-landing-accordion,
.pp-landing-divider {
	background: #f5f5f5;
}

.pp-landing-spec {
	padding: 8px 0;
}

.pp-landing-spec > .pp-container,
.pp-landing-accordion > .pp-container,
.pp-landing-divider > .pp-container {
	max-width: 960px;
}

.pp-spec-table-wrap {
	overflow-x: auto;
	border: 1px solid #dedede;
	background: #fff;
	-webkit-overflow-scrolling: touch;
}

.pp-spec-table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
	font-size: 14px;
	line-height: 1.45;
}

.pp-spec-table tr:nth-child(even) {
	background: #ededed;
}

.pp-spec-table th,
.pp-spec-table td {
	padding: 16px 18px;
	border: 0;
	border-bottom: 1px solid #dedede;
	text-align: left;
	vertical-align: top;
}

.pp-spec-table th {
	width: 34%;
	font-weight: 600;
}

.pp-landing-divider {
	padding: 54px 0 20px;
	text-align: center;
}

.pp-landing-divider h2 {
	margin: 0;
	font-size: clamp(22px, 2.6vw, 32px);
	line-height: 1.2;
}

.pp-landing-accordion {
	padding: 18px 0;
}

.pp-landing-accordion details {
	border-bottom: 1px solid #d5d5d5;
}

.pp-landing-accordion summary {
	position: relative;
	padding: 26px 48px 26px 0;
	color: var(--pp-red);
	font-size: clamp(20px, 2vw, 26px);
	font-weight: 600;
	line-height: 1.35;
	cursor: pointer;
	list-style: none;
}

.pp-landing-accordion summary::-webkit-details-marker {
	display: none;
}

.pp-landing-accordion summary::after {
	position: absolute;
	top: 50%;
	right: 4px;
	width: 12px;
	height: 12px;
	border-right: 2px solid var(--pp-red);
	border-bottom: 2px solid var(--pp-red);
	content: "";
	transform: translateY(-70%) rotate(45deg);
	transition: transform 0.2s ease;
}

.pp-landing-accordion details[open] summary::after {
	transform: translateY(-30%) rotate(225deg);
}

.pp-landing-accordion .pp-rich-text {
	padding: 0 0 28px;
	font-size: 15px;
	line-height: 1.65;
}

.pp-promotion-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	border-top: 1px solid var(--pp-line);
}

.pp-promotion-card {
	position: relative;
	display: grid;
	grid-template-columns: 130px minmax(0, 1fr) auto;
	align-items: center;
	gap: 28px;
	min-height: 0;
	padding: 28px 0;
	border: 0;
	border-bottom: 1px solid var(--pp-line);
	background: transparent;
}

.pp-promotion-card__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	margin: 0;
	padding: 10px 14px;
	border: 1px solid var(--pp-red);
	background: transparent;
	color: var(--pp-red);
	font-size: 15px;
	font-weight: 700;
	text-align: center;
}

.pp-promotion-card h2 {
	margin: 0 0 8px;
	font-size: clamp(20px, 1.7vw, 27px);
	font-weight: 500;
	line-height: 1.25;
}

.pp-promotion-card__content > p {
	margin: 6px 0 0;
}

.pp-promotion-card__condition {
	color: var(--pp-muted);
	font-size: 14px;
}

.pp-promotion-card__link {
	color: var(--pp-red);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.pp-works-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 30px;
}

.pp-works-filters button {
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid #ccc;
	background: #fff;
	color: #222;
	cursor: pointer;
}

.pp-works-filters button.is-active {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}

.pp-works-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.pp-works-grid--preview {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pp-work-card {
	margin: 0;
	overflow: hidden;
	background: #ececec;
}

.pp-work-card[hidden] {
	display: none;
}

.pp-work-card button {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: zoom-in;
}

.pp-work-card img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform 0.25s ease;
}

.pp-work-card button:hover img {
	transform: scale(1.025);
}

.pp-work-card figcaption {
	display: grid;
	gap: 5px;
	padding: 14px;
}

.pp-lightbox {
	width: min(1000px, calc(100% - 40px));
	max-width: none;
	padding: 0;
	border: 0;
	background: #111;
	color: #fff;
}

.pp-lightbox::backdrop {
	background: rgba(0, 0, 0, 0.82);
}

.pp-lightbox img {
	display: block;
	width: 100%;
	max-height: 80vh;
	object-fit: contain;
}

.pp-lightbox p {
	margin: 0;
	padding: 14px 20px;
}

.pp-lightbox__close {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 2;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.72);
	color: #fff;
	font-size: 30px;
	cursor: pointer;
}

.pp-lightbox__arrow {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: grid;
	width: 50px;
	height: 64px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: rgba(0, 0, 0, 0.62);
	color: #fff;
	font-size: 48px;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
	place-items: center;
	transform: translateY(-50%);
}

.pp-lightbox__arrow--prev {
	left: 10px;
}

.pp-lightbox__arrow--next {
	right: 10px;
}

.woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin: 0 0 30px;
	padding: 0;
	border-bottom: 1px solid var(--pp-line);
	list-style: none;
}

.woocommerce-tabs ul.tabs a {
	display: block;
	padding: 14px 20px;
	border-bottom: 3px solid transparent;
	text-decoration: none;
}

.woocommerce-tabs ul.tabs li.active a {
	border-color: var(--pp-red);
	color: var(--pp-red);
}

.pp-product-guide-link {
	margin-top: 28px;
}

/* Blog uses ordinary WordPress posts and Classic Editor markup. */
.pp-blog-container {
	max-width: 1180px;
}

.pp-blog-trail {
	padding: 24px 0;
	background: #fff;
}

.pp-blog-heading {
	padding: 16px 0 48px;
	background: #f4f4f4;
}

.pp-article-page,
.pp-article__header {
	background: #f4f4f4;
}

.pp-article__header {
	padding: 28px 0 24px;
}

.pp-article__header .pp-breadcrumbs {
	margin-bottom: 34px;
}

.pp-blog-heading h1 {
	margin: 0;
	font-size: 42px;
	font-weight: 400;
	text-align: center;
}

.pp-article__header h1 {
	max-width: 980px;
	margin: 0;
	font-size: clamp(36px, 4vw, 48px);
	font-weight: 400;
	line-height: 1.18;
}

.pp-blog-listing {
	padding: 82px 0 100px;
	background: #f7f7f7;
}

.pp-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 52px 30px;
}

.pp-blog-card {
	min-width: 0;
	background: transparent;
}

.pp-blog-card__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #e8e8e8;
}

.pp-blog-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.pp-blog-card:hover .pp-blog-card__media img {
	transform: scale(1.025);
}

.pp-blog-card__placeholder {
	display: grid;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #252525, #3d3d3d);
	color: rgba(255,255,255,0.18);
	font-size: 82px;
	font-weight: 700;
	place-items: center;
}

.pp-blog-card__body {
	padding: 15px 0 0;
}

.pp-blog-card__meta {
	margin: 0 0 16px;
	color: #777;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.05em;
}

.pp-blog-card h2 {
	margin: 0 0 16px;
	font-size: 23px;
	font-weight: 400;
	line-height: 1.25;
}

.pp-blog-card h2 a,
.pp-blog-card__link {
	color: var(--pp-ink);
	text-decoration: none;
}

.pp-blog-card__body > p:not(.pp-blog-card__meta) {
	margin: 0 0 24px;
	color: #606060;
	font-size: 16px;
	line-height: 1.65;
}

.pp-blog-card__link {
	display: inline-flex;
	gap: 10px;
	align-items: center;
	border-bottom: 1px solid var(--pp-red);
	font-weight: 700;
}

.pp-blog-card__link span {
	color: var(--pp-red);
}

.pp-blog-listing .navigation.pagination {
	margin-top: 54px;
}

.pp-blog-listing .nav-links {
	display: flex;
	gap: 8px;
}

.pp-blog-listing .page-numbers {
	display: grid;
	min-width: 42px;
	height: 42px;
	padding: 0 10px;
	border: 1px solid #d6d6d6;
	background: #fff;
	color: var(--pp-ink);
	text-decoration: none;
	place-items: center;
}

.pp-blog-listing .page-numbers.current {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}

.pp-article-container {
	max-width: 1000px;
}

.pp-article__body {
	padding-top: 20px;
	padding-bottom: 96px;
}

.pp-article__featured {
	overflow: hidden;
	margin: 0 0 22px;
	background: #eee;
}

.pp-article__featured img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 650px;
	object-fit: cover;
}

.pp-article-content.entry-content {
	max-width: 100%;
	margin: 0 auto;
	color: #292929;
	font-size: 17px;
	line-height: 1.62;
}

.pp-article-content > :first-child {
	margin-top: 0;
}

.pp-article-content h2 {
	margin: 42px 0 18px;
	color: var(--pp-ink);
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 400;
	line-height: 1.18;
}

.pp-article-content h3 {
	margin: 38px 0 18px;
	color: var(--pp-ink);
	font-size: 26px;
}

.pp-article-content p,
.pp-article-content ul,
.pp-article-content ol,
.pp-article-content blockquote,
.pp-article-content table,
.pp-article-content figure {
	margin-top: 0;
	margin-bottom: 24px;
}

.pp-article-content ul,
.pp-article-content ol {
	padding-left: 1.35em;
}

.pp-article-content li + li {
	margin-top: 9px;
}

.pp-article-content a {
	color: var(--pp-red);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.pp-article-content img {
	width: auto;
	max-width: 100%;
	height: auto;
}

.pp-article-content blockquote {
	padding: 24px 28px;
	border-left: 4px solid var(--pp-red);
	background: #f5f5f5;
}

.pp-article-content table {
	width: 100%;
	border-collapse: collapse;
}

.pp-article-content th,
.pp-article-content td {
	padding: 13px 15px;
	border: 1px solid #ddd;
	text-align: left;
}

.pp-article__back {
	max-width: 100%;
	margin: 54px auto 0;
	padding-top: 34px;
	border-top: 1px solid #dedede;
}

@media (max-width: 1180px) {
	.pp-header .pp-header__inner {
		gap: 18px;
	}

	.pp-nav > .pp-primary-menu {
		gap: 18px;
	}

	.pp-nav a,
	.pp-phone {
		font-size: 14px;
	}

	.pp-header .pp-button {
		padding: 0 16px;
	}

	.pp-catalog-main .products,
	.pp-catalog-main .pp-product-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.pp-blog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pp-article__header .pp-breadcrumbs {
		margin-bottom: 36px;
	}

	.pp-article-content.entry-content {
		font-size: 17px;
	}

	.pp-primary-menu > .menu-item {
		width: 100%;
	}

	.pp-nav__parent {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 48px;
	}

	.pp-nav__parent > a {
		min-width: 0;
	}

	.pp-submenu-toggle {
		width: 48px;
		height: 48px;
		border-top: 1px solid var(--pp-line);
	}

	.pp-submenu-toggle::before {
		top: 17px;
		left: 18px;
		width: 8px;
		height: 8px;
	}

	.pp-primary-menu .sub-menu {
		position: static;
		display: none;
		min-width: 0;
		padding: 0 0 8px 20px;
		border: 0;
		box-shadow: none;
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.pp-primary-menu .menu-item-has-children:hover > .sub-menu {
		display: none;
	}

	.pp-primary-menu .menu-item-has-children.is-submenu-open > .sub-menu {
		display: grid;
	}

	.pp-primary-menu .sub-menu a {
		padding: 10px 12px;
		white-space: normal;
	}

	.pp-catalog-toolbar {
		display: grid;
		grid-template-columns: 1fr;
		padding-right: 0;
		gap: 12px;
	}

	.pp-catalog-toolbar > .pp-live-search,
	.pp-catalog-search,
	.pp-catalog-toolbar .woocommerce-ordering {
		width: 100%;
		flex: none;
	}

	.pp-catalog-toolbar .pp-live-search__suggestions {
		min-width: 0;
	}

	.pp-catalog-layout {
		grid-template-columns: 1fr;
	}

	.pp-filter-drawer-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		min-height: 52px;
		padding: 0 18px;
		border: 1px solid #d7d7d7;
		background: #fff;
		color: #222;
		font-weight: 700;
		cursor: pointer;
	}

	.pp-catalog-sidebar {
		position: static;
		display: none;
		padding-top: 0;
	}

	.pp-catalog-sidebar.is-open {
		display: block;
	}

	.pp-catalog-filter-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 20px;
		border: 1px solid #e0e0e0;
		background: #fff;
	}

	.pp-filter-submit,
	.pp-filter-reset {
		align-self: end;
	}

	.pp-catalog-main .products,
	.pp-catalog-main .pp-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

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

	.pp-editor-section--media .pp-editor-section__inner {
		grid-template-columns: 1fr;
	}

	.pp-landing-intro__grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.pp-landing-intro__grid--text-only .pp-landing-intro__content {
		grid-column: auto;
	}

	.pp-category-catalog-toolbar,
	.pp-category-filter-form {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.pp-category-catalog-toolbar {
		margin-right: 0;
		margin-left: 0;
	}

	.pp-category-filter-dropdown > summary {
		justify-content: space-between;
		min-height: 44px;
	}

	.pp-category-filter-dropdown > .pp-filter-block,
	.pp-category-filter-dropdown > .pp-filter-block--price {
		position: static;
		width: 100%;
		box-shadow: none;
	}

	.pp-category-catalog-toolbar .pp-catalog-toolbar {
		width: 100%;
	}

	.pp-landing-intro__media {
		min-height: 0;
		aspect-ratio: 23 / 28;
	}

	.pp-landing-intro__media img {
		height: 100%;
	}

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

	.pp-promotion-card {
		grid-template-columns: 110px minmax(0, 1fr);
	}

	.pp-promotion-card__link {
		grid-column: 2;
	}
}

@media (max-width: 600px) {
	.pp-store-hero h1 {
		font-size: 32px;
		line-height: 1.2;
	}

	.pp-article__header {
		padding: 26px 0 42px;
	}

	.pp-article__header h1 {
		font-size: 36px;
	}

	.pp-blog-grid {
		grid-template-columns: 1fr;
	}

	.pp-blog-listing {
		padding: 46px 0 64px;
	}

	.pp-blog-card__body {
		padding: 22px 20px 26px;
	}

	.pp-blog-card h2 {
		font-size: 25px;
	}

	.pp-article__body {
		padding-top: 30px;
		padding-bottom: 64px;
	}

	.pp-article__featured {
		margin-bottom: 34px;
	}

	.pp-article-content h2 {
		margin-top: 42px;
		font-size: 30px;
	}

	.pp-landing-trail {
		padding-top: 18px;
	}

	.pp-landing-intro {
		padding-top: 20px;
	}

	.pp-landing-intro__media {
		padding: 18px;
	}

	.pp-landing-intro__content h1 {
		font-size: 30px;
	}

	.pp-spec-table {
		min-width: 620px;
		font-size: 13px;
	}

	.pp-spec-table th,
	.pp-spec-table td {
		padding: 12px;
	}

	.pp-landing-accordion summary {
		font-size: 16px;
	}

	.pp-contact-question .wpcf7-form,
	.pp-cf7-form {
		grid-template-columns: 1fr;
	}

	.pp-contact-question .wpcf7-form > p,
	.pp-contact-question .wpcf7-form .pp-cf7-form > p,
	.pp-cf7-form > label {
		grid-column: 1;
	}

	.pp-contact-form-section {
		padding: 52px 0;
	}

	.pp-catalog-filter-form,
	.pp-catalog-main .products,
	.pp-catalog-main .pp-product-grid,
	.pp-product-documents__grid {
		grid-template-columns: 1fr;
	}

	.pp-number-grid,
	.pp-works-grid,
	.pp-works-grid--preview {
		grid-template-columns: 1fr;
	}

	.pp-number-card {
		min-height: 0;
	}

	.pp-editor-section--notice .pp-editor-section__inner,
	.pp-promotion-card {
		padding: 24px 20px;
	}

	.pp-promotion-card {
		grid-template-columns: 1fr;
		gap: 14px;
		padding-right: 0;
		padding-left: 0;
	}

	.pp-promotion-card__badge {
		justify-self: start;
		min-height: 38px;
	}

	.pp-promotion-card__link {
		grid-column: auto;
	}

	.pp-lightbox {
		width: calc(100% - 20px);
	}

	.pp-lightbox__arrow {
		width: 42px;
		height: 56px;
	}
}
