a:6:{i:0;s:38715:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Chardham Package Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.travelroutes.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelroutes.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Chardham Package Tour</p>
						</div>
						</div>
						</section>
										<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>Duration :</b> 
						11 Nights / 12 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Joshimath, Rudraprayag, Uttarkashi, Barkot, Dungarpur</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.travelroutes.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Chardham Package 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="192570"/>
						</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_21/628572/303836.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_21/628572/303836.jpg"  width="150" height="100"    alt="Chardham Package Tour" title="Chardham Package Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Hotels Included<br />
<br />
Destination	Hotels / Similar<br />
<br />
Haridwar	        Holy Basil /Similar<br />
Barkot	         Inder Palace /Similar<br />
Uttarkashi	Shiv Ganga View /Similar<br />
Guptkashi	Hotel Robin/Similar<br />
Kedarnath	Govt. Tent ( Without Meal)<br />
Badrinath	Hotel Urvashi /Similar.<br />
Srinagar	Hotel Samrat/ Hotel Deluxe/Similar.								</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> Delhi – Haridwar (230 kms/6-7hrs) HT : 314 MTS.
										</p>
										<p class="aj">Arrival Delhi Airport / Delhi Railway Station, Meet & Assist further drive to Haridwar. Transfer to your Hotel. If time permits visit Mansadevi Temple, Chandidevi Temple, Daksha Mahadev Temples & Others. Also visit Har-ki-Pauri for Ganga Aarti. The ‘Aarti’ worship of the Ganga after sunset and the floating ‘dia’ (lamp) is a moving ritual. Back to your hotel, Night halt.</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 (210kms/7-8hr) HT : 1352 MTS.
										</p>
										<p class="aj">Drive to Barkot via Mussoorie, enroute visit Mussoorie Lake and Kempty Fall (Suggestible to have your lunch at Kempty fall as further no good restaurants are available before Badkot). Later drive straight to Barkot, transfer to your Hotel. Rest of the day is free to relax and store your energy for the Pahad (hill) Yatra of Yamunotri the next day. 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, temprature ranges from 10 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 3:</b> Barkot – Yamunotri – Barkot {36kms drive & 6kms Trek (one side)} HT : 3291 MTS.
										</p>
										<p class="aj">Early morning, Drive to Jankichatti/Phoolchatti, trek start from here to Yamunotri (6kms). Either by walk or by horse or by Doli at own cost. The trek passes through lush green valley, a profusion of conifers, rhododendrons, cacti and several species of Himalayan shrubs.<br />
<br />
Arr. Yamunotri, One can cook rice by packing it in a cloth and dipping it in the hot water of the hot kund. Pilgrims take this cooked rice home as “Prasad”. Here near the temple “Pooja” can be offered to Divya Shila, After taking bath in JamunabaiKund’s warm water and having “Darshan” of pious “Yamunaji” returning to Jankichatti. Return back to 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 />
<br />
Yamunotri Weather – In summer the maximun temp 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 4:</b> Barkot – Uttarkashi (100kms/4hr) HT: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 SkundaPuran, 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 cms. 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 5:</b> Uttarkashi – Gangotri – Uttarkashi (100kms/3-4 each side) HT : 3048 MTS.
										</p>
										<p class="aj">Early morning (packed breakfast) drive to Gangotri, enroute at Gangnani take a holy dip in GaramKund, 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 6:</b> Uttarkashi – Guptkashi (220kms/8-9hr) HT : 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 ArdhNarishwar 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.<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 7:</b> Guptkashi – Kedarnath (30kms by road & 19kms Trek)
										</p>
										<p class="aj">Morning after breakfast departure for Kedarnathdham. Enjoy KedarnathDarshan& back your hotel. Overnight stay at Kedarnath.<br />
<br />
By Helicopter: Morning our driver will transfer you your prebook Helipad. You can inform driver about your arrival time whether it will by helicopter or by trek, so that Driver will be there to pick you up. (note: helicopter ticket is not included in this package).<br />
<br />
By Trek: Morning our driver will drop you at Sonprayag then you have to take local jeep for Gaurikund& then your trek strat for kedarnathji. After darshan you follow same & back to Sonpraag. There is big parking issue so driver will back tp other palace if his contact no. in not working then you have to arrange other taxi or wait for your 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.<br />
<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 8:</b> Kedarnath – Guptkashi (19Kms Down Trek & 30kms/1hr by Road)
										</p>
										<p class="aj">Morning after Pooja & breakfast, you can check out of Kedarnath hotel start your journey back to Sonprayag. Our driver will be there at designated place which was discussed with you. Drive back to Guptkashi hotel for night stay.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 9:</b> Guptkashi – Badrinath (215kms/7hr) HT : 3133 MTS.
										</p>
										<p class="aj">Morning after breakfast, drive to Badrinath. Check in to the hotel arrival in Badrinath. Pilgrims after having a bath in the Taptkund have the Darshan of Badrivishal&Aarti in evening. Brahamakapal is significant for PinddanShraddh 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 />
Mana Village : Inhabited by an Indo-Mongolian tribe, it is the last Indian village before Tibet.<br />
<br />
Vasundhara : As the name suggests, vasundhara is a magnificent water fall. This place is 5 kms. fromBadrinath out of which 2 kms. ismotorableupto Mana.<br />
<br />
BhimPul : 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 />
<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 10:</b> Badrinath – Joshimath – Rudraprayag (160kms)
										</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 />
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 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> 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. Check in Hotel. Later visit Rishikesh Temples & Sight Seeing – LaxmanJhulla, Ram Jhulla. Overnight stay at Haridwar.</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 12:</b> Haridwar – Delhi (220kms/6-7hr)
											</p>
											<p class="aj">Morning after breakfast, drive for Delhi. Dropping at Delhi airport / station / home / hotel. Tour concludes.</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>AP (Room + Breakfast + Lunch + Dinner)</li>
																						<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																				<li>Hotel accommodation as per package same or similar hotels</li><li>
Breakfast + Dinner</li><li>
Transfers and sightseeing as per package taken</li><li>
All toll tax, parking, fuel and driver allowances</li><li>
All applicable hotel and transport taxes.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>GST will be extra.</li><li>
Anything not mentioned under ‘Package Inclusions’</li><li>
All personal expenses, optional tours and extra meals.</li><li>
Medical and travel insurance.</li><li>
Any kind of entry fees anywhere if not mentioned in including.</li><li>
Tips, travel insurance, medical insurance, laundry charges, liquors, mineral water, telephone charges.</li><li>
All items of personal nature.</li><li>
Porter, pony, horse, cable car, boat, train tickets, air tickets charges.</li><li>
Helicopter Ticket Cost and VIP Ticket for KedarnathDarshan is not included</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>50% at the time of Reservation.</li><li>
Pay rest amount  after getting the confirmation voucher.</li></ul>					
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								Please read emails carefully and understand the contents and prices. All the email conversations will be also part of your contract with us once you make the booking.
Please take care of the belongings before leaving the car or Hotels. Company is not responsible for any loss.
As per the directive given by the Government of India, all Indian/Foreign Nationals are required to provide proper proof of identification upon check-in. Valid identifications documents are: Passport & Visa together, Voters Id card, Current Driving License. All the documents must include a photograph.
Hotel / camps or any kind of accommodation can deny stay if valid id proof is not provided. Company is not responsible for any ID proof related issues.
For extra adult many hotels provide extra mattress also instead of extra bed. Kindly inform us in advance if you prefer only extra bed instead of extra mattress.
It is presumed that the tourist is medically fit to undertake the tour. If you have certain kind of allergy (especially for food) or any serious health issues kindly inform us in advance.
Many small hotels / resorts do not have lift so kindly inform us in advance if you are not comfortable with stairs.
Generally hotel check in time is 14:00 hrs and checkout time is 11:00 hrs across India. Confirm early check in or late checkout will be chargeable if not included in cost. Kindly contact hotel directly if you want complimentary early check in or late checkout.
Many hotels charge extra for room heater or wifi. Normal package does not include this so in that case these charges should be paid at hotels.
If meals are included in package it will be served at set menu basis in a buffet menu / fixed / meal credit. Any items which are not in their in ideal Buffet / Fixed menu will be charged extra at the time of consumption.
Hotelsdecide the menu and options of items for menu. Some hotels having Meal credit policy instead of Buffet or Fixed Menu during low occupancy in hotel – This meal credit amount is decided by hotel management – if bills goes above the given meal credit amount then extra amount should be paid directly at respective hotel. Room service for the food or packing is charged extra at many hotels.
Due to any reason if Vehicle breakdown due to technical reasons we will try our best to arrange another vehicle as soon as possible for the major problems. For minor problems which will not take much time vehicle will be repaired. In these conditions we expect your cooperation.
We shall not be responsible for any delays & alterations in the program or expenses incurred directly or indirectly due to natural hazards, flight cancellations, accident, breakdown of transport, weather, sickness, landslides, closures/blockades due to political unrest or any such incidents.
AC will not work in all hill areas or stopped / parked vehicle.
Driver will not drive on Noentry zones and should not be forced to drive on narrow streets or roads which can create traffic jam. Normal working hours of driver is 12 hrs in case you want services more than 12 hours in a day kindly inform us in advance.
In some hill area roads driving after sunset and music is not allowed due to risk of life. Kindly cooperate for the same.
Pick up and drop point will be one only (If multiple pickups and drop please mentions email conversation before booking)
In case you want multiple visit to the some particular place kindly mention in advance because some places are having very high charges of parking.
Tour destination / route cannot change without prior notice (Amended route and tour Destination rates may be change)
The rates are subject to change, depending on the fluctuation of diesel/Petrol prices in India. If the prices increased more than 5 % than the time of booking we will increase the rate even if the rates are confirmed earlier.
We reserves the right to give you a similar car if the car you booked is unavailable.
At many of the tourist destination / hill station some of the road / shopping market / mall road have “NO ENTRY” for all / some bigger tourist vehicles depends on destination along with time restrictions also. In that kind of situation guest have to manage another available mode of transport with an additional cost and on direct payment basis, this cost is not included in ideal package inclusion.
Sometimes vehicle parking area is on a little distance from the sightseeing spots. Guests need to reach the parking at their own cost.
Vehicle will be permitted to use for sightseeing points on the route and inside the city limits or which is mentioned in itinerary. For additional sightseeing, off route sightseeing, sightseeing not inside the city limits or substitute sightseeing kindly contact company. Refund is not possible if any particular sightseeing point is not covered. In case you want some excursions kindly inform company in advance or discuss these things with company rather than driver. All nearby sightseeing points should be covered together. However in case of sometime issues with some particular place we can adjust.
No refund for short stay or unveiled facilities.
No cancellation or any refund will be made if situation is beyond our control, such as bad weather, landslide, climatic conditions or any other natural disaster, fire, any embargo, acts or decisions of government, political or national crisis, road blocks, heavy snow fall, acts of terrorism or other similar causes, strikes or problems at airlines, railways, buses, hotels or transporters, labor unrest, insolvency, business exigencies, operational and technical issues, route and flight cancellations or due to which the customer could not reach the destination and which is beyond our control.
Company is not responsible for any accident/injury/death/theft of person or property during the course of the tour.
All rights reserved to management to cancel any service without any refund until full advance money towards the service is received from the customer and accepted by company. Company can change the features or functionality of the services at any time, without any notice.								</div>
												
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</div>
												<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>30 days prior to arrival: 25% of the Tour / service cost</li><li>
15 days prior to arrival: 50% of the Tour / service cost</li><li>
72  hours prior to arrival OR No Show: No Refund</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelroutes.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Chardham Package 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="192570"/>
						</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.travelroutes.in/kutch-tour-packages.htm" title="Kutch Tour Packages">Kutch</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/bhuj-tour-packages.htm" title="Bhuj Tour Packages">Bhuj</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/ho-chi-minh-city-tour-packages.htm" title="Ho Chi Minh City Tour Packages">Ho Chi Minh City</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/mandvi-tour-packages.htm" title="Mandvi Tour Packages">Mandvi</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/siem-reap-tour-packages.htm" title="Siem Reap Tour Packages">Siem Reap</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/ahmedabad-tour-packages.htm" title="Ahmedabad Tour Packages">Ahmedabad</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/ha-noi-tour-packages.htm" title="Ha Noi Tour Packages">Ha Noi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/junagadh-tour-packages.htm" title="Junagadh Tour Packages">Junagadh</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/gandhidham-tour-packages.htm" title="Gandhidham Tour Packages">Gandhidham</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/singapore-city-tour-packages.htm" title="Singapore Tour Packages">Singapore</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.travelroutes.in/my-tho-tour-packages.htm" title="My Tho Tour Packages">My Tho</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.travelroutes.in/dwarka-tour-packages.htm" title="Dwarka Tour Packages">Dwarka</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.travelroutes.in/somnath-tour-packages.htm" title="Somnath Tour Packages">Somnath</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.travelroutes.in/porbandar-tour-packages.htm" title="Porbandar Tour Packages">Porbandar</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.travelroutes.in/ha-long-tour-packages.htm" title="Ha Long Tour Packages">Ha Long</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.travelroutes.in/gondal-tour-packages.htm" title="Gondal Tour Packages">Gondal</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.travelroutes.in/rajkot-tour-packages.htm" title="Rajkot Tour Packages">Rajkot</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.travelroutes.in/chitwan-tour-packages.htm" title="Chitwan Tour Packages">Chitwan</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.travelroutes.in/gangotri-tour-packages.htm" title="Gangotri Tour Packages">Gangotri</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.travelroutes.in/uttarkashi-tour-packages.htm" title="Uttarkashi Tour Packages">Uttarkashi</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.travelroutes.in/gandhinagar-tour-packages.htm" title="Gandhinagar Tour Packages">Gandhinagar</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.travelroutes.in/pokhara-tour-packages.htm" title="Pokhara Tour Packages">Pokhara</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.travelroutes.in/goa-city-tour-packages.htm" title="Goa City Tour Packages">Goa City</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.travelroutes.in/badrinath-tour-packages.htm" title="Badrinath Tour Packages">Badrinath</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.travelroutes.in/wattens-tour-packages.htm" title="Wattens Tour Packages">Wattens</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.travelroutes.in/palitana-tour-packages.htm" title="Palitana Tour Packages">Palitana</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.travelroutes.in/butwal-tour-packages.htm" title="Butwal Tour Packages">Butwal</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.travelroutes.in/can-tho-tour-packages.htm" title="Can Tho Tour Packages">Can Tho</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.travelroutes.in/nagarkot-tour-packages.htm" title="Nagarkot Tour Packages">Nagarkot</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.travelroutes.in/mundra-tour-packages.htm" title="Mundra Tour Packages">Mundra</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.travelroutes.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelroutes.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(18)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</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:62:"Book Chardham Package Tour - 11 Nights / 12 Days Tour Packages";i:2;s:233:"book chardham package tour - 11 nights / 12 days tour packages, religious & pilgrimage tour packages, new delhi, haridwar, kedarnath, badrinath, yamunotri, gangotri, joshimath, rudraprayag, uttarkashi, barkot, dungarpur tour packages";i:3;s:280:"Book Chardham Package Tour - 11 Nights / 12 Days tour packages from Travel Routes - Get attractive 11 Nights / 12 Days Religious & Pilgrimage  tour packages for  New Delhi, Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Joshimath, Rudraprayag, Uttarkashi, Barkot, Dungarpur.";i:4;s:823:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Joshimath, Rudraprayag, Uttarkashi, Barkot, Dungarpur"        
		                 },
		      "description": "Hotels Included

Destination	Hotels / Similar

Haridwar	        Holy Basil /Similar
Barkot	         Inder Palace /Similar
Uttarkashi	Shiv Ganga View /Similar
Guptkashi	Hotel Robin/Similar
Kedarnath	Govt. Tent ( Without Meal)
Badrinath	Hotel Urvashi /Similar.
Srinagar	Hotel Samrat/ Hotel Deluxe/Similar.",
		      "name": "Chardham Package Tour",
		      "telephone": "+91-9586348300"
		    }
		    </script>
			";i:5;N;}