/* Approved typography and layout primitives. No prototype CSS dependency. */
:root {
	--heading-h1: clamp(2.48rem, 4vw, 3.6rem);
	--heading-h2: clamp(1.68rem, 2.68vw, 2.412rem);
	--heading-h2-contact: clamp(1.6rem, 2.56vw, 2.6rem);
	--pliapack-page-gutter: 48px;
	--pp-ink: #191918;
	--pp-paper: #f3f0e8;
	--pp-white: #fcfbf7;
	--pp-stone: #c8c0b4;
	--pp-oxblood: #603238;
	--pp-muted: #615e59;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }
a { text-underline-offset: 4px; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
:where(.alignwide) { width: min(100%, var(--wp--style--global--wide-size)); }
:where(.alignfull) { width: 100%; }

.wp-block-button__link {
	min-height: 48px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	transition: background-color .18s ease, color .18s ease;
}
.wp-block-button__link:hover { background: #49262b; color: var(--pp-white); }
a:focus-visible,
button:focus-visible,
summary:focus-visible { outline: 2px solid var(--pp-oxblood); outline-offset: 4px; }

/* Shared header and native Navigation dropdowns. */
.pp-header {
	position: relative;
	z-index: 20;
	padding: 20px var(--pliapack-page-gutter);
	border-bottom: 1px solid rgba(25, 25, 24, .12);
	background: var(--pp-white);
}
.pp-header > .wp-block-group { min-height: 52px; }
.pp-header .wp-block-site-title {
	flex: none;
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 650;
	letter-spacing: -.05em;
	font-size: 24px;
}
.pp-header a { text-decoration: none; }
.pp-header .wp-block-navigation { font-size: 13px; font-weight: 650; }
.pp-header .wp-block-navigation__submenu-container {
	min-width: 260px !important;
	padding: 18px !important;
	border: 1px solid rgba(25, 25, 24, .14) !important;
	box-shadow: 0 18px 42px rgba(25, 25, 24, .12) !important;
	background: var(--pp-white) !important;
}
.pp-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 8px 10px; }
.pp-header-cta { flex: none; }
.pp-header-cta .wp-block-button__link { min-height: 42px; padding: 10px 18px; }

/* Shared sections and module patterns. */
.pp-section { padding: 88px var(--pliapack-page-gutter); }
.pp-page-hero { padding: 72px 0 56px; }
.pp-page-hero > * { max-width: 850px; margin-inline: 0; }
.pp-page-hero .wp-block-query-title { margin-bottom: 24px; }
.pp-module-grid,
.pp-card-grid,
.pp-article-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.pp-card { min-width: 0; }
.pp-card .wp-block-post-featured-image { margin-bottom: 18px; overflow: hidden; background: var(--pp-paper); }
.pp-card .wp-block-post-title { margin: 0 0 10px; }
.pp-card .wp-block-post-title a { color: inherit; text-decoration: none; }
.pp-card .wp-block-post-excerpt { color: var(--pp-muted); font-size: .9rem; }
.wp-block-details { border-bottom: 1px solid var(--pp-stone); padding: 22px 0; }
.wp-block-details summary { cursor: pointer; font-weight: 650; }
.pp-cta { padding: 84px var(--pliapack-page-gutter); background: var(--pp-paper); text-align: center; }
.pp-cta > * { max-width: 720px; }
.pp-cta h2 { font-size: var(--heading-h2-contact); }
.pp-cta .wp-block-buttons { justify-content: center; }

/* Modular homepage. Outer blocks are full bleed; editable inner blocks stop at 1320px. */
.pp-front-page,
.pp-front-page > .wp-block-post-content { width: 100%; max-width: none; }
.pp-front-page > .wp-block-post-content > * { margin-block-start: 0; }
.pp-home-module { padding: 112px var(--pliapack-page-gutter); }
.pp-home-heading { margin: 0 0 48px; }
.pp-home-heading > * { margin-inline: 0; }
.pp-home-heading > p { max-width: 660px; color: var(--pp-muted); }
.pp-home-heading--row { gap: 24px; }

.pp-home-hero { min-height: 720px; padding: 112px var(--pliapack-page-gutter); display: flex; align-items: center; }
.pp-home-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(13, 13, 12, .86) 0%, rgba(13, 13, 12, .58) 49%, rgba(13, 13, 12, .08) 100%); }
.pp-home-hero .wp-block-cover__inner-container { position: relative; z-index: 1; width: 100%; }
.pp-home-hero__inner { max-width: var(--wp--style--global--wide-size); margin-inline: auto !important; }
.pp-home-hero__inner > * { max-width: 760px; margin-inline: 0 !important; }
.pp-home-hero h1 { max-width: 760px; color: var(--pp-white); }
.pp-home-hero p { max-width: 680px; color: rgba(252, 251, 247, .82); }
.pp-home-hero .pp-reference-caption,
.pp-reference-caption { margin-top: 28px; font-size: .72rem; letter-spacing: .02em; color: rgba(252, 251, 247, .68); }

.pp-pathway-grid { gap: 24px; }
.pp-pathway-card { height: 100%; min-height: 184px; padding: 34px; border: 1px solid var(--pp-stone); justify-content: flex-end; }
.pp-pathway-card h3 { margin-top: 0; }
.pp-pathway-card h3 a { color: inherit; text-decoration: none; }
.pp-product-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 42px 24px; }
.pp-product-card .wp-block-post-featured-image { aspect-ratio: 1; }
.pp-product-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.pp-product-card:hover .wp-block-post-featured-image img { transform: scale(1.025); }
.pp-structure-grid > .pp-structure-card { margin: 0 !important; }
.pp-structure-card .wp-block-image { margin: 0 0 21px; background: var(--pp-paper); }
.pp-structure-card .wp-block-image img { width: 100%; aspect-ratio: .82; object-fit: cover; }
.pp-structure-card h3 a { color: inherit; text-decoration: none; }
.pp-structure-card p, .pp-reference-note { font-size: .88rem; color: var(--pp-muted); }
.pp-home-products .pp-reference-note { max-width: 1320px; margin: 24px auto 0; }
.pp-home-live-products { margin-top: 32px; }

.pp-home-split { gap: clamp(44px, 7vw, 104px); }
.pp-strength-grid { margin-block: 42px 28px; gap: 26px 34px; }
.pp-strength-grid > * { padding-top: 18px; border-top: 1px solid var(--pp-stone); }
.pp-strength-feature { grid-column: span 2; }
.pp-home-media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.pp-home-media--landscape img { aspect-ratio: 4 / 3; }
.pp-home-media figcaption { margin-top: 10px; color: var(--pp-muted); font-size: .72rem; line-height: 1.5; }

.pp-service-grid { gap: 0; border-top: 1px solid var(--pp-stone); border-bottom: 1px solid var(--pp-stone); }
.pp-service-grid > .wp-block-column { padding: 30px 28px 34px; border-right: 1px solid var(--pp-stone); }
.pp-service-grid > .wp-block-column:first-child { padding-left: 0; }
.pp-service-grid > .wp-block-column:last-child { padding-right: 0; border-right: 0; }
.pp-step-number { color: var(--pp-oxblood); font-size: .75rem; font-weight: 750; }
.pp-home-process { margin-top: 56px; padding: 40px; }
.pp-process-grid { gap: 20px; }
.pp-process-grid small { display: inline-block; margin-top: 8px; color: var(--pp-muted); line-height: 1.55; }
.pp-home-mid-cta { padding: 62px var(--pliapack-page-gutter); }
.pp-home-mid-cta > .wp-block-group { gap: 34px; }
.pp-home-mid-cta h2 { margin-bottom: 10px; }

.pp-home-project a,
.pp-home-sustainability a { color: inherit; }
.pp-project-grid { gap: clamp(40px, 7vw, 96px); }
.pp-project-grid .wp-block-post-featured-image img { width: 100%; object-fit: cover; }
.pp-project-empty { min-height: 260px; display: flex; flex-direction: column; justify-content: center; }
.pp-eyebrow { text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; font-weight: 750; }

.pp-industry-grid { gap: clamp(32px, 7vw, 96px); }
.pp-industries ul { list-style: none; padding: 0; margin: 0; }
.pp-industries li { padding: 18px 0; border-bottom: 1px solid var(--pp-stone); }
.pp-industries li a { color: inherit; text-decoration: none; font-weight: 650; }
.pp-home-sustainability { padding: 84px var(--pliapack-page-gutter); color: var(--pp-white); }
.pp-home-sustainability .wp-block-cover__inner-container { width: 100%; }
.pp-home-sustainability .wp-block-group.alignwide { gap: 36px; }
.pp-home-sustainability h2 { max-width: 780px; }
.pp-home-faq .pp-faq-list { max-width: 1320px; margin-inline: auto; }
.pp-home-contact { padding: 96px var(--pliapack-page-gutter); }
.pp-home-contact h2 { font-size: var(--heading-h2-contact); }

/* Match approved preview geometry without nesting wide modules inside 720px. */
.pp-site-main > .alignwide,
.pp-site-main > .pp-section,
.pp-page-content { width: min(1320px, calc(100% - 2 * var(--pliapack-page-gutter))); margin-inline: auto; }
.pp-site-main > .pp-section { padding-inline: 0; }
.pp-page-content { padding-bottom: 80px; }
.pp-page-content > :where(p, h2, h3, ul, ol) { max-width: 720px; }
.pp-page-content > .pp-section { width: 100%; max-width: none; padding-inline: 0; }
.pp-site-main > .pp-cta { width: 100%; max-width: none; }
.pp-site-main > .pp-article-opening,
.pp-site-main > .pp-reading { width: min(992px, calc(100% - 2 * var(--pliapack-page-gutter))); }
.pp-article-opening > :where(h1, .wp-block-post-excerpt) { max-width: none; }
.pp-catalogue-results > *,
.pp-page-hero > *,
.pp-home-heading > *,
.pp-home-process > *,
.pp-faq-list > *,
.pp-page-content .pp-section > * { max-width: none !important; margin-inline: 0 !important; }
.pp-home-module { padding-block: 128px; }
.pp-home-pathways { padding-block: 42px; background: var(--pp-paper); }
.pp-home-pathways h2 { font-size: clamp(1.6rem, 2.2vw, 2rem); }
.pp-home-pathways .pp-home-heading { margin-bottom: 30px; }
.pp-pathway-grid { gap: 14px; }
.pp-pathway-card { min-height: 174px; padding: 34px 38px; border: 0; background: var(--pp-white); }
.pp-pathway-grid > .wp-block-column:last-child .pp-pathway-card { background: #687166; color: var(--pp-white); }
.pp-home-hero.wp-block-cover { min-height: min(790px, calc(100svh - 84px)) !important; }
.pp-home-hero::after { background: linear-gradient(90deg, rgba(243,240,232,.98) 0%, rgba(243,240,232,.91) 32%, rgba(243,240,232,.55) 49%, rgba(243,240,232,.04) 72%), linear-gradient(0deg, rgba(25,25,24,.14), transparent 42%); }
.pp-home-hero .wp-block-cover__image-background { object-position: center 60%; }
.pp-home-hero h1 { max-width: 740px; color: var(--pp-ink); line-height: 1.025; letter-spacing: -.058em; }
.pp-home-hero p { max-width: 620px; color: var(--pp-ink); font-size: 1.1rem; line-height: 1.7; }
.pp-home-hero .wp-block-buttons { margin-top: 36px; }
.pp-home-hero .pp-reference-caption { font-size: .72rem; color: var(--pp-muted); }
.pp-header { padding-block: 16px; }
.pp-header .wp-block-navigation__container { gap: 24px; }
.pp-product-layout > .wp-block-column { min-width: 0; }
.pp-catalogue-results .products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pp-page-content .pp-contact-form { max-width: 720px; }
.pp-module-grid > * { min-width: 0; margin: 0 !important; }
.pp-feature { border-top: 1px solid var(--pp-stone); padding-top: 28px; }
.pp-process-step { display: grid; grid-template-columns: 1fr 1.2fr; gap: 25px; border-top: 1px solid var(--pp-stone); padding-block: 29px; }
.pp-process-step > * { margin: 0 !important; }

/* Approved general-page compositions, with each child a native editable block. */
.pp-page-content:has(> .pp-native-page) { width: 100%; padding-bottom: 0; }
.pp-native-page > *, .pp-native-page .container > :first-child { margin-top: 0; }
.pp-native-page .container { width: min(1320px, calc(100% - 2 * var(--pliapack-page-gutter))); margin-inline: auto; }
.pp-native-page .page-hero { background: var(--pp-paper); padding: 55px 0 76px; }
.pp-native-page .page-hero > * { max-width: 1320px; margin-inline: auto; }
.pp-native-page .page-title { max-width: 940px; }
.pp-native-page .page-hero p { max-width: 610px; margin-top: 26px; font-size: 1.08rem; color: var(--pp-muted); }
.pp-native-page .split-hero { display: grid; grid-template-columns: 1.05fr 1fr; gap: 72px; align-items: center; }
.pp-native-page .split-hero img { width: 100%; height: 480px; object-fit: cover; }
.pp-native-page figure { margin: 0; }
.pp-native-page figcaption { font-size: .72rem; line-height: 1.5; color: var(--pp-muted); }
.pp-native-page .section-slim { padding-block: 80px; }
.pp-native-page .paper-section { background: var(--pp-paper); }
.pp-native-page .feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; }
.pp-native-page .feature-grid > .wp-block-group { margin-top: 0; border-top: 1px solid var(--pp-stone); padding-top: 28px; }
.pp-native-page .feature-grid p, .pp-native-page .editorial-split p { color: var(--pp-muted); }
.pp-native-page .editorial-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 80px; }
.pp-native-page .editorial-split img { width: 100%; height: 460px; object-fit: cover; }
.pp-native-page .pp-process-step { grid-template-columns: 65px 1fr 1.2fr; }
.pp-native-page .page-cta { background: #e9e4da; padding-block: 70px; }
.pp-native-page .page-cta .container { display: flex; justify-content: space-between; align-items: center; gap: 45px; }
.pp-native-page .page-cta .wp-block-buttons { flex: none; }
.pp-native-page .page-cta p { max-width: 630px; color: var(--pp-muted); }
.pp-native-page .contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.pp-native-page .contact-context { margin-top: 36px; border-top: 1px solid var(--pp-stone); padding-top: 24px; }
.pp-native-page .pp-contact-form { margin-top: 0; }

/* Product and catalogue templates. */
.pp-product-main,
.pp-catalogue-main { padding-top: 28px; }
.pp-product-main > .woocommerce-breadcrumb,
.pp-product-main > .wc-block-components-notice-banner { width: min(100% - (2 * var(--pliapack-page-gutter)), 1320px); margin-inline: auto; }
.pp-product-layout { gap: clamp(36px, 5vw, 72px); padding-block: 38px 86px; }
.pp-product-layout .wp-block-woocommerce-product-image-gallery,
.pp-product-layout .woocommerce-product-gallery { width: 100% !important; max-width: none !important; }
.pp-product-summary { padding-top: 12px; }
.pp-product-summary .wp-block-post-excerpt { color: var(--pp-muted); margin-block: 24px; }
.pp-product-summary .pp-product-enquiry { margin: 8px 0 26px; }
.pp-product-summary .wp-block-woocommerce-product-meta { padding-top: 24px; border-top: 1px solid var(--pp-stone); font-size: .84rem; }
.pp-catalogue-results { padding: 44px 0 88px; }
.pp-catalogue-results .woocommerce-breadcrumb { margin-bottom: 34px; }
.pp-catalogue-results .woocommerce-products-header { margin-bottom: 42px; }
.pp-catalogue-results .woocommerce-products-header__title { margin: 0; }
.pp-catalogue-results .products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; }
.pp-catalogue-results .product { float: none !important; width: auto !important; margin: 0 !important; }
.pp-catalogue-results .woocommerce-loop-product__title { font-family: var(--wp--preset--font-family--display); font-size: 1.05rem !important; }
.pp-catalogue-results .price,
.pp-product-page .price,
.pp-product-page form.cart,
.pp-catalogue-results .added_to_cart { display: none !important; }
.pp-product-enquiry a { text-decoration: none; }

/* Fluent Forms is embedded through a Shortcode block; keep its public UI on-brand. */
.pp-contact-form { max-width: 720px; }
.pp-contact-form .fluentform { --fluentform-primary: var(--pp-oxblood); }
.pp-contact-form :is(input, select, textarea, button) { font-family: var(--wp--preset--font-family--body); }
.pp-contact-form .ff-el-form-control:focus { border-color: var(--pp-oxblood); box-shadow: 0 0 0 1px var(--pp-oxblood); }
.pp-contact-form .ff-btn-submit:not(.ff_btn_no_style) {
	min-height: 48px;
	padding: 12px 25px;
	border: 0;
	border-radius: 3px;
	background: var(--pp-oxblood);
	color: var(--pp-white);
	font-weight: 700;
}
.pp-contact-form .ff-btn-submit:not(.ff_btn_no_style):hover { background: #49262b; color: var(--pp-white); }
.pp-contact-form .ff-btn-submit:not(.ff_btn_no_style):focus-visible { outline: 2px solid var(--pp-oxblood); outline-offset: 4px; }

/* Approved article geometry: 992 = 240 + 32 + 720. */
.pp-article-opening { max-width: 992px; padding: 28px 0 24px; margin-inline: auto; }
.pp-article-title { max-width: 992px; margin-inline: auto; }
.pp-article-title .wp-block-post-excerpt { max-width: none; }
.pp-article-meta { color: #736e65; font-size: .79rem; }
.pp-article-cover { width: min(calc(100% - (2 * var(--pliapack-page-gutter))), 1320px); margin-inline: auto; }
.pp-article-cover img { width: 100%; max-height: 520px; object-fit: cover; }
.pp-reading {
	max-width: 992px;
	display: grid;
	grid-template-columns: 240px minmax(0, 720px);
	gap: 32px;
	padding-block: 80px;
	margin-inline: auto;
}
.pp-toc { position: sticky; top: 32px; align-self: start; }
.pp-toc__title { margin-top: 0; font-weight: 750; }
.pp-toc__link { display: block; padding: 7px 0; color: var(--pp-muted); text-decoration: none; font-size: .83rem; line-height: 1.45; }
.pp-toc__link--h3 { padding-left: 14px; }
.pp-article-body { min-width: 0; }
.pp-article-body p,
.pp-article-body li { line-height: 1.85; }
.pp-article-body h2 { margin-top: 60px; }
.pp-article-body > h2:first-child { margin-top: 0; }

/* Approved five-part footer composition. */
.pp-footer { padding: 78px var(--pliapack-page-gutter) 30px; }
.pp-footer-grid { display: grid !important; grid-template-columns: 1.4fr 1fr 1.15fr 1.3fr 1.1fr; gap: 32px; }
.pp-footer .wp-block-site-title { margin-top: 0; font-family: var(--wp--preset--font-family--display); font-size: 1.8rem; }
.pp-footer h3 { font-family: var(--wp--preset--font-family--body); font-size: .84rem; letter-spacing: 0; }
.pp-footer ul { list-style: none; padding: 0; margin: 0; }
.pp-footer li { margin: 10px 0; }
.pp-footer a { color: inherit; text-decoration: none; }
.pp-footer .wp-block-column:not(.pp-footer-brand) a { color: rgba(252, 251, 247, .7); font-size: .79rem; }
.pp-footer-brand p { max-width: 230px; color: rgba(252, 251, 247, .7); font-size: .85rem; }
.pp-footer-bottom { margin-top: 56px; padding-top: 24px; border-top: 1px solid rgba(252, 251, 247, .18); color: rgba(252, 251, 247, .6); font-size: .75rem; }

@media (max-width: 1100px) {
	:root { --heading-h1: clamp(2.4rem, 4.8vw, 3.28rem); --pliapack-page-gutter: 28px; }
	.pp-header .wp-block-navigation { order: 3; }
	.pp-header .pp-header-cta { display: none; }
	.pp-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
	.pp-header .wp-block-navigation__responsive-container-open { display: flex !important; }
	.pp-header .wp-block-navigation__responsive-container.is-menu-open { padding: 24px var(--pliapack-page-gutter); }
	.pp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { padding: 6px 0 12px 14px !important; border: 0 !important; box-shadow: none !important; }
	.pp-product-grid,
	.pp-catalogue-results .products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.pp-home-module { padding-block: 88px; }
	.pp-service-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pp-service-grid > .wp-block-column { padding: 28px; border-bottom: 1px solid var(--pp-stone); }
	.pp-service-grid > .wp-block-column:nth-child(2) { border-right: 0; }
	.pp-service-grid > .wp-block-column:nth-child(3) { padding-left: 0; border-bottom: 0; }
	.pp-service-grid > .wp-block-column:last-child { padding-right: 0; border-bottom: 0; }
	.pp-process-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.pp-reading { grid-template-columns: 190px minmax(0, 1fr); gap: 24px; }
	.pp-footer-grid { grid-template-columns: 1.4fr repeat(2, 1fr); }
}

@media (max-width: 760px) {
	:root {
		--heading-h1: clamp(1.88rem, 8.8vw, 2.145rem);
		--heading-h2: clamp(1.536rem, 7.2vw, 1.755rem);
		--pliapack-page-gutter: 20px;
	}
	html { scroll-behavior: auto; }
	.pp-header { padding-block: 15px; }
	.pp-section { padding-block: 58px; }
	.pp-page-hero { padding-block: 50px 38px; }
	.pp-home-module { padding-block: 68px; }
	.pp-home-hero { min-height: 620px; padding-block: 76px; }
	.pp-home-hero::after { background: linear-gradient(90deg, rgba(243,240,232,.96), rgba(243,240,232,.65)); }
	.pp-home-hero.wp-block-cover { min-height: 640px !important; }
	.pp-native-page .split-hero, .pp-native-page .editorial-split, .pp-native-page .feature-grid, .pp-native-page .contact-layout { grid-template-columns: minmax(0,1fr); gap: 34px; }
	.pp-native-page .split-hero img, .pp-native-page .editorial-split img { height: 320px; }
	.pp-native-page .section-slim { padding-block: 54px; }
	.pp-native-page .page-cta .container { flex-direction: column; align-items: flex-start; gap: 24px; }
	.pp-native-page .pp-process-step, .pp-process-step { grid-template-columns: minmax(0,1fr); gap: 12px; }
	.pp-home-heading { margin-bottom: 34px; }
	.pp-module-grid,
	.pp-card-grid,
	.pp-article-grid,
	.pp-reading { grid-template-columns: minmax(0, 1fr); }
	.pp-home-split { gap: 38px; }
	.pp-home-media img { aspect-ratio: 4 / 3; }
	.pp-service-grid { grid-template-columns: minmax(0, 1fr); border-bottom: 0; }
	.pp-service-grid > .wp-block-column,
	.pp-service-grid > .wp-block-column:first-child,
	.pp-service-grid > .wp-block-column:nth-child(3),
	.pp-service-grid > .wp-block-column:last-child { padding: 24px 0; border-right: 0; border-bottom: 1px solid var(--pp-stone); }
	.pp-process-grid { grid-template-columns: minmax(0, 1fr); }
	.pp-home-process { margin-top: 40px; padding: 28px 22px; }
	.pp-home-mid-cta { padding-block: 50px; }
	.pp-home-mid-cta > .wp-block-group { align-items: flex-start; }
	.pp-project-grid { gap: 34px; }
	.pp-home-sustainability { padding-block: 64px; }
	.pp-home-sustainability .wp-block-group.alignwide { align-items: flex-start; }
	.pp-home-contact { padding-block: 72px; }
	.pp-reading { padding: 52px var(--pliapack-page-gutter); }
	.pp-toc { position: static; padding-bottom: 24px; border-bottom: 1px solid var(--pp-stone); }
	.pp-article-opening { padding: 24px var(--pliapack-page-gutter); }
	.pp-article-cover { width: 100%; }
	.pp-product-layout { gap: 26px; }
	.pp-catalogue-results .products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 16px; }
	.pp-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pp-footer-brand { grid-column: 1 / -1; }
}

@media (min-width: 360px) and (max-width: 760px) {
	.pp-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 16px; }
}

@media (max-width: 359px) {
	.pp-product-grid,
	.pp-catalogue-results .products,
	.pp-footer-grid { grid-template-columns: minmax(0, 1fr); }
	.pp-strength-grid { grid-template-columns: minmax(0, 1fr) !important; }
	.pp-strength-feature { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
