/* Complementos do site completo: jornada de compra, checkout, páginas legais */
.demo-bar{background:#fff3cd;color:#664d03;font-size:12.5px;text-align:center;padding:7px 12px;font-weight:600}
.demo-bar i{vertical-align:-2px}
.burger{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:26px;cursor:pointer}
footer.site a{display:block;padding:2px 0;color:#b9c4e6}footer.site a:hover{color:#fff}
footer.site p.legal{line-height:1.7}
footer.site a.legal-link{display:inline;text-decoration:underline;color:#cfd8f3}footer.site a.legal-link:hover{color:#fff}
/* login e conta */
.btn.hdr-login{background:#fff;color:var(--navy-800);padding:8px 16px}.btn.hdr-login:hover{background:var(--navy-100)}
.nav-acc{display:none}
.authwrap{max-width:460px;margin:28px auto 0}
.authbox{background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-2);padding:28px}
.authbox h1{font-size:24px;margin-bottom:4px}.authbox .sub{color:var(--g-500);font-size:14px;margin-bottom:18px}
.authtabs{display:flex;gap:6px;background:var(--g-50);border-radius:var(--pill);padding:4px;margin-bottom:18px}
.authtabs button{flex:1;border:0;background:transparent;border-radius:var(--pill);padding:9px 8px;font:700 13px var(--font);color:var(--g-500);cursor:pointer}
.authtabs button.on{background:#fff;color:var(--navy-800);box-shadow:var(--sh-1)}
.authbox form>div{margin-bottom:12px}
.authbox .alt{text-align:center;font-size:14px;color:var(--g-500);margin-top:16px}
.authbox .alt a,.linkbtn{color:var(--navy-700);font-weight:700;background:none;border:0;cursor:pointer;font:inherit;font-weight:700;padding:0}
.pw{position:relative}.pw button{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--g-500);cursor:pointer;font-size:18px}
.authok{text-align:center}.authok .big-ok{margin-bottom:12px}
.acc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cta-account{background:var(--navy-100);border-radius:var(--r-lg);padding:18px;margin:16px 0}
.cta-account h2{font-size:17px;margin-bottom:4px}
.trips h2{font-size:18px;margin:22px 0 10px}
.oc .acts{display:flex;gap:8px;flex-wrap:wrap}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--navy-900);color:#fff;border-radius:var(--pill);padding:12px 20px;font-weight:600;font-size:14px;z-index:50;box-shadow:var(--sh-2)}
@media(max-width:960px){header.site nav.open .nav-acc{display:block}}
@media(max-width:560px){.acc-grid{grid-template-columns:1fr}.authbox{padding:20px}}
.sum .mini-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo-credit{margin:8px 2px 0;font-size:12px}
footer.site{padding:44px 0 28px}
footer.site .cols{grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:32px}
footer.site .fbrand p{margin-top:12px;max-width:380px;line-height:1.65}
footer.site .paychips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
footer.site .paychips span{border:1px solid #2c4283;border-radius:var(--pill);padding:5px 11px;font-size:12px;color:#cfd8f3}
footer.site h4{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:10px}
footer.site .cols a{padding:4px 0}footer.site .cols a i{margin-right:6px;vertical-align:-2px;color:#8fa3df}
footer.site .fbottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:32px;padding-top:20px;border-top:1px solid #23376f;font-size:12.5px;line-height:1.7;color:#8a97c2}
footer.site .fbottom p{margin:0 0 4px}footer.site .fbottom b{color:#cfd8f3;font-weight:700}
footer.site .fr{display:flex;gap:6px 20px;flex-wrap:wrap;align-items:flex-start}
footer.site .fr a{display:inline-block;padding:0;color:#b9c4e6}footer.site .fr a:hover{color:#fff}
footer.site .fsafe{margin:14px 0 0;font-size:12px;color:#8a97c2}footer.site .fsafe i{vertical-align:-2px;margin-right:4px}

/* imagens e ilustrações dentro do .ph */
.ph svg,.ph .ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0!important}
.ph::before{display:none}
.card{position:relative}.card-main{display:flex;flex-direction:column;flex:1;color:inherit}
.rcard{display:block}.rcard-main{display:grid;grid-template-columns:260px 1fr 210px;color:inherit}
.tagline{font-size:13.5px;color:var(--g-500)}
.cb .t-small i{vertical-align:-2px}

/* home */
.hero .hero-sub{color:#cfd8f3;font-size:16px;max-width:640px;margin:-4px 0 16px;position:relative;z-index:1}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:-52px;position:relative;z-index:2}
.trust-row .perk{padding:14px}
.dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.dest{border-radius:var(--r-md);overflow:hidden;position:relative;height:190px;display:block;color:#fff}
.dest .ph{position:absolute;inset:0;height:100%}
.dest .lbl{position:absolute;left:0;right:0;bottom:0;padding:12px;z-index:2;background:linear-gradient(0deg,rgba(8,27,75,.75),transparent);font-weight:800}
.dest .lbl small{display:block;font-weight:600;font-size:12px;opacity:.95}
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.why .step i{font-size:26px;color:var(--navy-700);margin-bottom:8px;display:block}

/* listagem */
.chipbar{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 12px}
.chipbar button{border:1.5px solid var(--g-200);background:#fff;border-radius:var(--pill);padding:8px 14px;font:700 13px var(--font);cursor:pointer;color:var(--g-800)}
.chipbar button.on{background:var(--navy-800);color:#fff;border-color:var(--navy-800)}

/* página do pacote */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.facts div{background:#fff;border-radius:var(--r-md);padding:12px 14px;box-shadow:var(--sh-1);font-size:13px;color:var(--g-500)}
.facts b{display:block;color:var(--g-800);font-size:15px}
.facts i{color:var(--navy-700);font-size:20px;display:block;margin-bottom:2px}
.tabs a{border-bottom:3px solid transparent;margin-bottom:-2px}
.tabs a:first-child{color:var(--g-500);border-bottom-color:transparent}
.tabs a.on{color:var(--navy-800);border-bottom-color:var(--navy-800)}
section.sec-anchor{scroll-margin-top:130px}
.hl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.hl div{background:var(--g-50);padding:14px;border-radius:12px;font-size:13.5px;color:var(--g-500)}
.hl b{display:block;color:var(--g-800);font-size:14.5px;margin:4px 0}
.hl i{font-size:22px;color:var(--navy-700)}
.timeline .day{align-items:flex-start}
.timeline .day b{min-width:64px}
.timeline .day span strong{display:block;color:var(--g-800)}
.amen{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.amen span{background:var(--g-50);padding:6px 12px;border-radius:var(--pill);font-size:13px}
.pillrow{display:flex;gap:8px;flex-wrap:wrap}
.pillrow span{background:var(--mint-100);color:var(--mint-700);font-weight:700;font-size:13px;padding:5px 12px;border-radius:var(--pill)}
.empty-reviews{background:var(--g-50);border-radius:12px;padding:18px;text-align:center;color:var(--g-500);font-size:14px}
.related .grid{grid-template-columns:repeat(3,1fr)}
.buy .gw-price-row{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.buy .btn[disabled]{opacity:.55;cursor:not-allowed}

/* checkout */
.stepbar{display:flex;gap:10px;margin:18px 0 6px;font-size:13px;font-weight:700;color:var(--g-500);flex-wrap:wrap}
.stepbar span{display:flex;align-items:center;gap:8px}
.stepbar i{width:26px;height:26px;border-radius:50%;background:var(--g-200);color:var(--g-500);display:grid;place-items:center;font-style:normal;font-size:12px}
.stepbar .done i{background:var(--mint-700);color:#fff}.stepbar .now{color:var(--navy-800)}.stepbar .now i{background:var(--navy-800);color:#fff}
.stepbar .sep{width:28px;height:2px;background:var(--g-200)}
.co{display:grid;grid-template-columns:1fr 390px;gap:24px;align-items:start;margin-top:12px}
.sec{background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:22px;margin-bottom:16px}
.sec h2{font-size:19px;margin-bottom:4px;display:flex;gap:10px;align-items:center}
.sec h2 .n{width:28px;height:28px;border-radius:50%;background:var(--navy-800);color:#fff;font-size:14px;display:grid;place-items:center}
.sec .sub{color:var(--g-500);font-size:13.5px;margin-bottom:14px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.g1{display:grid;gap:12px}
.fld.err{border-color:var(--cta);background:#fff6f3}
.err-msg{color:var(--cta);font-size:12px;font-weight:600;margin-top:2px;min-height:0}
.trav{border:1.5px solid var(--g-100);border-radius:var(--r-md);padding:14px;margin-bottom:12px}
.trav legend{font-weight:800;font-size:14px;padding:0 6px}
.paytabs{display:flex;gap:10px;margin-bottom:14px}
.paytab{flex:1;border:1.5px solid var(--g-200);background:#fff;border-radius:var(--r-md);padding:12px 14px;cursor:pointer;text-align:left;font:600 14px var(--font);color:var(--g-800)}
.paytab small{display:block;font-weight:500;color:var(--g-500);font-size:12px}
.paytab.on{border-color:var(--navy-800);background:var(--navy-100)}
.paytab .chip-mint{margin-left:6px}
.notice{background:#fff7e6;border:1px solid #f3d38a;border-radius:12px;padding:12px 14px;font-size:13px;color:#6a4a00;margin-bottom:14px}
.notice.ok{background:var(--mint-100);border-color:#a8e0c8;color:var(--mint-700)}
.notice.bad{background:#fff0ec;border-color:#f5b9a8;color:#8a2a0e}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin:10px 0}
.chk input{margin-top:3px;width:18px;height:18px;accent-color:var(--navy-700)}
.sum{background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-2);padding:20px;position:sticky;top:84px}
.sum .mini-ph{height:110px;border-radius:12px;overflow:hidden;position:relative;margin-bottom:12px}
.sum .mini-ph svg{position:absolute;inset:0;width:100%;height:100%}
.sum h3{font-size:17px}.sum .meta{font-size:13px;color:var(--g-500);margin:2px 0 10px}
.sum .line{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--g-100);font-size:14px}
.sum .line.tot{font-weight:800;font-size:18px;color:var(--navy-800)}
.sum .change{font-size:13px;color:var(--navy-700);font-weight:700}
.spin{width:18px;height:18px;border:3px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:sp .7s linear infinite;display:inline-block}
@keyframes sp{to{transform:rotate(360deg)}}
.pixbox{text-align:center}
.qr{width:230px;height:230px;margin:10px auto;background:#fff;border:1px solid var(--g-200);border-radius:12px;padding:10px}
.code{word-break:break-all;background:var(--g-50);padding:10px;border-radius:10px;font-family:ui-monospace,Consolas,monospace;font-size:12px;text-align:left}

/* confirmação e voucher */
.done-head{text-align:center;padding:28px 0 8px}
.done-head .big-ok{width:64px;height:64px;border-radius:50%;background:var(--mint-100);color:var(--mint-700);font-size:34px;display:grid;place-items:center;margin:0 auto 10px}
.voucher{background:#fff;border:2px dashed var(--g-200);border-radius:var(--r-lg);padding:24px}
.voucher .vh{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--g-100);padding-bottom:12px;margin-bottom:12px}
.voucher dl{display:grid;grid-template-columns:150px 1fr;gap:6px 14px;font-size:14px}
.voucher dt{color:var(--g-500)}.voucher dd{margin:0;font-weight:600}
.order-list .oc{background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-1);padding:16px;margin-bottom:12px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.st{font-size:12px;font-weight:800;padding:4px 10px;border-radius:var(--pill)}
.st.paid{background:var(--mint-100);color:var(--mint-700)}.st.pending{background:#fff3cd;color:#664d03}.st.failed{background:#ffe3dc;color:#8a2a0e}

/* páginas de texto */
.prose{background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:30px;max-width:880px;margin:20px auto 0}
.prose h1{font-size:30px;margin-bottom:8px}.prose h2{font-size:19px;margin:22px 0 6px}
.prose p,.prose li{font-size:15px;color:#3a4052;margin:6px 0}.prose ul{padding-left:20px}
.prose .upd{font-size:13px;color:var(--g-500)}

@media print{
  .demo-bar,header.site,footer.site,.wa-float,.no-print{display:none!important}
  body{background:#fff}.voucher{border:1px solid #999}
}
@media(max-width:960px){
  .burger{display:block}
  header.site nav.open{display:flex!important;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:var(--navy-800);padding:10px 16px 16px;z-index:25}
  .trust-row,.facts{grid-template-columns:1fr 1fr}.dest-grid{grid-template-columns:1fr 1fr}.why,.hl,.related .grid{grid-template-columns:1fr}
  .co{grid-template-columns:1fr}.sum{position:static;order:-1}
  .rcard-main{grid-template-columns:1fr}.g2{grid-template-columns:1fr}
}
@media(max-width:560px){.trust-row,.facts,.dest-grid{grid-template-columns:1fr}.paytabs{flex-direction:column}.voucher dl{grid-template-columns:1fr}}
