a:6:{i:0;s:10348:"				<div class="h1"><h1>Tadoba Nagzira and Pench National Park Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.avorinholidays.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.avorinholidays.com/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Tadoba Nagzira and Pench National Park Tour</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						6 Nights / 7 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Chandrapur, Nagpur, Chhindwara, Gondia</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.avorinholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Tadoba Nagzira and Pench National Park Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="103541"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/492587/173058.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/492587/173058.jpg"  width="150" height="150"    alt="Tadoba Nagzira and Pench National Park Tour" title="Tadoba Nagzira and Pench National Park Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
											<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Arrival
								</p>
								<p class="aj">Upon reaching at Nagpur Railway Station or Airport, our representative will meet and transfer you to Tadoba. Upon arrival, check into the wildlife resort. Later, be fresh and enjoy a delicious lunch. After that, in the evening you are free to take pleasure of a nature walk, followed by dinner and an overnight stay in the resort.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> Tadoba National Park
								</p>
								<p class="aj">Early in the morning, the jeep will pick you up from the resort for the jungle safari. It is the best time to sight various birds stretching their wings. Besides the birds, various other wild animals will be waiting to greet you. After the jungle safari, come back to the resort for breakfast. Savor the breakfast, then lunch and then again head off for an evening jeep safari into the national park. In the evening, you have more chances of sighting tigers.<br />
<br />
Return to the resort before it gets too dark. Enjoy dinner and an overnight stay at the resort.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> Tadoba National Park – Nagzira National Park
								</p>
								<p class="aj">After a sumptuous breakfast, we will leave for our next wildlife destination in the state.<br />
<br />
In the morning, we will drive to Nagzira National Park, located within the northeastern corner of the state in Bhandara district. This national park is often referred to as the Green Oasis of Vidharba due to its beautiful and dense forest.<br />
<br />
Upon arrival, check into a wildlife resort. In the evening, you are free to enjoy a nature walk in and around the resort, followed by dinner and overnight stay.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> Nagzira National Park
								</p>
								<p class="aj">Today, early in the morning, a jeep will wait to take you on a safari into the Nagzira National Park. Being a home to various animals, Nagzira is the best destination to spot wildlife. Bask in the wilderness of the park and later return to the resort for breakfast. Before lunch, you are free to relax and post lunch you will have to get ready for the evening jeep safari into the park.<br />
<br />
Return to the resort before it gets too dark. On reaching the resort, relax and have a cup of tea, followed by dinner and an overnight stay.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> Nagzira National Park- Pench National Park
								</p>
								<p class="aj">In the morning after breakfast, we will leave for Pench National Park, the other jewel within the itinerary. The Park is nestled in the Southern slopes of the Satpura ranges of Central India, comprising of 758 sq kms area, out of which a core area of 299 sq km is the national park and remaining 464 sq km is the buffer area.<br />
<br />
Upon reaching Pench National Park, check into the wildlife resort. In the evening enjoy a pleasure walk to the nearby forest or one can opt for a visit to the sunset point near Kohka dam. Dinner and overnight stay at resort.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 6:</b> Pench National Park
								</p>
								<p class="aj">Today we will explore the reserve twice for its morning and afternoon scheduled jungle safari. Pench National Park is especially famous for large herds of Gaur (Indian Bison), Cheetal, Sambar, Nilgai, Wild Dog and Wild Pig. The main predator is the Tiger followed by Leopard, Wild Dog and Wolf. Other animals include Sloth Bear, Chousingha, Chinkara, Barking Deer, Jackal, Fox, Palm Civet, Small Indian Civet, Jungle Cat, Hyena, Porcupine etc.<br />
<br />
Dinner and overnight stay at hotel.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 7:</b> Departure
								</p>
								<p class="aj">Get up early in the morning for the final jungle safari to the national park before leaving. After completion of the morning safari, get back to the resort for being fresh and having breakfast.<br />
<br />
Later on this day, leave for Nagpur to connect for the onward travel.</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
															</ul>
						<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.avorinholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Tadoba Nagzira and Pench National Park Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="103541"/>
						</form>
						</div>
						
						";i:1;s:82:"Book Tadoba Nagzira and Pench National Park Tour - 6 Nights / 7 Days Tour Packages";i:2;s:171:"book tadoba nagzira and pench national park tour - 6 nights / 7 days tour packages, wildlife and nature tour packages, chandrapur, nagpur, chhindwara, gondia tour packages";i:3;s:211:"Avorin Holidays Pvt Ltd offers Tadoba Nagzira and Pench National Park Tour - 6 Nights / 7 Days tour package, budget Wildlife and Nature tour packages for Chandrapur, Nagpur, Chhindwara, Gondia at exciting price.";i:4;s:453:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Chandrapur, Nagpur, Chhindwara, Gondia"        
		                 },
		      "description": "",
		      "name": "Tadoba Nagzira and Pench National Park Tour",
		      "telephone": "+91-8855887766"
		    }
		    </script>
			";i:5;N;}