a:6:{i:0;s:55762:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>To Discover Holy Chardham - The Land Of Endless Discoveries Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.suretripindia.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.suretripindia.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> To Discover Holy Chardham - The Land Of Endless Discoveries Tour</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<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-->				
								
						<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>Tour Code :</b> To Discover:-</p>
												<p class="mb5px"><b>Duration :</b> 
						11 Nights / 12 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Haridwar, Chamoli, Rudraprayag, Uttarkashi</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 34999 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="To Discover Holy Chardham - The Land Of Endless Discoveries 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="126420"/>
						</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_17/480971/203285.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/480971/203285.jpg"  width="150" height="150"    alt="To Discover Holy Chardham - The Land Of Endless Discoveries Tour" title="To Discover Holy Chardham - The Land Of Endless Discoveries Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div><br />
														<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Description of the tour <br />
Chardham - The most important Hindu religious path in the Himalayas,  which is found in the Garhwal region of Uttarakhand state, in the past which was part of Uttar Pradesh. The path passes through four Hindu pilgrimage destination - Yamunotri, Gangotri, Kedarnath and Badrinath.<br />
<br />
Cost includes:<br />
- Hotel accommodation on sharing basis.<br />
- Meals as per package (Breakfast).<br />
- Transfers and sightseeing car<br />
- All toll tax, parking, fuel and driver allowances.<br />
- All applicable hotel and transport taxes.<br />
<br />
Cost doesn’t include:<br />
- Any airfare/ train fare.<br />
- Any insurance.<br />
- Any personal expenses like STD calls, laundry etc.<br />
- Any claim or delay charges due to natural calamities such as landslides, road blockages etc.<br />
- Or any other things which are not mentioned in “Cost Included column”								</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> Haridwar - Barkot (210kms/7 - 8hr) Height: 1352 MTS
										</p>
										<p class="aj">Morning meet our driver at Haridwar & drive for Barkot via Mussoorie, en - route visit Mussoorie Lake & Kempty Fall in Mussoorie. Later drive straight to Barkot. Check into the hotel, arrival in Barkot. Overnight stay at Barkot.<br />
<br />
Barkot Weather - Generally pleasant in summer, the temperature ranges from 25 - 30 degree Celsius, Winter: The Days are pleasantly cool but the nights are cold, temperature ranges from 10 degrees to 05 degrees.</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> Barkot - Barkot {36kms drive & 6kms Trek (one side)} Height: 3235 MTS.
										</p>
										<p class="aj">Early morning after breakfast (packed breakfast), drive to Jankichatti / Phoolchatti & star trek from here to Yamunotri (6kms) (Either by walk or by horse or by Doli at own cost). After taking bath in Jamunabai Kund's warm water and having "Darshan" of "Yamunaji" return to Jankichatti by trek. Later drive towards Barkot, Overnight stay at Barkot.<br />
<br />
Yamunotri Temple: Maharani Gularia of Jaipur built the temple in the 19th Century. It was destroyed twice in the present century and rebuilt again. At Yamunotri, One can cook rice by packing it in a cloth and dipping it in the hot water of the Tapt kund. Pilgrims take this cooked rice home as "Prasad". Here near the temple "Pooja" can be offered to Divya Shila.<br />
<br />
Surya Kund: There are a Number of thermal springs near temple, which flows into numerous pools. The most important of these is Surya Kund.<br />
Divya Shila: A rock pillar, worshipped before entering the Yamunotri Temple.<br />
Yamunotri Weather - In summer the maximun temperature is 18 degrees and the minimum is 10 degrees celsius. The days are pleasantly cool but the nights are cold.</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 - Uttarkashi (100kms/4hr) Height: 1352 MTS
										</p>
										<p class="aj">Morning after breakfast, drive to Uttarkashi. Check into the hotel, arrival in Uttarkashi. Visit Kashi Vishwanath Temple in Uttarkashi. Overnight stay at Uttarkashi.<br />
<br />
Uttarkashi is home to a number of ashrams, temples. The name of the town reflects its similarity to and location (as north of) the city of Kashi (Varanasi). Similar to Varanasi, town of Uttarkashi is also situated on the banks of River Ganga.<br />
<br />
Vishwanath temple - Vishwanath temple is one of the oldest Shiva temples in Northern India. Re - constructed in 1857 by Maharani Khaneti Devi of Tehri State in the ancient architectural style. It is situated at the heart of the town. A massive iron trident, symbolic of divine mother’s, is erected and worshiped from time immemorial at the temple complex. Ganeshji, Sakshi Gopal, Markandeya Rishi’s small shrines are also part of the temple complex. Akhand Jyoti as well as Akhand Abhishek, special aarti at morning and evening are offered. As per Skunda Puran, Uttarkashi is known as ‘Saumya Varanasi’, the abode of Lord Shiva in Kaliyug and counted as one of the twelve Jyotirlingas.<br />
<br />
Shakti temple - Right in front of the Vishwanath temple is Shakti temple. It has a big ‘Trishul’ of about 6 meters in height and a circumference of 90 cm at bottom. Though there are different views about the making of this, the upper part of it seems to be made up of iron and the lower one is of copper. As per the epics this Shakti was thrown on the devils by the Goddess Durga(Shakti), hence it gets its name. Since then this Shakti is erected over here.<br />
<br />
Uttarkashi Weather - Generally hot in summer, the temperature ranges from 30 - 35 degree Celsius but nights is pleasant, Cold in winters.</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> Uttarkashi (100kms/3 - 4 each side) Height: 3048 MTS
										</p>
										<p class="aj">Early morning (packed breakfast) drive to Gangotri, enroute at Gangnani take a holy dip in Garam Kund, further drive to Gangotri via beautiful Harsil Valley. Harsil is famous for its nature beauty and for the majestic views of the Deodar trees and mountains. On arrival at Shree Gangotri, take a holy dip in the sacred river Ganges which is also called Bhagirathi at its origin. Perform Pooja and Darshan, after that relax for some time in the lovely surroundings. Later drive back to Uttarkashi. Overnight stay at Uttarkashi.<br />
<br />
Gangotri Temple: The temple was constructed by the Gorkha General Amar Singh Thapa in the 18th Century, is situated on the right bank of Bhagirathi. <br />
<br />
Gangotri Weather - The maximum temperature during summer can go up to 20° Celsius. Summer nights can get cooler with a minimum temperature of 10° Celsius. Light woolen clothes are required while visiting Gangotri during summer. Winter season is very chilly in Gangotri. Gangotri will be covered in sheets of snow during winter. Pilgrim centers remains closed throughout winter due to heavy snow falls.</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 - Guptkashi (220kms/8 - 9hr) Height: 1319 MTS
										</p>
										<p class="aj">Morning after breakfast, drive to Guptkashi via Moolgarh & Lambgoan. Enroute you can see the beautiful river Mandakini at Tilwara. The Mandakini river comes from Kedarnath, drive alongside the river to reach Guptakashi, visit Ardh Narishwar Temple in Guptakashi. Check into the hotel arrival in Guptakashi. Overnight stay at Guptakashi.<br />
<br />
Guptakashi: - The name Gupt Kashi means "Hidden Benares. Mythology describes how when the Pandava brothers were searching for a glimpse of Shiva, Shivji first concealed himself at Guptkashi, but later fled from them further up the valley to Kedarnath, where the Pandavas finally got their wish fulfilled. There are more tangible connections as well - the Kedarnath pandas (priests) live in Guptkashi during the winter months, and after the Kedarnath temple closes for the winter, the image of Kedarnath passes through Gupt Kashi on its way to Ukhimath (across the valley), where it stays for the winter.<br />
<br />
Guptkashi Weather - pleasant in summer, the temperature ranges from 25 - 30 degree Celsius. Cold in winters.</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> Guptkashi - Kedarnath(30kms by road & 19kms Trek one way) Height: 3384 MTS
										</p>
										<p class="aj">Morning after breakfast drive to kedarnath. Enjoy Kedanrath Darshan & back to your hotel. Overnight stay at Kedarnath.<br />
By Helicopter: Morning our driver will transfer you your prebook Helipad. After Back our car will drop you at Hotel for rest.<br />
By Trek: Morning our driver will drop you at Sonprayag then you have to take local jeep for Gourikund & then your trek strat for kedarnath ji. After darshan you follow same & back to Sonpraag. There is big parking issue so driver will back other palace if his contact no is not working then you have to arrange other taxi or wait for your driver & send the message any other driver.<br />
<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. 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. 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.<br />
Kedarnath Weather - Due to its high altitude the weather in Kedarnath remains cold for most part of the year. Summer here is cool and pleasant while winter is severe. During summer season the temperature varies around 20°Celsius. Light woolen wear is recommended. Winter season in Kedarnath is severe with mercury falling to as low as 0°Celsius. During this time the place experiences snowfall as well. Due to the extreme climatic conditions, this time is usually avoided by tourists.</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> Kedarnath - Guptkashi - Badrinath (230kms by road) Height: 3384 MTS.
										</p>
										<p class="aj">Morning after Pooja & breakfast morning transfer to Guptkashi & driver for badrinath. Overnight at Badrinath.</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> Badrinath
										</p>
										<p class="aj">Day free for Badrinath Badrinath. Pilgrims after having a bath in the Taptkund have the Darshan of Badrivishal & Aarti in evening. Brahamakapal is significant for Pinddan Shraddh of ancestors (Pitrus). There are other interesting sightseeing spot like Mana, Vyas Gufa, Maatamoorti, Charanpaduka, Bhimkund and the "Mukh" of the Saraswati River. Just within the three kms of Badrinathjee. Overnight stay at Badrinath.<br />
<br />
Badrinath one of the 'Ancient Four Dhams' is 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 />
<br />
Tapt Kund : Natural thermal springs on the bank of the river Alaknanda, where it is customary to bath before entering the Badrinath temple.<br />
Mana Village : Inhabited by an Indo - Mongolian tribe, it is the last Indian village before Tibet.<br />
Vasundhara : As the name suggests, vasundhara is a magnificent water fall. This place is 5 kms. from Badrinath out of which 2 kms. is motorable upto Mana.<br />
Bhim Pul : On the other side of Mana village, a massive rock forming a natural bridge, lies over the roaring Saraswati river. It presents a spectacular view of water thundering down through the narrow passage under the rock and is believed to have been placed there by Bhim, the second eldest among the five Pandava brothers.<br />
<br />
Vyas Gufa (cave): Near Mana Village, this is a rock - cave where Ved Vyas is believed to have composed the Mahabharata and the pauranic commentaries.<br />
Badrinath Weather: The average maximum temperature will be around 18° Celsius and the average minimum is 8° Celsius. Warm and woolen clothes are hence required for a stay in Badrinath throughout the year. Winter in Badrinath is often accompanied by snow falls. Winter is very chilly with an average temperature of 5° Celsius. Due to the extreme climatic conditions, this time is usually closed for tourists.</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 (160kms/7hr) Height: 895 MTS.
										</p>
										<p class="aj">Morning after breakfast, driver for Rudraprayag via Joshimath. Visit on the way Narsingh Temple in Joshimath later drive back to Rudraprayag via Joshimath. Check into the hotel arrival in Rudraprayag. Overnight stay at Rudraprayag.<br />
<br />
Joshimath is situated on the slopes above the confluence of the rivers Alaknanda and Dhauliganga. Of the four 'Maths' established by Adi Shankaracharya, Joshimath is the winter seat of Badrinath. The idol is brought down to Joshimath and installed in the temple for people to worship. There are many other temples in the township. The most important is the temple of Nir Singh with the idol of Lord Vishnu. The left arm of this deity is getting destroyed with time and the popular belief holds that the day the arm completely withers Badrinath valley will cease to exist and the Gods will transfer the residence into the neighboring Niti Valley at Bhavishya Badri.<br />
<br />
Rudraprayag is one of the Panch Prayag (five confluences) of Alaknanda River. It is confluence of rivers Alaknanda and Mandakini. Kedarnath, a Hindu holy town is located 86 km from Rudraprayag.<br />
<br />
Rudraprayag Weather - Generally hot in summer, the temperature ranges from 35 - 40 degree Celsius, Winter: The Days are pleasantly cool but the nights are cold, temp ranges from 20 deg to 05 deg.</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 (165kms/5 - 6hr)
										</p>
										<p class="aj">Morning after breakfast, drive for Haridwar via Rishikesh. Rishikesh 'place of sages' is a celebrated spiritual town on the bank of Ganga and is surrounded by Shivalik range of the Himalayas on three sides. It is said that when Raibhya Rishi did hard penances, God appeared by the name of " Hrishikesh " and this area hence firth came to be known as Rishikesh. Later visit Rishikesh Temples Sight Seeing - Laxman Jhulla, Ram Jhulla. Drop at Haridwar.<br />
<br />
Rishikesh: Named after the Lord Vishnu, Rishikesh is a holy city for Hindus. Located in the foothills of the Himalaya in northern India it is also known as the yoga center of the world and is home to many world renowned ashrams. Rishikesh styles itself as the ‘Yoga Capital of the World’, with masses of ashrams and all kinds of yoga and meditation classes. The fast - flowing Ganges is surrounded by forested hills inside the city. Apart from temples and ashrams Rishikesh is now a popular white - water rafting centre, backpacker hang - out, and gateway to treks in the Himalaya.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>2 Star Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>Transport</li>
																						<li>Transfers</li>
																						<li>Airport Pickup-Drop</li>
																						<li>Complimentary Drinks</li>
																						<li>Veg & Non Veg Meals</li>
																			</ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p><strong>General Guidelines to the Passengers :-</strong>

<ul>
	<li>Senior citizen passenger must get their medical checkup before booking the tour and fitness certificate is required while booking.</li>
	<li>Passengers above the age of 75 are required to accompany by an escort/family member of younger age.</li>
	<li>Cost of bed tea, packaged drinking water, evening tea etc will be borne by passengers only.</li>
	<li>General Breakfast timings in hotels are 06.30 - 10.30 A.M.</li>
	<li>Please avoid being Over drunk by intake of hard drinks during your tour.</li>
	<li>Being a group tour package, personalized service is not viable.</li>
	<li>Kindly queue up while boarding the busses and don?t rush at the accommodation centre at the time of check-in.</li>
	<li>It is the duty of the co-passengers to provide seats first for the Handicapped and older people. Please do not request our representative for blocking any seat or specific room.</li>
	<li>Please keep patient and calm while on journey and avoid any unlawful arguments. Speak politely to other tourists, staffs &amp; officers on duty.</li>
	<li>There may be changes in the sightseeing if any odd situation arises &amp; the same has to be adhered to. In case of any problem arising due to some natural calamity or abnormal situation, alternate arrangements will be made for which extra cost is to be borne by the tourists.</li>
	<li>Always carry your passport/pan card/adaar card/driving liscence/votercard/etc while traveling.</li>
	<li>Hotels may change as per availability.</li>
	<li>The airfares and taxes are calculated as on a mentioned date and any increase in the taxes or airfare will be borne by the customer.</li>
	<li>The passport should be valid for minimum 6 months from the date of travel.</li>
	<li>Package is non refundable after confirmation.</li>
	<li>Any increase in air fare or air port taxes has to be borne by the client.</li>
	<li>Above tour prices are subject to change in the event of increase in hotel room rates levy by the hotel especially during peak season / holiday surcharge and major events/ fairs and convention.</li>
	<li>Double or twin is subject to availability and sole discretion of the hotel.</li>
	<li>Passenger should get full briefing about the tour from SURE TRIP before/after the booking to avoid any confusion.</li>
	<li>SURE TRIP is not liable for personnel expenses, boating, ropeway charges, porterage, theft, accidents etc.</li>
	<li>Any other terms and conditions applied as may be decided by SURE TRIP at any point of time.</li>
	<li>Passengers are requested to not make any unethical or indecent behavior/act, which can harm the image of our country oversees.</li>
	<li>50% payment at the time of booking confirmation will be required. After completion of the booking confirmation and payment formalities, a confirmation tour voucher will be generated.</li>
	<li>You will have to pay all bank charges.</li>
	<li><strong>Force Majeure</strong>:- In these booking conditions, &#39;force majeure&#39; means any event which we / the supplier of the service(s) in question / the Third Party Supplier could not, even with all due care, foresee or avoid. Such events may include disruptions/diversions of rail services, floods, earthquakes whether actual or threatened war, riot, civil strife, actual or threatened terrorist activity, industrial dispute, natural or nuclear disaster, adverse weather conditions, disease, fire and all similar events outside the control of the party concerned.</li>
	<li>We cannot accept liability or pay any compensation where the performance or prompt performance of our obligations under our agreement with you is prevented or affected by, or you otherwise suffer any damage or loss as a result of, &#39;force majeure&#39;</li>
	<li>SURE TRIP will not be responsible for any injury, illness, death, loss, damage, expense, cost or other claim of any description whatsoever which results from:</li>
</ul>

<p>1. the act(s) and / or omission(s) of the person(s) affected or any member(s) of their party; or<br />
2. the act(s) and / or omission(s) of a third party not connected with the provision of your arrangements and which were unforeseeable or unavoidable; or<br />
3. any service or facility not arranged by us as part of our contract with you; or &#39;force majeure&#39; as defined above.

<ul>
	<li>Excursions or other tours or any other travel services taken and paid for by you which have not been provided by us whilst you are on our tour. In such instances, your contract will be with the operator / supplier of the excursion or tour or travel services and not with us.</li>
</ul>

<p><strong>Conditions of Travel:-</strong>

<ul>
	<li>You will have to strictly follow the tour program. There would be no refund if you fail to join the group at the commencement of the tour, or join the group later or leave the group before culmination of the tour for any reasons whatsoever. You are responsible to register with the representative of the Company at the appointed date, place and time and you would be treated as a no-show if you fail to do so. Under no circumstances would any refund be given for any unutilized services. You shall not behave in a manner which may cause distress or annoyance to other co-travelers or which may create the risk of danger or damage to property of the Company, co-travelers or others. In this event, you may be asked to leave the tour immediately. The Company shall be under no liability to any such person.</li>
</ul>

<p><strong>Travel Documents and Clearances :</strong><br />
1. It shall be solely the your responsibility to hold valid travel documents and statutory clearances, to enable you to travel on the Tour such as passports, visas, confirmed air-tickets, insurance and medical insurance certificates and other statutory certificates including immigration clearance. In any case, your Passport must be valid for at least six months subsequent to the scheduled departure date of the tour.

<p>2. As granting or rejecting visas and immigration clearance is the sole prerogative of the concerned sovereign governments, SURE TRIP shall neither be responsible in case of non-granting of such documents nor liable for any delay, denial or other related act/omission or for any loss, expense, damage or cost resulting there from.

<ul>
	<li>The position in respect of cancellation of Tour by Client due to non-availability of travel documents would not change only by virtue of the Client having applied for such documents through the Operator. Even if visas are rejected, the stipulated fees of the Operator shall be payable by the Client. There will be no refund to the Client, or any member of his party, is unable to travel due to the said reasons. In such cases, the non-refundable deposit paid by the clients shall be forfeited and no claim whatsoever shall be made for the same.</li>
</ul>

<p><strong>Child Policy :</strong>

<ul>
	<li>02 Adults 01 Child is suggested in a standard room. If a family with 02 adults 02 child would suggest to take either 02 inter connecting rooms or higher category rooms.</li>
	<li>Children below 5 years of age are allowed to stay free with parents without extra bed.</li>
	<li>Children between 5 &ndash; 12 years have to take an extra bed at the prescribed rate.</li>
	<li>02nd child between 5 &ndash; 12 years sharing parent&rsquo;s bed have to pay extra for Meals only.</li>
</ul>

<p><strong>Extra Bed :</strong>

<ul>
	<li>Three person of one family on one booking will be accommodated in one double room with an extra bed.</li>
	<li>Child will be accommodated in one room with the parents (with bed / without extra bed) only.</li>
</ul>

<p><strong>Surcharges:-</strong>

<ul>
	<li>The prices shown are based on known costs and exchange rates at the time of tour launching and &quot;SURE TRIP&quot; does not expect to have to make any changes.</li>
	<li>In case of unforeseen increase in national or local taxation or adverse fluctuation in currency exchange rates, affecting the cost structures of your journey,</li>
	<li>&quot;SURE TRIP&quot; reserves the right to impose a surcharge or revise the tour cost.</li>
</ul>

<p><strong>Excludes:-</strong>

<ul>
	<li>Any increase in Airfare</li>
	<li>Urgent visa charges</li>
	<li>Any increase Visa fee will be payable by passenger.</li>
	<li>Meals are preset and a choice of menu is directly payable at hotel.</li>
	<li>Any special service will provide and fee will be payable by passenger.</li>
	<li>Cost of excursions, sightseeing, entrance fees and local guides not included in the itinerary availed of by the passengers</li>
	<li>All kind of tips to drivers, guides, representative, Fuel Surcharge, etc</li>
	<li>Any increase in rate of exchange leading to an increase in surface transportation and arrangements which may come into effect prior to departure.</li>
	<li>The tour price is subject to increase without notice if this rate changes substantially prior to departure</li>
	<li>Any expenses of personal nature such as laundry expenses, wines, mineral water, food and drinks not in the regular menus provided by us</li>
	<li>Anything not included in the inclusions.</li>
</ul>

<p><strong>Tour Ends.</strong>

<ul>
	<li>Above itinerary is only a proposed / indicative holiday outline, SURE TRIP /Local tour operator reserves the right to change as per the operational feasibility.</li>
	<li>Visit to all the sightseeing place is subject to time availability.SURE TRIP will not be responsible for any natural or social calamities.</li>
</ul>

<p><strong>Payment Policy :- </strong>

<ul>
	<li>50% on the time of BOOKING Confirmation.</li>
	<li>50% payment on first week of arrival date .</li>
	<li>If 100 % payment to our account then 5 % extra GST will be applicable</li>
</ul>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="To Discover Holy Chardham - The Land Of Endless Discoveries 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="126420"/>
						</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.suretripindia.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(65)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(30)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-mumbai.htm" title="Packages in Mumbai">Mumbai</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-shey.htm" title="Packages in Shey">Shey</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-hemis.htm" title="Packages in Hemis">Hemis</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-haridwar.htm" title="Packages in Haridwar">Haridwar</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-thiruvananthapuram.htm" title="Packages in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-rudraprayag.htm" title="Packages in Rudraprayag">Rudraprayag</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-chamoli.htm" title="Packages in Chamoli">Chamoli</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-mussoorie.htm" title="Packages in Mussoorie">Mussoorie</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-ahmedabad.htm" title="Packages in Ahmedabad">Ahmedabad</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-bagdogra.htm" title="Packages in Bagdogra">Bagdogra</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(5)</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.suretripindia.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(62)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(22)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(21)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(48)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(37)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(27)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/climbing-holidays-catid.htm" title="Climbing Packages">Climbing</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.suretripindia.in/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/festive-events-holidays-catid.htm" title="Festive & Events Packages">Festive & Events</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.suretripindia.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.suretripindia.in/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</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.suretripindia.in/road-trip-holidays-catid.htm" title="Road Trip Packages">Road Trip</a> <b class="alpha50 bn small">(2)</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>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for New Delhi, Haridwar, Chamoli, Rudraprayag, Uttarkashi</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.suretripindia.in/tour-packages/chandigarh-weekend-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/480971/205737.jpg"  alt="Chandigarh Weekend Tour" title="Chandigarh Weekend Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.suretripindia.in/tour-packages/chandigarh-weekend-tour.htm" title="Chandigarh Weekend Tour"><h3>Chandigarh Weekend 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> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Chandigarh City, New Delhi</p>
															<div class="mt10px small">
							<form name="pkg_128377" id="pkg_128377" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.suretripindia.in/tour-packages/chandigarh-weekend-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Chandigarh Weekend 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="128377"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.suretripindia.in/tour-packages/jewish-pilgrimage-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/480971/198703.jpg"  alt="Jewish Pilgrimage Tour" title="Jewish Pilgrimage Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.suretripindia.in/tour-packages/jewish-pilgrimage-tour.htm" title="Jewish Pilgrimage Tour"><h3>Jewish Pilgrimage 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> : 
								9 Nights / 10 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Agra, Ahmedabad, Mumbai, Pune</p>
															<div class="mt10px small">
							<form name="pkg_123219" id="pkg_123219" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.suretripindia.in/tour-packages/jewish-pilgrimage-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Jewish Pilgrimage 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="123219"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.suretripindia.in/tour-packages/kanchenjunga-base-camp-trek-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/480971/198688.jpg"  alt="Kanchenjunga Base Camp Trek Tour" title="Kanchenjunga Base Camp Trek Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.suretripindia.in/tour-packages/kanchenjunga-base-camp-trek-tour.htm" title="Kanchenjunga Base Camp Trek Tour"><h3>Kanchenjunga Base Camp Trek 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> : 
								10 Nights / 11 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Gangtok, Darjeeling, Yuksom</p>
															<div class="mt10px small">
							<form name="pkg_123204" id="pkg_123204" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.suretripindia.in/tour-packages/kanchenjunga-base-camp-trek-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Kanchenjunga Base Camp Trek 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="123204"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.suretripindia.in/tour-packages/chopta-chandrashila-trek-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/480971/205591.jpg"  alt="Chopta Chandrashila Trek Package" title="Chopta Chandrashila Trek Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.suretripindia.in/tour-packages/chopta-chandrashila-trek-package.htm" title="Chopta Chandrashila Trek Package"><h3>Chopta Chandrashila Trek Package</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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Haridwar, Ukhimath, Tungnath</p>
															<div class="mt10px small">
							<form name="pkg_128319" id="pkg_128319" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.suretripindia.in/tour-packages/chopta-chandrashila-trek-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Chopta Chandrashila Trek Package - 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="128319"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.suretripindia.in/tour-packages/manalito-leh-bike-trip-from-delhi-2018-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/480971/185641.jpg"  alt="Manali To Leh Bike Trip From Delhi 2018 Tour" title="Manali To Leh Bike Trip From Delhi 2018 Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.suretripindia.in/tour-packages/manalito-leh-bike-trip-from-delhi-2018-tour.htm" title="Manali To Leh Bike Trip From Delhi 2018 Tour"><h3>Manali To Leh Bike Trip From Delhi 2018 To..</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, Manali</p>
															<div class="mt10px small">
							<form name="pkg_113445" id="pkg_113445" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.suretripindia.in/tour-packages/manalito-leh-bike-trip-from-delhi-2018-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Manali To Leh Bike Trip From Delhi 2018 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="113445"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.suretripindia.in/tour-packages/the-landof-lord-krishna-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/480971/198691.jpg"  alt="The Land of Lord Krishna Tour" title="The Land of Lord Krishna Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.suretripindia.in/tour-packages/the-landof-lord-krishna-tour.htm" title="The Land of Lord Krishna Tour"><h3>The Land Of Lord Krishna 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, Agra, Mathura</p>
															<div class="mt10px small">
							<form name="pkg_123207" id="pkg_123207" method="post" action="http://www.suretripindia.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.suretripindia.in/tour-packages/the-landof-lord-krishna-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="The Land of Lord Krishna 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="123207"/>
							</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:105:"Book To Discover Holy Chardham - The Land Of Endless Discoveries Tour - 11 Nights / 12 Days Tour Packages";i:2;s:198:"book to discover holy chardham - the land of endless discoveries tour - 11 nights / 12 days tour packages, heritage tour packages, new delhi, haridwar, chamoli, rudraprayag, uttarkashi tour packages";i:3;s:247:"Book To Discover Holy Chardham - The Land Of Endless Discoveries Tour - 11 Nights / 12 Days tour packages from Sure Trip India - Get attractive 11 Nights / 12 Days Heritage  tour packages for  New Delhi, Haridwar, Chamoli, Rudraprayag, Uttarkashi.";i:4;s:1322:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Haridwar, Chamoli, Rudraprayag, Uttarkashi"        
		                 },
		      "description": "Description of the tour 
Chardham - The most important Hindu religious path in the Himalayas,  which is found in the Garhwal region of Uttarakhand state, in the past which was part of Uttar Pradesh. The path passes through four Hindu pilgrimage destination - Yamunotri, Gangotri, Kedarnath and Badrinath.

Cost includes:
- Hotel accommodation on sharing basis.
- Meals as per package (Breakfast).
- Transfers and sightseeing car
- All toll tax, parking, fuel and driver allowances.
- All applicable hotel and transport taxes.

Cost doesn’t include:
- Any airfare/ train fare.
- Any insurance.
- Any personal expenses like STD calls, laundry etc.
- Any claim or delay charges due to natural calamities such as landslides, road blockages etc.
- Or any other things which are not mentioned in “Cost Included column”",
		      "name": "To Discover Holy Chardham - The Land Of Endless Discoveries Tour",
		      "telephone": "+91-7807899599"
		    }
		    </script>
			";i:5;N;}