{"id":2977,"date":"2026-08-19T07:41:02","date_gmt":"2026-08-19T07:41:02","guid":{"rendered":"https:\/\/visitntb.com\/?page_id=2977"},"modified":"2026-09-01T16:34:37","modified_gmt":"2026-09-01T16:34:37","slug":"itinerary-generator","status":"publish","type":"page","link":"https:\/\/visitntb.com\/id\/itinerary-generator\/","title":{"rendered":"Itinerary Generator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2977\" class=\"elementor elementor-2977\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9e23799 e-con-full e-flex e-con e-parent\" data-id=\"9e23799\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d66d85d elementor-widget elementor-widget-breadcrumbs\" data-id=\"d66d85d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"breadcrumbs.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p id=\"breadcrumbs\"><span><span><a href=\"https:\/\/visitntb.com\/\">Lombok Sumbawa Tourism<\/a><\/span><\/span><\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-29b80e0 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"29b80e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">NTB Trip Planner<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-41fbee6 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"41fbee6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Use this itinerary generator to create your custom itinerary. Copy the result, and contact your tour operator.<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ea61118 elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-shortcode\" data-id=\"ea61118\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/marked\/marked.min.js\"><\/script>\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Fraunces:ital,opsz,wght@0,9..144,450;0,9..144,600;0,9..144,700;1,9..144,500&family=Karla:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<style>\n    #aiig-wrapper {\n        --aiig-ink: #17302B;\n        --aiig-ink-soft: #3F564F;\n        --aiig-paper: #FFFEFB;\n        --aiig-page: #F1ECDC;\n        --aiig-ocean: #0E5C56;\n        --aiig-ocean-dark: #0A423E;\n        --aiig-sun: #E8A23D;\n        --aiig-sun-dark: #C9821F;\n        --aiig-coral: #DD5B3E;\n        --aiig-line: #DACD9F;\n        --aiig-mist: #EAF3F0;\n        font-family: 'Karla', -apple-system, BlinkMacSystemFont, sans-serif;\n        color: var(--aiig-ink);\n        background: var(--aiig-page);\n        padding: clamp(16px, 4vw, 32px);\n        border-radius: 20px;\n        box-sizing: border-box;\n    }\n    #aiig-wrapper *, #aiig-wrapper *::before, #aiig-wrapper *::after { box-sizing: border-box; }\n    #aiig-wrapper h1, #aiig-wrapper h2, #aiig-wrapper h3, #aiig-wrapper h4 {\n        font-family: 'Fraunces', Georgia, serif;\n        color: var(--aiig-ink);\n        margin: 0;\n    }\n\n    \/* ---------- Hero ---------- *\/\n    .aiig-hero {\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        padding: 4px 6px 22px;\n    }\n    .aiig-hero-icon {\n        flex: 0 0 auto;\n        width: 46px; height: 46px;\n        border-radius: 50%;\n        background: var(--aiig-ocean);\n        display: flex; align-items: center; justify-content: center;\n    }\n    .aiig-hero-icon svg { width: 24px; height: 24px; }\n    .aiig-hero h2 {\n        font-size: clamp(1.35rem, 2.4vw, 1.7rem);\n        font-weight: 600;\n        line-height: 1.15;\n    }\n    .aiig-hero p {\n        margin: 4px 0 0;\n        color: var(--aiig-ink-soft);\n        font-size: 0.95rem;\n    }\n\n    \/* ---------- Ticket card ---------- *\/\n    .aiig-pass {\n        background: var(--aiig-paper);\n        border-radius: 18px;\n        box-shadow: 0 1px 2px rgba(23,48,43,0.06), 0 12px 32px -18px rgba(23,48,43,0.35);\n        overflow: hidden;\n    }\n    .aiig-panel { padding: 30px clamp(18px, 4vw, 34px); }\n\n    .aiig-step {\n        display: flex;\n        align-items: center;\n        gap: 12px;\n        margin-bottom: 22px;\n    }\n    .aiig-step-badge {\n        flex: 0 0 auto;\n        width: 34px; height: 34px;\n        border-radius: 50%;\n        background: var(--aiig-mist);\n        border: 1.5px solid var(--aiig-ocean);\n        color: var(--aiig-ocean);\n        font-family: 'Fraunces', serif;\n        font-weight: 600;\n        font-size: 1rem;\n        display: flex; align-items: center; justify-content: center;\n    }\n    .aiig-step h3 {\n        font-size: 1.15rem;\n        font-weight: 600;\n    }\n\n    .aiig-field { margin-bottom: 22px; }\n    .aiig-field:last-child { margin-bottom: 0; }\n    .aiig-field-label {\n        display: block;\n        font-weight: 600;\n        font-size: 0.93rem;\n        margin-bottom: 8px;\n        color: var(--aiig-ink);\n    }\n    .aiig-field-label .aiig-req { color: var(--aiig-coral); }\n    .aiig-field-hint {\n        display: block;\n        font-weight: 400;\n        color: var(--aiig-ink-soft);\n        font-size: 0.82rem;\n        margin-top: 2px;\n    }\n\n    \/* Chip-style checkbox \/ radio groups (tipe wisata, destinasi) *\/\n    .aiig-checkbox-group { display: flex; flex-wrap: wrap; gap: 8px; }\n    .aiig-checkbox-group label {\n        position: relative;\n        display: inline-flex; align-items: center;\n        background: var(--aiig-mist);\n        border: 1.5px solid transparent;\n        color: var(--aiig-ink);\n        padding: 7px 14px;\n        border-radius: 999px;\n        cursor: pointer;\n        font-size: 0.88rem;\n        transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;\n    }\n    .aiig-checkbox-group label:hover { border-color: var(--aiig-ocean); }\n    .aiig-checkbox-group label.aiig-chip-active {\n        background: var(--aiig-ocean);\n        border-color: var(--aiig-ocean);\n        color: #fff;\n    }\n    .aiig-checkbox-group input { position: absolute; opacity: 0; width: 0; height: 0; }\n\n    \/* Sumber data \/ durasi radio cards *\/\n    .aiig-radio-group { display: flex; flex-direction: column; gap: 8px; }\n    .aiig-radio-group label {\n        display: flex;\n        align-items: flex-start;\n        gap: 10px;\n        background: var(--aiig-mist);\n        border: 1.5px solid transparent;\n        padding: 12px 14px;\n        border-radius: 12px;\n        cursor: pointer;\n        transition: border-color 0.15s ease, background 0.15s ease;\n    }\n    .aiig-radio-group label:hover { border-color: var(--aiig-ocean); }\n    .aiig-radio-group label.aiig-chip-active {\n        background: #fff;\n        border-color: var(--aiig-ocean);\n    }\n    .aiig-radio-group input[type=\"radio\"] {\n        margin-top: 3px;\n        accent-color: var(--aiig-ocean);\n        flex: 0 0 auto;\n    }\n    .aiig-radio-group .aiig-radio-text { display: flex; flex-direction: column; }\n    .aiig-radio-group strong { font-size: 0.93rem; font-weight: 600; }\n    .aiig-radio-group small { color: var(--aiig-ink-soft); font-size: 0.82rem; margin-top: 2px; }\n\n    .aiig-duration-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }\n    .aiig-duration-row > label {\n        display: flex; align-items: center; gap: 6px;\n        font-size: 0.9rem; cursor: pointer;\n    }\n    .aiig-duration-row input[type=\"radio\"] { accent-color: var(--aiig-ocean); }\n\n    .aiig-stepper {\n        display: inline-flex;\n        align-items: center;\n        border: 1.5px solid var(--aiig-line);\n        border-radius: 10px;\n        overflow: hidden;\n        margin-top: 4px;\n    }\n    .aiig-stepper button {\n        width: 34px; height: 36px;\n        border: none;\n        background: var(--aiig-mist);\n        color: var(--aiig-ocean);\n        font-size: 1.1rem;\n        cursor: pointer;\n        line-height: 1;\n    }\n    .aiig-stepper button:hover { background: var(--aiig-ocean); color: #fff; }\n    .aiig-stepper input {\n        width: 56px; height: 36px;\n        border: none;\n        border-left: 1.5px solid var(--aiig-line);\n        border-right: 1.5px solid var(--aiig-line);\n        text-align: center;\n        font-family: 'Karla', sans-serif;\n        font-size: 0.95rem;\n        color: var(--aiig-ink);\n    }\n    .aiig-stepper input:focus { outline: none; }\n    .aiig-stepper span {\n        padding: 0 12px;\n        font-size: 0.88rem;\n        color: var(--aiig-ink-soft);\n    }\n\n    #aiig-wrapper textarea,\n    #aiig-wrapper input[type=\"text\"],\n    #aiig-wrapper input[type=\"email\"],\n    #aiig-wrapper input[type=\"tel\"] {\n        width: 100%;\n        font-family: 'Karla', sans-serif;\n        font-size: 0.94rem;\n        color: var(--aiig-ink);\n        background: var(--aiig-paper);\n        border: 1.5px solid var(--aiig-line);\n        border-radius: 10px;\n        padding: 11px 13px;\n        transition: border-color 0.15s ease, box-shadow 0.15s ease;\n    }\n    #aiig-wrapper textarea::placeholder,\n    #aiig-wrapper input::placeholder { color: #9AA79F; }\n    #aiig-wrapper textarea:focus,\n    #aiig-wrapper input:focus {\n        outline: none;\n        border-color: var(--aiig-ocean);\n        box-shadow: 0 0 0 3px rgba(14,92,86,0.14);\n    }\n    .aiig-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }\n    @media (max-width: 480px) { .aiig-two-col { grid-template-columns: 1fr; } }\n\n    \/* ---------- Perforated divider (ticket tear) ---------- *\/\n    .aiig-tear {\n        position: relative;\n        height: 0;\n        border-top: 2px dashed var(--aiig-line);\n        margin: 0 -18px;\n    }\n    .aiig-tear::before, .aiig-tear::after {\n        content: \"\";\n        position: absolute;\n        top: -13px;\n        width: 26px; height: 26px;\n        border-radius: 50%;\n        background: var(--aiig-page);\n    }\n    .aiig-tear::before { left: -13px; }\n    .aiig-tear::after { right: -13px; }\n\n    \/* ---------- Submit ---------- *\/\n    .aiig-submit-row { margin-top: 26px; }\n    #aiig-submit-btn {\n        width: 100%;\n        display: flex; align-items: center; justify-content: center; gap: 9px;\n        padding: 14px;\n        background: var(--aiig-sun);\n        color: var(--aiig-ink);\n        border: none;\n        border-radius: 12px;\n        font-family: 'Karla', sans-serif;\n        font-weight: 700;\n        font-size: 1rem;\n        cursor: pointer;\n        transition: background 0.15s ease, transform 0.1s ease;\n    }\n    #aiig-submit-btn:hover { background: var(--aiig-sun-dark); }\n    #aiig-submit-btn:active { transform: translateY(1px); }\n    #aiig-submit-btn svg { width: 18px; height: 18px; }\n\n    \/* ---------- Loading ---------- *\/\n    #aiig-loading {\n        display: none;\n        margin-top: 18px;\n        padding: 22px;\n        border-radius: 14px;\n        background: var(--aiig-ocean);\n        color: #fff;\n        text-align: center;\n    }\n    .aiig-loading-path {\n        position: relative;\n        height: 2px;\n        background: rgba(255,255,255,0.25);\n        border-radius: 2px;\n        margin: 0 auto 14px;\n        max-width: 220px;\n        overflow: visible;\n    }\n    .aiig-loading-path span {\n        position: absolute;\n        top: -8px; left: 0;\n        width: 18px; height: 18px;\n        animation: aiig-fly 1.6s ease-in-out infinite;\n    }\n    .aiig-loading-path span svg { width: 18px; height: 18px; }\n    @keyframes aiig-fly {\n        0% { left: 0; }\n        50% { left: calc(100% - 18px); }\n        100% { left: 0; }\n    }\n    #aiig-loading p { margin: 0; font-size: 0.93rem; opacity: 0.92; }\n\n    \/* ---------- Result ---------- *\/\n    #aiig-result-wrapper {\n        display: none;\n        margin-top: 22px;\n        background: var(--aiig-paper);\n        border-radius: 18px;\n        box-shadow: 0 1px 2px rgba(23,48,43,0.06), 0 12px 32px -18px rgba(23,48,43,0.35);\n        overflow: hidden;\n    }\n    .aiig-result-head {\n        background: var(--aiig-ocean);\n        color: #fff;\n        padding: 18px clamp(18px, 4vw, 30px);\n        display: flex; align-items: center; gap: 10px;\n    }\n    .aiig-result-head svg { width: 20px; height: 20px; flex: 0 0 auto; }\n    .aiig-result-head h3 { color: #fff; font-size: 1.1rem; font-weight: 600; }\n    .aiig-result-body { padding: clamp(18px, 4vw, 30px); }\n\n    .aiig-formatted-result h1 { font-family: 'Fraunces', serif; font-size: 1.4em; font-weight: 600; margin-bottom: 12px; color: var(--aiig-ink); padding-bottom: 8px; border-bottom: 2px solid var(--aiig-line); }\n    .aiig-formatted-result h2 { font-family: 'Fraunces', serif; font-size: 1.2em; font-weight: 600; margin-top: 22px; margin-bottom: 10px; color: var(--aiig-ocean-dark); }\n    .aiig-formatted-result h3 { font-family: 'Fraunces', serif; font-size: 1.05em; font-weight: 600; margin-top: 20px; margin-bottom: 8px; color: var(--aiig-ocean); }\n    .aiig-formatted-result ul { margin-left: 20px; margin-bottom: 15px; list-style-type: disc; }\n    .aiig-formatted-result li { margin-bottom: 6px; line-height: 1.6; }\n    .aiig-formatted-result p { margin-bottom: 12px; line-height: 1.65; color: var(--aiig-ink); }\n    .aiig-formatted-result strong { color: var(--aiig-ink); }\n\n    .aiig-gallery-wrapper { margin-top: 8px; padding-top: 20px; border-top: 1px solid var(--aiig-line); }\n    .aiig-gallery-wrapper h4 { font-size: 1rem; font-weight: 600; margin-bottom: 12px; }\n    .aiig-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }\n    .aiig-gallery-item {\n        border-radius: 12px;\n        overflow: hidden;\n        background: var(--aiig-mist);\n        border: 1px solid var(--aiig-line);\n        transition: transform 0.15s ease, box-shadow 0.15s ease;\n    }\n    .aiig-gallery-item:hover { transform: translateY(-2px); box-shadow: 0 8px 18px -10px rgba(23,48,43,0.4); }\n    .aiig-gallery-item img { width: 100%; height: 110px; object-fit: cover; display: block; }\n    .aiig-gallery-caption { padding: 8px 10px; font-size: 0.78rem; line-height: 1.4; }\n    .aiig-gallery-caption a { text-decoration: none; color: var(--aiig-ocean-dark); font-weight: 700; }\n    .aiig-gallery-caption small { color: var(--aiig-ink-soft); }\n\n    .aiig-action-row { margin-top: 18px; display: flex; gap: 10px; flex-wrap: wrap; }\n    .aiig-btn-secondary, .aiig-btn-wa {\n        padding: 10px 16px;\n        border-radius: 10px;\n        border: none;\n        cursor: pointer;\n        font-family: 'Karla', sans-serif;\n        font-weight: 600;\n        font-size: 0.88rem;\n        display: inline-flex; align-items: center; gap: 7px;\n    }\n    .aiig-btn-secondary { background: var(--aiig-mist); color: var(--aiig-ink); border: 1.5px solid var(--aiig-line); }\n    .aiig-btn-secondary:hover { border-color: var(--aiig-ocean); }\n    .aiig-btn-wa { background: #25D366; color: #fff; }\n    .aiig-btn-wa:hover { background: #1fb959; }\n\n    .aiig-revise-block { margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--aiig-line); }\n    .aiig-revise-block h4 { font-size: 0.98rem; font-weight: 600; margin-bottom: 8px; }\n    #aiig-revise-btn {\n        margin-top: 10px;\n        padding: 9px 16px;\n        border-radius: 10px;\n        border: 1.5px solid var(--aiig-ocean);\n        background: transparent;\n        color: var(--aiig-ocean);\n        font-family: 'Karla', sans-serif;\n        font-weight: 600;\n        cursor: pointer;\n    }\n    #aiig-revise-btn:hover { background: var(--aiig-ocean); color: #fff; }\n\n    @media (max-width: 560px) {\n        .aiig-panel { padding: 24px 18px; }\n        .aiig-hero { padding-bottom: 16px; }\n    }\n<\/style>\n\n<div id=\"aiig-wrapper\">\n    <div class=\"aiig-hero\">\n        <div class=\"aiig-hero-icon\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"#fff\" stroke-width=\"1.6\"\/>\n                <path d=\"M15.5 8.5L13 13l-4.5 2.5L11 11l4.5-2.5z\" fill=\"#fff\"\/>\n            <\/svg>\n        <\/div>\n        <div>\n            <h2>Rencanakan Perjalanan Anda<\/h2>\n            <p>Isi preferensi di bawah ini, dan biarkan AI menyusun itinerary lengkap untuk Anda.<\/p>\n        <\/div>\n    <\/div>\n\n    <div class=\"aiig-pass\">\n        <form id=\"aiig-form\">\n            <div class=\"aiig-panel\">\n                <div class=\"aiig-step\">\n                    <span class=\"aiig-step-badge\">1<\/span>\n                    <h3>Detail Perjalanan<\/h3>\n                <\/div>\n\n                                <div class=\"aiig-field\">\n                    <span class=\"aiig-field-label\">Sumber Data Rekomendasi<\/span>\n                    <div class=\"aiig-radio-group\">\n                        <label>\n                            <input type=\"radio\" name=\"data_source\" value=\"general\" checked>\n                            <span class=\"aiig-radio-text\">\n                                <strong>Umum<\/strong>\n                                <small>AI mencari referensi tempat secara bebas (pengetahuan umum).<\/small>\n                            <\/span>\n                        <\/label>\n                        <label>\n                            <input type=\"radio\" name=\"data_source\" value=\"internal\">\n                            <span class=\"aiig-radio-text\">\n                                <strong>Hanya dari Website Ini<\/strong>\n                                <small>AI hanya merekomendasikan destinasi, akomodasi, restoran, tour guide, dll yang sudah terdaftar di website ini, lengkap dengan foto & tautannya.<\/small>\n                            <\/span>\n                        <\/label>\n                    <\/div>\n                <\/div>\n                \n                <div class=\"aiig-field\">\n                    <span class=\"aiig-field-label\">Tipe Wisata <span class=\"aiig-field-hint\" style=\"display:inline;\">(bisa pilih lebih dari satu)<\/span><\/span>\n                    <div class=\"aiig-checkbox-group\">\n                                                                                    <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Adventure\">\n                                    Adventure                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Beach\">\n                                    Beach                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Culture &amp; Traditions\">\n                                    Culture &amp; Traditions                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Family\">\n                                    Family                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Honeymoon\">\n                                    Honeymoon                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Landmark\">\n                                    Landmark                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Luxury\">\n                                    Luxury                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Museum\">\n                                    Museum                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Muslim-Friendly\">\n                                    Muslim-Friendly                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Shopping\">\n                                    Shopping                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Surfing\">\n                                    Surfing                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Theme Park\">\n                                    Theme Park                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Village\">\n                                    Village                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"types[]\" value=\"Waterfall\">\n                                    Waterfall                                <\/label>\n                                                                        <\/div>\n                <\/div>\n\n                <div class=\"aiig-field\">\n                    <span class=\"aiig-field-label\">Destinasi yang Dipilih <span class=\"aiig-req\">*<\/span><\/span>\n                    <div class=\"aiig-checkbox-group\">\n                                                                                    <label>\n                                    <input type=\"checkbox\" name=\"destinations[]\" value=\"Lombok dan Sumbawa\">\n                                    Lombok dan Sumbawa                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"destinations[]\" value=\"Pulau Lombok\">\n                                    Pulau Lombok                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"destinations[]\" value=\"Pulau Sumbawa\">\n                                    Pulau Sumbawa                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"destinations[]\" value=\"Gili Trawangan\">\n                                    Gili Trawangan                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"destinations[]\" value=\"Mandalika\">\n                                    Mandalika                                <\/label>\n                                                            <label>\n                                    <input type=\"checkbox\" name=\"destinations[]\" value=\"Kota Mataram\">\n                                    Kota Mataram                                <\/label>\n                                                                        <\/div>\n                <\/div>\n\n                <div class=\"aiig-field\">\n                    <span class=\"aiig-field-label\">Jumlah Hari Perjalanan<\/span>\n                    <div class=\"aiig-duration-row\">\n                        <label><input type=\"radio\" name=\"days_option\" value=\"fixed\" checked> Tentukan jumlah hari<\/label>\n                        <label><input type=\"radio\" name=\"days_option\" value=\"flexible\"> Belum ada perkiraan<\/label>\n                    <\/div>\n                    <div id=\"aiig-days-input-wrapper\" style=\"margin-top: 10px;\">\n                        <div class=\"aiig-stepper\">\n                            <button type=\"button\" id=\"aiig-day-minus\" aria-label=\"Kurangi hari\">&minus;<\/button>\n                            <input type=\"number\" name=\"days_num\" min=\"1\" max=\"30\" value=\"3\">\n                            <button type=\"button\" id=\"aiig-day-plus\" aria-label=\"Tambah hari\">&plus;<\/button>\n                        <\/div>\n                        <span>hari perjalanan<\/span>\n                    <\/div>\n                <\/div>\n\n                <div class=\"aiig-field\">\n                    <label class=\"aiig-field-label\" for=\"aiig-description\">Deskripsi \/ Keinginan Khusus<\/label>\n                    <textarea id=\"aiig-description\" name=\"description\" rows=\"3\" placeholder=\"Contoh: Ingin lebih banyak wisata kuliner dan tempat santai untuk keluarga.\"><\/textarea>\n                <\/div>\n            <\/div>\n\n            <div class=\"aiig-tear\"><\/div>\n\n            <div class=\"aiig-panel\">\n                <div class=\"aiig-step\">\n                    <span class=\"aiig-step-badge\">2<\/span>\n                    <h3>Informasi Kontak<\/h3>\n                <\/div>\n\n                <div class=\"aiig-field\">\n                    <input type=\"text\" name=\"name\" placeholder=\"Nama Lengkap\" required>\n                <\/div>\n                <div class=\"aiig-field\">\n                    <input type=\"email\" name=\"email\" placeholder=\"Alamat Email\" required>\n                <\/div>\n                <div class=\"aiig-field\">\n                    <input type=\"tel\" name=\"phone\" placeholder=\"Nomor Telepon\/WhatsApp\" required>\n                <\/div>\n                <div class=\"aiig-field\">\n                    <div class=\"aiig-two-col\">\n                        <input type=\"text\" name=\"country\" placeholder=\"Negara Asal\">\n                        <input type=\"text\" name=\"city\" placeholder=\"Kota Asal\">\n                    <\/div>\n                <\/div>\n\n                <div class=\"aiig-submit-row\">\n                    <button type=\"submit\" id=\"aiig-submit-btn\">\n                        <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M21 3L3 10.5l7 2.5m11-10l-4 17-7-6.5m11-10.5L10 13\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                        <\/svg>\n                        Buat Itinerary\n                    <\/button>\n                <\/div>\n            <\/div>\n        <\/form>\n    <\/div>\n\n    <div id=\"aiig-loading-anchor\" style=\"scroll-margin-top: 30px;\"><\/div>\n\n    <div id=\"aiig-loading\">\n        <div class=\"aiig-loading-path\">\n            <span>\n                <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M21 3L3 10.5l7 2.5m11-10l-4 17-7-6.5m11-10.5L10 13\" stroke=\"#fff\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                <\/svg>\n            <\/span>\n        <\/div>\n        <p>Sedang menyusun itinerary AI... Mohon tunggu sebentar.<\/p>\n    <\/div>\n\n    <div id=\"aiig-result-wrapper\">\n        <div class=\"aiig-result-head\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <rect x=\"3\" y=\"6\" width=\"18\" height=\"12\" rx=\"2\" stroke=\"#fff\" stroke-width=\"1.6\"\/>\n                <path d=\"M3 10h18\" stroke=\"#fff\" stroke-width=\"1.6\"\/>\n            <\/svg>\n            <h3>Itinerary Anda<\/h3>\n        <\/div>\n        <div class=\"aiig-result-body\">\n            <div id=\"aiig-result-content\" class=\"aiig-formatted-result\"><\/div>\n\n            <div id=\"aiig-gallery-wrapper\" class=\"aiig-gallery-wrapper\" style=\"display:none;\">\n                <h4>Referensi Tempat Terkait<\/h4>\n                <div id=\"aiig-gallery\" class=\"aiig-gallery-grid\"><\/div>\n            <\/div>\n\n            <div class=\"aiig-action-row\">\n                <button id=\"aiig-copy-btn\" class=\"aiig-btn-secondary\">Copy \/ Save Itinerary<\/button>\n                <button id=\"aiig-wa-btn\" class=\"aiig-btn-wa\">Bagikan ke WhatsApp<\/button>\n            <\/div>\n\n            <div class=\"aiig-revise-block\">\n                <h4>Ubah Itinerary Ini?<\/h4>\n                <textarea id=\"aiig-revision-note\" rows=\"2\" placeholder=\"Jelaskan perubahan yang diinginkan...\"><\/textarea>\n                <button id=\"aiig-revise-btn\">Ubah Itinerary<\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script>\njQuery(document).ready(function($) {\n    let rawMarkdown = '';\n    let currentPostId = 0;\n    let generatedPublicUrl = '';\n\n    function aiigEscapeHtml(str) {\n        return $('<div>').text(str || '').html();\n    }\n\n    \/\/ Sinkronkan kelas visual 'aiig-chip-active' dengan status checked sungguhan,\n    \/\/ supaya tampilan chip\/pill selalu akurat (termasuk saat form di-reset browser).\n    function aiigSyncChipState($scope) {\n        $scope.find('input[type=\"checkbox\"], input[type=\"radio\"]').each(function() {\n            $(this).closest('label').toggleClass('aiig-chip-active', this.checked);\n        });\n    }\n\n    $('#aiig-form').on('change', 'input[type=\"checkbox\"], input[type=\"radio\"]', function() {\n        aiigSyncChipState($('#aiig-form'));\n    });\n    aiigSyncChipState($('#aiig-form'));\n\n    function aiigRenderGallery(references) {\n        if (!references || references.length === 0) {\n            $('#aiig-gallery-wrapper').hide();\n            $('#aiig-gallery').empty();\n            return;\n        }\n\n        let galleryHtml = '';\n        references.forEach(function(ref) {\n            if (!ref.image) return;\n            const title = aiigEscapeHtml(ref.title);\n            const type = aiigEscapeHtml(ref.type);\n            const url = ref.url || '#';\n            galleryHtml += '<div class=\"aiig-gallery-item\">' +\n                '<img decoding=\"async\" src=\"' + ref.image + '\" alt=\"' + title + '\" loading=\"lazy\">' +\n                '<div class=\"aiig-gallery-caption\">' +\n                    '<a href=\"' + url + '\" target=\"_blank\" rel=\"noopener\">' + title + '<\/a><br>' +\n                    '<small>' + type + '<\/small>' +\n                '<\/div>' +\n            '<\/div>';\n        });\n\n        if (galleryHtml) {\n            $('#aiig-gallery').html(galleryHtml);\n            $('#aiig-gallery-wrapper').show();\n        } else {\n            $('#aiig-gallery-wrapper').hide();\n        }\n    }\n\n    $('input[name=\"days_option\"]').on('change', function() {\n        if ($(this).val() === 'flexible') {\n            $('#aiig-days-input-wrapper').hide();\n        } else {\n            $('#aiig-days-input-wrapper').show();\n        }\n    });\n\n    $('#aiig-day-minus').on('click', function() {\n        const $input = $('input[name=\"days_num\"]');\n        const val = Math.max(1, (parseInt($input.val(), 10) || 1) - 1);\n        $input.val(val);\n    });\n    $('#aiig-day-plus').on('click', function() {\n        const $input = $('input[name=\"days_num\"]');\n        const val = Math.min(30, (parseInt($input.val(), 10) || 1) + 1);\n        $input.val(val);\n    });\n\n    $('#aiig-form').on('submit', function(e) {\n        e.preventDefault();\n\n        if ($('input[name=\"destinations[]\"]:checked').length === 0) {\n            alert('Silakan pilih minimal 1 destinasi wisata.');\n            return;\n        }\n\n        generateItinerary();\n    });\n\n    $('#aiig-revise-btn').on('click', function() {\n        const revision = $('#aiig-revision-note').val();\n        if (!revision) {\n            alert('Masukkan instruksi perubahan terlebih dahulu.');\n            return;\n        }\n        generateItinerary(revision);\n    });\n\n    function generateItinerary(revisionNote = '') {\n        $('#aiig-loading').show();\n        $('#aiig-result-wrapper').hide();\n\n        $('html, body').animate({ scrollTop: $(\"#aiig-loading-anchor\").offset().top - 20 }, 500);\n\n        let formData = new FormData($('#aiig-form')[0]);\n        formData.append('action', 'aiig_generate');\n        formData.append('nonce', aiig_ajax.nonce);\n\n        if (currentPostId > 0) formData.append('current_post_id', currentPostId);\n        if (revisionNote) {\n            formData.append('revision', revisionNote);\n            formData.append('previous_itinerary', rawMarkdown);\n        }\n\n        $.ajax({\n            url: aiig_ajax.ajax_url,\n            type: 'POST',\n            data: formData,\n            contentType: false,\n            processData: false,\n            success: function(res) {\n                $('#aiig-loading').hide();\n                if (res.success) {\n                    rawMarkdown = res.data.itinerary;\n                    currentPostId = res.data.post_id;\n                    generatedPublicUrl = res.data.public_url;\n\n                    const formattedHtml = marked.parse(rawMarkdown);\n                    $('#aiig-result-content').html(formattedHtml);\n\n                    aiigRenderGallery(res.data.references);\n\n                    $('#aiig-result-wrapper').show();\n                    $('#aiig-revision-note').val('');\n\n                    $('html, body').animate({ scrollTop: $(\"#aiig-result-wrapper\").offset().top - 20 }, 400);\n                } else {\n                    alert('Error: ' + res.data);\n                }\n            },\n            error: function() {\n                $('#aiig-loading').hide();\n                alert('Terjadi kesalahan pada sistem. Silakan coba lagi.');\n            }\n        });\n    }\n\n    $('#aiig-copy-btn').on('click', function() {\n        const text = $('#aiig-result-content').text();\n        navigator.clipboard.writeText(text).then(function() {\n            alert('Itinerary berhasil disalin ke clipboard!');\n        });\n    });\n\n    $('#aiig-wa-btn').on('click', function() {\n        if (!generatedPublicUrl) {\n            alert('URL itinerary belum tersedia.');\n            return;\n        }\n        const waMessage = `Halo, saya ingin mendiskusikan itinerary perjalanan ini:\\n${generatedPublicUrl}\\n\\nBagaimana menurutmu?`;\n        const encodedUrl = `https:\/\/wa.me\/?text=${encodeURIComponent(waMessage)}`;\n        window.open(encodedUrl, '_blank');\n    });\n});\n<\/script>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-272b3c9 e-flex e-con-boxed e-con e-child\" data-id=\"272b3c9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2764f67 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"2764f67\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Disclaimer:<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-99eba05 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"99eba05\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Itinerary yang dihasilkan oleh sistem ini dibuat secara otomatis oleh AI. AI dapat melakukan kesalahan. Selalu konsultasikan itinerary dengan tour operator Anda.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>NTB Trip Planner Use this itinerary generator to create your custom itinerary. Copy the result, and contact your tour operator. Disclaimer: Itinerary yang dihasilkan oleh sistem ini dibuat secara otomatis oleh AI. AI dapat melakukan kesalahan. Selalu konsultasikan itinerary dengan tour operator Anda.<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-2977","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Itinerary Generator - Lombok Sumbawa Tourism<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/visitntb.com\/id\/itinerary-generator\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Itinerary Generator - Lombok Sumbawa Tourism\" \/>\n<meta property=\"og:description\" content=\"NTB Trip Planner Use this itinerary generator to create your custom itinerary. Copy the result, and contact your tour operator. Disclaimer: Itinerary yang dihasilkan oleh sistem ini dibuat secara otomatis oleh AI. AI dapat melakukan kesalahan. Selalu konsultasikan itinerary dengan tour operator Anda.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/visitntb.com\/id\/itinerary-generator\/\" \/>\n<meta property=\"og:site_name\" content=\"Lombok Sumbawa Tourism\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/bppdntb\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-01T16:34:37+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/visitntb.com\\\/itinerary-generator\\\/\",\"url\":\"https:\\\/\\\/visitntb.com\\\/itinerary-generator\\\/\",\"name\":\"Itinerary Generator - Lombok Sumbawa Tourism\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/visitntb.com\\\/#website\"},\"datePublished\":\"2026-08-19T07:41:02+00:00\",\"dateModified\":\"2026-09-01T16:34:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/visitntb.com\\\/itinerary-generator\\\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/visitntb.com\\\/itinerary-generator\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/visitntb.com\\\/itinerary-generator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Lombok Sumbawa Tourism\",\"item\":\"https:\\\/\\\/visitntb.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Itinerary Generator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/visitntb.com\\\/#website\",\"url\":\"https:\\\/\\\/visitntb.com\\\/\",\"name\":\"Lombok Sumbawa Tourism\",\"description\":\"Official Tourism Information Center of West Nusa Tenggara\",\"publisher\":{\"@id\":\"https:\\\/\\\/visitntb.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/visitntb.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/visitntb.com\\\/#organization\",\"name\":\"Lombok Sumbawa Tourism\",\"url\":\"https:\\\/\\\/visitntb.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/visitntb.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/visitntb.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/logo-bppd-besar.png\",\"contentUrl\":\"https:\\\/\\\/visitntb.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/logo-bppd-besar.png\",\"width\":3234,\"height\":1839,\"caption\":\"Lombok Sumbawa Tourism\"},\"image\":{\"@id\":\"https:\\\/\\\/visitntb.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/facebook.com\\\/bppdntb\",\"https:\\\/\\\/instagram.com\\\/bppdntb\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Itinerary Generator - Lombok Sumbawa Tourism","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/visitntb.com\/id\/itinerary-generator\/","og_locale":"id_ID","og_type":"article","og_title":"Itinerary Generator - Lombok Sumbawa Tourism","og_description":"NTB Trip Planner Use this itinerary generator to create your custom itinerary. Copy the result, and contact your tour operator. Disclaimer: Itinerary yang dihasilkan oleh sistem ini dibuat secara otomatis oleh AI. AI dapat melakukan kesalahan. Selalu konsultasikan itinerary dengan tour operator Anda.","og_url":"https:\/\/visitntb.com\/id\/itinerary-generator\/","og_site_name":"Lombok Sumbawa Tourism","article_publisher":"https:\/\/facebook.com\/bppdntb","article_modified_time":"2026-09-01T16:34:37+00:00","twitter_card":"summary_large_image","twitter_misc":{"Estimasi waktu membaca":"1 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/visitntb.com\/itinerary-generator\/","url":"https:\/\/visitntb.com\/itinerary-generator\/","name":"Itinerary Generator - Lombok Sumbawa Tourism","isPartOf":{"@id":"https:\/\/visitntb.com\/#website"},"datePublished":"2026-08-19T07:41:02+00:00","dateModified":"2026-09-01T16:34:37+00:00","breadcrumb":{"@id":"https:\/\/visitntb.com\/itinerary-generator\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/visitntb.com\/itinerary-generator\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/visitntb.com\/itinerary-generator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Lombok Sumbawa Tourism","item":"https:\/\/visitntb.com\/"},{"@type":"ListItem","position":2,"name":"Itinerary Generator"}]},{"@type":"WebSite","@id":"https:\/\/visitntb.com\/#website","url":"https:\/\/visitntb.com\/","name":"Pariwisata Lombok Sumbawa","description":"Official Tourism Information Center of West Nusa Tenggara","publisher":{"@id":"https:\/\/visitntb.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/visitntb.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Organization","@id":"https:\/\/visitntb.com\/#organization","name":"Pariwisata Lombok Sumbawa","url":"https:\/\/visitntb.com\/","logo":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/visitntb.com\/#\/schema\/logo\/image\/","url":"https:\/\/visitntb.com\/wp-content\/uploads\/2024\/11\/logo-bppd-besar.png","contentUrl":"https:\/\/visitntb.com\/wp-content\/uploads\/2024\/11\/logo-bppd-besar.png","width":3234,"height":1839,"caption":"Lombok Sumbawa Tourism"},"image":{"@id":"https:\/\/visitntb.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/facebook.com\/bppdntb","https:\/\/instagram.com\/bppdntb"]}]}},"_links":{"self":[{"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/pages\/2977","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/comments?post=2977"}],"version-history":[{"count":20,"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/pages\/2977\/revisions"}],"predecessor-version":[{"id":3092,"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/pages\/2977\/revisions\/3092"}],"wp:attachment":[{"href":"https:\/\/visitntb.com\/id\/wp-json\/wp\/v2\/media?parent=2977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}