{"id":14087,"date":"2026-05-11T01:45:44","date_gmt":"2026-05-11T08:45:44","guid":{"rendered":"https:\/\/tripdust.com\/thailand\/?page_id=14087"},"modified":"2026-05-12T03:21:20","modified_gmt":"2026-05-12T10:21:20","slug":"elephant-jungle-sanctuary","status":"publish","type":"page","link":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/","title":{"rendered":"Elephant Jungle Sanctuary"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"14087\" class=\"elementor elementor-14087\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-85e1e37 e-flex e-con-boxed e-con e-parent\" data-id=\"85e1e37\" 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-80f16f6 elementor-widget elementor-widget-woocommerce-breadcrumb\" data-id=\"80f16f6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"woocommerce-breadcrumb.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<nav class=\"woocommerce-breadcrumb\" aria-label=\"Breadcrumb\">Home<\/nav>\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<div class=\"elementor-element elementor-element-cc1c915 elementor-hidden-tablet elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"cc1c915\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_on&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;],&quot;sticky_offset&quot;:0,&quot;sticky_effects_offset&quot;:0,&quot;sticky_anchor_link_offset&quot;:0}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1bc3ea6 elementor-icon-list--layout-inline elementor-align-start elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"1bc3ea6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items elementor-inline-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#about_package\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">About This Tour<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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 elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#standard_package\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Standard Package Details<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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 elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#mini_package\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Mini Package Details<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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 elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#premier_package\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Premier Package Details<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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 elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#why_choose\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Why Choose<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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 elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#faq\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">FAQ<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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 elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#reviews\">\n\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Reviews<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\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>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-77b3f05 e-flex e-con-boxed e-con e-parent\" data-id=\"77b3f05\" 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-deec2bd elementor-widget elementor-widget-spacer\" data-id=\"deec2bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-dc7fa23 e-flex e-con-boxed e-con e-parent\" data-id=\"dc7fa23\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-47679e2 e-con-full e-flex e-con e-child\" data-id=\"47679e2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-71546db elementor-widget elementor-widget-rating\" data-id=\"71546db\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"rating.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"e-rating\" itemtype=\"https:\/\/schema.org\/Rating\" itemscope=\"\" itemprop=\"reviewRating\">\n\t\t\t<meta itemprop=\"worstRating\" content=\"0\">\n\t\t\t<meta itemprop=\"bestRating\" content=\"5\">\n\t\t\t<div class=\"e-rating-wrapper\" itemprop=\"ratingValue\" content=\"5\" role=\"img\" aria-label=\"Rated 5 out of 5\">\n\t\t\t\t\t\t\t<div class=\"e-icon\">\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-marked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-unmarked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"e-icon\">\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-marked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-unmarked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"e-icon\">\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-marked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-unmarked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"e-icon\">\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-marked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-unmarked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"e-icon\">\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-marked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"e-icon-wrapper e-icon-unmarked\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-star\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M450 75L338 312 88 350C46 354 25 417 58 450L238 633 196 896C188 942 238 975 275 954L500 837 725 954C767 975 813 942 804 896L763 633 942 450C975 417 954 358 913 350L663 312 550 75C529 33 471 33 450 75Z\"><\/path><\/svg>\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7fb39ec elementor-widget elementor-widget-heading\" data-id=\"7fb39ec\" 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<h1 class=\"elementor-heading-title elementor-size-default\">Elephant Jungle Sanctuary<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5eca1f5 e-con-full e-flex e-con e-child\" data-id=\"5eca1f5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d4f5269 elementor-widget elementor-widget-button\" data-id=\"d4f5269\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-size-sm\" role=\"button\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">English\/Hindi<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\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-ac5eac7 elementor-widget elementor-widget-button\" data-id=\"ac5eac7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-size-sm\" role=\"button\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Pickup &amp; Drop (5 km of Chiang Mai old city.)<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\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-0e438d5 elementor-widget elementor-widget-button\" data-id=\"0e438d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-size-sm\" role=\"button\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Open 6:30 AM<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\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-71eb751 elementor-widget elementor-widget-button\" data-id=\"71eb751\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-size-sm\" role=\"button\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Close 10:00 PM<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-117a7e5 elementor-icon-list--layout-inline elementor-align-center elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"117a7e5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items elementor-inline-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-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<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-map-marker-alt\" viewBox=\"0 0 384 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z\"><\/path><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Chiang Mai<\/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 elementor-inline-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<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-bookmark\" viewBox=\"0 0 384 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M0 512V48C0 21.49 21.49 0 48 0h288c26.51 0 48 21.49 48 48v464L192 400 0 512z\"><\/path><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">150 Booked<\/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>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2a8dd3d e-flex e-con-boxed e-con e-parent\" data-id=\"2a8dd3d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-a315b82 e-con-full e-flex e-con e-child\" data-id=\"a315b82\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-7753521 e-con-full e-flex e-con e-child\" data-id=\"7753521\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97200fc elementor-widget elementor-widget-heading\" data-id=\"97200fc\" 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\">Highlights<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-40bf96f elementor-widget elementor-widget-gallery\" data-id=\"40bf96f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;columns_mobile&quot;:2,&quot;aspect_ratio&quot;:&quot;4:3&quot;,&quot;columns&quot;:3,&quot;lazyload&quot;:&quot;yes&quot;,&quot;gallery_layout&quot;:&quot;grid&quot;,&quot;columns_tablet&quot;:2,&quot;gap&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;gap_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;gap_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;link_to&quot;:&quot;file&quot;,&quot;overlay_background&quot;:&quot;yes&quot;,&quot;content_hover_animation&quot;:&quot;fade-in&quot;}\" data-widget_type=\"gallery.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-gallery__container\">\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Junglle-Sanctuary.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Junglle Sanctuary\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTUsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xsZS1TYW5jdHVhcnkud2VicCIsInNsaWRlc2hvdyI6IjQwYmY5NmYifQ%3D%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Junglle-Sanctuary.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary1.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Jungle Sanctuary1\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTksInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlLVNhbmN0dWFyeTEud2VicCIsInNsaWRlc2hvdyI6IjQwYmY5NmYifQ%3D%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary1.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuaryy.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Jungle Sanctuaryy\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTIsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlLVNhbmN0dWFyeXkud2VicCIsInNsaWRlc2hvdyI6IjQwYmY5NmYifQ%3D%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuaryy.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-bathing.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Jungle Sanctuary bathing\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTAsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlLVNhbmN0dWFyeS1iYXRoaW5nLndlYnAiLCJzbGlkZXNob3ciOiI0MGJmOTZmIn0%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-bathing.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Junglee.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Junglee\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTQsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlZS53ZWJwIiwic2xpZGVzaG93IjoiNDBiZjk2ZiJ9\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Junglee.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctury.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Jungle Sanctury\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTMsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlLVNhbmN0dXJ5LndlYnAiLCJzbGlkZXNob3ciOiI0MGJmOTZmIn0%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctury.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Junglee-Sanctuary.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Junglee Sanctuary\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwODksInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlZS1TYW5jdHVhcnkud2VicCIsInNsaWRlc2hvdyI6IjQwYmY5NmYifQ%3D%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Junglee-Sanctuary.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary2.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephant Jungle Sanctuary2\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTEsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnQtSnVuZ2xlLVNhbmN0dWFyeTIud2VicCIsInNsaWRlc2hvdyI6IjQwYmY5NmYifQ%3D%3D\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary2.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephants1.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Elephants1\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTYsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvRWxlcGhhbnRzMS53ZWJwIiwic2xpZGVzaG93IjoiNDBiZjk2ZiJ9\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephants1.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<a class=\"e-gallery-item elementor-gallery-item elementor-animated-content\" href=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Jungle-Sanctuary.webp\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-slideshow=\"40bf96f\" data-elementor-lightbox-title=\"Jungle Sanctuary\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTQwOTcsInVybCI6Imh0dHBzOlwvXC90cmlwZHVzdC5jb21cL3RoYWlsYW5kXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNVwvSnVuZ2xlLVNhbmN0dWFyeS53ZWJwIiwic2xpZGVzaG93IjoiNDBiZjk2ZiJ9\">\n\t\t\t\t\t<div class=\"e-gallery-image elementor-gallery-item__image\" data-thumbnail=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Jungle-Sanctuary.webp\" data-width=\"1920\" data-height=\"1080\" aria-label=\"\" role=\"img\" ><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-gallery-item__overlay\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\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<div class=\"elementor-element elementor-element-79094f5 e-con-full e-flex e-con e-child\" data-id=\"79094f5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-eb4ed26 e-con-full e-flex e-con e-child\" data-id=\"eb4ed26\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b3c9e04 elementor-widget elementor-widget-shortcode\" data-id=\"b3c9e04\" 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\">  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\n  <style>\n    \/* ====== Theme tokens ====== *\/\n    :root{\n      --cpb-dark:#0c1324;\n      --cpb-dark-2:#111827;\n      --cpb-accent:#f57b18;\n      --cpb-accent-dark:#e65c00;\n      --cpb-accent-soft:#FFF3E0;\n      --cpb-accent-border:#FFCCBC;\n      --cpb-orange-1:#ff9040;\n      --cpb-orange-2:#f57b18;\n      --cpb-green-1:#22c55e;\n      --cpb-green-2:#16a34a;\n      --cpb-border:#e6eaf2;\n      --cpb-muted:#64748b;\n      --cpb-soft:#f5f7fb;\n      --cpb-shadow:0 8px 22px rgba(0,0,0,.06);\n    }\n\n    .cpb-root{font-family:\"Inter\",\"Segoe UI\",\"Roboto\",Arial,sans-serif;color:#0f172a}\n    .cpb-wrap{max-width:860px;margin:0 auto;}\n\n    .cpb-card{background:#fff;border:1px solid var(--cpb-border);border-radius:16px;box-shadow:var(--cpb-shadow);padding:14px;margin:16px 0}\n\n    .cpb-head{background:var(--cpb-dark);color:#fff;border-radius:12px;text-align:center;font-weight:800;padding:14px;margin:10px 0}\n\n    \/* Orange date button (acts as the opener) *\/\n    .cpb-date-btn{width:100%;background:linear-gradient(90deg,var(--cpb-orange-2),var(--cpb-orange-1));\n      color:#fff;border:0;border-radius:12px;padding:14px 16px;font-weight:800;letter-spacing:.2px;\n      display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer}\n    .cpb-date-btn:active{transform:translateY(1px)}\n\n  \/* keep the input real but invisible *\/\n.cpb-date-input{\n  position:absolute;\n  opacity:0;\n  pointer-events:none;\n  width:0;\n  height:0;\n}\n\n\/* make sure the calendar can float above everything *\/\n.flatpickr-calendar{ z-index: 999999 !important; }\n\n\n    \/* Sub-package card *\/\n    .cpb-sub{border:1.5px solid var(--cpb-accent-border);background:#fff;border-radius:14px;padding:10px 12px;margin:12px 0}\n    .cpb-sub.selected{background:#FFF8F5;border-color:#FF8A65;box-shadow:0 6px 16px rgba(255,87,34,.09)}\n    \n    \/* NEW: MANDATORY STYLES *\/\n    .cpb-sub.mandatory { border-color: #fcd34d !important; background: #fffbeb !important; }\n    .cpb-sub.mandatory .cpb-subheader { background: #fff7ed !important; border-color: #fed7aa !important; }\n    .cpb-req-badge { display:inline-block; font-size:10px; background:#fcd34d; color:#92400e; padding:2px 6px; border-radius:4px; text-transform:uppercase; margin-left:6px; vertical-align:middle; }\n\n    .cpb-subheader{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:top;\n      border-radius:10px;background:var(--cpb-accent-soft);border:1px solid var(--cpb-accent-border);padding:10px 12px;cursor:pointer}\n    .cpb-subheader:hover{filter:brightness(1.01)}\n    .cpb-check{width:18px;height:18px;accent-color:var(--cpb-accent);cursor:pointer;margin-top:5px}\n    .cpb-title{font-weight:800;color:#1f2937;line-height: 22px;}\n\n    .cpb-rates{display:flex;gap:24px;color:var(--cpb-accent-dark);font-weight:700;margin:10px 0 6px 0; padding:0 6px}\n\n    \/* Stepper row (3 columns), with centered labels above controls *\/\n    .cpb-stepper-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:center;padding:10px 0px 6px 0px}\n    .cpb-stepper{display:block !important;grid-template-rows:auto auto;justify-items:center;gap:6px}\n    .cpb-stepper .cpb-label{font-weight:700;color:#374151}\n\n    .cpb-ctrl{display:flex;align-items:center;gap:8px}\n    .cpb-btn{width:25px;height:36px;border-radius:8px;border:1.5px solid #ffd38a;background:#ffe3b0;color:#a35200;font-size:18px;cursor:pointer}\n    .cpb-btn.plus{background:#ffb74d;color:#fff;border-color:#ff9f2a}\n    .cpb-input{width:45px;height:36px;border:1.5px solid #cbd5e1;border-radius:10px;text-align:center;font-weight:800}\n    \/* No arrows *\/\n    .cpb-input::-webkit-outer-spin-button,\n    .cpb-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}\n    .cpb-input[type=number]{-moz-appearance:textfield}\n\n    \/* Show time *\/\n    .cpb-select{width:100%;height:46px;border:1.5px solid #cbd5e1;border-radius:10px;padding:8px 10px;background:#fff;margin-top:8px}\n    .cpb-time-block{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:12px;padding:12px 12px 14px;margin-top:12px;display:none}\n    .cpb-time-block.show{display:block}\n    .cpb-time-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}\n    .cpb-time-title{font-weight:800;color:#0f172a}\n    .cpb-time-note{background:#fff7ed;border:1px solid #fde68a;color:#92400e;font-weight:700;padding:6px 10px;border-radius:8px;font-size:13px}\n    .cpb-time-block .cpb-select{margin-top:10px}\n\n    \/* Summary *\/\n    .cpb-summary{background:#f7f9fd;border:1px solid #e6ecf7;border-radius:12px;margin-top:10px}\n    .cpb-sum-hd{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #e6ecf7}\n    .cpb-lines{padding:10px 12px 0 12px}\n    .cpb-line{display:flex;justify-content:space-between;padding:6px 0}\n    .cpb-meta{padding:8px 12px;color:#6b7280;border-top:1px dashed #e5e7eb;display:flex;gap:24px;flex-wrap:wrap}\n    .cpb-total{padding:10px 12px;display:flex;justify-content:flex-end;align-items:center;gap:8px;border-top:1px solid #e6ecf7}\n    .cpb-badge{background:var(--cpb-accent-soft);border:1px solid var(--cpb-accent-border);border-radius:10px;padding:6px 12px;font-weight:900;color:var(--cpb-accent-dark)}\n\n    \/* Actions *\/\n    .cpb-actions{display:flex;gap:12px;margin-top:12px}\n    .cpb-primary{flex:1;background:linear-gradient(180deg,#ff9040,#f57b18);color:#fff;border:1px solid rgba(255,87,34,.35);border-radius:12px;height:50px;font-weight:900;cursor:pointer}\n\n    \/* Mobile *\/\n    @media(max-width:640px){\n      \/* .cpb-stepper-row{grid-template-columns:1fr;gap:10px} *\/\n      .cpb-stepper-row{gap:6px}\n      .cpb-input{width:35px !important}\n      .cpb-ctrl{gap:5px}\n      .cpb-btn, .cpb-stepper .cpb-btn{width: 22px !important;}\n    }\n\n    \/* Spinner modal *\/\n#cpb-processing-modal{position:fixed;inset:0;background:rgba(15,23,42,.45);backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center;z-index:9999}\n#cpb-processing-modal .box{background:#fff;border:1px solid #e5e7eb;border-radius:16px;display:flex;gap:12px;align-items:center;padding:18px 20px;box-shadow:0 18px 50px rgba(0,0,0,.25)}\n#cpb-processing-modal .spin{width:26px;height:26px;border:3px solid #bae6fd;border-top-color:#0284c7;border-radius:50%;animation:cpbspin .8s linear infinite}\n@keyframes cpbspin{to{transform:rotate(360deg)}}\n\n\/* --- Error emphasis for missing date --- *\/\n.cpb-date-btn.error{\n  outline:3px solid #ef4444;                \/* red ring *\/\n  box-shadow:0 0 0 6px rgba(239,68,68,.18); \/* soft glow *\/\n  animation:cpb-shake .4s linear 1;\n}\n.cpb-time-error{\n  outline:3px solid #ef4444;\n  box-shadow:0 0 0 6px rgba(239,68,68,.18);\n}\n.cpb-date-hint{color:#b91c1c;font-weight:800;text-align:center;margin-top:6px;display:none}\n.cpb-date-hint.show{display:block}\n@keyframes cpb-shake{\n  0%,100%{transform:translateX(0)}\n  25%{transform:translateX(-4px)}\n  75%{transform:translateX(4px)}\n}\n  <\/style>\n\n<style>\n\/* --- Center the steppers perfectly and keep 2\u20133 digits visible --- *\/\n.cpb-stepper,\n.cpb-qty,\n.cpb-persons .row {\n  display:flex;\n  align-items:center;\n  justify-content:center;\n  gap:8px;\n}\n\n.cpb-btn,\n.cpb-stepper .cpb-btn {\n  width:25px; height:36px;\n  padding:0; line-height:1;\n  display:flex; align-items:center; justify-content:center;\n  \/* Prevent double-tap zoom on iOS for these tappable controls *\/\n  touch-action: manipulation;\n}\n\n\/* number input same height and true vertical centering *\/\n.cpb-num,\n.cpb-stepper input[type=\"number\"],\n.cpb-persons input[type=\"number\"]{\n  width:45px;\n  height:36px;\n  line-height:36px;\n  font-weight:700;\n  text-align:center;\n  padding:0;\n}\n\n\/* remove browser arrows so text is centered cleanly *\/\n.cpb-persons input[type=number]::-webkit-outer-spin-button,\n.cpb-persons input[type=number]::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }\n.cpb-persons input[type=number]{ -moz-appearance:textfield; }\n\n\/* center the labels above each column *\/\n.cpb-qty-head,\n.cpb-person-grid .head {\n  display:grid;\n  grid-template-columns:repeat(3,1fr);\n  text-align:center;\n  margin:6px 0 8px;\n}\n\n\/* ===== iPhone anti-zoom fix: ensure 16px font on form controls inside widget ===== *\/\n.cpb-root input,\n.cpb-root select,\n.cpb-root button {\n  font-size:16px;              \/* key fix: iOS zooms if <16px *\/\n  -webkit-text-size-adjust:100%;\n}\n<\/style>\n\n\n  <div id=\"cpb-processing-modal\" aria-live=\"polite\" aria-modal=\"true\" role=\"dialog\">\n    <div class=\"box\"><div class=\"spin\" aria-hidden=\"true\"><\/div><div class=\"txt\" style=\"font-weight:900;color:#0b1324\">Processing\u2026<\/div><\/div>\n  <\/div>\n\n  <div class=\"cpb-root\">\n    <div class=\"cpb-wrap\">\n            <div class=\"cpb-card cpb-package\" data-package-id=\"14084\">\n        <button type=\"button\" class=\"cpb-date-btn js-open-date\" aria-describedby=\"date-hint\">\n  <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n    <rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\" stroke=\"#fff\" stroke-width=\"2\"\/>\n    <line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\" stroke=\"#fff\" stroke-width=\"2\" \/>\n    <line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\" stroke=\"#fff\" stroke-width=\"2\" \/>\n    <line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\" stroke=\"#fff\" stroke-width=\"2\"\/>\n  <\/svg>\n  <span class=\"js-date-text\">Select Journey Date<\/span>\n<\/button>\n<input type=\"text\" class=\"cpb-date-input js-date\" name=\"cpb_journey_date\" \/>\n<div id=\"date-hint\" class=\"cpb-date-hint js-date-hint\">Please select your journey date.<\/div>\n\n                  <div class=\"cpb-sub\" data-sub-index=\"0\" data-end-time=\"\" data-advance-booking=\"1\" data-allow-child=\"1\" data-allow-infant=\"1\" data-closed-days=\"\">\n            <label class=\"cpb-subheader js-toggle\">\n              <input type=\"checkbox\" class=\"cpb-check js-check\" >\n              <span class=\"cpb-title\">\n                  Feed Me                                <\/span>\n            <\/label>\n\n                                    <div class=\"cpb-rates\">\n                              <span>Adult: \u0e3f600<\/span>\n                                                              <span>Child: \u0e3f600<\/span>\n                                                                              <span>Infant: \u0e3f0<\/span>\n                                          <\/div>\n            \n            <div class=\"cpb-stepper-row js-steppers\" data-cols=\"3\" style=\"display:none;grid-template-columns:repeat(3,1fr);\">\n              <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Adults<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"adults\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-adults\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"adults\">+<\/button>\n                <\/div>\n              <\/div>\n                            <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Children<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"children\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-children\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"children\">+<\/button>\n                <\/div>\n              <\/div>\n                                          <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Infants<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"infants\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-infants\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"infants\">+<\/button>\n                <\/div>\n              <\/div>\n                          <\/div>\n\n                        <div class=\"js-price\" data-adult=\"600\"\n                 data-child=\"600\"\n                 data-infant=\"0\"\n                 data-orig-adult=\"600\"\n                 data-orig-child=\"600\"\n                 data-orig-infant=\"0\"><\/div>\n          <\/div>\n                  <div class=\"cpb-sub\" data-sub-index=\"1\" data-end-time=\"\" data-advance-booking=\"1\" data-allow-child=\"1\" data-allow-infant=\"1\" data-closed-days=\"\">\n            <label class=\"cpb-subheader js-toggle\">\n              <input type=\"checkbox\" class=\"cpb-check js-check\" >\n              <span class=\"cpb-title\">\n                  Feed and Shower                                <\/span>\n            <\/label>\n\n                                    <div class=\"cpb-rates\">\n                              <span>Adult: \u0e3f1200<\/span>\n                                                              <span>Child: \u0e3f960<\/span>\n                                                                              <span>Infant: \u0e3f0<\/span>\n                                          <\/div>\n            \n            <div class=\"cpb-stepper-row js-steppers\" data-cols=\"3\" style=\"display:none;grid-template-columns:repeat(3,1fr);\">\n              <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Adults<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"adults\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-adults\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"adults\">+<\/button>\n                <\/div>\n              <\/div>\n                            <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Children<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"children\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-children\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"children\">+<\/button>\n                <\/div>\n              <\/div>\n                                          <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Infants<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"infants\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-infants\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"infants\">+<\/button>\n                <\/div>\n              <\/div>\n                          <\/div>\n\n                        <div class=\"js-price\" data-adult=\"1200\"\n                 data-child=\"960\"\n                 data-infant=\"0\"\n                 data-orig-adult=\"1200\"\n                 data-orig-child=\"960\"\n                 data-orig-infant=\"0\"><\/div>\n          <\/div>\n                  <div class=\"cpb-sub\" data-sub-index=\"2\" data-end-time=\"\" data-advance-booking=\"1\" data-allow-child=\"1\" data-allow-infant=\"1\" data-closed-days=\"\">\n            <label class=\"cpb-subheader js-toggle\">\n              <input type=\"checkbox\" class=\"cpb-check js-check\" >\n              <span class=\"cpb-title\">\n                  Half Day Visit                                <\/span>\n            <\/label>\n\n                                    <div class=\"cpb-rates\">\n                              <span>Adult: \u0e3f1680<\/span>\n                                                              <span>Child: \u0e3f1440<\/span>\n                                                                              <span>Infant: \u0e3f0<\/span>\n                                          <\/div>\n            \n            <div class=\"cpb-stepper-row js-steppers\" data-cols=\"3\" style=\"display:none;grid-template-columns:repeat(3,1fr);\">\n              <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Adults<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"adults\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-adults\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"adults\">+<\/button>\n                <\/div>\n              <\/div>\n                            <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Children<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"children\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-children\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"children\">+<\/button>\n                <\/div>\n              <\/div>\n                                          <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Infants<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"infants\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-infants\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"infants\">+<\/button>\n                <\/div>\n              <\/div>\n                          <\/div>\n\n                        <div class=\"js-price\" data-adult=\"1680\"\n                 data-child=\"1440\"\n                 data-infant=\"0\"\n                 data-orig-adult=\"1680\"\n                 data-orig-child=\"1440\"\n                 data-orig-infant=\"0\"><\/div>\n          <\/div>\n                  <div class=\"cpb-sub\" data-sub-index=\"3\" data-end-time=\"\" data-advance-booking=\"1\" data-allow-child=\"1\" data-allow-infant=\"1\" data-closed-days=\"\">\n            <label class=\"cpb-subheader js-toggle\">\n              <input type=\"checkbox\" class=\"cpb-check js-check\" >\n              <span class=\"cpb-title\">\n                  Watch Me                                <\/span>\n            <\/label>\n\n                                    <div class=\"cpb-rates\">\n                              <span>Adult: \u0e3f1680<\/span>\n                                                              <span>Child: \u0e3f1440<\/span>\n                                                                              <span>Infant: \u0e3f0<\/span>\n                                          <\/div>\n            \n            <div class=\"cpb-stepper-row js-steppers\" data-cols=\"3\" style=\"display:none;grid-template-columns:repeat(3,1fr);\">\n              <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Adults<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"adults\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-adults\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"adults\">+<\/button>\n                <\/div>\n              <\/div>\n                            <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Children<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"children\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-children\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"children\">+<\/button>\n                <\/div>\n              <\/div>\n                                          <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Infants<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"infants\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-infants\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"infants\">+<\/button>\n                <\/div>\n              <\/div>\n                          <\/div>\n\n                        <div class=\"js-price\" data-adult=\"1680\"\n                 data-child=\"1440\"\n                 data-infant=\"0\"\n                 data-orig-adult=\"1680\"\n                 data-orig-child=\"1440\"\n                 data-orig-infant=\"0\"><\/div>\n          <\/div>\n                  <div class=\"cpb-sub\" data-sub-index=\"4\" data-end-time=\"\" data-advance-booking=\"1\" data-allow-child=\"1\" data-allow-infant=\"0\" data-closed-days=\"\">\n            <label class=\"cpb-subheader js-toggle\">\n              <input type=\"checkbox\" class=\"cpb-check js-check\" >\n              <span class=\"cpb-title\">\n                  One Day Elephant Care                                <\/span>\n            <\/label>\n\n                                    <div class=\"cpb-rates\">\n                              <span>Adult: \u0e3f2520<\/span>\n                                                              <span>Child: \u0e3f2040<\/span>\n                                                            <span style=\"color:#9ca3af;font-weight:600;\">Infants not allowed<\/span>\n                          <\/div>\n            \n            <div class=\"cpb-stepper-row js-steppers\" data-cols=\"2\" style=\"display:none;grid-template-columns:repeat(2,1fr);\">\n              <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Adults<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"adults\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-adults\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"adults\">+<\/button>\n                <\/div>\n              <\/div>\n                            <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Children<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"children\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-children\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"children\">+<\/button>\n                <\/div>\n              <\/div>\n                                        <\/div>\n\n                        <div class=\"js-price\" data-adult=\"2520\"\n                 data-child=\"2040\"\n                 data-infant=\"0\"\n                 data-orig-adult=\"2520\"\n                 data-orig-child=\"2040\"\n                 data-orig-infant=\"0\"><\/div>\n          <\/div>\n                  <div class=\"cpb-sub\" data-sub-index=\"5\" data-end-time=\"\" data-advance-booking=\"1\" data-allow-child=\"0\" data-allow-infant=\"0\" data-closed-days=\"0\">\n            <label class=\"cpb-subheader js-toggle\">\n              <input type=\"checkbox\" class=\"cpb-check js-check\" >\n              <span class=\"cpb-title\">\n                  Volunteer                                <\/span>\n            <\/label>\n\n                                    <div class=\"cpb-rates\">\n                              <span>Adult: \u0e3f7080<\/span>\n                                            <span style=\"color:#9ca3af;font-weight:600;\">Children not allowed<\/span>\n                                            <span style=\"color:#9ca3af;font-weight:600;\">Infants not allowed<\/span>\n                          <\/div>\n                          <div class=\"cpb-closed-msg\" style=\"display:none; color:#b91c1c; font-weight:700; font-size:12px; padding:0 6px 4px 6px;\" data-closed-label=\"Sun\">\n                <!-- filled dynamically -->\n              <\/div>\n            \n            <div class=\"cpb-stepper-row js-steppers\" data-cols=\"1\" style=\"display:none;grid-template-columns:repeat(1,1fr);\">\n              <div class=\"cpb-stepper\">\n                <div class=\"cpb-label\">Adults<\/div>\n                <div class=\"cpb-ctrl\">\n                  <button type=\"button\" class=\"cpb-btn js-minus\" data-type=\"adults\">\u2013<\/button>\n                  <input type=\"number\" min=\"0\" value=\"0\" class=\"cpb-input js-val-adults\" inputmode=\"numeric\">\n                  <button type=\"button\" class=\"cpb-btn plus js-plus\" data-type=\"adults\">+<\/button>\n                <\/div>\n              <\/div>\n                                        <\/div>\n\n                        <div class=\"js-price\" data-adult=\"7080\"\n                 data-child=\"0\"\n                 data-infant=\"0\"\n                 data-orig-adult=\"7080\"\n                 data-orig-child=\"0\"\n                 data-orig-infant=\"0\"><\/div>\n          <\/div>\n        \n        \n        <div class=\"cpb-summary\">\n  <div class=\"cpb-sum-hd\">\n    <strong>Booking Summary<\/strong>\n  <\/div>\n          <div style=\"font-weight:600\" class=\"cpb-lines js-lines\"><\/div>\n          <div class=\"cpb-meta\">\n            <span>Date: <strong class=\"js-summary-date\">\u2014<\/strong><\/span>\n            <span>Time: <strong class=\"js-summary-time\">\u2014<\/strong><\/span>\n          <\/div>\n          <div class=\"cpb-total\">\n            <span style=\"font-weight:900\">Total<\/span>\n            <span class=\"cpb-badge\">\u0e3f <span class=\"js-total\">0.00<\/span><\/span>\n          <\/div>\n        <\/div>\n\n        <div class=\"cpb-actions\">\n          <button type=\"button\" class=\"cpb-primary js-book\">Book Now<\/button>\n          <\/div>\n                      <\/div>\n          <\/div>\n  <\/div>\n\n  <link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr@4.6.13\/dist\/flatpickr.min.css\" \/>\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr@4.6.13\/dist\/flatpickr.min.js\"><\/script>\n\n  <script>\n  (function(){\n    const fmt = n => Number(n||0).toLocaleString('en-US',{minimumFractionDigits:2,maximumFractionDigits:2});\n\n    \/\/ Bangkok helpers for cutoff\n    function ymdBk(d){const p=new Intl.DateTimeFormat('en-CA',{timeZone:'Asia\/Bangkok',year:'numeric',month:'2-digit',day:'2-digit'}).formatToParts(d||new Date());let y,m,dd;p.forEach(x=>{if(x.type==='year')y=x.value;if(x.type==='month')m=x.value;if(x.type==='day')dd=x.value});return `${y}-${m}-${dd}`;}\n    function nowBk(){const p=new Intl.DateTimeFormat('en-GB',{timeZone:'Asia\/Bangkok',year:'numeric',month:'2-digit',day:'2-digit',hour:'2-digit',minute:'2-digit',hour12:false}).formatToParts(new Date());const o={};p.forEach(x=>o[x.type]=parseInt(x.value,10));return o;}\n    function parseCutoff(t){const m=(t||'').match(\/(\\d{1,2}):(\\d{2})\\s*(AM|PM|am|pm)?\/);if(!m)return null;let h=+m[1],mi=+m[2];const ap=(m[3]||'').toUpperCase();if(ap==='PM'&&h<12)h+=12;if(ap==='AM'&&h===12)h=0;const n=nowBk();return new Date(n.year,n.month-1,n.day,h,mi,0);}\n    function shouldDisableToday(card){\n      const selectedSubs = Array.from(card.querySelectorAll('.cpb-sub')).filter(s=>s.querySelector('.js-check').checked);\n      if(!selectedSubs.length) return false;\n      \n      \/\/ Check if any selected sub-package requires advance booking\n      const hasAdvanceBooking = selectedSubs.some(s=>s.getAttribute('data-advance-booking')==='1');\n      if(hasAdvanceBooking) return true;\n      \n      \/\/ Check end time cutoff\n      const selEnds = selectedSubs.map(s=>s.getAttribute('data-end-time')||'').filter(Boolean);\n      if(!selEnds.length) return false;\n      const n=nowBk(); const now=new Date(n.year,n.month-1,n.day,n.hour,n.minute,0);\n      return selEnds.some(t=>{ const c=parseCutoff(t); return c && now>c; });\n    }\n\n    document.querySelectorAll('.cpb-package').forEach(function(card){\n\n      const dateInput = card.querySelector('.js-date');\n      const dateBtn   = card.querySelector('.js-open-date');\n      const dateText  = card.querySelector('.js-date-text');\n      const timeSel   = card.querySelector('.js-time');\n      const timeBlock = card.querySelector('.js-time-block');\n      const getQty = (sp, selector) => {\n        const el = sp ? sp.querySelector(selector) : null;\n        return el ? +(el.value || 0) : 0;\n      };\n\n      function syncTimeSummary(){\n        const t = timeSel && timeSel.value ? timeSel.value : '\u2014';\n        card.querySelector('.js-summary-time').textContent = t || '\u2014';\n      }\n\n      const fp = flatpickr(dateInput,{\n        altInput: false,\n        dateFormat: 'Y-m-d',\n        minDate: ymdBk(new Date()),\n        disableMobile: true,\n        clickOpens: false,            \/\/ we open via the orange button\n        positionElement: dateBtn,     \/\/ anchor to the orange button\n        appendTo: document.body       \/\/ <\u2014 important: append to BODY so positioning is correct\n      });\n\n      \/\/ Button opens calendar; after select, show on button & summary\n      dateBtn.addEventListener('click', ()=> fp && fp.open());\n      dateInput.addEventListener('change', ()=>{\n        const d = dateInput.value || '';\n        dateText.textContent = d ? new Date(d+'T00:00:00').toLocaleDateString('en-GB') : 'Select Journey Date';\n        card.querySelector('.js-summary-date').textContent = d ? new Date(d+'T00:00:00').toLocaleDateString('en-GB') : '\u2014';\n        showClosedNotices();\n      });\n\n      let disabledDow = new Set();\n\n      function collectDisabledDays(){\n        const set = new Set();\n        card.querySelectorAll('.cpb-sub').forEach(sp=>{\n          if (!sp.querySelector('.js-check').checked) return;\n          const raw = sp.getAttribute('data-closed-days') || '';\n          raw.split(',').forEach(v=>{\n            const n = parseInt(v, 10);\n            if (!isNaN(n) && n >= 0 && n <= 6) set.add(n);\n          });\n        });\n        return set;\n      }\n\n      function isBlocked(dateObj){\n        if (!dateObj) return false;\n        return disabledDow.has(dateObj.getDay());\n      }\n\n      function applyDisabledDays(){\n        disabledDow = collectDisabledDays();\n        const disableFn = (date)=> disabledDow.has(date.getDay());\n        const disableList = disabledDow.size ? [disableFn] : [];\n        if (fp) fp.set('disable', disableList);\n        const current = fp && fp.selectedDates ? fp.selectedDates[0] : null;\n        if (current && isBlocked(current)) {\n          fp.clear();\n          dateText.textContent = 'Select Journey Date';\n          card.querySelector('.js-summary-date').textContent = '\u2014';\n        }\n      }\n\n      function showClosedNotices(){\n        const rawDate = dateInput.value || '';\n        const hasDate = !!rawDate;\n        const dObj = hasDate ? new Date(rawDate+'T00:00:00') : null;\n        const dow = dObj ? dObj.getDay() : null;\n        card.querySelectorAll('.cpb-sub').forEach(sp=>{\n          const closed = (sp.getAttribute('data-closed-days')||'').split(',').map(v=>parseInt(v,10)).filter(v=>!isNaN(v));\n          const msg = sp.querySelector('.cpb-closed-msg');\n          if (!msg) return;\n          if (hasDate && dow !== null && closed.includes(dow)) {\n            const labels = msg.getAttribute('data-closed-label') || '';\n            msg.textContent = 'Not available on selected date (' + (['Sun','Mon','Tue','Wed','Thu','Fri','Sat'][dow] || '') + ').';\n            msg.style.display = 'block';\n          } else {\n            msg.style.display = 'none';\n          }\n        });\n      }\n\n      function enforceMin(){\n        if (shouldDisableToday(card)) {\n          const t = new Date(Date.now()+86400000);\n          const tStr = ymdBk(t);\n          fp.set('minDate', tStr);\n          \/\/ Only clear if a date IS selected AND it's before the minimum \u2014 never auto-fill empty\n          if (fp.selectedDates[0] && ymdBk(fp.selectedDates[0]) < tStr) {\n            fp.clear();\n            dateText.textContent = 'Select Journey Date';\n            card.querySelector('.js-summary-date').textContent = '\\u2014';\n          }\n        } else {\n          const today = ymdBk(new Date());\n          fp.set('minDate', today);\n          if (fp.selectedDates[0] && ymdBk(fp.selectedDates[0]) < today) {\n            fp.clear();\n            dateText.textContent = 'Select Journey Date';\n            card.querySelector('.js-summary-date').textContent = '\\u2014';\n          }\n        }\n      }\n\n      \/\/ Toggle package by clicking header row\n      card.querySelectorAll('.cpb-sub').forEach(function(sp){\n        const header  = sp.querySelector('.js-toggle');\nconst check   = sp.querySelector('.js-check');\nconst steppers= sp.querySelector('.js-steppers');\nconst cols    = steppers ? parseInt(steppers.getAttribute('data-cols')||'3',10) : 3;\n\nfunction sync(){\n  \/\/ CRITICAL FIX: IF MANDATORY, FORCE CHECKED\n  if (check.disabled) {\n    check.checked = true;\n  }\n  sp.classList.toggle('selected', check.checked);\n  if (steppers){\n    steppers.style.gridTemplateColumns = `repeat(${cols||3},1fr)`;\n    steppers.style.display = check.checked ? 'grid' : 'none';\n  }\n  enforceMin(); calc(); applyDisabledDays(); showClosedNotices();\n}\n\/\/ Let the native <label> + checkbox toggle handle state; just sync after click\nheader.addEventListener('click', ()=> {\n  if (check.disabled) return; \/\/ Prevent toggling if mandatory\n  setTimeout(sync, 0);\n});\ncheck.addEventListener('change', sync);\n\n        \/\/ plus\/minus\n        sp.querySelectorAll('.js-plus, .js-minus').forEach(btn=>{\n          btn.addEventListener('click', ()=>{\n            const type = btn.getAttribute('data-type');\n            const input = sp.querySelector('.js-val-'+type);\n            let v = parseInt(input.value||'0',10) || 0;\n            if (btn.classList.contains('js-plus')) v++;\n            else v = Math.max(0, v-1);\n            input.value = v;\n            calc();\n          });\n        });\n        sp.querySelectorAll('input[type=\"number\"]').forEach(i=> i.addEventListener('input', calc));\n\n        sync(); \/\/ initial\n      });\n\n      if (timeSel){\n        timeSel.addEventListener('change', ()=>{\n          timeSel.classList.remove('cpb-time-error');\n          syncTimeSummary();\n        });\n      }\n\n      function calc(){\n        let total = 0;\n        const lines = [];\n        let hasAnyTickets = false;\n\n        card.querySelectorAll('.cpb-sub').forEach(sp=>{\n          if (!sp.querySelector('.js-check').checked) return;\n\n          const name = sp.querySelector('.cpb-title').textContent.trim();\n          const price = sp.querySelector('.js-price');\n          const allowChild = sp.getAttribute('data-allow-child') === '1';\n          const allowInfant = sp.getAttribute('data-allow-infant') === '1';\n          const ap = +(price.getAttribute('data-adult')||0);\n          const cp = +(price.getAttribute('data-child')||0);\n          const ip = +(price.getAttribute('data-infant')||0);\n          const origAp = +(price.getAttribute('data-orig-adult')||0);\n          const origCp = +(price.getAttribute('data-orig-child')||0);\n          const origIp = +(price.getAttribute('data-orig-infant')||0);\n          const a  = getQty(sp, '.js-val-adults');\n          const c  = allowChild ? getQty(sp, '.js-val-children') : 0;\n          const i  = allowInfant ? getQty(sp, '.js-val-infants') : 0;\n          const sub = a*ap + c*cp + i*ip;\n          const origSub = a*origAp + c*origCp + i*origIp;\n          const saved = origSub - sub;\n          const qtyTotal = (a||0) + (c||0) + (i||0);\n\n          total += sub;\n          if (qtyTotal > 0) hasAnyTickets = true;\n\n          const det = [];\n          if(a) det.push(`${a} \u00d7 Adult (\u0e3f${fmt(ap)}) = \u0e3f${fmt(a*ap)}` + (ap < origAp ? ` <span style=\"color:#16a34a;font-size:12px;\">was \u0e3f${fmt(origAp)}<\/span>` : ''));\n          if(c) det.push(`${c} \u00d7 Child (\u0e3f${fmt(cp)}) = \u0e3f${fmt(c*cp)}` + (cp < origCp ? ` <span style=\"color:#16a34a;font-size:12px;\">was \u0e3f${fmt(origCp)}<\/span>` : ''));\n          if(i) det.push(`${i} \u00d7 Infant (\u0e3f${fmt(ip)}) = \u0e3f${fmt(i*ip)}` + (ip < origIp ? ` <span style=\"color:#16a34a;font-size:12px;\">was \u0e3f${fmt(origIp)}<\/span>` : ''));\n\n          const saveLine = saved > 0 ? `<div style=\"color:#16a34a;font-weight:700;font-size:12px;padding:2px 6px;\">You save \u0e3f${fmt(saved)}!<\/div>` : '';\n          lines.push(`<div class=\"cpb-line\"><strong>${name}<\/strong><strong>\u0e3f${fmt(sub)}<\/strong><\/div>${det.length?`<div style=\"padding-left:6px;color:#374151;padding-bottom: 10px;border-bottom: 1px solid #d6d6d6;\">${det.join('<br>')}${saveLine}<\/div>`:''}`);\n        });\n\n        card.querySelector('.js-lines').innerHTML = lines.length ? lines.join('') : '<div style=\"padding:12px;color:#6b7280\">No packages selected.<\/div>';\n        \n        \/\/ Render base total (without taxi). Taxi price is added at submit step if chosen.\n        card.querySelector('.js-total').textContent = fmt(total);\n        card.dataset.baseTotal = String(total);\n\n        if (timeBlock && timeSel){\n          if (hasAnyTickets) {\n            timeBlock.classList.add('show');\n            timeSel.disabled = false;\n            if (!timeSel.value && timeSel.options.length === 2) {\n              timeSel.selectedIndex = 1;\n            }\n          } else {\n            timeBlock.classList.remove('show');\n            timeSel.disabled = true;\n            timeSel.value = '';\n            timeSel.classList.remove('cpb-time-error');\n          }\n        }\n\n        syncTimeSummary();\n      }\n\n      \/\/ Initial paint\n      calc();\n      enforceMin();\n\n      \/\/ BOOK NOW & WHATSAPP\n      \/\/ BOOK NOW & WHATSAPP\nconst modal = document.getElementById('cpb-processing-modal');\n\n\/* Inline toast for errors + strong visual cue on date *\/\nfunction showMsg(m, type){\n  if(type === 'error'){\n    \/\/ lightweight toast near top of screen\n    modal.style.display = 'none';\n    alert(m); \/\/ minimal inline error; avoids \"processing\" feel\n    return;\n  }\n  modal.querySelector('.txt').textContent = m || 'Processing\u2026';\n  modal.style.display='flex';\n  setTimeout(()=>modal.style.display='none', 2200);\n}\n\n\/* Emphasize & scroll to date picker, open the calendar *\/\nfunction nudgeDate(){\n  dateBtn.classList.add('error');\n  const hint = card.querySelector('.js-date-hint');\n  if (hint) hint.classList.add('show');\n  dateBtn.scrollIntoView({behavior:'smooth', block:'center'});\n  setTimeout(()=>{ try{ fp.open(); }catch(e){} }, 250);\n  setTimeout(()=> dateBtn.classList.remove('error'), 900);\n}\n\ncard.querySelector('.js-book').addEventListener('click', function(){\n  const date = dateInput.value || '';\n  const time = timeSel ? (timeSel.value||'') : '';\n  const chosen = [];\n\n  card.querySelectorAll('.cpb-sub').forEach(sp=>{\n    if (!sp.querySelector('.js-check').checked) return;\n    const price = sp.querySelector('.js-price');\n    const allowChild = sp.getAttribute('data-allow-child') === '1';\n    const allowInfant = sp.getAttribute('data-allow-infant') === '1';\n    chosen.push({\n      index: parseInt(sp.getAttribute('data-sub-index')||'0',10),\n      name: sp.querySelector('.cpb-title').textContent.trim(),\n      adults: getQty(sp, '.js-val-adults'),\n      children: allowChild ? getQty(sp, '.js-val-children') : 0,\n      infants: allowInfant ? getQty(sp, '.js-val-infants') : 0,\n      adult_price: +(price.getAttribute('data-adult')||0),\n      child_price: allowChild ? +(price.getAttribute('data-child')||0) : 0,\n      infant_price: allowInfant ? +(price.getAttribute('data-infant')||0) : 0\n    });\n  });\n\n  const total = +(card.querySelector('.js-total').textContent||'0').replace(\/[^0-9.]\/g,'') || 0;\n\n  \/\/ --- Clear hint on valid date\n  if (date){\n    const hint = card.querySelector('.js-date-hint');\n    if (hint) hint.classList.remove('show');\n    dateBtn.classList.remove('error');\n  }\n\n  if (!date){\n    nudgeDate();\n    return showMsg('Please select your journey date.', 'error');\n  }\n  if (chosen.length===0){\n    return showMsg('Please select at least one package.', 'error');\n  }\n  const adultsTotal = chosen.reduce((s,p)=>s+(p.adults||0),0);\n  if (total<=0 || adultsTotal<1){\n    return showMsg('Kindly add at least 1 adult.', 'error');\n  }\n  if (timeSel && timeSel.options.length>1 && !time){\n    \/\/ draw attention to time selector as well\n    timeSel.scrollIntoView({behavior:'smooth', block:'center'});\n    timeSel.classList.add('cpb-time-error');\n    setTimeout(()=> timeSel.classList.remove('cpb-time-error'), 1000);\n    return showMsg('Please select a show time.', 'error');\n  }\n  if (disabledDow.size) {\n    const dObj = new Date(date + 'T00:00:00');\n    if (disabledDow.has(dObj.getDay())) {\n      nudgeDate();\n      return showMsg('Selected date is unavailable for one of the chosen activities. Please pick another day.', 'error');\n    }\n  }\n\n  \/\/ If taxi feature enabled, open modal to optionally choose one, else proceed\n  const taxiState = card.__cpbTaxi || {enabled:false};\n  const proceed = (selectedTaxi)=>{\n    const baseTotal = +(card.dataset.baseTotal||'0');\n    const taxiPrice = selectedTaxi? +(selectedTaxi.price||0) : 0;\n    const grandTotal = baseTotal + taxiPrice;\n    \/\/ reflect grand total on UI before sending\n    card.querySelector('.js-total').textContent = fmt(grandTotal);\n\n    modal.querySelector('.txt').textContent='Processing your booking\u2026';\n    modal.style.display='flex';\n\n    const nonce = '7fae7b6e09';\n\n    const payload = {\n      package_id: parseInt(card.getAttribute('data-package-id')||'0',10),\n      package_name: 'Elephant Jungle Sanctuary',\n      date, show_time: time, sub_packages: chosen, total_price: grandTotal,\n      taxi: selectedTaxi || null\n    };\n\n    fetch('https:\/\/tripdust.com\/thailand\/wp-admin\/admin-ajax.php',{\n      method:'POST',\n      headers:{'Content-Type':'application\/x-www-form-urlencoded'},\n      body:new URLSearchParams({action:'cpb_add_to_cart', nonce: nonce, data:JSON.stringify(payload), cpb_booking:JSON.stringify(payload)})\n    })\n    .then(r=>r.json())\n    .then(res=>{\n      if (res && res.success && res.data && res.data.redirect){ \n        window.location.href = res.data.redirect; \n      } else { \n        modal.style.display='none'; \n        const errorMsg = res && res.data && res.data.message ? res.data.message : 'Could not add to cart. Please try again.';\n        showMsg(errorMsg, 'error'); \n      }\n    })\n    .catch((err)=>{ \n      modal.style.display='none'; \n      console.error('Add to cart error:', err);\n      showMsg('Network error. Please check your connection and try again.', 'error'); \n    });\n  };\n\n  if (taxiState.enabled && Array.isArray(taxiState.taxis) && taxiState.taxis.length){\n    const mm = card.querySelector('.cpb-taxi-modal');\n    if (mm){\n      mm.style.display = 'flex';\n      const onClick = (e)=>{\n        const act = e.target && e.target.getAttribute && e.target.getAttribute('data-act');\n        if (!act) return;\n        e.preventDefault();\n        mm.style.display = 'none';\n        mm.removeEventListener('click', onClick);\n        if (act==='skip') return proceed(null);\n        \/\/ confirm: get selected radio\n        const r = mm.querySelector('input[type=\"radio\"]:checked');\n        const idx = r ? parseInt(r.value||'-1',10) : -1;\n        const chosenTaxi = (idx>=0 && taxiState.taxis[idx]) ? taxiState.taxis[idx] : null;\n        return proceed(chosenTaxi);\n      };\n      mm.addEventListener('click', onClick);\n    } else {\n      proceed(null);\n    }\n  } else {\n    proceed(null);\n  }\n      });\n\n    });\n  })();\n  <\/script>\n  <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-bfed553 e-flex e-con-boxed e-con e-parent\" data-id=\"bfed553\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9df1c1f elementor-widget elementor-widget-heading\" data-id=\"9df1c1f\" 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\">Programme Details<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6506f4a elementor-widget elementor-widget-html\" data-id=\"6506f4a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\n \n\n  .ep-wrap * { box-sizing: border-box; margin: 0; padding: 0; }\n\n  .ep-wrap {\n    \n    max-width: 100%;\n    margin: 0 auto;\n    color: #1a1a2e;\n    background: transparent;\n  }\n\n  \/* \u2500\u2500 Section Header \u2500\u2500 *\/\n  .ep-header {\n    display: flex;\n    align-items: center;\n    gap: 14px;\n    margin-bottom: 20px;\n  }\n  .ep-header-bar {\n    width: 5px;\n    min-height: 44px;\n    background: linear-gradient(180deg, #E87722, #c9560f);\n    border-radius: 3px;\n    flex-shrink: 0;\n  }\n  .ep-header-text h2 {\n    \n    font-size: clamp(20px, 4vw, 26px);\n    font-weight: 700;\n    color: #1a1a2e;\n    line-height: 1.15;\n  }\n  .ep-header-text p {\n    font-size: 12px;\n    color: #888;\n    margin-top: 3px;\n    letter-spacing: 0.03em;\n  }\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     SHARED COMPONENTS\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  .ep-badge {\n    display: inline-block;\n    padding: 3px 11px;\n    border-radius: 20px;\n    font-size: 11.5px;\n    font-weight: 600;\n    letter-spacing: 0.04em;\n    flex-shrink: 0;\n    white-space: nowrap;\n  }\n  .ep-badge-yes { background: #e8f7ee; color: #1e8c45; border: 1px solid #b6e4c8; }\n  .ep-badge-no  { background: #fdecea; color: #c0392b; border: 1px solid #f5c0bb; }\n\n  .ep-duration {\n    display: inline-block;\n    background: #f3f4f8;\n    border: 1px solid #e2e4ec;\n    color: #444;\n    border-radius: 20px;\n    padding: 3px 11px;\n    font-size: 12.5px;\n    font-weight: 500;\n  }\n\n  .ep-tag {\n    display: inline-block;\n    background: #fff4ed;\n    color: #c05c00;\n    border: 1px solid #ffd6b0;\n    border-radius: 4px;\n    font-size: 10.5px;\n    font-weight: 700;\n    padding: 2px 7px;\n    margin: 2px 3px 2px 0;\n    text-transform: uppercase;\n    letter-spacing: 0.04em;\n    vertical-align: middle;\n  }\n\n  .ep-operates {\n    margin-top: 10px;\n    padding: 9px 13px;\n    background: #f9f0e8;\n    border-left: 3px solid #E87722;\n    border-radius: 0 6px 6px 0;\n    font-size: 12.5px;\n    color: #7a4000;\n    line-height: 1.6;\n  }\n  .ep-operates strong { font-weight: 700; }\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     DESKTOP TABLE (\u2265 700px)\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  .ep-table-wrap {\n    border-radius: 12px;\n    overflow: hidden;\n    box-shadow: 0 4px 32px rgba(0,0,0,0.09), 0 1px 4px rgba(0,0,0,0.06);\n    border: 1px solid #e8e8e8;\n  }\n  .ep-table {\n    width: 100%;\n    border-collapse: collapse;\n  }\n  .ep-table thead tr {\n    background: linear-gradient(135deg, #E87722 0%, #d06318 100%);\n  }\n  .ep-table thead th {\n    padding: 14px 16px;\n    text-align: left;\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 0.10em;\n    text-transform: uppercase;\n    color: #fff;\n    border-right: 1px solid rgba(255,255,255,0.15);\n  }\n  .ep-table thead th:last-child { border-right: none; }\n  .ep-table thead th:nth-child(2),\n  .ep-table thead th:nth-child(3) { text-align: center; }\n\n  .ep-table tbody tr {\n    border-bottom: 1px solid #f0f0f0;\n    transition: background 0.18s;\n  }\n  .ep-table tbody tr:last-child { border-bottom: none; }\n  .ep-table tbody tr:hover { background: #fff8f3; }\n  .ep-table tbody tr:nth-child(even) { background: #fafafa; }\n  .ep-table tbody tr:nth-child(even):hover { background: #fff8f3; }\n\n  .ep-table tbody td {\n    padding: 14px 16px;\n    vertical-align: top;\n    border-right: 1px solid #f0f0f0;\n    font-size: 13.5px;\n    line-height: 1.65;\n    color: #333;\n  }\n  .ep-table tbody td:last-child { border-right: none; }\n  .ep-table tbody td:nth-child(1) { font-weight: 600; color: #1a1a2e; white-space: nowrap; }\n  .ep-table tbody td:nth-child(2),\n  .ep-table tbody td:nth-child(3) { text-align: center; white-space: nowrap; }\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     MOBILE CARDS (< 700px)\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  .ep-cards { display: none; flex-direction: column; gap: 14px; }\n\n  .ep-card {\n    background: #fff;\n    border: 1px solid #e8e8e8;\n    border-radius: 14px;\n    overflow: hidden;\n    box-shadow: 0 2px 14px rgba(0,0,0,0.07);\n  }\n  .ep-card-header {\n    background: linear-gradient(135deg, #E87722 0%, #d06318 100%);\n    padding: 13px 16px;\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 10px;\n  }\n  .ep-card-header h3 {\n    font-size: 15px;\n    font-weight: 700;\n    color: #fff;\n    line-height: 1.2;\n  }\n  .ep-card-body { padding: 14px 16px; }\n\n  .ep-meta-row {\n    display: flex;\n    gap: 8px;\n    margin-bottom: 12px;\n    flex-wrap: wrap;\n  }\n  .ep-meta-item {\n    display: flex;\n    align-items: center;\n    gap: 5px;\n    background: #f5f5f7;\n    border: 1px solid #e2e4ec;\n    border-radius: 20px;\n    padding: 4px 12px;\n    font-size: 12px;\n    font-weight: 500;\n    color: #444;\n  }\n  .ep-card-label {\n    font-size: 10px;\n    font-weight: 700;\n    letter-spacing: 0.10em;\n    text-transform: uppercase;\n    color: #E87722;\n    margin-bottom: 5px;\n  }\n  .ep-card-includes {\n    font-size: 13.5px;\n    color: #555;\n    line-height: 1.7;\n  }\n\n  \/* \u2500\u2500 Camp Locations \u2500\u2500 *\/\n  .ep-camp-section { margin-top: 36px; }\n  .ep-camps-grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 14px;\n    margin-top: 20px;\n  }\n  .ep-camp-card {\n    background: #fff;\n    border: 1px solid #e8e8e8;\n    border-radius: 12px;\n    padding: 18px 20px;\n    box-shadow: 0 2px 12px rgba(0,0,0,0.06);\n    position: relative;\n    overflow: hidden;\n  }\n  .ep-camp-card::before {\n    content: '';\n    position: absolute;\n    top: 0; left: 0; right: 0;\n    height: 4px;\n    background: linear-gradient(90deg, #E87722, #f5a94e);\n  }\n  .ep-camp-card h3 {\n    font-size: 14px;\n    font-weight: 600;\n    color: #1a1a2e;\n    margin-bottom: 10px;\n    line-height: 1.4;\n  }\n  .ep-camp-card .ep-count {\n    display: inline-block;\n    background: #E87722;\n    color: #fff;\n    font-size: 10px;\n    font-weight: 700;\n    padding: 2px 8px;\n    border-radius: 10px;\n    margin-left: 5px;\n    vertical-align: middle;\n  }\n  .ep-camp-tags { display: flex; flex-wrap: wrap; gap: 6px; }\n  .ep-camp-tag {\n    background: #f5f5f7;\n    border: 1px solid #e2e2e8;\n    color: #444;\n    font-size: 12px;\n    font-weight: 500;\n    padding: 4px 10px;\n    border-radius: 6px;\n  }\n\n  \/* \u2500\u2500 Transport Note \u2500\u2500 *\/\n  .ep-transport-note {\n    margin-top: 16px;\n    background: linear-gradient(135deg, #1a1a2e 0%, #2d2d50 100%);\n    border-radius: 12px;\n    padding: 16px 18px;\n    display: flex;\n    align-items: flex-start;\n    gap: 12px;\n    box-shadow: 0 4px 16px rgba(26,26,46,0.18);\n  }\n  .ep-transport-icon { font-size: 24px; flex-shrink: 0; margin-top: 2px; }\n  .ep-transport-text p { font-size: 13px; color: #c8c8de; line-height: 1.65; }\n  .ep-transport-text .ep-free { color: #f5a94e; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }\n  .ep-transport-text strong { color: #fff; font-weight: 600; }\n  .ep-transport-text em { font-style: italic; color: #f5a94e; }\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     RESPONSIVE BREAKPOINTS\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  @media (max-width: 699px) {\n    .ep-table-wrap { display: none; }\n    .ep-cards { display: flex; }\n    .ep-camps-grid { grid-template-columns: 1fr; }\n    .ep-transport-note { flex-direction: row; align-items: flex-start; }\n  }\n\n  @media (max-width: 420px) {\n    .ep-camp-card { padding: 14px; }\n    .ep-card-header { padding: 11px 14px; }\n    .ep-card-body { padding: 12px 14px; }\n    .ep-header-bar { min-height: 36px; }\n  }\n<\/style>\n\n<div class=\"ep-wrap\">\n\n  <!-- \u2500\u2500 Programmes Header \u2500\u2500 -->\n  <div class=\"ep-header\">\n   \n    \n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 DESKTOP TABLE (shown \u2265 700px) \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"ep-table-wrap\">\n    <table class=\"ep-table\">\n      <thead>\n        <tr>\n          <th>Programme<\/th>\n          <th>Duration<\/th>\n          <th>Transport<\/th>\n          <th>Inclusions &amp; Notes<\/th>\n        <\/tr>\n      <\/thead>\n      <tbody>\n        <tr>\n          <td>Feed Me<\/td>\n          <td><span class=\"ep-duration\">1 hr<\/span><\/td>\n          <td><span class=\"ep-badge ep-badge-no\">No<\/span><\/td>\n          <td>Guide, insurance, elephant food.<br><span class=\"ep-tag\">No Transport<\/span><span class=\"ep-tag\">No Meal<\/span><\/td>\n        <\/tr>\n        <tr>\n          <td>Feed and Shower<\/td>\n          <td><span class=\"ep-duration\">1.5 hrs<\/span><\/td>\n          <td><span class=\"ep-badge ep-badge-no\">No<\/span><\/td>\n          <td>Guide, insurance, elephant food, snacks &amp; drinks.<br><span class=\"ep-tag\">No Transport<\/span><\/td>\n        <\/tr>\n        <tr>\n          <td>Half Day<\/td>\n          <td><span class=\"ep-duration\">6 hrs<\/span><\/td>\n          <td><span class=\"ep-badge ep-badge-yes\">Yes<\/span><\/td>\n          <td>Transport, guide, insurance, photographer, elephant food, snacks &amp; drinks, lunch\/dinner.<\/td>\n        <\/tr>\n        <tr>\n          <td>Watch Me<\/td>\n          <td><span class=\"ep-duration\">6 hrs<\/span><\/td>\n          <td><span class=\"ep-badge ep-badge-yes\">Yes<\/span><\/td>\n          <td>Transport, guide, insurance, photographer, elephant food, snacks &amp; drinks, lunch\/dinner.<\/td>\n        <\/tr>\n        <tr>\n          <td>One Day Elephant Care<\/td>\n          <td><span class=\"ep-duration\">8 hrs<\/span><\/td>\n          <td><span class=\"ep-badge ep-badge-yes\">Yes<\/span><\/td>\n          <td>Transport, guide, insurance, elephant food, snacks &amp; drinks, lunch\/dinner.<\/td>\n        <\/tr>\n        <tr>\n          <td>Volunteer<\/td>\n          <td><span class=\"ep-duration\">3 Days<br>2 Nights<\/span><\/td>\n          <td><span class=\"ep-badge ep-badge-yes\">Yes<\/span><\/td>\n          <td>\n            Transport, 2-Night Accommodation, guide, insurance, elephant food, snacks &amp; drinks, meals\n            (Day 1: lunch &amp; dinner \u00b7 Day 2: breakfast, lunch &amp; dinner \u00b7 Day 3: breakfast &amp; lunch).\n            <div class=\"ep-operates\">\n              <strong>Operates<\/strong> 2 rounds\/week: Mon\u2013Wed or Thu\u2013Sat.<br>\n              Minimum 2 persons &nbsp;\u00b7&nbsp; Age 11+ only.\n            <\/div>\n          <\/td>\n        <\/tr>\n      <\/tbody>\n    <\/table>\n  <\/div>\n\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 MOBILE CARDS (shown < 700px) \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n  <div class=\"ep-cards\">\n\n    <div class=\"ep-card\">\n      <div class=\"ep-card-header\">\n        <h3>Feed Me<\/h3>\n        <span class=\"ep-badge ep-badge-no\">No Transport<\/span>\n      <\/div>\n      <div class=\"ep-card-body\">\n        <div class=\"ep-meta-row\">\n          <span class=\"ep-meta-item\">\u23f1 &nbsp;1 hr<\/span>\n        <\/div>\n        <div class=\"ep-card-label\">Inclusions<\/div>\n        <div class=\"ep-card-includes\">\n          Guide, insurance, elephant food.<br>\n          <span class=\"ep-tag\">No Transport<\/span><span class=\"ep-tag\">No Meal<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-card\">\n      <div class=\"ep-card-header\">\n        <h3>Feed and Shower<\/h3>\n        <span class=\"ep-badge ep-badge-no\">No Transport<\/span>\n      <\/div>\n      <div class=\"ep-card-body\">\n        <div class=\"ep-meta-row\">\n          <span class=\"ep-meta-item\">\u23f1 &nbsp;1.5 hrs<\/span>\n        <\/div>\n        <div class=\"ep-card-label\">Inclusions<\/div>\n        <div class=\"ep-card-includes\">\n          Guide, insurance, elephant food, snacks &amp; drinks.<br>\n          <span class=\"ep-tag\">No Transport<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-card\">\n      <div class=\"ep-card-header\">\n        <h3>Half Day<\/h3>\n        <span class=\"ep-badge ep-badge-yes\">Transport \u2713<\/span>\n      <\/div>\n      <div class=\"ep-card-body\">\n        <div class=\"ep-meta-row\">\n          <span class=\"ep-meta-item\">\u23f1 &nbsp;6 hrs<\/span>\n        <\/div>\n        <div class=\"ep-card-label\">Inclusions<\/div>\n        <div class=\"ep-card-includes\">\n          Transport, guide, insurance, photographer, elephant food, snacks &amp; drinks, lunch\/dinner.\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-card\">\n      <div class=\"ep-card-header\">\n        <h3>Watch Me<\/h3>\n        <span class=\"ep-badge ep-badge-yes\">Transport \u2713<\/span>\n      <\/div>\n      <div class=\"ep-card-body\">\n        <div class=\"ep-meta-row\">\n          <span class=\"ep-meta-item\">\u23f1 &nbsp;6 hrs<\/span>\n        <\/div>\n        <div class=\"ep-card-label\">Inclusions<\/div>\n        <div class=\"ep-card-includes\">\n          Transport, guide, insurance, photographer, elephant food, snacks &amp; drinks, lunch\/dinner.\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-card\">\n      <div class=\"ep-card-header\">\n        <h3>One Day Elephant Care<\/h3>\n        <span class=\"ep-badge ep-badge-yes\">Transport \u2713<\/span>\n      <\/div>\n      <div class=\"ep-card-body\">\n        <div class=\"ep-meta-row\">\n          <span class=\"ep-meta-item\">\u23f1 &nbsp;8 hrs<\/span>\n        <\/div>\n        <div class=\"ep-card-label\">Inclusions<\/div>\n        <div class=\"ep-card-includes\">\n          Transport, guide, insurance, elephant food, snacks &amp; drinks, lunch\/dinner.\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-card\">\n      <div class=\"ep-card-header\">\n        <h3>Volunteer<\/h3>\n        <span class=\"ep-badge ep-badge-yes\">Transport \u2713<\/span>\n      <\/div>\n      <div class=\"ep-card-body\">\n        <div class=\"ep-meta-row\">\n          <span class=\"ep-meta-item\">\ud83d\udcc5 &nbsp;3 Days \u00b7 2 Nights<\/span>\n        <\/div>\n        <div class=\"ep-card-label\">Inclusions<\/div>\n        <div class=\"ep-card-includes\">\n          Transport, 2-Night Accommodation, guide, insurance, elephant food, snacks &amp; drinks, meals\n          (Day 1: lunch &amp; dinner \u00b7 Day 2: breakfast, lunch &amp; dinner \u00b7 Day 3: breakfast &amp; lunch).\n          <div class=\"ep-operates\">\n            <strong>Operates<\/strong> 2 rounds\/week: Mon\u2013Wed or Thu\u2013Sat.<br>\n            Min. 2 persons &nbsp;\u00b7&nbsp; Age 11+ only.\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n\n  <\/div><!-- \/ep-cards -->\n\n  <!-- \u2500\u2500 Camp Locations \u2500\u2500 -->\n  <div class=\"ep-camp-section\">\n    <div class=\"ep-header\">\n      <div class=\"ep-header-bar\"><\/div>\n      <div class=\"ep-header-text\">\n        <h2>Camp Locations<\/h2>\n        <p>7 camps across two regions near Chiang Mai<\/p>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-camps-grid\">\n      <div class=\"ep-camp-card\">\n        <h3>Mae-Wang Area <span class=\"ep-count\">6 camps<\/span><\/h3>\n        <div class=\"ep-camp-tags\">\n          <span class=\"ep-camp-tag\">Half Day<\/span>\n          <span class=\"ep-camp-tag\">Watch Me<\/span>\n          <span class=\"ep-camp-tag\">One Day Elephant Care<\/span>\n          <span class=\"ep-camp-tag\">Volunteer<\/span>\n        <\/div>\n      <\/div>\n      <div class=\"ep-camp-card\">\n        <h3>San Pa Tong District <span class=\"ep-count\">1 camp<\/span><\/h3>\n        <div class=\"ep-camp-tags\">\n          <span class=\"ep-camp-tag\">Feed Me<\/span>\n          <span class=\"ep-camp-tag\">Feed and Shower<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"ep-transport-note\">\n      <div class=\"ep-transport-icon\">\ud83d\ude90<\/div>\n      <div class=\"ep-transport-text\">\n        <p>\n          <strong>Transport Note:<\/strong>&nbsp;<span class=\"ep-free\">Free<\/span> transfer within 5 km of Chiang Mai old city.<br>\n          <em>Surcharge applies beyond 5 km.<\/em>&nbsp;First leg: 9-seater air-conditioned van. Final 20 min: 4x4 with sheltered bench seating.\n        <\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n\n<\/div>\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>About This Tour Standard Package Details Mini Package Details Premier Package Details Why Choose FAQ Reviews Elephant Jungle Sanctuary English\/Hindi Pickup &amp; Drop (5 km of Chiang Mai old city.) Open 6:30 AM Close 10:00 PM Chiang Mai 150 Booked Highlights Programme Details Programme Duration Transport Inclusions &amp; Notes Feed Me 1 hr No Guide, [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":14086,"parent":14069,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"search_group":[68],"class_list":["post-14087","page","type-page","status-publish","has-post-thumbnail","hentry","search_group-searchable"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Elephant Jungle Sanctuary Chiang Mai | Ethical Encounter - Starting at \u0e3f600<\/title>\n<meta name=\"description\" content=\"Experience ethical elephant encounters, mud spas, and river bathing with packages starting at \u0e3f600\u2014book your Chiang Mai sanctuary visit with Trip Dust.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Elephant Jungle Sanctuary Chiang Mai | Ethical Encounter - Starting at \u0e3f600\" \/>\n<meta property=\"og:description\" content=\"Experience ethical elephant encounters, mud spas, and river bathing with packages starting at \u0e3f600\u2014book your Chiang Mai sanctuary visit with Trip Dust.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/\" \/>\n<meta property=\"og:site_name\" content=\"Thailand Tripdust\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-12T10:21:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-img-1024x1024.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1080\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/\",\"url\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/\",\"name\":\"Elephant Jungle Sanctuary Chiang Mai | Ethical Encounter\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Elephant-Jungle-Sanctuary-img.png\",\"datePublished\":\"2026-05-11T08:45:44+00:00\",\"dateModified\":\"2026-05-12T10:21:20+00:00\",\"description\":\"Experience ethical elephant encounters, mud spas, and river bathing with packages starting at \u0e3f600\u2014book your Chiang Mai sanctuary visit with Trip Dust.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/#primaryimage\",\"url\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Elephant-Jungle-Sanctuary-img.png\",\"contentUrl\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Elephant-Jungle-Sanctuary-img.png\",\"width\":1080,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/elephant-jungle-sanctuary\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Activities In Chiang Mai\",\"item\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/chiang-mai\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Elephant Jungle Sanctuary\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/#website\",\"url\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/\",\"name\":\"Thailand Tripdust\",\"description\":\"Thailand Awaits: Dive Into the Adventure\",\"publisher\":{\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/#organization\",\"name\":\"Thailand Tripdust\",\"url\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/logo-for-dark-background-scaled-1.png\",\"contentUrl\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/logo-for-dark-background-scaled-1.png\",\"width\":2560,\"height\":1527,\"caption\":\"Thailand Tripdust\"},\"image\":{\"@id\":\"https:\\\/\\\/tripdust.com\\\/thailand\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Elephant Jungle Sanctuary Chiang Mai | Ethical Encounter - Starting at \u0e3f600","description":"Experience ethical elephant encounters, mud spas, and river bathing with packages starting at \u0e3f600\u2014book your Chiang Mai sanctuary visit with Trip Dust.","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:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/","og_locale":"en_US","og_type":"article","og_title":"Elephant Jungle Sanctuary Chiang Mai | Ethical Encounter - Starting at \u0e3f600","og_description":"Experience ethical elephant encounters, mud spas, and river bathing with packages starting at \u0e3f600\u2014book your Chiang Mai sanctuary visit with Trip Dust.","og_url":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/","og_site_name":"Thailand Tripdust","article_modified_time":"2026-05-12T10:21:20+00:00","og_image":[{"width":1080,"height":1080,"url":"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-img-1024x1024.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/","url":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/","name":"Elephant Jungle Sanctuary Chiang Mai | Ethical Encounter","isPartOf":{"@id":"https:\/\/tripdust.com\/thailand\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/#primaryimage"},"image":{"@id":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/#primaryimage"},"thumbnailUrl":"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-img.png","datePublished":"2026-05-11T08:45:44+00:00","dateModified":"2026-05-12T10:21:20+00:00","description":"Experience ethical elephant encounters, mud spas, and river bathing with packages starting at \u0e3f600\u2014book your Chiang Mai sanctuary visit with Trip Dust.","breadcrumb":{"@id":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/#primaryimage","url":"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-img.png","contentUrl":"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2026\/05\/Elephant-Jungle-Sanctuary-img.png","width":1080,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/tripdust.com\/thailand\/chiang-mai\/elephant-jungle-sanctuary\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/tripdust.com\/thailand\/"},{"@type":"ListItem","position":2,"name":"Activities In Chiang Mai","item":"https:\/\/tripdust.com\/thailand\/chiang-mai\/"},{"@type":"ListItem","position":3,"name":"Elephant Jungle Sanctuary"}]},{"@type":"WebSite","@id":"https:\/\/tripdust.com\/thailand\/#website","url":"https:\/\/tripdust.com\/thailand\/","name":"Thailand Tripdust","description":"Thailand Awaits: Dive Into the Adventure","publisher":{"@id":"https:\/\/tripdust.com\/thailand\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tripdust.com\/thailand\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/tripdust.com\/thailand\/#organization","name":"Thailand Tripdust","url":"https:\/\/tripdust.com\/thailand\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tripdust.com\/thailand\/#\/schema\/logo\/image\/","url":"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2025\/07\/logo-for-dark-background-scaled-1.png","contentUrl":"https:\/\/tripdust.com\/thailand\/wp-content\/uploads\/2025\/07\/logo-for-dark-background-scaled-1.png","width":2560,"height":1527,"caption":"Thailand Tripdust"},"image":{"@id":"https:\/\/tripdust.com\/thailand\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/pages\/14087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/comments?post=14087"}],"version-history":[{"count":19,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/pages\/14087\/revisions"}],"predecessor-version":[{"id":14130,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/pages\/14087\/revisions\/14130"}],"up":[{"embeddable":true,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/pages\/14069"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/media\/14086"}],"wp:attachment":[{"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/media?parent=14087"}],"wp:term":[{"taxonomy":"search_group","embeddable":true,"href":"https:\/\/tripdust.com\/thailand\/wp-json\/wp\/v2\/search_group?post=14087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}