{"id":2,"date":"2026-04-21T11:48:24","date_gmt":"2026-04-21T11:48:24","guid":{"rendered":"https:\/\/familyfunwaterpark.com\/?page_id=2"},"modified":"2026-06-15T08:00:51","modified_gmt":"2026-06-15T08:00:51","slug":"tickets","status":"publish","type":"page","link":"https:\/\/familyfunwaterpark.com\/index.php\/tickets\/","title":{"rendered":"Tickets"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2\" class=\"elementor elementor-2\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3f598a95 e-flex e-con-boxed wcf-starter-animations-none e-con e-parent\" data-id=\"3f598a95\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6561745 elementor-align-center elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"6561745\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"huge huge-arrow-right-double-round\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Note: Only Gents Group <b style=\"color: red;font-size: 30px\">NOT <\/b>Allowed ! <\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"huge huge-arrow-right-double-round\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Advance booking per person <b style=\"color: red;font-size: 30px\">\u20b9 100<\/b> only<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e1eae45 wcf-starter-animations-none elementor-invisible elementor-widget elementor-widget-text-editor\" data-id=\"e1eae45\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ha_floating_fx&quot;:&quot;yes&quot;,&quot;ha_floating_fx_scale_toggle&quot;:&quot;yes&quot;,&quot;_animation&quot;:&quot;pulse&quot;,&quot;wcf_starter_animations&quot;:&quot;none&quot;,&quot;wcf_anim_duration&quot;:1000,&quot;wcf_anim_delay&quot;:0,&quot;wcf_anim_ease&quot;:&quot;ease&quot;,&quot;ha_floating_fx_scale_x&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;from&quot;:1,&quot;to&quot;:1.2}},&quot;ha_floating_fx_scale_y&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;from&quot;:1,&quot;to&quot;:1.2}},&quot;ha_floating_fx_scale_duration&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1000,&quot;sizes&quot;:[]},&quot;ha_floating_fx_scale_delay&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>&#8220;Kids upto 3feet free entry&#8221;<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7984ea5 e-con-full e-flex wcf-starter-animations-none e-con e-child\" data-id=\"7984ea5\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t<div class=\"elementor-element elementor-element-0e93281 e-grid e-con-full wcf-starter-animations-none e-con e-child\" data-id=\"0e93281\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t<div class=\"elementor-element elementor-element-0c19432 e-con-full e-flex wcf-starter-animations-none e-con e-child\" data-id=\"0c19432\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-68816e6c wcf-starter-animations-none elementor-widget elementor-widget-text-editor\" data-id=\"68816e6c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;wcf_starter_animations&quot;:&quot;none&quot;,&quot;wcf_anim_duration&quot;:1000,&quot;wcf_anim_delay&quot;:0,&quot;wcf_anim_ease&quot;:&quot;ease&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t\n    <style>\n        \/* ===== FFW Booking Form \u2013 Mobile-First Responsive ===== *\/\n\n        \/* Viewport reset *\/\n        #ffw-booking-container *, #ffw-booking-container *::before, #ffw-booking-container *::after {\n            box-sizing: border-box;\n        }\n\n        #ffw-booking-container {\n            width: 100%;\n            max-width: 480px;\n            margin: 16px auto;\n            border-radius: 20px;\n            background: #fff;\n            box-shadow: 0 8px 40px rgba(0, 80, 180, 0.13);\n            overflow: hidden;\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", sans-serif;\n            -webkit-font-smoothing: antialiased;\n        }\n\n        \/* \u2500\u2500 Header \u2500\u2500 *\/\n        .ffw-form-header {\n            background: linear-gradient(135deg, #0a4fa6 0%, #1a7fc1 60%, #06b6d4 100%);\n            padding: 28px 24px 22px;\n            text-align: center;\n        }\n        .ffw-form-header-icon {\n            font-size: 44px;\n            margin-bottom: 8px;\n            display: block;\n            line-height: 1;\n        }\n        .ffw-form-header h2 {\n            margin: 0;\n            color: #fff;\n            font-size: 20px;\n            font-weight: 800;\n            letter-spacing: -0.3px;\n        }\n        .ffw-form-header p {\n            margin: 6px 0 0;\n            color: rgba(255, 255, 255, 0.85);\n            font-size: 13px;\n        }\n\n        \/* \u2500\u2500 Body \u2500\u2500 *\/\n        .ffw-form-body {\n            padding: 22px 20px 26px;\n        }\n\n        \/* \u2500\u2500 Field \u2500\u2500 *\/\n        .ffw-field { margin-bottom: 16px; }\n        .ffw-field label {\n            display: flex;\n            align-items: center;\n            gap: 7px;\n            margin-bottom: 8px;\n            font-weight: 700;\n            color: #1f2937;\n            font-size: 14px;\n        }\n        .ffw-lbl-icon { font-size: 16px; flex-shrink: 0; }\n\n        .ffw-field input {\n            width: 100%;\n            padding: 13px 16px;\n            border: 1.5px solid #d1d5db;\n            border-radius: 12px;\n            font-size: 16px; \/* 16px prevents iOS auto-zoom *\/\n            color: #111827;\n            background: #f9fafb;\n            transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;\n            -webkit-appearance: none;\n            appearance: none;\n        }\n        .ffw-field input:focus {\n            border-color: #2271b1;\n            box-shadow: 0 0 0 4px rgba(34, 113, 177, 0.14);\n            outline: none;\n            background: #fff;\n        }\n        .ffw-field input::placeholder { color: #9ca3af; }\n\n        \/* \u2500\u2500 Section divider \u2500\u2500 *\/\n        .ffw-section-label {\n            font-size: 11px;\n            font-weight: 700;\n            color: #9ca3af;\n            text-transform: uppercase;\n            letter-spacing: 0.8px;\n            margin: 20px 0 12px;\n        }\n\n        \/* \u2500\u2500 Counter row \u2500\u2500 *\/\n        .ffw-counter-row {\n            display: grid;\n            grid-template-columns: 1fr 1fr;\n            gap: 10px;\n            margin-bottom: 16px;\n        }\n        .ffw-counter-group {\n            border: 1.5px solid #d1d5db;\n            border-radius: 12px;\n            padding: 11px 10px;\n            background: #f9fafb;\n            transition: border-color 0.15s, box-shadow 0.15s;\n            overflow: hidden; \/* hard stop \u2014 nothing clips out *\/\n        }\n        .ffw-counter-group:focus-within {\n            border-color: #2271b1;\n            box-shadow: 0 0 0 3px rgba(34, 113, 177, 0.10);\n        }\n        .ffw-counter-label {\n            font-size: 10px;\n            font-weight: 700;\n            color: #6b7280;\n            text-transform: uppercase;\n            letter-spacing: 0.6px;\n            margin-bottom: 8px;\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n        }\n        .ffw-counter-ctrl {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            gap: 4px;\n        }\n        .ffw-counter-ctrl button {\n            \/* width = height = min-width = min-height \u2014 all same, no conflict *\/\n            width: 40px;\n            height: 40px;\n            min-width: 40px;\n            min-height: 40px;\n            flex-shrink: 0;\n            border-radius: 10px;\n            border: 1.5px solid #d1d5db;\n            background: #fff;\n            font-size: 20px;\n            cursor: pointer;\n            color: #374151;\n            font-weight: 700;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.15s;\n            line-height: 1;\n            padding: 0;\n            touch-action: manipulation;\n            -webkit-tap-highlight-color: transparent;\n        }\n        .ffw-counter-ctrl button:hover,\n        .ffw-counter-ctrl button:active {\n            background: #eff6ff;\n            border-color: #2271b1;\n            color: #2271b1;\n        }\n        .ffw-counter-val {\n            font-size: 22px;\n            font-weight: 800;\n            color: #111827;\n            flex: 1;\n            text-align: center;\n            min-width: 0; \/* allow flex shrink *\/\n        }\n        .ffw-counter-group input[type=\"number\"] { display: none; }\n\n        \/* \u2500\u2500 Price Card \u2500\u2500 *\/\n        .ffw-price-card {\n            background: linear-gradient(135deg, #f0f9ff, #e0f2fe);\n            border: 1.5px solid #bae6fd;\n            border-radius: 14px;\n            padding: 16px 18px;\n            margin-bottom: 18px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            gap: 12px;\n        }\n        .ffw-price-left { flex: 1; min-width: 0; }\n        .ffw-price-label {\n            font-size: 12px;\n            font-weight: 700;\n            color: #0369a1;\n            text-transform: uppercase;\n            letter-spacing: 0.5px;\n            margin-bottom: 3px;\n        }\n        .ffw-price-breakdown {\n            font-size: 12px;\n            color: #6b7280;\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n        }\n        .ffw-price-right {\n            display: flex;\n            align-items: baseline;\n            gap: 2px;\n            flex-shrink: 0;\n        }\n        .ffw-price-currency { font-size: 17px; font-weight: 700; color: #0a4fa6; }\n        .ffw-price-amount   { font-size: 30px; font-weight: 900; color: #0a4fa6; line-height: 1; }\n\n        \/* \u2500\u2500 Pay Button \u2500\u2500 *\/\n        .btn-ffw-pay {\n            width: 100%;\n            padding: 16px;\n            border: none;\n            border-radius: 14px;\n            background: linear-gradient(135deg, #0a4fa6 0%, #1a7fc1 100%);\n            color: #fff;\n            font-size: 17px;\n            font-weight: 800;\n            cursor: pointer;\n            transition: transform 0.18s, box-shadow 0.18s;\n            box-shadow: 0 5px 18px rgba(10, 79, 166, 0.38);\n            letter-spacing: 0.1px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 8px;\n            touch-action: manipulation;\n            -webkit-tap-highlight-color: transparent;\n        }\n        .btn-ffw-pay:hover   { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(10, 79, 166, 0.45); }\n        .btn-ffw-pay:active  { transform: translateY(0); box-shadow: 0 3px 10px rgba(10, 79, 166, 0.3); }\n        .btn-ffw-pay:disabled {\n            background: #9ca3af;\n            box-shadow: none;\n            cursor: not-allowed;\n            transform: none;\n        }\n\n        \/* \u2500\u2500 Secure note \u2500\u2500 *\/\n        .ffw-secure-note {\n            text-align: center;\n            font-size: 12px;\n            color: #9ca3af;\n            margin-top: 14px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 6px;\n        }\n\n        \/* \u2500\u2500 Mobile breakpoints \u2500\u2500 *\/\n\n        \/* Very small phones (< 380px) *\/\n        @media (max-width: 380px) {\n            #ffw-booking-container { border-radius: 0; margin: 0; }\n            .ffw-form-header { padding: 20px 16px 16px; }\n            .ffw-form-header-icon { font-size: 34px; }\n            .ffw-form-header h2 { font-size: 17px; }\n            .ffw-form-body { padding: 16px 14px 20px; }\n            \/* Even tighter counters on very small screens *\/\n            .ffw-counter-group { padding: 10px 8px; }\n            .ffw-counter-ctrl button { width: 36px; height: 36px; min-width: 36px; min-height: 36px; font-size: 18px; }\n            .ffw-counter-val { font-size: 20px; }\n            .ffw-price-amount { font-size: 26px; }\n            .btn-ffw-pay { font-size: 15px; padding: 14px; }\n        }\n\n        \/* Standard mobile (380px \u2013 480px): already default, just tune *\/\n        @media (max-width: 480px) {\n            #ffw-booking-container { max-width: 100%; }\n            .ffw-field input { font-size: 16px; } \/* keep 16px \u2013 no iOS zoom *\/\n        }\n\n        \/* Tablet and up *\/\n        @media (min-width: 600px) {\n            #ffw-booking-container { margin: 30px auto; }\n            .ffw-form-body { padding: 26px 32px 32px; }\n            .ffw-form-header { padding: 32px 32px 26px; }\n            .ffw-form-header-icon { font-size: 50px; }\n            .ffw-form-header h2 { font-size: 22px; }\n        }\n\n        \/* \u2500\u2500 Custom Error Modal \u2500\u2500 *\/\n        .ffw-modal-overlay {\n            position: fixed;\n            top: 0; left: 0; width: 100%; height: 100%;\n            background: rgba(15, 23, 42, 0.6);\n            backdrop-filter: blur(8px);\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            z-index: 99999;\n            opacity: 0;\n            pointer-events: none;\n            transition: opacity 0.3s ease;\n            padding: 16px;\n        }\n        .ffw-modal-overlay.active {\n            opacity: 1;\n            pointer-events: auto;\n        }\n        .ffw-modal-card {\n            background: #fff;\n            border-radius: 20px;\n            width: 100%;\n            max-width: 400px;\n            box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);\n            overflow: hidden;\n            transform: scale(0.9);\n            transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);\n            border: 1px solid rgba(226, 232, 240, 0.8);\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif;\n            text-align: left;\n        }\n        .ffw-modal-overlay.active .ffw-modal-card {\n            transform: scale(1);\n        }\n        .ffw-modal-header {\n            background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%);\n            padding: 24px;\n            text-align: center;\n            color: #fff;\n        }\n        .ffw-modal-header-icon {\n            font-size: 48px;\n            margin-bottom: 8px;\n            display: block;\n            animation: ffw-bounce 1s infinite alternate;\n            line-height: 1;\n        }\n        .ffw-modal-header h3 {\n            margin: 0;\n            font-size: 18px;\n            font-weight: 800;\n            color: #fff;\n            line-height: 1.2;\n        }\n        .ffw-modal-body {\n            padding: 24px 20px;\n        }\n        .ffw-modal-error-desc {\n            font-size: 14px;\n            color: #1e293b;\n            font-weight: 700;\n            margin-bottom: 16px;\n            line-height: 1.4;\n            background: #f8fafc;\n            padding: 12px;\n            border-radius: 10px;\n            border-left: 4px solid #ef4444;\n            word-break: break-word;\n        }\n        .ffw-modal-tips {\n            background: #fffbeb;\n            border: 1px solid #fde68a;\n            border-radius: 12px;\n            padding: 14px;\n            margin-bottom: 20px;\n        }\n        .ffw-modal-tips-title {\n            font-size: 12px;\n            font-weight: 800;\n            color: #b45309;\n            text-transform: uppercase;\n            letter-spacing: 0.5px;\n            margin-bottom: 8px;\n            display: flex;\n            align-items: center;\n            gap: 4px;\n        }\n        .ffw-modal-tips ul {\n            margin: 0;\n            padding-left: 16px;\n            font-size: 12px;\n            color: #78350f;\n            line-height: 1.5;\n            list-style-type: disc;\n        }\n        .ffw-modal-tips li {\n            margin-bottom: 6px;\n        }\n        .ffw-modal-tips li:last-child {\n            margin-bottom: 0;\n        }\n        .ffw-modal-btn {\n            width: 100%;\n            padding: 14px;\n            border: none;\n            border-radius: 12px;\n            background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);\n            color: #fff;\n            font-size: 14px;\n            font-weight: 700;\n            cursor: pointer;\n            transition: transform 0.15s, box-shadow 0.15s;\n            box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2);\n            text-align: center;\n            display: block;\n        }\n        .ffw-modal-btn:hover {\n            transform: translateY(-1px);\n            box-shadow: 0 6px 16px rgba(15, 23, 42, 0.3);\n        }\n        @keyframes ffw-bounce {\n            from { transform: translateY(0); }\n            to { transform: translateY(-4px); }\n        }\n    <\/style>\n    \n    <script src=\"https:\/\/checkout.razorpay.com\/v1\/checkout.js\"><\/script>\n\n    <div id=\"ffw-booking-container\">\n        <div class=\"ffw-form-header\">\n            <span class=\"ffw-form-header-icon\">\ud83c\udf0a<\/span>\n            <h2>Book Your Waterpark Visit<\/h2>\n            <p class=\"wp-block-paragraph\">Secure online booking &amp; instant confirmation<\/p>\n        <\/div>\n\n        <div class=\"ffw-form-body\">\n            <form id=\"ffwRealForm\" method=\"post\" action=\"https:\/\/familyfunwaterpark.com\/wp-admin\/admin-post.php\">\n                <input type=\"hidden\" name=\"action\" value=\"submit_ffw_booking\">\n                <input type=\"hidden\" name=\"razorpay_payment_id\" id=\"rzp_payment_id\" value=\"\">\n                \n                <div class=\"ffw-field\">\n                    <label><span class=\"ffw-lbl-icon\">\ud83d\udc64<\/span> Full Name<\/label>\n                    <input type=\"text\" name=\"client_name\" id=\"f_name\" required placeholder=\"Enter your full name\" autocomplete=\"name\">\n                <\/div>\n\n                <div class=\"ffw-field\">\n                    <label><span class=\"ffw-lbl-icon\">\ud83d\udcf1<\/span> Phone Number<\/label>\n                    <input type=\"tel\" name=\"phone\" id=\"f_phone\" pattern=\"[0-9]{10}\" required placeholder=\"10-digit mobile number\" autocomplete=\"tel\" inputmode=\"numeric\">\n                <\/div>\n\n                <div class=\"ffw-field\">\n                    <label><span class=\"ffw-lbl-icon\">\ud83d\udcc5<\/span> Visit Date<\/label>\n                    <input type=\"date\" name=\"visit_date\" id=\"f_date\" min=\"2026-06-25\" required>\n                <\/div>\n\n                <div class=\"ffw-section-label\">Number of Guests<\/div>\n                <div class=\"ffw-counter-row\">\n                    <div class=\"ffw-counter-group\">\n                        <div class=\"ffw-counter-label\">\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67 Adults<\/div>\n                        <div class=\"ffw-counter-ctrl\">\n                            <button type=\"button\" id=\"adult-minus\" aria-label=\"Decrease adults\">\u2212<\/button>\n                            <span class=\"ffw-counter-val\" id=\"adult-display\">1<\/span>\n                            <button type=\"button\" id=\"adult-plus\" aria-label=\"Increase adults\">+<\/button>\n                        <\/div>\n                        <input type=\"number\" name=\"adult_qty\" id=\"f_adults\" value=\"1\" min=\"1\">\n                    <\/div>\n                    <div class=\"ffw-counter-group\">\n                        <div class=\"ffw-counter-label\">\ud83e\uddd2 Kids<\/div>\n                        <div class=\"ffw-counter-ctrl\">\n                            <button type=\"button\" id=\"kid-minus\" aria-label=\"Decrease kids\">\u2212<\/button>\n                            <span class=\"ffw-counter-val\" id=\"kid-display\">0<\/span>\n                            <button type=\"button\" id=\"kid-plus\" aria-label=\"Increase kids\">+<\/button>\n                        <\/div>\n                        <input type=\"number\" name=\"child_qty\" id=\"f_kids\" value=\"0\" min=\"0\">\n                    <\/div>\n                <\/div>\n\n                <div class=\"ffw-price-card\">\n                    <div class=\"ffw-price-left\">\n                        <div class=\"ffw-price-label\">Advance Booking Amount<\/div>\n                        <div class=\"ffw-price-breakdown\" id=\"price-breakdown\">1 adult \u00d7 \u20b9100<\/div>\n                    <\/div>\n                    <div class=\"ffw-price-right\">\n                        <span class=\"ffw-price-currency\">\u20b9<\/span>\n                        <span class=\"ffw-price-amount\" id=\"price-display\">100<\/span>\n                    <\/div>\n                <\/div>\n\n                <button type=\"button\" class=\"btn-ffw-pay\" id=\"payBtn\">\n                    \ud83d\udd12 Pay &amp; Confirm Booking\n                <\/button>\n                <div class=\"ffw-secure-note\">\ud83d\udd10 Secured by Razorpay &nbsp;|&nbsp; Instant ticket confirmation<\/div>\n            <\/form>\n        <\/div>\n\n        <!-- Beautiful Premium Custom Error Modal -->\n        <div id=\"ffwErrorModal\" class=\"ffw-modal-overlay\" aria-modal=\"true\" role=\"dialog\">\n            <div class=\"ffw-modal-card\">\n                <div class=\"ffw-modal-header\">\n                    <span class=\"ffw-modal-header-icon\">\u26a0\ufe0f<\/span>\n                    <h3>Payment Unsuccessful<\/h3>\n                <\/div>\n                <div class=\"ffw-modal-body\">\n                    <div class=\"ffw-modal-error-desc\" id=\"ffwErrorDesc\">\n                        The payment attempt failed or was cancelled.\n                    <\/div>\n                    <div class=\"ffw-modal-tips\">\n                        <div class=\"ffw-modal-tips-title\">\ud83d\udca1 How to resolve this:<\/div>\n                        <ul>\n                            <li>Try a different payment method (UPI, Card, or Netbanking).<\/li>\n                            <li>If you are paying inside a mobile app WebView, try opening this page in your phone's default browser (Chrome\/Safari) to allow secure bank logins.<\/li>\n                            <li>Ensure you have sufficient balance and correct PIN\/OTP details.<\/li>\n                        <\/ul>\n                    <\/div>\n                    <button type=\"button\" class=\"ffw-modal-btn\" id=\"ffwDismissModalBtn\">Dismiss &amp; Retry<\/button>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n    document.addEventListener('DOMContentLoaded', function() {\n        const payBtn    = document.getElementById('payBtn');\n        const form      = document.getElementById('ffwRealForm');\n        const nameInput = document.getElementById('f_name');\n        const phoneInput= document.getElementById('f_phone');\n        const dateInput = document.getElementById('f_date');\n        const adultInput= document.getElementById('f_adults');\n        const kidInput  = document.getElementById('f_kids');\n        const rzpKey    = \"rzp_live_SjgoEznnXIju2i\";\n\n        const errorModal    = document.getElementById('ffwErrorModal');\n        const errorDesc     = document.getElementById('ffwErrorDesc');\n        const dismissBtn    = document.getElementById('ffwDismissModalBtn');\n\n        function showError(msg) {\n            errorDesc.textContent = msg || \"The payment attempt failed or was cancelled.\";\n            errorModal.classList.add('active');\n        }\n\n        dismissBtn.addEventListener('click', function() {\n            errorModal.classList.remove('active');\n        });\n\n        \/\/ Counter controls\n        function makeCounter(minusId, plusId, displayId, inputId, min) {\n            const minus   = document.getElementById(minusId);\n            const plus    = document.getElementById(plusId);\n            const display = document.getElementById(displayId);\n            const input   = document.getElementById(inputId);\n            minus.addEventListener('click', function() {\n                let v = parseInt(input.value) || min;\n                if (v > min) { v--; input.value = v; display.textContent = v; updatePrice(); }\n            });\n            plus.addEventListener('click', function() {\n                let v = parseInt(input.value) || min;\n                v++; input.value = v; display.textContent = v; updatePrice();\n            });\n        }\n        makeCounter('adult-minus','adult-plus','adult-display','f_adults',1);\n        makeCounter('kid-minus','kid-plus','kid-display','f_kids',0);\n\n        function getTotal() {\n            return ((parseInt(adultInput.value)||0) + (parseInt(kidInput.value)||0)) * 100;\n        }\n\n        function updatePrice() {\n            const adults = parseInt(adultInput.value) || 0;\n            const kids   = parseInt(kidInput.value)   || 0;\n            const total  = (adults + kids) * 100;\n            document.getElementById('price-display').textContent = total;\n            let parts = [];\n            if (adults > 0) parts.push(adults + ' adult' + (adults>1?'s':'') + ' \u00d7 \u20b9100');\n            if (kids   > 0) parts.push(kids   + ' kid'   + (kids>1?'s':'')   + ' \u00d7 \u20b9100');\n            document.getElementById('price-breakdown').textContent = parts.join(' + ') || '\u2014';\n        }\n        updatePrice();\n\n        payBtn.addEventListener('click', function(e) {\n            e.preventDefault();\n            if (!nameInput.checkValidity() || !phoneInput.checkValidity() || !dateInput.checkValidity() || getTotal() <= 0) {\n                form.reportValidity();\n                return;\n            }\n            if (!rzpKey) { showError('Payment gateway not configured. Please contact admin.'); return; }\n\n            payBtn.disabled = true;\n            payBtn.innerHTML = '\u23f3 Opening payment\u2026';\n\n            var options = {\n                \"key\": rzpKey,\n                \"amount\": getTotal() * 100,\n                \"currency\": \"INR\",\n                \"name\": \"Family Fun Waterpark\",\n                \"description\": \"Advance Booking Fee\",\n                \"webview_intent\": true,\n                \"handler\": function (response) {\n                    var pid = response.razorpay_payment_id;\n\n                    \/\/ \u2500\u2500 JS duplicate guard: block resubmit on page refresh \u2500\u2500\n                    if (sessionStorage.getItem('ffw_paid_' + pid)) {\n                        payBtn.innerHTML = '\u2705 Already submitted \u2014 check your booking!';\n                        return;\n                    }\n                    sessionStorage.setItem('ffw_paid_' + pid, '1');\n\n                    document.getElementById('rzp_payment_id').value = pid;\n                    payBtn.innerHTML = '\u2705 Payment done! Saving booking\u2026';\n                    form.submit();\n                },\n                \"modal\": {\n                    \"ondismiss\": function() {\n                        payBtn.disabled = false;\n                        payBtn.innerHTML = '\ud83d\udd12 Pay &amp; Confirm Booking';\n                    }\n                },\n                \"prefill\": { \"name\": nameInput.value, \"contact\": phoneInput.value },\n                \"notes\": {\n                    \"client_name\":  nameInput.value,\n                    \"client_phone\": phoneInput.value,\n                    \"visit_date\":   dateInput.value,\n                    \"adult_qty\":    adultInput.value,\n                    \"child_qty\":    kidInput.value\n                },\n                \"theme\": { \"color\": \"#0a4fa6\" }\n            };\n            var rzp = new Razorpay(options);\n            rzp.on('payment.failed', function(r) {\n                showError(\"Payment Failed: \" + r.error.description);\n                payBtn.disabled = false;\n                payBtn.innerHTML = '\ud83d\udd12 Pay &amp; Confirm Booking';\n            });\n            rzp.open();\n        });\n    });\n    <\/script>\n    \n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-87608b1 elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile wcf-starter-animations-none elementor-widget elementor-widget-text-editor\" data-id=\"87608b1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;wcf_starter_animations&quot;:&quot;none&quot;,&quot;wcf_anim_duration&quot;:1000,&quot;wcf_anim_delay&quot;:0,&quot;wcf_anim_ease&quot;:&quot;ease&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We are closed for bookings now!!<br \/>We will be back soon. Thank You!!<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7d56a39 wcf-starter-animations-none elementor-widget elementor-widget-image\" data-id=\"7d56a39\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;wcf_starter_animations&quot;:&quot;none&quot;,&quot;wcf_anim_duration&quot;:1000,&quot;wcf_anim_delay&quot;:0,&quot;wcf_anim_ease&quot;:&quot;ease&quot;}\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"1000\" src=\"https:\/\/familyfunwaterpark.com\/wp-content\/uploads\/2026\/05\/676-1-819x1024.jpg\" class=\"attachment-large size-large wp-image-2682\" alt=\"\" srcset=\"https:\/\/familyfunwaterpark.com\/wp-content\/uploads\/2026\/05\/676-1-819x1024.jpg 819w, https:\/\/familyfunwaterpark.com\/wp-content\/uploads\/2026\/05\/676-1-240x300.jpg 240w, https:\/\/familyfunwaterpark.com\/wp-content\/uploads\/2026\/05\/676-1-768x960.jpg 768w, https:\/\/familyfunwaterpark.com\/wp-content\/uploads\/2026\/05\/676-1.jpg 1080w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Note: Only Gents Group NOT Allowed ! Advance booking per person \u20b9 100 only &#8220;Kids upto 3feet free entry&#8221; We are closed for bookings now!!We will be back soon. Thank You!!<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_gspb_post_css":"","footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/comments?post=2"}],"version-history":[{"count":82,"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/pages\/2\/revisions"}],"predecessor-version":[{"id":3668,"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/pages\/2\/revisions\/3668"}],"wp:attachment":[{"href":"https:\/\/familyfunwaterpark.com\/index.php\/wp-json\/wp\/v2\/media?parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}