{"id":54262,"date":"2026-07-09T13:43:58","date_gmt":"2026-07-09T11:43:58","guid":{"rendered":"https:\/\/nilen.pl\/nilen-calculator\/"},"modified":"2026-07-22T15:56:04","modified_gmt":"2026-07-22T13:56:04","slug":"nilen-calculator","status":"publish","type":"page","link":"https:\/\/nilen.pl\/en\/nilen-calculator\/","title":{"rendered":"Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"54262\" class=\"elementor elementor-54262 elementor-54014\" data-elementor-post-type=\"page\">\n\t\t\t\t<!-- dce invisible element 1e224c9 --><div class=\"elementor-element elementor-element-7d7b9da e-con-full empty-for-mobile e-flex e-con e-parent\" data-id=\"7d7b9da\" data-element_type=\"container\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b08e24e e-flex e-con-boxed e-con e-parent\" data-id=\"b08e24e\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cc7a6a3 elementor-widget elementor-widget-spacer\" data-id=\"cc7a6a3\" data-element_type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5d82667 elementor-widget elementor-widget-html\" data-id=\"5d82667\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<meta charset=\"UTF-8\">\n<style>html,body{overflow-x:hidden;max-width:100%;}<\/style>\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400&family=Montserrat:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<style>\n\/* \u2500\u2500 RESET SCOPED \u2500\u2500 *\/\n#nilen-wycena *, #nilen-wycena *::before, #nilen-wycena *::after {\n  box-sizing: border-box; margin: 0; padding: 0;\n}\n#nilen-wycena input, #nilen-wycena select, #nilen-wycena textarea {\n  max-width: 100%;\n}\n\n\/* \u2500\u2500 ZMIENNE \u2500\u2500 *\/\n#nilen-wycena {\n  --cream:       #E9E1CF;\n  --cream-dark:  #DCD2BD;\n  --cream-light: #F6F1E8;\n  --green:       #3F604B;\n  --green-mid:   #4E7060;\n  --amber:       #BA6B27;\n  --amber-bg:    #F4E6D6;\n  --white:       #FFFCF6;\n  --text:        #26322A;\n  --text-m:      #49604F;\n  --text-l:      #74806F;\n  --serif: \"PT Serif\", Georgia, serif;\n  --sans:  \"Montserrat\", system-ui, sans-serif;\n\n  width: 100%;\n  max-width: 100%;\n  overflow-x: hidden;\n  font-family: var(--sans);\n  font-size: 15px;\n  color: var(--text);\n  line-height: 1.6;\n  letter-spacing: .005em;\n  -webkit-font-smoothing: antialiased;\n}\n\n\/* \u2500\u2500 PASEK POST\u0118PU \u2500\u2500 *\/\n#nilen-wycena .nw-prog {\n  height: 3px;\n  background: rgba(63,96,75,.15);\n  width: 100%;\n  position: relative;\n  z-index: 2;\n}\n#nilen-wycena .nw-prog-fill {\n  height: 100%;\n  background: var(--amber);\n  transition: width .45s cubic-bezier(.4,0,.2,1);\n  width: 20%;\n}\n\n\/* \u2500\u2500 SLIDE \u2014 UKRYTY \u2500\u2500 *\/\n#nilen-wycena .nw-slide { display: none; }\n#nilen-wycena .nw-slide.active {\n  display: grid;\n  grid-template-columns: 2fr 3fr;\n  min-height: 520px;\n  animation: nwIn .32s ease;\n}\n@keyframes nwIn {\n  from { opacity: 0; transform: translateY(6px); }\n  to   { opacity: 1; transform: none; }\n}\n\n\/* \u2500\u2500 LEWA KOLUMNA (zielona) \u2500\u2500 *\/\n#nilen-wycena .nw-left {\n  background: var(--green);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  align-items: stretch;\n}\n#nilen-wycena .nw-left-inner {\n  padding: 64px 48px 80px;\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  position: relative;\n  z-index: 1;\n  flex: 1;\n}\n\n\/* Numerek t\u0142a *\/\n#nilen-wycena .nw-step-deco {\n  position: absolute;\n  bottom: -18px; right: -8px;\n  font-family: var(--serif);\n  font-size: 11rem;\n  font-weight: 700;\n  color: rgba(255,252,246,.04);\n  line-height: 1;\n  letter-spacing: -.06em;\n  user-select: none;\n  pointer-events: none;\n  z-index: 0;\n}\n\n\/* Linia akcentu przed numerem kroku *\/\n#nilen-wycena .nw-step-lbl {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n  font-size: .6rem;\n  font-weight: 700;\n  letter-spacing: .2em;\n  text-transform: uppercase;\n  color: rgba(255,252,246,.5);\n  margin-bottom: 22px;\n}\n#nilen-wycena .nw-step-lbl::before {\n  content: \"\";\n  display: inline-block;\n  width: 20px; height: 1px;\n  background: var(--amber);\n  flex-shrink: 0;\n}\n\n#nilen-wycena .nw-left h2 {\n  font-family: var(--serif);\n  font-size: clamp(1.4rem, 2.6vw, 2rem);\n  font-weight: 400;\n  color: var(--white);\n  line-height: 1.22;\n  letter-spacing: -.025em;\n  margin-bottom: 18px;\n}\n#nilen-wycena .nw-left p {\n  font-size: .83rem;\n  color: rgba(255,252,246,.82);\n  line-height: 1.8;\n  max-width: 270px;\n}\n\n\/* Blok korzy\u015bci \u2014 krok 1 ================================================= *\/\n#nilen-wycena .nw-benefits {\n  margin-top: 22px;\n  border-top: 1px solid rgba(255,252,246,.15);\n  padding-top: 18px;\n}\n#nilen-wycena .nw-benefits-title {\n  font-size: .68rem !important;\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  color: rgba(255,252,246,.5) !important;\n  margin: 0 0 12px !important;\n  max-width: none !important;\n}\n#nilen-wycena .nw-benefits-list {\n  list-style: none;\n  margin: 0; padding: 0;\n  display: flex; flex-direction: column; gap: 9px;\n}\n#nilen-wycena .nw-benefits-list li {\n  font-size: .8rem;\n  color: rgba(255,252,246,.88);\n  line-height: 1.6;\n  max-width: 290px;\n  padding-left: 14px;\n  position: relative;\n}\n#nilen-wycena .nw-benefits-list li::before {\n  content: '';\n  position: absolute;\n  left: 0; top: 9px;\n  width: 5px; height: 1px;\n  background: rgba(181,107,41,.8);\n}\n\n\/* Przycisk Wstecz *\/\n#nilen-wycena .nw-back-btn {\n  position: absolute;\n  bottom: 28px; left: 48px;\n  background: none; border: none; padding: 0;\n  color: rgba(255,252,246,.45);\n  font-family: var(--sans);\n  font-size: .7rem; font-weight: 500;\n  letter-spacing: .04em;\n  cursor: pointer;\n  display: flex; align-items: center; gap: 7px;\n  transition: color .2s;\n  z-index: 2;\n}\n#nilen-wycena .nw-back-btn:hover { color: rgba(255,252,246,.85); }\n#nilen-wycena .nw-back-btn.hidden { display: none; }\n\n\/* Mini podsumowanie (krok 5) *\/\n#nilen-wycena .nw-sum-mini {\n  margin-top: 28px;\n  border-top: 1px solid rgba(255,252,246,.1);\n  padding-top: 18px;\n  display: flex;\n  flex-direction: column;\n  gap: 8px;\n}\n#nilen-wycena .nw-sum-row {\n  display: flex;\n  justify-content: space-between;\n  font-size: .73rem;\n}\n#nilen-wycena .nw-sum-k { color: rgba(255,252,246,.45); }\n#nilen-wycena .nw-sum-v { color: rgba(255,252,246,.88); font-weight: 600; }\n\n\/* \u2500\u2500 PRAWA KOLUMNA \u2500\u2500 *\/\n#nilen-wycena .nw-right {\n  background: var(--white);\n  display: flex;\n  align-items: center;\n}\n#nilen-wycena .nw-right-inner {\n  padding: 64px 56px;\n  width: 100%;\n}\n\n\/* Etykieta pytania *\/\n#nilen-wycena .nw-question {\n  font-size: .62rem;\n  font-weight: 700;\n  letter-spacing: .18em;\n  text-transform: uppercase;\n  color: var(--text-l);\n  margin-bottom: 20px;\n}\n\n\/* \u2500\u2500 OPCJE (radio style) \u2500\u2500 *\/\n#nilen-wycena .nw-opts {\n  display: flex;\n  flex-direction: column;\n  gap: 11px;\n  margin-bottom: 36px;\n}\n#nilen-wycena .nw-opts--sm { gap: 8px; margin-bottom: 24px; }\n\n#nilen-wycena .nw-opt {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  padding: 18px 20px;\n  border: 1px solid rgba(63,96,75,.17);\n  background: rgba(246,241,232,.65);\n  cursor: pointer;\n  transition: border-color .17s, background .17s, box-shadow .17s;\n  user-select: none;\n}\n#nilen-wycena .nw-opt:hover {\n  border-color: rgba(186,107,39,.38);\n  background: rgba(244,230,214,.6);\n}\n#nilen-wycena .nw-opt.active {\n  border-color: var(--amber);\n  background: var(--amber-bg);\n  box-shadow: inset 0 0 0 1px var(--amber);\n}\n\n\/* Ko\u0142o radio *\/\n#nilen-wycena .nw-opt-radio {\n  width: 18px; height: 18px; min-width: 18px;\n  border: 2px solid rgba(63,96,75,.28);\n  border-radius: 50%;\n  background: #fff;\n  position: relative;\n  flex-shrink: 0;\n  transition: border-color .15s, background .15s;\n}\n#nilen-wycena .nw-opt.active .nw-opt-radio {\n  border-color: var(--amber);\n  background: var(--amber);\n}\n#nilen-wycena .nw-opt.active .nw-opt-radio::after {\n  content: \"\";\n  position: absolute; top: 50%; left: 50%;\n  transform: translate(-50%, -50%);\n  width: 6px; height: 6px;\n  border-radius: 50%;\n  background: #fff;\n}\n\n#nilen-wycena .nw-opt-content { flex: 1; }\n#nilen-wycena .nw-opt-title {\n  display: block;\n  font-size: .88rem; font-weight: 600; color: var(--text);\n  margin-bottom: 2px;\n}\n#nilen-wycena .nw-opts--sm .nw-opt-title { font-size: .84rem; }\n#nilen-wycena .nw-opt-sub {\n  font-size: .72rem; color: var(--text-m);\n}\n\n\/* \u2500\u2500 PRZYCISK DALEJ \u2500\u2500 *\/\n#nilen-wycena .nw-next-btn {\n  height: 52px; padding: 0 42px;\n  background: var(--amber); color: var(--white);\n  border: none; cursor: pointer;\n  font-family: var(--sans);\n  font-size: .72rem; font-weight: 700;\n  letter-spacing: .11em; text-transform: uppercase;\n  display: inline-flex; align-items: center; gap: 9px;\n  transition: background .18s;\n}\n#nilen-wycena .nw-next-btn:hover { background: var(--green); }\n#nilen-wycena .nw-next-btn:disabled { opacity: .45; cursor: not-allowed; }\n\n\/* \u2500\u2500 SUWAK (metra\u017c) \u2500\u2500 *\/\n#nilen-wycena .nw-area-big {\n  font-family: var(--serif);\n  font-size: 2.6rem; color: var(--green);\n  display: block; line-height: 1;\n  margin-bottom: 18px;\n}\n#nilen-wycena .nw-range {\n  -webkit-appearance: none; appearance: none;\n  width: 100%; height: 2px;\n  background: rgba(63,96,75,.25); outline: none; cursor: pointer;\n  margin-bottom: 10px;\n}\n#nilen-wycena .nw-range::-webkit-slider-thumb {\n  -webkit-appearance: none;\n  width: 22px; height: 22px;\n  background: var(--amber);\n  border: 3px solid var(--white);\n  box-shadow: 0 0 0 1px var(--amber);\n  cursor: pointer; border-radius: 0;\n}\n#nilen-wycena .nw-range::-moz-range-thumb {\n  width: 22px; height: 22px;\n  background: var(--amber);\n  border: 3px solid var(--white);\n  cursor: pointer; border-radius: 0;\n}\n#nilen-wycena .nw-range-marks {\n  position: relative;\n  height: 16px;\n  font-size: .67rem; color: var(--text-l);\n  margin-bottom: 28px;\n}\n#nilen-wycena .nw-range-marks span {\n  position: absolute;\n  transform: translateX(-50%);\n  white-space: nowrap;\n}\n\/* Pozycje dok\u0142adne wg skali 20\u2013200 (180 jednostek):\n   20  \u2192  0%,  75 \u2192 30.56%,  125 \u2192 58.33%,  200 \u2192 100% *\/\n#nilen-wycena .nw-range-marks span:nth-child(1) { left: 0%;     transform: none; }\n#nilen-wycena .nw-range-marks span:nth-child(2) { left: 30.56%; }\n#nilen-wycena .nw-range-marks span:nth-child(3) { left: 58.33%; }\n#nilen-wycena .nw-range-marks span:nth-child(4) { left: 100%;   transform: translateX(-100%); }\n\n\/* Dok\u0142adny metra\u017c (pole tekstowe) *\/\n#nilen-wycena .nw-area-exact {\n  display: flex; align-items: center; gap: 10px;\n  margin-bottom: 36px;\n}\n#nilen-wycena .nw-area-exact label {\n  font-size: .62rem; font-weight: 700;\n  letter-spacing: .14em; text-transform: uppercase;\n  color: var(--text-l); white-space: nowrap;\n}\n#nilen-wycena .nw-area-exact input {\n  width: 90px; height: 40px;\n  border: 1px solid rgba(63,96,75,.22);\n  background: var(--cream-light);\n  font-family: var(--sans); font-size: .9rem;\n  color: var(--green); text-align: center;\n  padding: 0 10px; outline: none;\n  transition: border-color .15s;\n}\n#nilen-wycena .nw-area-exact input:focus { border-color: var(--amber); background: #fff; }\n\n\/* \u2500\u2500 LICZNIKI POKOI \u2500\u2500 *\/\n#nilen-wycena .nw-field-label {\n  font-size: .62rem; font-weight: 700;\n  letter-spacing: .15em; text-transform: uppercase;\n  color: var(--text-l); display: block;\n  margin-bottom: 12px;\n}\n#nilen-wycena .nw-rooms {\n  display: grid; grid-template-columns: 1fr 1fr;\n  gap: 10px; margin-bottom: 36px;\n}\n#nilen-wycena .nw-room {\n  display: flex; align-items: center;\n  justify-content: space-between;\n  padding: 12px 14px;\n  border: 1px solid rgba(63,96,75,.17);\n  background: rgba(246,241,232,.65);\n}\n#nilen-wycena .nw-room-name { font-size: .8rem; color: var(--text); }\n#nilen-wycena .nw-counter { display: flex; align-items: center; gap: 12px; }\n#nilen-wycena .nw-cnt-btn {\n  width: 26px; height: 26px;\n  border: 1px solid rgba(63,96,75,.28);\n  background: none; cursor: pointer;\n  color: var(--amber); font-size: .95rem; font-weight: 700;\n  display: flex; align-items: center; justify-content: center;\n  font-family: var(--sans);\n  transition: background .15s, color .15s;\n}\n#nilen-wycena .nw-cnt-btn:hover { background: var(--amber); color: #fff; }\n#nilen-wycena .nw-cnt-val {\n  font-weight: 700; font-size: .88rem;\n  min-width: 18px; text-align: center; color: var(--text);\n}\n\n\/* \u2500\u2500 CHECKBOXY DODATKOWE \u2500\u2500 *\/\n#nilen-wycena .nw-extras {\n  display: flex; flex-direction: column; gap: 8px;\n  margin-bottom: 32px;\n}\n#nilen-wycena .nw-extra {\n  display: flex; align-items: center; gap: 14px;\n  padding: 13px 16px;\n  border: 1px solid rgba(63,96,75,.17);\n  background: rgba(246,241,232,.65);\n  cursor: pointer;\n  transition: border-color .17s, background .17s;\n}\n#nilen-wycena .nw-extra:hover { border-color: rgba(186,107,39,.35); background: rgba(244,230,214,.5); }\n#nilen-wycena .nw-extra:has(input:checked) { border-color: var(--amber); background: var(--amber-bg); }\n\n#nilen-wycena .nw-extra input[type=\"checkbox\"] {\n  appearance: none; -webkit-appearance: none;\n  width: 18px; height: 18px; min-width: 18px;\n  display: flex; align-items: center; justify-content: center;\n  border: 1.5px solid rgba(63,96,75,.32);\n  background: #fff;\n  display: inline-grid; place-content: center;\n  cursor: pointer; flex-shrink: 0;\n  transition: background .12s, border-color .12s;\n}\n#nilen-wycena .nw-extra input[type=\"checkbox\"]::before {\n  content: \"\\2713\";\n  display: block; line-height: 1;\n  font-size: 12px; font-weight: 700; color: #fff;\n  transform: scale(0); transition: transform .12s ease;\n}\n#nilen-wycena .nw-extra input[type=\"checkbox\"]:checked {\n  background: var(--amber); border-color: var(--amber);\n}\n#nilen-wycena .nw-extra input[type=\"checkbox\"]:checked::before { transform: scale(1); }\n\n#nilen-wycena .nw-extra-name { font-size: .83rem; font-weight: 500; color: var(--text); display: block; }\n#nilen-wycena .nw-extra-hint { font-size: .7rem; color: var(--text-l); }\n\n\/* \u2500\u2500 FORMULARZ (krok 5) \u2500\u2500 *\/\n#nilen-wycena .nw-form-grid {\n  display: grid; grid-template-columns: 1fr 1fr;\n  gap: 14px; margin-bottom: 18px;\n}\n#nilen-wycena .nw-form-grid .full { grid-column: 1 \/ -1; }\n#nilen-wycena .nw-input-lbl {\n  font-size: .6rem; font-weight: 700;\n  letter-spacing: .14em; text-transform: uppercase;\n  color: var(--text-l); display: block; margin-bottom: 6px;\n}\n#nilen-wycena .nw-input {\n  width: 100%; height: 48px;\n  border: 1px solid rgba(63,96,75,.2);\n  background: rgba(246,241,232,.7);\n  font-family: var(--sans); font-size: .88rem;\n  color: var(--text); padding: 0 14px; outline: none;\n  transition: border-color .15s, background .15s;\n}\n#nilen-wycena .nw-input:focus { border-color: var(--amber); background: #fff; }\n#nilen-wycena .nw-input.nw-err { border-color: #c0392b; }\n#nilen-wycena .nw-req { color: var(--amber); }\n\n\/* Zgody *\/\n#nilen-wycena .nw-consents {\n  display: flex; flex-direction: column;\n  gap: 10px; margin-bottom: 16px;\n}\n#nilen-wycena .nw-consent {\n  display: flex; gap: 11px; align-items: flex-start;\n  font-size: .74rem; color: var(--text-m);\n  line-height: 1.65; cursor: pointer;\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"] {\n  appearance: none; -webkit-appearance: none;\n  width: 16px; height: 16px; min-width: 16px;\n  display: flex; align-items: center; justify-content: center;\n  border: 1.5px solid rgba(63,96,75,.3);\n  background: #fff;\n  display: inline-grid; place-content: center;\n  cursor: pointer; flex-shrink: 0; margin-top: 3px;\n  transition: background .12s, border-color .12s;\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"]::before {\n  content: \"\\2713\";\n  display: block; line-height: 1;\n  font-size: 11px; font-weight: 700; color: #fff;\n  transform: scale(0); transition: transform .12s ease;\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"]:checked {\n  background: var(--green); border-color: var(--green);\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"]:checked::before { transform: scale(1); }\n#nilen-wycena .nw-consent strong { color: var(--text); }\n#nilen-wycena .nw-consent--all { cursor: pointer; }\n#nilen-wycena .nw-consent--all input:checked { background: var(--amber); border-color: var(--amber); }\n\n#nilen-wycena .nw-rodo {\n  font-size: .67rem; color: var(--text-l); line-height: 1.65;\n  margin-bottom: 22px;\n}\n#nilen-wycena .nw-rodo a { color: var(--amber); }\n\n#nilen-wycena .nw-error {\n  display: none;\n  font-size: .76rem; color: #c0392b;\n  padding: 11px 14px;\n  border-left: 2px solid #c0392b;\n  background: rgba(192,57,43,.05);\n  margin-bottom: 16px; line-height: 1.5;\n}\n\n\/* \u2500\u2500 EKRAN SUKCESU \u2500\u2500 *\/\n#nilen-wycena .nw-success { display: none; }\n#nilen-wycena .nw-success.active {\n  display: grid;\n  grid-template-columns: 2fr 3fr;\n  min-height: 520px;\n  animation: nwIn .32s ease;\n}\n#nilen-wycena .nw-success-left {\n  background: var(--green);\n  padding: 64px 48px;\n  display: flex; flex-direction: column;\n  justify-content: center;\n  position: relative; overflow: hidden;\n}\n#nilen-wycena .nw-success-right {\n  background: var(--white);\n  padding: 64px 56px;\n  display: flex; align-items: center;\n}\n#nilen-wycena .nw-check-icon {\n  width: 54px; height: 54px;\n  border: 1px solid rgba(255,252,246,.28);\n  display: flex; align-items: center; justify-content: center;\n  margin-bottom: 26px; flex-shrink: 0;\n}\n#nilen-wycena .nw-success-left h2 {\n  font-family: var(--serif);\n  font-size: clamp(1.45rem, 2.8vw, 2rem);\n  font-weight: 400; color: var(--white);\n  letter-spacing: -.025em; line-height: 1.22;\n  margin-bottom: 16px;\n}\n#nilen-wycena .nw-success-left p {\n  font-size: .82rem;\n  color: rgba(255,252,246,.6);\n  line-height: 1.8; max-width: 270px;\n}\n#nilen-wycena .nw-success-deco {\n  position: absolute; bottom: -20px; right: -10px;\n  font-family: var(--serif); font-size: 11rem;\n  font-weight: 700; color: rgba(255,252,246,.04);\n  line-height: 1; user-select: none; pointer-events: none;\n  letter-spacing: -.06em;\n}\n#nilen-wycena .nw-next-steps {\n  display: flex; flex-direction: column; gap: 18px;\n  margin-bottom: 36px;\n}\n#nilen-wycena .nw-next-step {\n  display: flex; gap: 16px; align-items: flex-start;\n}\n#nilen-wycena .nw-step-num-box {\n  width: 26px; height: 26px; min-width: 26px;\n  border: 1px solid var(--amber);\n  display: flex; align-items: center; justify-content: center;\n  font-size: .6rem; font-weight: 700; color: var(--amber);\n  flex-shrink: 0;\n}\n#nilen-wycena .nw-next-step-txt {\n  font-size: .8rem; color: var(--text-m);\n  line-height: 1.6; padding-top: 3px;\n}\n#nilen-wycena .nw-success-actions {\n  display: flex; gap: 10px; flex-wrap: wrap;\n}\n#nilen-wycena .nw-sa-btn {\n  height: 50px; padding: 0 28px;\n  font-family: var(--sans); font-size: .7rem;\n  font-weight: 700; letter-spacing: .1em; text-transform: uppercase;\n  text-decoration: none; cursor: pointer;\n  display: inline-flex; align-items: center;\n  transition: background .18s, color .18s, border-color .18s;\n  border: 1px solid transparent;\n}\n#nilen-wycena .nw-sa-btn--green {\n  background: var(--green); color: var(--white); border-color: var(--green);\n}\n#nilen-wycena .nw-sa-btn--green:hover {\n  background: var(--amber); border-color: var(--amber); color: var(--white);\n  text-decoration: none;\n}\n#nilen-wycena .nw-sa-btn--outline {\n  background: transparent; color: var(--green);\n  border-color: rgba(63,96,75,.3);\n}\n#nilen-wycena .nw-sa-btn--outline:hover {\n  background: var(--cream); text-decoration: none;\n}\n\n\/* \u2500\u2500 RESPONSYWNO\u015a\u0106 \u2500\u2500 *\/\n@media (max-width: 800px) {\n  #nilen-wycena .nw-slide.active,\n  #nilen-wycena .nw-success.active {\n    grid-template-columns: 1fr;\n  }\n  #nilen-wycena .nw-left { min-height: 190px; }\n  #nilen-wycena .nw-left-inner { padding: 34px 26px 60px; }\n  #nilen-wycena .nw-left h2 { font-size: 1.35rem; }\n  #nilen-wycena .nw-benefits { display: none; }\n  #nilen-wycena .nw-step-deco { font-size: 7rem; bottom: -10px; right: -4px; }\n  #nilen-wycena .nw-back-btn { bottom: 18px; left: 26px; }\n  #nilen-wycena .nw-sum-mini { display: none; }\n  #nilen-wycena .nw-right-inner { padding: 36px 26px; }\n  #nilen-wycena .nw-rooms { grid-template-columns: 1fr; }\n  #nilen-wycena .nw-form-grid { grid-template-columns: 1fr; }\n  #nilen-wycena .nw-success-left { min-height: 200px; padding: 34px 26px; }\n  #nilen-wycena .nw-success-right { padding: 36px 26px; }\n  #nilen-wycena .nw-next-btn { width: 100%; justify-content: center; }\n  #nilen-wycena .nw-sa-btn { flex: 1; justify-content: center; }\n  #nilen-wycena .nw-opts--sm .nw-opt { padding: 13px 14px; }\n}\n@media (max-width: 440px) {\n  #nilen-wycena .nw-area-exact { flex-direction: column; align-items: flex-start; }\n  #nilen-wycena .nw-right-inner { padding: 28px 20px; }\n  #nilen-wycena .nw-left-inner { padding: 28px 20px 56px; }\n  #nilen-wycena .nw-success-left { padding: 28px 20px; }\n  #nilen-wycena .nw-success-right { padding: 28px 20px; }\n}\n\/* iOS: zapobiega auto-zoom przy focusie na input < 16px *\/\n@media (max-width: 800px) {\n  #nilen-wycena input, #nilen-wycena select, #nilen-wycena textarea {\n    font-size: 16px !important;\n  }\n}\n<\/style>\n\n<!-- ================================================================ HTML -->\n<div id=\"nilen-wycena\">\n\n  <!-- PASEK POST\u0118PU -->\n  <div class=\"nw-prog\"><div class=\"nw-prog-fill\" id=\"nwPF\"><\/div><\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550 KROK 1 \u2014 TYP MIESZKANIA \u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"nw-slide active\" id=\"nwS1\">\n    <div class=\"nw-left\">\n      <div class=\"nw-step-deco\">01<\/div>\n      <div class=\"nw-left-inner\">\n        <span class=\"nw-step-lbl\">Step 1 of 5<\/span>\n        <h2>Find out how much your apartment could cost to finish<\/h2>\n        <p>Our calculator uses pricing data from more than 200 completed projects. Answer a few questions and receive an initial cost estimate by email in just a few minutes. <\/p>\n        <div class=\"nw-benefits\">\n          <p class=\"nw-benefits-title\">What will you get after completing it?<\/p>\n          <ul class=\"nw-benefits-list\">\n            <li>An initial cost estimate delivered by email within minutes<\/li>\n            <li>A clear breakdown of what is included in Nilen\u2019s turnkey service<\/li>\n            <li>The option to book a free consultation with our advisor<\/li>\n            <li>No obligation - the estimate is free and entirely indicative<\/li>\n          <\/ul>\n        <\/div>\n      <\/div>\n    <\/div>\n    <div class=\"nw-right\">\n      <div class=\"nw-right-inner\">\n        <div class=\"nw-question\">What type of apartment are you finishing?<\/div>\n        <div class=\"nw-opts\" id=\"nwG1\">\n          <div class=\"nw-opt active\" onclick=\"nwPick('type','new',this,'nwG1')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">New-build apartment<\/span>\n<span class=\"nw-opt-sub\">New apartment in developer finish, ready for interior works<\/span>\n            <\/span>\n          <\/div>\n          <div class=\"nw-opt\" onclick=\"nwPick('type','secondary',this,'nwG1')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">Resale apartment<\/span>\n<span class=\"nw-opt-sub\">Previously occupied apartment requiring renovation or modernisation<\/span>\n            <\/span>\n          <\/div>\n        <\/div>\n        <button class=\"nw-next-btn\" onclick=\"nwGo(2)\">Next \u2192<\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550 KROK 2 \u2014 STANDARD \u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"nw-slide\" id=\"nwS2\">\n    <div class=\"nw-left\">\n      <div class=\"nw-step-deco\">02<\/div>\n      <div class=\"nw-left-inner\">\n        <span class=\"nw-step-lbl\">Step 2 of 5<\/span>\n        <h2>What finishing standard are you planning?<\/h2>\n        <p>Choose the variant that best suits your needs. You can then customize it as desired. <\/p>\n      <\/div>\n      <button class=\"nw-back-btn\" onclick=\"nwGo(1)\">\u2190 Back<\/button>\n    <\/div>\n    <div class=\"nw-right\">\n      <div class=\"nw-right-inner\">\n        <div class=\"nw-question\">Choose your finishing standard<\/div>\n        <div class=\"nw-opts\" id=\"nwG2\">\n          <div class=\"nw-opt\" onclick=\"nwPick('standard','economy',this,'nwG2')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">Essential<\/span>\n<span class=\"nw-opt-sub\">Reliable materials and practical solutions for a carefully managed budget<\/span>\n            <\/span>\n          <\/div>\n          <div class=\"nw-opt active\" onclick=\"nwPick('standard','standard',this,'nwG2')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">Standard<\/span>\n<span class=\"nw-opt-sub\">Our most popular choice - a balanced combination of quality, aesthetics and cost<\/span>\n            <\/span>\n          <\/div>\n          <div class=\"nw-opt\" onclick=\"nwPick('standard','premium',this,'nwG2')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">Premium<\/span>\n<span class=\"nw-opt-sub\">Premium materials, refined details and more individual design solutions<\/span>\n            <\/span>\n          <\/div>\n        <\/div>\n        <button class=\"nw-next-btn\" onclick=\"nwGo(3)\">Next \u2192<\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550 KROK 3 \u2014 METRA\u017b I POKOJE \u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"nw-slide\" id=\"nwS3\">\n    <div class=\"nw-left\">\n      <div class=\"nw-step-deco\">03<\/div>\n      <div class=\"nw-left-inner\">\n        <span class=\"nw-step-lbl\">Step 3 of 5<\/span>\n        <h2>What is the size and layout of the apartment?<\/h2>\n        <p>The more accurate the data, the more precise the initial calculation.<\/p>\n      <\/div>\n      <button class=\"nw-back-btn\" onclick=\"nwGo(2)\">\u2190 Back<\/button>\n    <\/div>\n    <div class=\"nw-right\">\n      <div class=\"nw-right-inner\">\n\n        <!-- Slider -->\n        <div class=\"nw-question\">Apartment area<\/div>\n        <span class=\"nw-area-big\" id=\"nwAreaDisp\">50 m\u00b2<\/span>\n        <input type=\"range\" class=\"nw-range\" id=\"nwAreaSl\" min=\"20\" max=\"200\" value=\"50\" step=\"1\" oninput=\"nwArea(this.value)\">\n        <div class=\"nw-range-marks\">\n          <span>20 m\u00b2<\/span> <span>75 m\u00b2<\/span> <span>125 m\u00b2<\/span> <span>200 m\u00b2<\/span>\n        <\/div>\n\n        <!-- Dok\u0142adny metra\u017c -->\n        <div class=\"nw-area-exact\">\n          <label for=\"nwAreaIn\">Exact dimensions:<\/label>\n<input id=\"nwAreaIn\" type=\"number\" min=\"20\" max=\"200\" value=\"50\" inputmode=\"numeric\" oninput=\"nwAreaPreview(this.value)\" onblur=\"nwArea(this.value)\" onkeydown=\"if(event.key==='Enter'){nwArea(this.value);this.blur();}\"\/>\n<span style=\"font-size:.8rem;color:var(--text-l)\">m\u00b2<\/span>\n        <\/div>\n\n        <!-- Pokoje -->\n        <span class=\"nw-field-label\">Number of rooms<\/span>\n        <div class=\"nw-rooms\">\n          <div class=\"nw-room\">\n            <span class=\"nw-room-name\">Bathrooms<\/span>\n            <div class=\"nw-counter\">\n              <button class=\"nw-cnt-btn\" onclick=\"nwRoom('bath',-1)\">\u2212<\/button>\n <span class=\"nw-cnt-val\" id=\"nwBath\">1<\/span>\n <button class=\"nw-cnt-btn\" onclick=\"nwRoom('bath',1)\">+<\/button>\n            <\/div>\n          <\/div>\n          <div class=\"nw-room\">\n            <span class=\"nw-room-name\">Separate toilet<\/span>\n            <div class=\"nw-counter\">\n              <button class=\"nw-cnt-btn\" onclick=\"nwRoom('wc',-1)\">\u2212<\/button>\n <span class=\"nw-cnt-val\" id=\"nwWc\">0<\/span>\n <button class=\"nw-cnt-btn\" onclick=\"nwRoom('wc',1)\">+<\/button>\n            <\/div>\n          <\/div>\n          <div class=\"nw-room\">\n            <span class=\"nw-room-name\">Rooms<\/span>\n            <div class=\"nw-counter\">\n              <button class=\"nw-cnt-btn\" onclick=\"nwRoom('bed',-1)\">\u2212<\/button>\n <span class=\"nw-cnt-val\" id=\"nwBed\">1<\/span>\n <button class=\"nw-cnt-btn\" onclick=\"nwRoom('bed',1)\">+<\/button>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <!-- Typ kuchni -->\n        <span class=\"nw-field-label\" style=\"margin-top:8px\">Type of kitchen<\/span>\n        <div class=\"nw-opts nw-opts--sm\" id=\"nwGKit\">\n          <div class=\"nw-opt active\" onclick=\"nwPick('kitType','kitchen',this,'nwGKit')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">Kitchen in a separate room<\/span>\n<span class=\"nw-opt-sub\">Closed kitchen with door<\/span>\n            <\/span>\n          <\/div>\n          <div class=\"nw-opt\" onclick=\"nwPick('kitType','open',this,'nwGKit')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">Kitchen open to the living room<\/span>\n<span class=\"nw-opt-sub\">Full kitchen connected to the living room, island or large built-in<\/span>\n            <\/span>\n          <\/div>\n        <\/div>\n\n        <button class=\"nw-next-btn\" onclick=\"nwGo(4)\">Next \u2192<\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550 KROK 4 \u2014 PROJEKT + DODATKI \u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"nw-slide\" id=\"nwS4\">\n    <div class=\"nw-left\">\n      <div class=\"nw-step-deco\">04<\/div>\n      <div class=\"nw-left-inner\">\n        <span class=\"nw-step-lbl\">Step 4 of 5<\/span>\n        <h2>A few final details<\/h2>\n        <p>These final details will help us provide a more accurate initial estimate.<\/p>\n      <\/div>\n      <button class=\"nw-back-btn\" onclick=\"nwGo(3)\">\u2190 Back<\/button>\n    <\/div>\n    <div class=\"nw-right\">\n      <div class=\"nw-right-inner\">\n\n        <!-- Projekt -->\n        <div class=\"nw-question\">Interior design<\/div>\n        <div class=\"nw-opts nw-opts--sm\" id=\"nwG3\">\n          <div class=\"nw-opt active\" onclick=\"nwPick('project','have',this,'nwG3')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">I already have an interior design<\/span>\n<span class=\"nw-opt-sub\">Calculate the cost of the finishing work only<\/span>\n            <\/span>\n          <\/div>\n          <div class=\"nw-opt\" onclick=\"nwPick('project','need',this,'nwG3')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">I need an interior design<\/span>\nInclude the design, visualisations and technical documentation\n            <\/span>\n          <\/div>\n        <\/div>\n\n        <!-- Cel -->\n        <div class=\"nw-question\" style=\"margin-top:20px\">How will the apartment be used?<\/div>\n        <div class=\"nw-opts nw-opts--sm\" id=\"nwG4\">\n          <div class=\"nw-opt\" onclick=\"nwPick('purpose','investment',this,'nwG4')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">As an investment<\/span>\n<span class=\"nw-opt-sub\">For rental or resale<\/span>\n            <\/span>\n          <\/div>\n          <div class=\"nw-opt active\" onclick=\"nwPick('purpose','own',this,'nwG4')\">\n            <span class=\"nw-opt-radio\"><\/span>\n            <span class=\"nw-opt-content\">\n              <span class=\"nw-opt-title\">As my own home<\/span>\n<span class=\"nw-opt-sub\">Finished around your lifestyle and everyday needs<\/span>\n            <\/span>\n          <\/div>\n        <\/div>\n\n        <button class=\"nw-next-btn\" onclick=\"nwGo(5)\" style=\"margin-top:28px\">Last step\u2192<\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550 KROK 5 \u2014 DANE KONTAKTOWE \u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"nw-slide\" id=\"nwS5\">\n    <div class=\"nw-left\">\n      <div class=\"nw-step-deco\">05<\/div>\n      <div class=\"nw-left-inner\">\n        <span class=\"nw-step-lbl\">Step 5 of 5 - Almost Done<\/span>\n        <h2>We\u2019ll send your estimate straight to your inbox<\/h2>\n        <p>Enter your details to receive an initial cost estimate and a summary of your selected options within a few minutes.<\/p>\n        <!-- Podsumowanie wybor\u00f3w -->\n        <div class=\"nw-sum-mini\" id=\"nwSumMini\"><\/div>\n      <\/div>\n      <button class=\"nw-back-btn\" onclick=\"nwGo(4)\">\u2190 Back<\/button>\n    <\/div>\n    <div class=\"nw-right\">\n      <div class=\"nw-right-inner\">\n        <div class=\"nw-question\">Your contact details<\/div>\n        <form id=\"nwForm\" onsubmit=\"nwSubmit(event)\" novalidate=\"\">\n          <div class=\"nw-form-grid\">\n            <div>\n              <label class=\"nw-input-lbl\" for=\"nwName\"><span class=\"nw-req\">Full name *<\/span><\/label>\n              <input class=\"nw-input\" id=\"nwName\" type=\"text\" placeholder=\"John Smith\" autocomplete=\"name\">\n            <\/div>\n            <div>\n              <label class=\"nw-input-lbl\" for=\"nwPhone\"><span class=\"nw-req\">Phone number *<\/span><\/label>\n              <input class=\"nw-input\" id=\"nwPhone\" type=\"tel\" placeholder=\"+48 000 000 000\" autocomplete=\"tel\">\n            <\/div>\n            <div class=\"full\">\n              <label class=\"nw-input-lbl\" for=\"nwEmail\">Email address <span class=\"nw-req\">*<\/span><\/label>\n              <input class=\"nw-input\" id=\"nwEmail\" type=\"email\" placeholder=\"john@example.com\" autocomplete=\"email\">\n            <\/div>\n          <\/div>\n\n          <!-- Zaznacz wszystkie -->\n          <label class=\"nw-consent nw-consent--all\" id=\"nwConsentAll\" onclick=\"nwToggleAll(this)\" style=\"margin-bottom:6px;padding:10px 14px;background:rgba(63,96,75,.06);border:1px solid rgba(63,96,75,.15);\">\n            <input type=\"checkbox\" id=\"nwCAll\">\n            <span><strong>Select all<\/strong><\/span>\n          <\/label>\n\n          <div class=\"nw-consents\">\n            <label class=\"nw-consent\">\n              <input type=\"checkbox\" id=\"nwC1\">\n              <span><strong>Consent to receive my estimate and be contacted *<\/strong><br\/><span class=\"nw-req\">I consent to Nilen processing my personal data to prepare and send my estimate and respond to my enquiry by email or phone. This consent is required to receive the result.<\/span>   <\/span>\n            <\/label>\n            <label class=\"nw-consent\">\n              <input type=\"checkbox\" id=\"nwC2\">\n              <span><strong>I would like a free consultation\n(optional)<\/strong><br\/><em style=\"font-size:.68rem;color:var(--text-l)\">I would like a Nilen advisor to contact me to discuss my apartment and the available options.<\/em><\/span>\n            <\/label>\n            <label class=\"nw-consent\">\n              <input type=\"checkbox\" id=\"nwC3\">\n              <span><strong>I would like to receive the Nilen newsletter\n(optional)<\/strong><br\/><em style=\"font-size:.68rem;color:var(--text-l)\">Interior design inspiration, practical renovation advice and selected offers. You can unsubscribe at any time.<\/em> <\/span>\n            <\/label>\n          <\/div>\n\n          <p class=\"nw-rodo\">\n * Required fields. Data administrator: Nilen, ul. Jana Zamoyskiego 63,\n30-519 Krak\u00f3w. Data processed in accordance with  &nbsp;<a href=\"https:\/\/nilen.pl\/en\/privacy-policy\/\" target=\"_blank\">privacy policy<\/a> .\n          <\/p>\n\n          <div class=\"nw-error\" id=\"nwErr\"><\/div>\n\n          <button type=\"submit\" class=\"nw-next-btn\" id=\"nwSubmitBtn\">\n GET MY ESTIMATE \u2192\n          <\/button>\n        <\/form>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550 EKRAN SUKCESU \u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"nw-success\" id=\"nwOK\">\n    <div class=\"nw-success-left\">\n      <div class=\"nw-success-deco\">\u2713<\/div>\n      <div class=\"nw-check-icon\">\n        <svg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\">\n          <path d=\"M3 11l5 6 11-13\" stroke=\"rgba(255,252,246,.88)\" stroke-width=\"1.5\"><\/path>\n        <\/svg>\n      <\/div>\n      <h2>Calculation is on its way!<\/h2>\n      <p>\n  We have sent a preliminary calculation to<strong id=\"nwOKmail\" style=\"color:rgba(255,252,246,.88)\"><\/strong> .<br\/> Please check your inbox, it may be in your spam folder.\n      <\/p>\n    <\/div>\n    <div class=\"nw-success-right\">\n      <div style=\"max-width:380px\">\n        <div style=\"font-size:.58rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--text-l);margin-bottom:24px\">What's next?<\/div>\n        <div class=\"nw-next-steps\">\n          <div class=\"nw-next-step\">\n            <div class=\"nw-step-num-box\">1<\/div>\n            <div class=\"nw-next-step-txt\">\n  Receive an email with a preliminary calculation,\n There you will find a comparison of options and approximate price ranges.\n            <\/div>\n          <\/div>\n          <div class=\"nw-next-step\">\n            <div class=\"nw-step-num-box\">2<\/div>\n            <div class=\"nw-next-step-txt\">\n  Our advisor will contact you\n within <strong>24 business hours<\/strong> .\n            <\/div>\n          <\/div>\n          <div class=\"nw-next-step\">\n            <div class=\"nw-step-num-box\">3<\/div>\n            <div class=\"nw-next-step-txt\">\n  Schedule a free consultation, we will discuss the scope and prepare an individual quote.\n            <\/div>\n          <\/div>\n        <\/div>\n        <div class=\"nw-success-actions\">\n          <a href=\"https:\/\/nilen.pl\/en\/realizations\/\" class=\"nw-sa-btn nw-sa-btn--green\">\n  See the projects\n          <\/a>\n          <a href=\"tel:+48510360305\" class=\"nw-sa-btn nw-sa-btn--outline\">\n  +48 510 360 305\n          <\/a>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n<\/div><!-- \/#nilen-wycena -->\n\n<script>\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\/\/ NILEN \u2014 LOGIKA WIZARDA\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\n\/\/ \u2500\u2500 STAN \u2500\u2500\nconst NWS = {\n  type:     'new',\n  standard: 'standard',\n  project:  'have',\n  purpose:  'own',\n  kitType:  'kitchen',\n  area:     50,\n  rooms:    { bath: 1, wc: 0, bed: 1 }\n};\n\n\/\/ Kalkulacja cenowa przeniesiona do PHP (wycena-functions.php) \u2014 niewidoczna w przegl\u0105darce.\n\n\/\/ NW_LABELS usuni\u0119te \u2014 warto\u015bci czytane z DOM (WPML ju\u017c je t\u0142umaczy)\n\n\/\/ \u2500\u2500 NAWIGACJA \u2500\u2500\nfunction nwGo(step) {\n  document.querySelectorAll('#nilen-wycena .nw-slide').forEach(s => s.classList.remove('active'));\n  const prog = document.getElementById('nwPF');\n  if (prog) prog.style.width = (step \/ 5 * 100) + '%';\n  if (step === 5) nwBuildSummary();\n  const target = document.getElementById('nwS' + step);\n  if (target) target.classList.add('active');\n  const wrap = document.getElementById('nilen-wycena');\n  if (wrap) {\n    const rect = wrap.getBoundingClientRect();\n    const topVisible = rect.top >= 0 && rect.top < window.innerHeight * 0.4;\n    if (!topVisible) {\n      window.scrollTo({ top: rect.top + window.scrollY - 80, behavior: 'smooth' });\n    }\n  }\n}\n\n\/\/ \u2500\u2500 WYB\u00d3R OPCJI \u2500\u2500\nfunction nwPick(key, val, el, groupId) {\n  NWS[key] = val;\n  document.querySelectorAll('#' + groupId + ' .nw-opt').forEach(o => o.classList.remove('active'));\n  el.classList.add('active');\n}\n\n\/\/ \u2500\u2500 SUWAK POWIERZCHNI \u2500\u2500\n\/\/ Podgl\u0105d podczas pisania \u2014 tylko wy\u015bwietlacz, bez clamp i sync\nfunction nwAreaPreview(v) {\n  const val = parseInt(v, 10);\n  const d = document.getElementById('nwAreaDisp');\n  if (!isNaN(val) && val > 0 && d) d.textContent = val + ' m\u00b2';\n}\n\nfunction nwArea(v) {\n  let val = parseInt(v, 10);\n  if (isNaN(val)) val = 50;\n  val = Math.max(20, Math.min(200, val));\n  NWS.area = val;\n  const d = document.getElementById('nwAreaDisp');\n  const s = document.getElementById('nwAreaSl');\n  const i = document.getElementById('nwAreaIn');\n  if (d) d.textContent = val + ' m\u00b2';\n  if (s && +s.value !== val) s.value = val;\n  if (i && +i.value !== val) i.value = val;\n}\n\n\/\/ \u2500\u2500 LICZNIKI POKOI \u2500\u2500\nfunction nwRoom(k, d) {\n  const min = k === 'bath' ? 1 : 0;\n  NWS.rooms[k] = Math.max(min, Math.min(5, NWS.rooms[k] + d));\n  const ids = { bath: 'nwBath', wc: 'nwWc', bed: 'nwBed' };\n  const el = document.getElementById(ids[k]);\n  if (el) el.textContent = NWS.rooms[k];\n}\n\n\/\/ \u2500\u2500 PODSUMOWANIE (lewa kolumna kroku 5, BEZ kwot) \u2500\u2500\nfunction nwBuildSummary() {\n  const el = document.getElementById('nwSumMini');\n  if (!el) return;\n\n  \/\/ Etykiety wierszy \u2014 wykryj j\u0119zyk strony (WPML ustawia html[lang])\n  const lang = (document.documentElement.lang || 'pl').toLowerCase();\n  const isEn = lang.startsWith('en');\n  const K = isEn\n    ? { type: 'Type', standard: 'Standard', area: 'Area', kitchen: 'Kitchen', project: 'Project' }\n    : { type: 'Typ',  standard: 'Standard', area: 'Powierzchnia', kitchen: 'Kuchnia', project: 'Projekt' };\n\n  \/\/ Warto\u015bci \u2014 czytaj tekst aktywnej opcji z DOM (WPML ju\u017c go przet\u0142umaczy\u0142)\n  function getActive(groupId) {\n    var g = document.getElementById(groupId);\n    if (!g) return '';\n    var t = g.querySelector('.nw-opt.active .nw-opt-title');\n    return t ? t.textContent.trim() : '';\n  }\n\n  const rows = [\n    [K.type,     getActive('nwG1')],\n    [K.standard, getActive('nwG2')],\n    [K.area,     NWS.area + ' m\u00b2'],\n    [K.kitchen,  getActive('nwGKit')],\n    [K.project,  getActive('nwG3')]\n  ];\n  el.innerHTML = rows.map(function(r) {\n    return '<div class=\"nw-sum-row\"><span class=\"nw-sum-k\">' + r[0] + '<\/span><span class=\"nw-sum-v\">' + r[1] + '<\/span><\/div>';\n  }).join('');\n}\n\n\/\/ \u2500\u2500 ZAZNACZ WSZYSTKIE ZGODY \u2500\u2500\nfunction nwToggleAll(labelEl) {\n  \/\/ Nie blokujemy domy\u015blnego zachowania \u2014 checkbox zmieni si\u0119 automatycznie\n  \/\/ Reagujemy po mikrotiku \u017ceby odczyta\u0107 nowy stan\n  setTimeout(function() {\n    const master = document.getElementById('nwCAll');\n    const checked = master ? master.checked : false;\n    ['nwC1','nwC2','nwC3'].forEach(function(id) {\n      var cb = document.getElementById(id);\n      if (cb) cb.checked = checked;\n    });\n  }, 0);\n}\n\n\/\/ Synchronizacja master checkbox gdy klikamy pojedyncze zgody\ndocument.addEventListener('change', function(e) {\n  if (['nwC1','nwC2','nwC3'].indexOf(e.target.id) !== -1) {\n    var master = document.getElementById('nwCAll');\n    if (!master) return;\n    var all = ['nwC1','nwC2','nwC3'].every(function(id) {\n      var cb = document.getElementById(id);\n      return cb && cb.checked;\n    });\n    master.checked = all;\n  }\n});\n\n\/\/ \u2500\u2500 WALIDACJA TELEFONU \u2500\u2500\n\/\/ Akceptuje numery z +48 lub bez, polskie i zagraniczne.\n\/\/ Dozwolone znaki: cyfry, spacje, my\u015blniki, nawiasy, wiod\u0105cy +\n\/\/ Wymagana liczba cyfr: 7\u201315 (standard E.164)\nfunction nwValidPhone(raw) {\n  if (!raw) return false;\n  \/\/ Tylko dozwolone znaki telefoniczne\n  if (!\/^\\+?[\\d\\s\\-().]+$\/.test(raw)) return false;\n  \/\/ Policz same cyfry\n  const digits = raw.replace(\/\\D\/g, '');\n  return digits.length >= 7 && digits.length <= 15;\n}\n\/\/ \u2500\u2500 WYSY\u0141ANIE \u2500\u2500\nasync function nwSubmit(e) {\n  e.preventDefault();\n\n  const name  = document.getElementById('nwName').value.trim();\n  const phone = document.getElementById('nwPhone').value.trim();\n  const email = document.getElementById('nwEmail').value.trim();\n  const c1    = document.getElementById('nwC1').checked;\n  const errEl = document.getElementById('nwErr');\n\n  \/\/ Walidacja\n  let ok = true;\n  ['nwName', 'nwPhone', 'nwEmail'].forEach(id => {\n    const el = document.getElementById(id);\n    if (!el || !el.value.trim()) { if (el) el.classList.add('nw-err'); ok = false; }\n    else el.classList.remove('nw-err');\n  });\n  if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email)) {\n    document.getElementById('nwEmail').classList.add('nw-err'); ok = false;\n  }\n  \/\/ Walidacja telefonu: dozwolone cyfry, spacje, my\u015blniki, nawiasy, wiod\u0105cy +\n  \/\/ Liczymy same cyfry \u2014 poprawny numer ma 7\u201315 cyfr (standard E.164)\n  if (!nwValidPhone(phone)) {\n    document.getElementById('nwPhone').classList.add('nw-err'); ok = false;\n  }\n  if (!c1) {\n    document.getElementById('nwC1').style.outline = '2px solid #c0392b'; ok = false;\n  } else {\n    document.getElementById('nwC1').style.outline = '';\n  }\n  if (!ok) {\n    errEl.textContent = 'Uzupe\u0142nij wszystkie wymagane pola (telefon: min. 7 cyfr, np. +48 123 456 789) i zaznacz zgod\u0119 na e-mail.';\n    errEl.style.display = 'block'; return;\n  }\n\n  const btn = document.getElementById('nwSubmitBtn');\n  btn.disabled = true; btn.textContent = 'Wysy\u0142am\u2026';\n  errEl.style.display = 'none';\n\n  \/\/ Wykryj \u017ar\u00f3d\u0142o ruchu\n  const _p = new URLSearchParams(window.location.search);\n  const _own = window.location.hostname.toLowerCase();\n  const _rawRef = document.referrer || '';\n  \/\/ 1. UTM z bie\u017c\u0105cego URL\n  let _us = (_p.get('utm_source') || '').toLowerCase();\n  let _um = (_p.get('utm_medium') || '').toLowerCase();\n  \/\/ 2. Fallback: sessionStorage (user wszed\u0142 z UTM na inn\u0105 podstron\u0119)\n  if (!_us) { _us = (sessionStorage.getItem('nilen_utm_source') || '').toLowerCase(); _um = (sessionStorage.getItem('nilen_utm_medium') || '').toLowerCase(); }\n  \/\/ 3. Fallback: wyci\u0105gnij UTM z URL referrera (np. nilen.pl\/kontakt\/?utm_source=youtube)\n  if (!_us && _rawRef) { try { var _rp = new URLSearchParams(new URL(_rawRef).search); _us = (_rp.get('utm_source')||'').toLowerCase(); _um = (_rp.get('utm_medium')||'').toLowerCase(); } catch(e){} }\n  \/\/ Referrer do detekcji platformy \u2014 ignoruj wewn\u0119trzne podstrony\n  const _ref = (_rawRef && !_rawRef.toLowerCase().includes(_own)) ? _rawRef.toLowerCase() : (sessionStorage.getItem('nilen_referrer') || '').toLowerCase();\n  let _src = '', _med = '';\n  if (_us) {\n    _src = _us;\n    const adsMedia = ['cpc','ppc','paid','display','paid-social','paidsocial'];\n    _med = adsMedia.some(m => _um.includes(m)) ? 'ads' : (_um || 'ads');\n  } else if (_ref) {\n    if      (_ref.includes('safeframe.googlesyndication') || _ref.includes('googleadservices')) { _src='google';    _med='ads'; }\n    else if (_ref.includes('google.'))    { _src='google';    _med='organic'; }\n    else if (_ref.includes('bing.'))      { _src='bing';      _med='organic'; }\n    else if (_ref.includes('facebook.'))  { _src='facebook';  _med='organic'; }\n    else if (_ref.includes('instagram.')) { _src='instagram'; _med='organic'; }\n    else if (_ref.includes('youtube.'))   { _src='youtube';   _med='organic'; }\n    else                                   { _src='referral';  _med=_ref.split('\/')[2]||''; }\n  }\n\n  const payload = new FormData();\n  payload.append('action',    'nilen_wycena');\n  payload.append('nonce',     (typeof nilenWycena !== 'undefined') ? nilenWycena.nonce : '');\n  payload.append('name',      name);\n  payload.append('phone',     phone);\n  payload.append('email',     email);\n  payload.append('c_email',   c1 ? '1' : '0');\n  payload.append('c_tel',     document.getElementById('nwC2').checked ? '1' : '0');\n  payload.append('c_news',    document.getElementById('nwC3').checked ? '1' : '0');\n  payload.append('type',      NWS.type);\n  payload.append('standard',  NWS.standard);\n  payload.append('project',   NWS.project);\n  payload.append('purpose',   NWS.purpose);\n  payload.append('area',      NWS.area);\n  payload.append('r_bath',    NWS.rooms.bath);\n  payload.append('r_wc',      NWS.rooms.wc);\n  payload.append('kit_type',  NWS.kitType);\n  payload.append('r_bed',     NWS.rooms.bed);\n  payload.append('traffic_source', _src);\n  payload.append('traffic_medium', _med);\n\n  try {\n    const ajaxUrl = (typeof nilenWycena !== 'undefined') ? nilenWycena.ajaxUrl : '\/wp-admin\/admin-ajax.php';\n    const resp = await fetch(ajaxUrl, { method: 'POST', body: payload });\n    const json = await resp.json();\n\n    if (json.success) {\n      \/\/ \u2500\u2500 GTM \u2014 zdarzenie konwersji \u2500\u2500\n      window.dataLayer = window.dataLayer || [];\n      window.dataLayer.push({\n        event:          'lead_kalkulator',\n        event_category: 'Kalkulator wyceny',\n        event_label:    'Wycena wyko\u0144czenia',\n        area:           NWS.area,\n        standard:       NWS.standard,\n        type:           NWS.type\n      });\n      document.querySelectorAll('#nilen-wycena .nw-slide').forEach(s => s.classList.remove('active'));\n      const okEl = document.getElementById('nwOK');\n      if (okEl) okEl.classList.add('active');\n      const okMail = document.getElementById('nwOKmail');\n      if (okMail) okMail.textContent = email;\n      const prog = document.getElementById('nwPF');\n      if (prog) prog.style.width = '100%';\n    } else {\n      throw new Error(json.data || 'server error');\n    }\n  } catch (err) {\n    errEl.textContent = 'Co\u015b posz\u0142o nie tak. Spr\\xF3buj ponownie lub zadzwo\u0144: +48 510 360 305';\n    errEl.style.display = 'block';\n    btn.disabled = false;\n    btn.textContent = 'Wy\u015blij i odbierz kalkulacj\u0119 \u2192';\n  }\n}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<!-- dce invisible element 891804e --><style>html,body{overflow-x:hidden;max-width:100%;}<\/style><style>\n\/* \u2500\u2500 RESET SCOPED \u2500\u2500 *\/\n#nilen-wycena *, #nilen-wycena *::before, #nilen-wycena *::after {\n  box-sizing: border-box; margin: 0; padding: 0;\n}\n#nilen-wycena input, #nilen-wycena select, #nilen-wycena textarea {\n  max-width: 100%;\n}\n\n\/* \u2500\u2500 ZMIENNE \u2500\u2500 *\/\n#nilen-wycena {\n  --cream:       #E9E1CF;\n  --cream-dark:  #DCD2BD;\n  --cream-light: #F6F1E8;\n  --green:       #3F604B;\n  --green-mid:   #4E7060;\n  --amber:       #BA6B27;\n  --amber-bg:    #F4E6D6;\n  --white:       #FFFCF6;\n  --text:        #26322A;\n  --text-m:      #49604F;\n  --text-l:      #74806F;\n  --serif: \"PT Serif\", Georgia, serif;\n  --sans:  \"Montserrat\", system-ui, sans-serif;\n\n  width: 100%;\n  max-width: 100%;\n  overflow-x: hidden;\n  font-family: var(--sans);\n  font-size: 15px;\n  color: var(--text);\n  line-height: 1.6;\n  letter-spacing: .005em;\n  -webkit-font-smoothing: antialiased;\n}\n\n\/* \u2500\u2500 PASEK POST\u0118PU \u2500\u2500 *\/\n#nilen-wycena .nw-prog {\n  height: 3px;\n  background: rgba(63,96,75,.15);\n  width: 100%;\n  position: relative;\n  z-index: 2;\n}\n#nilen-wycena .nw-prog-fill {\n  height: 100%;\n  background: var(--amber);\n  transition: width .45s cubic-bezier(.4,0,.2,1);\n  width: 20%;\n}\n\n\/* \u2500\u2500 SLIDE \u2014 UKRYTY \u2500\u2500 *\/\n#nilen-wycena .nw-slide { display: none; }\n#nilen-wycena .nw-slide.active {\n  display: grid;\n  grid-template-columns: 2fr 3fr;\n  min-height: 520px;\n  animation: nwIn .32s ease;\n}\n@keyframes nwIn {\n  from { opacity: 0; transform: translateY(6px); }\n  to   { opacity: 1; transform: none; }\n}\n\n\/* \u2500\u2500 LEWA KOLUMNA (zielona) \u2500\u2500 *\/\n#nilen-wycena .nw-left {\n  background: var(--green);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  align-items: stretch;\n}\n#nilen-wycena .nw-left-inner {\n  padding: 64px 48px 80px;\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  position: relative;\n  z-index: 1;\n  flex: 1;\n}\n\n\/* Numerek t\u0142a *\/\n#nilen-wycena .nw-step-deco {\n  position: absolute;\n  bottom: -18px; right: -8px;\n  font-family: var(--serif);\n  font-size: 11rem;\n  font-weight: 700;\n  color: rgba(255,252,246,.04);\n  line-height: 1;\n  letter-spacing: -.06em;\n  user-select: none;\n  pointer-events: none;\n  z-index: 0;\n}\n\n\/* Linia akcentu przed numerem kroku *\/\n#nilen-wycena .nw-step-lbl {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n  font-size: .6rem;\n  font-weight: 700;\n  letter-spacing: .2em;\n  text-transform: uppercase;\n  color: rgba(255,252,246,.5);\n  margin-bottom: 22px;\n}\n#nilen-wycena .nw-step-lbl::before {\n  content: \"\";\n  display: inline-block;\n  width: 20px; height: 1px;\n  background: var(--amber);\n  flex-shrink: 0;\n}\n\n#nilen-wycena .nw-left h2 {\n  font-family: var(--serif);\n  font-size: clamp(1.4rem, 2.6vw, 2rem);\n  font-weight: 400;\n  color: var(--white);\n  line-height: 1.22;\n  letter-spacing: -.025em;\n  margin-bottom: 18px;\n}\n#nilen-wycena .nw-left p {\n  font-size: .83rem;\n  color: rgba(255,252,246,.82);\n  line-height: 1.8;\n  max-width: 270px;\n}\n\n\/* Blok korzy\u015bci \u2014 krok 1 ================================================= *\/\n#nilen-wycena .nw-benefits {\n  margin-top: 22px;\n  border-top: 1px solid rgba(255,252,246,.15);\n  padding-top: 18px;\n}\n#nilen-wycena .nw-benefits-title {\n  font-size: .68rem !important;\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  color: rgba(255,252,246,.5) !important;\n  margin: 0 0 12px !important;\n  max-width: none !important;\n}\n#nilen-wycena .nw-benefits-list {\n  list-style: none;\n  margin: 0; padding: 0;\n  display: flex; flex-direction: column; gap: 9px;\n}\n#nilen-wycena .nw-benefits-list li {\n  font-size: .8rem;\n  color: rgba(255,252,246,.88);\n  line-height: 1.6;\n  max-width: 290px;\n  padding-left: 14px;\n  position: relative;\n}\n#nilen-wycena .nw-benefits-list li::before {\n  content: '';\n  position: absolute;\n  left: 0; top: 9px;\n  width: 5px; height: 1px;\n  background: rgba(181,107,41,.8);\n}\n\n\/* Przycisk Wstecz *\/\n#nilen-wycena .nw-back-btn {\n  position: absolute;\n  bottom: 28px; left: 48px;\n  background: none; border: none; padding: 0;\n  color: rgba(255,252,246,.45);\n  font-family: var(--sans);\n  font-size: .7rem; font-weight: 500;\n  letter-spacing: .04em;\n  cursor: pointer;\n  display: flex; align-items: center; gap: 7px;\n  transition: color .2s;\n  z-index: 2;\n}\n#nilen-wycena .nw-back-btn:hover { color: rgba(255,252,246,.85); }\n#nilen-wycena .nw-back-btn.hidden { display: none; }\n\n\/* Mini podsumowanie (krok 5) *\/\n#nilen-wycena .nw-sum-mini {\n  margin-top: 28px;\n  border-top: 1px solid rgba(255,252,246,.1);\n  padding-top: 18px;\n  display: flex;\n  flex-direction: column;\n  gap: 8px;\n}\n#nilen-wycena .nw-sum-row {\n  display: flex;\n  justify-content: space-between;\n  font-size: .73rem;\n}\n#nilen-wycena .nw-sum-k { color: rgba(255,252,246,.45); }\n#nilen-wycena .nw-sum-v { color: rgba(255,252,246,.88); font-weight: 600; }\n\n\/* \u2500\u2500 PRAWA KOLUMNA \u2500\u2500 *\/\n#nilen-wycena .nw-right {\n  background: var(--white);\n  display: flex;\n  align-items: center;\n}\n#nilen-wycena .nw-right-inner {\n  padding: 64px 56px;\n  width: 100%;\n}\n\n\/* Etykieta pytania *\/\n#nilen-wycena .nw-question {\n  font-size: .62rem;\n  font-weight: 700;\n  letter-spacing: .18em;\n  text-transform: uppercase;\n  color: var(--text-l);\n  margin-bottom: 20px;\n}\n\n\/* \u2500\u2500 OPCJE (radio style) \u2500\u2500 *\/\n#nilen-wycena .nw-opts {\n  display: flex;\n  flex-direction: column;\n  gap: 11px;\n  margin-bottom: 36px;\n}\n#nilen-wycena .nw-opts--sm { gap: 8px; margin-bottom: 24px; }\n\n#nilen-wycena .nw-opt {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  padding: 18px 20px;\n  border: 1px solid rgba(63,96,75,.17);\n  background: rgba(246,241,232,.65);\n  cursor: pointer;\n  transition: border-color .17s, background .17s, box-shadow .17s;\n  user-select: none;\n}\n#nilen-wycena .nw-opt:hover {\n  border-color: rgba(186,107,39,.38);\n  background: rgba(244,230,214,.6);\n}\n#nilen-wycena .nw-opt.active {\n  border-color: var(--amber);\n  background: var(--amber-bg);\n  box-shadow: inset 0 0 0 1px var(--amber);\n}\n\n\/* Ko\u0142o radio *\/\n#nilen-wycena .nw-opt-radio {\n  width: 18px; height: 18px; min-width: 18px;\n  border: 2px solid rgba(63,96,75,.28);\n  border-radius: 50%;\n  background: #fff;\n  position: relative;\n  flex-shrink: 0;\n  transition: border-color .15s, background .15s;\n}\n#nilen-wycena .nw-opt.active .nw-opt-radio {\n  border-color: var(--amber);\n  background: var(--amber);\n}\n#nilen-wycena .nw-opt.active .nw-opt-radio::after {\n  content: \"\";\n  position: absolute; top: 50%; left: 50%;\n  transform: translate(-50%, -50%);\n  width: 6px; height: 6px;\n  border-radius: 50%;\n  background: #fff;\n}\n\n#nilen-wycena .nw-opt-content { flex: 1; }\n#nilen-wycena .nw-opt-title {\n  display: block;\n  font-size: .88rem; font-weight: 600; color: var(--text);\n  margin-bottom: 2px;\n}\n#nilen-wycena .nw-opts--sm .nw-opt-title { font-size: .84rem; }\n#nilen-wycena .nw-opt-sub {\n  font-size: .72rem; color: var(--text-m);\n}\n\n\/* \u2500\u2500 PRZYCISK DALEJ \u2500\u2500 *\/\n#nilen-wycena .nw-next-btn {\n  height: 52px; padding: 0 42px;\n  background: var(--amber); color: var(--white);\n  border: none; cursor: pointer;\n  font-family: var(--sans);\n  font-size: .72rem; font-weight: 700;\n  letter-spacing: .11em; text-transform: uppercase;\n  display: inline-flex; align-items: center; gap: 9px;\n  transition: background .18s;\n}\n#nilen-wycena .nw-next-btn:hover { background: var(--green); }\n#nilen-wycena .nw-next-btn:disabled { opacity: .45; cursor: not-allowed; }\n\n\/* \u2500\u2500 SUWAK (metra\u017c) \u2500\u2500 *\/\n#nilen-wycena .nw-area-big {\n  font-family: var(--serif);\n  font-size: 2.6rem; color: var(--green);\n  display: block; line-height: 1;\n  margin-bottom: 18px;\n}\n#nilen-wycena .nw-range {\n  -webkit-appearance: none; appearance: none;\n  width: 100%; height: 2px;\n  background: rgba(63,96,75,.25); outline: none; cursor: pointer;\n  margin-bottom: 10px;\n}\n#nilen-wycena .nw-range::-webkit-slider-thumb {\n  -webkit-appearance: none;\n  width: 22px; height: 22px;\n  background: var(--amber);\n  border: 3px solid var(--white);\n  box-shadow: 0 0 0 1px var(--amber);\n  cursor: pointer; border-radius: 0;\n}\n#nilen-wycena .nw-range::-moz-range-thumb {\n  width: 22px; height: 22px;\n  background: var(--amber);\n  border: 3px solid var(--white);\n  cursor: pointer; border-radius: 0;\n}\n#nilen-wycena .nw-range-marks {\n  position: relative;\n  height: 16px;\n  font-size: .67rem; color: var(--text-l);\n  margin-bottom: 28px;\n}\n#nilen-wycena .nw-range-marks span {\n  position: absolute;\n  transform: translateX(-50%);\n  white-space: nowrap;\n}\n\/* Pozycje dok\u0142adne wg skali 20\u2013200 (180 jednostek):\n   20  \u2192  0%,  75 \u2192 30.56%,  125 \u2192 58.33%,  200 \u2192 100% *\/\n#nilen-wycena .nw-range-marks span:nth-child(1) { left: 0%;     transform: none; }\n#nilen-wycena .nw-range-marks span:nth-child(2) { left: 30.56%; }\n#nilen-wycena .nw-range-marks span:nth-child(3) { left: 58.33%; }\n#nilen-wycena .nw-range-marks span:nth-child(4) { left: 100%;   transform: translateX(-100%); }\n\n\/* Dok\u0142adny metra\u017c (pole tekstowe) *\/\n#nilen-wycena .nw-area-exact {\n  display: flex; align-items: center; gap: 10px;\n  margin-bottom: 36px;\n}\n#nilen-wycena .nw-area-exact label {\n  font-size: .62rem; font-weight: 700;\n  letter-spacing: .14em; text-transform: uppercase;\n  color: var(--text-l); white-space: nowrap;\n}\n#nilen-wycena .nw-area-exact input {\n  width: 90px; height: 40px;\n  border: 1px solid rgba(63,96,75,.22);\n  background: var(--cream-light);\n  font-family: var(--sans); font-size: .9rem;\n  color: var(--green); text-align: center;\n  padding: 0 10px; outline: none;\n  transition: border-color .15s;\n}\n#nilen-wycena .nw-area-exact input:focus { border-color: var(--amber); background: #fff; }\n\n\/* \u2500\u2500 LICZNIKI POKOI \u2500\u2500 *\/\n#nilen-wycena .nw-field-label {\n  font-size: .62rem; font-weight: 700;\n  letter-spacing: .15em; text-transform: uppercase;\n  color: var(--text-l); display: block;\n  margin-bottom: 12px;\n}\n#nilen-wycena .nw-rooms {\n  display: grid; grid-template-columns: 1fr 1fr;\n  gap: 10px; margin-bottom: 36px;\n}\n#nilen-wycena .nw-room {\n  display: flex; align-items: center;\n  justify-content: space-between;\n  padding: 12px 14px;\n  border: 1px solid rgba(63,96,75,.17);\n  background: rgba(246,241,232,.65);\n}\n#nilen-wycena .nw-room-name { font-size: .8rem; color: var(--text); }\n#nilen-wycena .nw-counter { display: flex; align-items: center; gap: 12px; }\n#nilen-wycena .nw-cnt-btn {\n  width: 26px; height: 26px;\n  border: 1px solid rgba(63,96,75,.28);\n  background: none; cursor: pointer;\n  color: var(--amber); font-size: .95rem; font-weight: 700;\n  display: flex; align-items: center; justify-content: center;\n  font-family: var(--sans);\n  transition: background .15s, color .15s;\n}\n#nilen-wycena .nw-cnt-btn:hover { background: var(--amber); color: #fff; }\n#nilen-wycena .nw-cnt-val {\n  font-weight: 700; font-size: .88rem;\n  min-width: 18px; text-align: center; color: var(--text);\n}\n\n\/* \u2500\u2500 CHECKBOXY DODATKOWE \u2500\u2500 *\/\n#nilen-wycena .nw-extras {\n  display: flex; flex-direction: column; gap: 8px;\n  margin-bottom: 32px;\n}\n#nilen-wycena .nw-extra {\n  display: flex; align-items: center; gap: 14px;\n  padding: 13px 16px;\n  border: 1px solid rgba(63,96,75,.17);\n  background: rgba(246,241,232,.65);\n  cursor: pointer;\n  transition: border-color .17s, background .17s;\n}\n#nilen-wycena .nw-extra:hover { border-color: rgba(186,107,39,.35); background: rgba(244,230,214,.5); }\n#nilen-wycena .nw-extra:has(input:checked) { border-color: var(--amber); background: var(--amber-bg); }\n\n#nilen-wycena .nw-extra input[type=\"checkbox\"] {\n  appearance: none; -webkit-appearance: none;\n  width: 18px; height: 18px; min-width: 18px;\n  display: flex; align-items: center; justify-content: center;\n  border: 1.5px solid rgba(63,96,75,.32);\n  background: #fff;\n  display: inline-grid; place-content: center;\n  cursor: pointer; flex-shrink: 0;\n  transition: background .12s, border-color .12s;\n}\n#nilen-wycena .nw-extra input[type=\"checkbox\"]::before {\n  content: \"\\2713\";\n  display: block; line-height: 1;\n  font-size: 12px; font-weight: 700; color: #fff;\n  transform: scale(0); transition: transform .12s ease;\n}\n#nilen-wycena .nw-extra input[type=\"checkbox\"]:checked {\n  background: var(--amber); border-color: var(--amber);\n}\n#nilen-wycena .nw-extra input[type=\"checkbox\"]:checked::before { transform: scale(1); }\n\n#nilen-wycena .nw-extra-name { font-size: .83rem; font-weight: 500; color: var(--text); display: block; }\n#nilen-wycena .nw-extra-hint { font-size: .7rem; color: var(--text-l); }\n\n\/* \u2500\u2500 FORMULARZ (krok 5) \u2500\u2500 *\/\n#nilen-wycena .nw-form-grid {\n  display: grid; grid-template-columns: 1fr 1fr;\n  gap: 14px; margin-bottom: 18px;\n}\n#nilen-wycena .nw-form-grid .full { grid-column: 1 \/ -1; }\n#nilen-wycena .nw-input-lbl {\n  font-size: .6rem; font-weight: 700;\n  letter-spacing: .14em; text-transform: uppercase;\n  color: var(--text-l); display: block; margin-bottom: 6px;\n}\n#nilen-wycena .nw-input {\n  width: 100%; height: 48px;\n  border: 1px solid rgba(63,96,75,.2);\n  background: rgba(246,241,232,.7);\n  font-family: var(--sans); font-size: .88rem;\n  color: var(--text); padding: 0 14px; outline: none;\n  transition: border-color .15s, background .15s;\n}\n#nilen-wycena .nw-input:focus { border-color: var(--amber); background: #fff; }\n#nilen-wycena .nw-input.nw-err { border-color: #c0392b; }\n#nilen-wycena .nw-req { color: var(--amber); }\n\n\/* Zgody *\/\n#nilen-wycena .nw-consents {\n  display: flex; flex-direction: column;\n  gap: 10px; margin-bottom: 16px;\n}\n#nilen-wycena .nw-consent {\n  display: flex; gap: 11px; align-items: flex-start;\n  font-size: .74rem; color: var(--text-m);\n  line-height: 1.65; cursor: pointer;\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"] {\n  appearance: none; -webkit-appearance: none;\n  width: 16px; height: 16px; min-width: 16px;\n  display: flex; align-items: center; justify-content: center;\n  border: 1.5px solid rgba(63,96,75,.3);\n  background: #fff;\n  display: inline-grid; place-content: center;\n  cursor: pointer; flex-shrink: 0; margin-top: 3px;\n  transition: background .12s, border-color .12s;\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"]::before {\n  content: \"\\2713\";\n  display: block; line-height: 1;\n  font-size: 11px; font-weight: 700; color: #fff;\n  transform: scale(0); transition: transform .12s ease;\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"]:checked {\n  background: var(--green); border-color: var(--green);\n}\n#nilen-wycena .nw-consent input[type=\"checkbox\"]:checked::before { transform: scale(1); }\n#nilen-wycena .nw-consent strong { color: var(--text); }\n#nilen-wycena .nw-consent--all { cursor: pointer; }\n#nilen-wycena .nw-consent--all input:checked { background: var(--amber); border-color: var(--amber); }\n\n#nilen-wycena .nw-rodo {\n  font-size: .67rem; color: var(--text-l); line-height: 1.65;\n  margin-bottom: 22px;\n}\n#nilen-wycena .nw-rodo a { color: var(--amber); }\n\n#nilen-wycena .nw-error {\n  display: none;\n  font-size: .76rem; color: #c0392b;\n  padding: 11px 14px;\n  border-left: 2px solid #c0392b;\n  background: rgba(192,57,43,.05);\n  margin-bottom: 16px; line-height: 1.5;\n}\n\n\/* \u2500\u2500 EKRAN SUKCESU \u2500\u2500 *\/\n#nilen-wycena .nw-success { display: none; }\n#nilen-wycena .nw-success.active {\n  display: grid;\n  grid-template-columns: 2fr 3fr;\n  min-height: 520px;\n  animation: nwIn .32s ease;\n}\n#nilen-wycena .nw-success-left {\n  background: var(--green);\n  padding: 64px 48px;\n  display: flex; flex-direction: column;\n  justify-content: center;\n  position: relative; overflow: hidden;\n}\n#nilen-wycena .nw-success-right {\n  background: var(--white);\n  padding: 64px 56px;\n  display: flex; align-items: center;\n}\n#nilen-wycena .nw-check-icon {\n  width: 54px; height: 54px;\n  border: 1px solid rgba(255,252,246,.28);\n  display: flex; align-items: center; justify-content: center;\n  margin-bottom: 26px; flex-shrink: 0;\n}\n#nilen-wycena .nw-success-left h2 {\n  font-family: var(--serif);\n  font-size: clamp(1.45rem, 2.8vw, 2rem);\n  font-weight: 400; color: var(--white);\n  letter-spacing: -.025em; line-height: 1.22;\n  margin-bottom: 16px;\n}\n#nilen-wycena .nw-success-left p {\n  font-size: .82rem;\n  color: rgba(255,252,246,.6);\n  line-height: 1.8; max-width: 270px;\n}\n#nilen-wycena .nw-success-deco {\n  position: absolute; bottom: -20px; right: -10px;\n  font-family: var(--serif); font-size: 11rem;\n  font-weight: 700; color: rgba(255,252,246,.04);\n  line-height: 1; user-select: none; pointer-events: none;\n  letter-spacing: -.06em;\n}\n#nilen-wycena .nw-next-steps {\n  display: flex; flex-direction: column; gap: 18px;\n  margin-bottom: 36px;\n}\n#nilen-wycena .nw-next-step {\n  display: flex; gap: 16px; align-items: flex-start;\n}\n#nilen-wycena .nw-step-num-box {\n  width: 26px; height: 26px; min-width: 26px;\n  border: 1px solid var(--amber);\n  display: flex; align-items: center; justify-content: center;\n  font-size: .6rem; font-weight: 700; color: var(--amber);\n  flex-shrink: 0;\n}\n#nilen-wycena .nw-next-step-txt {\n  font-size: .8rem; color: var(--text-m);\n  line-height: 1.6; padding-top: 3px;\n}\n#nilen-wycena .nw-success-actions {\n  display: flex; gap: 10px; flex-wrap: wrap;\n}\n#nilen-wycena .nw-sa-btn {\n  height: 50px; padding: 0 28px;\n  font-family: var(--sans); font-size: .7rem;\n  font-weight: 700; letter-spacing: .1em; text-transform: uppercase;\n  text-decoration: none; cursor: pointer;\n  display: inline-flex; align-items: center;\n  transition: background .18s, color .18s, border-color .18s;\n  border: 1px solid transparent;\n}\n#nilen-wycena .nw-sa-btn--green {\n  background: var(--green); color: var(--white); border-color: var(--green);\n}\n#nilen-wycena .nw-sa-btn--green:hover {\n  background: var(--amber); border-color: var(--amber); color: var(--white);\n  text-decoration: none;\n}\n#nilen-wycena .nw-sa-btn--outline {\n  background: transparent; color: var(--green);\n  border-color: rgba(63,96,75,.3);\n}\n#nilen-wycena .nw-sa-btn--outline:hover {\n  background: var(--cream); text-decoration: none;\n}\n\n\/* \u2500\u2500 RESPONSYWNO\u015a\u0106 \u2500\u2500 *\/\n@media (max-width: 800px) {\n  #nilen-wycena .nw-slide.active,\n  #nilen-wycena .nw-success.active {\n    grid-template-columns: 1fr;\n  }\n  #nilen-wycena .nw-left { min-height: 190px; }\n  #nilen-wycena .nw-left-inner { padding: 34px 26px 60px; }\n  #nilen-wycena .nw-left h2 { font-size: 1.35rem; }\n  #nilen-wycena .nw-benefits { display: none; }\n  #nilen-wycena .nw-step-deco { font-size: 7rem; bottom: -10px; right: -4px; }\n  #nilen-wycena .nw-back-btn { bottom: 18px; left: 26px; }\n  #nilen-wycena .nw-sum-mini { display: none; }\n  #nilen-wycena .nw-right-inner { padding: 36px 26px; }\n  #nilen-wycena .nw-rooms { grid-template-columns: 1fr; }\n  #nilen-wycena .nw-form-grid { grid-template-columns: 1fr; }\n  #nilen-wycena .nw-success-left { min-height: 200px; padding: 34px 26px; }\n  #nilen-wycena .nw-success-right { padding: 36px 26px; }\n  #nilen-wycena .nw-next-btn { width: 100%; justify-content: center; }\n  #nilen-wycena .nw-sa-btn { flex: 1; justify-content: center; }\n  #nilen-wycena .nw-opts--sm .nw-opt { padding: 13px 14px; }\n}\n@media (max-width: 440px) {\n  #nilen-wycena .nw-area-exact { flex-direction: column; align-items: flex-start; }\n  #nilen-wycena .nw-right-inner { padding: 28px 20px; }\n  #nilen-wycena .nw-left-inner { padding: 28px 20px 56px; }\n  #nilen-wycena .nw-success-left { padding: 28px 20px; }\n  #nilen-wycena .nw-success-right { padding: 28px 20px; }\n}\n\/* iOS: zapobiega auto-zoom przy focusie na input < 16px *\/\n@media (max-width: 800px) {\n  #nilen-wycena input, #nilen-wycena select, #nilen-wycena textarea {\n    font-size: 16px !important;\n  }\n}\n<\/style>\t\t<div class=\"elementor-element elementor-element-732a852 elementor-widget elementor-widget-spacer\" data-id=\"732a852\" data-element_type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8515e78 elementor-widget elementor-widget-html\" data-id=\"8515e78\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<meta charset=\"UTF-8\">\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=PT+Serif:ital,wght@0,400;0,700;1,400&family=Montserrat:wght@300;400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<style>\n\n\/* \u2500\u2500 HERO SEO \u2500\u2500 *\/\n#nilen-hero {\n  --green:       #3F604B;\n  --green-dark:  #2A4032;\n  --amber:       #BA6B27;\n  --amber-bg:    #F4E6D6;\n  --cream-light: #F6F1E8;\n  --cream-mid:   #EDE8DC;\n  --white:       #FFFCF6;\n  --text:        #26322A;\n  --text-m:      #49604F;\n  --text-l:      #74806F;\n  --serif: \"PT Serif\", Georgia, serif;\n  --sans:  \"Montserrat\", system-ui, sans-serif;\n  font-family: var(--sans);\n  color: var(--text);\n  -webkit-font-smoothing: antialiased;\n  width: 100%;\n}\n#nilen-hero *, #nilen-hero *::before, #nilen-hero *::after {\n  box-sizing: border-box; margin: 0; padding: 0;\n}\n#nilen-hero .nh-hero {\n  background: var(--cream-light);\n  padding: 64px 48px 52px;\n  text-align: center;\n  border-bottom: 1px solid rgba(63,96,75,.12);\n}\n#nilen-hero .nh-label {\n  font-size: .58rem; font-weight: 700;\n  letter-spacing: .22em; text-transform: uppercase;\n  color: var(--amber);\n  margin-bottom: 18px;\n}\n#nilen-hero h1 {\n  font-family: var(--serif);\n  font-size: clamp(1.9rem, 4vw, 3rem);\n  font-weight: 400;\n  color: var(--green-dark);\n  letter-spacing: -.03em;\n  line-height: 1.18;\n  margin-bottom: 18px;\n}\n#nilen-hero .nh-sub {\n  font-size: .88rem;\n  color: var(--text-m);\n  line-height: 1.85;\n  max-width: 560px;\n  margin: 0 auto 40px;\n}\n#nilen-hero .nh-stats {\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  gap: 0;\n  max-width: 700px;\n  margin: 0 auto;\n}\n#nilen-hero .nh-stat {\n  padding: 0 36px;\n  border-right: 1px solid rgba(63,96,75,.18);\n  flex: 1;\n}\n#nilen-hero .nh-stat:first-child { padding-left: 0; }\n#nilen-hero .nh-stat:last-child  { border-right: none; padding-right: 0; }\n#nilen-hero .nh-stat-num {\n  font-family: var(--serif);\n  font-size: 1.45rem; font-weight: 400;\n  color: var(--green-dark);\n  letter-spacing: -.02em;\n  line-height: 1;\n  margin-bottom: 6px;\n}\n#nilen-hero .nh-stat-num span { color: var(--amber); }\n#nilen-hero .nh-stat-label {\n  font-size: .63rem; font-weight: 400;\n  color: var(--text-l);\n  line-height: 1.5;\n}\n#nilen-hero .nh-seo {\n  background: var(--cream-mid);\n  padding: 14px 48px;\n  text-align: center;\n  border-bottom: 1px solid rgba(63,96,75,.1);\n}\n#nilen-hero .nh-seo-label {\n  font-size: .62rem;\n  color: var(--text-l);\n  display: inline;\n}\n#nilen-hero .nh-seo-tags {\n  display: inline;\n  font-size: .62rem;\n  color: var(--text-l);\n}\n#nilen-hero .nh-seo-tags a {\n  color: var(--text-l);\n  text-decoration: none;\n}\n#nilen-hero .nh-seo-tags a:hover { color: var(--amber); }\n@media (max-width: 800px) {\n  #nilen-hero .nh-hero { padding: 40px 24px 36px; }\n  #nilen-hero .nh-stats { flex-direction: column; gap: 18px; }\n  #nilen-hero .nh-stat { border-right: none; border-bottom: 1px solid rgba(63,96,75,.12); padding: 0 0 18px; width: 100%; text-align: center; }\n  #nilen-hero .nh-stat:last-child { border-bottom: none; padding-bottom: 0; }\n  #nilen-hero .nh-stat:first-child { padding-left: 0; }\n  #nilen-hero .nh-seo { padding: 12px 24px; }\n}\n\n#nilen-below *, #nilen-below *::before, #nilen-below *::after {\n  box-sizing: border-box; margin: 0; padding: 0;\n}\n#nilen-below {\n  --green:       #3F604B;\n  --green-dark:  #2A4032;\n  --amber:       #BA6B27;\n  --amber-bg:    #F4E6D6;\n  --cream-light: #F6F1E8;\n  --white:       #FFFCF6;\n  --text:        #26322A;\n  --text-m:      #49604F;\n  --text-l:      #74806F;\n  --serif: \"PT Serif\", Georgia, serif;\n  --sans:  \"Montserrat\", system-ui, sans-serif;\n  font-family: var(--sans);\n  font-size: 15px;\n  color: var(--text);\n  line-height: 1.6;\n  -webkit-font-smoothing: antialiased;\n  width: 100%;\n}\n\n\/* \u2500\u2500 JAK DZIA\u0141A \u2500\u2500 *\/\n#nilen-below .nwb-how {\n  background: var(--cream-light);\n  padding: 64px 48px;\n  border-top: 3px solid var(--amber);\n}\n#nilen-below .nwb-label {\n  font-size: .58rem; font-weight: 700;\n  letter-spacing: .2em; text-transform: uppercase;\n  color: var(--text-l); margin-bottom: 12px;\n  display: flex; align-items: center; gap: 10px;\n}\n#nilen-below .nwb-label::before {\n  content: \"\"; display: inline-block;\n  width: 20px; height: 1px; background: var(--amber); flex-shrink: 0;\n}\n#nilen-below .nwb-title {\n  font-family: var(--serif);\n  font-size: clamp(1.5rem, 2.8vw, 2.1rem);\n  font-weight: 400; color: var(--green-dark);\n  letter-spacing: -.025em; line-height: 1.2;\n  margin-bottom: 16px;\n}\n#nilen-below .nwb-desc {\n  font-size: .85rem; color: var(--text-m);\n  line-height: 1.85; max-width: 580px;\n  margin-bottom: 48px;\n}\n#nilen-below .nwb-steps {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 24px;\n}\n#nilen-below .nwb-step {\n  background: var(--white);\n  border: 1px solid rgba(63,96,75,.13);\n  padding: 28px 24px;\n  position: relative;\n}\n#nilen-below .nwb-step-accent {\n  position: absolute; top: 0; left: 0;\n  width: 3px; height: 40px;\n  background: var(--amber);\n}\n#nilen-below .nwb-step-num {\n  font-family: var(--serif);\n  font-size: 2.8rem; font-weight: 700;\n  color: rgba(186,107,39,.15);\n  line-height: 1; margin-bottom: 16px;\n  letter-spacing: -.04em;\n}\n#nilen-below .nwb-step-title {\n  font-size: .82rem; font-weight: 700;\n  color: var(--green-dark);\n  margin-bottom: 8px;\n}\n#nilen-below .nwb-step-text {\n  font-size: .78rem; color: var(--text-m);\n  line-height: 1.75;\n}\n\n\/* \u2500\u2500 POD KLUCZ \u2500\u2500 *\/\n#nilen-below .nwb-turnkey {\n  background: var(--green);\n  padding: 64px 48px;\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 56px;\n  align-items: center;\n}\n#nilen-below .nwb-tk-label {\n  font-size: .58rem; font-weight: 700;\n  letter-spacing: .2em; text-transform: uppercase;\n  color: rgba(255,252,246,.4);\n  display: flex; align-items: center; gap: 10px;\n  margin-bottom: 12px;\n}\n#nilen-below .nwb-tk-label::before {\n  content: \"\"; display: inline-block;\n  width: 20px; height: 1px; background: var(--amber); flex-shrink: 0;\n}\n#nilen-below .nwb-tk-title {\n  font-family: var(--serif);\n  font-size: clamp(1.4rem, 2.5vw, 1.9rem);\n  font-weight: 400; color: var(--white);\n  letter-spacing: -.025em; line-height: 1.22;\n  margin-bottom: 16px;\n}\n#nilen-below .nwb-tk-desc {\n  font-size: .82rem;\n  color: rgba(255,252,246,.6);\n  line-height: 1.85;\n  margin-bottom: 28px;\n}\n#nilen-below .nwb-tk-btn {\n  display: inline-flex; align-items: center; gap: 9px;\n  height: 50px; padding: 0 36px;\n  background: var(--amber); color: var(--white);\n  border: none; cursor: pointer;\n  font-family: var(--sans);\n  font-size: .7rem; font-weight: 700;\n  letter-spacing: .1em; text-transform: uppercase;\n  text-decoration: none;\n  transition: background .18s;\n}\n#nilen-below .nwb-tk-btn:hover { background: #9A5720; text-decoration: none; }\n#nilen-below .nwb-benefits {\n  display: flex; flex-direction: column;\n}\n#nilen-below .nwb-benefit {\n  display: flex; gap: 16px; align-items: flex-start;\n  padding: 16px 0;\n  border-bottom: 1px solid rgba(255,252,246,.08);\n}\n#nilen-below .nwb-benefit:first-child {\n  border-top: 1px solid rgba(255,252,246,.08);\n}\n#nilen-below .nwb-benefit-icon {\n  width: 22px; height: 22px; min-width: 22px;\n  border: 1px solid rgba(186,107,39,.6);\n  display: flex; align-items: center; justify-content: center;\n  font-size: .65rem; color: var(--amber);\n  flex-shrink: 0; margin-top: 1px; font-weight: 700;\n}\n#nilen-below .nwb-benefit-title {\n  font-size: .8rem; font-weight: 600;\n  color: var(--white); margin-bottom: 2px;\n}\n#nilen-below .nwb-benefit-sub {\n  font-size: .72rem;\n  color: rgba(255,252,246,.5);\n  line-height: 1.6;\n}\n\n\/* \u2500\u2500 STATYSTYKI \u2500\u2500 *\/\n#nilen-below .nwb-stats {\n  background: var(--green-dark);\n  padding: 36px 48px;\n  display: grid;\n  grid-template-columns: repeat(4, 1fr);\n  gap: 0;\n}\n#nilen-below .nwb-stat {\n  text-align: center;\n  padding: 12px 24px;\n  border-right: 1px solid rgba(255,252,246,.1);\n}\n#nilen-below .nwb-stat:last-child { border-right: none; }\n#nilen-below .nwb-stat-num {\n  font-family: var(--serif);\n  font-size: 2rem; font-weight: 700;\n  color: var(--white);\n  line-height: 1; margin-bottom: 6px;\n  letter-spacing: -.03em;\n}\n#nilen-below .nwb-stat-num span {\n  color: var(--amber);\n}\n#nilen-below .nwb-stat-label {\n  font-size: .68rem; font-weight: 500;\n  letter-spacing: .06em;\n  color: rgba(255,252,246,.45);\n  text-transform: uppercase;\n}\n\n\/* \u2500\u2500 FAQ \u2500\u2500 *\/\n#nilen-below .nwb-faq {\n  background: var(--cream-light);\n  padding: 64px 48px;\n  border-top: 1px solid rgba(63,96,75,.1);\n}\n#nilen-below .nwb-faq-grid {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 2px;\n  margin-top: 40px;\n}\n#nilen-below .nwb-faq-item {\n  background: var(--white);\n  padding: 28px 28px;\n  border: 1px solid rgba(63,96,75,.1);\n  cursor: pointer;\n  transition: border-color .18s;\n}\n#nilen-below .nwb-faq-item:hover { border-color: rgba(186,107,39,.4); }\n#nilen-below .nwb-faq-q {\n  font-size: .84rem; font-weight: 700;\n  color: var(--green-dark);\n  display: flex; justify-content: space-between;\n  align-items: flex-start; gap: 16px;\n  margin-bottom: 0;\n}\n#nilen-below .nwb-faq-icon {\n  width: 20px; height: 20px; min-width: 20px;\n  border: 1px solid rgba(186,107,39,.5);\n  display: flex; align-items: center; justify-content: center;\n  color: var(--amber); font-size: .75rem; font-weight: 700;\n  flex-shrink: 0; margin-top: 1px;\n  transition: transform .2s, background .18s;\n}\n#nilen-below .nwb-faq-item.open .nwb-faq-icon {\n  background: var(--amber); color: var(--white);\n  transform: rotate(45deg);\n}\n#nilen-below .nwb-faq-a {\n  display: none;\n  font-size: .78rem; color: var(--text-m);\n  line-height: 1.8;\n  margin-top: 14px;\n  padding-top: 14px;\n  border-top: 1px solid rgba(63,96,75,.08);\n}\n#nilen-below .nwb-faq-item.open .nwb-faq-a { display: block; }\n\n\/* \u2500\u2500 ZDJ\u0118CIE POD KLUCZ \u2500\u2500 *\/\n#nilen-below .nwb-tk-photo {\n  position: relative;\n  flex-shrink: 0;\n}\n#nilen-below .nwb-tk-photo img {\n  width: 100%;\n  height: 520px;\n  object-fit: cover;\n  border-radius: 8px 140px 8px 8px;\n  display: block;\n}\n\n\/* \u2500\u2500 RESPONSYWNO\u015a\u0106 \u2500\u2500 *\/\n@media (max-width: 800px) {\n  #nilen-below .nwb-how { padding: 40px 24px; }\n  #nilen-below .nwb-steps { grid-template-columns: 1fr; }\n  #nilen-below .nwb-stats { grid-template-columns: repeat(2, 1fr); padding: 28px 24px; }\n  #nilen-below .nwb-stat { border-right: none; border-bottom: 1px solid rgba(255,252,246,.1); }\n  #nilen-below .nwb-turnkey { grid-template-columns: 1fr; padding: 40px 24px; gap: 36px; }\n  #nilen-below .nwb-tk-photo img { height: 280px; border-radius: 8px 80px 8px 8px; }\n  #nilen-below .nwb-faq { padding: 40px 24px; }\n  #nilen-below .nwb-faq-grid { grid-template-columns: 1fr; }\n}\n<\/style>\n\n<div id=\"nilen-hero\">\n\n  <!-- HERO H1 + STATS -->\n  <div class=\"nh-hero\">\n    <div class=\"nh-label\">Nilen \u00b7 Krakow \u00b7 Prices 2026<\/div>\n    <h1>Renovation cost calculator<br\/> and finishing of the apartment<\/h1>\n    <p class=\"nh-sub\">\n  Calculate how much it really costs to finish your apartment in Krakow.\n  With materials, labor, and costs you won't find in other calculators.\n    <\/p>\n    \n\n  <!-- SEO TAGS -->\n  <div class=\"nh-seo\">\n    <span class=\"nh-seo-label\">Here you will find answers to your questions:<\/span>\n <span class=\"nh-seo-tags\">\nhow much does it cost to renovate an apartment in 2026\n \u00b7 turnkey finish calculator\n \u00b7 renovation cost per m\u00b2 Krakow\n \u00b7 turnkey finishing of the apartment\n \u00b7 renovation company Krakow\n<\/span> \n  <\/div>\n\n<\/div>\n\n<div id=\"nilen-below\">\n\n  <!-- JAK DZIA\u0141A KALKULATOR -->\n  <div class=\"nwb-how\">\n    <div class=\"nwb-label\">Valuation calculator<\/div>\n    <h2 class=\"nwb-title\">How does the finishing calculator work?<\/h2>\n    <p class=\"nwb-desc\">\n  The calculator is based on real costs from over 200 apartments we have completed in Krakow.\n  These aren't random ranges. These are data from actual cost estimates, taking into account the current market.\n materials and labor. It takes approximately 2 minutes to complete.  \n    <\/p>\n    <div class=\"nwb-steps\">\n      <div class=\"nwb-step\">\n        <div class=\"nwb-step-accent\"><\/div>\n        <div class=\"nwb-step-num\">01<\/div>\n        <div class=\"nwb-step-title\">Provide apartment details<\/div>\n        <p class=\"nwb-step-text\">Square footage, property type (new construction or secondary market), finishing standard and number of rooms.<\/p>\n      <\/div>\n      <div class=\"nwb-step\">\n        <div class=\"nwb-step-accent\"><\/div>\n        <div class=\"nwb-step-num\">02<\/div>\n        <div class=\"nwb-step-title\">Calculation in 2 minutes<\/div>\n        <p class=\"nwb-step-text\">Based on your answers, the system calculates an approximate cost estimate for Nilen's finishing work. The result takes into account the apartment's square footage, standard, and layout. <\/p>\n      <\/div>\n      <div class=\"nwb-step\">\n        <div class=\"nwb-step-accent\"><\/div>\n        <div class=\"nwb-step-num\">03<\/div>\n        <div class=\"nwb-step-title\">Results straight to your email<\/div>\n        <p class=\"nwb-step-text\">Detailed price ranges with a comparison of options are sent to your email address.<\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- STATYSTYKI -->\n  <div class=\"nwb-stats\">\n    <div class=\"nwb-stat\">\n      <div class=\"nwb-stat-num\"><span>200+<\/span><\/div>\n      <div class=\"nwb-stat-label\">Finished apartments<\/div>\n    <\/div>\n    <div class=\"nwb-stat\">\n      <div class=\"nwb-stat-num\">5 <span>+<\/span><\/div>\n      <div class=\"nwb-stat-label\">Years of experience<\/div>\n    <\/div>\n    <div class=\"nwb-stat\">\n      <div class=\"nwb-stat-num\">100 <span>%<\/span><\/div>\n      <div class=\"nwb-stat-label\">Turnkey implementation<\/div>\n    <\/div>\n    <div class=\"nwb-stat\">\n      <div class=\"nwb-stat-num\" style=\"font-size:1.3rem;padding-top:6px\">Krakow <span style=\"font-size:1.3rem\">and surrounding areas<\/span><\/div>\n      <div class=\"nwb-stat-label\">Area of \u200b\u200boperation<\/div>\n    <\/div>\n  <\/div>\n\n  \n\n  <!-- FAQ -->\n<div class=\"nwb-faq\">\n  <div class=\"nwb-label\">Frequently asked questions<\/div>\n\n  <h2 class=\"nwb-title\">\n  Frequently asked questions about the finishing cost calculator\n  <\/h2>\n\n  <div class=\"nwb-faq-grid\">\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n  Is the calculator result a binding offer?\n <span class=\"nwb-faq-icon\">+<\/span>\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  No. The calculator provides an approximate budget and possible cost range.\n finishing of the apartment. The result is based on the given square footage,\n standard and interior layout as well as data from similar Nilen implementations.\n We prepare a detailed quote after consultation and analysis of the apartment's floor plan.\n and determining the exact scope of work.  \n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n  How much does it cost to finish an apartment in Krakow?\n <span class=\"nwb-faq-icon\">+<\/span>\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  The cost of finishing the apartment depends primarily on the square footage and condition.\n property, selected standard, number of bathrooms, type of kitchen\n and the scope of the project. The calculator takes this information into account and\n based on which individual, indicative ranges for the service are determined\n turnkey finishing in Krakow. \n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n  What does the turnkey finishing calculation include?\n <span class=\"nwb-faq-icon\">+<\/span>\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  The calculation includes the approximate cost of materials, labor,\n coordination of teams and deliveries, quality control, cleaning after completion\n works and guarantees for the work performed. If you select\n interior design, its estimated cost will also be included\n in the submitted calculation. \n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n How long does it take to finish an apartment? +\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  The implementation time depends on the size, standard and scope of work.\n Finishing an apartment with an area of \u200b\u200b50\u201370 m\u00b2 usually takes about\n 10\u201314 weeks from commencement of work. Larger apartments, premium projects\n and aftermarket repairs may require more time. Accurate\n We establish a schedule before starting the implementation.  \n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n  Why are the aftermarket price ranges wider?\n <span class=\"nwb-faq-icon\">+<\/span>\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  In a secondary market apartment, the final cost depends, among other things, on:\n on the condition of the electrical and water installations, the scope\n demolitions, condition of walls and floors and preparatory work.\n We can prepare a more accurate quote after analyzing the plan and free of charge\n on-site inspection.\n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n  Do you carry out finishing works outside of Krakow?\n <span class=\"nwb-faq-icon\">+<\/span>\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  We operate primarily in Krakow and surrounding towns,\n usually up to about 30 km from the city center. In the case of larger projects\n we can individually discuss the possibility of finishing the apartment\n in a further location. \n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n When and how will I receive the calculation result? +\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  You will receive a preliminary calculation at the email address you provided, usually within\n a few minutes after submitting the form. In the message you will find\n indicative budget, possible price range, summary of selected\n parameters and information about what the comprehensive Nilen service includes.\n If the message does not appear in your inbox, check your Spam folder. \n      <\/div>\n    <\/div>\n\n    <div class=\"nwb-faq-item\" onclick=\"nwbFaq(this)\">\n      <div class=\"nwb-faq-q\">\n  Do I need to schedule a consultation after receiving the estimate?\n <span class=\"nwb-faq-icon\">+<\/span>\n      <\/div>\n\n      <div class=\"nwb-faq-a\">\n  No. The calculation is free and there is no obligation to use it.\n from Nilen services. If you would like to discuss the result and receive a more detailed\n quote, you can voluntarily arrange a free consultation. If\n If you select this option in the form, our consultant will contact you\n with you within 24 business hours.   \n      <\/div>\n    <\/div>\n\n  <\/div>\n<\/div>\n\n<script>\nfunction nwbFaq(el) {\n  el.classList.toggle('open');\n}\n<\/script><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-08efae3 elementor-widget elementor-widget-spacer\" data-id=\"08efae3\" data-element_type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<!-- dce invisible element d0d9362 --><style>\n    .title{\n        max-width: calc(100% - 90px);\n    }\n<\/style>\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a16c29e e-flex e-con-boxed e-con e-parent\" data-id=\"a16c29e\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0421491 elementor-widget elementor-widget-html\" data-id=\"0421491\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>document.addEventListener('DOMContentLoaded', function() {\r\n    console.log('Skrypt zosta\u0142 za\u0142adowany');\r\n\r\n    function updateAccordionItems() {\r\n        var accordionItems = document.querySelectorAll('.elementor-accordion-item');\r\n        if (accordionItems.length > 0) {\r\n            console.log('Znaleziono ' + accordionItems.length + ' element\u00f3w akordeonu');\r\n            accordionItems.forEach(function(accordionItem, index) {\r\n                var accordionTitle = accordionItem.querySelector('.elementor-tab-title');\r\n                var accordionContent = accordionItem.querySelector('.elementor-tab-content');\r\n\r\n                console.log('Przetwarzanie elementu ' + index);\r\n                console.log('Przed: ', accordionTitle.classList.contains('elementor-active'), accordionContent.style.display);\r\n\r\n                accordionTitle.classList.remove('elementor-active');\r\n                accordionContent.style.display = 'none';\r\n\r\n                console.log('Po: ', accordionTitle.classList.contains('elementor-active'), accordionContent.style.display);\r\n            });\r\n            console.log('Wszystkie elementy akordeonu zosta\u0142y zaktualizowane');\r\n        } else {\r\n            console.log('Nie znaleziono \u017cadnych element\u00f3w akordeonu');\r\n        }\r\n    }\r\n\r\n    \/\/ Wykonaj aktualizacj\u0119 od razu i powtarzaj co 500ms przez 5 sekund\r\n    updateAccordionItems();\r\n    var interval = setInterval(updateAccordionItems, 500);\r\n    setTimeout(function() {\r\n        clearInterval(interval);\r\n    }, 5000); \/\/ Zatrzymaj po 5 sekundach\r\n});\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Welcome to Nilen Concept Fill out the form \u2193 01 Step 1 of 5 Find out how much your apartment could cost to finish Our calculator uses pricing data from more than 200 completed projects. Answer a few questions and receive an initial cost estimate by email in just a few minutes. What will you [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":40877,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-54262","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Apartment renovation and finishing cost calculator 2026 | Nilen<\/title>\n<meta name=\"description\" content=\"Calculate the approximate cost of renovating and finishing an apartment in Krakow. Select the square footage and standard, and you&#039;ll receive the estimate via email.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nilen.pl\/en\/nilen-calculator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apartment renovation and finishing cost calculator 2026 | Nilen\" \/>\n<meta property=\"og:description\" content=\"Calculate the approximate cost of renovating and finishing an apartment in Krakow. Select the square footage and standard, and you&#039;ll receive the estimate via email.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nilen.pl\/en\/nilen-calculator\/\" \/>\n<meta property=\"og:site_name\" content=\"Nilen\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/nilenconcept\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-22T13:56:04+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/nilen.pl\/wp-content\/uploads\/2023\/07\/25.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1536\" \/>\n\t<meta property=\"og:image:height\" content=\"864\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/\",\"url\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/\",\"name\":\"Apartment renovation and finishing cost calculator 2026 | Nilen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/nilen.pl\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/25.webp\",\"datePublished\":\"2026-07-09T11:43:58+00:00\",\"dateModified\":\"2026-07-22T13:56:04+00:00\",\"description\":\"Calculate the approximate cost of renovating and finishing an apartment in Krakow. Select the square footage and standard, and you'll receive the estimate via email.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/#primaryimage\",\"url\":\"https:\\\/\\\/nilen.pl\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/25.webp\",\"contentUrl\":\"https:\\\/\\\/nilen.pl\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/25.webp\",\"width\":1536,\"height\":864},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/nilen-calculator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\\\/\\\/nilen.pl\\\/en\\\/home-page\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/nilen.pl\\\/en\\\/\",\"name\":\"Nilen Concept\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/#organization\"},\"alternateName\":\"Nilen\",\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/#organization\",\"name\":\"Nilen Concept\",\"alternateName\":\"Nilen\",\"url\":\"https:\\\/\\\/nilen.pl\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/nilen.pl\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/Stopki-NILEN-6.png\",\"contentUrl\":\"https:\\\/\\\/nilen.pl\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/Stopki-NILEN-6.png\",\"width\":2048,\"height\":2048,\"caption\":\"Nilen Concept\"},\"image\":{\"@id\":\"https:\\\/\\\/nilen.pl\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/nilenconcept\",\"https:\\\/\\\/www.instagram.com\\\/nilen_concept\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCyslp6cP9_ULJSGCe9Gqu2w\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Apartment renovation and finishing cost calculator 2026 | Nilen","description":"Calculate the approximate cost of renovating and finishing an apartment in Krakow. Select the square footage and standard, and you'll receive the estimate via email.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/nilen.pl\/en\/nilen-calculator\/","og_locale":"en_US","og_type":"article","og_title":"Apartment renovation and finishing cost calculator 2026 | Nilen","og_description":"Calculate the approximate cost of renovating and finishing an apartment in Krakow. Select the square footage and standard, and you'll receive the estimate via email.","og_url":"https:\/\/nilen.pl\/en\/nilen-calculator\/","og_site_name":"Nilen","article_publisher":"https:\/\/www.facebook.com\/nilenconcept","article_modified_time":"2026-07-22T13:56:04+00:00","og_image":[{"width":1536,"height":864,"url":"https:\/\/nilen.pl\/wp-content\/uploads\/2023\/07\/25.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/nilen.pl\/en\/nilen-calculator\/","url":"https:\/\/nilen.pl\/en\/nilen-calculator\/","name":"Apartment renovation and finishing cost calculator 2026 | Nilen","isPartOf":{"@id":"https:\/\/nilen.pl\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/nilen.pl\/en\/nilen-calculator\/#primaryimage"},"image":{"@id":"https:\/\/nilen.pl\/en\/nilen-calculator\/#primaryimage"},"thumbnailUrl":"https:\/\/nilen.pl\/wp-content\/uploads\/2023\/07\/25.webp","datePublished":"2026-07-09T11:43:58+00:00","dateModified":"2026-07-22T13:56:04+00:00","description":"Calculate the approximate cost of renovating and finishing an apartment in Krakow. Select the square footage and standard, and you'll receive the estimate via email.","breadcrumb":{"@id":"https:\/\/nilen.pl\/en\/nilen-calculator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nilen.pl\/en\/nilen-calculator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nilen.pl\/en\/nilen-calculator\/#primaryimage","url":"https:\/\/nilen.pl\/wp-content\/uploads\/2023\/07\/25.webp","contentUrl":"https:\/\/nilen.pl\/wp-content\/uploads\/2023\/07\/25.webp","width":1536,"height":864},{"@type":"BreadcrumbList","@id":"https:\/\/nilen.pl\/en\/nilen-calculator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/nilen.pl\/en\/home-page\/"},{"@type":"ListItem","position":2,"name":"Calculator"}]},{"@type":"WebSite","@id":"https:\/\/nilen.pl\/en\/#website","url":"https:\/\/nilen.pl\/en\/","name":"Nilen Concept","description":"","publisher":{"@id":"https:\/\/nilen.pl\/en\/#organization"},"alternateName":"Nilen","inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/nilen.pl\/en\/#organization","name":"Nilen Concept","alternateName":"Nilen","url":"https:\/\/nilen.pl\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nilen.pl\/en\/#\/schema\/logo\/image\/","url":"https:\/\/nilen.pl\/wp-content\/uploads\/2025\/07\/Stopki-NILEN-6.png","contentUrl":"https:\/\/nilen.pl\/wp-content\/uploads\/2025\/07\/Stopki-NILEN-6.png","width":2048,"height":2048,"caption":"Nilen Concept"},"image":{"@id":"https:\/\/nilen.pl\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/nilenconcept","https:\/\/www.instagram.com\/nilen_concept\/","https:\/\/www.youtube.com\/channel\/UCyslp6cP9_ULJSGCe9Gqu2w"]}]}},"_links":{"self":[{"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/pages\/54262","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/comments?post=54262"}],"version-history":[{"count":12,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/pages\/54262\/revisions"}],"predecessor-version":[{"id":54327,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/pages\/54262\/revisions\/54327"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/media\/40877"}],"wp:attachment":[{"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/media?parent=54262"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}