/* =========================================================================
   Motyw 1012 = kopia 1010 przerobiona na wariant A "Fachowiec" (2026-10-19,
   makieta testy/napedownia_wyglad, profil UI/UX Pro Max "Home Services"):
   niebieski #1e40af, pomaranczowe CTA #c2410c, Lexend + Source Sans 3.
   Ladowany PO bootstrap.min.css i style.new.css, wiec nadpisuje stary wyglad.
   ========================================================================= */

:root{
	--paper:#ffffff;
	--surface:#f5f7fb;
	--surface-2:#e8edf6;
	--line:#dbe2ee;
	--ink:#14213d;
	--ink-soft:#4f5b73;
	--ink-faint:#8a94a8;
	--accent:#1e40af;
	--accent-dark:#1e3a8a;
	--accent-soft:#e6edfb;
	--deal:#c2410c;
	--deal-dark:#9a3412;
	--deal-soft:#fdebdd;
	--danger:#e5484d;
	--good:#15803d;
	--good-soft:#e5f7ee;
	--font-display:'Lexend',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
	--font-body:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
	--radius-s:9px;
	--radius-m:16px;
	--radius-l:24px;
	--shadow-card:0 1px 2px rgba(20,18,15,.05), 0 10px 28px -14px rgba(20,18,15,.16);
	--shadow-pop:0 14px 42px -10px rgba(20,18,15,.28);
	--wrap-max:1480px;
	--wrap-pad:clamp(16px,3.4vw,48px);
}

/* ---------- baza ---------- */
html{ -webkit-text-size-adjust:100%; }
body.nd{
	margin:0; padding:0 !important;
	background:var(--paper); color:var(--ink);
	font-family:var(--font-body) !important;
	font-size:15px; line-height:1.55;
	-webkit-font-smoothing:antialiased;
	overflow-x:hidden;
}
.nd a{ color:inherit; text-decoration:none; }
.nd a:hover, .nd a:focus{ text-decoration:none; }
.nd .nd-main a:not(.nd-btn):not(.button-b):not(.button-a3):not(.add-to-cart):hover{ color:var(--accent); }
.nd h1, .nd h2, .nd h3, .nd h4{ font-family:var(--font-display); font-weight:800; letter-spacing:-.01em; color:var(--ink); }
.nd :focus-visible{ outline:3px solid var(--accent); outline-offset:2px; }
.nd img{ max-width:100%; }
.nd-ico{ width:20px; height:20px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; vertical-align:middle; }
.nd hr{ border-color:var(--line); }

.nd-container, .nd .nd-main.container{
	width:100%; max-width:var(--wrap-max); margin-inline:auto; padding-inline:var(--wrap-pad);
}
.nd .nd-main.container{ padding-top:8px; padding-bottom:40px; min-height:40vh; }
.nd .nd-main.container::before, .nd .nd-main.container::after{ display:none; }
.nd-home .nd-main.container{ min-height:0; padding:0; }
.nd-section{ padding-block:clamp(40px,5.4vw,80px); }
.nd-section--tight{ padding-block:clamp(24px,3.4vw,44px); }
.nd-section--surface{ background:var(--surface); }
.nd-eyebrow{ display:inline-flex; align-items:center; gap:7px; font-family:var(--font-display); font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--accent); font-weight:800; }
.nd-eyebrow::before{ content:''; width:16px; height:2.5px; background:var(--accent); border-radius:2px; }
.nd-eyebrow--w{ color:#fff; }
.nd-eyebrow--w::before{ background:#fff; }
.nd-h-section, .nd .nd-h-section{ font-size:clamp(24px,2.5vw,34px); line-height:1.1; font-weight:900; margin:10px 0 0; }
.nd-lead{ font-size:clamp(15px,1.3vw,17px); color:var(--ink-soft); line-height:1.6; margin:10px 0 0; }
.nd-sec-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:clamp(20px,2.6vw,32px); flex-wrap:wrap; }
.nd-sec-head .nd-h-section{ margin-top:10px; }

/* ---------- przyciski ---------- */
.nd-btn, .nd .button-b, .nd .button-a3, .nd input[type=submit].button-b, .nd .btn-primary{
	display:inline-flex; align-items:center; justify-content:center; gap:8px;
	border-radius:12px; padding:12px 22px;
	font-weight:800; font-size:14px; font-family:var(--font-display); letter-spacing:-.01em;
	border:2px solid transparent; cursor:pointer; line-height:1.2; text-decoration:none !important;
	transition:transform .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
	background:var(--accent); color:#fff !important; text-shadow:none; box-shadow:none; height:auto; width:auto;
}
.nd-btn:active, .nd .button-b:active{ transform:scale(.97); }
.nd-btn--primary, .nd .button-b, .nd .button-a3{ background:var(--accent); color:#fff !important; }
.nd-btn--primary:hover, .nd .button-b:hover, .nd .button-a3:hover{ background:var(--accent-dark); color:#fff !important; }
.nd-btn--dark{ background:var(--ink); color:#fff !important; }
.nd-btn--dark:hover{ background:#000; }
.nd-btn--ghost, .nd .button-b.button-gray, .nd .button-gray{ background:transparent; color:var(--ink) !important; border-color:var(--line); }
.nd-btn--ghost:hover, .nd .button-b.button-gray:hover{ border-color:var(--ink); background:transparent; color:var(--ink) !important; }
.nd-btn--outline-w{ background:transparent; color:#fff !important; border-color:rgba(255,255,255,.6); }
.nd-btn--outline-w:hover{ border-color:#fff; }
.nd-btn--sm{ padding:9px 14px; font-size:12.5px; border-radius:10px; }
.nd-btn--block{ width:100%; }
.nd-btn .nd-ico{ width:16px; height:16px; }
.nd-link-arrow{ display:inline-flex; align-items:center; gap:6px; font-weight:800; color:var(--ink); font-size:14px; font-family:var(--font-display); }
.nd-link-arrow .nd-ico{ width:15px; height:15px; stroke:var(--accent); }
.nd-link-arrow--w{ color:#fff; margin-top:12px; }
.nd-link-arrow--w .nd-ico{ stroke:#fff; }

/* ---------- formularze (bootstrap) ---------- */
.nd .form-control, .nd select, .nd textarea, .nd input[type=text], .nd input[type=email], .nd input[type=tel], .nd input[type=password]{
	border:1.5px solid var(--line); border-radius:10px; box-shadow:none;
	font-family:var(--font-body); font-size:14.5px; color:var(--ink); background-color:#fff;
}
.nd .form-control{ height:auto; min-height:44px; padding:10px 14px; }
.nd .form-control:focus, .nd select:focus, .nd textarea:focus, .nd input:focus{ border-color:var(--ink); box-shadow:none; outline:none; }
.nd label{ font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink-soft); }
.nd input[type=checkbox], .nd input[type=radio]{ accent-color:var(--accent); }
.nd .input-group-addon{ background:var(--surface); border:1.5px solid var(--line); border-radius:10px; color:var(--ink); }
.nd .input-group .form-control:first-child, .nd .input-group-addon:first-child{ border-top-right-radius:0; border-bottom-right-radius:0; }
.nd .input-group .form-control:last-child, .nd .input-group-addon:last-child{ border-top-left-radius:0; border-bottom-left-radius:0; }
.nd .input-group .form-control:not(:first-child):not(:last-child){ border-radius:0; }
.nd .alert{ border-radius:12px; border:none; font-size:14px; }
.nd .alert-info{ background:var(--accent-soft); color:var(--accent-dark); }
.nd .alert-success{ background:var(--good-soft); color:var(--good); }
.nd .alert-warning{ background:var(--deal-soft); color:var(--deal-dark); }
.nd .alert-danger{ background:#fdecec; color:#b4262b; }
.nd .well, .nd .jumbotron{ background:var(--surface); border:none; border-radius:var(--radius-m); box-shadow:none; }
.nd .table > thead > tr > th, .nd .table > tbody > tr > th, .nd .table > tbody > tr > td{ border-color:var(--line); }
.nd .table-bordered{ border-color:var(--line); }
.nd .badge{ background:var(--accent); font-family:var(--font-display); }

/* ---------- topbar ---------- */
.nd-topbar{ background:var(--ink); color:#fff; font-size:12.5px; font-family:var(--font-display); font-weight:700; }
.nd-topbar .nd-container{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding-block:8px; }
.nd-topbar__left, .nd-topbar__right{ display:flex; gap:20px; flex-wrap:wrap; align-items:center; }
.nd-topbar span, .nd-topbar a{ display:inline-flex; align-items:center; gap:6px; color:#fff; }
.nd-topbar a:hover{ color:#fde3d3; }
.nd-topbar .nd-ico{ width:14px; height:14px; }

/* ---------- naglowek ---------- */
header.nd-site{ position:sticky; top:0; z-index:1030; background:#fff; border-bottom:1px solid var(--line); }
.nd-nav-row{ display:flex; align-items:center; gap:28px; padding-block:12px; }
.nd-brand{ display:flex; align-items:center; gap:11px; flex-shrink:0; }
.nd-logo-badge{ width:42px; height:42px; border-radius:12px; background:var(--ink); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-logo-badge svg{ width:23px; height:23px; }
.nd-brand-word{ font-family:var(--font-display); font-weight:800; font-size:19px; letter-spacing:-.015em; color:var(--ink); white-space:nowrap; }
.nd-brand-chip{ display:inline-block; background:var(--accent); color:#fff; font-size:10.5px; font-weight:800; padding:2px 6px; border-radius:5px; margin-left:3px; vertical-align:3px; letter-spacing:.02em; }
nav.nd-primary{ display:flex; align-items:center; gap:22px; flex:1; }
nav.nd-primary a, .nd-cat-btn{
	font-weight:700; font-size:14px; font-family:var(--font-display); color:var(--ink-soft);
	padding:8px 2px; border:none; border-bottom:3px solid transparent; background:none; cursor:pointer;
	display:inline-flex; align-items:center; gap:5px;
}
nav.nd-primary a:hover, nav.nd-primary a.is-active, .nd-cat-btn:hover, .nd-cat-btn.is-active, .nd-cat-btn[aria-expanded="true"]{ color:var(--ink); border-bottom-color:var(--accent); }
.nd-cat-btn .nd-ico{ width:16px; height:16px; transition:transform .18s ease; }
.nd-cat-btn[aria-expanded="true"] .nd-ico{ transform:rotate(180deg); }
.nd-actions{ display:flex; align-items:center; gap:4px; margin-left:auto; }
.nd-icon-btn{ position:relative; display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; border-radius:12px; background:transparent; border:none; cursor:pointer; color:var(--ink); padding:0 8px; gap:8px; }
.nd-icon-btn:hover{ background:var(--surface); }
.nd-account__txt{ font-family:var(--font-display); font-weight:700; font-size:13px; max-width:140px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nd-cart-link{ display:inline-flex; align-items:center; gap:6px; padding-right:4px; border-radius:12px; }
.nd-cart-link:hover{ background:var(--surface); }
.nd-cart-link:hover .nd-icon-btn{ background:transparent; }
.nd-cart-sum{ font-family:var(--font-display); font-weight:800; font-size:13.5px; white-space:nowrap; }
.nd-cart-count{ position:absolute; top:2px; right:2px; background:var(--accent); color:#fff; font-family:var(--font-display); font-size:10px; font-weight:800; min-width:17px; height:17px; border-radius:999px; display:flex; align-items:center; justify-content:center; padding:0 4px; }
.nd-cart-count.hidden{ display:none !important; }
.nd-hamburger{ display:none; }

/* wyszukiwarka - wysuwany pasek */
.nd-searchbar{ display:none; border-top:1px solid var(--line); background:#fff; }
.nd-searchbar.is-open{ display:block; }
.nd-searchbar .nd-container{ padding-block:14px; }
.nd-searchbar .box-search{ max-width:860px; margin:0 auto; }
.nd-searchbar .search-border{ display:flex; width:100%; border:1.5px solid var(--line); border-radius:14px; overflow:hidden; background:#fff; }
.nd-searchbar .search-border:focus-within{ border-color:var(--ink); }
.nd-searchbar .search-input{ flex:1; border:none !important; border-radius:0 !important; min-height:48px; font-size:15px; }
.nd-searchbar .kf{ width:220px !important; flex:0 0 220px; border:none !important; border-left:1.5px solid var(--line) !important; border-radius:0 !important; min-height:48px; font-size:13px; color:var(--ink-soft); }
.nd-searchbar .input-group-btn{ width:auto; display:flex; }
.nd-searchbar .button-search{ border:none; background:var(--accent); width:56px; min-height:48px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.nd-searchbar .button-search:hover{ background:var(--accent-dark); }
.nd-searchbar .button-search .nd-ico{ width:20px; height:20px; stroke:#fff; stroke-width:2.2; fill:none; }

/* megamenu */
.nd-mega{ position:absolute; top:100%; left:0; right:0; background:#fff; border-bottom:1px solid var(--line); box-shadow:var(--shadow-pop); z-index:39; display:none; }
/* menu Kategorie bez suwaka: ciasniejszy uklad; gdy i tak wyzsze niz ekran - naglowek przestaje byc przyklejony (html.nd-mega-pelne, JS w strona_head.tpl) */
html.nd-mega-pelne header.nd-site{ position:relative; }
.nd-mega.is-open{ display:block; }
.nd-mega__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:18px 26px; padding-block:20px; }
.nd-mega__title{ display:block; font-family:var(--font-display); font-weight:800; font-size:14.5px; color:var(--ink); margin-bottom:6px; padding-bottom:7px; border-bottom:2px solid var(--surface-2); }
.nd-mega__title:hover{ color:var(--accent) !important; }
.nd-mega ul{ margin:0; padding:0; list-style:none; }
.nd-mega li a{ display:block; padding:3px 0; line-height:1.35; font-size:13.5px; color:var(--ink-soft); font-weight:500; }
.nd-mega li a:hover{ color:var(--accent); }
.nd-mega__more{ font-weight:700 !important; color:var(--accent) !important; }
.nd-mega-scrim{ display:none; position:fixed; inset:0; top:auto; height:0; }
.nd-mega-scrim.is-open{ display:block; position:fixed; inset:0; height:auto; background:rgba(10,12,20,.35); z-index:-1; }
.nd-drawer{ display:none; }
.nd-choose #choose-box{ margin:0; }

/* ---------- stopka ---------- */
footer.nd-footer{ background:var(--ink); color:#c7c8cc; padding-block:clamp(40px,5.4vw,68px) 26px; margin-top:0; font-size:14px; }
footer.nd-footer a{ color:#c7c8cc; }
footer.nd-footer a:hover{ color:#fff; text-decoration:underline; }
.nd-foot-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; }
footer.nd-footer h4{ color:#fff; font-size:12.5px; text-transform:uppercase; letter-spacing:.08em; margin:0 0 16px; font-weight:800; }
footer.nd-footer ul{ margin:0; padding:0; list-style:none; }
footer.nd-footer ul li{ margin-bottom:10px; line-height:1.5; }
.nd-foot-brand{ display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.nd-foot-brand .nd-logo-badge{ background:var(--accent); }
.nd-foot-brand .nd-brand-word{ color:#fff; }
.nd-foot-about{ font-size:13.5px; line-height:1.6; max-width:34ch; color:#9a9ba0; }
.nd-foot-menu ul, .nd-foot-menu{ margin:0; padding:0; list-style:none; }
.nd-foot-menu li{ display:block !important; margin:0 0 10px !important; padding:0 !important; float:none !important; border:none !important; background:none !important; }
.nd-foot-menu a{ color:#c7c8cc !important; font-size:14px !important; padding:0 !important; background:none !important; }
.nd-foot-brands{ margin-top:36px; padding-top:24px; border-top:1px solid #2b2c30; }
.nd-foot-brands__list{ display:flex; flex-wrap:wrap; gap:6px 16px; font-size:12.5px; }
.nd-foot-brands__list a{ color:#87888c !important; }
.nd-foot-bottom{ margin-top:32px; padding-top:22px; border-top:1px solid #2b2c30; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; font-size:12.5px; color:#87888c; }
.nd-time{ opacity:.35; margin-left:6px; }
.nd-pay-row{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.nd-pay-chip{ border:1px solid #3a3b40; border-radius:7px; padding:4px 9px; font-family:var(--font-display); font-size:11px; font-weight:700; }
.nd-cookie{ position:fixed; left:16px; right:16px; bottom:16px; z-index:1040; max-width:720px; margin:0 auto; background:#fff; color:var(--ink-soft); border-radius:14px; box-shadow:var(--shadow-pop); padding:14px 18px; font-size:13px; }
.nd-cookie a{ color:var(--accent) !important; font-weight:700; }
.nd-scrollup{ position:fixed; right:18px; bottom:18px; width:44px; height:44px; border-radius:12px; background:var(--ink); color:#fff; display:none; align-items:center; justify-content:center; cursor:pointer; z-index:1000; box-shadow:var(--shadow-pop); }
.nd-scrollup[style*="block"]{ display:flex !important; }
.nd #box-cart .modal-cart{ font-family:var(--font-display); }

/* ---------- banery ---------- */
.nd-banner{ position:relative; border-radius:var(--radius-l); overflow:hidden; color:#fff; display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(20px,2.4vw,32px); min-height:240px; isolation:isolate; }
.nd-banner > img{ position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; z-index:-2; transition:transform .5s ease; }
a.nd-banner:hover > img{ transform:scale(1.035); }
.nd-banner::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,10,12,0) 30%,rgba(8,8,10,.82) 100%); z-index:-1; }
.nd-banner-tag{ align-self:flex-start; background:var(--accent); color:#fff; font-family:var(--font-display); font-size:11.5px; font-weight:800; padding:6px 11px; border-radius:8px; margin-bottom:auto; letter-spacing:.02em; }
.nd-banner-tag--white{ background:#fff; color:var(--ink); }
.nd-banner h3, .nd-banner .nd-banner-h{ font-size:clamp(19px,1.7vw,24px); color:#fff; line-height:1.15; margin:18px 0 0; }
.nd-banner p{ font-size:14px; color:rgba(255,255,255,.84); margin:6px 0 0; max-width:40ch; }
.nd-banner-cta{ margin-top:18px; display:flex; gap:12px; flex-wrap:wrap; }
.nd-home-top{ padding-top:22px; }
.nd-banner-grid{ display:grid; grid-template-columns:repeat(12,1fr); gap:16px; }
.nd-banner-hero{ grid-column:span 7; min-height:clamp(360px,38vw,500px); }
.nd-banner-hero .nd-banner-h{ font-size:clamp(28px,3vw,42px); font-weight:900; max-width:16ch; }
.nd-banner-side{ grid-column:span 5; display:flex; flex-direction:column; gap:16px; }
.nd-banner-side .nd-banner{ flex:1; min-height:180px; }
.nd-tile-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px; }
.nd-tile{ min-height:190px; padding:20px; }
.nd-tile h3{ font-size:16.5px; }
.nd-from{ font-family:var(--font-display); font-size:12px; color:rgba(255,255,255,.85); font-weight:700; margin-top:4px; }
.nd-big-banner{ min-height:clamp(280px,30vw,400px); align-items:flex-start; }
.nd-big-banner::after{ background:linear-gradient(90deg,rgba(8,8,10,.85) 0%,rgba(8,8,10,.55) 45%,rgba(8,8,10,.05) 100%); }
.nd-banner-inner{ max-width:46ch; }
.nd-big-banner h2{ color:#fff; font-size:clamp(26px,3.2vw,42px); font-weight:900; margin:10px 0 0; }
.nd-big-banner .nd-lead{ color:rgba(255,255,255,.86); margin-bottom:18px; }
.nd-trust-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.nd-trust-card{ position:relative; border-radius:var(--radius-m); overflow:hidden; min-height:140px; padding:18px; color:#fff; display:flex; flex-direction:column; justify-content:flex-end; isolation:isolate; }
.nd-trust-card img{ position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; z-index:-2; }
.nd-trust-card::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,10,12,.15),rgba(8,8,10,.86)); z-index:-1; }
.nd-trust-card b{ font-family:var(--font-display); font-size:15px; }
.nd-trust-card span{ font-size:12px; color:rgba(255,255,255,.84); margin-top:2px; }
.nd-brand-strip{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding-block:20px; }
.nd-brand-strip .nd-eyebrow{ margin-right:8px; }
.nd-brand-chip2{ display:inline-flex; align-items:center; gap:6px; border:1.5px solid var(--line); border-radius:10px; padding:8px 16px; font-family:var(--font-display); font-weight:800; font-size:13.5px; color:var(--ink-soft); text-transform:uppercase; }
.nd-brand-chip2:hover{ border-color:var(--ink); color:var(--ink) !important; }
.nd-brand-chip2 small{ font-weight:600; color:var(--ink-faint); text-transform:none; }
.nd-brand-chip2 .nd-ico{ width:15px; height:15px; stroke:var(--accent); }
.nd-cenniki{ padding-block:8px 0; }
.nd-cta-panel{ border-radius:var(--radius-l); background:var(--ink); color:#fff; padding:clamp(28px,4.4vw,52px); display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap; }
.nd-cta-panel .nd-h-section{ color:#fff; margin:0; }
.nd-cta-panel .nd-lead{ color:#c7c8cc; max-width:52ch; }
.nd-promo-row{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:16px; }
.nd-promo-card{ display:flex; gap:16px; align-items:center; padding:16px; }
.nd-promo-card img{ width:110px; height:90px; object-fit:contain; flex-shrink:0; }
.nd-promo-card b{ display:block; font-family:var(--font-display); font-size:15px; }
.nd-promo-card span{ display:block; font-size:13px; color:var(--ink-soft); margin-top:3px; }
.nd-promo-card .nd-link-arrow{ margin-top:8px; font-size:13px; color:var(--ink); }

/* ---------- karta produktu (siatka) ---------- */
.nd-card{ background:var(--paper); border:1px solid var(--line); border-radius:var(--radius-m); box-shadow:var(--shadow-card); }
.nd-grid-products{ display:grid; grid-template-columns:repeat(auto-fill,minmax(236px,1fr)); gap:18px; }
.nd-p-card{ display:flex; flex-direction:column; overflow:hidden; transition:border-color .15s, transform .15s; position:relative; }
.nd-p-card:hover{ border-color:var(--ink); transform:translateY(-2px); }
.nd-p-card__link{ display:flex; flex-direction:column; flex:1; color:var(--ink) !important; }
.nd-p-card__thumb{ position:relative; aspect-ratio:5/4; overflow:hidden; background:#fff; display:flex; align-items:center; justify-content:center; padding:14px; border-bottom:1px solid var(--surface-2); }
.nd-p-card__thumb img{ width:100% !important; height:100% !important; object-fit:contain; }
.nd-p-card__body{ padding:14px 16px 4px; display:flex; flex-direction:column; gap:5px; flex:1; }
.nd-p-card__brand{ font-family:var(--font-display); font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-weight:700; }
.nd-p-card__name{ font-size:14.5px; font-weight:800; line-height:1.3; font-family:var(--font-display); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nd-p-card__desc{ font-size:12.5px; color:var(--ink-soft); line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.nd-p-card__desc ul{ margin:0; padding-left:16px; }
.nd-p-card__price{ margin-top:auto; padding-top:10px; }
.nd-p-card__foot{ display:flex; gap:8px; padding:10px 16px 16px; }

/* ceny (cena.tpl) - wszedzie */
.nd .pr-a, .nd .pr-b{ margin:0; background:none; color:var(--ink); text-align:left; }
.nd .pr-a .dt1:empty, .nd .pr-b .dt1:empty{ display:none; }
.nd .pr-b .dt1, .nd .pr-a .dt1{ height:auto; font-size:12px; color:var(--ink-faint); }
.nd .pr-b .dt1 .txt b{ text-decoration:line-through; font-weight:600; }
.nd .pr-a .ca, .nd .pr-b .ca{
	background:none; color:var(--ink); padding:0; text-align:left;
	font-family:var(--font-display); font-weight:900; font-size:20px; line-height:1.2; font-variant-numeric:tabular-nums;
}
.nd .pr-b .ca{ color:var(--ink); }
.nd .pr-a .ca .vat_text, .nd .pr-a .ca .vat, .nd .pr-b .ca .vat_text, .nd .pr-b .ca .vat{ font-family:var(--font-body); font-weight:500; color:var(--ink-faint); font-size:11px !important; display:block; }
.nd .pr-a .cb, .nd .pr-b .cb{ text-align:left; font-size:12.5px; color:var(--ink-soft); }
.nd .txt-rabat{ position:static; display:inline-flex; width:auto; height:auto; padding:4px 9px; margin:0 0 4px; border-radius:7px; background:var(--deal); font-family:var(--font-display); font-size:12px; font-weight:800; }
.nd .pr-b .rbt, .nd .txt-rabat .rbt{ color:#fff; }
.nd .txt-rabat-box{ position:absolute; top:10px; left:10px; z-index:2; display:flex; flex-direction:column; gap:4px; align-items:flex-start; }
.nd .txt-rabat-text{ background:var(--deal) !important; border:none !important; color:#fff; font-family:var(--font-display); font-size:11px; font-weight:800; letter-spacing:.02em; padding:5px 10px; border-radius:7px; text-transform:none; }
.nd .txt-oryginal{ position:absolute; top:8px; right:8px; z-index:2; }
.nd .txt-oryginal img{ width:44px; height:auto !important; }

/* ---------- okruszki ---------- */
.nd .breadcrumb, .nd-crumb{
	display:flex; flex-wrap:wrap; align-items:center; gap:6px; background:none; border-radius:0;
	padding:14px 0; margin:0 0 6px; font-size:13px; color:var(--ink-faint); font-family:var(--font-display); font-weight:600;
}
.nd .breadcrumb a{ color:var(--ink-faint); }
.nd .breadcrumb a:hover{ color:var(--ink); }
.nd .breadcrumb > span:last-child, .nd .breadcrumb .element:last-child{ color:var(--ink-soft); }
.nd .breadcrumb span.home{ opacity:.6; }
.nd-crumb--light, .nd-crumb--light a, .nd .nd-crumb--light a{ color:rgba(255,255,255,.72) !important; }
.nd-crumb--light span{ color:rgba(255,255,255,.5); }
.nd-crumb--light > *:last-child{ color:#fff !important; }
.nd-crumb--light .breadcrumb{ padding:0; margin:0; color:inherit; }
.nd-kat .nd-main > .nd-cat-layout .breadcrumb, .nd-kat .nd-cat-main > .breadcrumb{ display:none; }

/* ---------- naglowki starych stron ---------- */
.nd h1.title, .nd .nd-main h1{ font-size:clamp(24px,2.5vw,34px); line-height:1.1; font-weight:900; color:var(--ink); margin:6px 0 22px; }
.nd h1.title .arrow, .nd h1.title div.arrow{ display:none; }
.nd .nd-main h2{ font-size:22px; }
.nd .nd-main h3{ font-size:17px; }
.nd .nd-main h4{ font-size:15px; }

/* ---------- KATEGORIA ---------- */
.nd-cat-hero{ position:relative; overflow:hidden; color:#fff; min-height:210px; display:flex; align-items:flex-end; isolation:isolate; }
.nd-cat-hero > img{ position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; z-index:-2; }
.nd-cat-hero::after{ content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,8,10,.88),rgba(8,8,10,.35)); z-index:-1; }
.nd-cat-hero__inner{ padding-block:26px 32px; }
.nd-cat-hero .nd-h-section{ color:#fff; margin:4px 0 0; }
.nd-cat-hero p{ color:rgba(255,255,255,.86); max-width:64ch; margin:8px 0 0; font-size:15px; }
.nd-kat .nd-main.container{ padding-top:28px; }
.nd-cat-layout{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:32px; align-items:start; }
.nd-filters{ position:sticky; top:88px; padding-right:6px; }
/* lista kategorii dluzsza niz ekran: bez suwaka, przewija sie ze strona (klasa z JS w strona_head.tpl, 2026-10-14) */
.nd-filters.nd-filters--dluga{ position:static; }
/* style.new.css: .view-a{background:#fff} - biale tlo pod siatka produktow (widoczne na tle 1011) */
.nd .view-a, .nd #box-product-list{ background:transparent; }
.nd-filters__title{ font-size:12.5px !important; text-transform:uppercase; letter-spacing:.06em; margin:0 0 10px !important; }
.nd-cat-main{ min-width:0; }
.nd-kat .nd-cat-main > h1.title, .nd-kat .nd-cat-main > .row:first-child h1.title{ display:none; }
.nd-kat .nd-cat-main > h1:first-child{ display:none; }

/* drzewo kategorii (#menu_b, generowane w kategorie::pokaz) */
.nd #menu_b{ margin:0; padding:0; background:none; border:none; }
.nd #menu_b ul{ margin:0; padding:0; background:none; }
.nd #menu_b ul li{ margin:0; padding:0; list-style:none; }
.nd #menu_b ul ul{ padding-left:12px; margin:2px 0 6px; border-left:2px solid var(--surface-2); }
.nd #menu_b h2, .nd #menu_b h2.bg_kat_t{ font-size:14px !important; font-family:var(--font-display); font-weight:800; margin:0; padding:9px 0; background:none !important; border-bottom:1px solid var(--surface-2); }
.nd #menu_b h2 a{ color:var(--ink) !important; }
.nd #menu_b .pm, .nd #menu_b .pr{ display:none; }
.nd #menu_b a{ display:block; color:var(--ink-soft) !important; font-size:13.5px; padding:6px 8px; border-radius:8px; line-height:1.35; }
.nd #menu_b li li a:hover{ background:var(--surface); color:var(--ink) !important; }
.nd #menu_b a[style*="background"]{ background:var(--accent-soft) !important; color:var(--accent-dark) !important; font-weight:700; }

/* pasek sortowania + filtry z filtr.tpl */
.nd-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:18px; padding-bottom:14px; border-bottom:1px solid var(--line); font-size:13.5px; color:var(--ink-soft); }
.nd-toolbar b{ color:var(--ink); }
.nd-sort{ display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
.nd-sort a{ border:1.5px solid var(--line); border-radius:9px; padding:6px 11px; font-family:var(--font-display); font-weight:700; font-size:12.5px; color:var(--ink-soft) !important; }
.nd-sort a:hover, .nd-sort a.is-active{ border-color:var(--ink); color:var(--ink) !important; }
.nd-sort a.is-active{ background:var(--ink); color:#fff !important; }
.nd .nd-cat-main .filtr, .nd .nd-cat-main #filtr{ margin-bottom:14px; }

/* podkategorie jako kafle */
.nd-subcats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; margin-bottom:28px; }
.nd-subcat{ display:flex; flex-direction:column; overflow:hidden; }
.nd-subcat:hover{ border-color:var(--ink); }
.nd-subcat__img{ aspect-ratio:4/3; display:flex; align-items:center; justify-content:center; padding:12px; background:#fff; }
.nd-subcat__img img{ max-height:100%; object-fit:contain; }
.nd-subcat b{ display:block; padding:12px 14px; border-top:1px solid var(--surface-2); font-family:var(--font-display); font-size:14px; color:var(--ink); }

/* karta na liscie kategorii */
.nd-list-card .nd-p-card__meta{ display:flex; flex-direction:column; gap:4px; font-size:12px; color:var(--ink-soft); padding-top:6px; }
.nd-list-card .avb, .nd-list-card .avb *{ font-size:12px !important; }
.nd-list-card .avb .row{ margin:0; }
.nd-list-card .nd-p-card__extra{ display:flex; justify-content:space-between; gap:8px; padding:0 16px 14px; font-size:12px; }
.nd-list-card .nd-p-card__extra a{ color:var(--ink-soft) !important; }
.nd-list-card .nd-p-card__extra a:hover{ color:var(--accent) !important; }
.nd-list-card .check span{ font-size:12px; }

/* paginacja */
.nd .pages{ display:flex; justify-content:center; gap:8px; margin:36px 0 0; padding:0; list-style:none; }
.nd .pages li{ float:none; margin:0; padding:0; list-style:none; }
.nd .pages li a, .nd .pages li div{ min-width:38px; height:38px; padding:0 8px; border-radius:10px; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-size:13px; font-weight:700; color:var(--ink); background:#fff; margin:0; }
.nd .pages li div{ background:var(--ink); color:#fff; border-color:var(--ink); }
.nd .pages li a:hover{ border-color:var(--ink); }

/* ---------- PRODUKT ---------- */
.nd-prod .nd-main.container{ padding-top:0; }
.nd-product-layout{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:clamp(28px,4.4vw,56px); align-items:flex-start; }
.nd-gallery{ border-radius:var(--radius-l); background:#fff; border:1px solid var(--line); padding:18px; }
.nd-gallery img{ max-width:100%; }
.nd-p-brand{ margin-bottom:4px; }
.nd .nd-p-title, .nd .nd-main h1.nd-p-title{ font-size:clamp(22px,2.3vw,32px); margin:6px 0 10px; line-height:1.15; }
.nd-p-meta{ display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center; font-size:13px; color:var(--ink-soft); }
.nd-p-meta b{ color:var(--ink); font-family:var(--font-display); }
.nd-badge{ display:inline-flex; align-items:center; gap:5px; font-family:var(--font-display); font-size:11px; font-weight:800; letter-spacing:.02em; padding:5px 10px; border-radius:7px; }
.nd-badge--stock{ background:var(--good-soft); color:var(--good); }
.nd-badge--line{ background:#fff; border:1.5px solid var(--line); color:var(--ink-soft); }
.nd-buybox{ margin-top:18px; padding:22px; border-radius:var(--radius-m); background:var(--surface); }
.nd-buybox #price-box .ca{ font-size:34px !important; }
.nd-buybox #price-box .cb{ font-size:14px; }
.nd-buybox #price-box .dt1{ font-size:14px; }
.nd-stock-rows{ display:flex; flex-direction:column; gap:6px; margin-bottom:12px; font-size:13.5px; }
.nd-stock-rows div{ display:flex; justify-content:space-between; gap:10px; }
.nd-variants{ margin:4px 0 14px; }
.nd-variants h4{ font-size:12.5px !important; text-transform:uppercase; letter-spacing:.04em; margin:0 0 10px; color:var(--ink-soft) !important; }
.nd-variants label{ display:flex; gap:10px; align-items:center; border:1.5px solid var(--line); border-radius:10px; padding:10px 14px; margin:0 0 8px; background:#fff; cursor:pointer; font-size:13.5px; color:var(--ink); }
.nd-variants label:has(input:checked){ border-color:var(--ink); }
.nd-buy-row{ display:flex; align-items:center; gap:12px; margin-top:18px; flex-wrap:wrap; }
.nd-qty{ display:flex; align-items:center; border:1.5px solid var(--line); border-radius:10px; overflow:hidden; background:#fff; width:auto !important; }
.nd-qty .input-group-addon, .nd-qty span.input-minus, .nd-qty span.input-plus{ width:40px !important; height:46px; border:none !important; border-radius:0 !important; background:transparent; display:flex; align-items:center; justify-content:center; padding:0; cursor:pointer; }
.nd-qty .input-minus:hover, .nd-qty .input-plus:hover{ background:var(--surface); }
.nd-qty input.qnt{ width:48px !important; border:none !important; text-align:center; font-family:var(--font-display); font-weight:800; font-size:15px; min-height:46px; padding:0; box-shadow:none; border-radius:0 !important; }
.nd .nd-buy-row .add-to-cart{ flex:1; min-width:200px; padding:14px 24px; font-size:15px; }
.nd .nd-buy-row .add-to-cart .css_c32{ display:none; }
.nd .nd-buy-row .add-to-clipboard{ flex-basis:100%; }
.nd-p-lines{ margin-top:14px; display:flex; flex-direction:column; gap:8px; font-size:13.5px; color:var(--ink-soft); }
.nd-p-lines > div{ display:flex; gap:9px; align-items:center; }
.nd-p-lines .nd-ico{ width:17px; height:17px; stroke:var(--accent); }
.nd-p-lines a{ color:var(--ink) !important; font-weight:700; }
.nd .ask-p{ margin-top:14px; }
.nd-p-summary{ margin-top:16px; font-size:14.5px; color:var(--ink-soft); line-height:1.65; }
.nd-p-summary ul{ padding-left:18px; }
.nd-p-delivery{ margin-top:18px; padding-top:18px; border-top:1px solid var(--line); font-size:13.5px; color:var(--ink-soft); }
.nd-p-delivery .choose-show{ color:var(--accent) !important; }
.nd-p-delivery .delivery_list table{ width:100%; font-size:13px; }
.nd-p-delivery .delivery_list td{ padding:6px 4px; border-bottom:1px solid var(--line); }
.nd-p-vat{ color:var(--ink-faint); font-size:12.5px; margin-top:10px; }
.nd .archiwum{ padding:18px; border-radius:12px; background:var(--deal-soft); color:var(--deal-dark); font-weight:700; }
.nd-tabs{ display:flex; gap:4px; border-bottom:1px solid var(--line); margin-top:48px; overflow-x:auto; }
.nd-tab-btn{ padding:12px 18px; font-weight:800; font-size:14px; font-family:var(--font-display); color:var(--ink-faint); border:none; border-bottom:3px solid transparent; background:none; cursor:pointer; margin-bottom:-1px; white-space:nowrap; }
.nd-tab-btn.is-active, .nd-tab-btn:hover{ color:var(--ink); border-bottom-color:var(--accent); }
.nd-tab-panel{ padding-block:26px; }
.nd-tab-panel[hidden]{ display:none !important; }
.nd #description{ font-size:15px; line-height:1.7; color:var(--ink-soft); max-width:100%; overflow-x:auto; }
.nd #description img{ height:auto; }
.nd #description table{ max-width:100%; }
.nd #description h2, .nd #description h3{ color:var(--ink); }
.nd-prod .table-striped > tbody > tr:nth-of-type(odd){ background:var(--surface); }
.nd-prod .table td{ vertical-align:middle !important; }
.nd-related{ margin-top:36px; }

/* stare boksy (rekomendowane, kupili, pozostale) - siatka zamiast karuzeli */
.nd .jcarousel-wrapper{ margin:0; border:none; box-shadow:none; background:none; }
.nd .jcarousel{ overflow:visible; position:static; }
.nd .jcarousel ul{ width:auto !important; position:static !important; left:0 !important; display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:16px; margin:0; padding:0; }
.nd .jcarousel li{ width:auto !important; float:none; list-style:none; margin:0 !important; }
.nd .jcarousel li:nth-child(n+9){ display:none; }
.nd .jcarousel-control-prev, .nd .jcarousel-control-next, .nd .jcarousel-pagination{ display:none !important; }
.nd .new-list, .nd .box-new-list{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); box-shadow:var(--shadow-card); overflow:hidden; height:100%; }
.nd .new-list > a{ display:flex; flex-direction:column; padding:14px; color:var(--ink) !important; height:100%; }
.nd .new-list .title{ order:2; font-family:var(--font-display); font-weight:800; font-size:14px; line-height:1.3; height:auto; margin:10px 0 4px; }
.nd .new-list .img{ order:1; }
.nd .new-list .img img{ width:100% !important; height:150px !important; object-fit:contain; }
.nd .new-list .desc{ order:3; font-size:12px; color:var(--ink-soft); max-height:3em; overflow:hidden; }
.nd .new-list .row{ order:4; margin:0; }
.nd .new-list .avb{ order:5; font-size:12px; }
.nd .box-new-list .code_product{ display:none; }
.nd .new-list .add-to-cart{ background:var(--ink); border-radius:10px; display:inline-flex; align-items:center; justify-content:center; width:40px !important; height:40px; }
.nd .new-list .add-to-cart .css_c32{ filter:brightness(0) invert(1); }
.nd h3.title, .nd .title h3{ font-family:var(--font-display); font-weight:900; font-size:clamp(20px,2vw,26px); color:var(--ink); margin:28px 0 18px; }
.nd h3.title div, .nd h3.title .s-t2{ display:inline; color:inherit; font-size:inherit; background:none; }

/* ---------- KONTAKT ---------- */
.nd-contact-lead{ max-width:62ch; }
.nd-contact-layout{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:clamp(28px,4.4vw,56px); margin-top:36px; }
.nd-field{ display:flex; flex-direction:column; gap:6px; margin-bottom:16px; }
.nd-field label{ margin:0; font-size:12.5px; font-weight:800; }
.nd-field-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.nd-captcha{ display:flex; gap:12px; align-items:center; }
.nd-captcha input{ max-width:150px; }
.nd-captcha img{ border-radius:8px; border:1px solid var(--line); }
.nd-info-block{ display:flex; gap:14px; padding-block:16px; border-bottom:1px solid var(--line); }
.nd-info-block:first-child{ padding-top:0; }
.nd-info-block .nd-ico{ width:20px; height:20px; stroke:var(--accent); margin-top:2px; }
.nd-info-block h4{ font-size:14.5px !important; margin:0 0 3px; }
.nd-info-block p{ font-size:13.5px; color:var(--ink-soft); line-height:1.55; margin:0; }
.nd-info-block a{ color:var(--ink) !important; font-weight:700; }
.nd-map{ border-radius:var(--radius-m); overflow:hidden; margin-top:18px; border:1px solid var(--line); }
.nd-map iframe{ display:block; width:100%; height:280px; border:0; }
.nd-map small{ display:block; padding:8px 12px; font-size:12px; }

/* ---------- KOSZYK / KASA ---------- */
.nd-kasa .nd-main.container{ padding-top:6px; }
.nd .steps{ display:flex; gap:0; margin:18px 0 30px; background:none; height:auto; overflow-x:auto; }
.nd .steps .el{ flex:1; float:none; width:auto; min-width:120px; height:auto; background:none; margin:0; padding:0; }
.nd .steps .el i{ display:none; }
.nd .steps .text, .nd .steps .active .text{
	background:none !important; color:var(--ink-faint); height:auto; border-radius:0 !important; text-align:left !important;
	display:flex; align-items:center; gap:10px; padding:0 8px 13px 0; border-bottom:3px solid var(--line);
	font-family:var(--font-display); font-weight:800; font-size:13px; line-height:1.3;
}
.nd .steps .text br{ display:none; }
.nd .steps .text a{ color:inherit !important; text-decoration:none !important; }
.nd .steps .active .text{ color:var(--ink); border-bottom-color:var(--accent); }
.nd .steps .nd-step-no{ width:26px; height:26px; border-radius:999px; background:var(--surface); display:inline-flex; align-items:center; justify-content:center; font-size:12px; flex-shrink:0; color:var(--ink-soft); }
.nd .steps .active .nd-step-no{ background:var(--ink); color:#fff; }
.nd .steps .nd-step-done .nd-step-no{ background:var(--good-soft); color:var(--good); }
.nd .steps .entypo{ display:none; }

.nd-cart-layout{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:clamp(24px,3.6vw,48px); align-items:flex-start; }
.nd-summary-box{ position:sticky; top:92px; }
.nd-summary-box .nd-card{ padding:24px; }
.nd-summary-box h3{ font-size:18px !important; margin:0 0 14px; }
.nd-summary-row{ display:flex; justify-content:space-between; gap:10px; font-size:14px; color:var(--ink-soft); padding:7px 0; }
.nd-summary-row b, .nd-summary-row span:last-child{ color:var(--ink); font-variant-numeric:tabular-nums; }
.nd-summary-row.grand{ font-size:20px; font-weight:900; color:var(--ink); border-top:1px solid var(--line); margin-top:10px; padding-top:16px; font-family:var(--font-display); }
.nd-summary-row.grand span:last-child{ color:var(--ink); }
.nd-trust-mini{ display:flex; flex-direction:column; gap:10px; margin:22px 0 0; padding:0; list-style:none; font-size:12.5px; color:var(--ink-soft); }
.nd-trust-mini li{ display:flex; gap:8px; align-items:center; }
.nd-trust-mini .nd-ico{ width:15px; height:15px; stroke:var(--good); }

/* pozycje koszyka */
.nd-cart-head{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:6px; }
.nd-cart-head h1{ margin:0 !important; }
.nd .list-product{ border-top:1px solid var(--line); }
.nd .list-product > hr{ display:none; }
.nd .list-product .bc{ display:grid; grid-template-columns:84px minmax(0,1fr) 120px 130px 120px 34px; gap:16px; align-items:center; margin:0; padding-block:18px; border-bottom:1px solid var(--line); }
.nd .list-product .bc > div{ width:auto !important; float:none !important; padding:0 !important; margin:0 !important; height:auto !important; text-align:left; }
.nd .list-product .bc + hr{ display:none; }
.nd .list-product .bc img{ width:84px !important; height:84px !important; max-width:none !important; max-height:none !important; object-fit:contain; border-radius:12px; border:1px solid var(--line); padding:4px; float:none; }
.nd .list-product .bc a{ font-family:var(--font-display); font-weight:800; font-size:14.5px; color:var(--ink) !important; line-height:1.3; }
.nd .list-product .bc .code_product{ font-size:11px; color:var(--ink-faint); font-family:var(--font-display); font-weight:700; margin:0 0 3px !important; }
.nd .list-product .bc .text-right[style*="float:right"]{ float:none !important; margin:6px 0 0 !important; text-align:left !important; font-size:12px !important; color:var(--ink-soft); }
.nd .list-product .bc > div:nth-child(3), .nd .list-product .bc > div:nth-child(5){ text-align:right !important; font-size:12px; color:var(--ink-faint); line-height:1.45; }
.nd .list-product .bc .cjtb, .nd .list-product .bc .jsb{ font-family:var(--font-display); font-weight:800; font-size:15px; color:var(--ink); }
.nd .list-product .bc > div:nth-child(3) .cdf:not(.cjtb), .nd .list-product .bc > div:nth-child(5) .cdf:not(.jsb){ color:var(--ink-soft); }
.nd .list-product .bc .center-block{ margin:0 !important; }
.nd .list-product .bc .input-group{ display:flex; align-items:center; border:1.5px solid var(--line); border-radius:10px; overflow:hidden; width:fit-content; background:#fff; }
.nd .list-product .bc .input-group-addon{ width:34px !important; height:40px; border:none; border-radius:0; background:transparent; display:flex; align-items:center; justify-content:center; padding:0; }
.nd .list-product .bc .input-group-addon:hover{ background:var(--surface); }
.nd .list-product .bc input.qnt{ width:40px !important; border:none !important; min-height:40px; padding:0 !important; border-radius:0 !important; font-family:var(--font-display); font-weight:800; }
.nd .list-product .bc > div:last-child b{ display:none; }
.nd .list-product .bc > div:last-child input{ float:none !important; margin:0 !important; width:17px; height:17px; }

.nd .sumal{ margin:0; padding:14px 0; border-bottom:1px solid var(--line); }
.nd .sumal .razem{ padding-top:6px !important; color:var(--ink-soft); }
.nd .sumal h4{ margin:0; font-family:var(--font-display); }
.nd .sumal .cdf#sumab, .nd .sumal h4.cdf{ font-size:20px; font-weight:900; }
.nd .b-delete{ background:transparent; border:1.5px solid var(--line); color:var(--danger); border-radius:10px; padding:8px 14px; font-family:var(--font-display); font-weight:700; font-size:12.5px; }
.nd .b-delete:hover{ border-color:var(--danger); }
.nd-cart-section{ margin-top:30px; }
.nd-cart-section h3{ font-size:16px !important; margin:0 0 14px; }
.nd-cart-country{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; font-size:14px; }
.nd .choose-show{ border:1.5px solid var(--line) !important; background:#fff !important; color:var(--ink) !important; border-radius:10px; padding:10px 16px !important; width:auto !important; margin:0 !important; font-family:var(--font-display); font-weight:700; }
.nd .choose-show:hover{ border-color:var(--ink) !important; }
.nd-cart-methods{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
/* karty metod dostawy/platnosci (tresc z ajaxa + stala "odbior osobisty") */
.nd .delivery_shop, .nd #kurier .input-group, .nd #trsttab .input-group, .nd .trst{
	display:flex !important; align-items:stretch; width:100%; border:1.5px solid var(--line); border-radius:12px; overflow:hidden; margin:0 0 10px; background:#fff;
}
.nd .delivery_shop:hover, .nd #kurier .input-group:hover, .nd #trsttab .input-group:hover{ border-color:var(--ink-faint); }
.nd .delivery_shop .input-group-addon, .nd #kurier .input-group-addon, .nd #trsttab .input-group-addon{ border:none !important; border-radius:0 !important; background:transparent; width:44px; display:flex; align-items:flex-start; justify-content:center; padding:14px 0 0; }
.nd .delivery_shop label.form-control, .nd #kurier label.form-control, .nd #trsttab label.form-control{ border:none !important; border-radius:0 !important; height:auto; min-height:0; padding:12px 14px 12px 0 !important; font-family:var(--font-display); font-weight:700; font-size:14px; color:var(--ink); background:transparent; box-shadow:none; }
.nd .delivery_shop .row, .nd #kurier .row, .nd #trsttab .row{ margin:0; }
.nd .delivery_shop .cdf{ font-weight:800; }
.nd .input-group.checkbox{ margin-top:0; }
.nd .input-group.checkbox:has(> .input-group-addon input:checked){ border-color:var(--accent) !important; box-shadow:0 0 0 1px var(--accent) inset; }
.nd .bg-b{ background:none !important; padding:0 !important; }
.nd .rabat p{ font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--ink); margin:0 0 8px; }
.nd-promo-row-form{ display:flex; gap:8px; margin:0 0 6px; }
.nd-promo-row-form input.kod{ flex:1; width:auto !important; }
.nd-promo-row-form .button-b{ padding:10px 14px; font-size:12.5px; background:transparent; color:var(--ink) !important; border-color:var(--line); }
.nd-promo-row-form .button-b:hover{ border-color:var(--ink); background:transparent; }
.nd-free-ship{ display:flex; align-items:center; gap:10px; background:var(--deal-soft); color:var(--deal-dark); border-radius:12px; padding:12px 14px; font-size:13.5px; margin:16px 0 0; }
.nd-free-ship img{ display:none; }
.nd #box-sch, .nd #box-link{ margin:0; }
.nd #box-link .title{ font-family:var(--font-display); font-weight:800; }
.nd #box-link .link-cart{ background:var(--surface); border-radius:12px; padding:14px; }
.nd .submit-check{ width:100%; font-size:15px !important; padding:15px 20px !important; margin-top:16px; }

/* formularz zamowienia */
.nd .order legend{ border:none; margin:0 0 10px; }
.nd .order legend h3{ font-size:16px !important; margin:0; display:flex; align-items:center; gap:10px; }
.nd .order legend .badge{ width:26px; height:26px; border-radius:999px; background:var(--ink); display:inline-flex; align-items:center; justify-content:center; padding:0; font-size:12px; }
.nd .order fieldset{ margin-bottom:26px; }
.nd-panel{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); padding:24px 24px 6px; box-shadow:var(--shadow-card); margin-bottom:20px; }
.nd .order .form-group.row{ margin-left:0; margin-right:0; }
.nd .order .form-group.row > label{ text-align:left !important; padding:0 0 6px; width:100%; float:none; }
.nd .order .form-group.row > div{ width:100%; float:none; padding:0; }
.nd .order .col-xs-4.text-right{ text-align:left !important; }
.nd .order .input-group.checkbox{ margin-left:0 !important; display:flex; flex-wrap:wrap; gap:10px; border:none !important; box-shadow:none !important; }
.nd .order .input-group.checkbox .input-group-addon, .nd .order .input-group.checkbox label.form-control{ display:flex; align-items:center; }
.nd-order-actions{ display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:10px 0 24px; }

/* podsumowanie zamowienia */
.nd-recap-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:20px; }
.nd-recap-card{ padding:22px; }
.nd-recap-card h4{ font-size:12.5px !important; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-soft) !important; margin:0 0 12px; display:flex; align-items:center; gap:8px; }
.nd-recap-card h4 .nd-ico{ width:16px; height:16px; stroke:var(--accent); }
.nd-recap-card dl{ margin:0; }
.nd-recap-card dt{ font-size:12px; color:var(--ink-faint); font-weight:600; margin-top:10px; }
.nd-recap-card dt:first-child{ margin-top:0; }
.nd-recap-card dd{ font-size:14.5px; line-height:1.6; margin:2px 0 0; }
.nd-order-table{ width:100%; font-size:14px; }
.nd-order-table th{ font-size:12px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-faint); font-family:var(--font-display); font-weight:800; padding:0 0 10px; border-bottom:1px solid var(--line); }
.nd-order-table td{ padding:14px 0; border-bottom:1px solid var(--line); vertical-align:top; }
.nd-order-table td.num, .nd-order-table th.num{ text-align:right; white-space:nowrap; padding-left:12px; font-variant-numeric:tabular-nums; }
.nd-order-table td:first-child{ font-family:var(--font-display); font-weight:700; }
.nd-order-table .rabtab{ font-family:var(--font-body); font-weight:500; font-size:12px; color:var(--good); }

/* potwierdzenie */
.nd-confirm-head{ text-align:center; padding-block:16px 36px; }
.nd-confirm-icon{ width:64px; height:64px; border-radius:999px; background:var(--good-soft); display:flex; align-items:center; justify-content:center; margin:0 auto 18px; }
.nd-confirm-icon .nd-ico{ width:30px; height:30px; stroke:var(--good); stroke-width:2.4; }
.nd-confirm-num{ font-family:var(--font-display); font-size:15px; color:var(--ink-soft); margin-top:8px; }
.nd-confirm-num b, .nd-confirm-num a{ color:var(--ink) !important; }
.nd-confirm-body{ max-width:720px; margin:0 auto; padding:24px; }
.nd-confirm-body p{ font-size:14.5px; line-height:1.65; }
.nd-next-steps{ display:flex; gap:24px; margin:40px auto 0; max-width:960px; flex-wrap:wrap; }
.nd-next-step{ flex:1; min-width:200px; display:flex; gap:12px; }
.nd-next-step b{ font-family:var(--font-display); color:var(--accent); font-size:13px; }
.nd-next-step p{ font-size:13.5px; color:var(--ink-soft); line-height:1.5; margin:0; }
.nd-confirm-actions{ display:flex; gap:14px; justify-content:center; margin-top:40px; flex-wrap:wrap; }

/* ---------- responsywnosc ---------- */
@media (max-width:1200px){
	.nd-foot-grid{ grid-template-columns:1.2fr 1fr 1fr; }
	.nd-foot-col--cats{ display:none; }
	.nd-trust-grid{ grid-template-columns:repeat(2,1fr); }
	.nd-account__txt{ display:none; }
	nav.nd-primary{ gap:16px; }
	.nd .list-product .bc{ grid-template-columns:72px minmax(0,1fr) 110px 120px 110px 34px; gap:12px; }
}
@media (max-width:1060px){
	.nd-cart-sum{ display:none; }
}
@media (max-width:980px){
	nav.nd-primary{ display:none; }
	.nd-mega, .nd-mega-scrim{ display:none !important; }
	.nd-hamburger{ display:inline-flex; }
	.nd-nav-row{ gap:10px; }
	.nd-drawer{ display:none; flex-direction:column; gap:2px; padding:10px var(--wrap-pad) 18px; border-top:1px solid var(--line); max-height:calc(100vh - 110px); overflow-y:auto; }
	.nd-drawer.is-open{ display:flex; }
	.nd-drawer > a{ padding:12px 4px; font-weight:700; font-size:15px; border-bottom:1px solid var(--surface-2); font-family:var(--font-display); }
	.nd-mcat{ border-bottom:1px solid var(--surface-2); }
	.nd-mcat summary{ padding:12px 4px; font-weight:700; font-size:15px; font-family:var(--font-display); cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; }
	.nd-mcat summary::-webkit-details-marker{ display:none; }
	.nd-mcat summary::after{ content:'+'; font-size:18px; color:var(--ink-faint); }
	.nd-mcat[open] summary::after{ content:'–'; }
	.nd-mcat ul{ padding:0 4px 12px 12px; margin:0; list-style:none; }
	.nd-mcat ul li a{ display:block; padding:8px 0; font-size:14px; color:var(--ink-soft); }
	.nd-banner-grid{ grid-template-columns:1fr; }
	.nd-banner-hero, .nd-banner-side{ grid-column:auto; }
	.nd-banner-hero{ min-height:340px; }
	.nd-cat-layout{ grid-template-columns:1fr; }
	.nd-filters{ position:static; max-height:none; }
	.nd-filters #menu_b > ul{ display:flex; flex-wrap:wrap; gap:6px; }
	.nd-filters #menu_b > ul > li > h2{ border:1.5px solid var(--line) !important; border-radius:999px; padding:6px 12px !important; }
	.nd-filters #menu_b ul ul{ display:none; }
	.nd-product-layout, .nd-cart-layout, .nd-contact-layout, .nd-recap-grid, .nd-cart-methods{ grid-template-columns:1fr; }
	.nd-summary-box{ position:static; }
	.nd-foot-grid{ grid-template-columns:1fr 1fr; gap:28px; }
	.nd .list-product .bc{ grid-template-columns:72px minmax(0,1fr) auto; row-gap:10px; }
	.nd .list-product .bc > div:nth-child(3){ display:none; }
	.nd .list-product .bc > div:nth-child(4){ grid-column:2; }
	.nd .list-product .bc > div:nth-child(5){ grid-column:3; grid-row:2; }
	.nd .list-product .bc > div:nth-child(6){ grid-column:3; grid-row:1; text-align:right !important; }
}
@media (max-width:640px){
	.nd-hide-sm, .nd-topbar__left span:nth-child(2){ display:none !important; }
	.nd-topbar__left{ gap:12px; }
	.nd-brand-word{ font-size:17px; }
	.nd-logo-badge{ width:38px; height:38px; }
	.nd-trust-grid{ grid-template-columns:1fr; }
	.nd-field-row{ grid-template-columns:1fr; }
	.nd-foot-grid{ grid-template-columns:1fr; }
	.nd-foot-bottom{ flex-direction:column; align-items:flex-start; }
	.nd-grid-products{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
	.nd-p-card__body{ padding:10px 12px 2px; }
	.nd-p-card__foot{ padding:8px 12px 12px; }
	.nd-p-card__desc{ display:none; }
	.nd .pr-a .ca, .nd .pr-b .ca{ font-size:17px; }
	.nd-searchbar .kf{ display:none; }
	.nd-tile-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
	.nd-tile{ min-height:150px; padding:14px; }
	.nd-cta-panel{ flex-direction:column; align-items:flex-start; }
	.nd .steps .text{ font-size:0; gap:0; }
	.nd .steps .nd-step-no{ font-size:12px; }
	.nd .steps .el{ min-width:44px; }
}

/* okno wyboru kraju (choose_box.tpl) - modal zamiast pasa w naglowku */
.nd .nd-choose #choose-box{ margin:0; height:0; }
.nd #choose{ display:none; z-index:1060; box-shadow:0 0 0 100vmax rgba(10,12,20,.45), var(--shadow-pop) !important; position:fixed; left:50%; top:50%; transform:translate(-50%,-50%); width:min(520px,calc(100vw - 32px)); max-height:calc(100vh - 32px); overflow-y:auto; background:#fff; border-radius:var(--radius-l); padding:0; }
.nd #choose .border{ border:none; padding:26px; }
.nd #choose .title{ font-family:var(--font-display); font-weight:900; font-size:20px; color:var(--ink); margin:0 0 6px; background:none; padding:0; text-align:left; }
.nd #choose .box-e{ text-align:left !important; color:var(--ink-soft); font-size:14px; margin-bottom:14px; }
.nd #choose .row{ margin:0 0 6px; }
.nd #choose select{ margin:0 !important; }
.nd #choose .buttons{ display:flex; gap:10px; justify-content:flex-end; margin-top:14px; }
.nd #choose .col-sm-offset-6{ margin-left:0; width:100%; }

/* --- poprawki po pierwszym podgladzie --- */
.nd .pr-a .ca .vat_text, .nd .pr-b .ca .vat_text{ display:inline; }
.nd .pr-a .ca .vat_text::before, .nd .pr-b .ca .vat_text::before{ content:"\A"; white-space:pre; }
.nd .pr-a .ca .vat, .nd .pr-b .ca .vat{ display:inline; }
.nd-promo-card > div{ min-width:0; }
.nd-promo-card span:not(.nd-link-arrow){ display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nd-promo-card img{ width:96px; height:96px; }
.nd-foot-menu h1, .nd-foot-menu h2, .nd-foot-menu h3, .nd-foot-menu h4, .nd-foot-menu .title{ display:none; }
.nd-foot-menu a{ display:inline; }
/* szkolenia */
.nd .szkolenia{ background:none; font-size:inherit; }
.nd .szkolenia h3.title{ margin-top:0; }
.nd .szkolenia .row:first-child .col-sm-2 img{ display:none; }
.nd .szkolenia .bt-all{ display:inline-flex; border:1.5px solid var(--line); border-radius:12px; padding:10px 18px; font-family:var(--font-display); font-weight:800; font-size:13.5px; color:var(--ink) !important; background:#fff; }
.nd .szkolenia .bt-all:hover{ border-color:var(--ink); }
.nd .szkolenia .poz{ border-bottom:1px solid var(--line); padding:6px 0; margin:0; display:flex; align-items:center; flex-wrap:wrap; }
.nd .szkolenia .poz .it{ height:auto; display:block; font-size:14.5px; padding:8px 0; }
.nd .szkolenia .poz .it a{ color:var(--ink) !important; font-weight:600; }
.nd .szkolenia .tx-mini{ font-family:var(--font-display); font-size:11.5px; font-weight:800; letter-spacing:.06em; color:var(--ink-faint); }
.nd .szkolenia .tx-mini span{ display:none; }
.nd .szkolenia .button-a2{ display:inline-flex; background:var(--ink) !important; color:#fff !important; border:none; border-radius:10px; padding:9px 16px; font-family:var(--font-display); font-weight:800; font-size:12.5px; }
.nd .szkolenia .button-a2:hover{ background:var(--accent) !important; }

/* lista produktow - siatka na starej strukturze (#box-product-list > .row > .view-option-product) */
.nd #box-product-list > .row{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:18px; margin:0; }
.nd #box-product-list > .row::before, .nd #box-product-list > .row::after{ display:none; }
.nd #box-product-list .view-option-product{ width:auto !important; float:none !important; padding:0 !important; min-width:0; }
.nd #box-product-list .product-list{ height:100%; margin:0; padding:0; }
.nd .nd-list-card .nd-p-card__link{ flex:0 0 auto; }
.nd .nd-list-card .nd-p-card__thumb img{ max-width:100%; }
.nd .nd-list-card .nd-p-card__name{ color:var(--ink) !important; }
.nd .nd-list-card .nd-p-card__name:hover{ color:var(--accent) !important; }
.nd .nd-list-card .code_product{ margin:0; padding:0; background:none; color:var(--ink-faint); font-size:11px; }
.nd .nd-dots{ background:transparent !important; color:var(--ink-faint) !important; border-color:transparent !important; }
.nd-cat-desc{ margin-top:40px; padding-top:28px; border-top:1px solid var(--line); color:var(--ink-soft); font-size:14.5px; line-height:1.7; }
.nd-cat-desc img{ height:auto; }
.nd-cat-desc h2, .nd-cat-desc h3{ color:var(--ink); }
/* filtr cech (filtr.tpl) */
.nd .filter{ background:var(--surface); border-radius:var(--radius-m); padding:14px 16px; margin:0 0 18px; border:none; }
.nd .filter .box{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.nd .filter .box > div[class*=col-]{ width:auto; float:none; padding:0; }
.nd .filter .title{ font-family:var(--font-display); font-weight:800; font-size:12.5px; text-transform:uppercase; letter-spacing:.05em; }
.nd .filter select{ min-height:38px; font-size:13px; margin:2px 6px 2px 0; }
.nd .search-box .search-element{ display:inline-flex; border:1.5px solid var(--line); border-radius:999px; padding:6px 12px; margin:3px; font-size:12.5px; background:#fff; }
.nd-kat .nd-cat-main .breadcrumb{ display:none; }
.nd #menu_b li, .nd #menu_b li li{ background:none !important; padding-left:0 !important; }
.nd #menu_b li::before, .nd #menu_b li::marker{ content:none; display:none; }
.nd .nd-p-card, .nd .nd-p-card__body{ text-align:left; }
.nd .product-list.nd-p-card{ border:1px solid var(--line); }
.nd .product-list.nd-p-card:hover{ border-color:var(--ink); }
.nd .product-list .add-cart-text, .nd .nd-p-card .add-cart-text{ display:inline !important; }
.nd .nd-p-card .avb, .nd .product-list .nd-p-card__meta.avb{ border:none !important; background:var(--good-soft) !important; color:var(--good) !important; border-radius:7px; padding:5px 10px !important; margin:8px 0 0 !important; height:auto !important; width:fit-content; font-family:var(--font-display); font-weight:700; font-size:11.5px !important; text-align:left; line-height:1.35; }
.nd .nd-p-card .avb *{ color:inherit !important; background:none !important; border:none !important; font-size:11.5px !important; padding:0 !important; margin:0 !important; width:auto !important; height:auto !important; }
.nd .nd-p-card__extra .check, .nd .nd-p-card__extra .check span{ color:var(--ink-faint) !important; font-size:12px; background:none; padding:0; }

/* karta produktu - galeria (produkt_galeria_3.tpl, karuzela bootstrapa) */
.nd .nd-gallery .carousel-inner{ max-width:none !important; height:auto !important; aspect-ratio:4/3.1; margin:0 !important; }
.nd .nd-gallery .carousel-inner > .item{ height:100%; }
.nd .nd-gallery .carousel-inner > .item > a{ display:flex; align-items:center; justify-content:center; height:100%; }
.nd .nd-gallery .carousel-inner img{ width:100% !important; height:100% !important; object-fit:contain; }
.nd .nd-gallery .carousel-indicators{ position:static; width:auto; margin:14px 0 0; display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-start; left:auto; bottom:auto; padding:0; }
.nd .nd-gallery .carousel-indicators img{ width:72px !important; height:72px !important; object-fit:contain; border:2px solid var(--line); border-radius:10px; padding:3px; cursor:pointer; background:#fff; margin:0; text-indent:0; }
.nd .nd-gallery .carousel-indicators img.active{ border-color:var(--ink); }
.nd .nd-gallery .carousel-control{ display:none; }
.nd-link-plain{ color:var(--accent) !important; font-weight:700; }
.nd .nd-p-meta .avb{ padding:5px 10px; border:none; margin:0; }
.nd .nd-p-meta .avb *{ color:inherit !important; font-size:11.5px !important; background:none !important; border:none !important; padding:0 !important; margin:0 !important; width:auto !important; height:auto !important; }
.nd .nd-p-meta .avb:has(#availability-box:empty){ display:none; }
.nd .nd-buybox .nd-qty{ display:flex; flex-wrap:nowrap; }
.nd .nd-buybox .nd-qty .nd-ico{ width:16px; height:16px; }
.nd-kit-list{ display:flex; flex-direction:column; margin-bottom:24px; }
.nd-kit-comp{ display:flex; align-items:center; gap:14px; padding:12px 4px; border-bottom:1px solid var(--line); font-family:var(--font-display); font-weight:700; font-size:14.5px; color:var(--ink) !important; }
.nd-kit-comp img{ width:64px; height:48px; object-fit:contain; border-radius:8px; border:1px solid var(--line); background:#fff; }
.nd-kit-comp .nd-ico{ margin-left:auto; stroke:var(--accent); width:16px; height:16px; }
.nd-ship-grid{ display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.nd-ship-list .row{ display:flex; justify-content:space-between; margin:0; padding:10px 0; border-bottom:1px solid var(--line); font-size:14px; }
.nd-ship-list .row > div{ width:auto; float:none; padding:0; }
.nd-ship-list .shipping{ text-align:right; font-family:var(--font-display); }
.nd-ship-list .brutto{ display:block; font-size:12px; color:var(--ink-faint); }
/* rekomendowane w prawej kolumnie */
.nd .nd-buy-col > br{ display:none; }
@media (max-width:980px){ .nd-ship-grid{ grid-template-columns:1fr; } }
.nd h1.title, .nd .nd-main h1{ border:none !important; padding:0 !important; background:none !important; }
.nd .nd-p-lines .choose-show{ border:none !important; padding:0 !important; background:none !important; color:var(--accent) !important; font-weight:700; }
.nd .nd-buy-col > div[style*="font-size:14pt"]{ font-family:var(--font-display); font-size:15px !important; color:var(--ink) !important; margin:26px 0 10px; }
.nd .nd-buybox #price-box .ca .vat_text::before{ content:"\A"; }
.nd-faq{ max-width:80ch; }
.nd-faq-item{ border-bottom:1px solid var(--line); padding-block:4px; }
.nd-faq-item summary{ cursor:pointer; padding:14px 0; font-weight:800; font-size:15px; font-family:var(--font-display); display:flex; justify-content:space-between; align-items:center; list-style:none; }
.nd-faq-item summary::-webkit-details-marker{ display:none; }
.nd-faq-item summary::after{ content:'+'; font-size:20px; color:var(--ink-faint); font-weight:400; }
.nd-faq-item[open] summary::after{ content:'–'; }
.nd-faq-item p{ font-size:14px; color:var(--ink-soft); padding-bottom:16px; line-height:1.6; margin:0; }
.nd .contact .alert .nd-ico{ width:16px; height:16px; }

/* koszyk - dodatki */
.nd .nd-cart-check{ display:none !important; }
.nd .nd-cart-del{ flex-shrink:0; }
.nd-cart-empty{ padding:56px 0; text-align:center; color:var(--ink-soft); display:flex; flex-direction:column; align-items:center; gap:14px; }
.nd-cart-empty .nd-ico{ width:44px; height:44px; stroke:var(--ink-faint); }
.nd-cart-discount{ display:flex; gap:12px; align-items:center; padding:14px 0; border-bottom:1px solid var(--line); font-size:14px; }
.nd-cart-discount label{ margin:0 0 0 auto; display:inline-flex; gap:6px; align-items:center; }
.nd-cart-section h3{ display:flex; align-items:center; gap:8px; }
.nd-cart-section h3 .nd-ico{ width:18px; height:18px; stroke:var(--accent); }
.nd-method{ display:flex; justify-content:space-between; gap:10px; width:100%; }
.nd .delivery_shop label.form-control{ display:block; width:100%; }
.nd-link-cart{ display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.nd-link-cart input{ flex:1; min-width:200px; font-size:12.5px !important; color:var(--ink-soft) !important; }
.nd-link-mail{ display:inline-flex; align-items:center; gap:8px; font-size:13px; }
.nd-link-mail .entypo{ cursor:pointer; display:inline-flex; width:38px; height:38px; border:1.5px solid var(--line); border-radius:10px; align-items:center; justify-content:center; }
.nd-link-mail .entypo::before{ display:none; }
.nd-summary-row--net{ font-size:12.5px; padding-top:0; }
.nd-cart-save{ display:flex; flex-direction:column; gap:8px; margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }
.nd .nd-summary-box .submit-check .nd-ico{ width:18px; height:18px; }
.nd .nd-summary-box .rabat{ padding:0; }
.nd .list-product .bc .input-group-addon .nd-ico{ width:15px; height:15px; }
.nd .list-product .bc::before, .nd .list-product .bc::after{ display:none !important; content:none !important; }
.nd .cdf{ color:inherit !important; }
.nd .bg-b, .nd .nd-summary-row.grand{ color:var(--ink) !important; text-transform:none !important; }
.nd .nd-summary-row.grand > span:first-child{ font-size:16px; align-self:center; }
.nd-promo-row-form .button-b{ white-space:nowrap; }
.nd #trsttab label.form-control .row, .nd #kurier label.form-control .row{ display:flex; align-items:center; gap:10px; }
.nd #trsttab label.form-control .row > div, .nd #kurier label.form-control .row > div{ float:none; width:auto; padding:0; }
.nd #trsttab label.form-control .row > div:first-child, .nd #kurier label.form-control .row > div:first-child{ flex:1; }
.nd #kurier .cdf, .nd #kurier b, .nd .delivery_shop .cdf{ font-family:var(--font-display); font-weight:800; font-size:14px; white-space:nowrap; }
.nd #trsttab img, .nd #kurier img{ max-height:36px; width:auto; }
.nd #cart .cdf{ font-size:inherit; font-weight:inherit; } .nd #cart .nd-summary-row.grand .cdf{ font-weight:900; } .nd #cart .list-product .cjtb, .nd #cart .list-product .jsb{ font-size:15px; font-weight:800; }
.nd a.submit-check{ background:var(--accent) !important; }
.nd a.submit-check:hover{ background:var(--accent-dark) !important; }
.nd a.submit-check[disable]{ background:var(--ink-faint) !important; cursor:wait; }
.nd a.submit-check .ajax_loader{ width:16px; height:16px; }

/* formularz zamowienia */
.nd .order .nd-panel fieldset{ margin:0 0 14px; }
.nd .order .nd-fields{ display:grid; grid-template-columns:1fr 1fr; column-gap:16px; }
.nd .order .nd-span-2{ grid-column:1 / -1; }
.nd .order .form-group{ margin-bottom:14px; }
.nd .order .form-group.row > label{ font-size:12.5px; font-weight:800; }
.nd .order .nd-fields-plain .box-a{ background:none; border:none; padding:0; margin:0; }
.nd .order .nd-fields-plain fieldset{ margin:0; }
.nd .order .gus{ margin-top:8px; padding:8px 14px; font-size:12.5px; }
.nd-choice-row{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.nd .nd-choice{ display:flex; align-items:center; gap:12px; border:1.5px solid var(--line); border-radius:12px; padding:14px 16px; margin:0; cursor:pointer; font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--ink); }
.nd .nd-choice:hover{ border-color:var(--ink-faint); }
.nd .nd-choice:has(input:checked){ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; }
.nd .nd-choice input{ width:17px; height:17px; margin:0; flex-shrink:0; }
.nd .nd-choice--wide{ font-family:var(--font-body); font-weight:500; font-size:13.5px; align-items:flex-start; }
.nd .nd-choice--wide input{ margin-top:2px; }
.nd-address-book{ display:flex; flex-wrap:wrap; gap:8px; margin:8px 0; }
.nd .order .alert .nd-ico{ width:16px; height:16px; }
.nd .order .input-group{ display:flex; }
@media (max-width:640px){ .nd .order .nd-fields, .nd-choice-row{ grid-template-columns:1fr; } }
.nd .order .input-group .form-control{ flex:1; width:auto; } .nd .order .input-group-addon{ display:flex; align-items:center; width:auto; padding:0 12px; font-family:var(--font-display); font-weight:700; }
@media (max-width:640px){
	.nd-nav-row{ gap:6px; }
	.nd-actions{ gap:0; }
	.nd-icon-btn{ min-width:36px; padding:0 6px; }
	.nd-account{ display:none; }
	.nd-brand{ gap:8px; }
	.nd-brand-word{ font-size:16px; }
}
@media (max-width:980px){
	.nd-product-layout, .nd-cart-layout, .nd-contact-layout, .nd-recap-grid, .nd-cart-methods, .nd-cat-layout, .nd-ship-grid{ grid-template-columns:minmax(0,1fr); }
	.nd #box-link{ margin:0; }
	.nd #box-link > div{ padding:0; }
}

/* ===== produkt: specyfikacja, materialy do pobrania, produkty uzupelniajace ===== */
.nd-spec-table{ width:100%; max-width:820px; border-collapse:collapse; }
.nd-spec-table td{ padding:12px 0; border-bottom:1px solid var(--line); font-size:14px; vertical-align:top; }
.nd-spec-table td:first-child{ color:var(--ink-soft); width:44%; padding-right:16px; }
.nd-spec-table td:last-child{ font-family:var(--font-display); font-weight:700; color:var(--ink); }
.nd-downloads{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:12px; }
.nd .nd-download{ display:flex; align-items:center; gap:14px; padding:14px 16px; border:1.5px solid var(--line); border-radius:12px; background:#fff; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-download:hover{ border-color:var(--ink); transform:translateY(-1px); }
.nd-download__ext{ flex-shrink:0; width:46px; height:52px; border-radius:8px; background:var(--accent-soft); color:var(--accent-dark); display:flex; align-items:flex-end; justify-content:center; padding-bottom:7px; font-family:var(--font-display); font-weight:900; font-size:11px; letter-spacing:.04em; clip-path:polygon(0 0,72% 0,100% 22%,100% 100%,0 100%); }
.nd-download__ext--pdf{ background:#fdecec; color:#c3272d; }
.nd-download__ext--zip, .nd-download__ext--rar{ background:var(--deal-soft); color:var(--deal-dark); }
.nd-download__ext--exe, .nd-download__ext--cax{ background:var(--surface-2); color:var(--ink-soft); }
.nd-download__txt{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.nd-download__txt b{ font-family:var(--font-display); font-weight:800; font-size:14px; line-height:1.3; }
.nd-download__txt span{ font-size:12px; color:var(--ink-faint); }
.nd-download__ico{ flex-shrink:0; width:36px; height:36px; border-radius:10px; background:var(--surface); display:flex; align-items:center; justify-content:center; }
.nd-download__ico .nd-ico{ stroke:var(--accent); width:17px; height:17px; }
.nd .nd-download:hover .nd-download__ico{ background:var(--accent); }
.nd .nd-download:hover .nd-download__ico .nd-ico{ stroke:#fff; }
.nd-related{ margin-top:8px; }
.nd-mini-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:14px; }
.nd-mini-card{ display:flex; gap:14px; padding:12px; align-items:center; transition:border-color .15s; }
.nd-mini-card:hover{ border-color:var(--ink); }
.nd-mini-card__img{ flex-shrink:0; width:92px; height:92px; border-radius:10px; background:#fff; border:1px solid var(--surface-2); display:flex; align-items:center; justify-content:center; padding:6px; }
.nd-mini-card__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd-mini-card__body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.nd .nd-mini-card__name{ font-family:var(--font-display); font-weight:800; font-size:13.5px; line-height:1.3; color:var(--ink) !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.nd .nd-mini-card__name:hover{ color:var(--accent) !important; }
.nd-mini-card__row{ display:flex; align-items:flex-end; justify-content:space-between; gap:8px; margin-top:4px; }
.nd .nd-mini-card .pr-a .ca, .nd .nd-mini-card .pr-b .ca{ font-size:16px; }
.nd .nd-mini-card .ca .vat_text, .nd .nd-mini-card .ca .vat{ display:none; }
.nd a.nd-mini-card__cart{ flex-shrink:0; width:38px; height:38px; border-radius:10px; background:var(--ink); color:#fff !important; display:flex; align-items:center; justify-content:center; }
.nd a.nd-mini-card__cart:hover{ background:var(--accent); }
.nd a.nd-mini-card__cart .nd-ico{ width:17px; height:17px; }
.nd-p-lines a[data-open-tab]{ color:var(--accent) !important; }

/* ===== logowanie ===== */
.nd-login h1.title{ margin-top:10px; }
.nd-login-grid{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr); gap:18px; align-items:stretch; }
.nd-login-card{ padding:26px; display:flex; flex-direction:column; gap:12px; }
.nd-login-card h3{ font-size:19px !important; margin:0; }
.nd-login-card p{ font-size:14px; color:var(--ink-soft); line-height:1.6; margin:0; flex:1; }
.nd-login-card .nd-btn{ align-self:flex-start; }
.nd-login-card--main{ border-color:var(--ink); box-shadow:var(--shadow-pop); }
.nd-login-card .nd-field{ margin-bottom:4px; }
.nd-login-ico{ width:44px; height:44px; border-radius:12px; background:var(--accent-soft); display:flex; align-items:center; justify-content:center; }
.nd-login-ico .nd-ico{ stroke:var(--accent); width:21px; height:21px; }
.nd-login-card--main .nd-login-ico{ background:var(--ink); }
.nd-login-card--main .nd-login-ico .nd-ico{ stroke:#fff; }
.nd-login-row{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin-top:6px; }
.nd-login-row a{ font-size:13px; }
.nd-login-grid--kasa .nd-login-card:last-child{ order:-1; border-color:var(--accent); }

/* ===== strefa konta ===== */
.nd-account-layout{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:32px; align-items:start; padding-top:18px; }
.nd-account-nav{ position:sticky; top:92px; background:var(--surface); border-radius:var(--radius-m); padding:16px; }
.nd-account-who{ display:flex; gap:12px; align-items:center; padding:6px 6px 16px; border-bottom:1px solid var(--line); margin-bottom:10px; }
.nd-account-avatar{ width:42px; height:42px; border-radius:999px; background:var(--accent); color:#fff; display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-weight:900; font-size:17px; flex-shrink:0; }
.nd-account-who div{ min-width:0; display:flex; flex-direction:column; }
.nd-account-who b{ font-family:var(--font-display); font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nd-account-who span{ font-size:12px; color:var(--ink-faint); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nd-account-nav nav{ display:flex; flex-direction:column; gap:2px; }
.nd .nd-account-nav nav a{ display:flex; align-items:center; gap:10px; padding:10px; border-radius:10px; font-family:var(--font-display); font-weight:700; font-size:13.5px; color:var(--ink-soft) !important; }
.nd .nd-account-nav nav a .nd-ico{ width:17px; height:17px; }
.nd .nd-account-nav nav a:hover{ background:#fff; color:var(--ink) !important; }
.nd .nd-account-nav nav a.is-active{ background:#fff; color:var(--ink) !important; box-shadow:var(--shadow-card); }
.nd .nd-account-nav nav a.is-active .nd-ico{ stroke:var(--accent); }
.nd .nd-account-nav nav a.nd-account-out{ margin-top:8px; border-top:1px solid var(--line); border-radius:0; padding-top:14px; color:var(--danger) !important; }
.nd .nd-account-nav nav a.nd-account-out:hover{ background:none; }
.nd-account-main{ min-width:0; }
.nd-konto .nd-account-main > .breadcrumb{ display:none; }
.nd-account-tiles{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; }
.nd .nd-account-tile{ padding:18px; display:flex; flex-direction:column; gap:4px; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-account-tile:hover{ border-color:var(--ink); transform:translateY(-2px); }
.nd-account-tile__ico{ width:40px; height:40px; border-radius:11px; background:var(--accent-soft); display:flex; align-items:center; justify-content:center; margin-bottom:10px; }
.nd-account-tile__ico .nd-ico{ stroke:var(--accent); width:19px; height:19px; }
.nd-account-tile__cat{ font-family:var(--font-display); font-size:10.5px; letter-spacing:.07em; text-transform:uppercase; color:var(--ink-faint); font-weight:800; }
.nd-account-tile b{ font-family:var(--font-display); font-size:15px; font-weight:800; }
.nd-account-contact{ margin-top:18px; padding:20px 22px; display:flex; gap:28px; flex-wrap:wrap; align-items:center; background:var(--surface); border:none; box-shadow:none; }
.nd-account-contact p{ margin:8px 0 0; font-size:14px; display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.nd-account-contact .nd-ico{ width:16px; height:16px; stroke:var(--accent); }
.nd-account-contact a{ font-weight:700; color:var(--ink) !important; }
.nd-account-contact h3{ margin:6px 0 0; font-size:17px !important; }
.nd-account-contact__img{ width:64px; height:64px; border-radius:999px; object-fit:cover; }
.nd .nd-account-h2{ margin-top:36px; margin-bottom:14px; font-size:22px; }
.nd-sec-head.nd-account-h2 h2{ font-size:22px; margin:0; }
.nd-table-card{ padding:6px 18px; overflow-x:auto; }
.nd .nd-table, .nd .box-user .table{ margin:0; font-size:14px; }
.nd .nd-table th, .nd .box-user .table:not(:has(thead)) tr:first-child td{ font-family:var(--font-display); font-size:11.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-weight:800; border-top:none !important; border-bottom:1px solid var(--line) !important; padding:12px 10px !important; }
.nd .nd-table td, .nd .box-user .table td{ padding:13px 10px !important; border-top:1px solid var(--line) !important; vertical-align:middle !important; }
.nd .box-user .table-striped > tbody > tr:nth-of-type(odd){ background:none; }
.nd .box-user .table a{ color:var(--ink) !important; font-weight:700; }
.nd .box-user .table a:hover{ color:var(--accent) !important; }
.nd .box-user .table .entypo{ font-size:17px; color:var(--ink-soft); }
.nd-status{ display:inline-flex; padding:4px 10px; border-radius:7px; background:var(--accent-soft); color:var(--accent-dark); font-family:var(--font-display); font-weight:700; font-size:12px; }
/* pozostale strony konta (stare szablony) */
.nd .box-user > .row:first-child{ margin:0; }
.nd .box-user > .row:first-child > [class*=col-]{ padding:0; }
.nd .box-user .menu-user-title{ margin:0 0 18px; }
.nd .box-user fieldset{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); padding:20px 22px 8px; margin:0 0 18px; box-shadow:var(--shadow-card); }
.nd .box-user legend{ border:none; width:auto; margin:0 0 12px; padding:0; font-family:var(--font-display); font-weight:800; font-size:16px; color:var(--ink); }
.nd .box-user .bg-gray{ background:none; padding:0; }
.nd .box-user .form-group{ margin-bottom:14px; }
.nd .box-user .form-group label{ font-size:12.5px; font-weight:800; }
.nd .box-user .table-responsive{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); padding:4px 14px; box-shadow:var(--shadow-card); }
.nd .box-user a.button-b, .nd .box-user input.button-b{ margin:0 6px 6px 0; }
.nd-login .table-responsive, .nd-account .table-responsive{ box-shadow:var(--shadow-card); }
@media (max-width:980px){
	.nd-login-grid, .nd-account-layout{ grid-template-columns:minmax(0,1fr); }
	.nd-account-nav{ position:static; padding:10px; }
	.nd-account-who{ display:none; }
	.nd-account-nav nav{ flex-direction:row; overflow-x:auto; gap:6px; }
	.nd .nd-account-nav nav a{ white-space:nowrap; padding:8px 12px; }
	.nd .nd-account-nav nav a.nd-account-out{ margin:0; border:none; padding-top:8px; }
}
.nd-account-who .nd-account-avatar{ color:#fff; font-size:17px; }
.nd .box-user legend{ float:left; width:100%; margin:0 0 14px; }
.nd .box-user legend + *{ clear:both; }
.nd .box-user fieldset:not(:has(legend)){ background:none; border:none; box-shadow:none; padding:0; }

/* ===== schowek ===== */
.nd-nowrap{ white-space:nowrap; }
.nd-muted{ color:var(--ink-faint); font-size:14px; margin:0; }
.nd-clip-lists{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:12px; margin-bottom:22px; }
.nd-clip-list{ border:1.5px solid var(--line); border-radius:var(--radius-m); padding:14px 16px; background:#fff; display:flex; flex-direction:column; gap:10px; }
.nd-clip-list.is-current{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; }
.nd-clip-list__head{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; }
.nd-clip-list__head b{ font-family:var(--font-display); font-size:15px; }
.nd .nd-clip-list__head a{ color:var(--ink) !important; }
.nd .nd-clip-list__main{ font-size:12.5px; font-weight:700; color:var(--accent) !important; }
.nd-clip-list__actions{ display:flex; gap:6px; flex-wrap:wrap; }
.nd .nd-clip-list__actions a{ display:inline-flex; align-items:center; gap:5px; padding:6px 10px; border-radius:9px; background:var(--surface); font-family:var(--font-display); font-weight:700; font-size:12px; color:var(--ink-soft) !important; }
.nd .nd-clip-list__actions a:hover{ background:var(--surface-2); color:var(--ink) !important; }
.nd .nd-clip-list__actions a.a_delete:hover{ color:var(--danger) !important; }
.nd-clip-list__actions .nd-ico{ width:14px; height:14px; }
.nd-status--good{ background:var(--good-soft); color:var(--good); gap:4px; align-items:center; }
.nd-status .nd-ico{ width:13px; height:13px; }
.nd-clip-title{ display:flex; align-items:center; gap:8px; padding:12px 10px 6px; font-family:var(--font-display); font-size:16px; }
.nd-clip-title .nd-ico{ width:18px; height:18px; stroke:var(--accent); }
.nd-clip-title span{ font-size:12.5px; color:var(--ink-faint); font-weight:600; margin-left:auto; }
.nd .nd-clip-table td.nd-clip-img{ width:72px; padding-right:0 !important; }
.nd-clip-img img{ width:60px; height:60px; object-fit:contain; border:1px solid var(--line); border-radius:10px; padding:3px; background:#fff; }
.nd .nd-clip-table .nd-qty{ display:inline-flex; width:auto !important; }
.nd .nd-clip-table .nd-qty .input-group-addon{ height:38px; }
.nd .nd-clip-table .nd-qty input.qnt{ min-height:38px; width:44px !important; }
.nd .nd-clip-table .nd-qty .nd-ico{ width:15px; height:15px; }
.nd-clip-empty{ text-align:center; color:var(--ink-faint); padding:36px 10px !important; }
.nd a.nd-icon-act{ display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:10px; border:1.5px solid var(--line); color:var(--ink-soft) !important; margin-left:4px; vertical-align:middle; background:#fff; }
.nd a.nd-icon-act:hover{ border-color:var(--ink); color:var(--ink) !important; }
.nd a.nd-icon-act.p_delete:hover{ border-color:var(--danger); color:var(--danger) !important; }
.nd a.nd-icon-act--dark{ background:var(--ink); border-color:var(--ink); color:#fff !important; }
.nd a.nd-icon-act--dark:hover{ background:var(--accent); border-color:var(--accent); color:#fff !important; }
.nd a.nd-icon-act .nd-ico{ width:16px; height:16px; }
.nd-clip-bar{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-top:16px; padding:14px 16px; background:var(--surface); border-radius:var(--radius-m); }
.nd-clip-bar__act{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:13.5px; font-weight:600; }
.nd-clip-bar__act select{ width:auto !important; min-width:240px; max-width:100%; background:#fff; }
.nd-clip-bar__sum{ font-size:14px; color:var(--ink-soft); }
.nd-clip-bar__sum b{ font-family:var(--font-display); font-size:19px; color:var(--ink); margin-left:6px; }

/* ===== historia zamowien ===== */
.nd-empty-state{ padding:48px 20px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:14px; color:var(--ink-soft); }
.nd-empty-state .nd-ico{ width:42px; height:42px; stroke:var(--ink-faint); }
.nd-empty-state p{ margin:0; font-size:15px; }
.nd .nd-orders-table tr:hover td{ background:var(--surface); }
.nd .nd-orders-table a.nd-icon-act{ width:32px; height:32px; }
.nd .nd-back{ font-size:13px; margin-bottom:6px; color:var(--ink-soft) !important; }
.nd .nd-back .nd-ico{ width:14px; height:14px; }
.nd-order-no{ color:var(--accent); }
.nd-order-head{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius-m); overflow:hidden; margin-bottom:20px; }
.nd-order-head > div{ background:#fff; padding:16px 18px; display:flex; flex-direction:column; gap:5px; }
.nd-order-head span:first-child{ font-size:11.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-family:var(--font-display); font-weight:800; }
.nd-order-head b{ font-family:var(--font-display); font-size:16px; }
.nd-order-head em{ font-style:normal; font-size:13px; color:var(--ink-soft); }
.nd-order-head .nd-order-track b{ font-size:14px; }
.nd-order-head .nd-order-track a{ color:var(--accent) !important; }
.nd-order-pay{ font-size:13px; color:var(--ink-soft); margin-top:4px; }
.nd-scroll-x{ overflow-x:auto; }
.nd-order-totals{ max-width:380px; margin:14px 0 0 auto; }
.nd-msgs{ display:flex; flex-direction:column; gap:10px; }
.nd-msg{ max-width:80%; background:var(--surface); border-radius:14px 14px 14px 4px; padding:12px 14px; }
.nd-msg--client{ align-self:flex-end; background:var(--accent-soft); border-radius:14px 14px 4px 14px; }
.nd-msg__meta{ font-size:12px; color:var(--ink-faint); margin-bottom:4px; }
.nd-msg__meta b{ color:var(--ink-soft); font-family:var(--font-display); }
.nd-msg__txt{ font-size:14px; line-height:1.55; }
@media (max-width:640px){
	.nd .nd-clip-table thead{ display:none; }
	.nd .nd-clip-table tr{ display:grid; grid-template-columns:26px 64px 1fr; gap:6px 10px; padding:12px 0; border-top:1px solid var(--line); }
	.nd .nd-clip-table td{ border:none !important; padding:0 !important; }
	.nd .nd-clip-table td:nth-child(4){ grid-column:3; text-align:left !important; font-weight:700; }
	.nd .nd-clip-table td:nth-child(5){ grid-column:2 / 4; }
	.nd .nd-clip-table td:nth-child(6){ grid-column:2 / 4; text-align:left !important; }
	.nd .nd-clip-table td:nth-child(6) a.nd-icon-act{ margin:0 6px 0 0; }
	.nd-msg{ max-width:100%; }
	.nd-clip-bar__act select{ min-width:0; width:100% !important; }
}
.nd a.nd-icon-act.add-to-cart{ padding:0 !important; margin:0 0 0 4px !important; height:36px; font-size:inherit; border-width:1.5px; }

/* produkt: sekcje zawsze widoczne + przyklejona nawigacja */
.nd-sec-nav{ position:sticky; top:67px; z-index:30; display:flex; gap:4px; overflow-x:auto; background:rgba(255,255,255,.96); backdrop-filter:blur(6px); border-bottom:1px solid var(--line); margin-top:40px; scrollbar-width:none; }
.nd-sec-nav::-webkit-scrollbar{ display:none; }
.nd .nd-sec-nav a.nd-tab-btn{ display:inline-block; color:var(--ink-faint) !important; }
.nd .nd-sec-nav a.nd-tab-btn:hover, .nd .nd-sec-nav a.nd-tab-btn.is-active{ color:var(--ink) !important; border-bottom-color:var(--accent); }
.nd-p-sec{ padding-block:34px 8px; border-bottom:1px solid var(--line); scroll-margin-top:130px; }
.nd-p-sec:last-of-type{ border-bottom:none; }
.nd .nd-p-sec__h{ font-size:clamp(20px,2vw,26px) !important; font-weight:900; margin:0 0 18px; }
.nd .nd-p-sec h2:not(.nd-p-sec__h){ font-size:17px; margin:18px 0 10px; }
.nd-related-sec + .nd-sec-nav{ margin-top:44px; }
@media (max-width:980px){ .nd-sec-nav{ top:62px; } }

/* ===== ksiazka adresowa, edycja adresu, haslo ===== */
.nd-page-head{ display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; }
.nd-page-head h1.title{ margin-bottom:6px !important; }
.nd .nd-page-lead{ margin:0 0 24px; font-size:14.5px; max-width:70ch; }
.nd-addr-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:14px; }
.nd-addr{ padding:18px; display:flex; flex-direction:column; gap:6px; }
.nd-addr.is-main{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset, var(--shadow-card); }
.nd-addr__top{ display:flex; justify-content:space-between; align-items:center; margin-bottom:6px; }
.nd-addr__ico{ width:38px; height:38px; border-radius:11px; background:var(--accent-soft); display:flex; align-items:center; justify-content:center; }
.nd-addr__ico .nd-ico{ width:18px; height:18px; stroke:var(--accent); }
.nd-addr__name{ font-family:var(--font-display); font-size:15.5px; }
.nd-addr__firm{ font-size:13px; color:var(--ink-soft); }
.nd-addr address{ margin:0; font-style:normal; font-size:14px; line-height:1.6; color:var(--ink-soft); flex:1; }
.nd-addr__actions{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:10px; padding-top:12px; border-top:1px solid var(--surface-2); }
.nd .nd-addr__del{ display:inline-flex; align-items:center; gap:5px; font-size:12.5px; font-weight:700; color:var(--ink-faint) !important; }
.nd .nd-addr__del:hover{ color:var(--danger) !important; }
.nd .nd-addr__del .nd-ico{ width:14px; height:14px; }
.nd .nd-addr--new{ border:2px dashed var(--line); border-radius:var(--radius-m); align-items:center; justify-content:center; text-align:center; min-height:200px; color:var(--ink-soft) !important; transition:border-color .15s, color .15s; }
.nd .nd-addr--new:hover{ border-color:var(--accent); color:var(--accent) !important; }
.nd .nd-addr--new b{ font-family:var(--font-display); font-size:14.5px; }
.nd-form-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; align-items:start; }
.nd-form-grid .nd-span-2{ grid-column:1 / -1; }
.nd-field-row--3{ grid-template-columns:1fr 1.4fr 1.2fr; }
.nd .nd-field-row{ display:grid; column-gap:14px; }
.nd .nd-field-row:not(.nd-field-row--3){ grid-template-columns:1fr 1fr; }
.nd .nd-field-row .form-group{ margin-bottom:14px; }
.nd-check{ display:flex !important; align-items:flex-start; gap:9px; font-weight:500 !important; font-family:var(--font-body) !important; font-size:13px !important; color:var(--ink-soft) !important; margin:-4px 0 16px; cursor:pointer; }
.nd-check input{ margin:2px 0 0 !important; width:16px; height:16px; flex-shrink:0; }
.nd-form-actions{ display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:6px; }
.nd-pass-card{ max-width:520px; padding:26px; display:flex; flex-direction:column; gap:12px; }
.nd-pass-card p{ margin:0; font-size:14px; color:var(--ink-soft); line-height:1.6; }
.nd-pass-card .nd-form-actions{ justify-content:space-between; margin-top:8px; }
.nd-pass-card--ok{ align-items:center; text-align:center; }
.nd-pass-card--ok .nd-confirm-icon{ margin:0 0 4px; }
.nd-pass--guest .nd-pass-card{ margin:0 auto; }
.nd-pass--guest h1.title{ text-align:center; }
.nd-pass-input{ position:relative; }
.nd-pass-input input{ padding-right:74px !important; }
.nd-pass-eye{ position:absolute; right:6px; top:50%; transform:translateY(-50%); border:none; background:var(--surface); border-radius:8px; padding:6px 10px; font-family:var(--font-display); font-weight:700; font-size:12px; color:var(--ink-soft); cursor:pointer; }
.nd-pass-eye:hover{ background:var(--surface-2); color:var(--ink); }
.nd-pass-hint{ font-size:12.5px; font-weight:700; min-height:18px; }
.nd-pass-hint.is-ok{ color:var(--good); }
.nd-pass-hint.is-bad{ color:var(--danger); }
@media (max-width:760px){
	.nd-form-grid, .nd .nd-field-row, .nd .nd-field-row:not(.nd-field-row--3), .nd-field-row--3{ grid-template-columns:minmax(0,1fr); }
	.nd-form-actions .nd-btn{ flex:1; }
}
.nd-pass-card .nd-field{ margin:0; } .nd-pass-card{ gap:14px; }

/* ===== faktury ===== */
.nd-inv-filter{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; background:var(--surface); border-radius:var(--radius-m); padding:12px 16px; margin-bottom:16px; }
.nd-inv-filter__lbl{ display:inline-flex; align-items:center; gap:7px; font-family:var(--font-display); font-weight:800; font-size:13px; margin-right:6px; }
.nd-inv-filter__lbl .nd-ico{ width:16px; height:16px; stroke:var(--accent); }
.nd .nd-inv-filter label{ margin:0; font-size:12.5px; }
.nd .nd-inv-filter input.form-control{ width:140px; min-height:38px; padding:6px 12px; background:#fff; }
.nd-inv-stats{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.nd-inv-stats .nd-card{ padding:16px 18px; display:flex; flex-direction:column; gap:4px; box-shadow:none; }
.nd-inv-stats span{ font-size:11.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-family:var(--font-display); font-weight:800; }
.nd-inv-stats b{ font-family:var(--font-display); font-size:21px; font-weight:900; font-variant-numeric:tabular-nums; }
.nd-inv-stats em{ font-style:normal; font-size:12px; font-weight:700; }
.nd-inv-stats .is-late{ background:#fdecec; border-color:#f5c6c8; }
.nd-inv-stats .is-late b, .nd-inv-stats .is-late em{ color:#b4262b; }
.nd-inv-stats .is-open{ background:var(--deal-soft); border-color:#f3dcae; }
.nd-inv-stats .is-ok{ background:var(--good-soft); border-color:#bfe8d2; }
.nd-inv-table small{ color:var(--ink-faint); font-size:11px; }
.nd .nd-inv-row--late td.nd-inv-left{ color:#b4262b; font-weight:800; }
.nd-status--ok{ background:var(--good-soft); color:var(--good); }
.nd-status--open{ background:var(--deal-soft); color:var(--deal-dark); }
.nd-status--late{ background:#fdecec; color:#b4262b; }
.nd-inv-sn{ font-family:var(--font-body); font-weight:500; font-size:12px; color:var(--ink-faint); margin-top:4px; word-break:break-word; }
.nd-order-head .is-late{ background:#fdecec; }
.nd-order-head .is-late b, .nd-order-head .is-late em{ color:#b4262b; }

/* ===== oferty specjalne ===== */
.nd-offer-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:16px; }
.nd-offer{ display:flex; flex-direction:column; overflow:hidden; transition:border-color .15s, transform .15s; }
.nd-offer:hover{ border-color:var(--ink); transform:translateY(-2px); }
.nd .nd-offer__img{ position:relative; aspect-ratio:5/4; display:flex; align-items:center; justify-content:center; padding:14px; background:#fff; border-bottom:1px solid var(--surface-2); }
.nd-offer__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd-offer__no{ position:absolute; top:10px; left:10px; background:var(--deal); color:#fff; font-family:var(--font-display); font-weight:800; font-size:11px; padding:4px 9px; border-radius:7px; }
.nd-offer__body{ padding:14px 16px 16px; display:flex; flex-direction:column; gap:8px; flex:1; }
.nd .nd-offer__name{ font-family:var(--font-display); font-weight:800; font-size:14.5px; line-height:1.3; color:var(--ink) !important; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nd .nd-offer__name:hover{ color:var(--accent) !important; }
.nd-offer__price{ font-family:var(--font-display); font-weight:900; font-size:21px; color:var(--deal-dark); margin-top:auto; font-variant-numeric:tabular-nums; }
.nd-offer__price small{ font-family:var(--font-body); font-weight:500; font-size:12px; color:var(--ink-faint); }
.nd-offer__meta{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0; background:var(--surface); border-radius:10px; padding:8px 12px; }
.nd-offer__meta dt{ font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-faint); font-weight:700; }
.nd-offer__meta dd{ margin:0; font-family:var(--font-display); font-weight:800; font-size:14px; }
.nd-offer .nd-status{ align-self:flex-start; }
@media (max-width:980px){ .nd-inv-stats{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ .nd .nd-inv-filter input.form-control{ width:calc(50% - 30px); } }
/* przyciski-ikony w tabelach konta (wygrywaly z .box-user .table a) */
.nd .box-user .table a.nd-icon-act{ color:var(--ink-soft) !important; font-weight:400; }
.nd .box-user .table a.nd-icon-act:hover{ color:var(--ink) !important; }
.nd .box-user .table a.nd-icon-act.p_delete:hover{ color:var(--danger) !important; }
.nd .box-user .table a.nd-icon-act--dark, .nd .box-user .table a.nd-icon-act--dark:hover{ color:#fff !important; }

/* ===== konta pracownikow ===== */
.nd-staff-card__top{ display:flex; align-items:center; gap:12px; margin-bottom:6px; }
.nd-staff-card__top .nd-account-avatar{ width:44px; height:44px; font-size:15px; }
.nd-staff-card__top > div{ min-width:0; display:flex; flex-direction:column; }
.nd-staff-card__login{ font-size:12.5px; color:var(--ink-faint); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nd-staff-card__info{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:7px; flex:1; font-size:13.5px; color:var(--ink-soft); }
.nd-staff-card__info li{ display:flex; gap:8px; align-items:flex-start; }
.nd-staff-card__info .nd-ico{ width:15px; height:15px; stroke:var(--accent); margin-top:3px; }
.nd-staff-card__info span{ min-width:0; word-break:break-word; }
.nd-staff-login{ display:flex; align-items:center; gap:12px; padding:4px 0 14px; }
.nd-staff-login > div{ display:flex; flex-direction:column; }
.nd-staff-login span{ font-size:12px; color:var(--ink-faint); font-weight:700; }
.nd-staff-login b{ font-family:var(--font-display); font-size:16px; }

/* ===== ofertowanie - lista ===== */
.nd-ofe-drafts{ margin-bottom:18px; border-color:var(--deal); }
.nd-ofe-filter{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; background:var(--surface); border-radius:var(--radius-m); padding:12px 14px; margin:0 0 16px; }
.nd .nd-ofe-filter .form-control{ width:auto; flex:1 1 150px; min-height:38px; padding:6px 12px; font-size:13.5px; background-color:#fff; }
.nd .nd-ofe-filter select.form-control{ flex:0 1 190px; }
.nd-ofe-table td{ vertical-align:middle !important; }
.nd-ofe-edit{ display:block; font-size:11.5px; color:var(--ink-faint); margin-top:2px; }
.nd .nd-ofe-warn{ display:inline-block; margin-top:4px; font-size:11.5px; font-weight:800; color:#b4262b !important; background:#fdecec; border-radius:6px; padding:2px 7px; }
.nd-status--s0{ background:var(--deal-soft); color:var(--deal-dark); }
.nd-status--s1{ background:var(--good-soft); color:var(--good); }
.nd-status--s2{ background:var(--surface-2); color:var(--ink-soft); }
.nd-ofe-table .s_1, .nd-ofe-table .s_2{ display:flex; align-items:center; gap:6px; }
.nd-ofe-table .s_2 select{ width:150px; min-height:34px; padding:4px 8px; font-size:12.5px; margin:0; }
.nd-ofe-st-btn{ display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:8px; border:1.5px solid var(--line); cursor:pointer; color:var(--ink-soft); background:#fff; }
.nd-ofe-st-btn:hover{ border-color:var(--ink); color:var(--ink); }
.nd-ofe-st-btn--ok{ background:var(--ink); border-color:var(--ink); color:#fff; }
.nd-ofe-st-btn .nd-ico{ width:14px; height:14px; }
.nd-ofe-actions{ display:inline-flex; align-items:center; gap:4px; position:relative; }
.nd .nd-ofe-actions a.nd-icon-act{ margin:0; }
.nd-ofe-more{ position:relative; }
.nd-ofe-more > summary{ list-style:none; cursor:pointer; font-weight:900; font-size:16px; line-height:1; display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:10px; border:1.5px solid var(--line); color:var(--ink-soft); background:#fff; }
.nd-ofe-more > summary::-webkit-details-marker{ display:none; }
.nd-ofe-more[open] > summary{ border-color:var(--ink); color:var(--ink); }
.nd-ofe-menu{ position:absolute; right:0; top:42px; z-index:20; min-width:240px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-pop); padding:6px; display:flex; flex-direction:column; text-align:left; }
.nd .nd-ofe-menu a{ display:flex; align-items:center; gap:8px; padding:9px 10px; border-radius:8px; font-size:13px; font-weight:600 !important; color:var(--ink) !important; white-space:nowrap; }
.nd .nd-ofe-menu a:hover{ background:var(--surface); }
.nd .nd-ofe-menu a .nd-ico{ width:15px; height:15px; stroke:var(--accent); }
.nd .nd-ofe-menu a.nd-ofe-menu__del{ color:var(--danger) !important; border-top:1px solid var(--surface-2); margin-top:4px; border-radius:0 0 8px 8px; }
.nd .nd-ofe-menu a.nd-ofe-menu__del .nd-ico{ stroke:var(--danger); }
.nd .nd-ofe-table.table{ overflow:visible; }
.nd .nd-table-card:has(.nd-ofe-table){ overflow:visible; }

/* ===== ofertowanie - edytor (oferts_list.tpl) ===== */
.nd .oferts{ font-size:14px; }
.nd .oferts > .row:first-child{ margin:0; }
.nd .oferts > .row:first-child > div{ padding:0; }
.nd-ofe-editor{ clear:both; }
.nd .oferts .box-a, .nd .oferts .box-b, .nd .oferts .box-c{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); box-shadow:var(--shadow-card); margin:0 0 16px; padding:18px 8px 6px; }
.nd .oferts .box-a fieldset, .nd .oferts .box-b fieldset, .nd .oferts .box-c fieldset{ background:none; border:none; box-shadow:none; padding:0; margin:0; }
.nd .oferts .box-b > div{ border-right:none !important; }
.nd .oferts .box-b > div + div{ border-left:1px solid var(--surface-2); }
.nd .oferts .box-b legend{ color:var(--ink); font-size:15px; font-weight:800; font-family:var(--font-display); float:none; margin:0 0 12px; }
.nd .oferts .box-b legend .entypo{ color:var(--ink-faint); font-size:14px; }
.nd .oferts .box-a label, .nd .oferts .box-c label{ margin:0 0 6px; font-size:12.5px; font-weight:800; }
.nd .oferts fieldset input, .nd .oferts fieldset textarea{ border:1.5px solid var(--line); }
.nd .oferts #w_img img{ max-height:70px; border-radius:8px; border:1px solid var(--line); float:none; display:inline-block; }
.nd .oferts #file{ padding:9px 16px; font-size:13px; }
.nd-ofe-sec{ display:flex; align-items:center; gap:8px; font-size:18px !important; margin:26px 0 12px !important; }
.nd-ofe-sec .nd-ico{ width:19px; height:19px; stroke:var(--accent); }
.nd .oferts #project{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); box-shadow:var(--shadow-card); padding:14px; }
.nd .oferts table.elements{ border:none; margin-bottom:14px; background:#fff; }
.nd .oferts table.elements > thead > tr > th{ background:var(--surface); color:var(--ink-faint); font-family:var(--font-display); font-size:11px; text-transform:uppercase; letter-spacing:.04em; font-weight:800; border:none !important; padding:10px 8px; vertical-align:middle; }
.nd .oferts table.elements > thead > tr > th:first-child{ border-radius:10px 0 0 10px; }
.nd .oferts table.elements > thead > tr > th:last-child{ border-radius:0 10px 10px 0; }
.nd .oferts table.elements > tbody > tr > td{ border:none !important; border-bottom:1px solid var(--surface-2) !important; vertical-align:middle; font-size:13px; color:var(--ink); background:#fff; padding:10px 8px; }
.nd .oferts table.elements tr td{ font-size:13px; }
.nd .oferts table.elements img{ border-radius:8px; border:1px solid var(--line); background:#fff; object-fit:contain; }
.nd .oferts table.elements input.form-control, .nd .oferts table.elements input[type=text]{ min-height:36px; padding:5px 8px; font-size:13px; }
.nd .oferts table.elements label{ color:var(--ink-soft); font-weight:600; font-size:12.5px; font-family:var(--font-body); display:flex; align-items:center; gap:6px; margin:2px 0; }
.nd .oferts table.elements .entypo{ color:var(--ink-faint); }
.nd .oferts table.elements .entypo:hover{ color:var(--ink); }
.nd .oferts .type_4 td{ background:var(--surface) !important; }
.nd .oferts tr.placeholder td{ text-align:center; padding:26px !important; color:var(--ink-faint); border:2px dashed var(--line) !important; border-radius:12px; }
.nd .oferts .cnx, .nd .oferts table.elements .cnx{ font-family:var(--font-display); font-weight:800; font-size:13.5px; color:var(--ink); }
.nd .oferts .brutto{ font-family:var(--font-body); font-weight:500; font-size:11.5px; color:var(--ink-faint); }
.nd .oferts .cdf, .nd .oferts table.elements [style*="color:#F"], .nd .oferts table.elements [style*="color: #F"]{ color:var(--ink) !important; }
.nd .oferts .size{ font-size:12.5px; color:var(--ink-soft); padding-left:15px !important; display:flex; align-items:center; gap:5px; min-height:40px; }
.nd .oferts .size a{ color:var(--accent) !important; font-weight:700; }
.nd .oferts #action_click{ padding:9px 16px; font-size:13px; }
.nd .oferts .box-e{ display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; padding:0 15px 16px; }
.nd .button-c, .nd .oferts .button-c{ display:inline-flex; align-items:center; justify-content:center; gap:6px; border:1.5px solid var(--line); border-radius:10px; padding:9px 14px; margin:0; font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink) !important; background:#fff; text-decoration:none !important; }
.nd .button-c:hover{ border-color:var(--ink); background:#fff; }
.nd .button-c .entypo{ margin:0; color:var(--accent); }
.nd .oferts .t_nm{ color:var(--ink-soft); font-size:13.5px; border:none; border-bottom:1px solid var(--surface-2); padding:10px 14px; }
.nd .oferts .t_va{ background:var(--surface); border:none; border-bottom:1px solid #fff; padding:10px 18px; text-align:right; }
.nd .oferts #c_w_k .cdx{ color:var(--accent-dark); }
.nd .oferts #c_z .cdx{ color:var(--good); }
.nd .oferts .box-d{ border:none; padding:16px 0 0; display:flex; flex-direction:column; gap:8px; text-align:right; }
.nd .oferts .box-d br{ display:none; }
.nd .oferts .box-d .button-c{ width:100%; }
.nd .oferts .box-d #save_ofe{ background:var(--accent); border-color:var(--accent); color:#fff !important; }
.nd .oferts .box-d #save_ofe .entypo{ color:#fff; }
.nd .oferts .box-d .a_to_c{ background:var(--ink); border-color:var(--ink); color:#fff !important; }
.nd .oferts .box-d .a_to_c .entypo{ color:#fff; }
.nd .oferts .box-d .circled-cross{ color:var(--danger); }
/* wysuwany panel produktow */
.nd #menut{ top:130px; border:1px solid var(--line); border-radius:14px 0 0 14px !important; background:#fff; box-shadow:var(--shadow-pop); z-index:1020; height:520px; }
.nd #menut .iy1{ background:var(--accent); height:520px; border-radius:13px 0 0 13px; padding:8px 4px; }
.nd #menut .iy1:hover{ background:var(--accent-dark); }
.nd #menut .iy1 .text{ font-family:var(--font-display); font-size:13px; letter-spacing:.06em; text-transform:uppercase; border-color:rgba(255,255,255,.4); }
.nd #menut .arrow-b{ margin-top:370px; }
.nd #menut .iy2{ margin-top:-520px; padding:12px 10px 10px 4px; width:380px; }
.nd #menut .iy2 > .title{ font-family:var(--font-display); font-weight:800; font-size:15px; color:var(--ink); margin:0 0 10px; }
.nd #menut .input-group-addon{ font-size:12px; font-family:var(--font-display); font-weight:700; }
.nd #menut select{ font-size:13px; }
.nd #menut .list{ height:330px; border-top:1px solid var(--surface-2); padding-top:6px; }
.nd #menut .menut_li{ border:1px solid var(--line); border-radius:10px; margin:6px 0; padding:8px; cursor:grab; }
.nd #menut .menut_li:hover{ border-color:var(--ink); }
.nd #menut .menut_li img{ width:64px; height:48px; object-fit:contain; float:left; margin-right:8px; }
.nd #menut .menut_li span{ font-family:var(--font-display); font-weight:700; font-size:12.5px; color:var(--ink); }
.nd #menut .add_to_list{ display:inline-block; margin-top:6px; background:var(--ink); border-radius:8px; font-family:var(--font-display); font-weight:700; font-size:12px; color:#fff !important; }
.nd #menut .iy2 > p:last-child{ font-size:12px; color:var(--ink-faint); margin:8px 0 0; }
@media (max-width:980px){ .nd .oferts .box-b > div + div{ border-left:none; border-top:1px solid var(--surface-2); padding-top:14px; } }
.nd .nd-ofe-editor td.dr_p > div{ display:grid; grid-template-columns:18px 1fr; gap:5px 6px; align-items:center; }
.nd .nd-ofe-editor td.dr_p br{ display:none; }
.nd .nd-ofe-editor td.dr_p input[type=radio]{ margin:0; }
.nd .nd-ofe-editor td.dr_p label{ display:inline; margin:0; }
.nd .nd-ofe-editor td.dr_p > div > span{ grid-column:2; display:flex; align-items:center; gap:5px; flex-wrap:wrap; }
.nd .nd-ofe-editor td.dr_p > div > span[style*="none"]{ display:none !important; }
.nd .nd-ofe-editor td.dr_p input.percent_rab, .nd .nd-ofe-editor td.dr_p input.percent_nar, .nd .nd-ofe-editor td.dr_p input.price{ width:64px !important; min-height:32px; padding:3px 6px; border:1.5px solid var(--line); border-radius:8px; }
.nd .nd-ofe-editor td.dr_p select{ min-height:32px; padding:2px 6px; font-size:12px; border-radius:8px; }
.nd-ofe-show__act{ display:flex; gap:8px; flex-wrap:wrap; }
.nd-ofe-logo img{ max-height:54px; max-width:160px; object-fit:contain; }
.nd .nd-ofe-show .t_va{ text-align:right; }
.nd .nd-ofe-show table.elements td.dr_p label{ display:inline; font-weight:700; color:var(--ink-soft); }

/* ===== kreator bram (kreator-bram.tpl + nice.css) ===== */
.nd #form-creator h1.title{ border:none; padding:0; margin:14px 0 22px; }
.nd #form-creator > .row{ margin-left:0; margin-right:0; }
.nd #form-creator .img_0{ margin-top:0; }
.nd #form-creator .img_0 img{ border-radius:12px; }
.nd #form-creator .progress{ height:8px; border-radius:99px; background:var(--surface-2); box-shadow:none; margin:0 0 12px; }
.nd #form-creator .progress-bar{ background-color:var(--accent); font-size:0; box-shadow:none; }
.nd #form-creator .box-text{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-l); box-shadow:var(--shadow-card); padding:20px 22px; }
.nd #form-creator .box-text > .row{ margin:0; }
.nd #form-creator .box-text .text-s{ background:var(--accent-soft); color:var(--accent-dark); font-family:var(--font-display); font-weight:800; font-size:14px; border-radius:999px !important; padding:8px 16px; margin:0 0 14px; }
.nd #form-creator .box-text .row.text-center{ text-align:left; }
.nd #form-creator .box-text .text-t{ background:none; height:auto; min-height:220px; font-size:14.5px; line-height:1.6; color:var(--ink-soft); display:flex; align-items:center; }
.nd #form-creator .box-text .text-t > div{ padding:6px !important; }
.nd #form-creator .box-text .text-t b, .nd #form-creator .box-text .text-t strong{ color:var(--ink); }
.nd #form-creator .box-text .text-t .entypo{ font-size:5em; background:var(--surface); color:var(--accent); border-radius:18px; padding:4px 22px; }
.nd #form-creator .box-text .text-t img{ max-width:100%; border-radius:12px; margin:0 !important; }
/* krok 1 - suwaki parametrow */
.nd #form-creator #step_1{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:18px 0 0; }
.nd #form-creator #step_1 > .element{ width:auto; float:none; }
.nd #form-creator .element{ font-size:13px; padding:18px 20px; border:1px solid var(--line); border-radius:var(--radius-m); background:#fff; height:auto; box-shadow:var(--shadow-card); }
.nd #form-creator #step_1 .element{ cursor:default; }
.nd #form-creator .element fieldset{ border:none; margin:0; padding:0; background:none; box-shadow:none; }
.nd #form-creator .element .row{ margin:0; }
.nd #form-creator .element .form-group{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 12px; }
.nd #form-creator .element .form-group > label.control-label{ width:auto; flex:1; text-align:left; padding:0; font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--ink); }
.nd #form-creator .element .form-group > .input-group{ width:auto; flex:0 0 auto; display:flex; }
.nd #form-creator .slider_input{ color:var(--ink); font-family:var(--font-display); font-weight:900; font-size:16px; width:84px !important; min-height:40px; text-align:right; }
.nd #form-creator .element .form-group > .input-group > .input-group-addon{ font-size:12.5px; color:var(--ink-soft); display:flex; align-items:center; }
.nd #form-creator .slider{ display:flex; align-items:center; }
.nd #form-creator .slider > div{ float:none; }
.nd #form-creator .slider_m{ color:var(--ink-faint); font-size:12px; font-family:var(--font-display); font-weight:700; }
.nd #form-creator .ui-widget-content{ background:var(--surface-2); border:none; border-radius:99px; height:8px; }
.nd #form-creator .ui-widget-header{ background:var(--accent); border:none; border-radius:99px; }
.nd #form-creator .ui-slider .ui-slider-handle{ width:22px; height:22px; top:-7px; margin-left:-11px; border-radius:999px; background:#fff; border:3px solid var(--accent); box-shadow:0 2px 6px rgba(20,18,40,.18); cursor:grab; }
.nd #form-creator .ui-slider .ui-slider-handle:focus{ outline:3px solid var(--accent-soft); }
.nd #form-creator #step_1 .col-xs-7{ width:auto; float:none; padding:0; }
.nd #form-creator #step_1 .input-group[style*="max-width:280px"]{ max-width:none !important; margin-bottom:8px; }
.nd #form-creator #rozstaw{ height:40px !important; }
/* kroki 2-6 - wybor produktow */
.nd #form-creator .step_list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; height:auto; max-height:430px; overflow-y:auto; padding:4px; margin:18px 0 0; }
.nd #form-creator .step_list > .element{ width:auto; float:none; }
.nd #form-creator .step_list .element{ cursor:pointer; transition:border-color .15s, box-shadow .15s; padding:14px; }
.nd #form-creator .step_list .element:hover{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset, var(--shadow-card); }
.nd #form-creator .step_list .element .row{ display:flex; align-items:center; gap:12px; }
.nd #form-creator .step_list .element .row > div{ width:auto; float:none; padding:0; }
.nd #form-creator .step_list .element .row > .col-xs-9{ flex:1; min-width:0; }
.nd #form-creator .element img{ width:84px; height:64px; object-fit:contain; border:1px solid var(--surface-2); border-radius:10px; background:#fff; }
.nd #form-creator .element .title{ color:var(--ink); font-family:var(--font-display); font-weight:800; font-size:14px; line-height:1.3; margin-bottom:4px; }
.nd #form-creator .element .pr-a .ca, .nd #form-creator .element .pr-b .ca{ font-size:16px; }
/* przyciski krokow */
.nd #form-creator .box-button{ background:none; padding:18px 0 0; float:none; }
.nd #form-creator .box-button .text-center{ display:flex; justify-content:center; gap:10px; }
.nd #form-creator .step_button{ min-width:170px; padding:13px 24px; font-size:14.5px; }
.nd #form-creator .step_button.disabled, .nd #form-creator .step_button[disabled]{ opacity:.4; cursor:not-allowed; }
.nd #form-creator .step_button .entypo{ color:inherit; }
/* wynik - zestaw */
.nd #form-creator .box-c, .nd #form-creator #text-7{ background:var(--surface); border-radius:var(--radius-m); padding:16px 20px; margin:16px 0 0; font-size:14px; color:var(--ink-soft); }
.nd #form-creator #set-text{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-l); box-shadow:var(--shadow-card); padding:24px; margin-top:18px; width:100%; }
.nd #form-creator #list_title{ background:var(--accent-soft); color:var(--accent-dark); border-radius:12px; padding:14px 18px; margin:0 0 16px; font-size:14.5px; }
.nd #form-creator #list_title b{ color:var(--ink); }
.nd #form-creator #set-text h4{ font-family:var(--font-display); font-size:16px; }
.nd #form-creator #set-text h4 span[style]{ color:var(--ink) !important; font-size:26px !important; font-weight:900; }
.nd #form-creator #set-text > a.button-b, .nd #form-creator #kreator_list > a.button-b{ margin:4px; }
.nd #form-creator #set-text .entypo{ color:inherit; }
.nd #form-creator #kreator_list{ background:none; }
.nd #form-creator #kreator_list > p{ font-family:var(--font-display); font-weight:800; color:var(--ink); text-align:left; margin:10px 0; }
.nd #form-creator #list_elements{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; height:auto; max-height:420px; background:none; padding:2px; }
.nd #form-creator .list_ele{ width:auto; float:none; height:auto; border:1px solid var(--line); border-radius:12px; padding:12px; background:#fff; display:flex; gap:12px; align-items:center; text-align:left; font-size:13px; cursor:default; }
.nd #form-creator .list_ele > .row{ display:flex; gap:12px; align-items:center; margin:0; width:100%; }
.nd #form-creator .list_ele .row > div{ float:none; padding:0; }
.nd #form-creator .list_ele img{ width:72px; height:56px; object-fit:contain; border-radius:8px; border:1px solid var(--surface-2); }
.nd #form-creator .list_ele .box-a{ float:none; width:auto; flex:1; padding:0; background:none; border:none; }
.nd #form-creator .list_ele p{ width:auto; float:none; font-family:var(--font-display); font-size:13.5px; margin:0 0 4px; }
.nd #form-creator .list_ele input.count{ width:44px; padding:6px 0; border:1.5px solid var(--line); border-radius:8px; }
.nd #form-creator .i_minus, .nd #form-creator .i_plus{ color:var(--ink-soft); }
/* modale */
.nd #form-creator .modal-content{ border:none; border-radius:var(--radius-l); box-shadow:var(--shadow-pop); }
.nd #form-creator .modal-header, .nd #form-creator .modal-footer{ border-color:var(--surface-2); }
.nd #form-creator .modal-header h4{ font-family:var(--font-display); font-weight:800; }
.nd #form-creator .btn-primary{ background:var(--accent); border-color:var(--accent); border-radius:10px; font-family:var(--font-display); font-weight:800; }
.nd #form-creator .btn-default{ border-radius:10px; font-family:var(--font-display); font-weight:700; }
.nd .popover{ border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-pop); font-family:var(--font-body); }
.nd .popover-title{ font-family:var(--font-display); font-weight:800; background:var(--surface); border-radius:12px 12px 0 0; }
@media (max-width:760px){
	.nd #form-creator #step_1, .nd #form-creator .step_list, .nd #form-creator #list_elements{ grid-template-columns:minmax(0,1fr); }
	.nd #form-creator .step_button{ min-width:0; flex:1; }
}

/* ekran startowy kreatora */
.nd-kb-hero{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:28px; align-items:center; padding:clamp(22px,3.4vw,40px); margin-top:14px; }
.nd-kb-hero h1.title{ margin:10px 0 10px !important; }
.nd-kb-hero .nd-lead{ margin:0 0 18px; }
.nd-kb-hero__img{ display:block; background:var(--surface); border-radius:var(--radius-l); padding:14px; }
.nd-kb-hero__img img{ width:100%; height:auto; border-radius:12px; }
.nd-kb-steps{ list-style:none; margin:0 0 22px; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.nd-kb-steps li{ display:flex; align-items:center; gap:8px; font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink); background:var(--surface); border-radius:10px; padding:9px 10px; }
.nd-kb-steps b{ width:24px; height:24px; border-radius:999px; background:var(--accent); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:12px; flex-shrink:0; }
.nd-kb-note{ margin:12px 0 0; font-size:13px; color:var(--ink-faint); }
@media (max-width:860px){ .nd-kb-hero{ grid-template-columns:minmax(0,1fr); } .nd-kb-steps{ grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* ===== porownywarka ===== */
.nd-compare-diff{ margin:0 !important; }
.nd .nd-compare-wrap{ padding:0; overflow:hidden; }
.nd .nd-compare-wrap .inner{ overflow-x:auto; }
.nd-compare-table{ border-collapse:separate; border-spacing:0; width:100%; min-width:640px; }
.nd-compare-table th, .nd-compare-table td{ border-bottom:1px solid var(--surface-2); padding:12px 16px; vertical-align:top; font-size:14px; text-align:left; }
.nd-compare-table tbody th, .nd-compare-corner{ position:sticky; left:0; z-index:2; background:#fff; width:220px; min-width:180px; font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink-soft); box-shadow:1px 0 0 var(--surface-2); }
.nd-compare-corner span{ font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-weight:800; }
.nd-compare-prod{ min-width:210px; padding:18px 16px !important; }
.nd .nd-compare-prod__img{ display:flex; align-items:center; justify-content:center; height:140px; background:#fff; border:1px solid var(--surface-2); border-radius:12px; padding:8px; margin-bottom:10px; }
.nd-compare-prod__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd .nd-compare-prod__name{ display:block; font-family:var(--font-display); font-weight:800; font-size:14px; line-height:1.3; color:var(--ink) !important; margin-bottom:8px; min-height:36px; }
.nd-compare-prod__price{ margin-bottom:10px; font-family:var(--font-display); font-weight:900; font-size:18px; }
.nd-compare-prod__price *{ font-size:inherit; }
.nd-compare-table tr.is-diff td{ background:var(--accent-soft); color:var(--ink); font-weight:600; }
.nd-compare-table tr.is-diff th{ color:var(--ink); }
.nd-compare-table tbody tr:hover td, .nd-compare-table tbody tr:hover th{ background:var(--surface); }
.nd-compare.only-diff tr.is-same{ display:none; }
/* pasek "do porownania" na liscie */
.nd .nd-compare-bar{ position:fixed; left:50%; bottom:16px; transform:translateX(-50%); z-index:1010; display:flex; align-items:center; gap:14px; background:var(--ink); color:#fff; border-radius:16px; padding:10px 12px 10px 18px; box-shadow:var(--shadow-pop); max-width:calc(100vw - 24px); }
.nd-compare-bar__lbl{ display:inline-flex; align-items:center; gap:7px; font-family:var(--font-display); font-weight:800; font-size:13px; white-space:nowrap; }
.nd-compare-bar__lbl small{ font-weight:500; opacity:.6; }
.nd-compare-bar__lbl .nd-ico{ width:16px; height:16px; }
.nd-compare-bar__slots{ display:flex; gap:8px; }
.nd .nd-compare-bar .por{ position:relative; width:52px; height:52px; border-radius:10px; background:rgba(255,255,255,.08); border:1.5px dashed rgba(255,255,255,.3); display:flex; align-items:center; justify-content:center; margin:0; float:none; }
.nd .nd-compare-bar .por img{ width:100%; height:100%; object-fit:contain; background:#fff; border-radius:9px; }
.nd .nd-compare-bar .por:has(img){ border-style:solid; border-color:#fff; }
.nd .nd-compare-bar .por .entypo{ position:absolute; top:-7px; right:-7px; width:20px; height:20px; border-radius:999px; background:#fff; color:var(--danger); display:flex; align-items:center; justify-content:center; font-size:14px; cursor:pointer; line-height:1; }
.nd .nd-compare-bar .por .entypo.hidden{ display:none !important; }
.nd .nd-p-card__extra a.check.nd-cmp{ display:inline-flex; align-items:center; gap:5px; }
.nd .nd-p-card__extra a.check.nd-cmp::before{ content:''; width:14px; height:14px; border:1.5px solid var(--line); border-radius:4px; background:#fff; }
.nd .nd-p-card__extra a.check.nd-cmp.is-on::before{ background:var(--accent); border-color:var(--accent); box-shadow:inset 0 0 0 2px #fff; }
.nd .nd-p-card__extra a.check.nd-cmp.is-on, .nd .nd-p-card__extra a.check.nd-cmp.is-on span{ color:var(--accent) !important; font-weight:700; }
@media (max-width:640px){ .nd .nd-compare-bar{ gap:8px; padding:8px; } .nd-compare-bar__lbl{ display:none; } .nd .nd-compare-bar .por{ width:44px; height:44px; } }
.nd #form-creator .img_0 img{ border-radius:var(--radius-l); }
.nd #form-creator #step_1 .col-xs-7 .input-group{ display:flex; width:100%; margin-bottom:8px; }
.nd #form-creator #step_1 .col-xs-7 .input-group > *{ display:flex; align-items:center; width:auto !important; }
.nd #form-creator #step_1 .col-xs-7 .input-group > .input-group-addon:first-child{ flex:0 0 118px; justify-content:flex-start; }
.nd #form-creator #step_1 .col-xs-7 .input-group > input{ flex:1; min-width:60px; }
.nd #form-creator #step_1 .col-xs-7 .input-group > .input-group-addon:last-child{ flex:1; }
.nd #form-creator #step_1 .col-xs-7 .input-group label{ padding:0 !important; margin:0 0 0 6px; font-weight:700; width:auto !important; }
.nd #form-creator #step_1 .col-xs-7 .pull-left{ display:flex; align-items:center; float:none; }
.nd #form-creator #step_1 .element .form-group:has(.col-xs-7){ align-items:flex-start; flex-wrap:wrap; }
.nd #form-creator .list_ele .col-xs-9{ flex:1; min-width:0; display:flex; flex-direction:column; gap:6px; }
.nd #form-creator .list_ele .col-xs-9 > .row{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin:0; }
.nd #form-creator .list_ele .col-xs-9 > .row:first-child > div:first-child{ font-family:var(--font-display); font-weight:800; font-size:13.5px; color:var(--ink); }
.nd #form-creator .list_ele .col-xs-9 > .row > div{ width:auto; float:none; padding:0; margin:0; }
.nd #form-creator .list_ele .quantity{ display:flex; align-items:center; gap:6px; font-size:12.5px; }
.nd #form-creator .list_ele .close{ opacity:.5; font-size:18px; }
.nd #form-creator .list_ele .close:hover{ opacity:1; color:var(--danger); }
.nd .product-list.nd-list-card .title{ display:block; padding:0; margin:0; height:auto; min-height:0; font-size:inherit; text-align:left; background:none; border:none; line-height:inherit; }
.nd .product-list.nd-list-card .title a{ font-size:14.5px; padding:0; margin:0; }
.nd-compare-prod__price, .nd-compare-prod__price *{ color:var(--ink) !important; background:none !important; }
.nd .product-list.nd-list-card .title a.nd-p-card__name{ font-family:var(--font-display); font-weight:800; font-size:14.5px; line-height:1.3; color:var(--ink) !important; text-transform:none; display:-webkit-box; }
.nd .nd-compare-bar #compare-click{ text-transform:none; color:#fff !important; }

/* ===== wyszukiwarka ===== */
.nd-search-head{ padding:22px 24px; margin:6px 0 20px; }
.nd-search-head .nd-h-section{ margin:6px 0 14px; word-break:break-word; }
.nd-search-head ~ h1.title, .nd-brand-head ~ h1.title{ display:none; }
.nd-search-form{ display:flex; align-items:center; gap:10px; border:1.5px solid var(--line); border-radius:14px; padding:6px 6px 6px 16px; background:#fff; max-width:720px; }
.nd-search-form:focus-within{ border-color:var(--ink); }
.nd-search-form > .nd-ico{ width:19px; height:19px; stroke:var(--ink-faint); }
.nd .nd-search-form input[type=search]{ flex:1; min-width:0; border:none !important; outline:none; font-size:15.5px; padding:8px 0; background:transparent; box-shadow:none; }
.nd-search-form .nd-btn{ padding:11px 20px; }
.nd-search-count{ margin:12px 0 0; font-size:13.5px; color:var(--ink-soft); }
.nd-search-count b{ color:var(--ink); }
.nd-search-cats{ display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:14px; padding-top:14px; border-top:1px solid var(--surface-2); font-size:13px; }
.nd-search-cats > span{ font-family:var(--font-display); font-weight:800; font-size:12px; color:var(--ink-faint); margin-right:4px; }
.nd .nd-search-cats a{ display:inline-flex; align-items:center; gap:6px; border:1.5px solid var(--line); border-radius:999px; padding:5px 12px; font-family:var(--font-display); font-weight:700; font-size:12.5px; color:var(--ink) !important; background:#fff; }
.nd .nd-search-cats a small{ font-weight:600; color:var(--ink-faint); font-size:11px; }
.nd .nd-search-cats a:hover{ border-color:var(--ink); }
.nd .nd-search-cats a.is-active{ background:var(--ink); border-color:var(--ink); color:#fff !important; }
.nd .nd-search-cats a.is-active small{ color:rgba(255,255,255,.7); }
.nd .nd-search-cats a.nd-search-cats__all{ border-style:dashed; color:var(--ink-soft) !important; }
.nd .nd-empty-state .nd-muted{ max-width:52ch; font-size:13.5px; }
/* autouzupelnianie w naglowku (jquery.autocomplete) */
.nd .autocomplete-suggestions{ background:#fff; border:1px solid var(--line) !important; border-radius:12px; box-shadow:var(--shadow-pop); overflow-y:auto; padding:6px; font-family:var(--font-body); }
.nd .autocomplete-suggestion{ padding:8px 10px; border-radius:8px; font-size:13.5px; color:var(--ink); cursor:pointer; white-space:normal; }
.nd .autocomplete-suggestion strong{ color:var(--accent); font-weight:800; }
.nd .autocomplete-selected{ background:var(--surface); }
.nd .autocomplete-suggestion img{ max-height:40px; border-radius:6px; margin-right:8px; vertical-align:middle; }

/* ===== producent ===== */
.nd-brand-head{ display:flex; align-items:center; gap:22px; padding:22px 24px; margin:6px 0 20px; }
.nd-brand-head__logo{ flex-shrink:0; width:120px; height:84px; border-radius:14px; border:1px solid var(--line); background:#fff; display:flex; align-items:center; justify-content:center; padding:10px; }
.nd-brand-head__logo img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd-brand-head__logo span{ font-family:var(--font-display); font-weight:900; font-size:30px; color:var(--accent); letter-spacing:-.02em; }
.nd-brand-head .nd-h-section{ margin:4px 0 0; }
.nd-brand-head .nd-search-count{ margin-top:8px; }
/* lista producentow */
.nd-brands-az{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 22px; position:sticky; top:67px; z-index:5; background:rgba(255,255,255,.96); padding:8px 0; }
.nd .nd-brands-az a{ min-width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border:1.5px solid var(--line); border-radius:9px; font-family:var(--font-display); font-weight:800; font-size:13px; color:var(--ink) !important; background:#fff; }
.nd .nd-brands-az a:hover{ border-color:var(--ink); }
.nd-brands-group{ margin-bottom:24px; scroll-margin-top:130px; }
.nd .nd-brands-letter{ font-size:22px !important; font-weight:900; color:var(--accent); margin:0 0 10px; }
.nd-brands-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px; }
.nd .nd-brand-tile{ display:flex; align-items:center; gap:12px; padding:12px 14px; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-brand-tile:hover{ border-color:var(--ink); transform:translateY(-1px); }
.nd-brand-tile__logo{ flex-shrink:0; width:56px; height:42px; border-radius:9px; background:var(--surface); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-brand-tile__logo img{ max-width:100%; max-height:100%; object-fit:contain; background:#fff; }
.nd-brand-tile__logo span{ font-family:var(--font-display); font-weight:900; font-size:15px; color:var(--accent); }
.nd-brand-tile b{ flex:1; min-width:0; font-family:var(--font-display); font-size:14.5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nd-brand-tile .nd-ico{ width:15px; height:15px; stroke:var(--ink-faint); }
.nd .nd-brand-tile:hover .nd-ico{ stroke:var(--accent); }
@media (max-width:640px){
	.nd-brand-head{ flex-direction:column; align-items:flex-start; }
	.nd-search-form .nd-btn{ padding:10px 14px; }
}
.nd-search-head ~ .nd-toolbar > span:first-child, .nd-brand-head ~ .nd-toolbar > span:first-child{ visibility:hidden; }
.nd-brand-tile b{ white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; line-height:1.25; }

/* produkt: koszt wysylki pod przyciskami zakupu */
.nd .nd-ship-box{ display:flex; align-items:center; gap:14px; margin:16px 0 4px; padding:14px 16px; border-radius:14px; background:var(--accent); color:#fff !important; box-shadow:0 10px 24px -12px rgba(30,64,175,.6); transition:transform .15s, background .15s; }
.nd .nd-ship-box:hover{ background:var(--accent-dark); transform:translateY(-1px); }
.nd-ship-box__ico{ flex-shrink:0; width:46px; height:46px; border-radius:12px; background:rgba(255,255,255,.18); display:flex; align-items:center; justify-content:center; }
.nd-ship-box__ico .nd-ico{ width:24px; height:24px; stroke:#fff; }
.nd-ship-box__txt{ display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 8px; min-width:0; }
.nd-ship-box__txt > span{ font-family:var(--font-display); font-weight:700; font-size:14px; opacity:.9; }
.nd-ship-box__txt b{ font-family:var(--font-display); font-weight:900; font-size:22px; letter-spacing:-.01em; line-height:1.1; }
.nd-ship-box__txt small{ flex-basis:100%; font-size:12px; opacity:.8; }
.nd .nd-ship-box.is-free{ background:var(--good); box-shadow:0 10px 24px -12px rgba(23,163,99,.7); }
.nd .nd-ship-box.is-free:hover{ background:#12894f; }
.nd .nd-ship-box{ background:var(--deal-soft); color:var(--ink) !important; border:2px solid var(--deal); box-shadow:0 10px 24px -14px rgba(242,169,59,.9); }
.nd .nd-ship-box:hover{ background:#fbe6c2; }
.nd .nd-ship-box .nd-ship-box__ico{ background:var(--deal); }
.nd .nd-ship-box .nd-ship-box__txt > span{ color:var(--ink-soft); opacity:1; }
.nd .nd-ship-box .nd-ship-box__txt b{ color:var(--deal-dark); }
.nd .nd-ship-box .nd-ship-box__txt small{ color:var(--ink-soft); opacity:1; }
.nd .nd-ship-box.is-free{ background:var(--good-soft); border-color:var(--good); box-shadow:0 10px 24px -14px rgba(23,163,99,.8); }
.nd .nd-ship-box.is-free:hover{ background:#d3f1e1; }
.nd .nd-ship-box.is-free .nd-ship-box__ico{ background:var(--good); }
.nd .nd-ship-box.is-free .nd-ship-box__txt b{ color:var(--good); }
/* promocje / nowosci */
.nd-listing-head{ display:flex; align-items:center; gap:20px; }
.nd-listing-head .nd-h-section{ margin:4px 0 0; }
.nd-listing-head__ico{ flex-shrink:0; width:64px; height:64px; border-radius:18px; display:flex; align-items:center; justify-content:center; }
.nd-listing-head__ico .nd-ico{ width:30px; height:30px; stroke:#fff; }
.nd-listing-head.is-promo{ background:linear-gradient(100deg,var(--deal-soft),#fff 60%); border-color:#f3dcae; }
.nd-listing-head.is-promo .nd-listing-head__ico{ background:var(--deal); }
.nd-listing-head.is-promo .nd-eyebrow{ color:var(--deal-dark); }
.nd-listing-head.is-promo .nd-eyebrow::before{ background:var(--deal); }
.nd-listing-head.is-new{ background:linear-gradient(100deg,var(--accent-soft),#fff 60%); border-color:#d6dcff; }
.nd-listing-head.is-new .nd-listing-head__ico{ background:var(--accent); }
@media (max-width:640px){ .nd-listing-head__ico{ width:48px; height:48px; } }

/* produkt: panel "Dostawa i platnosc" pod przyciskami zakupu */
.nd-ship-panel{ margin:16px 0 4px; border:2px solid var(--deal); border-radius:16px; background:var(--deal-soft); box-shadow:0 10px 24px -14px rgba(242,169,59,.9); overflow:hidden; scroll-margin-top:100px; }
.nd-ship-panel__head{ display:flex; align-items:center; gap:12px; padding:12px 16px 4px; }
.nd-ship-panel__head .nd-ship-box__ico{ width:40px; height:40px; border-radius:11px; background:var(--deal); }
.nd-ship-panel__head .nd-ship-box__ico .nd-ico{ width:21px; height:21px; }
.nd-ship-panel__head > b{ font-family:var(--font-display); font-weight:900; font-size:16px; color:var(--ink); }
.nd-ship-panel__free{ margin-left:auto; background:var(--good); color:#fff; font-family:var(--font-display); font-weight:800; font-size:12px; border-radius:8px; padding:5px 10px; }
.nd .nd-ship-panel__cost{ padding:2px 16px 8px 68px; }
.nd .nd-ship-panel__cost .row{ display:flex; align-items:baseline; gap:10px; justify-content:flex-start; border:none; padding:0; font-size:14px; }
.nd .nd-ship-panel__cost .row > div{ width:auto; padding:0; float:none; }
.nd .nd-ship-panel__cost .title{ font-family:var(--font-display); font-weight:700; color:var(--ink-soft); font-size:14px; }
.nd .nd-ship-panel__cost .shipping{ text-align:left; }
.nd .nd-ship-panel__cost .shipping > b{ font-family:var(--font-display); font-weight:900; font-size:24px; color:var(--deal-dark); letter-spacing:-.01em; }
.nd .nd-ship-panel__cost .brutto{ display:inline; margin-left:6px; }
.nd-ship-panel__rows{ background:#fff; border-top:1px solid #f3dcae; padding:10px 16px; display:flex; flex-direction:column; gap:8px; font-size:13.5px; color:var(--ink-soft); }
.nd-ship-panel__rows > div{ display:flex; gap:9px; align-items:center; }
.nd-ship-panel__rows .nd-ico{ width:17px; height:17px; stroke:var(--deal-dark); }
.nd-ship-panel__rows b{ color:var(--ink); }
.nd-ship-panel__stock{ background:#fff; border-top:1px solid var(--surface-2); padding:10px 16px; }
.nd-ship-panel__stock select{ margin-bottom:8px; }
.nd-ship-panel__stock .nd-stock-rows{ margin:0; font-size:13px; }
.nd-ship-panel__pay{ background:#fff; border-top:1px solid var(--surface-2); padding:10px 16px 12px; display:flex; flex-wrap:wrap; align-items:center; gap:6px; font-size:13px; color:var(--ink-soft); }
.nd-ship-panel__pay > span:first-child{ font-family:var(--font-display); font-weight:800; color:var(--ink); margin-right:2px; }
.nd-ship-panel__pay .nd-pay-chip{ border:1px solid var(--line); background:var(--surface); color:var(--ink-soft); border-radius:7px; padding:3px 8px; font-size:11.5px; }
.nd-ship-panel__pay img{ max-height:30px; width:auto; }
.nd-ship-panel.is-free{ border-color:var(--good); background:var(--good-soft); box-shadow:0 10px 24px -14px rgba(23,163,99,.8); }
.nd-ship-panel.is-free .nd-ship-box__ico{ background:var(--good); }
.nd-ship-panel.is-free .nd-ship-panel__rows{ border-top-color:#bfe8d2; }
.nd-ship-panel.is-free .nd-ship-panel__rows .nd-ico{ stroke:var(--good); }
@media (max-width:640px){ .nd .nd-ship-panel__cost{ padding-left:16px; } }
.nd .nd-ship-panel .choose-show{ border:none !important; padding:0 !important; background:none !important; color:var(--accent) !important; font-weight:700; margin:0 !important; }

/* ===== kreator kabli ===== */
.nd-kk-hero{ display:flex; align-items:center; gap:24px; padding:22px 26px; margin:6px 0 18px; background:linear-gradient(100deg,var(--accent-soft),#fff 65%); }
.nd-kk-hero__img{ width:150px; height:auto; flex-shrink:0; }
.nd-kk-hero h1.title{ margin:6px 0 6px !important; }
.nd-kk-hero .nd-lead{ margin:0; }
.nd-kk-info{ margin:0 0 22px; }
.nd-kk-info__lead{ font-family:var(--font-display); font-weight:800; font-size:15px; color:var(--ink); margin:0 0 12px; }
.nd-kk-steps{ list-style:none; counter-reset:kk; margin:0 0 12px; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.nd-kk-steps li{ counter-increment:kk; background:var(--surface); border-radius:12px; padding:12px 14px 12px 50px; position:relative; font-size:13.5px; line-height:1.5; color:var(--ink-soft); }
.nd-kk-steps li::before{ content:counter(kk); position:absolute; left:12px; top:12px; width:26px; height:26px; border-radius:999px; background:var(--accent); color:#fff; font-family:var(--font-display); font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center; }
.nd-kk-info__note{ display:flex; align-items:flex-start; gap:8px; font-size:13.5px; color:var(--ink-soft); margin:0; }
.nd-kk-info__note .nd-ico{ width:17px; height:17px; stroke:var(--good); margin-top:2px; }
.nd .creator .k0{ display:flex; flex-direction:column; gap:8px; }
.nd .creator .step.btn{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0; width:100%; white-space:normal; text-align:left; background:#fff; border:1.5px solid var(--line); border-radius:14px; padding:14px 18px; box-shadow:none; color:var(--ink); font-size:14px; cursor:pointer; }
.nd .creator .step.btn:hover{ border-color:var(--ink-faint); background:#fff; }
.nd .creator .step.btn > div{ width:auto; float:none; padding:0; margin:0 !important; }
.nd .creator .step.btn > div:first-child{ flex:0 0 280px; font-family:var(--font-display); font-weight:800; }
.nd .creator .step.btn > .sel{ flex:1; min-width:0; color:var(--accent); font-weight:700; }
.nd .creator .step.btn > div:last-child{ margin-left:auto !important; }
.nd .creator .step.krok_zaz{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; background:var(--accent-soft); }
.nd .creator .step .ok{ color:var(--good); font-size:20px; margin:0 !important; }
.nd .creator #k2 .input-group{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; width:auto !important; margin:0 !important; color:var(--ink-soft); font-weight:600; font-size:13px; }
.nd .creator #k2 .input-group-addon{ width:38px; height:40px; display:inline-flex; align-items:center; justify-content:center; border-radius:10px !important; border:1.5px solid var(--line); background:#fff; padding:0; cursor:pointer; }
.nd .creator #k2 input.rozmiar{ width:70px !important; min-width:0 !important; flex:0 0 70px; border-radius:10px !important; font-family:var(--font-display); font-weight:800; }
.nd .creator #k2 label{ margin:0 8px 0 2px; font-size:13px; }
.nd .creator #kreator_tabs{ margin-top:16px; }
.nd .creator ul.lista{ list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px; }
.nd .creator li.cab-li{ float:none; width:auto; height:auto; margin:0; background:#fff; border:1px solid var(--line) !important; border-radius:var(--radius-m) !important; box-shadow:var(--shadow-card); padding:14px; display:flex; flex-direction:column; gap:8px; text-align:left; transition:border-color .15s, transform .15s; }
.nd .creator li.cab-li:hover{ border-color:var(--ink) !important; transform:translateY(-2px); }
.nd .creator li.cab-li .name{ font-family:var(--font-display); font-weight:800; font-size:14px; line-height:1.3; }
.nd .creator li.cab-li .name a{ color:var(--ink) !important; }
.nd .creator li.cab-li .img{ height:140px; display:flex; align-items:center; justify-content:center; background:#fff; border-radius:10px; }
.nd .creator li.cab-li .img img{ max-height:100%; object-fit:contain; }
.nd .creator li.cab-li .text{ font-size:12.5px; color:var(--ink-soft); flex:1; }
.nd .creator li.cab-li .text ul{ padding-left:16px; margin:0; }
.nd .creator li.cab-li .price, .nd .creator li.cab-li .price *{ color:var(--ink) !important; font-family:var(--font-display); font-weight:900; font-size:16px; text-align:left; }
.nd .creator li.cab-li .price .brutto, .nd .creator li.cab-li .price small{ font-weight:600; font-size:12px; color:var(--ink-faint) !important; }
.nd .creator li.cab-li a.choose{ width:100%; padding:10px 14px; font-size:13.5px; text-transform:none; }
.nd .creator li.cab-li.empty{ justify-content:center; align-items:center; text-align:center; border-style:dashed !important; }
.nd .creator #wynik{ margin-top:18px; }
.nd .creator #wynik .alert, .nd .creator #wynik table{ border-radius:14px; }
.nd-kk-legal{ display:flex; gap:12px; align-items:flex-start; background:var(--surface); border-radius:var(--radius-m); padding:14px 18px; margin-top:26px; font-size:13px; color:var(--ink-soft); line-height:1.6; }
.nd-kk-legal .nd-ico{ width:18px; height:18px; stroke:var(--ink-faint); margin-top:2px; flex-shrink:0; }
.nd-kk-legal p{ margin:0; }
@media (max-width:860px){ .nd-kk-steps{ grid-template-columns:repeat(2,minmax(0,1fr)); } .nd .creator .step.btn > div:first-child{ flex-basis:100%; } .nd-kk-hero{ flex-direction:column; align-items:flex-start; } }

/* ===== szkolenia ===== */
.nd-train-list{ display:flex; flex-direction:column; gap:10px; }
.nd .nd-train-item{ display:grid; grid-template-columns:78px minmax(0,1fr) auto auto; align-items:center; gap:18px; padding:14px 18px; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-train-item:hover{ border-color:var(--ink); transform:translateY(-1px); }
.nd-train-date{ width:78px; height:72px; border-radius:14px; background:var(--accent-soft); color:var(--accent-dark); display:flex; flex-direction:column; align-items:center; justify-content:center; font-family:var(--font-display); line-height:1.1; }
.nd-train-date b{ font-size:26px; font-weight:900; }
.nd-train-date span{ font-size:12px; font-weight:700; }
.nd-train-item__title{ font-family:var(--font-display); font-weight:800; font-size:15.5px; line-height:1.3; }
.nd-train-seats{ font-size:13px; color:var(--good); background:var(--good-soft); border-radius:8px; padding:6px 10px; white-space:nowrap; font-weight:600; }
.nd-train-seats b{ font-family:var(--font-display); font-weight:900; }
.nd-train-seats.is-low{ color:var(--deal-dark); background:var(--deal-soft); }
.nd-train-seats.is-full{ color:#b4262b; background:#fdecec; }
.nd .nd-train-item .nd-btn .nd-ico{ width:15px; height:15px; }
.nd-train-hero{ position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:stretch; margin:6px 0 20px; }
.nd-train-hero__txt{ padding:24px 26px; }
.nd-train-hero h1.title{ margin:6px 0 0 !important; }
.nd-train-hero__img{ width:280px; background:var(--nd-train-img) center/cover no-repeat; }
.nd-train-desc{ font-size:15px; line-height:1.7; color:var(--ink-soft); }
.nd-train-desc img{ max-width:100%; height:auto; border-radius:12px; }
.nd-train-desc h2, .nd-train-desc h3, .nd-train-desc b, .nd-train-desc strong{ color:var(--ink); }
.nd-train-box{ margin:18px 0 24px; padding:0; overflow:hidden; display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); }
.nd-train-box__grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--surface-2); }
.nd-train-box__grid > div{ background:#fff; padding:14px 18px; display:flex; flex-direction:column; gap:3px; }
.nd-train-box__grid span{ font-size:11.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-family:var(--font-display); font-weight:800; }
.nd-train-box__grid b{ font-family:var(--font-display); font-size:15px; color:var(--ink); }
.nd-train-box__grid b a{ color:var(--accent) !important; }
.nd-train-box__grid em{ font-style:normal; font-size:12px; color:var(--ink-soft); }
.nd-train-box__grid .is-low b{ color:var(--deal-dark); }
.nd-train-box__grid .is-full b{ color:#b4262b; }
.nd-train-box__cost{ background:var(--surface); padding:18px 20px; display:flex; flex-direction:column; gap:12px; }
.nd-train-price span{ display:block; font-size:11.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-faint); font-family:var(--font-display); font-weight:800; }
.nd-train-price b{ font-family:var(--font-display); font-weight:900; font-size:28px; color:var(--ink); }
.nd-train-price small{ color:var(--ink-soft); font-size:13px; }
.nd-train-price.is-free b{ color:var(--good); }
.nd-train-tiers{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; font-size:13.5px; }
.nd-train-tiers li{ display:flex; justify-content:space-between; gap:12px; border-bottom:1px dashed var(--line); padding-bottom:6px; color:var(--ink-soft); }
.nd-train-tiers li:last-child{ border-bottom:none; padding-bottom:0; }
.nd-train-tiers b{ font-family:var(--font-display); color:var(--ink); white-space:nowrap; }
.nd-train-cta{ margin-top:auto; }
.nd-train-people{ display:flex; flex-direction:column; gap:10px; }
.nd-train-person{ display:grid; grid-template-columns:36px minmax(0,1fr) 120px; gap:14px; align-items:center; padding:14px; }
.nd-train-person__no{ width:32px; height:32px; border-radius:999px; background:var(--ink); color:#fff; font-family:var(--font-display); font-weight:800; display:flex; align-items:center; justify-content:center; }
.nd-train-person__fields{ display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:8px; }
.nd-train-person__cost{ text-align:right; font-size:12.5px; color:var(--ink-soft); }
.nd-train-person__cost b{ font-family:var(--font-display); font-size:15px; color:var(--ink); }
.nd-train-acc{ font-family:var(--font-display); font-size:17px; letter-spacing:.02em; }
.nd-train-gallery{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; }
.nd .nd-train-gal{ display:flex; flex-direction:column; gap:6px; padding:10px; color:var(--ink) !important; }
.nd .nd-train-gal:hover{ border-color:var(--ink); }
.nd-train-gal__img{ aspect-ratio:4/3; border-radius:10px; overflow:hidden; background:var(--surface); }
.nd-train-gal__img img{ width:100%; height:100%; object-fit:cover; }
.nd-train-gal__date{ display:inline-flex; align-items:center; gap:5px; font-size:12px; color:var(--ink-faint); font-weight:600; }
.nd-train-gal__date .nd-ico{ width:13px; height:13px; }
.nd-train-gal b{ font-family:var(--font-display); font-size:14px; line-height:1.3; }
.nd #jssor_1{ border-radius:14px; }
@media (max-width:860px){
	.nd .nd-train-item{ grid-template-columns:64px minmax(0,1fr); }
	.nd-train-date{ width:64px; height:64px; }
	.nd .nd-train-item .nd-train-seats, .nd .nd-train-item .nd-btn{ grid-column:2; justify-self:start; }
	.nd-train-box, .nd-train-hero{ grid-template-columns:minmax(0,1fr); }
	.nd-train-hero__img{ width:auto; height:180px; }
	.nd-train-person{ grid-template-columns:32px minmax(0,1fr); }
	.nd-train-person__cost{ grid-column:2; text-align:left; }
}

/* ===== kreator alarmow ===== */
.nd-alarm-hero{ background:linear-gradient(100deg,var(--accent-soft),#fff 65%); }
.nd-alarm-hero .nd-listing-head__ico{ background:var(--accent); }
.nd-alarm-sec{ padding:22px 24px; margin-bottom:18px; }
.nd .nd-alarm-sec__h{ display:flex; align-items:center; gap:10px; font-size:17px !important; margin:0 0 14px; }
.nd-alarm-sec__h > span{ width:28px; height:28px; border-radius:999px; background:var(--ink); color:#fff; font-size:13px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-alarm-sec__h .nd-ico{ width:20px; height:20px; stroke:var(--accent); }
.nd-alarm-central{ max-width:520px; }
.nd-alarm-cats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:10px; }
.nd-alarm-cat{ border:1.5px solid var(--line); border-radius:12px; padding:10px 12px; background:#fff; }
.nd-alarm-cat__head{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.nd-alarm-cat__head b{ font-family:var(--font-display); font-size:14px; }
.nd-alarm-cat__head .nd-btn{ padding:6px 10px; font-size:12px; }
.nd-alarm-cat__list:empty{ display:none; }
.nd-alarm-cat__list{ display:flex; flex-direction:column; gap:6px; margin-top:8px; }
.nd-alarm-ele{ position:relative; display:flex; align-items:center; gap:6px; flex-wrap:wrap; background:var(--surface); border-radius:10px; padding:6px; }
.nd-alarm-ele select.check{ flex:1; min-width:140px; min-height:36px; padding:4px 8px; font-size:13px; }
.nd-alarm-ele__qty{ display:inline-flex; align-items:center; gap:5px; margin:0; font-size:12px; font-weight:600 !important; }
.nd-alarm-ele__qty input{ width:52px !important; min-height:36px; padding:4px 6px; text-align:right; }
.nd-alarm-ele .nd-icon-act{ width:32px; height:32px; background:#fff; cursor:pointer; }
.nd-alarm-tips{ margin:0; padding:0; list-style:none; }
.nd .nd-alarm-tips .jkl{ display:none; position:absolute; z-index:30; right:calc(100% + 8px); top:0; width:220px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-pop); padding:10px; font-size:12.5px; }
.nd .nd-alarm-tips .jkl img{ max-width:100%; border-radius:8px; }
.nd-alarm-q{ display:flex; flex-direction:column; gap:8px; }
.nd-alarm-q__t{ font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--ink); margin:6px 0 0; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.nd-alarm-q__row{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:8px 0; border-bottom:1px solid var(--surface-2); font-size:14px; color:var(--ink-soft); }
.nd-alarm-q__row:last-child{ border-bottom:none; }
.nd-alarm-pills{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.nd-alarm-pills input[type=radio]{ position:absolute; opacity:0; width:1px; height:1px; }
.nd .nd-alarm-pills input[type=radio] + label{ margin:0; border:1.5px solid var(--line); border-radius:999px; padding:5px 14px; font-family:var(--font-display); font-weight:700; font-size:12.5px; color:var(--ink-soft); cursor:pointer; background:#fff; text-transform:lowercase; }
.nd .nd-alarm-pills input[type=radio]:checked + label{ background:var(--ink); border-color:var(--ink); color:#fff; }
.nd .nd-alarm-pills input[type=radio]:focus-visible + label{ outline:3px solid var(--accent); outline-offset:2px; }
.nd-alarm-pills em{ font-style:normal; font-size:12.5px; }
.nd-alarm-pills .sh{ display:inline-flex; align-items:center; gap:6px; margin-left:6px; }
.nd .nd-alarm-num{ width:70px !important; min-height:36px; padding:4px 8px; text-align:right; display:inline-block; }
.nd .alarmy_kat{ border:1.5px solid var(--line) !important; border-radius:12px; background:#fff; }

/* ===== kreator anten / kabli w oknie dialogowym ===== */
.nd-creator-head{ margin:0 0 14px; }
.nd .nd-creator-head h2{ font-size:22px !important; font-weight:900; margin:6px 0 0; }
.nd .creator ul.lista > li:not(.cab-li){ float:none; width:auto; height:auto; margin:0; background:#fff; border:1px solid var(--line) !important; border-radius:14px !important; padding:12px; display:flex; flex-direction:column; gap:6px; cursor:pointer; text-align:left; box-shadow:var(--shadow-card); transition:border-color .15s; }
.nd .creator ul.lista > li:not(.cab-li):hover{ border-color:var(--accent) !important; }
.nd .creator ul.lista > li .name{ font-family:var(--font-display); font-weight:800; font-size:13.5px; line-height:1.3; }
.nd .creator ul.lista > li .img{ height:110px; display:flex; align-items:center; justify-content:center; }
.nd .creator ul.lista > li .img img{ max-height:100%; object-fit:contain; }
.nd .creator ul.lista > li .price, .nd .creator ul.lista > li .price *{ color:var(--ink) !important; font-family:var(--font-display); font-weight:900; font-size:15px; }
.nd .modal-dialog:has(.creator){ width:min(960px, calc(100vw - 24px)); }
.nd .modal-content:has(.creator){ border:none; border-radius:var(--radius-l); }
.nd .modal-body .creator ul.lista{ grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); }
.nd-creator-sum{ padding:18px 20px; margin-top:14px; }
.nd-creator-sum fieldset{ border:none; padding:0; margin:0; background:none; box-shadow:none; }
.nd-creator-sum h3{ font-size:17px !important; margin:4px 0 8px; }
.nd-creator-sum .pod_cen{ font-family:var(--font-display); font-size:18px; color:var(--ink); }
.nd-creator-sum .row{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:0; }
.nd-creator-sum .row > div{ width:auto; float:none; margin:0; padding:0; }
.nd-creator-sum .input-group{ display:flex; width:auto !important; }
.nd-creator-sum .input-group-addon{ width:38px; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.nd-creator-sum input.ilosc_kreator{ width:56px !important; }
.nd button.nd-icon-act{ display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:10px; border:1.5px solid var(--line); background:#fff; color:var(--ink-soft); padding:0; cursor:pointer; }
.nd button.nd-icon-act:hover{ border-color:var(--danger); color:var(--danger); }
.nd button.nd-icon-act .nd-ico{ width:16px; height:16px; }

/* ===== informacje (regulamin, polityka itd.) ===== */
.nd-info-layout{ display:grid; grid-template-columns:250px minmax(0,1fr); gap:28px; align-items:start; padding-top:4px; }
.nd-info-aside{ position:sticky; top:92px; display:flex; flex-direction:column; gap:14px; max-height:calc(100vh - 110px); overflow-y:auto; }
.nd-info-nav, .nd-info-toc{ background:var(--surface); border-radius:var(--radius-m); padding:14px; }
.nd-info-nav__t{ display:block; font-family:var(--font-display); font-weight:800; font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-faint); margin:0 0 8px 6px; }
.nd-info-nav h2, .nd-info-nav .arrow{ display:none; }
.nd-info-nav ul{ list-style:none; margin:0; padding:0; }
.nd-info-nav li{ margin:0; padding:0; }
.nd .nd-info-nav a{ display:block; padding:8px 10px; border-radius:9px; font-family:var(--font-display); font-weight:700; font-size:13.5px; color:var(--ink-soft) !important; }
.nd .nd-info-nav a:hover{ background:#fff; color:var(--ink) !important; }
.nd .nd-info-nav a.is-active{ background:#fff; color:var(--ink) !important; box-shadow:var(--shadow-card); }
.nd-info-extra{ border-top:1px solid var(--line); margin-top:6px !important; padding-top:6px !important; }
.nd-info-toc ol{ margin:0; padding:0 0 0 22px; font-size:12.5px; }
.nd-info-toc li{ margin:0 0 6px; color:var(--ink-faint); }
.nd .nd-info-toc a{ color:var(--ink-soft) !important; line-height:1.4; }
.nd .nd-info-toc a:hover{ color:var(--accent) !important; }
.nd-info-article{ padding:clamp(22px,3vw,40px); min-width:0; }
.nd-info-article h1.title{ margin:8px 0 22px !important; }
.nd-info-body{ max-width:78ch; font-size:15px; line-height:1.75; color:var(--ink-soft); overflow-wrap:anywhere; }
.nd-info-body b, .nd-info-body strong{ color:var(--ink); }
.nd-info-body .nd-info-sec{ display:block; font-family:var(--font-display); font-size:17px; font-weight:900; color:var(--ink); margin-top:22px; scroll-margin-top:110px; }
.nd-info-body p[id]{ scroll-margin-top:110px; }
.nd-info-body h2, .nd-info-body h3{ color:var(--ink); scroll-margin-top:110px; }
.nd-info-body a{ color:var(--accent) !important; font-weight:600; }
.nd-info-body table{ width:100%; border-collapse:collapse; margin:12px 0; font-size:14px; }
.nd-info-body td, .nd-info-body th{ border:1px solid var(--line); padding:8px 10px; }
.nd-info-body img{ max-width:100%; height:auto; border-radius:10px; }
.nd-info-help{ display:flex; align-items:center; gap:12px; margin-top:28px; padding:14px 16px; background:var(--accent-soft); border-radius:12px; font-size:14px; color:var(--ink-soft); }
.nd-info-help .nd-ico{ width:22px; height:22px; stroke:var(--accent); flex-shrink:0; }
.nd-info-help a{ color:var(--ink) !important; }
@media (max-width:900px){ .nd-info-layout{ grid-template-columns:minmax(0,1fr); } .nd-info-aside{ position:static; max-height:none; } .nd-info-toc{ display:none; } }

/* ===== o nas ===== */
.nd-about-hero{ display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); overflow:hidden; margin:6px 0 0; }
.nd-about-hero__txt{ padding:clamp(22px,3.4vw,44px); }
.nd-about-hero h1.title{ margin:10px 0 12px !important; font-size:clamp(26px,3vw,40px) !important; }
.nd-about-hero .nd-lead{ margin:0 0 22px; }
.nd-about-hero__img{ background:var(--surface); }
.nd-about-hero__img img{ width:100%; height:100%; object-fit:cover; }
.nd-about-facts{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.nd-about-facts > div{ background:var(--surface); border-radius:12px; padding:12px 14px; display:flex; flex-direction:column; gap:2px; }
.nd-about-facts b{ font-family:var(--font-display); font-weight:900; font-size:16px; color:var(--accent-dark); }
.nd-about-facts span{ font-size:12.5px; color:var(--ink-soft); }
.nd-about-text{ max-width:80ch; font-size:15px; line-height:1.75; color:var(--ink-soft); }
.nd-about-text p{ margin:0 0 14px; }
.nd-about-text b{ color:var(--ink); }
.nd-about-split{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:28px; align-items:center; margin:22px 0; }
.nd-about-split > img{ width:100%; border-radius:var(--radius-l); object-fit:cover; max-height:360px; }
.nd-about-split--rev > img{ order:2; }
.nd-about-sign{ text-align:right; color:var(--ink); }
.nd-about-partners{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px; margin-top:12px; }
.nd-about-partners span{ display:flex; align-items:center; justify-content:center; height:90px; padding:10px; background:#fff; border:1px solid var(--line); border-radius:12px; }
.nd-about-partners img{ max-width:100%; max-height:100%; object-fit:contain; filter:grayscale(1); opacity:.85; transition:filter .2s, opacity .2s; }
.nd-about-partners span:hover img{ filter:none; opacity:1; }
.nd-about-projects{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.nd-about-proj{ overflow:hidden; display:flex; flex-direction:column; }
.nd-about-proj > img{ width:100%; height:170px; object-fit:cover; background:var(--surface); }
.nd-about-proj > div{ padding:16px 18px; font-size:14px; line-height:1.65; color:var(--ink-soft); }
.nd-about-proj h3{ font-size:16px !important; margin:0 0 8px; }
.nd-about-proj ul{ padding-left:18px; margin:0 0 12px; }
.nd-about-tools{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:12px; margin-top:16px; }
.nd .nd-about-tool{ display:flex; align-items:center; gap:14px; padding:14px 16px; color:var(--ink) !important; background:linear-gradient(100deg,var(--accent-soft),#fff 70%); }
.nd .nd-about-tool:hover{ border-color:var(--accent); }
.nd-about-tool .nd-listing-head__ico{ width:48px; height:48px; border-radius:14px; background:var(--accent); }
.nd-about-tool .nd-listing-head__ico .nd-ico{ width:22px; height:22px; }
.nd-about-tool b{ display:block; font-family:var(--font-display); font-size:15px; }
.nd-about-tool small{ font-size:12.5px; color:var(--ink-soft); }
.nd-about .nd-sec-nav{ margin-top:24px; }
@media (max-width:900px){
	.nd-about-hero, .nd-about-split, .nd-about-projects{ grid-template-columns:minmax(0,1fr); }
	.nd-about-hero__img{ height:220px; order:-1; }
	.nd-about-split--rev > img{ order:0; }
	.nd-about-facts{ grid-template-columns:minmax(0,1fr); }
}
.nd h1.title{ height:auto !important; overflow:visible !important; line-height:1.12 !important; white-space:normal; }

/* ===== elementy dynamiczne w opisie produktu ({IMG}, {REL}, {REL_MINI}, {KAT}, {SHOW_HIDE}) ===== */
.nd-op-img{ display:flex; width:fit-content; flex-direction:column; align-items:center; gap:8px; max-width:100%; margin:14px auto; text-align:center; }
.nd-op-img a{ display:block; background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); overflow:hidden; line-height:0; }
.nd-op-img img{ width:auto !important; height:auto !important; max-width:min(440px,100%) !important; max-height:320px; object-fit:contain; transition:transform .25s; }
.nd-op-img a:hover img{ transform:scale(1.03); }
.nd-op-img figcaption{ font-size:13px; color:var(--ink-faint); line-height:1.4; max-width:440px; }
#description .nd-op-img figcaption u{ text-decoration:none; }

#description .pr-list-hide{ display:flex; flex-direction:column; gap:8px; margin:12px 0 18px; }
#description .pr-list-hide .nd-op-ukryty{ display:none; }
#description .pr-list-hide.is-open .nd-op-ukryty{ display:grid; }
#description .nd-op-more{ align-self:flex-start; gap:6px; }
#description .nd-op-more b{ color:var(--accent-dark); }
#description .nd-op-more .nd-ico{ width:14px; height:14px; transform:none; transition:transform .2s; }
#description .pr-list-hide.is-open .nd-op-more .nd-ico{ transform:rotate(180deg); }

.nd-op-prod{ display:grid; grid-template-columns:76px minmax(0,1fr) auto auto; align-items:center; gap:16px; background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); padding:10px 14px 10px 10px; margin:8px 0; box-shadow:var(--shadow-card); transition:border-color .15s; line-height:1.35; }
.pr-list-hide > .nd-op-prod{ margin:0; }
.nd-op-prod:hover{ border-color:var(--accent); }
.nd-op-prod__img{ width:76px; height:60px; border-radius:10px; background:var(--surface); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-op-prod__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd-op-prod__body{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.nd #description .nd-op-prod__name{ font-family:var(--font-display); font-weight:800; font-size:14.5px; color:var(--ink) !important; text-decoration:none; }
.nd #description .nd-op-prod__name:hover{ color:var(--accent) !important; }
.nd-op-prod__price .cnx{ font-family:var(--font-display); font-weight:900; font-size:16px; color:var(--ink); white-space:nowrap; text-align:right; }
.nd-op-prod__price .cnx .blx{ display:none; }
.nd-op-prod__price .cnx + .cnx{ font-size:12px; font-weight:700; color:var(--ink-faint); }
.nd #description .nd-op-prod__cart{ white-space:nowrap; text-decoration:none; }
.nd #description .nd-op-prod__cart.nd-btn--dark, .nd #description .nd-op-prod__cart.nd-btn--dark *{ color:#fff !important; }
.nd-op-prod__cart .nd-ico{ width:16px; height:16px; }
.nd-op-prod--mini{ grid-template-columns:56px minmax(0,1fr) auto; gap:12px; padding:8px 10px 8px 8px; }
.nd-op-prod--mini .nd-op-prod__img{ width:56px; height:44px; }
.nd-op-prod--mini .nd-op-prod__name{ font-size:13.5px !important; }
.nd-op-prod--mini .nd-op-prod__price .cnx{ text-align:left; font-size:14px; }

.nd-op-kat{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:14px; margin:14px 0 20px; line-height:1.35; }
.nd #description .nd-op-kat a{ text-decoration:none; }

@media (max-width:700px){
	.nd-op-prod{ grid-template-columns:64px minmax(0,1fr) auto; grid-template-areas:"img body body" "img price cart"; row-gap:8px; }
	.nd-op-prod__img{ grid-area:img; width:64px; }
	.nd-op-prod__body{ grid-area:body; }
	.nd-op-prod__price{ grid-area:price; } .nd-op-prod__price .cnx{ text-align:left; }
	.nd-op-prod__cart{ grid-area:cart; }
	.nd-op-prod__cart span{ display:none; }
	.nd-op-prod--mini{ grid-template-areas:none; grid-template-columns:56px minmax(0,1fr) auto; }
	.nd-op-prod--mini > *{ grid-area:auto; }
	.nd-op-kat{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
}

/* ===== okno "dodano do koszyka" z propozycjami (koszyk_dodano.tpl) ===== */
.nd .nd-cart-modal .modal-dialog{ width:min(820px, calc(100vw - 24px)); margin:40px auto; }
.nd .nd-cart-modal .modal-content{ border:none; border-radius:var(--radius-l); box-shadow:var(--shadow-pop); overflow:hidden; }
.nd .nd-cart-modal .modal-header{ border:none; padding:18px 22px 0; }
.nd .nd-cart-modal .modal-title{ font-family:var(--font-display); font-weight:900; font-size:20px; color:var(--ink); }
.nd .nd-cart-modal .modal-header .close{ opacity:.5; font-size:26px; margin-top:-4px; }
.nd .nd-cart-modal .modal-body{ padding:14px 22px 6px; }
.nd .nd-cart-modal .modal-footer{ border:none; padding:12px 22px 20px; display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; }
.nd .nd-cart-modal .modal-footer .nd-btn{ margin:0 !important; min-width:170px; justify-content:center; }
.nd-added{ font-family:inherit; text-align:left; }
.nd-added__head{ display:grid; grid-template-columns:auto 72px minmax(0,1fr) auto; align-items:center; gap:14px; background:var(--surface); border-radius:var(--radius-m); padding:12px 16px 12px 12px; }
.nd-added__ok{ width:34px; height:34px; border-radius:999px; background:#16a34a; display:inline-flex; align-items:center; justify-content:center; }
.nd-added__ok .nd-ico{ width:18px; height:18px; stroke:#fff; stroke-width:3; }
.nd-added__img{ width:72px; height:56px; background:#fff; border-radius:10px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-added__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd-added__info{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.nd-added__name{ font-family:var(--font-display); font-weight:800; font-size:15px; line-height:1.3; color:var(--ink); }
.nd-added__meta{ font-size:12.5px; color:var(--ink-soft); }
.nd-added__sum{ display:flex; flex-direction:column; align-items:flex-end; gap:2px; padding-left:14px; border-left:1px solid var(--line); white-space:nowrap; }
.nd-added__sum span{ font-size:12px; color:var(--ink-faint); }
.nd-added__sum b{ font-family:var(--font-display); font-weight:900; font-size:18px; color:var(--ink); }
.nd-added__more{ margin-top:18px; }
.nd-added__more-h h4{ font-family:var(--font-display); font-weight:900; font-size:17px; margin:4px 0 12px; color:var(--ink); }
.nd-added__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:10px; max-height:430px; overflow-y:auto; padding:2px 4px 4px 2px; }
.nd-added__item{ display:flex; flex-direction:column; gap:8px; background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); padding:10px; transition:border-color .15s; }
.nd-added__item:hover{ border-color:var(--accent); }
.nd-added__item-img{ position:relative; height:100px; background:var(--surface); border-radius:10px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-added__item-img img{ max-width:88%; max-height:88%; object-fit:contain; }
.nd-added__badge{ position:absolute; top:6px; left:6px; background:var(--accent); color:#fff; font-family:var(--font-display); font-weight:800; font-size:11px; border-radius:999px; padding:2px 7px; }
.nd .nd-added__item-name{ font-family:var(--font-display); font-weight:700; font-size:12.5px; line-height:1.3; color:var(--ink) !important; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; min-height:49px; }
.nd .nd-added__item-name:hover{ color:var(--accent) !important; }
.nd-added__item-foot{ display:flex; align-items:flex-end; justify-content:space-between; gap:6px; margin-top:auto; }
.nd-added__price{ display:flex; flex-direction:column; line-height:1.15; }
.nd-added__price s{ font-size:11.5px; color:var(--ink-faint); }
.nd-added__price b{ font-family:var(--font-display); font-weight:900; font-size:15px; color:var(--ink); white-space:nowrap; }
.nd-added__done{ font-size:11.5px; font-weight:700; color:#16a34a; text-align:right; }
@media (max-width:640px){
	.nd .nd-cart-modal .modal-dialog{ margin:12px auto; }
	.nd-added__head{ grid-template-columns:56px minmax(0,1fr); }
	.nd-added__ok{ display:none; }
	.nd-added__img{ width:56px; height:48px; }
	.nd-added__sum{ grid-column:1 / -1; flex-direction:row; justify-content:space-between; align-items:center; border-left:none; border-top:1px solid var(--line); padding:8px 0 0; }
	.nd-added__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); max-height:320px; }
	.nd .nd-cart-modal .modal-footer .nd-btn{ flex:1; min-width:0; }
}

/* opisy: {REL}/{KAT} wstawione w <p><strong> itp. - przegladarka owija zawartosc karty w te znaczniki, przepuszczamy je */
.nd-op-prod > :is(strong,b,em,i,u,span,font,p,small,big):not([class]),
.nd-op-prod > :is(strong,b,em,i,u,span,font,p,small,big):not([class]) > :is(strong,b,em,i,u,span,font,p,small,big):not([class]),
.nd-op-kat > :is(strong,b,em,i,u,span,font,p,small,big):not([class]),
.nd-op-kat > :is(strong,b,em,i,u,span,font,p,small,big):not([class]) > :is(strong,b,em,i,u,span,font,p,small,big):not([class]){ display:contents; }
.nd-op-prod, .nd-op-kat{ font-weight:400; font-style:normal; text-decoration:none; }

/* ===== kontakt: szybkie kafle, zdjecie siedziby, dojazd ===== */
.nd-contact-quick{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:26px; }
.nd .nd-cq{ display:flex; align-items:center; gap:12px; padding:14px 16px; color:var(--ink) !important; transition:border-color .15s, transform .15s; min-width:0; }
.nd .nd-cq:hover{ border-color:var(--accent); transform:translateY(-1px); }
.nd-cq__ico{ width:42px; height:42px; border-radius:12px; background:var(--accent-soft); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-cq__ico .nd-ico{ width:20px; height:20px; stroke:var(--accent); }
.nd-cq__ico--wa{ background:#dcfce7; } .nd-cq__ico--wa .nd-ico{ stroke:#16a34a; }
.nd-cq > span:last-child{ display:flex; flex-direction:column; min-width:0; }
.nd-cq small{ font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; font-weight:700; color:var(--ink-faint); }
.nd-cq b{ font-family:var(--font-display); font-weight:800; font-size:14.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nd .nd-cq--map{ background:var(--ink); border-color:var(--ink); color:#fff !important; }
.nd-cq--map small{ color:rgba(255,255,255,.6); }
.nd-cq--map .nd-cq__ico{ background:rgba(255,255,255,.12); } .nd-cq--map .nd-cq__ico .nd-ico{ stroke:#fff; }
.nd-contact-photo{ display:block; position:relative; margin-top:18px; border-radius:var(--radius-l); overflow:hidden; aspect-ratio:16/10; background:var(--surface); }
.nd-contact-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.nd-contact-photo:hover img{ transform:scale(1.03); }
.nd .nd-contact-photo span{ position:absolute; left:12px; right:12px; bottom:12px; display:flex; align-items:center; gap:8px; background:rgba(15,17,23,.78); backdrop-filter:blur(6px); color:#fff !important; font-size:12.5px; font-weight:700; padding:9px 12px; border-radius:10px; }
.nd-contact-photo span .nd-ico{ width:16px; height:16px; stroke:#fff; flex-shrink:0; }
.nd-route{ scroll-margin-top:100px; }
.nd-route__grid{ display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:16px; align-items:stretch; }
.nd-route__map{ border-radius:var(--radius-l); overflow:hidden; border:1px solid var(--line); min-height:440px; background:var(--surface); }
.nd-route__map iframe{ display:block; width:100%; height:100%; min-height:440px; border:0; }
.nd-route__card{ padding:22px; display:flex; flex-direction:column; gap:14px; }
.nd-route__addr{ display:flex; gap:14px; align-items:flex-start; }
.nd-route__pin{ width:46px; height:46px; border-radius:14px; background:var(--accent); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-route__pin .nd-ico{ width:22px; height:22px; stroke:#fff; }
.nd-route__addr > div{ display:flex; flex-direction:column; gap:3px; }
.nd-route__addr b{ font-family:var(--font-display); font-weight:900; font-size:18px; color:var(--ink); }
.nd-route__addr span{ font-size:14.5px; color:var(--ink-soft); line-height:1.5; }
.nd-route__addr small{ font-size:12px; color:var(--ink-faint); font-variant-numeric:tabular-nums; }
.nd-route__links{ display:flex; gap:8px; flex-wrap:wrap; }
.nd-route__links .nd-btn{ flex:1; justify-content:center; white-space:nowrap; }
.nd-route__facts{ list-style:none; margin:4px 0 0; padding:0; border-top:1px solid var(--line); }
.nd-route__facts li{ display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--surface-2); font-size:13.5px; color:var(--ink-soft); line-height:1.5; }
.nd-route__facts li:last-child{ border-bottom:none; padding-bottom:0; }
.nd-route__facts .nd-ico{ width:18px; height:18px; stroke:var(--accent); flex-shrink:0; margin-top:2px; }
.nd-route__facts b{ display:block; color:var(--ink); font-family:var(--font-display); font-size:14px; }
.nd .nd-route__facts a{ color:var(--ink) !important; font-weight:700; white-space:nowrap; }
@media (max-width:1000px){ .nd-contact-quick{ grid-template-columns:repeat(2,minmax(0,1fr)); } .nd-route__grid{ grid-template-columns:minmax(0,1fr); } .nd-route__map, .nd-route__map iframe{ min-height:320px; } }
@media (max-width:520px){ .nd-contact-quick{ grid-template-columns:minmax(0,1fr); gap:8px; } .nd .nd-cq{ padding:10px 12px; } .nd-cq__ico{ width:36px; height:36px; } }
.nd-route__addr em{ font-style:normal; font-size:12.5px; font-weight:700; color:var(--accent-dark); }
.nd-route{ padding-bottom:0; }

/* ===== rejestracja (konto_nowe.tpl) ===== */
.nd-register h1.title{ margin:8px 0 10px !important; }
.nd-register-lead{ max-width:64ch; margin:0 0 24px; }
.nd-register-err{ max-width:calc(100% - 360px); }
.nd-register-layout{ display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:24px; align-items:start; }
.nd-register-form{ display:flex; flex-direction:column; gap:14px; margin:0; }
.nd-reg-step{ padding:22px 24px 8px; }
.nd .nd-reg-step__h{ display:flex; align-items:center; gap:12px; font-size:18px !important; font-weight:900; margin:0 0 18px; color:var(--ink); }
.nd-reg-step__h > span{ width:30px; height:30px; border-radius:999px; background:var(--ink); color:#fff; font-size:14px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-reg-step__h em{ font-style:normal; font-size:12px; font-weight:700; color:var(--ink-faint); background:var(--surface); border-radius:999px; padding:3px 9px; }
.nd-field-help{ display:block; font-size:12.5px; color:var(--ink-faint); line-height:1.45; }
.nd-reg-step > .nd-field-help{ margin:-6px 0 16px; }
.nd-field--half{ max-width:calc(50% - 7px); }
.nd .nd-field-row.nd-field-row--kod{ grid-template-columns:minmax(0,.55fr) minmax(0,1fr); }
.nd-reg-country{ display:flex; gap:10px; align-items:center; }
.nd-reg-country select{ flex:1; min-width:0; background:var(--surface) !important; }
.nd-reg-country .nd-btn{ white-space:nowrap; }
.nd-pass-meter{ display:grid; grid-template-columns:repeat(4,1fr); gap:4px; margin-top:2px; }
.nd-pass-meter i{ height:4px; border-radius:4px; background:var(--surface-2); transition:background .2s; }
.nd-pass-meter[data-s="1"] i:nth-child(-n+1){ background:var(--danger); }
.nd-pass-meter[data-s="2"] i:nth-child(-n+2){ background:#f59e0b; }
.nd-pass-meter[data-s="3"] i:nth-child(-n+3){ background:#84cc16; }
.nd-pass-meter[data-s="4"] i{ background:var(--good); }
.nd-switch{ display:flex !important; align-items:center; gap:12px; margin:0 0 16px; cursor:pointer; font-weight:600 !important; font-size:14px !important; color:var(--ink) !important; }
.nd-switch input{ position:absolute; opacity:0; width:1px; height:1px; }
.nd-switch__ui{ width:42px; height:24px; border-radius:999px; background:var(--surface-2); position:relative; flex-shrink:0; transition:background .2s; }
.nd-switch__ui::after{ content:''; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:999px; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:transform .2s; }
.nd-switch input:checked + .nd-switch__ui{ background:var(--accent); }
.nd-switch input:checked + .nd-switch__ui::after{ transform:translateX(18px); }
.nd-switch input:focus-visible + .nd-switch__ui{ outline:3px solid var(--accent); outline-offset:2px; }
.nd-reg-firma{ display:none; }
.nd-reg-step--firma.is-open .nd-reg-firma{ display:block; }
.nd-reg-submit{ display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:6px 2px 0; }
.nd-reg-submit .nd-check{ margin:0 !important; }
.nd-reg-submit .nd-btn--lg, .nd-btn--lg{ padding:15px 30px; font-size:15.5px; }
.nd-reg-submit .nd-field-help a{ color:var(--accent) !important; font-weight:700; }
.nd-register-aside{ position:sticky; top:92px; display:flex; flex-direction:column; gap:12px; }
.nd-reg-side{ padding:20px; }
.nd-reg-side h3{ font-size:17px !important; margin:0 0 12px; }
.nd-reg-perks{ list-style:none; margin:0; padding:0; }
.nd-reg-perks li{ display:flex; gap:12px; padding:10px 0; border-top:1px solid var(--surface-2); font-size:13px; color:var(--ink-soft); line-height:1.45; }
.nd-reg-perks li:first-child{ border-top:none; padding-top:0; }
.nd-reg-perks .nd-ico{ width:34px; height:34px; padding:8px; border-radius:10px; background:var(--accent-soft); stroke:var(--accent); flex-shrink:0; }
.nd-reg-perks b{ display:block; color:var(--ink); font-family:var(--font-display); font-size:14px; }
.nd-reg-side--login{ display:flex; flex-direction:column; align-items:center; gap:10px; text-align:center; background:var(--surface); border-color:var(--surface); box-shadow:none; }
.nd-reg-side--login b{ font-family:var(--font-display); font-size:15px; }
.nd-reg-side--login .nd-link-plain{ font-size:13px; }
.nd-reg-help{ display:flex; align-items:center; gap:10px; padding:4px 6px; font-size:13px; color:var(--ink-soft); }
.nd-reg-help .nd-ico{ width:20px; height:20px; stroke:var(--accent); flex-shrink:0; }
.nd .nd-reg-help a{ color:var(--ink) !important; }
@media (max-width:980px){
	.nd-register-layout{ grid-template-columns:minmax(0,1fr); }
	.nd-register-aside{ position:static; }
	.nd-register-aside .nd-reg-side:first-child{ order:2; }
	.nd-register-err{ max-width:none; }
}
@media (max-width:640px){
	.nd-reg-step{ padding:18px 16px 4px; }
	.nd-field--half{ max-width:none; }
	.nd .nd-field-row.nd-field-row--kod{ grid-template-columns:minmax(0,1fr); }
	.nd-reg-submit .nd-btn--lg{ width:100%; justify-content:center; }
}

/* przypomnienie hasla: karta + "jak to dziala" */
.nd-reset-layout{ display:grid; grid-template-columns:minmax(0,520px) minmax(0,340px); gap:20px; justify-content:center; align-items:start; text-align:left; }
.nd-reset-layout .nd-pass-card{ margin:0 !important; max-width:none; }
.nd-reset-steps{ padding:22px 4px; }
.nd-reset-steps > b{ display:block; font-family:var(--font-display); font-weight:900; font-size:16px; color:var(--ink); margin-bottom:12px; }
.nd-reset-steps ol{ list-style:none; margin:0 0 16px; padding:0; display:flex; flex-direction:column; gap:12px; }
.nd-reset-steps li{ display:flex; gap:12px; font-size:13.5px; color:var(--ink-soft); line-height:1.5; }
.nd-reset-steps li span{ width:26px; height:26px; border-radius:999px; background:var(--accent-soft); color:var(--accent-dark); font-family:var(--font-display); font-weight:900; font-size:12.5px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-reset-steps p{ font-size:13.5px; color:var(--ink-soft); margin:0; padding-top:14px; border-top:1px solid var(--line); }
@media (max-width:900px){ .nd-reset-layout{ grid-template-columns:minmax(0,1fr); } .nd-reset-steps{ padding:6px 4px; } }

/* ===== czesci serwisowe: schemat + lista (czesci_new.tpl) ===== */
.nd-parts-head{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:end; margin:6px 0 22px; }
.nd-parts-head h1.title{ margin:8px 0 8px !important; font-size:clamp(24px,2.6vw,34px) !important; }
.nd-parts-head .nd-lead{ margin:0; max-width:70ch; }
.nd-parts-stats{ display:flex; gap:10px; align-items:stretch; flex-wrap:wrap; justify-content:flex-end; }
.nd-parts-stats > span{ display:flex; flex-direction:column; background:var(--surface); border-radius:12px; padding:10px 14px; font-size:12px; color:var(--ink-soft); min-width:110px; }
.nd-parts-stats > span b{ font-family:var(--font-display); font-weight:900; font-size:22px; color:var(--ink); line-height:1.1; }
.nd .nd-parts-help{ display:flex; align-items:center; gap:10px; background:var(--accent-soft); border-radius:12px; padding:10px 14px; font-size:12.5px; color:var(--ink-soft) !important; max-width:230px; line-height:1.35; }
.nd-parts-help .nd-ico{ width:22px; height:22px; stroke:var(--accent); flex-shrink:0; }
.nd-parts-help b{ display:block; color:var(--ink); font-size:14px; }
.nd-parts-layout{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:22px; align-items:start; }
.nd-parts-layout--bez{ grid-template-columns:minmax(0,1fr); }

.nd-sch{ position:sticky; top:84px; }
.nd-sch__card{ padding:0; overflow:hidden; }
.nd-sch__bar{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:10px 12px 10px 16px; border-bottom:1px solid var(--line); }
.nd-sch__bar > b{ font-family:var(--font-display); font-size:14px; }
.nd-sch__zoom{ display:flex; align-items:center; gap:4px; background:var(--surface); border-radius:10px; padding:3px; }
.nd-sch__zoom button{ border:none; background:#fff; border-radius:8px; min-width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 1px 2px rgba(0,0,0,.06); font-family:var(--font-display); font-weight:700; font-size:12px; color:var(--ink); padding:0 8px; }
.nd-sch__zoom button:hover{ background:var(--ink); color:#fff; } .nd-sch__zoom button:hover .nd-ico{ stroke:#fff; }
.nd-sch__zoom .nd-ico{ width:14px; height:14px; }
.nd-sch__zoom span{ min-width:44px; text-align:center; font-size:12px; font-weight:700; color:var(--ink-soft); font-variant-numeric:tabular-nums; }
.nd-sch__view{ position:relative; height:calc(100vh - 200px); min-height:420px; overflow:auto; background:#fff; overscroll-behavior:contain; }
.nd-sch__canvas{ position:relative; width:100%; }
.nd-sch__canvas img{ display:block; width:100%; height:auto; user-select:none; }
.nd-sch__legend{ display:flex; gap:16px; flex-wrap:wrap; padding:9px 16px; border-top:1px solid var(--line); font-size:12px; color:var(--ink-soft); }
.nd-sch__legend span{ display:inline-flex; align-items:center; gap:6px; }

.nd-dot{ position:absolute; transform:translate(-50%,-50%); min-width:22px; height:22px; padding:0 4px; border-radius:999px; border:2px solid #fff; background:var(--accent); color:#fff; font-family:var(--font-display); font-weight:800; font-size:10.5px; line-height:18px; text-align:center; cursor:pointer; box-shadow:0 1px 4px rgba(15,23,42,.35); transition:transform .12s, background .12s; z-index:2; }
.nd-dot:hover, .nd-dot.is-hot, .nd-dot:focus-visible{ background:var(--ink); transform:translate(-50%,-50%) scale(1.35); z-index:4; outline:none; }
.nd-dot.is-empty{ background:#9ca3af; cursor:default; box-shadow:none; opacity:.85; }
.nd-dot.is-empty:hover{ transform:translate(-50%,-50%); background:#9ca3af; }
.nd-dot.is-pulse{ animation:nd-dot-pulse 1.4s ease-out 2; }
@keyframes nd-dot-pulse{ 0%{ box-shadow:0 0 0 0 rgba(59,91,253,.7); } 100%{ box-shadow:0 0 0 18px rgba(59,91,253,0); } }
.nd-dot--mini{ position:static; transform:none; display:inline-block; min-width:12px; width:12px; height:12px; padding:0; border-width:0; box-shadow:none; }
.nd-dot--mini:hover{ transform:none; }
.nd-dot-tip{ position:absolute; z-index:6; width:250px; display:flex; gap:10px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-pop); padding:10px; pointer-events:none; }
.nd-dot-tip img{ width:48px; height:40px; object-fit:contain; border-radius:6px; background:var(--surface); flex-shrink:0; }
.nd-dot-tip__nr{ position:absolute; top:-9px; left:-9px; min-width:22px; height:22px; border-radius:999px; background:var(--ink); color:#fff; font-size:10.5px; display:flex; align-items:center; justify-content:center; padding:0 4px; }
.nd-dot-tip span{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.nd-dot-tip em{ font-style:normal; font-family:var(--font-display); font-weight:800; font-size:12.5px; line-height:1.3; color:var(--ink); }
.nd-dot-tip strong{ font-family:var(--font-display); font-size:13px; color:var(--accent-dark); }

.nd-parts-search{ position:sticky; top:76px; z-index:5; display:flex; align-items:center; gap:10px; background:#fff; border:1.5px solid var(--line); border-radius:12px; padding:0 14px; box-shadow:0 6px 16px -10px rgba(15,23,42,.25); margin-bottom:14px; }
.nd-parts-search:focus-within{ border-color:var(--accent); }
.nd-parts-search .nd-ico{ width:18px; height:18px; stroke:var(--ink-faint); flex-shrink:0; }
.nd-parts-search input{ flex:1; min-width:0; border:none !important; outline:none; box-shadow:none !important; height:46px; font-size:14.5px; background:transparent; }
.nd-parts-search > span{ font-size:12px; font-weight:700; color:var(--ink-faint); white-space:nowrap; }
.nd .nd-parts-h{ display:flex; align-items:center; gap:8px; font-size:17px !important; font-weight:900; margin:18px 0 10px; }
.nd-parts-h span{ font-size:12px; background:var(--surface); color:var(--ink-soft); border-radius:999px; padding:2px 9px; }
.nd-parts-group{ display:flex; flex-direction:column; gap:8px; }
.nd-part{ background:#fff; border:1px solid var(--line); border-radius:var(--radius-m); scroll-margin-top:140px; transition:border-color .15s, box-shadow .15s; }
.nd-part.is-hot{ border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
.nd-part.is-picked{ animation:nd-part-pick 1.6s ease-out; }
@keyframes nd-part-pick{ 0%,30%{ background:var(--accent-soft); border-color:var(--accent); } 100%{ background:#fff; } }
.nd-part--kit{ background:linear-gradient(100deg,var(--accent-soft),#fff 45%); }
.nd-part__main{ display:grid; grid-template-columns:34px 60px minmax(0,1fr) auto auto; gap:12px; align-items:center; padding:10px 12px; }
.nd-part__nr{ min-width:30px; height:30px; border-radius:999px; border:none; background:var(--accent); color:#fff; font-family:var(--font-display); font-weight:800; font-size:12px; cursor:pointer; padding:0 4px; }
.nd-part__nr:hover{ background:var(--ink); }
.nd-part__nr.is-off{ background:var(--surface-2); color:var(--ink-soft); cursor:default; }
.nd-part__img{ width:60px; height:48px; border-radius:8px; background:var(--surface); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-part__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.nd-part__body{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.nd .nd-part__name{ font-family:var(--font-display); font-weight:800; font-size:13.5px; line-height:1.3; color:var(--ink) !important; }
.nd .nd-part__name:hover{ color:var(--accent) !important; }
.nd-part__stock{ font-size:11.5px; color:var(--ink-soft); }
.nd-part__stock *{ font-size:11.5px !important; }
.nd-part__price{ text-align:right; white-space:nowrap; }
.nd-part__price .price, .nd-part__price .price *{ font-size:15px; }
.nd-part__price .price small, .nd-part__price .price .vat, .nd-part__price .price [class*="vat"]{ font-size:11px !important; }
.nd-part__na{ font-size:12px; font-weight:700; color:var(--ink-faint); background:var(--surface); border-radius:999px; padding:4px 10px; }
.nd-part__cart .nd-btn{ padding:9px 12px; }
.nd-part__cart .nd-btn span{ margin-left:6px; }
.nd-part__cart .nd-ico{ width:16px; height:16px; }
.nd-part__kit{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:0 12px 10px 58px; padding:8px 10px; background:var(--surface); border-radius:10px; font-size:12.5px; }
.nd-part__kit-t{ display:inline-flex; align-items:center; gap:6px; font-weight:700; color:var(--accent-dark); }
.nd-part__kit-t .nd-ico{ width:14px; height:14px; stroke:var(--accent); }
.nd .nd-part__kit-name{ flex:1; min-width:160px; color:var(--ink) !important; font-weight:600; }
.nd-part__kit-price, .nd-part__kit-price *{ font-size:13px !important; }
.nd-part__kit .nd-mini-card__cart{ width:32px; height:32px; }
.nd-parts-empty{ padding:18px; background:var(--surface); border-radius:12px; font-size:14px; }

@media (max-width:1300px){ .nd-part__cart .nd-btn span{ display:none; } .nd-part__cart .nd-btn span + span{ display:none; } }
@media (max-width:1000px){
	.nd-parts-head{ grid-template-columns:minmax(0,1fr); }
	.nd-parts-stats{ justify-content:flex-start; }
	.nd-parts-layout{ grid-template-columns:minmax(0,1fr); }
	.nd-sch{ position:static; }
	.nd-sch__view{ height:65vh; min-height:320px; }
	.nd-parts-search{ top:64px; }
}
@media (max-width:600px){
	.nd-parts-stats > span{ min-width:0; flex:1; }
	.nd .nd-parts-help{ max-width:none; flex-basis:100%; }
	.nd-part__main{ grid-template-columns:30px 52px minmax(0,1fr) auto; grid-template-areas:"nr img body body" "nr img price cart"; row-gap:6px; }
	.nd-part__nr{ grid-area:nr; align-self:start; } .nd-part__img{ grid-area:img; width:52px; align-self:start; } .nd-part__body{ grid-area:body; } .nd-part__price{ grid-area:price; text-align:left; } .nd-part__cart{ grid-area:cart; }
	.nd-part__kit{ margin-left:12px; }
	.nd-sch__bar > b{ display:none; } .nd-sch__bar{ justify-content:center; }
	.nd-dot-tip{ width:200px; }
}
/* czesci: ciasniejsza kolumna ceny, przycisk koszyka jako ikona */
@media (min-width:1001px){ .nd-parts-layout:not(.nd-parts-layout--bez){ grid-template-columns:minmax(0,1fr) minmax(0,1fr); } }
.nd-part__main{ grid-template-columns:34px 56px minmax(0,1fr) auto 40px; gap:10px; }
.nd-part__img{ width:56px; height:46px; }
.nd .nd-part__cart .nd-btn{ width:40px; height:40px; padding:0; justify-content:center; border-radius:12px; }
.nd .nd-part__cart .nd-btn span{ display:none; }
.nd-part__price .price, .nd-part__price .price *{ line-height:1.2; }
@media (max-width:600px){ .nd-part__main{ grid-template-columns:30px 52px minmax(0,1fr) 40px; } }
.nd-part__kit{ display:grid; grid-template-columns:minmax(0,1fr) auto 32px; column-gap:12px; row-gap:4px; align-items:center; }
.nd-part__kit-t{ grid-column:1 / -1; font-size:11.5px; text-transform:uppercase; letter-spacing:.04em; }
.nd .nd-part__kit-name{ min-width:0; font-size:12.5px; line-height:1.35; }
.nd-part__kit-price{ text-align:right; white-space:nowrap; }
@media (max-width:1000px){ .nd-dot{ min-width:18px; height:18px; font-size:9px; line-height:14px; padding:0 3px; } }
@media (max-width:600px){ .nd-dot{ min-width:15px; height:15px; font-size:7.5px; line-height:12px; border-width:1.5px; padding:0 2px; } .nd-dot--mini{ width:12px; min-width:12px; height:12px; } }
.nd-part__name, .nd-part__kit-name, .nd-dot-tip em{ overflow-wrap:anywhere; }

/* ===== produkt: zestawy i czesci (element w zestawach, schematy napedow) ===== */
.nd-kit-note{ display:flex; gap:12px; align-items:flex-start; background:var(--accent-soft); border-radius:12px; padding:12px 16px; margin:0 0 14px; font-size:13.5px; color:var(--ink-soft); line-height:1.5; }
.nd-kit-note .nd-ico{ width:20px; height:20px; stroke:var(--accent); flex-shrink:0; margin-top:1px; }
.nd-kit-note b{ display:block; color:var(--ink); font-family:var(--font-display); font-size:14.5px; }
.nd-kit-note.is-only{ background:#fff7ed; } .nd-kit-note.is-only .nd-ico{ stroke:#ea580c; }
.nd-kit-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(360px,1fr)); gap:12px; margin-bottom:22px; }
.nd-kit-card{ display:grid; grid-template-columns:96px minmax(0,1fr); gap:14px; padding:12px; align-items:center; transition:border-color .15s; }
.nd-kit-card:hover{ border-color:var(--accent); }
.nd-kit-card__img{ width:96px; height:80px; border-radius:10px; background:var(--surface); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-kit-card__img img{ max-width:92%; max-height:92%; object-fit:contain; }
.nd-kit-card__body{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.nd .nd-kit-card__name{ font-family:var(--font-display); font-weight:800; font-size:14px; line-height:1.3; color:var(--ink) !important; overflow-wrap:anywhere; }
.nd .nd-kit-card__name:hover{ color:var(--accent) !important; }
.nd-kit-card__row{ display:flex; align-items:flex-end; justify-content:space-between; gap:10px; margin-top:4px; }
.nd-kit-card__row .price, .nd-kit-card__row .price *{ font-size:16px; line-height:1.2; }
.nd .nd-kit-h{ font-size:16px !important; font-weight:900; margin:4px 0 10px; }
.nd-kit-sch{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:10px; }
.nd .nd-kit-schem{ display:flex; align-items:center; gap:14px; padding:12px 14px; color:var(--ink) !important; background:linear-gradient(100deg,var(--surface),#fff 60%); }
.nd .nd-kit-schem:hover{ border-color:var(--accent); }
.nd-kit-schem__nr{ min-width:36px; height:36px; border-radius:999px; background:var(--accent); color:#fff; font-family:var(--font-display); font-weight:900; font-size:14px; display:inline-flex; align-items:center; justify-content:center; padding:0 6px; flex-shrink:0; box-shadow:0 0 0 4px var(--accent-soft); }
.nd-kit-schem__t{ display:flex; flex-direction:column; min-width:0; flex:1; }
.nd-kit-schem__t small{ font-size:11px; text-transform:uppercase; letter-spacing:.06em; font-weight:700; color:var(--ink-faint); }
.nd-kit-schem__t b{ font-family:var(--font-display); font-size:14.5px; }
.nd-kit-schem__go{ display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:700; color:var(--accent); white-space:nowrap; }
.nd-kit-schem__go .nd-ico{ width:14px; height:14px; stroke:var(--accent); }
@media (max-width:600px){ .nd-kit-grid, .nd-kit-sch{ grid-template-columns:minmax(0,1fr); } .nd-kit-card{ grid-template-columns:72px minmax(0,1fr); } .nd-kit-card__img{ width:72px; height:60px; } .nd-kit-schem__go{ font-size:0; gap:0; } .nd-kit-schem__go .nd-ico{ width:18px; height:18px; } }

/* ===== lista producentow: top, wyszukiwarka, liczniki ===== */
.nd-brands h1.title{ margin:8px 0 8px !important; }
.nd-brands-h{ font-size:17px !important; font-weight:900; margin:6px 0 12px; }
.nd-brands-top{ margin-bottom:28px; }
.nd-brands-grid--top{ grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); }
.nd .nd-brand-tile--top{ padding:16px; background:linear-gradient(110deg,var(--accent-soft),#fff 60%); }
.nd-brand-tile--top .nd-brand-tile__logo{ width:64px; height:50px; background:#fff; }
.nd-brand-tile--top .nd-brand-tile__logo span{ font-size:18px; }
.nd-brand-tile__t{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.nd-brand-tile__t b{ flex:none; }
.nd-brand-tile__t small{ font-size:12px; color:var(--ink-faint); font-weight:600; }
.nd-brand-tile--top .nd-brand-tile__t b{ font-size:16px; }
.nd-brands-bar{ position:sticky; top:67px; z-index:5; display:flex; align-items:center; gap:14px; flex-wrap:wrap; background:rgba(255,255,255,.96); backdrop-filter:blur(6px); padding:10px 0; margin:0 0 18px; border-bottom:1px solid var(--line); }
.nd-brands-bar .nd-brands-az{ position:static; margin:0; padding:0; background:none; flex:1; }
.nd-brands-search{ display:flex; align-items:center; gap:8px; border:1.5px solid var(--line); border-radius:10px; padding:0 12px; background:#fff; margin:0 !important; width:240px; font-weight:400 !important; }
.nd-brands-search:focus-within{ border-color:var(--accent); }
.nd-brands-search .nd-ico{ width:16px; height:16px; stroke:var(--ink-faint); flex-shrink:0; }
.nd-brands-search input{ border:none; outline:none; height:38px; flex:1; min-width:0; font-size:14px; background:transparent; }
.nd .nd-brands-az a.is-active{ background:var(--ink); border-color:var(--ink); color:#fff !important; }
.nd .nd-brands-az a.is-off{ opacity:.3; pointer-events:none; }
.nd-brands-empty{ padding:18px; background:var(--surface); border-radius:12px; font-size:14px; }
@media (max-width:700px){
	.nd-brands-search{ width:100%; }
	.nd-brands-bar .nd-brands-az{ flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
	.nd .nd-brands-az a{ flex-shrink:0; }
	.nd-brands-grid--top{ grid-template-columns:repeat(2,minmax(0,1fr)); }
	.nd .nd-brand-tile--top{ flex-direction:column; align-items:flex-start; }
	.nd-brand-tile--top > .nd-ico{ display:none; }
}

/* ===== dostawa i platnosc (dostawa.tpl) ===== */
.nd-ship-page h1.title{ margin:8px 0 8px !important; }
.nd-ship-facts{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0 6px; }
.nd-ship-fact{ display:flex; gap:14px; padding:16px 18px; font-size:13.5px; color:var(--ink-soft); line-height:1.5; }
.nd-ship-fact b{ display:block; color:var(--ink); font-family:var(--font-display); font-size:15.5px; margin-bottom:2px; }
.nd-ship-fact__ico{ width:44px; height:44px; border-radius:12px; background:var(--accent-soft); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-ship-fact__ico .nd-ico{ width:22px; height:22px; stroke:var(--accent); }
.nd-ship-calc .nd-sec-head{ align-items:flex-end; gap:16px; flex-wrap:wrap; }
.nd-ship-country{ display:flex; align-items:center; gap:8px; border:1.5px solid var(--line); border-radius:12px; padding:0 4px 0 12px; background:#fff; margin:0 !important; min-width:280px; }
.nd-ship-country:focus-within{ border-color:var(--accent); }
.nd-ship-country .nd-ico{ width:18px; height:18px; stroke:var(--accent); flex-shrink:0; }
.nd-ship-country select{ border:none !important; box-shadow:none !important; height:44px; font-family:var(--font-display); font-weight:800; font-size:15px; background:transparent; flex:1; }
.nd-ship-sum{ display:flex; align-items:baseline; gap:6px 16px; flex-wrap:wrap; background:var(--ink); color:rgba(255,255,255,.75); border-radius:var(--radius-m); padding:14px 18px; margin-bottom:6px; font-size:13.5px; }
.nd-ship-sum b{ font-family:var(--font-display); font-weight:900; font-size:19px; color:#fff; }
.nd-ship-sum strong{ color:#fff; }
.nd .nd-ship-h{ display:flex; align-items:center; gap:8px; font-size:14px !important; font-weight:800; color:var(--ink-soft); margin:18px 0 8px; text-transform:none; }
.nd-ship-h span{ color:var(--ink); }
.nd-ship-h .nd-ico{ width:16px; height:16px; stroke:var(--accent); }
.nd-ship-rows{ display:flex; flex-direction:column; gap:6px; }
.nd-ship-row{ display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:14px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:12px; padding:10px 16px 10px 12px; }
.nd-ship-row:hover{ border-color:var(--accent); }
.nd-ship-row__ico{ width:40px; height:40px; border-radius:10px; background:var(--surface); display:inline-flex; align-items:center; justify-content:center; }
.nd-ship-row__ico .nd-ico{ width:19px; height:19px; stroke:var(--ink-soft); }
.nd-ship-row__main{ min-width:0; display:flex; flex-direction:column; gap:4px; }
.nd-ship-row__main > b{ font-family:var(--font-display); font-size:14.5px; color:var(--ink); }
.nd-ship-row__tags{ display:flex; gap:6px; flex-wrap:wrap; }
.nd-ship-row__tags span{ display:inline-flex; align-items:center; gap:4px; font-size:11.5px; font-weight:600; color:var(--ink-soft); background:var(--surface); border-radius:999px; padding:2px 9px; }
.nd-ship-row__tags .nd-ico{ width:12px; height:12px; }
.nd-ship-row__price{ text-align:right; display:flex; flex-direction:column; }
.nd-ship-row__price b{ font-family:var(--font-display); font-weight:900; font-size:17px; color:var(--ink); white-space:nowrap; }
.nd-ship-row__price small{ font-size:11.5px; color:var(--ink-faint); white-space:nowrap; }
.nd-ship-note{ display:flex; gap:8px; align-items:flex-start; font-size:12.5px; color:var(--ink-faint); margin:14px 0 0; }
.nd-ship-note .nd-ico{ width:15px; height:15px; stroke:var(--ink-faint); flex-shrink:0; margin-top:2px; }
.nd-pay-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.nd-pay-card{ padding:18px; display:flex; flex-direction:column; gap:10px; }
.nd-pay-card__logo{ height:56px; display:flex; align-items:center; }
.nd-pay-card__logo img{ max-height:48px; max-width:100%; object-fit:contain; }
.nd .nd-pay-card h3{ font-size:15.5px !important; margin:0; }
.nd-pay-card__txt{ font-size:13.5px; color:var(--ink-soft); line-height:1.6; }
.nd-pay-card__txt b, .nd-pay-card__txt strong{ color:var(--ink); }
@media (max-width:1000px){ .nd-ship-facts{ grid-template-columns:minmax(0,1fr); } .nd-pay-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px){
	.nd-ship-country{ min-width:0; width:100%; }
	.nd-ship-row{ grid-template-columns:34px minmax(0,1fr); padding:10px 12px; }
	.nd-ship-row__ico{ width:34px; height:34px; }
	.nd-ship-row__price{ grid-column:2; flex-direction:row; align-items:baseline; gap:8px; text-align:left; }
	.nd-pay-grid{ grid-template-columns:minmax(0,1fr); }
}

/* ===== dokumenty prawne (regulamin, polityka prywatnosci, cookies) ===== */
.nd-read-progress{ position:fixed; left:0; right:0; top:0; height:3px; z-index:1100; pointer-events:none; }
.nd-read-progress i{ display:block; height:100%; width:0; background:var(--accent); transition:width .1s linear; }
.nd-legal-bar{ display:flex; align-items:center; gap:8px 18px; flex-wrap:wrap; padding:10px 0 14px; margin:-8px 0 20px; border-bottom:1px solid var(--line); font-size:12.5px; color:var(--ink-soft); }
.nd-legal-bar > span{ display:inline-flex; align-items:center; gap:6px; }
.nd-legal-bar .nd-ico{ width:15px; height:15px; stroke:var(--accent); }
.nd-legal-bar b{ color:var(--ink); }
.nd-legal-bar .nd-btn{ margin-left:auto; }
.nd-legal-bar .nd-btn .nd-ico{ stroke:currentColor; }
.nd-info-body .nd-info-sec{ position:relative; }
.nd-info-body .nd-info-sec--caps{ font-size:15.5px; letter-spacing:.02em; margin-top:26px; margin-bottom:4px; padding-top:18px; border-top:1px solid var(--line); }
.nd-info-body > .nd-info-sec--caps:first-of-type{ border-top:none; padding-top:0; }
.nd-legal .nd-info-body p[id] .nd-info-sec, .nd-legal .nd-info-body h2.nd-info-sec, .nd-legal .nd-info-body h3.nd-info-sec{ padding-top:18px; border-top:1px solid var(--line); }
.nd .nd-info-anchor{ margin-left:8px; font-size:.85em; color:var(--ink-faint) !important; opacity:0; text-decoration:none; font-weight:700; transition:opacity .15s; }
.nd-info-sec:hover .nd-info-anchor, .nd-info-anchor:focus{ opacity:1; }
.nd .nd-info-anchor:hover{ color:var(--accent) !important; }
.nd .nd-info-toc a.is-active{ color:var(--accent) !important; font-weight:700; }
.nd-info-toc li:has(a.is-active){ color:var(--accent); }
@media print{
	.nd-topbar, header, .nd-header, footer, .nd-footer, .nd-info-aside, .nd-crumb, .breadcrumb, .nd-cookie, #div_cookie, .nd-scrollup, .scrollup, .nd-read-progress, .nd-legal-bar .nd-btn, .nd-info-help, .nd-info-anchor, .nd-drawer, .nd-mega{ display:none !important; }
	.nd-info-layout{ display:block !important; }
	.nd-info-article{ border:none !important; box-shadow:none !important; padding:0 !important; }
	.nd-info-body{ max-width:none; font-size:11pt; color:#000; }
	.nd-info-body .nd-info-sec{ break-after:avoid; }
	body{ background:#fff !important; }
}
.nd-legal .nd-info-body .nd-info-sec{ margin-top:26px; padding-top:18px; border-top:1px solid var(--line); }
.nd-legal .nd-info-body .nd-info-sec.is-first, .nd-info-body .nd-info-sec--caps.is-first{ margin-top:6px; padding-top:0; border-top:none; }
.nd-legal .nd-info-body .nd-info-sec.is-first, .nd-info-body .nd-info-sec--caps.is-first{ margin-top:18px; } .nd-info-body > .nd-info-sec.is-first:first-child, .nd-info-body > div:first-child > .nd-info-sec.is-first{ margin-top:0; }

/* ===== cookies: lista plikow cookies sklepu ===== */
.nd-cookie-list{ margin-top:30px; padding:20px; background:var(--surface); border-radius:var(--radius-m); }
.nd .nd-cookie-list__h{ font-size:18px !important; font-weight:900; margin:0 0 6px; }
.nd-cookie-list__lead{ font-size:13.5px; color:var(--ink-soft); margin:0 0 14px; }
.nd-cookie-rows{ display:flex; flex-direction:column; gap:6px; }
.nd-cookie-row{ display:grid; grid-template-columns:12px 170px minmax(0,1fr) auto; gap:12px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:10px; padding:10px 14px; font-size:13.5px; color:var(--ink-soft); }
.nd-cookie-row__dot{ width:10px; height:10px; border-radius:999px; background:var(--surface-2); }
.nd-cookie-row.is-on .nd-cookie-row__dot{ background:#16a34a; box-shadow:0 0 0 3px #dcfce7; }
.nd-cookie-row code{ font-size:12.5px; background:var(--surface); color:var(--ink); border-radius:6px; padding:2px 7px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nd-cookie-row__tags{ display:flex; gap:4px; }
.nd-cookie-row__tags span{ font-size:11px; font-weight:700; background:var(--accent-soft); color:var(--accent-dark); border-radius:999px; padding:2px 8px; white-space:nowrap; }
.nd-cookie-list__foot{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; margin-top:14px; font-size:12.5px; color:var(--ink-faint); }
@media (max-width:700px){ .nd-cookie-row{ grid-template-columns:12px minmax(0,1fr); } .nd-cookie-row__opis, .nd-cookie-row__tags{ grid-column:2; } }
@media print{ .nd-cookie-list__foot{ display:none; } }

/* ===== reklamacje i zwroty (reklamacje.tpl) ===== */
.nd-rma-main{ min-width:0; display:flex; flex-direction:column; gap:16px; }
.nd-rma-head h1.title{ margin:8px 0 8px !important; }
.nd-rma-head .nd-lead{ margin:0; }
.nd-rma-paths{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.nd .nd-rma-path{ display:flex; align-items:center; gap:14px; padding:18px; color:var(--ink) !important; font-size:13.5px; line-height:1.45; }
.nd .nd-rma-path:hover{ border-color:var(--accent); }
.nd-rma-path > span:nth-child(2){ flex:1; color:var(--ink-soft); }
.nd-rma-path b{ display:block; font-family:var(--font-display); font-size:17px; color:var(--ink); margin-bottom:2px; }
.nd-rma-path > .nd-ico{ width:18px; height:18px; stroke:var(--accent); }
.nd-rma-path__ico{ width:48px; height:48px; border-radius:14px; background:var(--accent-soft); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-rma-path__ico .nd-ico{ width:24px; height:24px; stroke:var(--accent); }
.nd .nd-rma-path--dark{ background:var(--ink); border-color:var(--ink); }
.nd-rma-path--dark b{ color:#fff; } .nd-rma-path--dark > span:nth-child(2){ color:rgba(255,255,255,.7); }
.nd-rma-path--dark .nd-rma-path__ico{ background:rgba(255,255,255,.12); } .nd-rma-path--dark .nd-rma-path__ico .nd-ico, .nd-rma-path--dark > .nd-ico{ stroke:#fff; }
.nd-rma-sec{ padding:clamp(18px,2.4vw,28px); scroll-margin-top:100px; }
.nd .nd-rma-h{ display:flex; align-items:center; gap:12px; font-size:20px !important; font-weight:900; margin:0 0 16px; }
.nd-rma-h > span{ width:38px; height:38px; border-radius:12px; background:var(--accent-soft); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-rma-h .nd-ico{ width:19px; height:19px; stroke:var(--accent); }
.nd-rma-lead{ font-size:14px; color:var(--ink-soft); margin:-8px 0 16px; }
.nd-rma-steps{ list-style:none; counter-reset:krok; margin:0 0 16px; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.nd-rma-steps li{ counter-increment:krok; position:relative; background:var(--surface); border-radius:12px; padding:44px 16px 16px; font-size:13.5px; line-height:1.55; color:var(--ink-soft); }
.nd-rma-steps li::before{ content:counter(krok); position:absolute; top:12px; left:16px; width:26px; height:26px; border-radius:999px; background:var(--ink); color:#fff; font-family:var(--font-display); font-weight:900; font-size:13px; display:flex; align-items:center; justify-content:center; }
.nd-rma-steps li > b:first-child{ display:block; font-family:var(--font-display); font-size:15px; color:var(--ink); margin-bottom:4px; }
.nd-rma-steps a{ color:var(--accent) !important; font-weight:700; }
.nd-rma-note{ display:flex; gap:12px; align-items:flex-start; background:var(--accent-soft); border-radius:12px; padding:12px 16px; font-size:13px; line-height:1.55; color:var(--ink-soft); }
.nd-rma-note .nd-ico{ width:18px; height:18px; stroke:var(--accent); flex-shrink:0; margin-top:2px; }
.nd-rma-note b{ color:var(--ink); }
.nd-rma-note--warn{ background:#fff7ed; } .nd-rma-note--warn .nd-ico{ stroke:#ea580c; }
.nd-rma-doc{ border:1.5px dashed var(--line); border-radius:12px; padding:20px; background:#fff; }
.nd-rma-doc__to{ font-size:13px; color:var(--ink-soft); line-height:1.6; margin-bottom:14px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.nd-rma-doc__to small{ display:block; font-size:11px; text-transform:uppercase; letter-spacing:.06em; font-weight:700; color:var(--ink-faint); }
.nd-rma-doc__to b{ display:block; font-family:var(--font-display); font-size:15px; color:var(--ink); }
.nd-rma-doc__t{ font-weight:700; color:var(--ink); font-size:14px; margin:0 0 8px; }
.nd-rma-doc__sign{ margin-top:18px; display:flex; justify-content:flex-end; }
.nd-rma-doc__sign span{ width:240px; border-top:1px solid var(--ink-faint); padding-top:6px; text-align:center; font-size:11.5px; color:var(--ink-faint); }
.nd-rma-form .nd-form-actions{ margin-top:14px; }
.nd-rma-rules summary{ display:flex; align-items:center; gap:12px; cursor:pointer; list-style:none; }
.nd-rma-rules summary::-webkit-details-marker{ display:none; }
.nd-rma-rules summary > span{ width:38px; height:38px; border-radius:12px; background:var(--surface); display:inline-flex; align-items:center; justify-content:center; }
.nd-rma-rules summary > span .nd-ico{ width:18px; height:18px; stroke:var(--ink-soft); }
.nd-rma-rules summary b{ flex:1; font-family:var(--font-display); font-size:15.5px; }
.nd-rma-rules summary > .nd-ico{ width:16px; height:16px; transform:rotate(90deg); transition:transform .2s; }
.nd-rma-rules[open] summary > .nd-ico{ transform:rotate(-90deg); }
.nd-rma-rules__txt{ margin:16px 0 12px; font-size:14px; }
.nd .nd-rma-rules .nd-link-plain{ font-size:13.5px; font-weight:700; color:var(--accent) !important; }
@media (max-width:900px){ .nd-rma-paths, .nd-rma-steps{ grid-template-columns:minmax(0,1fr); } }
@media print{
	body.nd-druk-formularz *{ visibility:hidden !important; }
	body.nd-druk-formularz #nd-rma-doc, body.nd-druk-formularz #nd-rma-doc *{ visibility:visible !important; }
	body.nd-druk-formularz #nd-rma-doc{ position:absolute; left:0; top:0; width:100%; border:none; padding:0; }
	body.nd-druk-formularz #nd-rma-doc .form-control{ border:none !important; border-bottom:1px dotted #000 !important; border-radius:0 !important; box-shadow:none !important; background:none !important; }
	body.nd-druk-formularz #nd-rma-doc textarea::placeholder{ color:transparent; }
	body.nd-druk-formularz #nd-rma-doc::before{ content:"WZÓR FORMULARZA ODSTĄPIENIA OD UMOWY"; display:block; visibility:visible; font-weight:700; font-size:14pt; margin-bottom:12px; }
}
.nd-foot-extra{ margin:0; padding:0; list-style:none; } .nd-foot-extra li{ margin:0 0 10px; } .nd .nd-foot-extra a{ color:#c7c8cc !important; font-size:14px; } .nd .nd-foot-extra a:hover{ color:#fff !important; }
.nd-legal .nd-info-body .nd-info-sec.is-first, .nd-legal .nd-info-body p[id] .nd-info-sec.is-first{ border-top:none !important; padding-top:0 !important; }

/* ===== szkolenia: fakty + galerie (szkolenia_galeria.tpl) ===== */
.nd-train-facts{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 22px; }
.nd-train-fact{ display:flex; gap:12px; padding:14px 16px; font-size:13px; color:var(--ink-soft); line-height:1.5; }
.nd-train-fact b{ display:block; color:var(--ink); font-family:var(--font-display); font-size:14.5px; }
.nd-train-fact a{ color:var(--accent) !important; font-weight:700; }
.nd-train-fact__ico{ width:40px; height:40px; border-radius:12px; background:var(--accent-soft); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.nd-train-fact__ico .nd-ico{ width:20px; height:20px; stroke:var(--accent); }
.nd-gal-list-wrap{ margin-top:10px; }
.nd-gal-list-wrap > h1.title{ margin:8px 0 8px !important; }
.nd-gal-list-head{ margin-top:34px; }
.nd-train-gallery{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px; }
.nd .nd-train-gal{ display:flex; flex-direction:column; gap:8px; padding:10px 10px 14px; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-train-gal:hover{ border-color:var(--accent); transform:translateY(-2px); }
.nd-train-gal__img{ position:relative; display:block; aspect-ratio:4/3; border-radius:10px; overflow:hidden; background:var(--surface); }
.nd-train-gal__img img{ width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.nd-train-gal:hover .nd-train-gal__img img{ transform:scale(1.04); }
.nd-train-gal__count{ position:absolute; right:8px; bottom:8px; display:inline-flex; align-items:center; gap:5px; background:rgba(15,17,23,.75); color:#fff; font-size:11.5px; font-weight:700; border-radius:999px; padding:4px 10px; backdrop-filter:blur(4px); }
.nd-train-gal__count .nd-ico{ width:12px; height:12px; stroke:#fff; }
.nd-train-gal__strip{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.nd-train-gal__strip img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:6px; background:var(--surface); }
.nd-train-gal__date{ display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:700; color:var(--ink-faint); padding:0 4px; }
.nd-train-gal__date .nd-ico{ width:13px; height:13px; }
.nd-train-gal > b{ font-family:var(--font-display); font-size:14.5px; line-height:1.3; padding:0 4px; }
.nd-gal-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:16px; flex-wrap:wrap; margin:8px 0 18px; }
.nd-gal-head h1.title{ margin:6px 0 0 !important; font-size:clamp(22px,2.4vw,32px) !important; }
.nd-gal-meta{ display:flex; gap:8px; flex-wrap:wrap; }
.nd-gal-meta span{ display:inline-flex; align-items:center; gap:6px; background:var(--surface); border-radius:999px; padding:6px 12px; font-size:12.5px; font-weight:700; color:var(--ink-soft); }
.nd-gal-meta .nd-ico{ width:14px; height:14px; stroke:var(--accent); }
.nd-gal-grid{ columns:3 260px; column-gap:12px; }
.nd-gal-item{ display:block; break-inside:avoid; margin:0 0 12px; border-radius:12px; overflow:hidden; background:var(--surface); cursor:zoom-in; }
.nd-gal-item img{ width:100%; height:auto; display:block; transition:transform .35s, opacity .2s; }
.nd-gal-item:hover img{ transform:scale(1.03); }
.nd-gal-item:focus-visible{ outline:3px solid var(--accent); outline-offset:2px; }
.nd-gal-cta{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:16px 18px; margin-top:12px; background:linear-gradient(100deg,var(--accent-soft),#fff 60%); font-size:13.5px; color:var(--ink-soft); }
.nd-gal-cta > span:nth-child(2){ flex:1; min-width:220px; }
.nd-gal-cta b{ display:block; color:var(--ink); font-family:var(--font-display); font-size:16px; }
.nd-gal-cta__ico{ width:44px; height:44px; border-radius:12px; background:var(--accent); display:inline-flex; align-items:center; justify-content:center; }
.nd-gal-cta__ico .nd-ico{ width:22px; height:22px; stroke:#fff; }
.nd-lightbox{ position:fixed; inset:0; z-index:2000; background:rgba(10,12,18,.94); display:flex; align-items:center; justify-content:center; padding:24px 70px; }
.nd-lightbox[hidden]{ display:none; }
.nd-lightbox figure{ margin:0; display:flex; flex-direction:column; align-items:center; gap:10px; max-width:100%; max-height:100%; }
.nd-lightbox img{ max-width:100%; max-height:calc(100vh - 90px); object-fit:contain; border-radius:8px; }
.nd-lightbox figcaption{ color:rgba(255,255,255,.75); font-size:13px; font-weight:700; font-variant-numeric:tabular-nums; }
.nd-lightbox button{ position:absolute; border:none; background:rgba(255,255,255,.12); width:46px; height:46px; border-radius:999px; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.nd-lightbox button:hover{ background:rgba(255,255,255,.24); }
.nd-lightbox button .nd-ico{ width:22px; height:22px; stroke:#fff; }
.nd-lightbox__x{ top:16px; right:16px; }
.nd-lightbox__nav--prev{ left:14px; top:50%; transform:translateY(-50%); } .nd-lightbox__nav--prev .nd-ico{ transform:rotate(180deg); }
.nd-lightbox__nav--next{ right:14px; top:50%; transform:translateY(-50%); }
@media (max-width:900px){ .nd-train-facts{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:600px){ .nd-gal-grid{ columns:2 140px; column-gap:8px; } .nd-gal-item{ margin-bottom:8px; } .nd-lightbox{ padding:60px 8px; } .nd-lightbox__nav{ top:auto !important; bottom:14px; transform:none !important; } }
.nd-gal-list-wrap > .nd-back, .nd-gal-page > .nd-back{ display:flex; width:fit-content; margin-bottom:10px; }

/* ===== filtry cech w kategorii (filtr.tpl) ===== */
.nd .nd-filter{ background:var(--surface); border-radius:var(--radius-m); padding:10px 12px; margin:0 0 18px; }
.nd-filter__bar{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.nd-filter__label{ display:inline-flex; align-items:center; gap:6px; font-family:var(--font-display); font-weight:800; font-size:12.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-soft); margin:0 4px; }
.nd-filter__label .nd-ico{ width:15px; height:15px; stroke:var(--accent); }
.nd-filter__groups{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.nd-filter__sheet-head, .nd-filter__sheet-foot, .nd-filter__mobile{ display:none; }
.nd .nd-filter .viewb{ position:relative; margin:0; float:none; width:auto; }
.nd .nd-filter .boxa{ display:inline-flex; align-items:center; gap:8px; height:38px; padding:0 12px 0 14px; background:#fff; border:1.5px solid var(--line); border-radius:999px; cursor:pointer; user-select:none; transition:border-color .15s, background .15s; }
.nd .nd-filter .boxa:hover, .nd .nd-filter .viewb.is-open .boxa{ border-color:var(--ink); }
.nd .nd-filter .boxa:focus-visible{ outline:3px solid var(--accent); outline-offset:2px; }
.nd .nd-filter .boxa .tit{ display:inline-flex; align-items:center; gap:6px; float:none; width:auto; padding:0; }
.nd .nd-filter .boxa .title{ font-family:var(--font-display); font-weight:700; font-size:13px; text-transform:none; letter-spacing:0; color:var(--ink); white-space:nowrap; margin:0; }
.nd .nd-filter .boxa .arr{ display:inline-flex; float:none; width:auto; padding:0; }
.nd .nd-filter .boxa .arr .nd-ico{ width:13px; height:13px; transform:none; transition:transform .2s; stroke:var(--ink-soft); }
.nd .nd-filter .viewb.is-open .boxa .arr .nd-ico{ transform:rotate(180deg); }
.nd-filter__n{ min-width:20px; height:20px; border-radius:999px; background:var(--accent); color:#fff; font-size:11px; font-weight:800; display:inline-flex; align-items:center; justify-content:center; padding:0 6px; }
.nd-filter__n[hidden]{ display:none; }
.nd .nd-filter .viewb.is-set .boxa{ background:var(--ink); border-color:var(--ink); }
.nd .nd-filter .viewb.is-set .boxa .title{ color:#fff; }
.nd .nd-filter .viewb.is-set .boxa .arr .nd-ico{ stroke:#fff; }
/* panel po rozwinieciu: wyszukiwarka + lista + stopka w jednym pudelku */
.nd .nd-filter .viewb .list, .nd .nd-filter .viewb .nd-filter__search, .nd .nd-filter .viewb .nd-filter__foot{ display:none; }
.nd .nd-filter .viewb.is-open{ z-index:40; }
.nd .nd-filter .viewb.is-open > .nd-filter__panel{ display:block; }
.nd-filter__panel{ display:none; position:absolute; left:0; top:calc(100% + 6px); width:300px; background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-pop); overflow:hidden; z-index:41; }
.nd .nd-filter .nd-filter__panel .nd-filter__search{ display:block; padding:10px 10px 4px; }
.nd .nd-filter .nd-filter__panel .list{ display:block; max-height:300px; overflow-y:auto; padding:6px; }
.nd .nd-filter .nd-filter__panel .nd-filter__foot{ display:flex; gap:8px; padding:10px; border-top:1px solid var(--surface-2); }
.nd-filter__foot .nd-btn{ flex:1; justify-content:center; }
.nd-filter__search input{ width:100%; height:36px; border:1.5px solid var(--line); border-radius:10px; padding:0 10px; font-size:13px; outline:none; }
.nd-filter__search input:focus{ border-color:var(--accent); }
.nd .nd-filter .list .item{ display:block; margin:0; padding:0; float:none; width:auto; position:relative; }
.nd .nd-filter .list .item input{ position:absolute; opacity:0; width:1px; height:1px; left:0; top:0; }
.nd .nd-filter .list .item label{ display:flex !important; align-items:center; gap:10px; margin:0; padding:8px 10px; border-radius:9px; cursor:pointer; font-weight:500 !important; font-size:13.5px !important; color:var(--ink) !important; font-family:var(--font-body) !important; }
.nd .nd-filter .list .item label:hover{ background:var(--surface); }
.nd .nd-filter .list .item label::before{ content:""; width:18px; height:18px; border-radius:5px; border:1.5px solid var(--line); background:#fff center/12px no-repeat; flex-shrink:0; transition:background-color .12s, border-color .12s; }
.nd .nd-filter .list .item input:checked + label::before{ background-color:var(--accent); border-color:var(--accent); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }
.nd .nd-filter .list .item input:focus-visible + label{ outline:2px solid var(--accent); outline-offset:-2px; }
.nd .nd-filter .list .item .val{ flex:1; min-width:0; }
.nd .nd-filter .list .item .count{ font-size:11.5px; font-weight:700; color:var(--ink-faint); background:var(--surface); border-radius:999px; padding:1px 8px; }
.nd .nd-filter .list.is-empty::after{ content:attr(data-brak); display:block; padding:10px; font-size:13px; color:var(--ink-faint); }
/* aktywne filtry */
.nd-filter__chips{ display:flex; gap:6px; flex-wrap:wrap; align-items:center; margin-top:10px; padding-top:10px; border-top:1px solid var(--line); }
.nd-filter__chips[hidden]{ display:none; }
.nd .nd-chip{ display:inline-flex; align-items:center; gap:6px; border:1.5px solid var(--line); background:#fff; border-radius:999px; padding:5px 12px; font-size:12.5px; font-weight:700; color:var(--ink) !important; cursor:pointer; line-height:1.3; }
.nd .nd-chip small{ font-weight:600; color:var(--ink-faint); }
.nd .nd-chip i{ font-style:normal; }
.nd .nd-chip--on{ border-color:var(--accent); background:var(--accent-soft); }
.nd .nd-chip--on span{ font-size:15px; line-height:1; color:var(--accent-dark); margin-left:2px; }
.nd .nd-chip--on:hover{ border-color:var(--ink); }
.nd .nd-chip--clear{ border:none; background:none; color:var(--accent) !important; text-decoration:underline; text-underline-offset:3px; }
.nd-filter__cats{ display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
.nd-filter-backdrop{ position:fixed; inset:0; background:rgba(10,12,18,.45); z-index:1049; }
.nd-filter-backdrop[hidden]{ display:none; }
body.nd-noscroll{ overflow:hidden; }
/* telefon / tablet: wysuwany arkusz */
@media (max-width:900px){
	.nd .nd-filter{ padding:8px; }
	.nd-filter__bar > .nd-filter__label{ display:none; }
	.nd-filter__mobile{ display:inline-flex; align-items:center; gap:8px; height:42px; padding:0 16px; border:1.5px solid var(--ink); background:#fff; border-radius:999px; font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--ink); cursor:pointer; }
	.nd-filter__mobile .nd-ico{ width:16px; height:16px; }
	.nd-filter__badge{ min-width:20px; height:20px; border-radius:999px; background:var(--accent); color:#fff; font-size:11px; display:inline-flex; align-items:center; justify-content:center; padding:0 6px; }
	.nd-filter__badge[hidden]{ display:none; }
	.nd-filter__groups{ position:fixed; left:0; right:0; bottom:0; z-index:1050; max-height:86vh; overflow-y:auto; background:#fff; border-radius:20px 20px 0 0; box-shadow:0 -10px 40px rgba(0,0,0,.2); display:block; transform:translateY(105%); transition:transform .25s ease, visibility .25s; padding:0 16px; visibility:hidden; }
	.nd-filter__groups.is-sheet-open{ transform:none; visibility:visible; }
	.nd-filter__sheet-head{ display:flex; justify-content:space-between; align-items:center; position:sticky; top:0; background:#fff; padding:16px 0 10px; z-index:2; }
	.nd-filter__sheet-head b{ font-family:var(--font-display); font-size:18px; }
	.nd-filter__close{ width:38px; height:38px; border-radius:999px; border:none; background:var(--surface); display:inline-flex; align-items:center; justify-content:center; }
	.nd-filter__close .nd-ico{ width:18px; height:18px; }
	.nd-filter__sheet-foot{ display:flex; gap:10px; position:sticky; bottom:0; background:#fff; padding:12px 0 16px; border-top:1px solid var(--line); margin-top:8px; z-index:2; }
	.nd-filter__sheet-foot .nd-btn{ flex:1; justify-content:center; }
	.nd .nd-filter .viewb{ display:block; border-bottom:1px solid var(--line); }
	.nd .nd-filter .boxa{ display:flex; width:100%; justify-content:space-between; height:52px; border:none !important; border-radius:0; padding:0 4px; background:none !important; }
	.nd .nd-filter .viewb.is-set .boxa .title{ color:var(--ink); }
	.nd .nd-filter .viewb.is-set .boxa .arr .nd-ico{ stroke:var(--ink-soft); }
	.nd-filter__panel{ position:static; width:auto; border:none; box-shadow:none; border-radius:0; }
	.nd .nd-filter .nd-filter__panel .list{ max-height:none; padding:0 0 10px; }
	.nd .nd-filter .nd-filter__panel .nd-filter__foot{ display:none; }
}
@media (max-width:900px){ .nd #filter.nd-filter{ position:static; z-index:auto; } }
.nd .nd-filter .viewb{ background:none !important; border:none !important; height:auto !important; min-height:0 !important; padding:0 !important; box-shadow:none !important; width:auto !important; }
.nd .nd-filter .viewb{ margin:0 !important; float:none !important; } .nd .nd-filter .boxa{ margin:0 !important; }
.nd .nd-filter .nd-filter__panel .list{ position:static !important; height:auto !important; width:auto !important; left:auto !important; top:auto !important; border:none !important; box-shadow:none !important; background:#fff !important; margin:0 !important; }
@media (min-width:901px){ .nd-filter__panel.is-right{ left:auto; right:0; } }

/* ===== mapa strony (mapa_strony.tpl) ===== */
.nd-sitemap-head{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,380px); gap:24px; align-items:end; margin:6px 0 16px; }
.nd-sitemap-head h1.title{ margin:8px 0 8px !important; }
.nd-sitemap-head .nd-lead{ margin:0; }
.nd-sitemap-search{ display:flex; align-items:center; gap:10px; background:#fff; border:1.5px solid var(--line); border-radius:14px; padding:0 14px; margin:0 !important; font-weight:400 !important; box-shadow:var(--shadow-card); }
.nd-sitemap-search:focus-within{ border-color:var(--accent); }
.nd-sitemap-search .nd-ico{ width:18px; height:18px; stroke:var(--ink-faint); flex-shrink:0; }
.nd-sitemap-search input{ flex:1; min-width:0; border:none; outline:none; height:48px; font-size:15px; background:transparent; }
.nd-sitemap-search span{ font-size:12px; font-weight:800; color:var(--accent); }
.nd-sitemap-nav{ position:sticky; top:67px; z-index:20; display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; padding:10px 0; margin-bottom:10px; background:rgba(255,255,255,.96); backdrop-filter:blur(6px); border-bottom:1px solid var(--line); }
.nd .nd-sitemap-nav a{ flex-shrink:0; padding:7px 14px; border-radius:999px; background:var(--surface); font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink-soft) !important; }
.nd .nd-sitemap-nav a:hover{ background:var(--ink); color:#fff !important; }
.nd-sitemap-sec{ scroll-margin-top:130px; margin:22px 0; }
.nd .nd-sitemap-h{ display:flex; align-items:center; gap:10px; font-size:19px !important; font-weight:900; margin:0 0 14px; }
.nd-sitemap-h .nd-ico{ width:20px; height:20px; stroke:var(--accent); }
.nd-sitemap-h span{ font-size:12px; background:var(--surface); color:var(--ink-soft); border-radius:999px; padding:2px 9px; }
.nd-sitemap-cats{ columns:3 300px; column-gap:14px; }
.nd-sitemap-cat{ break-inside:avoid; margin:0 0 14px; padding:0 0 12px; overflow:hidden; }
.nd-sitemap-cat[hidden]{ display:none; }
.nd .nd-sitemap-cat__h{ display:flex; align-items:center; gap:12px; padding:12px 14px; margin-bottom:6px; border-bottom:1px solid var(--line); color:var(--ink) !important; }
.nd-sitemap-cat__img{ width:44px; height:44px; border-radius:10px; overflow:hidden; background:var(--surface); flex-shrink:0; }
.nd-sitemap-cat__img img{ width:100%; height:100%; object-fit:cover; }
.nd-sitemap-cat__h b{ font-family:var(--font-display); font-size:15.5px; }
.nd .nd-sitemap-cat__h:hover b{ color:var(--accent); }
.nd-sitemap-cat ul{ list-style:none; margin:0; padding:0 14px; }
.nd-sitemap-cat ul ul{ padding:0 0 4px 14px; border-left:2px solid var(--surface-2); margin:2px 0 4px 4px; }
.nd-sitemap-cat li{ margin:0; }
.nd .nd-sitemap-cat li a{ display:block; padding:4px 0; font-size:13.5px; color:var(--ink-soft) !important; line-height:1.4; }
.nd .nd-sitemap-cat ul ul a{ font-size:12.5px; }
.nd .nd-sitemap-cat li a:hover, .nd .nd-sitemap-list a:hover{ color:var(--accent) !important; }
.nd-sitemap-cols{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.nd-sitemap-box{ padding:18px 20px; margin:0; }
.nd-sitemap-box[hidden]{ display:none; }
.nd-sitemap-list{ list-style:none; margin:0; padding:0; }
.nd .nd-sitemap-list a{ display:flex; align-items:center; gap:8px; padding:7px 0; border-bottom:1px solid var(--surface-2); font-size:14px; color:var(--ink) !important; }
.nd .nd-sitemap-list li:last-child a{ border-bottom:none; }
.nd .nd-sitemap-list a::before{ content:""; width:6px; height:6px; border-radius:999px; background:var(--accent); flex-shrink:0; opacity:.5; }
.nd-sitemap-brands{ display:flex; flex-wrap:wrap; gap:6px; }
#mapa-producenci[hidden]{ display:none; }
/* wyszukiwanie: ukryj chybione linki, podswietl trafienia */
.nd-sitemap.is-filtering .nd-sm-link.is-miss{ display:none; }
.nd-sitemap.is-filtering .nd-sitemap-cat__h.is-miss{ display:flex; opacity:.45; }
.nd-sitemap.is-filtering li:has(> .nd-sm-link.is-miss):not(:has(.is-hit)){ display:none; }
.nd .nd-sitemap .nd-sm-link.is-hit{ color:var(--accent) !important; font-weight:700; }
.nd-sitemap-empty{ padding:18px; background:var(--surface); border-radius:12px; font-size:14px; }
.nd-sitemap-empty a{ color:var(--accent) !important; font-weight:700; }
@media (max-width:900px){ .nd-sitemap-head, .nd-sitemap-cols{ grid-template-columns:minmax(0,1fr); } .nd-sitemap-nav{ top:60px; } }

/* ===== aktualnosci (newsy.tpl, _nd_news_karta.tpl, box_newsy.tpl) ===== */
.nd-news-head h1.title{ margin:8px 0 8px !important; }
.nd-news-head .nd-lead{ margin:0 0 22px; }
.nd-news-meta{ display:flex; align-items:center; gap:6px 12px; flex-wrap:wrap; font-size:12.5px; font-weight:600; color:var(--ink-faint); }
.nd-news-meta > span{ display:inline-flex; align-items:center; gap:5px; }
.nd-news-meta .nd-ico{ width:13px; height:13px; }
.nd-news-tag{ background:var(--accent-soft); color:var(--accent-dark); border-radius:999px; padding:3px 10px; font-weight:800; font-size:11.5px; }
.nd-news-tag .nd-ico{ stroke:var(--accent); }
/* wyrozniony wpis */
.nd .nd-news-hero{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); overflow:hidden; margin-bottom:18px; color:var(--ink) !important; transition:border-color .15s; }
.nd .nd-news-hero:hover{ border-color:var(--accent); }
.nd-news-hero__img{ min-height:260px; background:var(--surface); display:flex; align-items:center; justify-content:center; }
.nd-news-hero__img img{ width:100%; height:100%; object-fit:cover; }
.nd-news-hero.is-noimg .nd-news-hero__img{ background:linear-gradient(135deg,var(--accent-soft),#fff); }
.nd-news-hero__img > .nd-ico{ width:72px; height:72px; stroke:var(--accent); opacity:.6; }
.nd-news-hero__txt{ display:flex; flex-direction:column; gap:12px; padding:clamp(20px,3vw,36px); justify-content:center; }
.nd-news-hero__txt b{ font-family:var(--font-display); font-weight:900; font-size:clamp(22px,2.4vw,30px); line-height:1.15; }
.nd-news-hero__lead{ font-size:14.5px; line-height:1.65; color:var(--ink-soft); }
.nd-news-more-link{ display:inline-flex; align-items:center; gap:6px; font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--accent); }
.nd-news-more-link .nd-ico{ width:15px; height:15px; stroke:var(--accent); transition:transform .15s; }
.nd-news-hero:hover .nd-news-more-link .nd-ico{ transform:translateX(3px); }
/* karty */
.nd-news-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px; }
.nd .nd-news-card{ display:flex; flex-direction:column; overflow:hidden; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-news-card:hover{ border-color:var(--accent); transform:translateY(-2px); }
.nd-news-card__img{ height:160px; background:var(--surface); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.nd-news-card__img img{ width:100%; height:100%; object-fit:cover; }
.nd-news-card__img.is-noimg{ background:linear-gradient(135deg,var(--accent-soft),#fff); }
.nd-news-card__img > .nd-ico{ width:40px; height:40px; stroke:var(--accent); opacity:.55; }
.nd-news-card__body{ display:flex; flex-direction:column; gap:8px; padding:14px 16px 18px; flex:1; }
.nd-news-card__body b{ font-family:var(--font-display); font-weight:800; font-size:15.5px; line-height:1.3; }
.nd-news-card__lead{ font-size:13px; line-height:1.55; color:var(--ink-soft); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nd-news-grid--home{ grid-template-columns:repeat(4,minmax(0,1fr)); }
/* wpis */
.nd-news-article{ max-width:860px; margin:10px auto 0; padding:clamp(20px,3.4vw,44px); }
.nd-news-article__head h1.title{ margin:12px 0 18px !important; font-size:clamp(24px,3vw,36px) !important; line-height:1.15 !important; }
.nd-news-article__img{ margin:0 0 22px; border-radius:var(--radius-m); overflow:hidden; background:var(--surface); text-align:center; }
.nd-news-article__img img{ max-width:100%; max-height:420px; object-fit:contain; display:inline-block; }
.nd-news-body{ max-width:none; }
.nd-news-body img{ max-width:100%; height:auto; border-radius:10px; }
.nd-news-body a{ color:var(--accent) !important; font-weight:700; }
.nd-news-article__foot{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin-top:26px; padding-top:18px; border-top:1px solid var(--line); font-size:13.5px; color:var(--ink-soft); }
.nd-news-article__foot > span{ display:inline-flex; align-items:center; gap:8px; }
.nd-news-article__foot .nd-ico{ width:18px; height:18px; stroke:var(--accent); }
.nd .nd-news-article__foot a b{ color:var(--ink); }
.nd-news > .nd-back{ display:flex; width:fit-content; max-width:860px; margin:0 auto 10px; }
@media (min-width:861px){ .nd-news > .nd-back{ margin-left:calc(50% - 430px); } }
.nd-news-more{ max-width:860px; margin:34px auto 0; }
.nd-news-more .nd-h-section{ margin:0 0 14px; }
.nd-news-more .nd-news-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:1000px){ .nd-news-grid--home{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:800px){ .nd .nd-news-hero{ grid-template-columns:minmax(0,1fr); } .nd-news-hero__img{ min-height:180px; max-height:240px; } .nd-news-more .nd-news-grid{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:560px){ .nd-news-grid--home{ grid-template-columns:minmax(0,1fr); } }
.nd-news-hero__img{ min-height:0; height:300px; background:#fff; border-right:1px solid var(--line); } .nd-news-hero__img img, .nd-news-card__img img{ object-fit:contain; padding:14px; background:#fff; } .nd-news-card__img{ background:#fff; border-bottom:1px solid var(--line); } @media (max-width:800px){ .nd-news-hero__img{ height:200px; border-right:none; border-bottom:1px solid var(--line); } }

/* ===== strona glowna: najblizsze szkolenia (box_szkolenia.tpl) ===== */
.nd-home-train{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr); gap:16px; align-items:stretch; }
.nd .nd-home-train__promo{ position:relative; display:flex; align-items:flex-end; min-height:320px; border-radius:var(--radius-l); overflow:hidden; background:var(--ink) var(--nd-train-bg) center/cover no-repeat; color:#fff !important; }
.nd-home-train__promo::before{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(15,17,23,.15) 0%,rgba(15,17,23,.88) 70%); transition:background .2s; }
.nd-home-train__promo:hover::before{ background:linear-gradient(180deg,rgba(15,17,23,.05) 0%,rgba(15,17,23,.82) 70%); }
.nd-home-train__promo-txt{ position:relative; display:flex; flex-direction:column; gap:12px; padding:24px; }
.nd-eyebrow--light{ color:rgba(255,255,255,.8) !important; }
.nd-eyebrow--light::before{ background:rgba(255,255,255,.8) !important; }
.nd-home-train__promo-txt > b{ font-family:var(--font-display); font-weight:900; font-size:clamp(19px,1.8vw,24px); line-height:1.2; }
.nd-home-train__facts{ display:flex; gap:8px; flex-wrap:wrap; }
.nd-home-train__facts > span{ display:inline-flex; align-items:center; gap:6px; background:rgba(255,255,255,.14); backdrop-filter:blur(4px); border-radius:999px; padding:5px 11px; font-size:12px; font-weight:700; }
.nd-home-train__facts .nd-ico{ width:13px; height:13px; stroke:#fff; }
.nd-home-train__promo .nd-btn{ align-self:flex-start; }
.nd-home-train__list{ display:flex; flex-direction:column; gap:10px; justify-content:center; }
.nd .nd-home-train__item{ display:grid; grid-template-columns:78px minmax(0,1fr) auto; gap:16px; align-items:center; padding:12px 16px 12px 12px; color:var(--ink) !important; transition:border-color .15s, transform .15s; }
.nd .nd-home-train__item:hover{ border-color:var(--accent); transform:translateX(3px); }
.nd-home-train__body{ display:flex; flex-direction:column; gap:8px; min-width:0; }
.nd-home-train__body > b{ font-family:var(--font-display); font-weight:800; font-size:15px; line-height:1.3; }
.nd-home-train__seats{ display:flex; align-items:center; gap:10px; font-size:12.5px; color:var(--ink-soft); }
.nd-home-train__seats b{ color:var(--good); font-family:var(--font-display); }
.nd-home-train__bar{ width:90px; height:6px; border-radius:6px; background:var(--good-soft); overflow:hidden; flex-shrink:0; }
.nd-home-train__bar i{ display:block; height:100%; background:var(--good); border-radius:6px; }
.nd-home-train__seats.is-low b{ color:#ea580c; } .nd-home-train__seats.is-low .nd-home-train__bar{ background:#ffedd5; } .nd-home-train__seats.is-low .nd-home-train__bar i{ background:#ea580c; }
.nd-home-train__seats.is-full{ color:var(--danger); font-weight:700; } .nd-home-train__seats.is-full .nd-home-train__bar{ background:#fee2e2; } .nd-home-train__seats.is-full .nd-home-train__bar i{ background:var(--danger); }
.nd-home-train__cta{ white-space:nowrap; }
.nd-home-train__cta .nd-ico{ width:14px; height:14px; }
@media (max-width:900px){ .nd-home-train{ grid-template-columns:minmax(0,1fr); } .nd .nd-home-train__promo{ min-height:240px; } }
@media (max-width:560px){ .nd .nd-home-train__item{ grid-template-columns:64px minmax(0,1fr); } .nd-home-train__item .nd-train-date{ width:64px; height:64px; } .nd-home-train__cta{ grid-column:1 / -1; justify-content:center; } }

/* ===== porownywarka: rozbudowa (porownaj.tpl) ===== */
.nd-compare-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:16px; flex-wrap:wrap; margin:6px 0 16px; }
.nd-compare-head h1.title{ margin:8px 0 6px !important; }
.nd-compare-head .nd-lead{ margin:0; font-size:14px; }
.nd-compare-head .nd-lead b{ color:var(--accent-dark); }
.nd-compare-diff.nd-switch{ margin:0 0 4px !important; }
.nd .nd-compare-wrap .inner{ max-height:calc(100vh - 150px); overflow:auto; }
.nd-compare-table thead td, .nd-compare-table thead th{ position:sticky; top:0; z-index:3; background:#fff; box-shadow:0 1px 0 var(--line); }
.nd-compare-table thead .nd-compare-corner{ z-index:4; vertical-align:bottom; }
.nd-compare-prod{ position:relative; }
.nd .nd-compare-prod__x{ position:absolute; top:22px; right:20px; z-index:2; width:28px; height:28px; border-radius:999px; background:#fff; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-card); }
.nd .nd-compare-prod__x:hover{ border-color:var(--danger); }
.nd-compare-prod__x .nd-ico{ width:13px; height:13px; }
.nd-compare-prod__x:hover .nd-ico{ stroke:var(--danger); }
.nd-compare-add{ min-width:190px; padding:18px 16px !important; vertical-align:top; }
.nd .nd-compare-add a{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; height:100%; min-height:250px; border:2px dashed var(--line); border-radius:14px; color:var(--ink-soft) !important; text-align:center; padding:16px; transition:border-color .15s, background .15s; }
.nd .nd-compare-add a:hover{ border-color:var(--accent); background:var(--accent-soft); }
.nd-compare-add a > span{ width:46px; height:46px; border-radius:999px; background:var(--surface); display:inline-flex; align-items:center; justify-content:center; }
.nd-compare-add a > span .nd-ico{ width:20px; height:20px; stroke:var(--accent); }
.nd-compare-add b{ font-family:var(--font-display); font-size:14px; color:var(--ink); }
.nd-compare-add small{ font-size:12px; }
.nd-compare-add-cell{ background:#fff !important; }
.nd-compare-table tr.is-meta td{ font-weight:600; color:var(--ink); }
.nd-compare-table tr.is-meta td a{ color:var(--accent) !important; font-weight:700; }
.nd-compare-table tr.nd-compare-group th{ position:static; background:var(--surface); font-family:var(--font-display); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-faint); padding:10px 16px; box-shadow:none; }
.nd-compare-dot{ display:inline-block; width:7px; height:7px; border-radius:999px; background:var(--accent); margin-left:4px; vertical-align:middle; }
.nd-compare-table tr.is-diff td.nd-compare-add-cell{ background:#fff !important; }
.nd-compare-table tr.is-diff td{ background:#f6f8ff; font-weight:600; } .nd-compare-table tr.is-diff td.nd-compare-add-cell, .nd-compare-table tr.is-meta td.nd-compare-add-cell{ background:#fff !important; }
@media (max-width:600px){ .nd-compare-table tbody th, .nd-compare-corner{ width:120px; min-width:112px; font-size:12px; padding:10px !important; } .nd-compare-prod, .nd-compare-add{ min-width:170px; } .nd .nd-compare-prod__img{ height:100px; } .nd .nd-compare-add a{ min-height:200px; } }

/* ===== promocje: rodzaj oferty + sortowanie ===== */
.nd-promo-bar{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin:14px 0 16px; }
.nd-promo-tabs{ display:flex; gap:6px; flex-wrap:wrap; background:var(--surface); border-radius:999px; padding:4px; }
.nd .nd-promo-tabs a{ display:inline-flex; align-items:center; gap:6px; padding:8px 14px; border-radius:999px; font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink-soft) !important; }
.nd .nd-promo-tabs a small{ font-size:11px; font-weight:800; background:#fff; color:var(--ink-faint); border-radius:999px; padding:1px 7px; }
.nd .nd-promo-tabs a:hover{ color:var(--ink) !important; }
.nd .nd-promo-tabs a.is-active{ background:var(--ink); color:#fff !important; }
.nd .nd-promo-tabs a.is-active small{ background:rgba(255,255,255,.18); color:#fff; }
.nd-promo-sort{ display:inline-flex; align-items:center; gap:8px; margin:0 !important; font-size:13px; font-weight:600 !important; color:var(--ink-soft); }
.nd-promo-sort select{ height:40px; border:1.5px solid var(--line); border-radius:999px; padding:0 34px 0 14px; font-family:var(--font-display); font-weight:700; font-size:13px; color:var(--ink); background:#fff; }
@media (max-width:600px){ .nd-promo-tabs{ width:100%; overflow-x:auto; flex-wrap:nowrap; } .nd .nd-promo-tabs a{ flex-shrink:0; } .nd-promo-sort{ width:100%; } .nd-promo-sort select{ flex:1; } }
.nd-promo-bar ~ h1.title, .nd-promo-bar ~ .nd-toolbar{ display:none !important; }

/* ===== koszyk: kosz przy pozycji, dostawa w podsumowaniu, karty platnosci/dostawy ===== */
.nd .bc .col-md-1.text-right{ display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.nd .nd-cart-check{ margin:0 !important; width:16px; height:16px; float:none !important; }
.nd .nd-cart-del{ width:34px; height:34px; border-radius:10px; border:1px solid var(--line); background:#fff; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; transition:border-color .15s, background .15s; padding:0; }
.nd .nd-cart-del .nd-ico{ width:16px; height:16px; stroke:var(--ink-soft); }
.nd .nd-cart-del:hover{ border-color:var(--danger); background:#fef2f2; }
.nd .nd-cart-del:hover .nd-ico{ stroke:var(--danger); }
.nd-summary-row--ship .nd-sum-dostawa__v{ font-weight:700; color:var(--ink); }
.nd-summary-row--ship .nd-sum-dostawa__v.is-empty{ font-weight:600; color:var(--accent); font-size:12.5px; }
/* przycisk do kasy: skrypt koszyka ustawia inline stary niebieski / szary */
.nd a.submit-check{ background-color:var(--accent) !important; }
.nd a.submit-check[disable]{ opacity:.6; pointer-events:none; }
.nd a.submit-check .ajax_loader{ width:16px; height:16px; margin-left:8px; }
/* karty sposobow platnosci i dostawy */
.nd .nd-cart-methods .input-group.checkbox{ display:flex !important; align-items:stretch; width:100%; margin:0 0 10px !important; padding:0; background:#fff; border:1.5px solid var(--line); border-radius:14px; overflow:hidden; transition:border-color .15s, box-shadow .15s; }
.nd .nd-cart-methods .input-group.checkbox:hover{ border-color:var(--ink-faint); }
.nd .nd-cart-methods .input-group.checkbox:has(> .input-group-addon input[type=radio]:checked){ border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); background:linear-gradient(90deg,var(--accent-soft),#fff 40%); }
.nd .nd-cart-methods .input-group-addon{ display:flex !important; align-items:center; justify-content:center; width:46px !important; min-width:46px; padding:0 !important; border:none !important; background:none !important; }
.nd .nd-cart-methods .input-group-addon input[type=radio]{ width:18px; height:18px; margin:0 !important; accent-color:var(--accent); cursor:pointer; }
.nd .nd-cart-methods .input-group.checkbox > label.form-control{ flex:1; min-width:0; height:auto !important; border:none !important; box-shadow:none !important; background:none !important; padding:10px 14px 10px 0 !important; margin:0 !important; cursor:pointer; font-family:var(--font-display); font-weight:700; font-size:14px; color:var(--ink); }
.nd .nd-cart-methods label.form-control > .row{ display:grid !important; grid-template-columns:minmax(0,1fr) 96px auto; align-items:center; gap:10px; margin:0 !important; }
.nd .nd-cart-methods label.form-control > .row::before, .nd .nd-cart-methods label.form-control > .row::after{ display:none; }
.nd .nd-cart-methods label.form-control > .row > div{ width:auto !important; float:none !important; padding:0 !important; margin:0 !important; text-align:left; line-height:1.3; }
.nd .nd-cart-methods label.form-control > .row > div:nth-child(2){ display:flex; align-items:center; justify-content:center; height:44px; }
.nd .nd-cart-methods label.form-control img{ max-height:40px !important; max-width:96px !important; height:auto !important; width:auto !important; object-fit:contain; }
.nd .nd-cart-methods label.form-control > .row > div:last-child{ text-align:right !important; white-space:nowrap; font-family:var(--font-display); font-weight:900; }
.nd .nd-cart-methods label.form-control .cdf{ font-weight:900; }
.nd .nd-cart-methods .pla_price:empty{ display:none; }
.nd .nd-cart-methods .delivery_pluscom .nd-method{ display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.nd .nd-cart-methods .platnosci-box, .nd .nd-cart-methods .oo-text{ font-family:var(--font-body); font-weight:500; font-size:12.5px; line-height:1.5; margin:8px 0 0 !important; }
.nd .nd-cart-methods h3{ font-size:15px !important; margin:0 0 10px; }
@media (max-width:600px){
	.nd .nd-cart-methods label.form-control > .row{ grid-template-columns:minmax(0,1fr) auto; }
	.nd .nd-cart-methods label.form-control > .row > div:nth-child(2){ grid-row:2; grid-column:1; justify-content:flex-start; height:34px; }
	.nd .nd-cart-methods label.form-control img{ max-height:30px !important; }
}
.nd .nd-cart-methods .input-group-addon input[type=radio]{ position:static !important; margin:0 !important; float:none !important; }
.nd .nd-cart-methods .input-group.checkbox > .input-group-addon{ align-self:stretch !important; align-items:flex-start !important; padding-top:23px !important; height:auto !important; }

/* ===== kasa: formularz i podsumowanie (runda 2) ===== */
/* kod pocztowy + miasto w jednym wierszu (dane platnika i inny adres wysylki) */
.nd .nd-fields-plain > fieldset{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); column-gap:14px; }
.nd .nd-fields-plain > fieldset > *{ grid-column:1 / -1; }
.nd .nd-fields-plain > fieldset > .form-group:has(#kod), .nd .nd-fields-plain > fieldset > .form-group:has(#dkod){ grid-column:1; }
.nd .nd-fields-plain > fieldset > .form-group:has(#miasto), .nd .nd-fields-plain > fieldset > .form-group:has(#dmiasto){ grid-column:2; }
.nd .nd-fields-plain #dkod{ width:100% !important; }
/* telefon na pelna szerokosc (telefon_pole daje width:150px inline) */
.nd .nd-span-2 > div:has(> input[type=tel]){ display:flex; align-items:center; gap:8px; }
.nd .nd-span-2 > div > label{ float:none !important; margin:0 !important; padding:0 12px !important; height:44px; display:inline-flex; align-items:center; background:var(--surface); border-radius:10px; font-weight:700; color:var(--ink-soft); }
.nd .nd-span-2 input[type=tel]{ flex:1; width:auto !important; min-width:0; }
/* pole telefonu we wrapperze .telefon-pole (rozne::telefon_pole) i podpowiedz .telefon-info od lewej krawedzi */
.nd .nd-span-2 .telefon-pole{ gap:8px; }
.nd .nd-span-2 .telefon-pole > label{ flex:0 0 auto; float:none !important; margin:0 !important; padding:0 12px !important; height:44px; display:inline-flex; align-items:center; background:var(--surface); border-radius:10px; font-weight:700; color:var(--ink-soft); }
.nd .nd-span-2 .telefon-info{ color:var(--ink-soft) !important; padding-top:10px !important; }
/* inny adres wysylki */
.nd .nd-inny-adres{ margin:4px 0 16px !important; padding:12px 14px; background:var(--surface); border-radius:12px; font-size:13.5px !important; }
.nd .nd-inny-adres b{ color:var(--ink); font-family:var(--font-display); }
/* kraj: lista + zmiana w jednym wierszu */
.nd .nd-fields-plain .form-group.row:has(#kraj){ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; column-gap:10px; }
.nd .nd-fields-plain .form-group.row:has(#kraj) > label{ grid-column:1 / -1; }
.nd .nd-fields-plain .form-group.row:has(#kraj) > div{ width:auto !important; float:none !important; padding:0 !important; }
.nd .nd-fields-plain .form-group.row:has(#kraj) .button-b{ display:inline-flex; align-items:center; height:44px; margin:0 !important; }
/* boczne podsumowanie */
.nd-summary-sub{ display:block; font-size:11.5px; color:var(--ink-faint); font-weight:500; }
/* podsumowanie zamowienia: produkty */
.nd-order-prod{ display:flex; align-items:center; gap:12px; }
.nd-order-prod img{ width:52px; height:44px; object-fit:contain; border-radius:8px; background:#fff; border:1px solid var(--line); flex-shrink:0; padding:2px; }
.nd-order-prod > span{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.nd-order-prod small{ font-size:11.5px; color:var(--ink-faint); font-weight:600; }
.nd-order-table td.num small, .nd-order-table th small{ display:block; font-size:11px; color:var(--ink-faint); font-weight:500; }
.nd-order-table th small{ display:inline; text-transform:none; letter-spacing:0; }
.nd-order-table td.num b{ font-family:var(--font-display); }
.nd-order-table td.num{ white-space:nowrap; }
@media (max-width:600px){
	.nd .nd-fields-plain > fieldset{ grid-template-columns:minmax(0,1fr); }
	.nd .nd-fields-plain > fieldset > .form-group:has(#kod), .nd .nd-fields-plain > fieldset > .form-group:has(#miasto), .nd .nd-fields-plain > fieldset > .form-group:has(#dkod), .nd .nd-fields-plain > fieldset > .form-group:has(#dmiasto){ grid-column:1; }
	.nd-order-prod img{ display:none; }
}
@media (max-width:600px){ .nd-order-table th:nth-child(3), .nd-order-table td:nth-child(3){ display:none; } .nd-order-table td.num small, .nd-order-table th small{ display:none; } .nd-order-table td, .nd-order-table th{ padding-left:6px !important; padding-right:6px !important; } .nd-order-prod > span{ overflow-wrap:anywhere; } .nd-recap-card{ overflow-x:auto; } }

/* ===== Dodatki do produktu i wersje zestawu - kafelki obok produktu (produkt_dodatki.tpl, 2026-10-15) ===== */
.nd-dod{margin:14px 0 4px}
.nd-dod__tyt{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:12px 0 8px;font:700 14px/1.2 var(--font-display);color:var(--nd-ink,#1b1f2a)}
.nd-dod__tyt small{font:500 12px var(--font-body);color:#667085}
.nd-dod__wersje{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.nd-dod__wer{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px;border:1.5px solid #e4e7ec;border-radius:10px;background:#fff;text-align:center;color:inherit;text-decoration:none;transition:border-color .12s}
.nd-dod__wer:hover{border-color:#9fb4e6;text-decoration:none;color:inherit}
.nd-dod__wer img{width:100%;height:64px;object-fit:contain}
.nd-dod__wer-n{font-size:11.5px;line-height:1.2;min-height:28px;display:flex;align-items:center}
.nd-dod__wer b{font:700 13px var(--font-display)}
.nd-dod__wer.is-akt{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.nd-dod__wer.is-akt::after{content:'✓';position:absolute;top:5px;right:6px;width:18px;height:18px;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;line-height:18px}
.nd-dod__filtry{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}
.nd-dod__filtry button{border:1px solid #e4e7ec;background:#fff;border-radius:14px;padding:3px 10px;font:500 12px var(--font-body);color:#1b1f2a;cursor:pointer}
.nd-dod__filtry button.is-akt{background:#1b1f2a;border-color:#1b1f2a;color:#fff}
.nd-dod__porada{background:#fff8eb;border:1px solid #f6dcae;border-radius:8px;padding:7px 10px;font-size:12.5px;margin-bottom:8px}
.nd-dod__kafle{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.nd-dod__kafel{position:relative;display:block;padding:6px 6px 7px;border:1.5px solid #e4e7ec;border-radius:10px;background:#fff;cursor:pointer;text-align:center;font:inherit;color:inherit;transition:border-color .12s}
.nd-dod__kafel[hidden],.nd-dod__suma[hidden],.nd-dod__porada[hidden]{display:none}
.nd-dod__kafel:hover{border-color:#9fb4e6}
.nd-dod__kafel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nd-dod__kafel img{display:block;width:100%;aspect-ratio:1;object-fit:contain}
.nd-dod__c{display:block;margin-top:3px;font:700 12px var(--font-display);white-space:nowrap}
.nd-dod__c s{display:block;font:400 10px var(--font-body);color:#98a2b3;line-height:1}
.nd-dod__plus{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font:700 14px/20px var(--font-display)}
.nd-dod__kafel.is-wyb{border-color:var(--accent);background:#f6f8fd}
.nd-dod__kafel.is-wyb .nd-dod__plus{background:var(--accent);color:#fff;font-size:11px}
.nd-dod__rab{position:absolute;top:4px;left:4px;background:var(--deal);color:#fff;font-size:9px;font-weight:700;border-radius:6px;padding:0 4px;line-height:14px}
.nd-dod__szt{position:absolute;bottom:26px;left:4px;background:#1b1f2a;color:#fff;font-size:10px;font-weight:700;border-radius:8px;padding:0 5px;line-height:16px}
.nd-dod__wybrane{margin-top:10px;font-size:12.5px}
.nd-dod__etk{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;background:var(--accent-soft);color:var(--accent);border-radius:12px;padding:2px 4px 2px 9px;margin:0 4px 4px 0}
.nd-dod__etk button{border:0;background:none;color:var(--accent);cursor:pointer;font-size:14px;padding:0 4px;line-height:1}
.nd-dod__il{display:inline-flex;align-items:center;gap:2px;background:#fff;border-radius:8px;padding:0 2px}
.nd-dod__il b{min-width:22px;text-align:center;font-size:12px}
.nd-dod__suma{display:flex;justify-content:space-between;align-items:baseline;margin-top:6px;padding-top:8px;border-top:1px dashed #e4e7ec;font-size:13.5px}
.nd-dod__suma b{font:800 20px var(--font-display)}
@media (max-width:767px){
	.nd-dod__wersje{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:120px;overflow-x:auto;padding-bottom:4px}
	.nd-dod__kafle{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78px;overflow-x:auto;padding-bottom:4px}
}
.nd-cart-dodatek{display:inline-block;margin-top:3px;font-size:11px;font-weight:600;color:#9a5b00;background:#fff3dc;border-radius:8px;padding:1px 8px}

/* =====================================================================
   WARIANT A "Fachowiec" (1012, 2026-10-19) - nadpisania i nowe elementy
   Kolory i kroje sa w :root na gorze pliku; tu uklad naglowka, strona glowna,
   pomaranczowe CTA zakupowe, podpowiedz doboru w kategorii.
   ===================================================================== */
.nd h1, .nd h2, .nd h3, .nd h4{ font-weight:700; letter-spacing:-.015em; }
.nd-h-section, .nd .nd-h-section{ font-weight:700; }
body.nd{ font-size:16px; }

/* pomaranczowe przyciski zakupowe (kontrast z bialym 5,2:1) */
.nd-btn--cta, .nd .add-to-cart.nd-btn, .nd .nd-p-card .add-to-cart, .nd .submit-check,
.nd .nd-summary-box .nd-btn--primary, .nd form .nd-btn--primary.nd-btn--block{
	background:var(--deal) !important; border-color:var(--deal) !important; color:#fff !important;
}
.nd-btn--cta:hover, .nd .add-to-cart.nd-btn:hover, .nd .nd-p-card .add-to-cart:hover, .nd .submit-check:hover,
.nd .nd-summary-box .nd-btn--primary:hover, .nd form .nd-btn--primary.nd-btn--block:hover{ background:var(--deal-dark) !important; border-color:var(--deal-dark) !important; }
.nd-cart-count{ background:var(--deal); }

/* pasek gorny: niebieski, telefon doradcy wyrozniony */
.nd-topbar{ background:var(--accent); font-family:var(--font-body); font-weight:600; font-size:13.5px; }
.nd-topbar__tel{ font-family:var(--font-display); font-weight:600; }
.nd-topbar__tel a{ text-decoration:underline !important; text-underline-offset:3px; }

/* 2026-10-22: kontakt Napedowni = WhatsApp lub e-mail (telefon tylko w kontakt.html) */
.nd-topbar__wa .nd-ico{ width:16px; height:16px; }
@media (max-width:640px){ .nd-topbar .nd-topbar__lbl{ display:none; } }
@media (max-width:360px){ .nd-topbar .nd-topbar__mail{ font-size:12px; } }
.nd a.nd-wa-link{ display:inline-flex; align-items:center; gap:4px; white-space:nowrap; }
.nd a.nd-wa-link .nd-ico{ width:1.15em; height:1.15em; stroke:#16a34a; }
.nd-topbar a.nd-wa-link .nd-ico, .nd-topbar__wa .nd-ico{ stroke:#fff; }

/* naglowek: logo + zawsze widoczna wyszukiwarka + konto/schowek/koszyk */
.nd-logo-badge{ background:var(--accent); border-radius:10px; }
.nd-brand-chip{ background:var(--deal); }
.nd-nav-row{ gap:20px; padding-block:14px; }
.nd-head-search{ flex:1 1 360px; min-width:0; max-width:760px; }
.nd-head-search form{ margin:0; }
.nd-head-search .search-border{ display:flex; width:100%; border:2px solid var(--accent); border-radius:10px; overflow:hidden; background:#fff; }
.nd-head-search .search-input{ flex:1; border:none !important; border-radius:0 !important; min-height:46px; font-size:16px; box-shadow:none; }
.nd-head-search .kf{ width:200px !important; flex:0 0 200px; border:none !important; border-left:1.5px solid var(--line) !important; border-radius:0 !important; min-height:46px; font-size:14px; color:var(--ink-soft); }
.nd-head-search .input-group-btn{ width:auto; display:flex; }
.nd-head-search .button-search{ border:none; background:var(--accent); width:56px; min-height:46px; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.nd-head-search .button-search:hover{ background:var(--accent-dark); }
.nd-head-search .button-search .nd-ico{ width:20px; height:20px; stroke:#fff; stroke-width:2.2; fill:none; }
.nd-actions{ gap:2px; }
.nd-actions .nd-account{ flex-direction:column; gap:2px; height:auto; min-height:44px; padding:4px 8px; }
.nd-actions .nd-account__txt{ font-family:var(--font-body); font-weight:600; font-size:12.5px; color:var(--ink-soft); max-width:90px; }

/* pasek kategorii z ikonami */
.nd-catnav{ border-top:1px solid var(--line); background:#fff; }
.nd-catnav__row{ display:flex; align-items:stretch; gap:2px; overflow-x:auto; scrollbar-width:none; }
.nd-catnav__row::-webkit-scrollbar{ display:none; }
.nd-catnav__row > a, .nd-catnav .nd-cat-btn{
	display:inline-flex; align-items:center; gap:8px; padding:12px 12px; white-space:nowrap;
	font-family:var(--font-display); font-weight:600; font-size:14.5px; color:var(--ink);
	border:none; border-bottom:3px solid transparent; background:none;
}
.nd-catnav__row > a .nd-ico{ width:20px; height:20px; stroke:var(--accent); }
.nd-catnav__row > a:hover, .nd-catnav__row > a.is-active{ color:var(--accent) !important; border-bottom-color:var(--accent); }
.nd-catnav .nd-cat-btn{ color:#fff; background:var(--accent); border-radius:8px 8px 0 0; margin-right:6px; }
.nd-catnav .nd-cat-btn:hover, .nd-catnav .nd-cat-btn.is-active, .nd-catnav .nd-cat-btn[aria-expanded="true"]{ background:var(--accent-dark); color:#fff; border-bottom-color:var(--accent-dark); }
.nd-catnav .nd-cat-btn .nd-ico{ width:18px; height:18px; transform:none !important; }

/* strona glowna: hero z doborem napedu */
.nd-a-hero{ background:linear-gradient(180deg,var(--surface) 0%,#fff 100%); }
.nd-a-hero__grid{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:clamp(24px,4vw,56px); align-items:center; padding-block:clamp(28px,4vw,52px); }
.nd-a-hero h1{ font-size:clamp(30px,3.6vw,46px); line-height:1.12; margin:12px 0 14px; text-wrap:balance; }
.nd-a-hero h1 em{ font-style:normal; color:var(--accent); }
.nd-a-hero .nd-lead{ font-size:clamp(16px,1.4vw,18px); max-width:52ch; }
.nd-a-ticks{ list-style:none; margin:20px 0 0; padding:0; display:grid; gap:9px; }
.nd-a-ticks li{ display:flex; gap:10px; align-items:flex-start; font-size:16px; }
.nd-a-ticks .nd-ico{ stroke:var(--good); margin-top:3px; }
.nd-a-ticks a{ color:var(--accent); }
.nd-a-pick{ background:#fff; border:1px solid var(--line); border-radius:14px; padding:22px; box-shadow:0 10px 30px -18px rgba(20,33,61,.35); }
.nd-a-pick h2{ font-size:21px; margin:0 0 2px; }
.nd-a-pick__sub{ color:var(--ink-soft); margin:0 0 14px; font-size:14.5px; }
.nd-a-pick fieldset{ border:0; margin:0 0 14px; padding:0; min-width:0; }
.nd-a-pick legend{ border:0; margin:0 0 8px; font-family:var(--font-display); font-weight:600; font-size:14.5px; color:var(--ink); width:auto; }
.nd-a-pick legend label{ font-size:inherit; color:inherit; font-weight:inherit; margin:0; }
.nd-a-pick select{ width:100%; min-height:46px; padding:10px 12px; font-size:16px; }
.nd-a-seg{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.nd-a-seg--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.nd-a-seg--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.nd-a-seg--1{ grid-template-columns:minmax(0,1fr); }
.nd-a-seg label{ position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; min-height:52px; padding:10px 6px; margin:0; border:1.5px solid var(--line); border-radius:10px; cursor:pointer; text-align:center; font-family:var(--font-body); font-weight:600; font-size:14px; color:var(--ink); line-height:1.25; }
.nd-a-seg label .nd-ico{ width:30px; height:30px; stroke:var(--accent); stroke-width:1.7; }
.nd-a-seg--4 label, .nd-a-seg--3 label{ min-height:84px; }
.nd-a-seg input{ position:absolute; opacity:0; pointer-events:none; }
.nd-a-seg label:has(input:checked){ border-color:var(--accent); background:var(--accent-soft); box-shadow:inset 0 0 0 1px var(--accent); }
.nd-a-seg label:has(input:focus-visible){ outline:3px solid var(--accent); outline-offset:2px; }
.nd-a-pick .nd-btn--cta{ min-height:52px; font-size:17px; margin-top:4px; }

/* pas zaufania z ikonami */
.nd-a-trust{ background:#fff; border-block:1px solid var(--line); }
.nd-a-trust__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding-block:18px; }
.nd-a-trust__grid > div{ display:flex; gap:12px; align-items:center; }
.nd-a-trust__grid .nd-ico{ width:32px; height:32px; stroke:var(--accent); stroke-width:1.7; }
.nd-a-trust__grid p{ margin:0; line-height:1.3; }
.nd-a-trust__grid b{ display:block; font-family:var(--font-display); font-weight:600; font-size:15.5px; }
.nd-a-trust__grid span{ color:var(--ink-soft); font-size:14px; }

/* kategorie jako karty z ikona */
.nd-a-cats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:12px; }
.nd-a-cat{ display:flex; gap:14px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px; transition:border-color .15s, box-shadow .15s; }
.nd-a-cat:hover{ border-color:var(--accent); box-shadow:0 8px 20px -14px rgba(30,64,175,.6); }
.nd-a-cat__ic{ width:54px; height:54px; border-radius:12px; background:var(--accent-soft); display:flex; align-items:center; justify-content:center; flex:none; }
.nd-a-cat__ic .nd-ico{ width:30px; height:30px; stroke:var(--accent); stroke-width:1.7; }
.nd-a-cat__txt{ min-width:0; }
.nd-a-cat__txt b{ display:block; font-family:var(--font-display); font-weight:600; font-size:16px; color:var(--ink); }
.nd-a-cat__txt span{ color:var(--ink-soft); font-size:14px; }

/* pas "bezpłatny dobór" w 3 krokach (2026-10-19, wzor od uzytkownika) */
.nd-a-quote{ background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.nd-a-quote__top{ display:flex; align-items:center; justify-content:space-between; gap:20px 32px; padding:clamp(24px,3.2vw,40px); flex-wrap:wrap; }
.nd-a-quote__top > div{ min-width:0; flex:1 1 420px; }
.nd-a-quote .nd-h-section{ margin:0 0 10px; font-size:clamp(24px,2.6vw,34px); }
.nd-a-quote .nd-lead{ margin:0; max-width:72ch; }
.nd-a-quote .nd-lead a{ color:var(--accent); font-weight:600; white-space:nowrap; }
.nd .nd-a-quote__btn{ border-radius:999px; padding:14px 28px; font-size:16px; white-space:nowrap; }
.nd-a-quote__steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:var(--surface); border-top:1px solid var(--line); }
.nd-a-quote__steps li{ padding:22px clamp(20px,3vw,40px) 24px; min-width:0; }
.nd-a-quote__steps li + li{ border-left:1px solid var(--line); }
.nd-a-quote__steps span{ display:block; font-family:var(--font-display); font-weight:600; font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--deal); margin-bottom:6px; }
.nd-a-quote__steps b{ display:block; font-family:var(--font-display); font-weight:600; font-size:16.5px; color:var(--ink); margin-bottom:4px; }
.nd-a-quote__steps p{ margin:0; color:var(--ink-soft); font-size:15px; line-height:1.5; }

/* naglowek kategorii: jasny zamiast ciemnego zdjecia */
.nd-cat-hero{ color:var(--ink); min-height:0; background:var(--surface); border-bottom:1px solid var(--line); }
.nd-cat-hero > img{ display:none; }
.nd-cat-hero::after{ display:none; }
.nd-cat-hero .nd-h-section{ color:var(--ink); }
.nd-cat-hero p{ color:var(--ink-soft); }
.nd-cat-hero .nd-crumb--light, .nd-cat-hero .nd-crumb--light a, .nd-cat-hero .nd-crumb--light span{ color:var(--ink-soft) !important; }
.nd-cat-hero .nd-crumb--light a:hover{ color:var(--accent) !important; }

/* podpowiedz doboru nad lista (po formularzu z glownej) */
.nd-a-dobor{ display:flex; gap:12px; align-items:flex-start; margin:0 0 16px; padding:14px 16px; border-radius:12px; background:var(--accent-soft); border:1px solid #c7d5f3; }
.nd-a-dobor > .nd-ico{ width:22px; height:22px; stroke:var(--good); margin-top:2px; }
.nd-a-dobor b{ display:block; font-family:var(--font-display); font-weight:600; }
.nd-a-dobor span{ color:var(--ink-soft); font-size:15px; }
.nd-a-dobor a{ color:var(--accent); }

/* karta produktu: pytanie do doradcy pod przyciskiem */
.nd-a-ask{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin:12px 0 0; font-size:14.5px; color:var(--ink-soft); }
.nd-a-ask .nd-ico{ stroke:var(--accent); }
.nd-a-ask a{ color:var(--accent); }

@media (max-width:1200px){
	.nd-head-search .kf{ display:none; }
	.nd-actions .nd-account__txt{ display:block; }
}
@media (max-width:1100px){ .nd-hide-md{ display:none !important; } }
@media (max-width:980px){
	.nd-nav-row{ flex-wrap:wrap; row-gap:10px; }
	.nd-head-search{ order:3; flex-basis:100%; max-width:none; }
	.nd-catnav .nd-cat-btn{ display:none; }
	.nd-a-hero__grid{ grid-template-columns:minmax(0,1fr); }
	.nd-a-trust__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:640px){
	.nd-actions .nd-account__txt{ display:none; }
	.nd-catnav__row > a{ padding:10px; font-size:14px; }
	.nd-a-seg--4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
	.nd-a-trust__grid{ grid-template-columns:minmax(0,1fr); gap:12px; }
	.nd-a-quote__steps{ grid-template-columns:minmax(0,1fr); }
	.nd-a-quote__steps li + li{ border-left:none; border-top:1px solid var(--line); }
	.nd .nd-a-quote__btn{ width:100%; }
	.nd-a-cats{ grid-template-columns:minmax(0,1fr); }
}

/* wariant A: panel dostawy na karcie produktu niebieski - pomaranczowy zostaje tylko dla przyciskow zakupowych */
.nd .nd-ship-box, .nd-ship-panel{ background:var(--accent-soft); border-color:var(--accent); box-shadow:0 10px 24px -14px rgba(30,64,175,.45); }
.nd .nd-ship-box .nd-ship-box__ico, .nd-ship-panel__head .nd-ship-box__ico{ background:var(--accent); }
.nd .nd-ship-box .nd-ship-box__txt b, .nd .nd-ship-panel__cost .shipping > b{ color:var(--accent); }
.nd-ship-panel__rows .nd-ico{ stroke:var(--accent); }

/* propozycje kreatora "Dobierz napęd" (dobor_wyniki.tpl, 2026-10-19) - pod kreatorem na glownej i nad lista kategorii */
#nd-a-wyniki{ padding-block:clamp(24px,3vw,40px) 8px; }
.nd-a-wyniki__head{ display:flex; justify-content:space-between; align-items:flex-end; gap:12px 24px; flex-wrap:wrap; margin-bottom:18px; }
.nd-a-wyniki__head > div{ min-width:0; flex:1 1 420px; }
.nd-a-wyniki .nd-h-section{ font-size:clamp(21px,2.2vw,28px); margin:8px 0 6px; }
.nd-a-wyniki .nd-lead{ margin:0; max-width:80ch; font-size:15.5px; }
.nd-a-wyniki .nd-link-arrow{ color:var(--accent); white-space:nowrap; }
.nd-a-wyniki__wiecej{ margin:14px 0 0; color:var(--ink-soft); font-size:14.5px; }
.nd-cat-main .nd-a-wyniki, .nd-main .nd-a-wyniki{ margin:0 0 28px; padding-bottom:24px; border-bottom:1px solid var(--line); }
.nd-a-pick .nd-btn--cta.is-loading{ opacity:.7; cursor:progress; }
.nd-parts-help__k{ display:block; margin-top:2px; font-size:13.5px; font-weight:700; }
.nd .nd-parts-help__k a{ color:var(--ink); }
