{"id":27,"date":"2026-08-04T21:31:58","date_gmt":"2026-08-04T21:31:58","guid":{"rendered":"https:\/\/spokofinanse.piotrluszczak.pl\/?page_id=27"},"modified":"2026-08-15T20:56:55","modified_gmt":"2026-08-15T20:56:55","slug":"mql","status":"publish","type":"page","link":"https:\/\/spokofinanse.piotrluszczak.pl\/?page_id=27","title":{"rendered":"mql"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"27\" class=\"elementor elementor-27\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2bbb2e9 e-con e-atomic-element e-flexbox-base e-6d164a6 \" data-id=\"2bbb2e9\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"2bbb2e9\">\n    \t\t<div class=\"elementor-element elementor-element-5d1bdb3 elementor-widget elementor-widget-html\" data-id=\"5d1bdb3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"pl\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<meta name=\"theme-color\" content=\"#F4F4F7\">\n<title>Wybierz termin konsultacji | Spoko Finanse<\/title>\n<meta name=\"description\" content=\"Kwalifikujesz si\u0119. Wybierz termin bezp\u0142atnej konsultacji IKE\/IKZE.\">\n<!-- noindex jest tu konieczny: regula URL-a w Meta policzy KAZDE wejscie\n     na ten adres, wiec strona nie moze byc znajdowana z wyszukiwarki. -->\n<meta name=\"robots\" content=\"noindex, nofollow\">\n<link rel=\"icon\" href=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='30' fill='%23FF6B00'\/%3E%3Ctext x='32' y='43' font-size='34' font-family='Arial' font-weight='bold' fill='white' text-anchor='middle'%3ES%3C\/text%3E%3C\/svg%3E\">\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=Inter:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\n\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\n     \u26a0\ufe0f PLIK GENEROWANY. NIE EDYTUJ GO R\u0118CZNIE.\n     Zmiany nano\u015b w `ankieta.zrodlo.html` (ankieta) albo w\n     `index.html` (tre\u015b\u0107 landinga), a potem uruchom:\n         python3 zbuduj.py\n     Ka\u017cde uruchomienie nadpisuje ten plik w ca\u0142o\u015bci.\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 -->\n\n<style>\n*{margin:0;padding:0;box-sizing:border-box}\nhtml{-webkit-text-size-adjust:100%}\nbody{\n  background:#F4F4F7;\n  min-height:100%;\n}\n<\/style>\n\n<style>\n.ankieta-root{\n  --bg:#F4F4F7;\n  --surface:#FFFFFF;\n  --ink:#15181D;\n  --ink-70:rgba(21,24,29,.7);\n  --ink-45:rgba(21,24,29,.45);\n  --pyt:#2C3A4B;              \/* granatowy nag\u0142\u00f3wek pytania ze screen\u00f3w *\/\n  --line:#E2E4E8;\n  --line-mocna:#D2D5DA;\n  --orange:#FF6B00;\n  --radius-karta:18px;\n  --radius-opcja:9px;\n  --cien:0 1px 3px rgba(21,24,29,.05),0 6px 20px rgba(21,24,29,.05);\n  --dur:200ms;\n  --ease:cubic-bezier(.22,.61,.36,1);\n\n  \/* 592 = 560 tre\u015bci + 2\u00d716 paddingu, czyli dok\u0142adnie tyle, ile dawa\u0142\n     uk\u0142ad `body{padding:20px 16px}` + `.wrap{max-width:560px}`.        *\/\n  max-width:592px;margin:0 auto;padding:20px 16px 64px;\n  display:flex;flex-direction:column;gap:18px;\n  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\n  color:var(--ink);line-height:1.5;text-align:left;\n  -webkit-font-smoothing:antialiased;\n}\n\/* \u26a0\ufe0f MUSI tu by\u0107. `display:flex` z klasy (0,1,0) bije `display:none`\n   z atrybutu [hidden] w arkuszu przegl\u0105darki (0,0,1), wi\u0119c bez tej\n   linijki `hidden` na ankiecie po prostu nie dzia\u0142a.                  *\/\n.ankieta-root[hidden]{display:none}\n\n\/* Landing ustawia h1,h2,h3 na font-weight:800 i letter-spacing:-.02em,\n   a section na padding:88px 0. Bez tego resetu ankieta dziedziczy\u0142aby\n   te warto\u015bci w wariancie inline i wygl\u0105da\u0142a inaczej ni\u017c w wariancie B. *\/\n.ankieta-root h1,.ankieta-root h2,.ankieta-root h3{\n  font-weight:700;letter-spacing:-.02em;line-height:1.25;\n}\n.ankieta-root section{padding:0;scroll-margin-top:12px}\n.ankieta-root p{margin:0}\n\n.ankieta-root .karta{\n  background:var(--surface);border-radius:var(--radius-karta);\n  box-shadow:var(--cien);padding:26px 24px;\n}\n\n\/* \u2500\u2500 Nag\u0142\u00f3wek \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ankieta-root .intro{text-align:center;padding:30px 24px}\n.ankieta-root .znak{\n  width:52px;height:52px;border-radius:50%;background:var(--orange);\n  color:#fff;font-weight:700;font-size:1.5rem;\n  display:flex;align-items:center;justify-content:center;\n  margin:0 auto 14px;\n}\n.ankieta-root .marka{color:var(--ink-45);font-size:1.02rem;font-weight:500;margin-bottom:14px}\n.ankieta-root .intro h1{\n  font-size:clamp(1.4rem,5.6vw,1.75rem);\n  line-height:1.25;margin-bottom:14px;\n}\n.ankieta-root .intro p{color:var(--ink-70);font-size:1.05rem}\n\/* Przy odmowie sprzeda\u017cowy nag\u0142\u00f3wek znika. Zostawiony krzycza\u0142by\n   \"Odzyskaj 3000 z\u0142\" tu\u017c nad zdaniem \"to nie dla Ciebie\" i podkopywa\u0142\n   uprzejmy ton odmowy.                                                *\/\n.ankieta-root .intro.zwiniete{padding:22px 24px}\n.ankieta-root .intro.zwiniete h1,.ankieta-root .intro.zwiniete .lead{display:none}\n.ankieta-root .intro.zwiniete .marka{margin-bottom:0}\n.ankieta-root .intro.zwiniete .znak{width:44px;height:44px;font-size:1.3rem;margin-bottom:10px}\n\n\/* \u2500\u2500 Pytanie \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ankieta-root .pytanie h2{\n  font-size:1.02rem;font-weight:700;color:var(--pyt);\n  line-height:1.35;letter-spacing:normal;margin-bottom:14px;\n}\n.ankieta-root .opcje{display:flex;flex-direction:column;gap:12px}\n\n\/* Opcja to <label> z ukrytym radiem w \u015brodku. Dzi\u0119ki temu dzia\u0142a\n   klawiatura i czytniki ekranu za darmo, bez dorabiania rol ARIA. *\/\n.ankieta-root .opcja{\n  display:flex;align-items:center;gap:14px;\n  background:var(--surface);border:1px solid var(--line);\n  border-radius:var(--radius-opcja);padding:16px 18px;\n  cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease);\n}\n.ankieta-root .opcja:hover{background:#FAFAFB}\n.ankieta-root .opcja input{position:absolute;opacity:0;width:0;height:0}\n.ankieta-root .opcja .tekst{flex:1;font-size:1.05rem;line-height:1.35}\n.ankieta-root .opcja .kolko{\n  flex-shrink:0;width:24px;height:24px;border-radius:50%;\n  border:2px solid var(--ink);background:transparent;\n  transition:background var(--dur) var(--ease);\n}\n\/* Stan zaznaczenia idzie przez klas\u0119 z JS, a NIE przez :has(input:checked).\n   Formularz \u0142apie zimny ruch z Meta, czyli te\u017c starsze webviews Androida,\n   gdzie :has() potrafi nie dzia\u0142a\u0107. Tam brak pod\u015bwietlenia wyboru by\u0142by\n   realnym problemem, nie kosmetyk\u0105.\n   \u26a0\ufe0f Przy zmianach CSS pami\u0119ta\u0107, \u017ce t\u0119 klas\u0119 nadaje JS. Raz ju\u017c si\u0119\n   rozjecha\u0142o: zmieniony CSS, zapomniany JS, wyb\u00f3r bez pod\u015bwietlenia,\n   a testy funkcjonalne tego nie widzia\u0142y.                              *\/\n.ankieta-root .opcja.wybrana{background:#F4F4F5;border-color:var(--line-mocna)}\n.ankieta-root .opcja.wybrana .kolko{background:var(--ink-45)}\n.ankieta-root .opcja:focus-within{outline:2px solid var(--pyt);outline-offset:2px}\n\n\/* Po odpowiedzi pytanie si\u0119 blokuje: cofanie si\u0119 i podmienianie\n   odpowiedzi jest wprost wykluczone w wymaganiach.               *\/\n.ankieta-root .pytanie.zamkniete .opcja{cursor:default;pointer-events:none}\n.ankieta-root .pytanie.zamkniete .opcja:not(.wybrana){opacity:.45}\n\n\/* Kolejne pytania wchodz\u0105 mi\u0119kko, zamiast wyskakiwa\u0107 *\/\n.ankieta-root .pytanie[hidden]{display:none}\n.ankieta-root .wchodzi{animation:ankieta-wejscie 420ms var(--ease) both}\n@keyframes ankieta-wejscie{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}\n\n\/* \u2500\u2500 Krok kontaktowy \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ankieta-root .lead-kontakt{color:var(--ink-70);font-size:.96rem;margin-bottom:18px;line-height:1.5}\n.ankieta-root #kalendarz-awaria{\n  padding:28px 22px;text-align:center;background:#F7F7F9;\n  border:1px solid var(--line);border-radius:12px;\n}\n.ankieta-root #kalendarz-awaria[hidden]{display:none}\n.ankieta-root #kalendarz-awaria p{color:var(--ink-70);margin-bottom:12px}\n.ankieta-root #kalendarz-awaria a{color:var(--ink);font-weight:700;font-size:1.1rem;text-decoration:none}\n.ankieta-root .pola{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}\n.ankieta-root .pole{display:flex;flex-direction:column;gap:6px}\n.ankieta-root .pole label{font-size:.9rem;font-weight:600;color:var(--pyt)}\n.ankieta-root .pole input{\n  font:inherit;font-size:1.02rem;color:var(--ink);\n  background:var(--surface);border:1px solid var(--line);\n  border-radius:var(--radius-opcja);padding:14px 16px;width:100%;\n  \/* 16px to prog, ponizej ktorego iOS Safari sam przybliza strone przy\n     wejsciu w pole. Zoom rozjezdza uklad i user musi go cofac recznie.  *\/\n  min-height:52px;\n  transition:border-color var(--dur) var(--ease);\n}\n.ankieta-root .pole input:focus{outline:none;border-color:var(--pyt);box-shadow:0 0 0 3px rgba(44,58,75,.1)}\n.ankieta-root .pole input.niepoprawne{border-color:#C2410C;background:#FFF7F4}\n.ankieta-root .pole .blad{font-size:.84rem;color:#C2410C;min-height:0}\n.ankieta-root .pole .blad:empty{display:none}\n\n.ankieta-root .zgoda{\n  display:flex;align-items:flex-start;gap:11px;\n  font-size:.86rem;color:var(--ink-70);line-height:1.5;\n  cursor:pointer;margin-bottom:18px;\n}\n.ankieta-root .zgoda input{\n  flex-shrink:0;width:20px;height:20px;margin-top:1px;\n  accent-color:var(--orange);cursor:pointer;\n}\n.ankieta-root .zgoda a{color:var(--ink-70)}\n\n.ankieta-root .wyslij{\n  font:inherit;font-weight:700;font-size:1.05rem;\n  background:var(--orange);color:#fff;border:0;\n  border-radius:999px;padding:17px 24px;width:100%;\n  min-height:54px;cursor:pointer;\n  box-shadow:0 8px 24px rgba(255,107,0,.24);\n  transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease);\n}\n.ankieta-root .wyslij:hover{transform:translateY(-1px)}\n.ankieta-root .wyslij:disabled{opacity:.55;cursor:default;transform:none}\n.ankieta-root .jak-przycisk{\n  display:block;text-align:center;text-decoration:none;\n  line-height:1.25;padding:18px 24px;\n}\n.ankieta-root .pod-przyciskiem{\n  margin-top:12px;font-size:.82rem;color:var(--ink-45);text-align:center;line-height:1.5;\n}\n\n\/* \u2500\u2500 Fina\u0142: ekran MQL + kalendarz \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ankieta-root .final[hidden],.ankieta-root .stop[hidden]{display:none}\n.ankieta-root .odznaka{\n  display:inline-block;background:rgba(255,107,3,.12);color:#C24E00;\n  font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;\n  padding:6px 12px;border-radius:999px;margin-bottom:14px;\n}\n.ankieta-root .final h2{\n  font-size:clamp(1.35rem,5.4vw,1.65rem);\n  line-height:1.2;margin-bottom:14px;\n}\n.ankieta-root .final>p{color:var(--ink-70);margin-bottom:14px}\n.ankieta-root .final>p:last-of-type{margin-bottom:22px;font-weight:500;color:var(--ink)}\n\n\/* Dwie zasady spotkania. Numery licznikiem CSS, \u017ceby nie wpisywa\u0107\n   ich na sztywno w tre\u015b\u0107 i nie rozjecha\u0107 przy edycji.              *\/\n.ankieta-root .zasady{list-style:none;counter-reset:zasada;margin-bottom:26px}\n.ankieta-root .zasady li{\n  counter-increment:zasada;position:relative;\n  padding:16px 18px 16px 54px;background:#F7F7F9;\n  border-radius:12px;border:1px solid var(--line);\n}\n.ankieta-root .zasady li+li{margin-top:10px}\n.ankieta-root .zasady li::before{\n  content:counter(zasada);position:absolute;left:16px;top:16px;\n  width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;\n  font-size:.85rem;font-weight:700;\n  display:flex;align-items:center;justify-content:center;\n}\n.ankieta-root .zasady h3{font-size:.98rem;font-weight:700;color:var(--pyt);margin-bottom:5px;line-height:1.3}\n.ankieta-root .zasady p{font-size:.9rem;color:var(--ink-70);line-height:1.5}\n\n\/* \u2500\u2500 Fina\u0142: odmowa \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ankieta-root .stop h2{font-size:1.2rem;font-weight:700;margin-bottom:12px;letter-spacing:-.01em}\n.ankieta-root .stop p{color:var(--ink-70);margin-bottom:14px}\n.ankieta-root .stop p:last-of-type{margin-bottom:0}\n.ankieta-root .stop .kontakt{\n  margin-top:20px;padding-top:18px;border-top:1px solid var(--line);\n  display:flex;flex-direction:column;gap:10px;\n}\n.ankieta-root .stop .kontakt a{\n  color:var(--ink);text-decoration:none;font-weight:600;font-size:1.02rem;\n}\n.ankieta-root .stop .kontakt a:hover{color:var(--orange)}\n\n\/* \u2500\u2500 Stopka \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.ankieta-root .stopka{\n  text-align:center;font-size:.78rem;color:var(--ink-45);\n  line-height:1.65;padding:0 8px;\n}\n.ankieta-root .stopka a{color:var(--ink-45)}\n\n@media(max-width:420px){\n  .ankieta-root{padding:16px 12px 48px}\n  .ankieta-root .karta{padding:22px 18px}\n  .ankieta-root .opcja{padding:15px 16px}\n  .ankieta-root .opcja .tekst{font-size:1.02rem}\n}\n@media(prefers-reduced-motion:reduce){\n  .ankieta-root .wchodzi{animation:none}\n  .ankieta-root .opcja{transition:none}\n}\n<\/style>\n\n<!-- \u26a0\ufe0f Blok generowany z ankieta.zrodlo.html przez zbuduj.py. Nie edytuj go tutaj, bo zniknie przy najbli\u017cszym przebudowaniu. -->\n<!-- Microsoft Clarity (snippet z clarity.microsoft.com, bez zmian) -->\n<script type=\"text\/javascript\">\n    (function(c,l,a,r,i,t,y){\n        c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};\n        t=l.createElement(r);t.async=1;t.src=\"https:\/\/www.clarity.ms\/tag\/\"+i;\n        y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);\n    })(window, document, \"clarity\", \"script\", \"xzg4sl5ucl\");\n<\/script>\n\n<!-- Meta Pixel (snippet z Events Managera, bez zmian poza ID) -->\n<script>\n!function(f,b,e,v,n,t,s)\n{if(f.fbq)return;n=f.fbq=function(){n.callMethod?\nn.callMethod.apply(n,arguments):n.queue.push(arguments)};\nif(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\nn.queue=[];t=b.createElement(e);t.async=!0;\nt.src=v;s=b.getElementsByTagName(e)[0];\ns.parentNode.insertBefore(t,s)}(window, document,'script',\n'https:\/\/connect.facebook.net\/en_US\/fbevents.js');\nfbq('init', '930502191234511');\nfbq('track', 'PageView');\n<\/script>\n<noscript><img height=\"1\" width=\"1\" style=\"display:none\"\nsrc=\"https:\/\/www.facebook.com\/tr?id=930502191234511&ev=PageView&noscript=1\"\n\/><\/noscript>\n\n<!-- Rezerwacja w Calendly: pixel na naszej domenie sam jej NIE zobaczy.\n     Kalendarz to iframe z domeny calendly.com, a skrypt strony nie ma prawa\n     zagl\u0105da\u0107 w tre\u015b\u0107 obcej ramki. Calendly wysy\u0142a o rezerwacji postMessage\n     do strony-rodzica i to jedyny moment, w kt\u00f3rym da si\u0119 j\u0105 tu z\u0142apa\u0107.\n     Na stronie bez kalendarza listener po prostu milczy. -->\n<script>\nwindow.addEventListener('message', function (e) {\n  \/* Sprawdzenie origin jest obowi\u0105zkowe: bez niego dowolna obca ramka\n     mog\u0142aby podrobi\u0107 konwersj\u0119 i zatru\u0107 optymalizacj\u0119 kampanii. *\/\n  if (e.origin !== 'https:\/\/calendly.com') return;\n  if (!e.data || e.data.event !== 'calendly.event_scheduled') return;\n  var wariant = (window.ANKIETA_KONFIG && window.ANKIETA_KONFIG.wariant) || 'landing';\n  \/* Custom, nie `Schedule`: standardowe `Schedule` raportuje pixel wpi\u0119ty\n     w samym Calendly. Dwa \u017ar\u00f3d\u0142a tego samego zdarzenia liczy\u0142yby podw\u00f3jnie. *\/\n  if (window.fbq) fbq('trackCustom', 'SchedulePostMessage', { content_name: wariant });\n  if (window.clarity) clarity('set', 'etap', 'zarezerwowal');\n});\n<\/script>\n<\/head>\n<body>\n\n<div class=\"ankieta-root\">\n\n  <div class=\"karta intro zwiniete\" id=\"ankieta-intro\">\n    <div class=\"znak\" aria-hidden=\"true\">S<\/div>\n    <p class=\"marka\">Spoko Finanse<\/p>\n  <\/div>\n\n<div class=\"karta final\" id=\"final\">\n  <span class=\"odznaka\">Kwalifikujesz si\u0119<\/span>\n  <h2>Zosta\u0142 ostatni krok<\/h2>\n  <p>Z Twoich odpowiedzi wynika, \u017ce IKZE ma w Twojej sytuacji sens i jest o czym rozmawia\u0107.<\/p>\n  <p>Na spotkaniu policzymy konkretnie, ile mo\u017cesz odzyska\u0107 z PIT w Twoim przypadku, i poka\u017cemy, jak to pouk\u0142ada\u0107. Wyjdziesz z rozmowy z liczbami, nawet je\u015bli ostatecznie zdecydujesz si\u0119 dzia\u0142a\u0107 na w\u0142asn\u0105 r\u0119k\u0119.<\/p>\n  <p>Wybierz termin z kalendarza poni\u017cej. Prosimy tylko o dwie rzeczy.<\/p>\n\n  <ol class=\"zasady\">\n    <li>\n      <h3>Je\u015bli rezerwujesz termin, przyjd\u017a na spotkanie<\/h3>\n      <p>Blokujesz godzin\u0119, w kt\u00f3rej mogliby\u015bmy porozmawia\u0107 z kim\u015b innym. Je\u015bli co\u015b Ci wypadnie, po prostu odwo\u0142aj. Link do odwo\u0142ania i prze\u0142o\u017cenia dostaniesz w mailu potwierdzaj\u0105cym.<\/p>\n    <\/li>\n    <li>\n      <h3>To rozmowa wideo, nie telefon<\/h3>\n      <p>Spotykamy si\u0119 na Google Meet i pokazujemy wyliczenia na ekranie, wi\u0119c przyda si\u0119 spokojne miejsce i chwila skupienia. Nie umawiaj jej na czas jazdy samochodem.<\/p>\n    <\/li>\n  <\/ol>\n\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\n   KALENDARZ CALENDLY, OSADZANY Z KODU (zmiana 2026-08-15).\n\n   Do 2026-08-14 stal tu oryginalny snippet z `data-url`, ktory\n   inicjowal sie sam. Piotrek zgodzil sie to zmienic, bo `data-url`\n   w HTML jest STATYCZNY, a potrzebujemy trzech rzeczy per osoba:\n     1. prefill imienia i maila, zeby nie wpisywac danych drugi raz,\n     2. `utm_content` z ID sesji, zeby Make skleil rezerwacje\n        z wierszem ankiety zamiast robic duplikat,\n     3. telefon w `a1` (pierwsze pytanie wlasne w Calendly).\n\n   \u26a0\ufe0f DRUGA KORZYSC, WAZNIEJSZA NIZ PREFILL: widget inicjuje sie\n   teraz DOPIERO gdy ekran MQL jest widoczny. Widget liczy wysokosc\n   iframe'a z computed height kontenera w chwili inicjalizacji, wiec\n   przy starcie w kontenerze `hidden` (display:none) dostawal 0\n   i psul sie po cichu, bez bledu w konsoli. Teraz mierzy realne 700px.\n\n   \u26a0\ufe0f `height:700px` NA SZTYWNO, nie `min-height`. Przy min-height\n   kontener jest w chwili pomiaru jeszcze niski i iframe dostaje 150px.\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 -->\n<div id=\"kalendarz-osadzenie\"\n   data-url-baza=\"https:\/\/calendly.com\/jakub-kreft-phinance\/60min?primary_color=ff6b03\"\n   style=\"min-width:320px;height:700px;\"><\/div>\n<div id=\"kalendarz-awaria\" hidden><\/div>\n<script type=\"text\/javascript\" src=\"https:\/\/assets.calendly.com\/assets\/external\/widget.js\" async><\/script>\n<\/div>\n\n  <p class=\"stopka\">\n    Spoko Finanse \u00b7 GRZEGORZ REJCHINBACH GREGOR D.F.<br>\n    ul. \u015awierkowa 28B, 83-331 Przyja\u017a\u0144 \u00b7 NIP 5782863159<br>\n    Tre\u015bci maj\u0105 charakter informacyjno-marketingowy i nie stanowi\u0105 doradztwa\n    inwestycyjnego ani podatkowego. <a href=\"#\" class=\"link-rodo-stopka\" target=\"_blank\" rel=\"noopener\">Obowi\u0105zek informacyjny<\/a>\n  <\/p>\n\n<\/div>\n\n<script>\n(function () {\n  'use strict';\n\n  var TEL = '+48 695 344 423';\n  var KLUCZ_MQL = 'spoko-dane-mql';\n  var KLUCZ_LEAD = 'spoko-lead-wyslany';\n\n  \/* Dane przychodz\u0105 z ankiety przez localStorage, bo ta strona otwiera si\u0119\n     w NOWEJ KARCIE, a pami\u0119\u0107 sesji do niej si\u0119 nie kopiuje przy izolacji\n     `noopener`, kt\u00f3r\u0105 przegl\u0105darki dok\u0142adaj\u0105 do target=\"_blank\".\n\n     Odczyt jest jednorazowy: przenosimy wpis do pami\u0119ci TEJ karty i od razu\n     kasujemy wsp\u00f3lny. Dzi\u0119ki temu dane osobowe le\u017c\u0105 w localStorage u\u0142amek\n     sekundy, a od\u015bwie\u017cenie kalendarza dalej dzia\u0142a, bo kopia siedzi ju\u017c\n     w sesji tej karty i ginie razem z jej zamkni\u0119ciem.                  *\/\n  var dane = null;\n  try {\n    var surowe = localStorage.getItem(KLUCZ_MQL);\n    if (surowe) {\n      sessionStorage.setItem(KLUCZ_MQL, surowe);\n      localStorage.removeItem(KLUCZ_MQL);\n    }\n    surowe = sessionStorage.getItem(KLUCZ_MQL);\n    if (surowe) {\n      dane = JSON.parse(surowe);\n      \/\/ Wpis starszy ni\u017c p\u00f3\u0142 godziny to \u015bmie\u0107 po porzuconej sesji.\n      if (dane && dane.zapisano && Date.now() - dane.zapisano > 1800000) dane = null;\n    }\n  } catch (e) {}\n\n  \/* Wariant testu A\/B przyje\u017cd\u017ca z ankiety. Wpisujemy go z powrotem do\n     konfiguracji, bo czyta j\u0105 te\u017c listener rezerwacji w bloku trackingu. *\/\n  var wariant = (dane && dane.wariant) || 'wejscie-bezposrednie';\n  window.ANKIETA_KONFIG = window.ANKIETA_KONFIG || {};\n  window.ANKIETA_KONFIG.wariant = wariant;\n\n  function doClarity(klucz, wartosc) {\n    try { if (window.clarity) window.clarity('set', klucz, wartosc); } catch (e) {}\n  }\n  doClarity('wariant', wariant);\n\n  if (dane) {\n    \/* Konwersja przywi\u0105zana do WEJ\u015aCIA NA T\u0118 STRON\u0118. Strzela raz na sesj\u0119,\n       wi\u0119c od\u015bwie\u017cenie kalendarza ani powr\u00f3t przyciskiem wstecz nie dosypi\u0105\n       fa\u0142szywych lead\u00f3w do optymalizacji.                                *\/\n    var juz = null;\n    try { juz = sessionStorage.getItem(KLUCZ_LEAD); } catch (e) {}\n    if (juz !== dane.id) {\n      try {\n        if (window.fbq) window.fbq('track', 'Lead', {\n          content_name: wariant, content_category: 'kontakt'\n        });\n      } catch (e) {}\n      try { sessionStorage.setItem(KLUCZ_LEAD, dane.id); } catch (e) {}\n    }\n    doClarity('etap', 'zostawil-kontakt');\n  } else {\n    \/* Kto\u015b wszed\u0142 na ten adres bez przechodzenia ankiety. Kalendarz\n       pokazujemy, bo lepiej pozwoli\u0107 si\u0119 um\u00f3wi\u0107 ni\u017c zablokowa\u0107, ale\n       `Lead` NIE strzela: nie by\u0142o \u017cadnej konwersji.\n       \u26a0\ufe0f Regu\u0142a URL-a w Meta tego nie odr\u00f3\u017cni i policzy takie wej\u015bcie.\n       Dlatego mql.html ma `noindex` i nie jest nigdzie linkowany.      *\/\n    console.warn('[mql] brak danych z ankiety, kalendarz bez prefillu, Lead nie strzela');\n  }\n\n  osadzKalendarz(dane);\n\n  function osadzKalendarz(d) {\n    var el = document.getElementById('kalendarz-osadzenie');\n    if (!el || el.dataset.osadzony) return;\n\n    var url = el.dataset.urlBaza;\n    if (d) {\n      url += '&name=' + encodeURIComponent(d.imie || '') +\n             '&email=' + encodeURIComponent(d.email || '') +\n             \/* a1 = PIERWSZE pytanie w\u0142asne w Calendly. U nas telefon.\n                \u26a0\ufe0f Zmiana kolejno\u015bci pyta\u0144 w Calendly rozjedzie prefill. *\/\n             '&a1=' + encodeURIComponent(d.telefon || '') +\n             \/* Klucz do sklejenia rezerwacji z wierszem ankiety w Make. *\/\n             '&utm_content=' + encodeURIComponent(d.id || '');\n    }\n\n    var proby = 0;\n    (function czekaj() {\n      if (window.Calendly && window.Calendly.initInlineWidget) {\n        el.dataset.osadzony = '1';\n        \/* Inicjujemy z kodu, gdy kontener jest ju\u017c widoczny i ma realne\n           700px. Widget liczy wysoko\u015b\u0107 iframe'a z computed height w chwili\n           inicjalizacji, wi\u0119c w kontenerze schowanym dostawa\u0142 0 i psu\u0142 si\u0119\n           po cichu, bez b\u0142\u0119du w konsoli.                                *\/\n        window.Calendly.initInlineWidget({ url: url, parentElement: el });\n        return;\n      }\n      \/* ~10 s. widget.js jest `async`, wi\u0119c zwykle doje\u017cd\u017ca w u\u0142amku\n         sekundy. Je\u015bli nie, to adblock albo brak sieci i lepiej pokaza\u0107\n         numer telefonu ni\u017c puste 700px.                                *\/\n      if (++proby > 100) { pokazAwarie(); return; }\n      setTimeout(czekaj, 100);\n    })();\n  }\n\n  function pokazAwarie() {\n    var el = document.getElementById('kalendarz-osadzenie');\n    var awaria = document.getElementById('kalendarz-awaria');\n    if (!awaria) return;\n    if (el) el.hidden = true;\n    awaria.innerHTML =\n      '<p>Kalendarz nie chce si\u0119 za\u0142adowa\u0107. Zadzwo\u0144, um\u00f3wimy termin r\u0119cznie.<\/p>' +\n      '<a href=\"tel:' + TEL.replace(\/\\s\/g, '') + '\">' + TEL + '<\/a>';\n    awaria.hidden = false;\n    console.warn('[mql] Calendly nie wystartowal w 10 s');\n  }\n})();\n<\/script>\n\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Wybierz termin konsultacji | Spoko Finanse S Spoko Finanse Kwalifikujesz si\u0119 Zosta\u0142 ostatni krok Z Twoich odpowiedzi wynika, \u017ce IKZE ma w Twojej sytuacji sens i jest o czym rozmawia\u0107. Na spotkaniu policzymy konkretnie, ile mo\u017cesz odzyska\u0107 z PIT w Twoim przypadku, i poka\u017cemy, jak to pouk\u0142ada\u0107. Wyjdziesz z rozmowy z liczbami, nawet je\u015bli ostatecznie [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-27","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=\/wp\/v2\/pages\/27","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=27"}],"version-history":[{"count":27,"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=\/wp\/v2\/pages\/27\/revisions"}],"predecessor-version":[{"id":80,"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=\/wp\/v2\/pages\/27\/revisions\/80"}],"wp:attachment":[{"href":"https:\/\/spokofinanse.piotrluszczak.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=27"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}