/* Home "vitrine" do Voe Longe. Medidas copiadas do protótipo (Tailwind) para CSS puro. */
body.vitrine{background:#041a24;color:#fff;overflow-x:hidden;font-family:'Plus Jakarta Sans',-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}
.vitrine ::selection{background:#06b6d4;color:#fff}
.vitrine a{color:inherit}
.vitrine p{color:inherit;margin:0;font-size:inherit}
.vitrine h1,.vitrine h2,.vitrine h3,.vitrine h4{font-family:'Plus Jakarta Sans',sans-serif;margin:0}
.vt-anim .vt-nav,.vt-anim .vt-wm,.vt-anim .vt-pod{visibility:hidden}

/* fundo fixo */
.vt-bg{position:fixed;inset:-10% 0;z-index:0;pointer-events:none;overflow:hidden}
.vt-bg img{width:100%;height:100%;object-fit:cover;object-position:center 62%;filter:brightness(.9) saturate(1.15);transform:scale(1.05);will-change:transform}
.vt-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.4),transparent 50%,rgba(4,23,32,.8))}
.vt-escuro{position:fixed;inset:0;z-index:1;background:#041a24;opacity:0;pointer-events:none}

/* vidro */
.vt-glass-nav{background:rgba(10,42,53,.45);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.22)}
.vt-glass-panel{background:linear-gradient(135deg,rgba(8,38,48,.72),rgba(5,25,32,.85));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.16)}
.vt-glass-card{background:rgba(12,48,60,.45);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2)}

/* primeira tela */
.vt-tela{position:relative;z-index:10;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;padding:20px 16px;max-width:1720px;margin:0 auto}
@media(min-width:640px){.vt-tela{padding:20px 24px}}
@media(min-width:1024px){.vt-tela{padding:20px 48px}}

/* letreiro */
.vt-marca{padding:48px 0;text-align:center;user-select:none}
@media(min-width:640px){.vt-marca{padding:80px 0}}
.vitrine .vt-wm{font-size:24px;font-weight:800;letter-spacing:.28em;color:rgba(255,255,255,.85);text-transform:uppercase;text-shadow:0 4px 3px rgba(0,0,0,.07),0 2px 2px rgba(0,0,0,.06);line-height:1.25;perspective:600px}
@media(min-width:640px){.vitrine .vt-wm{font-size:36px}}
@media(min-width:768px){.vitrine .vt-wm{font-size:48px}}
@media(min-width:1024px){.vitrine .vt-wm{font-size:60px}}
.vt-wm .p{display:inline-block;white-space:nowrap}
.vt-wm .l{display:inline-block;will-change:transform}

/* painel */
.vt-pod-wrap{padding-bottom:24px}
.vt-pod{border-radius:2.5rem;padding:24px;box-shadow:0 25px 50px -12px rgba(0,0,0,.35);position:relative}
@media(min-width:640px){.vt-pod{padding:32px}}
@media(min-width:1024px){.vt-pod{padding:40px}}
.vt-pod-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:center}
@media(min-width:1024px){.vt-pod-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px}}
.vitrine .vt-copy>*+*{margin-top:24px}
.vitrine .vt-kicker{color:#38ef7d;text-shadow:0 0 16px rgba(56,239,125,.4);font-weight:800;font-size:20px;letter-spacing:-.025em;text-transform:uppercase;margin-bottom:4px !important}
@media(min-width:640px){.vitrine .vt-kicker{font-size:24px}}
@media(min-width:768px){.vitrine .vt-kicker{font-size:30px}}
.vt-h1{font-size:30px;font-weight:800;text-transform:uppercase;color:#fff;letter-spacing:-.025em;line-height:1}
@media(min-width:640px){.vt-h1{font-size:36px}}
@media(min-width:768px){.vt-h1{font-size:48px}}
.vitrine .vt-sub{color:#cbd5e1;font-size:14px;max-width:28rem;line-height:1.625}
@media(min-width:640px){.vitrine .vt-sub{font-size:16px}}
.vt-botoes{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-top:8px}
.vt-btn{font-size:12px;padding:14px 24px}
.vt-btn i{font-style:normal;width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:10px;transition:transform .3s}
.vt-btn:hover i{transform:rotate(45deg)}
.vt-btn-grad.vt-btn{box-shadow:0 10px 15px -3px rgba(37,99,235,.3)}
.vt-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.1);color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.25);font-weight:700;text-transform:uppercase;border-radius:999px;transition:background .3s}
.vt-btn-ghost:hover{background:rgba(255,255,255,.2)}
.vt-btn-ghost i{background:rgba(255,255,255,.1)}
.vt-btn:focus-visible,.vt-nav-cta:focus-visible,.vt-card:focus-visible{outline:2px solid #22d3ee;outline-offset:3px}

/* destinos */
.vt-dest-cab{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:24px}
.vt-dest-cab span{height:1px;background:rgba(255,255,255,.2);flex:1;display:none}
@media(min-width:640px){.vt-dest-cab span{display:block}}
.vt-dest-cab h2{font-size:12px;font-weight:800;letter-spacing:.1em;color:#67e8f9;text-transform:uppercase;white-space:nowrap}
@media(min-width:640px){.vt-dest-cab h2{font-size:14px}}
.vt-carrossel{overflow:hidden;margin:-16px 0;padding:16px 0;touch-action:pan-y;user-select:none}
.vt-trilho{display:flex;gap:16px;align-items:center;will-change:transform}
.vt-card{flex:0 0 calc((100% - 32px) / 3);border-radius:16px;overflow:hidden;position:relative;height:310px;display:flex;flex-direction:column;text-decoration:none;color:#fff;transition:border-color .3s,box-shadow .45s,height .45s cubic-bezier(.2,.8,.2,1),transform .45s cubic-bezier(.2,.8,.2,1)}
@media(max-width:639px){.vt-card{flex-basis:100%;height:280px}}
.vt-card:hover{border-color:rgba(34,211,238,.5)}
.vt-card .foto{position:absolute;inset:0;z-index:0}
.vt-card .foto img{width:100%;height:100%;object-fit:cover;filter:brightness(.7);transition:transform .7s,filter .45s;-webkit-user-drag:none}
.vt-card:hover .foto img{transform:scale(1.1)}
.vt-card .foto::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#020617,rgba(15,23,42,.4) 50%,transparent)}
.vt-card .corpo{position:relative;z-index:10;padding:16px;display:flex;flex-direction:column;justify-content:space-between;height:100%;transition:padding .45s}
.vt-tag{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:rgba(0,0,0,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.2);color:#a5f3fc;align-self:flex-start;transition:background .45s,color .45s,box-shadow .45s}
.vt-tag svg{width:10px;height:10px}
.vt-card h3{font-size:16px;font-weight:800;line-height:1.25;color:#fff}
.vt-card .qtd{font-size:11px;color:#cbd5e1;font-weight:600;margin:2px 0 8px;text-transform:uppercase}
.vt-card .ir{display:inline-flex;align-items:center;font-size:10px;font-weight:700;color:#67e8f9;text-transform:uppercase;letter-spacing:.05em;transition:transform .3s,background .3s,color .3s}
.vt-card:hover .ir{transform:translateX(4px)}
/* card em destaque: o do meio */
.vt-card.ativo{height:340px;border:2px solid rgba(34,211,238,.8);box-shadow:0 20px 25px -5px rgba(6,182,212,.2);transform:translateY(-8px)}
@media(max-width:639px){.vt-card.ativo{height:300px;transform:translateY(-4px)}}
.vt-card.ativo .foto img{filter:brightness(.75)}
.vt-card.ativo .foto::after{background:linear-gradient(to top,#02131b,rgba(2,19,27,.3) 50%,transparent)}
.vt-card.ativo .corpo{padding:16px 20px 20px}
.vt-card.ativo .vt-tag{font-size:11px;background:#06b6d4;color:#020617;border-color:transparent;padding:4px 12px;box-shadow:0 4px 6px -1px rgba(6,182,212,.4)}
.vt-card.ativo h3{font-size:18px;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.vt-card.ativo .qtd{font-size:12px;color:#a5f3fc;margin-bottom:12px}
.vt-card.ativo .ir{display:block;width:100%;text-align:center;background:#22d3ee;color:#020617;font-weight:800;font-size:11px;padding:8px 0;border-radius:8px;transform:none}
.vt-card.ativo:hover .ir{background:#67e8f9}
.vt-pontos{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:20px;min-height:6px}
.vt-pontos button{all:unset;cursor:pointer;width:6px;height:6px;border-radius:999px;background:rgba(255,255,255,.3);transition:width .35s,background .35s}
.vt-pontos button:hover{background:rgba(255,255,255,.6)}
.vt-pontos button[aria-current="true"]{width:24px;background:#22d3ee}
.vt-pontos button:focus-visible{outline:2px solid #22d3ee;outline-offset:3px}

/* abaixo da dobra */
.vt-resto{position:relative;z-index:10;max-width:1720px;margin:0 auto;padding:48px 16px 0}
@media(min-width:640px){.vt-resto{padding:64px 24px 0}}
@media(min-width:1024px){.vt-resto{padding:88px 48px 0}}
.vt-sec{margin-bottom:80px}
.vt-sec-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.vitrine .vt-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:#67e8f9;text-transform:uppercase}
.vt-sec h2{font-size:clamp(26px,4vw,44px);font-weight:800;text-transform:uppercase;letter-spacing:-.025em;line-height:1.05;margin-top:6px;color:#fff}
.vt-mais{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#67e8f9 !important;text-decoration:none}
.vt-mais:hover{color:#fff !important}
/* 3 passos: linha do tempo (a linha e o aviãozinho andam com a rolagem; home.js posiciona a trilha) */
.vt-passos{list-style:none;margin:0;padding:0;position:relative;display:grid;grid-template-columns:1fr;gap:36px}
@media(min-width:900px){.vt-passos{grid-template-columns:repeat(3,1fr);gap:32px}}
.vt-passo{position:relative;z-index:2;display:grid;grid-template-columns:52px 1fr;gap:18px;align-items:start;align-content:start}
@media(min-width:900px){.vt-passo{grid-template-columns:1fr;gap:22px;justify-items:center}}
.vt-ponto{display:inline-flex;width:52px;height:52px;border-radius:999px;align-items:center;justify-content:center;background:linear-gradient(to right,#2563eb,#06b6d4);font-weight:800;font-size:20px;color:#fff;box-shadow:0 0 0 6px rgba(4,26,36,.9),0 0 24px rgba(34,211,238,.45)}
.vt-passo-txt{padding:6px 0 0}
@media(min-width:900px){.vt-passo-txt{padding:4px 28px 0;text-align:center;max-width:24rem;margin:0 auto}}
/* traço degradê separando as colunas (desktop), abaixo da linha do tempo */
@media(min-width:900px){.vt-passo:not(:nth-child(3))::after{content:"";position:absolute;right:-16px;top:84px;bottom:-8px;width:1px;background:linear-gradient(to bottom,rgba(34,211,238,0),rgba(34,211,238,.55) 35%,rgba(37,99,235,.45) 70%,rgba(37,99,235,0))}}
.vt-passo h3{font-size:20px;font-weight:800;margin-bottom:8px;color:#fff}
.vitrine .vt-passo p{color:#cbd5e1;line-height:1.6;font-size:15px}
.vt-passo .w{display:inline-block;white-space:pre}
.vt-trilha{position:absolute;z-index:1;left:26px;top:26px;width:3px;height:0;background:rgba(255,255,255,.14);border-radius:3px;pointer-events:none}
.vt-trilha-cheia{position:absolute;inset:0;border-radius:3px;background:linear-gradient(to right,#2563eb,#22d3ee);transform-origin:left center;box-shadow:0 0 12px rgba(34,211,238,.6)}
.vt-trilha.vertical .vt-trilha-cheia{background:linear-gradient(to bottom,#2563eb,#22d3ee);transform-origin:center top}
.vt-aviaozinho{position:absolute;left:0;top:0;width:28px;height:28px;margin:-14px 0 0 -14px;color:#fff;filter:drop-shadow(0 0 8px rgba(34,211,238,.9));transform:rotate(90deg);opacity:0}
.vt-trilha.vertical .vt-aviaozinho{transform:rotate(180deg)}

/* seguro viagem em destaque */
.vt-seguro{border-radius:2.5rem;padding:32px 24px;display:grid;grid-template-columns:1fr;gap:32px;position:relative;overflow:hidden;border-color:rgba(34,211,238,.35)}
.vt-seguro::before{content:"";position:absolute;width:520px;height:520px;right:-160px;top:-200px;background:radial-gradient(circle,rgba(56,239,125,.18),transparent 65%);pointer-events:none}
@media(min-width:640px){.vt-seguro{padding:48px}}
@media(min-width:1024px){.vt-seguro{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px;padding:56px;align-items:center}}
.vt-seguro-txt>*+*{margin-top:18px !important}
.vitrine .vt-seguro h2{font-size:clamp(32px,5vw,56px);line-height:1;margin-top:8px}
.vitrine .vt-seguro-lead{color:#e2e8f0;font-size:17px;line-height:1.6;max-width:32rem}
.vitrine .vt-seguro-micro{color:#94a3b8;font-size:12.5px;line-height:1.55;max-width:32rem}
.vt-seguro-fatos{list-style:none;margin:0;padding:0;display:grid;gap:14px;position:relative}
.vt-seguro-fatos li{border-radius:20px;padding:20px 22px;background:rgba(2,19,27,.55);border:1px solid rgba(255,255,255,.12);display:grid;gap:4px}
.vt-seguro-fatos b{font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.02em;color:#38ef7d;text-shadow:0 0 16px rgba(56,239,125,.35);line-height:1.1}
.vt-seguro-fatos span{color:#e2e8f0;font-size:15px;line-height:1.5}
.vt-seguro-fatos small{color:#7d93a3;font-size:11.5px;line-height:1.4}
.vt-sec .grade{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:640px){.vt-sec .grade{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.vt-sec .grade{grid-template-columns:repeat(3,1fr);gap:20px}}
.vitrine .cartao{background:rgba(12,48,60,.5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#fff;overflow:hidden;transition:border-color .3s,transform .3s}
.vitrine .cartao:hover{border-color:rgba(34,211,238,.6);transform:translateY(-4px)}
.vitrine .cartao img{background:#0b2a35;transition:transform .7s}
.vitrine .cartao:hover img{transform:scale(1.05)}
.vitrine .cartao .cat{color:#67e8f9}
.vitrine .cartao h3{color:#fff;font-size:16px;font-weight:800;margin:.35rem 0 .45rem;line-height:1.35}
.vitrine .cartao p{color:#94a3b8;font-size:13.5px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vt-ofertas{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:800px){.vt-ofertas{grid-template-columns:repeat(3,1fr)}}
.vitrine .oferta{margin:0;border-radius:20px;background:rgba(12,48,60,.5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.16);border-left:4px solid #22d3ee;padding:22px 24px}
.vitrine .oferta strong{color:#fff;font-size:18px;font-weight:800}
.vitrine .oferta p{color:#cbd5e1;font-size:14.5px;line-height:1.55;margin-top:4px}
.vitrine .oferta a{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:999px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:12px 20px;transition:background .3s}
.vitrine .oferta a:hover{background:rgba(255,255,255,.2)}
.vt-aviso{font-size:12.5px;color:#94a3b8 !important;margin-top:14px !important}
.vt-final{border-radius:2.5rem;padding:48px 24px;text-align:center;overflow:hidden;position:relative}
@media(min-width:640px){.vt-final{padding:72px 48px}}
.vt-final h2{max-width:20ch;margin:8px auto 14px !important}
.vt-final>p:not(.vt-eyebrow){color:#cbd5e1;max-width:38rem;margin:0 auto 28px;font-size:16px;line-height:1.6}
.vt-final .vt-botoes{justify-content:center}
.vitrine footer{position:relative;z-index:10;background:rgba(2,12,17,.92);margin-top:0;border-top:1px solid rgba(255,255,255,.08)}
.vitrine footer p{color:#94a3b8}
@media(prefers-reduced-motion:reduce){.vt-card,.vt-card .foto img,.vitrine .cartao,.vitrine .cartao img{transition:none}}
