
:root{
  --or:#f5a623;
  --or-light:#ffbe4b;
  --or-glow:rgba(245,166,35,.45);
  --rio-sky:#38bdf8;
  --rio-gold:#f59e0b;
  --red:#e63946;
  --gr:#25D366;
  --bl:#4a9eff;
  --bg:#080808;
  --bg2:#0e0e0e;
  --bg3:#131313;
  --bdr:rgba(255,255,255,.08);
  --bdr-gold:rgba(245,166,35,.25);
  --mut:rgba(255,255,255,.45);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans','Inter',sans-serif;background:var(--bg);color:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--or);border-radius:2px}
img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes gradShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes floatDown{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(9px)}}
@keyframes pulseWpp{0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.5)}50%{box-shadow:0 4px 32px rgba(37,211,102,.8),0 0 0 8px rgba(37,211,102,.12)}}
@keyframes pulseDot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}
@keyframes heroInitialZoom{0%{transform:scale(1.12)}100%{transform:scale(1)}}
@keyframes heroTitleReveal{0%{opacity:0;transform:translateY(60px) scale(.92);filter:blur(8px)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes heroSubReveal{0%{opacity:0;transform:translateY(40px)}60%{opacity:0}100%{opacity:1;transform:translateY(0)}}
@keyframes heroBadgeFloat{0%{opacity:0;transform:translateY(20px) scale(.9)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes heroParticle{0%{opacity:0;transform:translateY(0) scale(0)}30%{opacity:.6}100%{opacity:0;transform:translateY(-120px) scale(1.5)}}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 24px;transition:background .4s,border .4s,backdrop-filter .4s}
.nav.solid{background:rgba(8,8,8,.94);backdrop-filter:blur(24px);border-bottom:1px solid rgba(245,166,35,.15);box-shadow:0 10px 30px rgba(0,0,0,.6)}
.nav-inner{max-width:1180px;margin:0 auto;height:80px;display:flex;align-items:center;justify-content:space-between;gap:18px;transition:height .3s}
.nav.solid .nav-inner{height:72px}
.nav-logo{height:54px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 14px rgba(245,166,35,.45));transition:transform .25s ease,filter .25s ease}
.nav-logo:hover{transform:scale(1.05);filter:drop-shadow(0 4px 22px rgba(245,166,35,.75))}
.nav-links{display:flex;gap:24px;align-items:center}
.nav-links a{color:rgba(255,255,255,.75);font-size:13px;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:6px;letter-spacing:.02em}
.nav-links a:hover{color:#fff;text-shadow:0 0 10px rgba(245,166,35,.5)}
.ham{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:6px}
.ham span{display:block;width:24px;height:2px;background:rgba(255,255,255,.8);border-radius:2px;transition:all .3s}
.mob-nav{display:none;flex-direction:column;position:fixed;top:80px;left:0;right:0;background:rgba(8,8,8,.98);backdrop-filter:blur(24px);border-bottom:1px solid var(--bdr-gold);padding:22px 24px;gap:16px;z-index:99}
.mob-nav.open{display:flex}
.mob-nav a{font-size:15px;color:rgba(255,255,255,.85);font-weight:600;padding:6px 0;display:flex;align-items:center;gap:8px}

/* HERO COM CRISTO REDENTOR & ESTÉTICA RIO — PARALLAX CINEMATIC */
.hero{min-height:120svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;padding:120px 24px 140px}
.hero-bg{position:absolute;inset:-60px;background-image:url('../images/references/cristo_clouds.jpg');background-size:cover;background-position:center 25%;background-repeat:no-repeat;transform:scale(1);will-change:transform,opacity;transition:none;pointer-events:none;animation:heroInitialZoom 2.5s cubic-bezier(.25,.46,.45,.94) forwards}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,8,8,.55) 0%,rgba(8,8,8,.18) 20%,rgba(8,8,8,.08) 40%,rgba(8,8,8,.32) 65%,rgba(8,8,8,.92) 88%,var(--bg) 100%),radial-gradient(ellipse 75% 55% at 50% 32%,rgba(245,166,35,.18) 0%,transparent 70%),radial-gradient(ellipse 60% 45% at 85% 80%,rgba(14,165,233,.1) 0%,transparent 60%);pointer-events:none;will-change:opacity}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(245,166,35,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(245,166,35,.03) 1px,transparent 1px);background-size:54px 54px;pointer-events:none;opacity:.4}
.hero-content{position:relative;z-index:2;max-width:860px;margin:0 auto;will-change:transform,opacity}
.hero-logo{height:160px;width:auto;object-fit:contain;margin:0 auto 28px;filter:drop-shadow(0 0 50px rgba(245,166,35,.7)) drop-shadow(0 14px 40px rgba(0,0,0,.95));animation:heroTitleReveal 1.2s .3s cubic-bezier(.16,1,.3,1) both;transition:transform .3s ease}
.hero-logo:hover{transform:scale(1.03)}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(14,14,14,.65);backdrop-filter:blur(18px);border:1px solid rgba(245,166,35,.35);color:var(--or);font-size:11px;font-weight:800;padding:8px 20px;border-radius:30px;margin-bottom:22px;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 6px 20px rgba(0,0,0,.5),0 0 16px rgba(245,166,35,.15);animation:heroBadgeFloat .8s 1.2s ease both}
.hero-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--gr);box-shadow:0 0 8px var(--gr);animation:pulseDot 2s infinite}
.hero-h1{font-size:clamp(34px,6.8vw,72px);font-weight:900;line-height:1.04;margin-bottom:20px;letter-spacing:-.035em;text-shadow:0 4px 40px rgba(0,0,0,.98),0 0 80px rgba(0,0,0,.5);animation:heroTitleReveal 1.4s .5s cubic-bezier(.16,1,.3,1) both}
.hero-grad{background:linear-gradient(120deg,#f5a623 0%,#ffcc5c 30%,#ff9436 65%,#e63946 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;animation:gradShift 5s ease infinite}
.hero-sub{font-size:clamp(15px,2.2vw,19px);color:rgba(255,255,255,.82);line-height:1.75;max-width:620px;margin:0 auto 38px;text-shadow:0 2px 18px rgba(0,0,0,.95);animation:heroSubReveal 2s .8s ease both}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;animation:heroSubReveal 2s 1s ease both}
.hero-scroll{position:absolute;bottom:36px;left:50%;font-size:22px;color:rgba(255,255,255,.3);animation:floatDown 2.2s ease-in-out infinite;cursor:pointer;transition:opacity .4s}

/* HERO SCROLL PARTICLES */
.hero-particles{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.hero-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(245,166,35,.4);animation:heroParticle 5s ease-in-out infinite}
.hero-particle:nth-child(2){left:20%;animation-delay:1.2s;width:2px;height:2px;background:rgba(255,255,255,.2)}
.hero-particle:nth-child(3){left:75%;animation-delay:2.5s;width:4px;height:4px;background:rgba(245,166,35,.25)}
.hero-particle:nth-child(4){left:45%;animation-delay:0.7s;width:2px;height:2px;background:rgba(255,255,255,.15)}
.hero-particle:nth-child(5){left:85%;animation-delay:3.2s;width:3px;height:3px;background:rgba(245,166,35,.3)}
.hero-particle:nth-child(6){left:30%;animation-delay:4s;width:2px;height:2px;background:rgba(56,189,248,.3)}
.hero-particle:nth-child(7){left:60%;animation-delay:1.8s;width:3px;height:3px;background:rgba(255,255,255,.12)}
.hero-particle:nth-child(8){left:10%;animation-delay:2.8s;width:2px;height:2px;background:rgba(245,166,35,.2)}

/* RIO TRAVEL STRIP */
.travel-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;max-width:1080px;margin:40px auto 0;animation:fadeUp .8s .42s ease both}
.travel-pill{background:rgba(12,12,12,.75);backdrop-filter:blur(16px);border:1px solid rgba(245,166,35,.18);border-radius:15px;padding:12px 18px;display:flex;align-items:center;gap:12px;text-align:left;transition:all .25s ease}
.travel-pill:hover{transform:translateY(-3px);border-color:rgba(245,166,35,.45);background:rgba(20,20,20,.9);box-shadow:0 8px 24px rgba(0,0,0,.5)}
.travel-pill-ico{font-size:22px;flex-shrink:0}
.travel-pill-ttl{font-size:13px;font-weight:800;color:#fff;line-height:1.2}
.travel-pill-sub{font-size:11px;color:rgba(255,255,255,.5);margin-top:2px}

/* COPACABANA WAVE ACCENT */
.rio-wave{display:block;width:100%;height:10px;background:radial-gradient(circle at 10px 0,transparent 0,transparent 7px,rgba(245,166,35,.25) 8px,transparent 9px),radial-gradient(circle at 30px 10px,transparent 0,transparent 7px,rgba(245,166,35,.25) 8px,transparent 9px);background-size:40px 10px;margin:18px auto 0;opacity:.8}

/* BUTTONS */
.btn-wpp{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#25D366,#1ebc59);color:#000;font-weight:800;font-size:15px;padding:15px 30px;border-radius:14px;border:none;transition:transform .15s,box-shadow .15s;box-shadow:0 6px 26px rgba(37,211,102,.4)}
.btn-wpp:hover{transform:translateY(-2px);box-shadow:0 10px 34px rgba(37,211,102,.55)}
.btn-wpp:active{transform:scale(.97)}
.btn-outline{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:15px;font-weight:700;padding:15px 30px;border-radius:14px;transition:all .2s}
.btn-outline:hover{background:rgba(255,255,255,.12);border-color:rgba(245,166,35,.5);box-shadow:0 0 20px rgba(245,166,35,.2)}
.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#f5a623,#e6a020);color:#000;font-weight:900;font-size:14px;padding:14px;border-radius:12px;border:none;width:100%;transition:transform .15s,box-shadow .15s}
.btn-gold:hover{transform:translateY(-1px);box-shadow:0 6px 22px rgba(245,166,35,.38)}
.btn-gold:active{transform:scale(.97)}
.btn-wpp-drk{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(37,211,102,.08);border:1px solid rgba(37,211,102,.22);color:var(--gr);font-weight:800;font-size:14px;padding:12px 20px;border-radius:12px;width:100%;transition:background .2s}
.btn-wpp-drk:hover{background:rgba(37,211,102,.14)}
.btn-breve{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(245,166,35,.07);border:1px solid rgba(245,166,35,.2);color:var(--or);font-weight:800;font-size:14px;padding:13px;border-radius:12px;width:100%;margin-bottom:10px;transition:background .2s}
.btn-breve:hover{background:rgba(245,166,35,.13)}

/* STATS */
.stats{background:linear-gradient(180deg,rgba(245,166,35,.07) 0%,rgba(245,166,35,.02) 100%);border-top:1px solid rgba(245,166,35,.15);border-bottom:1px solid rgba(245,166,35,.15);padding:32px 24px;position:relative}
.stats-in{max-width:920px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}
.stat-n{font-size:clamp(28px,5.5vw,46px);font-weight:900;background:linear-gradient(135deg,#f5a623,#ffcc5c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1}
.stat-l{font-size:12px;color:rgba(255,255,255,.5);margin-top:6px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}

/* SECTIONS */
.section{padding:88px 24px}
.sec-lbl{font-size:11px;font-weight:800;color:var(--or);letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}
.sec-ttl{font-size:clamp(28px,5vw,48px);font-weight:900;letter-spacing:-.025em}
.sec-head{text-align:center;margin-bottom:54px}
.sec-sub{font-size:16px;color:rgba(255,255,255,.55);margin-top:14px;max-width:520px;margin-left:auto;margin-right:auto;line-height:1.72}

/* CARDS COM ESTÉTICA VIAGEM */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,370px),1fr));gap:28px;max-width:1120px;margin:0 auto}
.vcard{background:var(--bg3);border-radius:24px;overflow:hidden;border:1.5px solid var(--bdr);cursor:pointer;transition:transform .32s cubic-bezier(.34,1.56,.64,1),box-shadow .32s ease,border-color .2s}
.vcard:hover{transform:translateY(-7px);box-shadow:0 32px 64px rgba(0,0,0,.7);border-color:rgba(245,166,35,.35)}
.vcard.quase{border-color:var(--red)}
.vcard-img{position:relative;height:380px;overflow:hidden}
.vcard-img img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .42s ease}
.vcard:hover .vcard-img img{transform:scale(1.06)}
.vcard-badge-quase{position:absolute;top:14px;right:14px;background:var(--red);color:#fff;font-size:10px;font-weight:800;padding:6px 14px;border-radius:20px;letter-spacing:.08em;z-index:2;box-shadow:0 4px 12px rgba(230,57,70,.5)}
.vcard-badge-breve{position:absolute;top:14px;left:14px;background:rgba(245,166,35,.16);backdrop-filter:blur(10px);border:1px solid rgba(245,166,35,.35);color:var(--or);font-size:10px;font-weight:800;padding:6px 14px;border-radius:20px;z-index:2}
.vcard-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,.97) 0%,rgba(8,8,8,.25) 50%,transparent 75%)}
.vcard-info{position:absolute;bottom:0;left:0;right:0;padding:22px 22px 18px;z-index:1}
.vcard-sub{font-size:10px;font-weight:800;color:var(--or);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.vcard-ttl{font-size:22px;font-weight:900;color:#fff;line-height:1.15;margin-bottom:6px}
.vcard-dt{font-size:12px;color:rgba(255,255,255,.65);display:flex;align-items:center;gap:6px}
.vcard-body{padding:20px 22px 24px}
.vagas-row{display:flex;justify-content:space-between;margin-bottom:6px;font-size:11px;color:rgba(255,255,255,.45);font-weight:600}
.vagas-bar{height:5px;background:rgba(255,255,255,.08);border-radius:3px;overflow:hidden;margin-bottom:16px}
.vagas-fill{height:100%;border-radius:3px;transition:width 1.6s cubic-bezier(.22,1,.36,1)}
.preco-box{display:flex;justify-content:space-between;align-items:center;background:rgba(245,166,35,.06);border:1px solid rgba(245,166,35,.15);border-radius:15px;padding:14px 18px;margin-bottom:16px}
.preco-s-lbl{font-size:9px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px;font-weight:700}
.preco-s{font-size:30px;font-weight:900;color:var(--or);line-height:1}
.preco-div{width:1px;height:40px;background:rgba(255,255,255,.09)}
.preco-t-lbl{font-size:9px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px;text-align:right;font-weight:700}
.preco-t{font-size:20px;font-weight:800;color:#fff;text-align:right}
.preco-parc{font-size:9px;color:rgba(255,255,255,.35);text-align:right;margin-top:2px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.chip{font-size:10px;font-weight:700;background:rgba(37,211,102,.08);border:1px solid rgba(37,211,102,.2);color:var(--gr);padding:4px 10px;border-radius:8px}
.chip-mais{font-size:10px;color:rgba(255,255,255,.35);padding:4px 0;align-self:center}
.prazo-info{text-align:center;margin-top:10px;font-size:11px;color:rgba(255,255,255,.35)}
.prazo-info strong{color:var(--red)}
.sinal-breve{background:rgba(245,166,35,.06);border:1px solid rgba(245,166,35,.15);border-radius:14px;padding:14px 18px;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center}

/* DEPOIMENTOS */
.dep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:22px;max-width:1120px;margin:0 auto}
.dep-card{background:var(--bg3);border:1px solid var(--bdr);border-radius:20px;padding:24px;transition:border-color .2s,transform .2s}
.dep-card:hover{border-color:rgba(245,166,35,.25);transform:translateY(-3px)}
.dep-stars{color:var(--or);font-size:17px;margin-bottom:11px}
.dep-txt{font-size:14px;color:rgba(255,255,255,.65);line-height:1.72;margin-bottom:16px;font-style:italic}
.dep-autor{display:flex;align-items:center;gap:11px}
.dep-av{width:40px;height:40px;border-radius:50%;background:rgba(245,166,35,.12);border:1px solid rgba(245,166,35,.25);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:var(--or);flex-shrink:0;overflow:hidden}
.dep-av img{width:100%;height:100%;object-fit:cover}
.dep-nome{font-size:13px;font-weight:700;color:#fff}
.dep-viag{font-size:11px;color:var(--or);margin-top:2px;font-weight:600}

/* GALERIA */
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:12px;max-width:1120px;margin:0 auto}
.gal-item{border-radius:18px;overflow:hidden;aspect-ratio:1;background:var(--bg3);border:1px solid var(--bdr)}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.gal-item:hover img{transform:scale(1.08)}

/* CONTATO */
.ctc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;max-width:580px;margin:0 auto 34px}
.ctc-card{display:block;background:rgba(255,255,255,.03);border:1px solid var(--bdr);border-radius:20px;padding:30px 22px;text-align:center;transition:border-color .2s,transform .2s}
.ctc-card:hover{border-color:rgba(245,166,35,.35);transform:translateY(-3px)}
.ctc-icon{font-size:32px;margin-bottom:12px}
.ctc-lbl{font-size:10px;color:rgba(255,255,255,.3);text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;font-weight:700}
.ctc-val{font-size:17px;font-weight:800;color:var(--or)}

/* FOOTER */
.footer{background:#050505;border-top:1px solid rgba(255,255,255,.06);padding:44px 24px;text-align:center}
.footer-logo{height:52px;width:auto;object-fit:contain;margin:0 auto 14px;opacity:.9;transition:all .3s}
.footer-logo:hover{opacity:1;filter:drop-shadow(0 0 15px rgba(245,166,35,.5))}
.footer-copy{font-size:12px;color:rgba(255,255,255,.3);margin-top:12px}

/* WPP FLOAT */
.wpp-float{position:fixed;bottom:24px;right:20px;width:58px;height:58px;border-radius:50%;background:var(--gr);display:flex;align-items:center;justify-content:center;z-index:300;text-decoration:none;animation:pulseWpp 2.8s ease-in-out infinite}

/* PÁGINA VIAGEM */
.pv{display:none;position:fixed;inset:0;background:var(--bg);z-index:200;overflow-y:auto;-webkit-overflow-scrolling:touch}
.pv.open{display:block;animation:fadeUp .4s ease}
.pv-nav{position:sticky;top:0;z-index:10;background:rgba(8,8,8,.97);backdrop-filter:blur(22px);border-bottom:1px solid rgba(245,166,35,.15);padding:0 20px}
.pv-nav-in{max-width:920px;margin:0 auto;height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.btn-back{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.85);font-size:13px;font-weight:600;padding:9px 18px;border-radius:10px;display:flex;align-items:center;gap:6px;transition:background .2s}
.btn-back:hover{background:rgba(255,255,255,.12)}
.pv-content{max-width:920px;margin:0 auto;padding:0 20px 140px}
.pv-hero{position:relative;height:340px;border-radius:0 0 26px 26px;overflow:hidden;margin-bottom:30px}
.pv-hero img{width:100%;height:100%;object-fit:cover;object-position:top}
.pv-hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,1) 0%,rgba(8,8,8,.3) 52%,transparent 80%)}
.pv-hero-info{position:absolute;bottom:24px;left:24px;right:24px}
.pv-preco{background:linear-gradient(135deg,rgba(245,166,35,.08),rgba(245,166,35,.04));border:1px solid rgba(245,166,35,.2);border-radius:20px;padding:22px 26px;margin-bottom:30px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px}
.vagas-bar-pv{width:170px;height:5px;background:rgba(255,255,255,.08);border-radius:3px;overflow:hidden;margin-bottom:13px}
.pv-emb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:13px;margin-bottom:30px}
.emb-card{background:var(--bg3);border:1px solid var(--bdr);border-radius:18px;padding:18px 20px}
.emb-num{font-size:10px;font-weight:800;color:var(--or);letter-spacing:.11em;text-transform:uppercase;margin-bottom:9px}
.emb-local{font-size:14px;font-weight:700;color:#fff;margin-bottom:5px;line-height:1.4}
.emb-hora{font-size:24px;font-weight:900;color:var(--or);margin-bottom:4px}
.emb-obs{font-size:12px;color:rgba(255,255,255,.38);border-top:1px solid rgba(255,255,255,.06);padding-top:9px;margin-top:9px}
.roteiro-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.rot-tab{padding:9px 18px;border-radius:22px;border:1px solid rgba(255,255,255,.1);background:transparent;color:rgba(255,255,255,.38);font-size:12px;font-weight:700;transition:all .2s}
.timeline{position:relative;padding-left:26px;margin-bottom:30px}
.tl-line{position:absolute;left:9px;top:0;bottom:0;width:2px}
.tl-item{position:relative;margin-bottom:18px;padding-left:14px}
.tl-dot{position:absolute;left:-21px;top:8px;width:11px;height:11px;border-radius:50%}
.tl-card{background:var(--bg3);border:1px solid var(--bdr);border-radius:14px;padding:14px 18px;transition:border-color .2s}
.tl-card:hover{border-color:rgba(245,166,35,.2)}
.tl-hora{font-size:11px;font-weight:700;margin-bottom:4px}
.tl-ttl{font-size:14px;font-weight:700;color:#fff;margin-bottom:4px}
.tl-desc{font-size:13px;color:rgba(255,255,255,.48);line-height:1.55}
.incl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:17px;margin-bottom:30px}
.incl-box{background:var(--bg3);border-radius:20px;padding:22px}
.incl-ttl{font-size:14px;font-weight:800;margin-bottom:15px;display:flex;align-items:center;gap:7px}
.incl-item{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.incl-item:last-child{border-bottom:none}
.incl-ico{font-size:14px;flex-shrink:0;width:14px;margin-top:1px}
.incl-txt{font-size:13px;line-height:1.5}
.orient-box{background:rgba(245,166,35,.04);border:1px solid rgba(245,166,35,.15);border-radius:20px;padding:22px;margin-bottom:22px}
.regras-box{background:rgba(230,57,70,.04);border:1px solid rgba(230,57,70,.14);border-radius:20px;padding:22px;margin-bottom:30px}
.r-item{display:flex;gap:11px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.r-item:last-child{border-bottom:none}
.r-num{font-size:13px;font-weight:700;color:var(--red);min-width:18px;flex-shrink:0}
.r-txt{font-size:13px;color:rgba(255,255,255,.58);line-height:1.55}
.secao-ttl{font-size:18px;font-weight:800;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.cta-fixo{position:fixed;bottom:0;left:0;right:0;z-index:202;background:rgba(8,8,8,.97);backdrop-filter:blur(22px);border-top:1px solid rgba(245,166,35,.15);padding:13px 20px}
.cta-fixo-in{max-width:920px;margin:0 auto;display:flex;gap:13px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cta-s-lbl{font-size:10px;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.cta-s-val{font-size:28px;font-weight:900;color:var(--or);line-height:1.1}
.btn-cta-wpp{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--gr);color:#000;font-weight:900;font-size:15px;padding:14px 26px;border-radius:12px;flex:1;max-width:380px;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 18px rgba(37,211,102,.35)}
.btn-cta-wpp:hover{transform:translateY(-2px);box-shadow:0 7px 26px rgba(37,211,102,.48)}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .72s ease,transform .72s ease}
.reveal.vis{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:820px){
  .nav-inner{height:70px}
  .nav-logo{height:44px}
  .mob-nav{top:70px}
  .hero{min-height:110svh;padding:95px 18px 80px}
  .hero-logo{height:110px;margin-bottom:20px}
  .hero-h1{font-size:clamp(28px,8.5vw,46px)}
  .hero-ctas{flex-direction:column;align-items:center}
  .btn-wpp,.btn-outline{width:100%;max-width:320px;justify-content:center}
  .travel-strip{grid-template-columns:1fr 1fr;gap:8px}
  .stats-in{gap:10px}
  .section{padding:60px 20px}
  .pv-preco{flex-direction:column;gap:14px}
  .vagas-bar-pv{width:100%}
  .cta-fixo-in{flex-direction:column;gap:9px}
  .btn-cta-wpp{width:100%;max-width:100%}
  .pv-hero{height:250px}
}
@media(max-width:520px){
  .travel-strip{grid-template-columns:1fr}
  .cards-grid,.dep-grid,.incl-grid,.pv-emb-grid{grid-template-columns:1fr}
}
/* Continuidade visual das secoes abaixo do hero */
.journey{position:relative;isolation:isolate;background:#080b0e}
.journey-scenery{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(180deg,#080808 0%,rgba(8,11,14,.12) 12%,rgba(8,11,14,.35) 72%,#080808 100%),linear-gradient(90deg,rgba(8,11,14,.9),rgba(8,11,14,.48) 48%,rgba(8,11,14,.2)),url('../images/backgrounds/cristo_corcovado_view.jpg') 72% 32% / cover no-repeat}
.journey .section{position:relative;padding:100px 32px;scroll-margin-top:80px}
.journey .sec-head{max-width:1120px;margin:0 auto 44px;text-align:left}
.journey .sec-lbl{display:flex;align-items:center;gap:12px;letter-spacing:.18em}
.journey .sec-lbl:before{content:'';width:28px;height:1px;background:var(--or)}
.journey .sec-ttl{font-size:clamp(30px,4.3vw,52px);line-height:1.12;letter-spacing:-.045em;text-wrap:balance}
.journey .sec-sub{margin:18px 0 0;max-width:550px;color:rgba(255,255,255,.7)}
.journey .stats{padding:40px 32px;background:rgba(8,11,14,.6);border-color:rgba(245,166,35,.14)}
.journey .stats-in{max-width:1120px;gap:0}
.journey .stats-in>div+div{border-left:1px solid rgba(245,166,35,.18)}
.journey .stat-l{color:rgba(255,255,255,.65);line-height:1.5}
.journey .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.journey .vcard{background:linear-gradient(145deg,rgba(22,28,32,.88),rgba(8,12,16,.94));border:1px solid rgba(255,255,255,.15);border-radius:22px;backdrop-filter:blur(16px);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.journey .vcard:hover{transform:translateY(-5px);border-color:rgba(245,166,35,.5);box-shadow:0 24px 64px rgba(0,0,0,.45)}
.journey .vcard.quase{border-color:rgba(230,57,70,.5)}
.journey .vcard-img{height:340px}
.journey .vcard-img img{object-position:center 20%}
.journey .vcard-info{padding:28px}
.journey .vcard-ttl{font-size:clamp(24px,2.5vw,32px);letter-spacing:-.035em}
.journey .vcard-body{padding:24px 28px 28px}
.journey .vcard-dt{line-height:1.6}
.journey .preco-box,.journey .sinal-breve{background:rgba(245,166,35,.055);border-color:rgba(245,166,35,.2)}
.journey .chip{color:#e4dac7;background:rgba(245,166,35,.07);border-color:rgba(245,166,35,.17);line-height:1.5}
.journey .chip-mais,.journey .prazo-info{color:rgba(255,255,255,.6)}
.journey .btn-gold{font-size:12px;letter-spacing:.06em;padding:17px 14px}
.journey .dep-grid{gap:20px}
.journey .dep-card{position:relative;padding:32px 28px;background:linear-gradient(145deg,rgba(19,26,30,.85),rgba(8,12,16,.8));border-color:rgba(255,255,255,.13);border-radius:20px;backdrop-filter:blur(14px);box-shadow:0 16px 40px rgba(0,0,0,.18);display:flex;flex-direction:column}
.journey .dep-stars{font-size:14px;letter-spacing:4px;margin-bottom:20px}
.journey .dep-txt{font-style:normal;font-size:15px;line-height:1.9;color:rgba(255,255,255,.8);margin-bottom:28px}
.journey .dep-autor{margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.09)}
.journey #depoimentos{border-top:1px solid rgba(255,255,255,.09);background:rgba(8,11,14,.2)}
.journey #galeria{background:rgba(8,11,14,.3)}
.journey .gal-grid{gap:18px}
.journey #contato{min-height:660px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:linear-gradient(90deg,rgba(8,11,14,.94),rgba(8,11,14,.65) 55%,rgba(8,11,14,.25)),linear-gradient(0deg,#080808,transparent 35%,transparent 70%,#080b0e),url('../images/backgrounds/cristo_unsplash_aerial.jpg') 75% 48% / cover no-repeat;border-top:1px solid rgba(255,255,255,.09)}
.journey #contato .sec-head{width:100%;max-width:680px;margin:0 auto 32px;text-align:center}
.journey .ctc-grid{width:100%;max-width:800px;margin:0 auto 32px;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.journey .ctc-card{--channel-color:var(--or);position:relative;display:grid;grid-template-rows:auto auto auto 1fr auto auto;justify-items:center;text-align:center;padding:32px 28px;background:linear-gradient(145deg,rgba(19,26,30,.85),rgba(8,12,16,.8));backdrop-filter:blur(14px);border-color:rgba(255,255,255,.13);border-radius:20px;box-shadow:0 16px 40px rgba(0,0,0,.18);overflow:hidden}
.journey .ctc-card:before{content:"";position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,var(--channel-color),transparent)}
.journey .ctc-card:hover{border-color:var(--channel-color);transform:translateY(-5px);box-shadow:0 22px 48px rgba(0,0,0,.32)}
.journey .ctc-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:22px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(255,255,255,.05);color:var(--channel-color)}
.journey .ctc-icon svg{width:28px;height:28px}
.journey .ctc-lbl{font-size:11px;letter-spacing:.16em;color:var(--channel-color);margin-bottom:10px}
.journey .ctc-title{font-size:22px;font-weight:800;line-height:1.35;margin-bottom:12px;color:#fff}
.journey .ctc-description{font-size:14px;line-height:1.75;color:rgba(255,255,255,.65);max-width:290px;margin-bottom:24px}
.journey .ctc-val{font-size:15px;font-weight:700;line-height:1.5;color:rgba(255,255,255,.85);margin-bottom:22px}
.journey .ctc-link{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 16px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-size:13px;font-weight:800;color:var(--channel-color);transition:background .2s}
.journey .ctc-card:hover .ctc-link{background:rgba(255,255,255,.1)}
.journey .ctc-card:focus-visible{outline:2px solid var(--channel-color);outline-offset:5px}
.journey .contact-action{width:100%;max-width:800px;margin:0 auto;text-align:center}
.footer{background:#080808;border-top:1px solid rgba(245,166,35,.14);padding:44px 24px}
@media(min-width:1100px){.journey-scenery{background-attachment:scroll,scroll,fixed}}
@media(max-width:700px){
 .journey .section{padding:68px 20px}
 .journey-scenery{background-position:center,center,65% top;background-size:auto,auto,auto 1100px;background-repeat:no-repeat}
 .journey .sec-head{margin-bottom:30px}
 .journey .stats{padding:28px 16px}
 .journey .stat-l{font-size:9px;letter-spacing:.04em;padding:0 6px}
 .journey .cards-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .journey .vcard-img{height:320px}
 .journey .vcard-info,.journey .vcard-body{padding:22px}
 .journey .dep-grid{grid-template-columns:minmax(0,1fr)}
 .journey #contato{min-height:640px;background-position:center,center,62% center}
 .journey .ctc-grid{grid-template-columns:minmax(0,1fr);max-width:420px}
 .journey .ctc-card{padding:30px 24px}
 .journey .ctc-icon{float:none;margin:0 0 14px}
 .journey .contact-action .btn-wpp{width:100%;padding:16px 18px!important;font-size:14px!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.journey-scenery{background-attachment:scroll}}
/* Regra visual compartilhada pelos detalhes de todos os pacotes */
.pv{isolation:isolate;background:#080b0e}
.pv-scenery{position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,11,14,.35),rgba(8,11,14,.68)),linear-gradient(90deg,rgba(8,11,14,.82),rgba(8,11,14,.35) 65%,rgba(8,11,14,.18)),url('../images/backgrounds/cristo_corcovado_view.jpg') 70% 32% / cover no-repeat}
.pv-content{position:relative;z-index:1;padding-top:24px;padding-bottom:180px}
.pv .pv-nav{background:rgba(8,11,14,.78)}
.pv .pv-hero{border-radius:22px;border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.pv .pv-hero-ov{background:linear-gradient(to top,rgba(8,11,14,.96),rgba(8,11,14,.22) 58%,transparent)}
.pv .pv-preco,.pv .emb-card,.pv .tl-card,.pv .incl-box,.pv .orient-box,.pv .regras-box,.pv .dep-card{background:linear-gradient(145deg,rgba(22,28,32,.83),rgba(8,12,16,.88));backdrop-filter:blur(14px);box-shadow:0 12px 36px rgba(0,0,0,.2)}
.pv .emb-card,.pv .tl-card,.pv .dep-card{border-color:rgba(255,255,255,.15)}
.pv .pv-preco{border-color:rgba(245,166,35,.3);padding:28px}
.pv .secao-ttl{font-size:clamp(20px,3vw,26px);letter-spacing:-.025em;margin:36px 0 20px}
.pv .emb-card,.pv .incl-box,.pv .dep-card{padding:26px}
.pv .tl-card{padding:20px 22px}
.pv .tl-desc,.pv .r-txt,.pv .emb-obs{color:rgba(255,255,255,.72);line-height:1.75}
.pv .rot-tab{background:rgba(8,12,16,.72);backdrop-filter:blur(10px);color:rgba(255,255,255,.72);padding:12px 20px}
.pv .dep-txt{font-style:normal;line-height:1.85;color:rgba(255,255,255,.8)}
.pv .dep-stars{font-size:14px;letter-spacing:3px}
.pv .cta-fixo{background:rgba(8,11,14,.85)}
@media(max-width:700px){.pv-scenery{background-position:center,center,65% center}.pv-content{padding-top:16px;padding-bottom:210px}.pv .pv-preco{padding:22px;align-items:stretch}.pv .emb-card,.pv .incl-box,.pv .dep-card{padding:22px}.pv .pv-preco .btn-wpp{max-width:none;width:100%}.pv .pv-hero-info{left:20px;right:20px}.pv .pv-emb-grid,.pv .incl-grid,.pv .dep-grid{grid-template-columns:minmax(0,1fr)}}
.experience-feed{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px;max-width:1000px;margin:0 auto}
.experience-actions{text-align:center;margin-top:28px}
#experienciasPage .sec-head{margin:24px 0 36px}


.experience-item{min-width:0}
.experience-slot{min-height:680px}
.experience-frame{display:block;width:100%;max-width:540px;height:680px;border:0;border-radius:18px;background:#fff;margin:0 auto}
.experience-profile .experience-slot{min-height:520px}
.experience-profile .experience-frame{height:520px}
.experience-feed>.experience-frame{grid-column:1/-1;height:520px}
.experience-status{color:rgba(255,255,255,.65);font-size:13px;line-height:1.6;margin:12px 0;text-align:center}
.experience-controls{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap}
.experience-controls button{background:transparent;border:1px solid rgba(245,166,35,.4);border-radius:8px;padding:10px 14px;color:var(--or);font:inherit;cursor:pointer}
.experience-controls a{color:var(--or);font-size:14px}
@media(max-width:480px){.experience-frame{height:620px}.experience-slot{min-height:620px}}
@media(max-width:480px){.experience-profile .experience-frame{height:470px}.experience-profile .experience-slot{min-height:470px}}
@media(max-width:480px){.experience-feed>.experience-frame{height:470px}}
