{"id":10598,"date":"2026-03-30T14:01:33","date_gmt":"2026-03-30T17:01:33","guid":{"rendered":"https:\/\/vaidemotorhome.com\/lp\/?page_id=10598"},"modified":"2026-06-24T09:07:02","modified_gmt":"2026-06-24T12:07:02","slug":"expedicao-ideal","status":"publish","type":"page","link":"https:\/\/vaidemotorhome.com\/lp\/expedicao-ideal\/","title":{"rendered":"expedicao-ideal"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"10598\" class=\"elementor elementor-10598\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-068d7a3 e-con-full e-flex e-con e-parent\" data-id=\"068d7a3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0573155 elementor-widget elementor-widget-html\" data-id=\"0573155\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"pt-BR\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>Vai de Motorhome \u2014 Descubra Sua Expedi\u00e7\u00e3o<\/title>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Zilla+Slab:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=DM+Sans:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\n<style>\n  :root {\n    --verde: #396152;\n    --verde-escuro: #2d5240;\n    --verde-hover: #4a8a70;\n    --verde-claro: #4a7a66;\n    --verde-soft: rgba(57,97,82,.06);\n    --palha: #D9C7A7;\n    --palha-claro: #e8dbc5;\n    --creme: #F5F0E8;\n    --creme-escuro: #ece4d6;\n    --branco: #FEFCF9;\n    --texto: #2c3e34;\n    --texto-leve: #5a6b60;\n    --shadow-sm: 0 1px 3px rgba(57,97,82,.08);\n    --shadow-md: 0 4px 20px rgba(57,97,82,.12);\n    --shadow-lg: 0 12px 40px rgba(57,97,82,.15);\n    --radius: 18px;\n  }\n\n  * { margin: 0; padding: 0; box-sizing: border-box; }\n  html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }\n\n  body {\n    font-family: 'DM Sans', sans-serif;\n    color: var(--texto);\n    background: var(--branco);\n    overflow-x: hidden;\n  }\n\n  \/* ============================\n     HERO\n     ============================ *\/\n  .hero {\n    min-height: 100vh;\n    min-height: 100svh;\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    align-items: center;\n    text-align: center;\n    padding: 60px 24px 80px;\n    position: relative;\n    background:\n      radial-gradient(ellipse 80% 60% at 20% 85%, rgba(57,97,82,.05) 0%, transparent 60%),\n      radial-gradient(ellipse 70% 50% at 85% 15%, rgba(217,199,167,.12) 0%, transparent 50%),\n      var(--branco);\n    overflow: hidden;\n  }\n\n  .hero::before {\n    content: '';\n    position: absolute;\n    top: -160px; right: -100px;\n    width: 460px; height: 460px;\n    border-radius: 50%;\n    border: 1px solid rgba(217,199,167,.25);\n    pointer-events: none;\n  }\n  .hero::after {\n    content: '';\n    position: absolute;\n    bottom: -200px; left: -120px;\n    width: 500px; height: 500px;\n    border-radius: 50%;\n    border: 1px solid rgba(57,97,82,.06);\n    pointer-events: none;\n  }\n\n  .hero-divider {\n    position: absolute;\n    bottom: 0; left: 0; right: 0;\n    height: 1px;\n    background: linear-gradient(90deg, transparent 5%, var(--palha) 50%, transparent 95%);\n  }\n\n  .hero-badge {\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n    padding: 8px 22px;\n    border-radius: 100px;\n    background: var(--creme);\n    border: 1px solid var(--palha);\n    font-size: 13px;\n    font-weight: 500;\n    color: var(--verde);\n    letter-spacing: .3px;\n    margin-bottom: 36px;\n    animation: fadeUp .7s ease both;\n  }\n  .hero-badge span { font-size: 15px; }\n\n  .hero h1 {\n    font-family: 'Zilla Slab', serif;\n    font-size: clamp(2.3rem, 5.5vw, 4rem);\n    font-weight: 600;\n    line-height: 1.14;\n    color: var(--verde-escuro);\n    max-width: 760px;\n    margin-bottom: 24px;\n    animation: fadeUp .7s .12s ease both;\n  }\n  .hero h1 em {\n    font-style: italic;\n    color: var(--verde-claro);\n    font-weight: 500;\n  }\n\n  .hero-sub {\n    font-size: clamp(1.02rem, 2vw, 1.18rem);\n    line-height: 1.7;\n    color: var(--texto-leve);\n    max-width: 540px;\n    margin-bottom: 48px;\n    animation: fadeUp .7s .24s ease both;\n  }\n\n  .hero-cta {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    padding: 18px 42px;\n    background: var(--verde);\n    color: var(--branco);\n    font-family: 'DM Sans', sans-serif;\n    font-size: 1.05rem;\n    font-weight: 600;\n    border: none;\n    border-radius: 100px;\n    cursor: pointer;\n    transition: all .35s cubic-bezier(.4,0,.2,1);\n    box-shadow: 0 4px 24px rgba(57,97,82,.22);\n    animation: fadeUp .7s .36s ease both;\n    text-decoration: none;\n  }\n  .hero-cta:hover {\n    background: var(--verde-hover);\n    transform: translateY(-2px);\n    box-shadow: 0 8px 32px rgba(57,97,82,.28);\n  }\n  .hero-cta .arrow {\n    transition: transform .3s ease;\n    font-size: 1.15em;\n  }\n  .hero-cta:hover .arrow { transform: translateX(5px); }\n\n  .hero-stats {\n    display: flex;\n    gap: 52px;\n    margin-top: 68px;\n    animation: fadeUp .7s .48s ease both;\n  }\n  .hero-stat { text-align: center; }\n  .hero-stat strong {\n    display: block;\n    font-family: 'Zilla Slab', serif;\n    font-size: 1.9rem;\n    font-weight: 700;\n    color: var(--verde);\n  }\n  .hero-stat span {\n    font-size: .83rem;\n    color: var(--texto-leve);\n    letter-spacing: .2px;\n  }\n\n  \/* ============================\n     FORM SECTION\n     ============================ *\/\n  .form-section {\n    min-height: 100vh;\n    min-height: 100svh;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: 80px 24px;\n    background:\n      radial-gradient(ellipse 80% 60% at 30% 80%, rgba(255,255,255,.06) 0%, transparent 60%),\n      radial-gradient(ellipse 70% 50% at 80% 20%, rgba(255,255,255,.04) 0%, transparent 50%),\n      var(--verde);\n    position: relative;\n  }\n  .form-section::before {\n    content: '';\n    position: absolute;\n    top: 0; left: 0; right: 0;\n    height: 1px;\n    background: linear-gradient(90deg, transparent 5%, rgba(255,255,255,.15) 50%, transparent 95%);\n  }\n\n  .form-container {\n    width: 100%;\n    max-width: 620px;\n    position: relative;\n  }\n\n  .progress-wrap {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    margin-bottom: 40px;\n    transition: opacity .4s;\n  }\n  .progress-track {\n    flex: 1;\n    height: 4px;\n    background: rgba(255,255,255,.25);\n    border-radius: 100px;\n    overflow: hidden;\n  }\n  .progress-fill {\n    height: 100%;\n    background: var(--palha);\n    border-radius: 100px;\n    transition: width .5s cubic-bezier(.4,0,.2,1);\n  }\n  .progress-label {\n    font-size: .78rem;\n    color: rgba(255,255,255,.7);\n    font-weight: 500;\n    white-space: nowrap;\n    min-width: 64px;\n    text-align: right;\n  }\n\n  .step-card {\n    background: var(--branco);\n    border-radius: var(--radius);\n    padding: 48px 44px;\n    box-shadow: 0 16px 50px rgba(0,0,0,.18);\n    border: none;\n    position: relative;\n  }\n\n  .step-emoji { font-size: 2.4rem; margin-bottom: 20px; display: block; line-height: 1; }\n\n  .step-question {\n    font-family: 'Zilla Slab', serif;\n    font-size: clamp(1.35rem, 3vw, 1.65rem);\n    font-weight: 500;\n    line-height: 1.35;\n    color: var(--verde-escuro);\n    margin-bottom: 8px;\n  }\n\n  .step-subtitle {\n    font-size: .93rem;\n    color: var(--texto-leve);\n    line-height: 1.65;\n    margin-bottom: 28px;\n  }\n\n  .msg-bubble {\n    display: block;\n    padding: 14px 20px;\n    background: var(--verde-soft);\n    border-left: 3px solid var(--verde);\n    border-radius: 0 12px 12px 0;\n    font-size: .94rem;\n    color: var(--verde-escuro);\n    line-height: 1.55;\n    margin-bottom: 28px;\n  }\n\n  .options-grid {\n    display: flex;\n    flex-direction: column;\n    gap: 10px;\n    margin-bottom: 28px;\n  }\n\n  .option-btn {\n    display: flex;\n    align-items: center;\n    gap: 14px;\n    padding: 15px 20px;\n    border: 2px solid var(--palha);\n    border-radius: 12px;\n    background: var(--branco);\n    cursor: pointer;\n    transition: all .25s ease;\n    font-family: 'DM Sans', sans-serif;\n    font-size: .97rem;\n    color: var(--texto);\n    text-align: left;\n    width: 100%;\n  }\n  .option-btn:hover {\n    border-color: var(--verde-claro);\n    background: rgba(57,97,82,.025);\n    transform: translateX(4px);\n  }\n  .option-btn.selected {\n    border-color: var(--verde);\n    background: var(--verde-soft);\n    box-shadow: 0 0 0 1px var(--verde);\n  }\n  .option-btn .opt-icon {\n    width: 40px; height: 40px;\n    display: flex; align-items: center; justify-content: center;\n    border-radius: 10px;\n    background: var(--creme);\n    font-size: 1.25rem;\n    flex-shrink: 0;\n    transition: background .25s;\n  }\n  .option-btn.selected .opt-icon { background: rgba(57,97,82,.1); }\n  .opt-text { display: flex; flex-direction: column; }\n  .opt-text strong { font-weight: 600; font-size: .93rem; margin-bottom: 1px; }\n  .opt-text span { font-size: .8rem; color: var(--texto-leve); }\n\n  .text-input-wrap { margin-bottom: 20px; position: relative; }\n  .text-input {\n    width: 100%;\n    padding: 15px 20px;\n    border: 2px solid var(--palha);\n    border-radius: 12px;\n    font-family: 'DM Sans', sans-serif;\n    font-size: .97rem;\n    color: var(--texto);\n    background: var(--branco);\n    transition: border-color .25s;\n    outline: none;\n  }\n  .text-input:focus { border-color: var(--verde); }\n  .text-input::placeholder { color: #bfb8a8; }\n\n  .or-divider {\n    text-align: center;\n    font-size: .78rem;\n    color: var(--texto-leve);\n    margin: 8px 0 16px;\n    position: relative;\n  }\n  .or-divider::before, .or-divider::after {\n    content: '';\n    position: absolute;\n    top: 50%;\n    width: calc(50% - 20px);\n    height: 1px;\n    background: var(--palha);\n  }\n  .or-divider::before { left: 0; }\n  .or-divider::after { right: 0; }\n\n  .btn-row {\n    display: flex;\n    gap: 12px;\n    align-items: center;\n    flex-wrap: wrap;\n  }\n\n  .btn-primary {\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n    padding: 14px 34px;\n    background: var(--verde);\n    color: var(--branco);\n    font-family: 'DM Sans', sans-serif;\n    font-size: .93rem;\n    font-weight: 600;\n    border: none;\n    border-radius: 100px;\n    cursor: pointer;\n    transition: all .3s ease;\n    box-shadow: var(--shadow-sm);\n  }\n  .btn-primary:hover {\n    background: var(--verde-hover);\n    transform: translateY(-1px);\n    box-shadow: var(--shadow-md);\n  }\n  .btn-primary:disabled {\n    opacity: .4;\n    cursor: not-allowed;\n    transform: none;\n    box-shadow: none;\n  }\n\n  .btn-back {\n    display: inline-flex;\n    align-items: center;\n    gap: 5px;\n    padding: 10px 16px;\n    background: transparent;\n    color: var(--texto-leve);\n    font-family: 'DM Sans', sans-serif;\n    font-size: .85rem;\n    font-weight: 500;\n    border: none;\n    border-radius: 100px;\n    cursor: pointer;\n    transition: color .25s;\n  }\n  .btn-back:hover { color: var(--verde); }\n\n  .btn-link {\n    background: none;\n    border: none;\n    color: var(--verde-claro);\n    font-family: 'DM Sans', sans-serif;\n    font-size: .85rem;\n    cursor: pointer;\n    text-decoration: underline;\n    text-underline-offset: 3px;\n    padding: 4px 2px;\n    transition: color .2s;\n    margin-top: 4px;\n  }\n  .btn-link:hover { color: var(--verde-escuro); }\n\n  .lead-fields {\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n    margin-bottom: 28px;\n  }\n  .field-group label {\n    display: block;\n    font-size: .83rem;\n    font-weight: 600;\n    color: var(--verde-escuro);\n    margin-bottom: 5px;\n  }\n  .field-group input {\n    width: 100%;\n    padding: 14px 18px;\n    border: 2px solid var(--palha);\n    border-radius: 10px;\n    font-family: 'DM Sans', sans-serif;\n    font-size: .93rem;\n    color: var(--texto);\n    background: var(--branco);\n    transition: border-color .25s;\n    outline: none;\n  }\n  .field-group input:focus { border-color: var(--verde); }\n  .field-group input::placeholder { color: #bfb8a8; }\n  .field-note {\n    font-size: .76rem;\n    color: var(--texto-leve);\n    margin-top: 4px;\n  }\n\n  .result-expeditions {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    margin-bottom: 28px;\n  }\n  .expedition-card {\n    display: flex;\n    align-items: center;\n    gap: 16px;\n    padding: 18px 22px;\n    background: var(--creme);\n    border-radius: 14px;\n    border: 2px solid var(--palha);\n    text-align: left;\n    cursor: pointer;\n    transition: all .25s;\n  }\n  .expedition-card:hover {\n    border-color: var(--verde-claro);\n    transform: translateY(-2px);\n    box-shadow: var(--shadow-md);\n  }\n  .expedition-card.selected {\n    border-color: var(--verde);\n    background: rgba(57,97,82,.05);\n    box-shadow: 0 0 0 1px var(--verde);\n  }\n  .expedition-card .exp-icon {\n    font-size: 2rem;\n    flex-shrink: 0;\n    width: 48px;\n    text-align: center;\n  }\n  .expedition-card .exp-info { flex: 1; }\n  .expedition-card .exp-info h4 {\n    font-family: 'Zilla Slab', serif;\n    font-size: 1.05rem;\n    font-weight: 600;\n    color: var(--verde-escuro);\n    margin-bottom: 3px;\n  }\n  .expedition-card .exp-info span {\n    font-size: .82rem;\n    color: var(--texto-leve);\n    line-height: 1.4;\n    display: block;\n  }\n  .expedition-card .exp-arrow {\n    color: var(--verde);\n    font-size: 1.15rem;\n    flex-shrink: 0;\n    transition: transform .25s;\n  }\n  .expedition-card:hover .exp-arrow { transform: translateX(4px); }\n\n  .cta-options {\n    display: flex;\n    flex-direction: column;\n    gap: 14px;\n    margin-bottom: 20px;\n  }\n  .cta-card {\n    display: flex;\n    align-items: center;\n    gap: 16px;\n    padding: 20px 24px;\n    background: var(--branco);\n    border: 2px solid var(--palha);\n    border-radius: 14px;\n    cursor: pointer;\n    transition: all .3s;\n    text-decoration: none;\n    color: var(--texto);\n  }\n  .cta-card:hover {\n    border-color: var(--verde);\n    background: var(--verde-soft);\n    transform: translateY(-2px);\n    box-shadow: var(--shadow-md);\n  }\n  .cta-card .cta-icon {\n    width: 52px; height: 52px;\n    display: flex; align-items: center; justify-content: center;\n    border-radius: 14px;\n    background: var(--verde);\n    color: var(--branco);\n    font-size: 1.5rem;\n    flex-shrink: 0;\n  }\n  .cta-card .cta-text { flex: 1; }\n  .cta-card .cta-text strong {\n    display: block;\n    font-size: .95rem;\n    font-weight: 700;\n    color: var(--verde-escuro);\n    margin-bottom: 3px;\n  }\n  .cta-card .cta-text span {\n    font-size: .82rem;\n    color: var(--texto-leve);\n    line-height: 1.4;\n  }\n  .cta-card .cta-go {\n    color: var(--verde);\n    font-size: 1.2rem;\n    flex-shrink: 0;\n    transition: transform .25s;\n  }\n  .cta-card:hover .cta-go { transform: translateX(5px); }\n\n  @keyframes fadeUp {\n    from { opacity: 0; transform: translateY(18px); }\n    to   { opacity: 1; transform: translateY(0); }\n  }\n  .animate-in { animation: fadeUp .45s ease both; }\n\n  .footer-strip {\n    padding: 32px 24px;\n    text-align: center;\n    background: var(--verde-escuro);\n    color: rgba(255,255,255,.45);\n    font-size: .8rem;\n    letter-spacing: .3px;\n  }\n  .footer-strip a {\n    color: rgba(255,255,255,.6);\n    text-decoration: none;\n    transition: color .2s;\n  }\n  .footer-strip a:hover { color: var(--palha); }\n\n  @media (max-width: 600px) {\n    .hero { padding: 44px 20px 56px; }\n    .hero-stats { gap: 28px; flex-wrap: wrap; justify-content: center; }\n    .step-card { padding: 32px 22px; }\n    .form-section { padding: 56px 14px; }\n    .btn-row { flex-direction: column; width: 100%; }\n    .btn-primary { width: 100%; justify-content: center; }\n  }\n<\/style>\n<\/head>\n<body>\n\n<!-- ======================== HERO ======================== -->\n<section class=\"hero\" id=\"hero\">\n  <img decoding=\"async\" src=\"https:\/\/vaidemotorhome.com\/lp\/wp-content\/uploads\/2026\/02\/emblema1-scaled.png\"\n       alt=\"Vai de Motorhome\"\n       style=\"width:120px;height:auto;margin-bottom:28px;animation:fadeUp .7s ease both\">\n\n  <div class=\"hero-badge\">\n    Expedi\u00e7\u00f5es guiadas de Motorhome\n  <\/div>\n\n  <h1>\u00c9 hora de viver<br>uma viagem diferente.<\/h1>\n\n  <h2 style=\"font-family:'Zilla Slab',serif;font-size:clamp(1.3rem,3vw,1.7rem);font-weight:500;font-style:italic;color:var(--verde-claro);margin-bottom:28px;max-width:600px;text-align:center;line-height:1.3;animation:fadeUp .7s .18s ease both\">\n    A gente cuida de tudo. Voc\u00ea cuida de viver.\n  <\/h2>\n\n  <p class=\"hero-sub\">\n    A Vai de Motorhome oferece <strong style=\"color:var(--verde);font-weight:600\">expedi\u00e7\u00f5es de motorhome<\/strong> para fam\u00edlias brasileiras, com roteiro completo, experi\u00eancias fora do comum e guias especialistas para cuidar de cada detalhe da viagem.\n  <\/p>\n\n  <a href=\"#formulario\" class=\"hero-cta\" id=\"heroCta\">\n    Descubra qual expedi\u00e7\u00e3o \u00e9 perfeita pra voc\u00ea\n    <span class=\"arrow\">\u2192<\/span>\n  <\/a>\n\n  <div class=\"hero-stats\">\n    <div class=\"hero-stat\">\n      <strong>+500<\/strong>\n      <span>fam\u00edlias viajaram<\/span>\n    <\/div>\n    <div class=\"hero-stat\">\n      <strong>9<\/strong>\n      <span>roteiros de expedi\u00e7\u00e3o<\/span>\n    <\/div>\n    <div class=\"hero-stat\">\n      <strong>10+<\/strong>\n      <span>anos de estrada<\/span>\n    <\/div>\n  <\/div>\n\n  <div class=\"hero-divider\"><\/div>\n<\/section>\n\n<!-- ======================== FORM ======================== -->\n<section class=\"form-section\" id=\"formulario\">\n  <div class=\"form-container\">\n    <div class=\"progress-wrap\" id=\"progressWrap\" style=\"opacity:0\">\n      <div class=\"progress-track\">\n        <div class=\"progress-fill\" id=\"progressFill\" style=\"width:0%\"><\/div>\n      <\/div>\n      <div class=\"progress-label\" id=\"progressLabel\"><\/div>\n    <\/div>\n    <div class=\"step-card\" id=\"stepCard\"><\/div>\n  <\/div>\n<\/section>\n\n<!-- ======================== FOOTER ======================== -->\n<div class=\"footer-strip\">\n  Vai de Motorhome &copy; 2026 \u2014 Todos os direitos reservados &nbsp;\u00b7&nbsp;\n  <a href=\"#\">Pol\u00edtica de Privacidade<\/a>\n<\/div>\n\n<script>\n(function() {\n\n  \/* ================================================\n     DATA \u2014 based on real 2026\/2027 calendar\n     ================================================ *\/\n  const EXPEDITIONS = {\n    espanha: {\n      id:'espanha', name:'Expedi\u00e7\u00e3o Espanha', icon:'\ud83c\uddea\ud83c\uddf8',\n      keys:['espanha','spain','espa\u00f1a'],\n      desc:'Cultura, gastronomia e litoral numa rota exclusiva de motorhome.',\n      diff:'Roteiro exclusivo com guia que mora na Espanha',\n      seasons:['primavera','outono'],\n      dates:{ primavera:'Fev \u2013 Mar 2027', outono:'Nov 2026 \u00b7 Out \u2013 Nov 2027' },\n      url:'https:\/\/vaidemotorhome.com\/lp\/exp-espanha\/'\n    },\n    eua: {\n      id:'eua', name:'Estados Unidos \u2014 Parques Nacionais', icon:'\ud83c\uddfa\ud83c\uddf8',\n      keys:['estados unidos','eua','usa','america'],\n      desc:'Os maiores parques nacionais do mundo numa rota \u00e9pica de motorhome.',\n      diff:'Grupo de at\u00e9 7 fam\u00edlias com guia brasileiro',\n      seasons:['primavera','outono'],\n      dates:{ primavera:'Mar \u2013 Mai 2027', outono:'Set \u2013 Nov 2027' },\n      url:'https:\/\/vaidemotorhome.com\/lp\/expedicao-eua\/'\n    },\n    ale_aus_eslov: {\n      id:'ale_aus_eslov', name:'Alemanha, \u00c1ustria e Eslov\u00eania', icon:'\ud83c\udde9\ud83c\uddea',\n      keys:['alemanha','germany','austria','\u00e1ustria','eslovenia','eslov\u00eania','slovenia'],\n      desc:'Estradas alpinas, vilarejos medievais e lagos cor de esmeralda.',\n      diff:'3 pa\u00edses, paisagens de cinema, grupo pequeno',\n      seasons:['primavera','verao','outono'],\n      dates:{ primavera:'Abr \u2013 Jun 2027', verao:'Ago \u2013 Set 2027', outono:'Set \u2013 Out 2027' },\n      url:'https:\/\/vaidemotorhome.com\/lp\/exp-aae\/'\n    },\n    esp_port: {\n      id:'esp_port', name:'Portugal e Espanha', icon:'\ud83c\uddf5\ud83c\uddf9\ud83c\uddea\ud83c\uddf8',\n      keys:['espanha','spain','espa\u00f1a','portugal'],\n      desc:'Duas culturas irm\u00e3s, uma estrada inesquec\u00edvel.',\n      diff:'Do Mediterr\u00e2neo ao Atl\u00e2ntico de motorhome',\n      seasons:['primavera'],\n      dates:{ primavera:'Mai \u2013 Jun 2027' },\n      url:'https:\/\/vaidemotorhome.com\/lp\/exp-pt-esp\/',\n      tag:'Pr\u00e9-lan\u00e7amento'\n    },\n    ale_aus_ita: {\n      id:'ale_aus_ita', name:'Alemanha, \u00c1ustria e It\u00e1lia', icon:'\ud83c\udde9\ud83c\uddea\ud83c\uddee\ud83c\uddf9',\n      keys:['alemanha','germany','austria','\u00e1ustria','italia','it\u00e1lia','italy'],\n      desc:'Alpes, Dolomitas e a dolce vita numa rota cinematogr\u00e1fica.',\n      diff:'3 pa\u00edses, dos Alpes ao Mediterr\u00e2neo',\n      seasons:['primavera','outono'],\n      dates:{ primavera:'Abr \u2013 Jun 2027', outono:'Set \u2013 Out 2027' },\n      url:'https:\/\/vaidemotorhome.com\/lp\/lp-aai\/'\n    },\n    suica_franca: {\n      id:'suica_franca', name:'Su\u00ed\u00e7a e Fran\u00e7a', icon:'\ud83c\udde8\ud83c\udded\ud83c\uddeb\ud83c\uddf7',\n      keys:['suica','su\u00ed\u00e7a','switzerland','franca','fran\u00e7a','france'],\n      desc:'Lagos alpinos, campos de lavanda e queijos que voc\u00ea nunca vai esquecer.',\n      diff:'O melhor da Europa em duas semanas',\n      seasons:['outono'],\n      dates:{ outono:'Set 2027' },\n      url: null\n    },\n    noruega: {\n      id:'noruega', name:'Expedi\u00e7\u00e3o Noruega', icon:'\ud83c\uddf3\ud83c\uddf4',\n      keys:['noruega','norway'],\n      desc:'Fiordes, sol da meia-noite e paisagens de outro planeta.',\n      diff:'Uma experi\u00eancia que poucos brasileiros j\u00e1 viveram',\n      seasons:['primavera','outono'],\n      dates:{ primavera:'Jun 2027', outono:'Set 2027' },\n      url:'https:\/\/vaidemotorhome.com\/lp\/exp-noruega\/',\n      tag:'Pr\u00e9-lan\u00e7amento'\n    }\n  };\n\n  const SEASON_LABELS = { primavera:'Primavera', verao:'Ver\u00e3o', outono:'Outono' };\n\n  \/* ================================================\n     HELPERS\n     ================================================ *\/\n  function norm(s) { return (s||'').toLowerCase().normalize('NFD').replace(\/[\\u0300-\\u036f]\/g,'').trim(); }\n\n  function matchDest(input) {\n    const s = norm(input);\n    if (!s) return { found:false, ids:[] };\n    const matched = [];\n    for (const [id, exp] of Object.entries(EXPEDITIONS)) {\n      for (const k of exp.keys) {\n        if (s.includes(norm(k))) { matched.push(id); break; }\n      }\n    }\n    return { found: matched.length > 0, ids: matched };\n  }\n\n  function getFiltered() {\n    if (S.destFilterIds && S.destFilterIds.length > 0) {\n      return S.destFilterIds.map(id => EXPEDITIONS[id]).filter(Boolean);\n    }\n    const s = S.season;\n    if (!s || s === 'naosei') return Object.values(EXPEDITIONS);\n    return Object.values(EXPEDITIONS).filter(e => e.seasons.includes(s));\n  }\n\n  \/* ================================================\n     STATE\n     ================================================ *\/\n  let S = {\n    step: 0,\n    season: null,\n    destText: '',\n    destFilterIds: null,\n    destMatchIds: [],\n    destMatch: false,\n    selectedExp: null,\n    name: '', email: '', whatsapp: ''\n  };\n\n  const TOTAL = 4;\n  const card  = document.getElementById('stepCard');\n  const pFill = document.getElementById('progressFill');\n  const pLbl  = document.getElementById('progressLabel');\n  const pWrap = document.getElementById('progressWrap');\n\n  function progress(n) {\n    pFill.style.width = Math.round((n\/TOTAL)*100) + '%';\n    pLbl.textContent  = n + ' de ' + TOTAL;\n    pWrap.style.opacity = n > 0 ? '1' : '0';\n  }\n\n  function anim() {\n    card.classList.remove('animate-in');\n    void card.offsetWidth;\n    card.classList.add('animate-in');\n  }\n\n  function go(step) { S.step = step; progress(step); anim(); render(); }\n\n  \/* ================================================\n     RENDER\n     ================================================ *\/\n  function render() {\n    switch(S.step) {\n      case 0: return stepWelcome();\n      case 1: return stepSeason();\n      case 2: return stepExpedition();\n      case 3: return stepLead();\n      case 4: return stepConversion();\n      case 5: return stepNoMatch();\n    }\n  }\n\n  \/* \u2014 0: WELCOME \u2014 *\/\n  function stepWelcome() {\n    card.innerHTML = `\n      <span class=\"step-emoji\">\ud83d\ude90\u2728<\/span>\n      <h2 class=\"step-question\">Que bom que voc\u00ea se interessou pelas nossas expedi\u00e7\u00f5es de motorhome!<\/h2>\n      <p class=\"step-subtitle\">Em poucos segundos, vou te ajudar a descobrir qual expedi\u00e7\u00e3o combina com voc\u00ea.<\/p>\n      <div class=\"btn-row\">\n        <button class=\"btn-primary\" id=\"bStart\">Come\u00e7ar <span style=\"font-size:1.1em\">\u2192<\/span><\/button>\n      <\/div>`;\n    q('#bStart').addEventListener('click', () => go(1));\n  }\n\n  \/* \u2014 1: SEASON \u2014 *\/\n  function stepSeason() {\n    card.innerHTML = `\n      <span class=\"step-emoji\">\ud83d\udcc5<\/span>\n      <h2 class=\"step-question\">Em qual \u00e9poca do ano voc\u00ea gostaria de viajar?<\/h2>\n      <p class=\"step-subtitle\">Vou te mostrar as expedi\u00e7\u00f5es dispon\u00edveis no per\u00edodo que voc\u00ea escolher.<\/p>\n\n      <div class=\"options-grid\" id=\"sGrid\">\n        <button class=\"option-btn\" data-s=\"primavera\">\n          <span class=\"opt-icon\">\ud83c\udf38<\/span>\n          <span class=\"opt-text\"><strong>Primavera 2027<\/strong><span>Mar\u00e7o \u2013 Junho<\/span><\/span>\n        <\/button>\n        <button class=\"option-btn\" data-s=\"verao\">\n          <span class=\"opt-icon\">\u2600\ufe0f<\/span>\n          <span class=\"opt-text\"><strong>Ver\u00e3o 2027<\/strong><span>Julho \u2013 Setembro<\/span><\/span>\n        <\/button>\n        <button class=\"option-btn\" data-s=\"outono\">\n          <span class=\"opt-icon\">\ud83c\udf41<\/span>\n          <span class=\"opt-text\"><strong>Outono 2026 \/ 2027<\/strong><span>Setembro \u2013 Novembro<\/span><\/span>\n        <\/button>\n        <button class=\"option-btn\" data-s=\"naosei\">\n          <span class=\"opt-icon\">\ud83e\udd14<\/span>\n          <span class=\"opt-text\"><strong>Ainda n\u00e3o sei<\/strong><span>Me mostre todas as op\u00e7\u00f5es!<\/span><\/span>\n        <\/button>\n      <\/div>`;\n\n    q('#sGrid').querySelectorAll('.option-btn').forEach(b => {\n      b.addEventListener('click', () => { S.season = b.dataset.s; S.destFilterIds = null; go(2); });\n    });\n  }\n\n  \/* \u2014 2: EXPEDITION PICKER (filtered by season or destFilterIds) \u2014 *\/\n  function stepExpedition() {\n    const s = S.season;\n    const pool = getFiltered();\n\n    let seasonMsg;\n    if (S.destFilterIds && S.destFilterIds.length > 0) {\n      seasonMsg = `Encontrei <strong>${pool.length} expedi\u00e7\u00f5es<\/strong> que passam por esse destino \ud83d\udc47`;\n    } else if (s === 'primavera' || s === 'outono' || s === 'verao') {\n      seasonMsg = `\u00d3tima escolha! Aqui est\u00e3o as expedi\u00e7\u00f5es dispon\u00edveis na <strong>${SEASON_LABELS[s]}<\/strong> \ud83d\udc47`;\n    } else {\n      seasonMsg = 'Aqui est\u00e3o todas as nossas expedi\u00e7\u00f5es \u2014 escolha a que mais te encanta! \ud83d\udc47';\n    }\n\n    const cardsHTML = pool.map((e,i) => {\n      const dateLabel = (s && s !== 'naosei' && e.dates[s]) ? e.dates[s] : e.seasons.map(ss => (e.dates[ss]||'')).filter(Boolean).join(' \u00b7 ');\n      const tagHTML = e.tag ? `<span style=\"display:inline-block;padding:2px 10px;border-radius:100px;background:rgba(184,134,46,.12);color:#9a7420;font-size:.72rem;font-weight:600;letter-spacing:.3px;margin-left:8px;vertical-align:middle\">${e.tag}<\/span>` : '';\n      return `\n      <div class=\"expedition-card\" data-eid=\"${e.id}\">\n        <span class=\"exp-icon\">${e.icon}<\/span>\n        <div class=\"exp-info\">\n          <h4>${e.name}${tagHTML}<\/h4>\n          <span>${e.desc}<\/span>\n          <span style=\"display:block;margin-top:4px;font-weight:600;color:var(--verde);font-size:.8rem\">\ud83d\udcc5 ${dateLabel}<\/span>\n        <\/div>\n        <span class=\"exp-arrow\">\u2192<\/span>\n      <\/div>`;\n    }).join('');\n\n    card.innerHTML = `\n      <span class=\"step-emoji\">\ud83d\uddfa\ufe0f<\/span>\n      <div class=\"msg-bubble\">${seasonMsg}<\/div>\n      <h2 class=\"step-question\">Qual expedi\u00e7\u00e3o te encanta mais?<\/h2>\n      <p class=\"step-subtitle\">Clique na expedi\u00e7\u00e3o para ver os detalhes ou registrar seu interesse.<\/p>\n\n      <div class=\"result-expeditions\" id=\"eGrid\">${cardsHTML}<\/div>\n\n      <div style=\"border-top:1px solid var(--palha);padding-top:18px;margin-top:8px\">\n        <p style=\"font-size:.85rem;color:var(--texto-leve);margin-bottom:10px\">Tem outro destino em mente?<\/p>\n        <div style=\"display:flex;gap:10px\">\n          <input class=\"text-input\" id=\"dIn\" type=\"text\" placeholder=\"Digite o pa\u00eds\u2026\" autocomplete=\"off\" style=\"flex:1\">\n          <button class=\"btn-primary\" id=\"bDn\" disabled style=\"white-space:nowrap;padding:12px 22px\">Buscar \u2192<\/button>\n        <\/div>\n      <\/div>\n\n      <div class=\"btn-row\" style=\"margin-top:20px\">\n        <button class=\"btn-back\" id=\"bBk\">\u2190 Voltar<\/button>\n      <\/div>`;\n\n    \/\/ Click expedition \u2192 LP redirect OR interest form\n    q('#eGrid').querySelectorAll('.expedition-card').forEach(c => {\n      c.addEventListener('click', () => {\n        const exp = EXPEDITIONS[c.dataset.eid];\n        S.selectedExp = exp;\n        S.destText = exp.name;\n        S.destMatch = true;\n\n        if (exp.url) {\n          window.open(exp.url, '_blank');\n        } else {\n          go(3);\n        }\n      });\n    });\n\n    \/\/ Type a custom destination\n    const inp = q('#dIn'), nxt = q('#bDn');\n    inp.addEventListener('input', () => { nxt.disabled = !inp.value.trim(); });\n    inp.addEventListener('keydown', (ev) => { if (ev.key === 'Enter' && inp.value.trim()) nxt.click(); });\n\n    nxt.addEventListener('click', () => {\n      S.destText = inp.value.trim();\n      const r = matchDest(S.destText);\n      if (r.found) {\n        S.destMatch = true;\n        S.destMatchIds = r.ids;\n        if (r.ids.length === 1) {\n          \/\/ Single match\n          S.selectedExp = EXPEDITIONS[r.ids[0]];\n          if (S.selectedExp.url) {\n            window.open(S.selectedExp.url, '_blank');\n          } else {\n            go(3);\n          }\n        } else {\n          \/\/ Multiple matches \u2192 show filtered list\n          S.destFilterIds = r.ids;\n          go(2);\n        }\n      } else {\n        go(5);\n      }\n    });\n\n    q('#bBk').addEventListener('click', () => {\n      S.destFilterIds = null;\n      go(1);\n    });\n  }\n\n  \/* \u2014 3: INTEREST FORM \u2014 *\/\n  function stepLead() {\n    const exp = S.selectedExp;\n    const s = S.season;\n    const dateLabel = (exp && s && s !== 'naosei' && exp.dates && exp.dates[s]) ? exp.dates[s] : (exp ? exp.seasons.map(ss => (exp.dates[ss]||'')).filter(Boolean).join(' \u00b7 ') : '');\n\n    card.innerHTML = `\n      <span class=\"step-emoji\">\ud83d\ude0d<\/span>\n      <div class=\"msg-bubble\" style=\"text-align:center;border-left:none;border-radius:12px;background:var(--verde-soft)\">\n        ${exp ? exp.icon : '\ud83d\ude90'} <strong>${exp ? exp.name : 'Expedi\u00e7\u00e3o'}<\/strong><br>\n        <span style=\"font-size:.84rem;color:var(--texto-leve)\">${dateLabel}<\/span>\n      <\/div>\n      <h2 class=\"step-question\">Obrigada por registrar seu interesse!<\/h2>\n      <p class=\"step-subtitle\">Deixe seus dados e nossa equipe entrar\u00e1 em contato com todos os detalhes desse roteiro.<\/p>\n\n      <div class=\"lead-fields\">\n        <div class=\"field-group\">\n          <label for=\"fN\">Seu nome<\/label>\n          <input id=\"fN\" type=\"text\" placeholder=\"Como quer ser chamado(a)?\" value=\"${S.name}\">\n        <\/div>\n        <div class=\"field-group\">\n          <label for=\"fE\">E-mail<\/label>\n          <input id=\"fE\" type=\"email\" placeholder=\"seu@email.com\" value=\"${S.email}\">\n        <\/div>\n        <div class=\"field-group\">\n          <label for=\"fW\">WhatsApp (com DDD)<\/label>\n          <input id=\"fW\" type=\"tel\" placeholder=\"(11) 99999-9999\" value=\"${S.whatsapp}\">\n        <\/div>\n      <\/div>\n\n      <div class=\"btn-row\" style=\"justify-content:space-between\">\n        <button class=\"btn-back\" id=\"bBk3\">\u2190 Voltar<\/button>\n        <button class=\"btn-primary\" id=\"bSub\" disabled>Enviar \u2192<\/button>\n      <\/div>`;\n\n    const n = q('#fN'), e = q('#fE'), w = q('#fW'), btn = q('#bSub');\n    function chk() {\n      S.name = n.value.trim(); S.email = e.value.trim(); S.whatsapp = w.value.trim();\n      btn.disabled = !(S.name && S.email && S.email.includes('@') && S.email.includes('.') && S.whatsapp.length >= 8);\n    }\n    n.addEventListener('input', chk);\n    e.addEventListener('input', chk);\n    w.addEventListener('input', chk);\n    chk();\n\n    q('#bBk3').addEventListener('click', () => go(2));\n    btn.addEventListener('click', () => {\n      \/\/ === POST para Google Apps Script ===\n      const WEBAPP_URL = 'https:\/\/script.google.com\/macros\/s\/AKfycbzY37jVuwroDFbWuyq6uMTaBxVyHjjRMQcwsIthtUiup5Sf0Er8iadJ3eQ0Fc-ToRq3\/exec';\n\n      const params = new URLSearchParams({\n        nome: S.name,\n        email: S.email,\n        whatsapp: S.whatsapp,\n        estacao: S.season || '',\n        expedicao: S.selectedExp?.name || ''\n      });\n\n      fetch(WEBAPP_URL + '?' + params.toString(), { method: 'POST', mode: 'no-cors' })\n        .catch(err => console.warn('Erro ao enviar lead:', err));\n      go(4);\n    });\n  }\n\n  \/* \u2014 4: INTEREST CONFIRMATION \u2014 *\/\n  function stepConversion() {\n    const exp = S.selectedExp || {};\n    const first = S.name.split(' ')[0];\n\n    card.innerHTML = `\n      <div style=\"text-align:center\">\n        <span class=\"step-emoji\" style=\"font-size:3rem\">\ud83c\udf89<\/span>\n        <h2 class=\"step-question\" style=\"margin-bottom:8px\">${first}, recebemos seus dados!<\/h2>\n        <p class=\"step-subtitle\" style=\"max-width:460px;margin:0 auto 12px\">\n          ${exp.icon || '\ud83d\ude90'} <strong>${exp.name || 'Expedi\u00e7\u00e3o'}<\/strong>\n        <\/p>\n        <p style=\"font-size:.93rem;color:var(--texto-leve);line-height:1.65;max-width:440px;margin:0 auto 32px\">\n          Nossa equipe entrar\u00e1 em contato com todos os detalhes desse roteiro. Fique de olho no seu e-mail e WhatsApp!\n        <\/p>\n      <\/div>\n\n      <div style=\"border-top:1px solid var(--palha);padding-top:20px;text-align:center\">\n        <p style=\"font-size:.88rem;color:var(--texto-leve);margin-bottom:14px\">Enquanto isso, conhe\u00e7a as expedi\u00e7\u00f5es que j\u00e1 est\u00e3o abertas:<\/p>\n        <div class=\"btn-row\" style=\"justify-content:center\">\n          <button class=\"btn-primary\" id=\"bSeeAll\">Ver expedi\u00e7\u00f5es dispon\u00edveis \u2192<\/button>\n        <\/div>\n      <\/div>`;\n\n    q('#bSeeAll').addEventListener('click', () => {\n      S.season = 'naosei';\n      S.destFilterIds = null;\n      go(2);\n    });\n  }\n\n  \/* \u2014 5: NO MATCH \u2014 Destination not in portfolio \u2014 *\/\n  function stepNoMatch() {\n    \/\/ \u26a0\ufe0f REPLACE WITH REAL WHATSAPP\/CONTACT LINK\n    const contactURL = 'https:\/\/web.whatsapp.com\/send?phone=5511996416380&text=Ol%C3%A1!%20Tenho%20interesse%20em%20aluguel%20de%20motorhome%20e%20roteiro%20personalizado.';\n\n    card.innerHTML = `\n      <span class=\"step-emoji\">\ud83d\uddfa\ufe0f<\/span>\n      <h2 class=\"step-question\">N\u00e3o temos nenhuma expedi\u00e7\u00e3o nesse destino<\/h2>\n      <p class=\"step-subtitle\" style=\"margin-bottom:24px\">\n        Mas isso n\u00e3o significa que a viagem n\u00e3o deve acontecer! N\u00f3s oferecemos <strong>aluguel de motorhome<\/strong> e <strong>cria\u00e7\u00e3o de roteiros personalizados<\/strong> para que voc\u00ea ainda possa desfrutar da experi\u00eancia e da conveni\u00eancia de uma viagem com tudo organizado.\n      <\/p>\n\n      <div class=\"cta-options\" style=\"margin-bottom:28px\">\n        <a class=\"cta-card\" href=\"${contactURL}\" target=\"_blank\" rel=\"noopener\">\n          <span class=\"cta-icon\">\ud83d\udcac<\/span>\n          <span class=\"cta-text\">\n            <strong>Falar com a equipe<\/strong>\n            <span>Tire d\u00favidas e monte seu roteiro personalizado<\/span>\n          <\/span>\n          <span class=\"cta-go\">\u2192<\/span>\n        <\/a>\n      <\/div>\n\n      <div style=\"text-align:center;padding-top:8px;border-top:1px solid var(--palha)\">\n        <p style=\"font-size:.88rem;color:var(--texto-leve);margin-bottom:14px\">Ou, se preferir, conhe\u00e7a nossas expedi\u00e7\u00f5es em grupo:<\/p>\n        <div class=\"btn-row\" style=\"justify-content:center\">\n          <button class=\"btn-primary\" id=\"bSeeExp\">Ver expedi\u00e7\u00f5es dispon\u00edveis \u2192<\/button>\n        <\/div>\n      <\/div>`;\n\n    q('#bSeeExp').addEventListener('click', () => {\n      S.destFilterIds = null;\n      S.season = 'naosei';\n      go(2);\n    });\n  }\n\n  \/* ================================================\n     INIT\n     ================================================ *\/\n  function q(s) { return document.querySelector(s); }\n\n  go(0);\n\n  document.getElementById('heroCta').addEventListener('click', function(e) {\n    e.preventDefault();\n    document.getElementById('formulario').scrollIntoView({ behavior:'smooth' });\n  });\n\n})();\n<\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Vai de Motorhome \u2014 Descubra Sua Expedi\u00e7\u00e3o Expedi\u00e7\u00f5es guiadas de Motorhome \u00c9 hora de viveruma viagem diferente. A gente cuida de tudo. Voc\u00ea cuida de viver. A Vai de Motorhome oferece expedi\u00e7\u00f5es de motorhome para fam\u00edlias brasileiras, com roteiro completo, experi\u00eancias fora do comum e guias especialistas para cuidar de cada detalhe da viagem. Descubra [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"folder":[17],"class_list":["post-10598","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/pages\/10598","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/comments?post=10598"}],"version-history":[{"count":12,"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/pages\/10598\/revisions"}],"predecessor-version":[{"id":11593,"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/pages\/10598\/revisions\/11593"}],"wp:attachment":[{"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/media?parent=10598"}],"wp:term":[{"taxonomy":"folder","embeddable":true,"href":"https:\/\/vaidemotorhome.com\/lp\/wp-json\/wp\/v2\/folder?post=10598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}