/* Hero da home: painel laranja diagonal + cena 3D (hero3d.js). */
.hero5{position:relative;min-height:max(100svh,720px);padding:118px 0 0;display:flex;flex-direction:column;background:#fff9ef;overflow:hidden;isolation:isolate}
.hero5::before{content:"";position:absolute;inset:0;z-index:-2;background-image:radial-gradient(rgba(2,25,56,.09) 1.2px,transparent 1.2px);background-size:26px 26px;mask-image:linear-gradient(100deg,#000,transparent 50%);-webkit-mask-image:linear-gradient(100deg,#000,transparent 50%)}
.hero5::after{content:"";position:absolute;left:-12%;bottom:-24%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(247,148,29,.12),transparent 65%);z-index:-2;pointer-events:none}
/* painel laranja */
.h5-panel{position:absolute;inset:0;z-index:-1;background:linear-gradient(150deg,#f59a2c 0%,#ee8514 52%,#e0720b 100%);clip-path:polygon(62% 0,100% 0,100% 100%,44% 100%);animation:h5panel .9s cubic-bezier(.2,.8,.2,1) both;will-change:transform,opacity}
.h5-panel::before{content:"";position:absolute;inset:0;opacity:.35;background-image:radial-gradient(rgba(255,255,255,.28) 1.4px,transparent 1.4px);background-size:26px 26px;mask-image:linear-gradient(to left,#000,transparent 80%);-webkit-mask-image:linear-gradient(to left,#000,transparent 80%)}
@keyframes h5panel{from{opacity:0;transform:translateX(7%)}}
.fx-blob{position:absolute;right:-14%;bottom:-24%;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(190,80,0,.4),transparent 68%);pointer-events:none}
.fx-routes{position:absolute;left:44%;top:0;width:56%;height:100%}
.fx-routes path{stroke-opacity:.28}.fx-routes g{opacity:.55}
/* texto */
.h5-main{position:relative;flex:1;display:grid;grid-template-columns:1.25fr .75fr;gap:20px;align-items:center}
.h5-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(247,148,29,.45);color:var(--orange-2);font-weight:800;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 8px 20px -12px rgba(247,148,29,.8);opacity:0;animation:h5up .8s .1s cubic-bezier(.2,.8,.2,1) forwards}
.h5-eyebrow i{width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(247,148,29,.25)}
.h5-h1{margin:26px 0 0;font-size:clamp(2.5rem,5.2vw,4.9rem);font-weight:800;line-height:1.03;letter-spacing:-.03em;color:var(--navy)}
.h5-h1 .ln{display:block;overflow:hidden;padding:.06em 0 .14em;margin-bottom:-.1em}
.h5-h1 .ln>span{display:block;transform:translateY(112%);animation:h5line 1s cubic-bezier(.16,.84,.24,1) forwards}
.h5-h1 .ln:nth-child(1)>span{animation-delay:.25s}.h5-h1 .ln:nth-child(2)>span{animation-delay:.45s}
.h5-h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--orange-2)}
@keyframes h5line{to{transform:none}}@keyframes h5up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.h5-sub{margin:22px 0 24px;max-width:34ch;font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.35;color:#44536a;padding-left:16px;border-left:4px solid var(--orange);opacity:0;animation:h5up .9s .95s cubic-bezier(.2,.8,.2,1) forwards}
.h5-sub b{color:var(--navy)}
.h5-actions{display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:h5up .9s 1.15s cubic-bezier(.2,.8,.2,1) forwards}
.h5-actions .btn{padding:17px 30px;font-size:1.02rem}
.h5-ghost{background:transparent;color:var(--navy);border:2px solid var(--navy)}.h5-ghost:hover{background:var(--navy);color:#fff;transform:translateY(-2px)}
.h5-trust{margin-top:26px;opacity:0;animation:h5up .9s 1.35s ease forwards}
.h5-years{display:flex;align-items:center;gap:16px;padding:14px 22px 14px 16px;border-radius:20px;background:var(--navy);color:#fff;box-shadow:0 16px 30px -16px rgba(2,25,56,.7);max-width:430px}
.h5-years strong{display:block;font-size:1.02rem;line-height:1.2}.h5-years small{display:block;font-size:.8rem;color:rgba(255,255,255,.72);margin-top:3px;line-height:1.3}
/* cena 3D */
.h5-stage{position:relative;height:440px}
.h5-scene{position:relative;width:100%;height:100%}
#h5-gl{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;opacity:0;transition:opacity .8s ease}
#h5-gl.ready{opacity:1}
/* telas grandes: compacta para caber em uma tela */
@media(min-width:901px){
  .hero5{padding-top:98px}
  .h5-h1{font-size:clamp(2.4rem,4.3vw,4.4rem);margin-top:14px}
  .h5-sub{margin:16px 0 24px}
  .h5-actions .btn{padding:15px 28px}
  .h5-trust{margin-top:22px}
  .h5-stage{margin-left:-110px;margin-right:-50px;height:min(600px,66vh)}
  .h5-barwrap{padding-bottom:22px}
}
@media(max-width:1100px){.h5-bar{grid-template-columns:1fr 1fr}.h5-bar-t{grid-column:1/-1}.h5-send{grid-column:1/-1}}
@media(max-width:900px){
  .hero5{padding-top:110px}
  .h5-main{grid-template-columns:1fr;gap:0}
  .h5-panel{clip-path:polygon(0 52%,100% 38%,100% 100%,0 100%);animation-name:h5panelm}
  @keyframes h5panelm{from{opacity:0;transform:translateY(6%)}}
  .h5-sub{max-width:none}
}
@media(max-width:560px){.h5-bar{grid-template-columns:1fr;padding:18px}.h5-actions .btn{flex:1;justify-content:center;white-space:nowrap;padding:15px 14px}.h5-stage{height:400px}}
@media(prefers-reduced-motion:reduce){.hero5::before,.hero5::after,.fx-blob,.h5-panel,.h5-eyebrow,.h5-sub,.h5-actions,.h5-trust,.h5-bar{animation:none;opacity:1}.h5-h1 .ln>span{animation:none;transform:none}#h5-gl{transition:none}}

/* barra de orçamento */
.h5-barwrap{position:relative;z-index:3;padding-bottom:30px}
.h5-bar{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1fr) minmax(0,1.05fr) minmax(0,1fr) auto;gap:14px;align-items:end;padding:18px 20px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 60px -26px rgba(2,25,56,.5);opacity:0;animation:h5up .9s 1.6s cubic-bezier(.2,.8,.2,1) forwards}
.h5-bar-t{align-self:center;padding:0 6px 0 4px}
.h5-bar-ic{flex:none;width:46px;height:46px;border-radius:15px;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 20px -10px rgba(37,211,102,.9)}.h5-bar-ic svg{width:26px;height:26px}
.h5-bar-t h3{font-size:1.06rem;color:var(--navy);line-height:1.2}.h5-bar-t p{font-size:.78rem;color:var(--muted);margin-top:3px;line-height:1.3}
.h5-bar .field{position:relative;display:grid;gap:6px}
.h5-bar label{font-size:.72rem;font-weight:800;color:var(--navy);letter-spacing:.06em;text-transform:uppercase;padding-left:2px}
.inp{position:relative}
.inp>svg{position:absolute;left:15px;top:50%;translate:0 -50%;width:19px;height:19px;color:var(--orange-2);pointer-events:none}
.inp input,.inp select{display:block;font:inherit;font-size:.95rem;width:100%;height:54px;padding:0 14px 0 44px;border-radius:16px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s}
.inp input::placeholder{color:#8a97a8}
.inp input:hover,.inp select:hover{border-color:rgba(247,148,29,.55)}
.inp input:focus,.inp select:focus{outline:0;background:#fff;border-color:var(--orange);box-shadow:0 0 0 4px rgba(247,148,29,.2)}
.h5-send{height:54px;padding:0 7px 0 24px;gap:12px;min-width:0;font-size:1rem;white-space:nowrap;display:inline-flex;align-items:center;justify-content:space-between;border-radius:999px;background:linear-gradient(180deg,#ffa43a,#f7941d 60%,#ea8410);box-shadow:0 14px 26px -12px rgba(247,148,29,.95),inset 0 1px 0 rgba(255,255,255,.4);text-shadow:0 1px 2px rgba(120,60,0,.3)}
.h5-send i{width:40px;height:40px;border-radius:50%;background:var(--navy);display:grid;place-items:center;transition:transform .25s}.h5-send i svg{width:20px;height:20px;color:#fff}
.h5-send:hover i{transform:translateX(3px)}
.h5-send:disabled{opacity:.85;cursor:wait}
/* seletor de destino personalizado (abre para cima) */
.ds-on .inp{position:absolute;left:0;right:0;bottom:0;height:54px;opacity:0;pointer-events:none}
.ds{position:relative}
.ds-btn{display:flex;align-items:center;gap:12px;width:100%;height:54px;font:inherit;font-size:.95rem;padding:0 14px 0 15px;border-radius:16px;border:1.5px solid var(--line);background:var(--bg);color:#8a97a8;cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s,background .2s}
.ds-btn.has{color:var(--ink)}
.ds-btn:hover{border-color:rgba(247,148,29,.55)}.ds-btn:focus-visible,.ds-btn[aria-expanded=true]{outline:0;background:#fff;border-color:var(--orange);box-shadow:0 0 0 4px rgba(247,148,29,.2)}
.ds-btn.bad{border-color:#d93025;box-shadow:0 0 0 4px rgba(217,48,37,.15)}
.ds-ic{width:19px;height:19px;flex:none;color:var(--orange-2)}
.ds-btn>svg:last-child{width:18px;height:18px;flex:none;margin-left:auto;transition:transform .2s}.ds-btn[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}
.ds-v{display:flex;align-items:center;gap:10px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-v img{width:22px;height:22px;border-radius:50%;object-fit:cover;flex:none}
.ds-list{position:absolute;left:-4px;bottom:calc(100% + 10px);width:max(100%,290px);max-height:min(340px,52vh);overflow:auto;margin:0;padding:8px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 26px 50px -16px rgba(2,25,56,.5);z-index:30;animation:dsin .16s ease-out;overscroll-behavior:contain}
@keyframes dsin{from{opacity:0;transform:translateY(8px)}}
.ds-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:9px 12px 9px 10px;border-radius:12px;cursor:pointer;color:var(--navy)}
.ds-list li.on{background:var(--orange-soft)}
.ds-list img{width:28px;height:28px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px rgba(2,25,56,.12)}
.ds-list b{font-size:.92rem}.ds-list small{font-size:.74rem;color:var(--muted)}
.ds-help{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;font-style:normal;font-weight:800;font-size:.85rem}
@media(max-width:1180px){.h5-bar{grid-template-columns:1fr 1fr}.h5-bar-t{grid-column:1/-1}.h5-send{grid-column:1/-1;justify-content:center}.h5-send i{margin-left:6px}}
@media(max-width:560px){.h5-bar{grid-template-columns:1fr;padding:18px}}
@media(min-width:901px){.h5-barwrap{padding-bottom:22px}}
@media(prefers-reduced-motion:reduce){.h5-bar{animation:none;opacity:1}}
/* cartão "mais de 6 anos" */

/* cartão 6 anos: selo de verificação */
/* botão flutuante do WhatsApp some enquanto a hero está na tela (ela já tem o formulário) */
.wa-float{transition:transform .2s,opacity .3s,width .35s,height .35s,right .35s,bottom .35s}
body.hero-on .wa-float{width:54px;height:54px;right:14px;bottom:10px}   /* visível desde o início: fica na faixa abaixo da barra de orçamento, sem cobrir o botão */
@media(prefers-reduced-motion:reduce){.h5-panel{animation:none}}

/* barra: tudo com 54 px de altura, numa linha só, centralizado (sem rótulos acima) */
.h5-bar{align-items:center;grid-template-columns:minmax(150px,.85fr) minmax(0,1fr) minmax(0,1.05fr) minmax(0,1fr) auto;column-gap:14px}
.h5-bar label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.h5-bar .field{gap:0}
.h5-bar-t{align-self:center;min-height:54px;display:flex;flex-direction:column;justify-content:center}
.h5-send{align-self:center}
@media(max-width:1180px){.h5-bar-t{min-height:0;grid-column:1/-1}}
.h5-bar .field{margin:0;padding:0;min-height:0}
.h5-bar-t{min-height:54px}.h5-bar-t h3{white-space:nowrap}.h5-bar-t p{margin-top:2px;font-size:.8rem}
.h5-bar-t h3,.h5-bar-t p{margin:0}.h5-bar-t p{margin-top:3px}
@media(max-width:1180px){.h5-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.h5-bar-t{grid-column:1/-1;min-height:0}.h5-send{grid-column:1/-1;justify-content:center;height:54px}}
@media(max-width:700px){.h5-bar{grid-template-columns:1fr}}
/* pôster da cena 3D: aparece na hora e fica como reserva se o aparelho não aguentar o 3D */
.h5-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;pointer-events:none}
html.gl-off .h5-poster{opacity:1}
html.gl-off #h5-gl{display:none}



/* cartão de credibilidade: texto + selo "Desde 2020" */
.h5-years{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;border-radius:20px;background:var(--navy);color:#fff;box-shadow:0 16px 30px -16px rgba(2,25,56,.7);max-width:440px}
.h5-yt strong{display:block;font-size:1.02rem;line-height:1.2}
.h5-yt small{display:block;font-size:.8rem;color:rgba(255,255,255,.72);margin-top:3px;line-height:1.3}
.h5-since{flex:none;display:grid;justify-items:center;padding-left:20px;border-left:1px solid rgba(255,255,255,.22);line-height:1}
.h5-since small{font-size:.66rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.h5-since b{display:block;margin-top:5px;font-size:1.7rem;font-weight:800;letter-spacing:-.02em;color:var(--orange)}
.h5-years{max-width:480px}.h5-yt small{white-space:nowrap}@media(max-width:560px){.h5-yt small{white-space:normal}}
/* selo "Desde 2020" à esquerda */
.h5-since{padding-left:0;padding-right:20px;border-left:0;border-right:1px solid rgba(255,255,255,.22)}
/* título digitado */
.h5-h1.typed .ln>span{transform:none;animation:none}
.h5-h1.typed .ch{opacity:0;position:relative;display:inline-block}
.h5-h1.typed .ch.on{opacity:1}
.h5-h1.typed .ch.cur::after{content:"";position:absolute;right:-.07em;top:.1em;bottom:.12em;width:.06em;border-radius:2px;background:var(--orange);animation:caret .7s steps(1) infinite}
@keyframes caret{50%{opacity:0}}
/* o resto aparece depois da digitação */
.h5-sub{animation-delay:1.95s}.h5-actions{animation-delay:2.1s}.h5-trust{animation-delay:2.25s}.h5-bar{animation-delay:2.4s}

/* cartão de credibilidade com selo de medalha */
.h5-trust{margin-top:30px}
.h5-years{position:relative;display:block;max-width:none;width:fit-content;padding:17px 26px 17px 116px;border-radius:24px;background:linear-gradient(135deg,#0d3672 0%,#04204a 55%,#021938 100%);box-shadow:0 22px 40px -20px rgba(2,25,56,.8),inset 0 1px 0 rgba(255,255,255,.14);overflow:visible}
.h5-years::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(120px 60px at 85% 0%,rgba(247,148,29,.22),transparent 70%);pointer-events:none}
.h5-yt{position:relative}
.h5-yt strong{font-size:1.1rem;letter-spacing:-.005em}
.h5-yt small{font-size:.82rem;margin-top:4px}
.h5-seal{position:absolute;left:16px;top:50%;width:86px;height:86px;margin-top:-43px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.45));animation:sealin .8s cubic-bezier(.2,.9,.3,1.3) 2.6s both}
.h5-seal svg{width:100%;height:100%;overflow:visible}
.seal-ring text{font:800 7.2px "Plus Jakarta Sans",system-ui,sans-serif;letter-spacing:.4px;fill:#ffc46b}
.seal-ring{transform-origin:50px 50px;animation:sealspin 1.6s cubic-bezier(.3,.7,.2,1) 2.7s both}
.seal-s{font:800 7px "Plus Jakarta Sans",system-ui,sans-serif;letter-spacing:2.2px;fill:rgba(255,255,255,.75)}
.seal-y{font:800 17px "Plus Jakarta Sans",system-ui,sans-serif;letter-spacing:-.3px;fill:#f7941d}
@keyframes sealin{from{opacity:0;transform:scale(.4) rotate(-25deg)}to{opacity:1;transform:none}}
@keyframes sealspin{from{transform:rotate(-200deg)}to{transform:rotate(0)}}
@media(max-width:560px){.h5-years{width:auto;padding:16px 18px 16px 108px}.h5-yt small{white-space:normal}.h5-seal{left:12px;width:80px;height:80px;margin-top:-40px}}
@media(prefers-reduced-motion:reduce){.h5-seal,.seal-ring{animation:none}}

/* destaque na frase de credibilidade */
.h5-ya{color:var(--orange);font-weight:800}
.h5-yt strong em{font-family:var(--serif);font-style:italic;font-weight:600;color:#ffc46b;font-size:1.08em;padding:0 .04em}
.h5-yt small{color:rgba(255,255,255,.78)}

/* sublinhado só na palavra "você" */
.h5-h1 .hl{position:relative;display:inline-block}
.h5-h1 .hl::after{content:"";position:absolute;left:.02em;right:.02em;bottom:.02em;height:.075em;border-radius:9px;background:linear-gradient(90deg,var(--orange),#ffc766);transform:scaleX(0);transform-origin:left;animation:hlin .7s cubic-bezier(.2,.8,.2,1) 1.9s forwards}
.h5-h1.typed .hl::after{animation:none}
.h5-h1.typed.done .hl::after{animation:hlin .7s cubic-bezier(.2,.8,.2,1) .1s forwards}
@keyframes hlin{to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.h5-h1 .hl::after{animation:none;transform:none}}

/* transição suave entre a hero e a seção seguinte: névoa + ondas na cor do fundo da página */
.h5-blend{position:absolute;left:0;right:0;bottom:-1px;height:170px;z-index:1;pointer-events:none;overflow:hidden}
.h5-blend::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(251,249,245,0) 0%,rgba(251,249,245,.55) 55%,rgba(251,249,245,.92) 85%,#fbf9f5 100%)}
.h5-blend svg{position:absolute;left:-3%;bottom:-1px;width:106%;height:110px;animation:h5wave 16s ease-in-out infinite alternate;will-change:transform}
.h5-blend .w1{fill:#fbf9f5}.h5-blend .w2{fill:rgba(251,249,245,.55)}
@keyframes h5wave{to{transform:translateX(3%)}}
@media(prefers-reduced-motion:reduce){.h5-blend svg{animation:none}}
@media(max-width:900px){.h5-blend{height:120px}.h5-blend svg{height:70px}}
.hero5 .h5-main{z-index:2}
.h5-barwrap{padding-bottom:62px!important}
@media(max-width:900px){.h5-barwrap{padding-bottom:50px!important}}
/* palavras nunca quebram no meio (o texto digitado usa um bloco por palavra) */
.h5-h1 .tw{display:inline-block;white-space:nowrap}
.h5-h1{overflow-wrap:normal;word-break:keep-all}
@media(max-width:560px){.h5-h1{font-size:clamp(1.9rem,8.4vw,2.6rem)}}
@media(max-width:360px){.h5-h1{font-size:1.85rem}}
@media(min-width:561px) and (max-width:900px){.h5-h1{font-size:clamp(2.8rem,8vw,4.2rem)}.h5-sub{font-size:1.3rem}}

/* celular: topo mais baixo (a barra encolheu) e selo "Intercâmbio de verdade" menor */
@media(max-width:760px){
  .hero5{padding-top:86px}
  .h5-eyebrow{padding:7px 13px 7px 11px;gap:8px;font-size:.66rem;letter-spacing:.11em}
  .h5-eyebrow i{width:7px;height:7px;box-shadow:0 0 0 3px rgba(247,148,29,.25)}
  .h5-h1{margin-top:12px}
}

.br-m{display:none}
@media(max-width:760px){.br-m{display:inline}}

/* formulário da hero sem o campo de telefone (o WhatsApp já identifica o número de quem manda): nome + destino + botão */
.h5-bar{grid-template-columns:minmax(150px,.85fr) minmax(0,1fr) minmax(0,1.15fr) auto}
@media(max-width:1180px){.h5-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.h5-bar-t{grid-column:1/-1}.h5-send{grid-column:1/-1}}
@media(max-width:700px){.h5-bar{grid-template-columns:1fr}}
