.home-caps,
html:has(.home-caps) { height: 100%; overflow: hidden; }
.home-caps { position: fixed; inset: 0; }
.filme { position: fixed; inset: 0; z-index: 0; background: #0d0b09; overflow: hidden; }
.filme-trava,
.filme-passagem {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
.filme-trava { opacity: 0; transition: opacity var(--troca-trava, .45s) ease; }
.filme-trava.visivel { opacity: 1; }
picture.filme-trava > img { width: 100%; height: 100%; object-fit: cover; }
.filme-passagem { opacity: 0; z-index: 2; pointer-events: none; }
html.em-passagem .filme-passagem.pronta { opacity: 1; }
.filme-veu {
  position: absolute; inset: 0; z-index: 3; pointer-events: none;
  background:
    linear-gradient(100deg, #0c0a08cc 0%, #0c0a0899 34%, #0c0a0826 58%, transparent 76%),
    linear-gradient(#0c0a0866 0%, transparent 22%, transparent 72%, #0c0a0899 100%);
}
html[data-cap="4"] .filme-veu,
html[data-cap="7"] .filme-veu,
html[data-cap="8"] .filme-veu {
  background:
    linear-gradient(100deg, #f4efe8d9 0%, #f4efe8ad 36%, #f4efe840 60%, transparent 78%),
    linear-gradient(#f4efe84d 0%, transparent 26%, transparent 74%, #f4efe866 100%);
}
html[data-cap="5"] .filme-veu {
  background:
    linear-gradient(100deg, #2b1a0bd4 0%, #2b1a0b9c 38%, #2b1a0b33 62%, transparent 80%),
    linear-gradient(#2b1a0b59 0%, transparent 24%, transparent 66%, #2b1a0b8c 100%);
}
main { position: relative; z-index: 4; }
.cap {
  position: fixed; inset: 0;
  opacity: 0; visibility: hidden;
  pointer-events: none;
  transition: opacity var(--sai, .24s) ease, visibility 0s linear var(--sai, .24s);
}
.cap.ativo { visibility: visible; pointer-events: auto;
  transition: opacity var(--sai, .24s) ease, visibility 0s; }
.cap.dentro { opacity: 1; }
.cap-palco {
  position: absolute;
  left: 7.5vw; top: 50%; transform: translateY(-50%);
  width: min(620px, 46vw);
  display: flex; flex-direction: column; gap: clamp(14px, 1.8vh, 26px);
}
.cap-palco > *,
.cap-aviso {
  opacity: 0; transform: translateY(16px);
  transition: opacity var(--entra, .62s) var(--ease, cubic-bezier(.16,1,.3,1)),
              transform var(--entra, .62s) var(--ease, cubic-bezier(.16,1,.3,1));
}
.cap.dentro .cap-palco > *,
.cap.dentro .cap-aviso { opacity: 1; transform: none; }
.cap:not(.dentro) .cap-palco > * { transition-duration: var(--sai, .24s); }
html.em-passagem .cap,
html.em-passagem .pontinhos,
html.em-passagem .whatsapp { opacity: 0; pointer-events: none; }
.cap-hero .cap-palco { width: min(760px, 52vw); top: 46%; }
.cap-quem .cap-palco { width: min(1120px, 76vw); }
.cap-quem .ucol-a { max-width: min(620px, 44vw); }
.cap-quem .intro-proof { max-width: min(620px, 44vw); }
.cap-ideia .cap-palco { top: 44%; }
.cap-metodo .cap-palco {
  top: 0; transform: none; left: 0; width: 100%; height: 100%;
  padding: calc(var(--nav-h, 64px) + 6vh) 5vw 4vh;
  justify-content: space-between;
}
.cap-metodo .mcall { max-width: min(680px, 48vw); align-self: flex-start; }
.cap-metodo .mgrid { width: 100%; }
.cap-solucoes .cap-palco {
  top: 0; transform: none; left: 0; width: 100%; height: 100%;
  padding: calc(var(--nav-h, 64px) + 5vh) 5vw 5vh;
  justify-content: space-between; text-align: center;
}
.cap-solucoes .section-head { margin: 0 auto; max-width: 900px; }
.cap-solucoes .service-grid { width: 100%; }
.cap-cases .cap-palco {
  top: 0; transform: none; left: 0; width: 100%; height: 100%;
  padding: calc(var(--nav-h, 64px) + 4vh) 4vw 4vh;
  justify-content: space-between; text-align: center;
}
.cap-cases .cases-head { margin: 0 auto; }
.cap-cases .case-carousel { width: 100%; }
.cap-analise .cap-palco { width: min(760px, 54vw); top: 42%; }
.cap-analise .diag-card { align-self: start; }
.cap-contato .cap-palco { width: min(680px, 48vw); top: 44%; }
.cap-contato .site-footer {
  position: fixed; left: 0; right: 0; bottom: 0;
  z-index: 5;
}
.uman-indicador { font-size: 13px; line-height: 1.5; }
.ui-titulo {
  margin: 0; color: var(--amber); font-weight: 800;
  letter-spacing: var(--track-eyebrow, .16em); text-transform: uppercase;
  font-size: var(--eyebrow, .75rem);
}
.ui-passo { margin: 4px 0 10px; color: #ffffffa8; font-size: 12px; }
.ui-partes {
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-wrap: wrap; gap: 6px 18px; counter-reset: p;
}
.ui-partes li { counter-increment: p; }
.ui-partes a {
  color: #ffffff8f; font-size: 12.5px; text-decoration: none;
  border-bottom: 1px solid transparent; padding-bottom: 2px;
}
.ui-partes a:before { content: counter(p) '. '; opacity: .55; }
.ui-partes a:hover { color: #fff; border-bottom-color: #ffffff4d; }
.ui-partes a[aria-current] { color: var(--amber); border-bottom-color: var(--amber); }
html[data-cap="4"] .ui-passo { color: #28282999; }
html[data-cap="4"] .ui-partes a { color: #28282999; }
html[data-cap="4"] .ui-partes a:hover { color: var(--ink); }
.hero-convite {
  display: flex; align-items: center; gap: 14px;
  padding: 14px 20px; border-radius: 999px;
  background: #ffffff14; border: 1px solid #ffffff2e;
  backdrop-filter: blur(var(--blur-box, 14px));
  max-width: 620px;
}
.convite-promessa { margin: 0; font-size: 14px; line-height: 1.45; color: #fff }
.convite-como { margin: 3px 0 0; font-size: 12.5px; color: #ffffffa6 }
.convite-como kbd {
  font: inherit; border: 1px solid #ffffff4d; border-radius: 5px;
  padding: 0 5px; margin: 0 1px;
}
.convite-mouse {
  flex: 0 0 auto; width: 22px; height: 34px; border-radius: 12px;
  border: 2px solid #ffffffb3; position: relative;
}
.convite-mouse b {
  position: absolute; left: 50%; top: 6px; width: 3px; height: 7px;
  margin-left: -1.5px; border-radius: 3px; background: var(--amber);
  animation: convite-desce 1.8s infinite;
}
@keyframes convite-desce {
  0%, 100% { transform: translateY(0); opacity: 1 }
  60% { transform: translateY(11px); opacity: .25 }
}
.so-toque { display: none }
.cap-aviso {
  position: absolute; left: 50%; bottom: 3.2vh; translate: -50% 0;
  margin: 0; display: flex; align-items: center; gap: 9px;
  font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase;
  color: #ffffff8c; white-space: nowrap;
}
html[data-cap="4"] .cap-aviso,
html[data-cap="7"] .cap-aviso,
html[data-cap="8"] .cap-aviso { color: #28282985 }
.aviso-seta { font-style: normal; animation: aviso-desce 1.9s infinite }
@keyframes aviso-desce {
  0%, 100% { transform: translateY(0); opacity: .5 }
  55% { transform: translateY(5px); opacity: 1 }
}
.aviso-tocar { display: none }
.pontinhos {
  position: fixed; right: 18px; top: 50%; translate: 0 -50%;
  z-index: 40; display: flex; flex-direction: column; gap: 10px;
  transition: opacity .3s;
}
.pontinhos .ponto {
  width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%;
  background: #ffffff40; position: relative; transition: background .3s, transform .3s;
}
.pontinhos .ponto-uman { background: #ffffff2b }
.pontinhos .ponto:hover { background: #ffffff8c; transform: scale(1.25) }
.pontinhos .ponto.aqui { background: var(--amber); transform: scale(1.25) }
.pontinhos .ponto span {
  position: absolute; right: 18px; top: 50%; translate: 0 -50%;
  background: #1d1d1be0; color: #fff; font-size: 11.5px; line-height: 1;
  padding: 7px 10px; border-radius: 7px; white-space: nowrap;
  opacity: 0; pointer-events: none; transition: opacity .2s;
}
.pontinhos .ponto:hover span,
.pontinhos .ponto:focus-visible span { opacity: 1 }
.pontinhos .ponto-uman + .ponto-uman { margin-top: -4px }
.nav-item-uman {
  position: relative; display: inline-flex; flex-direction: column;
  align-items: center;
}
.nav-pontos {
  display: flex; gap: 3px; justify-content: center;
  margin-top: 3px; font-style: normal;
  position: absolute; top: 100%; left: 0; right: 0;
}
.nav-pontos b {
  width: 4px; height: 4px; border-radius: 50%; background: #ffffff40;
  transition: background .3s;
}
html[data-cap="2"] .nav-pontos b:nth-child(1),
html[data-cap="3"] .nav-pontos b:nth-child(2),
html[data-cap="4"] .nav-pontos b:nth-child(3) { background: var(--amber) }
.pular-passagem {
  position: fixed; right: 22px; bottom: 22px; z-index: 45;
  padding: 10px 16px; border: 1px solid #ffffff3d; border-radius: 999px;
  background: #1d1d1b8c; backdrop-filter: blur(10px);
  color: #fff; font-size: 12.5px;
}
.pular-passagem:hover { border-color: var(--amber); color: var(--amber) }
@media (max-aspect-ratio: 1/1) {
  .filme-veu {
    background: linear-gradient(#0c0a0859 0%, transparent 26%, #0c0a08d9 62%, #0c0a08f2 100%);
  }
  html[data-cap="4"] .filme-veu,
  html[data-cap="7"] .filme-veu,
  html[data-cap="8"] .filme-veu {
    background: linear-gradient(#f4efe84d 0%, transparent 24%, #f4efe8e6 60%, #f4efe8fa 100%);
  }
  html[data-cap="5"] .filme-veu {
    background: linear-gradient(#2b1a0b59 0%, transparent 24%, #2b1a0be0 60%, #2b1a0bf7 100%);
  }
  .cap-palco,
  .cap-hero .cap-palco,
  .cap-quem .cap-palco,
  .cap-ideia .cap-palco,
  .cap-analise .cap-palco,
  .cap-contato .cap-palco,
  .cap-metodo .cap-palco,
  .cap-solucoes .cap-palco,
  .cap-cases .cap-palco {
    left: 0; right: 0; width: auto; height: auto;
    top: auto; bottom: 8vh; transform: none;
    padding: 0 6vw; text-align: left;
    justify-content: flex-end; gap: 12px;
    max-height: 62svh; overflow-y: auto; overscroll-behavior: contain;
  }
  .cap-quem .ucol-a,
  .cap-quem .intro-proof,
  .cap-metodo .mcall { max-width: none }
  
  .cap-metodo .mgrid,
  .cap-solucoes .service-grid {
    display: flex; overflow-x: auto; scroll-snap-type: x mandatory;
    gap: 12px; padding-bottom: 6px; scrollbar-width: none;
  }
  .cap-metodo .mgrid::-webkit-scrollbar,
  .cap-solucoes .service-grid::-webkit-scrollbar { display: none }
  .cap-metodo .mstep,
  .cap-solucoes .service {
    flex: 0 0 78%; scroll-snap-align: start;
  }
  .pontinhos { display: none }
  .so-ponteiro { display: none }
  .so-toque { display: inline }
  .aviso-rolar { display: none }
  .aviso-tocar { display: inline }
  .hero-convite { max-width: none }
  .cap-contato .site-footer { position: static; margin-top: 14px }
  .pular-passagem { right: 12px; bottom: 12px; padding: 9px 13px }
}
@media (prefers-reduced-motion: reduce) {
  .filme-trava { transition-duration: .2s }
  .cap-palco > *, .cap-aviso { transition: opacity .2s linear; transform: none }
  .cap.dentro .cap-palco > * { transform: none }
  .convite-mouse b, .aviso-seta { animation: none }
}
.home-caps {
  --p: 1; --pv: 1; --e: 0; --lift: 0px;
  --cgap: clamp(16px, 1.5vw, 26px);
  --sgap: clamp(16px, 1.5vw, 26px);
}
.cap-palco {
  top: calc(var(--nav-h, 64px) + 3.2vh);
  bottom: 9vh;
  transform: none;
  justify-content: center;
  overflow: visible;
}
.cap-metodo .cap-palco,
.cap-solucoes .cap-palco,
.cap-cases .cap-palco {
  top: calc(var(--nav-h, 64px) + 3.2vh);
  bottom: 9vh;
  left: 5vw; right: 5vw;
  width: auto; height: auto;
  padding: 0;
  justify-content: space-between;
}
.cap-cases .cap-palco { left: 4vw; right: 4vw; }
.home-caps .ubox,
.home-caps .mcall,
.home-caps .diag-main {
  background: none;
  border: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  padding: 0;
  opacity: 1;
  transform: none;
}
.home-caps .ubox h3,
.home-caps .mcall h2 {
  font-size: clamp(30px, 3.9vw, 62px);
  line-height: 1.06;
  letter-spacing: -.045em;
  margin: clamp(10px, 1.4vh, 18px) 0 clamp(12px, 1.6vh, 20px);
}
.home-caps .ubox p,
.home-caps .mcall .lead,
.home-caps .diag-main .lead {
  font-size: clamp(15px, 1.22vw, 20px);
  line-height: 1.55;
  max-width: 46ch;
}
.home-caps .ubox,
.home-caps .mcall { text-shadow: 0 2px 18px rgba(0,0,0,.55); }
html[data-cap="4"] .home-caps .ubox,
.cap-ideia .ubox,
.cap-analise .diag-main { text-shadow: 0 1px 10px rgba(255,255,255,.5); }
.home-caps .mcall .action { align-self: flex-start; margin-top: clamp(16px,2.4vh,30px); }
.cap-metodo .mcall { max-width: min(720px, 50vw); }
.cap-metodo .mgrid { gap: clamp(12px, 1.1vw, 20px); }
.cap-metodo .mstep {
  padding: clamp(14px, 1.5vh, 22px) clamp(14px, 1.3vw, 22px);
}
.cap-metodo .mstep h3 { font-size: clamp(16px, 1.3vw, 22px); margin: 6px 0 8px; }
.cap-metodo .mstep p  { font-size: clamp(13px, .95vw, 16px); line-height: 1.45; }
.cap-analise .cap-palco {
  left: 7.5vw; right: 7.5vw; width: auto;
  justify-content: center; gap: clamp(18px, 2.4vh, 34px);
}
.cap-analise .diag-main { max-width: min(760px, 54vw); }
.cap-analise .diag-side { max-width: min(520px, 38vw); }
.cap-contato .cap-palco { bottom: calc(var(--rodape-h, 96px) + 2vh); }
.cap-contato .site-footer { --rodape-h: 96px; }
.cap-hero .cap-palco,
.cap-ideia .cap-palco,
.cap-analise .cap-palco,
.cap-contato .cap-palco,
.cap-quem .cap-palco {
  top: calc(var(--nav-h, 64px) + 3.2vh);
  bottom: 9vh;
  transform: none;
  justify-content: center;
}
.cap-contato .cap-palco { bottom: calc(var(--rodape-h, 96px) + 2vh); }
.home-caps .ubox h3,
.home-caps .ubox p,
.home-caps .mcall h2,
.home-caps .diag-main h2 { color: #fff; }
.home-caps .ubox p,
.home-caps .mcall .lead { color: rgba(255,255,255,.9); }
html[data-cap="4"] .ubox h3,
html[data-cap="7"] .cap.dentro h2,
html[data-cap="8"] .diag-main h2 { color: var(--ink, #252525); }
html[data-cap="4"] .ubox p,
html[data-cap="8"] .diag-main .lead { color: #3c342a; }
.home-caps .ubox h3 em,
.home-caps .mcall h2 em,
.home-caps .diag-main h2 em { color: var(--amber); }
html[data-cap="4"] .cap.dentro .ubox,
html[data-cap="7"] .cap.dentro,
html[data-cap="8"] .cap.dentro .diag-main { text-shadow: none; }
html[data-cap="2"] .filme-veu,
html[data-cap="3"] .filme-veu {
  background: linear-gradient(100deg,
    rgba(10,8,6,.92) 0%, rgba(10,8,6,.82) 30%,
    rgba(10,8,6,.42) 56%, rgba(0,0,0,0) 78%);
}
html[data-cap="8"] .filme-veu {
  background: linear-gradient(100deg,
    rgba(246,242,236,.94) 0%, rgba(246,242,236,.86) 34%,
    rgba(246,242,236,.4) 58%, rgba(255,255,255,0) 78%);
}
.home-caps .cap {
  height: auto; min-height: 0;
  padding: 0;
  position: fixed; inset: 0;
  overflow: visible;
}
.home-caps .cap:before,
.home-caps .cap:after { content: none; }
.home-caps .who { color: #fff; }
.home-caps .who .lead,
.home-caps .who p { color: rgba(255,255,255,.88); }
.home-caps .who .eyebrow { color: var(--amber); }
.home-caps .ucol-a h2 { color: #fff; }
.home-caps .ucol-a h2 em { color: var(--amber); }
html[data-cap="4"] .cap.dentro .cap-palco,
html[data-cap="4"] .cap.dentro .cap-palco p,
html[data-cap="4"] .cap.dentro .cap-palco .lead,
html[data-cap="8"] .cap.dentro .cap-palco > .diag-main,
html[data-cap="8"] .cap.dentro .cap-palco > .diag-main p { color: #3c342a; }
html[data-cap="4"] .cap.dentro .cap-palco h2,
html[data-cap="4"] .cap.dentro .cap-palco h3 { color: var(--ink, #252525); }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow,
html[data-cap="4"] .cap.dentro .cap-palco em { color: #a66e00; }
html[data-cap="4"] .cap.dentro .cap-palco h2 em,
html[data-cap="4"] .cap.dentro .cap-palco h3 em { color: var(--amber); }
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-palco,
  .home-caps .cap-hero .cap-palco,
  .home-caps .cap-quem .cap-palco,
  .home-caps .cap-ideia .cap-palco,
  .home-caps .cap-analise .cap-palco,
  .home-caps .cap-contato .cap-palco,
  .home-caps .cap-metodo .cap-palco,
  .home-caps .cap-solucoes .cap-palco,
  .home-caps .cap-cases .cap-palco {
    left: 0; right: 0; width: auto; height: auto;
    top: calc(var(--nav-h, 64px) + 2vh);
    bottom: 7.5vh;
    transform: none;
    padding: 0 6vw;
    text-align: left;
    justify-content: flex-end;
    gap: 12px;
    max-height: none;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .home-caps .cap-palco::-webkit-scrollbar { display: none }
  
  .home-caps .cap-metodo .cap-palco,
  .home-caps .cap-solucoes .cap-palco,
  .home-caps .cap-cases .cap-palco,
  .home-caps .cap-analise .cap-palco,
  .home-caps .cap-contato .cap-palco { justify-content: flex-start }
  
  .home-caps .cap-contato .site-footer {
    position: static; margin-top: 18px;
  }
  .home-caps .cap-contato .cap-palco { bottom: 7.5vh }
  
  .home-caps .cap-metodo .mstep,
  .home-caps .cap-solucoes .service,
  .home-caps .cases .case-card { height: auto; min-height: 0 }
  .home-caps .cap-metodo .mgrid,
  .home-caps .cap-solucoes .service-grid,
  .home-caps .case-viewport { flex: none }
  .home-caps .cap-palco > * { flex: none }
}
html.no-fim .cap-aviso {
  bottom: calc(var(--rodape-h, 96px) + 1.4vh);
}
@media (max-aspect-ratio: 1/1) {
  html.no-fim .cap-aviso { display: none }
}
.home-caps .cap-palco > * { flex: 0 0 auto; min-height: 0 }
html.no-fim .cap-aviso { display: none }
.cap-contato .cap-palco { gap: clamp(10px, 1.2vh, 16px) }
.cap-contato .email-form { padding: clamp(18px, 2vh, 26px) clamp(20px, 2vw, 30px) }
.cap-contato .email-form textarea { height: clamp(64px, 7.5vh, 92px) }
.cap-contato .contact-note { margin-top: 0; font-size: 14px }
.filme-veu { display: none !important }
.home-caps *,
.home-caps *:before,
.home-caps *:after {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.home-caps .ubox,
.home-caps .mcall,
.home-caps .diag-main,
.home-caps .email-form,
.home-caps .hero-convite,
.home-caps .service {
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
.home-caps .cap-palco {
  text-shadow: 0 1px 2px rgba(0,0,0,.55), 0 3px 18px rgba(0,0,0,.45);
}
html[data-cap="4"] .cap-palco,
html[data-cap="7"] .cap-palco,
html[data-cap="8"] .cap-palco {
  text-shadow: 0 1px 2px rgba(255,255,255,.7), 0 3px 16px rgba(255,255,255,.55);
}
.home-caps .cap-palco a.ubotao,
.home-caps .cap-palco button,
.home-caps .cap-palco input,
.home-caps .cap-palco textarea,
.home-caps .cap-palco .action { text-shadow: none }
.uman-indicador { display: none }
.home-caps { --logo-h: 42px; }
.cap-metodo .mgrid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  align-items: stretch;
}
.cap-metodo .mstep {
  display: flex; flex-direction: column;
  height: 100%;
  background: rgba(32, 22, 12, .55);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: clamp(12px, 1.1vw, 18px);
}
.cap-metodo .mstep p { margin-top: 0 }
html[data-cap="5"] .mcall,
html[data-cap="5"] .mcall h2,
html[data-cap="5"] .mcall .lead { color: var(--ink, #252525) }
html[data-cap="5"] .mcall h2 em { color: #a05f00 }
html[data-cap="5"] .mcall .eyebrow { color: #7a4a00 }
html[data-cap="5"] .cap-palco > .mcall {
  text-shadow: 0 1px 2px rgba(255,255,255,.7), 0 3px 16px rgba(255,255,255,.5);
}
html[data-cap="5"] .mstep,
html[data-cap="5"] .mstep h3 { color: #fff }
html[data-cap="5"] .mstep p { color: rgba(255,255,255,.88) }
html[data-cap="5"] .mstep { text-shadow: 0 1px 2px rgba(0,0,0,.5) }
.cap-solucoes .service-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 2.6vw, 48px);
  align-items: start;
}
.home-caps .cap-solucoes .service {
  display: flex; flex-direction: column;
  gap: clamp(5px, .7vh, 10px);
  padding: clamp(12px, 1.5vh, 20px) 0 0;
  min-height: 0; max-height: none;
  border-radius: 0;
  text-align: left;
  border-top: 2px solid var(--amber) !important;
  color: #fff;
}
.home-caps .cap-solucoes .service * { color: inherit }
.home-caps .cap-solucoes .service .eyebrow { color: var(--amber) }
.home-caps .cap-solucoes .service figure {
  height: auto; aspect-ratio: auto; min-height: 0;
  margin: 0 0 clamp(4px, .6vh, 9px);
  border-radius: 10px; overflow: hidden;
}
.home-caps .cap-solucoes .service figure img {
  width: 100%; height: clamp(74px, 9.5vh, 112px);
  object-fit: cover; display: block;
}
.home-caps .cap-solucoes .service h3 {
  font-size: clamp(19px, 1.65vw, 27px); margin: 0; letter-spacing: -.035em;
}
.home-caps .cap-solucoes .service > p:not(.eyebrow) {
  font-size: clamp(13px, .95vw, 16px); line-height: 1.45; margin: 0;
}
.home-caps .cap-solucoes .service .service-link {
  margin-top: clamp(6px, .9vh, 12px);
  font-weight: 700; font-size: clamp(13px, .95vw, 15px);
  display: inline-flex; align-items: center; gap: 8px;
  color: var(--amber);
}
.cap-solucoes .section-head { text-align: center }
.home-caps .cases .case-card {
  padding: clamp(10px, 1vw, 15px);
  border-radius: clamp(13px, 1.1vw, 18px);
  background: rgba(20, 18, 16, .55);
  border: 1px solid rgba(255,255,255,.16);
}
.home-caps .cases .case-image {
  aspect-ratio: auto; height: clamp(96px, 13vh, 150px);
  border-radius: 10px; overflow: hidden;
}
.home-caps .cases .case-image img,
.home-caps .cases .case-image picture { height: 100%; width: 100%; object-fit: cover; display: block }
.home-caps .cases .case-card h3 {
  font-size: clamp(16px, 1.25vw, 21px); margin: 4px 0 0; letter-spacing: -.03em;
}
.home-caps .cases .case-card > p { margin-top: clamp(7px, .9vh, 12px); font-size: 11px }
.home-caps .cases .case-card > p.case-resumo {
  font-size: clamp(12px, .88vw, 14px); line-height: 1.4; margin-top: 5px;
}
.home-caps .cases .case-card .case-acoes { margin-top: clamp(8px, 1.1vh, 14px) }
.home-caps .cases .case-card .case-acoes a,
.home-caps .cases .case-card .case-acoes button {
  font-size: clamp(11px, .82vw, 13px); padding: 7px 12px;
}
.cap-cases .case-carousel { max-height: 46vh }
.home-caps .cap-contato .contact-note {
  margin: clamp(14px, 2.2vh, 26px) 0 0;
  font-size: clamp(13px, .95vw, 15px);
  font-weight: 600;
}
.home-caps .cap-contato .site-footer {
  --rodape-h: 62px;
  background: none;
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 0 4vw;
  min-height: 62px; height: 62px;
  font-size: 12px;
  opacity: .72;
}
.home-caps .cap-contato .site-footer img { height: 26px; width: auto }
.home-caps .cap-contato .site-footer a { text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.3) }
.home-caps .cap-contato .site-footer p,
.home-caps .cap-contato .site-footer small { font-size: 12px; line-height: 1.4 }
.home-caps .cap-contato .email-form,
.home-caps .cap-contato .email-form label,
.home-caps .cap-contato .email-form .campo-dica,
.home-caps .cap-contato .email-form .form-ok { color: #fff }
.home-caps .cap-contato .email-form .campo-dica { color: rgba(255,255,255,.72) }
.home-caps .cap-contato .email-form small { color: var(--amber) }
.home-caps .cap-contato .email-form input,
.home-caps .cap-contato .email-form textarea {
  color: var(--ink, #252525);
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(255,255,255,.25);
}
.home-caps .cap-contato .email-form input::placeholder,
.home-caps .cap-contato .email-form textarea::placeholder { color: rgba(37,37,37,.5) }
.home-caps .cap-contato .contact-note { color: #fff }
.home-caps .cap-contato .site-footer {
  display: flex; align-items: center; justify-content: space-between;
  gap: clamp(16px, 3vw, 48px);
}
.home-caps .cap-contato .site-footer > * { margin: 0 }
.home-caps .cap-contato .site-footer img { height: 22px }
.home-caps .cap-contato .site-footer small,
.home-caps .cap-contato .site-footer p { white-space: nowrap }
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-metodo .mgrid,
  .home-caps .cap-solucoes .service-grid {
    display: flex; grid-template-columns: none;
    overflow-x: auto; scroll-snap-type: x mandatory;
    gap: 12px; padding-bottom: 6px; scrollbar-width: none;
  }
  .home-caps .cap-metodo .mgrid::-webkit-scrollbar,
  .home-caps .cap-solucoes .service-grid::-webkit-scrollbar { display: none }
  .home-caps .cap-metodo .mstep,
  .home-caps .cap-solucoes .service {
    flex: 0 0 76%; scroll-snap-align: start; height: auto;
  }
  .home-caps .cap-solucoes .service figure img { height: clamp(96px, 16vh, 150px) }
  .home-caps .cap-cases .case-carousel { max-height: none }
}
@media (max-aspect-ratio: 1/1) {
  html[data-cap="5"] .mcall,
  html[data-cap="5"] .mcall h2,
  html[data-cap="5"] .mcall .lead { color: #fff }
  html[data-cap="5"] .mcall h2 em,
  html[data-cap="5"] .mcall .eyebrow { color: var(--amber) }
  html[data-cap="5"] .cap-palco > .mcall {
    text-shadow: 0 1px 2px rgba(0,0,0,.6), 0 3px 18px rgba(0,0,0,.5);
  }
}
.cap-cenario .cap-palco {
  left: 17.2vw; right: auto;
  width: min(600px, 31vw);
  top: 17vh; bottom: 34vh;
  justify-content: center;
}
.cap-quem .cap-palco {
  left: 6.3vw;
  width: min(690px, 36vw);
  top: 19.5vh; bottom: 39vh;
  justify-content: center;
}
.cap-quem .ucol-a,
.cap-quem .intro-proof { max-width: none }
.cap-hero .cap-palco,
.cap-contato .cap-palco { left: 6.3vw }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow { color: #6b4500 }
html[data-cap="5"] .mcall .eyebrow { color: #5e3800 }
html[data-cap="8"] .cap.dentro .cap-palco .diag-main p.eyebrow { color: #2a2218 }
html[data-cap="7"] .cap.dentro .cases-head,
html[data-cap="7"] .cap.dentro .cases-head h2,
html[data-cap="7"] .cap.dentro .cases-head p { color: var(--ink, #252525) }
html[data-cap="7"] .cap.dentro .cases-head p.eyebrow { color: var(--amber) }
.home-caps .cap-contato .email-form button { color: var(--ink, #252525) }
.home-caps .cap-contato .email-form button * { color: inherit }
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap .cap-palco {
    left: 0 !important; right: 0 !important;
    width: auto !important; max-width: none !important;
    top: calc(var(--nav-h, 64px) + 2vh) !important;
    bottom: 7.5vh !important;
    transform: none !important;
    padding: 0 6vw !important;
    max-height: none !important;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .home-caps .cap-contato .cap-palco { bottom: 7.5vh !important }
  .home-caps .cap .cap-palco > * { max-width: none }
}
.home-caps {
  --cap-eyebrow: 13px;
  --cap-titulo: clamp(38px, 4.1vw, 66px);
  --cap-lead:   clamp(15px, 1.12vw, 19px);
  --cap-card-h: clamp(17px, 1.4vw, 23px);
  --cap-card-p: clamp(13px, .94vw, 15px);
  --cap-acao:   clamp(13px, .96vw, 15px);
}
.home-caps .cap .eyebrow {
  font-size: var(--cap-eyebrow) !important;
  letter-spacing: .16em; text-transform: uppercase;
  font-weight: 800; margin: 0 0 clamp(10px, 1.4vh, 18px);
  line-height: 1.2;
}
.home-caps .cap .cap-palco h1,
.home-caps .cap .cap-palco h2,
.home-caps .cap .ubox h3 {
  font-size: var(--cap-titulo) !important;
  line-height: 1.05; letter-spacing: -.045em; font-weight: 800;
  margin: 0 0 clamp(12px, 1.8vh, 22px);
  text-wrap: balance;
}
.home-caps .cap .cap-palco .lead,
.home-caps .cap .ubox > p:not(.eyebrow),
.home-caps .cap .section-head > p:last-child,
.home-caps .cap .cases-lead,
.home-caps .cap .ideia-extra p {
  font-size: var(--cap-lead) !important;
  line-height: 1.55; margin: 0 0 clamp(10px, 1.4vh, 16px);
  max-width: 54ch;
}
.home-caps .cap .mstep h3,
.home-caps .cap .service h3,
.home-caps .cap .case-card h3,
.home-caps .cap .diag-side h3 { font-size: var(--cap-card-h) !important; line-height: 1.2 }
.home-caps .cap .mstep p,
.home-caps .cap .service > p:not(.eyebrow),
.home-caps .cap .case-card p.case-resumo,
.home-caps .cap .diag-side p { font-size: var(--cap-card-p) !important; line-height: 1.45 }
.home-caps .cap .action,
.home-caps .cap .service-link,
.home-caps .cap .diag-side b,
.home-caps .cap .case-acoes a,
.home-caps .cap .case-acoes button { font-size: var(--cap-acao) !important }
.home-caps .cap,
.home-caps .cap *,
.home-caps .cap-palco,
.home-caps .cap-aviso { text-shadow: none !important }
.cap-palco > *,
.cap-aviso {
  opacity: 0;
  transform: translateY(28px) scale(.985);
  filter: blur(3px);
  transition: opacity var(--entra, 1.5s) cubic-bezier(.17,.84,.26,1),
              transform var(--entra, 1.5s) cubic-bezier(.17,.84,.26,1),
              filter calc(var(--entra, 1.5s) * .6) ease-out;
}
.cap.dentro .cap-palco > *,
.cap.dentro .cap-aviso { opacity: 1; transform: none; filter: none }
.cap:not(.dentro) .cap-palco > * {
  transition-duration: var(--sai, .52s);
  transform: translateY(-14px) scale(.99);
}
.home-caps .cap-quem .intro-proof {
  display: grid; grid-template-columns: 1fr 1px 1fr;
  gap: clamp(16px, 2vw, 34px);
  margin-top: clamp(16px, 2.4vh, 30px);
  padding: clamp(16px, 2.4vh, 30px) 0 0;
  border-top: 1px solid rgba(255,255,255,.22); border-bottom: 0;
  max-width: none; align-items: start;
}
.home-caps .cap-quem .intro-proof:before {
  content: ''; grid-column: 2; grid-row: 1; align-self: stretch;
  background: rgba(255,255,255,.22);
}
.home-caps .cap-quem .intro-stat { grid-row: 1 }
.home-caps .cap-quem .intro-stat:nth-of-type(1) { grid-column: 1 }
.home-caps .cap-quem .intro-stat:nth-of-type(2) { grid-column: 3 }
.home-caps .cap-quem .intro-stat strong {
  display: block; color: var(--amber);
  font-size: clamp(30px, 3.1vw, 56px); line-height: .92;
  letter-spacing: -.06em; margin-bottom: clamp(6px, .8vh, 11px);
}
.home-caps .cap-quem .intro-stat span {
  display: block; font-size: var(--cap-card-p) !important;
  line-height: 1.45; color: rgba(255,255,255,.86); max-width: 26ch;
}
html[data-cap="4"] .cap.dentro .cap-palco,
html[data-cap="4"] .cap.dentro .cap-palco p,
html[data-cap="4"] .cap.dentro .cap-palco .lead { color: #2e2a24 }
html[data-cap="4"] .cap.dentro .cap-palco h3,
html[data-cap="4"] .cap.dentro .cap-palco h2 { color: #1c1915 }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow { color: rgba(46,42,36,.62) }
html[data-cap="4"] .cap.dentro .cap-palco em { color: #b57400 }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow:before { background: rgba(46,42,36,.45) }
html[data-cap="4"] .ideia-extra p { font-size: var(--cap-card-p) !important; color: rgba(46,42,36,.8) }
html[data-cap="5"] .mcall h2 em { color: #15120e; font-weight: 800 }
html[data-cap="5"] .mcall .eyebrow { color: rgba(40,34,26,.68) }
html[data-cap="5"] .mcall .eyebrow:before { background: rgba(40,34,26,.45) }
.home-caps .cap-solucoes .service-grid { align-items: stretch }
.home-caps .cap-solucoes .service {
  background: rgba(255,255,255,.05) !important;
  border-radius: 0 0 clamp(8px,.8vw,14px) clamp(8px,.8vw,14px);
  padding: clamp(10px,1.2vh,16px) clamp(12px,1.1vw,20px) clamp(12px,1.5vh,20px) !important;
  gap: clamp(3px,.45vh,7px);
}
.home-caps .cap-solucoes .service figure img { height: clamp(58px, 7.2vh, 86px) }
.home-caps .cap-solucoes .service h3 { font-size: clamp(16px,1.3vw,21px) !important }
.home-caps .cap-solucoes .service > p:not(.eyebrow) {
  font-size: clamp(12px,.86vw,14px) !important; line-height: 1.4; max-width: 34ch;
}
.home-caps .cap-solucoes .service .service-link { margin-top: clamp(4px,.7vh,10px) }
.home-caps .cap-solucoes .section-head { margin-bottom: 0 }
.cap-cases .cap-palco { top: calc(var(--nav-h, 64px) + 1.6vh) }
.home-caps .cap-cases .cases-head {
  margin: 0 auto; width: 100%; max-width: 900px; text-align: center;
  display: flex; flex-direction: column; align-items: center;
  gap: clamp(6px, .9vh, 12px);
}
.home-caps .cap-cases .cases-head > * { margin: 0 }
.home-caps .cap-cases .cases-head h2 { font-size: clamp(34px, 3.4vw, 54px) !important }
.home-caps .cap-cases .cases-lead { max-width: 46ch; margin: 0 auto !important }
.home-caps .cap-cases .case-filters { justify-content: center; margin: clamp(4px,.8vh,10px) 0 0 }
.home-caps .cases .case-image { display: block; position: relative }
.home-caps .cases .case-image picture {
  display: block; width: 100%; height: 100%;
}
.home-caps .cases .case-image img {
  width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%;
  display: block;
}
.cap-analise .cap-palco {
  left: 7.5vw; right: 7.5vw; width: auto;
  display: grid; grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr;
  gap: clamp(16px, 2vw, 32px) clamp(16px, 2vw, 32px);
  align-content: center;
}
.home-caps .cap-analise .diag-main {
  grid-column: 1 / -1; grid-row: 1; max-width: min(820px, 58vw); padding: 0;
}
.home-caps .cap-analise .diag-side {
  grid-row: 2; max-width: none; height: 100%;
  display: flex; flex-direction: column;
  padding: clamp(18px, 2vh, 28px) clamp(18px, 1.7vw, 28px);
  border-radius: clamp(14px, 1.2vw, 20px);
}
.home-caps .cap-analise .diag-side-top { grid-column: 1 }
.home-caps .cap-analise .diag-side-bottom { grid-column: 2 }
.home-caps .cap-analise .diag-side b { margin-top: auto; padding-top: clamp(10px,1.4vh,18px) }
.home-caps .cap-analise .diag-side span {
  font-size: clamp(22px, 1.9vw, 30px); font-weight: 800; line-height: 1;
  display: block; margin-bottom: clamp(8px,1vh,14px);
}
.home-caps .cap-analise .cap-aviso { grid-column: 1 / -1 }
.home-caps .cap-contato .email-form {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: clamp(14px, 1.2vw, 22px);
  padding: clamp(20px, 2.4vh, 32px) clamp(20px, 2vw, 34px) !important;
}
.home-caps .cap .cap-palco { bottom: 17vh }
.home-caps .cap-contato .cap-palco { bottom: calc(var(--rodape-h, 62px) + 2vh) }
.home-caps .cap-metodo .cap-palco,
.home-caps .cap-solucoes .cap-palco,
.home-caps .cap-cases .cap-palco { bottom: 9vh }
.cap-analise .cap-palco { grid-template-rows: auto auto; align-content: center }
.home-caps .cap-contato .cap-palco {
  justify-content: flex-start; gap: clamp(8px, 1vh, 14px);
}
.home-caps .cap-contato .email-form {
  padding: clamp(16px, 1.8vh, 24px) clamp(18px, 1.8vw, 28px) !important;
}
.home-caps .cap-contato .email-form label { margin-top: clamp(6px, .9vh, 11px) }
.home-caps .cap-contato .email-form input,
.home-caps .cap-contato .email-form textarea { padding: clamp(8px, 1vh, 11px) 12px; margin-top: 4px }
.home-caps .cap-contato .email-form textarea { height: clamp(56px, 6.5vh, 80px) }
.home-caps .cap-contato .email-form .form-row { margin-top: clamp(8px,1vh,13px); gap: 13px }
.home-caps .cap-contato .email-form button { margin-top: clamp(11px,1.5vh,18px) }
.home-caps .cap-contato .contact-note { margin-top: clamp(8px, 1.1vh, 14px) !important }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow { color: #332e27 }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow:before { background: #6a6256 }
html[data-cap="5"] .mcall .eyebrow { color: #3a3025 }
html[data-cap="5"] .mcall .eyebrow:before { background: #5c5040 }
html[data-cap="4"] .cap.dentro .cap-palco .eyebrow { color: #1a150d }
html[data-cap="4"] .ideia-extra p { color: #3a342c }
html[data-cap="8"] .cap.dentro .cap-palco .diag-main p.eyebrow { color: #221c12 }
.home-caps .cases .case-card { background: rgba(16, 14, 12, .78) !important }
.home-caps .cap-cases .cases-head .eyebrow {
  background: rgba(16, 14, 12, .82); padding: 6px 15px; border-radius: 30px;
}
@media (max-aspect-ratio: 1/1) {
  html[data-cap="7"] .cap.dentro .cases-head,
  html[data-cap="7"] .cap.dentro .cases-head h2,
  html[data-cap="7"] .cap.dentro .cases-head p,
  html[data-cap="8"] .cap.dentro .cap-palco,
  html[data-cap="8"] .cap.dentro .cap-palco .diag-main,
  html[data-cap="8"] .cap.dentro .cap-palco .diag-main h2,
  html[data-cap="8"] .cap.dentro .cap-palco .diag-main .lead { color: #fff }
  html[data-cap="7"] .cap.dentro .cases-head .eyebrow,
  html[data-cap="8"] .cap.dentro .cap-palco .diag-main p.eyebrow { color: var(--amber) }
  html[data-cap="8"] .cap.dentro .cap-palco .diag-main .eyebrow:before { background: var(--amber) }
  html[data-cap="8"] .cap.dentro .diag-side,
  html[data-cap="8"] .cap.dentro .diag-side * { color: var(--ink, #252525) }
  .home-caps .cap-solucoes .service { background: rgba(14,12,10,.55) !important }
}
html[data-cap="4"] .ideia-extra p { color: #2b261e }
html[data-cap="8"] .cap.dentro .cap-palco .diag-main p.eyebrow { color: #120e06 }
.home-caps .cap-analise .diag-side { background-color: rgba(250,247,241,.93) }
.home-caps .cap-analise .diag-side-top { background: #f6a40a }
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-solucoes .service { background: rgba(14,12,10,.7) !important }
}
html[data-cap="4"] .cap.dentro .cap-palco .ideia-extra p { color: #26211a }
@media (max-aspect-ratio: 1/1) {
  html[data-cap="8"] .cap.dentro .cap-palco .diag-main p.eyebrow { color: #ffc24d }
}
.home-caps .cap-solucoes .section-head {
  text-align: center; margin: 0 auto; max-width: none;
  display: flex; flex-direction: column; align-items: center;
  gap: clamp(5px, .8vh, 11px);
}
.home-caps .cap-solucoes .section-head > * { margin: 0 }
.home-caps .cap-solucoes .section-head .eyebrow {
  background: none !important; padding: 0 !important; border: 0 !important;
  color: var(--amber); letter-spacing: .22em;
}
.home-caps .cap-solucoes .section-head .eyebrow:before,
.home-caps .cap-solucoes .section-head .eyebrow:after { content: none !important }
.home-caps .cap-solucoes .section-head h2 {
  font-size: clamp(25px, 2.55vw, 46px) !important;
  line-height: 1.1; max-width: none; text-wrap: nowrap;
}
.home-caps .cap-solucoes .section-head > p:last-child {
  font-size: clamp(13px, 1.02vw, 18px) !important; max-width: none;
}
.home-caps .cap-solucoes .service {
  background: rgba(26, 22, 18, .62) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: clamp(10px, .9vw, 16px) !important;
  padding: clamp(14px,1.6vh,20px) clamp(14px,1.2vw,22px) clamp(12px,1.4vh,18px) !important;
  position: relative; gap: clamp(4px,.6vh,9px);
}
.home-caps .cap-solucoes .service:before {
  content: ''; position: absolute;
  left: clamp(14px,1.2vw,22px); top: clamp(14px,1.6vh,20px);
  width: clamp(30px,2.4vw,46px); height: 3px; background: var(--amber);
}
.home-caps .cap-solucoes .service figure {
  margin: clamp(12px,1.5vh,20px) 0 clamp(6px,.9vh,12px);
  border-radius: clamp(6px,.5vw,9px);
}
.home-caps .cap-solucoes .service figure img { height: clamp(56px, 7vh, 84px) }
.home-caps .cap-solucoes .service .service-link {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; width: 100%;
  margin-top: clamp(8px,1.1vh,14px);
  padding-top: clamp(8px,1.1vh,14px);
  border-top: 1px solid rgba(255,255,255,.16);
}
.home-caps .cap-solucoes .service .service-link i {
  flex: none; display: grid; place-items: center;
  width: clamp(24px,1.9vw,32px); height: clamp(24px,1.9vw,32px);
  border: 1px solid var(--amber); border-radius: 50%;
  font-style: normal; font-size: .9em; line-height: 1;
  transition: background .3s, color .3s;
}
.home-caps .cap-solucoes .service:hover .service-link i { background: var(--amber); color: #1a1612 }
.cap-cenario .cap-palco { top: 14vh; bottom: 38vh }
.cap-analise .cap-palco { left: 5.5vw; right: auto; width: min(880px, 46vw) }
.home-caps .cap-analise .diag-main { max-width: none }
.home-caps .cap-analise .diag-side { padding: clamp(14px,1.7vh,22px) clamp(14px,1.3vw,22px) }
.home-caps .cap-analise .diag-side span { font-size: clamp(19px,1.6vw,26px) }
.home-caps .cap-analise .diag-side p { font-size: clamp(12px,.86vw,14px) !important }
.home-caps .cases .case-nav {
  background: rgba(16,14,12,.82); border: 1px solid rgba(255,255,255,.5);
  color: #fff; width: clamp(40px,3.1vw,50px); height: clamp(40px,3.1vw,50px);
  box-shadow: 0 6px 22px rgba(0,0,0,.4); opacity: 1;
}
.home-caps .cases .case-nav:hover { background: var(--amber); color: #1a1612; border-color: transparent }
.home-caps .cases .case-nav[disabled] { opacity: .35 }
.home-caps .cap-aviso { color: #fff; font-weight: 700; opacity: 1 }
html[data-cap="4"] .cap-aviso,
html[data-cap="7"] .cap-aviso,
html[data-cap="8"] .cap-aviso { color: #221d16 }
.home-caps .cap-contato .cap-palco { top: calc(var(--nav-h, 64px) + 1.4vh) }
.home-caps .cap-contato .contact-note { margin-top: clamp(10px, 1.3vh, 16px) !important }
.home-caps .cap-contato .site-footer > div { display: contents }
.home-caps .cap-contato .site-footer p { flex: 1; text-align: center }
.home-caps .cap-contato .site-footer small { text-align: right }
.home-caps .cap-contato .site-footer img { flex: none }
.home-caps { --logo-h: 54px; }
.home-caps .cap-contato .site-footer {
  padding-right: clamp(150px, 13vw, 200px);
  padding-left: clamp(20px, 3vw, 48px);
  align-items: center;
}
.home-caps .cap-contato .site-footer img { height: 30px }
.home-caps .cap-contato .site-footer small { line-height: 1.5 }
.home-caps .cap-analise .diag-side p { color: #241c10 }
.home-caps .cap-contato .site-footer { opacity: 1 }
.home-caps .cap-contato .site-footer small,
.home-caps .cap-contato .site-footer p { color: rgba(255,255,255,.95) }
.home-caps .cap-contato .site-footer a { color: rgba(255,255,255,.95) }
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-solucoes .section-head h2 {
    text-wrap: balance; font-size: clamp(24px, 6.4vw, 34px) !important;
  }
  .home-caps .cap-solucoes .section-head > p:last-child { font-size: 14px !important }
}
.home-caps .cap-solucoes .cap-palco {
  top: 0 !important; bottom: 0 !important;
  left: 4.3vw !important; right: 4.3vw !important; width: auto !important;
  display: block !important; padding: 0 !important;
}
.home-caps .cap-solucoes .section-head {
  position: absolute; left: 0; right: 0; top: 12.4%;
}
.home-caps .cap-solucoes .service-grid {
  position: absolute; left: 0; right: 0; top: 67.3%; bottom: 3.5%;
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 4.4vw; align-items: stretch;
}
.home-caps .cap-solucoes .service { height: 100% }
.home-caps .cap-cenario .ubox h3 em { color: var(--amber); font-style: normal }
html[data-cap="5"] .mcall h2 em { color: #fff; font-weight: 800 }
.cap-analise .cap-palco { width: min(720px, 38vw) }
.home-caps .cap-contato .contact-head { margin-bottom: 0 }
.home-caps .cap-contato .contact-head h2 {
  font-size: clamp(30px, 3.1vw, 52px) !important; margin-bottom: 0;
}
.home-caps .cap-contato .cap-palco { gap: clamp(10px, 1.3vh, 18px) }
.home-caps .cap-solucoes .service {
  padding: clamp(12px,1.4vh,17px) clamp(13px,1.1vw,19px) clamp(11px,1.2vh,15px) !important;
  gap: 0;
  overflow: hidden;
}
.home-caps .cap-solucoes .service figure {
  flex: 0 0 auto;
  margin: clamp(10px,1.3vh,16px) 0 clamp(7px,.9vh,11px);
}
.home-caps .cap-solucoes .service figure img { height: clamp(48px, 6.4vh, 74px) }
.home-caps .cap-solucoes .service .eyebrow { flex: none; margin: 0 0 clamp(4px,.5vh,7px) !important }
.home-caps .cap-solucoes .service h3 { flex: none; margin: 0 0 clamp(4px,.5vh,7px) }
.home-caps .cap-solucoes .service > p:not(.eyebrow) { flex: 1 1 auto; margin: 0 }
.home-caps .cap-solucoes .service .service-link { flex: none }
.home-caps .cap-solucoes .service > p:not(.eyebrow) { display: block }
.home-caps .cap-solucoes .service .service-link {
  margin-top: clamp(6px,.8vh,10px); padding-top: clamp(6px,.8vh,10px);
}
.home-caps .cap-solucoes .section-head { top: 11.8% }
.home-caps .cap-solucoes .service-grid {
  top: 67.0%; bottom: 3.3%;
  gap: 3.9vw;
}
.home-caps .cap-solucoes .service {
  padding: 1.05% 3.4% 1.1% !important;   
  border-radius: clamp(10px, .85vw, 15px) !important;
}
.home-caps .cap-solucoes .service:before {
  left: 3.4%; top: 6.8%;
  width: 2.76vw; height: 3px;
}
.home-caps .cap-solucoes .service figure {
  margin: 4.3% 0 0 !important;    
}
.home-caps .cap-solucoes .service figure img { height: 7.8vh }
.home-caps .cap-solucoes .service .eyebrow {
  font-size: .67vw !important; letter-spacing: .2em;
  margin: 4.5% 0 1.6% !important;
}
.home-caps .cap-solucoes .service h3 {
  font-size: 1.67vw !important; line-height: 1.1;
  margin: 0 0 1.9% !important;
}
.home-caps .cap-solucoes .service > p:not(.eyebrow) {
  font-size: .89vw !important; line-height: 1.42; margin: 0 !important;
}
.home-caps .cap-solucoes .service .service-link {
  font-size: .89vw !important;
  margin-top: 2.4%; padding-top: 2.4%;
}
.home-caps .cap-solucoes .service .service-link i {
  width: 2.1vw; height: 2.1vw; font-size: 1vw;
}
@media (max-width: 1200px) {
  .home-caps .cap-solucoes .service h3 { font-size: 20px !important }
  .home-caps .cap-solucoes .service > p:not(.eyebrow),
  .home-caps .cap-solucoes .service .service-link { font-size: 13px !important }
  .home-caps .cap-solucoes .service .eyebrow { font-size: 10px !important }
  .home-caps .cap-solucoes .service .service-link i { width: 26px; height: 26px; font-size: 12px }
}
.home-caps .cap { margin: 0 !important }
.home-caps .cap-solucoes .service > p:not(.eyebrow) { max-width: none !important }
.home-caps .cap-solucoes .service .service-link i { width: 1.9vw; height: 1.9vw }
.home-caps .cap-solucoes .service .service-link { margin-top: 1.9%; padding-top: 1.9% }
.cap-cases .cap-palco { top: calc(var(--nav-h, 64px) + 4vh) }
@media (max-aspect-ratio: 1/1) {
  html[data-cap="5"] .mcall .eyebrow { color: #fff }
  html[data-cap="5"] .mcall .eyebrow:before { background: rgba(255,255,255,.7) }
}
.home-caps .cap-solucoes .service {
  background: rgba(255, 255, 255, .06) !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-solucoes .service { background: rgba(255,255,255,.03) !important }
}
.home-caps .cap-solucoes .service .eyebrow { color: #ffb623 }
.home-caps .cap-solucoes .service h3 {
  font-size: min(1.67vw, 3.0vh) !important;
}
.home-caps .cap-solucoes .service > p:not(.eyebrow),
.home-caps .cap-solucoes .service .service-link {
  font-size: min(.89vw, 1.6vh) !important;
}
.home-caps .cap-solucoes .service .eyebrow {
  font-size: min(.67vw, 1.2vh) !important;
}
.home-caps .cap-solucoes .service .service-link i {
  width: min(1.9vw, 3.4vh); height: min(1.9vw, 3.4vh); font-size: min(1vw, 1.8vh);
}
.home-caps .cap-solucoes .service figure {
  flex: 1 1 auto; min-height: 0;
  max-height: 12vh;               
}
.home-caps .cap-solucoes .service figure img { height: 100% }
.home-caps .cap-solucoes .service .eyebrow,
.home-caps .cap-solucoes .service h3,
.home-caps .cap-solucoes .service > p:not(.eyebrow),
.home-caps .cap-solucoes .service .service-link { flex: 0 0 auto }
.home-caps .cap-solucoes .service-grid { top: 65.0%; bottom: 5.7% }
html[data-cap="6"] .cap-aviso { bottom: 1.8vh }
.home-caps .cap-solucoes .service-grid {
  top: max(64.9vh, calc(50vh + 8.39vw));
}
.home-caps .cap-solucoes .service-cab {
  display: flex; align-items: baseline; flex-wrap: wrap;
  gap: 0 .45em; margin: 0;
}
.home-caps .cap-solucoes .service-cab h3 { margin: 0 !important }
.home-caps .cap-solucoes .service-cab .eyebrow { margin: 0 !important }
.home-caps .cap-solucoes .service-cab .eyebrow:before {
  content: '— '; letter-spacing: 0;
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-solucoes .section-head,
  .home-caps .cap-solucoes .service-grid {
    position: static !important;
    top: auto !important; bottom: auto !important;
    left: auto !important; right: auto !important;
  }
  .home-caps .cap-solucoes .service-grid {
    display: flex !important; grid-template-columns: none !important;
    overflow-x: auto; scroll-snap-type: x mandatory;
    gap: 12px !important; padding-bottom: 6px; scrollbar-width: none;
    margin-top: 16px;
  }
  .home-caps .cap-solucoes .service {
    flex: 0 0 78% !important; scroll-snap-align: start;
    height: auto !important; padding: 16px 16px 14px !important;
  }
  .home-caps .cap-solucoes .service figure {
    flex: none; max-height: none; margin: 14px 0 10px !important;
  }
  .home-caps .cap-solucoes .service figure img { height: clamp(96px, 16vh, 150px) }
  .home-caps .cap-solucoes .service-cab { display: block }
  .home-caps .cap-solucoes .service-cab h3 { font-size: 20px !important; margin: 0 0 4px !important }
  .home-caps .cap-solucoes .service-cab .eyebrow { font-size: 12px !important }
  .home-caps .cap-solucoes .service-cab .eyebrow:before { content: none }
  .home-caps .cap-solucoes .service > p:not(.eyebrow) { font-size: 13px !important }
  .home-caps .cap-solucoes .service .service-link { font-size: 13px !important }
  .home-caps .cap-solucoes .service .service-link i { width: 26px; height: 26px; font-size: 12px }
  .home-caps .cap-solucoes .service:before { top: 16px; left: 16px; width: 36px }
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-solucoes .cap-palco {
    top: calc(var(--nav-h, 64px) + 2vh) !important;
    bottom: 7.5vh !important;
    display: flex !important; flex-direction: column;
    justify-content: flex-start;
    padding: 0 6vw !important;
    overflow-y: auto;
  }
}
.home-caps { --nav-base: calc(18px + var(--nav-h, 64px)); }
.home-caps .cap .cap-palco { top: calc(var(--nav-base) + 3.4vh) }
.home-caps .cap-metodo .cap-palco,
.home-caps .cap-cases .cap-palco { top: calc(var(--nav-base) + 3.4vh) }
.home-caps .cap-contato .cap-palco { top: calc(var(--nav-base) + 2.6vh) }
.home-caps .cap-solucoes .section-head { top: calc(var(--nav-base) + 3.4vh) }
.home-caps .cap-contato .contact-head h2 {
  text-wrap: nowrap;
  font-size: min(3.0vw, 5.4vh) !important;
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-contato .contact-head h2 {
    text-wrap: balance; font-size: clamp(26px, 7vw, 36px) !important;
  }
}
.home-caps .cap-contato .cap-palco { justify-content: center }
html[data-cap="5"] .mcall .lead { font-weight: 500 }
.home-caps .cap-solucoes .service figure {
  margin: 4.3% 0 min(4.5%, 2.2vh) !important;
}
.home-caps .cap-solucoes .service {
  background: rgba(255, 255, 255, .10) !important;
  border-color: rgba(255, 255, 255, .17) !important;
}
.home-caps .cases .case-nav {
  background: var(--amber); color: #1a1208;
  border: 0; font-weight: 800;
  box-shadow: 0 6px 20px rgba(0,0,0,.45);
}
.home-caps .cases .case-nav:hover { background: #ffc24d; color: #1a1208 }
.home-caps .cases .case-nav[disabled] { background: rgba(255,255,255,.75); color: #5a5248; opacity: 1 }
.home-caps .cap-solucoes .service .eyebrow { color: #ffc957 }
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap .eyebrow { font-size: 12px !important; letter-spacing: .14em }
  .home-caps .cap .cap-palco h1,
  .home-caps .cap .cap-palco h2,
  .home-caps .cap .ubox h3 { font-size: clamp(27px, 7.4vw, 38px) !important; line-height: 1.12 }
  .home-caps .cap .cap-palco .lead,
  .home-caps .cap .ubox > p:not(.eyebrow),
  .home-caps .cap .section-head > p:last-child,
  .home-caps .cap .cases-lead,
  .home-caps .cap .ideia-extra p { font-size: 15px !important; line-height: 1.55 }
  .home-caps .cap .mstep h3,
  .home-caps .cap .service h3,
  .home-caps .cap .case-card h3,
  .home-caps .cap .diag-side h3 { font-size: 19px !important }
  .home-caps .cap .mstep p,
  .home-caps .cap .service > p:not(.eyebrow),
  .home-caps .cap .case-card p.case-resumo,
  .home-caps .cap .diag-side p { font-size: 14px !important; line-height: 1.5 }
  .home-caps .cap .action,
  .home-caps .cap .service-link,
  .home-caps .cap .diag-side b,
  .home-caps .cap .case-acoes a,
  .home-caps .cap .case-acoes button,
  .home-caps .cap .case-filters button { font-size: 14px !important }
  .home-caps .cap .case-card > p { font-size: 12px !important }
  .home-caps .cap-contato .email-form label { font-size: 15px !important }
  .home-caps .cap-contato .email-form .campo-dica { font-size: 13px !important }
  .home-caps .cap-contato .email-form input,
  .home-caps .cap-contato .email-form textarea { font-size: 16px !important }  
  .home-caps .cap-aviso { font-size: 12px !important }
  .home-caps .cap-contato .site-footer,
  .home-caps .cap-contato .site-footer * { font-size: 13px !important }
}
.home-caps .cap-solucoes {
  --exp-sangria: clamp(7px, .6vw, 11px);    
  --exp-raio:    clamp(8px, .62vw, 11px);   
}
.home-caps .cap-solucoes .service .service-link {
  position: relative;
  width: calc(100% + var(--exp-sangria) * 2);
  margin-left: calc(-1 * var(--exp-sangria));
  margin-right: calc(-1 * var(--exp-sangria));
  padding-left: var(--exp-sangria);
  padding-right: var(--exp-sangria);
  padding-bottom: clamp(6px, .85vh, 11px);
  border: 1px solid rgba(249,169,1,.55);
  border-radius: var(--exp-raio);
  background-color: rgba(249,169,1,.09);
  box-shadow: inset 0 0 18px rgba(249,169,1,.10);
  background-repeat: no-repeat;
  background-size: 300% 100%;
  background-position: 100% 0;          
  background-image: linear-gradient(100deg,
    rgba(249,169,1,0)     36%,
    rgba(249,169,1,.13)   44%,
    rgba(255,228,170,.42) 50%,
    rgba(249,169,1,.13)   56%,
    rgba(249,169,1,0)     64%);
}
.home-caps .cap-solucoes .service .service-link i {
  background: rgba(249,169,1,.18);      
  border-color: var(--amber);
}
@keyframes uman-explorar-glow {
  from { box-shadow: inset 0 0 14px rgba(249,169,1,.06), 0 0 0 rgba(249,169,1,0);
         border-color: rgba(249,169,1,.38) }
  to   { box-shadow: inset 0 0 24px rgba(249,169,1,.26), 0 0 16px rgba(249,169,1,.24);
         border-color: #ffd98a }
}
@keyframes uman-explorar-luz {
  0%, 8% { background-position: 100% 0 }
  100%   { background-position: 0 0 }
}
@keyframes uman-explorar-seta {
  0%, 8% { background: rgba(249,169,1,.18); color: var(--amber);
           box-shadow: 0 0 0 0 rgba(249,169,1,.45); transform: none }
  78%    { background: var(--amber);        color: #1a1612;
           box-shadow: 0 0 0 0 rgba(249,169,1,.45); transform: translate(1.5px,-1.5px) }
  100%   { background: rgba(249,169,1,.18); color: var(--amber);
           box-shadow: 0 0 0 14px rgba(249,169,1,0); transform: none }
}
.home-caps .cap-solucoes.ativo .service .service-link {
  animation: uman-explorar-luz  3.2s cubic-bezier(.3,0,.4,1) infinite,
             uman-explorar-glow 2.4s ease-in-out infinite alternate;
  animation-delay: calc(var(--i, 0) * .32s), calc(var(--i, 0) * .24s);
}
.home-caps .cap-solucoes.ativo .service .service-link i {
  animation: uman-explorar-seta 3.2s ease-out infinite;
  animation-delay: calc(var(--i, 0) * .32s);
}
.home-caps .cap-solucoes.ativo .service:hover .service-link,
.home-caps .cap-solucoes.ativo .service:hover .service-link i,
.home-caps .cap-solucoes.ativo .service:focus-visible .service-link,
.home-caps .cap-solucoes.ativo .service:focus-visible .service-link i { animation: none }
@media (prefers-reduced-motion: reduce) {
  .home-caps .cap-solucoes .service .service-link,
  .home-caps .cap-solucoes .service .service-link i { animation: none !important }
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-solucoes { --exp-sangria: 9px; --exp-raio: 8px }
}
@media (max-aspect-ratio: 1/1) {
  
  .home-caps .cap           { --veu: .58; --veu-topo: .36 }
  .home-caps .cap-hero      { --veu: .64; --veu-topo: .26 }
  .home-caps .cap-cenario   { --veu: .38; --veu-topo: .18 }  
  .home-caps .cap-quem      { --veu: .54; --veu-topo: .30 }
  .home-caps .cap-ideia     { --veu: .76; --veu-topo: .58 }  
  .home-caps .cap-metodo    { --veu: .70; --veu-topo: .46 }
  .home-caps .cap-solucoes  { --veu: .58; --veu-topo: .36 }
  .home-caps .cap-cases     { --veu: .60; --veu-topo: .40 }
  .home-caps .cap-analise   { --veu: .62; --veu-topo: .38 }
  .home-caps .cap-contato   { --veu: .72; --veu-topo: .52 }
  
  .home-caps .cap:before {
    content: ''; position: absolute; inset: 0; z-index: 0;
    pointer-events: none;
    background: linear-gradient(180deg,
      rgba(16,13,10, var(--veu-topo))          0%,
      rgba(16,13,10, var(--veu))               24%,
      rgba(16,13,10, var(--veu))               74%,
      rgba(16,13,10, calc(var(--veu) + .16))  100%);
  }
  .home-caps .cap .cap-palco,
  .home-caps .cap .cap-aviso { z-index: 1 }
  
  .home-caps .cap-ideia,
  .home-caps .cap-ideia .ubox h3,
  .home-caps .cap-ideia .ubox h3 em { color: #fff !important }
  .home-caps .cap-ideia .ubox h3 em { color: var(--amber) !important }
  .home-caps .cap-ideia .ubox > p:not(.eyebrow),
  .home-caps .cap-ideia .ideia-extra p { color: rgba(255,255,255,.92) !important }
  
  .home-caps .cap-aviso,
  html[data-cap="4"] .cap-aviso,
  html[data-cap="7"] .cap-aviso,
  html[data-cap="8"] .cap-aviso { color: #fff !important }
  
  .home-caps .cap-aviso { padding-right: 118px }
  
  .convite-como { color: rgba(255,255,255,.85) }
}
@media (max-aspect-ratio: 1/1) {
  
  .home-caps .cap-quem { --veu: .64 }
  
  .home-caps .cap-ideia .eyebrow { color: var(--amber) !important }
  .home-caps .cap-ideia .eyebrow:before { background: var(--amber) }
  
  .home-caps .cap-metodo .cap-palco { justify-content: center }
  
  .home-caps .cap-contato .cap-palco { justify-content: flex-start }
  
  .home-caps .cap-contato .site-footer {
    flex-wrap: wrap; justify-content: center; text-align: center; gap: 8px;
  }
  .home-caps .cap-contato .site-footer p,
  .home-caps .cap-contato .site-footer small {
    white-space: normal !important; flex: 0 0 100%; text-align: center !important;
  }
}
.home-caps .nav-shell .logo {
  display: flex; flex-direction: column; align-items: flex-start;
  gap: 3px; height: auto; overflow: visible;
}
.home-caps .nav-shell .logo img {
  height: calc(var(--logo-h) * .755);   
  width: auto;
}
.home-caps .nav-shell .logo-frase {
  font-size: 9.5px; line-height: 1; font-weight: 600;
  letter-spacing: .036em; white-space: nowrap;
  color: rgba(255,255,255,.82);
}
.home-caps .nav-shell .logo-frase b { color: var(--amber); font-weight: 700 }
html.rolou .home-caps .nav-shell .logo,
html.rolou .nav-shell .logo { height: auto }
.home-caps .cap .hero-copy > .eyebrow,
.home-caps .cap .ubox > .eyebrow,
.home-caps .cap .ucol-a > .eyebrow,
.home-caps .cap .mcall > .eyebrow,
.home-caps .cap .section-head > .eyebrow,
.home-caps .cap .cases-head > .eyebrow,
.home-caps .cap .diag-card > .eyebrow,
.home-caps .cap .contact-head > .eyebrow {
  display: flex; align-items: center;
  gap: clamp(8px, .9vw, 14px);
  background: none !important; border: 0 !important;
  padding: 0 !important; border-radius: 0 !important;
  backdrop-filter: none !important;
  letter-spacing: .16em;
}
.home-caps .cap .hero-copy > .eyebrow:before,
.home-caps .cap .ubox > .eyebrow:before,
.home-caps .cap .ucol-a > .eyebrow:before,
.home-caps .cap .mcall > .eyebrow:before,
.home-caps .cap .section-head > .eyebrow:before,
.home-caps .cap .cases-head > .eyebrow:before,
.home-caps .cap .diag-card > .eyebrow:before,
.home-caps .cap .contact-head > .eyebrow:before {
  content: '' !important; flex: none;
  width: clamp(20px, 2.2vw, 42px); height: 1px;
  background: currentColor !important; opacity: .7;
}
.home-caps .cap .section-head > .eyebrow,
.home-caps .cap .cases-head > .eyebrow,
.home-caps .cap .contact-head > .eyebrow { justify-content: center }
.home-caps .cap .section-head > .eyebrow:after,
.home-caps .cap .cases-head > .eyebrow:after,
.home-caps .cap .contact-head > .eyebrow:after {
  content: '' !important; flex: none;
  width: clamp(20px, 2.2vw, 42px); height: 1px;
  background: currentColor !important; opacity: .7;
}
.home-caps .cases .case-card { text-align: center }
.home-caps .cases .case-card .case-acoes {
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: clamp(6px, .7vw, 12px);
}
.home-caps .cap-contato .email-form textarea {
  height: clamp(92px, 11vh, 140px) !important;
}
.home-caps .cap-contato .email-form .form-ok {
  color: #1b5120 !important;
  background: #eaf7ea; border: 1px solid #b6ddb6;
  padding: clamp(12px,1.6vh,18px) 16px;
  font-weight: 600;
}
.home-caps .cap-contato .contact-head {
  margin-bottom: clamp(16px, 3vh, 34px) !important;
}
@media (min-aspect-ratio: 1/1) {
  html[data-cap="7"] .cap.dentro .cases-head > p.eyebrow { color: #2e1d00 }
}
@media (max-width: 700px) {
  .home-caps .cap .contact-head > .eyebrow:before,
  .home-caps .cap .contact-head > .eyebrow:after { display: block }
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-contato .email-form textarea {
    height: clamp(84px, 11vh, 104px) !important;
  }
  .home-caps .cap-contato .email-form label { margin-top: clamp(6px, 1vh, 10px) }
  .home-caps .cap-contato .contact-head { margin-bottom: clamp(12px, 2vh, 20px) !important }
}
@media (max-aspect-ratio: 1/1) {
  .home-caps .cap-contato .cap-palco { gap: 7px }
  .home-caps .cap-contato .email-form { padding: 14px 16px }
  .home-caps .cap-contato .email-form > small { font-size: 11px !important; display: block; margin-bottom: 2px }
  .home-caps .cap-contato .email-form .campo-dica { margin-top: 3px }
  .home-caps .cap-contato .contact-note { margin: 0 }
}
.home-caps .cap-cases .case-filters button {
  background: rgba(17,17,17,.72);
  border-color: rgba(255,255,255,.42);
}
.home-caps .cap-cases .case-filters button.active {
  background: var(--amber); border-color: transparent;
}
@media (max-aspect-ratio: 1/1) {
  
  .home-caps .cap .dica-lado {
    display: flex; align-items: center; justify-content: center;
    gap: 9px; margin: 8px 0 0;
    font-size: 11px; font-weight: 700; letter-spacing: .14em;
    text-transform: uppercase; color: rgba(255,255,255,.88);
  }
  .home-caps .cap .dica-lado i {
    font-style: normal; color: var(--amber); font-size: 15px; line-height: 1;
  }
  .home-caps .cap .dica-lado { position: relative; isolation: isolate }
  .home-caps .cap .dica-lado:before {
    content: ''; position: absolute; inset: -7px -26px; z-index: -1;
    background: radial-gradient(58% 120% at 50% 50%,
      rgba(12,10,7,.82) 0%, rgba(12,10,7,.62) 55%, rgba(12,10,7,0) 100%);
  }
  .home-caps .cap .dica-lado i:first-child { animation: dica-esq 2.4s ease-in-out infinite }
  .home-caps .cap .dica-lado i:last-child  { animation: dica-dir 2.4s ease-in-out infinite }
  
  .home-caps .cap-metodo .mgrid { align-items: stretch }
  .home-caps .cap-metodo .mgrid > li {
    align-self: stretch !important; height: auto;
    display: flex; flex-direction: column;
  }
  
  .home-caps .cap-solucoes .cap-palco {
    justify-content: center;
    padding-bottom: 0 !important;
  }
  .home-caps .cap-solucoes .service figure img { height: clamp(84px, 12.5vh, 118px) }
  .home-caps .cap-solucoes .section-head { gap: 4px }
  .home-caps .cap-solucoes .service { padding: 14px 14px 12px !important }
  
  .home-caps .cap-quem { --veu: .74; --veu-topo: .42 }
  .home-caps .cap-quem .ucol-a > p:not(.eyebrow),
  .home-caps .cap-quem .lead { color: #fff !important }
  
  .filme-trava,
  picture.filme-trava > img,
  .filme-passagem { object-position: var(--cena-x, 50%) 50% }
  html[data-cap="9"] .filme,
  html[data-destino="9"] .filme { --cena-x: 0% }
  
  .filme-passagem { transition: object-position 2.6s ease-in-out }
}
@keyframes dica-esq { 0%,100% { transform: none } 50% { transform: translateX(-4px) } }
@keyframes dica-dir { 0%,100% { transform: none } 50% { transform: translateX(4px) } }
@media (min-aspect-ratio: 1/1) { .home-caps .cap .dica-lado { display: none } }
@media (min-aspect-ratio: 1/1) {
  .home-caps .cap-contato .email-form { padding: clamp(20px,2.6vh,30px) 28px }
  .home-caps .cap-contato .email-form > small { display: block; margin-bottom: clamp(10px,1.4vh,16px) }
  .home-caps .cap-contato .email-form label { margin-top: clamp(11px,1.6vh,18px) }
  .home-caps .cap-contato .email-form .campo-dica { margin-top: 5px }
  .home-caps .cap-contato .email-form button { margin-top: clamp(16px,2.2vh,24px) }
  .home-caps .cap-contato .email-form textarea {
    height: clamp(104px, 13vh, 160px) !important;
  }
}
.diagnosis-modal.dossie {
  width: min(1040px, 94vw); max-height: 92svh;
  padding: 0; border: 0; border-radius: 26px; overflow: hidden;
  background: var(--cream); color: var(--ink);
  box-shadow: 0 40px 120px #0007;
  display: grid; grid-template-columns: minmax(0,340px) minmax(0,1fr);
}
.diagnosis-modal.dossie::backdrop { background: #0009; backdrop-filter: blur(12px) }
.diagnosis-modal.dossie:not([open]) { display: none }
.diagnosis-modal.dossie { position: fixed; inset: 0; margin: auto }
.dossie-arg {
  position: relative; padding: 40px 34px; color: #fff;
  display: flex; flex-direction: column;
  background: linear-gradient(170deg,#241d16,#140f0b);
}
.dossie-arg:before {
  content: ''; position: absolute; inset: 0; opacity: .16;
  background: url(assets/filme/travas/t8.webp) 62% center/cover;
}
.dossie-arg > * { position: relative }
.dossie-selo {
  display: inline-flex; align-items: center; gap: 9px; align-self: flex-start;
  margin: 0; font-size: 11px; font-weight: 800; letter-spacing: .16em;
  text-transform: uppercase; color: var(--amber);
}
.dossie-selo:before { content: ''; width: 22px; height: 1px; background: currentColor; opacity: .75 }
.diagnosis-modal.dossie .dossie-arg h2 {
  margin: 16px 0 0; font-size: 30px; line-height: 1.08;
  letter-spacing: -.04em; font-weight: 800; color: #fff;
}
.dossie-arg h2 em { font-style: normal; color: var(--amber) }
.diagnosis-modal.dossie .dossie-arg .sub {
  margin: 12px 0 0; font-size: 14.5px; line-height: 1.55;
  color: rgba(255,255,255,.82); max-width: 30ch;
}
.dossie-itens { list-style: none; margin: 26px 0 0; padding: 0; display: grid; gap: 13px }
.dossie-itens li {
  display: grid; grid-template-columns: 18px 1fr; gap: 11px;
  font-size: 13.5px; line-height: 1.45; color: rgba(255,255,255,.9);
}
.dossie-itens b { display: block; font-weight: 700; color: #fff }
.dossie-itens i { font-style: normal; color: var(--amber); font-size: 15px; line-height: 1.25 }
.dossie-pe {
  margin: auto 0 0; padding-top: 26px;
  font-size: 12.5px; line-height: 1.5; color: rgba(255,255,255,.62);
}
.dossie-pe strong { color: var(--amber); font-weight: 700 }
.dossie-form { padding: 38px 36px 32px; overflow-y: auto }
.dossie-form h3 { margin: 0; font-size: 19px; letter-spacing: -.02em }
.dossie-form .passo { margin: 4px 0 20px; font-size: 13px; color: #6b6257 }
.dossie-form .campos { display: grid; grid-template-columns: 1fr 1fr; gap: 13px 16px }
.dossie-form .campos > label { display: block; font-size: 12.5px; font-weight: 700; color: #4a443b }
.dossie-form .campos input {
  display: block; width: 100%; margin-top: 5px; padding: 11px 13px;
  border: 1px solid #28282926; border-radius: 11px; background: #fff;
  font: inherit; font-size: 14px; color: var(--ink);
}
.dossie-form input:focus-visible { outline: 2px solid var(--amber); outline-offset: 1px; border-color: transparent }
.dossie-form .onde { grid-column: 1/-1; margin-top: 3px; border-top: 1px solid #28282918; padding-top: 15px }
.dossie-form .onde-tit { margin: 0; font-size: 12.5px; font-weight: 700; color: #4a443b }
.dossie-form .onde-tit span { font-weight: 400; color: #6b6257 }
.dossie-form .onde-grade { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; margin-top: 9px }
.dossie-form .onde-grade input { margin-top: 0; padding: 10px 13px }
.dossie-acao { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 22px }
.dossie-acao .ou { font-size: 13.5px; color: #6b6257 }
.dossie-acao .ou a { color: #8a5b00; font-weight: 700; text-decoration: underline; text-underline-offset: 3px }
.dossie-legal { margin: 14px 0 0; font-size: 11.5px; line-height: 1.5; color: #6b6257 }
.dossie-legal a { color: #6b6257; text-decoration: underline }
.diagnosis-modal.dossie .close {
  position: absolute; right: 14px; top: 12px; z-index: 3;
  width: 34px; height: 34px; border-radius: 50%;
  border: 1px solid #28282922; background: #fffffff0;
  font-size: 17px; line-height: 1; padding: 0;
}
.diagnosis-modal.dossie .mail-result { margin-top: 18px }
@media (max-width: 820px) {
  .diagnosis-modal.dossie { grid-template-columns: 1fr; max-height: 96svh; border-radius: 20px }
  .dossie-arg { padding: 20px 20px 18px }
  .diagnosis-modal.dossie .dossie-arg h2 { font-size: 22px; margin-top: 11px }
  .diagnosis-modal.dossie .dossie-arg .sub,
  .dossie-itens { display: none }
  .dossie-pe { margin-top: 10px; padding-top: 0; font-size: 12px }
  .dossie-form { padding: 20px 20px 22px }
  .dossie-form h3 { font-size: 16px }
  .dossie-form .passo { margin: 3px 0 14px; font-size: 12px }
  .dossie-form .campos { grid-template-columns: 1fr 1fr; gap: 10px 12px }
  .dossie-form .campos > label { font-size: 11.5px }
  .dossie-form .campos input { padding: 9px 11px; font-size: 16px; margin-top: 4px }  
  .dossie-form .onde { margin-top: 1px; padding-top: 11px }
  .dossie-form .onde-grade { grid-template-columns: 1fr 1fr; gap: 8px 12px; margin-top: 7px }
  .dossie-form .onde-grade input { padding: 9px 11px; font-size: 16px }
  .dossie-acao { margin-top: 16px; gap: 10px }
  .dossie-acao .ou { font-size: 12.5px }
  .dossie-legal { margin-top: 10px; font-size: 11px }
  .diagnosis-modal.dossie .close { right: 10px; top: 10px; width: 30px; height: 30px; font-size: 15px }
}
.diagnosis-modal.dossie { overflow: hidden auto }
@media (min-width: 821px) and (max-height: 760px) {
  .dossie-arg { padding: 26px 30px }
  .diagnosis-modal.dossie .dossie-arg h2 { font-size: 26px; margin-top: 12px }
  .diagnosis-modal.dossie .dossie-arg .sub { margin-top: 9px; font-size: 13.5px }
  .dossie-itens { margin-top: 16px; gap: 9px }
  .dossie-pe { padding-top: 16px; font-size: 12px }
  .dossie-form { padding: 26px 30px 24px }
  .dossie-form .passo { margin-bottom: 15px }
  .dossie-acao { margin-top: 16px }
  .dossie-legal { margin-top: 10px }
}
@media (max-width: 820px) and (max-height: 760px) {
  .dossie-arg { padding: 15px 18px 14px }
  .diagnosis-modal.dossie .dossie-arg h2 { font-size: 20px; margin-top: 8px }
  .dossie-pe,
  .dossie-form .passo { display: none }
  .dossie-form { padding: 15px 18px 16px; overflow: visible }
  .dossie-form h3 { margin-bottom: 12px }
  .dossie-form .campos { gap: 8px 10px }
  .dossie-form .campos input { padding: 8px 10px }
  .dossie-form .onde { padding-top: 9px }
  .dossie-form .onde-grade { gap: 7px 10px; margin-top: 6px }
  .dossie-acao { margin-top: 12px }
  .dossie-legal { margin-top: 8px }
}
@media (max-width: 820px) and (max-height: 680px) {
  .diagnosis-modal.dossie { max-height: 98svh }
  .diagnosis-modal.dossie .dossie-arg h2 { font-size: 18.5px }
  .dossie-form h3 { margin-bottom: 8px }
  .dossie-form .campos input,
  .dossie-form .onde-grade input { padding: 7px 10px }
  .dossie-acao { margin-top: 10px; gap: 8px }
  .diagnosis-modal.dossie .dossie-acao .pill { padding-top: 10px; padding-bottom: 10px }
  .dossie-legal { margin-top: 7px; line-height: 1.4 }
}
.dossie-form.enviado { display: flex; align-items: center; justify-content: center; text-align: center }
.dossie-form.enviado > h3,
.dossie-form.enviado > .passo { display: none }
.dossie-form.enviado .brief-form { width: 100% }
.dossie-form.enviado .form-ok { font-size: 15.5px; line-height: 1.55; padding: 22px 24px }
.dossie-form input::placeholder { color: #6b6257; opacity: 1 }
.metodo-garantia {
  margin: clamp(14px, 1.6vh, 22px) 0 clamp(16px, 1.8vh, 24px);
  padding: clamp(13px, 1.3vw, 18px) clamp(15px, 1.5vw, 22px);
  border: 1px solid rgba(249,169,1,.42);
  border-left-width: 3px;
  border-radius: clamp(10px, .9vw, 14px);
  background: linear-gradient(170deg, rgba(249,169,1,.14), rgba(32,22,12,.82) 60%), rgba(26,18,10,.78);
  backdrop-filter: blur(3px);
}
.metodo-garantia .mg-frase {
  margin: 0; font-size: clamp(15px, 1.15vw, 19px); line-height: 1.25;
  letter-spacing: -.02em; color: #fff;
}
.metodo-garantia .mg-texto {
  margin: 6px 0 0; font-size: clamp(12.5px, .92vw, 15px); line-height: 1.5;
  color: rgba(255,255,255,.84);
}
.cap-metodo .mstep-chave {
  border-color: rgba(249,169,1,.5);
  background: linear-gradient(170deg, rgba(249,169,1,.16), rgba(32,22,12,.6) 70%);
}
.cap-metodo .mstep-chave > span { color: var(--amber) }
.cap-metodo .mstep-selo {
  margin: 0 0 2px; font-size: clamp(9px, .62vw, 11px); font-weight: 800;
  letter-spacing: .1em; text-transform: uppercase; color: var(--amber);
  line-height: 1.3;
}
@media (min-aspect-ratio: 1/1) {
  .cap-metodo .mgrid { grid-template-columns: repeat(6, 1fr) }
}
.gallery-zoom .zoom-post {
  position: absolute; left: 50%; bottom: 14px; translate: -50% 0;
  padding: 8px 16px; border-radius: 30px;
  border: 1px solid rgba(255,255,255,.28); background: #ffffff14;
  color: #f3efe8; font-size: 13px; backdrop-filter: blur(8px);
}
.gallery-zoom .zoom-post:hover { background: var(--amber); color: #1a1612; border-color: transparent }
.gallery-zoom .zoom-post[hidden] { display: none }
.diagnosis-modal.dossie .dossie-arg h2 span { white-space: nowrap }
@media (min-width: 1400px) and (min-aspect-ratio: 1/1) {
  .home-caps .cap-ideia .cap-palco { width: min(710px, 48vw) }
}
.home-caps .cases .case-card .case-acoes {
  margin-top: auto;
  padding-top: clamp(8px, 1.1vh, 14px);
}
.home-caps .cases .case-card > p.case-resumo { -webkit-line-clamp: 3 }
@media (max-width: 1000px) {
  .home-caps .cases .case-card > p.case-resumo { -webkit-line-clamp: 4 }
}
