a:6:{i:0;s:17618:"				<div class="h1"><h1>Best of Uttaranchal Tour (10 Nights/11 Days)</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.chaturveditravels.com/" title="Home">Home</a> 
				
								
				<b class="ffv p2px">&rsaquo;</b>Best of Uttaranchal Tour (10 Nights/11 Days)</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">Tour Code </td>
						<td class="p5px pl0px vat">CTT / 35 Best of Utt</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						10 Nights / 11 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Haridwar, Nainital, Kausani, Rudraprayag, Corbett, Auli</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.chaturveditravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Best of Uttaranchal Tour (10 Nights/11 Days) - 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="27837"/>
						</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_8/229281/56052.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/229281/56052.jpg"  width="150" height="150"    alt="best of uttaranchal" title="best of uttaranchal" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Any Airfare, Train Fare, Overland Journey Which Is Not Mentioned In The Itinerary.<br />
Any Personal Nature Items Like Laundry, Bar Bills, Table Bills, Camera Fee, Tips Or Any Other Item.<br />
Major Meals I.E. Lunch & Dinner At Haridwar <br />
Guide / Entry Fees / Boatings /Horse Ridings Etc. During Sight Seeings<br />
Any Medical /Rescue Evacuation Due To Mishaps. <br />
Optional Activities Mentioned In The Itinerary <br />
Any Other Things That Is Not Included In The “Package Cost Includes” Column.<b><b>Note:<br />
Any Changes In Govt. Taxes, Hotel Tariff, Etc Will Be Intimated Before Confirming The Package. <br />
Cost Incidental To Any Change In The Itinerary/ Stay On Account Of Flight Cancellation Due To Bad Weather, Ill Health, Roadblocks And/Or Any Factors Beyond Control. <br />
Government Service Tax @ 3.09 Extra <br />
Every Passenger Is Traveling On His Own Responsibility. The Company Will Not Be Responsible For Any Loss Of Luggage Or Any Accidents. We Are Not Responsible For Theft Or Damage To Your Luggage.<br />
Also Note That Video & Audio Systems Are Prohibited In Commercial Vehicles As Per Law And We Do Not Guarantee For It Always.<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> Delhi - Corbett(296kms - 7hrs)
								</p>
								<p class="aj">Travel by surface from Delhi to corbett National park.<br />
Corbett National Park: A promosing land for the world species at Ramnagar in Nainital distric in uttarakhand.The Corbett national park is the most dwindling part of nature resising at the himalayal foot hill & Shivalik ranges and is being called as the perfect tigers land.indias first notised wildlife sanctuary and national park established in the year 1936,brings opportunity to be hold the largest tigers population in the vicinity.corbett remains open to mid nov to mid jun,the main reason for closure of the park during the rest of the year is that mansoon make most of the roads get washed away.After mansoon, the repaire work start and it is only by nov.That roads are back in motive conditions. On arrival at Corbett transfer to hotel,check in to hotel.Rest of the day free at leisure .overnight stay at hotel at Corbett.</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> Corbett
								</p>
								<p class="aj">After breakfast enjoy a game drive in the park by jeep(Optional by paying Additional cost) to view some of the most exotic wild life and the flora & fauna. Later afternoon proceed for yet another game viewing drive & try your luck to spot the tiger. Later back to hotel, Rest of the day free at leisure, overnight stay at the hotel at Corbett.</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> Corbett - Nainital (140 kms - 4 hrs)
								</p>
								<p class="aj">After breakfast check out from hotel, then drive to Nainital.<br />
Nainital: is referred to as the lake of three sages, or the Tri Rishi Sarovar as mentioned in the Manas Khand chapter of the Skanda Purana. As recorded in history, the three sages, Atri, Pulastya, and Pulaha stopped over at Nainital on their pilgrimage, to quench their thirst. Finding no water, they dug a hole and transferred some water into it to from the sacred lake of Tibet, Mansarovar. Thus the famous lake of Nainital came into existence. Another legend has it that the left eye or Nain of Lord Shiva’s wife Sati fell in this center and formed an emerald eye shaped lake, and thus emerged the city of Nainital.Recent history records reveal that Nainital was brought into limelight by P. Barron, a British sugar merchant, in 1839. The beauty of Nainital with the central lake cushioned among the forests attracted this person to build a house named Pilgrim’s Cottage and settle in Nainital. Arrive at Nainital transfer to hotel, Check in to hotel .Evening you will free to  walk to Naini Lake and Mall road.then free at leisure. Overnight stay at hotel at Nainital.</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> Nainital 
								</p>
								<p class="aj">After breakfast, Full day is at leisure to explore the hill retreat of Nainital. visit Mall road, Boating Club, Cable Car Ride, Thandi Sadak, and Lakes(Sat tal, Naukuchiatal). It is blessed with scenic natural splendour and varied natural resources . Dotted with lakes, Nainital has earned the epithet of 'Lake District' of India.Later back to hotel, Rest of the day free at leisure, overnight stay at hotel at Nainital.</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> Nainital - Kausani(120kms 4hrs)
								</p>
								<p class="aj">After breakfast check out from hotel then drive to Kausani.<br />
Kausani: nature own reserve and idle to spend a quiet holiday in the lap of nature with stunning view of the Himalayan ranges. Mahatma Gandhi, during his stay at Kausani, penned his memorable commentary on the 'Gita-Anashakti Yoga' inspired by the scenic grandeur of this richly gifted spot. Mahatma Gandhi was so much impresses that he started calling it “Switzerland of India”. The guesthouse where Mahatma Gandhi stayed is now known as the Anashakti Ashram. Famous Hindi poet Sumitra Nandan Pant was born at Kausani. Some of her early poems composed here have described the nature in its manifestations. Arrive at Kausani transfer to hotel check in to hotel . Later afternoon visit to a Tea factory to see the complete process of manufacturing of a Tea. Rest of the evening is at leisure, overnight stay at hotel at Kausani.</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> Kausani - Auli(230 kms/6-7 hrs)
								</p>
								<p class="aj">After breakfast ,check out from hotel, then drive to Auli.<br />
Auli : is the most popular skiing destination of Uttaranchal state. Auli is situated in Chamoli district of Garhwal region covering elevation from 2,519mts to 3,050mts above sea level. Auli is a "bugyal" which means meadow in the regional language. Auli is often compared with best ski resorts of the world  foreigners. Auli is going to host SAF winter games in the year 2010. Auli is blessed with invigorating views of the splendid mountain range, Himalayas. The slopes of Auli provide enough thrills to professional skier and novice as well. Arrive at Auli,transfer to hotel, check in to hotel.take rest, Rest of the day free at leisure, overnight stay at hotel at Auli.</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> Auli 
								</p>
								<p class="aj">After breakfast free for leisure to get mesmerized by the breath taking views of the western Himalayas. Overnight stay at hotel at Auli.</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 8:</b> Auli - Rudraprayag (140 kms - 3 hrs)
								</p>
								<p class="aj">ollowing an early breakfast check out from hotel then drive to Rudraprayag.<br />
Rudraprayag: lies at the confluence of two rivers Alkananda and Mandakini. It is said that Narad was blessed by Lord Shiva in this place and appeared in Rudra avatar. Rudraprayag is one of the Panch Prayags or five confluences of Alaknanda River. Rudraprayag is blessed with nature’s bounty, the climate of which depends upon the height of the region. The road to two sacred Dham of Uttarakhand, Kedarnath and Badrinath diverts from Rudraprayag. Agastamuni is located 18kms from Rudraprayag at an altitude of 1000mts above sea level. This place holds a lot of religious significance as rishi Agastya meditated here for several years. Popular temples of Rudraprayag are Kedarnath, Madhyamaheshwar, Tungnath and Kalimath.Rudraprayag, named after the Lord Shiva (Rudra),The entire region of Rudraprayag is blessed with immense natural beauty, lakes & glaciers .<br />
Arrive at Rudraprayag transfer to hotel, check in to hotel. Rest of the day is at leisure for individual activities, overnight stay at hotel at Rudraprayag.</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 9:</b> Rudraprayag
								</p>
								<p class="aj">After breakfast, free for leisure to visit the temples in and around Rudraprayag or simply relax in your hotel and admire the wonderful picturesque locales of Rudraprayag, overnight stay at hotel at Rudraprayag.</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 10:</b> Rudraprayag - Haridwar(160 kms - 4Hrs hours)
								</p>
								<p class="aj">After breakfast checkout from hotel then drive to Holy city of Haridwar.<br />
Haridwar: Meaning ‘Gateway to God’ is one of the seven holiest places of the Hindus, located on the banks of River Ganges. It is the place where river Ganga descends to the plains. Haridwar is also spelled asHardwar or Hari- Dwar. Haridwar is also one of the four places where drops of Amrit or nectar fell from the pitcher which was being carried by Garuda, the heavenly bird and the spot is known as Brahma Kund or Har-ki-Pauri. <br />
Arrive at haridwar Transfer to hotel, check in to hotel, take rest , Rest of the day is at leisure to visit the Ganga ghats and temples. Evening attend the Sunset at Ganga Aarti at the bank of river . Overnight stay at hotel, at Haridwar.</p>
								</td>
								</tr>
								</table>					
								</div><div id="show_more_content" style="display:none;">
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 11:</b> Haridwar - Delhi (250 kms - 5 hrs)
									</p>
									<p class="aj">After breakfast, check out from hotel,then drive to Delhi for onward destination. <br />
 Enroute visit Ashrams and temples- Mansa Devi and Chamunda Devi etc.</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<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>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Any Airfare, Train Fare, Overland Journey Which Is Not Mentioned In The Itinerary.</li><li>
Any Personal Nature Items Like Laundry, Bar Bills, Table Bills, Camera Fee, Tips Or Any Other Item.</li><li>
Major Meals I.E. Lunch & Dinner At Haridwar </li><li>
Guide / Entry Fees / Boatings /Horse Ridings Etc. During Sight Seeings</li><li>
Any Medical /Rescue Evacuation Due To Mishaps. </li><li>
Optional Activities Mentioned In The Itinerary </li><li>
Any Other Things That Is Not Included In The “Package Cost Includes” Column.Note:</li><li>
Any Changes In Govt. Taxes, Hotel Tariff, Etc Will Be Intimated Before Confirming The Package. </li><li>
Cost Incidental To Any Change In The Itinerary/ Stay On Account Of Flight Cancellation Due To Bad Weather, Ill Health, Roadblocks And/Or Any Factors Beyond Control. </li><li>
Government Service Tax @ 3.09 Extra </li><li>
Every Passenger Is Traveling On His Own Responsibility. The Company Will Not Be Responsible For Any Loss Of Luggage Or Any Accidents. We Are Not Responsible For Theft Or Damage To Your Luggage.</li><li>
Also Note That Video & Audio Systems Are Prohibited In Commercial Vehicles As Per Law And We Do Not Guarantee For It Always.</li></ul><br />
												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.chaturveditravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Best of Uttaranchal Tour (10 Nights/11 Days) - 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="27837"/>
						</form>
						</div>
						
						";i:1;s:74:"Book Best of Uttaranchal Tour (10 Nights/11 Days) - 111 Days Tour Packages";i:2;s:167:"book best of uttaranchal tour (10 nights/11 days) - 111 days tour packages, valley tour packages, haridwar, nainital, kausani, rudraprayag, corbett, auli tour packages";i:3;s:218:"Book Best of Uttaranchal Tour (10 Nights/11 Days) - 111 Days tour packages from Chaturvedi Travels and Tours - Get attractive 111 Days Valley  tour packages for  Haridwar, Nainital, Kausani, Rudraprayag, Corbett, Auli.";i:4;s:1586:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Haridwar, Nainital, Kausani, Rudraprayag, Corbett, Auli"        
		                 },
		      "description": "Any Airfare, Train Fare, Overland Journey Which Is Not Mentioned In The Itinerary.
Any Personal Nature Items Like Laundry, Bar Bills, Table Bills, Camera Fee, Tips Or Any Other Item.
Major Meals I.E. Lunch & Dinner At Haridwar 
Guide / Entry Fees / Boatings /Horse Ridings Etc. During Sight Seeings
Any Medical /Rescue Evacuation Due To Mishaps. 
Optional Activities Mentioned In The Itinerary 
Any Other Things That Is Not Included In The “Package Cost Includes” Column.<b><b>Note:
Any Changes In Govt. Taxes, Hotel Tariff, Etc Will Be Intimated Before Confirming The Package. 
Cost Incidental To Any Change In The Itinerary/ Stay On Account Of Flight Cancellation Due To Bad Weather, Ill Health, Roadblocks And/Or Any Factors Beyond Control. 
Government Service Tax @ 3.09 Extra 
Every Passenger Is Traveling On His Own Responsibility. The Company Will Not Be Responsible For Any Loss Of Luggage Or Any Accidents. We Are Not Responsible For Theft Or Damage To Your Luggage.
Also Note That Video & Audio Systems Are Prohibited In Commercial Vehicles As Per Law And We Do Not Guarantee For It Always.",
		      "name": "Best of Uttaranchal Tour (10 Nights/11 Days)",
		      "telephone": "+91-9826355115"
		    }
		    </script>
			";i:5;N;}