·
|
perfect trip
Cruise
Alaska · Caribbean · Europe
Flights
Any route worldwide
Tour & Hotel
Vacation + stay
Full Package
Flight · Hotel · Tour
Your info is used only to find your trip. Never shared with third parties.
let cur=1,type='',cnt={a:2,k:0},lang='en';
const L={
en:{
heroTitle:'Stop scrolling.
Just go.',
heroSub:"Tell us what you want. We handle the rest.",
s1h:"What kind of trip?",s1d:"No wrong answers here.",
tCruise:"Cruise",tCS:"Skip the resort. Own the ocean.",
tFlight:"Flights",tFS:"No Expedia. No headache.",
tTour:"Tour & Hotel",tTS:"We stayed there. We know.",
tAll:"Everything",tAS:"Tell us once. We handle all of it.",
errType:"Pick one ↑",
s1h2:"Who are you?",s1d2:"So we can actually reach you.",
lName:"Name",phName:"First name is fine",
lPhone:"Phone / WhatsApp",lEmail:"Email",
s2h1:"Who's coming?",s2d1:"Count everyone — we price it right.",
cAdults:"Adults",cAS:"18+",cKids:"Kids",cKS:"Under 12",
lAges:"Kids' ages",phAges:"e.g. 8, 12, 15",
s2h2:"Dates",lDepart:"Out",lReturn:"Back",
lFlex:"How locked in are you?",
fExact:"Set in stone",f3d:"±3 days, whatever's cheaper",f1w:"±1 week works",fMo:"Sometime this month",fAny:"Surprise me",
btnNext:"Next →",btnBack:"← Back",
s3h:"Where?",lFrom:"Departing from",phFrom:"Your city or airport",
lWhere:"Heading to",
dUSA:"USA",dEU:"Europe",dCarib:"Caribbean",dAlaska:"Alaska",dMex:"Mexico",dMed:"Mediterranean",dMald:"Maldives",dOth:"Somewhere else",
lDetail:"Be more specific",phDetail:"City, ship name, resort — whatever you know",
crH:"Cruise stuff",lLine:"Which line?",lCabin:"Cabin vibe",
noM:"Don't care",cBal:"Balcony",cTer:"Terrace",cSui:"Suite",
lPkg:"Add-ons",pkD:"Open bar",pkW:"WiFi",pkF:"Dining",pkN:"Keep it basic",
flH:"Flight details",lClass:"Class",
clE:"Economy",clP:"Premium Economy",clB:"Business",
lStops:"Stops",stD:"Nonstop",st1:"1 connection max",
lBag:"Bags",bgC:"Carry-on only",bg1:"1 checked",bg2:"2+ bags",
s4h1:"Budget?",s4d1:"All in · USD · be honest with us",
lBFlex:"Wiggle room?",bfS:"That's the number.",bfP:"±15% if it's worth it",bfQ:"Just make it great.",
s4h2:"What actually matters?",s4d2:"Pick what you'll regret skipping.",
prPr:"Price",prCo:"Comfort",prTi:"Timing",prEx:"See things",prFo:"Eat well",prKi:"Kid-proof",prPe:"Dog comes too",prBe:"Beach time",prCi:"Cities",
s5h:"Last thing.",s5d:"Don't overthink it.",
lNotes:"Anything we should know",phNotes:"Connecting rooms, 6am flights are a hard no, flying with a cello — whatever.",
lUrg:"When do you need this?",
uWk:"No rush",u3d:"Few days",uTod:"Tomorrow works",uNow:"Now. Seriously.",
privacy:"We use your info to book your trip. That's it.",
btnSub:"Let's go →",
succT:"Got it.",succS:"We're on it. Expect a message soon.",
btnCopy:"Copy this",btnWA:"WhatsApp us",
smType:"Type",smName:"Name",smPhone:"Phone",smPax:"Travelers",smDates:"Dates",smFrom:"From",smWhere:"To",smBudget:"Budget",smUrg:"Timeline",smNotes:"Notes",adS:"adults",kdS:"kids",
tL:{cruise:"Cruise",flight:"Flights",tour:"Tour & Hotel",all:"Full Package"},
uL:{week:"No rush","3d":"Few days",tod:"Tomorrow",now:"Now"}
},
uk:{
heroTitle:'Досить скролити.
Ми все зробимо.',
heroSub:"Один запит — і квитки, готель, круїз вже у вас.",
s1h:"Що за поїздка?",s1d:"Немає неправильних відповідей.",
tCruise:"Круїз",tCS:"Забудь про готель. Море — твоє.",
tFlight:"Авіаквитки",tFS:"Без Expedia. Без головного болю.",
tTour:"Тур та Готель",tTS:"Ми там були. Ми знаємо.",
tAll:"Усе одразу",tAS:"Все й одразу.",
errType:"Обери ↑",
s1h2:"Хто ти?",s1d2:"Щоб ми могли з тобою зв'язатись.",
lName:"Ім'я",phName:"Просто ім'я — вже добре",
lPhone:"Телефон / WhatsApp",lEmail:"Email",
s2h1:"Хто їде?",s2d1:"Рахуй усіх — ми назвемо нормальну ціну.",
cAdults:"Дорослі",cAS:"18+",cKids:"Діти",cKS:"До 12 років",
lAges:"Вік дітей",phAges:"напр. 8, 12, 15",
s2h2:"Дати",lDepart:"Виліт",lReturn:"Повернення",
lFlex:"Наскільки ти прив'язаний до дат?",
fExact:"Строго ці дати",f3d:"±3 дні, якщо дешевше",f1w:"±тиждень — ок",fMo:"Цього місяця колись",fAny:"Здивуй мене",
btnNext:"Далі →",btnBack:"← Назад",
s3h:"Куди?",lFrom:"Звідки летиш",phFrom:"Місто або аеропорт",
lWhere:"Напрямок",
dUSA:"США",dEU:"Європа",dCarib:"Кариби",dAlaska:"Аляска",dMex:"Мексика",dMed:"Середземномор'я",dMald:"Мальдіви",dOth:"Кудись ще",
lDetail:"Конкретніше",phDetail:"Місто, назва круїзу, курорт — що знаєш",
crH:"Деталі круїзу",lLine:"Який лайнер?",lCabin:"Каюта",
noM:"Все одно",cBal:"Балкон",cTer:"Тераса",cSui:"Люкс",
lPkg:"Пакети",pkD:"Алкоголь",pkW:"WiFi",pkF:"Харчування",pkN:"Нічого зайвого",
flH:"Деталі рейсу",lClass:"Клас",
clE:"Економ",clP:"Преміум економ",clB:"Бізнес",
lStops:"Пересадки",stD:"Прямий",st1:"Максимум 1",
lBag:"Багаж",bgC:"Лише ручна",bg1:"1 валіза",bg2:"2+ валізи",
s4h1:"Бюджет?",s4d1:"Загалом · долари · будь чесним",
lBFlex:"Є простір?",bfS:"Це і є число.",bfP:"±15% якщо варте",bfQ:"Головне — якість.",
s4h2:"Що справді важливо?",s4d2:"Обери те, про що пошкодуєш якщо пропустиш.",
prPr:"Ціна",prCo:"Комфорт",prTi:"Зручний час",prEx:"Подивитись світ",prFo:"Смачно поїсти",prKi:"Діти в порядку",prPe:"Собака теж летить",prBe:"Пляж",prCi:"Міста",
s5h:"Останнє.",s5d:"Не думай надто довго.",
lNotes:"Що нам варто знати",phNotes:"Каюти поруч, 6 ранку — жорстке ні, летимо з віолончеллю — що завгодно.",
lUrg:"Коли треба відповідь?",
uWk:"Не горить",u3d:"Кілька днів",uTod:"Завтра ок",uNow:"Зараз. Серйозно.",
privacy:"Твої дані — для бронювання. Крапка.",
btnSub:"Поїхали →",
succT:"Прийнято.",succS:"Вже займаємось. Чекай на повідомлення.",
btnCopy:"Скопіювати",btnWA:"WhatsApp",btnEmail:"Send via Email",
smType:"Тип",smName:"Ім'я",smPhone:"Телефон",smPax:"Мандрівники",smDates:"Дати",smFrom:"Звідки",smWhere:"Куди",smBudget:"Бюджет",smUrg:"Терміни",smNotes:"Нотатки",adS:"дор.",kdS:"діт.",
tL:{cruise:"Круїз",flight:"Авіаквитки",tour:"Тур та Готель",all:"Усе разом"},
uL:{week:"Не горить","3d":"Кілька днів",tod:"Завтра",now:"Зараз"}
},
ru:{
heroTitle:'Хватит скроллить.
Просто скажи куда.',
heroSub:"Один запрос — и билеты, отель, круиз уже у тебя.",
s1h:"Какая поездка?",s1d:"Неправильных ответов нет.",
tCruise:"Круиз",tCS:"Забудь про отель. Океан — твой.",
tFlight:"Авиабилеты",tFS:"Без Expedia. Без головной боли.",
tTour:"Тур и Отель",tTS:"Мы там были. Мы знаем.",
tAll:"Всё сразу",tAS:"Всё и сразу.",
errType:"Выбери ↑",
s1h2:"Кто ты?",s1d2:"Чтобы мы могли с тобой связаться.",
lName:"Имя",phName:"Просто имя — уже хорошо",
lPhone:"Телефон / WhatsApp",lEmail:"Email",
s2h1:"Кто едет?",s2d1:"Считай всех — назовём нормальную цену.",
cAdults:"Взрослые",cAS:"18+",cKids:"Дети",cKS:"До 12 років",
lAges:"Возраст детей",phAges:"напр. 8, 12, 15",
s2h2:"Даты",lDepart:"Вылет",lReturn:"Возврат",
lFlex:"Насколько ты привязан к датам?",
fExact:"Только эти даты",f3d:"±3 дня если дешевле",f1w:"±неделя — ок",fMo:"В этом месяце как-нибудь",fAny:"Удиви меня",
btnNext:"Далее →",btnBack:"← Назад",
s3h:"Куда?",lFrom:"Откуда летишь",phFrom:"Город или аэропорт",
lWhere:"Направление",
dUSA:"США",dEU:"Европа",dCarib:"Карибы",dAlaska:"Аляска",dMex:"Мексика",dMed:"Средиземноморье",dMald:"Мальдивы",dOth:"Куда-то ещё",
lDetail:"Конкретнее",phDetail:"Город, название круиза, курорт — что знаешь",
crH:"Детали круиза",lLine:"Какой лайнер?",lCabin:"Каюта",
noM:"Всё равно",cBal:"Балкон",cTer:"Терраса",cSui:"Сьют",
lPkg:"Пакеты",pkD:"Алкоголь",pkW:"WiFi",pkF:"Питание",pkN:"Ничего лишнего",
flH:"Детали рейса",lClass:"Класс",
clE:"Эконом",clP:"Премиум эконом",clB:"Бизнес",
lStops:"Пересадки",stD:"Прямой",st1:"Максимум 1",
lBag:"Багаж",bgC:"Только ручная",bg1:"1 чемодан",bg2:"2+ чемодана",
s4h1:"Бюджет?",s4d1:"Всего · доллары · будь честен",
lBFlex:"Есть пространство?",bfS:"Это и есть цифра.",bfP:"±15% если оно того стоит",bfQ:"Главное — качество.",
s4h2:"Что реально важно?",s4d2:"Выбери то, о чём пожалеешь если пропустишь.",
prPr:"Цена",prCo:"Комфорт",prTi:"Удобное время",prEx:"Посмотреть мир",prFo:"Вкусно поесть",prKi:"Дети под контролем",prPe:"Собака тоже летит",prBe:"Пляж",prCi:"Города",
s5h:"Последнее.",s5d:"Не думай слишком долго.",
lNotes:"Что нам стоит знать",phNotes:"Каюты рядом, 6 утра — жёсткое нет, летим с виолончелью — что угодно.",
lUrg:"Когда нужен ответ?",
uWk:"Не горит",u3d:"Несколько дней",uTod:"Завтра ок",uNow:"Сейчас. Серьёзно.",
privacy:"Твои данные — для бронирования. Точка.",
btnSub:"Поехали →",
succT:"Принято.",succS:"Уже занимаемся. Жди сообщения.",
btnCopy:"Скопировать",btnWA:"WhatsApp",btnEmail:"Send via Email",
smType:"Тип",smName:"Имя",smPhone:"Телефон",smPax:"Путешественники",smDates:"Даты",smFrom:"Откуда",smWhere:"Куда",smBudget:"Бюджет",smUrg:"Сроки",smNotes:"Заметки",adS:"взр.",kdS:"дет.",
tL:{cruise:"Круиз",flight:"Авиабилеты",tour:"Тур и Отель",all:"Всё сразу"},
uL:{week:"Не горит","3d":"Несколько дней",tod:"Завтра",now:"Сейчас"}
}
};
function t(k){return L[lang][k]||k;}
function go(l){lang=l;document.querySelectorAll('.lb').forEach(b=>{b.classList.remove('on');if(b.getAttribute('onclick')===`go('${l}')`)b.classList.add('on');});render();
// EMAIL function
function sendEmail(d) {
const tl = L[lang].tL, ul = L[lang].uL;
const subject = encodeURIComponent('InSky — ' + (tl[d.type] || d.type));
const body = encodeURIComponent(
'Name: ' + d.name + '\n' +
'Phone: ' + d.phone + '\n' +
'Type: ' + (tl[d.type] || d.type) + '\n' +
'Travelers: ' + d.adults + ' adults' + (d.kids > 0 ? ' + ' + d.kids + ' kids (' + d.ages + ')' : '') + '\n' +
'Dates: ' + (d.from || '?') + ' → ' + (d.to || '?') + '\n' +
'From: ' + d.city + '\n' +
'To: ' + (d.dest || '—') + '\n' +
'Budget: ' + d.budget + '\n' +
(d.prio ? 'Priorities: ' + d.prio + '\n' : '') +
'Timeline: ' + (ul[d.urg] || d.urg) + '\n' +
(d.notes ? 'Notes: ' + d.notes : '')
);
window.location.href = 'mailto:oksanainsky@gmail.com?subject=' + subject + '&body=' + body;
}}
function render(){document.querySelectorAll('[data-i]').forEach(el=>{const v=L[lang][el.getAttribute('data-i')];if(v!==undefined)el.innerHTML=v;});document.querySelectorAll('[data-ph]').forEach(el=>{const v=L[lang][el.getAttribute('data-ph')];if(v!==undefined)el.placeholder=v;});updateDots();}
function pick(el,v){document.querySelectorAll('.tbtn').forEach(b=>b.classList.remove('sel'));el.classList.add('sel');type=v;document.getElementById('e1').style.display='none';document.getElementById('cruiseP').style.display=(v==='cruise'||v==='all')?'block':'none';document.getElementById('flightP').style.display=(v==='flight'||v==='all')?'block':'none';}
function chg(k,d){cnt[k]=Math.max(k==='a'?1:0,cnt[k]+d);document.getElementById('v'+k).textContent=cnt[k];if(k==='k')document.getElementById('agesW').style.display=cnt.k>0?'block':'none';}
function tc(el){el.classList.toggle('on');}
function updB(v){const n=parseInt(v);document.getElementById('bNum').textContent=n>=30000?'30,000+':n.toLocaleString();}
function nav(n){if(n>1&&cur===1&&!type){document.getElementById('e1').style.display='block';return;}document.getElementById('s'+cur).classList.remove('on');cur=n;document.getElementById('s'+cur).classList.add('on');updateDots();window.scrollTo({top:0,behavior:'smooth'});}
function updateDots(){document.getElementById('pbar').style.width=(cur/5*100)+'%';document.getElementById('plab').textContent='0'+cur+' / 05';for(let i=1;i<=5;i++){const d=document.getElementById('d'+i);d.className='dot';if(i
`).join('');document.getElementById('waBtn').href='https://wa.me/16452506505?text='+encodeURIComponent(buildMsg(d));window.scrollTo({top:0,behavior:'smooth'});} function cp(){navigator.clipboard.writeText(buildMsg(getData())).then(()=>{const b=document.getElementById('cpBtn');b.textContent={en:'Copied ✓',uk:'Скопійовано ✓',ru:'Скопировано ✓'}[lang];setTimeout(()=>b.textContent=t('btnCopy'),2000);});} render();
// EMAIL function function sendEmail(d) { const tl = L[lang].tL, ul = L[lang].uL; const subject = encodeURIComponent('InSky — ' + (tl[d.type] || d.type)); const body = encodeURIComponent( 'Name: ' + d.name + '\n' + 'Phone: ' + d.phone + '\n' + 'Type: ' + (tl[d.type] || d.type) + '\n' + 'Travelers: ' + d.adults + ' adults' + (d.kids > 0 ? ' + ' + d.kids + ' kids (' + d.ages + ')' : '') + '\n' + 'Dates: ' + (d.from || '?') + ' → ' + (d.to || '?') + '\n' + 'From: ' + d.city + '\n' + 'To: ' + (d.dest || '—') + '\n' + 'Budget: ' + d.budget + '\n' + (d.prio ? 'Priorities: ' + d.prio + '\n' : '') + 'Timeline: ' + (ul[d.urg] || d.urg) + '\n' + (d.notes ? 'Notes: ' + d.notes : '') ); window.location.href = 'mailto:oksanainsky@gmail.com?subject=' + subject + '&body=' + body; }