.single-product.vs-product-standard .vs-ps-early-preview {
	box-sizing: border-box;
	max-width: 100%;
	margin: 1rem 0;
	padding: 1rem;
	border: 1px solid #cfe4dc;
	border-radius: 10px;
	background: #f1f8f5;
	color: #163d45;
	line-height: 1.5;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
}

.single-product.vs-product-standard .vs-ps-early-preview p {
	margin: 0 0 0.65rem;
}

.single-product.vs-product-standard .vs-ps-early-preview .vs-ps-early-preview-title {
	color: #073f4a;
	font-size: 1rem;
}

.single-product.vs-product-standard .vs-ps-early-preview-link {
	display: inline-block;
	box-sizing: border-box;
	max-width: 100%;
	padding: 0.7rem 1rem;
	border: 2px solid #116958;
	border-radius: 999px;
	background: #116958;
	color: #fff;
	font-weight: 700;
	line-height: 1.45;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
}

.single-product.vs-product-standard .vs-ps-early-preview-link:hover,
.single-product.vs-product-standard .vs-ps-early-preview-link:focus {
	border-color: #073f4a;
	background: #073f4a;
	color: #fff;
	text-decoration: underline;
}

.single-product.vs-product-standard .vs-ps-early-preview-link:focus-visible {
	outline: 3px solid #073f4a;
	outline-offset: 3px;
}

.single-product.vs-product-standard .vs-ps-early-preview .vs-ps-early-preview-note {
	margin: 0.5rem 0 0;
	color: #526a70;
	font-size: 0.85rem;
}

.single-product.vs-product-standard .vs-ps-filefacts {
	border: 1px solid #cfe4dc;
	border-radius: 10px;
	margin: 1rem 0 1.4rem;
	color: #163d45;
	background: #f6faf8;
}

.single-product.vs-product-standard .vs-ps-filefacts summary {
	cursor: pointer;
	font-weight: 600;
	padding: 0.9rem 1rem;
}

.single-product.vs-product-standard .vs-ps-filefacts summary:focus-visible {
	outline: 3px solid #167764;
	outline-offset: 3px;
}

.single-product.vs-product-standard .vs-ps-filefacts-content {
	padding: 0 1rem 0.6rem;
	font-size: 0.92rem;
	line-height: 1.55;
}

.single-product.vs-product-standard .vs-ps-filefacts table {
	width: 100%;
	border-collapse: collapse;
	font-size: inherit;
}

.single-product.vs-product-standard .vs-ps-filefacts caption {
	text-align: left;
	padding: 0 0 0.7rem;
}

.single-product.vs-product-standard .vs-ps-filefacts :is(th, td) {
	padding: 0.5rem 0.3rem;
	text-align: left;
	border-bottom: 1px solid #cfe4dc;
	overflow-wrap: anywhere;
}

.single-product.vs-product-standard .vs-ps-filefacts p {
	margin-top: 0.85rem;
}

.single-product.vs-product-standard .product_title {
	color: #073f4a;
	font-size: clamp(2.3rem, 3.2vw, 3.5rem) !important;
	line-height: 1.08 !important;
}

.single-product.vs-product-standard .price {
	color: #167764 !important;
}

.single-product.vs-product-standard .woocommerce-product-gallery__wrapper {
	border-radius: 16px;
	overflow: hidden;
}

.single-product.vs-product-standard form.cart .single_add_to_cart_button,
.single-product.vs-product-standard .vs-ps-buy-button,
.single-product.vs-product-standard .vs-ps-preview-button {
	background: #208976 !important;
	border-color: #208976 !important;
	color: #fff !important;
}

.single-product.vs-product-standard form.cart .single_add_to_cart_button:hover,
.single-product.vs-product-standard form.cart .single_add_to_cart_button:focus,
.single-product.vs-product-standard .vs-ps-buy-button:hover,
.single-product.vs-product-standard .vs-ps-buy-button:focus,
.single-product.vs-product-standard .vs-ps-preview-button:hover,
.single-product.vs-product-standard .vs-ps-preview-button:focus {
	background: #116958 !important;
	border-color: #116958 !important;
	color: #fff !important;
}

.single-product.vs-product-standard form.cart .single_add_to_cart_button:focus-visible,
.single-product.vs-product-standard .vs-ps-buy-button:focus-visible,
.single-product.vs-product-standard .vs-ps-preview-button:focus-visible {
	outline: 3px solid #e4b74f;
	outline-offset: 3px;
}

.single-product.vs-product-standard .vs-ps-summary {
	color: #163d45;
}

.single-product.vs-product-standard .vs-ps-lead {
	font-size: 1.08rem;
	line-height: 1.7;
	margin-bottom: 1.1rem;
}

.single-product.vs-product-standard .vs-ps-quickfacts {
	display: grid;
	gap: 0.55rem;
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
}

.single-product.vs-product-standard .vs-ps-quickfacts li {
	background: #f1f8f5;
	border-left: 4px solid #208976;
	border-radius: 0 8px 8px 0;
	padding: 0.7rem 0.9rem;
}

.single-product.vs-product-standard .vs-ps-quiet {
	color: #526a70;
	font-size: 0.94rem;
}

.single-product.vs-product-standard:not(.vs-product-ballaststoffkueche):not(.vs-product-bewegungspausen):not(.vs-product-feierabend) .woocommerce-tabs ul.tabs,
.single-product.vs-product-standard:not(.vs-product-ballaststoffkueche):not(.vs-product-bewegungspausen):not(.vs-product-feierabend) .woocommerce-Tabs-panel--description > h2:first-child {
	display: none !important;
}

.single-product.vs-product-standard .woocommerce-Tabs-panel {
	margin-top: 1rem !important;
}

.single-product.vs-product-standard .vs-ps-sales {
	color: #163d45;
	font-size: 1rem;
	line-height: 1.7;
	margin: 1.5rem auto 0;
	max-width: 1120px;
}

.single-product.vs-product-standard .vs-ps-section {
	border-bottom: 1px solid #d7e8e2;
	padding: clamp(2rem, 5vw, 4.5rem) 0;
}

.single-product.vs-product-standard .vs-ps-section h2 {
	color: #073f4a;
	font-size: clamp(1.65rem, 3vw, 2.35rem);
	line-height: 1.16;
	margin: 0 0 1.2rem;
}

.single-product.vs-product-standard .vs-ps-section h3 {
	color: #0b4c57;
	font-size: 1.15rem;
	margin: 0.55rem 0;
}

.single-product.vs-product-standard .vs-ps-kicker {
	color: #167764;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin: 0 0 0.75rem;
	text-transform: uppercase;
}

.single-product.vs-product-standard .vs-ps-intro {
	background: linear-gradient(135deg, #eef8f4 0%, #fbfdfc 100%);
	border: 1px solid #cfe4dc;
	border-radius: 18px;
	margin-top: 1rem;
	padding-left: clamp(1.25rem, 4vw, 3rem);
	padding-right: clamp(1.25rem, 4vw, 3rem);
}

.single-product.vs-product-standard .vs-ps-grid,
.single-product.vs-product-standard .vs-ps-two-columns {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.single-product.vs-product-standard .vs-ps-grid article,
.single-product.vs-product-standard .vs-ps-two-columns > div {
	border: 1px solid #cfe4dc;
	border-radius: 14px;
	padding: 1.3rem;
}

.single-product.vs-product-standard .vs-ps-grid article > span {
	align-items: center;
	background: #208976;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 700;
	height: 2rem;
	justify-content: center;
	width: 2rem;
}

.single-product.vs-product-standard .vs-ps-package {
	align-items: start;
	background: #073f4a;
	border: 0;
	border-radius: 18px;
	color: #fff;
	display: grid;
	gap: 2rem;
	grid-template-columns: 1.25fr 1fr;
	margin: 2rem 0 0;
	padding-left: clamp(1.25rem, 4vw, 3rem);
	padding-right: clamp(1.25rem, 4vw, 3rem);
}

.single-product.vs-product-standard .vs-ps-package h2,
.single-product.vs-product-standard .vs-ps-package .vs-ps-kicker {
	color: #fff;
}

.single-product.vs-product-standard .vs-ps-package ul {
	background: rgb(255 255 255 / 8%);
	border-radius: 12px;
	margin: 0;
	padding: 1.2rem 1.2rem 1.2rem 2.35rem;
}

.single-product.vs-product-standard .vs-ps-process ol {
	display: grid;
	gap: 0.8rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-product.vs-product-standard .vs-ps-process li {
	background: #f6faf8;
	border-radius: 10px;
	padding: 1rem 1.15rem;
}

.single-product.vs-product-standard .vs-ps-notice {
	background: #fff7e8;
	border: 1px solid #ebcf91;
	border-radius: 14px;
	margin-top: 2rem;
	padding-left: clamp(1.25rem, 4vw, 2rem);
	padding-right: clamp(1.25rem, 4vw, 2rem);
}

.single-product.vs-product-standard .vs-ps-crisis {
	background: #fff;
	border-left: 4px solid #c87b17;
	border-radius: 0 8px 8px 0;
	padding: 1rem;
}

.single-product.vs-product-standard .vs-ps-digital {
	border-bottom: 0;
}

.single-product.vs-product-standard .vs-ps-final-cta {
	background: #eef8f4;
	border: 1px solid #cfe4dc;
	border-radius: 18px;
	margin: 1rem 0 3rem;
	padding: clamp(1.5rem, 4vw, 3rem);
	text-align: center;
}

.single-product.vs-product-standard .vs-ps-final-cta h2 {
	color: #073f4a;
	font-size: clamp(1.55rem, 3vw, 2.2rem);
	margin: 0 0 0.8rem;
}

.single-product.vs-product-standard .vs-ps-final-cta p {
	margin: 0 auto 1.25rem;
	max-width: 720px;
}

.single-product.vs-product-standard .vs-ps-buy-button,
.single-product.vs-product-standard .vs-ps-preview-button {
	border-radius: 999px !important;
	display: inline-block !important;
	font-weight: 700 !important;
	padding: 0.9rem 1.35rem !important;
	text-decoration: none !important;
}

.single-product.vs-product-standard .vs-ps-preview-button {
	background: transparent !important;
	border: 2px solid #fff !important;
	margin-top: 0.5rem;
}

.single-product.vs-product-standard .vs-ps-preview-button:hover,
.single-product.vs-product-standard .vs-ps-preview-button:focus {
	background: #fff !important;
	border-color: #fff !important;
	color: #073f4a !important;
}

@media (max-width: 767px) {
	.single-product.vs-product-standard .product_title {
		font-size: clamp(1.5rem, 7.5vw, 2.7rem) !important;
	}

	.single-product.vs-product-standard .vs-ps-grid,
	.single-product.vs-product-standard .vs-ps-two-columns,
	.single-product.vs-product-standard .vs-ps-package {
		grid-template-columns: 1fr;
	}

	.single-product.vs-product-standard .vs-ps-section {
		padding-bottom: 2.4rem;
		padding-top: 2.4rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.single-product.vs-product-standard *,
	.single-product.vs-product-standard *::before,
	.single-product.vs-product-standard *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* Shared PDF presentation, also loaded explicitly by the four product landing pages. */
.vs-ps-price-block {
	box-sizing: border-box;
	max-width: 100%;
	margin: 1.25rem 0;
	color: #073f4a;
	line-height: 1.45;
	text-align: inherit;
	word-break: normal;
	hyphens: none;
}
.vs-ps-price-block .vs-ps-price-label {
	margin: 0 0 .35rem !important;
	color: inherit;
	font-size: .95rem;
	font-weight: 600;
}
.vs-ps-price-block .vs-ps-price-value {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: inherit;
	gap: .25rem .65rem;
	color: inherit;
	font-size: clamp(1.5rem, 4vw, 2rem);
	font-weight: 700;
}
.vs-ps-price-block .vs-ps-price-value :is(del, ins, bdi, .amount) {
	color: inherit !important;
	background: transparent;
}
.vs-ps-price-block .vs-ps-price-value ins { text-decoration: none; }
.vs-ps-price-block .vs-ps-price-value del { font-size: .8em; }
.vs-ps-price-block .woocommerce-price-suffix,
.vs-ps-price-block .vs-ps-price-tax { font-size: .85rem; font-weight: 400; }
.vs-ps-price-block .vs-ps-price-tax { margin-top: .35rem; }
.vs-ps-price-block .vs-ps-price-tax :is(p,small) { margin: 0; color: inherit; font-size: inherit; }
.vs-ps-price-block.vs-ps-price-block--dark,
.vs-ps-price-block.vs-ps-price-block--dark :is(p,a,small,.amount) { color: #fff !important; }
.vs-ps-buy-button {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	max-width: 100%;
	padding: .85rem 1.35rem;
	border: 2px solid #116958;
	border-radius: 999px;
	background: #116958;
	color: #fff;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	word-break: normal;
	hyphens: none;
}
.vs-ps-buy-button:hover,
.vs-ps-buy-button:focus { background: #073f4a; border-color: #073f4a; color: #fff; text-decoration: none; }
.vs-ps-buy-button:focus-visible { outline: 3px solid #e4b74f; outline-offset: 3px; }
.vs-ps-pdf-usage {
	box-sizing: border-box;
	margin: 2rem 0;
	padding: clamp(1.2rem, 4vw, 2rem);
	border: 1px solid #cfe4dc;
	border-radius: 16px;
	background: #f1f8f5;
	color: #163d45;
	font-size: 1rem;
	line-height: 1.65;
	word-break: normal;
	hyphens: none;
}
.vs-ps-pdf-usage h2 { margin: 0 0 1.25rem; color: #073f4a; font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.2; }
.vs-ps-pdf-questions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.4rem 2rem; }
.vs-ps-pdf-questions h3 { margin: 0 0 .5rem; color: #073f4a; font-size: 1.1rem; line-height: 1.35; }
.vs-ps-pdf-questions p { margin: 0; color: #163d45; }

/* Existing product-specific content retains its layout and copy; common purchase surfaces match. */
.single-product.vs-product-standard :is(.vs-esk-final-cta,.vs-nsk-final-cta,.vsfbk-final-cta,.vsbsp-final-cta,.vsfab-final-cta,.vsep-final-cta,.vsag-final-cta,.vs-ps-final-cta) {
	box-sizing: border-box;
	background: #eef8f4;
	border: 1px solid #cfe4dc;
	border-radius: 18px;
	color: #163d45;
	margin: 1rem 0 3rem;
	padding: clamp(1.5rem,4vw,3rem);
	text-align: center;
}
.single-product.vs-product-standard :is(.vs-esk-final-cta,.vs-nsk-final-cta,.vsfbk-final-cta,.vsbsp-final-cta,.vsfab-final-cta,.vsep-final-cta,.vsag-final-cta) h2 { color: #073f4a; }
.single-product.vs-product-standard :is(.vs-esk-final-cta,.vs-nsk-final-cta,.vsfbk-final-cta,.vsbsp-final-cta,.vsfab-final-cta,.vsep-final-cta,.vsag-final-cta,.vs-ps-final-cta) .vs-ps-price-value { justify-content: center; }
.single-product.vs-product-standard :is(.vs-ps-buy-button,.vs-esk-buy-button,.vs-nsk-buy-button,.vsfbk-buy-button,.vsbsp-buy-button,.vsfab-buy-button,.vsep-buy-button,.vsag-buy-button,form.cart .single_add_to_cart_button) { background: #116958 !important; border-color: #116958 !important; color: #fff !important; }
.single-product.vs-product-standard :is(.vs-ps-buy-button,.vs-esk-buy-button,.vs-nsk-buy-button,.vsfbk-buy-button,.vsbsp-buy-button,.vsfab-buy-button,.vsep-buy-button,.vsag-buy-button,form.cart .single_add_to_cart_button):is(:hover,:focus) { background: #073f4a !important; border-color: #073f4a !important; color: #fff !important; }
.single-product.vs-product-standard :is(.vs-esk-sales,.vs-nsk-sales,.vsfbk-sales,.vsbsp-sales,.vsfab-sales,.vsep-sales,.vsag-sales,.vs-ps-sales) :is(h2,h3,p,a) { word-break: normal; hyphens: none; }
@media (max-width: 767px) {
	.vs-ps-pdf-questions { grid-template-columns: minmax(0,1fr); }
}

/* Clear focus for existing preview and footer links inside the product presentation. */
.single-product.vs-product-standard :is(.vs-ps-sales,.vs-esk-sales,.vs-nsk-sales,.vsfbk-sales,.vsbsp-sales,.vsfab-sales,.vsep-sales,.vsag-sales) a:focus-visible,
.vs-ps-pdf-usage a:focus-visible,
.vs-ps-price-block a:focus-visible { outline: 3px solid #167764; outline-offset: 3px; }

/* The original Kompass landing page shares the same purchase controls. */
.vs-kompass-landing { --vs-teal: #116958; }
.vs-kompass-landing .vs-kompass-button {
	box-sizing: border-box;
	min-height: 48px;
	max-width: 100%;
	padding: .85rem 1.35rem;
	border-radius: 999px;
	font-weight: 700;
	line-height: 1.4;
	white-space: normal;
	word-break: normal;
	hyphens: none;
}
.vs-kompass-landing :is(.vs-kompass-button-primary,.vs-kompass-button-light),
.vs-kompass-landing :is(.vs-kompass-button-primary,.vs-kompass-button-light):visited {
	background: #116958 !important;
	border-color: #116958 !important;
	color: #fff !important;
}
.vs-kompass-landing :is(.vs-kompass-button-primary,.vs-kompass-button-light):is(:hover,:focus) {
	background: #073f4a !important;
	border-color: #073f4a !important;
	color: #fff !important;
	transform: none;
}
.vs-kompass-landing .vs-kompass-button:focus-visible,
.vs-kompass-landing .vs-kompass-faq summary:focus-visible { outline: 3px solid #e4b74f; outline-offset: 3px; }
.vs-kompass-landing .vs-kompass-price-block { overflow-wrap: normal; word-break: normal; hyphens: none; }
.vs-kompass-landing .vs-kompass-final-action .vs-ps-price-value { justify-content: center; }
.single-product.vs-product-standard :is(.vs-ps-sales,.vs-esk-sales,.vs-nsk-sales,.vsfbk-sales,.vsbsp-sales,.vsfab-sales,.vsep-sales,.vsag-sales,.vsfab-worked-example,.vsep-worked-example,.vsag-worked-example) { overflow-wrap: normal; word-break: normal; hyphens: none; }
.single-product.vs-product-standard :is(.vsfbk-preview,.vsbsp-preview,.vsfab-preview,.vsep-preview,.vsag-preview) {
	box-sizing: border-box;
	min-height: 48px;
	padding: .85rem 1.35rem;
	border: 2px solid #116958;
	border-radius: 999px;
	background: #116958;
	color: #fff !important;
	font-weight: 700;
	line-height: 1.4;
	white-space: normal;
	word-break: normal;
	hyphens: none;
}
.single-product.vs-product-standard :is(.vsfbk-preview,.vsbsp-preview,.vsfab-preview,.vsep-preview,.vsag-preview):is(:hover,:focus) { background: #073f4a; border-color: #073f4a; color: #fff !important; }
.single-product.vs-product-standard :is(.vsfbk-preview,.vsbsp-preview,.vsfab-preview,.vsep-preview,.vsag-preview):focus-visible { outline: 3px solid #e4b74f; outline-offset: 3px; }

/* 1.2.1: keep long landing headlines inside their real text column.
 * Theme body.vs-site h1 previously won over the component rule (5.8vw, 13ch).
 * Scope and specificity avoid changing other page titles or the Kompass hero H2.
 */
body.vs-site :is(.vssk-sleep-landing, .vsbk-page, .vssek-page, .vs-kompass-landing) h1 {
	max-width: 100%;
	min-width: 0;
	font-size: clamp(1.5rem, calc(1.125rem + 1.625vw), 2.5rem);
	line-height: 1.16;
	letter-spacing: -.025em;
	white-space: normal;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}

/* The generic label margin reset cancelled auto-centering of the 720px CTA paragraph. */
.single-product.vs-product-standard :is(.vs-ps-final-cta, .vs-esk-final-cta, .vs-nsk-final-cta, .vsfbk-final-cta, .vsbsp-final-cta, .vsfab-final-cta,.vsep-final-cta,.vsag-final-cta) .vs-ps-price-block .vs-ps-price-label {
	width: 100%;
	max-width: none;
	text-align: center;
}
