.bx-plp {
	--bx-green-light: #eef8f1;
	--bx-bg: #f7faf8;
	--bx-text: #4f5c55;
	--bx-border: #dde8e1;
}

.bx-plp .bx-wrap {
	width: min(calc(100% - (var(--bx-gutter) * 2)), 1440px);
}

@media (min-width: 2200px) {
	.bx-plp .bx-wrap {
		width: min(calc(100% - (var(--bx-gutter) * 2)), 1640px);
	}
}

@media (min-width: 3000px) {
	.bx-plp .bx-wrap {
		width: min(calc(100% - (var(--bx-gutter) * 2)), 1680px);
	}
}

.bx-plp-hero {
	padding: 18px 0 28px;
	background: var(--bx-white);
}

.bx-plp-hero .bx-bc {
	margin-bottom: 16px;
}

.bx-plp-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 680px);
	grid-template-areas:
		"copy media"
		"trust media";
	gap: 20px 48px;
	align-items: start;
}

.bx-plp-hero__copy { grid-area: copy; }
.bx-plp-hero__media { grid-area: media; }
.bx-plp-trust { grid-area: trust; }

.bx-plp-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px;
	color: var(--bx-green);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.bx-plp-eyebrow__ico {
	display: grid;
	place-items: center;
	color: var(--bx-green);
}

.bx-plp-eyebrow__ico svg {
	width: 16px;
	height: 16px;
}

.bx-plp-class {
	margin: 0 0 6px;
	color: var(--bx-dark);
	font-size: 15px;
	font-weight: 800;
}

.bx-plp-hero h1 {
	margin: 0 0 12px;
	color: var(--bx-dark);
	font-size: clamp(36px, 4vw, 56px);
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.bx-plp-desc {
	margin: 0 0 18px;
	max-width: 36em;
	color: var(--bx-text);
	font-size: clamp(16px, 1.1vw, 18px);
	line-height: 1.55;
}

.bx-plp-price {
	margin: 0 0 16px;
}

.bx-plp-price__label {
	display: block;
	margin-bottom: 2px;
	color: var(--bx-text);
	font-size: 13px;
	font-weight: 700;
}

.bx-plp-price__row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px 10px;
	margin: 0;
}

.bx-plp-price__num {
	color: var(--bx-green);
	font-size: clamp(38px, 4vw, 58px);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1;
}

.bx-plp-price__unit,
.bx-plp-price__vat {
	color: var(--bx-dark);
	font-size: 16px;
	font-weight: 700;
}

.bx-plp-price__note {
	margin: 6px 0 0;
	color: #7a8a82;
	font-size: 13px;
}

.bx-plp-pills {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	max-width: 420px;
	margin: 0 0 18px;
}

.bx-plp-pill {
	padding: 10px 12px;
	background: var(--bx-white);
	border: 1px solid var(--bx-border);
	border-radius: var(--bx-radius-sm);
}

.bx-plp-pill span {
	display: block;
	margin-bottom: 4px;
	color: var(--bx-text);
	font-size: 12px;
	font-weight: 800;
}

.bx-plp-pill strong {
	color: var(--bx-green);
	font-size: 16px;
}

.bx-plp-pill em {
	color: #7a8a82;
	font-style: normal;
	font-size: 14px;
}

.bx-plp-hero__cta {
	margin-bottom: 4px;
}

.bx-plp-hero__media {
	margin: 0;
	border-radius: var(--bx-radius-lg);
	overflow: hidden;
	background: #d8d8d8;
	box-shadow: var(--bx-shadow-sm);
}

.bx-plp-hero__media img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}

.bx-plp-hero__media--empty {
	display: grid;
	place-items: center;
	aspect-ratio: 16 / 9;
	background:
		repeating-linear-gradient(-28deg, rgba(8, 124, 52, 0.045), rgba(8, 124, 52, 0.045) 10px, transparent 10px, transparent 22px),
		#eef3f0;
	border: 1.5px dashed #b7c9be;
	box-shadow: none;
}

.bx-plp-hero__ph {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 100%;
	padding: 24px;
	color: #5d6e65;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
}

.bx-plp-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 8px 0 0;
	padding: 0;
	list-style: none;
}

.bx-plp-trust li {
	display: grid;
	grid-template-columns: 32px 1fr;
	grid-template-rows: auto auto;
	column-gap: 10px;
	align-items: start;
}

.bx-plp-trust__ico {
	grid-row: 1 / span 2;
	color: var(--bx-green);
}

.bx-plp-trust__ico svg {
	width: 28px;
	height: 28px;
}

.bx-plp-trust strong {
	color: var(--bx-dark);
	font-size: 14px;
	line-height: 1.25;
}

.bx-plp-trust span {
	color: var(--bx-text);
	font-size: 12px;
}

.bx-plp-article {
	padding: 28px 0 12px;
}

.bx-plp-article__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
	gap: 36px 48px;
	align-items: start;
}

.bx-plp-article__main {
	max-width: none;
}

.bx-plp-article__main > h2:first-child {
	margin-top: 0;
}

.bx-plp .bx-prose p,
.bx-plp .bx-prose li {
	line-height: 1.75;
}

.bx-plp .bx-prose h2 {
	margin-top: 1.8em;
	margin-bottom: 0.65em;
}

.bx-plp .bx-prose h3 {
	margin-top: 1.35em;
	margin-bottom: 0.45em;
}

.bx-plp-copy {
	margin-top: 1.6em;
}

.bx-plp-also {
	margin-top: 1.5em;
	padding-top: 0.85em;
	border-top: 1px solid var(--bx-border);
	color: var(--bx-text);
	font-size: 15px;
	line-height: 1.55;
}

.bx-plp-spec {
	position: sticky;
	top: 96px;
	padding: 22px 22px 10px;
	background: var(--bx-white);
	border: 1px solid var(--bx-border);
	border-radius: var(--bx-radius-md);
	box-shadow: var(--bx-shadow-sm);
}

.bx-plp-spec__title {
	margin: 0 0 14px;
	color: var(--bx-dark);
	font-size: 18px;
	font-weight: 800;
}

.bx-plp-spec dl {
	margin: 0;
}

.bx-plp-spec dl > div {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid var(--bx-border);
}

.bx-plp-spec dl > div:last-child {
	border-bottom: 0;
}

.bx-plp-spec dt {
	color: var(--bx-text);
	font-size: 14px;
}

.bx-plp-spec dd {
	margin: 0;
	color: var(--bx-dark);
	font-weight: 700;
	text-align: right;
}

.bx-plp-apps {
	padding: 28px 0 12px;
}

.bx-plp-apps h2,
.bx-plp-apps__kicker {
	margin: 0 0 20px;
	color: var(--bx-dark);
	font-size: var(--bx-fs-h2);
	font-weight: 700;
}

.bx-plp-apps__kicker {
	font-size: clamp(22px, 2vw, 32px);
}

.bx-plp-apps__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.bx-plp-app {
	padding: 20px 18px 16px;
	background: var(--bx-white);
	border: 1px solid var(--bx-border);
	border-radius: var(--bx-radius-md);
}

.bx-plp-app__ico {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	margin-bottom: 12px;
	color: var(--bx-green);
}

.bx-plp-app__title,
a.bx-plp-app__title {
	display: block;
	margin-bottom: 6px;
	color: var(--bx-dark);
	font-size: 16px;
	font-weight: 800;
	text-decoration: none;
}

a.bx-plp-app__title:hover {
	color: var(--bx-green);
}

.bx-plp-app p {
	margin: 0;
	color: var(--bx-text);
	font-size: 14px;
	line-height: 1.45;
}

.bx-plp-more {
	padding: 36px 0 12px;
}

.bx-plp-more__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
	gap: 36px 48px;
	align-items: start;
}

.bx-plp-related ul,
.bx-plp-grades ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.bx-plp-related li + li,
.bx-plp-related .betonx-related {
	margin-top: 14px;
}

.bx-plp-related__card {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
	text-decoration: none;
	color: inherit;
}

.bx-plp-related__thumb,
.bx-plp-related__card img {
	width: 120px;
	height: 80px;
	object-fit: cover;
	border-radius: 10px;
	background: var(--bx-green-light);
}

.bx-plp-related__body {
	display: grid;
	gap: 4px;
}

.bx-plp-related__body strong {
	color: var(--bx-dark);
	font-size: 16px;
	line-height: 1.3;
}

.bx-plp-related__body span {
	color: var(--bx-text);
	font-size: 14px;
}

.bx-plp-related__card:hover strong {
	color: var(--bx-green);
}

.bx-plp-grades ul {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.bx-plp-grades a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 8px 10px;
	border: 1px solid var(--bx-border);
	border-radius: var(--bx-radius-sm);
	background: var(--bx-white);
	color: var(--bx-dark);
	font-weight: 800;
	text-decoration: none;
}

.bx-plp-grades a:hover {
	border-color: var(--bx-green);
	color: var(--bx-green);
	background: var(--bx-green-light);
}

.bx-plp-more__all {
	margin: 16px 0 0;
}

.bx-plp-more__all a {
	color: var(--bx-green);
	font-weight: 700;
	text-decoration: none;
}

.bx-plp-more__all a:hover {
	text-decoration: underline;
	text-underline-offset: 2px;
}

.bx-plp-cta {
	margin: 28px 0 0;
	padding: 36px 0 48px;
	background: var(--bx-green-light);
}

.bx-plp-cta__in {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px 32px;
}

.bx-plp-cta h2 {
	margin: 0 0 6px;
	color: var(--bx-dark);
}

.bx-plp-cta p {
	margin: 0;
	color: var(--bx-text);
}

.bx-plp .bx-prose .alignleft,
.bx-plp .bx-prose .alignright,
.bx-plp .bx-prose .aligncenter,
.bx-plp .bx-prose .alignwide,
.bx-plp .bx-prose .alignfull {
	float: none;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100%;
	width: 100%;
}

.bx-plp .bx-prose .wp-block-group,
.bx-plp .bx-prose .wp-block-group__inner-container,
.bx-plp .bx-prose .is-layout-constrained,
.bx-plp .bx-prose [class*="wp-container-"] {
	max-width: 100% !important;
	width: 100%;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.bx-plp .bx-prose > .wp-block-group.has-background,
.bx-plp .bx-prose .wp-block-group[style*="background-color:#e8f5e9"] {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 0 1.4em;
}

.bx-plp .bx-prose > .wp-block-group.has-background h1,
.bx-plp .bx-prose > .wp-block-group.has-background .wp-block-buttons {
	display: none;
}

.bx-plp .bx-prose > .wp-block-group.has-background > p {
	display: none;
}

.bx-plp .bx-prose .wp-block-details {
	background: var(--bx-white);
	border: 1px solid var(--bx-border);
	border-radius: var(--bx-radius-md);
	padding: 18px 20px 6px;
	margin: 0 0 14px;
}

.bx-plp .wp-block-details summary {
	color: var(--bx-dark);
	font-size: clamp(18px, 1.6vw, 24px);
	font-weight: 700;
	cursor: pointer;
}

@media (max-width: 900px) {
	.bx-plp-hero__grid {
		grid-template-columns: 1fr;
		grid-template-areas:
			"copy"
			"media"
			"trust";
		gap: 22px;
	}

	.bx-plp-hero {
		padding-bottom: 20px;
	}

	.bx-plp-hero__media {
		border-radius: var(--bx-radius-md);
	}

	.bx-plp-article__grid,
	.bx-plp-more__grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.bx-plp-spec {
		position: static;
	}

	.bx-plp-trust {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.bx-plp-cta__in {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 600px) {
	.bx-plp-pills {
		max-width: none;
	}

	.bx-plp-grades ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.bx-plp-related__card {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.bx-plp-related__thumb,
	.bx-plp-related__card img {
		width: 96px;
		height: 64px;
	}

	.bx-plp-hero h1 {
		font-size: clamp(28px, 9vw, 36px);
	}

	.bx-cta-row {
		width: 100%;
	}

	.bx-plp-hero__cta .bx-btn {
		flex: 1 1 auto;
	}
}

@media (max-width: 430px) {
	.bx-plp-apps__grid {
		grid-template-columns: 1fr;
	}
}
