{"id":54262,"date":"2026-07-09T13:43:58","date_gmt":"2026-07-09T11:43:58","guid":{"rendered":"https:\/\/nilen.pl\/nilen-calculator\/"},"modified":"2026-09-11T09:35:01","modified_gmt":"2026-09-11T07:35:01","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<div class=\"elementor-element elementor-element-ba99a41 e-con-full e-flex e-con e-child\" data-id=\"ba99a41\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9553514 elementor-widget elementor-widget-heading\" data-id=\"9553514\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Nilen \u00b7 Krakow \u00b7 Prices 2026<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e43635a elementor-widget elementor-widget-heading\" data-id=\"e43635a\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Renovation cost calculator<\/br> and finishing of an apartment or house in Krakow<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-eccc81e elementor-widget elementor-widget-text-editor\" data-id=\"eccc81e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p style=\"text-align: center;\">Calculate how much it really costs to finish your apartment or house in Krakow.<br\/>With materials, labor, and costs you won&#8217;t find in other calculators.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\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>This calculator is based on data from over 200 completed projects in <b>Krakow<\/b> . Answer the questions in 5 steps and receive a preliminary estimate via email. <\/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>\n<span class=\"nw-opt-sub\">Include the design, visualisations and technical documentation<\/span>\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=\"jan@przyklad.pl\" 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 consents<\/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 the processing of personal data <span class=\"nw-req\">*<\/span><\/strong><br\/> I consent to the processing of my personal data by Nilen sp. z o. o. for the purpose of preparing calculations, responding to inquiries, and contacting me regarding the offer (e-mail, phone). Without this consent, we cannot send the result or contact you. Required.   <\/span>\n            <\/label>\n            <label class=\"nw-consent\">\n              <input type=\"checkbox\" id=\"nwC2\">\n              <span><strong>Schedule a free consultation with me<\/strong>\n <em style=\"font-size:.68rem;color:var(--text-l)\">(optional)<\/em><br\/> I would like to talk to an advisor about the details and implementation options.<\/span>\n            <\/label>\n            <label class=\"nw-consent\">\n              <input type=\"checkbox\" id=\"nwC3\">\n              <span><strong>I want to receive the Nilen newsletter<\/strong>\n <em style=\"font-size:.68rem;color:var(--text-l)\">(optional)<\/em><br\/> Practical information about interior design and finishing. You can unsubscribe at any time. <\/span>\n            <\/label>\n          <\/div>\n\n          <p class=\"nw-rodo\">\n  * Required fields. Data administrator: Nilen, ul. Jana Zamoyskiego 63,\n 30-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  Send me a calculation \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  const payload = new FormData();\n  payload.append('action',    'nilen_wycena');\n  payload.append('lang',      (document.documentElement.lang || 'pl').split('-')[0].toLowerCase());\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\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\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 within a 20-kilometer radius. For larger projects,\nwe can individually discuss the possibility of interior finishing\nin 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>\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 Nilen \u00b7 Krakow \u00b7 Prices 2026 Renovation cost calculator and finishing of an apartment or house in Krakow Calculate how much it really costs to finish your apartment or house in Krakow.With materials, labor, and costs you won&#8217;t find in other calculators. 01 Step 1 of [&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.4 - 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-09-11T07:35:01+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-09-11T07:35:01+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\\\/\"},{\"@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-09-11T07:35:01+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-09-11T07:35:01+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\/"},{"@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":24,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/pages\/54262\/revisions"}],"predecessor-version":[{"id":55436,"href":"https:\/\/nilen.pl\/en\/wp-json\/wp\/v2\/pages\/54262\/revisions\/55436"}],"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}]}}