{"title":"Pakiety","description":"","products":[{"product_id":"oferta-dopasowana","title":"Oferta dopasowana","description":"\u003cstyle\u003e\n  *, *::before, *::after { box-sizing: border-box; }\n\n  \/* ===== LAYOUT WRAPPER ===== *\/\n  .page-layout { display: grid; grid-template-columns: 1fr 340px; gap: 24px; align-items: start; }\n  .page-main { min-width: 0; grid-column: 1; }\n  .page-sidebar { position: sticky; top: 20px; align-self: start; grid-column: 2; }\n  @media (max-width: 900px) {\n    .page-layout { display: block; }\n    .page-sidebar { position: static; margin-bottom: 24px; }\n  }\n\n  \/* ===== HERO BANNER (gradient zamiast zdjęcia — podmień na własne, jeśli chcesz) ===== *\/\n  .od-hero { width: 100%; max-width: 700px; margin: 0 auto 20px auto; border-radius: 16px; background: linear-gradient(135deg, #0094d9 0%, #006fa8 100%); padding: 44px 24px; text-align: center; }\n  .od-hero-title { color: #fff; font-size: 26px; font-weight: 900; margin: 0 0 8px 0; letter-spacing: -0.3px; }\n  .od-hero-sub { color: rgba(255,255,255,0.85); font-size: 14px; font-weight: 500; margin: 0; }\n  @media (max-width: 480px) { .od-hero-title { font-size: 20px; } .od-hero { padding: 32px 16px; } }\n\n  \/* ===== PROCES ===== *\/\n  .proc-section { background: linear-gradient(135deg, #0094d9 0%, #006fa8 100%); border-radius: 20px; padding: 28px 24px; margin: 0 auto 24px auto; }\n  .proc-title { color: #fff; font-size: 18px; font-weight: 800; margin: 0 0 20px 0; text-align: center; letter-spacing: -0.2px; }\n  .proc-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; align-items: start; }\n  .proc-step { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; position: relative; }\n  .proc-step:not(:last-child)::after { content: ''; position: absolute; top: 22px; left: calc(50% + 22px); width: calc(100% - 44px); height: 2px; background: rgba(255,255,255,0.25); }\n  .proc-icon-wrap { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0; position: relative; z-index: 1; }\n  .proc-icon-wrap.c1 { background: #f9c200; }\n  .proc-icon-wrap.c2 { background: rgba(255,255,255,0.2); border: 2px solid rgba(255,255,255,0.5); }\n  .proc-icon-wrap.c3 { background: #f9c200; }\n  .proc-icon-wrap.c4 { background: rgba(255,255,255,0.2); border: 2px solid rgba(255,255,255,0.5); }\n  .proc-icon-img { width: 22px; height: 22px; object-fit: contain; display: block; }\n  .proc-num-badge { position: absolute; top: -4px; right: -4px; width: 18px; height: 18px; background: #fff; color: #0094d9; border-radius: 50%; font-size: 10px; font-weight: 900; display: flex; align-items: center; justify-content: center; }\n  .proc-step-title { font-size: 12px; font-weight: 800; color: #fff; line-height: 1.3; }\n  .proc-step-desc { font-size: 11px; color: rgba(255,255,255,0.8); line-height: 1.5; }\n  @media (max-width: 640px) {\n    .proc-grid { grid-template-columns: 1fr 1fr; gap: 18px 12px; }\n    .proc-step::after { display: none; }\n    .proc-title { font-size: 16px; }\n    .proc-section { padding: 22px 16px; }\n  }\n\n  \/* ===== PODSUMOWANIE USŁUGI (na wzór trip-summary) ===== *\/\n  .trip-summary { background: #f5f5f0; border-radius: 20px; margin: 0 auto 24px auto; overflow: hidden; }\n  .trip-summary-header { background: #0094d9; padding: 16px 20px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 6px; }\n  .trip-summary-name { font-size: 20px; font-weight: 900; color: #fff; }\n  .trip-summary-price { font-size: 22px; font-weight: 900; color: #fff; }\n  .trip-summary-price span { font-size: 13px; font-weight: 500; opacity: 0.85; }\n  .trip-pills { display: flex; gap: 10px; padding: 14px 20px; flex-wrap: wrap; border-bottom: 1px solid rgba(35,31,32,0.10); }\n  .trip-pill { display: flex; align-items: center; gap: 7px; background: #fff; border-radius: 30px; padding: 7px 14px; }\n  .trip-pill-icon-img { width: 16px; height: 16px; object-fit: contain; display: block; }\n  .trip-pill-label { font-size: 10px; color: #888; font-weight: 600; text-transform: uppercase; letter-spacing: 0.4px; display: block; line-height: 1; }\n  .trip-pill-value { font-size: 13px; font-weight: 800; color: #231f20; display: block; line-height: 1.3; margin-top: 2px; }\n  @media (max-width: 480px) {\n    .trip-pills { gap: 8px; padding: 12px 14px; }\n    .trip-pill { padding: 6px 10px; }\n    .trip-summary-name { font-size: 16px; }\n    .trip-summary-price { font-size: 18px; }\n  }\n  .offer-desc { padding: 18px 20px; font-size: 13px; color: #333; line-height: 1.7; }\n  .offer-desc-title { font-size: 12px; font-weight: 800; color: #0094d9; text-transform: uppercase; letter-spacing: 0.5px; margin: 14px 0 6px 0; display: flex; align-items: center; gap: 6px; }\n  .offer-desc ul { margin: 4px 0 0 0; padding: 0 0 0 16px; }\n  .offer-desc ul li { font-size: 13px; color: #333; line-height: 1.6; margin-bottom: 2px; }\n  .offer-desc-note { font-size: 12px; color: #888; font-style: italic; margin-top: 14px; border-top: 1px solid rgba(35,31,32,0.10); padding-top: 12px; }\n\n  \/* ===== CO OTRZYMUJESZ ===== *\/\n  .inc-section { margin: 0 0 24px 0; width: 100%; }\n  .inc-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 12px 0; }\n  .inc-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; width: 100%; }\n  .inc-cell { background: #f5f5f0; border-radius: 16px; padding: 14px 10px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; }\n  .inc-cell img { width: 24px; height: 24px; object-fit: contain; display: block; }\n  .inc-label { font-size: 12px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  @media (max-width: 480px) { .inc-grid { gap: 8px; } .inc-cell { padding: 10px 6px; } .inc-label { font-size: 11px; } }\n\n  \/* ===== FORMULARZ ZAMÓWIENIA (wygląd order-box, logika z formularza lotów) ===== *\/\n  .order-box { background: #0094d9; border-radius: 20px; padding: 24px 20px; }\n  .order-box-title { font-size: 17px; font-weight: 800; color: #fff; margin: 0 0 4px 0; text-align: center; }\n  .order-box-sub { font-size: 11px; color: rgba(255,255,255,0.75); text-align: center; margin: 0 0 16px 0; }\n  .order-field { margin-bottom: 12px; }\n  .order-label { font-size: 12px; font-weight: 700; color: rgba(255,255,255,0.9); margin-bottom: 5px; display: block; }\n  .order-label span.opt { font-size: 11px; font-weight: 400; opacity: 0.75; }\n  .order-label span.req { color: #ffd8d8; margin-left: 2px; }\n  .order-select, .order-input, .order-textarea { width: 100%; background: #fff; border: 2px solid transparent; border-radius: 12px; padding: 11px 14px; font-size: 13px; font-weight: 600; color: #231f20; outline: none; appearance: none; -webkit-appearance: none; cursor: pointer; font-family: inherit; transition: border-color 0.15s; }\n  .order-input, .order-textarea { cursor: text; font-weight: 500; }\n  .order-textarea { resize: vertical; min-height: 60px; }\n  .order-select-wrap { position: relative; }\n  .order-select-wrap::after { content: '▾'; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); font-size: 14px; color: #888; pointer-events: none; }\n  .order-input::placeholder, .order-textarea::placeholder { color: #aaa; font-weight: 400; }\n  .order-select.of-error, .order-input.of-error { border-color: #ffb3b3 !important; }\n  .order-error-msg { font-size: 10px; color: #ffd8d8; font-weight: 700; margin: 4px 0 0 4px; display: none; }\n  .order-error-msg.of-visible { display: block; }\n\n  .order-social-proof { background: rgba(255,255,255,0.15); border-radius: 12px; padding: 9px 12px; margin-bottom: 14px; display: flex; align-items: center; gap: 8px; }\n  .order-social-proof-dot { width: 7px; height: 7px; background: #f9c200; border-radius: 50%; flex-shrink: 0; animation: od-pulse 1.5s infinite; }\n  @keyframes od-pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.4; } }\n  .order-social-proof-text { font-size: 11px; color: #fff; font-weight: 600; line-height: 1.4; }\n\n  .order-price-row { display: flex; justify-content: space-between; align-items: center; background: rgba(255,255,255,0.12); border-radius: 14px; padding: 12px 14px; margin-bottom: 14px; }\n  .order-price-label { font-size: 13px; font-weight: 700; color: #fff; }\n  .order-price-amount { font-size: 20px; font-weight: 900; color: #f9c200; }\n\n  .order-btn { width: 100%; background: #f9c200; border: none; border-radius: 14px; padding: 15px; font-size: 15px; font-weight: 900; color: #231f20; cursor: pointer; transition: background 0.15s, transform 0.1s, opacity 0.15s; display: block; text-align: center; opacity: 0.5; pointer-events: none; }\n  .order-btn.of-active { opacity: 1; pointer-events: auto; }\n  .order-btn:hover.of-active { background: #f0b800; transform: translateY(-1px); }\n  .order-btn:active.of-active { transform: translateY(0); }\n  .order-btn:disabled { opacity: 0.7; cursor: not-allowed; transform: none; }\n  .order-note { font-size: 11px; color: rgba(255,255,255,0.7); text-align: center; margin-top: 10px; line-height: 1.5; }\n\n  .order-payment-icons { display: flex; gap: 8px; justify-content: center; align-items: center; margin-top: 16px; flex-wrap: wrap; }\n  .order-payment-icons img { height: 20px; width: auto; object-fit: contain; }\n\n  .order-trust-badges { display: flex; gap: 8px; margin-top: 14px; }\n  .order-trust-badge { flex: 1; background: rgba(255,255,255,0.12); border-radius: 12px; padding: 10px 6px; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }\n  .order-trust-badge img { width: 28px; height: 28px; object-fit: contain; }\n  .order-trust-badge span { font-size: 10px; color: #fff; font-weight: 700; line-height: 1.3; }\n\n  \/* ===== OPINIE ===== *\/\n  .rev-section { width: 100%; box-sizing: border-box; margin: 0 auto 24px auto; }\n  .rev-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }\n  .rev-title { font-size: 18px; font-weight: 800; color: #231f20; }\n  .rev-stars-total { display: flex; align-items: center; gap: 6px; }\n  .rev-stars { color: #f9c200; font-size: 16px; letter-spacing: 1px; }\n  .rev-count { font-size: 13px; color: #888; font-weight: 600; }\n  .rev-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }\n  .rev-card { background: #f5f5f0; border-radius: 20px; padding: 16px; box-sizing: border-box; display: flex; flex-direction: column; gap: 8px; }\n  .rev-card-top { display: flex; justify-content: space-between; align-items: center; }\n  .rev-name { font-size: 13px; font-weight: 800; color: #231f20; }\n  .rev-card-stars { color: #f9c200; font-size: 13px; }\n  .rev-dest { font-size: 12px; color: #0094d9; font-weight: 700; }\n  .rev-text { font-size: 12px; color: #444; line-height: 1.5; }\n  @media (max-width: 640px) {\n    .rev-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 10px; padding-bottom: 8px; scrollbar-width: none; }\n    .rev-grid::-webkit-scrollbar { display: none; }\n    .rev-card { min-width: 85vw; scroll-snap-align: start; flex-shrink: 0; }\n  }\n\n  \/* ===== INFO ===== *\/\n  .info-section { width: 100%; box-sizing: border-box; margin: 0 auto 24px auto; }\n  .info-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 14px 0; }\n  .info-cards { display: flex; flex-direction: column; gap: 10px; }\n  .info-card { display: flex; align-items: flex-start; gap: 12px; border-radius: 12px; padding: 14px 16px; border-left: 4px solid; text-align: left; }\n  .info-card.orange { background: #fff8f0; border-color: #f0a030; }\n  .info-card.green { background: #f2fbf4; border-color: #3ab85a; }\n  .info-card-text { font-size: 13px; color: #333; line-height: 1.5; margin: 0; }\n  .sec-divider { width: 100%; height: 3px; background: #f5f5f0; border-radius: 2px; margin: 20px 0; }\n  .sec-divider-mobile { display: none; }\n  @media (max-width: 900px) { .sec-divider-mobile { display: block; } }\n\u003c\/style\u003e\n\u003c!-- BANNER --\u003e\n\u003cdiv class=\"od-hero\"\u003e\n\u003cp class=\"od-hero-title\"\u003eOferta Dopasowana\u003c\/p\u003e\n\u003cp class=\"od-hero-sub\"\u003eTwój wyjazd, gotowy w 24h — bez stresu, przepłacania i tracenia czasu!\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- DATA PUBLIKACJI --\u003e\u003c!-- PROCES --\u003e\n\u003cdiv class=\"proc-section\"\u003e\n\u003cp class=\"proc-title\"\u003eJak to działa?\u003c\/p\u003e\n\u003cdiv class=\"proc-grid\"\u003e\n\u003cdiv class=\"proc-step\"\u003e\n\u003cdiv class=\"proc-icon-wrap c1\"\u003e\n\u003cimg alt=\"Krok 1\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/wybierz-opcje.png?v=1783242958\" class=\"proc-icon-img\"\u003e \u003cspan class=\"proc-num-badge\"\u003e1\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp class=\"proc-step-title\"\u003eKupujesz usługę\u003c\/p\u003e\n\u003cp class=\"proc-step-desc\"\u003eZamawiasz Ofertę Dopasowaną i płacisz online w 2 minuty.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"proc-step\"\u003e\n\u003cdiv class=\"proc-icon-wrap c2\"\u003e\n\u003cimg alt=\"Krok 2\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/odbierz-linki.png?v=1783242958\" class=\"proc-icon-img\"\u003e \u003cspan class=\"proc-num-badge\"\u003e2\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp class=\"proc-step-title\"\u003ePrzekazujesz oczekiwania\u003c\/p\u003e\n\u003cp class=\"proc-step-desc\"\u003eKierunek, budżet, termin i styl podróży — wypełniasz krótki formularz.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"proc-step\"\u003e\n\u003cdiv class=\"proc-icon-wrap c3\"\u003e\n\u003cimg alt=\"Krok 3\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/wybierz-opcje.png?v=1783242958\" class=\"proc-icon-img\"\u003e \u003cspan class=\"proc-num-badge\"\u003e3\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp class=\"proc-step-title\"\u003eOtrzymujesz propozycję\u003c\/p\u003e\n\u003cp class=\"proc-step-desc\"\u003eW ciągu 24h dostajesz na maila spersonalizowaną ofertę w PDF.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"proc-step\"\u003e\n\u003cdiv class=\"proc-icon-wrap c4\"\u003e\n\u003cimg alt=\"Krok 4\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/pelne-wsparcie.png?v=1783242958\" class=\"proc-icon-img\"\u003e \u003cspan class=\"proc-num-badge\"\u003e4\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp class=\"proc-step-title\"\u003eRezerwujesz samodzielnie\u003c\/p\u003e\n\u003cp class=\"proc-step-desc\"\u003eTy decydujesz i klikasz — pełna kontrola nad rezerwacją.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- LAYOUT DWUKOLUMNOWY --\u003e\n\u003cdiv class=\"page-layout\"\u003e\n\u003c!-- FORMULARZ - w kodzie na górze, żeby na mobile był zaraz po \"Jak to działa\" --\u003e\n\u003cdiv class=\"page-sidebar\"\u003e\n\u003cdiv class=\"order-box\"\u003e\n\u003cp class=\"order-box-title\"\u003eZamów swoją Ofertę Dopasowaną\u003c\/p\u003e\n\u003cp class=\"order-box-sub\"\u003eWypełnij szczegóły — otrzymasz wyjazd w ciągu 24h\u003c\/p\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-kierunek\"\u003eKierunek \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e \u003cinput class=\"order-input\" type=\"text\" id=\"od-kierunek\" placeholder=\"np. Grecja, Dominikana, dowolny kierunek…\"\u003e\n\u003cp class=\"order-error-msg\" id=\"od-kierunek-err\"\u003ePodaj kierunek (lub wpisz \"dowolny\")\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-budzet\"\u003eBudżet na osobę \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\n\u003cdiv class=\"order-select-wrap\"\u003e\u003cselect class=\"order-select\" id=\"od-budzet\"\u003e\n\u003coption value=\"\"\u003eWybierz opcję\u003c\/option\u003e\n\u003coption value=\"do 2000 zł\"\u003edo 2 000 zł\u003c\/option\u003e\n\u003coption value=\"2000-4000 zł\"\u003e2 000–4 000 zł\u003c\/option\u003e\n\u003coption value=\"4000-6000 zł\"\u003e4 000–6 000 zł\u003c\/option\u003e\n\u003coption value=\"6000-10000 zł\"\u003e6 000–10 000 zł\u003c\/option\u003e\n\u003coption value=\"powyżej 10000 zł\"\u003epowyżej 10 000 zł\u003c\/option\u003e\n\u003c\/select\u003e\u003c\/div\u003e\n\u003cp class=\"order-error-msg\" id=\"od-budzet-err\"\u003eWybierz przedział budżetu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-styl\"\u003eStyl podróży \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\n\u003cdiv class=\"order-select-wrap\"\u003e\u003cselect class=\"order-select\" id=\"od-styl\"\u003e\n\u003coption value=\"\"\u003eWybierz opcję\u003c\/option\u003e\n\u003coption value=\"Rodzinny\"\u003eRodzinny\u003c\/option\u003e\n\u003coption value=\"Romantyczny\"\u003eRomantyczny (dla dwojga)\u003c\/option\u003e\n\u003coption value=\"Relaks \/ wypoczynek\"\u003eRelaks \/ wypoczynek\u003c\/option\u003e\n\u003coption value=\"All Inclusive\"\u003eAll Inclusive\u003c\/option\u003e\n\u003coption value=\"Przygodowy \/ aktywny\"\u003ePrzygodowy \/ aktywny\u003c\/option\u003e\n\u003coption value=\"Zwiedzanie \/ miasta\"\u003eZwiedzanie \/ miasta\u003c\/option\u003e\n\u003c\/select\u003e\u003c\/div\u003e\n\u003cp class=\"order-error-msg\" id=\"od-styl-err\"\u003eWybierz styl podróży\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-pax\"\u003eLiczba osób \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\n\u003cdiv class=\"order-select-wrap\"\u003e\u003cselect class=\"order-select\" id=\"od-pax\"\u003e\n\u003coption value=\"\"\u003eWybierz opcję\u003c\/option\u003e\n\u003coption value=\"1\"\u003e1 osoba\u003c\/option\u003e\n\u003coption value=\"2\"\u003e2 osoby\u003c\/option\u003e\n\u003coption value=\"3\"\u003e3 osoby\u003c\/option\u003e\n\u003coption value=\"4\"\u003e4 osoby\u003c\/option\u003e\n\u003coption value=\"5\"\u003e5 osób\u003c\/option\u003e\n\u003coption value=\"6\"\u003e6 osób\u003c\/option\u003e\n\u003coption value=\"7+\"\u003e7+ osób\u003c\/option\u003e\n\u003c\/select\u003e\u003c\/div\u003e\n\u003cp class=\"order-error-msg\" id=\"od-pax-err\"\u003eWybierz liczbę osób\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-lotnisko\"\u003eLotnisko wylotu \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\n\u003cdiv class=\"order-select-wrap\"\u003e\u003cselect class=\"order-select\" id=\"od-lotnisko\"\u003e\n\u003coption value=\"\"\u003eWybierz opcję\u003c\/option\u003e\n\u003coption value=\"Warszawa\"\u003eWarszawa\u003c\/option\u003e\n\u003coption value=\"Kraków\"\u003eKraków\u003c\/option\u003e\n\u003coption value=\"Gdańsk\"\u003eGdańsk\u003c\/option\u003e\n\u003coption value=\"Katowice\"\u003eKatowice\u003c\/option\u003e\n\u003coption value=\"Wrocław\"\u003eWrocław\u003c\/option\u003e\n\u003coption value=\"Poznań\"\u003ePoznań\u003c\/option\u003e\n\u003coption value=\"Łódź\"\u003eŁódź\u003c\/option\u003e\n\u003coption value=\"Rzeszów\"\u003eRzeszów\u003c\/option\u003e\n\u003coption value=\"Szczecin\"\u003eSzczecin\u003c\/option\u003e\n\u003coption value=\"Bydgoszcz\"\u003eBydgoszcz\u003c\/option\u003e\n\u003coption value=\"Lublin\"\u003eLublin\u003c\/option\u003e\n\u003coption value=\"Zielona Góra\"\u003eZielona Góra\u003c\/option\u003e\n\u003c\/select\u003e\u003c\/div\u003e\n\u003cp class=\"order-error-msg\" id=\"od-lotnisko-err\"\u003eWybierz lotnisko wylotu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-termin\"\u003eTermin wyjazdu \u003cspan class=\"opt\"\u003e(opcjonalnie)\u003c\/span\u003e\u003c\/label\u003e \u003cinput class=\"order-input\" type=\"date\" id=\"od-termin\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-dlugosc\"\u003eDługość pobytu \u003cspan class=\"opt\"\u003e(opcjonalnie)\u003c\/span\u003e\u003c\/label\u003e\n\u003cdiv class=\"order-select-wrap\"\u003e\u003cselect class=\"order-select\" id=\"od-dlugosc\"\u003e\n\u003coption value=\"\"\u003eWybierz opcję\u003c\/option\u003e\n\u003coption value=\"3-4 dni\"\u003e3–4 dni\u003c\/option\u003e\n\u003coption value=\"5-7 dni\"\u003e5–7 dni\u003c\/option\u003e\n\u003coption value=\"8-10 dni\"\u003e8–10 dni\u003c\/option\u003e\n\u003coption value=\"10-14 dni\"\u003e10–14 dni\u003c\/option\u003e\n\u003coption value=\"14+ dni\"\u003e14+ dni\u003c\/option\u003e\n\u003c\/select\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-field\"\u003e\n\u003clabel class=\"order-label\" for=\"od-uwagi\"\u003eDodatkowe uwagi \u003cspan class=\"opt\"\u003e(opcjonalnie)\u003c\/span\u003e\u003c\/label\u003e \u003ctextarea class=\"order-textarea\" id=\"od-uwagi\" placeholder=\"np. hotel blisko plaży, bez nocnych przesiadek, podróż z dzieckiem…\"\u003e\u003c\/textarea\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-price-row\"\u003e\n\u003cspan class=\"order-price-label\"\u003eCena usługi\u003c\/span\u003e \u003cspan class=\"order-price-amount\"\u003e199 zł\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-social-proof\"\u003e\n\u003cspan class=\"order-social-proof-dot\"\u003e\u003c\/span\u003e \u003cspan class=\"order-social-proof-text\"\u003e\u003cb style=\"color: #f5a623;\"\u003e84\u003c\/b\u003e osób zamówiło tę usługę w tym tygodniu.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbutton id=\"od-checkout-btn\" class=\"order-btn\" type=\"button\"\u003eZamów teraz\u003c\/button\u003e\n\u003cp class=\"order-note\"\u003ePo zakupie skontaktujemy się w razie pytań. Propozycję otrzymasz na maila w ciągu 24h.\u003c\/p\u003e\n\u003cdiv class=\"order-payment-icons\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/visa.png?v=1778850122\" alt=\"Metoda płatności 1\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/mastercard.png?v=1778850123\" alt=\"Metoda płatności 2\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/applepay.png?v=1778850122\" alt=\"Metoda płatności 3\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/blik.png?v=1778850123\" alt=\"Metoda płatności 4\"\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/klarna.png?v=1778850119\" alt=\"Metoda płatności 5\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-trust-badges\"\u003e\n\u003cdiv class=\"order-trust-badge\"\u003e\n\u003cimg alt=\"Gwarancja\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/gwarancja-oferty.png?v=1783244254\"\u003e \u003cspan\u003eGwarancja jakości\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-trust-badge\"\u003e\n\u003cimg alt=\"Bezpieczna platnosc\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/bezpieczna-platnosc.png?v=1783244254\"\u003e \u003cspan\u003eBezpieczna płatność\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"order-trust-badge\"\u003e\n\u003cimg alt=\"14 dni na zwrot\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/14-dni-zwrot.png?v=1783244254\"\u003e \u003cspan\u003e14 dni na zwrot\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- \/page-sidebar --\u003e\n\u003cdiv class=\"sec-divider sec-divider-mobile\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c!-- LEWA KOLUMNA --\u003e\n\u003cdiv class=\"page-main\"\u003e\n\u003cdiv class=\"trip-summary\"\u003e\n\u003cdiv class=\"trip-summary-header\"\u003e\n\u003cspan class=\"trip-summary-name\"\u003eOferta Dopasowana\u003c\/span\u003e \u003cspan class=\"trip-summary-price\"\u003e199 zł \u003cspan\u003e\/ usługa\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"trip-pills\"\u003e\n\u003cdiv class=\"trip-pill\"\u003e\n\u003cimg alt=\"Kierunek\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/kiedy.png?v=1783243698\" class=\"trip-pill-icon-img\"\u003e\n\u003cdiv\u003e\n\u003cspan class=\"trip-pill-label\"\u003eKierunek\u003c\/span\u003e \u003cspan class=\"trip-pill-value\"\u003eDowolny na świecie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"trip-pill\"\u003e\n\u003cimg alt=\"Czas\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/na_ile.png?v=1783243698\" class=\"trip-pill-icon-img\"\u003e\n\u003cdiv\u003e\n\u003cspan class=\"trip-pill-label\"\u003eCzas realizacji\u003c\/span\u003e \u003cspan class=\"trip-pill-value\"\u003eDo 24h\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"trip-pill\"\u003e\n\u003cimg alt=\"Cena\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/cena.png?v=1783243698\" class=\"trip-pill-icon-img\"\u003e\n\u003cdiv\u003e\n\u003cspan class=\"trip-pill-label\"\u003eCena\u003c\/span\u003e \u003cspan class=\"trip-pill-value\"\u003e199 zł \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"offer-desc\"\u003e\n\u003cp\u003eMarzysz o wyjeździe idealnym dla siebie, bliskich albo romantycznym wypadzie we dwoje, ale nie masz czasu na godziny przeszukiwania ofert? \u003cstrong\u003eOferta Dopasowana\u003c\/strong\u003e to opcja, dzięki której otrzymasz indywidualnie przygotowaną propozycję wyjazdu — dopasowaną do Twojego budżetu, stylu podróżowania i oczekiwań. Ty mówisz, czego potrzebujesz — my zajmujemy się resztą ✨\u003c\/p\u003e\n\u003cp class=\"offer-desc-title\"\u003e✔️ Co otrzymujesz?\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eSpersonalizowaną propozycję wyjazdu w formie PDF\u003c\/li\u003e\n\u003cli\u003eOferty dopasowane do Twojego budżetu i preferencji\u003c\/li\u003e\n\u003cli\u003eSprawdzone, dostępne publicznie opcje — wszystko w jednym miejscu\u003c\/li\u003e\n\u003cli\u003eOszczędność czasu i brak stresu przy organizacji\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp class=\"offer-desc-title\"\u003e🧳 Oferta może obejmować:\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eDowolny kierunek 🌍\u003c\/li\u003e\n\u003cli\u003eWybrany termin i długość pobytu 📅\u003c\/li\u003e\n\u003cli\u003eLoty z preferowanego lotniska ✈️\u003c\/li\u003e\n\u003cli\u003eZakwaterowanie: hotel, apartament, All Inclusive 🏨\u003c\/li\u003e\n\u003cli\u003eTransfery i dojazdy 🚐\u003c\/li\u003e\n\u003cli\u003ePlan podróży i praktyczne rekomendacje 🧭\u003c\/li\u003e\n\u003cli\u003eBezpośrednie linki do rezerwacji 🔗\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp class=\"offer-desc-note\"\u003eUwaga: rezerwacja odbywa się samodzielnie przez klienta — dostarczamy wyłącznie analizę i propozycje, w pełni legalnie.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"inc-section\"\u003e\n\u003cp class=\"inc-heading\"\u003eCo otrzymujesz?\u003c\/p\u003e\n\u003cdiv class=\"inc-grid\"\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/9.png?v=1777675519\" alt=\"PDF\"\u003e\n\u003cp class=\"inc-label\"\u003ePropozycja w PDF\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/opcje-cenowe.png?v=1782814422\" alt=\"Budżet\"\u003e\n\u003cp class=\"inc-label\"\u003eDopasowanie do budżetu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/najtansze.png?v=1782815070\" alt=\"Sprawdzone opcje\"\u003e\n\u003cp class=\"inc-label\"\u003eSprawdzone opcje\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/linki.png?v=1782814422\" alt=\"Linki\"\u003e\n\u003cp class=\"inc-label\"\u003eLinki do rezerwacji\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/5_e5d9bc28-d01a-476f-a0b1-3939d3ed967f.png?v=1777721992\" alt=\"Czas\"\u003e\n\u003cp class=\"inc-label\"\u003eRealizacja do 24h\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/10_d5ed244b-dfb2-4b45-8dc2-a12deb530ae4.png?v=1777675520\" alt=\"Wsparcie\"\u003e\n\u003cp class=\"inc-label\"\u003eWsparcie\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- \/page-main --\u003e\n\u003c\/div\u003e\n\u003c!-- \/page-layout --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- SKRYPT: pobiera variantId z JSON produktu (tak jak w formularzu lotów), waliduje pola, dodaje do koszyka i przekierowuje do checkoutu --\u003e\n\u003cp\u003e\u003cscript id=\"od-variant-data\" type=\"application\/json\"\u003e{{ product.selected_or_first_available_variant.id | json }}\u003c\/script\u003e \u003cscript\u003e\n(function(){\n  var fields = {\n    kierunek: { el: document.getElementById('od-kierunek'), err: document.getElementById('od-kierunek-err'), required: true, type: 'text' },\n    budzet:   { el: document.getElementById('od-budzet'),   err: document.getElementById('od-budzet-err'),   required: true, type: 'select' },\n    styl:     { el: document.getElementById('od-styl'),     err: document.getElementById('od-styl-err'),     required: true, type: 'select' },\n    pax:      { el: document.getElementById('od-pax'),      err: document.getElementById('od-pax-err'),      required: true, type: 'select' },\n    lotnisko: { el: document.getElementById('od-lotnisko'), err: document.getElementById('od-lotnisko-err'), required: true, type: 'select' },\n    termin:   { el: document.getElementById('od-termin'),   err: null, required: false, type: 'date' },\n    dlugosc:  { el: document.getElementById('od-dlugosc'),  err: null, required: false, type: 'select' },\n    uwagi:    { el: document.getElementById('od-uwagi'),    err: null, required: false, type: 'text' }\n  };\n  var btn = document.getElementById('od-checkout-btn');\n\n  \/\/ termin wyjazdu nie wcześniej niż dziś\n  var t = new Date();\n  var minDate = t.getFullYear()+'-'+String(t.getMonth()+1).padStart(2,'0')+'-'+String(t.getDate()).padStart(2,'0');\n  fields.termin.el.min = minDate;\n\n  \/\/ Pobierz variantId z osadzonego JSON (nie z formularza motywu)\n  var variantId = null;\n  try {\n    var raw = document.getElementById('od-variant-data');\n    if (raw) variantId = JSON.parse(raw.textContent.trim());\n  } catch(e) {}\n  if (!variantId \u0026\u0026 window.ShopifyAnalytics \u0026\u0026 window.ShopifyAnalytics.meta \u0026\u0026 window.ShopifyAnalytics.meta.selectedVariantId) {\n    variantId = window.ShopifyAnalytics.meta.selectedVariantId;\n  }\n\n  function val(f){ return f.el.value ? f.el.value.trim() : ''; }\n  function isComplete(){\n    for (var key in fields) {\n      var f = fields[key];\n      if (f.required \u0026\u0026 val(f) === '') return false;\n    }\n    return true;\n  }\n  function clearError(f){ f.el.classList.remove('of-error'); if (f.err) f.err.classList.remove('of-visible'); }\n  function setError(f){ f.el.classList.add('of-error'); if (f.err) f.err.classList.add('of-visible'); }\n  function updateBtn(){ if (isComplete()) btn.classList.add('of-active'); else btn.classList.remove('of-active'); }\n\n  Object.keys(fields).forEach(function(key){\n    var f = fields[key];\n    var evt = f.type === 'select' ? 'change' : (f.type === 'date' ? 'change' : 'input');\n    f.el.addEventListener(evt, function(){\n      if (val(f) !== '') clearError(f);\n      updateBtn();\n    });\n  });\n\n  btn.addEventListener('click', function(){\n    var valid = true;\n    Object.keys(fields).forEach(function(key){\n      var f = fields[key];\n      if (f.required \u0026\u0026 val(f) === '') { setError(f); valid = false; }\n    });\n    if (!valid) return;\n    if (btn.dataset.busy) return;\n    btn.dataset.busy = '1';\n    btn.textContent = 'Przekierowuję…';\n\n    if (!variantId) {\n      var sel = document.querySelector('select[name=\"id\"], input[name=\"id\"]');\n      if (sel) variantId = sel.value;\n    }\n    if (!variantId) {\n      btn.textContent = 'Zamawiam Ofertę Dopasowaną';\n      delete btn.dataset.busy;\n      alert('Nie można znaleźć produktu. Odśwież stronę i spróbuj ponownie.');\n      return;\n    }\n\n    var props = {\n      'Kierunek': val(fields.kierunek),\n      'Budżet na osobę': val(fields.budzet),\n      'Styl podróży': val(fields.styl),\n      'Liczba osób': val(fields.pax),\n      'Lotnisko wylotu': val(fields.lotnisko)\n    };\n    if (val(fields.termin)) props['Termin wyjazdu'] = val(fields.termin);\n    if (val(fields.dlugosc)) props['Długość pobytu'] = val(fields.dlugosc);\n    if (val(fields.uwagi)) props['Dodatkowe uwagi'] = val(fields.uwagi);\n\n    (async function(){\n      try {\n        var resp = await fetch('\/cart\/add.js', {\n          method: 'POST',\n          headers: {'Content-Type':'application\/json','Accept':'application\/json'},\n          body: JSON.stringify({ items: [{ id: parseInt(variantId,10), quantity: 1, properties: props }] })\n        });\n        if (!resp.ok) throw new Error('cart\/add ' + resp.status);\n        window.location.href = '\/checkout';\n      } catch(e) {\n        console.error(e);\n        btn.textContent = 'Zamawiam Ofertę Dopasowaną';\n        delete btn.dataset.busy;\n        alert('Wystąpił błąd. Spróbuj ponownie.');\n      }\n    })();\n  });\n})();\n\u003c\/script\u003e\u003c\/p\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c!-- OPINIE --\u003e\n\u003csection class=\"rev-section\"\u003e\n\u003cdiv class=\"rev-header\"\u003e\n\u003cspan class=\"rev-title\"\u003eCo mówią klienci?\u003c\/span\u003e\n\u003cdiv class=\"rev-stars-total\"\u003e\n\u003cspan class=\"rev-stars\"\u003e★★★★★\u003c\/span\u003e \u003cspan class=\"rev-count\"\u003e+18 opinii\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-grid\"\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eKasia M.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eGrecja • Czerwiec 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eWypełniłam formularz wieczorem, następnego dnia miałam gotową propozycję dopasowaną do budżetu. Super!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eTomek W.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eDominikana • Maj 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eSame konkrety, bez szukania po forach godzinami. Dokładnie w naszym stylu podróżowania.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eAnia i Piotr\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eMalta • Kwiecień 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eRomantyczny wyjazd zaplanowany idealnie, z linkami do rezerwacji. Sami zdecydowaliśmy, co i kiedy klikamy.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eMagda K.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eMadera • Luty 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003ePDF przejrzysty, wszystko opisane krok po kroku. Następnym razem znowu skorzystam.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c!-- DODATKOWE INFORMACJE --\u003e\n\u003csection class=\"info-section\"\u003e\n\u003cp class=\"info-heading\"\u003eDodatkowe informacje\u003c\/p\u003e\n\u003cdiv class=\"info-cards\"\u003e\n\u003cdiv class=\"info-card orange\"\u003e\n\u003cp class=\"info-card-text\"\u003eUsługa polega na przygotowaniu spersonalizowanej analizy i propozycji wyjazdu. Rezerwację dokonujesz samodzielnie, bezpośrednio u dostawcy (linie lotnicze, booking.com itp.).\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card orange\"\u003e\n\u003cp class=\"info-card-text\"\u003eCeny lotów i noclegów zmieniają się dynamicznie — zalecamy rezerwację od razu po otrzymaniu propozycji, aby złapać najlepszą cenę.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card green\"\u003e\n\u003cp class=\"info-card-text\"\u003eBrak ukrytych opłat. Płacisz tylko za przygotowanie analizy — koszt samego wyjazdu ponosisz bezpośrednio u dostawcy.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card green\"\u003e\n\u003cp class=\"info-card-text\"\u003eChcesz zmienić dane po zamówieniu? Skontaktuj się z nami, podając zaktualizowany kierunek, budżet, termin lub styl podróży.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e","brand":"taniwylot","offers":[{"title":"Default Title","offer_id":52084823785814,"sku":null,"price":149.0,"currency_code":"PLN","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/oferta-dopasowana.png?v=1770498957"},{"product_id":"plan-podrozy","title":"Plan podróży","description":"\u003ch3 style=\"text-align: center;\" data-end=\"318\" data-start=\"269\"\u003ePlan Podróży – szyty na miarę Twoich marzeń\u003c\/h3\u003e\n\u003cp data-end=\"556\" data-start=\"320\"\u003eNie masz czasu na planowanie, a chcesz wycisnąć z wyjazdu \u003cstrong data-end=\"386\" data-start=\"378\"\u003e100%\u003c\/strong\u003e?\u003cbr data-end=\"390\" data-start=\"387\"\u003eZostaw to nam. Przygotujemy dla Ciebie \u003cstrong data-end=\"457\" data-start=\"428\"\u003eindywidualny plan podróży\u003c\/strong\u003e, dopasowany dokładnie do Twoich potrzeb, stylu podróżowania i miejsca, do którego chcesz polecieć.\u003c\/p\u003e\n\u003cp data-end=\"582\" data-start=\"558\"\u003eTo idealna opcja, jeśli:\u003c\/p\u003e\n\u003cul data-end=\"803\" data-start=\"583\"\u003e\n\u003cli data-end=\"635\" data-start=\"583\"\u003e\n\u003cp data-end=\"635\" data-start=\"585\"\u003e✨ chcesz mieć wszystko zaplanowane krok po kroku\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"695\" data-start=\"636\"\u003e\n\u003cp data-end=\"695\" data-start=\"638\"\u003e🌍 jedziesz w nowe miejsce i nie wiesz, od czego zacząć\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"738\" data-start=\"696\"\u003e\n\u003cp data-end=\"738\" data-start=\"698\"\u003e⏳ nie chcesz tracić godzin na research\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"803\" data-start=\"739\"\u003e\n\u003cp data-end=\"803\" data-start=\"741\"\u003e🎯 zależy Ci na sprawdzonych miejscach i sensownej logistyce\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003ch3 data-end=\"837\" data-start=\"810\"\u003e\u003cbr\u003e\u003c\/h3\u003e\n\u003ch3 style=\"text-align: center;\" data-end=\"837\" data-start=\"810\"\u003eCo zawiera plan podróży?\u003c\/h3\u003e\n\u003cp data-end=\"1146\" data-start=\"839\"\u003e✔️ plan dni (dzień po dniu lub w innej formie – jak wolisz)\u003cbr data-end=\"901\" data-start=\"898\"\u003e✔️ propozycje atrakcji, zwiedzania i lokalnych perełek\u003cbr data-end=\"958\" data-start=\"955\"\u003e✔️ sugestie restauracji, kawiarni i miejsc wartych uwagi\u003cbr data-end=\"1017\" data-start=\"1014\"\u003e✔️ praktyczne wskazówki (transport, kolejność zwiedzania, tipy)\u003cbr data-end=\"1083\" data-start=\"1080\"\u003e✔️ plan dopasowany do \u003cstrong data-end=\"1146\" data-start=\"1105\"\u003eTwojego budżetu, tempa i celu podróży\u003c\/strong\u003e\u003c\/p\u003e\n\u003ch2 data-end=\"1170\" data-start=\"1153\"\u003e\u003cbr\u003e\u003c\/h2\u003e\n\u003ch3 style=\"text-align: center;\" data-end=\"1170\" data-start=\"1153\"\u003eJak to działa?\u003c\/h3\u003e\n\u003cp data-end=\"1424\" data-start=\"1172\"\u003e1️⃣ Kupujesz produkt \u003cstrong data-end=\"1209\" data-start=\"1193\"\u003ePlan Podróży\u003c\/strong\u003e\u003cbr data-end=\"1212\" data-start=\"1209\"\u003e2️⃣ Po zakupie otrzymasz ode mnie krótką ankietę \/ kontakt\u003cbr data-end=\"1273\" data-start=\"1270\"\u003e3️⃣ Przekazujesz mi swoje oczekiwania (kierunek, liczba dni, styl podróży, budżet itp.)\u003cbr data-end=\"1363\" data-start=\"1360\"\u003e4️⃣ Otrzymujesz \u003cstrong data-end=\"1419\" data-start=\"1379\"\u003egotowy, personalizowany plan podróży\u003c\/strong\u003e 🎉\u003c\/p\u003e\n\u003cp data-end=\"1482\" data-start=\"1426\"\u003eBez stresu. Bez chaosu. Bez godzin spędzonych na Google.\u003c\/p\u003e\n\u003ch2 data-end=\"1518\" data-start=\"1489\"\u003e\u003cbr\u003e\u003c\/h2\u003e\n\u003ch3 style=\"text-align: center;\" data-end=\"1518\" data-start=\"1489\"\u003eDla kogo jest ten produkt?\u003c\/h3\u003e\n\u003cul data-end=\"1707\" data-start=\"1520\"\u003e\n\u003cli data-end=\"1534\" data-start=\"1520\"\u003e\n\u003cp data-end=\"1534\" data-start=\"1522\"\u003edla par 💑\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"1561\" data-start=\"1535\"\u003e\n\u003cp data-end=\"1561\" data-start=\"1537\"\u003edla rodzin 👨👩👧👦\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"1589\" data-start=\"1562\"\u003e\n\u003cp data-end=\"1589\" data-start=\"1564\"\u003edla solo podróżników 🧳\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"1631\" data-start=\"1590\"\u003e\n\u003cp data-end=\"1631\" data-start=\"1592\"\u003edla city breaków i dłuższych wyjazdów\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli data-end=\"1707\" data-start=\"1632\"\u003e\n\u003cp data-end=\"1707\" data-start=\"1634\"\u003edla osób, które chcą mieć \u003cstrong data-end=\"1678\" data-start=\"1660\"\u003ekonkretny plan\u003c\/strong\u003e, a nie przypadkowe pomysły\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp data-end=\"1878\" data-start=\"1714\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"1878\" data-start=\"1714\"\u003e📌 \u003cstrong data-end=\"1727\" data-start=\"1717\"\u003eUwaga:\u003c\/strong\u003e\u003cbr data-end=\"1730\" data-start=\"1727\"\u003eTen produkt dotyczy \u003cstrong data-end=\"1782\" data-start=\"1750\"\u003ewyłącznie planowania podróży\u003c\/strong\u003e – nie obejmuje rezerwacji noclegów ani lotów (chyba że ustalimy inaczej w ramach innych ofert).\u003c\/p\u003e","brand":"taniwylot","offers":[{"title":"Default Title","offer_id":52540736274774,"sku":null,"price":29.0,"currency_code":"PLN","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/plan-podrozy.png?v=1770498533"},{"product_id":"loty","title":"Pakiet: Loty","description":"\u003cstyle\u003e\n  .htd-section { margin: 24px auto; width: 100%; box-sizing: border-box; padding: 0 8px; }\n  .htd-grid { display: flex; flex-wrap: nowrap; gap: 12px; justify-content: center; }\n  .htd-card { background: #f5f5f0; border-radius: 25px; padding: 20px 16px; flex: 1; box-sizing: border-box; text-align: center; max-width: 220px; }\n  .htd-num { width: 32px; height: 32px; background: #0094d9; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 10px auto; font-size: 16px; font-weight: 700; color: white; flex-shrink: 0; }\n  .htd-title { font-size: 14px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  .htd-title-row { display: flex; flex-direction: column; align-items: center; gap: 5px; margin-bottom: 6px; }\n  .htd-desc { font-size: 12px; color: #444; line-height: 1.4; }\n  .htd-badge { display: inline-flex; align-items: center; justify-content: center; gap: 3px; background: #e7b631; border-radius: 20px; padding: 2px 7px 2px 4px; flex-shrink: 0; }\n  .htd-badge img { width: 12px; height: 12px; object-fit: contain; display: block; flex-shrink: 0; }\n  .htd-badge-text { font-size: 9px; font-weight: 800; color: #231f20; text-transform: uppercase; letter-spacing: 0.5px; white-space: nowrap; line-height: 1; }\n  @media (max-width: 768px) { .htd-grid { flex-direction: column; gap: 10px; } .htd-card { max-width: 100%; text-align: left; padding: 16px 20px; display: flex; flex-direction: row; align-items: flex-start; gap: 14px; } .htd-num { margin: 0; flex-shrink: 0; } .htd-card-text { text-align: left; } .htd-title-row { flex-direction: row; align-items: center; justify-content: flex-start; } }\n  .sec-divider { width: 100%; height: 3px; background: #f5f5f0; border-radius: 2px; margin: 20px 0; }\n  .inc-section { margin: 16px auto; box-sizing: border-box; width: 100%; }\n  .inc-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 12px 0; }\n  .inc-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; width: 100%; }\n  .inc-cell { background: #f5f5f0; border-radius: 16px; padding: 14px 10px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; }\n  .inc-cell img { width: 24px; height: 24px; object-fit: contain; display: block; }\n  .inc-label { font-size: 12px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  @media (max-width: 480px) { .inc-grid { gap: 8px; } .inc-cell { padding: 10px 6px; } .inc-label { font-size: 11px; } }\n  .ww-section { margin: 16px auto; box-sizing: border-box; }\n  .ww-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 auto 14px auto; }\n  .ww-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }\n  .ww-cell { background: #f5f5f0; border-radius: 16px; padding: 14px 16px; box-sizing: border-box; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }\n  .ww-cell.highlighted { background: #e8f5ff; border: 2px solid #0094d9; }\n  .ww-icon img { width: 24px; height: 24px; object-fit: contain; display: block; }\n  .ww-title { font-size: 13px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  .ww-desc { font-size: 12px; color: #444; margin: 0; line-height: 1.4; }\n  @media (max-width: 480px) { .ww-grid { gap: 8px; } .ww-cell { padding: 12px; } .ww-title { font-size: 12px; } .ww-desc { font-size: 11px; } }\n  .price-compare-wrapper { display: flex; flex-direction: column; align-items: center; margin: 8px auto 16px auto; max-width: 520px; width: 100%; box-sizing: border-box; padding: 0 16px; }\n  .price-compare-heading { font-size: 18px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 14px 0; white-space: nowrap; }\n  @media (max-width: 480px) { .price-compare-heading { font-size: 15px; } }\n  .price-compare-row { display: flex; gap: 12px; width: 100%; align-items: stretch; }\n  .price-card { flex: 1; border-radius: 25px; padding: 20px 12px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; gap: 4px; }\n  .price-card-label { font-size: 12px; font-weight: 650; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }\n  .price-card-amount { font-size: 22px; font-weight: 900; }\n  .price-card-sub { font-size: 11px; font-weight: 500; line-height: 1.3; margin-top: 4px; }\n  .price-savings { width: 100%; margin-top: 12px; background: linear-gradient(135deg, #f9c200, #f0a500); color: #231f20; border-radius: 25px; padding: 14px 24px; box-shadow: 0 6px 20px rgba(249,194,0,0.5); border: 2px solid rgba(255,255,255,0.4); text-align: center; box-sizing: border-box; }\n  .price-savings-label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; }\n  .price-savings-amount { font-size: 22px; font-weight: 800; margin-top: 4px; }\n  .why-worth-box { max-width: 90%; }\n  @media (max-width: 768px) { .why-worth-box { max-width: 100%; } }\n  .info-section { width: 100%; box-sizing: border-box; margin: 0 auto; }\n  .info-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 14px 0; }\n  .info-cards { display: flex; flex-direction: column; gap: 10px; }\n  .info-card { display: flex; align-items: flex-start; gap: 12px; border-radius: 12px; padding: 14px 16px; box-sizing: border-box; border-left: 4px solid; text-align: left; }\n  .info-card.orange { background: #fff8f0; border-color: #f0a030; }\n  .info-card.green { background: #f2fbf4; border-color: #3ab85a; }\n  .info-card-icon { width: 22px; height: 22px; object-fit: contain; flex-shrink: 0; display: block; margin-top: 1px; }\n  .info-card-text { font-size: 13px; color: #333; line-height: 1.5; margin: 0; }\n  .rev-section { width: 100%; box-sizing: border-box; margin: 0 auto; }\n  .rev-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }\n  .rev-title { font-size: 18px; font-weight: 800; color: #231f20; }\n  .rev-stars-total { display: flex; align-items: center; gap: 6px; }\n  .rev-stars { color: #f9c200; font-size: 16px; letter-spacing: 1px; }\n  .rev-count { font-size: 13px; color: #888; font-weight: 600; }\n  .rev-carousel-wrap { position: relative; overflow: hidden; }\n  .rev-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }\n  .rev-card { background: #f5f5f0; border-radius: 20px; padding: 16px; box-sizing: border-box; display: flex; flex-direction: column; gap: 8px; }\n  .rev-card-top { display: flex; justify-content: space-between; align-items: center; }\n  .rev-name { font-size: 13px; font-weight: 800; color: #231f20; }\n  .rev-card-stars { color: #f9c200; font-size: 13px; }\n  .rev-dest { font-size: 12px; color: #0094d9; font-weight: 700; }\n  .rev-text { font-size: 12px; color: #444; line-height: 1.5; }\n  .rev-screenshots-label { font-size: 12px; color: #aaa; font-weight: 600; text-align: center; margin: 20px 0 10px 0; letter-spacing: 0.5px; }\n  .rev-screenshots { display: flex; gap: 12px; justify-content: center; }\n  .rev-ss-wrap { display: flex; flex-direction: column; align-items: center; gap: 6px; }\n  .rev-ss-label { font-size: 11px; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: 0.5px; }\n  .rev-ss-img { width: 140px; aspect-ratio: 9\/16; background: #e0e0da; border-radius: 14px; border: 2px solid #d0d0c8; overflow: hidden; display: flex; align-items: center; justify-content: center; }\n  .rev-ss-img img { width: 100%; height: 100%; object-fit: cover; display: block; }\n  @media (max-width: 640px) {\n    .rev-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 10px; padding-bottom: 8px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }\n    .rev-grid::-webkit-scrollbar { display: none; }\n    .rev-card { min-width: 85vw; scroll-snap-align: start; flex-shrink: 0; }\n    .rev-screenshots { overflow-x: auto; scroll-snap-type: x mandatory; justify-content: center; padding-bottom: 8px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }\n    .rev-screenshots::-webkit-scrollbar { display: none; }\n    .rev-ss-wrap { scroll-snap-align: start; flex-shrink: 0; }\n  }\n  \/* FLIGHT FORM *\/\n  .flight-form-section { margin: 0 auto; width: 100%; box-sizing: border-box; }\n  .flight-form-heading { font-size: 20px; font-weight: 800; color: #231f20; text-align: center; margin: 0 0 20px 0; }\n  .flight-form-box { background: #f5f5f0; border-radius: 25px; padding: 24px 28px; box-sizing: border-box; }\n  .flight-form-field { margin-bottom: 16px; }\n  .flight-form-label { font-size: 13px; font-weight: 700; color: #231f20; margin: 0 0 6px 0; display: block; }\n  .flight-form-label span.req { color: #AC0000; margin-left: 2px; }\n  .flight-form-label span.opt { font-size: 11px; font-weight: 500; color: #888; margin-left: 4px; }\n  .flight-form-select, .flight-form-input, .flight-form-date { width: 100%; padding: 12px 16px; border: 2px solid #e0e0da; border-radius: 14px; font-size: 14px; color: #231f20; background: #fff; box-sizing: border-box; appearance: none; -webkit-appearance: none; outline: none; transition: border-color 0.2s; font-family: inherit; }\n  .flight-form-select { background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23231f20' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C\/polyline%3E%3C\/svg%3E\"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 40px; cursor: pointer; }\n  .flight-form-select:focus, .flight-form-input:focus, .flight-form-date:focus { border-color: #0094d9; }\n  .flight-form-select.ff-error, .flight-form-input.ff-error, .flight-form-date.ff-error { border-color: #AC0000 !important; background-color: #fff5f5; }\n  .flight-form-error-msg { font-size: 11px; color: #AC0000; font-weight: 600; margin: 4px 0 0 4px; display: none; }\n  .flight-form-error-msg.ff-visible { display: block; }\n  .flight-form-divider { width: 100%; height: 1px; background: rgba(35,31,32,0.10); margin: 20px 0; }\n  .flight-price-row { display: flex; justify-content: space-between; align-items: center; padding: 4px 0 0 0; }\n  .flight-price-label { font-size: 14px; font-weight: 700; color: #231f20; }\n  .flight-price-amount { font-size: 22px; font-weight: 900; color: #0094d9; }\n  .flight-pay-btn { display: none; width: 100%; padding: 16px; background-color: #AC0000; border: none; border-radius: 14px; color: #fff; font-size: 16px; font-weight: 800; cursor: pointer; text-align: center; margin-top: 16px; transition: opacity 0.2s; box-sizing: border-box; }\n  .flight-pay-btn:hover { opacity: 0.88; }\n  .flight-pay-btn.ff-show { display: block; }\n  @media (max-width: 480px) { .flight-form-box { padding: 18px 16px; } }\n\u003c\/style\u003e\n\u003c!-- JAK TO DZIAŁA --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"htd-section\"\u003e\n\u003ch3 style=\"text-align: center; color: #231f20; margin: 0 0 20px 0; font-size: 22px;\"\u003eJak to działa?\u003c\/h3\u003e\n\u003cdiv class=\"htd-grid\"\u003e\n\u003cdiv class=\"htd-card\"\u003e\n\u003cdiv class=\"htd-num\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"htd-card-text\"\u003e\n\u003cdiv style=\"margin-bottom: 6px;\"\u003e\u003cspan class=\"htd-title\"\u003ePodajesz szczegóły\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv class=\"htd-desc\"\u003e\n\u003cmeta charset=\"utf-8\"\u003eW formularzu poniżej podajesz kierunek, termin itp.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"htd-card\"\u003e\n\u003cdiv class=\"htd-num\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"htd-card-text\"\u003e\n\u003cdiv style=\"margin-bottom: 6px;\"\u003e\u003cspan class=\"htd-title\"\u003eKupujesz\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv class=\"htd-desc\"\u003eUpewnij się, że wpisane dane są prawidłowe i zapłać online\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"htd-card\"\u003e\n\u003cdiv class=\"htd-num\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"htd-card-text\"\u003e\n\u003cdiv class=\"htd-title-row\"\u003e\n\u003cspan class=\"htd-title\"\u003eDostajesz loty\u003c\/span\u003e \u003cspan class=\"htd-badge\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/Tekst_akapitu_6_2c4c84b1-aa72-4cf3-af7c-a8dd8a64f4b2.png?v=1777677732\" alt=\"od razu\"\u003e\u003cspan class=\"htd-badge-text\"\u003eSZYBKO\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"htd-desc\"\u003eOtrzymujesz zestawienie najlepszych opcji z linkami do rezerwacji\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- FORMULARZ --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"flight-form-section\"\u003e\n\u003ch3 class=\"flight-form-heading\"\u003eWypełnij szczegóły lotu\u003c\/h3\u003e\n\u003cdiv class=\"flight-form-box\"\u003e\n\u003cdiv class=\"flight-form-field\"\u003e\n\u003clabel class=\"flight-form-label\" for=\"ff-airport\"\u003eLotnisko wylotu \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\u003cselect class=\"flight-form-select\" id=\"ff-airport\"\u003e\n\u003coption value=\"\"\u003e— wybierz lotnisko —\u003c\/option\u003e\n\u003coption value=\"Warszawa\"\u003eWarszawa\u003c\/option\u003e\n\u003coption value=\"Kraków\"\u003eKraków\u003c\/option\u003e\n\u003coption value=\"Gdańsk\"\u003eGdańsk\u003c\/option\u003e\n\u003coption value=\"Katowice\"\u003eKatowice\u003c\/option\u003e\n\u003coption value=\"Wrocław\"\u003eWrocław\u003c\/option\u003e\n\u003coption value=\"Poznań\"\u003ePoznań\u003c\/option\u003e\n\u003coption value=\"Łódź\"\u003eŁódź\u003c\/option\u003e\n\u003coption value=\"Rzeszów\"\u003eRzeszów\u003c\/option\u003e\n\u003coption value=\"Szczecin\"\u003eSzczecin\u003c\/option\u003e\n\u003coption value=\"Bydgoszcz\"\u003eBydgoszcz\u003c\/option\u003e\n\u003coption value=\"Lublin\"\u003eLublin\u003c\/option\u003e\n\u003coption value=\"Zielona Góra\"\u003eZielona Góra\u003c\/option\u003e\n\u003c\/select\u003e\n\u003cp class=\"flight-form-error-msg\" id=\"ff-airport-err\"\u003eWybierz lotnisko wylotu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"flight-form-field\"\u003e\n\u003clabel class=\"flight-form-label\" for=\"ff-dest\"\u003eKierunek \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e \u003cinput class=\"flight-form-input\" type=\"text\" id=\"ff-dest\" placeholder=\"np. Dominikana, Grecja, Madera…\"\u003e\n\u003cp class=\"flight-form-error-msg\" id=\"ff-dest-err\"\u003eWpisz kierunek podróży\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"flight-form-field\"\u003e\n\u003clabel class=\"flight-form-label\" for=\"ff-date-out\"\u003eTermin wylotu \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e \u003cinput class=\"flight-form-date\" type=\"date\" id=\"ff-date-out\"\u003e\n\u003cp class=\"flight-form-error-msg\" id=\"ff-date-out-err\"\u003eWybierz termin wylotu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"flight-form-field\"\u003e\n\u003clabel class=\"flight-form-label\" for=\"ff-date-ret\"\u003eTermin powrotu \u003cspan class=\"opt\"\u003e(opcjonalnie)\u003c\/span\u003e\u003c\/label\u003e \u003cinput class=\"flight-form-date\" type=\"date\" id=\"ff-date-ret\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"flight-form-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"flight-price-row\"\u003e\n\u003cspan class=\"flight-price-label\"\u003eKoszt wyszukiwania\u003c\/span\u003e \u003cspan class=\"flight-price-amount\"\u003e37 zł\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbutton class=\"flight-pay-btn\" id=\"ff-pay-btn\" type=\"button\"\u003eZapłać teraz\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- SKRYPT: pobiera variantId z JSON produktu, nie z formularza motywu --\u003e\n\u003cp\u003e\u003cscript type=\"application\/json\" id=\"ff-variant-data\"\u003e{{ product.selected_or_first_available_variant.id | json }}\u003c\/script\u003e \u003cscript\u003e\n(function(){\n  var elAirport  = document.getElementById('ff-airport');\n  var elDest     = document.getElementById('ff-dest');\n  var elDateOut  = document.getElementById('ff-date-out');\n  var elDateRet  = document.getElementById('ff-date-ret');\n  var elPayBtn   = document.getElementById('ff-pay-btn');\n  var errAirport = document.getElementById('ff-airport-err');\n  var errDest    = document.getElementById('ff-dest-err');\n  var errDateOut = document.getElementById('ff-date-out-err');\n\n  \/\/ Pobierz variantId z osadzonego JSON (nie z formularza motywu)\n  var variantId = null;\n  try {\n    var raw = document.getElementById('ff-variant-data');\n    if(raw) variantId = JSON.parse(raw.textContent.trim());\n  } catch(e){}\n  \/\/ Fallback: szukaj w window.ShopifyAnalytics lub meta\n  if(!variantId \u0026\u0026 window.ShopifyAnalytics \u0026\u0026 window.ShopifyAnalytics.meta \u0026\u0026 window.ShopifyAnalytics.meta.selectedVariantId) {\n    variantId = window.ShopifyAnalytics.meta.selectedVariantId;\n  }\n\n  var t = new Date();\n  var minDate = t.getFullYear()+'-'+String(t.getMonth()+1).padStart(2,'0')+'-'+String(t.getDate()).padStart(2,'0');\n  elDateOut.min = minDate;\n  elDateRet.min = minDate;\n\n  function isComplete(){ return elAirport.value !== '' \u0026\u0026 elDest.value.trim() !== '' \u0026\u0026 elDateOut.value !== ''; }\n  function setError(el,errEl){ el.classList.add('ff-error'); if(errEl) errEl.classList.add('ff-visible'); }\n  function clearError(el,errEl){ el.classList.remove('ff-error'); if(errEl) errEl.classList.remove('ff-visible'); }\n  function updateBtn(){ if(isComplete()) elPayBtn.classList.add('ff-show'); else elPayBtn.classList.remove('ff-show'); }\n\n  elAirport.addEventListener('change', function(){ if(elAirport.value) clearError(elAirport,errAirport); updateBtn(); });\n  elDest.addEventListener('input',    function(){ if(elDest.value.trim()) clearError(elDest,errDest); updateBtn(); });\n  elDateOut.addEventListener('change',function(){ if(elDateOut.value){ clearError(elDateOut,errDateOut); elDateRet.min=elDateOut.value; } updateBtn(); });\n  elDateRet.addEventListener('change',function(){ updateBtn(); });\n\n  elPayBtn.addEventListener('click', function(){\n    var valid = true;\n    if(!elAirport.value)     { setError(elAirport,errAirport);   valid=false; }\n    if(!elDest.value.trim()) { setError(elDest,errDest);         valid=false; }\n    if(!elDateOut.value)     { setError(elDateOut,errDateOut);   valid=false; }\n    if(!valid) return;\n    if(elPayBtn.dataset.busy) return;\n    elPayBtn.dataset.busy='1';\n    elPayBtn.textContent='Przekierowuję…';\n\n    \/\/ Jeśli variantId nadal null, spróbuj ostatni fallback\n    if(!variantId){\n      var sel = document.querySelector('select[name=\"id\"], input[name=\"id\"]');\n      if(sel) variantId = sel.value;\n    }\n    if(!variantId){\n      elPayBtn.textContent='Zapłać teraz';\n      delete elPayBtn.dataset.busy;\n      alert('Nie można znaleźć produktu. Odśwież stronę i spróbuj ponownie.');\n      return;\n    }\n\n    var props = {\n      'Lotnisko wylotu': elAirport.value,\n      'Kierunek': elDest.value.trim(),\n      'Termin wylotu': elDateOut.value\n    };\n    if(elDateRet.value) props['Termin powrotu'] = elDateRet.value;\n\n    (async function(){\n      try {\n        await fetch('\/cart\/clear.js', {method:'POST'});\n        var resp = await fetch('\/cart\/add.js', {\n          method: 'POST',\n          headers: {'Content-Type':'application\/json','Accept':'application\/json'},\n          body: JSON.stringify({ items: [{ id: parseInt(variantId,10), quantity: 1, properties: props }] })\n        });\n        if(!resp.ok) throw new Error('cart\/add ' + resp.status);\n        window.location.href = '\/checkout';\n      } catch(e) {\n        console.error(e);\n        elPayBtn.textContent='Zapłać teraz';\n        delete elPayBtn.dataset.busy;\n        alert('Wystąpił błąd. Spróbuj ponownie.');\n      }\n    })();\n  });\n})();\n\u003c\/script\u003e\u003c\/p\u003e\n\u003c!-- CO ZAWIERA --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"inc-section why-worth-box\"\u003e\n\u003cp class=\"inc-heading\"\u003eCo zawiera?\u003c\/p\u003e\n\u003cdiv class=\"inc-grid\"\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/najtansze.png?v=1782815070\" alt=\"Loty\"\u003e\n\u003cp class=\"inc-label\"\u003eNajtańsze loty\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/ikonka-samolot.png?v=1779194702\" alt=\"Lotnisko\"\u003e\n\u003cp class=\"inc-label\"\u003eWylot z Twojego lotniska\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/9.png?v=1777675519\" alt=\"PDF\"\u003e\n\u003cp class=\"inc-label\"\u003eZestawienie PDF\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/linki.png?v=1782814422\" alt=\"Linki\"\u003e\n\u003cp class=\"inc-label\"\u003eLinki do rezerwacji\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/opcje-cenowe.png?v=1782814422\" alt=\"Opcje\"\u003e\n\u003cp class=\"inc-label\"\u003eRóżne opcje cenowe\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/10_d5ed244b-dfb2-4b45-8dc2-a12deb530ae4.png?v=1777675520\" alt=\"Wsparcie\"\u003e\n\u003cp class=\"inc-label\"\u003eWsparcie\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- DLACZEGO WARTO --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"ww-section why-worth-box\"\u003e\n\u003cp class=\"ww-heading\"\u003eDlaczego warto?\u003c\/p\u003e\n\u003cdiv class=\"ww-grid\"\u003e\n\u003cdiv class=\"ww-cell highlighted\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/5_f7897300-be1a-4594-917e-5fcd184ea57b.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eWyniki szybko\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eZestawienie lotów dostajesz sprawnie po podaniu szczegółów\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell highlighted\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/11.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eNajniższa cena\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eSprawdzone — taniej niż znajdziesz sam na własną rękę\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/dowolny-kierunek.png?v=1782814664\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eDowolny kierunek\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003ePolska, Europa, egzotyka — szukamy wszędzie\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/8_8be9a721-e94c-45ab-9cf9-5f3e3f18bddb.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003ePłacisz raz\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eZero ukrytych opłat — bilet kupujesz sam bezpośrednio u przewoźnika\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/9_d7e09ab9-cc14-4f79-8f97-4f49af970542.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eSprawdzone opcje\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eKażde zestawienie weryfikowane pod kątem ceny i wygody\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/10_e859e30a-0767-417f-845e-50815dc4816b.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eOszczędzasz czas\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003e3–5 godzin szukania zamienione w 2 minuty zakupu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- PORÓWNANIE CEN --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"price-compare-wrapper\"\u003e\n\u003cp class=\"price-compare-heading\"\u003eNasza oferta vs. samodzielne szukanie\u003c\/p\u003e\n\u003cdiv class=\"price-compare-row\"\u003e\n\u003cdiv class=\"price-card\" style=\"background: #e8f5ff; border: 2.5px solid #0094d9; box-shadow: 0 4px 16px rgba(0,148,217,0.18);\"\u003e\n\u003cdiv class=\"price-card-label\" style=\"color: #0072a8;\"\u003eNasza oferta\u003c\/div\u003e\n\u003cdiv class=\"price-card-amount\" style=\"color: #0094d9;\"\u003e37 zł\u003c\/div\u003e\n\u003cdiv class=\"price-card-sub\" style=\"color: #0072a8;\"\u003eza gotowe zestawienie lotów\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"price-card\" style=\"background: #f0f0f0; border: 2px solid #c8c8c8; opacity: 0.7;\"\u003e\n\u003cdiv class=\"price-card-label\" style=\"color: #999;\"\u003eSam szukasz\u003c\/div\u003e\n\u003cdiv class=\"price-card-amount\" style=\"color: #aaa;\"\u003e\u0026gt;999 zł\u003c\/div\u003e\n\u003cdiv class=\"price-card-sub\" style=\"color: #aaa;\"\u003eprzepłacanie + 5h czasu\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"price-savings\"\u003e\n\u003cdiv class=\"price-savings-label\"\u003eOszczędzasz łącznie\u003c\/div\u003e\n\u003cdiv class=\"price-savings-amount\"\u003ePieniądze + 5 godzin życia\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- OPINIE --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"rev-section why-worth-box\"\u003e\n\u003cdiv class=\"rev-header\"\u003e\n\u003cspan class=\"rev-title\"\u003eCo mówią klienci?\u003c\/span\u003e\n\u003cdiv class=\"rev-stars-total\"\u003e\n\u003cspan class=\"rev-stars\"\u003e★★★★★\u003c\/span\u003e \u003cspan class=\"rev-count\"\u003e+20 opinii\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-carousel-wrap\"\u003e\n\u003cdiv class=\"rev-grid\"\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eKasia M.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eDominikana • Maj 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003ePDF przyszedł od razu po zakupie.\u003cbr\u003eZarezerwowałam w 5 minut. Polecam!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eTomek W.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eSardynia • kwiecień 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eSzukałem sam 3h i nie znalazłem nic\u003cbr\u003etańszego. Tu gotowe za 37 zł.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eAnia i Piotr\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eMalta • kwiecień 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eWszystko zgodnie z opisem, linki działały, loty super.\u003cbr\u003eWrócimy po kolejną!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eMagda K.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eMadera • Luty 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eSuper oferta, wszystko się zgadzało.\u003cbr\u003eNastępnym razem też skorzystam!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp class=\"rev-screenshots-label\"\u003eScreenshot'y klientów:\u003c\/p\u003e\n\u003cdiv class=\"rev-screenshots\"\u003e\n\u003cdiv class=\"rev-ss-wrap\"\u003e\n\u003cdiv class=\"rev-ss-label\"\u003eWiadomość\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-img\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/reklama_4.png?v=1780341425\" alt=\"\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-wrap\"\u003e\n\u003cdiv class=\"rev-ss-label\"\u003eRelacja\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-img\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/reklama_3.png?v=1780341427\" alt=\"\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-wrap\"\u003e\n\u003cdiv class=\"rev-ss-label\"\u003eOpinia\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-img\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/reklama_5.png?v=1780341425\" alt=\"\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- DODATKOWE INFORMACJE --\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"info-section why-worth-box\"\u003e\n\u003cp class=\"info-heading\"\u003eDodatkowe informacje\u003c\/p\u003e\n\u003cdiv class=\"info-cards\"\u003e\n\u003cdiv class=\"info-card orange\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/5_e5d9bc28-d01a-476f-a0b1-3939d3ed967f.png?v=1777721992\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eWyszukiwanie dotyczy wyłącznie lotów. Zakup biletu odbywa się bezpośrednio u przewoźnika lub pośrednika — Twoje pieniądze są bezpieczne.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card orange\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/Tekst_akapitu_7_3e027ea0-be8c-42b6-a6de-f5a44c22285f.png?v=1777722146\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eCeny biletów zmieniają się dynamicznie — zalecamy rezerwację od razu po otrzymaniu zestawienia, żeby złapać najlepszą cenę.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card green\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/7_f52c4585-fd0d-416c-8172-4e27b39e7277.png?v=1777721992\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eBrak ukrytych opłat. Płacisz tylko za wyszukiwanie — cena biletu to koszt po Twojej stronie, bezpośrednio u przewoźnika.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card green\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/8_0425b786-93af-476c-af30-4621a81e904f.png?v=1779196621\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eWpisałeś złe dane? Skontaktuj się z nami podając zaktualizowany: kierunek, termin, lotnisko wylotu i liczbę osób. \u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"taniwylot","offers":[{"title":"Default Title","offer_id":52540819833174,"sku":null,"price":59.0,"currency_code":"PLN","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/loty.png?v=1770500272"},{"product_id":"hotel","title":"Pakiet: Hotel","description":"\u003cstyle\u003e\n  .htd-section { margin: 24px auto; width: 100%; box-sizing: border-box; padding: 0 8px; }\n  .htd-grid { display: flex; flex-wrap: nowrap; gap: 12px; justify-content: center; }\n  .htd-card { background: #f5f5f0; border-radius: 25px; padding: 20px 16px; flex: 1; box-sizing: border-box; text-align: center; max-width: 220px; }\n  .htd-num { width: 32px; height: 32px; background: #0094d9; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 10px auto; font-size: 16px; font-weight: 700; color: white; flex-shrink: 0; }\n  .htd-title { font-size: 14px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  .htd-title-row { display: flex; flex-direction: column; align-items: center; gap: 5px; margin-bottom: 6px; }\n  .htd-desc { font-size: 12px; color: #444; line-height: 1.4; }\n  .htd-badge { display: inline-flex; align-items: center; justify-content: center; gap: 3px; background: #e7b631; border-radius: 20px; padding: 2px 7px 2px 4px; flex-shrink: 0; }\n  .htd-badge img { width: 12px; height: 12px; object-fit: contain; display: block; flex-shrink: 0; }\n  .htd-badge-text { font-size: 9px; font-weight: 800; color: #231f20; text-transform: uppercase; letter-spacing: 0.5px; white-space: nowrap; line-height: 1; }\n  @media (max-width: 768px) { .htd-grid { flex-direction: column; gap: 10px; } .htd-card { max-width: 100%; text-align: left; padding: 16px 20px; display: flex; flex-direction: row; align-items: flex-start; gap: 14px; } .htd-num { margin: 0; flex-shrink: 0; } .htd-card-text { text-align: left; } .htd-title-row { flex-direction: row; align-items: center; justify-content: flex-start; } }\n  .sec-divider { width: 100%; height: 3px; background: #f5f5f0; border-radius: 2px; margin: 20px 0; }\n  .inc-section { margin: 16px auto; box-sizing: border-box; width: 100%; }\n  .inc-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 12px 0; }\n  .inc-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; width: 100%; }\n  .inc-cell { background: #f5f5f0; border-radius: 16px; padding: 14px 10px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; }\n  .inc-cell img { width: 24px; height: 24px; object-fit: contain; display: block; }\n  .inc-label { font-size: 12px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  @media (max-width: 480px) { .inc-grid { gap: 8px; } .inc-cell { padding: 10px 6px; } .inc-label { font-size: 11px; } }\n  .ww-section { margin: 16px auto; box-sizing: border-box; }\n  .ww-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 auto 14px auto; }\n  .ww-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }\n  .ww-cell { background: #f5f5f0; border-radius: 16px; padding: 14px 16px; box-sizing: border-box; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }\n  .ww-cell.highlighted { background: #e8f5ff; border: 2px solid #0094d9; }\n  .ww-icon img { width: 24px; height: 24px; object-fit: contain; display: block; }\n  .ww-title { font-size: 13px; font-weight: 700; color: #231f20; margin: 0; line-height: 1.3; }\n  .ww-desc { font-size: 12px; color: #444; margin: 0; line-height: 1.4; }\n  @media (max-width: 480px) { .ww-grid { gap: 8px; } .ww-cell { padding: 12px; } .ww-title { font-size: 12px; } .ww-desc { font-size: 11px; } }\n  .price-compare-wrapper { display: flex; flex-direction: column; align-items: center; margin: 8px auto 16px auto; max-width: 520px; width: 100%; box-sizing: border-box; padding: 0 16px; }\n  .price-compare-heading { font-size: 18px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 14px 0; white-space: nowrap; }\n  @media (max-width: 480px) { .price-compare-heading { font-size: 15px; } }\n  .price-compare-row { display: flex; gap: 12px; width: 100%; align-items: stretch; }\n  .price-card { flex: 1; border-radius: 25px; padding: 20px 12px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; gap: 4px; }\n  .price-card-label { font-size: 12px; font-weight: 650; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }\n  .price-card-amount { font-size: 22px; font-weight: 900; }\n  .price-card-sub { font-size: 11px; font-weight: 500; line-height: 1.3; margin-top: 4px; }\n  .price-savings { width: 100%; margin-top: 12px; background: linear-gradient(135deg, #f9c200, #f0a500); color: #231f20; border-radius: 25px; padding: 14px 24px; box-shadow: 0 6px 20px rgba(249,194,0,0.5); border: 2px solid rgba(255,255,255,0.4); text-align: center; box-sizing: border-box; }\n  .price-savings-label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; }\n  .price-savings-amount { font-size: 22px; font-weight: 800; margin-top: 4px; }\n  .why-worth-box { max-width: 90%; }\n  @media (max-width: 768px) { .why-worth-box { max-width: 100%; } }\n  .info-section { width: 100%; box-sizing: border-box; margin: 0 auto; }\n  .info-heading { font-size: 16px; font-weight: 700; color: #231f20; text-align: center; margin: 0 0 14px 0; }\n  .info-cards { display: flex; flex-direction: column; gap: 10px; }\n  .info-card { display: flex; align-items: flex-start; gap: 12px; border-radius: 12px; padding: 14px 16px; box-sizing: border-box; border-left: 4px solid; text-align: left; }\n  .info-card.orange { background: #fff8f0; border-color: #f0a030; }\n  .info-card.green { background: #f2fbf4; border-color: #3ab85a; }\n  .info-card-icon { width: 22px; height: 22px; object-fit: contain; flex-shrink: 0; display: block; margin-top: 1px; }\n  .info-card-text { font-size: 13px; color: #333; line-height: 1.5; margin: 0; }\n  .rev-section { width: 100%; box-sizing: border-box; margin: 0 auto; }\n  .rev-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }\n  .rev-title { font-size: 18px; font-weight: 800; color: #231f20; }\n  .rev-stars-total { display: flex; align-items: center; gap: 6px; }\n  .rev-stars { color: #f9c200; font-size: 16px; letter-spacing: 1px; }\n  .rev-count { font-size: 13px; color: #888; font-weight: 600; }\n  .rev-carousel-wrap { position: relative; overflow: hidden; }\n  .rev-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }\n  .rev-card { background: #f5f5f0; border-radius: 20px; padding: 16px; box-sizing: border-box; display: flex; flex-direction: column; gap: 8px; }\n  .rev-card-top { display: flex; justify-content: space-between; align-items: center; }\n  .rev-name { font-size: 13px; font-weight: 800; color: #231f20; }\n  .rev-card-stars { color: #f9c200; font-size: 13px; }\n  .rev-dest { font-size: 12px; color: #0094d9; font-weight: 700; }\n  .rev-text { font-size: 12px; color: #444; line-height: 1.5; }\n  .rev-screenshots-label { font-size: 12px; color: #aaa; font-weight: 600; text-align: center; margin: 20px 0 10px 0; letter-spacing: 0.5px; }\n  .rev-screenshots { display: flex; gap: 12px; justify-content: center; }\n  .rev-ss-wrap { display: flex; flex-direction: column; align-items: center; gap: 6px; }\n  .rev-ss-label { font-size: 11px; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: 0.5px; }\n  .rev-ss-img { width: 140px; aspect-ratio: 9\/16; background: #e0e0da; border-radius: 14px; border: 2px solid #d0d0c8; overflow: hidden; display: flex; align-items: center; justify-content: center; }\n  .rev-ss-img img { width: 100%; height: 100%; object-fit: cover; display: block; }\n  @media (max-width: 640px) { .rev-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 10px; padding-bottom: 8px; -webkit-overflow-scrolling: touch; scrollbar-width: none; } .rev-grid::-webkit-scrollbar { display: none; } .rev-card { min-width: 85vw; scroll-snap-align: start; flex-shrink: 0; } .rev-screenshots { overflow-x: auto; scroll-snap-type: x mandatory; justify-content: center; padding-bottom: 8px; -webkit-overflow-scrolling: touch; scrollbar-width: none; } .rev-screenshots::-webkit-scrollbar { display: none; } .rev-ss-wrap { scroll-snap-align: start; flex-shrink: 0; } }\n  .hf-section { margin: 0 auto; width: 100%; box-sizing: border-box; }\n  .hf-heading { font-size: 20px; font-weight: 800; color: #231f20; text-align: center; margin: 0 0 20px 0; }\n  .hf-box { background: #f5f5f0; border-radius: 25px; padding: 24px 28px; box-sizing: border-box; }\n  .hf-field { margin-bottom: 16px; }\n  .hf-label { font-size: 13px; font-weight: 700; color: #231f20; margin: 0 0 6px 0; display: block; }\n  .hf-label span.req { color: #AC0000; margin-left: 2px; }\n  .hf-select, .hf-input, .hf-date { width: 100%; padding: 12px 16px; border: 2px solid #e0e0da; border-radius: 14px; font-size: 14px; color: #231f20; background: #fff; box-sizing: border-box; appearance: none; -webkit-appearance: none; outline: none; transition: border-color 0.2s; font-family: inherit; }\n  .hf-select { background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23231f20' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C\/polyline%3E%3C\/svg%3E\"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 40px; cursor: pointer; }\n  .hf-select:focus, .hf-input:focus, .hf-date:focus { border-color: #0094d9; }\n  .hf-select.hf-error, .hf-input.hf-error, .hf-date.hf-error { border-color: #AC0000 !important; background-color: #fff5f5; }\n  .hf-err-msg { font-size: 11px; color: #AC0000; font-weight: 600; margin: 4px 0 0 4px; display: none; }\n  .hf-err-msg.hf-visible { display: block; }\n  .hf-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }\n  @media (max-width: 480px) { .hf-row2 { grid-template-columns: 1fr; } }\n  .hf-divider { width: 100%; height: 1px; background: rgba(35,31,32,0.10); margin: 20px 0; }\n  .hf-price-row { display: flex; justify-content: space-between; align-items: center; padding: 4px 0 0 0; }\n  .hf-price-label { font-size: 14px; font-weight: 700; color: #231f20; }\n  .hf-price-amount { font-size: 22px; font-weight: 900; color: #0094d9; }\n  .hf-pay-btn { display: none; width: 100%; padding: 16px; background-color: #AC0000; border: none; border-radius: 14px; color: #fff; font-size: 16px; font-weight: 800; cursor: pointer; text-align: center; margin-top: 16px; transition: opacity 0.2s; box-sizing: border-box; }\n  .hf-pay-btn:hover { opacity: 0.88; }\n  .hf-pay-btn.hf-show { display: block; }\n  @media (max-width: 480px) { .hf-box { padding: 18px 16px; } }\n\u003c\/style\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"htd-section\"\u003e\n\u003ch3 style=\"text-align: center; color: #231f20; margin: 0 0 20px 0; font-size: 22px;\"\u003eJak to działa?\u003c\/h3\u003e\n\u003cdiv class=\"htd-grid\"\u003e\n\u003cdiv class=\"htd-card\"\u003e\n\u003cdiv class=\"htd-num\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"htd-card-text\"\u003e\n\u003cdiv style=\"margin-bottom: 6px;\"\u003e\u003cspan class=\"htd-title\"\u003ePodajesz szczegóły\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv class=\"htd-desc\"\u003e\n\u003cmeta charset=\"utf-8\"\u003eW formularzu poniżej podajesz kierunek, termin itp.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"htd-card\"\u003e\n\u003cdiv class=\"htd-num\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"htd-card-text\"\u003e\n\u003cdiv style=\"margin-bottom: 6px;\"\u003e\u003cspan class=\"htd-title\"\u003eKupujesz\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv class=\"htd-desc\"\u003eUpewnij się, że wpisane dane są poprawne i zapłać online\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"htd-card\"\u003e\n\u003cdiv class=\"htd-num\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"htd-card-text\"\u003e\n\u003cdiv class=\"htd-title-row\"\u003e\n\u003cspan class=\"htd-title\"\u003eDostajesz hotele\u003c\/span\u003e \u003cspan class=\"htd-badge\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/Tekst_akapitu_6_2c4c84b1-aa72-4cf3-af7c-a8dd8a64f4b2.png?v=1777677732\" alt=\"szybko\"\u003e\u003cspan class=\"htd-badge-text\"\u003eSZYBKO\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"htd-desc\"\u003eOtrzymujesz zestawienie najlepszych noclegów z linkami do rezerwacji\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"hf-section\"\u003e\n\u003ch3 class=\"hf-heading\"\u003eWypełnij szczegóły pobytu\u003c\/h3\u003e\n\u003cdiv class=\"hf-box\"\u003e\n\u003cdiv class=\"hf-field\"\u003e\n\u003clabel class=\"hf-label\" for=\"hf-dest\"\u003eKierunek \/ Miejscowość \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\u003cinput class=\"hf-input\" type=\"text\" id=\"hf-dest\" placeholder=\"np. Dominikana, Kreta, Zakopane…\"\u003e\n\u003cp class=\"hf-err-msg\" id=\"hf-dest-err\"\u003eWpisz kierunek lub miejscowość\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"hf-row2\"\u003e\n\u003cdiv class=\"hf-field\"\u003e\n\u003clabel class=\"hf-label\" for=\"hf-checkin\"\u003eZameldowanie \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\u003cinput class=\"hf-date\" type=\"date\" id=\"hf-checkin\"\u003e\n\u003cp class=\"hf-err-msg\" id=\"hf-checkin-err\"\u003eWybierz datę zameldowania\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"hf-field\"\u003e\n\u003clabel class=\"hf-label\" for=\"hf-checkout\"\u003eWymeldowanie \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\u003cinput class=\"hf-date\" type=\"date\" id=\"hf-checkout\"\u003e\n\u003cp class=\"hf-err-msg\" id=\"hf-checkout-err\"\u003eWybierz datę wymeldowania\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"hf-row2\"\u003e\n\u003cdiv class=\"hf-field\"\u003e\n\u003clabel class=\"hf-label\" for=\"hf-guests\"\u003eLiczba osób \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\u003cselect class=\"hf-select\" id=\"hf-guests\"\u003e\n\u003coption value=\"\"\u003e— wybierz —\u003c\/option\u003e\n\u003coption value=\"1 osoba\"\u003e1 osoba\u003c\/option\u003e\n\u003coption value=\"2 osoby\"\u003e2 osoby\u003c\/option\u003e\n\u003coption value=\"3 osoby\"\u003e3 osoby\u003c\/option\u003e\n\u003coption value=\"4 osoby\"\u003e4 osoby\u003c\/option\u003e\n\u003coption value=\"5 osób\"\u003e5 osób\u003c\/option\u003e\n\u003coption value=\"6+ osób\"\u003e6+ osób\u003c\/option\u003e\n\u003c\/select\u003e\n\u003cp class=\"hf-err-msg\" id=\"hf-guests-err\"\u003eWybierz liczbę osób\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"hf-field\"\u003e\n\u003clabel class=\"hf-label\" for=\"hf-standard\"\u003eStandard \u003cspan class=\"req\"\u003e*\u003c\/span\u003e\u003c\/label\u003e\u003cselect class=\"hf-select\" id=\"hf-standard\"\u003e\n\u003coption value=\"\"\u003e— wybierz —\u003c\/option\u003e\n\u003coption value=\"Budżet (2★–3★)\"\u003eBudżet (2★–3★)\u003c\/option\u003e\n\u003coption value=\"Komfort (3★–4★)\"\u003eKomfort (3★–4★)\u003c\/option\u003e\n\u003coption value=\"Premium (4★–5★)\"\u003ePremium (4★–5★)\u003c\/option\u003e\n\u003coption value=\"All Inclusive\"\u003eAll Inclusive\u003c\/option\u003e\n\u003c\/select\u003e\n\u003cp class=\"hf-err-msg\" id=\"hf-standard-err\"\u003eWybierz standard\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"hf-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"hf-price-row\"\u003e\n\u003cspan class=\"hf-price-label\"\u003eKoszt wyszukiwania\u003c\/span\u003e\u003cspan class=\"hf-price-amount\"\u003e37 zł\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbutton class=\"hf-pay-btn\" id=\"hf-pay-btn\" type=\"button\"\u003eZapłać teraz\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cp\u003e\u003cscript type=\"application\/json\" id=\"hf-variant-data\"\u003e{{ product.selected_or_first_available_variant.id | json }}\u003c\/script\u003e \u003cscript\u003e\n(function(){\nvar elDest=document.getElementById('hf-dest'),elCheckin=document.getElementById('hf-checkin'),elCheckout=document.getElementById('hf-checkout'),elGuests=document.getElementById('hf-guests'),elStandard=document.getElementById('hf-standard'),elPayBtn=document.getElementById('hf-pay-btn');\nvar errDest=document.getElementById('hf-dest-err'),errCheckin=document.getElementById('hf-checkin-err'),errCheckout=document.getElementById('hf-checkout-err'),errGuests=document.getElementById('hf-guests-err'),errStandard=document.getElementById('hf-standard-err');\nvar variantId=null;\ntry{var raw=document.getElementById('hf-variant-data');if(raw)variantId=JSON.parse(raw.textContent.trim());}catch(e){}\nif(!variantId\u0026\u0026window.ShopifyAnalytics\u0026\u0026window.ShopifyAnalytics.meta)variantId=window.ShopifyAnalytics.meta.selectedVariantId;\nvar t=new Date(),minDate=t.getFullYear()+'-'+String(t.getMonth()+1).padStart(2,'0')+'-'+String(t.getDate()).padStart(2,'0');\nelCheckin.min=minDate;elCheckout.min=minDate;\nfunction isOk(){return elDest.value.trim()!==''\u0026\u0026elCheckin.value!==''\u0026\u0026elCheckout.value!==''\u0026\u0026elGuests.value!==''\u0026\u0026elStandard.value!=='';}\nfunction se(el,e){el.classList.add('hf-error');if(e)e.classList.add('hf-visible');}\nfunction ce(el,e){el.classList.remove('hf-error');if(e)e.classList.remove('hf-visible');}\nfunction upd(){if(isOk())elPayBtn.classList.add('hf-show');else elPayBtn.classList.remove('hf-show');}\nelDest.addEventListener('input',function(){if(elDest.value.trim())ce(elDest,errDest);upd();});\nelCheckin.addEventListener('change',function(){if(elCheckin.value){ce(elCheckin,errCheckin);elCheckout.min=elCheckin.value;if(elCheckout.value\u0026\u0026elCheckout.value\u003c=elCheckin.value)elCheckout.value='';}upd();});\nelCheckout.addEventListener('change',function(){if(elCheckout.value)ce(elCheckout,errCheckout);upd();});\nelGuests.addEventListener('change',function(){if(elGuests.value)ce(elGuests,errGuests);upd();});\nelStandard.addEventListener('change',function(){if(elStandard.value)ce(elStandard,errStandard);upd();});\nelPayBtn.addEventListener('click',function(){\nvar v=true;\nif(!elDest.value.trim()){se(elDest,errDest);v=false;}\nif(!elCheckin.value){se(elCheckin,errCheckin);v=false;}\nif(!elCheckout.value){se(elCheckout,errCheckout);v=false;}\nif(!elGuests.value){se(elGuests,errGuests);v=false;}\nif(!elStandard.value){se(elStandard,errStandard);v=false;}\nif(!v)return;\nif(elPayBtn.dataset.busy)return;\nelPayBtn.dataset.busy='1';elPayBtn.textContent='Przekierowuję…';\nif(!variantId){var s=document.querySelector('select[name=\"id\"],input[name=\"id\"]');if(s)variantId=s.value;}\nif(!variantId){elPayBtn.textContent='Zapłać teraz';delete elPayBtn.dataset.busy;alert('Nie można znaleźć produktu.');return;}\nvar props={'Kierunek':elDest.value.trim(),'Zameldowanie':elCheckin.value,'Wymeldowanie':elCheckout.value,'Liczba osób':elGuests.value,'Standard':elStandard.value};\n(async function(){try{await fetch('\/cart\/clear.js',{method:'POST'});var r=await fetch('\/cart\/add.js',{method:'POST',headers:{'Content-Type':'application\/json','Accept':'application\/json'},body:JSON.stringify({items:[{id:parseInt(variantId,10),quantity:1,properties:props}]})});if(!r.ok)throw new Error(r.status);window.location.href='\/checkout';}catch(e){console.error(e);elPayBtn.textContent='Zapłać teraz';delete elPayBtn.dataset.busy;alert('Wystąpił błąd. Spróbuj ponownie.');}})();\n});\n})();\n\u003c\/script\u003e\u003c\/p\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"inc-section why-worth-box\"\u003e\n\u003cp class=\"inc-heading\"\u003eCo zawiera?\u003c\/p\u003e\n\u003cdiv class=\"inc-grid\"\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/6_8a0baa37-c05c-4ba3-b3ed-15fbaf7ad870.png?v=1777675519\" alt=\"\"\u003e\n\u003cp class=\"inc-label\"\u003eHotele i apartamenty\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/dopasowany-standard.png?v=1782814163\" alt=\"\"\u003e\n\u003cp class=\"inc-label\"\u003eDopasowany standard\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/9.png?v=1777675519\" alt=\"\"\u003e\n\u003cp class=\"inc-label\"\u003eZestawienie PDF\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/linki.png?v=1782814422\" alt=\"\"\u003e\n\u003cp class=\"inc-label\"\u003eLinki do rezerwacji\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/opcje-cenowe.png?v=1782814422\" alt=\"\"\u003e\n\u003cp class=\"inc-label\"\u003eRóżne opcje cenowe\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"inc-cell\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/10_d5ed244b-dfb2-4b45-8dc2-a12deb530ae4.png?v=1777675520\" alt=\"\"\u003e\n\u003cp class=\"inc-label\"\u003eWsparcie\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"ww-section why-worth-box\"\u003e\n\u003cp class=\"ww-heading\"\u003eDlaczego warto?\u003c\/p\u003e\n\u003cdiv class=\"ww-grid\"\u003e\n\u003cdiv class=\"ww-cell highlighted\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/5_f7897300-be1a-4594-917e-5fcd184ea57b.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eWyniki szybko\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eZestawienie hoteli dostajesz sprawnie po podaniu szczegółów\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell highlighted\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/11.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eNajlepsza cena\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eSprawdzone — taniej i lepiej niż znajdziesz sam na własną rękę\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/dowolny-kierunek.png?v=1782814664\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eDowolny kierunek\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003ePolska, Europa, egzotyka — szukamy wszędzie\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/8_8be9a721-e94c-45ab-9cf9-5f3e3f18bddb.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003ePłacisz raz\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eZero ukrytych opłat — hotel rezerwujesz sam bezpośrednio u dostawcy\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/9_d7e09ab9-cc14-4f79-8f97-4f49af970542.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eSprawdzone noclegi\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003eKażda rekomendacja weryfikowana pod kątem ceny, lokalizacji i opinii\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ww-cell\"\u003e\n\u003cdiv class=\"ww-icon\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/10_e859e30a-0767-417f-845e-50815dc4816b.png?v=1777676323\" alt=\"\"\u003e\u003c\/div\u003e\n\u003cp class=\"ww-title\"\u003eOszczędzasz czas\u003c\/p\u003e\n\u003cp class=\"ww-desc\"\u003e3–5 godzin szukania zamienione w 2 minuty zakupu\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"price-compare-wrapper\"\u003e\n\u003cp class=\"price-compare-heading\"\u003eNasza oferta vs. samodzielne szukanie\u003c\/p\u003e\n\u003cdiv class=\"price-compare-row\"\u003e\n\u003cdiv class=\"price-card\" style=\"background: #e8f5ff; border: 2.5px solid #0094d9; box-shadow: 0 4px 16px rgba(0,148,217,0.18);\"\u003e\n\u003cdiv class=\"price-card-label\" style=\"color: #0072a8;\"\u003eNasza oferta\u003c\/div\u003e\n\u003cdiv class=\"price-card-amount\" style=\"color: #0094d9;\"\u003e37 zł\u003c\/div\u003e\n\u003cdiv class=\"price-card-sub\" style=\"color: #0072a8;\"\u003eza gotowe zestawienie hoteli\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"price-card\" style=\"background: #f0f0f0; border: 2px solid #c8c8c8; opacity: 0.7;\"\u003e\n\u003cdiv class=\"price-card-label\" style=\"color: #999;\"\u003eSam szukasz\u003c\/div\u003e\n\u003cdiv class=\"price-card-amount\" style=\"color: #aaa;\"\u003e\u0026gt;999 zł\u003c\/div\u003e\n\u003cdiv class=\"price-card-sub\" style=\"color: #aaa;\"\u003eprzepłacanie + 5h czasu\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"price-savings\"\u003e\n\u003cdiv class=\"price-savings-label\"\u003eOszczędzasz łącznie\u003c\/div\u003e\n\u003cdiv class=\"price-savings-amount\"\u003ePieniądze + 5 godzin życia\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"rev-section why-worth-box\"\u003e\n\u003cdiv class=\"rev-header\"\u003e\n\u003cspan class=\"rev-title\"\u003eCo mówią klienci?\u003c\/span\u003e\n\u003cdiv class=\"rev-stars-total\"\u003e\n\u003cspan class=\"rev-stars\"\u003e★★★★★\u003c\/span\u003e \u003cspan class=\"rev-count\"\u003e+20 opinii\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-carousel-wrap\"\u003e\n\u003cdiv class=\"rev-grid\"\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eKasia M.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eDominikana • Maj 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003ePDF przyszedł od razu po zakupie.\u003cbr\u003eZarezerwowałam w 5 minut. Polecam!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eTomek W.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eSardynia • kwiecień 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eSzukałem sam 3h i nie znalazłem nic\u003cbr\u003etańszego. Tu gotowe za 37 zł.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eAnia i Piotr\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eMalta • kwiecień 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eWszystko zgodnie z opisem, linki działały, hotel super.\u003cbr\u003eWrócimy po kolejną!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-card\"\u003e\n\u003cdiv class=\"rev-card-top\"\u003e\n\u003cspan class=\"rev-name\"\u003eMagda K.\u003c\/span\u003e \u003cspan class=\"rev-card-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-dest\"\u003eMadera • Luty 2027\u003c\/div\u003e\n\u003cdiv class=\"rev-text\"\u003eSuper oferta, wszystko się zgadzało.\u003cbr\u003eNastępnym razem też skorzystam!\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp class=\"rev-screenshots-label\"\u003eScreenshot'y klientów:\u003c\/p\u003e\n\u003cdiv class=\"rev-screenshots\"\u003e\n\u003cdiv class=\"rev-ss-wrap\"\u003e\n\u003cdiv class=\"rev-ss-label\"\u003eWiadomość\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-img\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/reklama_4.png?v=1780341425\" alt=\"\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-wrap\"\u003e\n\u003cdiv class=\"rev-ss-label\"\u003eRelacja\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-img\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/reklama_3.png?v=1780341427\" alt=\"\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-wrap\"\u003e\n\u003cdiv class=\"rev-ss-label\"\u003eOpinia\u003c\/div\u003e\n\u003cdiv class=\"rev-ss-img\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/reklama_5.png?v=1780341425\" alt=\"\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cdiv class=\"sec-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003csection class=\"info-section why-worth-box\"\u003e\n\u003cp class=\"info-heading\"\u003eDodatkowe informacje\u003c\/p\u003e\n\u003cdiv class=\"info-cards\"\u003e\n\u003cdiv class=\"info-card orange\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/5_e5d9bc28-d01a-476f-a0b1-3939d3ed967f.png?v=1777721992\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eWyszukiwanie dotyczy wyłącznie noclegów. Rezerwacja odbywa się bezpośrednio u hotelu lub pośrednika — Twoje pieniądze są bezpieczne.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card orange\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/Tekst_akapitu_7_3e027ea0-be8c-42b6-a6de-f5a44c22285f.png?v=1777722146\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eCeny i dostępność noclegów zmieniają się dynamicznie — zalecamy rezerwację od razu po otrzymaniu zestawienia, żeby złapać najlepszą ofertę.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card green\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/7_f52c4585-fd0d-416c-8172-4e27b39e7277.png?v=1777721992\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eBrak ukrytych opłat. Płacisz tylko za wyszukiwanie — koszt noclegu to koszt po Twojej stronie, bezpośrednio u dostawcy.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"info-card green\"\u003e\n\u003cimg class=\"info-card-icon\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/8_0425b786-93af-476c-af30-4621a81e904f.png?v=1779196621\" alt=\"\"\u003e\n\u003cp class=\"info-card-text\"\u003eJeśli błędnie wpisano jakiekolwiek dane skontaktuj się z nami po zakupie podając zaktualizowany: kierunek, termin, liczbę osób, budżet i preferowany standard.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"taniwylot","offers":[{"title":"Default Title","offer_id":52540831072598,"sku":null,"price":59.0,"currency_code":"PLN","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/files\/hotele.png?v=1770500564"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0973\/4959\/9574\/collections\/kolekcja-uslugi.png?v=1770498713","url":"https:\/\/www.taniwylot.pl\/collections\/pakiety.oembed","provider":"taniwylot","version":"1.0","type":"link"}