a:6:{i:0;s:39750:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Amazing Ladakh Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.saishraddhatours.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.saishraddhatours.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> Amazing Ladakh 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>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Leh Ladakh</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="https://www.saishraddhatours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing Ladakh 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="39343"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_8/236813/79309.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/236813/79309.jpg"  width="150" height="150"    alt="Amazing Ladakh Tour" title="Amazing Ladakh Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_8/236813/79310.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/236813/79310.jpg"  width="150" height="150"    alt="Amazing Ladakh Tour" title="Amazing Ladakh Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_8/236813/79311.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/236813/79311.jpg"  width="150" height="150"    alt="Amazing Ladakh Tour" title="Amazing Ladakh Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_8/236813/79312.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/236813/79312.jpg"  width="150" height="150"    alt="Amazing Ladakh Tour" title="Amazing Ladakh Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_8/236813/79313.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_8/236813/79313.jpg"  width="150" height="150"    alt="Amazing Ladakh Tour" title="Amazing Ladakh 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>
													
								3.50% Government service tax extra.<br />
Any Kind of Personal Expenses or Optional Tours / Extra Meals Ordered<br />
Monument & Museum Entrance Fees for the sights mentioned in the Itinerary.<br />
Anything not specifically mentioned under the head “Prices included”.<br />
Tips, Insurance, Laundry, Phone Calls<br />
The Services of Vehicle is not included on leisure days & after finishing the sightseeing tour as per the Itinerary<br />
Any Kind of Drinks (Alcoholic, Mineral, Aerated)<br />
Camera fee, Soft or Hard drinks, Starters.<br />
Medical & Travel insurance<br />
Additional costs due to flight cancellation, road blocks etc. Cost incidental to any change in the itinerary/ stay on account of flight cancellation due to bad weather, ill health, roadblocks and/or any factors beyond control.01-0630-09								</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> Arrive in Leh
										</p>
										<p class="aj">Fly in to Leh. SaiShraddha Tours representative will assist you at the Airport on arrival. Get aboard the waiting vehicle and transfer to hotel. Check-in at the hotel. Complete day for rest and leisure to acclimatize. Evening Visit to Leh Market & Shanti Stupa. Dinner and stay overnight at the Hotel.</p>					
											<p><b>Meals : </b> Dinner</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> Leh
										</p>
										<p class="aj">Post breakfast we drive towards Kargil road and start our sightseeing with Hall of Fame near Leh is worth a visit for every citizen. It is a glorious museum constructed by Indian army. Visit to Kali Mata Temple and Spituk Gompa of Ladakh which dates back to the 11th century. It owes its inception to Od-de, the elder brother of Lha Lama Changchub Od. Od-de led to the establishment of a monastic community at this place.<br />
<br />
A three-chapel monastery, Spituk is located at a distance of approximately 8 km from the town of Leh. Gurudwara Patthar Sahib Nestled deep in the Himalayas, which was built by the Lamas of Leh in 1517 to commemorate the visit of Guru Nanak Dev.<br />
<br />
A drive of another 4 km took us to Magnetic Hill which defies the law of gravity. It has been noticed that when a vehicle is parked on neutral gear on this metallic road the vehicle slides up & further Driving through a picturesque landscape we reached the confluence of the Indus and Zanskar river 4 km before Nimmu village.Return to the hotel, dinner and stay overnight at the Hotel.</p>					
											<p><b>Meals : </b> Breakfast & Dinner</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> Leh to Nubra Valley (125 km/approx. 6 hours)
										</p>
										<p class="aj">After an early breakfast we drive to NUBRA VALLEY leads through KHARDUNG-LA the highest motorable road in the world at 18,390 ft, around 39kms from Leh. Nubra Valley is popularly known as Ldorma or the valley of flowers. It is situated to the North of Ladakh between the Karakoram and Ladakh ranges of the Himalayas.Afternoon visit to Hunder Monastery, Hunder is one of the remote villages in the Ladakh district of India's northernmost State of Jammu and Kashmir (Kashmir). Lying close to the border between India and  Pakistan in the north-western part of Ladakh, the village of Hunder comprises settlers that include Ladakhis and Tibetans. Visit   SAND DUNES to enjoy a camel safari (Optional on direct payment basis). Overnight stay (Tented Camp with attached toilet).</p>					
											<p><b>Meals : </b> breakfast & dinner</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> Nubra Valley to Leh
										</p>
										<p class="aj">After your breakfast at the camp, visit to Diskit Monastery en route to Leh. The Diskit Gompa of Leh Ladakh dates back to the 14th century and owes its inception to Changzem Tserab Zangpo, a disciple of Tsong-kha-pa. At the heart of Diskit Monastery is an elevated cupola, which stands adorned with a beautiful fresco that illustrates the Tashilhunpo Gompa of Tibet. There are a number of shrines inside the monastery's complex, like Kangyu-lang, Tsangyu-lang, etc. Also, hundreds of Mongolian and Tibetan texts have found their storehouse inside these temples. Diskit Gompa has quite an interesting legend attached to it. It is believed that a Mongol demon once lived here and was considered to be a sworn enemy of Buddhism. Afternoon rest and relax or take a walk to the local market. Overnight at hotel.</p>					
											<p><b>Meals : </b> Breakfast & Dinner</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> Drive from Leh to Pangong Lake
										</p>
										<p class="aj">After an early breakfast we leave for Pangong Lake en-route visiting Shey Palace, The ancient capital of Ladakh & Thiksey an impressive complex rising tier upon tier on a hill above the village and carry on further towards Pangong through Changla pass which is 5380 Mtrs. Pangong Lake, situated at 14,000 feet (4,267 m). A long narrow basin of inland drainage, hardly six to seven kilometer at its widest point and over 130km long, it is bisected by the international border between India and China. A few years back the government decided to open it to tourists though the lake and its surrounding is under army surveillance.<br />
<br />
Enjoy the landscape in the back drop of the Lake. Lunch at Pangong. One rarely feels so close to nature and environment and the scenery is unforgettable. Evening is at leisure.Dinner and overnight stay at Pangong  (Tented Camp with attached toilet).</p>					
											<p><b>Meals : </b> Breakfast & Dinner</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> Pangong Lake to Leh
										</p>
										<p class="aj">Morning at leisure to explore the beauty of lake and drive back to leh en-route visiting Hemis Gompa, the largest monastic foundation of Drukpa Kagyu Order of Tibetan Buddhism. Drive further to Leh and check in at your hotel, Overnight.</p>					
											<p><b>Meals : </b> Breakfast & Dinner</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> Leh
										</p>
										<p class="aj">Complete day is at leisure for last day personal activities and shopping. Dinner and Overnight at hotel.</p>					
											<p><b>Meals : </b> Breakfast & Dinner</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> Depart Leh
										</p>
										<p class="aj">Early morning, transfer to the airport. Depart from Leh to Delhi by flight. Upon arrival in Delhi, board a connecting flight for your place.Tour Ends. Imp Note - The Nationals of China, Hong King, Taiwan & Afghanistan, Bangladesh, Pakistan, Sri Lanka, Burma are not allowed to visit restricted areas in Ladakh Region, Hence these packages are not applicablefor the above stated nationals.</p>					
											<p><b>Meals : </b> Breakfast & Dinner</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																	<div class="headHr">
						            <p class="p7px b pl10px xlarge">Hotel Detail : </p>
						            </div>
																			<div class="data lh13em p20px aj mb7px">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px"><p class="fr lh0">
										
																					<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																						<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																						<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																						<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																						<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																						<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																						<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																					
										</p>
										<div class="mb5px">
										<h2 class="dif b xxlarge">03 Roses</h2>
										</div>
										<p class="cb"></p>
										<p><b>Address :</b> Leh Ladakh, Jammu & Kashmir, India</p>
										<p><b>Facility :</b> </p>
										<div class="mt7px">Three Roses Hotel is one of superb hotel which present luxurious and comfortable leh accommodation. Three roses leh is located 3.5 km from Airport & Walking Distance from main Market. It is complete holiday hotel with all modern facility. Hotel Three Roses Present 18 Deluxe rooms with Attached bath with shower, running hot and cold water. Cable T. V. & Telephone in every room, Parking Facilities, Beautiful Garden. At hotel Taxi, Jeep, Car is available for Local Sight Seeing as well for longer trips. Hotel provide some other services like Doctor on Call, Laundry Service, WI - FI facility, STD / ISD / FAX / E -mail.</div>
										</td>
										
																				
										</tr>
										</table>
										</div>
																			<br />
																	<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Sightseeing</li>
																						<li>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>3.50% Government service tax extra.</li><li>
Any Kind of Personal Expenses or Optional Tours / Extra Meals Ordered</li><li>
Monument & Museum Entrance Fees for the sights mentioned in the Itinerary.</li><li>
Anything not specifically mentioned under the head “Prices included”.</li><li>
Tips, Insurance, Laundry, Phone Calls</li><li>
The Services of Vehicle is not included on leisure days & after finishing the sightseeing tour as per the Itinerary</li><li>
Any Kind of Drinks (Alcoholic, Mineral, Aerated)</li><li>
Camera fee, Soft or Hard drinks, Starters.</li><li>
Medical & Travel insurance</li><li>
Additional costs due to flight cancellation, road blocks etc. Cost incidental to any change in the itinerary/ stay on account of flight cancellation due to bad weather, ill health, roadblocks and/or any factors beyond control.</li></ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Specific Departure Dates</p>
								</div>
								
								June: 25<br><br />
July: 9, 23, 30<br><br />
Aug: 6, 13, 23								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Departure Cities with rates</p>
								</div>
								Delhi: Rs40990/-<br>
Mumbai: Rs47990/-<br>
Chennai: Rs48990/-<br>
Kolkata: Rs47990/-								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p>General Terms and Conditions for holidays in India, Nepal and Bhutan

<p><strong>Advance Booking Fee</strong> 

<table border="0" cellpadding="0" cellspacing="0" style="width: 500px;" width="500">
	<tbody>
		<tr>
			<td style="height: 20px;">
			<p>30 days or more before departure:
			</td>
			<td style="height: 20px;">
			<p>25% of total cost
			</td>
		</tr>
		<tr>
			<td style="height: 21px;">
			<p>30-15 days before departure:
			</td>
			<td style="height: 21px;">
			<p>50% of total cost
			</td>
		</tr>
		<tr>
			<td style="height: 20px;">
			<p>Less than 15 days before departure:
			</td>
			<td style="height: 20px;">
			<p>100% of total cost
			</td>
		</tr>
		<tr>
			<td colspan="2"> </td>
		</tr>
	</tbody>
</table>

<p><strong>Introducing the hold and pay plan!</strong>

<p style="margin-left: 27pt;">&middot;         You can now book this package online by paying just Rs.500 per person.

<p style="margin-left: 27pt;">&middot;         Soon after your booking, you will shortly receive a call from our call centre executive to brief you on the balance payment plan.

<p style="margin-left: 27pt;">&middot;         We will hold your booking for 48 hours without any additional payment. Any price fluctuations within 48 hours will not be charged/refunded.

<p style="margin-left: 15pt;"><strong>Important</strong>: The booking stands liable to be cancelled if 100% payment is not received less than 20 days before date of departure.

<p> 

<p><strong>Cancellation Policy</strong> 

<p><strong>If You Cancel Your Holiday :</strong>

<p style="margin-left: 15pt;">&middot;         You or any member of your party may cancel their travel arrangements at any time. Written notification or an e-mail to that effect from the person who made the booking must be received at our office. The cancellation charges applicable are as per the published cancellation policy below: <br />
 

<table border="0" cellpadding="0" cellspacing="0" style="width: 500px;" width="500">
	<tbody>
		<tr>
			<td style="height: 20px;">
			<p><strong>Cancellation charges per person</strong>
			</td>
		</tr>
		<tr>
			<td style="height: 20px;">
			<p>30 days or more before departure:
			</td>
			<td style="height: 20px;">
			<p>25% of total cost
			</td>
		</tr>
		<tr>
			<td style="height: 21px;">
			<p>29-30 days before departure
			</td>
			<td style="height: 21px;">
			<p>50% of total cost
			</td>
		</tr>
		<tr>
			<td style="height: 20px;">
			<p>Less than 19 days before departure
			</td>
			<td style="height: 20px;">
			<p>100% of total cost
			</td>
		</tr>
	</tbody>
</table>


 

<p style="margin-left: 15pt;">&sect;  In case you reserve your booking by paying Rs.500 per person, the same will be non-refundable in case you do not pay the remaining amount or cancel your holiday.

<p style="margin-left: 15pt;">&sect;  In case the booking is for a group of more than 8 travelers, the cancellation charges may be up to the total cost of the package, depending on the supplier penalties.

<p> 

<p><strong>If We Change or Cancel Your Holiday :</strong>

<p style="margin-left: 15pt;">&middot;         We do plan the arrangements in advance. It is unlikely that we will have to make any changes to your travel arrangements. Occasionally, we may have to make changes and we reserve the right to do so at any time. If there are any changes, we will advise you of them at the earliest possible date. We also reserve the right under any circumstances to cancel your travel arrangements by assigning reasons to you.

<p style="margin-left: 15pt;">&middot;         If we are unable to provide the booked travel arrangements due to reasons beyond our control (e.g. bad weather):

<p style="margin-left: 30pt;">&middot;          

<p style="margin-left: 30pt;">&middot;         We shall first try to offer alternative dates for the tour if the tour hasn&rsquo;t already commenced.

<p style="margin-left: 30pt;">&middot;         If the tour has already commenced, then we shall refund the booking price/fee charged to you on a pro-rata basis depending on the portion of the tour utilized by you.

<p style="margin-left: 30pt;">&middot;         In all circumstances, however, our liability shall be limited to refunding to you the price we charged as tour fees.


<strong>If you want to change your holiday plan</strong> 

<p style="margin-left: 15pt;">&middot;         After confirmation of services, if you wish to change your travel arrangements in any way (e.g. your chosen departure date or accommodation), we will do our utmost to make these changes but it may not always be possible. Any request for changes must be in writing from the person who made the booking. All cost incurred due to amendment will be borne by you.


<strong>If you have a complaint</strong> 

<p style="margin-left: 15pt;">&middot;         If you face any problem during your holiday, please inform the relevant supplier (e.g. your hotelier, transporter etc.) and/or our representative immediately who will endeavour to set things right. If your complaint is not resolved locally, please follow this up within 28 days of your return home by writing to us, with your booking reference and all other relevant information. However, please be advised that while we are happy to assist you in the redressal of your complaint, if any, we will be able to extend only our best efforts in managing/coordinating your complaint with the respective service provider. All third party service providers are independent contractors who are at no time under our control or supervision.

<p><strong>All booking vouchers and tickets will be provided 3 days before departure.</strong>


<strong>Our liability</strong> 

<p style="margin-left: 15pt;">&middot;         In case any promised travel arrangements are not provided by SaiShraddha Tours&rsquo;s employees or agents as promised, we will compensate you up to the limit of the cost of such arrangements.

<p style="margin-left: 15pt;">&middot;         SaiShraddha Tours does not accept any responsibility for third party services or service providers like hotels, transport etc. For example, transporters are responsible for travel delays while hotels are responsible for inefficient service or lack of hospitality.

<p style="margin-left: 15pt;">&middot;         SaiShraddha Tours is only a tour operator. At no time shall SaiShraddha Tours be held responsible for your acts of misdemeanour/omission and your personal affairs. For example, SaiShraddha Tours shall not be held responsible for ensuring the safety of your personal belongings, travel documents, etc. at any time before, during or after the holiday.


<strong>Holiday Insurance</strong> 

<p style="margin-left: 15pt;">&middot;         You are requested to purchase your own travel or holiday insurance. SaiShraddha Tours shall not be held responsible for this service.


<strong>Exactness Not Guaranteed</strong> 

<p style="margin-left: 15pt;">&middot;         SaiShraddha Tours cannot and does not guarantee the exactness of any service in the package. For example, photographs of the interiors of hotel rooms posted on our website have been provided by the respective hotels. Hence, SaiShraddha Tours does not guarantee the visual appeal of your room. SaiShraddha Tours wants you to have an enjoyable experience but we cannot and do not guarantee or represent that such a package will be as per your perception or imagination.


<strong>General Notes</strong> 

<p style="margin-left: 15pt;">&middot;         SaiShraddha Tours will inform you of any change in prices and only after your confirmation, will we proceed with the booking. There will be no reduction in cost for any unutilised service.

<p style="margin-left: 15pt;">&middot;         Surcharges may be applicable over and above the package cost for the requested period. SaiShraddha Tours will inform you of such costs at the time of booking or before confirmation.

<p style="margin-left: 15pt;">&middot;         You need to make an advance payment at the time of confirming the tour and make the balance payment 35 days prior to the departure of the tour.


<strong>Forfeiture of deposit</strong> 

<p style="margin-left: 15pt;">&middot;         SaiShraddha Tours reserves the right to forfeit the non-refundable, interest-free deposit paid by you in the following situations: a) If you cancel the booking b) If you fail to adhere to the payment schedule c) If you are unable to get the visa of any country d) If you are unable to travel because of sickness, on medical grounds or any other reason. The scale of cancellation charges mentioned under &lsquo;Cancellation Policy&rsquo; shall be applicable and binding.


<strong>Important</strong> 

<p style="margin-left: 15pt;">&middot;         These are the sole and complete terms and conditions governing the tour operations, supplemented only by the User Agreement. No employee of our company or any agent has the authority to amend, modify or change these conditions, and you are advised to rely on the term &quot;as is&quot;. SaiShraddha Tours reserves the right to change or modify these &lsquo;Terms and Conditions&rsquo; at any time without notice.								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.saishraddhatours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing Ladakh 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="39343"/>
						</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="https://www.saishraddhatours.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-jammu.htm" title="Packages in Jammu">Jammu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-amritsar.htm" title="Packages in Amritsar">Amritsar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-katra.htm" title="Packages in Katra">Katra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/packages-in-khajuraho.htm" title="Packages in Khajuraho">Khajuraho</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-baramulla.htm" title="Packages in Baramulla">Baramulla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-kumarakom.htm" title="Packages in Kumarakom">Kumarakom</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-bur-bubai.htm" title="Packages in Bur Dubai">Bur Dubai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-varanasi.htm" title="Packages in Varanasi">Varanasi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-shirdi.htm" title="Packages in Shirdi">Shirdi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-ahmednagar.htm" title="Packages in Ahmednagar">Ahmednagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-ganderbal.htm" title="Packages in Ganderbal">Ganderbal</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-anantnag.htm" title="Packages in Anantnag">Anantnag</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-kalimpong.htm" title="Packages in Kalimpong">Kalimpong</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-nainital.htm" title="Packages in Nainital">Nainital</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-jhansi.htm" title="Packages in Jhansi">Jhansi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/packages-in-pune.htm" title="Packages in Pune">Pune</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="https://www.saishraddhatours.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/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="https://www.saishraddhatours.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/food-drink-holidays-catid.htm" title="Food and Drink Packages">Food and Drink</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.saishraddhatours.com/group-holidays-catid.htm" title="Group Packages">Group</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/caving-holidays-catid.htm" title="Caving Packages">Caving</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.saishraddhatours.com/cruise-holidays-catid.htm" title="Cruise Packages">Cruise</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>
				</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:58:"Book Amazing Ladakh Tour - 7 Nights / 8 Days Tour Packages";i:2;s:114:"book amazing ladakh tour - 7 nights / 8 days tour packages, lakes & rivers tour packages, leh ladakh tour packages";i:3;s:148:"Saishraddha Tours offers Amazing Ladakh Tour - 7 Nights / 8 Days tour package, budget Lakes & Rivers tour packages for Leh Ladakh at exciting price.";i:4;s:1174:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "3.50% Government service tax extra.
Any Kind of Personal Expenses or Optional Tours / Extra Meals Ordered
Monument & Museum Entrance Fees for the sights mentioned in the Itinerary.
Anything not specifically mentioned under the head “Prices included”.
Tips, Insurance, Laundry, Phone Calls
The Services of Vehicle is not included on leisure days & after finishing the sightseeing tour as per the Itinerary
Any Kind of Drinks (Alcoholic, Mineral, Aerated)
Camera fee, Soft or Hard drinks, Starters.
Medical & Travel insurance
Additional costs due to flight cancellation, road blocks etc. Cost incidental to any change in the itinerary/ stay on account of flight cancellation due to bad weather, ill health, roadblocks and/or any factors beyond control.01-0630-09",
		      "name": "Amazing Ladakh Tour",
		      "telephone": "+91-8007232900"
		    }
		    </script>
			";i:5;N;}