/*
Theme Name: netyard 361°
Theme URI: https://netyard.de
Author: netyard AG
Author URI: https://netyard.de
Description: Schlichtes, modernes Block-Theme für die netyard AG – IT made in Düsseldorf. Lokale Schriften (Geist), keine externen Ressourcen, alle Bausteine als Block-Vorlagen.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: netyard-361
Tags: block-theme, full-site-editing, one-column, custom-colors, editor-style
*/

/* ---------- Grundlagen ---------- */

:root {
	--ny-ink: #0E1A21;
	--ny-navy: #00293D;
	--ny-primary: #004869;
	--ny-accent: #C0FF19;
	--ny-cyan: #00AFFF;
	--ny-green: #9BCB2A;
	--ny-muted: #56636C;
	--ny-line: #E1E6E3;
	--ny-subtle: #F0F3F2;
	--ny-surface: #F5F6F3;
	--ny-field: #C9D1CD;
	--ny-dark-text: #C5D5DD;
	--ny-dark-muted: #A9C0CC;
	--ny-mono: var(--wp--preset--font-family--geist-mono);
	--ny-section: clamp(72px, 9vw, 128px);
}

html { scroll-behavior: smooth; scroll-padding-top: 96px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 2px solid var(--ny-cyan);
	outline-offset: 3px;
	border-radius: 4px;
}

::selection { background: var(--ny-accent); color: var(--ny-ink); }

img { height: auto; max-width: 100%; }

/* Volle Abschnitte ohne Lücken untereinander */
.wp-block-post-content > .alignfull,
.wp-block-post-content > .ny-section,
main > .alignfull,
.wp-site-blocks > footer,
.wp-site-blocks > main {
	margin-block-start: 0;
}
.wp-site-blocks > * + * { margin-block-start: 0; }

/* ---------- Typo-Bausteine ---------- */

.ny-eyebrow {
	font-family: var(--ny-mono);
	font-size: 0.8125rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ny-primary);
	font-weight: 500;
	margin-inline: 0;
	margin-bottom: 0;
}
.ny-eyebrow + * { margin-top: 0.75rem !important; }

.ny-lead { font-size: 1.1875rem; color: var(--ny-muted); max-width: 36em; }
.ny-muted { color: var(--ny-muted); }
.ny-small { font-size: 0.9375rem; }

.ny-mega {
	font-size: clamp(2.75rem, 6vw, 5.25rem) !important;
	line-height: 0.95 !important;
	letter-spacing: -0.045em !important;
	font-weight: 700 !important;
}

.ny-arrow-link a,
a.ny-arrow-link {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	min-height: 44px;
	font-weight: 600;
	text-decoration: none;
}
.ny-arrow-link a::after,
a.ny-arrow-link::after {
	content: "";
	width: 18px;
	height: 18px;
	background: currentColor;
	-webkit-mask: var(--ny-i-arrow) center / contain no-repeat;
	mask: var(--ny-i-arrow) center / contain no-repeat;
	transition: transform 0.2s ease;
}
.ny-arrow-link a:hover::after,
a.ny-arrow-link:hover::after { transform: translateX(4px); }

.ny-tag {
	font-family: var(--ny-mono);
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--ny-primary);
	margin-top: 0.25rem !important;
}

/* ---------- Abschnitte ---------- */

.ny-section { padding-block: var(--ny-section); }
.ny-section--tight { padding-block: clamp(48px, 6vw, 88px); }
.ny-section--top0 { padding-top: 0; }
.ny-white { background: #fff; border-block: 1px solid var(--ny-line); }
.ny-white + .ny-white { border-top: 0; }

.ny-dark {
	background: var(--ny-navy);
	color: #fff;
}
.ny-dark :where(h1, h2, h3, h4, strong) { color: #fff; }
.ny-dark p:not(.ny-eyebrow):not(.ny-tag),
.ny-dark li { color: var(--ny-dark-text); }
.ny-dark .ny-eyebrow,
.ny-dark .ny-tag { color: var(--ny-accent); }
.ny-dark a:not(.wp-element-button) { color: #fff; }
.ny-dark .ny-lead { color: var(--ny-dark-text); }

/* Kopf eines Abschnitts: Überschrift links, Text rechts */
.ny-head { gap: 1.5rem 3rem !important; align-items: flex-end !important; }
.ny-head > :first-child { max-width: 680px; margin: 0; }
.ny-head > :last-child { max-width: 460px; color: var(--ny-muted); margin: 0; }

.ny-stack > * + * { margin-block-start: 1.25rem; }

/* ---------- Hero ---------- */

.ny-hero {
	background: var(--ny-navy);
	color: #fff;
	padding-block: clamp(56px, 8vw, 112px);
	overflow: hidden;
}
.ny-hero h1 { color: #fff; margin-block: 0.25em 0; }
.ny-hero .ny-eyebrow { color: var(--ny-dark-muted); }
.ny-hero p { color: #D3E0E6; }
.ny-hero .ny-hero__note { font-size: 0.9375rem; color: var(--ny-dark-muted); }
.ny-hero .wp-block-buttons { margin-top: 2rem; }

.ny-ring {
	position: relative;
	width: 100%;
	max-width: 440px;
	aspect-ratio: 1;
	margin-inline: auto;
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0 !important;
	background: url("assets/img/ring-361.svg") center / contain no-repeat;
}
.ny-ring::after {
	content: "+1°";
	position: absolute;
	top: 1.5%;
	left: 53.5%;
	font-family: var(--ny-mono);
	font-size: clamp(11px, 1.3vw, 15px);
	color: var(--ny-accent);
}
.ny-ring > * { margin: 0 !important; }
.ny-ring .ny-ring__num {
	font-size: clamp(4rem, 9vw, 6.75rem);
	font-weight: 600;
	letter-spacing: -0.05em;
	line-height: 1;
	color: #fff !important;
}
.ny-ring .ny-ring__label {
	font-family: var(--ny-mono);
	font-size: clamp(10px, 1.1vw, 13px);
	letter-spacing: 0.24em;
	color: rgba(255, 255, 255, 0.62) !important;
	margin-top: 0.9rem !important;
}

/* Heller Seitenkopf für Unterseiten */
.ny-pagehero {
	background: #fff;
	padding-block: clamp(48px, 7vw, 96px) clamp(36px, 4vw, 48px);
	border-bottom: 1px solid var(--ny-line);
}
.ny-pagehero h1 { margin-block: 0.3em 0; font-size: clamp(2.5rem, 5vw, 4.25rem); }
.ny-pagehero.ny-dark { background: var(--ny-navy); border-bottom: 0; }
.ny-crumbs { font-size: 0.875rem; color: var(--ny-muted); }
.ny-crumbs a { color: var(--ny-muted); }
.ny-dark .ny-crumbs, .ny-dark .ny-crumbs a { color: var(--ny-dark-muted); }

/* Sprungmarken */
.ny-pills {
	list-style: none;
	padding: 0;
	margin: 2rem 0 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.ny-pills li { margin: 0; }
.ny-pills a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--ny-field);
	border-radius: 999px;
	font-size: 0.9375rem;
	font-weight: 500;
	text-decoration: none;
	color: var(--ny-ink);
	transition: border-color 0.15s, background 0.15s;
}
.ny-pills a:hover { border-color: var(--ny-primary); background: var(--ny-subtle); }

/* ---------- Kennzahlen ---------- */

.ny-facts-wrap { background: #fff; border-bottom: 1px solid var(--ny-line); }
.ny-facts { overflow: hidden; gap: 0 !important; }
.ny-facts > * {
	padding: 36px 28px;
	box-shadow: -1px 0 0 var(--ny-line);
	margin: 0 !important;
}
.ny-facts p { margin: 0; }
.ny-facts .ny-fact__value {
	font-size: 2.125rem;
	font-weight: 600;
	letter-spacing: -0.03em;
	line-height: 1.2;
}
.ny-facts .ny-fact__label { font-size: 0.9375rem; color: var(--ny-muted); margin-top: 0.4rem; }

/* ---------- Karten ---------- */

.ny-card {
	background: #fff;
	border: 1px solid var(--ny-line);
	border-radius: 24px;
	padding: clamp(28px, 3.5vw, 48px);
	height: 100%;
	box-sizing: border-box;
}
.ny-card > * { margin-block: 0; }
.ny-card > .ny-push { margin-top: auto !important; }
.ny-card--dark {
	background: var(--ny-navy);
	border-color: var(--ny-navy);
	color: #fff;
}
.ny-card--dark :where(h2, h3, h4) { color: #fff; }
.ny-card--dark p:not(.ny-eyebrow):not(.ny-tag) { color: var(--ny-dark-text); }
.ny-card--dark .ny-eyebrow, .ny-card--dark .ny-tag { color: var(--ny-accent); }
.ny-card--dark a:not(.wp-element-button) { color: #fff; }
.ny-card--sm { padding: 24px; border-radius: 18px; }
.ny-card--sm h3, .ny-card--sm h4 { font-size: 1.1875rem; letter-spacing: -0.01em; }
.ny-card--sm p { font-size: 0.9375rem; color: var(--ny-muted); }
.ny-card--panel { border-radius: 28px; padding: clamp(32px, 5vw, 64px); }

/* Chips */
.ny-chips {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 0.875rem;
	font-weight: 500;
}
.ny-chips li { margin: 0; padding: 8px 14px; background: var(--ny-subtle); border-radius: 999px; color: var(--ny-ink); }
.ny-chips a { color: inherit; text-decoration: none; }
.ny-card--dark .ny-chips li, .ny-dark .ny-chips li { background: rgba(255, 255, 255, 0.08); color: #fff; }

/* Ablauf */
.ny-steps {
	list-style: none;
	padding: 0;
	margin-inline: 0;
	margin-bottom: 0;
	counter-reset: nystep;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	border-top: 1px solid var(--ny-ink);
}
.ny-steps li {
	counter-increment: nystep;
	margin: 0;
	padding: 24px 24px 8px 0;
	font-size: 0.9375rem;
	color: var(--ny-muted);
}
.ny-steps li::before {
	content: counter(nystep, decimal-leading-zero);
	display: block;
	font-family: var(--ny-mono);
	font-size: 0.8125rem;
	color: var(--ny-muted);
	margin-bottom: 10px;
}
.ny-steps li:last-child::before { content: counter(nystep, decimal-leading-zero) " · und weiter"; color: var(--ny-ink); }
.ny-steps strong {
	display: block;
	font-size: 1.3125rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--ny-ink);
	margin-bottom: 8px;
}

/* Häkchen-Liste */
.ny-checks { list-style: none; padding: 0; margin-inline: 0; margin-bottom: 0; }
.ny-checks li {
	position: relative;
	padding: 20px 0 20px 38px;
	border-top: 1px solid var(--ny-line);
	margin: 0;
}
.ny-checks li:last-child { border-bottom: 1px solid var(--ny-line); }
.ny-checks li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 22px;
	width: 22px;
	height: 22px;
	background: var(--ny-primary);
	-webkit-mask: var(--ny-i-check) center / contain no-repeat;
	mask: var(--ny-i-check) center / contain no-repeat;
}
.ny-checks strong { display: block; color: var(--ny-ink); font-weight: 600; }
.ny-dark .ny-checks li, .ny-card--dark .ny-checks li { border-color: rgba(255, 255, 255, 0.14); }
.ny-dark .ny-checks li::before, .ny-card--dark .ny-checks li::before { background: var(--ny-accent); }
.ny-dark .ny-checks strong, .ny-card--dark .ny-checks strong { color: #fff; }

/* Zeilen-Liste (Kontaktdaten, Downloads) */
.ny-rows { list-style: none; padding: 0; margin-inline: 0; margin-bottom: 0; border-top: 1px solid var(--ny-line); }
.ny-rows li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 16px;
	padding: 18px 0;
	margin: 0;
	border-bottom: 1px solid var(--ny-line);
	color: var(--ny-muted);
}
.ny-rows li > a, .ny-rows li > strong { font-weight: 600; color: var(--ny-ink); text-decoration: none; text-align: right; }
.ny-rows li > a:hover { color: var(--ny-primary); text-decoration: underline; }

/* Partner */
.ny-partners {
	list-style: none;
	padding: 28px 0;
	margin-inline: 0;
	margin-bottom: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
	gap: 20px 32px;
	border-block: 1px solid var(--ny-line);
	font-size: 1.1875rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: #56636C;
}
.ny-partners li { margin: 0; }
.ny-partners a { color: inherit; text-decoration: none; }
.ny-partners a:hover { color: var(--ny-primary); }

/* Akzent-Band (Jobs) */
.ny-band { background: var(--ny-accent); color: var(--ny-ink); padding-block: clamp(56px, 7vw, 96px); }
.ny-band .ny-eyebrow { color: var(--ny-ink); }
.ny-band p { font-size: 1.1875rem; }

/* CTA-Leiste */
.ny-cta { background: #fff; border-top: 1px solid var(--ny-line); padding-block: clamp(56px, 7vw, 96px); }
.ny-cta h2 { font-size: clamp(2rem, 3.6vw, 3rem); }

/* Leistungs-Abschnitte */
.ny-service { padding-block: clamp(56px, 7vw, 88px); border-bottom: 1px solid var(--ny-line); }
.ny-service:last-child { border-bottom: 0; }
.ny-service h2 { font-size: clamp(1.875rem, 3vw, 2.25rem); margin-top: 0.75rem; }
.ny-num { font-family: var(--ny-mono); font-size: 0.8125rem; color: var(--ny-muted); margin: 0; }
.ny-dark .ny-num, .ny-card--dark .ny-num { color: var(--ny-accent); }

/* Spalten-Abstand großzügiger */
.wp-block-columns.ny-cols { gap: clamp(32px, 5vw, 56px); }

/* ---------- Icons (CSS-Masken, Farbe über currentColor) ---------- */

.ny-icon-card::before {
	content: "";
	display: block;
	width: 28px;
	height: 28px;
	margin-bottom: 4px;
	background: var(--ny-primary);
	-webkit-mask: var(--ny-icon, var(--ny-i-check)) center / contain no-repeat;
	mask: var(--ny-icon, var(--ny-i-check)) center / contain no-repeat;
}
.ny-card--dark.ny-icon-card::before { background: var(--ny-accent); }

/* ---------- Header ---------- */

.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
}
.admin-bar .wp-site-blocks > header.wp-block-template-part { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { .admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; } }
.ny-header {
	background: #fff;
	border-bottom: 1px solid var(--ny-line);
}
.ny-header__inner { padding-block: 12px; min-height: 52px; }

.ny-wordmark a, .ny-wordmark {
	color: var(--ny-ink) !important;
	text-decoration: none !important;
	white-space: nowrap;
}
.ny-wordmark a::after, .ny-wordmark--static::after {
	content: "";
	display: inline-block;
	width: 17px;
	height: 7px;
	margin-left: 6px;
	vertical-align: 0.05em;
	background: linear-gradient(90deg, var(--ny-cyan) 0 7px, transparent 7px 10px, var(--ny-green) 10px 17px);
}
.ny-footer .ny-wordmark a, .ny-footer .ny-wordmark { color: #fff !important; }
.ny-footer .ny-wordmark a::after { background: linear-gradient(90deg, var(--ny-cyan) 0 7px, transparent 7px 10px, var(--ny-accent) 10px 17px); }

.ny-header .wp-block-navigation a { text-decoration: none; }
.ny-header .wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--ny-primary); }
.ny-header .wp-block-navigation .current-menu-item > a,
.ny-header .wp-block-navigation [aria-current="page"] { color: var(--ny-primary); box-shadow: inset 0 -2px 0 var(--ny-primary); }
.ny-header .wp-block-navigation__submenu-container {
	border: 1px solid var(--ny-line) !important;
	border-radius: 16px;
	padding: 8px !important;
	box-shadow: 0 18px 40px -18px rgba(14, 26, 33, 0.25);
	min-width: 240px !important;
}
.ny-header .wp-block-navigation__submenu-container a { padding: 8px 12px !important; border-radius: 10px; }
.ny-header .wp-block-navigation__submenu-container a:hover { background: var(--ny-subtle); }
.ny-header .wp-block-navigation__responsive-container.is-menu-open { padding: 24px clamp(20px, 4vw, 40px); }
.ny-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { font-size: 1.125rem; gap: 0.75rem; }

.ny-header .wp-block-button__link { padding: 0.7rem 1.25rem; font-size: 0.9375rem; }
.ny-header .ny-support-link a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--ny-ink);
	text-decoration: none;
}
.ny-header .ny-support-link a::before {
	content: "";
	width: 18px;
	height: 18px;
	background: currentColor;
	-webkit-mask: var(--ny-i-headset) center / contain no-repeat;
	mask: var(--ny-i-headset) center / contain no-repeat;
}
.ny-header .ny-support-link { margin: 0; }
.ny-header .wc-block-mini-cart__button { min-height: 44px; min-width: 44px; padding: 0 6px; }

@media (max-width: 781px) {
	.ny-header .ny-support-link a { font-size: 0; gap: 0; width: 44px; justify-content: center; }
	.ny-header .ny-header__cta { display: none; }
}

/* ---------- Footer ---------- */

.ny-footer {
	background: var(--ny-ink);
	color: #C5CFD4;
	font-size: 0.9375rem;
	padding-block: 72px 32px;
}
.ny-footer p { margin: 0; line-height: 1.7; }
.ny-footer .wp-block-column > * + * { margin-top: 16px; }
.ny-footer a { color: #C5CFD4; text-decoration: none; }
.ny-footer a:hover { color: #fff; text-decoration: underline; }
.ny-footer .ny-footer__label {
	font-family: var(--ny-mono);
	font-size: 0.75rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #8A99A1;
	margin-bottom: 8px;
}
.ny-footer .ny-footer__links { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.ny-footer .ny-footer__links li { margin: 0; }
.ny-footer .ny-footer__bottom {
	margin-top: 56px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 0.875rem;
	color: #8A99A1;
}
.ny-footer .ny-footer__bottom a, .ny-footer .ny-footer__bottom p { color: #8A99A1; }
.ny-footer .ny-legal { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 24px; }
.ny-footer .ny-legal li { margin: 0; }

/* ---------- Buttons ---------- */

.wp-block-button__link { transition: background-color 0.15s, color 0.15s, border-color 0.15s; }
.wp-block-button.is-style-accent .wp-block-button__link { background: var(--ny-accent); color: var(--ny-ink); }
.wp-block-button.is-style-accent .wp-block-button__link:hover { background: #fff; color: var(--ny-ink); }
.wp-block-button.is-style-ink .wp-block-button__link { background: var(--ny-ink); color: #fff; }
.wp-block-button.is-style-ink .wp-block-button__link:hover { background: var(--ny-navy); }
.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--ny-primary);
	border: 1px solid currentColor;
	padding: calc(0.9rem - 1px) calc(1.6rem - 1px);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--ny-primary); color: #fff; border-color: var(--ny-primary); }
:where(.ny-dark, .ny-hero, .ny-card--dark) .wp-block-button.is-style-outline .wp-block-button__link { color: #fff; border-color: rgba(255, 255, 255, 0.4); }
:where(.ny-dark, .ny-hero, .ny-card--dark) .wp-block-button.is-style-outline .wp-block-button__link:hover { background: #fff; color: var(--ny-ink); border-color: #fff; }
:where(.ny-dark, .ny-hero, .ny-card--dark) .wp-block-button:not(.is-style-outline):not(.is-style-accent) .wp-block-button__link { background: #fff; color: var(--ny-ink); }

/* ---------- Blog ---------- */

.ny-post-grid { gap: 16px !important; }
.ny-post-grid > li { margin: 0; }
.ny-post-card { display: flex; flex-direction: column; gap: 10px; height: 100%; padding: 28px; }
.ny-post-card .wp-block-post-title { font-size: 1.3125rem; letter-spacing: -0.015em; line-height: 1.25; margin: 0; }
.ny-post-card .wp-block-post-title a { color: var(--ny-ink); text-decoration: none; }
.ny-post-card .wp-block-post-title a:hover { color: var(--ny-primary); }
.ny-post-card .wp-block-post-excerpt { color: var(--ny-muted); font-size: 0.9375rem; margin: 0; }
.ny-post-card .wp-block-post-excerpt__more-text { margin-top: auto; }
.ny-post-card .wp-block-post-featured-image { margin: -28px -28px 8px; overflow: hidden; border-radius: 24px 24px 0 0; }
.ny-post-card .wp-block-post-featured-image img { aspect-ratio: 16/9; object-fit: cover; width: 100%; }

.wp-block-query-pagination { gap: 8px; margin-top: 40px; }
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 44px; min-height: 44px; padding: 0 12px;
	border: 1px solid var(--ny-field); border-radius: 999px; text-decoration: none; color: var(--ny-ink);
}
.wp-block-query-pagination .page-numbers.current { background: var(--ny-ink); color: #fff; border-color: var(--ny-ink); }

.ny-article { background: #fff; padding-block: clamp(40px, 6vw, 80px) var(--ny-section); }
.ny-article .wp-block-post-content { font-size: 1.125rem; line-height: 1.7; }
.ny-article .wp-block-post-content h2 { font-size: clamp(1.625rem, 2.6vw, 2rem); margin-top: 2.2em; }
.ny-article .wp-block-post-content h3 { font-size: 1.375rem; margin-top: 1.8em; }
.ny-article .wp-block-post-content img { border-radius: 16px; }
.ny-article .wp-block-post-featured-image img { border-radius: 24px; }
.ny-prose > * { max-width: 760px; }
.ny-legal-text { font-size: 1rem; }
.ny-legal-text h2 { font-size: 1.625rem; margin-top: 2em; }
.ny-legal-text h3 { font-size: 1.25rem; margin-top: 1.6em; }

/* ---------- Details / FAQ ---------- */

.wp-block-details {
	border-bottom: 1px solid var(--ny-line);
	padding-block: 18px;
}
.wp-block-details:first-of-type { border-top: 1px solid var(--ny-line); }
.wp-block-details summary {
	font-weight: 600;
	font-size: 1.1875rem;
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: 16px;
	min-height: 32px;
	align-items: center;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background: var(--ny-primary);
	-webkit-mask: var(--ny-i-plus) center / contain no-repeat;
	mask: var(--ny-i-plus) center / contain no-repeat;
	transition: transform 0.2s;
}
.wp-block-details[open] summary::after { transform: rotate(45deg); }
.wp-block-details > :not(summary) { color: var(--ny-muted); margin-top: 12px; }

/* ---------- Preise (Pakete) ---------- */

.ny-price { font-size: 2.5rem; font-weight: 600; letter-spacing: -0.03em; line-height: 1; color: var(--ny-ink); }
.ny-card--dark .ny-price { color: #fff; }

/* ---------- Formulare (netyard core) ---------- */

.ny-form { display: grid; gap: 18px; }
.ny-form__row { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.ny-form__field { display: flex; flex-direction: column; gap: 6px; }
.ny-form label { font-size: 0.875rem; font-weight: 500; color: var(--ny-ink); }
.ny-form .ny-req { color: var(--ny-primary); }
.ny-form input[type="text"], .ny-form input[type="email"], .ny-form input[type="tel"],
.ny-form select, .ny-form textarea {
	font: inherit;
	font-size: 1rem;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid var(--ny-field);
	border-radius: 12px;
	background: #fff;
	color: var(--ny-ink);
	box-sizing: border-box;
	width: 100%;
}
.ny-form textarea { padding: 12px 14px; min-height: 120px; resize: vertical; }
.ny-form input:focus, .ny-form select:focus, .ny-form textarea:focus { border-color: var(--ny-primary); outline: 2px solid rgba(0, 175, 255, 0.35); outline-offset: 0; }
.ny-form input[type="file"] { font-size: 0.9375rem; }
.ny-form__hint { font-size: 0.8125rem; color: var(--ny-muted); }
.ny-form__consent { display: flex; gap: 12px; align-items: flex-start; }
.ny-form__consent input { width: 20px; height: 20px; margin: 2px 0 0; flex-shrink: 0; accent-color: var(--ny-primary); }
.ny-form__consent label { font-size: 0.8125rem; line-height: 1.5; color: var(--ny-muted); font-weight: 400; }
.ny-form__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.ny-form button[type="submit"] {
	justify-self: start;
	min-height: 52px;
	padding: 0 28px;
	background: var(--ny-primary);
	color: #fff;
	border: 0;
	border-radius: 999px;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.15s;
}
.ny-form button[type="submit"]:hover { background: var(--ny-ink); }
.ny-notice { padding: 16px 18px; border-radius: 14px; font-size: 0.9375rem; margin-bottom: 8px; }
.ny-notice--ok { background: #EEF9D6; color: #23380A; border: 1px solid #C7E68A; }
.ny-notice--error { background: #FDECEC; color: #6B1A1A; border: 1px solid #F3BDBD; }

/* ---------- WooCommerce ---------- */

.woocommerce .button, .woocommerce button.button, .woocommerce a.button,
.wc-block-components-button:not(.is-link), .wp-block-button.wc-block-components-product-button .wp-block-button__link {
	border-radius: 999px !important;
	background: var(--ny-primary) !important;
	color: #fff !important;
	font-weight: 600 !important;
	border: 0 !important;
}
.woocommerce .button:hover, .wc-block-components-button:not(.is-link):hover { background: var(--ny-ink) !important; }
.woocommerce ul.products li.product, .wc-block-product {
	background: #fff;
	border: 1px solid var(--ny-line);
	border-radius: 20px;
	padding: 20px !important;
	box-sizing: border-box;
}
.woocommerce ul.products li.product img, .wc-block-components-product-image img { border-radius: 12px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 1.0625rem; font-weight: 600; }
.woocommerce .price, .wc-block-components-product-price { color: var(--ny-ink) !important; font-weight: 600; }
.woocommerce-store-notice, p.demo_store { background: var(--ny-navy) !important; }

/* Produktkarten in Listen (Shop, ähnliche Produkte): gleich hoch, Button unten, kompakte Preisangaben */
.wc-block-product-template .wc-block-product {
	display: flex !important;
	flex-direction: column;
	gap: 8px;
}
.wc-block-product .wp-block-post-title { margin: 8px 0 0 !important; line-height: 1.3; }
.wc-block-product .wp-block-woocommerce-product-price,
.wc-block-product .wc-block-components-product-price { margin: 0 !important; }
.wc-block-product .wc-block-components-product-price p,
.wc-block-product .wc-gzd-additional-info,
.wc-block-product [class*="wc-gzd-additional-info"] {
	margin: 2px 0 0 !important;
	font-size: 0.8125rem !important;
	font-weight: 400;
	line-height: 1.4;
	color: var(--ny-muted);
}
.wc-block-product .wc-block-components-product-button { margin-top: auto !important; padding-top: 8px; }
.wc-block-product .wc-block-components-product-button .wp-block-button__link {
	white-space: nowrap;
	padding: 11px 20px !important;
	font-size: 0.9375rem !important;
}
/* Abstand zum Footer auf Shop-, Produkt-, Warenkorb- und Kassenseiten */
body.woocommerce main.wp-block-group,
body.woocommerce-cart main.wp-block-group,
body.woocommerce-checkout main.wp-block-group,
body.woocommerce-account main.wp-block-group { padding-bottom: clamp(64px, 8vw, 112px); }

/* ---------- Mobil ---------- */

@media (max-width: 781px) {
	.ny-facts > * { padding: 22px 20px; }
	.ny-facts .ny-fact__value { font-size: 1.5rem; }
	.ny-hero .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.ny-hero .wp-block-buttons .wp-block-button { width: 100%; }
	.ny-hero .wp-block-buttons .wp-block-button__link { width: 100%; box-sizing: border-box; text-align: center; }
	.ny-ring { max-width: 280px; }
	.ny-steps { grid-template-columns: 1fr; border-top: 0; }
	.ny-steps li { padding: 16px 0 16px 40px; border-top: 1px solid var(--ny-line); position: relative; }
	.ny-steps li:last-child { border-bottom: 1px solid var(--ny-line); }
	.ny-steps li::before { position: absolute; left: 0; top: 19px; }
	.ny-steps li:last-child::before { content: counter(nystep, decimal-leading-zero); }
	.ny-steps strong { font-size: 1.0625rem; margin-bottom: 2px; }
	.ny-rows li > a, .ny-rows li > strong { text-align: left; }
}

/* ---------- Icon-Bibliothek ---------- */

:root {
	--ny-i-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	--ny-i-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l4.5 4.5L19 7'/%3E%3C/svg%3E");
	--ny-i-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
	--ny-i-headset: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14v-2a8 8 0 0 1 16 0v2'/%3E%3Crect x='3' y='14' width='4' height='6' rx='1.5'/%3E%3Crect x='17' y='14' width='4' height='6' rx='1.5'/%3E%3C/svg%3E");
	--ny-i-user: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E");
	--ny-i-team: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20a6.5 6.5 0 0 1 13 0'/%3E%3Cpath d='M16 4.6a3.5 3.5 0 0 1 0 6.8M18 14a6.5 6.5 0 0 1 3.5 6'/%3E%3C/svg%3E");
	--ny-i-euro: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15.5 8.5a4.5 4.5 0 1 0 0 7M7 10.5h6M7 13.5h6'/%3E%3C/svg%3E");
	--ny-i-shield: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.4 8.2-8 9-4.6-.8-8-4.5-8-9V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
	--ny-i-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
	--ny-i-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E");
	--ny-i-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
	--ny-i-server: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='7' rx='2'/%3E%3Crect x='3' y='13' width='18' height='7' rx='2'/%3E%3Cpath d='M7 7.5h.01M7 16.5h.01'/%3E%3C/svg%3E");
	--ny-i-cloud: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 18a4.5 4.5 0 0 1-.6-8.96A6 6 0 0 1 18 8.5a4.75 4.75 0 0 1-.5 9.5z'/%3E%3C/svg%3E");
	--ny-i-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.5' y='10.5' width='15' height='10' rx='2'/%3E%3Cpath d='M8 10.5V7.5a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
	--ny-i-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	--ny-i-download: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E");
	--ny-i-wrench: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 6.5a4 4 0 0 0 5 5L12 19a2.1 2.1 0 0 1-3-3l7.5-7.5a4 4 0 0 0-2-2z'/%3E%3C/svg%3E");
	--ny-i-home: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7v9a1 1 0 0 1-1 1h-5v-6h-4v6H5a1 1 0 0 1-1-1z'/%3E%3C/svg%3E");
	--ny-i-building: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='18' rx='1'/%3E%3Cpath d='M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1M10 21v-3h4v3'/%3E%3C/svg%3E");
	--ny-i-code: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 8l-4 4 4 4M16 8l4 4-4 4M13.5 5l-3 14'/%3E%3C/svg%3E");
	--ny-i-leaf: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19c0-9 6-14 15-14 0 9-5 15-14 15'/%3E%3Cpath d='M5 19c3-4 6-6 9-7.5'/%3E%3C/svg%3E");
	--ny-i-key: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='15' r='4'/%3E%3Cpath d='M11 12l9-9M17 6l3 3M15 8l2 2'/%3E%3C/svg%3E");
	--ny-i-fingerprint: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 9.5a5 5 0 0 1 10 0c0 4-1 7.5-3 10'/%3E%3Cpath d='M10 20c1.5-3 2-6 2-10.5'/%3E%3Cpath d='M4 12c0-5 3.6-8 8-8s8 3 8 8'/%3E%3Cpath d='M7.5 18c.8-1.8 1-4 1-6'/%3E%3C/svg%3E");
	--ny-i-refresh: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11a8 8 0 0 0-14.3-4.5L4 8M4 4v4h4M4 13a8 8 0 0 0 14.3 4.5L20 16M20 20v-4h-4'/%3E%3C/svg%3E");
	--ny-i-laptop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='11' rx='1.5'/%3E%3Cpath d='M2 19h20'/%3E%3C/svg%3E");
	--ny-i-bike: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='16' r='3.5'/%3E%3Ccircle cx='18' cy='16' r='3.5'/%3E%3Cpath d='M6 16l4-8h5l3 8M10 8l3 8M13 5h3'/%3E%3C/svg%3E");
	--ny-i-coffee: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9h13v5a5 5 0 0 1-5 5H9a5 5 0 0 1-5-5z'/%3E%3Cpath d='M17 10h1.5a2.5 2.5 0 0 1 0 5H17M8 3v3M12 3v3'/%3E%3C/svg%3E");
	--ny-i-cap: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 9l10-5 10 5-10 5z'/%3E%3Cpath d='M6 11v5c3 2.5 9 2.5 12 0v-5'/%3E%3C/svg%3E");
	--ny-i-calendar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E");
	--ny-i-chart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V10M10 20V4M16 20v-7M22 20H2'/%3E%3C/svg%3E");
	--ny-i-doc: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h6'/%3E%3C/svg%3E");
	--ny-i-spark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v4M12 17v4M3 12h4M17 12h4M6 6l2.5 2.5M15.5 15.5L18 18M6 18l2.5-2.5M15.5 8.5L18 6'/%3E%3C/svg%3E");
}
.ny-i-arrow { --ny-icon: var(--ny-i-arrow); }
.ny-i-check { --ny-icon: var(--ny-i-check); }
.ny-i-plus { --ny-icon: var(--ny-i-plus); }
.ny-i-headset { --ny-icon: var(--ny-i-headset); }
.ny-i-user { --ny-icon: var(--ny-i-user); }
.ny-i-team { --ny-icon: var(--ny-i-team); }
.ny-i-euro { --ny-icon: var(--ny-i-euro); }
.ny-i-shield { --ny-icon: var(--ny-i-shield); }
.ny-i-pin { --ny-icon: var(--ny-i-pin); }
.ny-i-phone { --ny-icon: var(--ny-i-phone); }
.ny-i-mail { --ny-icon: var(--ny-i-mail); }
.ny-i-server { --ny-icon: var(--ny-i-server); }
.ny-i-cloud { --ny-icon: var(--ny-i-cloud); }
.ny-i-lock { --ny-icon: var(--ny-i-lock); }
.ny-i-clock { --ny-icon: var(--ny-i-clock); }
.ny-i-download { --ny-icon: var(--ny-i-download); }
.ny-i-wrench { --ny-icon: var(--ny-i-wrench); }
.ny-i-home { --ny-icon: var(--ny-i-home); }
.ny-i-building { --ny-icon: var(--ny-i-building); }
.ny-i-code { --ny-icon: var(--ny-i-code); }
.ny-i-leaf { --ny-icon: var(--ny-i-leaf); }
.ny-i-key { --ny-icon: var(--ny-i-key); }
.ny-i-fingerprint { --ny-icon: var(--ny-i-fingerprint); }
.ny-i-refresh { --ny-icon: var(--ny-i-refresh); }
.ny-i-laptop { --ny-icon: var(--ny-i-laptop); }
.ny-i-bike { --ny-icon: var(--ny-i-bike); }
.ny-i-coffee { --ny-icon: var(--ny-i-coffee); }
.ny-i-cap { --ny-icon: var(--ny-i-cap); }
.ny-i-calendar { --ny-icon: var(--ny-i-calendar); }
.ny-i-chart { --ny-icon: var(--ny-i-chart); }
.ny-i-doc { --ny-icon: var(--ny-i-doc); }
.ny-i-spark { --ny-icon: var(--ny-i-spark); }

/* ---------- Feinschliff ---------- */
.ny-card.ny-card--sm { gap: 10px !important; }
.ny-card.ny-card--sm .ny-arrow-link { margin-top: 4px !important; }
.ny-price span { font-size: 0.9375rem; font-weight: 400; letter-spacing: 0; color: var(--ny-muted); }
.ny-dark .ny-price, .ny-dark .ny-price span { color: #fff; }
.ny-dark .ny-price span { color: var(--ny-dark-text); }
.ny-pagehero .wp-block-buttons { margin-top: 2rem; }
.ny-pagehero.ny-dark .ny-grid-cards { margin-top: 2.5rem; }

/* Raster ohne leere Spalten */
.ny-facts.is-layout-grid,
.ny-post-grid.is-layout-grid,
.ny-fit.is-layout-grid { grid-template-columns: repeat(auto-fit, minmax(min(var(--ny-col, 16rem), 100%), 1fr)) !important; }
.ny-facts.is-layout-grid { --ny-col: 14rem; }
.ny-post-grid.is-layout-grid { --ny-col: 18rem; }
@media (min-width: 782px) { .ny-facts > :first-child { padding-left: 0; } }
.ny-card > .ny-checks li:first-child { border-top: 0; padding-top: 4px; }
.ny-card > .ny-checks li:first-child::before { top: 6px; }
.ny-col-14rem { --ny-col: 14rem; }
.ny-col-15rem { --ny-col: 15rem; }
.ny-col-16rem { --ny-col: 16rem; }
.ny-col-18rem { --ny-col: 18rem; }
.ny-col-20rem { --ny-col: 20rem; }
.ny-col-24rem { --ny-col: 24rem; }
.ny-col-26rem { --ny-col: 26rem; }

.wp-block-details + .wp-block-details { margin-top: 0 !important; border-top: 0; }
.ny-dark .ny-pills a { border-color: rgba(255, 255, 255, 0.35); }
.ny-dark .ny-pills a:hover { background: #fff; color: var(--ny-ink); border-color: #fff; }

/* Helle Karten in dunklen Abschnitten */
.ny-dark .ny-card:not(.ny-card--dark) { color: var(--ny-ink); }
.ny-dark .ny-card:not(.ny-card--dark) :where(h1, h2, h3, h4, strong) { color: var(--ny-ink); }
.ny-dark .ny-card:not(.ny-card--dark) p:not(.ny-eyebrow):not(.ny-tag),
.ny-dark .ny-card:not(.ny-card--dark) li { color: var(--ny-muted); }
.ny-dark .ny-card:not(.ny-card--dark) a:not(.wp-element-button) { color: var(--ny-primary); }
.ny-dark .ny-card:not(.ny-card--dark) .ny-eyebrow,
.ny-dark .ny-card:not(.ny-card--dark) .ny-tag { color: var(--ny-primary); }
.ny-dark .ny-card:not(.ny-card--dark) .ny-checks li::before { background: var(--ny-primary); }
.ny-dark .ny-card:not(.ny-card--dark) .ny-checks li { border-color: var(--ny-line); }
.ny-dark > .wp-block-group > .ny-fit { margin-top: 2.5rem; }
.ny-card p.ny-price { font-size: 2.5rem; font-weight: 600; letter-spacing: -0.03em; line-height: 1; color: var(--ny-ink); margin-block: 6px 10px !important; }
.ny-card--dark p.ny-price { color: #fff; }
.ny-pagehero p.ny-price { font-size: 2.5rem; font-weight: 600; letter-spacing: -0.03em; margin-top: 2rem; }

@media (max-width: 599px) {
	.ny-header__inner > .wp-block-navigation { order: 3; flex: none; }
	.ny-header__inner > .wp-block-group:last-child { margin-left: auto; order: 2; }
	.ny-header__inner { gap: 4px !important; }
	.ny-facts.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.ny-facts > :nth-child(odd) { padding-left: 0; }
}
:where(h1, h2, h3) { overflow-wrap: break-word; hyphens: manual; }

/* Suche */
.wp-block-search__inside-wrapper { gap: 8px; max-width: 560px; }
.wp-block-search__input {
	min-height: 48px; padding: 0 16px; border: 1px solid var(--ny-field); border-radius: 999px;
	font: inherit; font-size: 1rem; background: #fff; color: var(--ny-ink);
}
.wp-block-search__button { margin-left: 0; border-radius: 999px; padding-inline: 1.4rem; }
.ny-dark .wp-block-search__input, .ny-hero .wp-block-search__input { border-color: transparent; }
.ny-hero .wp-block-search__button { background: var(--ny-accent); color: var(--ny-ink); }

/* WooCommerce-Seiten: Luft nach oben und unten */
body:is(.woocommerce-shop, .single-product, .woocommerce-cart, .woocommerce-checkout, .woocommerce-account, .tax-product_cat, .tax-product_tag) .wp-site-blocks > main {
	padding-top: clamp(24px, 3vw, 40px);
	padding-bottom: var(--ny-section);
}
.woocommerce-loop-product__link, .wc-block-components-product-name { text-decoration: none !important; color: var(--ny-ink) !important; }

/* Mobiles Menü */
.ny-header .wp-block-navigation__responsive-container.is-menu-open { background: #fff; color: var(--ny-ink); }
.ny-header .is-menu-open .wp-block-navigation__submenu-container { border: 0 !important; box-shadow: none; padding: 4px 0 8px 12px !important; }
.ny-header .is-menu-open .wp-block-navigation-item__content { font-size: 1.0625rem; }
.ny-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 0.9375rem; color: var(--ny-muted); padding: 6px 0 !important; }

.ny-header .is-menu-open .wp-block-navigation__responsive-container-content,
.ny-header .is-menu-open .wp-block-navigation__container { align-items: flex-start !important; text-align: left; }
.ny-header .is-menu-open .wp-block-navigation-item { align-items: flex-start !important; }
.ny-header .is-menu-open .wp-block-navigation-item__content { font-weight: 600; }
@media (min-width: 600px) { .ny-header .ny-nav-mobile { display: none !important; } }

/* ---------- Blog 2.0 ---------- */

/* Themen-Navigation */
.ny-catnav { gap: 8px !important; margin-top: 2rem !important; }
.ny-catnav > * { margin: 0 !important; }
.ny-catnav__list { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ny-catnav__list li { margin: 0; }
.ny-catnav a {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px;
	border: 1px solid var(--ny-field); border-radius: 999px;
	font-size: 0.9375rem; font-weight: 500; color: var(--ny-ink); text-decoration: none; background: #fff;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}
.ny-catnav a:hover { border-color: var(--ny-primary); }
.ny-catnav .current-cat > a,
body.blog .ny-catnav__all a { background: var(--ny-ink); border-color: var(--ny-ink); color: #fff; }

/* Karten-Aufbau */
.ny-post-card { padding: 0 !important; overflow: hidden; gap: 0 !important; }
.ny-post-card .wp-block-post-featured-image { margin: 0 !important; border-radius: 0; }
.ny-post-card .wp-block-post-featured-image img { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; height: 100%; display: block; transition: transform 0.4s ease; }
.ny-post-card:hover .wp-block-post-featured-image img { transform: scale(1.03); }
.ny-post-card__body { padding: 24px 26px 26px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.ny-post-card__body > * { margin: 0 !important; }
.ny-post-meta { gap: 10px 14px !important; align-items: center; }
.ny-post-meta > * { margin: 0 !important; }
.ny-post-cat { font-family: var(--ny-mono); font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; }
.ny-post-cat a { color: var(--ny-primary); text-decoration: none; }
.ny-post-cat .wp-block-post-terms__separator { color: var(--ny-muted); }
.ny-read-more { margin-top: auto !important; padding-top: 6px; font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; color: var(--ny-primary); }
.ny-read-more::after { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: var(--ny-i-arrow) center / contain no-repeat; mask: var(--ny-i-arrow) center / contain no-repeat; }

/* Aufmacher: erster Beitrag auf Seite 1 der Übersicht */
@media (min-width: 782px) {
	body:not(.paged) .ny-blog-grid > li:first-child { grid-column: 1 / -1; }
	body:not(.paged) .ny-blog-grid > li:first-child .ny-post-card { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
	body:not(.paged) .ny-blog-grid > li:first-child .wp-block-post-featured-image img { aspect-ratio: auto; min-height: 340px; }
	body:not(.paged) .ny-blog-grid > li:first-child .ny-post-card__body { padding: clamp(28px, 3.5vw, 48px); justify-content: center; }
	body:not(.paged) .ny-blog-grid > li:first-child .wp-block-post-title { font-size: clamp(1.625rem, 2.6vw, 2.25rem); line-height: 1.15; }
	body:not(.paged) .ny-blog-grid > li:first-child .wp-block-post-excerpt { font-size: 1.0625rem; }

	/* Startseite: großer Aufmacher links, zwei kompakte Beiträge rechts */
	.ny-teaser .ny-teaser-grid.is-layout-grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) !important; }
	.ny-teaser .ny-teaser-grid > li:first-child { grid-row: span 2; }
	.ny-teaser .ny-teaser-grid > li:first-child .wp-block-post-featured-image img { aspect-ratio: 16 / 10; }
	.ny-teaser .ny-teaser-grid > li:first-child .wp-block-post-title { font-size: clamp(1.5rem, 2.2vw, 1.875rem); line-height: 1.2; }
	.ny-teaser .ny-teaser-grid > li:not(:first-child) .ny-post-card { display: grid; grid-template-columns: 38% minmax(0, 1fr); }
	.ny-teaser .ny-teaser-grid > li:not(:first-child) .wp-block-post-featured-image img { aspect-ratio: auto; height: 100%; min-height: 180px; }
	.ny-teaser .ny-teaser-grid > li:not(:first-child) .wp-block-post-excerpt { display: none; }
}
.ny-post-grid > li { display: flex; }
.ny-post-grid > li > .ny-post-card { width: 100%; display: flex; flex-direction: column; }
.ny-blog-grid.is-layout-grid { --ny-col: 20rem; }

/* Wortmarke: Originalfarben der Logo-Kästchen, leichtere Schrift */
.ny-wordmark, .ny-wordmark a { font-weight: 300 !important; letter-spacing: -0.02em; }
.ny-wordmark a::after { background: linear-gradient(90deg, #44B2E8 0 7px, transparent 7px 10px, #96C121 10px 17px) !important; }

/* Lange deutsche Wörter in Überschriften auf dem Handy sauber trennen */
@media (max-width: 600px) {
	:where(h1, h2) { hyphens: auto; -webkit-hyphens: auto; hyphenate-limit-chars: 10 4 4; }
}

/* ---------- Original-Logo (Vektor) statt Schriftzug ---------- */
.ny-wordmark a {
	display: block;
	width: 158px;
	height: 28px;
	background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'10%206%20320%2057'%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M14.77%2C50.32h-3.6v-23.34c0-2.34-.18-4.74-.3-6.78h3.72l.18%2C4.44.12.12c2.1-3.72%2C5.52-5.46%2C9.42-5.46%2C9.84%2C0%2C10.62%2C8.7%2C10.62%2C12.18v18.84h-3.6v-19.44c0-5.22-3-8.28-7.92-8.28-5.94%2C0-8.64%2C4.98-8.64%2C10.38v17.34Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M46.63%2C36.1c.12%2C6.42%2C3.06%2C11.82%2C10.44%2C11.82%2C4.26%2C0%2C7.8-3.06%2C8.7-7.2h3.78c-1.86%2C7.2-6.36%2C10.5-13.62%2C10.5-9%2C0-13.2-7.74-13.2-15.96s4.5-15.96%2C13.44-15.96c10.08%2C0%2C13.74%2C7.38%2C13.74%2C16.8h-23.28ZM66.01%2C32.8c-.42-5.82-3.54-10.2-9.78-10.2-5.88%2C0-9%2C4.92-9.48%2C10.2h19.26Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M80.47%2C23.5h-6v-3.3h6v-6.42l3.6-1.56v7.98h6.84v3.3h-6.84v20.16c-.06%2C2.76%2C1.38%2C4.26%2C4.14%2C4.26%2C1.08%2C0%2C2.16-.06%2C3.12-.36v3.12c-1.14.3-2.46.54-3.66.54-7.62%2C0-7.2-4.86-7.2-8.94v-18.78Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M99.13%2C20.2l10.14%2C25.2%2C10.08-25.2h3.9l-16.62%2C41.64h-3.96l4.56-11.52-12.48-30.12h4.38Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M144.91%2C29.08c-.36-4.92-2.88-6.48-7.14-6.48-3.78%2C0-6.9%2C1.14-7.38%2C5.22h-3.84c.9-6.18%2C5.52-8.52%2C11.28-8.52%2C6.66%2C0%2C10.8%2C3.06%2C10.68%2C9.96v14.28c-.06%2C2.34.18%2C4.74.3%2C6.78h-3.72l-.12-4.44h-.12l-.18.42c-1.32%2C2.52-5.34%2C4.92-9.42%2C4.92-5.58%2C0-10.02-3.42-10.02-9.3%2C0-4.08%2C2.46-7.2%2C6.06-8.7%2C4.02-1.74%2C9.24-1.14%2C13.62-1.38v-2.76ZM135.91%2C47.92c7.86%2C0%2C9.36-6.48%2C9-12.78-5.1.18-15.78-.78-15.78%2C6.78%2C0%2C4.08%2C3.12%2C6%2C6.78%2C6Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M161.47%2C50.32h-3.6v-23.34c.06-2.34-.18-4.74-.3-6.78h3.72l.18%2C4.44h.12c1.08-3.06%2C3.78-5.22%2C6.78-5.34%2C1.2-.06%2C2.4%2C0%2C3.6.06v3.48c-.72-.06-1.5-.24-2.22-.24-5.34%2C0-8.16%2C3.84-8.28%2C9.6v18.12Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M198.61%2C45.88l-.12-.24c-2.46%2C3.6-6.12%2C5.58-10.32%2C5.58-8.94%2C0-12.36-8.52-12.36-16.08s3.42-15.84%2C12.36-15.84c4.02%2C0%2C8.22%2C1.92%2C10.32%2C5.46l.12-.12V7h3.6v36.54c0%2C2.34.18%2C4.74.3%2C6.78h-3.72l-.18-4.44ZM188.77%2C22.6c-6.84%2C0-9.06%2C6.36-9.06%2C12.12s1.62%2C13.2%2C8.52%2C13.2c7.86%2C0%2C10.26-6.54%2C10.26-13.38%2C0-6.12-2.7-11.94-9.72-11.94Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M222.13%2C50.32l17.16-43.32h4.56l17.28%2C43.32h-4.26l-4.62-11.7h-21.54l-4.56%2C11.7h-4.02ZM250.87%2C35.02l-9.36-24.42-9.54%2C24.42h18.9Z'%2F%3E%3Cpath%20fill%3D'%231d1d1b'%20d%3D'M296.17%2C28.24v20.28c-5.22%2C2.04-9.96%2C2.7-15.54%2C2.7-11.82%2C0-18.48-9.24-18.48-22.56%2C0-11.16%2C5.94-22.56%2C18.48-22.56%2C7.2%2C0%2C14.58%2C3.9%2C15.24%2C11.58h-4.44c-.78-5.52-5.64-7.98-10.8-7.98-10.38%2C0-14.28%2C9.96-14.28%2C18.96%2C0%2C11.04%2C4.62%2C18.96%2C16.32%2C18.96%2C3.24%2C0%2C6.54-.9%2C9.6-1.8v-13.98h-10.86v-3.6h14.76Z'%2F%3E%3Crect%20fill%3D'%2344b2e8'%20x%3D'304.16'%20y%3D'50.33'%20width%3D'11.34'%20height%3D'11.34'%2F%3E%3Crect%20fill%3D'%2396c121'%20x%3D'317.5'%20y%3D'50.33'%20width%3D'11.34'%20height%3D'11.34'%2F%3E%3C%2Fsvg%3E") left center / contain no-repeat;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	overflow: hidden;
}
.ny-wordmark a::after { display: none !important; }
.ny-footer .ny-wordmark a { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'10%206%20320%2057'%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M14.77%2C50.32h-3.6v-23.34c0-2.34-.18-4.74-.3-6.78h3.72l.18%2C4.44.12.12c2.1-3.72%2C5.52-5.46%2C9.42-5.46%2C9.84%2C0%2C10.62%2C8.7%2C10.62%2C12.18v18.84h-3.6v-19.44c0-5.22-3-8.28-7.92-8.28-5.94%2C0-8.64%2C4.98-8.64%2C10.38v17.34Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M46.63%2C36.1c.12%2C6.42%2C3.06%2C11.82%2C10.44%2C11.82%2C4.26%2C0%2C7.8-3.06%2C8.7-7.2h3.78c-1.86%2C7.2-6.36%2C10.5-13.62%2C10.5-9%2C0-13.2-7.74-13.2-15.96s4.5-15.96%2C13.44-15.96c10.08%2C0%2C13.74%2C7.38%2C13.74%2C16.8h-23.28ZM66.01%2C32.8c-.42-5.82-3.54-10.2-9.78-10.2-5.88%2C0-9%2C4.92-9.48%2C10.2h19.26Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M80.47%2C23.5h-6v-3.3h6v-6.42l3.6-1.56v7.98h6.84v3.3h-6.84v20.16c-.06%2C2.76%2C1.38%2C4.26%2C4.14%2C4.26%2C1.08%2C0%2C2.16-.06%2C3.12-.36v3.12c-1.14.3-2.46.54-3.66.54-7.62%2C0-7.2-4.86-7.2-8.94v-18.78Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M99.13%2C20.2l10.14%2C25.2%2C10.08-25.2h3.9l-16.62%2C41.64h-3.96l4.56-11.52-12.48-30.12h4.38Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M144.91%2C29.08c-.36-4.92-2.88-6.48-7.14-6.48-3.78%2C0-6.9%2C1.14-7.38%2C5.22h-3.84c.9-6.18%2C5.52-8.52%2C11.28-8.52%2C6.66%2C0%2C10.8%2C3.06%2C10.68%2C9.96v14.28c-.06%2C2.34.18%2C4.74.3%2C6.78h-3.72l-.12-4.44h-.12l-.18.42c-1.32%2C2.52-5.34%2C4.92-9.42%2C4.92-5.58%2C0-10.02-3.42-10.02-9.3%2C0-4.08%2C2.46-7.2%2C6.06-8.7%2C4.02-1.74%2C9.24-1.14%2C13.62-1.38v-2.76ZM135.91%2C47.92c7.86%2C0%2C9.36-6.48%2C9-12.78-5.1.18-15.78-.78-15.78%2C6.78%2C0%2C4.08%2C3.12%2C6%2C6.78%2C6Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M161.47%2C50.32h-3.6v-23.34c.06-2.34-.18-4.74-.3-6.78h3.72l.18%2C4.44h.12c1.08-3.06%2C3.78-5.22%2C6.78-5.34%2C1.2-.06%2C2.4%2C0%2C3.6.06v3.48c-.72-.06-1.5-.24-2.22-.24-5.34%2C0-8.16%2C3.84-8.28%2C9.6v18.12Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M198.61%2C45.88l-.12-.24c-2.46%2C3.6-6.12%2C5.58-10.32%2C5.58-8.94%2C0-12.36-8.52-12.36-16.08s3.42-15.84%2C12.36-15.84c4.02%2C0%2C8.22%2C1.92%2C10.32%2C5.46l.12-.12V7h3.6v36.54c0%2C2.34.18%2C4.74.3%2C6.78h-3.72l-.18-4.44ZM188.77%2C22.6c-6.84%2C0-9.06%2C6.36-9.06%2C12.12s1.62%2C13.2%2C8.52%2C13.2c7.86%2C0%2C10.26-6.54%2C10.26-13.38%2C0-6.12-2.7-11.94-9.72-11.94Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M222.13%2C50.32l17.16-43.32h4.56l17.28%2C43.32h-4.26l-4.62-11.7h-21.54l-4.56%2C11.7h-4.02ZM250.87%2C35.02l-9.36-24.42-9.54%2C24.42h18.9Z'%2F%3E%3Cpath%20fill%3D'%23ffffff'%20d%3D'M296.17%2C28.24v20.28c-5.22%2C2.04-9.96%2C2.7-15.54%2C2.7-11.82%2C0-18.48-9.24-18.48-22.56%2C0-11.16%2C5.94-22.56%2C18.48-22.56%2C7.2%2C0%2C14.58%2C3.9%2C15.24%2C11.58h-4.44c-.78-5.52-5.64-7.98-10.8-7.98-10.38%2C0-14.28%2C9.96-14.28%2C18.96%2C0%2C11.04%2C4.62%2C18.96%2C16.32%2C18.96%2C3.24%2C0%2C6.54-.9%2C9.6-1.8v-13.98h-10.86v-3.6h14.76Z'%2F%3E%3Crect%20fill%3D'%2344b2e8'%20x%3D'304.16'%20y%3D'50.33'%20width%3D'11.34'%20height%3D'11.34'%2F%3E%3Crect%20fill%3D'%2396c121'%20x%3D'317.5'%20y%3D'50.33'%20width%3D'11.34'%20height%3D'11.34'%2F%3E%3C%2Fsvg%3E"); }
@media (max-width: 599px) { .ny-header .ny-wordmark a { width: 132px; height: 24px; } }


/* ---------- Germanized: Hinweis gesetzliche Gewährleistung (EU-Pflicht seit 27.09.2026) ---------- */
/* Vollständig und lesbar in Warenkorb und Kasse – nicht verkleinert, nicht verschachtelt. */

.wc-gzd-legal-guarantee-label-full {
	margin-block: 24px;
}
.wc-gzd-legal-guarantee-label-full img.wc-gzd-legal-guarantee-label-image {
	display: block;
	width: 100%;
	max-width: 560px;
	height: auto;
	border: 1px solid var(--ny-line);
	border-radius: 6px;
}
.wc-gzd-legal-guarantee-label-full .wc-gzd-legal-guarantee-label-image-link {
	display: inline-block;
	margin-top: 8px;
	font-size: 0.875rem;
}


/* Sprachumschalter (z. B. ekey DE/EN) */
.ny-lang-switch { margin-top: 20px; font-size: 0.875rem; }
.ny-lang-switch a { color: inherit; text-decoration: underline; text-underline-offset: 3px; opacity: 0.85; }
.ny-lang-switch a:hover { opacity: 1; }


/* Beitragsbilder ohne 16:9 (Logos, quadratische Bilder) vollständig zeigen statt beschneiden */
.wp-block-post-featured-image.ny-thumb--fit,
.wp-block-post-featured-image.ny-thumb--logo { position: relative; isolation: isolate; overflow: hidden; background: var(--ny-subtle); }
.wp-block-post-featured-image.ny-thumb--logo { background: #fff; border-bottom: 1px solid var(--ny-line); }
.wp-block-post-featured-image.ny-thumb--fit::before {
	content: ""; position: absolute; inset: -30px; z-index: -1;
	background: var(--ny-thumb) center / cover no-repeat;
	filter: blur(28px) saturate(1.15); opacity: 0.6;
}
.ny-thumb--fit img, .ny-thumb--logo img { object-fit: contain !important; aspect-ratio: 16 / 9; width: 100%; height: auto; }
.ny-thumb--logo img { padding: 8% 14%; box-sizing: border-box; }
.ny-post-card:hover .ny-thumb--fit img, .ny-post-card:hover .ny-thumb--logo img { transform: none; }
.ny-article .ny-thumb--fit, .ny-article .ny-thumb--logo { border-radius: 24px; }
.ny-article .ny-thumb--fit img, .ny-article .ny-thumb--logo img { border-radius: 0 !important; max-height: 520px; }


/* Stellen (Shortcode [netyard_jobs]) */
.ny-jobs { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(24rem, 100%), 1fr)); gap: 24px; }
.ny-job-card { display: flex; flex-direction: column; gap: 12px; }
.ny-job-card h3 { margin: 0; font-size: 1.375rem; letter-spacing: -0.015em; line-height: 1.25; }
.ny-job-card p { margin: 0; }
.ny-job-card p:not(.ny-tag) { color: var(--ny-muted); }
.ny-job-card .ny-push { margin-top: auto !important; padding-top: 8px; }


/* Beitragskarten ohne Bild/Body-Wrapper (z. B. „Weitere Beiträge“): Innenabstand */
.ny-post-card:not(:has(> .ny-post-card__body)) { padding: 24px 26px 26px !important; gap: 10px !important; }
.ny-post-card:not(:has(> .ny-post-card__body)) > * { margin: 0 !important; }


/* Formulare mobil: Felder nie breiter als die Karte (Dateifeld, Grid-Mindestbreite, iOS) */
.ny-form-wrap, .ny-form, .ny-form__row, .ny-form__field { min-width: 0; max-width: 100%; }
.ny-form__row { grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); }
.ny-form input, .ny-form select, .ny-form textarea { max-width: 100%; min-width: 0; box-sizing: border-box; }
.ny-form input[type="file"] { width: 100%; overflow: hidden; text-overflow: ellipsis; }

/* Schmale Handys: Produktliste einspaltig, lange Überschriften umbrechen */
@media (max-width: 480px) {
	.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { width: 100% !important; float: none !important; margin-right: 0 !important; }
}
h1, h2, h3, .wp-block-heading { overflow-wrap: break-word; hyphens: auto; -webkit-hyphens: auto; }
.ny-head > * { min-width: 0; max-width: 100%; }

/* Tablet & Smartphone quer (600–1199px): Burger-Menü statt umbrechender Navigation */
@media (min-width: 600px) and (max-width: 1199px) {
	.ny-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.ny-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.ny-header__inner > .wp-block-navigation { order: 3; flex: none; }
	.ny-header__inner > .wp-block-group:last-child { margin-left: auto; order: 2; }
}
.ny-header__cta .wp-block-button__link { white-space: nowrap; }

/* Variantenauswahl auf Produktseiten nie breiter als die Spalte */
.woocommerce div.product form.cart table.variations { width: 100%; max-width: 100%; table-layout: fixed; }
.woocommerce div.product form.cart table.variations th.label { width: 7.5em; }
.woocommerce div.product form.cart table.variations select { width: 100%; max-width: 100%; min-width: 0; }
.woocommerce div.product form.cart .variations_button, .woocommerce div.product form.cart:not(.variations_form) { display: flex; flex-wrap: wrap; gap: 10px; max-width: 100%; }
.woocommerce div.product form.cart .single_add_to_cart_button { min-width: 0; max-width: 100%; }
.woocommerce div.product .summary, .woocommerce div.product form.cart { min-width: 0; max-width: 100%; }

/* Produkttitel: an die Spaltenbreite anpassen, keine Trennung mitten im Wort */
.woocommerce div.product .product_title, .woocommerce div.product .wp-block-post-title { font-size: clamp(1.75rem, 3.4vw, 3rem); line-height: 1.1; overflow-wrap: normal; word-break: normal; hyphens: auto; }

/* Zeilen-Listen auf dem Handy einheitlich: Bezeichnung oben, Wert darunter */
@media (max-width: 599px) {
	.ny-rows li { flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 4px; padding: 16px 0; }
	.ny-rows li > a, .ny-rows li > strong { text-align: left; }
}

/* Startseite: 361°-Ring auf Smartphone/Tablet hoch ausblenden (Spalten gestapelt) – 06.11.2026 */
@media (max-width: 781px) {
	.ny-hero .wp-block-column:has(> .ny-ring) { display: none; }
}
