/*
 * NestorMedica – górny pasek (kontakt, wybór języka) i menu główne z panelami.
 * Kolory i kroje z theme.json motywu (zmienne --wp--preset--*), złoto: --nm-zloto (style.css motywu).
 */

/* Górny pasek nad nagłówkiem: przewija się razem ze stroną; rzuca cień na srebrny pasek nagłówka */
.nm-gora { position: relative; z-index: 101; background: linear-gradient(180deg, #0e2a3b 0%, var(--wp--preset--color--overlay, #0b2230) 100%); color: #cfd8de; font-size: 0.875rem; box-shadow: 0 4px 10px -4px rgb(0 0 0 / 0.5); }
.nm-gora__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.25rem 1.5rem; min-height: 2.375rem; padding-block: 0.25rem; }
.nm-gora p { margin: 0; }
.nm-gora__kontakt { display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem 1.25rem; }
.nm-gora__kontakt a { display: inline-flex; align-items: center; gap: 0.5rem; color: #fff; font-weight: 600; text-decoration: none; }
.nm-gora__kontakt a .nm-i { width: 1.125rem; height: 1.125rem; color: #e2b54a; }
.nm-gora__kontakt a.nm-gora__liczba { color: #cfd8de; font-weight: 400; }
.nm-gora__kontakt a:hover { color: #f0cf72; text-decoration: underline; text-underline-offset: 0.2em; }
.nm-gora__liczba { padding-left: 1.25rem; box-shadow: inset 1px 0 0 rgb(255 255 255 / 0.18); }
.nm-gora__liczba b { color: #f0cf72; font-weight: 700; }
/* Prawa strona paska: ikony profili społecznościowych obok wyboru języka */
.nm-gora__prawa { display: flex; align-items: center; gap: 0.75rem; }
.nm-gora__przycisk { display: inline-grid; place-items: center; min-height: 1.875rem; padding: 0 0.75rem; border-radius: var(--wp--custom--radius--s, 4px); box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.35); color: #fff; font-weight: 600; text-decoration: none; }
.nm-gora__przycisk:hover { box-shadow: inset 0 0 0 1px #e2b54a; color: #f0cf72; }
.nm-social { display: flex; gap: 0.25rem; margin: 0; padding: 0; list-style: none; }
.nm-social a, .nm-social .is-wkrotce { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; color: #cfd8de; transition: color 160ms ease, background-color 160ms ease; }
.nm-social .nm-i { width: 1.125rem; height: 1.125rem; }
.nm-social a:hover { background: rgb(255 255 255 / 0.12); color: #f0cf72; }
.nm-social .is-wkrotce { opacity: 0.7; cursor: default; }
.nm-gora .nm-social--gora { padding-right: 0.75rem; box-shadow: inset -1px 0 0 rgb(255 255 255 / 0.18); }
/* Pasek ładuje się na każdej stronie, także bez arkusza katalogu – stąd własne szerokość i tekst tylko dla czytników */
.nm-gora .nm-szer { width: 100%; max-width: calc(var(--wp--style--global--wide-size, 1440px) + var(--wp--style--root--padding-left, 1rem) + var(--wp--style--root--padding-right, 1rem)); margin-inline: auto; padding-inline: var(--wp--style--root--padding-left, 1rem) var(--wp--style--root--padding-right, 1rem); box-sizing: border-box; }
.nm-gora .nm-sr, .nm-menu .nm-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* Podstawy ikon i kropek rodzajów (jak w arkuszu katalogu) – menu jest też na stronach bez katalogu; :where nie podnosi wagi */
:where(.nm-gora, .nm-menu) .nm-i { width: 1.25em; height: 1.25em; flex: none; vertical-align: -0.25em; }
:where(.nm-menu) .nm-type { display: inline-flex; align-items: center; gap: 0.5rem; }
:where(.nm-menu) .nm-type::before { content: ""; width: 0.625rem; height: 0.625rem; flex: none; border-radius: 50%; background: var(--nm-typ); }
:where(.nm-menu) [data-typ] { --nm-typ: var(--wp--custom--typ--prywatny, #12394f); }
:where(.nm-menu) [data-typ="dps"] { --nm-typ: var(--wp--custom--typ--dps, #1f6f78); }
:where(.nm-menu) [data-typ="zol"] { --nm-typ: var(--wp--custom--typ--zol, #6e4a6b); }
:where(.nm-menu) [data-typ="mieszkania"] { --nm-typ: var(--wp--custom--typ--mieszkania, #2d6a4f); }
:where(.nm-menu) [data-typ="dzienny"] { --nm-typ: var(--wp--custom--typ--dzienny, #4a4e54); }
:where(.nm-menu) [data-typ="hospicjum"] { --nm-typ: var(--wp--custom--typ--hospicjum, #8e3b4e); }
:where(.nm-menu) [data-typ="sanatorium"] { --nm-typ: var(--wp--custom--typ--sanatorium, #2c6493); }
:where(.nm-menu) [data-typ="turnus"] { --nm-typ: var(--wp--custom--typ--turnus, #8a5524); }
:where(.nm-menu) [data-typ="opieka"] { --nm-typ: var(--wp--custom--typ--opieka, #5a4a9c); }

/* Wybór języka: PL – strona, EN i DE – tłumaczenie automatyczne; wybrany język ze złotą kreską */
.nm-jezyki ul { display: flex; gap: 0.125rem; margin: 0; padding: 0; list-style: none; }
.nm-jezyki button { display: inline-grid; place-items: center; min-width: 2.25rem; min-height: 1.875rem; padding: 0 0.375rem; border: 0; border-radius: var(--wp--custom--radius--s, 4px); background: none; color: rgb(255 255 255 / 0.72); font: 600 0.875rem/1 var(--wp--preset--font-family--heading); letter-spacing: 0.06em; cursor: pointer; }
.nm-jezyki button:hover { background: rgb(255 255 255 / 0.1); color: #fff; }
.nm-jezyki button[aria-pressed="true"] { color: #fff; box-shadow: inset 0 -2px 0 #e2b54a; }
.nm-gora :focus-visible { outline: 3px solid var(--wp--custom--focus--on-dark, #f0c030); outline-offset: 2px; }

/* Tłumaczenie Google: bez paska Google u góry strony, dymków i podświetleń – zostaje nasz przełącznik */
#google_translate_element, iframe.skiptranslate, .goog-te-banner-frame, #goog-gt-tt, .goog-te-balloon-frame, .VIpgJd-ZVi9od-ORHb-OEVmcd, .VIpgJd-ZVi9od-aZ2wEe-wOHMyf, .VIpgJd-ZVi9od-l4eHX-hSRGPd { display: none !important; }
html.nm-tlumaczenie body { top: 0 !important; position: static !important; }
.goog-text-highlight { background: none !important; box-shadow: none !important; }

/* Menu główne (komputer) */
/* Pozycje wyśrodkowane między logo a przyciskami „Logowanie” i „Dodaj obiekt”. Odstępy rosną z szerokością nagłówka
   (--nm-ekran: ekran, ale najwyżej szerokość układu – 1440 px – plus marginesy) */
.nm-menu { --nm-ekran: min(100vw, var(--wp--style--global--wide-size, 1440px) + 5rem); }
.nm-menu__lista { display: flex; align-items: center; justify-content: center; gap: clamp(0.375rem, var(--nm-ekran) * 0.05625 - 75px, 1.5rem); margin: 0; padding: 0; list-style: none; }
.nm-menu__el { position: relative; }
.nm-menu__el--szeroki { position: static; }
/* Pozycje menu jako delikatne przyciski na srebrnym pasku: półprzezroczysta biel i cienka obwódka */
.nm-menu__link { box-sizing: border-box; display: inline-flex; align-items: center; gap: 0.375rem; min-height: 2.5rem; padding: 0.4375rem clamp(0.875rem, var(--nm-ekran) * 0.03125 - 31px, 1.5rem); border: 0; border-radius: 8px; background: rgb(255 255 255 / 0.55); box-shadow: inset 0 0 0 1px rgb(11 34 48 / 0.08), 0 1px 0 rgb(255 255 255 / 0.8); color: var(--wp--preset--color--heading); font: 600 1rem/1 var(--wp--preset--font-family--heading); letter-spacing: 0.03em; text-decoration: none; white-space: nowrap; cursor: pointer; transition: background-color 160ms ease, box-shadow 160ms ease; }
.nm-menu__link > .nm-i { width: 0.85em; height: 0.85em; color: var(--wp--preset--color--accent-dark, #8a5a0e); transition: transform 200ms ease; }
.nm-menu__link:hover, .nm-menu__el.is-otwarte > .nm-menu__link { background: #fff; color: var(--wp--preset--color--heading); box-shadow: inset 0 0 0 1px rgb(11 34 48 / 0.14), 0 4px 10px -6px rgb(11 34 48 / 0.35); }
.nm-menu__el.is-otwarte > .nm-menu__link { box-shadow: inset 0 -2px 0 #d29f2e, inset 0 0 0 1px rgb(11 34 48 / 0.14), 0 4px 10px -6px rgb(11 34 48 / 0.35); }
.nm-menu__el.is-otwarte > .nm-menu__link > .nm-i { transform: rotate(180deg); }
.nm-menu__link:focus-visible { outline: 3px solid var(--wp--custom--focus--color, #12394f); outline-offset: 2px; }
/* Pozycja z panelem: nazwa prowadzi na stronę działu, strzałka obok rozwija panel (mysz – także najechanie) */
.nm-menu__el--szeroki { display: flex; align-items: stretch; }
.nm-menu .nm-menu__link--para { border-radius: 8px 0 0 8px; padding-right: 0.5rem; }
.nm-menu .nm-menu__rozwin { margin-left: 1px; padding-inline: 0.375rem 0.625rem; border-radius: 0 8px 8px 0; }
.nm-menu__el--szeroki:hover > .nm-menu__link { background: #fff; }
.nm-menu__el--dla:hover > .nm-menu__link { background: linear-gradient(180deg, #fffdf6 0%, #f7e7bd 100%); }
/* Ikony przed nazwami pozycji – tylko na szerokich ekranach, gdzie menu ma zapas miejsca */
.nm-menu__ik { display: none; }
.nm-menu__ik .nm-i { width: 1.125em; height: 1.125em; color: #a8761f; }
@media (min-width: 1600px) {
	.nm-menu__ik { display: inline-flex; margin-right: 0.125rem; }
}
/* „Dla placówek” – oferta dla właścicieli, tuż przed „Logowaniem” i „Dodaj obiekt”: ciepła biel ze złotą obwódką */
.nm-menu__el--dla > .nm-menu__link { background: linear-gradient(180deg, rgb(255 252 244 / 0.95) 0%, rgb(248 235 200 / 0.8) 100%); box-shadow: inset 0 0 0 1px rgb(210 159 46 / 0.5), 0 1px 0 rgb(255 255 255 / 0.8); }
.nm-menu__el--dla > .nm-menu__link:hover, .nm-menu__el--dla.is-otwarte > .nm-menu__link { background: linear-gradient(180deg, #fffdf6 0%, #f7e7bd 100%); box-shadow: inset 0 0 0 1px rgb(210 159 46 / 0.7), 0 4px 10px -6px rgb(138 90 14 / 0.45); }
.nm-menu__el--dla.is-otwarte > .nm-menu__link { box-shadow: inset 0 -2px 0 #d29f2e, inset 0 0 0 1px rgb(210 159 46 / 0.7), 0 4px 10px -6px rgb(138 90 14 / 0.45); }

/* Panele: białe, pod paskiem nagłówka na szerokość układu („Domy opieki”, „Poradnik”, „Dla placówek”) */
.nm-menu__panel { position: absolute; z-index: 120; top: calc(100% + 0.625rem); left: 0; width: max-content; min-width: 21rem; max-width: 26rem; padding: 0.5rem; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px rgb(11 34 48 / 0.06), 0 26px 50px -22px rgb(11 34 48 / 0.5); text-align: left; }
.nm-menu__panel[hidden] { display: none; }
/* Szeroki panel: na całą szerokość nagłówka, zawartość w tej samej linii co logo (margines strony albo szerokość
   układu; zmienne marginesu strony są w nagłówku wyzerowane, więc wartość wprost jak w theme.json) */
.nm-menu__panel--szeroki { top: 100%; left: 0; right: 0; width: auto; min-width: 0; max-width: none; padding: clamp(1.25rem, 2vw, 2rem) max(clamp(1rem, 4vw, 2.5rem), calc((100% - var(--wp--style--global--wide-size, 1440px)) / 2)) clamp(1.5rem, 2.5vw, 2.25rem); border-radius: 0 0 14px 14px; }
.nm-menu__panel--szeroki .nm-menu__rodzaje a { padding-left: 0; }
.nm-menu__panel--szeroki .nm-menu__opisy { margin-inline: -0.75rem; }
.nm-menu__siatka { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.6fr) minmax(0, 0.9fr) minmax(0, 1.05fr); gap: clamp(1.25rem, 2.5vw, 2.5rem); }
.nm-menu__siatka.nm-menu__siatka--dla { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 0.9fr); }
.nm-menu__siatka.nm-menu__siatka--poradnik { grid-template-columns: minmax(0, 2.15fr) minmax(0, 1fr) minmax(0, 0.95fr); }
/* Panel „Placówki”: rodzaje w dwóch kolumnach (pobyt stały | pozostałe), województwa w dwóch, miasta – listy podobnej długości;
   pod nimi pasek skrótów (mapa, w pobliżu, różnice, wszystkie placówki) */
.nm-menu__siatka.nm-menu__siatka--placowki { grid-template-columns: minmax(0, 1.9fr) minmax(0, 1.6fr) minmax(0, 0.9fr); }
.nm-menu__rodzaje-kol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(1rem, 2vw, 2rem); align-items: start; }
.nm-menu__rodzaje-kol .nm-menu__grupa:first-child { margin-top: 0; }
.nm-menu__dol { display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem 1.75rem; margin: 1.25rem 0 0; padding: 1rem 0 0; list-style: none; box-shadow: inset 0 1px 0 rgb(11 34 48 / 0.08); }
.nm-menu__dol a { display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.75rem; font-weight: 600; color: var(--wp--preset--color--primary); text-decoration: none; }
.nm-menu__dol a:hover, .nm-menu__dol a:focus-visible { text-decoration: underline; text-decoration-color: var(--wp--preset--color--accent); text-underline-offset: 0.2em; }
.nm-menu__dol .nm-i { width: 1.25rem; height: 1.25rem; color: var(--wp--preset--color--accent-dark); }
.nm-menu__dol-wszystkie { margin-left: auto; }
.nm-menu__dol-wszystkie a { padding: 0.5rem 1rem; border-radius: var(--wp--custom--radius--button, 8px); background: var(--wp--preset--color--primary); color: #fff; }
.nm-menu__dol-wszystkie a:hover, .nm-menu__dol-wszystkie a:focus-visible { background: var(--wp--preset--color--primary-dark); text-decoration: none; }
.nm-menu__dol-wszystkie .nm-i { color: #f0cf72; }
.nm-menu__tytul { margin: 0 0 0.625rem; font: 700 0.9375rem/1.2 var(--wp--preset--font-family--heading); letter-spacing: 0.02em; color: var(--wp--preset--color--muted); }
.nm-menu__rodzaje, .nm-menu__woj, .nm-menu__miasta, .nm-menu__opisy { margin: 0; padding: 0; list-style: none; }
/* Grupy rodzajów (pobyt stały, czasowy, w dzień, w domu) – mały podpis nad listą, gdy grup z placówkami jest kilka */
.nm-menu__grupa { margin: 0.75rem 0 0.125rem; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.nm-menu__tytul + .nm-menu__grupa { margin-top: 0; }
/* Rodzaj jeszcze bez wpisów – zamiast liczby „wkrótce” */
.nm-menu__wkrotce { font-size: 0.8125rem; font-weight: 500; font-style: italic; color: var(--wp--preset--color--muted); }
.nm-menu__rodzaje a, .nm-menu__woj a, .nm-menu__miasta a { display: flex; justify-content: space-between; align-items: center; gap: 0.75rem; border-radius: var(--wp--custom--radius--m, 6px); color: var(--wp--preset--color--heading); text-decoration: none; }
.nm-menu__rodzaje a { padding: 0.5rem 0.625rem; font-weight: 600; }
.nm-menu__rodzaje .nm-type { font-size: 1rem; font-weight: 600; color: var(--wp--preset--color--heading); }
.nm-menu__woj { columns: 2; column-gap: 1.25rem; }
.nm-menu__woj li { break-inside: avoid; }
.nm-menu__woj a, .nm-menu__miasta a { padding: 0.3125rem 0.5rem; font-size: 0.9375rem; }
.nm-menu small { font: 700 0.9375rem/1 var(--wp--preset--font-family--heading); color: var(--wp--preset--color--muted); font-variant-numeric: tabular-nums; }
.nm-menu__rodzaje a:hover, .nm-menu__woj a:hover, .nm-menu__miasta a:hover, .nm-menu__opisy a:hover { background: var(--wp--preset--color--base-2); }
.nm-menu__wiecej { display: inline-block; margin: 0.5rem 0.625rem 0; font-weight: 600; color: var(--wp--preset--color--primary); }

/* Karta w panelu: zdjęcie pod granatem, złoty przycisk mapy i „W pobliżu mnie” */
.nm-menu__karta { position: relative; isolation: isolate; display: grid; align-content: end; gap: 0.75rem; min-height: 15rem; padding: 1.5rem; overflow: hidden; border-radius: 12px; background: var(--wp--preset--color--overlay, #0b2230) url("../img/tlo-naglowka-800.webp") center / cover; color: #e2e8ec; }
.nm-menu__karta::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgb(11 34 48 / 0.45) 0%, rgb(11 34 48 / 0.88) 70%); }
.nm-menu__karta p { margin: 0; }
.nm-menu__karta-tytul { font: 600 1.375rem/1.1 var(--wp--preset--font-family--heading); color: #fff; }
.nm-menu__karta .nm-btn--zloty { box-sizing: border-box; display: flex; align-items: center; justify-content: center; gap: 0.5rem; min-height: 2.875rem; padding: 0.625rem 1.125rem; border: 0; border-radius: var(--wp--custom--radius--button, 8px); font: 700 1.0625rem/1.1 var(--wp--preset--font-family--heading); letter-spacing: 0.01em; text-decoration: none; white-space: nowrap; cursor: pointer; background: var(--nm-zloto, var(--wp--preset--color--accent)); background-size: 220% 100%; background-position: 0 0; color: var(--wp--preset--color--on-accent, #1d1f21); transition: background-position 500ms ease; }
.nm-btn--zloty:hover { background-position: 100% 0; color: var(--wp--preset--color--on-accent, #1d1f21); }
.nm-btn--zloty .nm-i { width: 1.15em; height: 1.15em; }
.nm-menu__blisko { display: inline-flex; align-items: center; gap: 0.5rem; color: #fff; font-weight: 600; }
.nm-menu__blisko:hover { color: #f0cf72; }
/* Karta „Dla placówek”: ten sam widok z drona w innym kadrze, adres e-mail zamiast „W pobliżu mnie” */
.nm-menu__karta--dla { background-position: 30% 75%; }
.nm-menu__mail { font-weight: 400; text-decoration: underline; text-decoration-color: rgb(255 255 255 / 0.4); text-underline-offset: 0.2em; }

/* Panel „Poradnik”: działy w dwóch kolumnach (ikona w złotym kółku, nazwa, liczba artykułów i zakres),
   obok „Na początek” – najczęściej potrzebne artykuły – i karta z najnowszym artykułem na jego zdjęciu */
.nm-menu__opisy--dzialy { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 0.5rem; }
.nm-menu__kol--start { display: grid; align-content: start; gap: 0.25rem; padding-left: clamp(1rem, 2vw, 1.75rem); box-shadow: inset 1px 0 0 rgb(11 34 48 / 0.08); }
.nm-menu__artykuly { margin: 0 0 0.5rem; padding: 0; list-style: none; }
.nm-menu__artykuly li + li { border-top: 1px solid rgb(11 34 48 / 0.07); }
.nm-menu__artykuly a { display: block; padding: 0.5625rem 0; color: var(--wp--preset--color--heading); font-weight: 600; line-height: 1.35; text-decoration: none; }
.nm-menu__artykuly a:hover { color: var(--wp--preset--color--primary); text-decoration: underline; text-underline-offset: 0.2em; }
.nm-menu__skrot { display: inline-flex; align-items: center; gap: 0.375rem; justify-self: start; margin-top: 0.125rem; color: var(--wp--preset--color--accent-dark, #8a5a0e); font: 700 0.9375rem/1.3 var(--wp--preset--font-family--heading); letter-spacing: 0.02em; text-decoration: none; }
.nm-menu__skrot .nm-i { width: 1em; height: 1em; transition: transform 160ms ease; }
.nm-menu__skrot:hover { text-decoration: underline; text-underline-offset: 0.2em; }
.nm-menu__skrot:hover .nm-i { transform: translateX(3px); }
.nm-menu__karta-zdjecie { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.nm-menu__znacznik { color: #f0cf72; font: 600 0.9375rem/1.2 var(--wp--preset--font-family--heading); letter-spacing: 0.03em; }
.nm-menu__karta-tytul a { color: #fff; text-decoration: none; }
.nm-menu__karta-tytul a:hover { text-decoration: underline; text-underline-offset: 0.15em; }

/* Listy z opisem (Poradnik, Dla placówek): ikona w złotym kółku, tytuł i jedno zdanie */
.nm-menu__opisy a { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; align-items: center; padding: 0.625rem 0.75rem; border-radius: var(--wp--custom--radius--m, 6px); color: var(--wp--preset--color--heading); text-decoration: none; }
.nm-menu__opisy a > span { display: grid; gap: 0.125rem; grid-column: 2; }
.nm-menu__opisy a > span:first-child { grid-column: 1 / -1; }
.nm-menu__opisy b { font: 600 1rem/1.2 var(--wp--preset--font-family--heading); }
.nm-menu__opisy span small { font: 400 0.875rem/1.35 var(--wp--preset--font-family--body); color: var(--wp--preset--color--muted); }
.nm-menu__opisy .nm-i { grid-column: 1; width: 2.25rem; height: 2.25rem; padding: 0.5rem; border-radius: 50%; background: var(--nm-zloto, var(--wp--preset--color--accent)); color: var(--wp--preset--color--on-accent, #1d1f21); }

@media (max-width: 1300px) {
	.nm-menu__link { padding-inline: 0.625rem; font-size: 0.9375rem; }
	.nm-menu__siatka { grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr) minmax(0, 1fr); }
	.nm-menu__siatka > .nm-menu__kol:nth-child(3) { display: none; }
	.nm-menu__siatka.nm-menu__siatka--placowki { grid-template-columns: minmax(0, 1.9fr) minmax(0, 1.6fr); }
}

/* Menu w szufladzie (telefon): rozwijane sekcje na granacie */
.nm-menu--szuflada { display: grid; }
.nm-menu--szuflada .nm-menu__sekcja { box-shadow: inset 0 -1px 0 rgb(255 255 255 / 0.12); }
.nm-menu--szuflada summary, .nm-menu--szuflada > .nm-menu__link { display: flex; justify-content: space-between; align-items: center; min-height: 3.5rem; padding: 0.5rem 0; color: #fff; font: 600 1.5rem/1.1 var(--wp--preset--font-family--heading); text-decoration: none; cursor: pointer; list-style: none; }
.nm-menu--szuflada > .nm-menu__link, .nm-menu--szuflada > .nm-menu__link:hover { border-radius: 0; background: none; box-shadow: inset 0 -1px 0 rgb(255 255 255 / 0.12); letter-spacing: 0; }
.nm-menu--szuflada summary::-webkit-details-marker { display: none; }
.nm-menu--szuflada summary .nm-i { width: 1.25rem; height: 1.25rem; color: #e2b54a; transition: transform 200ms ease; }
.nm-menu--szuflada details[open] summary .nm-i { transform: rotate(180deg); }
.nm-menu--szuflada details > :not(summary) { margin-bottom: 1rem; }
.nm-menu--szuflada .nm-menu__tytul { margin-top: 0.5rem; color: rgb(255 255 255 / 0.6); }
.nm-menu--szuflada .nm-menu__grupa { color: rgb(255 255 255 / 0.7); }
.nm-menu--szuflada a { color: #fff; }
.nm-menu--szuflada .nm-menu__rodzaje a, .nm-menu--szuflada .nm-menu__woj a { padding-inline: 0; }
.nm-menu--szuflada .nm-type, .nm-menu--szuflada small, .nm-menu--szuflada .nm-menu__opisy span small { color: rgb(255 255 255 / 0.75); }
.nm-menu--szuflada .nm-menu__rodzaje .nm-type { color: #fff; font-size: 1.125rem; }
.nm-menu--szuflada .nm-type::before { box-shadow: 0 0 0 2px rgb(255 255 255 / 0.8); }
.nm-menu--szuflada .nm-menu__rodzaje a:hover, .nm-menu--szuflada .nm-menu__woj a:hover, .nm-menu--szuflada .nm-menu__opisy a:hover { background: rgb(255 255 255 / 0.08); }
.nm-menu--szuflada .nm-menu__opisy a { padding-inline: 0; }
.nm-menu--szuflada :focus-visible { outline: 3px solid var(--wp--custom--focus--on-dark, #f0c030); outline-offset: 2px; }
/* Szuflada: wyszukiwanie miejscowości u góry, przyciski konta pod sekcjami, na dole kontakt, profile i języki */
.nm-menu__szukaj { display: flex; align-items: stretch; margin: 0 0 0.75rem; border-radius: var(--wp--custom--radius--button, 8px); background: #fff; box-shadow: 0 1px 2px rgb(0 0 0 / 0.25); }
.nm-menu__szukaj input { flex: 1; min-width: 0; min-height: 3.25rem; padding: 0 1rem; border: 0; border-radius: var(--wp--custom--radius--button, 8px) 0 0 var(--wp--custom--radius--button, 8px); background: none; color: var(--wp--preset--color--heading); font: inherit; font-size: 1.0625rem; }
.nm-menu__szukaj input::placeholder { color: var(--wp--preset--color--muted); }
.nm-menu__szukaj button { display: grid; place-items: center; width: 3.25rem; border: 0; border-radius: 0 var(--wp--custom--radius--button, 8px) var(--wp--custom--radius--button, 8px) 0; background: var(--nm-zloto, var(--wp--preset--color--accent)); color: var(--wp--preset--color--on-accent, #1d1f21); cursor: pointer; }
.nm-menu__szukaj button .nm-i { width: 1.375rem; height: 1.375rem; }
.nm-menu__akcje { display: grid; gap: 0.625rem; margin-top: 1.5rem; }
.nm-menu__akcje .nm-btn { box-sizing: border-box; display: flex; align-items: center; justify-content: center; gap: 0.5rem; min-height: 3.25rem; padding: 0.625rem 1.125rem; border-radius: var(--wp--custom--radius--button, 8px); font: 700 1.0625rem/1.1 var(--wp--preset--font-family--heading); text-decoration: none; }
.nm-menu__akcje .nm-btn--zloty { border: 0; background: var(--nm-zloto, var(--wp--preset--color--accent)); background-size: 220% 100%; color: var(--wp--preset--color--on-accent, #1d1f21); }
.nm-menu__konto { border: 0; background: none; box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.45); color: #fff; }
.nm-menu__konto:hover { background: rgb(255 255 255 / 0.1); color: #fff; }
.nm-menu__akcje .nm-i { width: 1.25rem; height: 1.25rem; }
.nm-menu__stopka { display: grid; gap: 1rem; margin-top: 1.75rem; padding-top: 1.25rem; box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.14); }
.nm-menu__kontakt { display: grid; gap: 0.25rem; margin: 0; }
.nm-menu__kontakt a { display: inline-flex; align-items: center; gap: 0.625rem; min-height: 2.75rem; color: #fff; font-size: 1.0625rem; font-weight: 600; text-decoration: none; }
.nm-menu__kontakt .nm-i { width: 1.25rem; height: 1.25rem; color: #f0cf72; }
.nm-menu__stopka-rzad { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 0.75rem; }
.nm-social--szuflada a, .nm-social--szuflada .is-wkrotce { width: 2.75rem; height: 2.75rem; background: rgb(255 255 255 / 0.1); color: #fff; }
.nm-social--szuflada .nm-i { width: 1.25rem; height: 1.25rem; }
.nm-jezyki--szuflada button { min-width: 2.75rem; min-height: 2.75rem; font-size: 0.9375rem; }

/* Telefon: bez górnego paska – kontakt, profile i języki są w menu (szuflada) */
@media (max-width: 781px) {
	.nm-gora { display: none; }
}

/* Węższe ekrany komputera (do 1100 px jest menu mobilne): znika „Kontakt” (e-mail jest w górnym pasku), przyciski
   nagłówka są węższe (style.css motywu) – nic się nie łamie */
@media (max-width: 1160px) {
	.nm-menu__el--kontakt { display: none; }
}

/* „Kalkulator kosztów” na węższych ekranach komputera jako „Kalkulator” – menu i przyciski mieszczą się w jednym rzędzie */
@media (max-width: 1300px) {
	.nm-menu__dluzej { display: none; }
}

/* Porównanie placówek: link w menu zawsze widoczny, licznik – gdy coś jest w schowku (assets/js/schowek.js) */
.nm-menu__el--porownaj[hidden], .nm-menu__porownaj[hidden], .nm-menu__licznik[hidden] { display: none !important; }
.nm-menu__licznik { display: inline-grid; place-items: center; min-width: 1.375rem; height: 1.375rem; padding: 0 0.375rem; border-radius: 999px; background: var(--nm-zloto, var(--wp--preset--color--accent)); color: var(--wp--preset--color--heading); font: 700 0.8125rem/1 var(--wp--preset--font-family--heading); letter-spacing: 0; }
.nm-menu--szuflada > .nm-menu__porownaj { justify-content: flex-start; gap: 0.75rem; }
/* Przycisk menu na telefonie: liczba placówek w schowku */
.pm-menu-toggle { position: relative; }
.nm-schowek-znak { position: absolute; top: -0.25rem; right: -0.375rem; display: grid; place-items: center; min-width: 1.25rem; height: 1.25rem; padding: 0 0.3125rem; border-radius: 999px; background: var(--nm-zloto, var(--wp--preset--color--accent)); color: var(--wp--preset--color--heading); font: 700 0.75rem/1 var(--wp--preset--font-family--heading); pointer-events: none; }
.nm-schowek-znak[hidden] { display: none; }
