×

注意!页面内容来自https://plantrip.io/,本站不储存任何内容,为了更好的阅读体验进行在线解析,若有广告出现,请及时反馈。若您觉得侵犯了您的利益,请通知我们进行删除,然后访问 原网页

Plantrip
Initializing...
0%
Step 1 Outline Preview:
<> .deal-destination-card { transition: transform 0.15s easebox-shadow 0.15s ease; border: 1px solid #e0e0e0; } .deal-destination-card:hover { transform: translateY(-3px); box-shadow: 0 4px 12px rgba(0,0,0,0.1); } .deal-destination-card .card-body i { opacity: 0.8; }

Latest Itineraries

2-Day Shannon to Limerick and Dublin Itinerary for May 19-202026

Apr 22026

View Itinerary

4-Day Fukuoka Itinerary: April 8-112026

Apr 22026

View Itinerary

3-Day Fukuoka Itinerary for April 2-42026

Apr 22026

View Itinerary

Ireland Itinerary: Shannon ArrivalLimerick Overnightand Dublin Transfer on May 19-202026

Apr 22026

View Itinerary

3-Day Dublin Itinerary: May 20-222026

Apr 22026

View Itinerary

2-Day Dublin Itinerary for April 1-22026

Apr 22026

View Itinerary

3-Day Goa to Mumbai Itinerary: April 1 to April 32026

Apr 12026

View Itinerary

3-Day Goa to Mumbai Itinerary for April 1 to April 32026

Apr 12026

View Itinerary

Goa to Kerala 3-Day Trip Itinerary | April 1-32026

Apr 12026

View Itinerary

4-Day Kerala to Mumbai Itinerary | April 1-42026

Apr 12026

View Itinerary

3-Day Goa Itinerary: April 1-32026

Apr 12026

View Itinerary

13-Day KyotoTakayamaKanazawaKaruizawa and Tokyo Itinerary Starting April 22026

Apr 12026

View Itinerary

2-Day Goa Itinerary for April 1-22026: North Goa Beaches and Old Goa Highlights

Apr 12026

View Itinerary

Europe/Warsaw Travel Itinerary for April 12026

Apr 12026

View Itinerary

3-Day Goa Itinerary for 2026-04-01 to 2026-04-03

Apr 12026

View Itinerary

3-Day Low-Budget Goa Train Trip from Tirunelveli District (April 2-42026)

Apr 12026

View Itinerary

Mumbai to ShillongMawlynnong and Guwahati Itinerary: April 22 to April 292026

Apr 12026

View Itinerary

1-Day Travel Itinerary for April 12026

Apr 12026

View Itinerary

4-Day Berlin Itinerary from ApeldoornApril 3-62026

Apr 12026

View Itinerary

3-Day Ooty and Coorg Trip Itinerary for April 1-32026

Apr 12026

View Itinerary

50-Day USA Trip from Sydney: OrlandoWashington DCNew YorkBostonNiagara FallsLas VegasLos Angeles and San Francisco (April 2027)

Apr 12026

View Itinerary
<> .clickable-card { transition: transform 0.2s easebox-shadow 0.2s ease; cursor: pointer; border: 1px solid rgba(0,0,0,0.125); } .clickable-card:hover { transform: translateY(-3px); box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important; }
84K+
Travelers
1.1M+
Itineraries Created
21K+
Packing Lists Generated

How Plantrip Works

Get a personalized travel itinerary in 3 simple steps

1. Enter Your Destination

Tell us where you want to go and for how long

2. AI Creates Your Plan

Our AI generates a detailed day-by-day itinerary

3. Customize & Go

Refine your itinerary and start your adventure

What Travelers Say

"Saved me hours of research for my Japan trip. The itinerary was spot-on with realistic timing."

- Sarah T.Tokyo Trip

"Used this for our Kerala road trip. Loved that it included local restaurants and hidden gems."

- Amit R.Kerala Road Trip

"The packing list feature is a game changer. No more forgetting essentials!"

- Mike L.Europe Backpacking

Built by TravelersPowered by AI

Plantrip was created by a software engineer with 20+ years of experience and a passion for travel. We combine artificial intelligence with real travel expertise.

<> .how-it-works-icon { width: 60px; height: 60px; } .how-it-works-icon i { font-size: 1.5rem; line-height: 1; }
<> /* Footer Skyline Scene */ .footer-skyline{position:relative;height:160px;overflow:hidden;background:linear-gradient(180deg,#0a0a2e 0%,#0f1035 20%,#141845 45%,#0f1230 70%,#1a1a1a 100%);box-shadow:0 -20px 40px -10px rgba(0,0,0,0.25)} .skyline-svg{position:absolute;bottom:0;left:0;width:100%;height:120px} .skyline-moon{position:absolute;top:8px;right:12%;z-index:1} .skyline-stars .star{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%} .skyline-plane{position:absolute;top:15%;left:-50px;z-index:2} .shooting-star{position:absolute;width:80px;height:1px;background:linear-gradient(to right,transparent,rgba(255,255,255,0.8),transparent);opacity:0;z-index:3} .city-glow{position:absolute;bottom:0;left:0;right:0;height:100px;z-index:0;pointer-events:none} <> /* Footer Styles */ /* Footer base */ .footer-main { background: linear-gradient(180deg#1a1a1a 0%#141414 40%#0d0d0d 100%); } /* Skyline: dark sky scene with shadow from content above */ .footer-skyline { position: relative; height: 160px; overflow: hidden; background: linear-gradient(180deg#0a0a2e 0%#0f1035 20%#141845 45%#0f1230 70%#1a1a1a 100%); box-shadow: 0 -20px 40px -10px rgba(0000.25); } .skyline-svg { position: absolute; bottom: 0; left: 0; width: 100%; height: 120px; } /* Crescent Moon */ .skyline-moon { position: absolute; top: 8px; right: 12%; animation: moonFloat 8s ease-in-out infinite; z-index: 1; } @keyframes moonFloat { 0%100% { transform: translateY(0); } 50% { transform: translateY(-4px); } } /* Twinkling stars */ .skyline-stars .star { position: absolute; width: 2px; height: 2px; background: #fff; border-radius: 50%; } .skyline-stars .star:nth-child(odd) { animation: twinkle 3s ease-in-out infinite; } .skyline-stars .star:nth-child(even) { animation: twinkle 4s ease-in-out 1.5s infinite; } .skyline-stars .star:nth-child(3n) { animation: twinkle 5s ease-in-out 0.8s infinite; } .skyline-stars .star:nth-child(5n) { width: 3px; height: 3px; animation: twinkle 6s ease-in-out 2s infinite; } @keyframes twinkle { 0%100% { opacity: 0.15; transform: scale(1); } 50% { opacity: 1; transform: scale(1.3); } } /* Shooting Stars */ .shooting-star { position: absolute; width: 80px; height: 1px; background: linear-gradient(to righttransparentrgba(255,255,255,0.8)transparent); opacity: 0; z-index: 3; } .shooting-star::after { content: ''; position: absolute; right: 0; top: -1px; width: 3px; height: 3px; background: #fff; border-radius: 50%; box-shadow: 0 0 6px 2px rgba(255,255,255,0.6); } .ss1 { top: 8%; left: 20%; transform: rotate(25deg); animation: shootingStar 8s ease-out 2s infinite; } .ss2 { top: 5%; left: 55%; transform: rotate(35deg); animation: shootingStar 12s ease-out 6s infinite; } .ss3 { top: 12%; left: 75%; transform: rotate(20deg); animation: shootingStar 15s ease-out 10s infinite; } @keyframes shootingStar { 0% { opacity: 0; transform: rotate(25deg) translateX(0); } 2% { opacity: 1; } 8% { opacity: 0; transform: rotate(25deg) translateX(150px); } 100% { opacity: 0; } } /* City glow on horizon */ .city-glow { position: absolute; bottom: 0; left: 0; right: 0; height: 100px; background: radial-gradient(ellipse 80% 100% at 50% 100%rgba(255160500.12) 0%transparent 60%), radial-gradient(ellipse 35% 80% at 25% 100%rgba(255130600.08) 0%transparent 50%), radial-gradient(ellipse 35% 80% at 75% 100%rgba(1201602550.07) 0%transparent 50%); z-index: 0; pointer-events: none; } /* Twinkling building windows */ .skyline-windows .window { fill: rgba(2552201000.8); rx: 0.5; } .window.w1 { animation: windowGlow 4s ease-in-out 0.0s infinite; } .window.w2 { animation: windowGlow 5s ease-in-out 0.5s infinite; } .window.w3 { animation: windowGlow 3s ease-in-out 1.0s infinite; } .window.w4 { animation: windowGlow 6s ease-in-out 1.5s infinite; } .window.w5 { animation: windowGlow 4s ease-in-out 2.0s infinite; } .window.w6 { animation: windowGlow 5s ease-in-out 0.3s infinite; } .window.w7 { animation: windowGlow 3s ease-in-out 2.5s infinite; } .window.w8 { animation: windowGlow 6s ease-in-out 1.2s infinite; } .window.w9 { animation: windowGlow 4s ease-in-out 3.0s infinite; } .window.w10 { animation: windowGlow 5s ease-in-out 0.8s infinite; } .window.w11 { animation: windowGlow 3s ease-in-out 2.2s infinite; } .window.w12 { animation: windowGlow 6s ease-in-out 1.8s infinite; } @keyframes windowGlow { 0%100% { opacity: 0.3; fill: rgba(2552201000.4); } 50% { opacity: 1; fill: rgba(2552201000.9); } } /* Flying airplane */ .skyline-plane { position: absolute; top: 15%; left: -50px; animation: flyAcross 18s linear infinite; z-index: 2; } .skyline-plane svg { transform: rotate(90deg); filter: drop-shadow(0 0 4px rgba(255,255,255,0.3)); } .plane-trail { position: absolute; top: 50%; left: -55px; width: 60px; height: 1px; background: linear-gradient(to righttransparentrgba(255,255,255,0.4)); transform: translateY(-50%); } @keyframes flyAcross { 0% { left: -80px; top: 20%; } 100% { left: calc(100% + 80px); top: 10%; } } /* Reduce motion for accessibility */ @media (prefers-reduced-motion: reduce) { .skyline-stars .star, .skyline-windows .window { animation: none; opacity: 0.6; } .skyline-plane, .shooting-star { animation: none; display: none; } .skyline-moon { animation: none; } } .footer-heading { color: #fff; font-size: 0.85rem; letter-spacing: 0.5px; } .footer-links li { margin-bottom: 0.6rem; } .footer-links a { color: #9ca3af; text-decoration: none; font-size: 0.9rem; transition: color 0.2s ease; } .footer-links a:hover { color: #fff; } .social-icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(2552552550.1); color: #fff; text-decoration: none; transition: all 0.3s ease; } .social-icon:hover { background: #0d6efd; color: #fff; transform: translateY(-3px); } .social-icon i { font-size: 1.1rem; } .footer-legal-link { color: #9ca3af; text-decoration: none; font-size: 0.85rem; transition: color 0.2s ease; } .footer-legal-link:hover { color: #fff; } .footer-bottom { background: rgba(0000.3); } @media (max-width: 767.98px) { .footer-main .container { padding-top: 2rem !important; padding-bottom: 2rem !important; } .footer-brand { text-align: center; } .footer-brand a { justify-content: center; } .footer-main .text-secondary.mb-4 { text-align: center; } .footer-social { justify-content: center; margin-bottom: 1.5rem; } }
Trip Locations
Wren
Tell us about your trip

Request submitted!

Travel agents will be reaching out soon.

<> .shadow-up { box-shadow: 0 -4px 6px -1px rgba(0000.1), 0 -2px 4px -1px rgba(0000.06); } /* Chat Widget */ #lead-chat-widget { position: fixed; bottom: 20px; right: 20px; z-index: 1050; font-family: -apple-systemBlinkMacSystemFont"Segoe UI"Robotosans-serif; } #lead-chat-toggle { width: 56px; height: 56px; border-radius: 50%; border: none; background: #0d6efd; color: white; font-size: 22px; cursor: pointer; box-shadow: 0 4px 12px rgba(0,0,0,0.25); transition: transform 0.2sbackground 0.2s; display: flex; align-items: center; justify-content: center; } #lead-chat-toggle:hover { transform: scale(1.08); background: #0b5ed7; } #lead-chat-panel { position: absolute; bottom: 70px; right: 0; width: 360px; max-height: 480px; background: #fff; border-radius: 12px; box-shadow: 0 8px 30px rgba(0,0,0,0.2); display: flex; flex-direction: column; overflow: hidden; } @media (max-width: 480px) { #lead-chat-panel { width: calc(100vw - 32px); right: -4px; max-height: 70vh; } } #lead-chat-header { background: #0d6efd; color: white; padding: 14px 16px; display: flex; justify-content: space-between; align-items: center; flex-shrink: 0; } #lead-chat-header button { background: none; border: none; color: white; font-size: 16px; cursor: pointer; opacity: 0.7; } #lead-chat-header button:hover { opacity: 1; } #lead-chat-messages { flex: 1; overflow-y: auto; padding: 16px; min-height: 200px; max-height: 320px; } .lead-chat-msg { margin-bottom: 12px; max-width: 85%; animation: chatFadeIn 0.3s ease; } @keyframes chatFadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } } .lead-chat-msg.assistant { margin-right: auto; } .lead-chat-msg.user { margin-left: auto; } .lead-chat-msg .bubble { padding: 10px 14px; border-radius: 16px; font-size: 14px; line-height: 1.45; } .lead-chat-msg.assistant .bubble { background: #f0f2f5; color: #1c1e21; border-bottom-left-radius: 4px; white-space: pre-line; } .lead-chat-msg.user .bubble { background: #0d6efd; color: white; border-bottom-right-radius: 4px; } .lead-chat-typing .bubble { background: #f0f2f5; padding: 12px 18px; } .typing-dots span { display: inline-block; width: 7px; height: 7px; background: #999; border-radius: 50%; margin-right: 3px; animation: typingBounce 1.2s infinite; } .typing-dots span:nth-child(2) { animation-delay: 0.2s; } .typing-dots span:nth-child(3) { animation-delay: 0.4s; } @keyframes typingBounce { 0%60%100% { transform: translateY(0); } 30% { transform: translateY(-4px); } } #lead-chat-form { padding: 12px 16px; border-top: 1px solid #e9ecef; flex-shrink: 0; } #lead-chat-input { border-radius: 20px; } #lead-chat-send { border-radius: 50%; width: 34px; height: 34px; padding: 0; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }