a:6:{i:0;s:15293:"				<div class="h1"><h1>Jomolhari Trek Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.exoticvacationsbhutan.biz/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.exoticvacationsbhutan.biz/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Jomolhari Trek Package</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Tour Code </td>
						<td class="p5px pl0px vat">03</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						12 Nights / 13 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Thimphu</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						USD 4275 Per Person						</td>
						</tr>
												<tr>
						<td class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">15% discount will be offered to those who contact directly</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.exoticvacationsbhutan.biz/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Jomolhari Trek Package - 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="126816"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
										</tr>
					</table>
					</div>
					<br />
					
					15% discount will be offered to those who contact directlyAir Tickets,Guide and Driver tips and Personal expenses13-0431-12<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 PARO INTERNATIONAL AIRPORT
								</p>
								<p class="aj">Upon arrival at Paro International airport, you will be welcomed by our company representative and the tour guide will receive and escort you to designated Hotels in Paro. In the afternoon drive to the ruins of the 17th Century Drukgyel Dzong, an historic monument built by the Zhabdrung to commemorate his victory against invading Tibetans in 1644. In fine weather the towering peak of the sacred Mount Jomolhari (7314m) appears as a stunning backdrop. On the return drive to Paro, visit 7th Century Kyichu Lhakhang, one of the 108 temples constructed by the Tibetan king Songtsen Gampo. Overnight at Paro.</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> HIKE TO PARO TAKTSHANG
								</p>
								<p class="aj">Hike to Tiger's Nest, one of the most sacred Taktshang monasteries in Bhutan. It is perched on the cliff where Guru Rinpoche is said to have flown to the site riding on a tigress. He subsequently meditated here for three months. You can have lunch at the Taktshang cafeteria from where you get a spectacular view of the monastery.<br />
<br />
In the afternoon drive to the ruins of the 17th Century Drukgyel Dzong, an historic monument built by the Zhabdrung to commemorate his victory against invading Tibetans in 1644. In fine weather the towering peak of the sacred Mount Jomolhari (7314m) appears as a stunning backdrop. On the return drive to Paro, visit 7th Century Kyichu Lhakhang, one of the 108 temples constructed by the Tibetan king Songtsen Gampo. Overnight at Paro.</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> GUNITSAWA VILLAGE - SHARNA ZAMPA
								</p>
								<p class="aj">This trek begins at Gunitsawa Village were you pass the army post. At the army checkpost your trek permit (provided by your tour operator) will be checked and endorsed. The campsite is on the opposite side of the river, not far from Gunitsawa.</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> SHARNA ZAMPA - THANGTHANGKHA
								</p>
								<p class="aj">On this long day, the trail continues with lots of small ups and downs. After going uphill through the river valley the valley finally narrows gradually to a mere path which descends to a meadow where a camp will be set up. From here, if weather permits, you will have the first great view of Mt. Jomolhari.</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> THANGTHANGKHA - JANGOTHANG
								</p>
								<p class="aj">If you did not see Mt. Jomolhari the previous evening, you will still have a chance to get a great view early this morning. This morning the trek continues up the Paro Chhu valley which widens into patches of alpine meadow and scanty growths of forest. You will cross an army checkpoint along the way and enjoy a spectacular view of high mountain ridges and snow-capped peaks. In this area yaks and their herder's homes become a regular feature of the landscape. Passing the villages Soe, Takethang and Dangochang is another asset on this day. After reaching Jangothang, one of the most beautiful campsites of the Himalayas, you will again have a spectacular view of Mount Jomolhari.</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> JANGOTHANG HALT
								</p>
								<p class="aj">The rest day in Jangothang provides plenty of possibilities for day hikes with great views of lakes and snow capped mountains such as Jomolhari and Jichu Drake. There are good chances to spot some blue sheep on the upper slopes of the valley. Jangothang is a perfect environment for your acclimatization. You can also trek up to Tosoh or hike around the area. There are good short hiking trails in three directions. Jomolhari and its subsidiary mountain chains lie directly west, Jichu Drake to the north and there are a number of unclimbed peaks to the east.</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> JANGOTHANG - LINGSHI
								</p>
								<p class="aj">The trail leads to a last settlement in the valley and drops to the Paro Chhu. Passing the lake of Tshophu (4,380m) you will climb up steeply to Bhonte La pass at 4,890 m, the highest point of this trek route. Reaching the Dhumzo Chhu river, you trek downstream passing the few houses of Soi Yaktsa (Dhumzo) to arrive at your camp soon after.</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> LINGSHI - SHODU
								</p>
								<p class="aj">The trail climbs up to the Yelila pass at an altitude of 4,930m. From the pass, on a clear day you will get an excellent view of Jumolhari, Tserimgang and Masanggang. The trek from the pass to the campsite at Shodu is a steep downhill.</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> SHODU - BARSHONG
								</p>
								<p class="aj">The trail follows the Thimphu Chhu through rhododendron forests, past beautiful waterfalls along the way. The valley narrows till the path takes to the slopes and gradually ascends to the ruins of Barshong Dzong.</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> BARSHONG - DOLAM KENCHO
								</p>
								<p class="aj">The trail descends down to the Thimphu Chhu river valley, through dense forests of rhododendron, birch, conifer, maples and bamboos and then ascends to pasture lands. The camp is in a meadow.</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> DOLAM KENCHO - DODENA
									</p>
									<p class="aj">The trail follows the Thimphu Chu through dense rhododendron forest before emerging into pastureland. We climb to a mountain meadow at about 3428 m and over a small pass. Then drops steeply down to the river, following it southward to the road head at Dodena. Bhutan Tour and Treks vehicle will be waiting to collect us. Overnight at Thimphu.</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> THIMPHU SIGHTSEEING
									</p>
									<p class="aj">We will start our sightseeing tour visiting Memorial Chorten built in memory of the 3rd King Jigme Dorji Wangchuck who reigned the Kingdom from 1952-1972. Visit the National Library where ancient manuscripts are preserved. Further, we will visit the Zorig Chusum - 13 Arts & Crafts Institute where traditional arts and crafts are still kept alive. The visitors can see students of different trades at work like: Sculpting, Thanka Painting, Wood Carving and other skills. Afternoon we will drive Paro. In the evening free for a leisure walk to explore Paro districts to experience the Bhutanese way of life.</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 13:</b> DEPART PARO
									</p>
									<p class="aj">The guests will be Seen Off by a Representative of our company and the Tour Guide at the Exit Gate. Wish Bon Voyage!!!</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>2 Star Hotel</li>
																		<li>3 Star Hotel</li>
																		<li>4 Star Hotel</li>
																		<li>5 Star Hotel</li>
																		<li>Meals</li>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Transfers</li>
																		<li>Airport Pickup-Drop</li>
																		<li>Private Cab</li>
																		<li>Private Guides</li>
																		<li>Entry Tickets</li>
																		<li>Sim Card</li>
																		<li>Bus Transfer</li>
																		<li>Cab Transfer</li>
																		<li>Stay Included</li>
																		<li>Non Veg Meals</li>
																		<li>Veg Meals</li>
																		<li>Veg & Non Veg Meals</li>
																<li>Services included all above</li>
													</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Air Tickets,Guide and Driver tips and Personal expenses</li></ul><br />
												<p class="large b mb5px dif">Specific Departure Dates :</p>All Seasons awaits<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.exoticvacationsbhutan.biz/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Jomolhari Trek Package - 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="126816"/>
						</form>
						</div>
						
						";i:1;s:63:"Book Jomolhari Trek Package - 12 Nights / 13 Days Tour Packages";i:2;s:114:"book jomolhari trek package - 12 nights / 13 days tour packages, hill station tour packages, thimphu tour packages";i:3;s:154:"Exotic Vacations Bhutan offers Jomolhari Trek Package - 12 Nights / 13 Days tour package, budget Hill Station tour packages for Thimphu at exciting price.";i:4;s:523:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Thimphu"        
		                 },
		      "description": "15% discount will be offered to those who contact directlyAir Tickets,Guide and Driver tips and Personal expenses13-0431-12",
		      "name": "Jomolhari Trek Package",
		      "telephone": "+975-77685791"
		    }
		    </script>
			";i:5;N;}