a:6:{i:0;s:13918:"				<div class="h1"><h1>Punakha Tshechu (7 Nights/ 8 Days) Tour</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>Punakha Tshechu (7 Nights/ 8 Days) Tour</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">01</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						7 Nights / 8 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Thimphu, Paro, Punakha</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						USD 1930 Per Person						</td>
						</tr>
												<tr>
						<td class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">Special discount is offered to the direct client(those who contract directly) from the above rate.</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="Punakha Tshechu (7 Nights/ 8 Days) 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="114833"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px 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 w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/187406.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/187406.jpg"  width="150" height="150"    alt="Punakha Tshechu (7 Nights/ 8 Days)" title="Punakha Tshechu (7 Nights/ 8 Days)" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/187407.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/187407.jpg"  width="150" height="150"    alt="Punakha Tshechu (7 Nights/ 8 Days)" title="Punakha Tshechu (7 Nights/ 8 Days)" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Special discount is offered to the direct client(those who contract directly) from the above rate.Air Tickets, guide and driver tips,personal expenses.06-1231-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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Arrive Paro  – Thimphu (Altitude: 2320 m) (Distance: 54 km, 1 hr):<br />
<br />
Your Guide from Exotic Vacations Bhutan will receive you at the Airport and drive to Thimphu.<br />
<br />
Visit Tamchog Monastery on the way.<br />
After lunch,<br />
<br />
Changangkha Monastery<br />
Takin Preserve centre<br />
Tashichho Dzong.<br />
Dinner and overnight in Hotel Migmar or similar<br />
<br />
***NOTE: You also have an option for accommodation up gradation in Thimphu.  Please contact us for the up gradation cost.<br />
<br />
Druk Hotel Thimphu  (4 star hotel)<br />
Le Meridien  (5 star hotel)<br />
Hotel Taj Tashi (5 star hotel)<br />
Aman Resorts amankora.com (5 Star Resorts)</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Thimphu Sightseeing: (Altitude 2320 m). After breakfast, visit to:<br />
<br />
National Library<br />
Painting School- Commonly known as Arts & Crafts School or Painting School, the Institute offers a six-year course on the 13 traditional arts and crafts of Bhutan.<br />
National Memorial Chorten – built in 1974 in the memory of Bhutan’s third King, His Late Majesty King Jigme Dorji Wangchuk.<br />
Nunnery- Zilukha nunnery in Drupthob Goemba, Thimphu is biggest nunnery in Bhutan.<br />
After lunch, visit to:<br />
<br />
Buddha Point (Kuensel Phodrang) – visitors can get a good overview of the Thimphu valley from the Buddha point.<br />
Weekend market – Located below the main town, near the Wangchhu River, Thimphu weekend market is by far the largest domestic market for the farmers in Bhutan. .<br />
Dinner and overnight in Hotel Migmar or similar.<br />
<br />
***NOTE: You also have an option for accommodation up gradation in Thimphu.  Please contact us for the up gradation cost.<br />
<br />
Druk Hotel  (4 star hotel)<br />
Le Meridien (5 star hotel)<br />
Hotel Taj Tashi 5 star hotel)<br />
Aman Resorts (5 Star Resorts)</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Thimphu – Punakha: (Altitude 1310 m) (76 Km, 3 hrs drive). After breakfast, drive to Punakha via Dochula Pass (3116 m)<br />
<br />
Dochula – You can see the higher Himalayas, if the weather permits<br />
Royal Botanical Park at Lam Pelri.<br />
Chhimi Lhakhang – dedicated to Lama Drukpa Kuenley also known as “Divine Madman”.<br />
After lunch,<br />
<br />
Punakha Dzong – Built in 1637, by Shabdrung Ngawang Namgyal.<br />
Dinner and overnight in Meri Puensumor similar.<br />
<br />
***NOTE: You also have an option for accommodation up gradation in Punakha.  Please contact us for the up gradation cost.<br />
<br />
Kunzang Zhing Resort (4 star Resort)<br />
Dhensa Boutique Resorts (4 star Resorts)<br />
UMA (5 Star property)<br />
Aman Resorts  (5 Star Resorts)</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Punakha: Attend the festival whole day.<br />
<br />
Dinner and O/N in Meri Puensum or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">05. Punakha – Paro (Altitude 2280 m) (130 km, 4 ½ hrs). After breakfast, return to Punakha Dzong to see more festivities.<br />
<br />
After lunch, drive to Paro. Dinner and overnight in Tashi Namgyal Resort or similar.<br />
<br />
***NOTE: You also have an option for accommodation up gradation in Paro.  Please contact us for the up gradation cost.<br />
<br />
Nak-Sel Resort Boutique Hotel and Spa naksel.com (4 star hotel)<br />
Hotel Zhiwa Ling zhiwaling.com (5 star hotel)<br />
Hotel UMA Paro  comohotels.com/umaparo (5 star hotel)<br />
Aman Resorts amankora.com (5 Star Resorts)</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Day 06. Paro: (Altitude 2280):  After breakfast,<br />
<br />
Ta Dzong (built in1656 and renovated in 1968).<br />
Paro Rimpung Dzong (literally meaning “Heap of Jewels”, built in 1646<br />
After lunch, visit to<br />
<br />
Ruins of the Drukgyal Dzong<br />
Kichu Lhakhang built in 659 A.D.<br />
Dinner and overnight in Tashi Namgay Resort or similar. www.tnr.bt<br />
<br />
Day 07. Paro Sightseeing: (Altitude 2280 m). After breakfast,<br />
<br />
Hike to Taktsang Monastery.<br />
Visit to a Farm house.</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Day 07. Paro Sightseeing: (Altitude 2280 m). After breakfast,<br />
<br />
Hike to Taktsang Monastery.<br />
Visit to a Farm house.<br />
Dinner and O/N in Tashi Namgay Resort or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,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> Punakha Tshechu (7 Nights/ 8 Days)
								</p>
								<p class="aj">Day 08. Paro Departure: (Altitude 2280 m) Early morning, drive to the airport and farewell.</p>					
									<p><b>Meals : </b> AP(Breakfast,Lunch,Dinner)</p>
								</td>
								</tr>
								</table>					
								</div>						<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>3 Star Hotel</li>
																		<li>Meals</li>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Airport Pickup-Drop</li>
																		<li>Private Cab</li>
																		<li>Sim Card</li>
																		<li>Complimentary Drinks</li>
																		<li>Bus Transfer</li>
																		<li>Cab Transfer</li>
																		<li>Non Veg Meals</li>
																		<li>Veg Meals</li>
																		<li>Veg & Non Veg Meals</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Air Tickets, guide and driver tips,personal expenses.</li></ul><br />
												<p class="large b mb5px dif">Specific Departure Dates :</p>Date : 25th -27th Feb, 2018.<br />
												<p class="large b mb5px dif">Departure Cities with rates :</p>Date : 25th -27th Feb, 2018.<br /><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="Punakha Tshechu (7 Nights/ 8 Days) 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="114833"/>
						</form>
						</div>
						
						";i:1;s:78:"Book Punakha Tshechu (7 Nights/ 8 Days) Tour - 7 Nights / 8 Days Tour Packages";i:2;s:138:"book punakha tshechu (7 nights/ 8 days) tour - 7 nights / 8 days tour packages, valley tour packages, thimphu, paro, punakha tour packages";i:3;s:178:"Exotic Vacations Bhutan offers Punakha Tshechu (7 Nights/ 8 Days) Tour - 7 Nights / 8 Days tour package, budget Valley tour packages for Thimphu, Paro, Punakha at exciting price.";i:4;s:593:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Thimphu, Paro, Punakha"        
		                 },
		      "description": "Special discount is offered to the direct client(those who contract directly) from the above rate.Air Tickets, guide and driver tips,personal expenses.06-1231-12",
		      "name": "Punakha Tshechu (7 Nights/ 8 Days) Tour",
		      "telephone": "+975-77685791"
		    }
		    </script>
			";i:5;N;}