/* Strona „Współpraca dla zakładów kamieniarskich” /wspolpraca/ – projekt D + moduły z C (bloki Gutenberga, szablon page-szeroka.php).
 * Wczytywany przez dm_wspolpraca_d_assets() w functions.php tylko na stronach z sekcjami .dm-wd-sekcja.
 * Wszystkie selektory pod klasami .dm-wd-*, więc plik nie zmienia innych stron.
 * Ikony: zmienne --dm-ik-* (SVG liniowe z projektu) wstawiane maską w kolorze tekstu. */

.dm-wd-sekcja {
	--dm-ik-tel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E");
	--dm-ik-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
	--dm-ik-strzalka: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	--dm-ik-zewn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4h6v6M20 4l-9 9M18 14v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h5'/%3E%3C/svg%3E");
	--dm-ik-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E");
	--dm-ik-pinezka: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' 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");
	--dm-ik-ksiazka: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5a2 2 0 0 1 2-2h14v16H6a2 2 0 0 0-2 2z'/%3E%3Cpath d='M4 19V5'/%3E%3C/svg%3E");
	--dm-ik-metka: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E");
	--dm-ik-klodka: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E");
	--dm-ik-obraz: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Ccircle cx='9' cy='10' r='2'/%3E%3Cpath d='m21 16-5-5-9 9'/%3E%3C/svg%3E");
	--dm-ik-dymek: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12z'/%3E%3C/svg%3E");
	--dm-ik-olowek: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E");

	--wd-block-spacing: 0;
	--wd-tags-mb: 0;
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin: 0;
	padding: 96px 0;
	background: #fff;
	/* tło na całą szerokość okna jak na stronie wydruku: cień 100vmax + clip-path w pionie, bez poziomego paska */
	box-shadow: 0 0 0 100vmax #fff;
	/* -1 px w pionie: sąsiednie sekcje zachodzą na siebie o piksel, więc na granicy nie prześwituje jasna linia */
	clip-path: inset(-1px -100vmax);
	color: #767676;
	font-size: 16px;
	line-height: 1.6;
	/* przyklejony nagłówek motywu ma 80 px (na telefonie 60 px) */
	scroll-margin-top: 80px;
}

.dm-wd-sekcja.dm-wd-szare { background: #f5f7f8; box-shadow: 0 0 0 100vmax #f5f7f8; }
.dm-wd-sekcja.dm-wd-ciemne { background: #242424; box-shadow: 0 0 0 100vmax #242424; color: rgba(255, 255, 255, .8); }

/* Woodmart dokłada w tym szablonie pływający przycisk paska bocznego (≤1024 px), który nic nie otwiera */
.page-template-page-szeroka-php .wd-sidebar-opener { display: none; }

/* ── zerowanie odstępów motywu i typografia ─────────────────────── */
/* :where() – zerowanie ma niską specyficzność, więc margin-top: auto w układach niżej działa */
.dm-wd-sekcja :where(h1, h2, h3, p, ul, li, figure, figcaption, .wp-block-group, .wp-block-buttons, .wp-block-button, .wp-block-image) { margin: 0; }

.dm-wd-sekcja ul { padding: 0; list-style: none; }
.dm-wd-sekcja *,
.dm-wd-sekcja *::before,
.dm-wd-sekcja *::after { box-sizing: border-box; }

.dm-wd-sekcja h1,
.dm-wd-sekcja h2,
.dm-wd-sekcja h3 { color: #242424; font-weight: 500; text-transform: none; }

.dm-wd-sekcja h1 { font-size: 52px; line-height: 1.08; letter-spacing: -.01em; }
.dm-wd-sekcja h2 { font-size: 38px; line-height: 1.15; letter-spacing: 0; }
.dm-wd-sekcja h3 { font-size: 28px; line-height: 1.2; }
.dm-wd-sekcja p { font-size: 16px; line-height: 1.6; color: #767676; }
.dm-wd-ciemne h1,
.dm-wd-ciemne h2,
.dm-wd-ciemne h3 { color: #fff; }
.dm-wd-ciemne p { color: rgba(255, 255, 255, .8); }
.dm-wd-ciemne .dm-wd-opiekun p { color: #767676; }

.dm-wd-sekcja a { color: #242424; text-decoration: none; }
.dm-wd-sekcja a:hover { color: #000; }
.dm-wd-sekcja a:focus-visible,
.dm-wd-sekcja button:focus-visible { outline: 2px solid #242424; outline-offset: 2px; }
.dm-wd-ciemne a:focus-visible,
.dm-wd-ciemne button:focus-visible { outline-color: #c2d197; }
.dm-wd-sekcja [tabindex="-1"]:focus { outline: none; }
.dm-wd-sekcja strong { font-weight: 700; }
.dm-wd-nowrap { white-space: nowrap; }

.dm-wd-sekcja p.dm-wd-etykieta { font-size: 14px; line-height: 1.4; letter-spacing: .02em; color: #333; }
.dm-wd-ciemne p.dm-wd-etykieta { color: #c2d197; }
.dm-wd-sekcja p.dm-wd-maly { font-size: 14px; color: #767676; }
.dm-wd-sekcja p.dm-wd-lead { font-size: 17px; line-height: 1.6; }

.dm-wd-tekst { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }

/* ── ikony: maska SVG w kolorze tekstu ─────────────────────────── */
.dm-wd-pigulka::before,
.dm-wd-link-strzalka a::after,
.dm-wd-sekcja .dm-wd-btn-strzalka .wp-block-button__link::after,
.dm-wd-sekcja .dm-wd-btn-zewn .wp-block-button__link::after,
.dm-wd-sekcja .wp-block-button__link[href^="tel:"]::before,
.dm-wd-sekcja .wp-block-button__link[href^="mailto:"]::before,
.dm-wd-tel-link a::before,
.dm-wd-check li::before,
.dm-wd-klodki li::before,
.dm-wd-ikonka::before,
.dm-wd-usluga::after,
.dm-wd-zakres-lista li::before {
	content: "";
	flex: none;
	width: 18px;
	height: 18px;
	background: currentColor;
	-webkit-mask: var(--dm-ik) center / contain no-repeat;
	mask: var(--dm-ik) center / contain no-repeat;
}

.dm-wd-sekcja .wp-block-button__link[href^="tel:"] { --dm-ik: var(--dm-ik-tel); }
.dm-wd-sekcja .wp-block-button__link[href^="mailto:"] { --dm-ik: var(--dm-ik-mail); }
.dm-wd-link-strzalka a,
.dm-wd-sekcja .dm-wd-btn-strzalka .wp-block-button__link { --dm-ik: var(--dm-ik-strzalka); }
.dm-wd-sekcja .dm-wd-btn-zewn .wp-block-button__link { --dm-ik: var(--dm-ik-zewn); }
.dm-wd-pigulka,
.dm-wd-ik-pinezka { --dm-ik: var(--dm-ik-pinezka); }
.dm-wd-tel-link a { --dm-ik: var(--dm-ik-tel); }
.dm-wd-check li,
.dm-wd-zakres-lista li { --dm-ik: var(--dm-ik-check); }
.dm-wd-klodki li { --dm-ik: var(--dm-ik-klodka); }
.dm-wd-ik-ksiazka { --dm-ik: var(--dm-ik-ksiazka); }
.dm-wd-ik-metka { --dm-ik: var(--dm-ik-metka); }
.dm-wd-ik-obraz { --dm-ik: var(--dm-ik-obraz); }
.dm-wd-ik-dymek { --dm-ik: var(--dm-ik-dymek); }
.dm-wd-ik-olowek { --dm-ik: var(--dm-ik-olowek); }

/* ── przyciski (blok Przyciski) ────────────────────────────────── */
.dm-wd-sekcja .wp-block-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }

.dm-wd-sekcja .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 0 24px;
	border: 1px solid #000;
	border-radius: 35px;
	background: #000;
	box-shadow: none;
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	text-transform: none;
}

.dm-wd-sekcja .wp-block-button__link:hover,
.dm-wd-sekcja .wp-block-button__link:focus { background: #242424; border-color: #242424; color: #fff; }

.dm-wd-sekcja .is-style-outline .wp-block-button__link {
	min-height: 44px;
	padding: 0 20px;
	border-color: #242424;
	background: transparent;
	color: #242424;
}

.dm-wd-sekcja .is-style-outline .wp-block-button__link:hover,
.dm-wd-sekcja .is-style-outline .wp-block-button__link:focus { background: #242424; color: #fff; }

.dm-wd-sekcja .dm-wd-btn-bialy .wp-block-button__link { min-height: 44px; padding: 0 20px; border-color: #fff; background: #fff; color: #242424; }
.dm-wd-sekcja .dm-wd-btn-bialy .wp-block-button__link:hover,
.dm-wd-sekcja .dm-wd-btn-bialy .wp-block-button__link:focus { border-color: #c2d197; background: #c2d197; color: #242424; }

.dm-wd-sekcja .wp-block-button__link::before,
.dm-wd-sekcja .wp-block-button__link::after { width: 18px; height: 18px; }

/* ── 1. HERO ───────────────────────────────────────────────────── */
.dm-wd-sekcja.dm-wd-hero {
	/* ciemne tło zaczyna się tuż pod nagłówkiem motywu (main ma 40 px odstępu u góry) */
	margin-top: -40px;
	clip-path: inset(0 -100vmax -1px);
	padding: 12px 0 96px;
	gap: 36px;
}

.dm-wd-hero .rank-math-breadcrumb p { display: flex; flex-wrap: wrap; align-items: center; gap: 0 10px; font-size: 14px; color: rgba(255, 255, 255, .72); }
.dm-wd-hero .rank-math-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; color: rgba(255, 255, 255, .72); }
.dm-wd-hero .rank-math-breadcrumb a:hover { color: #fff; }
.dm-wd-hero .rank-math-breadcrumb .separator { color: rgba(255, 255, 255, .72); }
.dm-wd-hero .rank-math-breadcrumb .last { color: #fff; }

.dm-wd-hero-naglowek {
	display: grid;
	/* 500 px: akapit obok H1 mieści się w 3 wierszach jak na makiecie (kontener 1200 zamiast 1240) */
	grid-template-columns: minmax(0, 1fr) minmax(0, 500px);
	gap: 56px;
	align-items: end;
}

.dm-wd-hero-tytul { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }

.dm-wd-sekcja p.dm-wd-plakietka {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 16px;
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 35px;
	color: #fff;
	font-size: 13px;
	line-height: 1.3;
	letter-spacing: .02em;
}

.dm-wd-plakietka::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: #c2d197; }

.dm-wd-hero-dol {
	display: grid;
	grid-template-columns: 520px minmax(0, 1fr);
	gap: 24px;
	align-items: stretch;
}

.dm-wd-kolaz {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	grid-template-rows: minmax(0, 7fr) minmax(0, 5fr);
	gap: 16px;
	min-height: 560px;
}

.dm-wd-sekcja .dm-wd-kolaz figure { position: relative; overflow: hidden; border-radius: 16px; background: #fff; }
.dm-wd-sekcja .dm-wd-kolaz figure.dm-wd-kolaz-duze { grid-row: span 2; background: #f3efeb; }

.dm-wd-sekcja .dm-wd-kolaz img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.dm-wd-sekcja .dm-wd-kolaz-duze img { object-position: 62% 60%; }
.dm-wd-sekcja .dm-wd-kolaz-witraz img { left: 50%; top: 50%; right: auto; bottom: auto; width: auto; height: 150%; transform: translate(-50%, -50%); }

.dm-wd-sekcja .dm-wd-kolaz figcaption {
	position: absolute;
	z-index: 1;
	left: 12px;
	bottom: 12px;
	padding: 5px 11px;
	border-radius: 35px;
	background: #242424;
	color: #fff;
	font-size: 12px;
	line-height: 1.3;
	text-align: left;
}

.dm-wd-sekcja .dm-wd-kolaz-duze figcaption { left: 14px; bottom: 14px; padding: 6px 12px; background: rgba(36, 36, 36, .88); font-size: 13px; }

.dm-wd-opiekun {
	display: flex;
	flex-direction: column;
	gap: 28px;
	padding: 48px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}

/* koło z inicjałami (nie ma zdjęcia Maćka) */
.dm-wd-osoba { display: flex; align-items: center; gap: 24px; }

.dm-wd-osoba::before {
	content: "MP";
	content: "MP" / "";
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 112px;
	height: 112px;
	border-radius: 50%;
	background: #c2d197;
	color: #242424;
	font-size: 38px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .02em;
}

.dm-wd-osoba-tekst { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.dm-wd-sekcja p.dm-wd-imie { font-size: 32px; line-height: 1.15; font-weight: 500; color: #242424; }
.dm-wd-sekcja p.dm-wd-rola { font-size: 18px; line-height: 1.4; color: #333; }

.dm-wd-opiekun-kontakt { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding-top: 24px; border-top: 1px solid #e5e7eb; }
.dm-wd-opiekun-kontakt p.dm-wd-maly + p.dm-wd-tel-duzy { margin: 0; }
.dm-wd-opiekun-kontakt p.dm-wd-tel-duzy + p.dm-wd-maly { padding-top: 10px; }

.dm-wd-sekcja p.dm-wd-tel-duzy { line-height: 1.05; }
.dm-wd-sekcja .dm-wd-tel-duzy a { display: inline-flex; align-items: center; min-height: 44px; color: #242424; font-size: 58px; font-weight: 500; line-height: 1.05; letter-spacing: -.01em; white-space: nowrap; }

.dm-wd-sekcja .dm-wd-mail-duzy a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: #242424;
	font-size: 24px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 6px;
	overflow-wrap: anywhere;
}

/* Woodmart zeruje marginesy dzieci .is-layout-flow regułą (0,1,0) z base.css – stąd podwójna klasa */
.dm-wd-sekcja .dm-wd-opiekun-cta { margin-top: auto; display: flex; align-items: center; gap: 24px; }
.dm-wd-opiekun-cta .wp-block-buttons { flex: none; }
.dm-wd-sekcja .dm-wd-btn-duzy .wp-block-button__link { gap: 14px; min-height: 64px; padding: 0 32px; font-size: 18px; white-space: nowrap; }
.dm-wd-sekcja .dm-wd-btn-duzy .wp-block-button__link::before { width: 22px; height: 22px; }
.dm-wd-sekcja p.dm-wd-opiekun-nota { font-size: 15px; line-height: 1.5; }

/* ── 2. MODUŁY WSPÓŁPRACY (z propozycji C) ──────────────────────── */
.dm-wd-sekcja.dm-wd-moduly { padding: 72px 0 80px; gap: 32px; }

.dm-wd-moduly-naglowek { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; }
.dm-wd-moduly-tytul { display: flex; flex-direction: column; gap: 10px; }
.dm-wd-sekcja.dm-wd-moduly h2 { font-size: 34px; line-height: 1.2; letter-spacing: -.01em; }
.dm-wd-sekcja p.dm-wd-moduly-opis { max-width: 700px; color: #666; }

.dm-wd-sekcja p.dm-wd-pigulka {
	flex: none;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid #e5e7eb;
	border-radius: 35px;
	background: #f5f7f8;
	color: #242424;
	font-size: 14px;
	line-height: 1.3;
	white-space: nowrap;
}

.dm-wd-moduly-uklad { display: grid; grid-template-columns: minmax(0, 1fr) 352px; gap: 24px; align-items: start; }
.dm-wd-kafle { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 16px; }

.dm-wd-kafel {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
	transition: border-color .15s ease, box-shadow .15s ease;
}

.dm-wd-kafel.is-wybrany { border-color: #242424; box-shadow: 0 0 0 1px #242424, 0 8px 24px rgba(0, 0, 0, .06); }

.dm-wd-sekcja .dm-wd-kafel-wybor {
	appearance: none;
	flex: none;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 14px;
	width: 100%;
	height: auto;
	min-height: 0;
	margin: 0;
	padding: 22px 18px 6px;
	border: 0;
	border-radius: 16px 16px 0 0;
	background: #fff;
	box-shadow: none;
	color: inherit;
	font: inherit;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	white-space: normal;
	cursor: pointer;
}

.dm-wd-sekcja .dm-wd-kafel-wybor:hover,
.dm-wd-sekcja .dm-wd-kafel-wybor:focus { background: #fff; color: inherit; box-shadow: none; }
.dm-wd-sekcja .dm-wd-kafel-wybor:focus-visible { outline-offset: -4px; }

.dm-wd-kafel-gora { display: flex; justify-content: space-between; align-items: center; gap: 8px; }

.dm-wd-kafel-ikona {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #f5f7f8;
	transition: background-color .15s ease;
}

.dm-wd-kafel.is-wybrany .dm-wd-kafel-ikona { background: #c2d197; }

.dm-wd-kafel-pole {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border: 2px solid #242424;
	border-radius: 7px;
	background: #fff;
}

.dm-wd-kafel-pole .dm-wd-ptaszek { display: none; }
.dm-wd-kafel.is-wybrany .dm-wd-kafel-pole { background: #242424; }
.dm-wd-kafel.is-wybrany .dm-wd-ptaszek { display: block; }
.dm-wd-kafel-wybor:hover .dm-wd-kafel-pole { box-shadow: 0 0 0 3px #e5e7eb; }

.dm-wd-kafel-tytul { font-size: 19px; line-height: 1.3; font-weight: 500; color: #242424; }
.dm-wd-kafel-opis { font-size: 14px; line-height: 1.55; color: #767676; }

.dm-wd-sekcja .dm-wd-kafel-link { display: flex; align-items: center; gap: 8px; min-height: 50px; margin-top: auto; padding: 0 18px 6px; color: #242424; font-size: 14px; }
.dm-wd-sekcja .dm-wd-kafel-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.dm-wd-sekcja .dm-wd-kafel-link:focus-visible { outline-offset: -4px; }

.dm-wd-kafel.dm-wd-kafel-wkrotce { gap: 14px; padding: 22px 18px; border: 2px dashed #c9ced3; background: #f5f7f8; box-shadow: none; }
.dm-wd-kafel-wkrotce .dm-wd-kafel-ikona { background: #e9ecee; }
.dm-wd-kafel-wkrotce .dm-wd-kafel-tytul { font-weight: 500; color: #555; }
.dm-wd-kafel-wkrotce .dm-wd-kafel-opis { color: #666; }

.dm-wd-wkrotce-znacznik {
	display: inline-flex;
	align-items: center;
	height: 28px;
	padding: 0 12px;
	border: 1px solid #9ca3af;
	border-radius: 35px;
	color: #555;
	font-size: 12px;
	white-space: nowrap;
}

/* panel „Wasz zakres współpracy” (przyklejony obok kafli) */
.dm-wd-zakres {
	position: sticky;
	top: 104px; /* 80 px przyklejonego nagłówka motywu + 24 px */
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}

.dm-wd-zakres-glowa { display: flex; flex-direction: column; gap: 4px; padding: 20px 24px; background: #242424; }
.dm-wd-zakres-glowa strong { font-size: 20px; font-weight: 500; line-height: 1.3; color: #fff; }
.dm-wd-zakres-licznik { font-size: 14px; line-height: 1.4; color: rgba(255, 255, 255, .8); }

.dm-wd-zakres-tresc { display: flex; flex-direction: column; padding: 6px 24px 12px; }

.dm-wd-zakres-lista li {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr) 44px;
	gap: 12px;
	align-items: center;
	min-height: 56px;
	border-bottom: 1px solid #eef0f2;
	color: #242424;
	font-size: 15px;
	line-height: 1.4;
}

.dm-wd-zakres-lista li::before { width: 20px; height: 20px; }

.dm-wd-sekcja .dm-wd-zakres-usun {
	appearance: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	box-shadow: none;
	color: #666;
	cursor: pointer;
}

.dm-wd-sekcja .dm-wd-zakres-usun:hover,
.dm-wd-sekcja .dm-wd-zakres-usun:focus { background: #f5f7f8; color: #242424; }

.dm-wd-zakres-pusto {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
	margin: 12px 0 6px;
	padding: 16px;
	border: 2px dashed #d1d5db;
	border-radius: 10px;
	background: #f5f7f8;
}

.dm-wd-sekcja .dm-wd-zakres [hidden] { display: none; }

.dm-wd-zakres-plus { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid #e5e7eb; border-radius: 50%; background: #fff; }
.dm-wd-zakres-pusto-tekst { display: flex; flex-direction: column; gap: 4px; }
.dm-wd-zakres-pusto-tekst strong { font-size: 15px; font-weight: 700; line-height: 1.4; color: #242424; }
.dm-wd-zakres-pusto-tekst span { font-size: 14px; line-height: 1.55; color: #666; }

.dm-wd-sekcja p.dm-wd-zakres-woj:not([hidden]) { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 12px; align-items: center; min-height: 52px; color: #242424; font-size: 15px; line-height: 1.4; }

.dm-wd-zakres-stopka { display: flex; flex-direction: column; gap: 12px; padding: 18px 24px 22px; border-top: 1px solid #e5e7eb; }
.dm-wd-zakres-osoba { display: flex; align-items: center; gap: 12px; }
.dm-wd-zakres-osoba > span:last-child { display: flex; flex-direction: column; gap: 1px; }
.dm-wd-zakres-osoba strong { font-size: 16px; line-height: 1.3; color: #242424; }
.dm-wd-zakres-osoba > span:last-child > span { font-size: 13px; line-height: 1.3; color: #767676; }

.dm-wd-inicjaly {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #242424;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .04em;
}

.dm-wd-sekcja a.dm-wd-zakres-napisz {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 18px;
	border-radius: 35px;
	background: #000;
	color: #fff;
	font-size: 15px;
	line-height: 1.3;
	text-align: center;
}

.dm-wd-sekcja a.dm-wd-zakres-napisz:hover { background: #242424; color: #fff; }
.dm-wd-sekcja a.dm-wd-zakres-tel { display: flex; align-items: center; gap: 10px; min-height: 44px; color: #242424; font-size: 20px; font-weight: 700; }
/* w C telefon i e-mail stoją jeden pod drugim bez odstępu stopki (12 px) */
.dm-wd-sekcja a.dm-wd-zakres-mail { margin-top: -12px; display: flex; align-items: center; gap: 10px; min-height: 44px; color: #242424; font-size: 15px; overflow-wrap: anywhere; }
.dm-wd-zakres-tel svg,
.dm-wd-zakres-mail svg { flex: none; }
.dm-wd-sekcja p.dm-wd-zakres-nota { font-size: 13px; line-height: 1.5; }

/* ── 3. ASORTYMENT ─────────────────────────────────────────────── */
.dm-wd-glowa { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 48px; align-items: end; }
.dm-wd-glowa-tytul { display: flex; flex-direction: column; gap: 14px; }
.dm-wd-sekcja .dm-wd-glowa h2 { font-size: 40px; }
.dm-wd-glowa-bok { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.dm-wd-sekcja .dm-wd-glowa-bok p { color: #6e6e6e; }

.dm-wd-sekcja .dm-wd-link-strzalka a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: #242424; font-size: 16px; text-decoration: underline; text-underline-offset: 5px; }

.dm-wd-galeria { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px; }
.dm-wd-sekcja .dm-wd-k3 { grid-column: span 3; }
.dm-wd-sekcja .dm-wd-k4 { grid-column: span 4; }
.dm-wd-sekcja .dm-wd-k5 { grid-column: span 5; }
.dm-wd-sekcja .dm-wd-k8 { grid-column: span 8; }
.dm-wd-sekcja .dm-wd-h360 { height: 360px; }
.dm-wd-sekcja .dm-wd-h400 { height: 400px; }
.dm-wd-sekcja .dm-wd-h500 { height: 500px; }

.dm-wd-karta {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 20px;
	padding: 32px;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	background: #fff;
}

.dm-wd-karta-tekst { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }

.dm-wd-sekcja p.dm-wd-znacznik { padding: 5px 12px; border-radius: 35px; background: #c2d197; color: #242424; font-size: 12px; font-weight: 700; line-height: 1.4; }

.dm-wd-karta.dm-wd-karta-ciemna { padding: 28px; border: 0; background: #242424; }
.dm-wd-sekcja .dm-wd-karta-ciemna h3 { font-size: 26px; color: #fff; }
.dm-wd-sekcja .dm-wd-karta-ciemna p:not(.dm-wd-znacznik) { font-size: 15px; color: rgba(255, 255, 255, .8); }

.dm-wd-sekcja .dm-wd-foto { position: relative; overflow: hidden; border-radius: 16px; background: #f3efeb; }
.dm-wd-sekcja .dm-wd-foto.dm-wd-k8 { background: #242424; }
.dm-wd-sekcja .dm-wd-foto img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
.dm-wd-sekcja .dm-wd-foto.dm-wd-h500 img { object-position: center 60%; }
.dm-wd-sekcja .dm-wd-foto.dm-wd-foto-caly { border: 1px solid #e5e7eb; background: #fff; }
.dm-wd-sekcja .dm-wd-foto-caly img { padding: 16px 16px 8px; object-fit: contain; }
/* zdjęcie tablicy kolorowej ma tło #fcfbfc – karta w tym samym kolorze, bez widocznego kwadratu (makieta: #fbfbfb) */
.dm-wd-sekcja .dm-wd-foto-caly:has(.wp-image-36361) { background: #fcfbfc; }

.dm-wd-sekcja .dm-wd-foto figcaption {
	position: absolute;
	z-index: 1;
	left: 20px;
	bottom: 20px;
	padding: 7px 14px;
	border: 1px solid #e5e7eb;
	border-radius: 35px;
	background: #fff;
	color: #242424;
	font-size: 13px;
	line-height: 1.3;
	text-align: left;
}

.dm-wd-sekcja .dm-wd-podpis-jasny figcaption { border: 0; background: rgba(255, 255, 255, .94); }

/* ── 4. PLAC EKSPOZYCYJNY ──────────────────────────────────────── */
.dm-wd-sekcja.dm-wd-plac { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 64px; align-items: center; }

.dm-wd-rysunek {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 28px;
	height: 560px;
	padding: 40px;
	border: 2px dashed #b9c9a0;
	border-radius: 16px;
	background: #2c2c2c;
}

.dm-wd-rysunek-svg { display: block; width: 100%; max-width: 580px; height: auto; }
.dm-wd-sekcja p.dm-wd-rysunek-podpis { font-size: 14px; color: rgba(255, 255, 255, .78); }

.dm-wd-plac-tekst { display: flex; flex-direction: column; gap: 26px; }

.dm-wd-miniatury { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.dm-wd-sekcja .dm-wd-miniatury figure { display: flex; flex-direction: column; gap: 10px; }
.dm-wd-sekcja .dm-wd-miniatury img { display: block; width: 100%; height: 140px; border-radius: 10px; background: #fff; object-fit: contain; }
.dm-wd-sekcja .dm-wd-miniatury .dm-wd-miniatura-kadr img { object-fit: cover; }
.dm-wd-sekcja .dm-wd-miniatury figcaption { color: #fff; font-size: 14px; line-height: 1.4; text-align: left; }

.dm-wd-ramka-sage { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 18px 22px; border: 2px dashed #c2d197; border-radius: 15px; }
.dm-wd-sekcja .dm-wd-ramka-sage p { color: #fff; }

.dm-wd-sekcja .dm-wd-tel-link a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	color: #fff;
	font-size: 20px;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, .5);
	text-decoration-thickness: 1px;
	text-underline-offset: 6px;
}

.dm-wd-tel-link a::before { width: 20px; height: 20px; background: #c2d197; }
.dm-wd-sekcja .dm-wd-tel-link a:hover { color: #c2d197; }

/* ── 5. STRONA INTERNETOWA ─────────────────────────────────────── */
.dm-wd-sekcja.dm-wd-www { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 56px; align-items: center; }
.dm-wd-www-tekst { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }

.dm-wd-check { display: flex; flex-direction: column; gap: 12px; }
.dm-wd-sekcja .dm-wd-check li { display: flex; align-items: center; gap: 12px; color: #333; font-size: 16px; line-height: 1.5; }
.dm-wd-check li::before { width: 20px; height: 20px; background: #8fa86a; }

.dm-wd-sekcja .dm-wd-btn-zewn .wp-block-button__link { min-height: 48px; padding: 0 24px; font-size: 16px; }

/* makieta: dwie ramki przeglądarki i telefon; pozycje w % – skaluje się z szerokością kolumny */
.dm-wd-www-makieta { position: relative; aspect-ratio: 763 / 620; }

.dm-wd-sekcja .dm-wd-przegladarka {
	position: absolute;
	overflow: hidden;
	padding-top: 34px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 16px 40px rgba(0, 0, 0, .12);
}

.dm-wd-przegladarka::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 34px;
	border-bottom: 1px solid #e5e7eb;
	background:
		radial-gradient(circle at 19px 17px, #d4d4d4 5px, transparent 5.5px),
		radial-gradient(circle at 37px 17px, #d4d4d4 5px, transparent 5.5px),
		radial-gradient(circle at 55px 17px, #d4d4d4 5px, transparent 5.5px),
		#f1f2f3;
}

.dm-wd-sekcja .dm-wd-przegladarka img { display: block; width: 100%; height: auto; max-width: none; }

.dm-wd-sekcja .dm-wd-przegladarka figcaption {
	position: absolute;
	top: 7px;
	left: 82px;
	right: 14px;
	display: flex;
	align-items: center;
	height: 20px;
	padding: 0 12px;
	overflow: hidden;
	border-radius: 35px;
	background: #fff;
	color: #6e6e6e;
	font-size: 11px;
	line-height: 1;
	text-align: left;
	white-space: nowrap;
}

.dm-wd-sekcja .dm-wd-przegladarka-1 { left: 0; top: 0; z-index: 1; width: 83.9%; }

.dm-wd-sekcja .dm-wd-przegladarka-2 { left: 5.2%; top: 53.2%; z-index: 2; width: 68.2%; padding-top: 30px; box-shadow: 0 16px 40px rgba(0, 0, 0, .14); }
.dm-wd-przegladarka-2::before {
	height: 30px;
	background:
		radial-gradient(circle at 16.5px 15px, #d4d4d4 4.5px, transparent 5px),
		radial-gradient(circle at 32.5px 15px, #d4d4d4 4.5px, transparent 5px),
		radial-gradient(circle at 48.5px 15px, #d4d4d4 4.5px, transparent 5px),
		#f1f2f3;
}

.dm-wd-sekcja .dm-wd-telefon {
	position: absolute;
	right: 0;
	top: 15.5%;
	z-index: 3;
	width: 30.9%;
	padding: 10px;
	border-radius: 34px;
	background: #242424;
	box-shadow: 0 20px 48px rgba(0, 0, 0, .22);
}

.dm-wd-sekcja .dm-wd-telefon img { display: block; width: 100%; height: auto; max-width: none; aspect-ratio: 216 / 440; border-radius: 25px; background: #fff; object-fit: cover; object-position: top; }

/* ── 6. KLIENCI Z REGIONU ──────────────────────────────────────── */
.dm-wd-sekcja.dm-wd-region { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: center; }
/* pełny kontener 1200: lewa kolumna 490 px jak na makiecie – nagłówek i opis liczby łamią się tak samo */
@media (min-width: 1230px) { .dm-wd-sekcja.dm-wd-region { grid-template-columns: minmax(0, 490px) minmax(0, 1fr); } }
.dm-wd-region-tekst { display: flex; flex-direction: column; gap: 28px; }

.dm-wd-liczba { display: flex; align-items: center; gap: 22px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, .16); }
.dm-wd-sekcja p.dm-wd-liczba-duza { flex: none; color: #c2d197; font-size: 76px; font-weight: 500; line-height: 1; letter-spacing: -.02em; white-space: nowrap; }
.dm-wd-sekcja p.dm-wd-liczba-opis { color: #fff; font-size: 20px; line-height: 1.35; }

.dm-wd-mapa { display: flex; flex-direction: column; gap: 20px; }
.dm-wd-mapa-siatka { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(5, 62px); gap: 8px; }

.dm-wd-sekcja .dm-wd-woj {
	appearance: none;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	min-height: 44px;
	height: auto;
	margin: 0;
	padding: 0 10px;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 10px;
	background: rgba(255, 255, 255, .06);
	box-shadow: none;
	color: #fff;
	font: inherit;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: center;
	text-transform: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease;
}

.dm-wd-sekcja .dm-wd-woj:hover,
.dm-wd-sekcja .dm-wd-woj:focus { border-color: rgba(255, 255, 255, .45); background: rgba(255, 255, 255, .12); color: #fff; }
.dm-wd-sekcja .dm-wd-woj[aria-pressed="true"] { border-color: #c2d197; background: #c2d197; color: #242424; }

.dm-wd-mapa-pasek { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 84px; padding: 10px 10px 10px 22px; border-radius: 35px; background: #2f2f2f; }
.dm-wd-sekcja p.dm-wd-mapa-info { color: #fff; font-size: 16px; line-height: 1.4; }

.dm-wd-sekcja a.dm-wd-mapa-tel { flex: none; display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 20px; border-radius: 35px; background: #fff; color: #242424; font-size: 15px; }
.dm-wd-sekcja a.dm-wd-mapa-tel:hover { background: #c2d197; color: #242424; }

/* ── 7. WSPARCIE GRAFICZNE ─────────────────────────────────────── */
.dm-wd-sekcja.dm-wd-grafika { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 56px; align-items: center; }

.dm-wd-sekcja .dm-wd-przed-po { position: relative; display: flex; flex-direction: column; gap: 12px; }
.dm-wd-sekcja .dm-wd-przed-po img { display: block; width: 100%; height: auto; border: 1px solid #e5e7eb; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(0, 0, 0, .06); }
.dm-wd-sekcja .dm-wd-przed-po figcaption { color: #6e6e6e; font-size: 14px; line-height: 1.4; text-align: left; }

.dm-wd-przed-po::before,
.dm-wd-przed-po::after {
	position: absolute;
	z-index: 1;
	top: 24px;
	padding: 6px 14px;
	border-radius: 35px;
	font-size: 13px;
	line-height: 1.3;
}

.dm-wd-przed-po::before { content: "Przed"; left: 24px; background: #242424; color: #fff; }
.dm-wd-przed-po::after { content: "Po"; left: calc(50% + 16px); background: #c2d197; color: #242424; font-weight: 700; }
/* strony EN/ES (html lang en-GB / es-ES); \00E9 = é, bo serwer nie podaje charset dla CSS */
.dm-wd-przed-po:lang(en)::before { content: "Before"; }
.dm-wd-przed-po:lang(en)::after { content: "After"; }
.dm-wd-przed-po:lang(es)::before { content: "Antes"; }
.dm-wd-przed-po:lang(es)::after { content: "Despu\00E9s"; }

.dm-wd-grafika-tekst { display: flex; flex-direction: column; gap: 28px; }

.dm-wd-uslugi { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(0, 0, 0, .06); }

.dm-wd-usluga {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	padding: 22px 24px 22px 84px;
	border-bottom: 1px solid #e5e7eb;
}

.dm-wd-usluga:last-child { border-bottom: 0; }
.dm-wd-usluga::before { content: ""; position: absolute; left: 24px; top: 22px; width: 44px; height: 44px; border-radius: 50%; background: #f5f7f8; }
.dm-wd-usluga::after { position: absolute; left: 35px; top: 33px; width: 22px; height: 22px; color: #242424; }

.dm-wd-usluga-glowa { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; }
.dm-wd-sekcja p.dm-wd-usluga-tytul { color: #242424; font-size: 18px; font-weight: 500; line-height: 1.4; }
.dm-wd-sekcja .dm-wd-usluga p:not(.dm-wd-usluga-tytul):not(.dm-wd-odznaka) { font-size: 15px; line-height: 1.55; }
.dm-wd-sekcja p.dm-wd-odznaka { padding: 3px 10px; border-radius: 35px; background: #c2d197; color: #242424; font-size: 12px; font-weight: 700; line-height: 1.4; }
.dm-wd-sekcja p.dm-wd-odznaka-obrys { padding: 2px 10px; border: 1px solid #242424; background: transparent; }
.dm-wd-sekcja .dm-wd-usluga-link a { display: inline-flex; align-items: center; min-height: 44px; color: #242424; font-size: 15px; text-decoration: underline; text-underline-offset: 5px; }

/* ── 8. KATALOG I KONTO B2B ────────────────────────────────────── */
.dm-wd-sekcja.dm-wd-konto { gap: 24px; }
.dm-wd-sekcja h2.dm-wd-konto-tytul { padding-bottom: 8px; font-size: 32px; line-height: 1.2; }

.dm-wd-konto-karty { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.dm-wd-karta-biala { padding: 32px; border: 1px solid #e5e7eb; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(0, 0, 0, .06); }
.dm-wd-sekcja .dm-wd-karta-biala h3 { font-size: 26px; }

.dm-wd-katalog { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 32px; }
.dm-wd-sekcja .dm-wd-okladka img { display: block; width: 200px; height: auto; aspect-ratio: 200 / 281; border: 1px solid #e5e7eb; border-radius: 8px; object-fit: cover; }
.dm-wd-katalog .dm-wd-karta-tekst .wp-block-buttons { margin-top: auto; }
.dm-wd-katalog .dm-wd-karta-tekst,
.dm-wd-b2b { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }

.dm-wd-sekcja p.dm-wd-ikonka { display: inline-flex; align-items: center; gap: 8px; color: #333; font-size: 14px; line-height: 1.4; }
.dm-wd-ikonka::before { width: 20px; height: 20px; color: #242424; }

.dm-wd-klodki { display: flex; flex-direction: column; gap: 8px; align-self: stretch; }
.dm-wd-sekcja .dm-wd-klodki li { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-radius: 10px; background: #f5f7f8; color: #333; font-size: 15px; line-height: 1.4; }
.dm-wd-klodki li::before { width: 20px; height: 20px; color: #242424; }

.dm-wd-sekcja .dm-wd-b2b-akcje { margin-top: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.dm-wd-sekcja .dm-wd-konto .is-style-outline .wp-block-button__link { min-height: 48px; padding: 0 22px; }
.dm-wd-sekcja .dm-wd-link-podkreslony a { display: inline-flex; align-items: center; min-height: 44px; color: #242424; font-size: 15px; text-decoration: underline; text-underline-offset: 5px; }

/* ── 9. FINAŁ: KARTA MAĆKA ─────────────────────────────────────── */
/* pod ostatnią sekcją motyw dokłada 40 px odstępu w tym samym kolorze */
.dm-wd-sekcja.dm-wd-final { padding-bottom: 56px; }

.dm-wd-final-ramka {
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	gap: 40px;
	align-items: stretch;
	/* 48 px z boków: akapit po lewej mieści się w 2 wierszach jak na makiecie */
	padding: 56px 48px;
	border-radius: 16px;
	background: #242424;
}

.dm-wd-final-lewa { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.dm-wd-sekcja .dm-wd-final-lewa h2 { color: #fff; font-size: 44px; line-height: 1.12; }
.dm-wd-sekcja .dm-wd-final-lewa p { color: rgba(255, 255, 255, .8); }
.dm-wd-sekcja .dm-wd-final-lewa p.dm-wd-etykieta { color: #c2d197; }

.dm-wd-sekcja .dm-wd-final-foto { position: relative; align-self: stretch; overflow: hidden; height: 250px; margin-top: auto; border-radius: 10px; }
.dm-wd-sekcja .dm-wd-final-foto img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: right center; }
.dm-wd-sekcja .dm-wd-final-foto figcaption { position: absolute; left: 16px; bottom: 16px; padding: 6px 12px; border-radius: 35px; background: rgba(36, 36, 36, .88); color: #fff; font-size: 13px; line-height: 1.3; text-align: left; }

.dm-wd-final-karta { display: flex; flex-direction: column; gap: 22px; padding: 36px; border-radius: 16px; background: #fff; }

.dm-wd-osoba.dm-wd-osoba-pion { flex-direction: column; align-items: flex-start; gap: 16px; }
.dm-wd-osoba-pion::before { width: 96px; height: 96px; font-size: 32px; }
.dm-wd-sekcja .dm-wd-osoba-pion p.dm-wd-imie { font-size: 30px; }
.dm-wd-sekcja .dm-wd-osoba-pion p.dm-wd-rola { font-size: 16px; }

.dm-wd-sekcja .wp-block-buttons.dm-wd-final-przyciski { flex-direction: column; align-items: stretch; gap: 22px; }

.dm-wd-sekcja .dm-wd-btn-tel-duzy .wp-block-button__link {
	position: relative;
	display: block;
	min-height: 76px;
	padding: 14px 28px 14px 70px;
	color: rgba(255, 255, 255, .78);
	font-size: 13px;
	line-height: 1.2;
	text-align: left;
}

.dm-wd-sekcja .dm-wd-btn-tel-duzy .wp-block-button__link strong { display: block; color: #fff; font-size: 27px; font-weight: 500; line-height: 1.2; letter-spacing: .01em; }
.dm-wd-sekcja .dm-wd-btn-tel-duzy .wp-block-button__link::before { position: absolute; left: 28px; top: 50%; width: 26px; height: 26px; margin-top: -13px; color: #fff; }

.dm-wd-sekcja .dm-wd-btn-mail-duzy .wp-block-button__link { justify-content: flex-start; gap: 14px; min-height: 60px; padding: 0 28px; font-size: 18px; overflow-wrap: anywhere; }
.dm-wd-sekcja .dm-wd-btn-mail-duzy .wp-block-button__link::before { width: 22px; height: 22px; }

.dm-wd-sekcja p.dm-wd-biuro { display: flex; flex-wrap: wrap; align-items: center; column-gap: 6px; margin-top: auto; padding-top: 18px; border-top: 1px solid #e5e7eb; font-size: 14px; }
.dm-wd-sekcja .dm-wd-biuro a { display: inline-flex; align-items: center; min-height: 44px; color: #333; }

/* ── ≤ 1024 px ─────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.dm-wd-sekcja { padding: 72px 0; }
	.dm-wd-sekcja.dm-wd-hero { padding-bottom: 72px; }
	.dm-wd-sekcja.dm-wd-final { padding-bottom: 32px; }
	.dm-wd-sekcja h1 { font-size: 44px; }
	.dm-wd-sekcja h2,
	.dm-wd-sekcja .dm-wd-glowa h2 { font-size: 34px; }

	.dm-wd-hero-naglowek,
	.dm-wd-glowa { grid-template-columns: minmax(0, 1fr); gap: 20px; align-items: start; }

	.dm-wd-hero-dol { grid-template-columns: minmax(0, 1fr); }

	.dm-wd-moduly-naglowek { flex-direction: column; align-items: flex-start; gap: 16px; }
	.dm-wd-moduly-uklad { grid-template-columns: minmax(0, 1fr) 320px; }
	.dm-wd-kafle { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	.dm-wd-sekcja .dm-wd-k3,
	.dm-wd-sekcja .dm-wd-k4,
	.dm-wd-sekcja .dm-wd-k5,
	.dm-wd-sekcja .dm-wd-k8 { grid-column: span 6; }
	.dm-wd-sekcja .dm-wd-h400,
	.dm-wd-sekcja .dm-wd-h500 { height: 420px; }
	/* karty z tekstem bez stałej wysokości: w dwóch kolumnach rząd wyrównuje się do wyższej */
	.dm-wd-sekcja .dm-wd-karta.dm-wd-h360,
	.dm-wd-sekcja .dm-wd-karta.dm-wd-h400,
	.dm-wd-sekcja .dm-wd-karta.dm-wd-h500 { height: auto; }

	.dm-wd-sekcja.dm-wd-plac,
	.dm-wd-sekcja.dm-wd-www,
	.dm-wd-sekcja.dm-wd-region,
	.dm-wd-sekcja.dm-wd-grafika { grid-template-columns: minmax(0, 1fr); gap: 40px; }

	.dm-wd-plac-tekst { order: -1; }
	.dm-wd-rysunek { height: auto; }

	.dm-wd-konto-karty { grid-template-columns: minmax(0, 1fr); }

	.dm-wd-final-ramka { grid-template-columns: minmax(0, 1fr); gap: 40px; padding: 40px; }
}

/* ── ≤ 768 px ──────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.dm-wd-sekcja { gap: 28px; padding: 56px 0; scroll-margin-top: 60px; }
	.dm-wd-sekcja.dm-wd-moduly { padding: 56px 0; gap: 24px; }
	.dm-wd-sekcja.dm-wd-hero { gap: 24px; padding-bottom: 56px; }
	.dm-wd-sekcja.dm-wd-final { padding-bottom: 16px; }
	.dm-wd-sekcja h1 { font-size: 38px; }
	.dm-wd-sekcja h2,
	.dm-wd-sekcja h2.dm-wd-konto-tytul,
	.dm-wd-sekcja .dm-wd-glowa h2,
	.dm-wd-sekcja.dm-wd-moduly h2,
	.dm-wd-sekcja .dm-wd-final-lewa h2 { font-size: 30px; }
	.dm-wd-sekcja h3 { font-size: 24px; }

	.dm-wd-kolaz { min-height: 460px; }
	.dm-wd-opiekun { gap: 24px; padding: 32px; }
	.dm-wd-sekcja .dm-wd-tel-duzy a { font-size: 44px; }
	.dm-wd-sekcja .dm-wd-opiekun-cta { flex-direction: column; align-items: flex-start; gap: 14px; }

	.dm-wd-moduly-uklad { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.dm-wd-zakres { position: static; }

	.dm-wd-sekcja.dm-wd-plac,
	.dm-wd-sekcja.dm-wd-www,
	.dm-wd-sekcja.dm-wd-region,
	.dm-wd-sekcja.dm-wd-grafika { gap: 32px; }

	.dm-wd-sekcja .dm-wd-woj { padding: 0 6px; font-size: 12px; white-space: normal; -webkit-hyphens: manual; hyphens: manual; overflow-wrap: anywhere; }
	.dm-wd-mapa-siatka { grid-template-rows: repeat(5, 56px); gap: 6px; }
	.dm-wd-mapa-pasek { flex-direction: column; align-items: stretch; padding: 16px; border-radius: 16px; text-align: center; }
	.dm-wd-sekcja a.dm-wd-mapa-tel { justify-content: center; }
	.dm-wd-sekcja p.dm-wd-liczba-duza { font-size: 60px; }

	.dm-wd-katalog { grid-template-columns: 160px minmax(0, 1fr); gap: 24px; }
	.dm-wd-sekcja .dm-wd-okladka img { width: 160px; }

	.dm-wd-final-ramka { padding: 28px; }
	.dm-wd-final-karta { padding: 28px; }
}

/* ── ≤ 480 px ──────────────────────────────────────────────────── */
@media (max-width: 480px) {
	.dm-wd-sekcja { padding: 48px 0; }
	.dm-wd-sekcja.dm-wd-moduly { padding: 48px 0; }
	.dm-wd-sekcja.dm-wd-hero { padding-bottom: 48px; }
	.dm-wd-sekcja.dm-wd-final { padding-bottom: 8px; }
	.dm-wd-sekcja h1 { font-size: 32px; }
	.dm-wd-sekcja h2,
	.dm-wd-sekcja h2.dm-wd-konto-tytul,
	.dm-wd-sekcja .dm-wd-glowa h2,
	.dm-wd-sekcja.dm-wd-moduly h2,
	.dm-wd-sekcja .dm-wd-final-lewa h2 { font-size: 26px; }
	.dm-wd-sekcja h3,
	.dm-wd-sekcja .dm-wd-karta-biala h3,
	.dm-wd-sekcja .dm-wd-karta-ciemna h3 { font-size: 22px; }
	.dm-wd-sekcja p.dm-wd-lead { font-size: 16px; }

	.dm-wd-kolaz { min-height: 380px; gap: 10px; }
	.dm-wd-sekcja .dm-wd-kolaz figcaption { left: 8px; bottom: 8px; max-width: calc(100% - 16px); padding: 4px 9px; font-size: 12px; line-height: 1.25; }

	.dm-wd-opiekun { padding: 24px; }
	.dm-wd-osoba { gap: 16px; }
	.dm-wd-osoba::before { width: 72px; height: 72px; font-size: 26px; }
	.dm-wd-sekcja p.dm-wd-imie { font-size: 26px; }
	.dm-wd-sekcja p.dm-wd-rola { font-size: 16px; }
	.dm-wd-sekcja .dm-wd-tel-duzy a { font-size: 32px; }
	.dm-wd-sekcja .dm-wd-mail-duzy a { font-size: 17px; }
	.dm-wd-opiekun-cta .wp-block-buttons,
	.dm-wd-opiekun-cta .wp-block-button { align-self: stretch; width: 100%; }
	.dm-wd-sekcja .dm-wd-btn-duzy .wp-block-button__link { width: 100%; padding: 0 20px; }

	.dm-wd-sekcja p.dm-wd-pigulka { white-space: normal; }
	.dm-wd-kafle { grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto; }

	.dm-wd-sekcja .dm-wd-k3,
	.dm-wd-sekcja .dm-wd-k4,
	.dm-wd-sekcja .dm-wd-k5,
	.dm-wd-sekcja .dm-wd-k8 { grid-column: span 12; }
	.dm-wd-sekcja .dm-wd-h400,
	.dm-wd-sekcja .dm-wd-h500 { height: 340px; }
	.dm-wd-sekcja .dm-wd-foto.dm-wd-h360 { height: 320px; }
	.dm-wd-karta { padding: 24px; }

	.dm-wd-rysunek { padding: 24px 16px; gap: 16px; }
	.dm-wd-sekcja .dm-wd-miniatury img { height: 100px; }
	.dm-wd-sekcja .dm-wd-miniatury figcaption { font-size: 13px; }

	.dm-wd-sekcja .dm-wd-przegladarka { padding-top: 22px; border-radius: 8px; }
	.dm-wd-przegladarka::before,
	.dm-wd-przegladarka-2::before {
		height: 22px;
		background:
			radial-gradient(circle at 12px 11px, #d4d4d4 3.5px, transparent 4px),
			radial-gradient(circle at 24px 11px, #d4d4d4 3.5px, transparent 4px),
			radial-gradient(circle at 36px 11px, #d4d4d4 3.5px, transparent 4px),
			#f1f2f3;
	}
	.dm-wd-sekcja .dm-wd-przegladarka figcaption { display: none; }
	.dm-wd-sekcja .dm-wd-telefon { padding: 5px; border-radius: 18px; }
	.dm-wd-sekcja .dm-wd-telefon img { border-radius: 13px; }

	.dm-wd-sekcja .dm-wd-woj { padding: 0 3px; font-size: 12px; }
	.dm-wd-liczba { gap: 16px; }
	.dm-wd-sekcja p.dm-wd-liczba-duza { font-size: 48px; }
	.dm-wd-sekcja p.dm-wd-liczba-opis { font-size: 17px; }

	.dm-wd-przed-po::before,
	.dm-wd-przed-po::after { top: 10px; padding: 4px 10px; font-size: 12px; }
	.dm-wd-przed-po::before { left: 10px; }
	.dm-wd-przed-po::after { left: calc(50% + 8px); }
	.dm-wd-usluga { padding: 18px 18px 18px 70px; }
	.dm-wd-usluga::before { left: 16px; top: 18px; }
	.dm-wd-usluga::after { left: 27px; top: 29px; }

	.dm-wd-karta-biala { padding: 24px; }
	.dm-wd-katalog { grid-template-columns: minmax(0, 1fr); }
	.dm-wd-sekcja .dm-wd-okladka img { width: 140px; }
	.dm-wd-sekcja .dm-wd-b2b-akcje { flex-direction: column; align-items: flex-start; }

	.dm-wd-final-ramka { gap: 28px; padding: 24px 16px 16px; }
	.dm-wd-final-karta { padding: 24px 16px; }
	.dm-wd-biuro span[aria-hidden="true"] { display: none; }
	.dm-wd-sekcja .dm-wd-final-foto { height: 200px; }
	.dm-wd-sekcja .dm-wd-btn-tel-duzy .wp-block-button__link { padding: 12px 18px 12px 56px; }
	.dm-wd-sekcja .dm-wd-btn-tel-duzy .wp-block-button__link::before { left: 20px; width: 22px; height: 22px; margin-top: -11px; }
	.dm-wd-sekcja .dm-wd-btn-tel-duzy .wp-block-button__link strong { font-size: 22px; }
	.dm-wd-sekcja .dm-wd-btn-mail-duzy .wp-block-button__link { gap: 8px; padding: 0 16px; font-size: 14px; }
	.dm-wd-sekcja .dm-wd-btn-mail-duzy .wp-block-button__link::before { width: 18px; height: 18px; }
}

@media (prefers-reduced-motion: reduce) {
	.dm-wd-kafel,
	.dm-wd-kafel-ikona,
	.dm-wd-sekcja .dm-wd-woj { transition: none; }
}

/* ── KAFLE REGIONÓW (EN/ES, 15.09.2026) ────────────────────────────
 * div.dm-wd-mapa.dm-wd-mapa-regiony zamiast mapy 16 województw: te same przyciski .dm-wd-woj[data-woj]
 * (ta sama obsługa w JS i ten sam stan zaznaczenia), wewnątrz span.dm-wd-woj-nazwa + span.dm-wd-woj-kraje.
 * 3 kafle w rzędzie, na telefonie pod sobą. Selektory o 1 klasę mocniejsze od reguł .dm-wd-woj z @media. */
.dm-wd-mapa-regiony .dm-wd-mapa-siatka { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: none; gap: 12px; }
.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj { flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 8px; min-height: 160px; padding: 22px 20px; border-radius: 16px; text-align: left; white-space: normal; }
.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj-nazwa { font-size: 20px; font-weight: 500; line-height: 1.25; }
.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj-kraje { color: rgba(255, 255, 255, .72); font-size: 14px; font-weight: 400; line-height: 1.45; }
.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj[aria-pressed="true"] .dm-wd-woj-kraje { color: #242424; }

/* ≤ 1024 px sekcja stoi pod tekstem: kafle bez sztucznej wysokości; jedna kolumna dopiero ≤ 600 px (15.09, kontrola wyglądu) */
@media (max-width: 1024px) {
	.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj { min-height: 0; }
}

@media (max-width: 600px) {
	.dm-wd-mapa-regiony .dm-wd-mapa-siatka { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj { gap: 4px; min-height: 72px; padding: 14px 18px; justify-content: center; }
	.dm-wd-sekcja .dm-wd-mapa-regiony .dm-wd-woj-nazwa { font-size: 18px; }
}

/* Elementy ukryte do odwołania (przycisk do przykładowej strony ETERNA-GRAN). Przywrócenie: usuń klasę dm-wd-ukryty z bloku w edytorze. */
.dm-wd-sekcja .dm-wd-ukryty { display: none !important; }
