/* Strona „Kontakt” /kontakt/ – projekt „A · z formularzem i tematami” (bloki Gutenberga, szablon page-szeroka.php).
 * Wczytywany przez dm_kontakt_a_assets() w functions.php tylko na stronach z sekcjami .dm-ka-sekcja.
 * Wszystkie selektory pod klasami .dm-ka-*, więc plik nie zmienia innych stron.
 * Ikony: zmienne --dm-ka-ik-* (SVG liniowe z projektu); maską w kolorze tekstu albo jako tło w kółku. */

.dm-ka-sekcja {
	--dm-ka-ik-zegar: 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%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	--dm-ka-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-.5c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E");
	--dm-ka-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-ka-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-ka-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");
	/* ikony w kółkach: kolor wpisany w SVG */
	--dm-ka-ik-torba: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242424' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 13H6z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E");
	--dm-ka-ik-biuro: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242424' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='1.5'/%3E%3Cpath d='M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1M10 21v-3h4v3'/%3E%3C/svg%3E");
	--dm-ka-ik-zaklad: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242424' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M6 21V9a6 6 0 0 1 12 0v12'/%3E%3Cpath d='M10 13h4M12 11v6'/%3E%3C/svg%3E");
	--dm-ka-ik-ptaszek: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242424' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E");
	--dm-ka-ik-ptaszek-cienki: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242424' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E");

	--wd-block-spacing: 0;
	--wd-tags-mb: 0;
	/* obrys fokusu: Woodmart (base-deferred.css) ustawia go z !important przez zmienne --wd-otl-*;
	 * domyślnie czarny, kropkowany i wcięty o 1 px, więc na czarnych przyciskach i ciemnym kafelku był niewidoczny */
	--wd-otl-style: solid;
	--wd-otl-width: 2px;
	--wd-otl-color: #242424;
	--wd-otl-offset: 2px;
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 28px;
	margin: 0;
	padding: 88px 0;
	background: #fff;
	/* tło na całą szerokość okna jak na /wspolpraca/: cień 100vmax + clip-path w pionie, bez poziomego paska */
	box-shadow: 0 0 0 100vmax #fff;
	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-ka-sekcja.dm-ka-szare { background: #f5f7f8; box-shadow: 0 0 0 100vmax #f5f7f8; }

/* 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 motywu i typografia ─────────────────────────────── */
/* :where() – zerowanie ma niską specyficzność, więc marginesy ustawione niżej wygrywają */
.dm-ka-sekcja :where(*) { margin: 0; }
.dm-ka-sekcja *,
.dm-ka-sekcja *::before,
.dm-ka-sekcja *::after { box-sizing: border-box; }
.dm-ka-sekcja [hidden] { display: none !important; }
.dm-ka-sekcja ul { padding: 0; list-style: none; }

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

.dm-ka-sekcja h1 { font-size: 52px; line-height: 1.1; letter-spacing: -.02em; }
.dm-ka-sekcja h2 { font-size: 36px; line-height: 1.2; }
.dm-ka-sekcja h3 { font-size: 28px; line-height: 1.3; }
.dm-ka-sekcja p { font-size: 16px; line-height: 1.6; color: #767676; }
.dm-ka-sekcja strong { font-weight: 700; }
.dm-ka-sekcja p.dm-ka-lead { font-size: 18px; color: #666; }

.dm-ka-sekcja a { color: #000; text-decoration: none; }
.dm-ka-sekcja a:hover { color: #242424; }
.dm-ka-sekcja a:focus-visible,
.dm-ka-sekcja button:focus-visible,
.dm-ka-sekcja input:focus-visible,
.dm-ka-sekcja textarea:focus-visible { outline: 2px solid #242424; outline-offset: 2px; }
.dm-ka-sekcja [tabindex="-1"]:focus { outline: none; }

/* ── ikony maską w kolorze tekstu ──────────────────────────────── */
.dm-ka-sekcja p.dm-ka-godziny::before,
.dm-ka-wydruk::before,
.dm-ka-link-strzalka a::after,
.dm-ka-sekcja .wp-block-button__link[href^="tel:"]::before,
.dm-ka-sekcja .wp-block-button__link[href^="mailto:"]::before,
.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link::after {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: var(--dm-ka-ik) center / contain no-repeat;
	mask: var(--dm-ka-ik) center / contain no-repeat;
}

.dm-ka-sekcja .wp-block-button__link[href^="tel:"] { --dm-ka-ik: var(--dm-ka-ik-tel); }
.dm-ka-sekcja .wp-block-button__link[href^="mailto:"] { --dm-ka-ik: var(--dm-ka-ik-mail); }
.dm-ka-link-strzalka a,
.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link { --dm-ka-ik: var(--dm-ka-ik-strzalka); }

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

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

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

.dm-ka-sekcja .is-style-outline .wp-block-button__link { min-height: 48px; border-color: #242424; background: transparent; color: #242424; font-size: 15px; }
.dm-ka-sekcja .is-style-outline .wp-block-button__link::before { width: 18px; height: 18px; }
.dm-ka-sekcja .is-style-outline .wp-block-button__link:hover,
.dm-ka-sekcja .is-style-outline .wp-block-button__link:focus { background: #242424; color: #fff; }

/* ── 1. NAGŁÓWEK STRONY + KANAŁY ───────────────────────────────── */
.dm-ka-sekcja.dm-ka-hero {
	/* szare 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 80px;
}

.dm-ka-hero .rank-math-breadcrumb p { display: flex; flex-wrap: wrap; align-items: center; gap: 0 8px; font-size:14px; line-height: 1.4; color: #666; }
.dm-ka-hero .rank-math-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; color: #666; }
.dm-ka-hero .rank-math-breadcrumb a:hover { color: #242424; }
/* separator jak na makiecie: „/” zamiast „-” z ustawień Rank Math */
.dm-ka-hero .rank-math-breadcrumb .separator { font-size: 0; }
.dm-ka-hero .rank-math-breadcrumb .separator::before { content: "/"; font-size:14px; }
.dm-ka-hero .rank-math-breadcrumb .last { color: #242424; }

.dm-ka-hero-naglowek { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: end; }
.dm-ka-hero-tytul { display: flex; flex-direction: column; gap: 16px; }
.dm-ka-hero p.dm-ka-lead { max-width: 640px; }

.dm-ka-sekcja p.dm-ka-godziny {
	--dm-ka-ik: var(--dm-ka-ik-zegar);
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 20px;
	border: 1px solid #e5e7eb;
	border-radius: 35px;
	background: #fff;
	color: #333;
	font-size:16px;
	line-height: 1.4;
}
.dm-ka-sekcja p.dm-ka-godziny::before { color: #242424; }
.dm-ka-godziny strong { color: #242424; }

.dm-ka-karty { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }

.dm-ka-karta {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 32px;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}
.dm-ka-karta::before { content: ""; flex: none; width: 48px; height: 48px; border-radius: 50%; background: #f5f7f8 var(--dm-ka-ik) center / 24px no-repeat; }
.dm-ka-ik-torba { --dm-ka-ik: var(--dm-ka-ik-torba); }
.dm-ka-ik-biuro { --dm-ka-ik: var(--dm-ka-ik-biuro); }
.dm-ka-ik-zaklad { --dm-ka-ik: var(--dm-ka-ik-zaklad); }

.dm-ka-sekcja .dm-ka-karta h2 { font-size: 24px; line-height: 1.3; }
.dm-ka-sekcja .dm-ka-karta h2 + p { margin-top: -10px; font-size:16px; }

.dm-ka-sekcja .dm-ka-karta .wp-block-buttons { flex-direction: column; align-items: stretch; margin-top: auto; padding-top: 20px; border-top: 1px solid #f0f1f3; }
.dm-ka-sekcja .dm-ka-karta .wp-block-button { width: 100%; }
.dm-ka-sekcja .dm-ka-karta .wp-block-button__link { width: 100%; padding: 0 16px; overflow-wrap: anywhere; }

.dm-ka-osoba { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-content: center; column-gap: 14px; margin-top: -6px; }
.dm-ka-osoba::before {
	content: "MP";
	content: "MP" / "";
	grid-row: 1 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #c2d197;
	color: #242424;
	font-size:16px;
	font-weight: 700;
	letter-spacing: .04em;
	line-height: 1;
}
.dm-ka-sekcja p.dm-ka-imie { align-self: end; color: #242424; font-size: 17px; font-weight: 700; line-height: 1.4; }
.dm-ka-sekcja p.dm-ka-rola { align-self: start; margin-top: 2px; font-size:16px; line-height: 1.4; }

.dm-ka-wydruk {
	--dm-ka-ik: var(--dm-ka-ik-obraz);
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 14px 24px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #fff;
	color: #242424;
}
.dm-ka-wydruk::before { width: 22px; height: 22px; }
.dm-ka-sekcja p.dm-ka-wydruk-tekst { color: #333; font-size:16px; line-height: 1.5; }
.dm-ka-wydruk-tekst a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; text-decoration: underline !important; }
.dm-ka-sekcja p.dm-ka-link-strzalka { flex: none; margin-left: auto; }
.dm-ka-link-strzalka a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size:16px; }
.dm-ka-link-strzalka a::after { width: 18px; height: 18px; }

/* ── 2. FORMULARZ Z WYBOREM TEMATU ─────────────────────────────── */
.dm-ka-sekcja.dm-ka-kontakt { gap: 32px; padding: 0 0 88px; }
/* ostatnia sekcja: pod nią main ma jeszcze 40 px szarego odstępu przed stopką */
.dm-ka-sekcja.dm-ka-b2b { padding-bottom: 48px; }
.dm-ka-naglowek-sekcji { display: flex; flex-direction: column; gap: 12px; }

.dm-ka-uklad { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); gap: 32px; align-items: stretch; }

.dm-ka-tematy { display: flex; flex-direction: column; gap: 14px; }
.dm-ka-sekcja p.dm-ka-tematy-tytul { color: #242424; font-size:16px; font-weight: 700; line-height: 1.5; }
.dm-ka-tematy-lista { flex: 1; display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-rows: minmax(60px, 1fr); gap: 8px; }

.dm-ka-sekcja .dm-ka-temat {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	height: auto;
	min-height: 44px;
	padding: 8px 14px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #fff;
	box-shadow: none;
	color: #333;
	font: inherit;
	font-size:16px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.dm-ka-sekcja .dm-ka-temat:hover { border-color: #242424; background: #fff; color: #242424; }
.dm-ka-sekcja .dm-ka-temat[aria-pressed="true"] { border-color: #242424; background: #242424; color: #fff; }
.dm-ka-temat svg { flex: none; }
.dm-ka-temat-nazwa { flex: 1; min-width: 0; }
.dm-ka-temat-znak { flex: none; width: 20px; height: 20px; border: 1px solid #d1d5db; border-radius: 50%; background: #fff; }
.dm-ka-temat[aria-pressed="true"] .dm-ka-temat-znak { border-color: #c2d197; background: #c2d197 var(--dm-ka-ik-ptaszek) center / 12px no-repeat; }

.dm-ka-karta-formularza {
	display: flex;
	flex-direction: column;
	padding: 36px 40px;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
	scroll-margin-top: 100px;
}

.dm-ka-formularz { --dm-ka-odstep: 22px; flex: 1; display: flex; flex-direction: column; gap: var(--dm-ka-odstep); }
/* obszar komunikatu (role=status) jest pusty, dopóki nie ma błędu – nie może dokładać drugiego odstępu nad paskiem wysyłki */
.dm-ka-komunikat-obszar { margin-top: calc(-1 * var(--dm-ka-odstep)); }

.dm-ka-wybrany { display: flex; align-items: center; justify-content: space-between; gap: 8px 24px; padding-bottom: 20px; border-bottom: 1px solid #f0f1f3; }
.dm-ka-wybrany-tekst { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.dm-ka-sekcja .dm-ka-wybrany-tekst p { font-size:16px; line-height: 1.5; overflow-wrap: anywhere; }
.dm-ka-wybrany-nazwa { color: #242424; }
.dm-ka-wybrany-dzial { color: #333; }
.dm-ka-sekcja a.dm-ka-wiecej { flex: none; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size:16px; text-decoration: underline; }

.dm-ka-pola { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.dm-ka-pole { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.dm-ka-pole-wiadomosc { flex: 1; }

.dm-ka-sekcja .dm-ka-pole label { display: block; padding: 0; color: #333; font-size:15px; font-weight: 500; line-height: 1.4; text-transform: none; }

.dm-ka-sekcja .dm-ka-pole input:not([type="checkbox"]),
.dm-ka-sekcja .dm-ka-pole textarea {
	width: 100%;
	height: 44px;
	min-height: 44px;
	padding: 0 14px;
	border: 1px solid #d1d5db;
	border-radius: 10px;
	background: #fff;
	box-shadow: none;
	color: #242424;
	font: inherit;
	font-size: 16px;
	line-height: 1.4;
	transition: border-color .15s ease;
}
.dm-ka-sekcja .dm-ka-pole textarea { flex: 1; height: auto; min-height: 120px; padding: 12px 14px; resize: vertical; }
.dm-ka-sekcja .dm-ka-pole :is(input, textarea)::placeholder { color: #767676; opacity: 1; }
.dm-ka-sekcja .dm-ka-pole :is(input, textarea):focus { border-color: #242424; outline: 2px solid #242424; outline-offset: 2px; box-shadow: none; }
.dm-ka-sekcja .dm-ka-pole input:not([type="checkbox"])[aria-invalid="true"],
.dm-ka-sekcja .dm-ka-pole textarea[aria-invalid="true"] { border-color: #b3261e; }
.dm-ka-sekcja p.dm-ka-blad-pola { color: #b3261e; font-size:15px; line-height: 1.4; }

/* pułapka na boty: poza ekranem i poza drzewem dostępności (aria-hidden, tabindex=-1) */
.dm-ka-sekcja .dm-ka-pulapka { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }

.dm-ka-sekcja p.dm-ka-komunikat { margin-top: var(--dm-ka-odstep); padding: 12px 16px; border-radius: 10px; background: #fdf1f0; color: #8c1d18; font-size:16px; line-height: 1.5; }

.dm-ka-wysylka { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; padding-top: 20px; border-top: 1px solid #f0f1f3; }
.dm-ka-pole-zgoda { gap: 4px; }
.dm-ka-zgoda { display: flex; align-items: center; gap: 12px; min-height: 44px; }
.dm-ka-sekcja .dm-ka-zgoda input { flex: none; width: 20px; height: 20px; margin: 0; accent-color: #242424; cursor: pointer; }
.dm-ka-sekcja .dm-ka-zgoda label { color: #767676; font-size:15px; line-height: 1.5; cursor: pointer; }
.dm-ka-sekcja .dm-ka-zgoda a { position: relative; color: #333; text-decoration: underline; white-space: nowrap; }
/* link w zdaniu zgody: większy obszar dotyku bez zmiany układu; w dół tylko 14 px, żeby nie wchodził na przycisk „Wyślij” (odstęp 16 px) */
.dm-ka-zgoda a::after { content: ""; position: absolute; inset: -4px -4px -14px; }

.dm-ka-sekcja .dm-ka-wyslij,
.dm-ka-sekcja .dm-ka-kolejna {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: auto;
	min-height: 52px;
	padding: 0 28px;
	border: 1px solid #000;
	border-radius: 35px;
	background: #000;
	box-shadow: none;
	color: #fff;
	font: inherit;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}
.dm-ka-sekcja .dm-ka-wyslij:hover { border-color: #242424; background: #242424; color: #fff; }
.dm-ka-sekcja .dm-ka-wyslij[aria-disabled="true"] { cursor: progress; opacity: .75; }

.dm-ka-wyslano { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; padding: 24px 0; text-align: center; }
.dm-ka-wyslano-znak { flex: none; width: 64px; height: 64px; border-radius: 50%; background: #c2d197 var(--dm-ka-ik-ptaszek-cienki) center / 30px no-repeat; }
.dm-ka-sekcja .dm-ka-wyslano h3 + p { margin-top: -10px; font-size: 17px; }
.dm-ka-wyslano p strong { color: #333; }
.dm-ka-sekcja .dm-ka-kolejna { margin-top: 8px; border-color: #242424; background: #fff; color: #242424; }
.dm-ka-sekcja .dm-ka-kolejna:hover { background: #242424; color: #fff; }

/* ── 3. ADRES I DANE FIRMY ─────────────────────────────────────── */
.dm-ka-sekcja.dm-ka-adres { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 660px); gap: 72px; align-items: center; }
.dm-ka-adres-tekst { display: flex; flex-direction: column; gap: 32px; }
.dm-ka-adres-tytul { display: flex; flex-direction: column; gap: 16px; }
.dm-ka-sekcja p.dm-ka-firma { color: #333; font-size: 18px; }
.dm-ka-firma strong { color: #242424; }

.dm-ka-dane { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid #e5e7eb; }
.dm-ka-dana { display: flex; flex-direction: column; gap: 2px; padding: 16px 0; border-bottom: 1px solid #e5e7eb; }
.dm-ka-sekcja p.dm-ka-dt { font-size:14px; line-height: 1.3; }
.dm-ka-sekcja p.dm-ka-dd { color: #242424; font-size: 17px; line-height: 1.35; }

.dm-ka-sociale { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.dm-ka-sociale-tekst { font-size:16px; }
.dm-ka-sociale-lista { display: flex; gap: 8px; }
.dm-ka-sekcja .dm-ka-sociale-lista a { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #e5e7eb; border-radius: 50%; color: #242424; }
.dm-ka-sekcja .dm-ka-sociale-lista a:hover { border-color: #242424; }

.dm-ka-mapa { position: relative; height: 440px; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 16px; background: #eef0f2; }
.dm-ka-mapa-rysunek { display: block; width: 100%; height: 100%; }
.dm-ka-mapa-pasek {
	position: absolute;
	left: 24px;
	right: 24px;
	bottom: 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px 20px;
	padding: 16px 16px 16px 24px;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}
.dm-ka-sekcja p.dm-ka-mapa-adres { display: flex; flex-direction: column; color: #333; font-size:16px; line-height: 1.45; }
.dm-ka-mapa-adres strong { color: #242424; }
.dm-ka-sekcja a.dm-ka-mapa-przycisk { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 0 24px; border-radius: 35px; background: #000; color: #fff; font-size: 15px; }
.dm-ka-sekcja a.dm-ka-mapa-przycisk:hover { background: #242424; color: #fff; }

/* ── 4. PAS B2B ────────────────────────────────────────────────── */
.dm-ka-b2b-ramka { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 600px); gap: 64px; align-items: center; padding: 56px 64px; border-radius: 16px; background: #242424; }
.dm-ka-b2b-tekst { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.dm-ka-sekcja .dm-ka-b2b-ramka h2 { color: #fff; }
.dm-ka-sekcja .dm-ka-b2b-ramka p { color: rgba(255, 255, 255, .8); font-size: 17px; }
.dm-ka-sekcja .dm-ka-b2b-ramka p.dm-ka-etykieta { color: #c2d197; font-size:15px; line-height: 1.4; }
.dm-ka-sekcja .dm-ka-b2b-tekst .wp-block-buttons { margin-top: 8px; }
.dm-ka-b2b-ramka { --wd-otl-color: #c2d197; }
/* EN/ES: pas bez listy (strona współpracy jest tylko po polsku) — jedna kolumna */
.dm-ka-b2b-ramka.dm-ka-b2b-bez-listy { grid-template-columns: minmax(0, 1fr); }

.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link { padding: 0 28px; border-color: #fff; background: #fff; color: #242424; }
.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link::after { width: 18px; height: 18px; }
.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link:hover,
.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link:focus { border-color: #c2d197; background: #c2d197; color: #242424; }

.dm-ka-sekcja .dm-ka-b2b-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.dm-ka-sekcja .dm-ka-b2b-lista li { display: flex; flex-direction: column; gap: 12px; padding: 24px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 10px; color: #fff; font-size: 16px; line-height: 1.5; }
.dm-ka-b2b-lista li::before { content: ""; width: 32px; height: 32px; border-radius: 50%; background: #c2d197 var(--dm-ka-ik-ptaszek-cienki) center / 18px no-repeat; }

/* ── ≤ 1024 px ─────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.dm-ka-sekcja,
	.dm-ka-sekcja.dm-ka-adres { padding: 72px 0; }
	.dm-ka-sekcja.dm-ka-hero { padding-bottom: 64px; }
	.dm-ka-sekcja.dm-ka-kontakt { padding: 0 0 72px; }
	.dm-ka-sekcja.dm-ka-b2b { padding-bottom: 32px; }
	.dm-ka-sekcja h1 { font-size: 44px; }
	.dm-ka-sekcja h2 { font-size: 32px; }

	.dm-ka-hero-naglowek { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.dm-ka-sekcja p.dm-ka-godziny { justify-self: start; }

	/* karty jedna pod drugą, przyciski obok siebie */
	.dm-ka-karty { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.dm-ka-sekcja .dm-ka-karta .wp-block-buttons { flex-direction: row; flex-wrap: wrap; }
	.dm-ka-sekcja .dm-ka-karta .wp-block-button { flex: 1 1 240px; width: auto; }

	/* kafelki tematów nad formularzem */
	.dm-ka-uklad { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.dm-ka-tematy-lista { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: auto; }
	.dm-ka-sekcja .dm-ka-temat { min-height: 56px; }

	.dm-ka-sekcja.dm-ka-adres { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.dm-ka-mapa { height: 380px; }

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

/* ── ≤ 768 px ──────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.dm-ka-sekcja,
	.dm-ka-sekcja.dm-ka-adres { gap: 24px; padding: 56px 0; scroll-margin-top: 60px; }
	.dm-ka-sekcja.dm-ka-hero { padding-bottom: 56px; }
	.dm-ka-sekcja.dm-ka-kontakt { gap: 24px; padding: 0 0 56px; }
	.dm-ka-sekcja.dm-ka-b2b { padding-bottom: 16px; }
	.dm-ka-sekcja h1 { font-size: 38px; }
	.dm-ka-sekcja h2 { font-size: 30px; }
	.dm-ka-sekcja h3 { font-size: 24px; }
	.dm-ka-sekcja p.dm-ka-lead { font-size: 17px; }

	.dm-ka-karta { padding: 24px; }
	.dm-ka-wydruk { flex-wrap: wrap; align-items: flex-start; padding: 14px 20px; }
	.dm-ka-sekcja p.dm-ka-wydruk-tekst { flex: 1 1 200px; }
	.dm-ka-sekcja p.dm-ka-link-strzalka { margin-left: 38px; }

	.dm-ka-tematy-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	/* nieparzysta liczba kafelków: ostatni na całą szerokość */
	.dm-ka-sekcja .dm-ka-temat:last-child { grid-column: 1 / -1; }

	.dm-ka-karta-formularza { padding: 28px 24px; scroll-margin-top: 76px; }
	.dm-ka-wybrany { flex-wrap: wrap; }
	.dm-ka-pola { grid-template-columns: minmax(0, 1fr); }
	.dm-ka-wysylka { flex-direction: column; align-items: stretch; }
	.dm-ka-sekcja .dm-ka-wyslij { width: 100%; }

	.dm-ka-mapa { height: 340px; }
	.dm-ka-b2b-ramka { padding: 40px 28px; }
}

/* ── ≤ 480 px ──────────────────────────────────────────────────── */
@media (max-width: 480px) {
	.dm-ka-sekcja,
	.dm-ka-sekcja.dm-ka-adres { padding: 48px 0; }
	.dm-ka-sekcja.dm-ka-hero { gap: 20px; padding-bottom: 48px; }
	.dm-ka-sekcja.dm-ka-kontakt { padding: 0 0 48px; }
	.dm-ka-sekcja.dm-ka-b2b { padding-bottom: 8px; }
	.dm-ka-sekcja h1 { font-size: 36px; }
	.dm-ka-sekcja h2 { font-size: 26px; }
	.dm-ka-sekcja .dm-ka-karta h2 { font-size: 22px; }
	.dm-ka-sekcja h3 { font-size: 22px; }
	.dm-ka-sekcja p.dm-ka-lead { font-size: 16px; }

	.dm-ka-sekcja p.dm-ka-godziny { align-items: flex-start; padding: 12px 16px; border-radius: 16px; font-size:15px; }
	.dm-ka-karta { gap: 16px; padding: 20px; }
	.dm-ka-sekcja .dm-ka-karta h2 + p { margin-top: -8px; }
	.dm-ka-sekcja .dm-ka-karta .wp-block-buttons { padding-top: 16px; }
	.dm-ka-sekcja .dm-ka-karta .wp-block-button { flex-basis: 100%; }
	.dm-ka-wydruk { gap: 8px 12px; padding: 12px 16px; }
	.dm-ka-sekcja p.dm-ka-link-strzalka { margin-left: 34px; }

	.dm-ka-tematy-lista { gap: 6px; }
	.dm-ka-sekcja .dm-ka-temat { gap: 8px; padding: 8px 10px; font-size:15px; }
	.dm-ka-temat svg { width: 18px; height: 18px; }
	/* zaznaczenie widać po ciemnym tle kafelka; kółko z ptaszkiem zabiera miejsce na nazwę */
	.dm-ka-temat-znak { display: none; }

	.dm-ka-karta-formularza { padding: 24px 16px; }
	.dm-ka-formularz { --dm-ka-odstep: 18px; }

	.dm-ka-dane { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 16px; }
	/* wąsko: pasek z adresem pod rysunkiem, żeby nie zasłaniał znacznika */
	.dm-ka-mapa { height: auto; }
	.dm-ka-mapa-rysunek { height: 220px; }
	.dm-ka-mapa-pasek { position: static; flex-direction: column; align-items: stretch; padding: 16px; border-top: 1px solid #e5e7eb; border-radius: 0; box-shadow: none; }
	.dm-ka-sekcja a.dm-ka-mapa-przycisk { width: 100%; }

	.dm-ka-b2b-ramka { gap: 28px; padding: 32px 20px; }
	.dm-ka-sekcja .dm-ka-b2b-ramka .wp-block-buttons,
	.dm-ka-sekcja .dm-ka-b2b-ramka .wp-block-button,
	.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link { width: 100%; }
	.dm-ka-sekcja .dm-ka-btn-bialy .wp-block-button__link { padding: 12px 20px; }
	.dm-ka-sekcja .dm-ka-b2b-lista { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.dm-ka-sekcja .dm-ka-b2b-lista li { flex-direction: row; align-items: center; gap: 14px; padding: 16px; }
	.dm-ka-b2b-lista li::before { flex: none; }
}

@media (prefers-reduced-motion: reduce) {
	.dm-ka-sekcja .dm-ka-temat,
	.dm-ka-sekcja .dm-ka-pole :is(input, textarea) { transition: none; }
}
