/* Builda Day v5 (06/11/2026) */
:root{--vermelho:#E5484D}

/* ---------- circuito: legenda livre do trilho, cartões nítidos ---------- */
@media (min-width:1180px){.circ-legenda{left:max(var(--gutter),104px)}}
.circ-plano{will-change:auto}
.circ-no{-webkit-font-smoothing:subpixel-antialiased;backface-visibility:hidden}

/* ---------- 4 etapas: palavra + frase, sem nome nem hora ---------- */
.mov-corpo{align-items:end}
.mov-conteudo{max-width:760px}
.mov-frase{margin-top:14px;font-size:clamp(17px,1.6vw,22px);line-height:1.4;color:var(--tx);max-width:560px;padding:12px 16px;border-radius:12px;background:color-mix(in srgb,var(--card) 62%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:inline-block}
.mov-pontos{display:none}
@media (max-width:760px){
  .mov-cartao{min-height:420px;touch-action:pan-y}
  .mov-abas{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:14px;gap:6px}
  .mov-abas::-webkit-scrollbar{display:none}
  .mov-aba{flex:none;padding:8px 13px;font-size:13px}
  .mov-corpo{padding:18px 18px 22px}
  .mov-corpo h3{font-size:54px}
  .mov-frase{font-size:16.5px;padding:11px 14px}
  .mov-pontos{display:flex;gap:6px;margin-top:16px}
  .mov-pontos i{width:20px;height:3px;border-radius:2px;background:rgba(22,22,24,.18);transition:all .35s var(--ease)}
  .mov-pontos i.on{width:36px;background:var(--tx)}
}

/* ---------- órbita única ---------- */
.app-chip .ic img.grupo{width:26px;height:26px}
@media (max-width:760px){
  .orbita-palco{height:380px!important}
  .orbita-palco canvas{position:absolute!important;inset:0;height:100%!important}
  .orbita-chips{position:absolute!important;inset:0;display:block!important;overflow:visible!important;margin:0!important;padding:0!important;pointer-events:none}
  .app-chip{position:absolute!important;padding:0!important;border-radius:14px;width:46px;height:46px;justify-content:center;pointer-events:auto}
  .app-chip .ic{width:46px;height:46px;border-radius:13px}
  .app-chip>span:last-child{display:none}
}
.app-galeria{display:flex;flex-wrap:wrap;gap:6px}
.app-galeria button{padding:7px 12px;border-radius:8px;font-size:13px;border:1px solid color-mix(in srgb,var(--app-fg,#111) 20%,transparent);color:var(--app-fg,#111);opacity:.7}
.app-galeria button.on{opacity:1;background:var(--app-ac);border-color:var(--app-ac);color:#fff}
.app-galeria:empty{display:none}

/* ---------- futuro: mais escuro e com parallax também no celular ---------- */
[data-tema="ntech"] .futuro img{filter:grayscale(1) contrast(1.18) brightness(.72)}
.futuro img{will-change:transform}

/* ---------- time: modo builder ---------- */
.modo-builder{margin-top:22px;display:inline-flex;align-items:center;gap:12px;padding:8px 16px 8px 8px;border-radius:999px;border:1px solid var(--line2);background:var(--card);font-weight:500;font-size:14.5px;transition:background .3s,color .3s,border-color .3s}
.mb-chave{position:relative;width:40px;height:24px;border-radius:999px;background:var(--line2);transition:background .3s}
.mb-chave i{position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.25);transition:transform .35s var(--ease)}
.modo-builder[aria-pressed="true"]{background:#0E0B1F;color:#fff;border-color:#0E0B1F}
.modo-builder[aria-pressed="true"] .mb-chave{background:var(--ac)}
.modo-builder[aria-pressed="true"] .mb-chave i{transform:translateX(16px)}
.time.builder .foto img.alt{opacity:1}
.time.builder .pessoa{background:#0E0B1F;border-color:#241B4D}
.time.builder .pessoa h3{color:#fff}.time.builder .pessoa p{color:#B9B3D9}
.pessoa,.pessoa h3,.pessoa p{transition:background .5s,color .5s,border-color .5s}
@media (max-width:760px){
  .time{grid-template-columns:repeat(4,62%)!important}
  .pessoa .foto{aspect-ratio:1/1!important}
  .pessoa .info{padding:14px 16px 16px}
  .pessoa h3{font-size:19px}
  .pessoa p{font-size:13.5px}
}

/* ---------- cheque: carta rara (flutua + brilho holográfico) ---------- */
.cheque{animation:flutuaCarta 5.5s ease-in-out infinite}
@keyframes flutuaCarta{0%,100%{transform:rotateX(6deg) rotateY(-8deg) rotateZ(1.5deg) translateY(0)}50%{transform:rotateX(2deg) rotateY(6deg) rotateZ(-1deg) translateY(-14px)}}
.cheque:hover{animation-play-state:paused}
.ch-holo{position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:color-dodge;opacity:.55;background:linear-gradient(115deg,transparent 20%,rgba(255,120,200,.35) 32%,rgba(120,200,255,.4) 42%,rgba(255,240,140,.38) 52%,rgba(170,120,255,.35) 62%,transparent 75%);background-size:250% 250%;animation:holo 4.5s ease-in-out infinite}
@keyframes holo{0%,100%{background-position:0% 0%}50%{background-position:100% 100%}}
.cheque-palco{position:relative}
.cheque-palco::after{content:"";position:absolute;left:18%;right:18%;bottom:-6px;height:26px;border-radius:50%;background:radial-gradient(closest-side,rgba(60,30,140,.28),transparent);animation:sombraCarta 5.5s ease-in-out infinite;pointer-events:none}
@keyframes sombraCarta{50%{transform:scale(.82);opacity:.6}}
@media (prefers-reduced-motion:reduce){.cheque,.ch-holo,.cheque-palco::after{animation:none}}

/* ---------- oferta ---------- */
.oferta{margin-top:40px;display:grid;grid-template-columns:1.05fr .95fr;border:1px solid var(--line2);border-radius:var(--r-lg);overflow:hidden;background:var(--card);box-shadow:0 40px 80px -60px rgba(30,20,80,.45)}
.oferta-preco{position:relative;display:flex;flex-direction:column;gap:22px;padding:clamp(24px,3.4vw,40px);background:radial-gradient(80% 90% at 0% 0%,var(--ac-soft),transparent 70%)}
.oferta-topo{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.oferta-topo .tag{position:static;font-family:var(--mono);font-size:11.5px;padding:5px 10px;border-radius:6px;background:var(--ac);color:#fff}
.vagas-vermelho{display:inline-flex;align-items:center;gap:10px;color:var(--vermelho);font-size:14.5px}
.vagas-vermelho b{font-weight:500}
.vagas-vermelho .vagas-barra{display:flex;gap:4px}
.vagas-vermelho .vagas-barra i{width:16px;height:16px;border-radius:4px;background:var(--vermelho);box-shadow:0 0 0 3px rgba(229,72,77,.14);animation:pisca 2.4s ease-in-out infinite}
.vagas-vermelho .vagas-barra i:nth-child(2){animation-delay:.15s}.vagas-vermelho .vagas-barra i:nth-child(3){animation-delay:.3s}.vagas-vermelho .vagas-barra i:nth-child(4){animation-delay:.45s}.vagas-vermelho .vagas-barra i:nth-child(5){animation-delay:.6s}
.vagas-vermelho .vagas-barra i.vendida{background:var(--line2);box-shadow:none;animation:none}
@keyframes pisca{50%{box-shadow:0 0 0 5px rgba(229,72,77,.06)}}
.oferta .preco{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0}
.oferta .preco b{font-family:var(--display);font-weight:400;font-size:clamp(64px,8vw,104px);letter-spacing:-.05em;line-height:.9}
.oferta .preco span{color:var(--tx2);font-size:16px}
.oferta .btn{width:100%;height:56px;font-size:16px}
.oferta-miuda{font-size:13px;color:var(--tx3)}.oferta-miuda a{color:var(--ac2)}
.oferta-inclui{display:flex;flex-direction:column;justify-content:space-between;gap:26px;padding:clamp(24px,3.4vw,40px);border-left:1px solid var(--line2)}
.oferta-inclui ul{list-style:none;display:grid;gap:14px}
.oferta-inclui li{display:flex;gap:12px;align-items:flex-start;font-size:16px;color:var(--tx2)}
.oferta-inclui li svg{width:20px;height:20px;color:var(--ac);flex:none;margin-top:1px}
.oferta-inclui li b{color:var(--tx);font-weight:500}
.escada{display:grid;gap:8px}
.degrau{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;gap:14px;padding:14px 16px;border-radius:12px;border:1px dashed var(--line3);color:var(--tx3)}
.degrau b{font-family:var(--display);font-weight:400;font-size:24px;color:var(--tx3);letter-spacing:-.02em}
.degrau em{font-style:normal;font-family:var(--mono);font-size:11.5px}
.degrau.on{border-style:solid;border-color:var(--ac);background:var(--ac-soft);color:var(--tx)}
.degrau.on b{color:var(--tx)}.degrau.on em{color:var(--ac2)}
@media (max-width:860px){.oferta{grid-template-columns:1fr}.oferta-inclui{border-left:0;border-top:1px solid var(--line2)}}

/* ---------- mapa: prédio do local em destaque ---------- */
.mapa-v4 .pino-rot{bottom:34px}

/* ---------- dúvidas em conversa ---------- */
.chat{margin-top:40px;display:grid;grid-template-columns:.9fr 1.1fr;gap:16px;align-items:stretch}
.chat-perguntas{display:flex;flex-direction:column;gap:8px}
.chat-perguntas button{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid var(--line2);background:var(--card);font-size:15.5px;font-weight:500;color:var(--tx);transition:border-color .25s,background .25s,transform .25s var(--ease)}
.chat-perguntas button svg{width:18px;height:18px;color:var(--tx3);flex:none;transition:transform .3s var(--ease),color .3s}
.chat-perguntas button:hover{border-color:var(--ac);transform:translateX(3px)}
.chat-perguntas button:hover svg{color:var(--ac);transform:translateX(3px)}
.chat-perguntas button.feita{background:var(--bg2);color:var(--tx2)}
.chat-janela{display:flex;flex-direction:column;border:1px solid var(--line2);border-radius:var(--r-lg);background:var(--card2);overflow:hidden;min-height:420px}
.chat-cab{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line2);background:var(--card)}
.chat-cab .logo-orb{width:30px;height:30px}
.chat-cab b{display:block;font-weight:500}
.chat-cab small{display:block;font-family:var(--mono);font-size:11px;color:var(--green)}
.chat-msgs{flex:1;display:flex;flex-direction:column;gap:10px;padding:18px;overflow:auto;max-height:480px;scroll-behavior:smooth}
.msg{max-width:84%;padding:11px 15px;border-radius:16px;font-size:15.5px;line-height:1.45;animation:entraMsg .4s var(--ease) both}
.msg.eu{align-self:flex-end;background:var(--ac);color:#fff;border-bottom-right-radius:5px}
.msg.ela{align-self:flex-start;background:var(--card);border:1px solid var(--line2);color:var(--tx);border-bottom-left-radius:5px}
.msg.digitando{display:inline-flex;gap:4px;padding:14px 16px}
.msg.digitando i{width:7px;height:7px;border-radius:50%;background:var(--tx3);animation:pula 1s ease-in-out infinite}
.msg.digitando i:nth-child(2){animation-delay:.15s}.msg.digitando i:nth-child(3){animation-delay:.3s}
@keyframes pula{50%{transform:translateY(-4px);opacity:.5}}
@keyframes entraMsg{from{opacity:0;transform:translateY(8px) scale(.98)}}
@media (max-width:860px){
  .chat{grid-template-columns:1fr}
  .chat-perguntas{flex-direction:row;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 4px}
  .chat-perguntas::-webkit-scrollbar{display:none}
  .chat-perguntas button{flex:none;max-width:78vw;font-size:14px;padding:11px 14px}
  .chat-perguntas button svg{display:none}
  .chat-janela{min-height:380px}
}

/* ---------- encerramento: Builda Club ---------- */
.club-final{position:relative;overflow:hidden;isolation:isolate;min-height:100vh;display:flex;align-items:center;background:#12203D;color:#F7EBDD;padding:clamp(110px,14vw,180px) 0}
.club-pontos{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.club-feixe{position:absolute;inset:-20% -30%;z-index:-1;pointer-events:none;transform:rotate(-19deg)}
.club-feixe i{position:absolute;left:0;right:0;top:44%;height:28%;background:linear-gradient(90deg,transparent 0%,rgba(245,197,66,.0) 8%,rgba(245,197,66,.55) 24%,rgba(255,106,42,.6) 40%,rgba(224,75,140,.55) 56%,rgba(140,90,255,.5) 72%,rgba(90,110,255,.0) 90%);filter:blur(46px);opacity:0;transform:translateX(-30%);transition:opacity 1.6s ease,transform 2.4s cubic-bezier(.2,.7,.1,1)}
.club-feixe i:nth-child(2){top:52%;height:9%;filter:blur(18px);opacity:0;background:linear-gradient(90deg,transparent 10%,rgba(255,230,170,.55) 35%,rgba(255,160,120,.5) 55%,transparent 85%)}
.club-final.on .club-feixe i{opacity:.95;transform:none}
.club-final.on .club-feixe i:nth-child(2){opacity:.7}
.club-grao{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.22;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.club-conteudo{position:relative;z-index:1}
.club-titulo{font-family:var(--serif);font-weight:400;font-size:clamp(48px,7.6vw,118px);line-height:.98;letter-spacing:-.035em;color:#F7EBDD;max-width:1100px}
.club-titulo .linha{display:block;overflow:hidden;padding-bottom:.08em}
.club-titulo .linha>span{display:inline-block;transform:translateY(105%);transition:transform 1.3s cubic-bezier(.2,.7,.1,1)}
.club-titulo .linha:nth-child(2)>span{transition-delay:.18s}
.club-final.on .club-titulo .linha>span{transform:none}
.club-titulo em{font-style:normal;color:#F5C542}
.club-cartao{margin-top:clamp(36px,5vw,64px);max-width:560px;display:flex;flex-direction:column;gap:22px;padding:24px;border-radius:18px;background:rgba(18,32,61,.55);border:1px solid rgba(201,207,223,.18);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transform:translateY(20px);transition:opacity 1s ease .7s,transform 1.2s cubic-bezier(.2,.7,.1,1) .7s}
.club-final.on .club-cartao{opacity:1;transform:none}
.club-cartao p{font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:#C9CFDF}
.club-cartao b{color:#F7EBDD;font-weight:500}
.btn-club{align-self:flex-start;background:#F5C542;color:#12203D;font-weight:600;box-shadow:0 14px 40px -14px rgba(245,197,66,.6)}
.btn-club:hover{background:#FFD45A;transform:translateY(-2px)}
@media (max-width:760px){.club-final{min-height:auto;padding:110px 0 120px}.club-cartao{padding:20px}.btn-club{width:100%}}
@media (prefers-reduced-motion:reduce){.club-titulo .linha>span,.club-cartao,.club-feixe i{transition:none;transform:none;opacity:1}}

/* ---------- rodapé centralizado no celular ---------- */
@media (max-width:720px){
  .rodape .wrap{text-align:center;justify-items:center}
  .rodape .assinatura{margin:0 auto}
  .rodape .links{justify-content:center}
}
@media (max-width:760px){
  .grafo-grande{height:800px!important}
  .g-no.sub .nome{display:block!important;font-size:10.5px}
  .g-no.sub .tile{width:28px!important;height:28px!important}
  .g-no.sub{flex-direction:row;gap:6px}
  .g-no.agente:not(.orq) .nome{font-size:12px}
}
.app-moldura img{transition:opacity .25s}
