a:6:{i:0;s:38165:"				<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
									<div class="h1"><h1>The Holy Char Dham Inbound Departures Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.namasteindiatours.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.namasteindiatours.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>The Holy Char Dham Inbound Departures Tour</p> 
									
						<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">
					
											<p class="mb5px"><b>Duration :</b> 
						10 Nights / 11 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Dehradun, Badrinath, Yamunotri, Gangotri, Rishikesh, Rudraprayag, Uttarkashi, Barkot, Harsil, Devprayag, Waknaghat, Golden Cloth Market</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.namasteindiatours.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="The Holy Char Dham Inbound Departures Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="184891"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_8/233326/284811.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/233326/284811.jpg"  width="150" height="150"    alt="The Holy Char Dham Inbound Departures Tour" title="The Holy Char Dham Inbound Departures Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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 – Haridwar
										</p>
										<p class="aj">In Hindu Mythology, Lord Vishnu is Known as Hari and Shiva as Har, Dwar Means Gate, and this is the Reason the Place is Known as Hardwar or Haridwar, as the Gateway to Himalayas – Abode of Gods. It is also Mentioned as Kapilasthana, Mayapuri, Gangadwar, Mokshadwar in the Ancient Scriptures & Epic. It is Regarded as Seven Holiest Places (sapta Puri) to Hindus.<br />
it is the Point Where the Ganga Emerges from the Himalayas to Begin Its Progress Across the Plains. Legend Has It that the Holy Ganga the Holiest of all Rivers, Which Flows Through this Sacred City, Has Actually Been Sanctified By the Powerful Trinity of Hindu Mythology. the Scenic Beauty and the Lush Green Surrounding Forests, a Unique Gurukul System of Traditional Education, Still Followed in Some Institutions Here, the Temples and the Ghats, a Huge Number of Ashrams and Dharmashalas; all Give the City a Unique Flavour and Charm.</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> Haridwar – Barkot
										</p>
										<p class="aj">Lakhamandal is a Place Which is Very Famous for Its Mahabharat Era's Relation. According to Legends Pandav Used to Stay Here in the Period of Agyatwaas. and the Most Important Lakshagriha (wax House) Remains are Here. Here is An Ancient Hindu Temple (dedicated to Lord Shiva) Which is Very Popular among Shakti Cult. the Temple is Surrounded By Beautiful Mountains and Yamuna River. Lakhamandal is a Mixture of Two Words, Lakha Meaning “lakhs” and Mandal Meaning “lingam”. this Monument Has Been Declared to Be of National Importance Under the Ancient Monuments and Archaeological Sites and Remains Act, 1958 (24 of 1958).<br />
after Visiting this Mesmerizing Sight, Drive Further to Barkot. Upon Arrival in Barkot, Check in At the Hotel. Overnight Stay is At Hotel in Barkot.<br />
barkot is a Small Town Situated At An Elevation of 1,280 M On Mussoorie–yamunotri Road. It is Located At a Distance of 128 Km from Dehradun and Just 49 Km En Route Yamunotri. this Place Provides View of Some Magnificent Mountain Ranges. the Mesmerizing View of the Peaks of Bandar Poonch Which Remains Snow- Capped Throughout the Year is Sure to Remain Embedded in Your Mind Forever. the Best Part is That, It Has Pleasant Climate Round the Year and is Well Connected from all Major Regions Via Surface.”</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> Barkot – Yamunotri
										</p>
										<p class="aj">Yamunotri is the Source of the Sacred River Yamuna that Originates from the Glacial Lake of Saptarishi Kund, At An Altitude of 4,421 Meters. Dedicated to Capricious Goddess Yamuna, this Ancient Temple Has Been a Pilgrimage for Centuries. Starting At Rishikesh, the Yatra Takes the Pilgrim Through Some of the Most Beautiful Panoramas, and Eventually On the 14 Kilometer Arduous Trek from Hanuman Chatti that is Not Merely Visually and Physically Stimulating But Spiritually Uplifting.</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> Barkot – Uttarkashi
										</p>
										<p class="aj">Shiv Gufa is a Naturally Formed Cave At Mehargaon On the Yamunotri – Uttarkashi Road. in the Cave, One Can See a Naturally Formed Shivling – Water Naturally Falls On Top of It Continuously. the Guha also Has Naturally Formed Ice Sculptors of Shiva, Ganesha, Trishul, Lotus and Om. the Cave is Filled with Knee Deep Water. Only Four People Can Stand At a Time in the Cave. You Can Hear the Sounds of Water Falling in the Cave.<br />
after Visiting the Cave Continue Your Drive to Uttarkashi. Upon Arrival, Check in At Hotel. Overnight is At the Hotel in Uttarkashi. in the Evening Visit Vishwanath Temple At Uttarkashi Town.<br />
the Viswanath Temple is the Most Important and Ancient Holy Shrine in this Region. of the Many Temples in Uttarkashi, the Temple of Lord Vishwanath is Unrivalled in Importance. Shiva, the Presiding Deity of this Temple, is Worshipped all Day Here. Every Evening, Visitors are Greeted By the Sound of Bells, and the Chanting of Mantras By Pundits At the Puja.within the Courtyard of the Vishwanath Temple, and to the Front of It, is the Shakti Temple, Dedicated to the Goddess of Strength. the Massive Brass Trident Projecting from this Temple Bears An Inscription Describing How the Vishwanath Temple Was Built. According to It, the Temple Was Built By King Ganeshwar, Whose Son Guh, a Great Warrior, Built the Trident. 26 Feet High, this Trident's Base Measures 8 Feet 9 Inches, and Its Top, 18'/2 Inches in Circumference.</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> Uttarkashi – Gangotri
										</p>
										<p class="aj">Gangnani is a Small Town Situated 46 Kms from Uttarkashi On the Route to Gangotri. It is Amous for Its Hot Water Springs, Gangnani is a Perfect Place for Rejuvenation. the Hot Water Spring At Gangnani is Called Rishikund. Most of the Devotees Take Holy Dip in this Natural Hot Water Spring Before Heading Towards Gangotri. a Temple Dedicated to Sage Parasara, Father of Veda Vyas Lies in Gangnani.<br />
gangotri Temple: It is the Highest and the Most Important Temple of Goddess Ganga. Gangotri is a Small Town Centered On the Gangotri Temple of Goddess Ganga. the Present Temple of Gangotri Was Built By Amar Singh Thapa, Gorkha General in the Early 18th Century. the Origin of Bhagirathi River, Gaumukh Glacier is 18kms from Gangotri and One Must Cover the Distance On Foot. Gangotri Offers Scenic Vistas of Rugged Terrains, Gushing Water of Bhagirathi River and Snow Clad Peaks. the Place Holds Great Importance amongst Hindus<br />
after Visiting Gangori Temple Return to Uttarakashi. On the Way Enjoy Picturesque Harshil Village, Bhagirathi River and the Most Magnificent View of Himalayas.<br />
harsil is An Unspoiled and Hidden Jewel of Uttarakhand State, Situated in a Picturesque Valley Inhabited By the Bhotia Tribes At An Altitude of Around 2620 Meters. It is Located At a Distance of 75 Km from Uttarkashi and 25 Km from Gangotri On Uttarkashi – Gangotri Road. the Temperature of Harsil Remains Pleasant During Summers and Reaches the Freezing Point During Winters. the Bhagirathi River Serves as An Ideal Companion for this Sleepy Town.</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> Uttarkashi – Guptkashi
										</p>
										<p class="aj">Guptkashi: Guptkashi Has a Great Importance Quite like that of Kashi. the Ancient Vishwanath Temple, Ardhnareshwar Temple and Manikarnik Kund, Where the Two Streams of Ganga and Yamuna are Believed to Meet, are the Main Places of Attraction in Guptkashi.it is Believed that After the Battle of Mahabharata, the Pandavas Wanted to Meet Lord Shiva and Seek His Blessing. But Lord Shiva Evaded from Guptkasi to Kedarnath as He Did Not Want to Meet the Pandavas, the Reason Being that Although They Had Fought for the Right Cause, They Were also Responsible for Destroying Their Own Dynasty.</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> Guptkashi – Kedarnath
										</p>
										<p class="aj">Today Morning After Early Breakfast, Take Helicopter Ride for Kedarnath. Post Visit Take Your Helicopter Ride Back to Guptkashi. Upon Arrival, Transfer to Hotel. Overnight Stay is At Hotel in Guptkashi.<br />
kedarnath: the Kedarnath Shrine, One of the 12 Jyotirlingas of Lord Shiva, is a Scenic Spot Situated, Against the Backdrop of the Majestic Kedarnath Range. Kedar is Another Name of Lord Shiva, the Protector and the Destroyer. According to Legend, the Pandavas After Having Won Over the Kaurava in the Kurukshetra War, Felt Guilty of Having Killed Their Own Brothers and Sought the Blessings of Lord Shiva for Redemption.<br />
he Eluded Them Repeatedly and While Fleeing Took Refuge At Kedarnath in the Form of a Bull. On Being Followed He Dived Into the Ground, Leaving His Hump On the Surface. the Remaining Portions of Lord Shiva Appeared At Four other Places and are Worshipped There as His Manifestations. the Arms Appeared At Tungnath, the Face At Rudranath, the Belly At Madhmaheshwar and His Locks (hair) with Head At Kalpeshwar. Kedarnath and the Four Above-mentioned Shrines are Treated as Panch Kedar.</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> GUPTKASHI – BADRINATH
										</p>
										<p class="aj">Today Morning After Breakfast, Drive to Badrinath, En-route Visits Chopta (also Known as Mini Switzerland of Uttarakhand).<br />
chopta is a Picturesque Hamlet Which is Still Not Very Much Explored By the Tourists. It Gives Stunning Views of Mountain Ranges Including Trishul, Nanda Devi, and Chaukhamba. It is Located At An Elevation of 2680 M, Amidst Thick Forest of Pine, Deodar and Rhododendron. It is Easily Accessible and Provides the Starting Point to Tungnath and Chandrashila.<br />
later, Drive to Badrinath. Arrive At Hotel and Check In.<br />
badrinath: One of the 'four Dhams' and One of the Most Celebrated Pilgrimage Spots of the Country and is Situated At An Elevation of 3,133 Meters, Guarded On Either Side By the Two Mountain Ranges Known as Nar & Narayan with the Towering Neelkanth Peak Providing a Splendid Backdrop. this Revered Spot Was Once Carpeted with Wild Berries. Thus the Place Got the Name "badri Van", Meaning "forest of Berries<br />
in the Evening Proceed to Visit Mana Village Which is the Last Village At Indo –china Border. also Visit Bhimpul, Saraswati River, Vyas Gufa, Ganesg Gufa and other Important Sites. Overnight is At Hotel in Badrinath.<br />
mana Village is the Last Village At the Indio-/china Border. Mana is Inhabited By Indo-mongolian Tribes Often Called as Bhotias. It is Being Designated as a “tourism Village” By the Uttarakhand Government. It is the One of the Best Tourist Destination Near Badrinath, Just 03 Km from Drivable Distance from Badrinath Town.<br />
bhim Pul is An Enthralling and Adventurous Place with Mythological Importance. this is the Place Where Bheem Threw a Big Massif Rock to Make a Path Joining Two Mountains So that Draupadi Could Walk Easily On It. Saraswati River is Coming from Between the Mountain with Immense Force to Merge with the Water of Alanknanda River.<br />
vyas Cave is An Ancient Cave Situated Close to Mana Village, It is Believed that It is the Place Where Sage Vyas Composed the Mahabharta Epic with the Help of Lord Ganesha.<br />
ganesh Cave Cocooned in Mana Village is a Natural Formed Cave. as per Hindu Beliefs, It is Said that Ganesha Penned Mahabharata in this Cave as Dedicated By Rishi Vyas. this Cave is Close to Vyas Cave.</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> Badrinath – Rudraprayag
										</p>
										<p class="aj">Joshimath is a Popular Hill Station Situated On the Slopes Above the Confluence of Alaknanda and Dhauliganga Rivers. Joshimath is One of the Four 'maths' Established By Adi Shankaracharya in 8th Century. Joshimath is also the Home of One of the Oldest Tree of India – Kalpvriksha, Believed to Be 2400 Old. It is also the Base for Many Trekking Routes and Just Close to It is Auli, Which is the Famous Ski Resort of India.<br />
later After the Visit, Continue Your Drive to Rudraprayag. Upon Arrival, Check in At the Hotel.<br />
overnight is At the Hotel in Rudraprayag.<br />
rudraprayag - Named After Lord Shiva (rudra), Rudraprayag is Situated At the Holy Confluence of Alaknanda and Mandakani Rivers, At a Distance of 34 Km from Srinagar (garhwal). the Presence of Two Separate Routes for Badrinath and Kedarnath Dham from Rudraprayag Render Great Importance to the Place. the Town is Situated At the Confluence of the River Alaknanda and River Mandakini. It Has a Special Religious Significance for Many People as Well. It is Said that the Place Where the Two Rivers Meet Resembles Two Sisters Embracing Each other and There is a Unique Beauty About the Place. Many Visitors Travel to the Place to Witness this Phenomenon Every Year. the Main Temples are the Jagdamaba Temple and the Shiva Temple. the Town of Kedarnath Which is An Important Pilgrimage Center for Many Hindus is Located Around 86 Km from the Town of Rudra Prayag and this Can Be Visited as Well. the Koteshwar Temple Can Be Seen On the Banks of the Alaknanda River and this is also a Popular Site in the Town.</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
										</p>
										<p class="aj">Dhari Devi Temple is a Hindu Temple Dedicated to Devi Kali Mata. Dhari Devi Godess is Considered as Guardian Deity of Uttarakhand. the Temple is Located in Kalyasaur Along the Srinagar-badrinath Highway On the Banks of the Alaknanda River in the Garhwal Region of Uttarakhand State, India.<br />
devprayag is a Beautiful Showcase of Traditions, Myths and Mysticism. this is the Place Where the Holy Rivers Bhagirathi and Alaknanda Meet, Making It a Unique Pilgrimage. from Here Onward Two Rivers Merge Into One and Take the Name 'ganga'.<br />
deoprayag Though Situated, At An Altitude of 618 M, is Endowed with Abundant Natural Beauty. According to a Belief, Lord Ram and His Father King Dasharath Did Penance Here. the Main Temple of the Town is the 'raghunath Temple', Dedicated to Lord Rama.<br />
the Bathing Ghat At Deoprayag is Built with Multiple Levels to Accommodate Different Water Levels During the Monsoon. It is also the Winter Home of the Priests of Badrinath. Deoprayag is a Pilgrimage Centre of Great Significance. in Treta-yuga, Lord Ram and Lakshman Performed a Yajna Here to Atone for Killing Ravan, Who Was a Brahmin. the Ancient Raghunath Temple Here with a 15-foot Tall Statue of Sri Ram (sri Raghunath) is One of the 108 Most Important Temples in India. in Front of the Temple is a Statue of Garuda. Behind the Temple and Slightly Up a Hill is Vamana's Cave and Nearby is Lord Ram's Stone Throne. <br />
rishikesh is the Base to Garhwal Himalayas, Surrounded By Shivalik Hills and Bisected By the Wide and Sluggish Ganges, is Often Claimed as the `yoga Capital of the World'.<br />
rishikesh is An Ideal Destination Not Only for Pilgrims But also for Those Who Want to Delve Deeper Into Meditation, Yoga and other Aspects of Hinduism. Compared to Haridwar, Rishikesh is More Tranquil and Offers Some of the Best Meditation Spot. a Number of Ashrams (hermitages) Offer Yoga and Meditation Courses for Those in Quest of Spiritual Fulfillment. Some Come to Rishikesh to Learn the Ways of the Mystics While Others Come Here to Discover Their Inner Selves. Rishikesh Has Recently Developed to Be An Important Centre for Treatment Using the Ancient Methods of Treatment Nature and Ayurveda for Difficult to Treat Ailments and Stress Induced Problems.</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
											</p>
											<p class="aj">Today After Breakfast, Check Out from Your Hotel and Drive to Delhi. Upon Arrival, Transfer to Delhi Airport / Railway Station to Board Your Flight / Train for Onwards Journey.</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 />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>MAP (Room + Breakfast + Lunch/Dinner)</li>
																						<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some  Advance Percentage of total booking amount</li><li>
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount.</li><li>
* Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.namasteindiatours.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="The Holy Char Dham Inbound Departures 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="184891"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-uttarkashi.htm" title="Packages in Uttarkashi">Uttarkashi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-bangalore.htm" title="Packages in Bangalore">Bangalore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-yamunotri.htm" title="Packages in Yamunotri">Yamunotri</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-thiruvananthapuram.htm" title="Packages in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-badrinath.htm" title="Packages in Badrinath">Badrinath</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-varanasi.htm" title="Packages in Varanasi">Varanasi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-barkot.htm" title="Packages in Barkot">Barkot</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-gangotri.htm" title="Packages in Gangotri">Gangotri</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-mumbai.htm" title="Packages in Mumbai">Mumbai</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-rudraprayag.htm" title="Packages in Rudraprayag">Rudraprayag</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-haridwar.htm" title="Packages in Haridwar">Haridwar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-kufri.htm" title="Packages in Kufri">Kufri</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-mysore.htm" title="Packages in Mysore">Mysore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-gwalior.htm" title="Packages in Gwalior">Gwalior</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.namasteindiatours.co.in/packages-in-orchha.htm" title="Packages in Orchha">Orchha</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/paragliding-holidays-catid.htm" title="Paragliding Packages">Paragliding</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.namasteindiatours.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(3)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Dehradun, Badrinath, Yamunotri, Gangotri, Rishikesh, Rudraprayag, Uttarkashi, Barkot, Harsil, Devprayag, Waknaghat, Golden Cloth Market</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.namasteindiatours.co.in/tour-packages/the-holy-char-dham-fixed-departures-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_8/233326/284812.jpg"  alt="The Holy Char Dham Fixed Departures Tour" title="The Holy Char Dham Fixed Departures Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.namasteindiatours.co.in/tour-packages/the-holy-char-dham-fixed-departures-tour.htm" title="The Holy Char Dham Fixed Departures Tour"><h3>The Holy Char Dham Fixed Departures Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								11 Nights / 12 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Srinagar, Haridwar, Kedarnath..</p>
															<div class="mt10px small">
							<form name="pkg_184892" id="pkg_184892" method="post" action="http://www.namasteindiatours.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.namasteindiatours.co.in/tour-packages/the-holy-char-dham-fixed-departures-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="The Holy Char Dham Fixed Departures Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="184892"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.namasteindiatours.co.in/tour-packages/do-dham-yatra-kedarnath-badrinath-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_8/233326/12766.jpg"  alt="Kedarnath Dham" title="Kedarnath Dham"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.namasteindiatours.co.in/tour-packages/do-dham-yatra-kedarnath-badrinath-tour.htm" title="Do Dham Yatra (Kedarnath & Badrinath) Tour"><h3>Do Dham Yatra (kedarnath & Badrinath) Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Haridwar, Chamoli, Rishikesh,..</p>
															<div class="mt10px small">
							<form name="pkg_11084" id="pkg_11084" method="post" action="http://www.namasteindiatours.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.namasteindiatours.co.in/tour-packages/do-dham-yatra-kedarnath-badrinath-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Do Dham Yatra (Kedarnath & Badrinath) Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="11084"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:72:"Book The Holy Char Dham Inbound Departures Tour - 111 Days Tour Packages";i:2;s:261:"book the holy char dham inbound departures tour - 111 days tour packages, religious & pilgrimage tour packages, dehradun, badrinath, yamunotri, gangotri, rishikesh, rudraprayag, uttarkashi, barkot, harsil, devprayag, waknaghat, golden cloth market tour packages";i:3;s:303:"Book The Holy Char Dham Inbound Departures Tour - 111 Days tour packages from Namaste India Tours - Get attractive 111 Days Religious & Pilgrimage  tour packages for  Dehradun, Badrinath, Yamunotri, Gangotri, Rishikesh, Rudraprayag, Uttarkashi, Barkot, Harsil, Devprayag, Waknaghat, Golden Cloth Market.";i:4;s:549:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Dehradun, Badrinath, Yamunotri, Gangotri, Rishikesh, Rudraprayag, Uttarkashi, Barkot, Harsil, Devprayag, Waknaghat, Golden Cloth Market"        
		                 },
		      "description": "",
		      "name": "The Holy Char Dham Inbound Departures Tour",
		      "telephone": "+91-9540857473"
		    }
		    </script>
			";i:5;N;}