/* Botão redondo "Monte sua viagem" (celular), igual ao da página inicial; nas outras páginas ele leva ao gerador.
   Coluna da direita, de baixo para cima: WhatsApp, Instagram e, em cima, Monte sua viagem. */
.mini-fab { display: none; }
@media (max-width: 760px) {
  .mini-fab { display: flex; flex-direction: row-reverse; align-items: center; position: fixed; right: 26px; bottom: 174px; z-index: 400; --fechado: 60px; height: 60px; width: var(--fechado); padding: 0; border: 0; border-radius: 30px; overflow: hidden; cursor: pointer; text-decoration: none;
    background: url('../assets/img/botao-montanhas.jpg') center / cover no-repeat #8fb5c8; box-shadow: 0 10px 26px rgba(0,0,0,0.25); color: #fff;
    transform: scale(0); opacity: 0; transition: transform .35s cubic-bezier(.2,.9,.3,1.3), opacity .25s ease, width .45s ease; }
  .mini-fab.com-texto { width: var(--aberto, 240px); }
  .mini-fab.visivel { transform: scale(1); opacity: 1; }
  .mini-fab.visivel:hover { transform: translateY(-3px); }
  .mini-fab::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,60,70,.82), rgba(16,60,70,.45) 70%, rgba(16,60,70,0)); opacity: 0; transition: opacity .3s ease; }
  .mini-fab.com-texto::before { opacity: 1; }
  .mini-fab-ic { flex: 0 0 60px; height: 60px; display: grid; place-items: center; position: relative; }
  .mini-fab-ic::before { content: ''; position: absolute; inset: 10px; border-radius: 50%; background: rgba(16,60,70,.38); transition: opacity .25s ease; }
  .mini-fab-ic svg { position: relative; filter: drop-shadow(0 1px 2px rgba(0,0,0,.45)); transition: opacity .25s ease; }
  .mini-fab.com-texto .mini-fab-ic::before, .mini-fab.com-texto .mini-fab-ic svg { opacity: 0; }
  .mini-fab-txt { position: relative; flex: 0 0 auto; white-space: nowrap; padding-left: 22px; margin-right: -4px; text-shadow: 0 1px 3px rgba(0,0,0,.35); font-family: 'Jost', sans-serif; font-size: var(--t-pq,14px); font-weight: 600; letter-spacing: normal; text-transform: none; color: #fff; opacity: 0; transition: opacity .15s ease; }
  .mini-fab.com-texto .mini-fab-txt { opacity: 1; transition: opacity .25s ease .3s; }
}
@media (max-width: 480px) {
  .mini-fab { right: 20px; bottom: 144px; --fechado: 52px; height: 52px; border-radius: 26px; }
  .mini-fab-ic { flex-basis: 52px; height: 52px; }
  .mini-fab-ic::before { inset: 8px; }
  .mini-fab-ic svg { width: 23px; height: 23px; }
}
@media (prefers-reduced-motion: reduce) { .mini-fab, .mini-fab.visivel { transition: none; } }

/* caixa do fim das páginas: botão do WhatsApp verde (ao lado do dourado "Monte sua viagem") */
.btn-whats-verde { background: #25D366; color: #fff; border: 1px solid #25D366; }
.btn-whats-verde:hover { background: #1ebe5b; border-color: #1ebe5b; transform: translateY(-3px); box-shadow: 0 12px 28px rgba(37,211,102,0.35); }
/* os dois botões da caixa: cantos arredondados (mesmo modelo dos botões do gerador) e mesmo tamanho */
.cta-banner .hero-ctas .btn { border-radius: 10px; min-width: 230px; justify-content: center; text-align: center; }
@media (max-width: 480px) { .cta-banner .hero-ctas .btn { width: 100%; max-width: 280px; min-width: 0; } }

/* computador e tablet: barra "Monte sua viagem" que aparece no alto ao descer a página (igual à da página inicial) */
.mini-planner { display: none; }
@media (min-width: 761px) {
  .mini-planner { display: block; position: fixed; left: 0; right: 0; top: 76px; z-index: 450; background: rgba(255,255,255,0.97); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-top: 2px solid var(--gold); box-shadow: 0 10px 28px rgba(16,60,70,0.14); transform: translateY(-140%); opacity: 0; pointer-events: none; transition: transform .35s ease, opacity .35s ease; }
  .mini-planner.visivel { transform: none; opacity: 1; pointer-events: auto; }
  .mini-planner-form { max-width: 1260px; margin: 0 auto; padding: 10px 24px; display: grid; grid-template-columns: auto 1.4fr 1.3fr .9fr .9fr auto; gap: 10px; align-items: center; }
  .mini-planner-titulo { font-family: 'Cormorant Garamond', serif; font-size: var(--t-sub,20px); color: var(--teal-deep); white-space: nowrap; padding-right: 4px; }
  .mini-planner select { width: 100%; height: 42px; padding: 0 30px 0 12px; border: 1px solid var(--gray-light); border-radius: 8px; background: var(--off-white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23c9a96e' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 11px center; font-family: 'Jost', sans-serif; font-size: var(--t-pq,14px); color: var(--charcoal); -webkit-appearance: none; appearance: none; cursor: pointer; }
  .mini-planner select:hover, .mini-planner select:focus { border-color: var(--gold); outline: none; }
  .mini-planner select.falta { border-color: #a94a42; background-color: #fbeceb; }
  .mini-planner .btn { height: 42px; padding: 0 22px; white-space: nowrap; font-size: var(--t-pq,14px); border-radius: 10px; }
}
@media (min-width: 761px) and (max-width: 1100px) { .mini-planner-titulo { display: none; } .mini-planner-form { grid-template-columns: 1.4fr 1.3fr .9fr .9fr auto; } }

/* celular: barra fina no alto com "Monte sua viagem" (substitui o botão redondo) */
.barra-topo { display: none; }
@media (max-width: 760px) {
  .barra-topo { display: flex; align-items: center; position: fixed; left: 12px; right: 12px; top: 72px; z-index: 420;
    padding: 6px; border-radius: 16px; background: rgba(255,255,255,.92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
    border: 1.5px solid var(--teal-mid); box-shadow: 0 8px 24px rgba(16,60,70,.12); width: max-content; margin: 0 auto;
    transform: translateY(-14px); opacity: 0; pointer-events: none; transition: transform .35s ease, opacity .3s ease; }
  .barra-topo.on { transform: none; opacity: 1; pointer-events: auto; }
  .barra-topo .bt-monte { display: flex; align-items: center; justify-content: center; gap: 8px; height: 42px; padding: 0 22px; border-radius: 11px; text-decoration: none;
    background: #006E83; color:#fff; font-family: 'Jost', sans-serif; font-size: var(--t-pq,14px); font-weight: 600; letter-spacing: normal; text-transform: none; transition: filter .2s ease; }
  .barra-topo .bt-monte:active, .barra-topo .bt-monte:hover { filter: brightness(.9); }
}
/* mesmo efeito de vidro fosco da barra do topo */
.barra-topo, .mini-planner { -webkit-backdrop-filter: saturate(180%) blur(18px) !important; backdrop-filter: saturate(180%) blur(18px) !important; }
.mini-planner { background: rgba(255, 255, 255, 0.62) !important; }
.barra-topo { background: rgba(255, 255, 255, 0.55) !important; }
/* lista curta de adultos/crianças (igual à da página inicial) */
.lista-numeros { position: absolute; z-index: 700; max-height: 236px; overflow-y: auto; background: #fff; border: 1px solid var(--gold); border-radius: 8px; box-shadow: 0 14px 34px rgba(16,60,70,0.18); padding: 4px 0; }
.lista-numeros button { display: block; width: 100%; text-align: left; border: 0; background: none; padding: 8px 14px; font-family: 'Jost', sans-serif; font-size: var(--t-pq,14px); color: var(--charcoal); cursor: pointer; }
.lista-numeros button:hover { background: #F8F6F2; }
.lista-numeros button.sel { background: var(--teal-deep); color: #fff; }

/* barra do topo e barras flutuantes ao descer: quase na cor normal, só um pouquinho transparentes */
.site-header.scrolled { background: rgba(248, 246, 242, 0.90) !important; }
.mini-planner { background: rgba(255, 255, 255, 0.90) !important; }
.barra-topo { background: rgba(255, 255, 255, 0.88) !important; }

/* ainda menos transparente: só um leve efeito */
.site-header.scrolled { background: rgba(248, 246, 242, 0.97) !important; -webkit-backdrop-filter: blur(6px) !important; backdrop-filter: blur(6px) !important; }
.mini-planner { background: rgba(255, 255, 255, 0.97) !important; }
.barra-topo { background: rgba(255, 255, 255, 0.96) !important; }

/* barras sem transparência (cor sólida) */
.site-header.scrolled { background: rgb(248, 246, 242) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
.mini-planner { background: #fff !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
.barra-topo { background: #fff !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
/* 19/10/2026: idade de cada criança logo abaixo do campo Crianças, uma embaixo da outra */
.mini-planner .mini-idades { grid-column: 5 / 6; grid-row: 2; display: grid; grid-template-columns: 1fr; gap: 6px; margin-top: -2px; }
.mini-planner .mini-idades label { display: grid; gap: 2px; font-size: var(--t-pq,14px); letter-spacing: normal; text-transform: none; color: var(--teal-mid, #006E83); }
.mini-planner .mini-idades select { height: 34px; font-size: var(--t-pq,14px); padding: 0 16px 0 7px; background-position: right 5px center; background-size: 9px auto; }
@media (min-width: 761px) and (max-width: 1100px) { .mini-planner .mini-idades { grid-column: 4 / 5; } }
.lista-numeros{max-height:236px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}   /* 27/10/2026: uns 6 itens à mostra, o resto rola (também no celular) */
.lista-trilho{position:absolute;z-index:701;width:4px;border-radius:4px;background:rgba(0,110,131,.15);pointer-events:none}.lista-trilho i{display:block;width:100%;border-radius:4px;background:#006E83}.lista-numeros{padding-right:10px}
.lista-numeros{scrollbar-width:none}.lista-numeros::-webkit-scrollbar{display:none}   /* só a nossa linha azul, sem a barra do navegador */
.lista-trilho{overflow:hidden}
