a:6:{i:0;s:19668:"				<div class="h1"><h1>Romantic New Zealand Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.sanskrutivacations.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.sanskrutivacations.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Romantic New Zealand 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">Duration </td>
						<td class="p5px pl0px vat">
						13 Nights / 14 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Auckland, Rotorua, Queenstown</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 230400 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sanskrutivacations.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Romantic New Zealand 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="85331"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<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_14/393874/149976.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/393874/149976.jpg"  width="150" height="150"    alt="Romantic New Zealand Tour" title="Romantic New Zealand Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Meet & greet on arrival in case of SIC customers. <br />
Accommodation (As per option) as mentioned in the itinerary on Dbl STD sharing rooms.<br />
Daily cooked breakfast in Hotel’s restaurant, in case of no restaurant at hotel/ motel, Continental breakfast will be served in your room a day prior.<br />
Sightseeing & entrances fees as per itinerary.<br />
Sky tower – without transfer<br />
SIC AKL morning sightseeing  (self drive clients will drive).<br />
Cape Brett Hole in the Rock Cruise - 4 hrs – without transfer <br />
SIC Cape Reinga - Scenic coach tour via Ninety Mile beach - ex Paihia (Excl Lunch)<br />
SIC Rotorua via Waitomo (Self drive clients will drive to visit Waitomo)<br />
SIC Rotorua morning sightseeing (Self drive clients will visit Agrodome, Rainbow sp & Te puia) <br />
SIC Milford day out without lunch  (by Jucy Milford) (Self drive will drive to Milford) <br />
SIC Discover Christchurch - Morning Tour (self drive clients will be by own)<br />
Tranz alpine train tickets (Not applicable for self-drive clients) <br />
 All transfers and tours as mentioned in the itineraryInternational and Domestic Airfares for and from NZ. <br />
Cost of travel insurance or any other insurance.<br />
Transfer to visit Sky Tower<br />
Activity transfer if any (unless specified)  <br />
Cost of Optional & Add-On tours unless mentioned otherwise. <br />
Porterage at hotels, airports, tips, insurance, laundry, wines, mineral water, telephone charges and all items of personal nature and also food & drinks not forming a part of the group menus. <br />
Meals if not mentioned in the itinerary. <br />
Additional transfer if any. <br />
Toll, parking & Fuel at all destinations as well as hotels.<br />
GPS & Excess Insurance if not mentioned in inclusions.<br />
Any damage for hotel rooms / coach. <br />
Any Bond (Hotel will require cash or credit card bond & Rental car company will require credit card bond) during stay, from client. <br />
Any optional activities and transfer if require.<br />
Anything not specifically mentioned in 'Tour Price Includes' box <br />
Govt service tax.<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 Auckland
								</p>
								<p class="aj">Upon arrival in Auckland you will be met and greeted by our representative in the arrival hall and transferred to your hotel in a private car.<br />
Visit Sky tower in the evening (Entrance cost included) later take a short walk to Viaduct harbor.<br />
Overnight at hotel</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> Auckland sightseeing
								</p>
								<p class="aj">After breakfast, see firsthand why Auckland is regarded as one of the best cities in the world to live in, as you join this half day tour around the central city and picturesque suburbs.<br />
Our journey begins with a short trip over the Harbour Bridge to the North Shore before returning to the central city to visit Queen St and the Auckland Viaduct.<br />
We continue on through the Auckland Domain, the city's oldest park, situated on a 62,000 year old volcano to Parnell Village for our morning tea stop. The historic buildings of Parnell have been transformed in to a trendy shopping area featuring many boutiques, antique, craft and specialty shops. Following this brief stop our tour will then take you along the scenic waterfront route of Tamaki Drive to the Michael Joseph Savage Memorial Park, in Mission Bay. A memorial to the first Labour Prime Minister of New Zealand and the founder of the welfare state. Michael Joseph Savage Memorial Park has panoramic views over Whenua Rangatira, Auckland city and Waitemata Harbour. This park is a popular wedding and tourist venue, with formal gardens and perfect venue for flying a fabulous array of colorful and creative kites. The tour then returns to downtown. SIC Customers will travel in a coach and Self-drive customers will pick up rental car from the local city branch for travel.<br />
Highlights:<br />
Harbour Bridge, Viaduct Harbour, Queen Street, Auckland Domain, Parnell Village, Tamaki Drive<br />
Michael Savage Memorial<br />
Overnight at hotel (B)</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> Auckland – Bay of Island (Paihia)
								</p>
								<p class="aj">After breakfast, travel towards North over Auckland’s Harbour Bridge and along the Hibiscus Coast. The journey continues, travelling through Whangarei, Northland’s only major city and port, before arriving in the beautiful Bay of Islands. This afternoon, take a ‘Hole in the Rock and Cape Brett’ cruise (included). If you wish, you may disembark from this cruise in Romantic Russell and take some time to explore this historic town, returning to Paihia by local ferry at your leisure (ferry ticket included). SIC customers will travel in a coach, self-drive customers will travel in their rental car.<br />
Overnight at hotel (B)</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> Cape Reinga day tour
								</p>
								<p class="aj">After breakfast, go for an exciting day as you are driven along 90 Miles Beach and the Te Paki quicksand stream. Have the chance to surf down the massive sand dunes. Onto Cape Reinga’s for spectacular view of 2 oceans merging. Visit to a factory processing century old kauri wood dug out from the swamp. Walk amongst huge Kauri trees at Puketi Forest. Evening return back to your hotel in Paihia. (Included) SIC Customers will travel in a coach, Self-drive customers will travel in their rental car (rental cars are not allowed on 90 mile beach)<br />
Overnight at Hotel. (B)</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> Bay of Island to Auckland
								</p>
								<p class="aj">After breakfast travel to Auckland, evening at leisure. SIC customers will travel in a coach, self-drive customers will travel in their rental car.<br />
Overnight at hotel. (B)</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> Auckland – Rotorua via Waitomo
								</p>
								<p class="aj">After breakfast, today morning you will travel across the rich Waikato farmland for Waitomo. Enjoy a guided tour of the Waitomo Caves and a boat ride through the famous Glow-Worm grotto. Enjoy twinkling lights emitting from the ceiling like stars in a dark night. Later travel across to forested Mamaku Range to arrive at the thermal resort of Rotorua. SIC customers will travel in a coach, self-drive customers will travel in their rental car.<br />
Overnight at hotel (B)</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> Rotorua sightseeing
								</p>
								<p class="aj">After breakfast, we proceed to AGRODOME (included) to witness the Agrodome Agricultural Show, where you will be entertained by New Zealand's performing sheep and other attractions. Later proceed to visit TE-PUIA thermal village (included) known for its hot springs, geysers and boiling mud pools. Watch the Maori craftsmen and learn about the traditional arts of carving and weaving and RAINBOW SPRINGS (included) to see the flower and fauna of New Zealand. Evening at leisure. SIC customers will travel in a coach, self-drive customers will travel in their rental car.<br />
Overnight at hotel (B)</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> Rotorua – Queenstown Fly (Flight not included)
								</p>
								<p class="aj">After breakfast at Hotel’s restaurant, SIC transfer to Rotorua airport and board your flight to Queenstown (flight not included), upon arrival SIC transfer to travel to your hotel.<br />
Self-drive customers travel to airport in their rental car in Rotorua, drop the car at airport branch, fly to Queenstown (flight not included), upon arriving pick up their rental car from airport branch and to drive to their hotel. Evening at leisure<br />
Overnight at hotel (B)</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> Milford sound day tour
								</p>
								<p class="aj">After breakfast, we head to MILFORD SOUND CRUISE (included). This famous cruise gives you an opportunity to see MITRE PEAK which is just out of the water and mile high. Go exploring with a nature guide in the tender vessels and kayaks. You may see fur seals lazing on the rocks and lots of sea birds and numerous waterfalls. Return back to the hotel in the evening. ) SIC Customers will travel in a coach, Self-drive customers will travel in their rental car<br />
Overnight at the hotel. (B)</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> Queenstown day free for optional activities
								</p>
								<p class="aj">After breakfast, you have an option to enjoy the exciting SHOTOVER JET BOAT RIDE, LEDGE BUNGY JUMP, RIVER RAFTING, SKY DIVING Etc (activities not included)<br />
Overnight in hotel. (B)</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> Queenstown- Glacier region
									</p>
									<p class="aj">After breakfast, leave for Franz Joseph. Discover the rugged scenery along one of New Zealand's most awe-inspiring highways. The viewing platforms overlooking Franz Josef show the sheer size and beauty of these natural wonders and provide fantastic photo opportunities. SIC Customers will travel in a coach, Self-drive customers will travel in their rental car<br />
Overnight in hotel. (B)</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> To Christchurch via Greymouth (Tranz alpine train will be applicable only for SIC clients)
									</p>
									<p class="aj">After breakfast, check out from hotel and leave to Greymouth. On arrival you will board Tranz Alpine train for one of the most scenic train journeys in the world. On arrival in Christchurch you will be transferred to hotel. Evening at leisure. SIC Customers will travel in a coach, Self-drive customers will travel in their rental car.<br />
 Overnight at hotel. (B)</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> Christchurch sightseeing
									</p>
									<p class="aj">After breakfast, enjoy the morning city tour covering Cathedral Square, Bridge of Remembrance, Avon River Art’s Centre and museum. See beautiful Mona Vale Garden, Hagley Park and from the Sign of the Takahe, you have a spectacular view over the city, Canterbury Plains to the Alps. SIC Customers will travel in a coach, Self-drive customers will travel in their rental car.<br />
Overnight at hotel. (B)</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 14:</b> Departure day
									</p>
									<p class="aj">After breakfast SIC customers will be transferred to airport in a shared vehicle. Self-drive customers will travel their rental car, drop the car at airport branch and board your flight for onward journey (flight not included)</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>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>International and Domestic Airfares for and from NZ. </li><li>
Cost of travel insurance or any other insurance.</li><li>
Transfer to visit Sky Tower</li><li>
Activity transfer if any (unless specified)  </li><li>
Cost of Optional & Add-On tours unless mentioned otherwise. </li><li>
Porterage at hotels, airports, tips, insurance, laundry, wines, mineral water, telephone charges and all items of personal nature and also food & drinks not forming a part of the group menus. </li><li>
Meals if not mentioned in the itinerary. </li><li>
Additional transfer if any. </li><li>
Toll, parking & Fuel at all destinations as well as hotels.</li><li>
GPS & Excess Insurance if not mentioned in inclusions.</li><li>
Any damage for hotel rooms / coach. </li><li>
Any Bond (Hotel will require cash or credit card bond & Rental car company will require credit card bond) during stay, from client. </li><li>
Any optional activities and transfer if require.</li><li>
Anything not specifically mentioned in 'Tour Price Includes' box </li><li>
Govt service tax.</li></ul><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.sanskrutivacations.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Romantic New Zealand 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="85331"/>
						</form>
						</div>
						
						";i:1;s:66:"Book Romantic New Zealand Tour - 13 Nights / 14 Days Tour Packages";i:2;s:135:"book romantic new zealand tour - 13 nights / 14 days tour packages, heritage tour packages, auckland, rotorua, queenstown tour packages";i:3;s:188:"Book Romantic New Zealand Tour - 13 Nights / 14 Days tour packages from Sanskruti Vacations - Get attractive 13 Nights / 14 Days Heritage  tour packages for  Auckland, Rotorua, Queenstown.";i:4;s:2407:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Auckland, Rotorua, Queenstown"        
		                 },
		      "description": "Meet & greet on arrival in case of SIC customers. 
Accommodation (As per option) as mentioned in the itinerary on Dbl STD sharing rooms.
Daily cooked breakfast in Hotel’s restaurant, in case of no restaurant at hotel/ motel, Continental breakfast will be served in your room a day prior.
Sightseeing & entrances fees as per itinerary.
Sky tower – without transfer
SIC AKL morning sightseeing  (self drive clients will drive).
Cape Brett Hole in the Rock Cruise - 4 hrs – without transfer 
SIC Cape Reinga - Scenic coach tour via Ninety Mile beach - ex Paihia (Excl Lunch)
SIC Rotorua via Waitomo (Self drive clients will drive to visit Waitomo)
SIC Rotorua morning sightseeing (Self drive clients will visit Agrodome, Rainbow sp & Te puia) 
SIC Milford day out without lunch  (by Jucy Milford) (Self drive will drive to Milford) 
SIC Discover Christchurch - Morning Tour (self drive clients will be by own)
Tranz alpine train tickets (Not applicable for self-drive clients) 
 All transfers and tours as mentioned in the itineraryInternational and Domestic Airfares for and from NZ. 
Cost of travel insurance or any other insurance.
Transfer to visit Sky Tower
Activity transfer if any (unless specified)  
Cost of Optional & Add-On tours unless mentioned otherwise. 
Porterage at hotels, airports, tips, insurance, laundry, wines, mineral water, telephone charges and all items of personal nature and also food & drinks not forming a part of the group menus. 
Meals if not mentioned in the itinerary. 
Additional transfer if any. 
Toll, parking & Fuel at all destinations as well as hotels.
GPS & Excess Insurance if not mentioned in inclusions.
Any damage for hotel rooms / coach. 
Any Bond (Hotel will require cash or credit card bond & Rental car company will require credit card bond) during stay, from client. 
Any optional activities and transfer if require.
Anything not specifically mentioned in 'Tour Price Includes' box 
Govt service tax.",
		      "name": "Romantic New Zealand Tour",
		      "telephone": "+91-9769880881"
		    }
		    </script>
			";i:5;N;}