/* =====================================================================
   Pocket Lab | Páginas internas (usa main.css como base)
   /software-house/ v3
   ===================================================================== */
.ancora { display: block; position: relative; top: -80px; height: 0; }

/* ---------- Hero interno ---------- */
.migalha { display: flex; align-items: center; gap: 10px; margin-bottom: -4px; font-size: 13px; letter-spacing: .4px; color: var(--neutral-400); }
.migalha a { color: var(--neutral-300); transition: color .2s; }
.migalha a:hover { color: var(--yellow); }
.migalha [aria-current] { color: var(--neutral-100); }
.hero--sh .hero__col .migalha + .chip { margin-top: -6px; }
.fx .migalha { opacity: 0; translate: 0 24px; }
.fx.is-load .migalha { opacity: 1; translate: 0 0; transition: opacity .9s ease .05s, translate .9s cubic-bezier(.2, .7, .2, 1) .05s; }

/* ---------- Lista de passos (compartilhada) ---------- */
.pxl { display: none; flex-direction: column; }
.pxl li { position: relative; border-top: 1px solid rgba(249, 250, 250, .14); }
.pxl li::before { content: ""; position: absolute; top: -1px; left: 0; height: 1px; width: calc(var(--fill, 0) * 100%); background: var(--yellow); }
.pxl button { display: flex; align-items: baseline; gap: 18px; width: 100%; padding: 15px 0; border: 0; background: none; font: inherit; text-align: left; color: var(--neutral-500); cursor: pointer; transition: color .3s; }
.pxl button b { font-weight: 400; font-size: 13px; letter-spacing: .65px; }
.pxl button span { font-size: 19px; line-height: 1.15; }
.pxl li.is-ativo button, .pxl button:hover { color: var(--neutral-000); }
.pxl li.is-ativo b { color: var(--yellow); }
.is-anim .pxl { display: flex; }

/* ---------- Cases ---------- */
.stk--int { padding-bottom: 0; }
.stk--int .stk__in { padding-bottom: 72px; }
.stk--int .stc__quem img { max-height: 40px; width: auto; }
.film--int { background: none; padding: 8px 0 96px; }
.film--int .film__janela { box-shadow: 0 0 0 1px rgba(34, 37, 38, .08), 0 40px 70px -44px rgba(1, 29, 38, .5); }

/* ---------- Modelo de trabalho ---------- */
.mt { position: relative; background: var(--blue-900); color: var(--neutral-100); }
.mt__stage { position: relative; display: flex; flex-direction: column; gap: 40px; padding: 112px max(40px, calc((100% - 1286px) / 2)) 64px; overflow: hidden; }
.mt__stage::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(50% 60% at 15% 70%, rgba(18, 89, 124, .55), transparent 70%), radial-gradient(35% 45% at 95% 10%, rgba(244, 182, 63, .1), transparent 70%); }
.mt__stage > * { position: relative; }
.mt__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.mt__paineis { display: grid; gap: 64px; }
.mtp { --e: 1; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); grid-template-areas: "w w" "t v"; gap: 8px 64px; align-items: center; }
.mtp__w { grid-area: w; position: relative; margin: 0 0 8px -.04em; font-weight: 200; font-size: clamp(96px, 15vw, 230px); line-height: .9; letter-spacing: -.04em; white-space: nowrap; }
.mtp__o { color: transparent; -webkit-text-stroke: 1px rgba(249, 250, 250, .28); }
.mtp__f { position: absolute; left: 0; top: 0; color: var(--yellow); clip-path: inset(0 calc((1 - var(--e)) * 100%) 0 0); }
.mtp__txt { grid-area: t; display: flex; flex-direction: column; gap: 14px; max-width: 560px; }
.mtp__n { font-size: 13px; letter-spacing: .65px; color: var(--yellow); }
.mtp__txt h3 { font-weight: 400; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.15; letter-spacing: -.01em; color: var(--neutral-000); }
.mtp__txt p:last-child { font-size: 17px; line-height: 1.5; color: var(--neutral-300); }
.mtp__vis { grid-area: v; min-width: 0; }
.mtv { width: 100%; }
.mtv--dono { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; justify-items: center; }
.mtv__cx { grid-column: 1 / -1; display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 16px 28px; border-radius: 16px; background: var(--yellow); color: var(--blue-900); font-weight: 500; font-size: 18px; }
.mtv__cx small { font-weight: 400; font-size: 12px; opacity: .8; }
.mtv__fio { grid-column: 1 / -1; width: 100%; height: 64px; }
.mtv__fio path { fill: none; stroke: rgba(249, 250, 250, .5); stroke-width: 1.5; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--e)); }
.mtv__op { width: 100%; padding: 14px 10px; border-radius: 14px; text-align: center; background: rgba(249, 250, 250, .08); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); font-size: 14px; color: var(--neutral-000); opacity: clamp(.2, var(--e) * 1.6 - .4, 1); }
.mtv--base { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.mtv--base li { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-radius: 14px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font-size: 14px; opacity: clamp(.15, var(--e) * 2.6 - var(--d) * .3, 1); }
.mtv--base svg { flex: none; width: 18px; height: 18px; color: var(--yellow); }
.mtv--res { display: flex; flex-direction: column; gap: 10px; }
.mtv--res li { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-radius: 14px; background: rgba(249, 250, 250, .06); font-size: 15px; opacity: clamp(.15, var(--e) * 3 - var(--d) * .6, 1); }
.mtv--res li i { width: 9px; height: 9px; border-radius: 50%; background: var(--yellow); }
.mtv--res li:first-child i { background: #e2665a; }
.mtv__nao { color: var(--neutral-400); text-decoration: line-through; background: none !important; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.mtv--ciclo { position: relative; width: min(300px, 100%); aspect-ratio: 1; margin-inline: auto; }
.mtv--ciclo svg { position: absolute; inset: 0; rotate: -90deg; }
.mtv--ciclo circle { fill: none; stroke: var(--yellow); stroke-width: 1.5; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--e)); }
.mtv--ciclo span { position: absolute; left: calc(50% + cos(var(--a) * 120deg - 90deg) * 39%); top: calc(50% + sin(var(--a) * 120deg - 90deg) * 39%); padding: 10px 16px; border-radius: 99px; background: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .25); font-size: 13px; white-space: nowrap; translate: -50% -50%; }
.mt__pe { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-top: 22px; border-top: 1px solid rgba(249, 250, 250, .14); }
.mt__manifesto { max-width: 560px; font-size: 15px; line-height: 1.5; color: var(--neutral-300); }
.mt__manifesto b { font-weight: 500; color: var(--yellow); }
.pxl--h { flex-direction: row; gap: 8px; }
.pxl--h li { border: 0; }
.pxl--h li::before { top: auto; bottom: 0; }
.pxl--h button { padding: 8px 14px 10px; gap: 8px; }
.pxl--h button span { font-size: 15px; }

.mt.is-anim { height: calc(100vh + 4 * 80vh); }
.mt.is-anim .mt__stage { position: sticky; top: 0; height: 100vh; min-height: 680px; padding-top: 100px; padding-bottom: 36px; gap: 24px; }
.mt.is-anim .mt__paineis { display: block; position: relative; flex: 1; }
.mt.is-anim .mtp { position: absolute; inset: 0; align-content: center; opacity: 0; pointer-events: none; transition: opacity .5s ease; }
.mt.is-anim .mtp.is-ativo { opacity: 1; pointer-events: auto; }
.mt.is-anim .mtp__w { font-size: clamp(88px, min(14vw, 21vh), 210px); }
.mt.is-anim .mtp__txt, .mt.is-anim .mtp__vis { translate: 0 calc((1 - var(--e)) * 24px); opacity: clamp(0, var(--e) * 2, 1); }

/* ---------- Quando chamar a gente: mapa de diagnóstico ---------- */
.qx { position: relative; background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.qx__in { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 64px; align-items: start; padding: 112px max(40px, calc((100% - 1286px) / 2)); }
.qx__esq { display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.qx h2 { display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.5vw, 50px); line-height: 1.05; letter-spacing: -.01em; color: var(--neutral-900); }
.qx h2 .is-dim { color: var(--neutral-400); }
.qx__lead { max-width: 480px; font-size: 16px; line-height: 1.55; color: var(--neutral-600); }
.qx__lista { display: flex; flex-direction: column; gap: 10px; width: 100%; }
.qx__s { display: flex; align-items: center; gap: 16px; width: 100%; padding: 15px 18px; border: 0; border-radius: 16px; background: rgba(255, 255, 255, .62); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); font: inherit; text-align: left; color: var(--neutral-700); cursor: pointer; transition: background-color .3s, box-shadow .3s, translate .35s cubic-bezier(.2, .7, .2, 1); }
.qx__s:hover { background: #fff; translate: 4px 0; }
.qx__box { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; box-shadow: inset 0 0 0 1.5px rgba(34, 37, 38, .25); color: var(--blue-900); transition: background-color .25s, box-shadow .25s; }
.qx__box svg { width: 18px; height: 18px; stroke-dasharray: 30; stroke-dashoffset: 30; transition: stroke-dashoffset .35s ease .05s; }
.qx__st { display: flex; flex-direction: column; gap: 3px; }
.qx__st b { font-weight: 400; font-size: 18px; line-height: 1.2; letter-spacing: -.005em; color: var(--neutral-900); }
.qx__st small { font-size: 13.5px; line-height: 1.4; color: var(--neutral-500); }
.qx__s[aria-pressed="true"] { background: #fff; box-shadow: inset 0 0 0 1.5px var(--yellow), 0 24px 40px -28px rgba(1, 29, 38, .45); }
.qx__s[aria-pressed="true"] .qx__box { background: var(--yellow); box-shadow: none; }
.qx__s[aria-pressed="true"] .qx__box svg { stroke-dashoffset: 0; }

.qx__dir { position: sticky; top: 96px; display: flex; flex-direction: column; min-width: 0; }
.qx__mapa { position: relative; height: 420px; border-radius: 28px 28px 0 0; overflow: hidden; background: radial-gradient(50% 55% at 50% 50%, rgba(18, 89, 124, .7), transparent 75%), var(--blue-900); }
.qx__orb { position: absolute; left: 50%; top: 50%; border-radius: 50%; border: 1px dashed rgba(249, 250, 250, .14); translate: -50% -50%; animation: qx-gira 60s linear infinite; }
.qx__orb--1 { width: 64%; aspect-ratio: 1; } .qx__orb--2 { width: 40%; aspect-ratio: 1; animation-direction: reverse; animation-duration: 40s; }
@keyframes qx-gira { to { rotate: 360deg; } }
.qx__mapa { aspect-ratio: auto; }
.qx__fios { position: absolute; inset: 0; width: 100%; height: 100%; }
.qx__fios line { stroke: rgba(249, 250, 250, .12); stroke-width: 1; vector-effect: non-scaling-stroke; }
.qx__fios line.is-on { stroke: var(--yellow); stroke-width: 2; stroke-dasharray: 1; stroke-dashoffset: 1; animation: qx-fio .7s cubic-bezier(.4, 0, .2, 1) forwards; }
@keyframes qx-fio { to { stroke-dashoffset: 0; } }
.qx__centro { position: absolute; left: 50%; top: 50%; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; width: 124px; height: 124px; border-radius: 50%; translate: -50% -50%; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); color: var(--neutral-000); text-align: center; transition: background-color .4s, box-shadow .4s, color .4s; }
.qx__centro b { font-weight: 500; font-size: 15px; }
.qx__centro small { font-size: 11.5px; color: var(--neutral-300); }
.qx__mapa.is-vivo .qx__centro { background: var(--yellow); color: var(--blue-900); box-shadow: 0 0 0 14px rgba(244, 182, 63, .14), 0 0 0 30px rgba(244, 182, 63, .06); animation: qx-batida 2.6s ease-in-out infinite; }
.qx__mapa.is-vivo .qx__centro small { color: rgba(1, 29, 38, .7); }
@keyframes qx-batida { 50% { box-shadow: 0 0 0 20px rgba(244, 182, 63, .12), 0 0 0 42px rgba(244, 182, 63, .04); } }
.qx__no { position: absolute; z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 8px; translate: -50% -50%; width: 120px; text-align: center; }
.qx__nc { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 18px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); color: var(--neutral-400); transition: background-color .4s, color .4s, box-shadow .4s, scale .4s cubic-bezier(.2, .9, .3, 1.4); }
.qx__ico { width: 26px; height: 26px; stroke-width: 1.4; }
.qx__nl { font-size: 12.5px; line-height: 1.2; color: var(--neutral-400); transition: color .4s; }
.qx__no.is-on .qx__nc { background: var(--yellow); color: var(--blue-900); box-shadow: 0 0 0 8px rgba(244, 182, 63, .16), 0 20px 30px -10px rgba(0, 0, 0, .5); scale: 1.08; }
.qx__no.is-on .qx__nl { color: var(--neutral-000); font-weight: 500; }
.qx__res { display: flex; flex-direction: column; gap: 14px; padding: 26px 30px 30px; border-radius: 0 0 28px 28px; background: #fff; box-shadow: 0 50px 90px -50px rgba(1, 29, 38, .45); }
.qx__rot { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.qx__cam { display: flex; flex-direction: column; gap: 4px; }
.qx__cam li { display: flex; gap: 16px; padding: 14px 0; border-top: 1px solid rgba(34, 37, 38, .08); animation: qx-item .5s cubic-bezier(.2, .7, .2, 1) both; animation-delay: calc(var(--d) * 70ms); }
.qx__cam li:first-child { border-top: 0; padding-top: 4px; }
@keyframes qx-item { from { opacity: 0; translate: 0 10px; } }
.qx__cam b { font-weight: 400; font-size: 13px; letter-spacing: .65px; color: #c98a12; padding-top: 4px; }
.qx__cam a { font-size: 19px; line-height: 1.2; color: var(--neutral-900); text-decoration: underline; text-decoration-color: rgba(244, 182, 63, .7); text-underline-offset: 4px; }
.qx__cam a:hover { color: #9a6a0e; }
.qx__cam p { margin-top: 6px; font-size: 14.5px; line-height: 1.45; color: var(--neutral-600); }
.qx__cam .qx__ia { color: var(--neutral-800); }
.qx__cam .qx__ia span { display: inline-block; margin-right: 8px; padding: 2px 8px; border-radius: 6px; background: var(--blue-900); color: var(--yellow); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; vertical-align: 1px; }
.qx__vazio, .qx__fila { font-size: 15px; line-height: 1.5; color: var(--neutral-600); }
.qx__fila { padding: 14px 16px; border-radius: 14px; background: rgba(244, 182, 63, .14); color: var(--neutral-800); }
.qx__fila b { font-weight: 500; color: var(--blue-900); }
.qx__ctas { margin-top: 6px; }

/* Trilho de soluções só com software house */
.hz--so-sh .hz__g--sh { padding-right: max(40px, calc((100vw - 1286px) / 2)); }
.hz--so-sh .hz__barra { display: none; }

/* Revelar */
.fx .qx__esq, .fx .qx__dir, .fx .alba-sec__esq { opacity: 0; translate: 0 30px; transition: opacity .9s ease, translate .9s cubic-bezier(.2, .7, .2, 1); }
.fx .is-in.qx__esq, .fx .is-in.qx__dir, .fx .is-in.alba-sec__esq { opacity: 1; translate: 0 0; }

/* ---------- Responsivo ---------- */
@media (max-width: 1100px) {
  .qx__in { grid-template-columns: minmax(0, 1fr); gap: 40px; padding: 88px 24px; }
  .qx__dir { position: static; }
  .mtp { grid-template-columns: minmax(0, 1fr); grid-template-areas: "w" "t" "v"; gap: 20px; }
  .mt__pe { flex-direction: column; align-items: flex-start; }
  .mt__stage { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 640px) {
  .qx__mapa { height: 360px; }
  .qx__no { width: 86px; }
  .qx__nc { width: 46px; height: 46px; border-radius: 14px; }
  .qx__ico { width: 22px; height: 22px; }
  .qx__nl { font-size: 11px; }
  .qx__centro { width: 96px; height: 96px; }
  .qx__res { padding: 22px 20px 24px; }
  .qx__st b { font-size: 16.5px; }
  .mtp__w { font-size: 84px; }
  .mtv--base { grid-template-columns: 1fr; }
}
.mt h2 { display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.5vw, 50px); line-height: 1.05; letter-spacing: -.01em; color: var(--neutral-000); }
.mt h2 .is-dim { color: var(--neutral-400); }

/* v6.5: cartão 07 em branco (amarelo fica para o Inbound) */
.hz__g--sh .hz__card--livre, .hz__g--sh .hz__card--livre:hover { background: linear-gradient(170deg, #FFFFFF, #E9EEF0); color: var(--blue-900); }
.hz__g--sh .hz__card--livre { box-shadow: 0 40px 70px -40px rgba(0, 0, 0, .8); }
.hz__g--sh .hz__card--livre:hover { box-shadow: inset 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(0, 0, 0, .8); }
.hz__g--sh .hz__card--livre .hz__cn { color: #9a6a0e; }
.hz__g--sh .hz__card--livre .hz__ci { background: var(--blue-900); color: var(--yellow); }
.hz__g--sh .hz__card--livre .sol__ia { background: var(--blue-900); color: var(--yellow); }
.hz__g--sh .hz__card--livre .hz__cd { color: var(--neutral-700); opacity: 1; }
.hz__g--sh .hz__card--livre .hz__cv { color: var(--blue-900); opacity: 1; font-weight: 500; }
.hz--so-sh .hz__abre { width: min(700px, 80vw); }
@media (min-width: 1101px) { .hz--so-sh #t-of > span:first-child { white-space: nowrap; } }

/* v6.4: Quando chamar a gente cabe em uma tela */
.qx__in { padding-top: 96px; padding-bottom: 64px; gap: 48px; align-items: stretch; }
.qx__esq { gap: 16px; }
.qx h2 { font-size: clamp(28px, 2.7vw, 40px); }
.qx__lead { font-size: 15px; line-height: 1.5; }
.qx__lista { gap: 7px; margin-top: 4px; }
.qx__s { gap: 14px; padding: 10px 16px; border-radius: 14px; }
.qx__box { width: 24px; height: 24px; border-radius: 7px; }
.qx__box svg { width: 16px; height: 16px; }
.qx__st { min-width: 0; gap: 1px; }
.qx__st b { font-size: 16px; }
.qx__st small { font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.qx__dir { top: 88px; height: min(calc(100vh - 120px), 720px); min-height: 560px; }
.qx__mapa { flex: 0 0 auto; height: 50%; min-height: 280px; }
.qx__no { width: 110px; gap: 6px; }
.qx__nc { width: 48px; height: 48px; border-radius: 15px; }
.qx__ico { width: 22px; height: 22px; }
.qx__nl { font-size: 11.5px; }
.qx__centro { width: 104px; height: 104px; }
.qx__centro b { font-size: 14px; }
.qx__res { flex: 1; min-height: 0; padding: 18px 24px 0; gap: 8px; }
.qx__cam { flex: 1; min-height: 0; overflow-y: auto; padding-right: 6px; scrollbar-width: thin; scrollbar-color: rgba(34, 37, 38, .2) transparent; -webkit-mask-image: linear-gradient(#000 85%, transparent); mask-image: linear-gradient(#000 85%, transparent); padding-bottom: 18px; }
.qx__cam li { padding: 10px 0; gap: 14px; }
.qx__cam a { font-size: 16.5px; }
.qx__cam p { margin-top: 4px; font-size: 13.5px; }
.qx__fila { padding: 10px 14px; font-size: 13.5px; }
.qx__ctas { margin: 0 -24px; padding: 14px 24px 18px; border-top: 1px solid rgba(34, 37, 38, .08); background: #fff; }
@media (max-width: 1100px) {
  .qx__dir { height: auto; min-height: 0; }
  .qx__mapa { height: 380px; }
  .qx__cam { overflow: visible; -webkit-mask-image: none; mask-image: none; }
  .qx__st small { white-space: normal; }
}
@media (max-width: 640px) { .qx__mapa { height: 340px; } }

/* =====================================================================
   Páginas legais (Política de Privacidade, Termos de Uso)
   ===================================================================== */
.ph { padding: 0 4px; border-radius: 4px; background: rgba(244, 182, 63, .25); color: inherit; font-weight: 500; }
.migalha--claro { color: var(--neutral-500); }
.migalha--claro a { color: var(--neutral-600); }
.migalha--claro [aria-current] { color: var(--neutral-900); }
.lg-hero { position: relative; background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.lg-hero__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 64px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.lg-hero h1 { margin: 0; font-weight: 300; font-size: clamp(40px, 5vw, 72px); line-height: 1; letter-spacing: -.02em; color: var(--neutral-900); }
.lg-hero h1 .is-dim { color: var(--neutral-400); }
.lg-hero__lead { max-width: 620px; font-size: 18px; line-height: 1.5; color: var(--neutral-600); }
.lg-hero__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font-size: 13px; color: var(--neutral-500); }
.lg-hero__meta i { width: 4px; height: 4px; border-radius: 50%; background: var(--neutral-300); }
.lg-hero__meta a { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.lg { background: var(--neutral-000); color: var(--neutral-800); }
.lg__in { max-width: 1286px; margin: 0 auto; padding: 72px 40px 112px; display: grid; grid-template-columns: 260px minmax(0, 760px); gap: 72px; }
.lg__aside { position: relative; }
.lg__toc { position: sticky; top: 110px; }
.lg__toc p { margin: 0 0 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.lg__toc ol { margin: 0; padding: 0; list-style: none; border-left: 1px solid var(--neutral-100); }
.lg__toc a { display: flex; gap: 12px; padding: 7px 0 7px 16px; margin-left: -1px; border-left: 2px solid transparent; font-size: 14px; line-height: 1.35; color: var(--neutral-500); transition: color .2s, border-color .2s; }
.lg__toc a b { font-weight: 400; font-size: 12px; color: var(--neutral-400); font-variant-numeric: tabular-nums; padding-top: 1px; }
.lg__toc a:hover { color: var(--neutral-900); }
.lg__toc a.is-on { color: var(--neutral-900); border-left-color: var(--yellow); }
.lg__toc a.is-on b { color: #c98a12; }
.lg__resumo { margin-bottom: 56px; padding: 28px 30px; border-radius: 22px; background: var(--blue-900) radial-gradient(60% 80% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%); color: var(--neutral-100); }
.lg__rot { margin: 0 0 18px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.lg__resumo ul { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 28px; }
.lg__resumo li { display: flex; gap: 12px; }
.lg__resumo svg { flex: none; margin-top: 2px; color: var(--yellow); }
.lg__resumo b { display: block; font-weight: 500; font-size: 16px; color: var(--neutral-000); }
.lg__resumo p { margin: 4px 0 0; font-size: 14px; line-height: 1.5; color: var(--neutral-300); }
.lg__s { padding-top: 8px; margin-bottom: 48px; scroll-margin-top: 100px; }
.lg__s h2 { display: flex; align-items: baseline; gap: 14px; margin: 0 0 18px; font-weight: 400; font-size: clamp(24px, 2.4vw, 30px); line-height: 1.2; letter-spacing: -.01em; color: var(--neutral-900); }
.lg__s h2 span { font-size: 13px; letter-spacing: .65px; color: #c98a12; font-variant-numeric: tabular-nums; }
.lg__s h3 { margin: 26px 0 10px; font-weight: 500; font-size: 17px; color: var(--neutral-900); }
.lg__s p, .lg__s li { font-size: 16px; line-height: 1.7; color: var(--neutral-700); }
.lg__s p { margin: 0 0 14px; }
.lg__s b { font-weight: 600; color: var(--neutral-900); }
.lg__s ul { margin: 0 0 16px; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.lg__s ul li { position: relative; padding-left: 22px; }
.lg__s ul li::before { content: ""; position: absolute; left: 2px; top: .7em; width: 7px; height: 7px; border-radius: 2px; background: var(--yellow); }
.lg__s ul.lg__cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 24px; }
.lg__s a { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.lg__nota { padding: 14px 18px; border-radius: 14px; background: #FDF3DC; font-size: 15px !important; color: var(--neutral-800) !important; }
.lg__ajuda { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-top: 24px; padding: 26px 28px; border-radius: 22px; background: var(--neutral-100); }
.lg__ajuda b { display: block; font-weight: 500; font-size: 20px; color: var(--neutral-900); }
.lg__ajuda p { margin: 6px 0 0; font-size: 15px; color: var(--neutral-600); max-width: 380px; }
.lg__ajuda-ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.lg__alba { display: inline-flex; align-items: center; padding: 0 20px; height: 48px; border-radius: var(--radius-btn); background: var(--neutral-000); box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .2); font-size: 13px; letter-spacing: .65px; text-transform: uppercase; color: var(--blue-900); }
.lg__alba:hover { box-shadow: inset 0 0 0 1px var(--yellow); }
@media (max-width: 1100px) {
  .lg__in { grid-template-columns: minmax(0, 1fr); gap: 32px; padding: 48px 24px 88px; }
  .lg__aside { display: none; }
  .lg-hero__in { padding: 120px 24px 48px; }
}
@media (max-width: 640px) {
  .lg__resumo { padding: 22px 20px; }
  .lg__resumo ul, .lg__s ul.lg__cols { grid-template-columns: minmax(0, 1fr); }
}

/* =====================================================================
   Erro 404
   ===================================================================== */
.e404 { position: relative; min-height: max(760px, 100vh); display: flex; align-items: center; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.e404 .hero__media, .e404 .hero__veu { position: absolute; inset: 0; }
.e404__num { position: absolute; right: -2vw; bottom: -6vh; z-index: 1; margin: 0; font-weight: 200; font-size: clamp(220px, 34vw, 520px); line-height: .8; letter-spacing: -.05em; pointer-events: none; }
.e404__o { color: transparent; -webkit-text-stroke: 1px rgba(249, 250, 250, .16); }
.e404__f { position: absolute; left: 0; top: 0; color: var(--yellow); opacity: .9; clip-path: inset(0 100% 0 0); animation: e404-enche 2.4s cubic-bezier(.6, 0, .2, 1) .4s forwards; }
@keyframes e404-enche { to { clip-path: inset(0 52% 0 0); } }
.e404__in { position: relative; z-index: 2; width: 100%; max-width: 1286px; margin: 0 auto; padding: 150px 40px 80px; display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.e404 h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 5vw, 76px); line-height: 1.02; letter-spacing: -.02em; color: var(--neutral-000); }
.e404 h1 em { font-style: italic; color: var(--yellow); }
.e404__lead { max-width: 560px; font-size: 18px; line-height: 1.5; color: var(--neutral-200); }
.e404__ctas { display: flex; flex-wrap: wrap; gap: 12px; }
.e404__alba { display: inline-flex; align-items: center; gap: 12px; height: 48px; padding: 0 20px 0 6px; border-radius: var(--radius-btn); background: rgba(1, 29, 38, .7); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); font-size: 13px; letter-spacing: .65px; text-transform: uppercase; color: var(--neutral-000); }
.e404__alba:hover { box-shadow: inset 0 0 0 1px var(--yellow); }
.e404__av { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: linear-gradient(145deg, #12597C, #011D26); }
.e404__av svg { width: 20px; height: 20px; fill: var(--yellow); }
.e404__links { margin: 18px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; width: min(820px, 100%); }
.e404__links a { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 2px 12px; align-items: center; padding: 16px 18px; border-radius: 16px; background: rgba(1, 29, 38, .55); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); transition: box-shadow .25s, translate .25s; }
.e404__links a:hover { box-shadow: inset 0 0 0 1px var(--yellow); translate: 0 -2px; }
.e404__links b { font-weight: 500; font-size: 16px; color: var(--neutral-000); }
.e404__links span { grid-column: 1; font-size: 13px; color: var(--neutral-300); }
.e404__links .ico-arrow { grid-column: 2; grid-row: 1 / span 2; color: var(--yellow); }
@media (max-width: 860px) { .e404__links { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
@media (max-width: 640px) { .e404__in { padding: 120px 24px 64px; } .e404__links { grid-template-columns: minmax(0, 1fr); } .e404__num { font-size: 200px; right: -20px; bottom: -20px; } }
@media (prefers-reduced-motion: reduce) { .e404__f { animation: none; clip-path: inset(0 52% 0 0); } }

/* =====================================================================
   Formulários (Contato e Solicitar proposta)
   ===================================================================== */
.fc { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.fc label { font-size: 13px; font-weight: 500; color: var(--neutral-700); }
.fc label em { font-style: normal; font-weight: 400; color: var(--neutral-400); }
.fc input, .fc select, .fc textarea { width: 100%; padding: 13px 14px; border: 0; border-radius: 12px; background: #F2F4F5; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font: inherit; font-size: 15px; color: var(--neutral-900); outline: none; transition: box-shadow .2s, background-color .2s; }
.fc textarea { resize: vertical; min-height: 110px; line-height: 1.5; }
.fc select { appearance: none; padding-right: 36px; background-image: linear-gradient(45deg, transparent 50%, var(--neutral-600) 50%), linear-gradient(-45deg, transparent 50%, var(--neutral-600) 50%); background-size: 6px 6px; background-repeat: no-repeat; background-position: right 20px center, right 14px center; }
.fc input:focus, .fc select:focus, .fc textarea:focus { background: #fff; box-shadow: inset 0 0 0 2px var(--yellow); }
.fc input::placeholder, .fc textarea::placeholder { color: var(--neutral-400); }
.fc.is-erro input, .fc.is-erro textarea { box-shadow: inset 0 0 0 2px #E2665A; }
.fx-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
.fx-aceite { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; line-height: 1.45; color: var(--neutral-600); }
.fx-aceite input { flex: none; width: 18px; height: 18px; margin-top: 1px; accent-color: var(--blue-900); }
.fx-aceite a { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 3px; }
.fx-erro { margin: 0; padding: 10px 14px; border-radius: 10px; background: #FDECEA; color: #8B2A20; font-size: 14px; }
@media (max-width: 640px) { .fx-grid { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Contato ---------- */
.ct { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.ct__media, .ct__veu { position: absolute; inset: 0; }
.ct__media video { width: 100%; height: 100%; object-fit: cover; }
.ct__veu { background: linear-gradient(90deg, rgba(1, 29, 38, .94) 0%, rgba(1, 29, 38, .82) 55%, rgba(1, 29, 38, .7) 100%); }
.ct__in { position: relative; z-index: 1; max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 64px; align-items: start; }
.ct__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.ct h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 4.6vw, 68px); line-height: 1.02; letter-spacing: -.02em; color: var(--neutral-000); }
.ct h1 .is-dim { color: var(--neutral-400); }
.ct__lead { max-width: 480px; font-size: 18px; line-height: 1.5; color: var(--neutral-200); }
.ct__cam { margin: 8px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; width: 100%; }
.ct__cam a, .e404__links a { text-decoration: none; }
.ct__cam a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; align-items: center; padding: 15px 16px; border-radius: 14px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); transition: box-shadow .25s, background-color .25s; }
.ct__cam a:hover { background: rgba(249, 250, 250, .1); box-shadow: inset 0 0 0 1px var(--yellow); }
.ct__cam b { font-weight: 500; font-size: 15px; color: var(--neutral-000); }
.ct__cam span { grid-column: 1; font-size: 13px; color: var(--neutral-300); }
.ct__cam .ico-arrow { grid-column: 2; grid-row: 1 / span 2; color: var(--yellow); }
.fx-card { display: flex; flex-direction: column; gap: 16px; padding: 30px 30px 28px; border-radius: 26px; background: #fff; color: var(--neutral-900); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .7); }
.fx-card__tit { margin: 0; font-size: 22px; font-weight: 400; letter-spacing: -.01em; }
.fx-card .btn { align-self: flex-start; }
.ct-info { background: var(--neutral-100); color: var(--neutral-900); }
.ct-info__in { max-width: 1286px; margin: 0 auto; padding: 44px 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.ct-info__in > div { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ct-info__rot { margin: 0 0 4px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.ct-info b { font-weight: 500; font-size: 17px; overflow-wrap: anywhere; }
.ct-info b a { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.ct-info span { font-size: 14px; color: var(--neutral-600); }
@media (max-width: 1100px) { .ct__in { grid-template-columns: minmax(0, 1fr); gap: 40px; padding: 120px 24px 72px; } .ct-info__in { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 36px 24px; } }
@media (max-width: 640px) { .ct__cam { grid-template-columns: minmax(0, 1fr); } .fx-card { padding: 24px 20px; border-radius: 22px; } }

/* ---------- Solicitar proposta ---------- */
.pr-hero { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.pr-hero__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 48px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.pr-hero h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(38px, 4.4vw, 64px); line-height: 1.02; letter-spacing: -.02em; color: var(--neutral-900); }
.pr-hero h1 .is-dim { color: var(--neutral-400); }
.pr-hero__lead { max-width: 560px; font-size: 18px; line-height: 1.5; color: var(--neutral-600); }
.pr { background: #F7F8F8; color: var(--neutral-900); }
.pr__in { max-width: 1286px; margin: 0 auto; padding: 8px 40px 112px; display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 40px; align-items: start; }
.pr__form { display: flex; flex-direction: column; gap: 22px; padding: 32px 34px; border-radius: 26px; background: #fff; box-shadow: 0 40px 80px -50px rgba(1, 29, 38, .45), 0 0 0 1px rgba(34, 37, 38, .05); }
.pr__passos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.pr__passos li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: var(--neutral-400); }
.pr__passos b { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .2); font-weight: 500; font-size: 13px; }
.pr__passos li.is-on { color: var(--neutral-900); }
.pr__passos li.is-on b { background: var(--blue-900); color: var(--yellow); box-shadow: none; }
.pr__passos li.is-feito b { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.pr__barra { height: 3px; margin-top: -8px; border-radius: 3px; background: var(--neutral-100); overflow: hidden; }
.pr__barra i { display: block; height: 100%; width: 33%; background: var(--yellow); transition: width .5s cubic-bezier(.2, .7, .2, 1); }
.pr__p { margin: 0; padding: 0; border: 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.pr__p.is-on { animation: qcin .5s cubic-bezier(.2, .7, .2, 1); }
.pr__p legend { padding: 0; margin-bottom: 4px; font-weight: 400; font-size: 26px; letter-spacing: -.01em; color: var(--neutral-900); }
.pr__dica { margin: -8px 0 0; font-size: 14px; color: var(--neutral-500); }
.pr__sub { margin: 8px 0 -4px; font-size: 14px; font-weight: 500; color: var(--neutral-700); }
.ops { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.op { position: relative; cursor: pointer; }
.op input { position: absolute; opacity: 0; pointer-events: none; }
.op__in { position: relative; display: flex; flex-direction: column; gap: 10px; height: 100%; padding: 16px 16px 14px; border-radius: 16px; background: #F7F8F8; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); transition: background-color .2s, box-shadow .2s; }
.op:hover .op__in { background: #fff; box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .3); }
.op__i { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #fff; color: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); }
.op__t { font-size: 14.5px; line-height: 1.3; color: var(--neutral-800); }
.op__ck { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; box-shadow: inset 0 0 0 1.5px rgba(34, 37, 38, .2); color: var(--blue-900); }
.op__ck svg { width: 14px; height: 14px; opacity: 0; }
.op input:checked + .op__in { background: #fff; box-shadow: inset 0 0 0 2px var(--yellow), 0 16px 30px -22px rgba(1, 29, 38, .5); }
.op input:checked + .op__in .op__i { background: var(--blue-900); color: var(--yellow); }
.op input:checked + .op__in .op__ck { background: var(--yellow); box-shadow: none; }
.op input:checked + .op__in .op__ck svg { opacity: 1; }
.op input:focus-visible + .op__in { outline: 2px solid var(--blue-900); outline-offset: 2px; }
.chs { display: flex; flex-wrap: wrap; gap: 8px; }
.ch { cursor: pointer; }
.ch input { position: absolute; opacity: 0; pointer-events: none; }
.ch span { display: inline-block; padding: 10px 16px; border-radius: 99px; background: #F2F4F5; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font-size: 14px; color: var(--neutral-700); transition: background-color .2s, box-shadow .2s, color .2s; }
.ch input:checked + span { background: var(--blue-900); color: var(--neutral-000); box-shadow: none; }
.ch input:focus-visible + span { outline: 2px solid var(--yellow); outline-offset: 2px; }
.pr__nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 6px; border-top: 1px solid var(--neutral-100); }
.pr__nav .btn { margin-left: auto; }
.pr__voltar { padding: 12px 6px; border: 0; background: none; font: inherit; font-size: 14px; color: var(--neutral-600); cursor: pointer; text-decoration: underline; text-underline-offset: 4px; }
.pr__aside { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 16px; }
.pr__depois { padding: 26px 26px 22px; border-radius: 22px; background: var(--blue-900) radial-gradient(70% 70% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%); color: var(--neutral-100); }
.pr__rot { margin: 0 0 16px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.pr__depois ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; }
.pr__depois li { display: flex; gap: 14px; }
.pr__depois li > b { flex: none; font-weight: 400; font-size: 13px; color: var(--yellow); padding-top: 2px; }
.pr__depois strong { display: block; font-weight: 500; font-size: 15.5px; color: var(--neutral-000); }
.pr__depois p { margin: 4px 0 0; font-size: 13.5px; line-height: 1.45; color: var(--neutral-300); }
.pr__alt { padding: 22px 24px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.pr__alt b { font-weight: 500; font-size: 16px; }
.pr__alt p { margin: 4px 0 12px; font-size: 14px; color: var(--neutral-600); }
.pr__alt div { display: flex; flex-wrap: wrap; gap: 14px; }
.pr__alt a { font-size: 14px; color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
@media (max-width: 1100px) { .pr__in { grid-template-columns: minmax(0, 1fr); padding: 8px 24px 88px; } .pr__aside { position: static; } .pr-hero__in { padding: 120px 24px 40px; } .ops { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .pr__form { padding: 24px 18px; border-radius: 22px; } .ops { grid-template-columns: minmax(0, 1fr); } .pr__passos span { display: none; } .op__in { flex-direction: row; align-items: center; } }

/* ---------- Obrigado ---------- */
.nw { white-space: nowrap; }
.ob { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.ob .hero__media, .ob .hero__veu { position: absolute; inset: 0; }
.ob__in { position: relative; z-index: 2; max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: 64px; align-items: center; }
.ob__esq { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.ob__ok { width: 72px; height: 72px; }
.ob__ok svg { width: 100%; height: 100%; fill: none; stroke: var(--yellow); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.ob__ok circle { stroke: rgba(244, 182, 63, .35); stroke-dasharray: 1; stroke-dashoffset: 1; animation: ob-traco .9s ease forwards .2s; }
.ob__ok path { stroke-dasharray: 1; stroke-dashoffset: 1; animation: ob-traco .6s ease forwards .9s; }
@keyframes ob-traco { to { stroke-dashoffset: 0; } }
.ob h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 4.6vw, 70px); line-height: 1.02; letter-spacing: -.02em; color: var(--neutral-000); }
.ob__t2 { font-style: italic; color: var(--yellow); }
.ob__lead { max-width: 520px; font-size: 18px; line-height: 1.5; color: var(--neutral-200); }
.obp { width: min(520px, 100%); padding: 20px 22px; border-radius: 18px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.obp__tit { margin: 0 0 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.obp ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.obp li { display: flex; gap: 10px; font-size: 14.5px; line-height: 1.45; color: var(--neutral-200); }
.obp li svg { flex: none; margin-top: 2px; color: var(--yellow); }
.obt { padding: 30px 30px 14px; border-radius: 26px; background: rgba(1, 29, 38, .62); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12), 0 60px 100px -50px rgba(0, 0, 0, .8); }
.obt__rot { display: flex; align-items: center; gap: 10px; margin: 0 0 22px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.obt__pulso { position: relative; width: 8px; height: 8px; border-radius: 50%; background: var(--yellow); }
.obt__pulso::after { content: ""; position: absolute; inset: -5px; border-radius: 50%; border: 1px solid var(--yellow); animation: obt-pulso 1.8s ease-out infinite; }
@keyframes obt-pulso { from { opacity: .9; transform: scale(.5); } to { opacity: 0; transform: scale(1.6); } }
.obt ol { margin: 0; padding: 0; list-style: none; }
.obt li { position: relative; display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 18px; padding-bottom: 24px; opacity: 0; translate: 0 14px; animation: obt-in .6s ease forwards; animation-delay: calc(1.1s + var(--d) * .25s); }
.obt li:not(:last-child)::before { content: ""; position: absolute; left: 22.5px; top: 50px; bottom: 4px; width: 1px; background: linear-gradient(var(--yellow), rgba(244, 182, 63, .1)); }
@keyframes obt-in { to { opacity: 1; translate: 0 0; } }
.obt__ic { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: rgba(244, 182, 63, .12); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); color: var(--yellow); }
.obt li:first-child .obt__ic { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.obt__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.obt__q { margin: 0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.obt h3 { margin: 0; font-weight: 500; font-size: 18px; line-height: 1.25; color: var(--neutral-000); }
.obt__tx > p:not(.obt__q) { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--neutral-300); }
.obt__quem { margin-top: 6px; padding: 4px 10px; border-radius: 99px; background: rgba(249, 250, 250, .07); font-size: 12px; color: var(--neutral-200); }
.obe { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.obe__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px 112px; display: flex; flex-direction: column; gap: 40px; }
.obe__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.obe h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.obe h2 .is-dim { color: var(--neutral-400); }
.obe__grade { display: grid; grid-template-columns: 1.35fr 1fr 1fr; gap: 16px; }
.obe__case, .obe__card { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 22px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); text-decoration: none; overflow: hidden; transition: box-shadow .3s, translate .3s; }
.obe__case { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%); color: var(--neutral-000); }
.obe__case:hover, .obe__card:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .45); }
.obe__img { width: 100%; aspect-ratio: 16 / 9; border-radius: 14px; overflow: hidden; margin-bottom: 8px; background: rgba(249, 250, 250, .06); }
.obe__img img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: scale .6s; }
.obe__img--p { aspect-ratio: 16 / 10; }
.obe__case:hover img, .obe__card:hover img { scale: 1.04; }
.obe__tag { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.obe__case .obe__tag { color: var(--yellow); }
.obe__case b, .obe__card b { font-weight: 400; font-size: 21px; line-height: 1.22; letter-spacing: -.01em; }
.obe__d { font-size: 14.5px; line-height: 1.5; color: var(--neutral-300); }
.obe__lk { margin-top: auto; padding-top: 8px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--blue-900); }
.obe__case .obe__lk { color: var(--yellow); }
.obe__lk .ico-arrow { color: #c98a12; }
.obe__case .obe__lk .ico-arrow { color: var(--yellow); }
.obe__vis { width: 100%; aspect-ratio: 16 / 10; margin-bottom: 8px; display: flex; flex-direction: column; justify-content: center; gap: 8px; padding: 18px; border-radius: 14px; background: #EEF1F2; }
.obe__vis i { align-self: flex-start; padding: 8px 14px; border-radius: 99px; background: #fff; font-style: normal; font-size: 13px; color: var(--neutral-700); box-shadow: 0 6px 16px -10px rgba(1, 29, 38, .4); }
.obe__vis i:nth-child(2) { align-self: center; background: var(--blue-900); color: var(--yellow); }
.obe__vis i:nth-child(3) { align-self: flex-end; background: var(--yellow); color: var(--blue-900); }
.obe__alba { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 18px 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.obe__av { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: var(--blue-900); color: var(--yellow); }
.obe__alba p { margin: 0; display: flex; flex-direction: column; gap: 2px; }
.obe__alba b { font-weight: 500; font-size: 16px; }
.obe__alba p span { font-size: 14px; color: var(--neutral-600); }
.obe__btn { display: inline-flex; align-items: center; gap: 10px; height: 46px; padding: 0 18px; border-radius: var(--radius-btn); background: var(--blue-900); color: var(--neutral-000); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.obe__btn .ico-arrow { color: var(--yellow); }
.obe__btn:hover { background: var(--yellow); color: var(--blue-900); }
.obe__btn:hover .ico-arrow { color: var(--blue-900); }
@media (max-width: 1100px) { .ob__in { grid-template-columns: minmax(0, 1fr); gap: 40px; padding: 120px 24px 72px; } .obe__in { padding: 72px 24px 88px; } .obe__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); } .obe__case { grid-column: 1 / -1; } }
@media (max-width: 640px) { .obt { padding: 24px 18px 6px; } .obe__grade { grid-template-columns: minmax(0, 1fr); } .obe__alba { grid-template-columns: auto minmax(0, 1fr); } .obe__btn { grid-column: 1 / -1; justify-content: center; } }
@media (prefers-reduced-motion: reduce) { .ob__ok circle, .ob__ok path { animation: none; stroke-dashoffset: 0; } .obt li { animation: none; opacity: 1; translate: 0 0; } .obt__pulso::after { animation: none; } }

/* ---------- Obrigado (material) ---------- */
.om { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.om__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: flex; flex-direction: column; gap: 36px; }
.om__grade { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; align-items: center; }
.om__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.om h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(40px, 4.8vw, 70px); line-height: 1.02; letter-spacing: -.02em; }
.om h1 .is-dim { color: var(--neutral-400); }
.om__lead { max-width: 440px; font-size: 18px; line-height: 1.5; color: var(--neutral-600); }
.om__mail { margin: 0; display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 12px; background: rgba(255, 255, 255, .7); box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); font-size: 14px; color: var(--neutral-700); }
.om__mail svg { color: #c98a12; flex: none; }
.omc { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 32px; align-items: start; padding: 30px; border-radius: 30px; background: #fff; box-shadow: 0 60px 100px -50px rgba(1, 29, 38, .5); }
.omc__capa { perspective: 900px; padding-top: 6px; }
.omc__livro { position: relative; aspect-ratio: 3 / 4.1; display: flex; flex-direction: column; padding: 18px 18px 18px 26px; border-radius: 6px 14px 14px 6px; overflow: hidden; background: var(--blue-900) radial-gradient(90% 60% at 100% 0%, rgba(18, 89, 124, .85), transparent 70%); color: var(--neutral-000); box-shadow: 24px 30px 40px -24px rgba(1, 29, 38, .7), inset 8px 0 0 rgba(0, 0, 0, .25), inset 10px 0 0 rgba(255, 255, 255, .06); transform: rotateY(-14deg) rotateZ(-2deg); transform-origin: left center; transition: transform .6s; }
.omc:hover .omc__livro { transform: rotateY(-4deg) rotateZ(0deg); }
.omc__marca { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.omc__cod { margin-top: 14px; font-weight: 200; font-size: 15px; letter-spacing: .1em; color: var(--yellow); }
.omc__tit { margin-top: auto; font-weight: 400; font-size: 21px; line-height: 1.12; letter-spacing: -.01em; }
.omc__arco { position: absolute; right: -44px; top: 70px; width: 140px; height: 140px; border-radius: 50%; border: 1px solid rgba(244, 182, 63, .45); }
.omc__info { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
.omc__meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--neutral-500); }
.omc__meta i { width: 4px; height: 4px; border-radius: 50%; background: var(--yellow); }
.omc__info h2 { margin: 0; font-weight: 400; font-size: 28px; line-height: 1.12; letter-spacing: -.015em; }
.omc__desc { margin: 0; font-size: 15.5px; line-height: 1.5; color: var(--neutral-600); }
.omc__rot { margin: 8px 0 0; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.omc__dentro { margin: 0 0 10px; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; width: 100%; }
.omc__dentro li { display: flex; gap: 10px; font-size: 14.5px; line-height: 1.4; color: var(--neutral-800); }
.omc__dentro svg { flex: none; margin-top: 1px; color: #c98a12; }
.omc__dica { margin: 8px 0 0; padding: 12px 14px; border-radius: 12px; background: #FFF7E6; font-size: 13.5px; line-height: 1.45; color: var(--neutral-700); }
.omc__dica b { font-weight: 500; color: var(--neutral-900); }
.omp { background: var(--neutral-100); color: var(--neutral-900); }
.omp__in { max-width: 1286px; margin: 0 auto; padding: 88px 40px 104px; display: flex; flex-direction: column; gap: 40px; }
.omp__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.omp h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.omp h2 .is-dim { color: var(--neutral-400); }
.omp__trilha { position: relative; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.omp__trilha > li > a, .omp__trilha > li > div { position: relative; height: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 24px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); text-decoration: none; transition: box-shadow .3s, translate .3s; }
.omp__trilha > li > a:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .35); }
.omp__n { position: absolute; top: 20px; right: 22px; font-weight: 200; font-size: 34px; line-height: 1; color: var(--neutral-200); }
.omp__img { width: calc(100% - 56px); aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; margin-bottom: 6px; }
.omp__img img { width: 100%; height: 100%; object-fit: cover; }
.omp__ic { width: 56px; height: 56px; display: grid; place-items: center; margin-bottom: 6px; border-radius: 16px; background: var(--blue-900); color: var(--yellow); }
.omp__tag { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.omp__trilha b { font-weight: 400; font-size: 20px; line-height: 1.25; letter-spacing: -.01em; }
.omp__d { font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
.omp__lk { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--blue-900); }
.omp__lk .ico-arrow { color: #c98a12; }
.omp__esc > div { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%) !important; color: var(--neutral-000); }
.omp__esc .omp__n { color: rgba(249, 250, 250, .25); }
.omp__esc .omp__tag { color: var(--yellow); margin-top: 66px; }
.omp__esc .omp__d { color: var(--neutral-300); }
.omp__ctas { margin-top: auto; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding-top: 10px; }
.omp__esc .omp__lk { margin: 0; padding: 0 18px; height: 46px; border-radius: var(--radius-btn); background: var(--yellow); color: var(--blue-900); }
.omp__esc .omp__lk .ico-arrow { color: var(--blue-900); }
.omp__lk2 { font-size: 14px; color: var(--neutral-200); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.omo__rot { margin: 0 0 14px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.omo ul { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.omo li[hidden] { display: none; }
.omo a { height: 100%; display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 16px; border-radius: 18px; background: rgba(255, 255, 255, .6); box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); text-decoration: none; transition: background-color .25s, box-shadow .25s; }
.omo a:hover { background: #fff; box-shadow: 0 0 0 2px var(--yellow); }
.omo__capa { width: 44px; height: 58px; display: flex; align-items: flex-end; padding: 6px; border-radius: 3px 7px 7px 3px; background: var(--blue-900); box-shadow: inset 3px 0 0 rgba(0, 0, 0, .3); }
.omo__capa i { font-style: normal; font-size: 9px; letter-spacing: .06em; color: var(--yellow); }
.omo__tx { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.omo__tx b { font-weight: 500; font-size: 14px; line-height: 1.3; }
.omo__tx span { font-size: 12.5px; line-height: 1.35; color: var(--neutral-600); }
.omo .ico-arrow { color: #c98a12; }
@media (max-width: 1100px) { .om__in { padding: 120px 24px 72px; } .om__grade { grid-template-columns: minmax(0, 1fr); gap: 32px; } .omp__in { padding: 72px 24px 88px; } .omp__trilha { grid-template-columns: minmax(0, 1fr); } .omo ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } .omp__esc .omp__tag { margin-top: 0; } }
@media (max-width: 640px) { .omc { grid-template-columns: minmax(0, 1fr); padding: 22px; } .omc__capa { width: 170px; } .omo ul { grid-template-columns: minmax(0, 1fr); } .omp__trilha b { padding-right: 40px; } }

/* ---------- Tabela e botão das páginas legais ---------- */
.lg__tab { margin: 6px 0 16px; border-radius: 16px; overflow: hidden; box-shadow: 0 0 0 1px var(--neutral-100); }
.lg__tr { display: grid; grid-template-columns: 1.1fr 2.2fr 1.1fr .9fr; gap: 14px; padding: 14px 18px; border-top: 1px solid var(--neutral-100); font-size: 14.5px; line-height: 1.5; color: var(--neutral-700); }
.lg__tr:first-child { border-top: 0; }
.lg__th { background: var(--neutral-100); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.lg__btn { display: inline-flex; align-items: center; height: 46px; padding: 0 20px; border: 0; border-radius: var(--radius-btn); background: var(--blue-900); color: var(--neutral-000); font: inherit; font-size: 13px; letter-spacing: .65px; text-transform: uppercase; cursor: pointer; }
.lg__btn:hover { background: var(--yellow); color: var(--blue-900); }
@media (max-width: 760px) {
  .lg__th { display: none; }
  .lg__tr { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .lg__tr span:nth-child(3)::before { content: "Base: "; color: var(--neutral-500); }
  .lg__tr span:nth-child(4)::before { content: "Pode desligar? "; color: var(--neutral-500); }
}
.pr__p[hidden], .pr__nav [hidden] { display: none !important; }
.pr__p legend { float: left; width: 100%; }
.pr__p legend + * { clear: both; }
.pr__dica { margin: 0; }
.btn--seta-escuro .btn__arrow { background: var(--blue-900); color: var(--yellow); }

/* ==========================================================================
   Institucionais: Sobre nós, Como fazemos, FAQ e Trabalhe com a gente
   ========================================================================== */
.ih { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.ih__media, .ih__veu { position: absolute; inset: 0; }
.ih__media video { width: 100%; height: 100%; object-fit: cover; }
.ih__veu { background: linear-gradient(90deg, rgba(1, 29, 38, .95) 0%, rgba(1, 29, 38, .8) 55%, rgba(1, 29, 38, .55) 100%), linear-gradient(0deg, rgba(1, 29, 38, .9), transparent 40%); }
.ih__in { position: relative; z-index: 1; max-width: 1286px; min-height: min(720px, 92vh); margin: 0 auto; padding: 160px 40px 72px; display: flex; flex-direction: column; justify-content: center; gap: 56px; }
.ih__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; max-width: 960px; }
.ih h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 5.2vw, 78px); line-height: 1.02; letter-spacing: -.025em; color: var(--neutral-000); }
.ih h1 .is-dim { color: var(--yellow); font-style: italic; }
.ih__lead { max-width: 600px; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.ih__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.ih__lk { font-size: 14px; letter-spacing: .04em; color: var(--neutral-100); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 6px; }
.ih__fatos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid rgba(249, 250, 250, .14); }
.ih__fatos li { display: flex; flex-direction: column; gap: 4px; padding: 22px 20px 0 0; }
.ih__fatos li + li { padding-left: 20px; border-left: 1px solid rgba(249, 250, 250, .14); }
.ih__fatos b { font-weight: 200; font-size: clamp(28px, 2.6vw, 40px); line-height: 1; color: var(--neutral-000); }
.ih__fatos span { font-size: 13.5px; color: var(--neutral-300); }

.is-cab { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 32px 64px; align-items: end; }
.is-cab > div { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.is-cab h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 54px); line-height: 1.04; letter-spacing: -.02em; }
.is-cab h2 .is-dim { color: var(--neutral-400); }
.is-cab__lead { margin: 0; font-size: 17px; line-height: 1.55; color: var(--neutral-600); }
[data-tema="escuro"] .is-cab h2 { color: var(--neutral-000); }
[data-tema="escuro"] .is-cab h2 .is-dim { color: var(--neutral-400); }
[data-tema="escuro"] .is-cab__lead { color: var(--neutral-300); }

/* Propósito */
.ipr { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.ipr__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.ipr__frase { margin: 0; max-width: 1100px; font-weight: 300; font-size: clamp(28px, 3.3vw, 48px); line-height: 1.18; letter-spacing: -.02em; color: var(--neutral-900); }
.ipr__fluxo { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 20px; align-items: stretch; }
.ipr__de, .ipr__para { padding: 24px 26px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.ipr__para { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%); color: var(--neutral-000); }
.ipr__fluxo p { margin: 0 0 14px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.ipr__para p { color: var(--yellow); }
.ipr__fluxo ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.ipr__fluxo li { padding: 9px 14px; border-radius: 99px; font-size: 14.5px; background: var(--neutral-100); color: var(--neutral-700); }
.ipr__para li { background: rgba(249, 250, 250, .1); color: var(--neutral-000); }
.ipr__seta { align-self: center; width: 52px; height: 52px; display: grid; place-items: center; border-radius: 50%; background: var(--yellow); color: var(--blue-900); }
.ipr__nota { max-width: 760px; font-size: 16px; line-height: 1.55; color: var(--neutral-600); }

/* História */
.ihs { background: var(--blue-900) radial-gradient(60% 50% at 100% 0%, rgba(18, 89, 124, .55), transparent 70%); color: var(--neutral-100); }
.ihs__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 56px; }
.ihs__linha { position: relative; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; }
.ihs__linha::before { content: ""; position: absolute; left: 0; right: 0; top: 13px; height: 1px; background: linear-gradient(90deg, var(--yellow), rgba(244, 182, 63, .15)); }
.ihs__linha li { position: relative; display: flex; flex-direction: column; gap: 18px; padding-top: 0; }
.ihs__ano { position: relative; align-self: flex-start; padding: 4px 12px; border-radius: 99px; background: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .6); font-weight: 400; font-size: 13px; letter-spacing: .06em; color: var(--yellow); }
.ihs__linha li:last-child .ihs__ano { background: var(--yellow); color: var(--blue-900); }
.ihs h3 { margin: 0 0 8px; font-weight: 400; font-size: 20px; line-height: 1.2; color: var(--neutral-000); }
.ihs p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--neutral-300); }

/* Liderança */
.ilid { background: var(--neutral-000); color: var(--neutral-900); }
.ilid__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px 56px; display: flex; flex-direction: column; gap: 48px; }
.ilid__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.ilid__c { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 28px; align-items: center; padding: 22px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 80px -60px rgba(1, 29, 38, .5); }
.ilid__foto { display: block; aspect-ratio: 1; border-radius: 20px; overflow: hidden; background: var(--neutral-100); }
.ilid__foto img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.15); }
.ilid__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.ilid h3 { margin: 0; font-weight: 400; font-size: 26px; letter-spacing: -.01em; }
.ilid__cargo { margin: 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #c98a12; }
.ilid__bio { margin: 4px 0 6px; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.ilid__link { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 99px; background: var(--neutral-100); font-size: 13px; color: var(--blue-900); }
.ilid__link:hover { background: var(--yellow); }

/* Valores */
.ival { background: var(--neutral-000); color: var(--neutral-900); }
.ival__in { max-width: 1286px; margin: 0 auto; padding: 56px 40px 112px; display: flex; flex-direction: column; gap: 40px; }
.ival__lista { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--neutral-100); }
.ival__lista li { display: grid; grid-template-columns: 80px minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: baseline; padding: 26px 0; border-bottom: 1px solid var(--neutral-100); transition: background-color .3s; }
.ival__lista li:hover { background: linear-gradient(90deg, rgba(244, 182, 63, .08), transparent 70%); }
.ival__lista b { font-weight: 300; font-size: 15px; color: #c98a12; }
.ival__lista h3 { margin: 0; font-weight: 400; font-size: clamp(20px, 2vw, 28px); line-height: 1.2; letter-spacing: -.01em; }
.ival__lista p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-600); }

/* Onde estamos */
.icid { background: var(--neutral-100); color: var(--neutral-900); }
.icid__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 64px; align-items: center; }
.icid__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.icid h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.icid h2 .is-dim { color: var(--neutral-400); }
.icid__txt p { margin: 0; font-size: 16.5px; line-height: 1.6; color: var(--neutral-600); }
.icid__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.icid__lista li { display: grid; grid-template-columns: 14px minmax(0, 1fr); gap: 2px 12px; align-items: center; padding: 18px 20px; border-radius: 18px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .05); }
.icid__lista i { grid-row: 1 / span 2; width: 10px; height: 10px; border-radius: 50%; background: var(--neutral-300); }
.icid__lista .is-forte { background: var(--blue-900); color: var(--neutral-000); }
.icid__lista .is-forte i { background: var(--yellow); box-shadow: 0 0 0 5px rgba(244, 182, 63, .2); }
.icid__lista b { font-weight: 500; font-size: 16px; }
.icid__lista small { font-weight: 400; font-size: 12px; color: var(--neutral-500); }
.icid__lista span { font-size: 13px; color: var(--neutral-600); }
.icid__lista .is-forte span, .icid__lista .is-forte small { color: var(--neutral-300); }

/* Clientes e próximos passos */
.icl { background: var(--neutral-000); color: var(--neutral-900); padding-bottom: 24px; }
.icl__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px 40px; }
.idu { background: var(--neutral-000); }
.idu__in { max-width: 1286px; margin: 0 auto; padding: 40px 40px 112px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.idu__c { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 32px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); color: var(--neutral-900); transition: translate .3s, box-shadow .3s; }
.idu__c:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .4); }
.idu__c--a { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%); color: var(--neutral-000); }
.idu__tag { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.idu__c--a .idu__tag { color: var(--yellow); }
.idu__c b { font-weight: 300; font-size: clamp(26px, 2.6vw, 36px); line-height: 1.1; letter-spacing: -.02em; }
.idu__c > span:not(.idu__tag):not(.idu__lk) { font-size: 15.5px; line-height: 1.5; color: var(--neutral-600); }
.idu__c--a > span:not(.idu__tag):not(.idu__lk) { color: var(--neutral-300); }
.idu__lk { margin-top: 14px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.idu__lk .ico-arrow { color: #c98a12; }
.idu__c--a .idu__lk .ico-arrow { color: var(--yellow); }

/* Como fazemos: quem faz o quê, frentes, CTA final */
.iqf { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.iqf__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.iqf__grade { display: grid; grid-template-columns: minmax(0, 1fr) 150px minmax(0, 1fr); align-items: stretch; }
.iqf__col { padding: 30px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.iqf__col--gente { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%); color: var(--neutral-000); }
.iqf__rot { margin: 0 0 20px; display: flex; align-items: center; gap: 10px; font-weight: 400; font-size: 22px; }
.iqf__rot svg { color: #c98a12; }
.iqf__col--gente .iqf__rot svg { color: var(--yellow); }
.iqf__col ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.iqf__col li { display: flex; gap: 12px; padding: 13px 0; border-top: 1px solid var(--neutral-100); font-size: 16px; }
.iqf__col--gente li { border-top-color: rgba(249, 250, 250, .12); }
.iqf__col li svg { flex: none; margin-top: 3px; color: #c98a12; }
.iqf__col--gente li svg { color: var(--yellow); }
.iqf__meio { position: relative; display: grid; place-items: center; }
.iqf__meio::before { content: ""; position: absolute; left: 12px; right: 12px; top: 50%; height: 1px; background: repeating-linear-gradient(90deg, var(--yellow) 0 6px, transparent 6px 12px); }
.iqf__meio span { position: relative; padding: 10px 14px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-size: 12px; text-align: center; line-height: 1.25; }
.ifr { background: var(--neutral-000); color: var(--neutral-900); }
.ifr__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.ifr__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.ifr__c { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 34px; border-radius: 28px; transition: translate .3s, box-shadow .3s; }
.ifr__c:hover { translate: 0 -4px; box-shadow: 0 40px 70px -40px rgba(1, 29, 38, .45); }
.ifr__c--sh { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .75), transparent 70%); color: var(--neutral-000); }
.ifr__c--ib { background: var(--yellow); color: var(--blue-900); }
.ifr__tag { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.ifr__c--ib .ifr__tag { color: var(--blue-900); opacity: .7; }
.ifr__c b { font-weight: 300; font-size: clamp(26px, 2.6vw, 38px); line-height: 1.08; letter-spacing: -.02em; }
.ifr__d { font-size: 15.5px; line-height: 1.55; color: var(--neutral-300); }
.ifr__c--ib .ifr__d { color: rgba(1, 29, 38, .78); }
.ifr__lk { margin-top: 12px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.ifim { background: var(--blue-900) url("../img/bg-scene-a.webp") center / cover no-repeat; color: var(--neutral-100); }
.ifim__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: end; }
.ifim h2 { margin: 0 0 14px; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(32px, 3.8vw, 56px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.ifim h2 .is-dim { color: var(--yellow); font-style: italic; }
.ifim p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.55; color: var(--neutral-300); }
.ifim__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.ifim__alba { font-size: 14px; color: var(--neutral-100); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 6px; }

/* FAQ */
.ifaq-hero .lg-hero__in { padding-bottom: 48px; }
.ifaq__busca { width: min(640px, 100%); display: flex; align-items: center; gap: 12px; padding: 0 18px; height: 58px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08), 0 30px 60px -40px rgba(1, 29, 38, .4); color: var(--neutral-500); }
.ifaq__busca:focus-within { box-shadow: 0 0 0 2px var(--yellow), 0 30px 60px -40px rgba(1, 29, 38, .4); }
.ifaq__busca input { flex: 1; min-width: 0; height: 100%; border: 0; background: none; outline: 0; font-size: 16px; color: var(--neutral-900); }
.ifaq__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ifaq__chips a { padding: 8px 14px; border-radius: 99px; background: rgba(255, 255, 255, .8); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font-size: 13.5px; color: var(--neutral-700); transition: background-color .2s; }
.ifaq__chips a:hover { background: var(--blue-900); color: var(--neutral-000); }
.ifaq__g { scroll-margin-top: 110px; margin-bottom: 48px; }
.ifaq__g[hidden] { display: none; }
.ifaq__g h2 { margin: 0 0 12px; font-weight: 400; font-size: 26px; letter-spacing: -.01em; color: var(--neutral-900); }
.ifq { border-bottom: 1px solid var(--neutral-100); }
.ifq[hidden] { display: none; }
.ifq summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 20px 0; cursor: pointer; font-size: 17.5px; line-height: 1.35; color: var(--neutral-900); }
.ifq summary::-webkit-details-marker { display: none; }
.ifq summary i { flex: none; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--neutral-100); color: var(--blue-900); transition: rotate .3s, background-color .3s; }
.ifq[open] summary i { rotate: 45deg; background: var(--yellow); }
.ifq summary:hover span { color: var(--blue-700); }
.ifq__r { padding: 0 54px 22px 0; }
.ifq__r p { margin: 0; font-size: 16px; line-height: 1.65; color: var(--neutral-600); }
.ifq__r a { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.ifaq__vazio { padding: 24px; border-radius: 18px; background: var(--neutral-100); font-size: 15px; }
.ifaq__vazio a { text-decoration: underline; text-decoration-color: var(--yellow); }

/* Trabalhe com a gente */
.itc { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.itc__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.itc__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.itc__grade li { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: translate .3s, box-shadow .3s; }
.itc__grade li:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .35); }
.itc__ic { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: 8px; border-radius: 16px; background: var(--blue-900); color: var(--yellow); }
.itc h3 { margin: 0; font-weight: 400; font-size: 21px; letter-spacing: -.01em; }
.itc li p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.iar { background: var(--blue-900) radial-gradient(60% 50% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%); color: var(--neutral-100); }
.iar__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 64px; align-items: start; }
.iar__txt { position: sticky; top: 120px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.iar h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.iar h2 .is-dim { color: var(--neutral-400); }
.iar__txt p { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--neutral-300); }
.iar__lista { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(249, 250, 250, .14); }
.iar__lista li { display: flex; flex-direction: column; gap: 4px; padding: 22px 0; border-bottom: 1px solid rgba(249, 250, 250, .14); transition: padding .3s; }
.iar__lista li:hover { padding-left: 12px; }
.iar__lista b { font-weight: 300; font-size: clamp(22px, 2.2vw, 30px); color: var(--neutral-000); }
.iar__lista li:hover b { color: var(--yellow); }
.iar__lista span { font-size: 14.5px; color: var(--neutral-300); }
.iva { background: var(--neutral-000); color: var(--neutral-900); }
.iva__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px 48px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 32px; }
.iva__vagas { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 32px; border-radius: 28px; background: var(--neutral-100); }
.iva__vagas h2 { margin: 0; font-weight: 300; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.15; letter-spacing: -.015em; }
.iva__vagas p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-600); }
.iva__link { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding: 10px 16px; border-radius: 99px; background: #fff; font-size: 13.5px; color: var(--blue-900); }
.iva__rot { margin: 0 0 16px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.iva__proc ol { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.iva__proc li { display: flex; flex-direction: column; gap: 6px; padding: 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .07); }
.iva__proc b { font-weight: 300; font-size: 26px; line-height: 1; color: #c98a12; }
.iva__proc h3 { margin: 6px 0 0; font-weight: 500; font-size: 17px; }
.iva__proc p { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
.ibt { background: var(--neutral-000); color: var(--neutral-900); }
.ibt__in { max-width: 1286px; margin: 0 auto; padding: 56px 40px 112px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 64px; align-items: start; }
.ibt__txt { position: sticky; top: 120px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.ibt h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.ibt h2 .is-dim { color: var(--neutral-400); }
.ibt__txt > p { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--neutral-600); }
.ibt__dicas { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.ibt__dicas li { display: flex; gap: 10px; font-size: 15px; color: var(--neutral-700); }
.ibt__dicas svg { flex: none; margin-top: 2px; color: #c98a12; }
.ibt__form { box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 100px -60px rgba(1, 29, 38, .5); }
.ibt__form input[type="file"] { padding: 12px; font-size: 14px; }

@media (max-width: 1100px) {
  .ih__in { padding: 130px 24px 56px; min-height: 0; gap: 40px; }
  .ih__fatos { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 20px; }
  .ih__fatos li:nth-child(3) { padding-left: 0; border-left: 0; }
  .is-cab { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .ipr__in, .ihs__in, .iqf__in, .ifr__in, .itc__in, .iar__in { padding: 80px 24px; }
  .ilid__in { padding: 80px 24px 40px; } .ival__in { padding: 40px 24px 80px; } .icid__in { padding: 80px 24px; grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .icl__in { padding: 80px 24px 32px; } .idu__in { padding: 32px 24px 80px; } .ifim__in { padding: 72px 24px; grid-template-columns: minmax(0, 1fr); align-items: start; }
  .ihs__linha { grid-template-columns: minmax(0, 1fr); gap: 28px; padding-left: 28px; }
  .ihs__linha::before { left: 6px; right: auto; top: 6px; bottom: 6px; width: 1px; height: auto; background: linear-gradient(var(--yellow), rgba(244, 182, 63, .15)); }
  .ihs__linha li::before { content: ""; position: absolute; left: -27px; top: 8px; width: 11px; height: 11px; border-radius: 50%; background: var(--yellow); }
  .ilid__grade, .ifr__grade, .idu__in { grid-template-columns: minmax(0, 1fr); }
  .iqf__grade { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .iqf__meio { height: 64px; } .iqf__meio::before { left: 50%; right: auto; top: 0; bottom: 0; width: 1px; height: auto; background: repeating-linear-gradient(180deg, var(--yellow) 0 6px, transparent 6px 12px); }
  .itc__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .iar__in, .iva__in, .ibt__in { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .iar__txt, .ibt__txt { position: static; }
  .iva__in { padding: 80px 24px 32px; } .ibt__in { padding: 32px 24px 80px; }
}
@media (max-width: 640px) {
  .ipr__fluxo { grid-template-columns: minmax(0, 1fr); }
  .ipr__seta { rotate: 90deg; justify-self: center; }
  .ilid__c { grid-template-columns: minmax(0, 1fr); }
  .ilid__foto { width: 140px; }
  .ival__lista li { grid-template-columns: 40px minmax(0, 1fr); }
  .ival__lista p { grid-column: 2; }
  .icid__lista, .itc__grade, .iva__proc ol { grid-template-columns: minmax(0, 1fr); }
  .ifq__r { padding-right: 0; }
  .ifq summary { font-size: 16.5px; }
}
.pr__bloco[hidden], .pr__faixas[hidden], .pr__faixas .fc[hidden] { display: none !important; }
.pr__bloco { display: flex; flex-direction: column; gap: 12px; padding: 18px 18px 20px; border-radius: 18px; background: #F5F7F8; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .06); }
.pr__bloco .pr__sub:first-child { margin-top: 0; }
.pr__sub em, .pr__faixas em { font-style: normal; font-size: 12px; color: var(--neutral-500); }
.pr__faixas { display: grid; gap: 12px; padding: 16px 18px; border-radius: 16px; background: #FFF7E6; }
.pr__nota { margin: 0; font-size: 13px; line-height: 1.45; color: var(--neutral-600); }

/* ==========================================================================
   v7.0: Sobre nós (refeito), Trabalhe com a gente (refeito), Perguntas frequentes com Alba
   ========================================================================== */
/* Hero do Sobre e do Trabalhe */
.sbh, .tlh { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.sbh .ih__media, .tlh .ih__media { position: absolute; inset: 0; }
.sbh__veu { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(1, 29, 38, .96) 0%, rgba(1, 29, 38, .82) 50%, rgba(1, 29, 38, .55) 100%), linear-gradient(0deg, rgba(1, 29, 38, .95), transparent 35%); }
.sbh__fantasma { position: absolute; right: -2vw; bottom: -6vw; margin: 0; font-weight: 200; font-size: clamp(200px, 30vw, 460px); line-height: .8; letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1px rgba(249, 250, 250, .12); pointer-events: none; }
.sbh__in, .tlh__in { position: relative; z-index: 1; max-width: 1286px; min-height: max(760px, 100vh); margin: 0 auto; padding: 150px 40px 80px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 56px; align-items: center; }
.sbh__txt, .tlh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.sbh h1, .tlh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(48px, 6.4vw, 104px); line-height: .98; letter-spacing: -.035em; color: var(--neutral-000); }
.sbh h1 em, .tlh h1 em { font-style: italic; color: var(--yellow); }
.sbh__lead { max-width: 600px; margin: 0; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.sbh__card, .tdia { padding: 28px 28px 22px; border-radius: 26px; background: rgba(1, 29, 38, .6); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12), 0 60px 100px -50px rgba(0, 0, 0, .8); }
.sbh__rot { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.sbh__card ol { position: relative; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 18px; }
.sbh__card ol::before { content: ""; position: absolute; left: 25px; top: 10px; bottom: 10px; width: 1px; background: linear-gradient(var(--yellow), rgba(244, 182, 63, .15)); }
.sbh__card li { position: relative; display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 16px; align-items: center; opacity: 0; translate: 0 12px; animation: obt-in .6s ease forwards; animation-delay: calc(.6s + var(--d) * .22s); }
.sbh__card b { justify-self: start; padding: 5px 9px; border-radius: 99px; background: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .6); font-weight: 400; font-size: 13px; color: var(--yellow); }
.sbh__card li:last-child b { background: var(--yellow); color: var(--blue-900); }
.sbh__card span { font-size: 15.5px; color: var(--neutral-000); }
.sbh__pe { margin: 22px 0 0; padding-top: 16px; border-top: 1px solid rgba(249, 250, 250, .12); font-size: 14px; font-style: italic; color: var(--yellow); }

/* História (rolagem guiada, 5 capítulos) */
.mt--hist.is-anim { height: calc(100vh + 5 * 80vh); }
.mt--hist .mtp__w { letter-spacing: -.05em; }
.hv { color: var(--neutral-000); }
.hv--1 { display: flex; flex-direction: column; gap: 6px; }
.hv__big { margin: 0; font-weight: 200; font-size: clamp(90px, 9vw, 150px); line-height: .9; color: var(--yellow); }
.hv__leg { margin: 0; font-size: 18px; color: var(--neutral-100); }
.hv--1 ul { margin: 14px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.hv--1 li, .hv--marcas li { padding: 10px 16px; border-radius: 99px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); font-size: 14px; }
.hv--marcas { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.hv--marcas li { text-align: center; padding: 18px; border-radius: 16px; font-size: 17px; opacity: clamp(.15, var(--e) * 3 - var(--d) * .35, 1); }
.hv--evo { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.hv--evo span { padding: 14px 20px; border-radius: 16px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); font-size: 16px; }
.hv--evo span.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; font-weight: 500; }
.hv--evo i { width: 1px; height: 26px; margin-left: 28px; background: var(--yellow); transform-origin: top; scale: 1 var(--e); }
.hv--rede { position: relative; height: 220px; }
.hv--rede svg { position: absolute; inset: 40px 30px; width: calc(100% - 60px); height: calc(100% - 80px); }
.hv--rede path { fill: none; stroke: var(--yellow); stroke-width: 1.5; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--e)); }
.hv__no { position: absolute; top: 50%; translate: 0 -50%; z-index: 1; padding: 14px 18px; border-radius: 16px; background: var(--yellow); color: var(--blue-900); font-weight: 500; font-size: 15px; }
.hv__no--a { left: 0; } .hv__no--b { right: 0; }
.hv--rede i { position: absolute; left: var(--x); top: var(--y); width: 10px; height: 10px; border-radius: 50%; background: rgba(249, 250, 250, .6); box-shadow: 0 0 0 6px rgba(249, 250, 250, .08); opacity: var(--e); }
.orb { position: relative; width: min(320px, 100%); aspect-ratio: 1; margin-inline: auto; color: var(--neutral-000); }
.orb svg { position: absolute; inset: 0; rotate: -90deg; }
.orb circle { fill: none; stroke: var(--yellow); stroke-width: 1.2; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--e, 1)); }
.orb__c { position: absolute; left: 50%; top: 50%; translate: -50% -50%; display: flex; flex-direction: column; align-items: center; padding: 18px 22px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); font-weight: 500; font-size: 16px; line-height: 1.1; }
.orb__c small { font-weight: 400; font-size: 11px; }
.orb > span { position: absolute; left: calc(50% + cos(var(--a) * (360deg / var(--n)) - 90deg) * 39%); top: calc(50% + sin(var(--a) * (360deg / var(--n)) - 90deg) * 39%); translate: -50% -50%; padding: 8px 14px; border-radius: 99px; background: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .25); font-size: 12.5px; white-space: nowrap; }

/* Liderança */
.ilds { background: var(--neutral-000); color: var(--neutral-900); }
.ilds__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 56px; }
.ilds__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.ild { position: relative; display: flex; flex-direction: column; border-radius: 32px; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); box-shadow: 0 60px 100px -60px rgba(1, 29, 38, .7); }
.ild__foto { position: relative; height: 380px; overflow: hidden; }
.ild__foto img { width: 100%; height: 100%; object-fit: cover; object-position: center 25%; filter: grayscale(.2) contrast(1.05); transition: scale .8s, filter .8s; }
.ild:hover .ild__foto img { scale: 1.04; filter: none; }
.ild__foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, var(--blue-900) 2%, rgba(1, 29, 38, 0) 55%); }
.ild__ano { position: absolute; z-index: 1; top: 20px; left: 20px; padding: 7px 12px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.ild__tx { position: relative; z-index: 1; margin-top: -70px; padding: 0 32px 32px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.ild__cargo { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.ild h3 { margin: 0; font-weight: 300; font-size: clamp(34px, 3.4vw, 48px); line-height: 1; letter-spacing: -.02em; color: var(--neutral-000); }
.ild__bio { margin: 6px 0 4px; font-size: 15.5px; line-height: 1.6; color: var(--neutral-300); }
.ild__marcos { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.ild__marcos li { padding: 7px 12px; border-radius: 99px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font-size: 13px; color: var(--neutral-100); }
.ild__in { margin-top: 8px; display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 99px; background: var(--neutral-000); font-size: 13px; color: var(--blue-900); }
.ild__in:hover { background: var(--yellow); }

/* Crenças: manifesto que acende na rolagem */
.ivm { background: var(--blue-900) radial-gradient(50% 40% at 100% 0%, rgba(18, 89, 124, .5), transparent 70%); color: var(--neutral-100); }
.ivm__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); gap: 64px; align-items: start; }
.ivm__cab { position: sticky; top: 140px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.ivm h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.ivm h2 .is-dim { color: var(--neutral-400); }
.ivm__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.ivm__lista li { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 6px 18px; padding: 34px 0; border-top: 1px solid rgba(249, 250, 250, .1); opacity: .28; transition: opacity .5s; }
.ivm__lista li.is-foco { opacity: 1; }
.ivm__lista b { grid-row: 1 / span 2; font-weight: 300; font-size: 15px; color: var(--yellow); padding-top: 12px; }
.ivm__lista h3 { margin: 0; font-weight: 300; font-size: clamp(28px, 3.2vw, 46px); line-height: 1.08; letter-spacing: -.02em; color: var(--neutral-000); }
.ivm__lista p { margin: 0; max-width: 560px; font-size: 16px; line-height: 1.55; color: var(--neutral-300); }

/* Onde estamos (com relógio) */
.icl2 { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.icl2__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 64px; align-items: center; }
.icl2__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.icl2 h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.icl2 h2 .is-dim { color: var(--neutral-400); }
.icl2__txt p { margin: 0; font-size: 16.5px; line-height: 1.6; color: var(--neutral-600); }
.icl2__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.icl2__lista li { display: flex; flex-direction: column; gap: 2px; padding: 20px 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .05); }
.icl2__lista .is-forte { grid-column: span 1; background: var(--blue-900); color: var(--neutral-000); }
.icl2__h { font-weight: 200; font-size: 38px; line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; color: var(--neutral-900); margin-bottom: 8px; }
.icl2__lista .is-forte .icl2__h { color: var(--yellow); }
.icl2__lista b { font-weight: 500; font-size: 16px; }
.icl2__lista small { font-weight: 400; font-size: 12px; color: var(--neutral-500); }
.icl2__lista span:last-child { font-size: 13px; color: var(--neutral-600); }
.icl2__lista .is-forte span:last-child, .icl2__lista .is-forte small { color: var(--neutral-300); }

/* Trabalhe com a gente */
.tlh__in { grid-template-columns: minmax(0, 1fr) minmax(0, 430px); }
.tlh h1 { font-size: clamp(40px, 5.2vw, 84px); }
.tlh__l1 { white-space: nowrap; }
.tdia ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.tdia li { display: grid; grid-template-columns: 50px auto; grid-template-rows: auto auto; gap: 4px 10px; align-items: center; padding: 12px 14px; border-radius: 14px; background: rgba(249, 250, 250, .05); opacity: 0; translate: 0 10px; animation: obt-in .5s ease forwards; animation-delay: calc(.6s + var(--d) * .45s); }
.tdia time { font-size: 13px; color: var(--neutral-300); font-variant-numeric: tabular-nums; }
.tdia__q { justify-self: start; padding: 3px 9px; border-radius: 99px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.tdia__q--ia { background: var(--yellow); color: var(--blue-900); }
.tdia__q--time { background: rgba(249, 250, 250, .14); color: var(--neutral-000); }
.tdia__q--você { background: var(--neutral-000); color: var(--blue-900); }
.tdia li p { grid-column: 1 / -1; margin: 0; font-size: 14px; line-height: 1.45; color: var(--neutral-100); }
.tbt { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.tbt__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.tbt__grade { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: minmax(230px, auto); gap: 16px; }
.tb { position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: 8px; padding: 28px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); overflow: hidden; transition: translate .35s, box-shadow .35s; }
.tb:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .35); }
.tb h3 { margin: 0; font-weight: 400; font-size: 22px; line-height: 1.2; letter-spacing: -.01em; }
.tb p:not(.tb__big) { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.tb__big { margin: 0 0 auto; font-weight: 200; font-size: clamp(72px, 7vw, 120px); line-height: .9; letter-spacing: -.04em; color: var(--blue-900); }
.tb--a { grid-column: span 2; background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%); color: var(--neutral-000); }
.tb--a .tb__big { color: var(--yellow); }
.tb--a p:not(.tb__big) { color: var(--neutral-300); }
.tb--ia { grid-column: span 2; grid-row: span 2; background: var(--blue-900); color: var(--neutral-000); }
.tb--ia p:not(.tb__big) { color: var(--neutral-300); }
.tb__orb { flex: 1; display: grid; place-items: center; padding: 10px 0 18px; }
.tb--zero .tb__big { color: #c98a12; }
.tb--logos { grid-column: span 2; justify-content: space-between; }
.tb__logos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px 18px; align-items: center; }
.tb__logos img { width: 100%; height: 34px; object-fit: contain; filter: brightness(0) opacity(.55); }
.tb--um { background: var(--yellow); }
.tb--um .tb__big { color: var(--blue-900); }
.tb--um p:not(.tb__big) { color: rgba(1, 29, 38, .75); }
.tpj { background: var(--blue-900); color: var(--neutral-100); padding: 104px 0 112px; overflow: hidden; }
.tpj__cab { max-width: 1286px; margin: 0 auto 48px; padding: 0 40px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.tpj h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.tpj h2 .is-dim { color: var(--neutral-400); }
.tpj__trilho ul { margin: 0; padding: 0; list-style: none; display: flex; gap: 20px; width: max-content; animation: tpj-rola 60s linear infinite; }
.tpj__trilho:hover ul { animation-play-state: paused; }
@keyframes tpj-rola { to { translate: -50% 0; } }
.tpj__trilho li { position: relative; width: 460px; flex: none; border-radius: 18px; overflow: hidden; box-shadow: 0 0 0 1px rgba(249, 250, 250, .12); }
.tpj__trilho img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
.tpj__trilho span { position: absolute; left: 14px; bottom: 14px; padding: 7px 12px; border-radius: 99px; background: rgba(1, 29, 38, .8); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); font-size: 13px; color: var(--neutral-000); }
.tvs { background: var(--neutral-000); color: var(--neutral-900); }
.tvs__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px 56px; display: flex; flex-direction: column; gap: 36px; }
.tvs__cab { display: flex; flex-direction: column; gap: 28px; }
.tvs__filtro { display: flex; flex-wrap: wrap; gap: 8px; }
.tvs__filtro button { padding: 10px 16px; border: 0; border-radius: 99px; background: #F2F4F5; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font: inherit; font-size: 14px; color: var(--neutral-700); cursor: pointer; }
.tvs__filtro button.is-on { background: var(--blue-900); color: var(--neutral-000); box-shadow: none; }
.tvs__lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
.tvg { border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .07); transition: box-shadow .25s; }
.tvg[hidden] { display: none; }
.tvg:hover, .tvg[open] { box-shadow: 0 0 0 2px var(--yellow); }
.tvg summary { list-style: none; display: grid; grid-template-columns: minmax(0, 1fr) auto 34px; grid-template-rows: auto auto; gap: 4px 14px; align-items: center; padding: 20px 22px; cursor: pointer; }
.tvg summary::-webkit-details-marker { display: none; }
.tvg__a { grid-column: 1; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.tvg summary b { grid-column: 1; font-weight: 400; font-size: 19px; }
.tvg__n { grid-column: 2; grid-row: 1 / span 2; padding: 6px 12px; border-radius: 99px; background: var(--neutral-100); font-size: 13px; color: var(--blue-900); white-space: nowrap; }
.tvg summary i { grid-column: 3; grid-row: 1 / span 2; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--neutral-100); color: var(--blue-900); transition: rotate .3s, background-color .3s; }
.tvg[open] summary i { rotate: 45deg; background: var(--yellow); }
.tvg__r { padding: 0 22px 22px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.tvg__rot { margin: 0; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.tvg__r ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.tvg__r li { display: flex; gap: 10px; font-size: 15px; color: var(--neutral-700); }
.tvg__r li svg { flex: none; margin-top: 2px; color: #c98a12; }
.tvg__btn { margin-top: 6px; display: inline-flex; align-items: center; gap: 10px; height: 44px; padding: 0 16px; border-radius: var(--radius-btn); background: var(--blue-900); color: var(--neutral-000); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.tvg__btn .ico-arrow { color: var(--yellow); }
.tvs__proc { margin: 24px 0 0; padding: 26px 0 0; list-style: none; border-top: 1px solid var(--neutral-100); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.tvs__proc b { font-weight: 300; font-size: 26px; color: #c98a12; }
.tvs__proc h3 { margin: 6px 0 4px; font-weight: 500; font-size: 17px; }
.tvs__proc p { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }

/* Perguntas frequentes: busca + Alba */
.ifaq__h1 { display: flex; flex-direction: column; }
.ifaq__busca { padding-right: 6px; }
.ifaq__lupa { display: grid; color: var(--neutral-500); }
.ifaq__ir { flex: none; height: 46px; padding: 0 18px; border: 0; border-radius: 12px; background: var(--blue-900); color: var(--neutral-000); font: inherit; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.ifaq__ir:hover { background: var(--yellow); color: var(--blue-900); }
.ifaq__alba { width: min(760px, 100%); display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 16px; padding: 20px 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .07), 0 30px 60px -40px rgba(1, 29, 38, .4); animation: obt-in .4s ease both; }
.ifaq__alba[hidden] { display: none; }
.ifaq__alba.is-forte { background: var(--blue-900); color: var(--neutral-000); }
.ifaq__av { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: var(--blue-900); color: var(--yellow); }
.ifaq__alba.is-forte .ifaq__av { background: var(--yellow); color: var(--blue-900); }
.ifaq__quem { margin: 0 0 6px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.ifaq__alba.is-forte .ifaq__quem { color: var(--yellow); }
.ifaq__resp > p:not(.ifaq__quem) { margin: 0; font-size: 16px; line-height: 1.55; }
.ifaq__acoes { margin-top: 14px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.ifaq__acoes button { height: 42px; padding: 0 16px; border: 0; border-radius: 12px; background: var(--yellow); color: var(--blue-900); font: inherit; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.ifaq__acoes a { font-size: 14px; text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.ifaq__cont { margin: 0 0 24px; font-size: 14px; color: var(--neutral-500); }
.ifaq__cont[hidden] { display: none; }

@media (max-width: 1100px) {
  .sbh__in, .tlh__in { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 130px 24px 64px; gap: 40px; }
  .tlh__l1 { white-space: normal; }
  .ilds__in, .ivm__in, .icl2__in, .tbt__in, .tvs__in { padding: 80px 24px; }
  .ilds__grade, .tvs__lista { grid-template-columns: minmax(0, 1fr); }
  .ivm__in, .icl2__in { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .ivm__cab { position: static; }
  .tbt__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tb--ia { grid-row: span 1; }
  .tvs__proc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tpj__cab { padding: 0 24px; } .tpj__trilho li { width: 320px; }
}
@media (max-width: 640px) {
  .ild__foto { height: 300px; } .ild__tx { padding: 0 22px 24px; }
  .icl2__lista, .tbt__grade, .tvs__proc { grid-template-columns: minmax(0, 1fr); }
  .tb--a, .tb--ia, .tb--logos { grid-column: auto; }
  .tvg summary { grid-template-columns: minmax(0, 1fr) 34px; }
  .tvg__n { grid-column: 1; grid-row: auto; justify-self: start; }
  .tvg summary i { grid-column: 2; grid-row: 1 / span 3; }
  .ifaq__busca { height: auto; flex-wrap: wrap; padding: 10px 12px; }
  .ifaq__busca input { height: 40px; }
  .ifaq__ir { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .sbh__card li, .tdia li { animation: none; opacity: 1; translate: 0 0; } .tpj__trilho ul { animation: none; } }
.mt--hist .orb { width: min(250px, 100%); }
.mt--hist.is-anim .mtp__w { font-size: clamp(80px, min(12vw, 17vh), 180px); }
.tlh__in { grid-template-columns: minmax(0, 1fr) minmax(0, 470px); grid-template-areas: "topo topo" "txt dia"; align-content: center; row-gap: 44px; }
.tlh__topo { grid-area: topo; display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.tlh__txt { grid-area: txt; align-self: start; }
.tlh .tdia { grid-area: dia; }
.tlh h1 { font-size: clamp(40px, 5.6vw, 92px); }
.tpj__trilho li { width: 400px; }
@media (max-width: 1100px) { .tlh__in { grid-template-columns: minmax(0, 1fr); grid-template-areas: "topo" "txt" "dia"; } }
.orb__c { width: 96px; height: 96px; padding: 0; justify-content: center; text-align: center; }

/* ==========================================================================
   Bloco 1: modelo "serviço" (sv*) e frente Inbound Marketing B2B (ib*)
   ========================================================================== */
.svh { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.svh .ih__media { position: absolute; inset: 0; }
.svh__in { position: relative; z-index: 1; max-width: 1286px; min-height: max(720px, 100vh); margin: 0 auto; padding: 150px 40px 80px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: 56px; align-items: center; }
.svh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.svh__meta { margin: 0; display: flex; align-items: center; gap: 12px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.svh__ic { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: rgba(244, 182, 63, .14); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .4); color: var(--yellow); }
.svh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(42px, 5.2vw, 82px); line-height: 1; letter-spacing: -.03em; color: var(--neutral-000); }
.svh h1 em { font-style: italic; color: var(--yellow); }
.svh__lead { max-width: 580px; margin: 0; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.svh__ok { margin: 4px 0 0; padding: 18px 0 0; list-style: none; display: flex; flex-wrap: wrap; gap: 10px 22px; border-top: 1px solid rgba(249, 250, 250, .14); }
.svh__ok li { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--neutral-100); }
.svh__ok svg { color: var(--yellow); }
.svh--ib { background: radial-gradient(50% 60% at 20% 0%, rgba(255, 255, 255, .35), transparent 70%), radial-gradient(40% 50% at 100% 100%, rgba(1, 29, 38, .14), transparent 70%), var(--yellow); color: var(--neutral-900); }
.svh--ib .svh__meta { color: rgba(1, 29, 38, .7); }
.svh--ib .svh__ic { background: var(--blue-900); color: var(--yellow); box-shadow: none; }
.svh--ib h1 { color: var(--neutral-900); font-weight: 300; }
.svh--ib h1 em { color: var(--blue-900); }
.svh--ib .svh__lead { color: rgba(1, 29, 38, .8); }
.svh--ib .svh__ok { border-top-color: rgba(1, 29, 38, .2); }
.svh--ib .svh__ok li { color: var(--neutral-900); }
.svh--ib .svh__ok svg { color: var(--blue-900); }
.svh--ib .ih__lk, .ibh .ih__lk { color: var(--neutral-900); text-decoration-color: var(--blue-900); }
.svh--ib .migalha a, .ibh .migalha a { color: rgba(1, 29, 38, .65); }
.svh--ib .migalha [aria-current], .ibh .migalha [aria-current] { color: var(--neutral-900); }
.svh--ib .migalha, .ibh .migalha { color: rgba(1, 29, 38, .45); }
/* visuais do hero */
.svv--sites { position: relative; }
.svv--sites .ofv { transform: perspective(1400px) rotateY(-8deg); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(249, 250, 250, .14); }
.svv__aneis { position: absolute; left: -36px; bottom: -28px; margin: 0; padding: 14px 16px; list-style: none; display: grid; grid-template-columns: repeat(2, auto); gap: 10px 18px; border-radius: 18px; background: rgba(1, 29, 38, .85); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .8); }
.svv__aneis li { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--neutral-000); }
.svv__aneis svg { width: 26px; height: 26px; rotate: -90deg; }
.svv__aneis circle { fill: none; stroke: var(--yellow); stroke-width: 3; stroke-dasharray: 1; stroke-dashoffset: 1; animation: ob-traco 1.2s ease forwards; animation-delay: calc(.8s + var(--d) * .25s); }
.svv--pauta { padding: 26px; border-radius: 26px; background: var(--blue-900); color: var(--neutral-100); box-shadow: 0 60px 100px -50px rgba(60, 40, 0, .7); }
.svv__rot { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.svv--pauta ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.svv--pauta li { display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-rows: auto auto; gap: 2px 12px; align-items: center; padding: 13px 15px; border-radius: 14px; background: rgba(249, 250, 250, .05); opacity: 0; translate: 0 10px; animation: obt-in .5s ease forwards; animation-delay: calc(.5s + var(--d) * .4s); }
.svp2__q { grid-row: 1 / span 2; padding: 4px 10px; border-radius: 99px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.svp2__q--ia { background: var(--yellow); color: var(--blue-900); }
.svp2__q--pessoa { background: var(--neutral-000); color: var(--blue-900); }
.svp2__q--noar { background: #3ecf8e; color: var(--blue-900); }
.svv--pauta b { font-weight: 500; font-size: 15px; color: var(--neutral-000); }
.svv--pauta small { font-size: 12.5px; color: var(--neutral-300); }
.svv__pe { margin: 16px 0 0; font-size: 13.5px; font-style: italic; color: var(--yellow); }
/* Quando faz sentido */
.svq { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.svq__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.svq__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.svq__grade li { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: translate .3s, box-shadow .3s; }
.svq__grade li:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .35); }
.svq__ic { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: 8px; border-radius: 16px; background: var(--blue-900); color: var(--yellow); }
.svq--ib .svq__ic { background: var(--yellow); color: var(--blue-900); }
.svq h3 { margin: 0; font-weight: 400; font-size: 21px; letter-spacing: -.01em; }
.svq__grade p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
/* O que entregamos */
.sve { background: var(--neutral-000); color: var(--neutral-900); }
.sve__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 64px; align-items: start; }
.sve__cab { position: sticky; top: 130px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.sve h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.sve h2 .is-dim { color: var(--neutral-400); }
.sve__cab > p { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--neutral-600); }
.sve__lista { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--neutral-100); }
.sve__lista li { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 16px; padding: 28px 0; border-bottom: 1px solid var(--neutral-100); transition: padding .3s, background-color .3s; }
.sve__lista li:hover { padding-left: 14px; background: linear-gradient(90deg, rgba(244, 182, 63, .1), transparent 70%); }
.sve__lista b { font-weight: 200; font-size: 34px; line-height: 1; color: #c98a12; }
.sve h3 { margin: 0 0 6px; font-weight: 400; font-size: clamp(21px, 2vw, 27px); letter-spacing: -.01em; }
.sve__lista p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-600); }
/* Como fazemos: trilha com duas faixas */
.svm { background: var(--blue-900) radial-gradient(50% 40% at 100% 0%, rgba(18, 89, 124, .55), transparent 70%); color: var(--neutral-100); overflow: hidden; }
.svm__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.svm__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.svm h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.svm h2 .is-dim { color: var(--neutral-400); }
.svm__trilha { position: relative; padding-left: 92px; }
.svm__lane { position: absolute; left: 0; margin: 0; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.svm__lane--p { top: 128px; color: var(--neutral-000); }
.svm__lane--ia { top: 232px; color: var(--yellow); }
.svm__trilha ol { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.svm__trilha li { position: relative; display: flex; flex-direction: column; gap: 10px; }
.svm__trilha li::before { content: ""; position: absolute; left: 0; right: -12px; top: 18px; height: 1px; background: rgba(249, 250, 250, .2); }
.svm__trilha li:last-child::before { right: 0; }
.svm__n { position: relative; align-self: flex-start; margin: 0; padding: 8px 12px; border-radius: 99px; background: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .6); font-size: 13px; color: var(--yellow); }
.svm__trilha h3 { margin: 6px 0 4px; min-height: 2.4em; font-weight: 400; font-size: 18px; line-height: 1.2; color: var(--neutral-000); }
.svm__p, .svm__ia { margin: 0; min-height: 92px; padding: 14px; border-radius: 14px; font-size: 13.5px; line-height: 1.45; }
.svm__p span, .svm__ia span { display: none; }
.svm__p { background: rgba(249, 250, 250, .07); color: var(--neutral-100); }
.svm__ia { background: rgba(244, 182, 63, .12); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .3); color: var(--neutral-100); }
.svm--ib { background: var(--blue-900) radial-gradient(50% 40% at 0% 100%, rgba(244, 182, 63, .18), transparent 70%); }
/* Padrão mínimo */
.svpad { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.svpad__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 64px; align-items: center; }
.svpad__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.svpad h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.svpad h2 .is-dim { color: var(--neutral-400); }
.svpad__cab > p { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--neutral-600); }
.svpad__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.svpad__lista li { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 14px; align-items: center; padding: 18px 20px; border-radius: 18px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.svpad__lista svg { width: 40px; height: 40px; rotate: -90deg; }
.svpad__lista circle { fill: none; stroke: var(--neutral-100); stroke-width: 2.5; }
.svpad__lista path { fill: none; stroke: #c98a12; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; rotate: 90deg; transform-origin: center; stroke-dasharray: 1; stroke-dashoffset: 1; }
.svpad__lista.is-on circle { stroke: var(--yellow); stroke-dasharray: 1; stroke-dashoffset: 1; animation: ob-traco .9s ease forwards; animation-delay: calc(var(--d) * .12s); }
.svpad__lista.is-on path { animation: ob-traco .5s ease forwards; animation-delay: calc(.6s + var(--d) * .12s); }
.svpad__lista li > div { display: flex; flex-direction: column; gap: 2px; }
.svpad__lista b { font-weight: 500; font-size: 16px; }
.svpad__lista span { font-size: 13.5px; line-height: 1.45; color: var(--neutral-600); }
/* Prova */
.svc { background: var(--neutral-000); color: var(--neutral-900); }
.svc__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.svc__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.svc__c { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 30px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.svc__c--0 { background: var(--blue-900) radial-gradient(80% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%); color: var(--neutral-000); }
.svc__c--1 { background: var(--yellow); }
.svc__quem { margin: 0 0 6px; min-height: 40px; display: flex; align-items: center; }
.svc__quem img { height: 30px; width: auto; }
.svc__c--0 .svc__quem img { filter: brightness(0) invert(1); }
.svc__big { margin: 8px 0 0; font-weight: 200; font-size: clamp(54px, 5vw, 80px); line-height: .95; letter-spacing: -.03em; color: var(--blue-900); }
.svc__c--0 .svc__big { color: var(--yellow); }
.svc__c h3 { margin: 6px 0 0; font-weight: 400; font-size: 21px; line-height: 1.2; }
.svc__c p:not(.svc__big):not(.svc__quem) { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.svc__c--0 p:not(.svc__big):not(.svc__quem) { color: var(--neutral-300); }
.svc__c--1 p:not(.svc__big):not(.svc__quem) { color: rgba(1, 29, 38, .75); }
.svc__c ul { margin: auto 0 0; padding: 10px 0 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.svc__c li { padding: 5px 11px; border-radius: 99px; box-shadow: inset 0 0 0 1px currentColor; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; opacity: .75; }
.svc__mock { margin: 0; border-radius: 24px; overflow: hidden; background: #e9eaeb; }
.svc__mock img { width: 100%; height: auto; }
/* FAQ do serviço */
.svf { background: var(--neutral-100); color: var(--neutral-900); }
.svf__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 64px; align-items: start; }
.svf__cab { position: sticky; top: 130px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.svf h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.svf h2 .is-dim { color: var(--neutral-400); }
.svf__cab > p { margin: 0; font-size: 16px; color: var(--neutral-600); }
.svf__alba { display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 18px; border-radius: var(--radius-btn); background: var(--blue-900); color: var(--neutral-000); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.svf__alba svg { color: var(--yellow); }
.svf__alba:hover { background: var(--yellow); color: var(--blue-900); }
.svf__alba:hover svg { color: var(--blue-900); }
.svf__lista { border-top: 1px solid rgba(34, 37, 38, .12); }
.svf .ifq { border-bottom-color: rgba(34, 37, 38, .12); }
.svf .ifq summary i { background: #fff; }
/* Outras soluções */
.svr { background: var(--neutral-000); color: var(--neutral-900); }
.svr__in { max-width: 1286px; margin: 0 auto; padding: 72px 40px; }
.svr__rot { margin: 0 0 18px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.svr__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.svr__lista a { height: 100%; display: grid; grid-template-columns: auto 34px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 16px 18px; border-radius: 18px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .07); transition: box-shadow .25s, translate .25s; }
.svr__lista a:hover { box-shadow: 0 0 0 2px var(--yellow); translate: 0 -2px; }
.svr__n { font-size: 12px; color: #c98a12; }
.svr__ic { color: var(--blue-900); display: grid; }
.svr__lista b { font-weight: 500; font-size: 15px; line-height: 1.3; }
.svr__lista .ico-arrow { color: #c98a12; }
/* Frente Inbound: hero amarelo com resposta de IA */
.ibh { position: relative; overflow: hidden; background: radial-gradient(50% 60% at 20% 0%, rgba(255, 255, 255, .35), transparent 70%), radial-gradient(40% 50% at 100% 100%, rgba(1, 29, 38, .14), transparent 70%), var(--yellow); color: var(--neutral-900); }
.ibh__fantasma { position: absolute; right: -2vw; bottom: -5vw; margin: 0; font-weight: 200; font-size: clamp(220px, 32vw, 500px); line-height: .8; letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1px rgba(1, 29, 38, .12); pointer-events: none; }
.ibh__in { position: relative; z-index: 1; max-width: 1286px; min-height: max(760px, 100vh); margin: 0 auto; padding: 150px 40px 80px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 500px); gap: 56px; align-items: center; }
.ibh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.ibh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(42px, 5.2vw, 84px); line-height: 1; letter-spacing: -.03em; color: var(--neutral-900); }
.ibh h1 em { font-style: italic; color: var(--blue-900); font-weight: 200; }
.ibh__lead { max-width: 600px; margin: 0; font-size: 18px; line-height: 1.55; color: rgba(1, 29, 38, .8); }
.ibh .svh__ok { border-top-color: rgba(1, 29, 38, .2); }
.ibh .svh__ok li { color: var(--neutral-900); }
.ibh .svh__ok svg { color: var(--blue-900); }
.svv--ia { position: relative; display: flex; flex-direction: column; gap: 12px; }
.svia__q { align-self: flex-end; max-width: 86%; margin: 0; padding: 14px 16px; border-radius: 18px 18px 4px 18px; background: var(--blue-900); color: var(--neutral-000); font-size: 15px; line-height: 1.45; animation: obt-in .5s ease both .3s; }
.svia__q span, .svia__quem { display: block; margin-bottom: 4px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.svia__a { padding: 18px 20px; border-radius: 18px 18px 18px 4px; background: #fff; box-shadow: 0 40px 70px -40px rgba(60, 40, 0, .6); font-size: 15px; line-height: 1.5; animation: obt-in .5s ease both 1s; }
.svia__quem { display: flex; align-items: center; gap: 8px; color: #c98a12; }
.svia__orb { width: 14px; height: 14px; border-radius: 50%; background: conic-gradient(var(--yellow), var(--blue-700), var(--yellow)); }
.svia__a p { margin: 0 0 8px; }
.svia__a ol { margin: 0; padding: 0 0 0 18px; display: flex; flex-direction: column; gap: 8px; }
.svia__a li span { display: block; font-size: 13.5px; color: var(--neutral-600); }
.svia__voce { padding: 1px 6px; border-radius: 6px; background: rgba(244, 182, 63, .35); }
.svia__fonte { font-style: normal; padding: 2px 8px; border-radius: 99px; background: var(--neutral-100); font-size: 12px; color: var(--blue-900); white-space: nowrap; }
.svia__lead { display: flex; align-items: center; gap: 12px; align-self: flex-start; padding: 12px 16px; border-radius: 16px; background: var(--blue-900); color: var(--neutral-000); animation: obt-in .5s ease both 2s; }
.svia__ok { width: 12px; height: 12px; border-radius: 50%; background: #3ecf8e; box-shadow: 0 0 0 5px rgba(62, 207, 142, .2); }
.svia__lead p { margin: 0; display: flex; flex-direction: column; }
.svia__lead b { font-weight: 500; font-size: 14px; }
.svia__lead span { font-size: 12.5px; color: var(--neutral-300); }
.svia__aviso { margin: 0; align-self: flex-end; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: rgba(1, 29, 38, .55); }
.hz--so-ib .hz__g--ib { padding-right: max(40px, calc((100vw - 1286px) / 2)); }
.hz--so-ib .hz__barra { display: none; }
.hz--so-ib .hz__abre { width: min(700px, 80vw); }
/* Extensão do time */
.ibc { background: var(--blue-900) radial-gradient(50% 40% at 100% 0%, rgba(244, 182, 63, .14), transparent 70%); color: var(--neutral-100); }
.ibc__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 64px; align-items: start; }
.ibc__cab { position: sticky; top: 130px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.ibc h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.ibc h2 .is-dim { color: var(--neutral-400); }
.ibc__cab > p { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--neutral-300); }
.ibc__rot { margin: 0 0 12px; display: grid; grid-template-columns: 1fr 40px 1fr; gap: 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.ibc__rot span:last-child { grid-column: 3; color: var(--yellow); }
.ibc__tab ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.ibc__tab li { display: grid; grid-template-columns: 1fr 40px 1fr; gap: 12px; align-items: center; }
.ibc__de { padding: 16px 18px; border-radius: 16px; background: rgba(249, 250, 250, .04); color: var(--neutral-400); text-decoration: line-through; text-decoration-color: rgba(226, 102, 90, .7); font-size: 15px; }
.ibc__seta { display: grid; place-items: center; color: var(--yellow); }
.ibc__para { padding: 16px 18px; border-radius: 16px; background: var(--yellow); color: var(--blue-900); font-weight: 500; font-size: 15px; }
/* cases e método (variações) */
.mt--ib.is-anim { height: calc(100vh + 4 * 80vh); }
.mt--ib .mtp__f { color: var(--yellow); }
.hv--cal { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; }
.hv--cal i { aspect-ratio: 1; border-radius: 8px; background: rgba(249, 250, 250, .07); opacity: clamp(.2, var(--e) * 3 - var(--d) * .08, 1); }
.hv--cal i.is-on { background: var(--yellow); }
.hv--cal p { grid-column: 1 / -1; margin: 8px 0 0; font-size: 14px; color: var(--neutral-300); }
.hv--funil { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.hv--funil span { width: calc(var(--w) * var(--e)); min-width: 40%; padding: 14px; border-radius: 12px; text-align: center; background: rgba(249, 250, 250, .08); font-size: 14px; transition: width .2s; }
.hv--funil span.is-on { background: var(--yellow); color: var(--blue-900); font-weight: 500; }
.hv--barras { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); align-items: end; gap: 10px; height: 220px; }
.hv--barras i { height: calc(var(--h) * 100% * var(--e)); border-radius: 8px 8px 0 0; background: linear-gradient(var(--yellow), rgba(244, 182, 63, .3)); }
.hv--barras p { grid-column: 1 / -1; margin: 6px 0 0; font-size: 14px; color: var(--neutral-300); }
/* Materiais */
.ibm { background: #F7F8F8 url("../img/bg-como-fazemos-claro.webp") center / cover no-repeat; color: var(--neutral-900); }
.ibm__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 44px; }
.ibm__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.ibm__c { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 26px; align-items: center; padding: 26px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: translate .3s, box-shadow .3s; }
.ibm__c:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -40px rgba(1, 29, 38, .35); }
.ibm__capa { aspect-ratio: 3 / 4.1; display: flex; flex-direction: column; padding: 14px 14px 14px 20px; border-radius: 4px 12px 12px 4px; background: var(--blue-900) radial-gradient(90% 60% at 100% 0%, rgba(18, 89, 124, .85), transparent 70%); color: var(--neutral-000); box-shadow: 18px 22px 30px -18px rgba(1, 29, 38, .7), inset 6px 0 0 rgba(0, 0, 0, .25); transform: rotate(-3deg); transition: transform .4s; }
.ibm__c:hover .ibm__capa { transform: rotate(0); }
.ibm__capa span { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.ibm__capa b { margin-top: 10px; font-weight: 200; font-size: 13px; color: var(--yellow); letter-spacing: .1em; }
.ibm__capa i { margin-top: auto; font-style: normal; font-size: 15px; line-height: 1.15; }
.ibm__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.ibm__tag { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.ibm__tx b { font-weight: 400; font-size: 22px; line-height: 1.2; }
.ibm__tx > span:not(.ibm__tag):not(.ibm__lk) { font-size: 15px; line-height: 1.5; color: var(--neutral-600); }
.ibm__lk { margin-top: 6px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--blue-900); }
.ibm__lk .ico-arrow { color: #c98a12; }

@media (max-width: 1100px) {
  .svh__in, .ibh__in { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 130px 24px 64px; gap: 48px; }
  .svv__aneis { left: 12px; bottom: -24px; }
  .svq__in, .sve__in, .svm__in, .svpad__in, .svc__in, .svf__in, .ibc__in, .ibm__in { padding: 80px 24px; }
  .svr__in { padding: 56px 24px; }
  .svq__grade, .svc__grade, .svr__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sve__in, .svpad__in, .svf__in, .ibc__in { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .sve__cab, .svf__cab, .ibc__cab { position: static; }
  .svm__trilha { padding-left: 0; }
  .svm__lane { display: none; }
  .svm__trilha ol { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; }
  .svm__trilha li::before { display: none; }
  .svm__p span, .svm__ia span { display: block; margin-bottom: 4px; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
  .svm__p, .svm__ia { min-height: 0; }
  .ibm__grade { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .svq__grade, .svc__grade, .svr__lista, .svpad__lista, .svm__trilha ol { grid-template-columns: minmax(0, 1fr); }
  .svv__aneis { position: static; margin-top: 12px; }
  .svv--sites .ofv { transform: none; }
  .ibc__rot { display: none; }
  .ibc__tab li { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .ibc__seta { rotate: 90deg; justify-self: start; padding-left: 18px; }
  .ibm__c { grid-template-columns: 110px minmax(0, 1fr); padding: 18px; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) { .svv--pauta li, .svia__q, .svia__a, .svia__lead { animation: none; opacity: 1; translate: 0 0; } }
.topo--amarelo .logo__escuro { filter: brightness(0); opacity: .9; }
.topo--amarelo .btn--seta-amarelo .btn__arrow { background: var(--blue-900); color: var(--yellow); }
.topo--amarelo.is-solido { background: rgba(244, 182, 63, .7); box-shadow: 0 12px 36px -24px rgba(60, 40, 0, .45), inset 0 0 0 1px rgba(1, 29, 38, .08); }
.topo--amarelo .topo__nav ul a { color: rgba(1, 29, 38, .75); }
.topo.topo--amarelo .logo img { filter: brightness(0) !important; }
.svc__mock { display: grid; place-items: center; max-height: 460px; }
.svc__mock img { width: auto; max-width: 100%; max-height: 460px; object-fit: contain; }

/* v7.2: Proposta, bloco de investimento */
[data-bloco][hidden] { display: none !important; }
.pr__inv { display: flex; flex-direction: column; gap: 12px; margin-top: 6px; padding: 22px 20px 24px; border-radius: 20px; background: var(--blue-900); color: var(--neutral-100); }
.pr__inv-tit { margin: 0; display: flex; flex-direction: column; gap: 4px; font-size: 20px; letter-spacing: -.01em; color: #fff; }
.pr__inv-tit small { font-size: 13.5px; letter-spacing: 0; color: rgba(255, 255, 255, .62); }
.pr__ref { margin: 2px 0 4px; padding: 12px 14px; border-radius: 12px; background: rgba(244, 182, 63, .12); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); font-size: 14px; color: rgba(255, 255, 255, .86); }
.pr__ref b { color: var(--yellow); font-weight: 500; }
.pr__inv .pr__sub { color: rgba(255, 255, 255, .9); }
.pr__inv .pr__sub em { display: block; margin-top: 2px; color: rgba(255, 255, 255, .5); }
.pr__q { display: flex; flex-direction: column; gap: 12px; }
.pr__inv .ch span { background: rgba(255, 255, 255, .06); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .16); color: rgba(255, 255, 255, .85); }
.pr__inv .ch:hover span { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .4); }
.pr__inv .ch input:checked + span { background: var(--yellow); color: var(--blue-900); }
.chs.is-erro { padding: 8px; margin: -8px; border-radius: 16px; box-shadow: inset 0 0 0 2px #E2665A; }

/* ==========================================================================
   v7.2: Sobre nós (Quem lidera, No que acreditamos, Próximo passo) e Trabalhe com a gente
   ========================================================================== */
.hv--marcas small { display: block; margin-top: 4px; font-size: 11px; letter-spacing: .12em; color: var(--yellow); }

/* Quem lidera: dois retratos e a trajetória em comum no meio */
.lid2 { background: #F4F5F3; color: var(--neutral-900); }
.lid2__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 56px; }
.lid2__cab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 40px; align-items: end; }
.lid2__cab > div { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.lid2 h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(36px, 4.2vw, 60px); line-height: 1.02; letter-spacing: -.025em; }
.lid2 h2 .is-dim { color: var(--neutral-400); }
.lid2__cab p { margin: 0; font-size: 16.5px; line-height: 1.6; color: var(--neutral-600); }
.lid2__duo { display: grid; grid-template-columns: minmax(0, 1fr) 280px minmax(0, 1fr); gap: 24px; align-items: start; }
.lid2__p { display: flex; flex-direction: column; gap: 24px; }
.lid2__p--v { margin-top: 72px; }
.lid2__foto { position: relative; aspect-ratio: 4 / 4.4; border-radius: 30px; overflow: hidden; background: var(--blue-900); box-shadow: 0 60px 90px -60px rgba(1, 29, 38, .55); }
.lid2__foto img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; filter: grayscale(1) contrast(1.08); transition: filter .8s, scale .9s cubic-bezier(.2, .7, .2, 1); }
.lid2__p:hover .lid2__foto img { filter: grayscale(0); scale: 1.03; }
.lid2__foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(1, 29, 38, .92) 0%, rgba(1, 29, 38, .1) 48%, transparent 70%); }
.lid2__nome { position: absolute; z-index: 1; left: 28px; right: 28px; bottom: 22px; margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(44px, 4.6vw, 72px); line-height: .92; letter-spacing: -.035em; color: #fff; }
.lid2__nome span:last-child { color: transparent; -webkit-text-stroke: 1px rgba(244, 182, 63, .95); }
.lid2__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 0 6px; }
.lid2__cargo { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
.lid2__bio { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--neutral-700); }
.lid2__lk { display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; padding: 10px 16px; border-radius: 99px; background: var(--blue-900); font-size: 13px; color: var(--neutral-000); cursor: pointer; transition: background-color .25s, color .25s; }
.lid2__lk:hover { background: var(--yellow); color: var(--blue-900); }
.lid2__eixo { position: sticky; top: 120px; margin-top: 36px; padding: 22px 18px 20px; border-radius: 26px; background: var(--blue-900); color: var(--neutral-100); box-shadow: 0 50px 80px -50px rgba(1, 29, 38, .7); }
.lid2__eixo-cab { margin: 0 0 14px; display: grid; grid-template-columns: 56px minmax(0, 1fr) 56px; align-items: center; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-400); }
.lid2__eixo-cab span:nth-child(2) { text-align: center; color: var(--neutral-200); }
.lid2__eixo-cab span:last-child { text-align: right; }
.lid2__eixo ol { position: relative; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.lid2__eixo ol::before, .lid2__eixo ol::after { content: ""; position: absolute; top: 12px; bottom: 12px; width: 1px; background: rgba(249, 250, 250, .16); }
.lid2__eixo ol::before { left: 7px; }
.lid2__eixo ol::after { right: 7px; }
.lid2__eixo li { position: relative; z-index: 1; display: grid; grid-template-columns: 16px minmax(0, 1fr) 16px; gap: 10px; align-items: center; padding: 10px 0; border-top: 1px solid rgba(249, 250, 250, .07); }
.lid2__eixo li:first-child { border-top: 0; }
.lid2__eixo li > i { width: 15px; height: 15px; border-radius: 50%; background: var(--blue-900); box-shadow: inset 0 0 0 1.5px rgba(249, 250, 250, .28); }
.lid2__eixo li > i.is-on { background: var(--yellow); box-shadow: 0 0 0 4px rgba(244, 182, 63, .16); }
.lid2__eixo li div { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 2px; }
.lid2__eixo b { font-weight: 400; font-size: 12.5px; letter-spacing: .06em; color: var(--yellow); }
.lid2__eixo li span { font-size: 14px; line-height: 1.25; color: var(--neutral-000); }
.lid2__anos { margin: 14px 0 0; padding-top: 16px; border-top: 1px solid rgba(249, 250, 250, .12); display: flex; align-items: baseline; justify-content: center; gap: 10px; }
.lid2__anos b { font-weight: 200; font-size: 54px; line-height: .9; letter-spacing: -.04em; color: var(--yellow); }
.lid2__anos span { max-width: 80px; font-size: 13px; line-height: 1.25; color: var(--neutral-200); }

/* No que acreditamos: lista + console */
.cr { background: var(--blue-900) radial-gradient(45% 50% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%); color: var(--neutral-100); }
.cr__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 56px; }
.cr__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cr h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.8vw, 54px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.cr h2 .is-dim { color: var(--neutral-400); }
.cr__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.cr__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.cr__lista li { border-top: 1px solid rgba(249, 250, 250, .1); }
.cr__lista li:last-child { border-bottom: 1px solid rgba(249, 250, 250, .1); }
.cr__lista button { position: relative; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; align-items: baseline; width: 100%; padding: 22px 0; border: 0; background: none; font: inherit; text-align: left; color: var(--neutral-400); cursor: pointer; transition: color .3s; }
.cr__lista button b { font-weight: 400; font-size: 13px; letter-spacing: .06em; color: var(--neutral-500); transition: color .3s; }
.cr__lista button span { font-weight: 300; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.15; letter-spacing: -.015em; }
.cr__lista button:hover, .cr__lista li.is-on button { color: var(--neutral-000); }
.cr__lista li.is-on button b { color: var(--yellow); }
.cr__bar { position: absolute; left: 0; top: -1px; height: 1px; width: 0; background: var(--yellow); }
.cr__lista li.is-on .cr__bar { width: calc(var(--p, 1) * 100%); }
.cr__det { display: none; }
.cr__con { position: sticky; top: 120px; border-radius: 26px; overflow: hidden; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12), 0 60px 100px -60px rgba(0, 0, 0, .8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.cr__top { margin: 0; display: flex; align-items: center; gap: 7px; padding: 14px 18px; border-bottom: 1px solid rgba(249, 250, 250, .08); font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 12px; color: var(--neutral-400); }
.cr__top i { width: 10px; height: 10px; border-radius: 50%; background: rgba(249, 250, 250, .16); }
.cr__top i:first-child { background: var(--yellow); }
.cr__top span { margin-left: 10px; }
.cr__top b { font-weight: 400; color: var(--yellow); }
.cr__corpo { padding: 30px 32px 34px; min-height: 380px; }
.cr__corpo.is-troca { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
@keyframes cr-in { from { opacity: 0; translate: 0 12px; } }
.cr__t { margin: 0 0 16px; font-weight: 300; font-size: clamp(28px, 2.6vw, 38px); line-height: 1.1; letter-spacing: -.02em; color: var(--yellow); }
.cr__d { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-200); }
.cr__np { margin: 26px 0 12px; font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); }
.cr__np::before { content: "> "; color: var(--yellow); }
.cr__con ul, .cr__det ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.cr__con li, .cr__det li { display: flex; gap: 12px; align-items: flex-start; padding: 13px 16px; border-radius: 14px; background: rgba(249, 250, 250, .05); font-size: 15px; line-height: 1.45; color: var(--neutral-000); }
.cr__con li svg, .cr__det li svg { flex: none; margin-top: 2px; color: var(--yellow); }

/* Logos (sem título) */
.imq { background: #fff; padding: 12px 0; }

/* Próximo passo */
.prox { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.prox::before { content: ""; position: absolute; inset: 0; background: radial-gradient(40% 60% at 85% 20%, rgba(244, 182, 63, .12), transparent 70%), radial-gradient(50% 60% at 10% 90%, rgba(18, 89, 124, .6), transparent 70%); }
.prox__in { position: relative; max-width: 1286px; margin: 0 auto; padding: 112px 40px 120px; display: flex; flex-direction: column; gap: 22px; }
.prox__h { margin: 0 0 0 -.04em; font-weight: 200; font-size: clamp(64px, 11vw, 180px); line-height: .9; letter-spacing: -.045em; }
.prox__o { color: transparent; -webkit-text-stroke: 1px rgba(249, 250, 250, .4); }
.prox__f { color: var(--yellow); font-style: italic; }
.prox__lead { margin: 0 0 26px; max-width: 560px; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.prox__cam { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.prox__c { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; min-height: 300px; padding: 32px; border-radius: 30px; transition: translate .4s cubic-bezier(.2, .7, .2, 1), box-shadow .4s; }
.prox__c:hover { translate: 0 -6px; }
.prox__c--emp { background: var(--yellow); color: var(--blue-900); box-shadow: 0 50px 80px -50px rgba(244, 182, 63, .5); }
.prox__c--car { background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); color: var(--neutral-000); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.prox__c--car:hover { box-shadow: inset 0 0 0 1px var(--yellow); }
.prox__rot { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; opacity: .75; }
.prox__c b { font-weight: 300; font-size: clamp(26px, 2.5vw, 36px); line-height: 1.1; letter-spacing: -.02em; }
.prox__tx { font-size: 16px; line-height: 1.5; opacity: .85; }
.prox__cta { margin-top: auto; display: inline-flex; align-items: center; gap: 12px; padding-top: 10px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.prox__cta .ico-arrow { transition: translate .3s; }
.prox__c:hover .prox__cta .ico-arrow { translate: 6px 0; }
.prox__c--car .prox__cta .ico-arrow { color: var(--yellow); }

/* Trabalhe: hero sem vazio + cartão "Nosso combinado" */
.tlh__in { min-height: 0; padding: 150px 40px 96px; grid-template-columns: minmax(0, 1fr) minmax(0, 540px); grid-template-areas: "topo topo" "txt tcb"; align-items: end; row-gap: 48px; }
.tlh .tcb { grid-area: tcb; padding: 24px 24px 20px; border-radius: 26px; background: rgba(1, 29, 38, .62); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12), 0 60px 100px -50px rgba(0, 0, 0, .8); }
.tlh .sbh__rot { margin-bottom: 16px; }
.tcb__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.tcb__col { padding: 16px 16px 18px; border-radius: 18px; background: rgba(249, 250, 250, .05); }
.tcb__col--da { background: rgba(244, 182, 63, .1); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .3); }
.tcb__col p { margin: 0 0 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.tcb__col--da p { color: var(--yellow); }
.tcb__col ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.tcb__col li { display: flex; gap: 8px; font-size: 14.5px; line-height: 1.35; color: var(--neutral-000); opacity: 0; translate: 0 8px; animation: obt-in .5s ease forwards; animation-delay: .6s; }
.tcb__col--da li { animation-delay: .9s; }
.tcb__col li svg { flex: none; margin-top: 1px; color: var(--yellow); }
.tcb__pe { margin: 16px 0 0; padding-top: 14px; border-top: 1px solid rgba(249, 250, 250, .12); font-size: 15px; font-style: italic; color: var(--yellow); }

/* Trabalhe: capítulos (Entrega, Respeito, Longo prazo, Maior) */
.mt--tl.is-anim { height: calc(100vh + 4 * 80vh); }
.tv { margin: 0; padding: 0; list-style: none; color: var(--neutral-000); }
.tv--ent { display: flex; flex-direction: column; gap: 10px; max-width: 420px; }
.tv--ent li { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-radius: 16px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); font-size: 16px; opacity: clamp(.2, var(--e) * 5 - var(--d), 1); }
.tv--ent li i { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--yellow); color: var(--blue-900); }
.tv--ent .tv__ok { justify-content: center; background: var(--yellow); color: var(--blue-900); font-style: italic; box-shadow: none; }
.tv--bal { position: relative; max-width: 440px; padding-top: 10px; }
.tv__viga { display: flex; justify-content: space-between; padding: 0 0 10px; border-bottom: 2px solid var(--yellow); rotate: calc((1 - var(--e)) * -9deg); transform-origin: center bottom; }
.tv__viga span { padding: 14px 22px; border-radius: 16px; background: rgba(249, 250, 250, .08); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); font-size: 17px; }
.tv__viga span:last-child { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.tv__base { display: block; width: 0; height: 0; margin: 0 auto; border-left: 18px solid transparent; border-right: 18px solid transparent; border-bottom: 26px solid rgba(249, 250, 250, .3); }
.tv--bal ul { margin: 26px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; opacity: var(--e); }
.tv--bal li { padding: 8px 14px; border-radius: 99px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font-size: 13.5px; }
.tv--lp { display: flex; flex-direction: column; gap: 18px; max-width: 460px; }
.tv__lin span { display: block; margin-bottom: 8px; font-size: 14px; color: var(--neutral-200); }
.tv__lin i { display: block; height: 14px; border-radius: 99px; background: linear-gradient(90deg, rgba(244, 182, 63, .25), var(--yellow)); transform-origin: left; scale: var(--e) 1; }
.tv__lin + .tv__lin i { background: linear-gradient(90deg, rgba(249, 250, 250, .15), rgba(249, 250, 250, .85)); }
.tv__eixo { margin: 0; display: flex; justify-content: space-between; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); }
.tv--deg { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; align-items: end; height: 240px; max-width: 460px; }
.tv--deg li { display: flex; flex-direction: column; justify-content: flex-end; gap: 10px; height: 100%; }
.tv--deg i { display: block; height: calc((30% + var(--d) * 22%) * var(--e)); min-height: 4px; border-radius: 14px 14px 4px 4px; background: rgba(249, 250, 250, .12); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); }
.tv--deg li:last-child i { background: var(--yellow); box-shadow: none; }
.tv--deg span { font-size: 14px; text-align: center; color: var(--neutral-200); }
.tv--deg li:last-child span { color: var(--yellow); }

/* Vagas e processo */
.tvg summary { grid-template-columns: 34px minmax(0, 1fr) auto 34px; }
.tvg__k { grid-column: 1; grid-row: 1 / span 2; font-weight: 300; font-size: 15px; color: var(--neutral-400); transition: color .25s; }
.tvg:hover .tvg__k, .tvg[open] .tvg__k { color: #a8720a; }
.tvg__a, .tvg summary b { grid-column: 2; }
.tvg__n { grid-column: 3; }
.tvg summary i { grid-column: 4; }
.tvg:hover { translate: 0 -2px; }
.tvg { transition: box-shadow .25s, translate .25s; }
.tvs__proc { display: block; border-top: 0; margin-top: 40px; padding: 36px 36px 40px; border-radius: 30px; background: var(--blue-900); color: var(--neutral-100); }
.tvs__proc-t { margin: 0 0 26px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.tvs__proc ol { position: relative; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.tvs__proc ol::before { content: ""; position: absolute; left: 22px; right: 22px; top: 22px; height: 1px; background: linear-gradient(90deg, var(--yellow), rgba(244, 182, 63, .15)); }
.tvs__proc li { position: relative; display: flex; flex-direction: column; gap: 8px; }
.tvs__proc b { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 10px; border-radius: 50%; background: var(--blue-900); box-shadow: inset 0 0 0 1.5px var(--yellow); font-weight: 400; font-size: 14px; color: var(--yellow); }
.tvs__proc li:last-child b { background: var(--yellow); color: var(--blue-900); }
.tvs__proc h3 { margin: 0; font-weight: 400; font-size: 20px; color: var(--neutral-000); }
.tvs__proc p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--neutral-300); }

@media (max-width: 1100px) {
  .lid2__in, .cr__in { padding: 88px 24px; }
  .lid2__cab { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .lid2__duo { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .lid2__eixo { position: static; grid-column: 1 / -1; grid-row: 2; margin-top: 0; }
  .lid2__p--v { margin-top: 0; }
  .cr__grade { grid-template-columns: minmax(0, 1fr); }
  .cr__con { display: none; }
  .cr__det { display: block; padding: 0 0 24px 58px; }
  .cr__lista li.is-on .cr__bar { width: 0; }
  .cr__lista button { color: var(--neutral-000); }
  .cr__lista button b { color: var(--yellow); }
  .cr__det .cr__np { margin-top: 18px; }
  .prox__in { padding: 88px 24px; }
  .prox__cam { grid-template-columns: minmax(0, 1fr); }
  .tlh__in { padding: 130px 24px 72px; grid-template-columns: minmax(0, 1fr); grid-template-areas: "topo" "txt" "tcb"; align-items: start; }
  .tvs__proc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tvs__proc ol::before { display: none; }
}
@media (max-width: 640px) {
  .lid2__duo { grid-template-columns: minmax(0, 1fr); }
  .lid2__eixo { grid-row: auto; }
  .lid2__nome { left: 22px; bottom: 18px; }
  .cr__det { padding-left: 0; }
  .cr__lista button { grid-template-columns: 34px minmax(0, 1fr); }
  .prox__c { padding: 26px 22px; min-height: 0; }
  .tcb__grade { grid-template-columns: minmax(0, 1fr); }
  .mt--tl .mtp__w { font-size: 54px; }
  .tvs__proc { padding: 28px 22px; }
  .tvs__proc ol { grid-template-columns: minmax(0, 1fr); }
  .tvg summary { grid-template-columns: 28px minmax(0, 1fr) 34px; }
  .tvg__n { grid-column: 2; grid-row: 3; justify-self: start; }
  .tvg summary i { grid-column: 3; }
}
@media (prefers-reduced-motion: reduce) { .tcb__col li { animation: none; opacity: 1; translate: 0 0; } .cr__corpo.is-troca { animation: none; } }
.ifaq__acoes a.ifaq__lk { display: inline-flex; align-items: center; height: 42px; padding: 0 16px; border-radius: 12px; background: var(--blue-900); color: var(--neutral-000); text-decoration: none; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.ifaq__acoes a.ifaq__lk:hover { background: var(--blue-700, #12597c); }
.ifaq__acoes a.ifaq__lk[hidden] { display: none; }
.tvs__proc-t { margin-bottom: 30px !important; }

/* ==========================================================================
   Bloco 2: Cases, modelo de case, Conteúdos, Blog e post
   ========================================================================== */
.ih__lk--esc { color: var(--neutral-900); }
.csc__f { display: inline-flex; align-items: center; gap: 7px; }
.csc__f::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--blue-700); }
.csc__f--ib::before, .csc--ib .csc__f::before { background: var(--yellow); }
.csl__pt { display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: var(--blue-700); }
.csl__pt--ib { background: var(--yellow); }

/* Cases: hero */
.csh { position: relative; overflow: hidden; background: var(--blue-900) radial-gradient(50% 60% at 90% 10%, rgba(18, 89, 124, .55), transparent 70%); color: var(--neutral-100); }
.csh__fantasma { position: absolute; right: -1vw; bottom: -4vw; margin: 0; font-weight: 200; font-size: clamp(180px, 26vw, 420px); line-height: .8; letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1px rgba(249, 250, 250, .1); pointer-events: none; }
.csh__in { position: relative; max-width: 1286px; margin: 0 auto; padding: 150px 40px 88px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 56px; align-items: end; }
.csh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.csh h1, .cgh h1, .cnh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(44px, 5.6vw, 92px); line-height: .98; letter-spacing: -.035em; color: var(--neutral-000); }
.csh h1 em, .cgh h1 em, .cnh h1 em, .csx h2 em, .cgn h2 em { font-style: italic; color: var(--yellow); }
.csh__lead, .cgh__lead, .cnh__lead { max-width: 620px; margin: 0; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.csh__prova { padding: 24px 24px 18px; border-radius: 24px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.csh__prova ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.csh__prova li { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 14px; align-items: baseline; padding: 12px 0; border-top: 1px solid rgba(249, 250, 250, .1); opacity: 0; translate: 0 10px; animation: obt-in .5s ease forwards; animation-delay: calc(.5s + var(--d) * .18s); }
.csh__prova b { font-weight: 300; font-size: 30px; letter-spacing: -.02em; color: var(--yellow); white-space: nowrap; }
.csh__prova span { font-size: 14px; line-height: 1.35; color: var(--neutral-200); }

/* Cases: lista */
.csl { background: #F4F5F3; color: var(--neutral-900); }
.csl__in { max-width: 1286px; margin: 0 auto; padding: 56px 40px 112px; display: flex; flex-direction: column; gap: 32px; }
.csl__barra { position: sticky; top: 96px; z-index: 5; align-self: flex-start; display: flex; flex-wrap: wrap; gap: 6px; padding: 6px; border-radius: 99px; background: rgba(255, 255, 255, .85); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 0 0 1px rgba(34, 37, 38, .07), 0 20px 40px -30px rgba(1, 29, 38, .4); }
.csl__barra button, .bll__f button, .bll__t button { display: inline-flex; align-items: center; gap: 4px; padding: 10px 16px; border: 0; border-radius: 99px; background: none; font: inherit; font-size: 14px; color: var(--neutral-700); cursor: pointer; transition: background-color .2s, color .2s; }
.csl__barra button i { font-style: normal; margin-left: 6px; font-size: 12px; color: var(--neutral-400); }
.csl__barra button.is-on, .bll__f button.is-on { background: var(--blue-900); color: var(--neutral-000); }
.csl__barra button.is-on i { color: var(--yellow); }
.csl__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.csc-li[hidden] { display: none; }
.csc-li:first-child { grid-column: 1 / -1; }
.csc { position: relative; height: 100%; display: flex; flex-direction: column; border-radius: 28px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); color: var(--neutral-900); transition: translate .4s cubic-bezier(.2, .7, .2, 1), box-shadow .4s; }
a.csc:hover { translate: 0 -6px; box-shadow: 0 0 0 2px var(--yellow), 0 50px 80px -50px rgba(1, 29, 38, .45); }
.csc__vis { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--blue-900); }
.csc__vis img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: scale 1s cubic-bezier(.2, .7, .2, 1); }
a.csc:hover .csc__vis img { scale: 1.04; }
.csc__vis::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(1, 29, 38, .75), transparent 45%); pointer-events: none; }
.csc__num { position: absolute; z-index: 1; left: 22px; bottom: 18px; right: 22px; margin: 0; display: flex; align-items: baseline; gap: 12px; color: #fff; }
.csc__num b { font-weight: 200; font-size: clamp(40px, 4vw, 60px); line-height: .9; letter-spacing: -.03em; color: var(--yellow); white-space: nowrap; }
.csc__num span { max-width: 200px; font-size: 13px; line-height: 1.3; color: rgba(255, 255, 255, .85); }
.csc__tx { flex: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 24px 26px 26px; }
.csc__meta, .bpc__meta, .cgh__meta, .pth__meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
.csc__quem { margin: 4px 0 0; font-size: 14px; font-weight: 500; color: var(--neutral-700); }
.csc h3 { margin: 0; font-weight: 400; font-size: clamp(22px, 2vw, 28px); line-height: 1.15; letter-spacing: -.015em; }
.csc__r { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.csc__tags { margin: 4px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.csc__tags li { padding: 5px 10px; border-radius: 99px; background: #F2F4F5; font-size: 12px; color: var(--neutral-600); }
.csc__ir, .bpc__ir { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--blue-900); }
.csc__ir svg, .bpc__ir svg { color: #a8720a; transition: translate .3s; }
a.csc:hover .csc__ir svg, a.bpc:hover .bpc__ir svg { translate: 4px 0; }
.csc__breve, .bpc__breve { margin-top: auto; padding: 6px 12px; border-radius: 99px; background: #F2F4F5; font-size: 12px; letter-spacing: .06em; color: var(--neutral-500); }
.csc--dest { flex-direction: row; background: var(--blue-900); color: var(--neutral-000); }
.csc--dest .csc__vis { flex: 1.25; aspect-ratio: auto; min-height: 420px; background: #0b2a35; }
.csc--dest .csc__vis img { object-fit: contain; object-position: center; padding: 28px; }
.csc--dest .csc__vis::after { background: linear-gradient(0deg, rgba(1, 29, 38, .85), transparent 40%); }
.csc--dest .csc__tx { flex: 1; justify-content: center; padding: 40px; }
.csc--dest h3 { font-size: clamp(28px, 2.8vw, 40px); font-weight: 300; color: #fff; }
.csc--dest .csc__quem { color: var(--yellow); }
.csc--dest .csc__r, .csc--dest .csc__meta { color: var(--neutral-300); }
.csc--dest .csc__tags li { background: rgba(249, 250, 250, .08); color: var(--neutral-200); }
.csc--dest .csc__breve { background: rgba(249, 250, 250, .08); color: var(--neutral-300); margin-top: 14px; }
.csc__app { position: absolute; inset: 0; display: grid; place-items: center; background: radial-gradient(60% 70% at 50% 30%, rgba(244, 182, 63, .18), transparent 70%), var(--blue-900); }
.csc__fone { position: relative; width: 150px; height: 230px; margin-top: 30px; padding: 30px 14px 14px; border-radius: 28px; background: #0f2f3b; box-shadow: inset 0 0 0 2px rgba(249, 250, 250, .14), 0 30px 60px -20px rgba(0, 0, 0, .6); display: flex; flex-direction: column; gap: 8px; }
.csc__ilha { position: absolute; top: 10px; left: 50%; width: 44px; height: 10px; margin-left: -22px; border-radius: 99px; background: #021219; }
.csc__app-t { margin: 0; font-size: 13px; color: var(--yellow); letter-spacing: .1em; text-transform: uppercase; }
.csc__app-l { height: 8px; border-radius: 4px; background: rgba(249, 250, 250, .2); }
.csc__app-l--c { width: 60%; }
.csc__app-g { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 4px; }
.csc__app-g i { height: 34px; border-radius: 8px; background: rgba(249, 250, 250, .08); }
.csc__app-g i:first-child { background: rgba(244, 182, 63, .5); }
.csc__app-ia { margin: auto 0 0; display: flex; gap: 6px; align-items: flex-start; padding: 7px 8px; border-radius: 10px; background: rgba(244, 182, 63, .14); font-size: 9.5px; line-height: 1.3; color: var(--neutral-000); }
.csc__app-ia span { flex: none; width: 7px; height: 7px; margin-top: 2px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 3px rgba(244, 182, 63, .25); }

/* Faixa de CTA escura (cases, post) */
.csx { background: var(--blue-900) url("../img/bg-scene-a.webp") center / cover no-repeat; color: var(--neutral-100); }
.csx__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.csx h2, .cgn h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 4.4vw, 64px); line-height: 1.02; letter-spacing: -.025em; color: var(--neutral-000); }
.csx p { margin: 0; max-width: 560px; font-size: 17px; line-height: 1.55; color: var(--neutral-300); }

/* Case modelo: hero */
.cgh { position: relative; overflow: hidden; background: radial-gradient(45% 55% at 85% 30%, rgba(199, 40, 40, .18), transparent 70%), radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.cgh__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 56px; align-items: center; }
.cgh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cgh__meta { color: var(--neutral-300); }
.cgh h1 { font-size: clamp(42px, 4.8vw, 78px); }
.cgh__ficha { margin: 8px 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; width: 100%; border-radius: 18px; overflow: hidden; background: rgba(249, 250, 250, .1); }
.cgh__ficha div { padding: 14px 16px; background: var(--blue-900); }
.cgh__ficha dt { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.cgh__ficha dd { margin: 4px 0 0; display: flex; align-items: center; gap: 8px; font-size: 15.5px; color: var(--neutral-000); }
.cgh__on { width: 8px; height: 8px; border-radius: 50%; background: #3ecf8e; box-shadow: 0 0 0 4px rgba(62, 207, 142, .2); }
.cgh__tela { margin: 0; border-radius: 18px; overflow: hidden; background: #0d1b21; box-shadow: 0 0 0 1px rgba(249, 250, 250, .14), 0 80px 120px -50px rgba(0, 0, 0, .9); rotate: 1.5deg; transition: rotate .8s cubic-bezier(.2, .7, .2, 1); }
.cgh__tela:hover { rotate: 0deg; }
.cgh__barra { margin: 0; display: flex; align-items: center; gap: 6px; padding: 11px 14px; background: #13262e; font-size: 12px; color: var(--neutral-400); }
.cgh__barra i { width: 9px; height: 9px; border-radius: 50%; background: rgba(249, 250, 250, .2); }
.cgh__barra span { margin-left: 12px; padding: 3px 12px; border-radius: 99px; background: rgba(249, 250, 250, .06); }
.cgh__tela img { display: block; width: 100%; height: auto; }

/* Case: 30 segundos */
.cgr { background: #fff; color: var(--neutral-900); }
.cgr__in { max-width: 1286px; margin: 0 auto; padding: 72px 40px; }
.cgr__rot { margin: 0 0 22px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.cgr__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cgr__grade li { display: flex; flex-direction: column; gap: 10px; padding: 26px; border-radius: 24px; background: #F4F5F3; }
.cgr__grade li:last-child { background: var(--yellow); }
.cgr__grade b { font-weight: 300; font-size: 14px; color: #a8720a; }
.cgr__grade li:last-child b { color: var(--blue-900); }
.cgr__grade h2 { margin: 0; font-weight: 400; font-size: 26px; letter-spacing: -.01em; }
.cgr__grade p { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--neutral-700); }
.cgr__grade li:last-child p { color: rgba(1, 29, 38, .85); }

/* Case: desafio */
.cgd { background: #fff; color: var(--neutral-900); }
.cgd__in { max-width: 1286px; margin: 0 auto; padding: 48px 40px 112px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 64px; }
.cgd__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cgd h2, .cgm h2, .cge h2, .cnd h2, .cnr h2, .ptr h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; }
.cgd h2 .is-dim, .cgm h2 .is-dim, .cge h2 .is-dim, .cnd h2 .is-dim, .cnr h2 .is-dim, .ptr h2 .is-dim { color: var(--neutral-400); }
.cgd__tx p { margin: 0 0 18px; font-size: 17px; line-height: 1.7; color: var(--neutral-700); }
.cgd__q { margin: 28px 0 0; padding: 26px 28px; border-left: 3px solid var(--yellow); border-radius: 0 18px 18px 0; background: #F4F5F3; }
.cgd__q p { margin: 0 !important; font-weight: 300; font-size: 22px !important; line-height: 1.4 !important; color: var(--neutral-900) !important; }

/* Case: o que construímos (abas) */
.cgt { background: var(--blue-900) radial-gradient(40% 50% at 100% 0%, rgba(18, 89, 124, .5), transparent 70%); color: var(--neutral-100); }
.cgt__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.cgt__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.cgt h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: var(--neutral-000); }
.cgt h2 .is-dim { color: var(--neutral-400); }
.cgt__cab p { margin: 0; font-size: 15px; color: var(--neutral-300); }
.cgt__app { border-radius: 26px; overflow: hidden; background: #071f28; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12), 0 60px 100px -60px rgba(0, 0, 0, .8); }
.cgt__nav { display: flex; gap: 4px; padding: 10px; overflow-x: auto; border-bottom: 1px solid rgba(249, 250, 250, .08); scrollbar-width: none; }
.cgt__nav button { flex: none; padding: 11px 16px; border: 0; border-radius: 12px; background: none; font: inherit; font-size: 14.5px; color: var(--neutral-300); cursor: pointer; transition: background-color .2s, color .2s; }
.cgt__nav button:hover { color: #fff; background: rgba(249, 250, 250, .05); }
.cgt__nav button.is-on { background: var(--yellow); color: var(--blue-900); }
.cgt__painel { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 40px; align-items: center; padding: 36px; min-height: 380px; }
.cgt__tx.is-troca, .cgt__wire.is-troca { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.cgt__n { margin: 0 0 10px; font-size: 13px; color: var(--yellow); }
.cgt__tx h3 { margin: 0 0 12px; font-weight: 300; font-size: clamp(26px, 2.4vw, 36px); line-height: 1.1; letter-spacing: -.02em; color: #fff; }
.cgt__tx > p:not(.cgt__n) { margin: 0 0 18px; font-size: 16.5px; line-height: 1.6; color: var(--neutral-300); }
.cgt__tx ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.cgt__tx li { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 99px; background: rgba(249, 250, 250, .06); font-size: 14px; color: var(--neutral-000); }
.cgt__tx li svg { color: var(--yellow); }
.cgt__wire { position: relative; aspect-ratio: 16 / 10; border-radius: 16px; background: #0d2a35; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); overflow: hidden; }
.cgt__wire i { position: absolute; border-radius: 8px; background: rgba(249, 250, 250, .08); transition: all .6s cubic-bezier(.2, .7, .2, 1); }
.cgt__wire .w1 { left: 6%; top: 8%; width: 18%; height: 6%; background: rgba(199, 40, 40, .6); }
.cgt__wire .w2 { right: 6%; top: 8%; width: 40%; height: 6%; }
.cgt__wire .w3 { left: 6%; top: 24%; width: 88%; height: 40%; background: linear-gradient(120deg, rgba(244, 182, 63, .35), rgba(249, 250, 250, .06)); }
.cgt__wire .w4 { left: 6%; top: 70%; width: 27%; height: 22%; }
.cgt__wire .w5 { left: 36.5%; top: 70%; width: 27%; height: 22%; }
.cgt__wire .w6 { left: 67%; top: 70%; width: 27%; height: 22%; }
.cgt__wire[data-cg-wire="1"] .w3 { top: 24%; height: 4%; background: var(--yellow); }
.cgt__wire[data-cg-wire="1"] .w4, .cgt__wire[data-cg-wire="1"] .w5, .cgt__wire[data-cg-wire="1"] .w6 { top: 36%; height: 56%; }
.cgt__wire[data-cg-wire="2"] .w3 { width: 58%; height: 60%; background: radial-gradient(circle at 50% 50%, rgba(244, 182, 63, .6) 0 8%, rgba(249, 250, 250, .08) 9%); }
.cgt__wire[data-cg-wire="2"] .w4 { left: 68%; top: 24%; width: 26%; height: 18%; }
.cgt__wire[data-cg-wire="2"] .w5 { left: 68%; top: 45%; width: 26%; height: 18%; }
.cgt__wire[data-cg-wire="2"] .w6 { left: 68%; top: 66%; width: 26%; height: 18%; }
.cgt__wire[data-cg-wire="3"] .w3 { width: 42%; height: 66%; background: rgba(249, 250, 250, .08); }
.cgt__wire[data-cg-wire="3"] .w4 { left: 52%; top: 24%; width: 42%; height: 66%; background: rgba(244, 182, 63, .3); }
.cgt__wire[data-cg-wire="3"] .w5, .cgt__wire[data-cg-wire="3"] .w6 { top: 94%; height: 2%; }
.cgt__wire[data-cg-wire="4"] .w3 { width: 88%; height: 8%; }
.cgt__wire[data-cg-wire="4"] .w4, .cgt__wire[data-cg-wire="4"] .w5, .cgt__wire[data-cg-wire="4"] .w6 { top: 38%; height: 54%; }
.cgt__wire[data-cg-wire="4"] .w5 { background: rgba(244, 182, 63, .3); }
.cgt__wire[data-cg-wire="5"] .w3 { left: 20%; width: 60%; height: 12%; background: rgba(249, 250, 250, .12); }
.cgt__wire[data-cg-wire="5"] .w4 { left: 20%; top: 42%; width: 60%; height: 10%; }
.cgt__wire[data-cg-wire="5"] .w5 { left: 20%; top: 56%; width: 60%; height: 10%; }
.cgt__wire[data-cg-wire="5"] .w6 { left: 20%; top: 74%; width: 30%; height: 10%; background: var(--yellow); }

/* Case: como fizemos */
.cgm { background: #F4F5F3; color: var(--neutral-900); }
.cgm__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 44px; }
.cgm__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cgm__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; counter-reset: e; }
.cgm__lista li { position: relative; display: flex; flex-direction: column; gap: 8px; padding: 22px 20px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .05); }
.cgm__lista b { font-weight: 300; font-size: 13px; color: #a8720a; }
.cgm__lista h3 { margin: 0; font-weight: 500; font-size: 17px; line-height: 1.25; }
.cgm__q { align-self: flex-start; padding: 3px 9px; border-radius: 99px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.cgm__q--p { background: var(--blue-900); color: #fff; }
.cgm__q--ia { background: var(--yellow); color: var(--blue-900); }
.cgm__lista p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--neutral-600); }
.cgm__ia { padding-top: 10px; border-top: 1px dashed rgba(34, 37, 38, .14); font-size: 13px !important; color: var(--neutral-500) !important; }

/* Case: entregas */
.cge { background: #fff; color: var(--neutral-900); }
.cge__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; align-items: start; }
.cge__in > div { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cge__nota { margin: 0; padding: 12px 14px; border-radius: 12px; background: #FFF7E6; font-size: 13.5px; color: var(--neutral-600); }
.cge__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.cge__lista li { display: flex; align-items: center; gap: 10px; padding: 16px 18px; border-radius: 16px; background: #F4F5F3; font-size: 15.5px; }
.cge__lista svg { flex: none; color: #a8720a; }

/* Case: próximo */
.cgn { background: var(--blue-900) url("../img/bg-scene-a.webp") center / cover no-repeat; color: var(--neutral-100); }
.cgn__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: center; }
.cgn__cta { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.cgn__cta p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.55; color: var(--neutral-300); }
.cgn__prox { display: flex; flex-direction: column; gap: 10px; padding: 18px 18px 22px; border-radius: 24px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); color: #fff; transition: box-shadow .3s, translate .3s; }
.cgn__prox:hover { box-shadow: inset 0 0 0 1px var(--yellow); translate: 0 -4px; }
.cgn__rot { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.cgn__prox img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: top; border-radius: 14px; }
.cgn__prox .csc__f { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-300); }
.cgn__prox b { font-weight: 300; font-size: 24px; line-height: 1.15; }
.cgn__ir { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: var(--yellow); }

/* Blog: capas geradas */
.bcap { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--blue-900); color: #fff; }
.bcap--ib { background: var(--yellow); color: var(--blue-900); }
.bcap__grade { position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .07) 1px, transparent 1px); background-size: 28px 28px; -webkit-mask-image: radial-gradient(70% 90% at 80% 20%, #000, transparent 75%); mask-image: radial-gradient(70% 90% at 80% 20%, #000, transparent 75%); }
.bcap--ib .bcap__grade { background-image: linear-gradient(rgba(1, 29, 38, .1) 1px, transparent 1px), linear-gradient(90deg, rgba(1, 29, 38, .1) 1px, transparent 1px); }
.bcap__cod { position: absolute; left: 18px; bottom: 6px; z-index: 1; font-weight: 200; font-size: clamp(48px, 5vw, 76px); line-height: 1; letter-spacing: -.04em; opacity: .95; }
.bcap--sh .bcap__cod { color: transparent; -webkit-text-stroke: 1px rgba(244, 182, 63, .9); }
.bcap__ic { position: absolute; right: 18px; top: 16px; z-index: 1; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: rgba(255, 255, 255, .08); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .16); color: var(--yellow); }
.bcap--ib .bcap__ic { background: rgba(1, 29, 38, .08); box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .16); color: var(--blue-900); }
.bcap--g { aspect-ratio: auto; height: 100%; min-height: 300px; }
.bcap--g .bcap__cod { font-size: clamp(80px, 9vw, 150px); left: 28px; bottom: 10px; }
.bcap--g .bcap__ic { width: 72px; height: 72px; right: 28px; top: 28px; border-radius: 22px; }

/* Blog: hero, destaque e lista */
.blh { background: #F4F5F3; color: var(--neutral-900); }
.blh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 56px; display: flex; flex-direction: column; gap: 32px; }
.blh__cab { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 40px; align-items: end; }
.blh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(44px, 5.4vw, 86px); line-height: .98; letter-spacing: -.035em; }
.blh h1 .is-dim { font-size: .5em; letter-spacing: -.02em; color: var(--neutral-400); margin-top: 10px; }
.blh__lead { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-600); }
.bdest { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-radius: 30px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 50px 90px -60px rgba(1, 29, 38, .45); color: var(--neutral-900); transition: translate .4s cubic-bezier(.2, .7, .2, 1), box-shadow .4s; }
.bdest:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow), 0 50px 90px -50px rgba(1, 29, 38, .45); }
.bdest__tx { display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: 40px; }
.bdest h2, .bdest h3 { margin: 0; font-weight: 300; font-size: clamp(26px, 2.6vw, 38px); line-height: 1.12; letter-spacing: -.02em; }
.bdest__tx > p:not(.bpc__meta):not(.bpc__pe) { margin: 0; font-size: 16px; line-height: 1.6; color: var(--neutral-600); }
.bdest__novo { padding: 4px 10px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); letter-spacing: .1em; }
.bpc__pe { margin: auto 0 0; padding-top: 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 13px; color: var(--neutral-500); }
.bpc__pe .bpc__ir, .bpc__pe .bpc__breve { margin-top: 0; padding-top: 0; }
.bpc__pe .bpc__breve { padding: 5px 10px; }
.bll { background: #F4F5F3; color: var(--neutral-900); }
.bll__in { max-width: 1286px; margin: 0 auto; padding: 24px 40px 112px; display: flex; flex-direction: column; gap: 18px; }
.bll__barra { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; padding-top: 28px; border-top: 1px solid rgba(34, 37, 38, .08); }
.bll__f { display: flex; flex-wrap: wrap; gap: 6px; padding: 6px; border-radius: 99px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.bll__busca { display: flex; align-items: center; gap: 10px; width: min(340px, 100%); height: 48px; padding: 0 16px; border-radius: 99px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); color: var(--neutral-500); }
.bll__busca:focus-within { box-shadow: 0 0 0 2px var(--yellow); }
.bll__busca input { flex: 1; min-width: 0; border: 0; outline: 0; background: none; font: inherit; font-size: 15px; color: var(--neutral-900); }
.bll__t { display: flex; flex-wrap: wrap; gap: 6px; }
.bll__t button { padding: 8px 14px; background: transparent; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); font-size: 13px; }
.bll__t button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.bll__cont { margin: 0; min-height: 18px; font-size: 13px; color: var(--neutral-500); }
.bll__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.bll__grade > li[hidden] { display: none; }
.bpc { height: 100%; display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); color: var(--neutral-900); transition: translate .35s cubic-bezier(.2, .7, .2, 1), box-shadow .35s; }
a.bpc:hover { translate: 0 -5px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -45px rgba(1, 29, 38, .45); }
.bpc--breve .bcap { filter: saturate(.6); }
.bpc__tx { flex: 1; display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; }
.bpc h3 { margin: 0; font-weight: 400; font-size: 18.5px; line-height: 1.3; letter-spacing: -.005em; }
.bpc__d { margin: 0; font-size: 14px; line-height: 1.55; color: var(--neutral-600); }
.bll__vazio { margin: 12px 0 0; font-size: 15px; color: var(--neutral-600); }
.bll__vazio a { text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }

/* Post */
.pt__prog { position: fixed; z-index: 60; left: 0; top: 0; width: 100%; height: 3px; pointer-events: none; }
.pt__prog i { display: block; height: 100%; width: 100%; background: var(--yellow); transform-origin: left; scale: var(--p, 0) 1; }
.pth { background: #F4F5F3; color: var(--neutral-900); }
.pth__in { max-width: 1060px; margin: 0 auto; padding: 140px 40px 56px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.pth h1 { margin: 0; font-weight: 300; font-size: clamp(34px, 4vw, 58px); line-height: 1.08; letter-spacing: -.025em; }
.pth__autor { width: 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 14px; padding-top: 22px; border-top: 1px solid rgba(34, 37, 38, .1); }
.pth__autor img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; filter: grayscale(1); }
.pth__autor p { margin: 0; display: flex; flex-direction: column; font-size: 13.5px; color: var(--neutral-500); }
.pth__autor b { font-weight: 500; font-size: 15px; color: var(--neutral-900); }
.pth__data { margin-left: auto !important; text-align: right; }
.pth__data time { color: var(--neutral-800); }
.pt { background: #fff; color: var(--neutral-900); }
.pt__in { max-width: 1286px; margin: 0 auto; padding: 64px 40px 96px; display: grid; grid-template-columns: 260px minmax(0, 720px); gap: 72px; justify-content: center; }
.pt__aside { position: relative; }
.pt__toc { position: sticky; top: 120px; }
.pt__toc p, .pt__share p { margin: 0 0 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.pt__toc ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; border-left: 1px solid rgba(34, 37, 38, .1); }
.pt__toc a { display: block; padding: 8px 0 8px 16px; margin-left: -1px; border-left: 2px solid transparent; font-size: 13.5px; line-height: 1.35; color: var(--neutral-500); transition: color .2s, border-color .2s; }
.pt__toc a:hover { color: var(--neutral-900); }
.pt__toc a.is-on { border-left-color: var(--yellow); color: var(--neutral-900); }
.pt__share { position: sticky; top: calc(120px + 420px); margin-top: 32px; }
.pt__share button { padding: 9px 14px; border: 0; border-radius: 99px; background: #F2F4F5; font: inherit; font-size: 13px; color: var(--neutral-700); cursor: pointer; }
.pt__share button.is-ok { background: var(--yellow); color: var(--blue-900); }
.pt__art { min-width: 0; font-size: 18px; line-height: 1.75; color: #2b3134; }
.pt__art h2 { margin: 56px 0 16px; scroll-margin-top: 110px; font-weight: 400; font-size: clamp(26px, 2.4vw, 32px); line-height: 1.2; letter-spacing: -.015em; color: var(--neutral-900); }
.pt__art h3 { margin: 32px 0 8px; font-weight: 500; font-size: 20px; line-height: 1.3; color: var(--neutral-900); }
.pt__art p { margin: 0 0 18px; }
.pt__art ul, .pt__art ol:not(.pt__crit ol) { margin: 0 0 22px; padding-left: 22px; }
.pt__art li { margin-bottom: 10px; }
.pt__art li::marker { color: #a8720a; }
.pt__art a:not(.btn) { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.pt__art strong { font-weight: 600; color: var(--neutral-900); }
.pt__resp { margin-bottom: 8px; padding: 22px 24px; border-radius: 20px; background: var(--blue-900); color: var(--neutral-100); }
.pt__resp-t { margin: 0 0 8px !important; display: flex; align-items: center; gap: 8px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.pt__resp p:last-child { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-000); }
.pt__tab { margin: 32px 0; overflow-x: auto; border-radius: 18px; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.pt__tab table { width: 100%; border-collapse: collapse; font-size: 15.5px; line-height: 1.45; }
.pt__tab caption { padding: 14px 18px; text-align: left; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); background: #F4F5F3; }
.pt__tab th { padding: 12px 18px; text-align: left; font-weight: 500; font-size: 14px; background: var(--blue-900); color: #fff; }
.pt__tab th:last-child { background: var(--yellow); color: var(--blue-900); }
.pt__tab td { padding: 12px 18px; border-top: 1px solid rgba(34, 37, 38, .07); vertical-align: top; }
.pt__crit { margin: 28px 0; padding: 24px; border-radius: 20px; background: #F4F5F3; }
.pt__crit-t { margin: 0 0 14px !important; font-weight: 500; font-size: 16px; color: var(--neutral-900); }
.pt__crit ol { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; counter-reset: c; }
.pt__crit li { counter-increment: c; display: grid; grid-template-columns: 34px 170px minmax(0, 1fr); gap: 10px; align-items: baseline; margin: 0; padding: 10px 14px; border-radius: 12px; background: #fff; font-size: 15px; line-height: 1.45; }
.pt__crit li::before { content: "0" counter(c); font-size: 13px; color: #a8720a; }
.pt__crit b { font-weight: 600; color: var(--neutral-900); }
.pt__crit span { color: var(--neutral-600); }
.pt__rm { margin: 40px 0; display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 26px; align-items: center; padding: 26px; border-radius: 24px; background: var(--yellow); color: var(--blue-900); }
.pt__rm p { margin: 0 0 10px; font-size: 15.5px; line-height: 1.55; }
.pt__rm-rot { font-size: 11px !important; letter-spacing: .14em; text-transform: uppercase; opacity: .7; margin-bottom: 4px !important; }
.pt__rm-t { font-weight: 400; font-size: 24px !important; line-height: 1.2 !important; letter-spacing: -.01em; }
.pt__rm .btn { margin-top: 6px; }
.pt__rm .btn--amarelo { background: var(--blue-900); color: #fff; }
.pt__rm-capa { aspect-ratio: 3 / 4; display: flex; flex-direction: column; justify-content: space-between; padding: 14px; border-radius: 6px 14px 14px 6px; background: var(--blue-900); color: #fff; box-shadow: -6px 0 0 rgba(1, 29, 38, .35) inset, 0 24px 40px -20px rgba(1, 29, 38, .7); rotate: -4deg; }
.pt__rm-capa span { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.pt__rm-capa b { font-weight: 200; font-size: 30px; letter-spacing: -.02em; }
.pt__rm-capa i { font-style: normal; font-size: 12px; line-height: 1.25; }
.pt__faq { margin-top: 56px; }
.pt__faq h2 { margin-top: 0; }
.pt__fim { margin-top: 48px; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 14px; }
.pt__autor2 { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 16px; padding: 22px; border-radius: 20px; background: #F4F5F3; }
.pt__autor2 img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; filter: grayscale(1); }
.pt__autor2 p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--neutral-600); }
.pt__autor2 b { display: block; margin: 2px 0 6px; font-weight: 500; font-size: 16px; color: var(--neutral-900); }
.pt__autor2-r, .pt__prox p { font-size: 11px !important; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500) !important; }
.pt__prox { display: flex; flex-direction: column; gap: 8px; padding: 22px; border-radius: 20px; background: var(--blue-900); color: #fff; }
.pt__prox p { margin: 0; color: var(--neutral-400) !important; }
.pt__prox b { font-weight: 300; font-size: 18px; line-height: 1.3; }
.pt__prox-breve { align-self: flex-start; padding: 3px 9px; border-radius: 99px; background: rgba(249, 250, 250, .1); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--yellow); }
.ptr { background: #F4F5F3; color: var(--neutral-900); }
.ptr__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: flex; flex-direction: column; gap: 36px; }
.ptr__cab { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; }

/* Conteúdos (hub) */
.cnh { position: relative; overflow: hidden; background: radial-gradient(40% 60% at 100% 0%, rgba(244, 182, 63, .12), transparent 70%), radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.cnh__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.cnh__portas { width: 100%; margin: 24px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cnh__portas li { opacity: 0; translate: 0 14px; animation: obt-in .6s ease forwards; animation-delay: calc(.4s + var(--d) * .15s); }
.cnp { height: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px; border-radius: 26px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); color: #fff; transition: translate .4s cubic-bezier(.2, .7, .2, 1), box-shadow .4s, background-color .4s; }
.cnp:hover { translate: 0 -6px; box-shadow: inset 0 0 0 1px var(--yellow); background: rgba(249, 250, 250, .08); }
.cnp--0 { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.cnp--0:hover { background: var(--yellow); box-shadow: 0 40px 70px -40px rgba(244, 182, 63, .6); }
.cnp__ic { display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 14px; border-radius: 16px; background: rgba(249, 250, 250, .08); color: var(--yellow); }
.cnp--0 .cnp__ic { background: var(--blue-900); }
.cnp__rot { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; opacity: .7; }
.cnp b { font-weight: 300; font-size: 34px; letter-spacing: -.02em; }
.cnp p { margin: 0; font-size: 15px; line-height: 1.55; opacity: .85; }
.cnp__ir { margin-top: auto; padding-top: 12px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.cnp:not(.cnp--0) .cnp__ir svg { color: var(--yellow); }
.cnd, .cnr { background: #F4F5F3; color: var(--neutral-900); }
.cnd__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px 48px; display: flex; flex-direction: column; gap: 36px; }
.cnd__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cnr__in { max-width: 1286px; margin: 0 auto; padding: 56px 40px 112px; display: flex; flex-direction: column; gap: 36px; }
.cnr__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.cnt { display: flex; flex-direction: column; gap: 14px; padding: 28px; border-radius: 26px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.cnt__rot { margin: 0; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
.cnt h3 { margin: 0 0 6px; font-weight: 300; font-size: 28px; line-height: 1.15; letter-spacing: -.015em; }
.cnt ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.cnt__i { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 14px 0; border-top: 1px solid rgba(34, 37, 38, .08); font-size: 15px; line-height: 1.4; color: var(--neutral-800); }
a.cnt__i:hover span { color: var(--neutral-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.cnt__i b { font-weight: 300; font-size: 13px; color: #a8720a; }
.cnt__i em { font-style: normal; padding: 3px 8px; border-radius: 99px; background: #F2F4F5; font-size: 11px; color: var(--neutral-500); white-space: nowrap; }
.cnt__i svg { color: #a8720a; }
.cnms { background: var(--blue-900); color: var(--neutral-100); }
.cnms__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 56px; align-items: start; }
.cnms__cab { position: sticky; top: 120px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.cnms h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.02em; color: #fff; }
.cnms h2 .is-dim { color: var(--neutral-400); }
.cnms__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.cnm { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 18px; align-items: center; padding: 14px; border-radius: 20px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); transition: box-shadow .3s, background-color .3s; }
.cnm:hover { box-shadow: inset 0 0 0 1px var(--yellow); background: rgba(249, 250, 250, .07); }
.cnm__capa { aspect-ratio: 3 / 4; display: flex; flex-direction: column; justify-content: space-between; padding: 8px; border-radius: 4px 10px 10px 4px; background: #0e3a4b; box-shadow: -4px 0 0 rgba(0, 0, 0, .25) inset; }
.cnm__capa--ib { background: var(--yellow); color: var(--blue-900); }
.cnm__capa b { font-weight: 300; font-size: 14px; color: var(--yellow); }
.cnm__capa--ib b { color: var(--blue-900); }
.cnm__capa i { font-style: normal; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; opacity: .8; }
.cnm__tx { display: flex; flex-direction: column; gap: 4px; }
.cnm__tx b { font-weight: 400; font-size: 18px; color: #fff; }
.cnm__tx span { font-size: 14px; line-height: 1.45; color: var(--neutral-300); }

@media (max-width: 1100px) {
  .csh__in, .cgh__in, .cnh__in { padding: 130px 24px 72px; grid-template-columns: minmax(0, 1fr); }
  .csl__in, .bll__in { padding-left: 24px; padding-right: 24px; }
  .csc--dest { flex-direction: column; }
  .csc--dest .csc__vis { min-height: 300px; }
  .csc--dest .csc__tx { padding: 28px; }
  .csx__in, .cgn__in, .cgt__in, .cgm__in, .cge__in, .cgd__in, .cgr__in, .ptr__in, .cnd__in, .cnr__in, .cnms__in { padding-left: 24px; padding-right: 24px; }
  .cgd__in, .cge__in, .cgn__in, .cnms__in { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .cgm__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cgt__painel { grid-template-columns: minmax(0, 1fr); padding: 24px; }
  .cgh__tela { rotate: 0deg; }
  .blh__in, .pth__in { padding: 120px 24px 48px; }
  .blh__cab { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .bll__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pt__in { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 40px 24px 80px; }
  .pt__aside { display: none; }
  .cnh__portas { grid-template-columns: minmax(0, 1fr); }
  .cnms__cab { position: static; }
}
@media (max-width: 640px) {
  .csl__grade, .bll__grade, .cnr__grade, .cge__lista, .cgr__grade, .cgm__lista { grid-template-columns: minmax(0, 1fr); }
  .csl__barra { position: static; border-radius: 22px; }
  .csh__prova li { grid-template-columns: 100px minmax(0, 1fr); }
  .csh__prova b { font-size: 24px; }
  .bdest { grid-template-columns: minmax(0, 1fr); }
  .bdest .bcap--g { min-height: 200px; }
  .bdest__tx { padding: 24px; }
  .bll__busca { width: 100%; }
  .pt__art { font-size: 17px; }
  .pt__crit li { grid-template-columns: 30px minmax(0, 1fr); }
  .pt__crit span { grid-column: 2; }
  .pt__rm { grid-template-columns: minmax(0, 1fr); }
  .pt__rm-capa { width: 110px; }
  .pt__fim { grid-template-columns: minmax(0, 1fr); }
  .pth__data { margin-left: 0 !important; text-align: left; width: 100%; }
  .cgh__ficha { grid-template-columns: minmax(0, 1fr); }
  .cnm { grid-template-columns: 60px minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .csh__prova li, .cnh__portas li { animation: none; opacity: 1; translate: 0 0; } }
.csl__barra { position: static; }
.csc-li--larga { grid-column: 1 / -1; }
.csc-li--larga .csc { flex-direction: row; }
.csc-li--larga .csc__vis { flex: 1; aspect-ratio: auto; min-height: 340px; }
.csc-li--larga .csc__tx { flex: 1.2; justify-content: center; padding: 36px; }
@media (max-width: 1100px) { .csc-li--larga .csc { flex-direction: column; } .csc-li--larga .csc__vis { min-height: 300px; } }
.cgh__tela img { aspect-ratio: 1200 / 642; object-fit: cover; object-position: top; }
@media (max-width: 640px) { .stc__para { font-size: 68px !important; } }

/* ==========================================================================
   v7.3: modelo "serviço" v2 (Sites e plataformas, Marketing de conteúdo com IA)
   ========================================================================== */
.s2-cab { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; max-width: 760px; }
.s2-cab h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.8vw, 56px); line-height: 1.03; letter-spacing: -.025em; }
.s2-cab h2 .is-dim { color: var(--neutral-400); }
.s2-cab__lead { margin: 0; max-width: 620px; font-size: 17px; line-height: 1.6; color: var(--neutral-600); }
[data-tema="escuro"] .s2-cab h2 { color: #fff; }
[data-tema="escuro"] .s2-cab__lead { color: var(--neutral-300); }

/* Quatro olhares */
.s2l { background: #F4F5F3; color: var(--neutral-900); }
.s2l__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 48px; }
.s2l__grade { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 28px; align-items: stretch; }
.s2l__nav { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.s2l__nav button { position: relative; overflow: hidden; width: 100%; display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 14px; align-items: center; padding: 16px; border: 0; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); font: inherit; text-align: left; color: var(--neutral-900); cursor: pointer; transition: background-color .3s, box-shadow .3s, translate .3s; }
.s2l__nav button:hover { translate: 4px 0; }
.s2l__ic { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: #F2F4F5; color: var(--blue-900); transition: background-color .3s, color .3s; }
.s2l__tx { display: flex; flex-direction: column; gap: 2px; }
.s2l__tx b { font-weight: 500; font-size: 17px; }
.s2l__tx em { font-style: normal; font-size: 13.5px; color: var(--neutral-500); }
.s2l__bar { position: absolute; left: 0; bottom: 0; height: 3px; width: calc(var(--p, 0) * 100%); background: var(--yellow); }
.s2l__nav button.is-on { background: var(--blue-900); color: #fff; box-shadow: 0 30px 60px -36px rgba(1, 29, 38, .7); }
.s2l__nav button.is-on .s2l__ic { background: var(--yellow); }
.s2l__nav button.is-on em { color: var(--neutral-300); }
.s2l__palco { position: relative; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); grid-template-rows: auto 1fr; border-radius: 28px; overflow: hidden; background: var(--blue-900); box-shadow: 0 60px 100px -60px rgba(1, 29, 38, .7); }
.s2l__nav-b { grid-column: 1 / -1; margin: 0; display: flex; align-items: center; gap: 6px; padding: 12px 16px; background: #0a2832; font-size: 12px; color: var(--neutral-400); }
.s2l__nav-b i { width: 9px; height: 9px; border-radius: 50%; background: rgba(249, 250, 250, .2); }
.s2l__nav-b span { margin-left: 12px; padding: 3px 12px; border-radius: 99px; background: rgba(249, 250, 250, .06); }
.s2l__site { position: relative; margin: 18px 0 18px 18px; padding: 16px 18px 20px; border-radius: 16px; background: #fff; color: #1b2a30; min-height: 380px; transition: filter .5s; }
.s2s__topo { display: flex; align-items: center; gap: 12px; font-size: 13px; }
.s2s__topo b { margin-right: auto; font-weight: 600; }
.s2s__topo span { width: 46px; height: 7px; border-radius: 4px; background: #e3e8ea; }
.s2s__topo em { font-style: normal; padding: 6px 10px; border-radius: 8px; background: var(--blue-900); color: #fff; font-size: 11px; }
.s2s__hero { margin-top: 34px; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; max-width: 78%; }
.s2s__h { margin: 0; font-weight: 400; font-size: clamp(22px, 2.3vw, 32px); line-height: 1.12; letter-spacing: -.02em; border-radius: 6px; transition: box-shadow .3s, background-color .3s; }
.s2s__sub { margin: 0; font-size: 14px; line-height: 1.5; color: #5d6b70; }
.s2s__cta { padding: 9px 14px; border-radius: 9px; background: var(--yellow); font-size: 12.5px; font-weight: 500; }
.s2s__cards { margin-top: 30px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.s2s__cards i { height: 64px; border-radius: 12px; background: #eef2f3; }
.s2s__hot, .s2s__relogio, .s2s__code, .s2s__ia, .s2s__ed { position: absolute; opacity: 0; pointer-events: none; transition: opacity .45s, translate .45s; translate: 0 8px; }
.s2l__palco[data-l="0"] [data-lp="0"], .s2l__palco[data-l="1"] [data-lp="1"], .s2l__palco[data-l="2"] [data-lp="2"], .s2l__palco[data-l="3"] [data-lp="3"] { opacity: 1; translate: 0 0; }
.s2s__hot { padding: 5px 10px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-size: 11.5px; font-weight: 500; box-shadow: 0 0 0 6px rgba(244, 182, 63, .25); }
.s2s__hot--1 { right: 12px; top: 92px; transition-delay: .1s; }
.s2s__hot--2 { right: 12px; top: 172px; transition-delay: .25s; }
.s2s__hot--3 { left: 150px; top: 222px; transition-delay: .4s; }
.s2s__relogio { right: 16px; bottom: 16px; width: 54px; height: 54px; }
.s2s__relogio circle { fill: #fff; stroke: var(--yellow); stroke-width: 3; stroke-dasharray: 1; stroke-dashoffset: 1; transform: rotate(-90deg); transform-origin: center; }
.s2l__palco[data-l="0"] .s2s__relogio circle { animation: s2-rel 5s linear infinite; }
@keyframes s2-rel { to { stroke-dashoffset: 0; } }
.s2s__relogio text { font-size: 12px; text-anchor: middle; fill: var(--blue-900); font-family: inherit; }
.s2s__code { left: 14px; right: 14px; bottom: 14px; padding: 14px 16px; border-radius: 12px; background: #0c2731; color: #b9d2da; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11.5px; line-height: 1.75; }
.s2s__code p { margin: 0; }
.s2s__code b { color: #3ecf8e; font-weight: 400; }
.s2l__palco[data-l="1"] .s2s__h { box-shadow: 0 0 0 2px var(--blue-700); }
.s2s__ia { left: 14px; right: 14px; bottom: 14px; padding: 14px; border-radius: 14px; background: #f5f6f4; box-shadow: 0 20px 40px -20px rgba(1, 29, 38, .4); font-size: 12.5px; line-height: 1.5; }
.s2s__q, .s2v__q { margin: 0 0 8px auto; max-width: 85%; width: fit-content; padding: 8px 12px; border-radius: 12px 12px 4px 12px; background: var(--blue-900); color: #fff; font-size: 12.5px; }
.s2s__a, .s2v__a { margin: 0; padding: 10px 12px; border-radius: 12px 12px 12px 4px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); color: #1b2a30; }
.s2s__a b, .s2v__a b { background: rgba(244, 182, 63, .45); padding: 0 3px; border-radius: 3px; font-weight: 500; }
.s2s__fonte { display: inline-block; margin-top: 6px; padding: 2px 8px; border-radius: 99px; background: #e7eef0; font-size: 11px; color: #3a5560; }
.s2l__palco[data-l="2"] .s2s__cards, .s2l__palco[data-l="1"] .s2s__cards { filter: blur(1px); opacity: .5; }
.s2s__ed { left: 14px; top: 64px; display: flex; gap: 4px; padding: 5px; border-radius: 10px; background: var(--blue-900); font-size: 11px; color: #fff; }
.s2s__ed span { padding: 4px 8px; border-radius: 6px; background: rgba(255, 255, 255, .08); }
.s2s__ed em { font-style: normal; padding: 4px 10px; border-radius: 6px; background: var(--yellow); color: var(--blue-900); }
.s2l__palco[data-l="3"] .s2s__h { margin-top: 30px; background: rgba(244, 182, 63, .16); box-shadow: 0 0 0 2px var(--yellow); }
.s2s__h.is-dig::after { content: ""; display: inline-block; width: 2px; height: .9em; margin-left: 2px; vertical-align: -2px; background: var(--blue-900); animation: s2-pisca .8s steps(1) infinite; }
@keyframes s2-pisca { 50% { opacity: 0; } }
.s2l__leitura { padding: 26px 24px 54px; color: var(--neutral-100); display: flex; flex-direction: column; gap: 10px; }
.s2l__leitura.is-troca { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.s2l__rot { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.s2l__leitura h3 { margin: 6px 0 0; font-weight: 300; font-size: 28px; line-height: 1.1; letter-spacing: -.02em; color: var(--yellow); }
.s2l__leitura > p:not(.s2l__rot) { margin: 0; font-size: 15px; line-height: 1.6; color: var(--neutral-200); }
.s2l__leitura ul { margin: 8px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.s2l__leitura li { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border-radius: 12px; background: rgba(249, 250, 250, .06); font-size: 14px; color: #fff; opacity: 0; translate: 0 8px; animation: obt-in .45s ease forwards; animation-delay: calc(.15s + var(--d) * .12s); }
.s2l__leitura li svg { flex: none; margin-top: 2px; color: var(--yellow); }
.s2l__aviso, .s2t__aviso { position: absolute; right: 16px; bottom: 12px; margin: 0; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--neutral-500); }

/* Capítulos: visuais */
.s2v { color: #fff; }
.s2v--corrida { display: flex; flex-direction: column; gap: 18px; max-width: 460px; }
.s2v--corrida p { margin: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; color: var(--neutral-300); }
.s2v--corrida i { display: block; height: 14px; border-radius: 99px; background: rgba(249, 250, 250, .25); transform-origin: left; scale: calc(var(--e) * var(--w)) 1; }
.s2v--corrida p.is-on { color: #fff; }
.s2v--corrida p.is-on i { background: var(--yellow); }
.s2v--corrida small { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); }
.s2v--arvore { width: 100%; max-width: 440px; }
.s2v--arvore path { fill: none; stroke: var(--yellow); stroke-width: 1.5; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--e)); }
.s2v--arvore rect { fill: #0c2c38; stroke: rgba(249, 250, 250, .25); }
.s2v--arvore rect.is-on { fill: var(--yellow); stroke: none; opacity: var(--e); }
.s2v--arvore text { font-size: 11px; text-anchor: middle; fill: #fff; font-family: inherit; }
.s2v--chat { max-width: 440px; display: flex; flex-direction: column; }
.s2v--chat .s2v__a { overflow: hidden; }
.s2v--chat .s2v__a span { display: block; clip-path: inset(0 0 calc((1 - var(--e)) * 100%) 0); }
.s2v__fonte { margin: 8px 0 0; align-self: flex-start; padding: 3px 10px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-size: 12px; opacity: var(--e); }
.s2v--seu { position: relative; display: flex; flex-wrap: wrap; gap: 10px; max-width: 420px; padding: 54px 22px 22px; border-radius: 22px; box-shadow: inset 0 0 0 1.5px rgba(244, 182, 63, .6); }
.s2v--seu b { position: absolute; left: 22px; top: 18px; font-weight: 400; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.s2v--seu span { padding: 14px 18px; border-radius: 14px; background: rgba(249, 250, 250, .08); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); font-size: 16px; translate: 0 calc((1 - clamp(0, var(--e) * 3 - var(--d), 1)) * -40px); opacity: clamp(0, var(--e) * 3 - var(--d), 1); }
.s2v--busca { max-width: 460px; display: flex; flex-direction: column; gap: 14px; }
.s2v__barra { margin: 0; display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-radius: 99px; background: #fff; color: #1b2a30; font-size: 14px; }
.s2v__barra span { overflow: hidden; white-space: nowrap; clip-path: inset(0 calc((1 - var(--e)) * 100%) 0 0); }
.s2v__barra i { flex: none; margin-left: auto; width: 2px; height: 16px; background: var(--blue-900); animation: s2-pisca .8s steps(1) infinite; }
.s2v--busca ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.s2v--busca li { padding: 8px 14px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-size: 13px; opacity: clamp(0, var(--e) * 3 - var(--d), 1); }
.s2v--onda { display: flex; align-items: center; gap: 6px; height: 160px; max-width: 460px; flex-wrap: wrap; }
.s2v--onda i { width: 14px; height: calc(var(--h) * 120px * var(--e)); min-height: 4px; border-radius: 99px; background: var(--yellow); }
.s2v--onda p { flex-basis: 100%; margin: 6px 0 0; font-size: 13px; color: var(--neutral-300); }
.s2v--doc { position: relative; display: flex; flex-direction: column; gap: 10px; max-width: 380px; padding: 22px; border-radius: 18px; background: #fff; }
.s2v--doc i { height: 9px; border-radius: 4px; background: #e3e8ea; transform-origin: left; scale: var(--e) 1; }
.s2v--doc i:nth-of-type(3) { width: 70%; }
.s2v__tag { align-self: flex-start; padding: 5px 11px; border-radius: 99px; background: #eef2f3; color: #3a5560; font-size: 12px; opacity: clamp(.25, var(--e) * 3 - var(--d), 1); }
.s2v__tag.is-on { background: var(--yellow); color: var(--blue-900); }
.s2v--acervo { display: grid; grid-template-columns: repeat(12, 1fr); gap: 6px; max-width: 440px; }
.s2v--acervo i { aspect-ratio: 1; border-radius: 5px; background: rgba(249, 250, 250, .08); }
.s2v--acervo i { background: rgb(244 182 63 / calc(clamp(0, var(--e) * 48 - var(--d), 1))); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); }
.s2v--acervo p { grid-column: 1 / -1; margin: 10px 0 0; font-size: 13px; color: var(--neutral-300); }
.mt--s2.is-anim { height: calc(100vh + 4 * 80vh); }

/* Qual é o seu site */
.s2t { background: #fff; color: var(--neutral-900); }
.s2t__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 44px; }
.s2t__app { display: flex; flex-direction: column; gap: 22px; }
.s2t__nav { margin: 0; padding: 6px; list-style: none; display: flex; gap: 4px; overflow-x: auto; border-radius: 99px; background: #F4F5F3; scrollbar-width: none; align-self: flex-start; max-width: 100%; }
.s2t__nav button { flex: none; display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border: 0; border-radius: 99px; background: none; font: inherit; font-size: 14.5px; color: var(--neutral-700); cursor: pointer; transition: background-color .25s, color .25s; }
.s2t__nav button b { font-weight: 400; font-size: 12px; color: #a8720a; }
.s2t__nav button.is-on { background: var(--blue-900); color: #fff; }
.s2t__nav button.is-on b { color: var(--yellow); }
.s2t__palco { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr); gap: 40px; align-items: center; }
.s2t__note { border-radius: 18px; overflow: hidden; background: #0c1f26; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1), 0 70px 110px -60px rgba(1, 29, 38, .55); }
.s2t__barra { margin: 0; display: flex; align-items: center; gap: 6px; padding: 11px 14px; background: #13262e; font-size: 12px; color: var(--neutral-400); }
.s2t__barra i { width: 9px; height: 9px; border-radius: 50%; background: rgba(249, 250, 250, .2); }
.s2t__barra span { margin-left: 12px; padding: 3px 12px; border-radius: 99px; background: rgba(249, 250, 250, .06); }
.s2t__tela { position: relative; aspect-ratio: 16 / 10; overflow: hidden; }
.s2t__tela img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; opacity: 0; scale: 1.04; transition: opacity .7s, scale 1.2s cubic-bezier(.2, .7, .2, 1); }
.s2t__tela img.is-on { opacity: 1; scale: 1; }
.s2t__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.s2t__tx.is-troca { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.s2t__q { margin: 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #a8720a; }
.s2t__tx h3 { margin: 0; font-weight: 300; font-size: clamp(26px, 2.4vw, 36px); line-height: 1.1; letter-spacing: -.02em; }
.s2t__tx > p:not(.s2t__q) { margin: 0; font-size: 16px; line-height: 1.6; color: var(--neutral-600); }
.s2t__tx ul { margin: 4px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.s2t__tx li { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 99px; background: #F4F5F3; font-size: 13.5px; }
.s2t__tx li svg { color: #a8720a; }
.s2t__lk { margin-top: 6px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--blue-900); }
.s2t__lk svg { color: #a8720a; }

/* Linha de produção */
.s2m { background: radial-gradient(45% 55% at 100% 0%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.s2m--ib { background: radial-gradient(45% 55% at 100% 0%, rgba(244, 182, 63, .14), transparent 70%) var(--blue-900); }
.s2m__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 36px; }
.s2m__nav { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.s2m__nav button { position: relative; overflow: hidden; width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 14px 14px 16px; border: 0; border-radius: 16px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); font: inherit; text-align: left; color: var(--neutral-400); cursor: pointer; transition: background-color .3s, color .3s; }
.s2m__nav button b { font-weight: 400; font-size: 12px; }
.s2m__nav button span { font-size: 15px; }
.s2m__nav button i { position: absolute; left: 0; bottom: 0; height: 3px; width: calc(var(--p, 0) * 100%); background: var(--yellow); }
.s2m__nav button.is-feito { color: var(--neutral-200); }
.s2m__nav button.is-feito i { width: 100%; background: rgba(244, 182, 63, .4); }
.s2m__nav button.is-on { background: rgba(249, 250, 250, .1); color: #fff; }
.s2m__nav button.is-on b { color: var(--yellow); }
.s2m__palco { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.s2m__lado { display: flex; flex-direction: column; gap: 12px; padding: 28px; border-radius: 24px; min-height: 300px; }
.s2m__lado.is-troca { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.s2m__lado--p { background: #fff; color: var(--neutral-900); }
.s2m__lado--ia { background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); }
.s2m__quem { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.s2m__lado--ia .s2m__quem { color: var(--yellow); }
.s2m__av { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--blue-900); color: #fff; }
.s2m__av--ia { background: var(--yellow); color: var(--blue-900); }
.s2m__lado h3 { margin: 6px 0 0; font-weight: 300; font-size: clamp(28px, 2.6vw, 38px); letter-spacing: -.02em; }
.s2m__lado--p p:last-child { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-700); }
.s2m__lado--ia > p:not(.s2m__quem) { margin: 6px 0 0; font-size: 17px; line-height: 1.6; color: var(--neutral-100); }
.s2m__log { margin-top: auto; border-radius: 14px; background: #04161d; overflow: hidden; }
.s2m__log-t { margin: 0; display: flex; align-items: center; gap: 6px; padding: 9px 12px; border-bottom: 1px solid rgba(249, 250, 250, .06); font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; color: var(--neutral-500); }
.s2m__log-t i { width: 8px; height: 8px; border-radius: 50%; background: rgba(249, 250, 250, .16); }
.s2m__log-t span { margin-left: 8px; }
.s2m__log ol { margin: 0; padding: 12px 14px; list-style: none; display: flex; flex-direction: column; gap: 6px; min-height: 92px; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12.5px; color: #b9d2da; }
.s2m__log li { opacity: 0; translate: 0 6px; animation: obt-in .35s ease forwards; animation-delay: calc(var(--d) * .7s); }
.s2m__log li::before { content: "> "; color: var(--yellow); }
.s2m__log li:last-child { color: #3ecf8e; }
.s2m__ctrl { grid-column: 1 / -1; display: flex; align-items: center; gap: 14px; }
.s2m__ctrl button { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(249, 250, 250, .08); color: #fff; cursor: pointer; }
.s2m__ctrl button.is-pausa { background: var(--yellow); color: var(--blue-900); }
.s2m__prog { flex: 1; height: 3px; border-radius: 3px; background: rgba(249, 250, 250, .1); overflow: hidden; }
.s2m__prog i { display: block; height: 100%; width: 100%; background: var(--yellow); transform-origin: left; scale: var(--p, 0) 1; }
.s2m__aviso { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--neutral-500); }

/* CTA do diagnóstico */
.s2d { background: radial-gradient(40% 70% at 90% 50%, rgba(244, 182, 63, .16), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.s2d__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.s2d__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.s2d h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(34px, 3.8vw, 56px); line-height: 1.04; letter-spacing: -.025em; color: #fff; }
.s2d h2 em { font-style: italic; color: var(--yellow); }
.s2d__tx p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.s2d__form { display: flex; flex-direction: column; gap: 16px; padding: 24px; border-radius: 24px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.s2d__campo { display: flex; align-items: center; gap: 8px; padding: 6px 6px 6px 16px; border-radius: 16px; background: #fff; }
.s2d__campo > span { font-size: 15px; color: var(--neutral-500); }
.s2d__campo input { flex: 1; min-width: 0; height: 48px; border: 0; outline: 0; background: none; font: inherit; font-size: 16px; color: var(--neutral-900); }
.s2d__campo.is-erro { box-shadow: 0 0 0 2px #E2665A; }
.s2d__itens { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px 16px; }
.s2d__itens li { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; color: var(--neutral-200); }
.s2d__itens svg { color: var(--yellow); }

/* Alba: perguntas sugeridas */
.s2-albaq { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.s2-albaq button { padding: 10px 14px; border: 0; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); font: inherit; font-size: 13.5px; color: var(--neutral-800); cursor: pointer; transition: background-color .2s, box-shadow .2s; }
.s2-albaq button:hover { background: var(--yellow); box-shadow: none; }

/* Estúdio: uma entrevista, vários conteúdos */
.s2e { background: #F4F5F3; color: var(--neutral-900); }
.s2e__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 44px; }
.s2e__app { position: relative; display: flex; flex-direction: column; gap: 14px; }
.s2e__passos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.s2e__passos li { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: background-color .4s, color .4s; }
.s2e__passos b { font-weight: 400; font-size: 12px; color: #a8720a; }
.s2e__passos span { font-size: 15px; }
.s2e__passos em { font-style: normal; font-size: 12px; color: var(--neutral-500); }
.s2e__app[data-fase="1"] .s2e__passos li:nth-child(-n+1), .s2e__app[data-fase="2"] .s2e__passos li:nth-child(-n+2), .s2e__app[data-fase="3"] .s2e__passos li:nth-child(-n+3),
.s2e__app[data-fase="4"] .s2e__passos li:nth-child(-n+4), .s2e__app[data-fase="5"] .s2e__passos li { background: var(--blue-900); color: #fff; }
.s2e__app[data-fase="1"] .s2e__passos li:nth-child(-n+1) em, .s2e__app[data-fase="2"] .s2e__passos li:nth-child(-n+2) em, .s2e__app[data-fase="3"] .s2e__passos li:nth-child(-n+3) em,
.s2e__app[data-fase="4"] .s2e__passos li:nth-child(-n+4) em, .s2e__app[data-fase="5"] .s2e__passos li em { color: var(--yellow); }
.s2e__palco { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .8fr) minmax(0, 1.1fr); gap: 14px; min-height: 420px; }
.s2e__col { display: flex; flex-direction: column; gap: 12px; padding: 22px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.s2e__col--a { background: var(--blue-900); color: #fff; }
.s2e__rot { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.s2e__col--a .s2e__rot { color: var(--neutral-300); }
.s2e__onda { display: flex; align-items: center; gap: 3px; height: 64px; }
.s2e__onda i { flex: 1; height: 8%; border-radius: 99px; background: rgba(249, 250, 250, .2); transition: height .3s; }
.s2e__app:not([data-fase="0"]) .s2e__onda i { background: var(--yellow); height: calc(var(--h) * 100%); animation: s2-onda 1s ease-in-out infinite alternate; }
.s2e__app:not([data-fase="0"]) .s2e__onda i:nth-child(3n) { animation-delay: -.3s; }
.s2e__app:not([data-fase="0"]) .s2e__onda i:nth-child(4n+1) { animation-delay: -.6s; }
.s2e__app[data-fase="5"] .s2e__onda i { animation: none; height: 20%; background: rgba(244, 182, 63, .5); }
@keyframes s2-onda { from { scale: 1 .35; } to { scale: 1 1; } }
.s2e__fala, .s2e__pautas, .s2e__saidas { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.s2e__fala li { padding: 9px 12px; border-radius: 12px; background: rgba(249, 250, 250, .06); font-size: 13.5px; line-height: 1.45; color: var(--neutral-100); opacity: 0; translate: 0 8px; transition: opacity .4s, translate .4s; transition-delay: calc(var(--d) * .6s); }
.s2e__app:not([data-fase="0"]) .s2e__fala li { opacity: 1; translate: 0 0; }
.s2e__pautas li { padding: 10px 12px; border-radius: 12px; background: #F4F5F3; font-size: 14px; line-height: 1.35; opacity: 0; translate: -10px 0; transition: opacity .4s, translate .4s; transition-delay: calc(var(--d) * .25s); }
.s2e__app[data-fase="3"] .s2e__pautas li, .s2e__app[data-fase="4"] .s2e__pautas li, .s2e__app[data-fase="5"] .s2e__pautas li { opacity: 1; translate: 0 0; }
.s2e__saidas li { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 12px 14px; border-radius: 14px; background: #F4F5F3; opacity: 0; translate: 0 10px; transition: opacity .45s, translate .45s, background-color .4s; transition-delay: calc(var(--d) * .3s); }
.s2e__app[data-fase="4"] .s2e__saidas li, .s2e__app[data-fase="5"] .s2e__saidas li { opacity: 1; translate: 0 0; }
.s2e__app[data-fase="5"] .s2e__saidas li { background: #FFF7E6; }
.s2e__tipo { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #a8720a; }
.s2e__saidas b { font-weight: 500; font-size: 14.5px; line-height: 1.35; padding-right: 50px; }
.s2e__saidas em { position: absolute; right: 12px; top: 12px; font-style: normal; padding: 2px 8px; border-radius: 99px; background: #fff; font-size: 11px; color: var(--neutral-500); }
.s2e__ok { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: #2f8a5f; opacity: 0; transition: opacity .4s; transition-delay: calc(.4s + var(--d) * .3s); }
.s2e__app[data-fase="5"] .s2e__ok { opacity: 1; }
.s2e__play { position: absolute; left: 50%; top: 50%; translate: -50% -50%; z-index: 2; display: inline-flex; align-items: center; gap: 12px; padding: 12px 22px 12px 12px; border: 0; border-radius: 99px; background: var(--yellow); font: inherit; font-size: 15px; font-weight: 500; color: var(--blue-900); cursor: pointer; box-shadow: 0 30px 60px -20px rgba(1, 29, 38, .6), 0 0 0 10px rgba(244, 182, 63, .2); transition: opacity .3s, scale .3s; }
.s2e__play:hover { scale: 1.04; }
.s2e__play-ic { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--blue-900); color: var(--yellow); }
.s2e__app:not([data-fase="0"]):not([data-fase="5"]) .s2e__play { opacity: 0; pointer-events: none; }
.s2e__app[data-fase="5"] .s2e__play { left: auto; right: 18px; top: auto; bottom: 18px; translate: 0 0; padding: 6px 16px 6px 6px; font-size: 13px; box-shadow: none; }
.s2e__app[data-fase="5"] .s2e__play-ic { width: 32px; height: 32px; }
.s2e__aviso { margin: 0; font-size: 12.5px; color: var(--neutral-500); }

/* Constância */
.s2k { background: #fff; color: var(--neutral-900); }
.s2k__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; align-items: center; }
.s2k__tx { display: flex; flex-direction: column; gap: 26px; }
.s2k__ctrl { display: flex; flex-direction: column; gap: 10px; padding: 20px; border-radius: 20px; background: #F4F5F3; }
.s2k__ctrl > label { font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
.s2k__r { display: flex; align-items: center; gap: 16px; }
.s2k__r input { flex: 1; accent-color: var(--blue-900); height: 28px; }
.s2k__r output { min-width: 44px; font-weight: 200; font-size: 40px; line-height: 1; color: var(--blue-900); }
.s2k__parou label { display: inline-flex; align-items: center; gap: 10px; font-size: 15px; color: var(--neutral-700); cursor: pointer; }
.s2k__parou input { width: 18px; height: 18px; accent-color: #E2665A; }
.s2k__num { margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.s2k__num div { padding: 18px; border-radius: 18px; background: var(--blue-900); color: #fff; }
.s2k__num dt { font-size: 12.5px; line-height: 1.35; color: var(--neutral-300); }
.s2k__num dd { margin: 6px 0 0; font-weight: 200; font-size: 48px; line-height: 1; letter-spacing: -.03em; color: var(--yellow); }
.s2k__aviso { margin: 0; font-size: 13px; line-height: 1.55; color: var(--neutral-500); }
.s2k__grade { display: grid; grid-template-columns: repeat(24, minmax(0, 1fr)); gap: 4px; align-items: end; min-height: 420px; padding: 24px; border-radius: 26px; background: #F4F5F3; }
.s2k__col { display: flex; flex-direction: column-reverse; gap: 4px; }
.s2k__col i { height: 14px; border-radius: 4px; background: var(--blue-900); animation: s2-cai .4s cubic-bezier(.2, .7, .2, 1) both; }
.s2k__col i.is-novo { background: var(--yellow); }
@keyframes s2-cai { from { opacity: 0; translate: 0 -12px; } }
.s2k__grade .s2k__m { grid-row: auto; font-size: 10px; color: var(--neutral-400); text-align: center; }

/* Formatos */
.s2f { background: radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.s2f__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 44px; }
.s2f__app { display: grid; grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 28px; align-items: stretch; }
.s2f__nav { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.s2f__nav button { width: 100%; display: flex; flex-direction: column; gap: 2px; padding: 16px 18px; border: 0; border-radius: 18px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); font: inherit; text-align: left; color: var(--neutral-300); cursor: pointer; transition: background-color .3s, color .3s; }
.s2f__nav button b { font-weight: 400; font-size: 18px; color: #fff; }
.s2f__nav button span { font-size: 13.5px; }
.s2f__nav button.is-on { background: var(--yellow); box-shadow: none; color: rgba(1, 29, 38, .75); }
.s2f__nav button.is-on b { color: var(--blue-900); }
.s2f__palco { position: relative; display: grid; place-items: center; min-height: 420px; padding: 36px; border-radius: 26px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.s2f__v { grid-area: 1 / 1; width: 100%; max-width: 520px; display: none; justify-content: center; gap: 16px; }
.s2f__v.is-on { display: flex; animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.s2f__aviso { position: absolute; right: 18px; bottom: 14px; margin: 0; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--neutral-500); }
.s2f__doc, .s2f__mail, .s2f__obj { width: 100%; display: flex; flex-direction: column; gap: 10px; padding: 26px; border-radius: 18px; background: #fff; color: #1b2a30; box-shadow: 0 40px 70px -40px rgba(0, 0, 0, .7); }
.s2f__k { margin: 0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #a8720a; }
.s2f__doc b, .s2f__obj b { font-weight: 400; font-size: 22px; line-height: 1.2; letter-spacing: -.01em; }
.s2f__resp { margin: 4px 0; padding: 12px 14px; border-radius: 12px; background: var(--blue-900); color: #fff; font-size: 13.5px; line-height: 1.5; }
.s2f__resp span { display: block; margin-bottom: 4px; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.s2f__doc i, .s2f__mail i { height: 8px; border-radius: 4px; background: #e3e8ea; }
.s2f__doc i.c, .s2f__mail i.c { width: 60%; }
.s2f__autor { margin: 6px 0 0; font-size: 12px; color: #2f8a5f; }
.s2f__livro { width: 210px; aspect-ratio: 3 / 4; display: flex; flex-direction: column; justify-content: space-between; padding: 18px; border-radius: 6px 16px 16px 6px; background: var(--yellow); color: var(--blue-900); box-shadow: -8px 0 0 rgba(1, 29, 38, .2) inset, 0 40px 60px -30px rgba(0, 0, 0, .7); rotate: -4deg; }
.s2f__livro span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.s2f__livro b { font-weight: 300; font-size: 26px; line-height: 1.1; }
.s2f__livro i { font-style: normal; font-size: 12px; }
.s2f__form { align-self: center; width: 210px; display: flex; flex-direction: column; gap: 8px; padding: 18px; border-radius: 16px; background: #fff; color: #1b2a30; }
.s2f__form p { margin: 0; font-size: 14px; font-weight: 500; }
.s2f__form i { height: 30px; border-radius: 8px; background: #eef2f3; }
.s2f__form span { padding: 9px; border-radius: 8px; background: var(--blue-900); color: #fff; font-size: 12px; text-align: center; }
.s2f__de { margin: 0 0 4px; display: flex; flex-direction: column; gap: 2px; padding-bottom: 12px; border-bottom: 1px solid #e3e8ea; }
.s2f__de b { font-size: 13px; }
.s2f__de span { font-size: 18px; }
.s2f__bt { align-self: flex-start; margin-top: 6px; padding: 9px 14px; border-radius: 9px; background: var(--yellow); font-size: 12.5px; }
.s2f__obj p:not(.s2f__k) { margin: 0; font-size: 14.5px; line-height: 1.55; color: #5d6b70; }
.s2f__obj span { align-self: flex-start; padding: 4px 10px; border-radius: 99px; background: #e7f5ee; color: #2f8a5f; font-size: 12px; }
.s2f__ia { width: 100%; display: flex; flex-direction: column; padding: 22px; border-radius: 18px; background: #f5f6f4; }
.s2f__ia .s2v__fonte { opacity: 1; }

@media (max-width: 1100px) {
  .s2l__in, .s2t__in, .s2m__in, .s2e__in, .s2k__in, .s2f__in, .s2d__in { padding: 88px 24px; }
  .s2l__grade, .s2f__app { grid-template-columns: minmax(0, 1fr); }
  .s2l__nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
  .s2l__nav li { flex: none; width: 240px; }
  .s2l__palco { grid-template-columns: minmax(0, 1fr); }
  .s2l__site { margin: 14px; }
  .s2t__palco, .s2k__in, .s2d__in { grid-template-columns: minmax(0, 1fr); }
  .s2m__nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .s2e__palco { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .s2e__col--c { grid-column: 1 / -1; }
  .s2f__nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
  .s2f__nav li { flex: none; width: 220px; }
}
@media (max-width: 640px) {
  .s2s__hero { max-width: 100%; }
  .s2s__hero { max-width: 72%; }
  .s2s__hot--3 { left: 140px; }
  .s2m__palco { grid-template-columns: minmax(0, 1fr); }
  .s2m__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s2e__passos { grid-template-columns: repeat(5, 120px); overflow-x: auto; scrollbar-width: none; }
  .s2e__palco { grid-template-columns: minmax(0, 1fr); }
  .s2e__play { top: 120px; }
  .s2k__grade { min-height: 300px; padding: 14px; gap: 2px; }
  .s2k__col { gap: 2px; }
  .s2k__col i { height: 8px; border-radius: 2px; }
  .s2k__num dd { font-size: 38px; }
  .s2d__campo { flex-wrap: wrap; padding: 10px; }
  .s2d__campo .btn { width: 100%; justify-content: center; }
  .s2f__palco { min-height: 340px; padding: 20px; }
  .s2f__v { flex-direction: column; align-items: center; }
  .mt--s2 .mtp__w { font-size: 58px; }
}
@media (prefers-reduced-motion: reduce) { .s2e__app .s2e__onda i { animation: none !important; } .s2s__relogio circle { animation: none !important; } }
.s2 .stc__para { font-size: clamp(56px, 6.4vw, 104px); white-space: nowrap; }

.s2k__graf { display: flex; flex-direction: column; gap: 10px; padding: 24px; border-radius: 26px; background: #F4F5F3; }
.s2k__graf .s2k__grade { height: 380px; min-height: 0; padding: 0; border-radius: 0; background: repeating-linear-gradient(0deg, rgba(34, 37, 38, .06) 0 1px, transparent 1px 47.5px); align-items: stretch; }
.s2k__col { height: 100%; display: flex; flex-direction: column-reverse; gap: 0; }
.s2k__col i { display: block; width: 100%; height: 0; border-radius: 0; background: var(--blue-900); animation: none; transition: height .5s cubic-bezier(.2, .7, .2, 1); }
.s2k__col i.is-novo { border-radius: 4px 4px 0 0; background: var(--yellow); }
.s2k__eixo { margin: 0; display: flex; justify-content: space-between; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
@media (max-width: 640px) { .s2k__graf { padding: 14px; } .s2k__graf .s2k__grade { height: 240px; gap: 2px; } }
.s2e__vazio { margin: auto 0; padding: 24px 12px; border-radius: 14px; border: 1.5px dashed rgba(34, 37, 38, .14); text-align: center; font-size: 13.5px; color: var(--neutral-400); }
.s2e__app[data-fase="3"] .s2e__vazio--b, .s2e__app[data-fase="4"] .s2e__vazio--b, .s2e__app[data-fase="5"] .s2e__vazio--b, .s2e__app[data-fase="4"] .s2e__vazio--c, .s2e__app[data-fase="5"] .s2e__vazio--c { display: none; }
.s2e__palco { min-height: 400px; }
.s2e__app[data-fase="5"] .s2e__play { position: static; grid-column: 1 / -1; justify-self: end; translate: 0 0; }
.s2t__nav button { white-space: nowrap; }

/* ==========================================================================
   Bloco 3: Ferramentas, Diagnóstico do site, relatório, Materiais e landing do guia
   ========================================================================== */
.rl-h2 { margin: 0; font-weight: 300; font-size: clamp(28px, 3vw, 42px); letter-spacing: -.02em; }
.dg-url { display: flex; flex-direction: column; gap: 8px; }
.dg-url__campo { display: flex; align-items: center; gap: 8px; padding: 6px 6px 6px 16px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); }
.dg-url__campo > span { font-size: 15px; color: var(--neutral-500); }
.dg-url__campo input { flex: 1; min-width: 0; height: 48px; border: 0; outline: 0; background: none; font: inherit; font-size: 16px; color: var(--neutral-900); }
.dg-url__campo:focus-within { box-shadow: 0 0 0 2px var(--yellow); }
.dg-url.is-erro .dg-url__campo { box-shadow: 0 0 0 2px #E2665A; }
.dg-url__erro { margin: 0; font-size: 13px; color: #E2665A; }

/* Diagnóstico: hero e console */
.dgh { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 85% 30%, rgba(244, 182, 63, .12), transparent 70%), radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.dgh__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 56px; align-items: center; }
.dgh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.dgh__tag { margin: 0; display: inline-flex; align-items: center; gap: 10px; padding: 7px 14px; border-radius: 99px; background: rgba(244, 182, 63, .14); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.dgh h1, .gdh h1, .frh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 4.8vw, 76px); line-height: 1; letter-spacing: -.03em; color: #fff; }
.dgh h1 em, .gdh h1 em, .frh h1 em, .rln h2 em { font-style: italic; color: var(--yellow); }
.dgh__lead, .gdh__lead, .frh__lead { margin: 0; max-width: 580px; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.dgh__ok { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px 18px; }
.dgh__ok li { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--neutral-100); }
.dgh__ok svg { color: var(--yellow); }
.dg { position: relative; display: flex; flex-direction: column; gap: 18px; padding: 22px; border-radius: 26px; background: rgba(1, 29, 38, .7); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 70px 110px -50px rgba(0, 0, 0, .8); }
.dg__topo { display: flex; align-items: center; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid rgba(249, 250, 250, .1); }
.dg__av { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--yellow); color: var(--blue-900); }
.dg__topo p { margin: 0; display: flex; flex-direction: column; font-size: 12.5px; color: var(--neutral-300); }
.dg__topo b { font-weight: 500; font-size: 15px; color: #fff; }
.dg__et { margin: 0 0 0 auto; padding: 0; list-style: none; display: flex; gap: 6px; }
.dg__et li { width: 22px; height: 4px; border-radius: 4px; background: rgba(249, 250, 250, .16); }
.dg[data-etapa="1"] .dg__et li:nth-child(-n+1), .dg[data-etapa="2"] .dg__et li:nth-child(-n+2), .dg[data-etapa="3"] .dg__et li { background: var(--yellow); }
.dg__p { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; border: 0; }
.dg__p[hidden] { display: none; }
.dg__p.is-on { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.dg__t { margin: 0; font-size: 20px; font-weight: 300; color: #fff; }
.dg__t b { font-weight: 500; color: var(--yellow); }
.dg__nota { margin: 0; font-size: 12.5px; color: var(--neutral-400); }
.dg__sub { margin: 4px 0 -4px; font-size: 14px; color: var(--neutral-200); }
.dg .fc label { color: var(--neutral-200); }
.dg .ch span { background: rgba(255, 255, 255, .06); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .16); color: rgba(255, 255, 255, .85); }
.dg .ch input:checked + span { background: var(--yellow); color: var(--blue-900); }
.dg .fx-aceite label { color: var(--neutral-300); }
.dg .fx-aceite a { color: var(--yellow); }
.dg-q { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.dg-q li { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 12px; background: rgba(249, 250, 250, .05); font-size: 14px; opacity: 0; translate: 0 8px; animation: obt-in .4s ease forwards; animation-delay: calc(var(--d) * .25s); }
.dg-q__ic { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: rgba(244, 182, 63, .14); color: var(--yellow); }
.dg-q b { font-weight: 400; color: #fff; }
.dg-q em { font-style: normal; font-size: 11.5px; letter-spacing: .06em; color: var(--neutral-400); }
.dg-q li.is-ok em { color: #3ecf8e; }

/* Diagnóstico: seis pontos (roda) */
.dgp { background: #F4F5F3; color: var(--neutral-900); }
.dgp__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 48px; }
.dgp__app { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); grid-template-areas: "roda tx"; gap: 48px; align-items: center; }
.dgp__roda { grid-area: roda; position: relative; margin: 0 auto; padding: 0; list-style: none; width: min(100%, 520px); aspect-ratio: 1; }
.dgp__roda li { position: absolute; left: 50%; top: 50%; width: 150px; translate: -50% -50%; transform: rotate(calc(var(--a, 0) * 60deg - 90deg)) translateX(min(190px, 36vw)) rotate(calc(var(--a, 0) * -60deg + 90deg)); }
.dgp__roda li:nth-child(1) { --a: 0; } .dgp__roda li:nth-child(2) { --a: 1; } .dgp__roda li:nth-child(3) { --a: 2; } .dgp__roda li:nth-child(4) { --a: 3; } .dgp__roda li:nth-child(5) { --a: 4; } .dgp__roda li:nth-child(6) { --a: 5; }
.dgp__roda button { width: 100%; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 10px; border: 0; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 20px 40px -30px rgba(1, 29, 38, .35); font: inherit; color: var(--neutral-800); cursor: pointer; transition: background-color .3s, color .3s, scale .3s; }
.dgp__roda button span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #F2F4F5; color: var(--blue-900); }
.dgp__roda button b { font-weight: 500; font-size: 14px; line-height: 1.2; text-align: center; }
.dgp__roda button:hover { scale: 1.05; }
.dgp__roda button.is-on { background: var(--blue-900); color: #fff; scale: 1.08; }
.dgp__roda button.is-on span { background: var(--yellow); }
.dgp__centro { grid-area: roda; position: relative; place-self: center; width: min(46%, 220px); aspect-ratio: 1; display: grid; place-items: center; pointer-events: none; }
.dgp__centro svg { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.dgp__centro circle { fill: none; stroke-width: 6; }
.dgp__trilho { stroke: rgba(34, 37, 38, .08); }
.dgp__arco { stroke: var(--yellow); stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--f, .1667)); transition: stroke-dashoffset .6s cubic-bezier(.2, .7, .2, 1); }
.dgp__centro p { margin: 0; display: flex; flex-direction: column; align-items: center; }
.dgp__centro b { font-weight: 200; font-size: 56px; line-height: 1; color: var(--blue-900); }
.dgp__centro span { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
.dgp__tx { grid-area: tx; display: flex; flex-direction: column; gap: 12px; }
.dgp__tx.is-troca { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.dgp__tx h3 { margin: 0; font-weight: 300; font-size: clamp(30px, 3vw, 44px); letter-spacing: -.02em; }
.dgp__tx > p:not(.dgp__rot) { margin: 0; font-size: 18px; line-height: 1.55; color: var(--neutral-600); }
.dgp__rot { margin: 10px 0 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #a8720a; }
.dgp__tx ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.dgp__tx li { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; background: #fff; font-size: 15px; }
.dgp__tx li svg { color: #a8720a; }

/* Diagnóstico: como funciona e prévia do relatório */
.dgc { background: var(--blue-900); color: var(--neutral-100); }
.dgc__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 44px; }
.dgc__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.dgc__lista li { position: relative; display: flex; flex-direction: column; gap: 10px; padding: 24px; border-radius: 22px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.dgc__lista li:nth-child(2) { box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .45); }
.dgc__lista li:nth-child(3) { background: #fff; color: var(--neutral-900); }
.dgc__lista b { font-weight: 300; font-size: 14px; color: var(--yellow); }
.dgc__lista li:nth-child(3) b { color: #a8720a; }
.dg-p__q { align-self: flex-start; padding: 3px 10px; border-radius: 99px; background: rgba(249, 250, 250, .1); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.dgc__lista li:nth-child(2) .dg-p__q { background: var(--yellow); color: var(--blue-900); }
.dgc__lista li:nth-child(3) .dg-p__q { background: var(--blue-900); color: #fff; }
.dgc__lista h3 { margin: 0; font-weight: 400; font-size: 21px; color: inherit; }
.dgc__lista p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-300); }
.dgc__lista li:nth-child(3) p { color: var(--neutral-600); }
.dgr { background: #fff; color: var(--neutral-900); }
.dgr__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.dgr__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.dgr__prev { position: relative; display: grid; grid-template-columns: 150px minmax(0, 1fr); grid-template-areas: "n v" "b b"; gap: 18px 22px; align-items: center; padding: 28px; border-radius: 26px; background: #F4F5F3; box-shadow: 0 0 0 1px rgba(34, 37, 38, .05); color: var(--neutral-900); rotate: -1.5deg; transition: rotate .5s, box-shadow .5s; }
.dgr__prev:hover { rotate: 0deg; box-shadow: 0 0 0 2px var(--yellow), 0 50px 80px -50px rgba(1, 29, 38, .4); }
.dgr__nota { grid-area: n; position: relative; display: grid; place-items: center; aspect-ratio: 1; }
.dgr__nota svg { position: absolute; inset: 0; transform: rotate(-90deg); }
.dgr__nota circle { fill: none; stroke: rgba(34, 37, 38, .08); stroke-width: 9; }
.dgr__nota circle + circle { stroke: var(--yellow); stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--v)); }
.dgr__nota b { font-weight: 200; font-size: 46px; line-height: 1; margin-top: -10px; }
.dgr__nota em { position: absolute; bottom: 34%; font-style: normal; font-size: 11px; color: var(--neutral-500); }
.dgr__veredito { grid-area: v; font-size: 15px; color: var(--neutral-600); }
.dgr__veredito b { display: block; margin-top: 4px; font-weight: 400; font-size: 26px; line-height: 1.15; color: var(--neutral-900); }
.dgr__barras { grid-area: b; display: flex; flex-direction: column; gap: 8px; }
.dgr__barras > span { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; align-items: center; font-size: 13px; }
.dgr__barras em { font-style: normal; color: var(--neutral-600); }
.dgr__barras i { height: 8px; border-radius: 99px; background: linear-gradient(90deg, var(--blue-900) calc(var(--v) * 100%), rgba(34, 37, 38, .08) 0); }
.dgr__ex { position: absolute; right: 18px; top: 16px; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); }

/* Relatório (modelo) */
.rlh { background: #F4F5F3; color: var(--neutral-900); }
.rlh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 64px; display: flex; flex-direction: column; gap: 22px; }
.rlh__aviso { margin: 0; align-self: flex-start; padding: 8px 14px; border-radius: 99px; background: #FFF7E6; font-size: 13px; color: #8a5e08; }
.rlh__grade { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 56px; align-items: center; }
.rlh__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.rlh__k { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
.rlh h1 { margin: 0; font-weight: 300; font-size: clamp(38px, 4.4vw, 64px); letter-spacing: -.03em; }
.rlh__meta { margin: 0; display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 14px; color: var(--neutral-500); }
.rlh__meta span::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--yellow); }
.rlh__ver { width: 100%; padding: 22px 24px; border-radius: 20px; background: var(--blue-900); color: #fff; }
.rlh__ver-r { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.rlh__ver b { display: block; margin: 4px 0 8px; font-weight: 300; font-size: 30px; color: var(--yellow); }
.rlh__ver p { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--neutral-200); }
.rlh__nota { position: relative; display: grid; place-items: center; aspect-ratio: 1; }
.rlh__nota svg { position: absolute; inset: 0; transform: rotate(-90deg); }
.rlh__nota circle { fill: none; stroke: rgba(34, 37, 38, .08); stroke-width: 12; }
.rlh__arco { stroke: var(--yellow) !important; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--v, 0)); transition: stroke-dashoffset 1.6s cubic-bezier(.2, .7, .2, 1); }
.rlh__nota p { margin: 0; display: flex; flex-direction: column; align-items: center; }
.rlh__nota b { font-weight: 200; font-size: 96px; line-height: 1; letter-spacing: -.04em; }
.rlh__nota span { font-size: 13px; color: var(--neutral-500); }
.rlp { background: #F4F5F3; color: var(--neutral-900); }
.rlp__in { max-width: 1286px; margin: 0 auto; padding: 24px 40px 72px; display: flex; flex-direction: column; gap: 24px; }
.rl-p { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.rl-p li { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; grid-template-areas: "ic t n" "bar bar bar" "p p p"; gap: 10px 12px; align-items: center; padding: 20px; border-radius: 20px; background: #fff; }
.rl-p__ic { grid-area: ic; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: #F2F4F5; color: var(--blue-900); }
.rl-p b { grid-area: t; font-weight: 500; font-size: 16px; }
.rl-p__n { grid-area: n; font-weight: 200; font-size: 34px; line-height: 1; }
.rl-p li > i { grid-area: bar; height: 8px; border-radius: 99px; background: linear-gradient(90deg, var(--c, var(--blue-900)) calc(var(--v) * 100%), rgba(34, 37, 38, .07) 0); }
.rl-p li[style*="--v:.3"] > i, .rl-p li[style*="--v:.4"] > i { --c: #E2665A; }
.rl-p li[style*="--v:.5"] > i, .rl-p li[style*="--v:.6"] > i { --c: var(--yellow); }
.rl-p p { grid-area: p; margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--neutral-500); }
.rla { background: #fff; color: var(--neutral-900); }
.rla__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: flex; flex-direction: column; gap: 26px; }
.rla__cab { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.rla__f { display: flex; gap: 6px; padding: 6px; border-radius: 99px; background: #F4F5F3; }
.rla__f button { padding: 9px 16px; border: 0; border-radius: 99px; background: none; font: inherit; font-size: 14px; color: var(--neutral-700); cursor: pointer; }
.rla__f button.is-on { background: var(--blue-900); color: #fff; }
.rla__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.rl-a { display: grid; grid-template-columns: 200px minmax(0, 1fr); grid-template-areas: "cab h" "cab p" "cab f"; gap: 6px 26px; padding: 22px 24px; border-radius: 20px; background: #F4F5F3; border-left: 4px solid var(--neutral-300); }
.rl-a[hidden] { display: none; }
.rl-a--alta { border-left-color: #E2665A; }
.rl-a--média { border-left-color: var(--yellow); }
.rl-a__cab { grid-area: cab; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.rl-a__pri { padding: 4px 10px; border-radius: 99px; background: #fff; font-size: 12px; font-weight: 500; }
.rl-a--alta .rl-a__pri { background: #E2665A; color: #fff; }
.rl-a--média .rl-a__pri { background: var(--yellow); color: var(--blue-900); }
.rl-a__pil { font-size: 13px; color: var(--neutral-500); }
.rl-a h3 { grid-area: h; margin: 0; font-weight: 400; font-size: 20px; line-height: 1.3; }
.rl-a p { grid-area: p; margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.rl-a .rl-a__faz { grid-area: f; color: var(--neutral-800); }
.rl-a b { font-weight: 600; color: var(--neutral-900); }
.rln { background: var(--blue-900) url("../img/bg-scene-a.webp") center / cover no-repeat; color: var(--neutral-100); }
.rln__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: end; }
.rln h2 { margin: 0 0 14px; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(32px, 3.8vw, 54px); line-height: 1.04; letter-spacing: -.02em; color: #fff; }
.rln p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.55; color: var(--neutral-300); }
@media print { .topo, .rod, .alba, .alba-fab, .rln, .ih__ctas, .migalha, .pt__prog { display: none !important; } .rlh, .rlp, .rla { background: #fff !important; } }

/* Capa 3D dos materiais */
.mt3 { position: relative; display: block; width: 150px; aspect-ratio: 3 / 4; perspective: 900px; }
.mt3__frente { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: space-between; padding: 14px; border-radius: 4px 12px 12px 4px; background: var(--blue-900); color: #fff; box-shadow: inset 6px 0 0 rgba(0, 0, 0, .25), 0 30px 50px -24px rgba(1, 29, 38, .6); transform: rotateY(-14deg); transform-origin: left; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.mt3--ib .mt3__frente { background: var(--yellow); color: var(--blue-900); }
.mt3__lomb { position: absolute; left: 0; top: 2%; bottom: 2%; width: 12px; border-radius: 3px 0 0 3px; background: #0b151a; transform: rotateY(76deg) translateX(-6px); transform-origin: left; }
.mt3__marca { font-size: 9px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.mt3--ib .mt3__marca { color: var(--blue-900); opacity: .7; }
.mt3 b { font-weight: 200; font-size: 26px; letter-spacing: -.02em; }
.mt3__tit { font-size: 12.5px; line-height: 1.25; }
.mt3__fmt { align-self: flex-start; padding: 2px 8px; border-radius: 99px; background: rgba(255, 255, 255, .12); font-size: 10px; }
.mt3--ib .mt3__fmt { background: rgba(1, 29, 38, .1); }
.mt3--g { width: 230px; }
.mt3--g b { font-size: 40px; }
.mt3--g .mt3__tit { font-size: 17px; }

/* Materiais (lista) */
.mth { background: #F4F5F3; color: var(--neutral-900); overflow: hidden; }
.mth__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 40px; display: flex; flex-direction: column; gap: 34px; }
.mth__cab { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 40px; align-items: end; }
.mth h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(44px, 5.4vw, 86px); line-height: .98; letter-spacing: -.035em; }
.mth h1 .is-dim { color: var(--neutral-400); font-size: .55em; margin-top: 10px; letter-spacing: -.02em; }
.mth__cab p { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-600); }
.mth__prat { margin: 10px 0 0; padding: 0 0 26px; list-style: none; display: flex; justify-content: center; gap: 30px; border-bottom: 14px solid #e4e6e3; box-shadow: 0 30px 40px -30px rgba(1, 29, 38, .35); }
.mth__prat li { opacity: 0; translate: 0 30px; animation: obt-in .7s cubic-bezier(.2, .7, .2, 1) forwards; animation-delay: calc(.2s + var(--d) * .12s); }
.mth__prat li:hover .mt3__frente { transform: rotateY(-2deg) translateY(-10px); }
.mtl { background: #F4F5F3; color: var(--neutral-900); }
.mtl__in { max-width: 1286px; margin: 0 auto; padding: 40px 40px 112px; display: flex; flex-direction: column; gap: 26px; }
.mtl__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.mtc { height: 100%; display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 26px; padding: 26px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); color: var(--neutral-900); transition: translate .35s, box-shadow .35s; }
a.mtc:hover { translate: 0 -5px; box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -45px rgba(1, 29, 38, .45); }
a.mtc:hover .mt3__frente { transform: rotateY(-4deg); }
.mtc__tx { display: flex; flex-direction: column; gap: 10px; }
.mtc__tx > b { font-weight: 400; font-size: 22px; line-height: 1.2; letter-spacing: -.01em; }
.mtc__d { font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
.mtc ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.mtc li { display: flex; gap: 8px; font-size: 13.5px; color: var(--neutral-700); }
.mtc li svg { flex: none; margin-top: 2px; color: #a8720a; }
.mtc__pe { display: flex; flex-wrap: wrap; gap: 6px; }
.mtc__pe span { padding: 4px 10px; border-radius: 99px; background: #F2F4F5; font-size: 12px; color: var(--neutral-600); }
.mtc__ir { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--blue-900); }
.mtc__ir svg { color: #a8720a; }
.mtc .bpc__breve { margin-top: auto; align-self: flex-start; }

/* Landing do guia */
.gdh { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 30% 100%, rgba(18, 89, 124, .6), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.gdh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 96px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: 56px; align-items: start; }
.gdh__txt { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.gdh__tag { margin: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.gdh__tag span { padding: 5px 11px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--neutral-200); }
.gdh__tag span:first-child { background: var(--yellow); color: var(--blue-900); }
.gdh h1 { font-size: clamp(38px, 4.2vw, 66px); }
.gdh__dentro { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.gdh__dentro li { display: flex; align-items: center; gap: 10px; font-size: 15.5px; color: #fff; }
.gdh__dentro svg { color: var(--yellow); }
.gdh__livro { margin-top: 12px; }
.gdh__livro .mt3__frente { transform: rotateY(-22deg) rotateZ(-3deg); }
.gdh__form { display: flex; flex-direction: column; gap: 14px; }
.gdh__form-t { margin: 0; font-weight: 400; font-size: 22px; color: var(--neutral-900); }
.gdc { background: #F4F5F3; color: var(--neutral-900); }
.gdc__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.gdc__app { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 28px; align-items: center; }
.gdc__nav { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.gdc__nav button { width: 100%; display: flex; align-items: baseline; gap: 12px; padding: 16px 18px; border: 0; border-radius: 16px; background: #fff; font: inherit; text-align: left; font-size: 17px; color: var(--neutral-700); cursor: pointer; transition: background-color .25s, color .25s; }
.gdc__nav button b { font-weight: 400; font-size: 12px; color: #a8720a; }
.gdc__nav button.is-on { background: var(--blue-900); color: #fff; }
.gdc__nav button.is-on b { color: var(--yellow); }
.gdc__livro { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); border-radius: 10px 22px 22px 10px; box-shadow: 0 60px 90px -50px rgba(1, 29, 38, .5); perspective: 1600px; }
.gdc__esq { display: flex; flex-direction: column; justify-content: space-between; padding: 30px; border-radius: 10px 0 0 10px; background: var(--blue-900); color: #fff; min-height: 420px; }
.gdc__esq span { font-size: 18px; line-height: 1.25; }
.gdc__esq b { font-weight: 200; font-size: 64px; color: var(--yellow); }
.gdc__esq i { font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.gdc__dir { position: relative; border-radius: 0 22px 22px 0; background: #fff; overflow: hidden; }
.gd-pg { position: absolute; inset: 0; display: flex; flex-direction: column; gap: 14px; padding: 30px 32px; background: linear-gradient(90deg, rgba(34, 37, 38, .06), transparent 30px) #fff; opacity: 0; transform: rotateY(-25deg); transform-origin: left; transition: opacity .5s, transform .6s cubic-bezier(.2, .7, .2, 1); }
.gd-pg.is-on { position: relative; opacity: 1; transform: none; }
.gd-pg__k { margin: 0; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
.gd-pg h3 { margin: 0; font-weight: 400; font-size: 26px; line-height: 1.15; letter-spacing: -.01em; }
.gd-pg ul { margin: 6px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.gd-pg li { display: flex; align-items: center; gap: 12px; font-size: 15.5px; color: var(--neutral-700); }
.gd-pg__ck { display: grid; place-items: center; flex: none; width: 22px; height: 22px; border-radius: 7px; box-shadow: inset 0 0 0 1.5px rgba(34, 37, 38, .25); color: transparent; }
.gd-pg li.is-ok .gd-pg__ck { background: var(--yellow); box-shadow: none; color: var(--blue-900); }
.gd-pg li:not(.is-ok) { filter: blur(2.4px); user-select: none; }
.gd-pg__n { margin: auto 0 0; align-self: flex-end; font-size: 12px; color: var(--neutral-400); }
.gdr { background: radial-gradient(40% 60% at 100% 0%, rgba(244, 182, 63, .12), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.gdr__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; align-items: start; }
.gdr__tx { position: sticky; top: 120px; display: flex; flex-direction: column; gap: 30px; }
.gdr__res { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding: 22px; border-radius: 22px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.gdr__med { position: relative; width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; padding-top: 18px; }
.gdr__med span { padding: 8px 0 0; border-top: 6px solid #3ecf8e; text-align: center; font-size: 12px; color: var(--neutral-300); }
.gdr__med span:nth-of-type(2) { border-top-color: var(--yellow); }
.gdr__med span:nth-of-type(3) { border-top-color: #E2665A; }
.gdr__med i { position: absolute; top: 0; left: calc(var(--r, -1) * 100%); width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-top: 12px solid #fff; translate: -8px 0; opacity: var(--o, 0); transition: left .6s cubic-bezier(.2, .7, .2, 1), opacity .3s; }
.gdr__v { margin: 0; font-size: 16px; line-height: 1.55; color: var(--neutral-100); }
.gdr__v b { color: var(--yellow); font-weight: 500; }
.gdr__q { margin: 0; padding: 0; list-style: none; counter-reset: q; display: flex; flex-direction: column; gap: 10px; }
.gdr__q li { counter-increment: q; display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 18px 20px; border-radius: 18px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.gdr__q li::before { content: "0" counter(q); font-size: 13px; color: var(--yellow); }
.gdr__q p { margin: 0; font-size: 16px; line-height: 1.45; color: #fff; }
.gd-r__bt { display: flex; gap: 6px; }
.gd-r__bt label { cursor: pointer; }
.gd-r__bt input { position: absolute; opacity: 0; pointer-events: none; }
.gd-r__bt span { display: inline-block; padding: 8px 14px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-size: 13.5px; color: var(--neutral-200); transition: background-color .2s, color .2s; }
.gd-r__bt input:checked + span { background: var(--yellow); color: var(--blue-900); }
.gd-r__bt input:focus-visible + span { outline: 2px solid var(--yellow); outline-offset: 2px; }
.gdl { background: #fff; color: var(--neutral-900); }
.gdl__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: flex; flex-direction: column; gap: 26px; }
.gdl__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.gdl__c { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 26px; border-radius: 22px; background: #F4F5F3; color: var(--neutral-900); transition: translate .3s, box-shadow .3s; }
a.gdl__c:hover { translate: 0 -4px; box-shadow: 0 0 0 2px var(--yellow); }
.gdl__c--esc { background: var(--blue-900); color: #fff; }
.gdl__k { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
.gdl__c--esc .gdl__k { color: var(--yellow); }
.gdl__c b { font-weight: 400; font-size: 21px; line-height: 1.25; }
.gdl__c > span:not(.gdl__k):not(.gdl__ir):not(.bpc__breve) { font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
.gdl__c--esc > span:not(.gdl__k):not(.gdl__ir) { color: var(--neutral-300) !important; }
.gdl__ir { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.gdl__c--breve .bpc__breve { margin-top: auto; }

/* Ferramentas (hub) */
.frh { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 90% 10%, rgba(244, 182, 63, .12), transparent 70%), radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.frh__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 140px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.frt { background: #F4F5F3; }
.frt__in { max-width: 1286px; margin: -90px auto 0; padding: 0 40px 112px; position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.frc { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 32px; border-radius: 28px; background: #fff; box-shadow: 0 60px 90px -60px rgba(1, 29, 38, .5); color: var(--neutral-900); }
.frc--b { background: var(--blue-900); color: #fff; }
.frc__tag { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.frc--b .frc__tag { color: var(--neutral-300); }
.frc__l { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--blue-900); color: var(--yellow); font-size: 13px; }
.frc--b .frc__l { background: var(--yellow); color: var(--blue-900); }
.frc h2 { margin: 0; font-weight: 300; font-size: clamp(32px, 3vw, 44px); letter-spacing: -.02em; }
.frc > p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--neutral-600); }
.frc--b > p { color: var(--neutral-300); }
.frc .dg-url { width: 100%; }
.frc .dg-url__campo { background: #F4F5F3; box-shadow: none; }
.frc__ok { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px 16px; }
.frc__ok li { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; color: var(--neutral-700); }
.frc__ok svg { color: #a8720a; }
.frc__lk { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--blue-900); }
.frc__lk svg { color: #a8720a; }
.frc__esb { width: 100%; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.frc__esb li { display: grid; grid-template-columns: 34px minmax(0, 1fr); grid-template-areas: "n t" "n e"; gap: 2px 10px; padding: 14px 16px; border-radius: 14px; background: rgba(249, 250, 250, .05); }
.frc__esb b { grid-area: n; font-weight: 300; font-size: 14px; color: var(--yellow); }
.frc__esb span { grid-area: t; font-size: 16px; }
.frc__esb em { grid-area: e; font-style: normal; font-size: 13px; color: var(--neutral-400); }
.frc--b .btn { margin-top: auto; }
.frk { background: #fff; color: var(--neutral-900); }
.frk__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.frk__tx { display: flex; flex-direction: column; gap: 22px; }
.frk__nota { margin: 0; font-size: 14px; color: var(--neutral-500); }
.frk__nota a { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.frk__calc { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 22px; border-radius: 26px; background: #F4F5F3; }
.frk__c { display: flex; flex-direction: column; gap: 6px; padding: 16px; border-radius: 16px; background: #fff; }
.frk__c:nth-child(3) { grid-column: 1 / -1; }
.frk__c label { font-size: 13px; color: var(--neutral-600); }
.frk__in2 { display: flex; align-items: baseline; gap: 6px; }
.frk__in2 span { font-size: 16px; color: var(--neutral-500); }
.frk__in2 input { width: 100%; border: 0; outline: 0; background: none; font: inherit; font-weight: 300; font-size: 30px; color: var(--neutral-900); }
.frk__c small { font-size: 12px; color: var(--neutral-400); }
.frk__c:focus-within { box-shadow: 0 0 0 2px var(--yellow); }
.frk__r { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 4px; padding: 20px; border-radius: 18px; background: var(--blue-900); color: #fff; }
.frk__r span { font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-300); }
.frk__r b { font-weight: 200; font-size: clamp(40px, 4.4vw, 60px); line-height: 1; color: var(--yellow); }
.frk__r em { font-style: normal; font-size: 12.5px; color: var(--neutral-400); }
.frm { background: var(--blue-900); color: var(--neutral-100); }
.frm__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: flex; flex-direction: column; gap: 36px; }
.frm__lista { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); }

@media (max-width: 1100px) {
  .dgh__in, .gdh__in { padding: 130px 24px 72px; grid-template-columns: minmax(0, 1fr); }
  .dgp__in, .dgc__in, .dgr__in, .rlh__in, .rlp__in, .rla__in, .rln__in, .mth__in, .mtl__in, .gdc__in, .gdr__in, .gdl__in, .frh__in, .frk__in, .frm__in { padding-left: 24px; padding-right: 24px; }
  .frt__in { padding: 0 24px 88px; grid-template-columns: minmax(0, 1fr); }
  .dgp__app { grid-template-columns: minmax(0, 1fr); grid-template-areas: "roda" "tx"; }
  .dgc__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dgr__in, .frk__in, .gdr__in, .rln__in { grid-template-columns: minmax(0, 1fr); }
  .gdr__tx { position: static; }
  .rlh__grade { grid-template-columns: minmax(0, 1fr); }
  .rlh__nota { width: 240px; }
  .rl-p { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mth__cab { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .mth__prat { justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
  .mth__prat li { flex: none; }
  .mtl__grade, .gdl__grade { grid-template-columns: minmax(0, 1fr); }
  .gdc__app { grid-template-columns: minmax(0, 1fr); }
  .gdc__nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
  .gdc__nav li { flex: none; }
  .gdh__livro { display: none; }
}
@media (max-width: 640px) {
  .dg-url__campo { flex-wrap: wrap; padding: 10px; }
  .dg-url__campo .btn { width: 100%; justify-content: center; }
  .dgp__roda li { width: 104px; transform: rotate(calc(var(--a) * 60deg - 90deg)) translateX(118px) rotate(calc(var(--a) * -60deg + 90deg)); }
  .dgp__roda button { padding: 10px 6px; border-radius: 16px; }
  .dgp__roda button b { font-size: 12px; }
  .dgp__roda button span { width: 32px; height: 32px; }
  .dgp__centro { width: 120px; }
  .dgp__centro b { font-size: 36px; }
  .dgc__lista, .rl-p { grid-template-columns: minmax(0, 1fr); }
  .dgr__prev { grid-template-columns: 110px minmax(0, 1fr); padding: 20px; }
  .dgr__barras > span { grid-template-columns: 110px minmax(0, 1fr); }
  .rl-a { grid-template-columns: minmax(0, 1fr); grid-template-areas: "cab" "h" "p" "f"; }
  .mtc { grid-template-columns: minmax(0, 1fr); }
  .gdc__livro { grid-template-columns: minmax(0, 1fr); }
  .gdc__esq { min-height: 0; padding: 20px; flex-direction: row; align-items: center; }
  .gdc__esq b { font-size: 34px; }
  .gdr__q li { grid-template-columns: 28px minmax(0, 1fr); }
  .gd-r__bt { grid-column: 2; }
  .frk__calc { grid-template-columns: minmax(0, 1fr); }
  .frm__lista { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .mth__prat li, .dg-q li { animation: none; opacity: 1; translate: 0 0; } }
.gdh__row { display: flex; align-items: center; gap: 28px; margin-top: 6px; }
.gdh__livro { margin-top: 0; flex: none; }
@media (max-width: 1100px) { .gdh__livro { display: block; } }
@media (max-width: 640px) { .gdh__row { flex-direction: column; align-items: flex-start; } .gdh__livro { display: none; } }

/* v7.4: ajustes do serviço v2, faixas de chamada e briefing interativo */
/* Quatro olhares mais compacto: cabe numa tela */
.s2l__in { padding: 88px 40px 96px; gap: 32px; }
.s2l .s2-cab { max-width: none; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 400px); grid-template-areas: "chip ." "h2 lead"; gap: 16px 48px; align-items: end; }
.s2l .s2-cab > .chip { grid-area: chip; justify-self: start; }
.s2l .s2-cab h2 { grid-area: h2; font-size: clamp(30px, 3vw, 44px); }
.s2l .s2-cab__lead { grid-area: lead; font-size: 16px; }
@media (min-width: 1101px) { .s2l__grade { grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 20px; } }
.s2l__nav { gap: 8px; }
.s2l__nav button { padding: 12px 14px; grid-template-columns: 42px minmax(0, 1fr); border-radius: 18px; }
.s2l__ic { width: 42px; height: 42px; border-radius: 12px; }
.s2l__tx b { font-size: 16px; }
.s2l__site { min-height: 0; margin: 14px 0 14px 14px; padding: 14px 16px 16px; }
.s2s__hero { margin-top: 22px; gap: 10px; }
.s2s__h { font-size: clamp(20px, 1.9vw, 27px); }
.s2s__cards { margin-top: 20px; }
.s2s__cards i { height: 52px; }
.s2l__leitura { padding: 20px 20px 44px; gap: 8px; }
.s2l__leitura h3 { font-size: 24px; }
.s2l__leitura > p:not(.s2l__rot) { font-size: 14.5px; }
.s2l__leitura li { padding: 8px 10px; font-size: 13.5px; }
.s2s__hot--1 { top: 74px; } .s2s__hot--2 { top: 142px; } .s2s__hot--3 { top: 186px; left: 140px; }
@media (max-width: 1100px) { .s2l .s2-cab { grid-template-columns: minmax(0, 1fr); grid-template-areas: "chip" "h2" "lead"; } .s2l__in { padding: 72px 24px; } }

/* Faixa de chamada entre seções */
.s2x { background: #F4F5F3; }
.s2x__in { max-width: 1286px; margin: 0 auto; padding: 0 40px 72px; }
.s2x__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 32px; }
.s2x__in { padding-top: 0; }
.s2x__t { margin: 0; display: flex; flex-direction: column; gap: 4px; }
.s2x__t b { font-weight: 400; font-size: clamp(20px, 1.8vw, 26px); letter-spacing: -.01em; color: var(--neutral-900); }
.s2x__t span { font-size: 15px; color: var(--neutral-600); }
.s2x__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; }
.s2x__ctas .ih__lk { color: var(--neutral-900); }
.s2x { position: relative; }
.s2x::before { content: ""; position: absolute; left: max(40px, calc((100% - 1286px) / 2 + 40px)); right: max(40px, calc((100% - 1286px) / 2 + 40px)); top: -1px; height: 0; }
.s2x .s2x__in { border-radius: 0; }
.s2x .s2x__in > * { position: relative; }
.s2x .s2x__in { background: none; }
.s2x__in { box-sizing: border-box; }
.s2x .s2x__in { padding: 26px 30px; margin: 0 auto 72px; max-width: calc(1286px - 80px); border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 70px -50px rgba(1, 29, 38, .35); }
.s2x--esc { background: var(--blue-900); }
.s2x--esc .s2x__in { margin-top: 0; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); }
.s2x--esc .s2x__t b { color: #fff; }
.s2x--esc .s2x__t span { color: var(--neutral-300); }
@media (max-width: 1100px) { .s2x .s2x__in { margin: 0 24px 56px; padding: 22px; } }

/* Seletor de site: botões */
.s2t__ctas { margin-top: 10px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; }
.s2t__ctas .s2t__lk { margin-top: 0; }

/* Briefing interativo */
.bq { background: radial-gradient(45% 55% at 100% 0%, rgba(244, 182, 63, .14), transparent 70%), radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .55), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.bq__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.bq__app { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 380px); gap: 24px; align-items: start; }
.bq__form { display: flex; flex-direction: column; gap: 18px; padding: 30px; border-radius: 28px; background: #fff; color: var(--neutral-900); box-shadow: 0 70px 110px -60px rgba(0, 0, 0, .8); }
.bq__nav { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.bq__nav li { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--neutral-400); }
.bq__nav b { display: grid; place-items: center; flex: none; width: 26px; height: 26px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .2); font-weight: 500; font-size: 12px; }
.bq__nav li.is-on { color: var(--neutral-900); }
.bq__nav li.is-on b { background: var(--blue-900); color: var(--yellow); box-shadow: none; }
.bq__nav li.is-feito b { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.bq__barra { height: 3px; margin-top: -6px; border-radius: 3px; background: var(--neutral-100); overflow: hidden; }
.bq__barra i { display: block; height: 100%; width: 25%; background: var(--yellow); transition: width .5s cubic-bezier(.2, .7, .2, 1); }
.bq-p { margin: 0; padding: 0; border: 0; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.bq-p[hidden] { display: none; }
.bq-p.is-on { animation: qcin .5s cubic-bezier(.2, .7, .2, 1); }
.bq-p legend { padding: 0; margin-bottom: 2px; font-weight: 400; font-size: clamp(24px, 2.2vw, 30px); letter-spacing: -.01em; color: var(--neutral-900); }
.bq-p__dica { margin: -6px 0 0; font-size: 14px; color: var(--neutral-500); }
.bq-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.bq-cards.is-erro { padding: 8px; margin: -8px; border-radius: 18px; box-shadow: inset 0 0 0 2px #E2665A; }
.bq-card { position: relative; cursor: pointer; }
.bq-card input { position: absolute; opacity: 0; pointer-events: none; }
.bq-card__in { position: relative; height: 100%; display: flex; flex-direction: column; gap: 8px; padding: 16px; border-radius: 18px; background: #F7F8F8; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); transition: background-color .2s, box-shadow .2s, translate .2s; }
.bq-card:hover .bq-card__in { background: #fff; box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .3); translate: 0 -2px; }
.bq-card__ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #fff; color: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); }
.bq-card b { font-weight: 500; font-size: 15px; line-height: 1.25; }
.bq-card em { font-style: normal; font-size: 13px; line-height: 1.4; color: var(--neutral-500); }
.bq-card__ck { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; box-shadow: inset 0 0 0 1.5px rgba(34, 37, 38, .2); color: transparent; }
.bq-card input:checked + .bq-card__in { background: #fff; box-shadow: inset 0 0 0 2px var(--yellow), 0 16px 30px -22px rgba(1, 29, 38, .5); }
.bq-card input:checked + .bq-card__in .bq-card__ic { background: var(--blue-900); color: var(--yellow); }
.bq-card input:checked + .bq-card__in .bq-card__ck { background: var(--yellow); box-shadow: none; color: var(--blue-900); }
.bq-card input:focus-visible + .bq-card__in { outline: 2px solid var(--blue-900); outline-offset: 2px; }
.bq .ch input[type="checkbox"] + span::before { content: "+ "; color: var(--neutral-400); }
.bq .ch input[type="checkbox"]:checked + span::before { content: ""; }
.bq__acoes { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 6px; }
.bq__acoes .btn { margin-left: auto; }
.bq__voltar { display: inline-flex; align-items: center; gap: 8px; padding: 10px 4px; border: 0; background: none; font: inherit; font-size: 14px; color: var(--neutral-600); cursor: pointer; }
.bq__res { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 12px; }
.bq__doc { position: relative; padding: 22px; border-radius: 24px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.bq__doc-k { margin: 0 0 16px; display: flex; align-items: center; gap: 10px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.bq__anel { position: absolute; right: 18px; top: 14px; width: 48px; height: 48px; display: grid; place-items: center; }
.bq__anel svg { position: absolute; inset: 0; transform: rotate(-90deg); }
.bq__anel circle { fill: none; stroke: rgba(249, 250, 250, .14); stroke-width: 3; }
.bq__anel .bq__anel-v { stroke: var(--yellow); stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--p, 0)); transition: stroke-dashoffset .5s; }
.bq__anel b { font-weight: 400; font-size: 11px; color: #fff; }
.bq__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.bq__lista li { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 10px; padding: 11px 0; border-top: 1px solid rgba(249, 250, 250, .08); font-size: 14px; }
.bq__lista span { color: var(--neutral-400); }
.bq__lista b { font-weight: 400; color: rgba(249, 250, 250, .35); font-style: italic; }
.bq__lista li.is-ok b { color: #fff; font-style: normal; animation: cr-in .4s ease; }
.bq__rec { padding: 20px 22px; border-radius: 22px; background: var(--yellow); color: var(--blue-900); }
.bq__rec p { margin: 0 0 10px; font-size: 14px; }
.bq__rec p b { font-weight: 600; }
.bq__rec ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.bq__rec li { display: flex; gap: 8px; font-size: 14px; line-height: 1.4; }
.bq__rec li svg { flex: none; margin-top: 2px; }
.bq__ref { margin: 0; padding: 0 6px; font-size: 13px; color: var(--neutral-300); }
.bq__ref b { color: var(--yellow); font-weight: 500; }
@media (max-width: 1100px) { .bq__in { padding: 88px 24px; } .bq__app { grid-template-columns: minmax(0, 1fr); } .bq__res { position: static; } }
@media (max-width: 640px) { .bq__form { padding: 22px 18px; } .bq-cards { grid-template-columns: minmax(0, 1fr); } .bq-card__in { flex-direction: row; align-items: center; } .bq-card em { display: none; } .bq__nav span { display: none; } }
@media (min-width: 1101px) and (max-width: 1300px) { .s2x .s2x__in { margin: 0 40px 72px; } }
.bq__acoes [hidden] { display: none !important; }
.bq-p legend { float: left; width: 100%; margin-bottom: 4px; } .bq-p legend + * { clear: both; } .bq-p__dica { margin: 0 !important; }

/* v7.5 | Faixas sem quebra de fundo: espaço vem do padding da própria faixa, não de margem que vaza */
.s2x { padding: 0 40px 72px; display: flow-root; }
.s2x .s2x__in { margin: 0 auto; max-width: calc(1286px - 80px); }
@media (min-width: 1101px) and (max-width: 1300px) { .s2x .s2x__in { margin: 0 auto; } }
@media (max-width: 1100px) { .s2x { padding: 0 24px 56px; } .s2x .s2x__in { margin: 0; } }
.s2x--diag .s2x__in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 18px 40px; padding: 28px 30px; }
.s2x__form { display: flex; flex-direction: column; gap: 10px; }
.s2x--diag .s2d__campo { box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .14); }
.s2x--diag .s2d__campo.is-erro { box-shadow: 0 0 0 2px #E2665A; }
.s2x__alt { margin: 0; font-size: 13.5px; color: var(--neutral-600); }
.s2x__alt button, .s2x__alt a { padding: 0; border: 0; background: none; font: inherit; color: var(--blue-700, #12597C); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
@media (max-width: 900px) { .s2x--diag .s2x__in { grid-template-columns: minmax(0, 1fr); } .s2x--diag .s2d__campo { flex-wrap: wrap; padding: 10px; } .s2x--diag .s2d__campo input { flex-basis: 60%; } .s2x--diag .s2d__campo .btn { width: 100%; justify-content: center; } }
.bq__alba { display: flex; align-items: center; gap: 12px; width: 100%; padding: 14px 16px; border: 0; border-radius: 16px; background: rgba(244, 182, 63, .1); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .4); font: inherit; color: var(--neutral-100); text-align: left; cursor: pointer; transition: background-color .2s; }
.bq__alba:hover { background: rgba(244, 182, 63, .2); }
.bq__alba > span:nth-child(2) { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.bq__alba b { font-weight: 500; font-size: 14.5px; color: #fff; }
.bq__alba em { font-style: normal; font-size: 13px; color: var(--neutral-300); }
.bq__alba > svg { flex: none; color: var(--yellow); }
.bq__alba-av { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); font-weight: 600; }
.dg-url__alt { margin: 10px 0 0; font-size: 13.5px; opacity: .8; }
.dg-url__alt button { padding: 0; border: 0; background: none; font: inherit; color: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.s2x--branco { background: #fff; }
.s2x--branco .s2x__in { background: #F4F5F3; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .06); }
@media (max-width: 900px) { .s2x--diag .s2d__campo { padding: 6px 6px 6px 14px; } .s2x--diag .s2d__campo .btn { flex: 1 1 100%; } }

/* ===================================================================== v7.6 | Inbound Marketing B2B v2 */
/* Hero: a jornada em três passos */
.ibh__jorn { margin: 6px 0 0; padding: 18px 0 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; width: 100%; max-width: 600px; border-top: 1px solid rgba(1, 29, 38, .2); counter-reset: j; }
.ibh__jorn li { position: relative; display: flex; flex-direction: column; gap: 2px; padding-right: 18px; }
.ibh__jorn li + li::before { content: ""; position: absolute; left: -10px; top: 9px; width: 6px; height: 6px; border-top: 1.5px solid var(--blue-900); border-right: 1.5px solid var(--blue-900); rotate: 45deg; opacity: .5; }
.ibh__jorn b { font-weight: 400; font-size: 11px; letter-spacing: .14em; color: rgba(1, 29, 38, .55); }
.ibh__jorn span { font-size: 19px; letter-spacing: -.01em; color: var(--blue-900); }
.ibh__jorn em { font-style: normal; font-size: 13px; line-height: 1.35; color: rgba(1, 29, 38, .7); }

/* Extensão do seu time: a mesma semana com cada parceiro */
.ext { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 0% 0%, rgba(18, 89, 124, .5), transparent 70%), radial-gradient(40% 50% at 100% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.ext__fantasma { position: absolute; left: 50%; bottom: -3vw; translate: -50% 0; margin: 0; white-space: nowrap; font-weight: 200; font-size: clamp(120px, 17vw, 300px); line-height: .8; letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1px rgba(249, 250, 250, .07); pointer-events: none; }
.ext__in { position: relative; z-index: 1; max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 620px); gap: 64px; align-items: center; }
.ext__esq { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.ext h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 4vw, 60px); line-height: 1.03; letter-spacing: -.03em; color: #fff; }
.ext h2 em { font-style: italic; color: var(--yellow); }
.ext__lead { margin: 0; max-width: 470px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.ext__sw { position: relative; display: grid; grid-template-columns: 1fr 1fr; padding: 5px; border-radius: 99px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); }
.ext__sw button { position: relative; z-index: 1; padding: 12px 20px; border: 0; border-radius: 99px; background: none; font: inherit; font-size: 14px; color: var(--neutral-300); cursor: pointer; transition: color .3s; white-space: nowrap; }
.ext__sw button[aria-pressed="true"] { color: var(--blue-900); }
.ext__sw-pill { position: absolute; top: 5px; bottom: 5px; left: 5px; width: calc(50% - 5px); border-radius: 99px; background: var(--yellow); transition: translate .5s cubic-bezier(.6, .1, .2, 1), background-color .4s; }
[data-modo="e"] .ext__sw-pill { translate: 100% 0; }
[data-modo="f"] .ext__sw-pill { background: var(--neutral-300); }
.ext__puxa { width: 100%; max-width: 470px; padding: 20px 22px; border-radius: 20px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.ext__puxa-k { margin: 0 0 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.ext__regua { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; font-size: 13px; color: var(--neutral-300); }
.ext__regua i { position: relative; height: 6px; border-radius: 99px; background: rgba(249, 250, 250, .1); }
.ext__regua b { position: absolute; top: 50%; left: 0; width: 18px; height: 18px; margin: -9px 0 0 -9px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 6px rgba(244, 182, 63, .2); transition: left .7s cubic-bezier(.6, .1, .2, 1), background-color .4s; }
[data-modo="e"] .ext__regua b { left: 90%; }
[data-modo="f"] .ext__regua b { left: 10%; background: var(--neutral-300); box-shadow: 0 0 0 6px rgba(249, 250, 250, .1); }
.ext__puxa-v { margin: 14px 0 0; font-size: 15px; line-height: 1.5; color: #fff; }
/* troca de modo: cada elemento existe nas duas versões */
[data-modo="e"] .ext__f, [data-modo="f"] .ext__e { display: none; }
.ext__palco { position: relative; border-radius: 28px; overflow: hidden; background: #fff; color: var(--neutral-900); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .7); }
.ext__bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; border-bottom: 1px solid rgba(34, 37, 38, .08); }
.ext__canal { font-size: 14px; font-weight: 500; }
.ext__com { display: flex; gap: 6px; }
.ext__com i { padding: 4px 10px; border-radius: 99px; background: #F4F5F3; font-style: normal; font-size: 12px; color: var(--neutral-600); }
.ext__com .ext__com-e { background: var(--yellow); color: var(--blue-900); }
[data-modo="e"] .ext__com-f, [data-modo="f"] .ext__com-e { display: none; }
.ext__feed { margin: 0; padding: 10px 20px 4px; list-style: none; display: flex; flex-direction: column; }
.ext__li { display: grid; grid-template-columns: 62px minmax(0, 1fr); gap: 12px; padding: 12px 0; border-top: 1px solid rgba(34, 37, 38, .06); }
.ext__li:first-child { border-top: 0; }
.ext__dia { padding-top: 6px; font-size: 11.5px; letter-spacing: .04em; color: var(--neutral-500); }
.ext__msg { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 10px; }
.ext__av { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; font-size: 13px; }
.ext__av-f { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: #E6E8E7; color: var(--neutral-600); }
.ext__av-e { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: var(--blue-900); color: var(--yellow); }
[data-modo="e"] .ext__av-f, [data-modo="f"] .ext__av-e { display: none; }
.ext__corpo { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.ext__quem { margin: 0; font-size: 12.5px; }
.ext__quem b { font-weight: 600; }
.ext__t { margin: 0; font-size: 14.5px; line-height: 1.45; color: var(--neutral-800); }
.ext__f--vazio { font-style: italic; color: var(--neutral-400); }
.ext__tag { margin-top: 2px; font-size: 11.5px; letter-spacing: .02em; }
.ext__tag .ext__f { padding: 3px 9px; border-radius: 99px; background: #FBE9E7; color: #A8473C; }
.ext__tag .ext__e { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px; border-radius: 99px; background: #FDF1D8; color: #8A5B07; }
[data-modo="f"] .ext__tag .ext__e, [data-modo="e"] .ext__tag .ext__f { display: none; }
.ext__aviso { margin: 0; padding: 8px 20px 14px; text-align: right; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.ext.is-trocando .ext__li { animation: ext-entra .55s cubic-bezier(.2, .7, .2, 1) both; animation-delay: calc(var(--d) * 70ms); }
@keyframes ext-entra { from { opacity: 0; translate: 0 10px; } to { opacity: 1; translate: 0 0; } }
@media (prefers-reduced-motion: reduce) { .ext.is-trocando .ext__li { animation: none; } .ext__sw-pill, .ext__regua b { transition: none; } }
@media (max-width: 1100px) { .ext__in { grid-template-columns: minmax(0, 1fr); padding: 88px 24px; gap: 40px; } }
@media (max-width: 640px) { .ext__li { grid-template-columns: minmax(0, 1fr); gap: 4px; } .ext__dia { padding-top: 0; } .ext__sw button { padding: 11px 12px; font-size: 13px; } .ext__com i:first-child { display: none; } .ext__feed { padding: 6px 16px 0; } }


/* ===================================================================== v7.7 | Thumbs do site (unidades cqi: escalam com o card) */
/* Capa viva dos materiais */
.cv { position: relative; display: block; width: 100%; aspect-ratio: 3 / 4.1; container-type: inline-size; transform: rotate(var(--giro, -3deg)); transition: transform .5s cubic-bezier(.2, .7, .2, 1); filter: drop-shadow(0 18px 20px rgba(1, 29, 38, .3)); }
a:hover .cv, .cv.is-reto { transform: rotate(0) translateY(-2%); }
.cv__lomb { position: absolute; left: 0; top: 0; bottom: 0; width: 5.5cqi; border-radius: 2cqi 0 0 2cqi; background: rgba(0, 0, 0, .28); z-index: 1; }
.cv__frente { position: absolute; inset: 0; display: flex; flex-direction: column; gap: 5.5cqi; padding: 8cqi 8cqi 8cqi 12cqi; border-radius: 2cqi 8cqi 8cqi 2cqi; overflow: hidden; }
.cv__topo { display: flex; justify-content: space-between; align-items: baseline; font-size: 5.3cqi; letter-spacing: .14em; text-transform: uppercase; }
.cv__topo b { font-weight: 500; }
.cv__tit { margin-top: auto; font-size: 8cqi; line-height: 1.15; letter-spacing: -.01em; }
.cv--amarelo .cv__frente { background: radial-gradient(80% 60% at 100% 0%, rgba(255, 255, 255, .45), transparent 70%), var(--yellow); color: var(--blue-900); }
.cv--amarelo .cv__lomb { background: rgba(1, 29, 38, .22); }
.cv--papel .cv__frente { background: #fff; color: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); }
.cv--papel .cv__lomb { background: #12597C; }
.cv--creme .cv__frente { background: #F4F1EA; color: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .06); }
.cv--creme .cv__lomb { background: var(--blue-900); }
.cv--azul .cv__frente { background: radial-gradient(90% 60% at 100% 0%, rgba(18, 89, 124, .85), transparent 70%), var(--blue-900); color: #fff; }
.cv--azul .cv__topo b { color: var(--yellow); }
/* rm-03 */
.cv__chat { display: flex; flex-direction: column; gap: 3.5cqi; }
.cv__q { align-self: flex-end; max-width: 92%; padding: 3.5cqi 4.5cqi; border-radius: 5cqi 5cqi 1cqi 5cqi; background: var(--blue-900); color: #fff; font-size: 4.8cqi; line-height: 1.3; }
.cv__ias { display: flex; gap: 1.6cqi; }
.cv__ias i { display: grid; place-items: center; width: 8.5cqi; height: 8.5cqi; border-radius: 50%; background: rgba(1, 29, 38, .12); font-style: normal; font-size: 4.2cqi; font-weight: 600; }
.cv__a { display: flex; flex-wrap: wrap; gap: 2.2cqi; padding: 4.5cqi; border-radius: 1cqi 5cqi 5cqi 5cqi; background: rgba(255, 255, 255, .7); }
.cv__a i { height: 2.8cqi; width: 100%; border-radius: 2cqi; background: rgba(1, 29, 38, .14); }
.cv__a .cv__curta { width: 55%; }
.cv__a .cv__voce { width: auto; height: auto; padding: 1.2cqi 3.4cqi; border-radius: 2cqi; background: var(--blue-900); color: var(--yellow); font-style: normal; font-size: 4.4cqi; animation: cv-pulso 2.4s ease-in-out infinite; }
@keyframes cv-pulso { 50% { box-shadow: 0 0 0 2.2cqi rgba(1, 29, 38, .12); } }
/* rm-04 */
.cv__plan { display: flex; flex-direction: column; gap: 4cqi; }
.cv__grade { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.1cqi; }
.cv__grade i { height: 5cqi; border-radius: .6cqi; background: #EEF1F0; }
.cv__grade i:nth-child(-n+4) { background: rgba(18, 89, 124, .25); }
.cv__grade i:nth-child(7) { background: var(--yellow); }
.cv__formula { display: flex; flex-direction: column; padding: 3.4cqi 4cqi; border-radius: 3.4cqi; background: var(--blue-900); color: #fff; }
.cv__formula b { font-weight: 500; font-size: 5.6cqi; letter-spacing: .1em; color: var(--yellow); }
.cv__formula em { font-style: normal; font-size: 4.4cqi; line-height: 1.3; letter-spacing: 0; text-transform: none; color: var(--neutral-200); }
.cv__barras { display: flex; align-items: flex-end; gap: 2.2cqi; height: 15cqi; }
.cv__barras i { flex: 1; height: calc(var(--h) * 100%); border-radius: 1cqi 1cqi 0 0; background: #12597C; transform-origin: bottom; transition: transform .5s; transition-delay: calc(var(--d) * 50ms); }
.cv__barras i:last-child { background: var(--yellow); }
a:hover .cv__barras i { transform: scaleY(1.12); }
/* rm-01 */
.cv__matriz { position: relative; height: 40cqi; margin: 2cqi 0 0 3cqi; border-left: 1px solid rgba(249, 250, 250, .3); border-bottom: 1px solid rgba(249, 250, 250, .3); }
.cv__matriz s { position: absolute; right: 0; top: 0; width: 50%; height: 50%; background: rgba(244, 182, 63, .1); }
.cv__matriz i { position: absolute; left: calc(var(--x) * 100%); top: calc(var(--y) * 100%); width: 4.5cqi; height: 4.5cqi; margin: -2.25cqi; border-radius: 50%; background: rgba(249, 250, 250, .35); z-index: 1; }
.cv__matriz i.is-on { background: var(--yellow); box-shadow: 0 0 0 2.2cqi rgba(244, 182, 63, .2); }
.cv__matriz b, .cv__matriz em { position: absolute; font-weight: 400; font-style: normal; font-size: 3.4cqi; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-300); }
.cv__matriz b { right: 0; bottom: -7cqi; } .cv__matriz em { left: 2cqi; top: 0; }
/* rm-02 */
.cv__check { display: flex; flex-direction: column; gap: 3.2cqi; }
.cv__check i { position: relative; display: flex; align-items: center; gap: 3cqi; height: 5cqi; }
.cv__check i::before { content: ""; flex: none; width: 5cqi; height: 5cqi; border-radius: 1.2cqi; box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .35); }
.cv__check i.is-on::before { background: var(--blue-900); box-shadow: none; }
.cv__check i::after { content: ""; display: block; height: 2.8cqi; width: calc(85% - var(--d) * 9%); border-radius: 2cqi; background: rgba(1, 29, 38, .16); }
.cv__check i.is-on::after { background: rgba(1, 29, 38, .32); }
/* rm-05 */
.cv__site { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2.5cqi; }
.cv__tela { display: flex; flex-direction: column; gap: 2cqi; padding: 3cqi; border-radius: 2.4cqi; background: rgba(249, 250, 250, .1); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); }
.cv__tela i { height: 6cqi; border-radius: 1cqi; background: rgba(249, 250, 250, .2); } .cv__tela i + i { height: 12cqi; }
.cv__tela--nova { background: rgba(244, 182, 63, .16); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .6); }
.cv__tela--nova i { background: rgba(244, 182, 63, .5); }
.cv__seta { padding: 1.2cqi 2.4cqi; border-radius: 1.5cqi; background: var(--yellow); color: var(--blue-900); font-size: 4.6cqi; font-weight: 600; }

/* Thumb de artigo: palavra-chave grande + desenho do tema */
.ta { position: relative; display: block; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; container-type: inline-size; border-radius: inherit; }
.ta--sh { background: radial-gradient(70% 80% at 100% 0%, rgba(18, 89, 124, .9), transparent 70%), var(--blue-900); color: #fff; }
.ta--ib { background: radial-gradient(70% 80% at 100% 0%, rgba(255, 255, 255, .45), transparent 70%), var(--yellow); color: var(--blue-900); }
.ta__k { position: absolute; left: 6cqi; top: 6cqi; font-size: 3.4cqi; letter-spacing: .14em; text-transform: uppercase; opacity: .7; }
.ta__cod { position: absolute; right: 6cqi; top: 6cqi; font-size: 3.4cqi; letter-spacing: .1em; opacity: .55; }
.ta__w { position: absolute; left: 6cqi; bottom: 6cqi; max-width: 60%; font-weight: 200; font-size: 10cqi; line-height: .98; letter-spacing: -.035em; }
.ta--sh .ta__w { color: #fff; }
.ta__d { position: absolute; right: 6cqi; bottom: 7cqi; width: 30cqi; height: 22cqi; }
.ta--sh .ta__d { --c: var(--yellow); --c2: rgba(249, 250, 250, .22); } .ta--ib .ta__d { --c: var(--blue-900); --c2: rgba(1, 29, 38, .18); }
.ta__d--ia i { position: absolute; width: 5cqi; height: 5cqi; border-radius: 50%; background: var(--c2); }
.ta__d--ia i:nth-child(1) { left: 0; top: 30%; } .ta__d--ia i:nth-child(2) { left: 45%; top: 0; } .ta__d--ia i:nth-child(3) { left: 45%; bottom: 0; }
.ta__d--ia b { position: absolute; right: 0; top: 30%; width: 9cqi; height: 9cqi; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 3cqi rgba(244, 182, 63, .18); }
.ta__d--doc i { display: block; height: 2.6cqi; margin-bottom: 2.4cqi; border-radius: 2cqi; background: var(--c2); } .ta__d--doc i:nth-child(2) { width: 80%; } .ta__d--doc i:nth-child(3) { width: 60%; }
.ta__d--doc b { position: absolute; right: 0; bottom: 0; width: 9cqi; height: 9cqi; border-radius: 50%; background: var(--c); }
.ta__d--pulso svg { width: 100%; height: 100%; fill: none; stroke: var(--c); stroke-width: 2.5; stroke-dasharray: 1; stroke-dashoffset: 0; }
a:hover .ta__d--pulso svg { animation: ta-traco 1.2s ease; }
@keyframes ta-traco { from { stroke-dashoffset: 1; } }
.ta__d--busca i { position: absolute; left: 0; top: 0; width: 14cqi; height: 14cqi; border-radius: 50%; box-shadow: inset 0 0 0 1.6cqi var(--c); }
.ta__d--busca b { position: absolute; left: 12cqi; top: 12cqi; width: 2cqi; height: 8cqi; border-radius: 1cqi; background: var(--c); rotate: -45deg; }
.ta__d--busca em { position: absolute; right: 0; top: 0; width: 11cqi; height: 11cqi; background: var(--c); clip-path: polygon(50% 0, 62% 38%, 100% 50%, 62% 62%, 50% 100%, 38% 62%, 0 50%, 38% 38%); }
.ta__d--cal { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.6cqi; } .ta__d--cal i { border-radius: 1cqi; background: var(--c2); } .ta__d--cal i.is-on { background: var(--c); }
.ta__d--funil { display: flex; flex-direction: column; align-items: center; gap: 1.6cqi; } .ta__d--funil i { height: 3.6cqi; width: calc(var(--w) * 100%); border-radius: 2cqi; background: var(--c2); } .ta__d--funil i:last-child { background: var(--c); }

/* Thumb de ferramenta: a interface em miniatura */
.tf { position: relative; display: flex; flex-direction: column; gap: 0; width: 100%; aspect-ratio: 16 / 10; padding: 0 0 5%; overflow: hidden; container-type: inline-size; border-radius: inherit; background: #fff; color: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); box-sizing: border-box; }
.tf__bar { display: flex; gap: 1.6cqi; padding: 3.4cqi 5cqi; background: #F4F5F3; }
.tf > *:not(.tf__bar) { margin-inline: 6cqi; margin-top: 5cqi; } .tf__bar i { width: 2.6cqi; height: 2.6cqi; border-radius: 50%; background: rgba(1, 29, 38, .18); }
.tf__url { display: flex; align-items: center; gap: 2cqi; padding: 2.6cqi 3.4cqi; border-radius: 3cqi; background: #F4F5F3; font-size: 4.4cqi; color: var(--neutral-600); }
.tf__url i { width: 3cqi; height: 3cqi; border-radius: 50%; background: #4fbf8a; }
.tf__aneis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 3cqi; }
.tf__aneis i { position: relative; display: grid; place-items: center; aspect-ratio: 1; border-radius: 50%; background: conic-gradient(var(--yellow) calc(var(--v) * 1turn), rgba(1, 29, 38, .1) 0); }
.tf__aneis i::before { content: ""; position: absolute; inset: 2.2cqi; border-radius: 50%; background: #fff; }
.tf__aneis b { position: relative; font-weight: 400; font-size: 5cqi; }
.tf__q { align-self: flex-end; max-width: 80%; padding: 3cqi 4cqi; border-radius: 4cqi 4cqi 1cqi 4cqi; background: var(--blue-900); color: #fff; font-size: 4.6cqi; }
.tf__chk { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2.4cqi; } .tf__chk i { height: 9cqi; border-radius: 2.4cqi; background: #F4F5F3; }
.tf__chk i.is-on { background: rgba(79, 191, 138, .25); box-shadow: inset 0 0 0 1px #4fbf8a; } .tf__chk i.is-off { background: rgba(226, 102, 90, .15); box-shadow: inset 0 0 0 1px #E2665A; }
.tf__calc { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 2.4cqi; } .tf__calc i { height: 9cqi; border-radius: 2.4cqi; background: #F4F5F3; box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .08); }
.tf__res { display: flex; flex-direction: column; padding: 3.4cqi 4.5cqi; border-radius: 3.4cqi; background: var(--blue-900); color: #fff; }
.tf__res em { font-style: normal; font-size: 3.6cqi; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-300); } .tf__res b { font-weight: 300; font-size: 9cqi; color: var(--yellow); }
.tf__gauge { position: relative; display: grid; place-items: center; } .tf__gauge svg { width: 60%; fill: none; stroke-width: 9; stroke-linecap: round; }
.tf__gauge path { stroke: rgba(1, 29, 38, .1); } .tf__gauge .tf__gv { stroke: var(--yellow); stroke-dasharray: 1; stroke-dashoffset: .45; }
.tf__gauge b { font-weight: 400; font-size: 5.4cqi; }
.tf__esb { display: flex; flex-direction: column; gap: 2.4cqi; } .tf__esb i { display: flex; gap: 3cqi; align-items: center; padding: 2.6cqi 3.4cqi; border-radius: 2.6cqi; background: #F4F5F3; font-style: normal; font-size: 4.6cqi; }
.tf__esb i:last-child { background: var(--blue-900); color: #fff; } .tf__esb b { font-weight: 500; color: #c98a12; }

/* ===================================================================== v7.7 | Diagnóstico do site e Relatório */
/* Campo de URL */
.rxi { width: 100%; max-width: 620px; display: flex; flex-direction: column; gap: 10px; }
.rxi__campo { display: flex; align-items: center; gap: 8px; padding: 7px 7px 7px 20px; border-radius: 18px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .12), 0 30px 60px -36px rgba(1, 29, 38, .5); transition: box-shadow .2s; }
.rxi__campo:focus-within { box-shadow: 0 0 0 2px var(--yellow), 0 30px 60px -36px rgba(1, 29, 38, .5); }
.rxi__campo.is-erro { box-shadow: 0 0 0 2px #E2665A; }
.rxi__pre { font-size: 16px; color: var(--neutral-500); }
.rxi__campo input { flex: 1; min-width: 0; height: 52px; border: 0; outline: 0; background: none; font: inherit; font-size: 18px; color: var(--neutral-900); }
.rxi__erro { margin: 0; font-size: 13.5px; color: #E2665A; }
.rxi__alt { margin: 0; font-size: 14px; color: var(--neutral-600); }
.rxi__alt button { padding: 0; border: 0; background: none; font: inherit; color: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
[data-tema="escuro"] .rxi__alt { color: var(--neutral-300); }
.rxi--mini .rxi__campo { padding: 5px 5px 5px 14px; border-radius: 14px; }
.rxi--mini .rxi__campo input { height: 40px; font-size: 15px; }
.rxi--mini .rxi__pre { font-size: 14px; }
@media (max-width: 640px) { .rxi__campo { flex-wrap: wrap; padding: 8px; } .rxi__campo input { flex-basis: 60%; height: 46px; } .rxi__campo .btn { flex: 1 1 100%; justify-content: center; } .rxi__pre { padding-left: 8px; } }

/* Notas em anel */
.rxns { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.rxn { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 8px; border-radius: 18px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
[data-tema="claro"] .rxn { background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.rxn__r { position: relative; display: grid; place-items: center; width: 64px; height: 64px; }
.rxn__r svg { position: absolute; inset: 0; rotate: -90deg; fill: none; stroke-width: 3.2; stroke-linecap: round; }
.rxn__r circle { stroke: rgba(127, 140, 145, .22); }
.rxn__r .rxn__v { stroke: var(--neutral-400); stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--v)); transition: stroke-dashoffset 1.2s cubic-bezier(.2, .7, .2, 1); }
.rxn.is-bom .rxn__v { stroke: #4fbf8a; } .rxn.is-medio .rxn__v { stroke: var(--yellow); } .rxn.is-ruim .rxn__v { stroke: #E2665A; }
.rxn__r b { font-weight: 400; font-size: 20px; }
.rxn__t { font-size: 12.5px; text-align: center; color: var(--neutral-300); }
[data-tema="claro"] .rxn__t { color: var(--neutral-600); }

/* Note e celular com o print */
.rxd { position: relative; width: 100%; padding-bottom: 6%; }
.rxd__note { margin: 0; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .12), 0 60px 90px -50px rgba(0, 0, 0, .6); }
.rxd__bar { display: flex; align-items: center; gap: 6px; padding: 10px 14px; background: #ECEEED; }
.rxd__bar i { width: 9px; height: 9px; border-radius: 50%; background: rgba(1, 29, 38, .2); }
.rxd__bar em { margin-left: 10px; padding: 3px 12px; border-radius: 99px; background: #fff; font-style: normal; font-size: 12px; color: var(--neutral-600); }
.rxd__tela { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #E9ECEB; }
.rxd__tela img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.rxd__tela img:not([src]), .rxd__tela img[src=""] { visibility: hidden; }
.rxd__cel { position: absolute; right: -2%; bottom: 0; width: 24%; margin: 0; padding: 6px; border-radius: 24px; background: var(--blue-900); box-shadow: 0 0 0 1px rgba(249, 250, 250, .14), 0 40px 60px -30px rgba(0, 0, 0, .7); }
.rxd__cel .rxd__tela { aspect-ratio: 9 / 19; border-radius: 18px; }
.rxd__scan { position: absolute; left: 0; right: 0; top: 0; height: 30%; background: linear-gradient(to bottom, transparent, rgba(244, 182, 63, .28) 80%, rgba(244, 182, 63, .9)); opacity: 0; pointer-events: none; }
[data-rx-estado="carregando"] .rxd__scan, .dxh .rxd__scan { opacity: 1; animation: rx-scan 2.6s cubic-bezier(.5, 0, .5, 1) infinite; }
@keyframes rx-scan { from { translate: 0 -100%; } to { translate: 0 340%; } }
@media (prefers-reduced-motion: reduce) { .rxd__scan { display: none; } }

/* Diagnóstico: hero */
.dxh { background: radial-gradient(50% 60% at 100% 0%, rgba(244, 182, 63, .16), transparent 70%), #F4F5F3; color: var(--neutral-900); }
.dxh__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 600px); gap: 56px; align-items: center; }
.dxh__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.dxh__tag { margin: 0; display: inline-flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-600); }
.dxh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(42px, 5vw, 78px); line-height: 1; letter-spacing: -.035em; }
.dxh h1 em { font-style: italic; font-weight: 200; color: #12597C; }
.dxh__lead { margin: 0; max-width: 560px; font-size: 18px; line-height: 1.55; color: var(--neutral-600); }
.dxh__ok { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.dxh__ok li { display: flex; align-items: center; gap: 7px; font-size: 14px; color: var(--neutral-700); }
.dxh__ok svg { color: #12597C; }
.dxh__vis { display: flex; flex-direction: column; gap: 18px; }
.dxh__palco { position: relative; }
.dxh__pins { position: absolute; left: 0; top: 0; width: 100%; aspect-ratio: 16 / 11.2; pointer-events: none; }
.dxh__pin { position: absolute; left: calc(var(--x) * 100%); top: calc(var(--y) * 100% + 30px); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #E2665A; color: #fff; font-style: normal; font-size: 12px; font-weight: 600; box-shadow: 0 0 0 5px rgba(226, 102, 90, .25); animation: rx-pin 6s calc(var(--d) * .9s + 1s) both infinite; }
@keyframes rx-pin { 0%, 4% { opacity: 0; scale: .3; } 9%, 88% { opacity: 1; scale: 1; } 96%, 100% { opacity: 0; scale: .6; } }
.dxh .rxns { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dxh__ex { margin: 0; text-align: right; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
@media (max-width: 1100px) { .dxh__in { grid-template-columns: minmax(0, 1fr); padding: 130px 24px 72px; gap: 40px; } }
@media (max-width: 640px) { .dxh .rxns { gap: 6px; } .rxn { padding: 10px 4px; } .rxn__r { width: 50px; height: 50px; } .rxn__r b { font-size: 16px; } .rxn__t { font-size: 11px; } }
@media (prefers-reduced-motion: reduce) { .dxh__pin { animation: none; } }

/* Diagnóstico: capítulos */
.mt--dx .mtp__f { color: var(--yellow); }
.dxv { width: 100%; }
.dxv--print { position: relative; padding: 0 12% 10% 0; }
.dxv__note { display: block; border-radius: 14px; overflow: hidden; box-shadow: 0 0 0 1px rgba(249, 250, 250, .16), 0 40px 70px -40px rgba(0, 0, 0, .7); }
.dxv__note img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
.dxv__cel { position: absolute; right: 0; bottom: 0; width: 26%; padding: 5px; border-radius: 20px; background: #000; box-shadow: 0 0 0 1px rgba(249, 250, 250, .2); }
.dxv__cel img { display: block; width: 100%; aspect-ratio: 9 / 19; object-fit: cover; object-position: top; border-radius: 15px; }
.dxv--notas ul { margin: 0 0 18px; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.dxv--notas li { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 18px 8px; border-radius: 18px; background: rgba(249, 250, 250, .06); font-size: 13px; color: var(--neutral-300); }
.dxv--notas li b { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; font-weight: 300; font-size: 24px; color: #fff; background: radial-gradient(closest-side, var(--blue-900) 82%, transparent 84%), conic-gradient(var(--yellow) calc(var(--v) * var(--e, 1) * 1turn), rgba(249, 250, 250, .12) 0); }
.dxv--notas p { margin: 0; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 16px; background: rgba(249, 250, 250, .06); font-size: 14px; color: var(--neutral-200); }
.dxv--notas p i { height: 8px; border-radius: 99px; background: linear-gradient(90deg, #4fbf8a 0 30%, var(--yellow) 30% 60%, #E2665A 60%); position: relative; }
.dxv--notas p i::after { content: ""; position: absolute; left: calc(var(--p) * 100%); top: 50%; width: 14px; height: 14px; margin: -7px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px rgba(255, 255, 255, .2); }
.dxv--notas p em { font-style: normal; color: #E2665A; }
.dxv--mapa { display: flex; justify-content: center; }
.dxv__pag { position: relative; display: block; width: 46%; height: 380px; overflow: hidden; border-radius: 22px; box-shadow: 0 0 0 6px #000, 0 0 0 7px rgba(249, 250, 250, .2); }
.dxv__rolo { position: relative; display: block; animation: dx-rola 16s ease-in-out infinite alternate; }
.dxv__pag img { display: block; width: 100%; }
.dxv__pag i { position: absolute; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #E2665A; color: #fff; font-style: normal; font-size: 12px; font-weight: 600; box-shadow: 0 0 0 5px rgba(226, 102, 90, .3); }
@keyframes dx-rola { to { translate: 0 calc(-100% + 380px); } }
.dxv--plano { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.dxv--plano div { display: flex; flex-direction: column; gap: 8px; padding: 16px; border-radius: 18px; background: rgba(249, 250, 250, .06); }
.dxv--plano b { margin-bottom: 4px; font-weight: 400; font-size: 14px; color: #fff; }
.dxv--plano div:first-child b { color: var(--yellow); }
.dxv--plano i { height: 64px; border-radius: 12px; background: rgba(249, 250, 250, .08); box-shadow: inset 3px 0 0 var(--yellow); }
.dxv--plano div:nth-child(2) i { box-shadow: inset 3px 0 0 #7FB4D0; } .dxv--plano div:nth-child(3) i { box-shadow: inset 3px 0 0 rgba(249, 250, 250, .3); }
.dxv--rev { display: flex; align-items: flex-start; gap: 18px; padding: 26px; border-radius: 22px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); }
.dxv__av { flex: none; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); }
.dxv--rev ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.dxv--rev li { padding: 12px 16px; border-radius: 12px; background: rgba(249, 250, 250, .06); font-size: 15px; color: #fff; }
@media (prefers-reduced-motion: reduce) { .dxv__rolo { animation: none; } }

/* Diagnóstico: máquina e especialista */
.dxm { background: #fff; color: var(--neutral-900); }
.dxm__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.dxm__grade { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 20px; align-items: stretch; }
.dxm__c { display: flex; flex-direction: column; gap: 22px; padding: 32px; border-radius: 28px; background: #F4F5F3; }
.dxm__c--esc { background: var(--blue-900); color: var(--neutral-100); }
.dxm__k { margin: 0; display: flex; align-items: center; gap: 12px; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-600); }
.dxm__c--esc .dxm__k { color: var(--yellow); }
.dxm__ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--blue-900); color: var(--yellow); }
.dxm__c--esc .dxm__ic { background: var(--yellow); color: var(--blue-900); }
.dxm__c ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; }
.dxm__c li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; }
.dxm__c li svg { margin-top: 4px; color: #12597C; } .dxm__c--esc li svg { color: var(--yellow); }
.dxm__c li span { display: flex; flex-direction: column; gap: 3px; font-size: 15px; line-height: 1.5; color: var(--neutral-600); }
.dxm__c--esc li span { color: var(--neutral-300); }
.dxm__c li b { font-weight: 500; font-size: 17px; color: var(--neutral-900); } .dxm__c--esc li b { color: #fff; }
.dxm__mais { align-self: center; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); font-size: 28px; font-weight: 300; }
@media (max-width: 900px) { .dxm__grade { grid-template-columns: minmax(0, 1fr); } .dxm__mais { justify-self: center; } .dxm__in { padding: 80px 24px; } }

/* Diagnóstico: fechamento */
.dxf { background: radial-gradient(45% 70% at 50% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: #fff; }
.dxf__in { max-width: 900px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; align-items: center; gap: 32px; text-align: center; }
.dxf h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(44px, 6vw, 92px); line-height: .98; letter-spacing: -.04em; }
.dxf h2 em { font-style: italic; color: var(--yellow); }
.dxf .rxi { align-items: center; }
@media (max-width: 640px) { .dxf__in { padding: 80px 24px; } }

/* Relatório: estados */
.rx[data-rx-estado="carregando"] .rxv, .rx[data-rx-estado="carregando"] .rxm, .rx[data-rx-estado="carregando"] .rxp,
.rx[data-rx-estado="erro"] .rxv, .rx[data-rx-estado="erro"] .rxm, .rx[data-rx-estado="erro"] .rxp { display: none; }
.rxh__ex, .rxh__erro, .rxh__log { display: none; }
.rx[data-rx-estado="exemplo"] .rxh__ex { display: flex; }
.rx[data-rx-estado="erro"] .rxh__erro { display: flex; }
.rx[data-rx-estado="erro"] .rxns, .rx[data-rx-estado="erro"] .rxh__ctas, .rx[data-rx-estado="erro"] .rxh__resumo, .rx[data-rx-estado="carregando"] .rxh__ctas { display: none; }
.rx[data-rx-estado="carregando"] .rxh__log { display: flex; }
.rx[data-rx-estado="carregando"] .rxns { opacity: .35; }
.rxe__ok { display: none; } .rx.is-lead .rxe__form { display: none; } .rx.is-lead .rxe__ok { display: flex; }

/* Relatório: topo */
.rxh { background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .08), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.rxh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 96px; display: flex; flex-direction: column; gap: 28px; }
.rxh__ex { flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; padding: 14px 16px 14px 22px; border-radius: 18px; background: rgba(244, 182, 63, .12); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .45); }
.rxh__ex p { margin: 0; font-size: 15px; color: #fff; } .rxh__ex b { font-weight: 500; color: var(--yellow); }
.rxh__ex .rxi { max-width: 440px; }
.rxh__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 620px); gap: 56px; align-items: center; }
.rxh__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; min-width: 0; }
.rxh__st { margin: 0; display: inline-flex; align-items: center; gap: 10px; padding: 6px 14px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-size: 13px; color: var(--neutral-200); }
.rxh__k { margin: 0; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--yellow); }
.rxh h1 { margin: 0; max-width: 100%; font-weight: 200; font-size: clamp(32px, 3.8vw, 58px); line-height: 1.02; letter-spacing: -.03em; color: #fff; overflow-wrap: break-word; }
.rxh__resumo { margin: 0; max-width: 560px; font-size: 18px; line-height: 1.55; color: var(--neutral-300); }
.rxh__resumo b { font-weight: 500; color: #fff; }
.rxh__foco { margin: 0; font-size: 15px; color: var(--neutral-300); } .rxh__foco b { color: var(--yellow); font-weight: 500; }
.rxh__foco:empty { display: none; }
.rxh .rxns { width: 100%; max-width: 560px; }
.rxh__pdf { padding: 0; border: 0; background: none; font: inherit; cursor: pointer; }
.rxh__erro { flex-direction: column; align-items: flex-start; gap: 16px; max-width: 560px; padding: 22px; border-radius: 20px; background: rgba(226, 102, 90, .1); box-shadow: inset 0 0 0 1px rgba(226, 102, 90, .45); }
.rxh__erro p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-200); } .rxh__erro b { color: #fff; font-weight: 500; }
.rxh__vis { position: relative; min-width: 0; }
.rxh__log { position: absolute; left: -24px; bottom: -24px; flex-direction: column; gap: 10px; width: min(330px, 70%); padding: 18px 20px; border-radius: 20px; background: rgba(1, 29, 38, .92); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .8); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); z-index: 2; }
.rxh__log > p { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.rxh__log ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 7px; }
.rxh__log li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: var(--neutral-500); transition: color .3s; }
.rxh__log li i { flex: none; width: 14px; height: 14px; border-radius: 50%; box-shadow: inset 0 0 0 1.5px rgba(249, 250, 250, .25); }
.rxh__log li.is-on { color: #fff; } .rxh__log li.is-on i { box-shadow: inset 0 0 0 1.5px var(--yellow); border-top: 1.5px solid transparent; animation: rx-gira 1s linear infinite; background: conic-gradient(var(--yellow) 0 25%, transparent 0); }
.rxh__log li.is-ok { color: var(--neutral-300); } .rxh__log li.is-ok i { background: #4fbf8a; box-shadow: none; }
@keyframes rx-gira { to { rotate: 1turn; } }
@media (max-width: 1100px) { .rxh__grade { grid-template-columns: minmax(0, 1fr); gap: 40px; } .rxh__in { padding: 120px 24px 72px; } .rxh__log { left: 8px; bottom: -16px; } }

/* Relatório: notas do Google */
.rxv { background: #F4F5F3; color: var(--neutral-900); }
.rxv__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.rxv__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.rxv__i { display: flex; flex-direction: column; gap: 12px; padding: 22px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.rxv__cab { display: flex; justify-content: space-between; gap: 8px; } .rxv__cab b { font-weight: 500; font-size: 15px; line-height: 1.3; } .rxv__cab span { font-size: 11px; letter-spacing: .1em; color: var(--neutral-500); }
.rxv__val { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: 40px; line-height: 1; letter-spacing: -.02em; }
.rxv__val em { margin-top: 6px; font-style: normal; font-weight: 500; font-size: 12.5px; letter-spacing: .02em; }
.rxv__i.is-bom .rxv__val em { color: #2E9A6A; } .rxv__i.is-medio .rxv__val em { color: #B57A08; } .rxv__i.is-ruim .rxv__val em { color: #D0574B; }
.rxv__barra { position: relative; display: flex; height: 8px; border-radius: 99px; overflow: visible; }
.rxv__barra i { height: 100%; background: #4fbf8a; } .rxv__barra i:first-child { border-radius: 99px 0 0 99px; } .rxv__barra i:nth-child(2) { background: var(--yellow); } .rxv__barra i:nth-child(3) { flex: 1; background: #E2665A; border-radius: 0 99px 99px 0; }
.rxv__barra b { position: absolute; top: 50%; width: 16px; height: 16px; margin: -8px; border-radius: 50%; background: var(--blue-900); box-shadow: 0 0 0 3px #fff; }
.rxv__d { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--neutral-600); }
.rxv__campo { padding: 20px 24px; border-radius: 20px; background: var(--blue-900); color: #fff; }
.rxv__campo-t { margin: 0 0 12px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.rxv__campo ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 10px 32px; }
.rxv__campo li { display: flex; gap: 10px; align-items: baseline; font-size: 14px; color: var(--neutral-300); } .rxv__campo li b { font-weight: 400; font-size: 20px; color: #fff; }
.rxv__campo li.is-bom b { color: #4fbf8a; } .rxv__campo li.is-medio b { color: var(--yellow); } .rxv__campo li.is-ruim b { color: #E2665A; }
@media (max-width: 1100px) { .rxv__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rxv__in { padding: 80px 24px; } }
@media (max-width: 560px) { .rxv__lista { grid-template-columns: minmax(0, 1fr); } }

/* Relatório: mapa */
.rxm { background: radial-gradient(40% 60% at 0% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.rxm__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.rxm__cab { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.rxm__dev { display: flex; padding: 5px; border-radius: 99px; background: rgba(249, 250, 250, .08); }
.rxm__dev button { padding: 10px 18px; border: 0; border-radius: 99px; background: none; font: inherit; font-size: 14px; color: var(--neutral-300); cursor: pointer; }
.rxm__dev button.is-on { background: var(--yellow); color: var(--blue-900); }
.rxm__grade { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: 40px; align-items: start; }
.rxm__vp { position: relative; height: 640px; overflow-y: auto; border-radius: 30px; background: #000; box-shadow: 0 0 0 7px #000, 0 0 0 8px rgba(249, 250, 250, .2); scrollbar-width: thin; }
.rxm__vp.is-desk { border-radius: 14px; box-shadow: 0 0 0 1px rgba(249, 250, 250, .2); }
.rxm__pg { position: relative; width: 100%; }
.rxm__pg img { display: block; width: 100%; height: 100%; }
.rxm__caixas i { position: absolute; border-radius: 4px; box-shadow: 0 0 0 2px var(--yellow), 0 0 0 9999px rgba(1, 29, 38, .35); animation: rx-caixa 1.6s ease-in-out infinite; }
.rxm__caixas i + i { box-shadow: 0 0 0 2px var(--yellow); }
@keyframes rx-caixa { 50% { outline: 4px solid rgba(244, 182, 63, .35); outline-offset: 3px; } }
.rxm__pin { position: absolute; display: grid; place-items: center; width: 28px; height: 28px; margin: -14px; padding: 0; border: 0; border-radius: 50%; background: #E2665A; color: #fff; font: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; box-shadow: 0 0 0 4px rgba(226, 102, 90, .3); transition: scale .2s; z-index: 1; }
.rxm__pin.is-medio { background: var(--yellow); color: var(--blue-900); box-shadow: 0 0 0 4px rgba(244, 182, 63, .3); }
.rxm__pin.is-on { scale: 1.25; box-shadow: 0 0 0 6px #fff; z-index: 2; }
.rxm__lado { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.rxm__det { padding: 26px; border-radius: 24px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); }
.rxm__det-k { margin: 0 0 8px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.rxm__det h3 { margin: 0 0 10px; font-weight: 400; font-size: 26px; line-height: 1.15; color: #fff; }
.rxm__det p { margin: 0 0 8px; font-size: 15px; line-height: 1.55; color: var(--neutral-300); } .rxm__det-c b { color: #fff; font-weight: 500; }
.rxm__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; max-height: 320px; overflow-y: auto; scrollbar-width: thin; }
.rxm__lista button { width: 100%; display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 12px; align-items: center; padding: 10px 14px; border: 0; border-radius: 14px; background: rgba(249, 250, 250, .04); font: inherit; text-align: left; color: #fff; cursor: pointer; }
.rxm__lista button:hover, .rxm__lista button.is-on { background: rgba(249, 250, 250, .1); }
.rxm__lista b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #E2665A; font-size: 12.5px; font-weight: 600; }
.rxm__lista .is-medio b { background: var(--yellow); color: var(--blue-900); }
.rxm__lista span { display: flex; flex-direction: column; font-size: 15px; } .rxm__lista em { font-style: normal; font-size: 12.5px; color: var(--neutral-400); }
.rxm__outros { margin: 0; font-size: 13.5px; color: var(--neutral-400); }
.rxm__nada { padding: 14px; font-size: 14px; color: var(--neutral-300); }
@media (max-width: 1000px) { .rxm__grade { grid-template-columns: minmax(0, 1fr); } .rxm__vp { height: 520px; max-width: 420px; width: 100%; margin: 0 auto; } .rxm__vp.is-desk { max-width: none; height: 420px; } .rxm__in { padding: 80px 24px; } }

/* Relatório: plano */
.rxp { background: #F4F5F3; color: var(--neutral-900); }
.rxp__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.rxp__cab { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.rxp__prog { display: flex; flex-direction: column; gap: 8px; width: 260px; }
.rxp__prog i { height: 8px; border-radius: 99px; background: linear-gradient(90deg, #4fbf8a calc(var(--v) * 100%), rgba(1, 29, 38, .1) 0); transition: background .4s; }
.rxp__prog span { font-size: 13px; color: var(--neutral-600); }
.rxp__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: start; }
.rxp__col { display: flex; flex-direction: column; gap: 10px; }
.rxp__k { margin: 0; display: flex; align-items: center; gap: 10px; } .rxp__k b { font-weight: 400; font-size: 22px; }
.rxp__k span { display: grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; border-radius: 99px; background: var(--blue-900); color: #fff; font-size: 13px; }
.rxp__col--agora .rxp__k span { background: var(--yellow); color: var(--blue-900); }
.rxp__d { margin: 0 0 6px; font-size: 14px; color: var(--neutral-600); }
.rxp__col ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.rxa { display: flex; flex-direction: column; gap: 10px; padding: 20px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), inset 4px 0 0 #E2665A; transition: opacity .3s; }
.rxa.is-medio { box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), inset 4px 0 0 var(--yellow); }
.rxa.is-feito { opacity: .55; } .rxa.is-feito h3 { text-decoration: line-through; }
.rxa--vazio { box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); } .rxa--vazio p { margin: 0; font-size: 14px; color: var(--neutral-600); }
.rxa__cab { display: flex; align-items: center; gap: 10px; }
.rxa__n { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--blue-900); color: #fff; font-size: 12px; }
.rxa__p { font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
.rxa__ok { margin-left: auto; display: flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--neutral-600); cursor: pointer; }
.rxa__ok input { width: 16px; height: 16px; accent-color: #2E9A6A; }
.rxa h3 { margin: 0; font-weight: 500; font-size: 18px; line-height: 1.25; }
.rxa p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--neutral-600); }
.rxa p b { display: block; margin-bottom: 2px; font-weight: 500; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--neutral-800); }
.rxa__visto { padding: 10px 12px; border-radius: 12px; background: #F4F5F3; overflow-wrap: anywhere; }
.rxa__pe { display: flex; flex-wrap: wrap; gap: 6px; } .rxa__pe span { padding: 4px 10px; border-radius: 99px; background: #F4F5F3; font-size: 12px; color: var(--neutral-700); }
@media (max-width: 1000px) { .rxp__grade { grid-template-columns: minmax(0, 1fr); } .rxp__in { padding: 80px 24px; } }

/* Relatório: revisão do especialista */
.rxe { background: radial-gradient(40% 60% at 100% 100%, rgba(244, 182, 63, .12), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.rxe__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: 56px; align-items: center; }
.rxe__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.rxe h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 4vw, 60px); line-height: 1.03; letter-spacing: -.03em; color: #fff; }
.rxe h2 em { font-style: italic; color: var(--yellow); }
.rxe__tx > p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.rxe__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }
.rxe__lista li { display: flex; gap: 12px; padding: 16px; border-radius: 16px; background: rgba(249, 250, 250, .05); }
.rxe__lista li > b { font-weight: 400; font-size: 13px; color: var(--yellow); }
.rxe__lista span { display: flex; flex-direction: column; gap: 3px; font-size: 14px; line-height: 1.45; color: var(--neutral-300); } .rxe__lista span b { font-weight: 500; font-size: 15px; color: #fff; }
.rxe__card { display: flex; flex-direction: column; gap: 14px; padding: 30px; border-radius: 28px; background: #fff; color: var(--neutral-900); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .7); }
.rxe__form { display: flex; flex-direction: column; gap: 14px; }
.rxe__ft { margin: 0; font-size: 18px; } .rxe__ft b { font-weight: 500; overflow-wrap: anywhere; }
.rxe__ok { flex-direction: column; gap: 8px; padding: 22px; border-radius: 18px; background: #F4F5F3; } .rxe__ok b { font-weight: 500; font-size: 20px; } .rxe__ok p { margin: 0; color: var(--neutral-600); }
.rxe__alba { margin: 0; font-size: 14px; color: var(--neutral-600); } .rxe__alba button { padding: 0; border: 0; background: none; font: inherit; color: var(--blue-900); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
@media (max-width: 1000px) { .rxe__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; } }
@media (max-width: 560px) { .rxe__lista { grid-template-columns: minmax(0, 1fr); } .rxe__card { padding: 22px; } }

@media print {
  .rx .rxh__ex, .rx .rxh__ctas, .rx .rxe__card, .rx .rxm__dev, .rx .rxh__log, .rxd__scan, .rxa__ok { display: none !important; }
  .rxh, .rxm, .rxe { background: #fff !important; color: #000 !important; }
  .rxh h1, .rxm__det h3, .rxe h2, .rxm__lista button { color: #000 !important; }
  .rxm__vp { height: auto !important; overflow: visible !important; }
  .rxv, .rxm, .rxp, .rxe { break-inside: avoid-page; }
}
/* Relatório em erro: a revisão vem logo depois do topo, em fundo claro */
.rx[data-rx-estado="erro"] .rxe { background: #F4F5F3; color: var(--neutral-900); }
.rx[data-rx-estado="erro"] .rxe h2 { color: var(--neutral-900); } .rx[data-rx-estado="erro"] .rxe h2 em { color: #12597C; }
.rx[data-rx-estado="erro"] .rxe__tx > p, .rx[data-rx-estado="erro"] .rxe__lista span { color: var(--neutral-600); }
.rx[data-rx-estado="erro"] .rxe__lista li { background: #fff; } .rx[data-rx-estado="erro"] .rxe__lista span b { color: var(--neutral-900); } .rx[data-rx-estado="erro"] .rxe__lista li > b { color: #c98a12; }
.rx[data-rx-estado="erro"] .rxe .chip { color: var(--neutral-700); border-color: rgba(34, 37, 38, .2); }
.rxa__mais { border-top: 1px solid rgba(34, 37, 38, .08); padding-top: 10px; }
.rxa__mais summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 13.5px; font-weight: 500; color: #12597C; cursor: pointer; }
.rxa__mais summary::-webkit-details-marker { display: none; }
.rxa__mais summary::after { content: "+"; font-size: 18px; font-weight: 300; transition: rotate .3s; }
.rxa__mais[open] summary::after { rotate: 45deg; }
.rxa__mais p { margin-top: 10px; }
@media print { .rxa__mais p { display: block; } }

/* ===================================================================== v7.7 | Ferramentas */
.frh2 { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.frh2__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 88px; display: flex; flex-direction: column; gap: 48px; }
.frh2__cab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 32px; align-items: end; }
.frh2 h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(56px, 8vw, 128px); line-height: .92; letter-spacing: -.045em; color: #fff; }
.frh2 h1 em { font-style: italic; font-size: .42em; letter-spacing: -.02em; line-height: 1.15; color: var(--yellow); }
.frh2__cab p { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.frd { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.frd a { display: flex; flex-direction: column; gap: 12px; padding: 10px 10px 16px; border-radius: 22px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); transition: translate .3s, background-color .3s; animation: fr-entra .7s calc(var(--d) * 90ms) both cubic-bezier(.2, .7, .2, 1); }
.frd a:hover { translate: 0 -4px; background: rgba(249, 250, 250, .1); }
.frd .tf { border-radius: 14px; }
.frd__t { display: flex; flex-direction: column; gap: 6px; padding: 0 6px; } .frd__t b { font-weight: 400; font-size: 17px; color: #fff; }
@keyframes fr-entra { from { opacity: 0; translate: 0 20px; } }
@media (max-width: 1100px) { .frd { grid-template-columns: repeat(3, minmax(0, 1fr)); } .frh2__cab { grid-template-columns: minmax(0, 1fr); } .frh2__in { padding: 120px 24px 64px; } }
@media (max-width: 640px) { .frd { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .frd__t b { font-size: 15px; } }
@media (prefers-reduced-motion: reduce) { .frd a { animation: none; } }
.csc__f { white-space: nowrap; }

/* Bancada */
.fb { background: #F4F5F3; color: var(--neutral-900); scroll-margin-top: 80px; }
.fb__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px 112px; display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 32px; align-items: start; scroll-margin-top: 90px; }
.fb__nav { position: sticky; top: 100px; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.fb__nav button { width: 100%; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding: 16px; border: 0; border-radius: 18px; background: transparent; font: inherit; text-align: left; color: var(--neutral-900); cursor: pointer; transition: background-color .25s, box-shadow .25s; }
.fb__nav button:hover { background: rgba(255, 255, 255, .7); }
.fb__nav button.is-on { background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), inset 4px 0 0 var(--yellow), 0 30px 50px -40px rgba(1, 29, 38, .5); }
.fb__nav button > b { font-weight: 400; font-size: 13px; color: #c98a12; padding-top: 2px; }
.fb__nav span { display: flex; flex-direction: column; gap: 4px; } .fb__nav span b { font-weight: 500; font-size: 16px; } .fb__nav em { font-style: normal; font-size: 13px; line-height: 1.45; color: var(--neutral-600); }
.fb__nav button:not(.is-on) em { display: none; }
.fb__palco { min-width: 0; }
.fb__p { padding: 36px; border-radius: 30px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 50px 80px -60px rgba(1, 29, 38, .45); animation: fb-entra .45s cubic-bezier(.2, .7, .2, 1); scroll-margin-top: 100px; }
@keyframes fb-entra { from { opacity: 0; translate: 0 12px; } }
.fb__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 28px; }
.fb__cab h2 { margin: 0; font-weight: 300; font-size: clamp(32px, 3.4vw, 48px); line-height: 1.05; letter-spacing: -.03em; }
.fb__cab p { margin: 0; max-width: 620px; font-size: 16px; line-height: 1.6; color: var(--neutral-600); }
.fb__tool { display: flex; flex-direction: column; gap: 20px; }
.fb__q { margin: 0; font-size: 18px; }
.fb__ok { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; } .fb__ok li { display: flex; gap: 8px; align-items: center; font-size: 15px; color: var(--neutral-700); } .fb__ok svg { color: #12597C; }
.fb__lk { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; letter-spacing: .04em; text-transform: uppercase; color: var(--blue-900); }
.fb__lk svg { color: #c98a12; }
.fb__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; }
.fb__campos { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.fb__ias { display: flex; flex-direction: column; gap: 16px; padding-top: 8px; border-top: 1px solid rgba(34, 37, 38, .08); scroll-margin-top: 100px; }
.fb__passo { margin: 0; font-size: 14.5px; color: var(--neutral-600); } .fb__passo b { color: var(--blue-900); }
.fb__pq { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.fb__pq li { display: flex; flex-direction: column; gap: 8px; padding: 16px; border-radius: 18px; background: #F4F5F3; box-shadow: inset 0 0 0 1px transparent; transition: box-shadow .25s, background-color .25s; }
.fb__pq li[data-r="1"] { background: rgba(79, 191, 138, .12); box-shadow: inset 0 0 0 1px #4fbf8a; } .fb__pq li[data-r="0"] { background: rgba(226, 102, 90, .08); box-shadow: inset 0 0 0 1px rgba(226, 102, 90, .6); }
.fb__pq-k { margin: 0; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.fb__pq-t { margin: 0; font-size: 15.5px; line-height: 1.45; }
.fb__pq-a { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: auto; }
.fb__pq-a > button, .fb__pq-a > a { padding: 6px 10px; border: 0; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); font: inherit; font-size: 12.5px; color: var(--neutral-800); cursor: pointer; }
.fb__pq-a > a:hover, .fb__pq-a > button:hover { box-shadow: inset 0 0 0 1px var(--blue-900); }
.fb__pq-r { display: flex; gap: 4px; margin-left: auto; }
.fb__pq-r button { padding: 6px 10px; border: 0; border-radius: 99px; background: rgba(1, 29, 38, .06); font: inherit; font-size: 12.5px; color: var(--neutral-700); cursor: pointer; }
.fb__pq-r button[data-ias-r="1"].is-on { background: #2E9A6A; color: #fff; } .fb__pq-r button[data-ias-r="0"].is-on { background: #D0574B; color: #fff; }
.fb__placar { display: flex; flex-direction: column; gap: 12px; padding: 22px; border-radius: 22px; background: var(--blue-900); color: #fff; }
.fb__placar-n { display: flex; align-items: baseline; gap: 12px; } .fb__placar-n b { font-weight: 200; font-size: 56px; line-height: 1; color: var(--yellow); } .fb__placar-n span { font-size: 15px; color: var(--neutral-300); }
.fb__placar i { height: 8px; border-radius: 99px; background: linear-gradient(90deg, var(--yellow) calc(var(--v) * 100%), rgba(249, 250, 250, .12) 0); }
.fb__placar p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-200); }
.fb__calc { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.fb__c { display: flex; flex-direction: column; gap: 6px; padding: 16px; border-radius: 18px; background: #F4F5F3; }
.fb__c label { font-size: 13px; font-weight: 500; } .fb__c small { font-size: 12px; color: var(--neutral-500); }
.fb__cx { display: flex; align-items: center; gap: 6px; }
.fb__c .fb__cx { padding: 0 12px; border-radius: 12px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); }
.fb__c .fb__cx span { font-size: 14px; color: var(--neutral-500); }
.fb__c input { flex: 1; min-width: 0; height: 44px; border: 0; outline: 0; background: none; font: inherit; font-size: 18px; }
.fb__res { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 24px; border-radius: 22px; background: var(--blue-900); color: #fff; }
.fb__res div { display: flex; flex-direction: column; gap: 4px; } .fb__res span { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-300); }
.fb__res b { font-weight: 200; font-size: clamp(32px, 3.4vw, 48px); line-height: 1; color: var(--yellow); }
.fb__res p { grid-column: 1 / -1; margin: 0; font-size: 13.5px; color: var(--neutral-300); }
.fb__tool--risco { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 300px); gap: 24px; align-items: start; }
.fb__rq { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.fb__rq li { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 16px; border-radius: 16px; background: #F4F5F3; }
.fb__rq p { margin: 0; font-size: 15px; line-height: 1.45; }
.fb__sn { flex: none; display: flex; gap: 4px; }
.fb__sn label { cursor: pointer; } .fb__sn input { position: absolute; opacity: 0; pointer-events: none; }
.fb__sn span { display: block; padding: 8px 14px; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .14); font-size: 13.5px; }
.fb__sn input:checked + span { background: var(--blue-900); color: #fff; box-shadow: none; }
.fb__sn input:focus-visible + span { outline: 2px solid var(--yellow); outline-offset: 2px; }
.fb__rr { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 16px; padding: 22px; border-radius: 22px; background: var(--blue-900); color: #fff; }
.fb__gauge { position: relative; display: flex; flex-direction: column; align-items: center; }
.fb__gauge svg { width: 100%; fill: none; stroke-width: 14; stroke-linecap: round; }
.fb__gauge path { stroke: rgba(249, 250, 250, .12); } .fb__gauge .fb__gv { stroke: var(--neutral-400); stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset .8s cubic-bezier(.2, .7, .2, 1), stroke .4s; }
.is-baixo .fb__gv { stroke: #4fbf8a; } .is-medio .fb__gv { stroke: var(--yellow); } .is-alto .fb__gv { stroke: #E2665A; }
.fb__gauge svg { width: 88%; }
.fb__gauge b { margin-top: -46px; font-weight: 300; font-size: 34px; } .fb__gauge span { margin-top: 6px; font-size: 13.5px; color: var(--neutral-300); text-align: center; }
.fb__dicas { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; } .fb__dicas li { padding: 10px 12px; border-radius: 12px; background: rgba(249, 250, 250, .06); font-size: 14px; line-height: 1.45; color: var(--neutral-200); }
.fb__dicas:empty { display: none; }
.fb__rr .fb__lk { color: #fff; }
.fb__esb { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.fb__esb li { display: flex; flex-direction: column; gap: 6px; padding: 22px; border-radius: 20px; background: #F4F5F3; }
.fb__esb li:last-child { background: var(--blue-900); color: #fff; } .fb__esb b { font-weight: 400; color: #c98a12; } .fb__esb span { font-size: 20px; } .fb__esb em { font-style: normal; font-size: 14px; color: var(--neutral-600); } .fb__esb li:last-child em { color: var(--neutral-300); }
.fb__nota { margin: 0; font-size: 15px; line-height: 1.6; color: var(--neutral-600); }
@media (max-width: 1000px) { .fb__in { grid-template-columns: minmax(0, 1fr); padding: 72px 24px 88px; } .fb__nav { position: static; flex-direction: row; overflow-x: auto; scrollbar-width: none; margin: 0 -24px; padding: 0 24px; } .fb__nav li { flex: none; } .fb__nav button { width: auto; } .fb__nav em { display: none !important; } .fb__tool--risco { grid-template-columns: minmax(0, 1fr); } .fb__rr { position: static; } }
@media (max-width: 640px) { .fb__p { padding: 22px; border-radius: 24px; } .fb__campos, .fb__pq, .fb__calc, .fb__res, .fb__esb { grid-template-columns: minmax(0, 1fr); } .fb__rq li { flex-direction: column; align-items: flex-start; } .fb__pq-r { margin-left: 0; } }

/* Materiais na página de Ferramentas */
.frm2 { background: radial-gradient(40% 60% at 0% 100%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.frm2__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.frm2__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; }
.frm2__c { display: flex; flex-direction: column; gap: 18px; }
.frm2__c > span:last-child { display: flex; flex-direction: column; gap: 4px; } .frm2__c b { font-weight: 400; font-size: 16px; line-height: 1.3; color: #fff; } .frm2__c em { font-style: normal; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); }
@media (max-width: 1000px) { .frm2__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); } .frm2__in { padding: 80px 24px; } }
@media (max-width: 560px) { .frm2__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ===================================================================== v7.7 | Materiais */
.mlh { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 100% 0%, rgba(244, 182, 63, .12), transparent 70%), radial-gradient(45% 60% at 0% 100%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.mlh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 100px; display: flex; flex-direction: column; gap: 56px; }
.mlh__cab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 32px; align-items: end; }
.mlh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(56px, 8vw, 128px); line-height: .92; letter-spacing: -.045em; color: #fff; }
.mlh h1 em { font-style: italic; font-size: .42em; letter-spacing: -.02em; line-height: 1.15; color: var(--yellow); }
.mlh__cab p { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.mlh__est { margin: 0; padding: 0 0 10px; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px; perspective: 1200px; }
.mlh__est li { animation: fr-entra .8s calc(var(--d) * 110ms) both cubic-bezier(.2, .7, .2, 1); }
.mlh__est a { display: block; transition: transform .5s cubic-bezier(.2, .7, .2, 1); }
.mlh__est a:hover { transform: translateY(-10px) rotateX(6deg); }
@media (max-width: 1100px) { .mlh__cab { grid-template-columns: minmax(0, 1fr); } .mlh__in { padding: 120px 24px 72px; } .mlh__est { grid-template-columns: repeat(5, 150px); overflow-x: auto; margin: 0 -24px; padding: 10px 24px 20px; scrollbar-width: none; } }
@media (prefers-reduced-motion: reduce) { .mlh__est li { animation: none; } }
.mll { background: #F4F5F3; color: var(--neutral-900); }
.mll__in { max-width: 1286px; margin: 0 auto; padding: 72px 40px 112px; display: flex; flex-direction: column; gap: 28px; }
.mlf { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.mlf button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font: inherit; font-size: 14px; color: var(--neutral-800); cursor: pointer; }
.mlf button.is-on { background: var(--blue-900); color: #fff; box-shadow: none; }
.mlf button i { font-style: normal; font-size: 12px; opacity: .7; }
.mlf__sep { width: 1px; height: 24px; margin: 0 6px; background: rgba(34, 37, 38, .15); }
.mll__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; }
.mlc-li { scroll-margin-top: 110px; }
.mlc { display: grid; grid-template-columns: 200px minmax(0, 1fr) 260px; gap: 36px; align-items: center; padding: 32px 32px 32px 40px; border-radius: 30px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: box-shadow .3s; }
.mlc:hover { box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 50px 80px -60px rgba(1, 29, 38, .5); }
.mlc__capa { display: block; }
.mlc__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
.mlc__meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font-size: 13px; color: var(--neutral-600); }
.mlc__tipo { padding: 4px 10px; border-radius: 6px; font-size: 11.5px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; background: var(--blue-900); color: #fff; }
.mlc__tipo--checklist { background: #F4F1EA; color: var(--blue-900); box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .2); }
.mlc__tipo--teste { background: var(--yellow); color: var(--blue-900); }
.mlc__tipo--planilha { background: #12597C; } .mlc__tipo--guia { background: var(--blue-900); color: var(--yellow); }
.mlc__breve { padding: 4px 10px; border-radius: 99px; background: rgba(1, 29, 38, .06); font-size: 12px; }
.mlc h2 { margin: 2px 0 0; font-weight: 400; font-size: clamp(24px, 2.3vw, 32px); line-height: 1.12; letter-spacing: -.015em; }
.mlc__d { margin: 0; font-size: 16px; line-height: 1.55; color: var(--neutral-600); }
.mlc__rot { margin: 6px 0 0; font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.mlc__dentro { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.mlc__dentro li { display: flex; gap: 8px; align-items: center; font-size: 14.5px; color: var(--neutral-700); } .mlc__dentro svg { color: #12597C; flex: none; }
.mlc__pe { margin: 4px 0 0; display: flex; flex-wrap: wrap; gap: 6px; } .mlc__pe span { padding: 4px 10px; border-radius: 99px; background: #F4F5F3; font-size: 12.5px; color: var(--neutral-700); }
.mlc__acao { margin-top: 8px; width: 100%; }
.mlc__avise { display: flex; flex-wrap: wrap; gap: 8px; max-width: 460px; }
.mlc__avise input { flex: 1 1 200px; min-width: 0; height: 48px; padding: 0 16px; border: 0; border-radius: 14px; background: #F4F5F3; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font: inherit; font-size: 15px; }
.mlc__avise.is-erro input { box-shadow: inset 0 0 0 2px #E2665A; }
.mlc__avise button { height: 48px; padding: 0 18px; border: 0; border-radius: 14px; background: var(--blue-900); color: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.mlc__avise.is-feito input, .mlc__avise.is-feito button { display: none; }
.mlc__ok { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 15px; color: #2E9A6A; }
.mlc__par { align-self: stretch; display: flex; flex-direction: column; gap: 12px; padding: 18px; border-radius: 22px; background: #F4F5F3; transition: background-color .3s; }
.mlc__par:hover { background: #ECEEEC; }
.mlc__par-k { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.mlc__par .tf { border-radius: 12px; }
.mlc__par > b { font-weight: 500; font-size: 16px; }
.mlc__par-ir { margin-top: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--blue-900); } .mlc__par-ir svg { color: #c98a12; }
@media (max-width: 1100px) { .mlc { grid-template-columns: 160px minmax(0, 1fr); } .mlc__par { grid-column: 1 / -1; flex-direction: row; align-items: center; } .mlc__par .tf { width: 160px; flex: none; } .mll__in { padding: 56px 24px 88px; } }
@media (max-width: 640px) { .mlc { grid-template-columns: minmax(0, 1fr); padding: 24px; gap: 22px; } .mlc__capa { width: 150px; } .mlc__par { flex-direction: column; align-items: stretch; } .mlc__par .tf { width: 100%; } }

/* Guia de relançamento */
.gd2 { background: radial-gradient(50% 60% at 100% 0%, rgba(18, 89, 124, .14), transparent 70%), #F4F5F3; color: var(--neutral-900); }
.gd2__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 56px; align-items: start; }
.gd2__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; padding-top: 10px; }
.gd2__tag { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; font-size: 13px; color: var(--neutral-600); }
.gd2 h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(40px, 4.8vw, 72px); line-height: 1.02; letter-spacing: -.035em; }
.gd2 h1 em { font-style: italic; font-weight: 200; color: #12597C; }
.gd2__lead { margin: 0; max-width: 560px; font-size: 18px; line-height: 1.55; color: var(--neutral-600); }
.gd2__dentro { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.gd2__dentro li { display: flex; gap: 10px; align-items: center; font-size: 15.5px; } .gd2__dentro svg { color: #12597C; }
.gd2__lado { position: relative; padding-top: 120px; }
.gd2__capa { position: absolute; left: -60px; top: 0; width: 200px; z-index: 0; }
.gd2__card { position: relative; z-index: 1; margin-left: 60px; padding: 30px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 100px -60px rgba(1, 29, 38, .55); }
.gd2__form { display: flex; flex-direction: column; gap: 14px; }
.gd2__form-t { margin: 0; font-size: 22px; font-weight: 400; }
@media (max-width: 1100px) { .gd2__in { grid-template-columns: minmax(0, 1fr); padding: 130px 24px 72px; } .gd2__lado { padding-top: 0; } .gd2__capa { position: static; width: 150px; margin: 0 auto -40px; } .gd2__card { margin-left: 0; } }

.fo { background: radial-gradient(40% 60% at 100% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.fo__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: 56px; align-items: center; }
.fo__cab { display: flex; flex-direction: column; gap: 32px; }
.fo__nav { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.fo__nav button { width: 100%; display: flex; gap: 14px; align-items: center; padding: 14px 16px; border: 0; border-radius: 16px; background: none; font: inherit; text-align: left; color: var(--neutral-300); cursor: pointer; transition: background-color .25s, color .25s; }
.fo__nav button b { font-weight: 400; font-size: 13px; color: var(--yellow); } .fo__nav button span { font-size: 17px; }
.fo__nav button.is-on { background: rgba(249, 250, 250, .08); color: #fff; box-shadow: inset 3px 0 0 var(--yellow); }
.fo__livro { display: flex; flex-direction: column; gap: 18px; perspective: 1800px; }
.fo__folhas { position: relative; display: grid; }
.fo__fl { grid-area: 1 / 1; display: grid; grid-template-columns: 1fr 1fr; border-radius: 10px 18px 18px 10px; overflow: hidden; background: #fff; color: var(--neutral-900); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .8), 0 0 0 1px rgba(249, 250, 250, .1); visibility: hidden; opacity: 0; transform-origin: left center; }
.fo__fl.is-on { visibility: visible; opacity: 1; }
.fo__fl.is-frente { animation: fo-vira .7s cubic-bezier(.3, .7, .2, 1); } .fo__fl.is-volta { animation: fo-volta .7s cubic-bezier(.3, .7, .2, 1); }
@keyframes fo-vira { from { transform: rotateY(-24deg) translateX(30px); opacity: 0; } }
@keyframes fo-volta { from { transform: rotateY(18deg) translateX(-30px); opacity: 0; } }
.fo__esq { position: relative; display: flex; flex-direction: column; padding: 36px; background: var(--blue-900) radial-gradient(80% 60% at 100% 0%, rgba(18, 89, 124, .85), transparent 70%); color: #fff; box-shadow: inset -18px 0 24px -18px rgba(0, 0, 0, .6); }
.fo__k { margin: 0; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--yellow); }
.fo__num { font-weight: 200; font-size: clamp(110px, 12vw, 180px); line-height: 1; letter-spacing: -.05em; }
.fo__t { margin: auto 0 0; font-size: 30px; font-weight: 300; }
.fo__dir { position: relative; display: flex; flex-direction: column; gap: 16px; padding: 36px; box-shadow: inset 18px 0 24px -20px rgba(1, 29, 38, .25); }
.fo__dir h3 { margin: 0; font-weight: 400; font-size: 24px; line-height: 1.2; }
.fo__dir ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.fo__dir li { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; line-height: 1.45; }
.fo__dir li i { flex: none; display: grid; place-items: center; width: 20px; height: 20px; border-radius: 6px; box-shadow: inset 0 0 0 1.5px rgba(1, 29, 38, .25); color: transparent; }
.fo__dir li.is-ok i { background: var(--blue-900); color: var(--yellow); box-shadow: none; }
.fo__dir li:not(.is-ok) span { filter: blur(3.5px); user-select: none; }
.fo__nota { margin: auto 0 0; padding: 12px 14px; border-radius: 12px; background: #F4F1EA; font-size: 13.5px; color: var(--neutral-700); }
.fo__pg { position: absolute; bottom: 14px; right: 18px; margin: 0; font-size: 11px; color: rgba(127, 140, 145, .8); } .fo__esq .fo__pg { right: auto; left: 18px; }
.fo__ctl { display: flex; align-items: center; justify-content: center; gap: 16px; font-size: 14px; color: var(--neutral-300); }
.fo__ctl button { display: grid; place-items: center; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(249, 250, 250, .08); color: #fff; cursor: pointer; } .fo__ctl button:hover { background: var(--yellow); color: var(--blue-900); }
@media (max-width: 1000px) { .fo__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; } .fo__nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; } .fo__nav button { width: auto; white-space: nowrap; } }
@media (max-width: 640px) { .fo__fl { grid-template-columns: minmax(0, 1fr); } .fo__esq { padding: 24px; flex-direction: row; align-items: flex-end; gap: 16px; } .fo__num { font-size: 72px; } .fo__t { margin: 0; font-size: 22px; } .fo__dir { padding: 24px; } .fo__esq .fo__pg { display: none; } }
@media (prefers-reduced-motion: reduce) { .fo__fl.is-frente, .fo__fl.is-volta { animation: none; } }

.gdr2 { background: #F4F5F3; color: var(--neutral-900); }
.gdr2__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.gdr2__card { padding: 32px; border-radius: 30px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
@media (max-width: 640px) { .gdr2__in { padding: 80px 24px; } .gdr2__card { padding: 20px; } }
.gdf { background: radial-gradient(45% 60% at 0% 100%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.gdf__in { max-width: 1100px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 64px; align-items: center; }
.gdf__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.gdf h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 4.4vw, 64px); line-height: 1.02; letter-spacing: -.035em; color: #fff; } .gdf h2 em { font-style: italic; color: var(--yellow); }
.gdf__tx p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
@media (max-width: 760px) { .gdf__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; gap: 32px; } .gdf__capa { width: 150px; } }

/* Download do material */
.omx { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 30% 40%, rgba(244, 182, 63, .14), transparent 70%), radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.omx__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 100px; display: flex; flex-direction: column; gap: 40px; }
.omx__grade { display: grid; grid-template-columns: minmax(0, 460px) minmax(0, 1fr); gap: 72px; align-items: center; }
.omx__palco { position: relative; display: grid; place-items: center; padding: 30px 60px 50px; }
.omx__luz { position: absolute; inset: 10% 5%; border-radius: 50%; background: radial-gradient(closest-side, rgba(244, 182, 63, .35), transparent); filter: blur(10px); animation: omx-luz 4s ease-in-out infinite alternate; }
@keyframes omx-luz { to { opacity: .55; scale: .9; } }
.omx__cv { position: relative; display: block; width: 100%; max-width: 300px; animation: omx-chega 1.1s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes omx-chega { from { opacity: 0; transform: translateY(60px) rotate(-14deg) scale(.85); } }
.omx.is-baixado .omx__cv { animation: omx-sai .9s cubic-bezier(.5, 0, .3, 1) both; }
@keyframes omx-sai { 40% { transform: translateY(-14px); } to { transform: translateY(0); } }
.omx__selo { position: absolute; bottom: 0; left: 50%; translate: -50% 0; margin: 0; display: flex; align-items: center; gap: 8px; padding: 8px 16px; border-radius: 99px; background: rgba(249, 250, 250, .1); font-size: 13px; color: #fff; white-space: nowrap; }
.omx__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.omx__k { margin: 0; display: flex; gap: 8px; } .omx__k span { padding: 4px 10px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-size: 12.5px; color: var(--neutral-200); }
.omx h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 4.6vw, 68px); line-height: 1.03; letter-spacing: -.035em; color: #fff; }
.omx h1 em { font-style: italic; color: var(--yellow); }
.omx__lead { margin: 0; font-size: 18px; color: var(--neutral-300); }
.omx__dl { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.omx__comp { display: inline-flex; align-items: center; gap: 8px; padding: 0; border: 0; background: none; font: inherit; font-size: 15px; color: #fff; text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 5px; cursor: pointer; }
.omx__status { margin: 0; font-size: 14px; color: #4fbf8a; } .omx__status:empty { display: none; }
.omx__dica { display: flex; flex-direction: column; gap: 4px; max-width: 560px; padding: 16px 18px; border-radius: 16px; background: rgba(249, 250, 250, .05); box-shadow: inset 3px 0 0 var(--yellow); }
.omx__dica b { font-weight: 500; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); } .omx__dica span { font-size: 15px; line-height: 1.5; color: var(--neutral-200); }
.omx__par { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 18px; align-items: center; width: 100%; max-width: 620px; padding: 14px; border-radius: 22px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); transition: background-color .3s; }
.omx__par:hover { background: rgba(249, 250, 250, .1); }
.omx__par .tf { border-radius: 12px; }
.omx__par > span { display: flex; flex-direction: column; gap: 4px; } .omx__par-k { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); } .omx__par > span > b { font-weight: 400; font-size: 19px; color: #fff; } .omx__par > span > em { font-style: normal; font-size: 14px; line-height: 1.45; color: var(--neutral-300); }
@media (max-width: 1000px) { .omx__grade { grid-template-columns: minmax(0, 1fr); gap: 24px; } .omx__in { padding: 120px 24px 72px; } .omx__palco { padding: 10px 0 50px; } .omx__cv { max-width: 200px; } }
@media (max-width: 560px) { .omx__par { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .omx__cv, .omx__luz { animation: none; } }
.omn { background: #F4F5F3; color: var(--neutral-900); }
.omn__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.omn__trilha { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.omn__trilha a { height: 100%; display: flex; flex-direction: column; gap: 10px; padding: 26px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: translate .3s; }
.omn__trilha a:hover { translate: 0 -4px; }
.omn__trilha a > b { font-weight: 400; font-size: 13px; color: #c98a12; }
.omn__k { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); } .omn__t { font-size: 20px; line-height: 1.25; }
.omn__ir { margin-top: auto; display: inline-flex; gap: 6px; align-items: center; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; } .omn__ir svg { color: #c98a12; }
.omn__esc { background: var(--blue-900) !important; color: #fff; } .omn__esc .omn__k { color: var(--neutral-300); }
.omn__rot { margin: 0 0 16px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.omn__outros ul { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; }
.omn__outros a { display: flex; flex-direction: column; gap: 14px; font-size: 15px; line-height: 1.3; } .omn__outros li[hidden] { display: none; }
@media (max-width: 1000px) { .omn__trilha { grid-template-columns: minmax(0, 1fr); } .omn__outros ul { grid-template-columns: repeat(4, minmax(0, 1fr)); } .omn__in { padding: 80px 24px; } }
@media (max-width: 560px) { .omn__outros ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mlc__ok[hidden] { display: none; }
.omx__cv[hidden], .omx__par[hidden] { display: none; }
.gd2__capa { left: -20px; }

/* ===================================================================== v7.7 | Conteúdos (hub) */
.cnx { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .75), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.cnx__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 80px; display: flex; flex-direction: column; gap: 36px; }
.cnx__cab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 32px; align-items: end; }
.cnx h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(56px, 8vw, 128px); line-height: .92; letter-spacing: -.045em; color: #fff; }
.cnx h1 em { font-style: italic; font-size: .42em; letter-spacing: -.02em; line-height: 1.15; color: var(--yellow); }
.cnx__cab p { margin: 0; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.cnx__busca { display: flex; align-items: center; gap: 10px; padding: 8px 8px 8px 20px; border-radius: 20px; background: #fff; box-shadow: 0 40px 70px -40px rgba(0, 0, 0, .7); }
.cnx__busca:focus-within { box-shadow: 0 0 0 3px var(--yellow), 0 40px 70px -40px rgba(0, 0, 0, .7); }
.cnx__lupa { color: var(--neutral-500); display: grid; }
.cnx__busca input { flex: 1; min-width: 0; height: 52px; border: 0; outline: 0; background: none; font: inherit; font-size: 18px; color: var(--neutral-900); }
.cnx__tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.cnx__tabs button, .cnb__f button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 99px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font: inherit; font-size: 14px; color: var(--neutral-200); cursor: pointer; }
.cnx__tabs button.is-on, .cnb__f button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.cnx__tabs i { font-style: normal; font-size: 12px; opacity: .7; }
@media (max-width: 1100px) { .cnx__cab { grid-template-columns: minmax(0, 1fr); } .cnx__in { padding: 120px 24px 64px; } }
@media (max-width: 640px) { .cnx__busca { flex-wrap: wrap; padding: 8px; } .cnx__busca input { flex-basis: 70%; height: 46px; font-size: 16px; } .cnx__busca .btn { flex: 1 1 100%; justify-content: center; } .cnx__lupa { padding-left: 8px; } }

.cnf { background: #F4F5F3; color: var(--neutral-900); }
.cnf__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 44px; }
.cnf__grade { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
.cnf__col { display: flex; flex-direction: column; gap: 12px; }
.cnf__k { margin: 0 0 4px; display: flex; align-items: center; gap: 10px; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-600); }
.cnf__col ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.cnt2 { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 22px; align-items: center; padding: 14px; border-radius: 24px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: translate .3s, box-shadow .3s; }
.cnt2:hover { translate: 0 -3px; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 70px -50px rgba(1, 29, 38, .5); }
.cnt2 .tf { border-radius: 14px; }
.cnt2 > span { display: flex; flex-direction: column; gap: 6px; } .cnt2 > span > b { font-weight: 400; font-size: 21px; } .cnt2 > span > em { font-style: normal; font-size: 14px; line-height: 1.5; color: var(--neutral-600); }
.cnt2__ir { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--blue-900); } .cnt2__ir svg { color: #c98a12; }
.cnf__dest { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 22px; align-items: center; padding: 14px; border-radius: 24px; background: var(--blue-900); color: #fff; }
.cnf__dest .ta { border-radius: 14px; }
.cnf__dest > span { display: flex; flex-direction: column; gap: 6px; } .cnf__dk { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); } .cnf__dest b { font-weight: 400; font-size: 17px; line-height: 1.35; } .cnf__dest .cnt2__ir { color: #fff; }
@media (max-width: 1000px) { .cnf__grade { grid-template-columns: minmax(0, 1fr); } .cnf__in { padding: 80px 24px; } }
@media (max-width: 560px) { .cnt2, .cnf__dest { grid-template-columns: minmax(0, 1fr); } }

.cnb { background: radial-gradient(40% 50% at 100% 0%, rgba(18, 89, 124, .55), transparent 70%), var(--blue-900); color: var(--neutral-100); scroll-margin-top: 70px; }
.cnb__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 32px; scroll-margin-top: 70px; }
.cnb__cab { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.cnb__f { display: flex; flex-wrap: wrap; gap: 8px; }
.cnb__res { margin: 0; font-size: 15px; color: var(--yellow); } .cnb__res:empty { display: none; }
.cnb__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.cnc-li[hidden] { display: none; }
.cnc { height: 100%; display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); transition: translate .3s, background-color .3s; }
a.cnc:hover { translate: 0 -4px; background: rgba(249, 250, 250, .09); }
.cnc--breve { opacity: .72; }
.cnc__th { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; }
.cnc__th > .ta, .cnc__th > .tf { position: absolute; inset: 0; height: 100%; border-radius: 0; }
.cnc__cvbox { position: absolute; inset: 0; display: grid; place-items: center; padding: 16px 0; background: radial-gradient(60% 70% at 50% 40%, rgba(244, 182, 63, .16), transparent 70%), #0B2A35; }
.cnc__cvbox .cv { width: 34%; }
.cnc__img { position: absolute; inset: 0; display: block; background: #0B2A35; }
.cnc__img img { width: 100%; height: 100%; object-fit: cover; object-position: top; opacity: .9; }
.cnc__img b { position: absolute; left: 14px; bottom: 12px; padding: 4px 12px; border-radius: 10px; background: var(--yellow); color: var(--blue-900); font-weight: 500; font-size: 20px; }
.cnc__img--sem { background: radial-gradient(60% 70% at 30% 30%, rgba(18, 89, 124, .9), transparent 70%), #0B2A35; }
.cnc__tx { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; flex: 1; }
.cnc__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; font-size: 12.5px; color: var(--neutral-300); }
.cnc__tipo { padding: 3px 9px; border-radius: 6px; font-size: 11px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; }
.cnc__tipo--artigo { background: rgba(249, 250, 250, .14); color: #fff; } .cnc__tipo--material { background: #F4F1EA; color: var(--blue-900); } .cnc__tipo--ferramenta { background: var(--yellow); color: var(--blue-900); } .cnc__tipo--case { background: #12597C; color: #fff; }
.cnc__breve { padding: 3px 9px; border-radius: 99px; background: rgba(249, 250, 250, .08); }
.cnc__tx b { font-weight: 400; font-size: 18px; line-height: 1.3; color: #fff; }
.cnc__d { font-size: 14px; line-height: 1.5; color: var(--neutral-300); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.cnc__pe { margin-top: auto; font-size: 12.5px; letter-spacing: .04em; color: var(--neutral-400); }
.cnb__vazio { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 48px; border-radius: 24px; background: rgba(249, 250, 250, .05); text-align: center; } .cnb__vazio[hidden] { display: none; }
.cnb__vazio p { margin: 0; font-size: 18px; }
.cnb__mais { align-self: center; padding: 14px 28px; border: 0; border-radius: 99px; background: rgba(249, 250, 250, .08); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); font: inherit; font-size: 14px; letter-spacing: .06em; text-transform: uppercase; color: #fff; cursor: pointer; } .cnb__mais[hidden] { display: none; }
.cnb__mais:hover { background: var(--yellow); color: var(--blue-900); }
@media (max-width: 1000px) { .cnb__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cnb__in { padding: 80px 24px; } }
@media (max-width: 600px) { .cnb__grade { grid-template-columns: minmax(0, 1fr); } }
/* Thumbs de artigo nos cards do blog e do post */
.bcap-v { position: relative; aspect-ratio: 16 / 9; overflow: hidden; }
.bcap-v > .ta { position: absolute; inset: 0; height: 100%; aspect-ratio: auto; }
.bcap-v--g { aspect-ratio: auto; height: 100%; min-height: 300px; }
.pt__rm-cv { width: 100%; }
.cnc__cvbox .cv { width: 40%; }
@media (max-width: 640px) { .dxv--notas ul { grid-template-columns: repeat(2, 1fr); } }

/* ===================================================================== v7.8 | Capítulos em fundo claro (Trabalhe com a gente) */
.mt--claro { background: #F4F5F3; color: var(--neutral-900); }
.mt--claro .mt__stage::before { background: radial-gradient(50% 60% at 15% 70%, rgba(18, 89, 124, .1), transparent 70%), radial-gradient(35% 45% at 95% 10%, rgba(244, 182, 63, .16), transparent 70%); }
.mt--claro .mt__cab h2 { color: var(--neutral-900); }
.mt--claro .chip { color: var(--neutral-700); border-color: rgba(34, 37, 38, .2); }
.mt--claro .mtp__o { -webkit-text-stroke: 1px rgba(1, 29, 38, .22); }
.mt--claro .mtp__f { color: var(--blue-900); }
.mt--claro .mtp__n { color: #c98a12; }
.mt--claro .mtp__txt h3 { color: var(--neutral-900); }
.mt--claro .mtp__txt p:last-child { color: var(--neutral-600); }
.mt--claro .mt__pe { border-top-color: rgba(34, 37, 38, .12); }
.mt--claro .mt__manifesto { color: var(--neutral-600); } .mt--claro .mt__manifesto b { color: #12597C; }
.mt--claro .pxl li { border-top-color: rgba(34, 37, 38, .12); }
.mt--claro .pxl li::before { background: var(--blue-900); }
.mt--claro .pxl button { color: var(--neutral-500); }
.mt--claro .pxl li.is-ativo button, .mt--claro .pxl button:hover { color: var(--neutral-900); }
.mt--claro .pxl li.is-ativo b { color: #c98a12; }
.mt--claro .tv { color: var(--neutral-900); }
.mt--claro .tv--ent li { background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.mt--claro .tv--ent li i { background: var(--blue-900); color: var(--yellow); }
.mt--claro .tv--ent .tv__ok { background: var(--blue-900); color: #fff; }
.mt--claro .tv__viga { border-bottom-color: var(--blue-900); }
.mt--claro .tv__viga span { background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); }
.mt--claro .tv__viga span:last-child { background: var(--yellow); color: var(--blue-900); }
.mt--claro .tv__base { border-bottom-color: rgba(1, 29, 38, .3); }
.mt--claro .tv--bal li { background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); }
.mt--claro .tv__lin span { color: var(--neutral-700); }
.mt--claro .tv__lin i { background: linear-gradient(90deg, rgba(244, 182, 63, .35), var(--yellow)); }
.mt--claro .tv__lin + .tv__lin i { background: linear-gradient(90deg, rgba(1, 29, 38, .15), var(--blue-900)); }
.mt--claro .tv__eixo { color: var(--neutral-500); }
.mt--claro .tv--deg i { background: rgba(1, 29, 38, .1); box-shadow: none; }
.mt--claro .tv--deg li:last-child i { background: var(--blue-900); }
.mt--claro .tv--deg span { color: var(--neutral-600); } .mt--claro .tv--deg li:last-child span { color: var(--blue-900); font-weight: 500; }
/* Vagas em fundo escuro, entre os capítulos claros e a candidatura clara */
.tvs--esc { background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.tvs--esc h2 { color: #fff; } .tvs--esc h2 .is-dim { color: var(--neutral-400); }
.tvs--esc .chip--claro { border-inline-color: rgba(249, 250, 250, .25); color: var(--neutral-200); }
.tvs--esc .is-cab__lead { color: var(--neutral-300); }
.tvs--esc .tvs__filtro button { background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); color: var(--neutral-200); }
.tvs--esc .tvs__filtro button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.tvs--esc .tvg { box-shadow: none; }
.tvs--esc .tvs__proc { background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.tvs--esc .tvg { color: var(--neutral-900); }

/* v7.8 | Thumb de artigo: constelação única por post */
.ta__cons { position: absolute; inset: 0; width: 100%; height: 100%; }
.ta__pts circle { fill: currentColor; opacity: .12; }
.ta__cam { fill: none; stroke: var(--c, var(--yellow)); stroke-width: .5; stroke-dasharray: 1; stroke-dashoffset: 0; opacity: .4; }
.ta__no { fill: var(--c, var(--yellow)); opacity: .7; }
.ta--sh { --c: var(--yellow); } .ta--ib { --c: var(--blue-900); }
a:hover .ta__cam { animation: ta-traco 1.4s ease; }
.ta__k, .ta__cod, .ta__w, .ta__d { z-index: 1; }

/* ===================================================================== v7.8 | Post do blog */
.px2bar { position: fixed; left: 0; right: 0; top: 0; z-index: 60; display: flex; align-items: center; gap: 14px; height: 42px; padding: 0 max(24px, calc((100% - 1286px) / 2 + 40px)); background: rgba(1, 29, 38, .94); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: #fff; font-size: 13.5px; translate: 0 -100%; transition: translate .35s cubic-bezier(.2, .7, .2, 1); }
.px2bar.is-on { translate: 0 0; }
.px2bar i { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--yellow); transform: scaleX(0); transform-origin: left; }
.px2bar span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.topo:not(.is-oculto) ~ main .px2bar.is-on { translate: 0 -100%; }
.pxh { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .75), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.pxh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 88px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: 56px; align-items: center; }
.pxh__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.pxh__meta { margin: 0; display: flex; flex-wrap: wrap; gap: 8px 16px; font-size: 13px; color: var(--neutral-300); }
.pxh h1 { margin: 0; font-weight: 300; font-size: clamp(34px, 3.9vw, 58px); line-height: 1.06; letter-spacing: -.03em; color: #fff; }
.pxh__autor { display: flex; align-items: center; gap: 12px; } .pxh__autor img { border-radius: 50%; object-fit: cover; }
.pxh__autor p { margin: 0; display: flex; flex-direction: column; font-size: 14px; } .pxh__autor b { font-weight: 500; color: #fff; } .pxh__autor span { color: var(--neutral-300); font-size: 13px; }
.pxs { padding: 22px; border-radius: 28px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.pxs__topo { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-300); }
.pxs__topo i { width: 8px; height: 8px; border-radius: 50%; background: #4fbf8a; box-shadow: 0 0 0 4px rgba(79, 191, 138, .2); }
.pxs__bins { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pxs__bin { min-height: 300px; padding: 14px; border-radius: 20px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.pxs__bin b { display: flex; align-items: center; gap: 8px; font-weight: 400; font-size: 14px; color: #fff; } .pxs__bin svg { color: var(--yellow); }
.pxs__bin--gente { background: rgba(244, 182, 63, .08); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .35); }
.pxs { position: relative; }
.pxs__chips { position: absolute; left: 22px; right: 22px; top: 96px; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; grid-auto-flow: dense; gap: 10px 10px; pointer-events: none; }
.pxs__c { padding: 12px 14px; border-radius: 14px; font-size: 14px; animation: pxs-cai 7s calc(var(--d) * .5s) both infinite; }
.pxs__c--ia { grid-column: 1; margin: 0 14px; background: rgba(249, 250, 250, .12); color: #fff; --x: 50%; }
.pxs__c--gente { grid-column: 2; margin: 0 14px; background: var(--yellow); color: var(--blue-900); --x: -50%; }
@keyframes pxs-cai { 0% { opacity: 0; transform: translateY(-24px) scale(.94); } 10%, 88% { opacity: 1; transform: translateY(0) scale(1); } 100% { opacity: 0; transform: translateY(4px); } }
@media (prefers-reduced-motion: reduce) { .pxs__c { animation: none; } }
@media (max-width: 1000px) { .pxh__in { grid-template-columns: minmax(0, 1fr); padding: 120px 24px 64px; } .pxs__bin { min-height: 260px; } }
@media (max-width: 480px) { .pxs__c { margin: 0 4px; font-size: 13px; padding: 10px; } .pxs__chips { left: 14px; right: 14px; } .pxs { padding: 14px; } }

.pxr30 { background: #F4F5F3; color: var(--neutral-900); }
.pxr30__in { max-width: 1286px; margin: 0 auto; padding: 72px 40px; display: flex; flex-direction: column; gap: 24px; }
.pxr30__k { margin: 0; display: flex; align-items: center; gap: 8px; font-weight: 400; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.pxr30__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.pxr30__lista li { display: flex; flex-direction: column; gap: 8px; padding: 24px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.pxr30__lista li:nth-child(2) { background: var(--blue-900); color: #fff; } .pxr30__lista li:nth-child(2) p { color: var(--neutral-300); }
.pxr30__lista li:nth-child(3) { background: var(--yellow); }
.pxr30__lista b { font-weight: 400; font-size: 22px; } .pxr30__lista p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-700); }
.pxr30__nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; } .pxr30__nav p { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.pxr30__nav ol { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.pxr30__nav a { display: inline-flex; gap: 8px; padding: 8px 14px; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font-size: 13.5px; } .pxr30__nav a b { font-weight: 400; color: #c98a12; }
.pxr30__nav a:hover { box-shadow: inset 0 0 0 1px var(--blue-900); }
@media (max-width: 900px) { .pxr30__lista { grid-template-columns: minmax(0, 1fr); } .pxr30__in { padding: 56px 24px; } }

.px2 { background: #fff; color: var(--neutral-900); }
.px2__art { max-width: 760px; margin: 0 auto; padding: 40px 24px 96px; font-size: 18px; line-height: 1.75; color: #2b3134; }
.px2__art p { margin: 0 0 18px; }
.px2__art ul, .px2__art > section > ol:not([class]) { margin: 0 0 22px; padding-left: 22px; } .px2__art li { margin-bottom: 10px; } .px2__art li::marker { color: #a8720a; }
.px2__art a:not(.btn):not(.ih__lk) { color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.px2__art strong { font-weight: 600; color: var(--neutral-900); }
.px2__art h3 { margin: 32px 0 8px; font-weight: 500; font-size: 20px; line-height: 1.3; color: var(--neutral-900); }
.px2c { padding-top: 56px; scroll-margin-top: 60px; }
.px2c__cab { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 22px; align-items: end; margin-bottom: 26px; padding-bottom: 20px; border-bottom: 1px solid rgba(34, 37, 38, .1); }
.px2c__cab b { font-weight: 200; font-size: clamp(64px, 8vw, 104px); line-height: .8; letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1.2px #c98a12; }
.px2c__cab h2 { margin: 0; font-weight: 400; font-size: clamp(26px, 2.6vw, 34px); line-height: 1.15; letter-spacing: -.02em; color: var(--neutral-900); }
.qf__k { margin: 0; display: inline-flex; align-items: center; gap: 8px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.qf, .cr5, .lv { margin: 32px -40px; padding: 32px 40px; border-radius: 28px; background: #F4F5F3; font-size: 16px; line-height: 1.5; }
.qf__cab, .cr5__cab { display: flex; flex-direction: column; gap: 8px; margin-bottom: 20px; }
.qf h3, .cr5 h3 { margin: 0 !important; font-weight: 400 !important; font-size: 24px !important; line-height: 1.2 !important; }
.qf__placar { margin: 0 !important; font-size: 14px; color: var(--neutral-600); }
.qf__lista, .cr5__lista { margin: 0 !important; padding: 0 !important; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.qf__lista li, .cr5__lista li { margin: 0 !important; padding: 14px 16px; border-radius: 16px; background: #fff; }
.qf__lista li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 16px; align-items: center; }
.qf__t { margin: 0 !important; font-size: 16px; }
.qf__bt { display: flex; gap: 6px; }
.qf__bt button { padding: 8px 12px; border: 0; border-radius: 99px; background: #F4F5F3; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); font: inherit; font-size: 13px; cursor: pointer; white-space: nowrap; }
.qf__bt button:hover { box-shadow: inset 0 0 0 1px var(--blue-900); }
.qf__lista li[data-ok] button { pointer-events: none; opacity: .45; }
.qf__lista li[data-ok] button.is-certo { opacity: 1; background: var(--blue-900); color: #fff; box-shadow: none; }
.qf__lista li[data-ok="0"] button.is-esc:not(.is-certo) { opacity: 1; background: #FBE9E7; color: #A8473C; box-shadow: none; text-decoration: line-through; }
.qf__ex { grid-column: 1 / -1; margin: 0 !important; font-size: 14.5px; color: var(--neutral-600); } .qf__ex b { color: var(--neutral-900); }
li[data-ok="1"] .qf__ex b { color: #2E9A6A; }
.cr5__tarefa { width: 100%; height: 50px; padding: 0 16px; border: 0; border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); font: inherit; font-size: 16px; }
.cr5__lista li { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.cr5__lista span { display: flex; flex-direction: column; } .cr5__lista b { font-weight: 500; font-size: 16px; } .cr5__lista em { font-style: normal; font-size: 14px; color: var(--neutral-600); }
.cr5__res { margin-top: 16px; padding: 22px; border-radius: 20px; background: var(--blue-900); color: #fff; }
.cr5.is-bom .cr5__res { box-shadow: inset 0 0 0 2px var(--yellow); }
.cr5__v { margin: 0 0 6px !important; font-size: 21px; } .cr5__d { margin: 0 0 16px !important; font-size: 15px; color: var(--neutral-300); }
.cr5__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; } .cr5__ctas .ih__lk { color: #fff; }
.rk { display: grid; grid-template-columns: 1fr 1fr; margin: 18px 0; border-radius: 22px; overflow: hidden; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); font-size: 16px; line-height: 1.55; }
.rk__a { padding: 22px; background: #fff; } .rk__b { padding: 22px; background: var(--blue-900); color: var(--neutral-200); }
.rk h3 { margin: 4px 0 8px !important; font-size: 19px !important; } .rk p { margin: 0 0 8px !important; } .rk p:last-child { margin: 0 !important; }
.rk__k { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: #D0574B; } .rk__b .rk__k { color: var(--yellow); }
@media (max-width: 640px) { .rk { grid-template-columns: minmax(0, 1fr); } }
.tp3 { margin: 18px 0 !important; padding: 0 !important; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; font-size: 15px; line-height: 1.55; }
.tp3 li { margin: 0 !important; padding: 20px; border-radius: 20px; background: #F4F5F3; } .tp3 li:last-child { background: var(--blue-900); color: var(--neutral-200); } .tp3 li:last-child h3 { color: #fff; }
.tp3 b { font-weight: 300; font-size: 28px; color: #c98a12; } .tp3 h3 { margin: 6px 0 8px !important; font-size: 17px !important; } .tp3 p { margin: 0 !important; }
@media (max-width: 760px) { .tp3 { grid-template-columns: minmax(0, 1fr); } }
.lv { background: var(--blue-900); color: #fff; }
.lv__cab { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 14px; } .lv .qf__k { color: var(--yellow); }
.lv__copiar { padding: 10px 16px; border: 0; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font: inherit; font-size: 13.5px; cursor: pointer; }
.lv__lista { margin: 0 !important; padding-left: 22px !important; } .lv__lista li { color: var(--neutral-200); } .lv__lista strong { color: #fff; } .lv__lista li::marker { color: var(--yellow); }
@media (max-width: 860px) { .qf, .cr5, .lv { margin: 28px 0; padding: 24px 20px; } .qf__lista li { grid-template-columns: minmax(0, 1fr); } .cr5__lista li { flex-direction: column; align-items: flex-start; } }
.pxc { display: grid; grid-template-columns: minmax(0, 1fr) 200px; gap: 24px; align-items: center; margin: 40px -40px; padding: 30px 32px 30px 40px; border-radius: 28px; background: var(--yellow); color: var(--blue-900); font-size: 16px; line-height: 1.55; }
.pxc__k { margin: 0 0 6px !important; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; } .pxc__t { margin: 0 0 8px !important; font-size: 24px; line-height: 1.2; } .pxc p { margin: 0 0 14px; }
.pxc__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.pxc__alba { padding: 0; border: 0; background: none; font: inherit; font-size: 14.5px; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; color: var(--blue-900); }
.pxc__vis .tf { border-radius: 14px; box-shadow: 0 30px 50px -30px rgba(1, 29, 38, .6); }
@media (max-width: 860px) { .pxc { grid-template-columns: minmax(0, 1fr); margin: 32px 0; padding: 24px; } .pxc__vis { display: none; } }
.pxq { margin: 0 !important; padding: 0 !important; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.pxq li { margin: 0 !important; padding: 20px 22px; border-radius: 20px; background: #F4F5F3; font-size: 16px; } .pxq h3 { margin: 0 0 6px !important; font-size: 18px !important; } .pxq p { margin: 0 !important; color: var(--neutral-700); }
.pxq__alba { margin-top: 14px !important; font-size: 15px; } .pxq__alba button { padding: 0; border: 0; background: none; font: inherit; color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; cursor: pointer; }
.pxa { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 18px; align-items: center; margin-top: 56px; padding: 24px; border-radius: 24px; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); font-size: 15px; line-height: 1.55; }
.pxa img { border-radius: 50%; object-fit: cover; } .pxa p { margin: 0; color: var(--neutral-600); } .pxa b { font-weight: 500; font-size: 18px; } .pxa__k { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; }
.pxa__cp { grid-column: 1 / -1; justify-self: start; padding: 10px 16px; border: 0; border-radius: 99px; background: #F4F5F3; font: inherit; font-size: 14px; cursor: pointer; }
.pxf { background: radial-gradient(45% 60% at 100% 100%, rgba(244, 182, 63, .14), transparent 70%), radial-gradient(45% 60% at 0% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.pxf__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 56px; align-items: center; }
.pxf h2 { margin: 0 0 18px; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 4.2vw, 62px); line-height: 1.03; letter-spacing: -.035em; color: #fff; } .pxf h2 em { font-style: italic; color: var(--yellow); }
.pxf__tx p { margin: 0; max-width: 480px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.pxf__ops { display: flex; flex-direction: column; gap: 10px; }
.pxf__op { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 20px 22px; border-radius: 18px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font-size: 18px; color: #fff; transition: background-color .25s, translate .25s; }
.pxf__op:hover { background: var(--yellow); color: var(--blue-900); translate: 6px 0; } .pxf__op svg { color: var(--yellow); } .pxf__op:hover svg { color: var(--blue-900); }
.pxf__alba { display: flex; align-items: center; gap: 10px; padding: 14px 4px 0; border: 0; background: none; font: inherit; font-size: 15px; color: var(--neutral-200); text-decoration: underline; text-underline-offset: 4px; cursor: pointer; text-align: left; } .pxf__alba svg { color: var(--yellow); flex: none; }
@media (max-width: 1000px) { .pxf__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; } }
.pxn { background: #F4F5F3; color: var(--neutral-900); }
.pxn__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px 112px; display: flex; flex-direction: column; gap: 36px; }
.pxn__cab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: 32px; align-items: end; }
.pxn h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.4vw, 50px); line-height: 1.05; letter-spacing: -.03em; } .pxn h2 .is-dim { color: var(--neutral-400); }
.pxn__news p { margin: 0 0 10px; font-size: 15px; color: var(--neutral-600); }
.nws { display: flex; flex-wrap: wrap; gap: 8px; }
.nws input { flex: 1 1 220px; min-width: 0; height: 50px; padding: 0 16px; border: 0; border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .12); font: inherit; font-size: 15px; }
.nws.is-erro input { box-shadow: inset 0 0 0 2px #E2665A; }
.nws button { height: 50px; padding: 0 18px; border: 0; border-radius: 14px; background: var(--blue-900); color: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.nws.is-feito input, .nws.is-feito button { display: none; }
.pxn__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.pxr { height: 100%; display: flex; flex-direction: column; border-radius: 22px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.pxr__th { position: relative; display: block; aspect-ratio: 16 / 9; } .pxr__th .ta { position: absolute; inset: 0; height: 100%; }
.pxr__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 18px 20px 22px; } .pxr__tx b { font-weight: 400; font-size: 17px; line-height: 1.35; }
.pxn .cnc__breve { background: #F4F5F3; font-size: 12px; padding: 3px 9px; border-radius: 99px; }
@media (max-width: 1000px) { .pxn__cab { grid-template-columns: minmax(0, 1fr); } .pxn__lista { grid-template-columns: minmax(0, 1fr); } .pxn__in { padding: 72px 24px 88px; } }

/* ===================================================================== v7.8 | Blog (feed) */
.blx { position: relative; overflow: hidden; background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .75), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.blx__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 80px; display: flex; flex-direction: column; gap: 48px; }
.blx__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: 48px; align-items: end; }
.blx__tx { display: flex; flex-direction: column; gap: 22px; }
.blx h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(56px, 8vw, 128px); line-height: .92; letter-spacing: -.045em; color: #fff; }
.blx h1 em { font-style: italic; font-size: .42em; letter-spacing: -.02em; line-height: 1.15; color: var(--yellow); }
.blx__tx p { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.blx__dest { display: flex; flex-direction: column; border-radius: 28px; overflow: hidden; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 50px 80px -50px rgba(0, 0, 0, .8); transition: translate .3s; }
.blx__dest:hover { translate: 0 -4px; }
.blx__th { position: relative; display: block; aspect-ratio: 16 / 8; } .blx__th .ta { position: absolute; inset: 0; height: 100%; }
.blx__dtx { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 22px 24px 24px; }
.blx__novo { padding: 3px 10px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; }
.blx__dtx b { font-weight: 400; font-size: 21px; line-height: 1.3; color: #fff; }
.blc__pe { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; font-size: 13px; color: var(--neutral-400); }
.blc__ir { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--yellow); }
.blm__k { margin: 0 0 14px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.blm__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.blm__lista li { animation: fr-entra .7s calc(var(--d) * 90ms) both cubic-bezier(.2, .7, .2, 1); }
.blm__lista button { width: 100%; height: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 20px; border: 0; border-radius: 22px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); font: inherit; text-align: left; color: #fff; cursor: pointer; transition: background-color .25s, translate .25s, box-shadow .25s; }
.blm__lista button:hover { translate: 0 -3px; background: rgba(249, 250, 250, .09); }
.blm__lista button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.blm__ic { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: rgba(244, 182, 63, .14); color: var(--yellow); }
.blm__lista button.is-on .blm__ic { background: var(--blue-900); }
.blm__lista b { font-weight: 400; font-size: 18px; line-height: 1.25; } .blm__lista em { font-style: normal; font-size: 14px; line-height: 1.45; color: var(--neutral-300); }
.blm__lista button.is-on em { color: rgba(1, 29, 38, .75); }
.blm__n { margin-top: auto; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); } .blm__lista button.is-on .blm__n { color: var(--blue-900); }
@media (max-width: 1100px) { .blx__grade { grid-template-columns: minmax(0, 1fr); } .blm__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); } .blx__in { padding: 120px 24px 64px; } }
@media (prefers-reduced-motion: reduce) { .blm__lista li { animation: none; } }
.blf { background: #F4F5F3; color: var(--neutral-900); scroll-margin-top: 70px; }
.blf__in { max-width: 1286px; margin: 0 auto; padding: 72px 40px 112px; display: flex; flex-direction: column; gap: 22px; scroll-margin-top: 80px; }
.blf__barra { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.blf__f { display: flex; flex-wrap: wrap; gap: 8px; }
.blf__f button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .1); font: inherit; font-size: 14px; cursor: pointer; }
.blf__f button.is-on { background: var(--blue-900); color: #fff; box-shadow: none; }
.blf__res { margin: 0; display: flex; align-items: center; gap: 14px; font-size: 15px; color: var(--neutral-600); }
.blf__res button { padding: 0; border: 0; background: none; font: inherit; font-size: 14px; color: var(--blue-900); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.blf__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.blc-li[hidden] { display: none; }
.blc { height: 100%; display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: translate .3s, box-shadow .3s; }
.blc:hover { translate: 0 -4px; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 50px 80px -60px rgba(1, 29, 38, .5); }
.blc__th { position: relative; display: block; aspect-ratio: 16 / 9; } .blc__th .ta { position: absolute; inset: 0; height: 100%; }
.blc__tx { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; flex: 1; }
.blc .cnc__meta { color: var(--neutral-600); }
.blc b { font-weight: 400; font-size: 18px; line-height: 1.3; }
.blc__d { font-size: 14px; line-height: 1.5; color: var(--neutral-600); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.blc .blc__pe { margin-top: auto; color: var(--neutral-500); } .blc .blc__ir { color: var(--blue-900); }
.blc .cnc__breve { background: #F4F5F3; color: var(--neutral-600); padding: 3px 9px; border-radius: 99px; font-size: 12px; }
.blf__vazio { background: #fff; } .blf__vazio p { color: var(--neutral-700); }
@media (max-width: 1000px) { .blf__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); } .blf__in { padding: 56px 24px 88px; } }
@media (max-width: 600px) { .blf__grade { grid-template-columns: minmax(0, 1fr); } .blm__lista { grid-template-columns: minmax(0, 1fr); } }
.bln { background: radial-gradient(45% 60% at 0% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.bln__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 500px); gap: 48px; align-items: center; }
.bln h2 { margin: 0 0 14px; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(34px, 3.8vw, 56px); line-height: 1.04; letter-spacing: -.03em; color: #fff; } .bln h2 em { font-style: italic; color: var(--yellow); }
.bln p { margin: 0; max-width: 520px; font-size: 16px; line-height: 1.6; color: var(--neutral-300); }
.bln__form { display: flex; flex-direction: column; gap: 14px; }
.bln .ch span { color: #fff; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); }
.bln .ch input:checked + span { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.bln .nws button { background: var(--yellow); color: var(--blue-900); }
.bln .mlc__ok { color: #4fbf8a; }
@media (max-width: 1000px) { .bln__in { grid-template-columns: minmax(0, 1fr); padding: 72px 24px; } }

/* ===================================================================== v7.8 | Cases */
.cxh { position: relative; overflow: hidden; background: var(--blue-900); color: var(--neutral-100); }
.cxh__parede { position: absolute; inset: 0; opacity: .32; mask-image: linear-gradient(90deg, transparent 20%, #000 70%); -webkit-mask-image: linear-gradient(90deg, transparent 20%, #000 70%); }
.cxh__parede ul { position: absolute; right: -10%; top: -20%; width: 80%; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; transform: rotate(-8deg); animation: cx-sobe 40s linear infinite; }
.cxh__parede li { border-radius: 14px; overflow: hidden; } .cxh__parede img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
@keyframes cx-sobe { to { translate: 0 -50%; } }
@media (prefers-reduced-motion: reduce) { .cxh__parede ul { animation: none; } }
.cxh::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--blue-900) 30%, rgba(1, 29, 38, .5) 70%, rgba(1, 29, 38, .2)); pointer-events: none; }
.cxh__in { position: relative; z-index: 1; max-width: 1286px; margin: 0 auto; padding: 150px 40px 96px; display: flex; flex-direction: column; align-items: flex-start; gap: 26px; }
.cxh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(64px, 9vw, 150px); line-height: .9; letter-spacing: -.05em; color: #fff; }
.cxh h1 em { font-style: italic; font-size: .32em; letter-spacing: -.02em; line-height: 1.2; color: var(--yellow); }
.cxh__lead { margin: 0; max-width: 560px; font-size: 18px; line-height: 1.55; color: var(--neutral-300); }
.cxh__prova { margin: 18px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; width: 100%; max-width: 900px; }
.cxh__prova li { display: flex; flex-direction: column; gap: 4px; padding: 18px; border-radius: 18px; background: rgba(1, 29, 38, .55); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); animation: fr-entra .7s calc(var(--d) * 100ms) both; }
.cxh__prova b { font-weight: 200; font-size: 40px; line-height: 1; color: var(--yellow); } .cxh__prova span { font-size: 13.5px; line-height: 1.4; color: var(--neutral-200); }
@media (max-width: 900px) { .cxh__prova { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cxh__in { padding: 120px 24px 72px; } }
.csk-s { background: #F4F5F3; color: var(--neutral-900); }
.csk-s__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px 120px; display: flex; flex-direction: column; gap: 44px; }
.csk__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 28px; }
.csk { position: sticky; top: calc(96px + var(--i) * 16px); scroll-margin-top: 110px; }
.csk__in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 40px; align-items: stretch; min-height: min(560px, calc(100vh - 160px)); padding: 40px; border-radius: 32px; box-shadow: 0 -20px 60px -40px rgba(1, 29, 38, .5); }
.csk--0 .csk__in { background: var(--blue-900); color: #fff; }
.csk--1 .csk__in { background: #fff; color: var(--neutral-900); box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 -20px 60px -40px rgba(1, 29, 38, .4); }
.csk--2 .csk__in { background: #0B3A4E; color: #fff; }
.csk--ib.csk--1 .csk__in { background: var(--yellow); color: var(--blue-900); }
.csk__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; min-width: 0; }
.csk__meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; opacity: .8; }
.csk__f { padding: 4px 10px; border-radius: 99px; box-shadow: inset 0 0 0 1px currentColor; }
.csk__quem { margin: 6px 0 0; font-size: 15px; font-weight: 500; }
.csk h2 { margin: 0; font-weight: 300; font-size: clamp(28px, 2.8vw, 42px); line-height: 1.08; letter-spacing: -.02em; text-wrap: balance; }
.csk__arco { margin: 4px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; width: 100%; }
.csk__arco li { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 10px; padding: 12px 14px; border-radius: 14px; background: rgba(127, 140, 145, .12); font-size: 15px; line-height: 1.45; }
.csk__arco b { font-weight: 500; font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; opacity: .7; padding-top: 3px; }
.csk__arco li:last-child b { color: var(--yellow); opacity: 1; } .csk--1 .csk__arco li:last-child b { color: #c98a12; } .csk--ib.csk--1 .csk__arco li:last-child b { color: var(--blue-900); }
.csk__tags { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; } .csk__tags li { padding: 5px 11px; border-radius: 99px; box-shadow: inset 0 0 0 1px currentColor; font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase; opacity: .7; }
.csk__ctas { margin-top: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; padding-top: 8px; }
.csk__ver { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; letter-spacing: .06em; text-transform: uppercase; text-decoration: underline; text-underline-offset: 4px; }
.csk__breve { font-size: 13px; opacity: .65; }
.csk--ib.csk--1 .btn--amarelo { background: var(--blue-900); color: #fff; }
.csk__vis { position: relative; display: flex; align-items: center; min-width: 0; }
.csk__tela { position: relative; display: block; width: 100%; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 40px 70px -40px rgba(0, 0, 0, .7); }
.csk__barra { display: flex; gap: 6px; padding: 10px 14px; background: #ECEEED; } .csk__barra i { width: 9px; height: 9px; border-radius: 50%; background: rgba(1, 29, 38, .2); }
.csk__tela img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
.csk__tela--app { display: grid; place-items: center; padding: 20px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); min-height: 320px; }
.csk__num { position: absolute; left: -24px; bottom: -14px; margin: 0; display: flex; flex-direction: column; padding: 16px 20px; border-radius: 20px; background: var(--yellow); color: var(--blue-900); box-shadow: 0 30px 50px -30px rgba(0, 0, 0, .6); max-width: 240px; }
.csk__num b { font-weight: 300; font-size: clamp(34px, 3.4vw, 52px); line-height: 1; letter-spacing: -.03em; } .csk__num span { font-size: 13px; line-height: 1.35; }
.csk--ib.csk--1 .csk__num { background: var(--blue-900); color: #fff; } .csk--ib.csk--1 .csk__num b { color: var(--yellow); }
@media (max-width: 1000px) { .csk { position: static; } .csk__in { grid-template-columns: minmax(0, 1fr); padding: 26px; min-height: 0; } .csk__vis { order: -1; } .csk__num { left: 12px; } .csk-s__in { padding: 80px 24px; } }
.dz { background: radial-gradient(45% 60% at 100% 100%, rgba(244, 182, 63, .12), transparent 70%), radial-gradient(45% 60% at 0% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.dz__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 460px) minmax(0, 1fr); gap: 48px; align-items: start; }
.dz__cab { display: flex; flex-direction: column; gap: 28px; }
.dz__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.dz__lista button { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 18px; border: 0; border-radius: 16px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); font: inherit; font-size: 16px; text-align: left; color: #fff; cursor: pointer; transition: background-color .25s; }
.dz__lista button svg { color: var(--yellow); flex: none; }
.dz__lista button:hover { background: rgba(249, 250, 250, .1); }
.dz__lista button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; } .dz__lista button.is-on svg { color: var(--blue-900); }
.dz__palco { position: sticky; top: 110px; }
.dz__p { display: flex; flex-direction: column; gap: 14px; animation: fb-entra .45s cubic-bezier(.2, .7, .2, 1); }
.dz__case { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 22px; align-items: center; padding: 18px; border-radius: 26px; background: #fff; color: var(--neutral-900); }
.dz__case b { display: block; margin: 4px 0 8px; font-weight: 400; font-size: 22px; line-height: 1.2; } .dz__case p { margin: 0; font-size: 15px; line-height: 1.5; color: var(--neutral-600); }
.dz__th .csk__tela { box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); } .dz__th .csk__tela--app { background: var(--blue-900); min-height: 220px; }
.dz__k { margin: 0; font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.dz__prox { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; padding: 22px 24px; border-radius: 22px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .4); }
.dz__prox .dz__k { flex-basis: 100%; color: var(--yellow); }
@media (max-width: 1000px) { .dz__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; } .dz__palco { position: static; } .dz__case { grid-template-columns: minmax(0, 1fr); } }

/* ===================================================================== v7.8 | Case Hub CG 50 Anos */
.mt--cg .mtp__f { color: #12597C; }
.cgq { display: flex; flex-direction: column; gap: 6px; margin-top: 4px !important; padding: 12px 14px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); font-size: 14.5px !important; color: var(--neutral-600) !important; }
.cgq__q { align-self: flex-start; padding: 3px 10px; border-radius: 99px; font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; }
.cgq__q--p { background: var(--blue-900); color: #fff; } .cgq__q--ia { background: var(--yellow); color: var(--blue-900); }
.cgv { width: 100%; max-width: 460px; }
.cgv--pub { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; } .cgv--pub span { padding: 22px 18px; border-radius: 18px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); font-size: 16px; opacity: clamp(.25, var(--e, 1) * 2, 1); }
.cgv--pub span:nth-child(1) { background: var(--blue-900); color: #fff; }
.cgv--mapa { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; } .cgv--mapa b { grid-column: 1 / -1; justify-self: center; padding: 12px 26px; border-radius: 14px; background: var(--blue-900); color: #fff; font-weight: 400; }
.cgv--mapa i { grid-column: 1 / -1; height: 26px; margin: 0 10%; border: 1.5px solid rgba(1, 29, 38, .3); border-bottom: 0; border-radius: 10px 10px 0 0; }
.cgv--mapa span { padding: 12px 4px; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); font-size: 12px; text-align: center; } .cgv--mapa span:last-child { background: var(--yellow); }
.cgv--ep { display: flex; flex-direction: column; gap: 8px; } .cgv--ep span { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); font-size: 15px; }
.cgv--ep i { width: 0; height: 0; border-left: 11px solid var(--blue-900); border-top: 7px solid transparent; border-bottom: 7px solid transparent; } .cgv--ep span:first-child { background: var(--blue-900); color: #fff; } .cgv--ep span:first-child i { border-left-color: var(--yellow); }
.cgv--form { display: flex; flex-direction: column; gap: 8px; padding: 20px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.cgv--form span { padding: 12px 14px; border-radius: 10px; background: #F4F5F3; font-size: 13.5px; color: var(--neutral-500); } .cgv--form .g { min-height: 64px; }
.cgv--form label { display: flex; align-items: center; gap: 8px; font-size: 13px; } .cgv--form label i { width: 16px; height: 16px; border-radius: 4px; background: var(--blue-900); }
.cgv--on { display: flex; align-items: center; gap: 16px; padding: 26px; border-radius: 22px; background: var(--blue-900); color: #fff; } .cgv--on i { width: 14px; height: 14px; border-radius: 50%; background: #4fbf8a; box-shadow: 0 0 0 6px rgba(79, 191, 138, .25); }
.cgv--on b { font-weight: 300; font-size: 34px; } .cgv--on span { margin-left: auto; padding: 6px 12px; border-radius: 99px; background: rgba(249, 250, 250, .1); font-size: 13px; }
.mt--cg.is-anim { height: calc(100vh + 4 * 80vh); }
.hb { background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.hb__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.hb__app { display: flex; flex-direction: column; gap: 20px; }
.hb__nav { display: flex; flex-wrap: wrap; gap: 8px; }
.hb__nav button { padding: 11px 18px; border: 0; border-radius: 99px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font: inherit; font-size: 14.5px; color: var(--neutral-200); cursor: pointer; }
.hb__nav button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.hb__grade { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.hb__note { margin: 0; border-radius: 18px; overflow: hidden; background: #fff; box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .8); }
.hb__note figcaption { padding: 10px 16px; background: #fff; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); text-align: right; }
.hb__tela { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #F4F5F3; }
.hb__pg { position: absolute; inset: 0; animation: fb-entra .45s cubic-bezier(.2, .7, .2, 1); } .hb__pg[hidden] { display: none; }
.hb__pg > img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.hb__lado { min-width: 0; } .hb__tx[hidden] { display: none; }
.hb__tx { display: flex; flex-direction: column; gap: 12px; animation: fb-entra .45s cubic-bezier(.2, .7, .2, 1); }
.hb__n { margin: 0; font-size: 13px; color: var(--yellow); } .hb__tx h3 { margin: 0; font-weight: 300; font-size: clamp(28px, 2.6vw, 40px); line-height: 1.1; color: #fff; }
.hb__tx > p:not(.hb__n) { margin: 0; font-size: 16.5px; line-height: 1.6; color: var(--neutral-300); }
.hb__tx ul { margin: 6px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; } .hb__tx li { display: flex; gap: 10px; font-size: 15px; color: #fff; } .hb__tx li svg { color: var(--yellow); flex: none; }
.cgp { position: absolute; inset: 0; padding: 7% 8%; display: flex; flex-direction: column; gap: 6%; color: var(--blue-900); }
.cgp--hist .cgp__linha { position: relative; display: flex; justify-content: space-between; padding-top: 18px; }
.cgp--hist .cgp__linha::before { content: ""; position: absolute; left: 0; right: 0; top: 24px; height: 2px; background: rgba(1, 29, 38, .15); }
.cgp--hist .cgp__linha span { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: 12px; color: var(--neutral-600); }
.cgp--hist .cgp__linha i { width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: inset 0 0 0 2px rgba(1, 29, 38, .3); } .cgp--hist .is-on i { background: #D6352B; box-shadow: 0 0 0 5px rgba(214, 53, 43, .2); } .cgp--hist .is-on { color: var(--blue-900); font-weight: 500; }
.cgp__cards { flex: 1; display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 12px; } .cgp__cards i { border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); } .cgp__cards i:first-child { background: linear-gradient(160deg, #D6352B, #8E1F18); }
.cgp--ent { flex-direction: row; } .cgp__player { flex: 1.4; position: relative; border-radius: 14px; background: linear-gradient(160deg, #1b2a30, #000); } .cgp__player b { position: absolute; left: 50%; top: 50%; width: 0; height: 0; margin: -16px 0 0 -10px; border-left: 28px solid #fff; border-top: 16px solid transparent; border-bottom: 16px solid transparent; }
.cgp--ent ol { flex: 1; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; } .cgp--ent li { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; background: #fff; font-size: 12.5px; }
.cgp--ent li i { width: 0; height: 0; border-left: 9px solid #D6352B; border-top: 6px solid transparent; border-bottom: 6px solid transparent; } .cgp--ent li em { margin-left: auto; width: 28px; height: 5px; border-radius: 3px; background: rgba(1, 29, 38, .15); }
.cgp--ger { flex-direction: row; } .cgp--ger > div { flex: 1; display: flex; flex-direction: column; gap: 8px; padding: 14px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.cgp--ger b { font-weight: 500; font-size: 13px; } .cgp--ger i { flex: 1; border-radius: 10px; background: linear-gradient(160deg, #e9ecec, #cfd5d6); } .cgp--ger > div:nth-child(2) i { background: linear-gradient(160deg, #D6352B, #8E1F18); }
.cgp--ger span { height: 7px; border-radius: 4px; background: rgba(1, 29, 38, .12); } .cgp--ger span:nth-of-type(2) { width: 70%; } .cgp--ger span:nth-of-type(3) { width: 50%; }
.cgp--cont { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; } .cgp--cont > div { display: flex; flex-direction: column; gap: 6px; padding: 10px; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.cgp--cont i { flex: 1; border-radius: 8px; background: #e3e7e8; } .cgp--cont > div:nth-child(1) i, .cgp--cont > div:nth-child(5) i { background: linear-gradient(160deg, #D6352B, #8E1F18); } .cgp--cont span { height: 6px; border-radius: 3px; background: rgba(1, 29, 38, .14); } .cgp--cont span + span { width: 60%; }
.cgp--camp { align-items: stretch; max-width: 70%; margin: 0 auto; gap: 8px; padding-top: 5%; } .cgp--camp b { font-weight: 500; font-size: 20px; color: #D6352B; }
.cgp--camp span { padding: 10px 12px; border-radius: 10px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); font-size: 12.5px; color: var(--neutral-500); } .cgp--camp .g { min-height: 50px; }
.cgp--camp label { display: flex; align-items: center; gap: 8px; font-size: 12px; } .cgp--camp label i { width: 14px; height: 14px; border-radius: 4px; background: var(--blue-900); }
.cgp--camp em { align-self: flex-start; padding: 8px 16px; border-radius: 10px; background: #D6352B; color: #fff; font-style: normal; font-size: 13px; }
@media (max-width: 1000px) { .hb__grade { grid-template-columns: minmax(0, 1fr); } .hb__in { padding: 80px 24px; } }
@media (max-width: 560px) { .cgp { padding: 5%; } .cgp--hist .cgp__linha span { font-size: 9px; } .cgp--ent li, .cgp--camp span { font-size: 10px; padding: 6px 8px; } }
.cgx { background: #F4F5F3; color: var(--neutral-900); }
.cgx__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 48px; align-items: start; }
.cgx__ent { display: flex; flex-direction: column; gap: 32px; }
.cgx__lista { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cgx__lista li { display: flex; gap: 14px; align-items: center; padding: 16px 18px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); font-size: 15.5px; }
.cgx__lista b { font-weight: 300; font-size: 22px; color: #c98a12; }
.cgx__cta { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 16px; padding: 32px; border-radius: 30px; background: var(--blue-900); color: var(--neutral-100); }
.cgx__cta h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(30px, 3vw, 44px); line-height: 1.05; letter-spacing: -.03em; color: #fff; } .cgx__cta h2 em { font-style: italic; color: var(--yellow); }
.cgx__cta > p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-300); }
.cgx__cta .pxf__op { font-size: 16px; padding: 16px 18px; }
.cgx__prox { display: flex; flex-direction: column; gap: 4px; margin-top: 8px; padding-top: 16px; border-top: 1px solid rgba(249, 250, 250, .14); font-size: 15px; color: #fff; } .cgx__prox span { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); } .cgx__prox b { font-weight: 400; } .cgx__prox svg { color: var(--yellow); }
@media (max-width: 1000px) { .cgx__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; } .cgx__cta { position: static; } .cgx__lista { grid-template-columns: minmax(0, 1fr); } }
.dz__p[hidden] { display: none; }

/* ===================================================================== v7.9 | Trabalhe: vagas em lista e painel */
.tvx { display: grid; grid-template-columns: minmax(0, 440px) minmax(0, 1fr); gap: 20px; align-items: start; }
.tvx__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.tvx__lista button { width: 100%; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 12px 14px; border: 0; border-radius: 16px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); font: inherit; text-align: left; color: #fff; cursor: pointer; transition: background-color .25s, box-shadow .25s; }
.tvx__lista button:hover { background: rgba(249, 250, 250, .09); }
.tvx__lista button.is-on { background: #fff; color: var(--blue-900); box-shadow: inset 4px 0 0 var(--yellow); }
.tvx__ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(244, 182, 63, .14); color: var(--yellow); }
.tvx__lista button.is-on .tvx__ic { background: var(--blue-900); }
.tvx__tt { display: flex; flex-direction: column; gap: 2px; min-width: 0; } .tvx__tt em { font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); } .tvx__lista button.is-on .tvx__tt em { color: #c98a12; }
.tvx__tt b { font-weight: 400; font-size: 16px; line-height: 1.3; }
.tvx__n { display: grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; border-radius: 99px; background: rgba(249, 250, 250, .1); font-size: 13px; } .tvx__lista button.is-on .tvx__n { background: var(--yellow); color: var(--blue-900); }
.tvx__palco { position: sticky; top: 110px; }
.tvx__p { display: flex; flex-direction: column; gap: 18px; padding: 34px; border-radius: 30px; background: #fff; color: var(--neutral-900); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .7); animation: fb-entra .45s cubic-bezier(.2, .7, .2, 1); scroll-margin-top: 100px; }
.tvx__p[hidden] { display: none; }
.tvx__pc { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; padding-bottom: 18px; border-bottom: 1px solid rgba(34, 37, 38, .08); }
.tvx__pic { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 20px; background: var(--blue-900); color: var(--yellow); }
.tvx__area { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #c98a12; }
.tvx__pc h3 { margin: 4px 0 0; font-weight: 300; font-size: clamp(26px, 2.6vw, 38px); line-height: 1.08; letter-spacing: -.02em; }
.tvx__vagas { padding: 8px 14px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-size: 13.5px; white-space: nowrap; }
.tvx__k { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.tvx__faz { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.tvx__faz li { display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 18px; background: #F4F5F3; font-size: 15.5px; line-height: 1.45; }
.tvx__faz b { font-weight: 300; font-size: 26px; color: #c98a12; }
.tvx__ia { display: flex; gap: 12px; align-items: flex-start; padding: 16px 18px; border-radius: 16px; background: var(--blue-900); color: var(--neutral-300); font-size: 14.5px; line-height: 1.5; } .tvx__ia svg { flex: none; color: var(--yellow); margin-top: 2px; } .tvx__ia b { color: #fff; font-weight: 500; }
.tvx__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.tvx__cp { padding: 0; border: 0; background: none; font: inherit; font-size: 14px; color: var(--blue-900); text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
@media (max-width: 1000px) { .tvx { grid-template-columns: minmax(0, 1fr); } .tvx__palco { position: static; } .tvx__faz { grid-template-columns: minmax(0, 1fr); } .tvx__p { padding: 24px; } .tvx__pc { grid-template-columns: auto minmax(0, 1fr); } .tvx__vagas { grid-column: 1 / -1; justify-self: start; } }

/* v7.9 capas editoriais (PNG) */
.cv { aspect-ratio: 5 / 7; }
.cv--img .cv__frente { padding: 0; gap: 0; border-radius: 1.2cqi 3cqi 3cqi 1.2cqi; background: #011D26; }
.cv--img .cv__frente img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cv--img .cv__frente::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: linear-gradient(100deg, rgba(255,255,255,.16), transparent 28%, transparent 72%, rgba(0,0,0,.1)); }
.cv--img .cv__lomb { width: 3.2cqi; border-radius: 1.2cqi 0 0 1.2cqi; background: linear-gradient(90deg, rgba(0,0,0,.32), rgba(255,255,255,.12) 55%, rgba(0,0,0,.18)); z-index: 2; }

/* ================= v7.9 | Guia de relançamento (g3) ================= */
.g3h { position: relative; overflow: hidden; background: radial-gradient(70% 70% at 78% 30%, rgba(18, 89, 124, .55), transparent 70%), var(--blue-900); color: #fff; }
.g3h__in { position: relative; max-width: 1366px; margin: 0 auto; padding: 150px 40px 110px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 40px; align-items: center; }
.g3h__tx { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 26px; }
.g3h__tag { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.g3h__tag span { padding: 7px 12px; border-radius: 99px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; background: rgba(249, 250, 250, .08); color: var(--neutral-100); }
.g3h__tag span:first-child { background: var(--yellow); color: var(--blue-900); font-weight: 600; }
.g3h__tag .g3h__sh { background: rgba(18, 89, 124, .6); }
.g3h h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(44px, 5.4vw, 84px); line-height: .98; letter-spacing: -.035em; }
.g3h h1 em { font-style: italic; color: var(--yellow); }
.g3h__lead { margin: 0; max-width: 520px; font-size: 19px; line-height: 1.5; color: var(--neutral-200); }
.g3h__pe { list-style: none; padding: 22px 0 0; margin: 6px 0 0; display: flex; gap: 40px; border-top: 1px solid rgba(249, 250, 250, .14); max-width: 520px; }
.g3h__pe li { display: flex; flex-direction: column; gap: 2px; }
.g3h__pe b { font-weight: 300; font-size: 40px; line-height: 1; color: #fff; }
.g3h__pe span { font-size: 13px; letter-spacing: .06em; color: var(--neutral-300); }
.g3h__palco { position: relative; aspect-ratio: 1 / .92; --mx: 0; --my: 0; }
.g3h__luz { position: absolute; inset: 10% 5% 0 10%; background: radial-gradient(closest-side, rgba(244, 182, 63, .35), transparent); filter: blur(30px); }
.g3h__aberto { position: absolute; right: -14%; top: 4%; width: 92%; height: auto; opacity: .9; transform: translate(calc(var(--mx) * -10px), calc(var(--my) * -8px)) rotate(4deg); transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.g3h__livro { position: absolute; left: 0; bottom: -4%; width: 66%; height: auto; transform: translate(calc(var(--mx) * 16px), calc(var(--my) * 12px)); transition: transform .6s cubic-bezier(.2, .7, .2, 1); filter: drop-shadow(0 40px 50px rgba(0, 0, 0, .45)); animation: g3-sobe 1s cubic-bezier(.2, .7, .2, 1) both; }
.g3h__ch { position: absolute; z-index: 3; margin: 0; display: flex; align-items: center; gap: 12px; padding: 12px 18px 12px 12px; border-radius: 16px; background: rgba(249, 250, 250, .96); color: var(--blue-900); box-shadow: 0 30px 50px -20px rgba(0, 0, 0, .55); transform: translate(calc(var(--mx) * var(--p) * 22px), calc(var(--my) * var(--p) * 16px)); transition: transform .6s cubic-bezier(.2, .7, .2, 1); animation: g3-pop .7s cubic-bezier(.2, .7, .2, 1) both; }
.g3h__ch i { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--blue-900); color: var(--yellow); font-style: normal; font-size: 12px; font-weight: 700; }
.g3h__ch span { display: flex; flex-direction: column; }
.g3h__ch b { font-weight: 600; font-size: 14px; }
.g3h__ch em { font-style: normal; font-size: 12.5px; color: var(--neutral-600); }
.g3h__ch--a { right: 2%; top: 12%; animation-delay: .5s; }
.g3h__ch--b { right: 10%; top: 58%; animation-delay: .7s; }
.g3h__ch--c { left: 40%; bottom: 2%; animation-delay: .9s; }
.g3h__ch--c i { background: var(--yellow); color: var(--blue-900); }
@keyframes g3-sobe { from { opacity: 0; translate: 0 40px; } }
@keyframes g3-pop { from { opacity: 0; scale: .85; } }

.g3s { background: #F3F2EE; }
.g3s__in { max-width: 1366px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 60px; align-items: center; }
.g3s__cab { display: flex; flex-direction: column; gap: 32px; }
.g3s__pts { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.g3s__pts li { display: flex; flex-direction: column; gap: 4px; padding: 16px 20px 16px 22px; border-radius: 16px; background: #fff; border-left: 4px solid #C9473A; animation: g3-entra .5s cubic-bezier(.2, .7, .2, 1) both; animation-delay: calc(var(--d) * 90ms); }
.g3s__pts[data-g3-pts="com"] li { border-left-color: var(--yellow); }
.g3s__pts b { font-weight: 500; font-size: 17px; color: var(--blue-900); }
.g3s__pts span { font-size: 15px; line-height: 1.45; color: var(--neutral-600); }
@keyframes g3-entra { from { opacity: 0; transform: translateX(-12px); } }
.g3s__demo { padding: 30px; border-radius: 30px; background: var(--blue-900); color: #fff; box-shadow: 0 60px 90px -60px rgba(1, 29, 38, .7); }
.g3s__topo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; }
.g3s__rot { margin: 0; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-300); }
.g3s__tg { display: flex; padding: 4px; border-radius: 99px; background: rgba(249, 250, 250, .08); }
.g3s__tg button { padding: 10px 18px; border: 0; border-radius: 99px; background: none; color: var(--neutral-200); font: 500 14px var(--font); cursor: pointer; transition: background .3s, color .3s; }
.g3s__tg button.is-on { background: #fff; color: var(--blue-900); }
.g3s__tg button[data-g3-m="com"].is-on { background: var(--yellow); }
.g3s__graf { position: relative; margin-top: 26px; height: 300px; }
.g3s__graf svg { width: 100%; height: 100%; display: block; overflow: visible; }
.g3s__gr line { stroke: rgba(249, 250, 250, .08); }
.g3s__ln { fill: none; stroke-width: 3.5; stroke-linecap: round; vector-effect: non-scaling-stroke; stroke-dasharray: 1; transition: stroke-dashoffset 1.2s cubic-bezier(.2, .7, .2, 1), opacity .4s; }
.g3s__ln--sem { stroke: #E36A5C; } .g3s__ln--com { stroke: var(--yellow); }
.g3s__area { transition: opacity .6s; } .g3s__area--sem { color: #E36A5C; } .g3s__area--com { color: var(--yellow); }
[data-modo="sem"] .g3s__ln--com, [data-modo="sem"] .g3s__area--com { opacity: 0; stroke-dashoffset: 1; }
[data-modo="com"] .g3s__ln--sem { opacity: .25; } [data-modo="com"] .g3s__area--sem { opacity: 0; }
[data-modo="sem"] .g3s__ln--sem, [data-modo="com"] .g3s__ln--com { stroke-dashoffset: 0; }
.g3s__dia { stroke: rgba(249, 250, 250, .5); stroke-dasharray: 4 6; vector-effect: non-scaling-stroke; }
.g3s__lanc { position: absolute; left: 40.3%; top: -4px; margin: 0; display: flex; align-items: center; gap: 8px; transform: translateX(-50%); padding: 6px 12px; border-radius: 99px; background: rgba(249, 250, 250, .12); font-size: 12px; white-space: nowrap; }
.g3s__lanc i { width: 8px; height: 8px; border-radius: 50%; background: var(--yellow); }
.g3s__eixo { position: absolute; left: 0; right: 0; bottom: -28px; margin: 0; display: flex; justify-content: space-between; font-size: 12px; color: var(--neutral-400); }
.g3s__nota { margin: 46px 0 0; font-size: 13px; line-height: 1.5; color: var(--neutral-400); }

.g3d { background: radial-gradient(60% 50% at 50% 100%, rgba(18, 89, 124, .45), transparent 70%), var(--blue-900); color: #fff; overflow: hidden; }
.g3d__in { max-width: 1366px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 40px; }
.g3d__cab { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 30px; }
.g3d__abas { list-style: none; padding: 5px; margin: 0; display: flex; flex-wrap: wrap; gap: 4px; border-radius: 18px; background: rgba(249, 250, 250, .06); }
.g3d__abas button { display: flex; align-items: center; gap: 10px; padding: 11px 16px; border: 0; border-radius: 14px; background: none; color: var(--neutral-200); font: 15px var(--font); cursor: pointer; transition: background .3s, color .3s; }
.g3d__abas button b { font-weight: 500; font-size: 12px; color: var(--yellow); }
.g3d__abas button.is-on { background: #fff; color: var(--blue-900); }
.g3d__abas button.is-on b { color: var(--blue-700); }
.g3d__palco { position: relative; display: grid; aspect-ratio: 2200 / 1300; max-height: 720px; margin: -10px auto -20px; width: 100%; }
.g3d__tela { grid-area: 1 / 1; margin: 0; display: grid; place-items: center; opacity: 0; transform: translateY(24px) scale(.98); transition: opacity .5s, transform .7s cubic-bezier(.2, .7, .2, 1); pointer-events: none; }
.g3d__tela.is-on { opacity: 1; transform: none; pointer-events: auto; }
.g3d__tela img { width: 100%; height: 100%; object-fit: contain; }
.g3d__ctl { position: absolute; inset: 50% -10px auto; display: flex; justify-content: space-between; pointer-events: none; transform: translateY(-50%); }
.g3d__ctl button { pointer-events: auto; display: grid; place-items: center; width: 52px; height: 52px; border: 0; border-radius: 50%; background: rgba(249, 250, 250, .12); color: #fff; cursor: pointer; backdrop-filter: blur(8px); transition: background .3s; }
.g3d__ctl button:hover { background: var(--yellow); color: var(--blue-900); }
.g3d__pe { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; padding-top: 26px; border-top: 1px solid rgba(249, 250, 250, .12); }
.g3d__leg { margin: 0; display: none; flex-direction: column; gap: 4px; max-width: 640px; }
.g3d__leg.is-on { display: flex; }
.g3d__leg b { font-weight: 400; font-size: 24px; }
.g3d__leg span { font-size: 15px; color: var(--neutral-300); }
.g3p { width: min(920px, 92%); border-radius: 18px; overflow: hidden; background: #fff; color: var(--blue-900); box-shadow: 0 50px 80px -30px rgba(0, 0, 0, .6); transform: perspective(2000px) rotateX(10deg); }
.g3p__bar { display: flex; align-items: center; gap: 7px; padding: 14px 18px; background: #EDEBE5; font-size: 13px; }
.g3p__bar i { width: 11px; height: 11px; border-radius: 50%; background: #D3CFC6; }
.g3p__bar span { margin-left: 10px; color: var(--neutral-600); }
.g3p__bar b { margin-left: auto; padding: 4px 10px; border-radius: 99px; background: var(--yellow); font-weight: 600; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.g3p__tb { overflow-x: auto; }
.g3p table { width: 100%; border-collapse: collapse; font-size: 14px; }
.g3p th { padding: 12px 16px; text-align: left; font-weight: 500; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); background: #F7F6F2; border-bottom: 1px solid #E7E4DC; white-space: nowrap; }
.g3p td { padding: 14px 16px; border-bottom: 1px solid #EFEDE7; white-space: nowrap; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; }
.g3p td:nth-child(4) { font-family: var(--font); font-size: 14px; color: var(--neutral-600); }
.g3p tr { animation: g3-entra .5s both; animation-delay: calc(var(--d) * 80ms + .2s); }
.g3p__st { font-style: normal; padding: 3px 9px; border-radius: 6px; font-family: var(--font); font-weight: 600; font-size: 12px; background: rgba(18, 89, 124, .12); color: var(--blue-700); }
.g3p__st--410 { background: rgba(227, 106, 92, .14); color: #B4473A; }
.g3p__ok { color: #2E8B57; }
.g3p__pe { margin: 0; display: flex; justify-content: space-between; gap: 20px; padding: 14px 18px; font-size: 13px; color: var(--neutral-500); background: #FBFAF7; }

.g3r { background: #F3F2EE; }
.g3r__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 60px; align-items: start; }
.g3r__in .s2-cab { position: sticky; top: 120px; }
.g3r__card { padding: 32px; border-radius: 30px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 50px 80px -60px rgba(1, 29, 38, .4); }

.g3b { position: relative; overflow: hidden; background: radial-gradient(60% 70% at 20% 60%, rgba(244, 182, 63, .16), transparent 70%), radial-gradient(60% 60% at 90% 10%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: #fff; }
.g3b__in { max-width: 1366px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 70px; align-items: center; }
.g3b__esq { display: flex; flex-direction: column; gap: 30px; }
.g3b h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(36px, 4vw, 60px); line-height: 1.02; letter-spacing: -.03em; }
.g3b h2 em { font-style: italic; color: var(--yellow); }
.g3b__vis { position: relative; height: 320px; }
.g3b__ab { position: absolute; left: 22%; top: 0; width: 78%; height: auto; opacity: .85; transform: rotate(-3deg); }
.g3b__lv { position: absolute; left: -4%; bottom: -30px; width: 46%; height: auto; filter: drop-shadow(0 30px 40px rgba(0, 0, 0, .5)); }
.g3b__kit { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 14px 26px; }
.g3b__kit li { display: flex; gap: 12px; }
.g3b__kit i { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 9px; background: var(--yellow); color: var(--blue-900); }
.g3b__kit span { display: flex; flex-direction: column; gap: 3px; }
.g3b__kit b { font-weight: 500; font-size: 16px; }
.g3b__kit em { font-style: normal; font-size: 14px; line-height: 1.45; color: var(--neutral-300); }
.g3b__card { padding: 34px; border-radius: 30px; background: #fff; color: var(--blue-900); box-shadow: 0 60px 100px -40px rgba(0, 0, 0, .6); }
.g3b__form { display: flex; flex-direction: column; gap: 16px; }
.g3b__ft { margin: 0; font-size: 28px; font-weight: 400; letter-spacing: -.02em; }
.g3b__fs { margin: -8px 0 4px; font-size: 14.5px; line-height: 1.45; color: var(--neutral-600); }

.g3fx { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 60; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 10px 10px 18px; border-radius: 18px; background: rgba(1, 29, 38, .94); color: #fff; backdrop-filter: blur(10px); box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .5); transform: translateY(140%); transition: transform .45s cubic-bezier(.2, .7, .2, 1); }
.g3fx.is-on { transform: none; }
.g3fx span { display: flex; flex-direction: column; } .g3fx b { font-weight: 500; font-size: 14px; } .g3fx em { font-style: normal; font-size: 12px; color: var(--neutral-300); }
@media (min-width: 1101px) { .g3fx { display: none; } }
.g3fx[hidden] { display: none; }

@media (max-width: 1100px) {
  .g3h__in { grid-template-columns: minmax(0, 1fr); padding: 120px 24px 80px; }
  .g3h__palco { max-width: 560px; width: 100%; margin: 0 auto; }
  .g3s__in, .g3r__in, .g3b__in { grid-template-columns: minmax(0, 1fr); padding: 88px 24px; gap: 40px; }
  .g3r__in .s2-cab { position: static; }
  .g3d__in { padding: 88px 24px; }
}
@media (max-width: 640px) {
  .g3h__pe { gap: 26px; } .g3h__pe b { font-size: 32px; }
  .g3h__ch { padding: 8px 12px 8px 8px; gap: 8px; } .g3h__ch i { width: 26px; height: 26px; } .g3h__ch b { font-size: 12px; } .g3h__ch em { font-size: 11px; }
  .g3h__ch--b { right: 0; } .g3h__ch--c { left: 30%; }
  .g3s__demo { padding: 20px; border-radius: 22px; } .g3s__graf { height: 220px; } .g3s__tg { width: 100%; } .g3s__tg button { flex: 1; }
  .g3d__abas { width: 100%; overflow-x: auto; flex-wrap: nowrap; } .g3d__abas button { white-space: nowrap; }
  .g3d__palco { aspect-ratio: 4 / 3.2; } .g3d__ctl { display: none; }
  .g3p { width: 100%; transform: none; } .g3p__pe { flex-direction: column; gap: 4px; }
  .g3r__card, .g3b__card { padding: 22px; border-radius: 22px; }
  .g3b__vis { height: 210px; } .g3b__kit { grid-template-columns: 1fr; }
}

/* ================= v7.9 | Download do material (dl) ================= */
.dlh { position: relative; overflow: hidden; background: radial-gradient(60% 70% at 75% 45%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: #fff; }
.dlh__in { max-width: 1366px; margin: 0 auto; padding: 150px 40px 100px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 50px; align-items: center; }
.dlh__tx { display: flex; flex-direction: column; gap: 24px; }
.dlh__k { margin: 0; display: inline-flex; align-items: center; gap: 10px; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.dlh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(40px, 4.8vw, 74px); line-height: 1; letter-spacing: -.035em; }
.dlh h1 em { font-style: normal; font-size: .62em; line-height: 1.1; color: var(--neutral-100); margin-top: 10px; letter-spacing: -.02em; }
.dlh__arq { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 18px; padding: 18px; border-radius: 22px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); max-width: 640px; }
.dlh__ic { flex: none; } .dlh__nm { flex: 1 1 220px; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.dlh__nm b { font-weight: 500; font-size: 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dlh__nm em { font-style: normal; font-size: 13px; color: var(--neutral-300); }
.dlh__st { margin: -8px 0 0; min-height: 1em; font-size: 14px; color: var(--yellow); }
.dlh__acoes { display: flex; flex-wrap: wrap; gap: 18px 30px; align-items: flex-start; max-width: 640px; }
.dlh__comp { display: inline-flex; align-items: center; gap: 10px; padding: 12px 18px; border: 0; border-radius: 12px; background: rgba(249, 250, 250, .1); color: #fff; font: 500 14px var(--font); cursor: pointer; transition: background .3s; }
.dlh__comp:hover { background: rgba(249, 250, 250, .18); }
.dlh__dica { flex: 1 1 260px; margin: 0; display: flex; flex-direction: column; gap: 4px; padding-left: 18px; border-left: 2px solid var(--yellow); }
.dlh__dica b { font-weight: 500; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.dlh__dica span { font-size: 15px; line-height: 1.5; color: var(--neutral-100); }
.dlh__palco { position: relative; aspect-ratio: 1 / 1; display: grid; place-items: center; }
.dlh__luz { position: absolute; inset: 12%; border-radius: 50%; background: radial-gradient(closest-side, rgba(244, 182, 63, .45), transparent); filter: blur(30px); animation: dl-respira 5s ease-in-out infinite; }
.dlh__aro { position: absolute; inset: 6%; border-radius: 50%; border: 1px dashed rgba(249, 250, 250, .16); animation: dl-gira 40s linear infinite; }
.dlh__lv { grid-area: 1 / 1; position: relative; width: 88%; animation: g3-sobe 1s cubic-bezier(.2, .7, .2, 1) both; }
.dlh__lv img { width: 100%; height: auto; display: block; filter: drop-shadow(0 40px 50px rgba(0, 0, 0, .5)); }
.dlh__mail { position: absolute; right: -2%; top: 14%; z-index: 3; margin: 0; display: flex; gap: 12px; align-items: center; width: min(320px, 70%); padding: 14px 16px; border-radius: 18px; background: rgba(249, 250, 250, .97); color: var(--blue-900); box-shadow: 0 30px 50px -20px rgba(0, 0, 0, .6); animation: dl-toast .8s cubic-bezier(.2, .7, .2, 1) 1.1s both; }
.dlh__mi { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--blue-900); color: var(--yellow); }
.dlh__mail span:last-child { display: flex; flex-direction: column; min-width: 0; }
.dlh__mail b { display: flex; justify-content: space-between; font-weight: 600; font-size: 13.5px; } .dlh__mail b i { font-style: normal; font-weight: 400; font-size: 12px; color: var(--neutral-500); }
.dlh__mail em { font-style: normal; font-size: 13px; line-height: 1.35; color: var(--neutral-600); }
.dlh__selo { position: absolute; left: 4%; bottom: 12%; z-index: 3; margin: 0; display: flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-weight: 600; font-size: 14px; animation: g3-pop .6s cubic-bezier(.2, .7, .2, 1) .7s both; }
.dlh.is-baixado .dlh__selo { background: #fff; }
@keyframes dl-respira { 50% { transform: scale(1.08); opacity: .8; } }
@keyframes dl-gira { to { transform: rotate(360deg); } }
@keyframes dl-toast { from { opacity: 0; transform: translateY(-20px) scale(.95); } }

.dlp { background: #F3F2EE; }
.dlp__in { max-width: 1366px; margin: 0 auto; padding: 110px 40px; display: flex; flex-direction: column; gap: 44px; }
.dlp__set { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 20px; }
.dlp__set[hidden] { display: none; }
.dlp__c { display: flex; flex-direction: column; border-radius: 26px; overflow: hidden; background: #fff; color: var(--blue-900); text-decoration: none; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: transform .4s cubic-bezier(.2, .7, .2, 1), box-shadow .4s; }
.dlp__c:hover { transform: translateY(-6px); box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 60px -40px rgba(1, 29, 38, .5); }
.dlp__vis { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--blue-900); }
.dlp__vis > * { width: 100%; height: 100%; }
.dlp__vis--s { position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: 22px; background: radial-gradient(80% 80% at 100% 0%, rgba(18, 89, 124, .9), transparent 70%), var(--blue-900); }
.dlp__c--ib .dlp__vis--s { background: radial-gradient(80% 80% at 100% 0%, rgba(255, 255, 255, .5), transparent 70%), var(--yellow); }
.dlp__sv { display: flex; gap: 8px; width: auto !important; height: auto !important; }
.dlp__sv i { width: 42px; height: 42px; border-radius: 12px; background: rgba(249, 250, 250, .14); }
.dlp__sv i:first-child { background: var(--yellow); }
.dlp__c--ib .dlp__sv i { background: rgba(1, 29, 38, .14); } .dlp__c--ib .dlp__sv i:first-child { background: var(--blue-900); }
.dlp__sf { width: auto !important; height: auto !important; font-weight: 300; font-size: 30px; line-height: 1.05; letter-spacing: -.02em; color: #fff; }
.dlp__c--ib .dlp__sf { color: var(--blue-900); }
.dlp__tx { flex: 1; display: flex; flex-direction: column; gap: 8px; padding: 22px 24px 24px; }
.dlp__k { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--blue-700); }
.dlp__tx b { font-weight: 400; font-size: 20px; line-height: 1.25; letter-spacing: -.01em; }
.dlp__tx em { font-style: normal; font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
.dlp__ir { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 14px; }
.dlp__c:hover .dlp__ir svg { transform: translateX(4px); } .dlp__ir svg { transition: transform .3s; }

.dlc { background: var(--blue-900); color: #fff; overflow: hidden; }
.dlc__in { max-width: 1366px; margin: 0 auto; padding: 110px 40px; display: flex; flex-direction: column; gap: 40px; }
.dlc__est { list-style: none; padding: 0 0 26px; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; border-bottom: 10px solid rgba(249, 250, 250, .08); }
.dlc__est li[hidden] { display: none; }
.dlc__est a { display: flex; flex-direction: column; gap: 8px; color: #fff; text-decoration: none; }
.dlc__est img { width: 120%; margin: -10% -10% -6%; height: auto; transition: transform .5s cubic-bezier(.2, .7, .2, 1); }
.dlc__est a:hover img { transform: translateY(-14px) rotate(-2deg); }
.dlc__tx { display: flex; flex-direction: column; gap: 6px; }
.dlc__st { align-self: flex-start; padding: 4px 10px; border-radius: 99px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; background: rgba(249, 250, 250, .1); color: var(--neutral-200); }
.dlc__st.is-ok { background: var(--yellow); color: var(--blue-900); font-weight: 600; }
.dlc__tx b { font-weight: 400; font-size: 18px; line-height: 1.25; }
.dlc__tx em { font-style: normal; font-size: 13px; color: var(--neutral-400); }

.dlf { background: #F3F2EE; }
.dlf__in { max-width: 1366px; margin: 0 auto; padding: 100px 40px; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 50px; align-items: center; }
.dlf__tx { display: flex; flex-direction: column; gap: 18px; }
.dlf h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.8vw, 56px); line-height: 1.03; letter-spacing: -.03em; color: var(--blue-900); }
.dlf h2 em { font-style: normal; color: var(--neutral-400); }
.dlf__tx p { margin: 0; max-width: 560px; font-size: 17px; line-height: 1.55; color: var(--neutral-600); }
.dlf__ac { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; padding: 30px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.dlf__alba { display: flex; align-items: center; gap: 12px; padding: 0; border: 0; background: none; text-align: left; cursor: pointer; font-family: var(--font); color: var(--blue-900); }
.dlf__av { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--blue-900); color: var(--yellow); }
.dlf__av svg { width: 22px; height: 22px; }
.dlf__alba span:last-child { display: flex; flex-direction: column; } .dlf__alba b { font-weight: 500; font-size: 15px; } .dlf__alba em { font-style: normal; font-size: 14px; color: var(--neutral-600); text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }

@media (max-width: 1100px) {
  .dlh__in { grid-template-columns: minmax(0, 1fr); padding: 120px 24px 72px; }
  .dlh__palco { order: -1; max-width: 420px; width: 100%; margin: -20px auto -30px; }
  .dlp__in, .dlc__in, .dlf__in { padding: 80px 24px; }
  .dlp__set { grid-template-columns: 1fr 1fr; } .dlp__c--f { grid-column: 1 / -1; }
  .dlc__est { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dlf__in { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .dlp__set { grid-template-columns: 1fr; }
  .dlh__arq .btn { width: 100%; } .dlh__mail { right: -4%; top: 4%; }
  .dlc__est { gap: 30px 16px; }
}
.g3s__pts[hidden] { display: none; }
.g3d__palco { width: min(1040px, 100%); aspect-ratio: 2200 / 1520; max-height: none; margin: -30px auto -40px; }
.g3d__tela img { height: auto; }
.g3d__ctl { inset: 50% -70px auto; }
.g3r__in { grid-template-columns: minmax(0, 1fr); gap: 40px; }
.g3r__in .s2-cab { position: static; }
@media (max-width: 1240px) { .g3d__ctl { inset: 50% 0 auto; } }
@media (max-width: 640px) { .g3d__palco { aspect-ratio: 2200 / 1520; margin: -10px auto; } }
.fc.is-destaque select { box-shadow: 0 0 0 3px var(--yellow); transition: box-shadow .3s; }
@media (max-width: 899px) { .tvx__lista li > .tvx__p { margin: 10px 0 14px; } .tvx__lista li > .tvx__p:not([hidden]) { animation: g3-entra .4s both; } .tvx__palco:empty { display: none; } }

/* ================= v7.9 | CG50: CTA personalizado, monte o seu hub ================= */
.cgx--v2 .cgx__in { grid-template-columns: minmax(0, 1fr); padding-bottom: 56px; }
.cgx--v2 .cgx__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cgm { max-width: 1286px; margin: 0 auto; padding: 0 40px 112px; }
.cgm__in { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 48px; padding: 48px; border-radius: 36px; background: radial-gradient(60% 80% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), var(--blue-900); color: var(--neutral-100); box-shadow: 0 60px 100px -60px rgba(1, 29, 38, .7); }
.cgm__form { display: flex; flex-direction: column; gap: 18px; }
.cgm__k { margin: 0; display: inline-flex; align-items: center; gap: 10px; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--yellow); }
.cgm h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(32px, 3.4vw, 50px); line-height: 1.03; letter-spacing: -.03em; color: #fff; }
.cgm h2 em { font-style: italic; color: var(--yellow); }
.cgm__lead { margin: 0; font-size: 16px; line-height: 1.55; color: var(--neutral-300); max-width: 500px; }
.cgm__passo { display: flex; flex-direction: column; gap: 12px; }
.cgm__passo[hidden] { display: none; }
.cgm .pr__sub { margin: 8px 0 0; color: #fff; } .cgm .pr__sub em { font-style: normal; font-size: 12.5px; color: var(--neutral-400); margin-left: 6px; }
.cgm .fc label { color: var(--neutral-200); }
.cgm .fc input { background: rgba(249, 250, 250, .08); border-color: rgba(249, 250, 250, .16); color: #fff; }
.cgm .ch span { background: rgba(249, 250, 250, .06); color: var(--neutral-100); border-color: rgba(249, 250, 250, .16); }
.cgm .ch input:checked + span { background: var(--yellow); color: var(--blue-900); border-color: var(--yellow); }
.cgm__ano { max-width: 160px; } .cgm__ano[hidden] { display: none; }
.cgm__cores { display: flex; gap: 10px; }
.cgm__cor { position: relative; cursor: pointer; }
.cgm__cor input { position: absolute; opacity: 0; }
.cgm__cor span { display: block; width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg, var(--c1) 50%, var(--c2) 50%); box-shadow: 0 0 0 1px rgba(249, 250, 250, .25); transition: box-shadow .25s, transform .25s; }
.cgm__cor input:checked + span { box-shadow: 0 0 0 3px var(--blue-900), 0 0 0 5px var(--yellow); transform: scale(1.05); }
.cgm__cor input:focus-visible + span { outline: 2px solid var(--yellow); outline-offset: 4px; }
.cgm__passo > .btn { align-self: flex-start; margin-top: 10px; }
.cgm__ok { margin: 0; display: flex; gap: 10px; align-items: center; padding: 12px 16px; border-radius: 14px; background: rgba(244, 182, 63, .12); color: var(--yellow); font-size: 15px; }
.cgm .fx-aceite label { color: var(--neutral-300); }
.cgm__acoes { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; }
.cgm .bq__voltar { color: var(--neutral-200); }
.cgm__pe { margin: 6px 0 0; display: flex; flex-wrap: wrap; gap: 8px 22px; padding-top: 16px; border-top: 1px solid rgba(249, 250, 250, .12); font-size: 13px; color: var(--neutral-400); }
.cgm__pe span::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 8px; border-radius: 50%; background: var(--yellow); vertical-align: middle; }
.cgm__vis { position: sticky; top: 100px; align-self: start; display: flex; flex-direction: column; border-radius: 22px; overflow: hidden; background: #fff; box-shadow: 0 50px 80px -40px rgba(0, 0, 0, .7); transform: perspective(1800px) rotateY(-6deg) rotateX(2deg); transition: transform .6s; }
.cgm__vis:hover { transform: none; }
.cgm__nav { display: flex; align-items: center; gap: 6px; padding: 12px 16px; background: #EDEBE5; }
.cgm__nav i { width: 10px; height: 10px; border-radius: 50%; background: #D3CFC6; }
.cgm__nav em { margin-left: 12px; padding: 5px 12px; border-radius: 8px; background: #fff; font-style: normal; font-size: 12px; color: var(--neutral-600); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cgm__tela { display: flex; flex-direction: column; background: #fff; color: var(--c1); transition: color .4s; }
.cgm__top { display: flex; justify-content: space-between; align-items: center; padding: 16px 22px; }
.cgm__top b { font-weight: 700; font-size: 16px; letter-spacing: -.01em; }
.cgm__top span { display: flex; gap: 14px; } .cgm__top span i { width: 38px; height: 6px; border-radius: 4px; background: currentColor; opacity: .25; }
.cgm__hero { position: relative; overflow: hidden; margin: 0 14px; padding: 34px 28px 30px; border-radius: 16px; background: radial-gradient(70% 90% at 100% 0%, color-mix(in srgb, var(--c2) 35%, transparent), transparent 70%), var(--c1); color: #fff; transition: background .4s; }
.cgm__selo { margin: 0 0 12px; display: inline-block; padding: 6px 12px; border-radius: 99px; background: var(--c2); color: var(--c1); font-weight: 700; font-size: 13px; letter-spacing: .04em; transition: background .4s, color .4s; }
.cgm__h { margin: 0; font-weight: 300; font-size: clamp(22px, 2.2vw, 32px); line-height: 1.08; letter-spacing: -.02em; max-width: 90%; }
.cgm__sub { margin: 10px 0 0; font-size: 13.5px; opacity: .75; }
.cgm__lin { position: relative; display: flex; justify-content: space-between; margin-top: 22px; padding-top: 10px; }
.cgm__lin::before { content: ""; position: absolute; left: 0; right: 0; top: 14px; height: 1px; background: rgba(255, 255, 255, .3); }
.cgm__lin i { position: relative; width: 9px; height: 9px; border-radius: 50%; background: rgba(255, 255, 255, .5); }
.cgm__lin i:nth-child(3n) { background: var(--c2); }
.cgm__portas { list-style: none; margin: 0; padding: 14px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; min-height: 120px; }
.cgm__portas li { display: flex; flex-direction: column; justify-content: space-between; gap: 18px; min-height: 92px; padding: 14px; border-radius: 12px; background: color-mix(in srgb, var(--c1) 7%, #fff); animation: g3-pop .45s cubic-bezier(.2, .7, .2, 1) both; }
.cgm__portas li i { width: 26px; height: 26px; border-radius: 8px; background: var(--c1); opacity: .9; }
.cgm__portas li:nth-child(2n) i { background: var(--c2); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--c1) 20%, transparent); }
.cgm__portas li b { font-weight: 500; font-size: 13px; line-height: 1.25; color: var(--c1); }
.cgm__leg { margin: 0; padding: 10px 16px 14px; font-size: 12px; color: var(--neutral-500); background: #fff; }
.cgm__prox { display: flex; align-items: center; gap: 14px; justify-content: flex-end; margin-top: 22px; font-size: 15px; color: var(--neutral-900); text-decoration: none; }
.cgm__prox span { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.cgm__prox b { font-weight: 400; } .cgm__prox svg { color: #c98a12; transition: transform .3s; } .cgm__prox:hover svg { transform: translateX(4px); }
@media (max-width: 1100px) {
  .cgm { padding: 0 24px 80px; } .cgm__in { grid-template-columns: minmax(0, 1fr); padding: 28px; gap: 30px; }
  .cgm__vis { position: static; order: -1; transform: none; }
  .cgx--v2 .cgx__lista { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .cgm__in { padding: 22px 18px; border-radius: 26px; } .cgm__portas { grid-template-columns: 1fr 1fr; } .cgm__hero { padding: 24px 18px; }
  .cgx--v2 .cgx__lista { grid-template-columns: minmax(0, 1fr); } .cgm__acoes .btn { width: 100%; }
}

/* ================= v7.9 | Post editorial (pe3) ================= */
.pe3bar { position: fixed; left: 0; right: 0; top: 0; z-index: 70; height: 3px; pointer-events: none; }
.pe3bar i { display: block; height: 100%; background: var(--yellow); transform-origin: left; transform: scaleX(0); }
.pe3 { background: #fff; color: var(--neutral-900); }
.pe3h { max-width: 880px; margin: 0 auto; padding: 140px 24px 40px; display: flex; flex-direction: column; gap: 22px; }
.pe3h__meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 13px; letter-spacing: .06em; color: var(--neutral-500); }
.pe3h__meta span:not(:first-child)::before { content: ""; display: inline-block; width: 4px; height: 4px; margin-right: 14px; border-radius: 50%; background: var(--neutral-300); vertical-align: middle; }
.pe3 h1 { margin: 0; font-weight: 400; font-size: clamp(32px, 4vw, 52px); line-height: 1.08; letter-spacing: -.025em; color: var(--blue-900); }
.pe3h__dek { margin: 0; font-size: 20px; line-height: 1.55; color: var(--neutral-700); }
.pe3h__by { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 0; border-top: 1px solid var(--neutral-100); border-bottom: 1px solid var(--neutral-100); }
.pe3h__autor { display: flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; }
.pe3h__autor img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; }
.pe3h__autor span { display: flex; flex-direction: column; } .pe3h__autor b { font-weight: 500; font-size: 15.5px; color: var(--blue-900); } .pe3h__autor:hover b { text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.pe3h__autor em { font-style: normal; font-size: 13.5px; color: var(--neutral-500); }
.pe3s { display: flex; align-items: center; gap: 8px; }
.pe3s span { margin-right: 4px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.pe3s a, .pe3s button { display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 50%; background: #F3F2EE; color: var(--blue-900); cursor: pointer; transition: background .25s, color .25s; }
.pe3s a:hover, .pe3s button:hover { background: var(--blue-900); color: var(--yellow); }
.pe3s button.is-ok { background: #2E8B57; color: #fff; }
.pe3capa { max-width: 1200px; margin: 10px auto 0; padding: 0 24px; }
.pe3capa img, .pe3f img { display: block; width: 100%; height: auto; border-radius: 22px; }
.pe3capa figcaption, .pe3f figcaption { margin-top: 12px; font-size: 13.5px; line-height: 1.5; color: var(--neutral-500); }
.pe3capa figcaption { max-width: 832px; margin-left: auto; margin-right: auto; }
.pe3__corpo { max-width: 880px; margin: 0 auto; padding: 56px 24px 100px; font-size: 18.5px; line-height: 1.75; color: var(--neutral-800); }
.pe3__corpo > * { max-width: 720px; margin-left: auto; margin-right: auto; }
.pe3__corpo h2 { margin-top: 64px; margin-bottom: 18px; font-weight: 400; font-size: clamp(26px, 2.6vw, 34px); line-height: 1.15; letter-spacing: -.02em; color: var(--blue-900); scroll-margin-top: 100px; }
.pe3__corpo h3 { margin-top: 36px; margin-bottom: 8px; font-weight: 500; font-size: 21px; line-height: 1.3; color: var(--blue-900); }
.pe3__corpo p { margin-top: 0; margin-bottom: 20px; }
.pe3__corpo strong { font-weight: 600; color: var(--blue-900); }
.pe3__corpo a:not(.btn):not(.pe3a__foto):not(.pe3a__n) { color: var(--blue-700); text-decoration: underline; text-decoration-color: var(--yellow); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.pe3__corpo ul, .pe3__corpo ol:not([class]) { padding-left: 22px; margin-bottom: 24px; } .pe3__corpo li { margin-bottom: 10px; }
.pe3__corpo .pe3f { max-width: 880px; margin: 40px auto 44px; }
.pe3__corpo .pt__tab { max-width: 880px; margin: 34px auto 40px; overflow-x: auto; border-radius: 18px; box-shadow: 0 0 0 1px var(--neutral-100); }
.pe3__corpo table { width: 100%; border-collapse: collapse; font-size: 16px; line-height: 1.5; }
.pe3__corpo caption { padding: 16px 20px; text-align: left; font-weight: 500; color: var(--blue-900); background: #F3F2EE; }
.pe3__corpo th { padding: 14px 20px; text-align: left; font-weight: 500; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; background: var(--blue-900); color: #fff; }
.pe3__corpo th:first-child { color: var(--yellow); }
.pe3__corpo td { padding: 14px 20px; border-top: 1px solid var(--neutral-100); vertical-align: top; }
.pe3__corpo td:first-child { background: #FFFAEE; }
.pe3__corpo .pt__crit { margin: 34px auto 40px; padding: 30px; border-radius: 22px; background: var(--blue-900); color: var(--neutral-100); }
.pe3__corpo .pt__crit-t { margin-bottom: 18px; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.pe3__corpo .pt__crit ol { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; counter-reset: c; }
.pe3__corpo .pt__crit li { counter-increment: c; display: grid; grid-template-columns: 40px 170px 1fr; gap: 12px; align-items: baseline; margin: 0; padding: 12px 0; border-top: 1px solid rgba(249, 250, 250, .12); font-size: 16.5px; }
.pe3__corpo .pt__crit li::before { content: "0" counter(c); font-size: 14px; color: var(--neutral-400); }
.pe3__corpo .pt__crit b { font-weight: 500; color: #fff; } .pe3__corpo .pt__crit span { color: var(--neutral-300); }
.pe3c { max-width: 880px !important; margin: 44px auto 48px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); border-radius: 26px; overflow: hidden; background: #F3F2EE; }
.pe3c__vis { display: block; min-height: 260px; background: var(--blue-900); } .pe3c__vis > * { width: 100%; height: 100%; }
.pe3c__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 30px; line-height: 1.5; }
.pe3c__k { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--blue-700); }
.pe3c__tx b { font-weight: 400; font-size: 24px; line-height: 1.2; color: var(--blue-900); }
.pe3c__tx > span:not(.pe3c__k) { font-size: 16px; color: var(--neutral-600); margin-bottom: 8px; }
.pe3__fim { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-top: 44px; padding: 20px 0; border-top: 1px solid var(--neutral-100); }
.pe3__alba { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 99px; background: #F3F2EE; color: var(--blue-900); font: 500 14px var(--font); cursor: pointer; }
.pe3__alba svg { color: #c98a12; }
.pe3a { display: grid; grid-template-columns: 96px 1fr; gap: 22px; margin-top: 30px; padding: 28px; border-radius: 24px; background: #F3F2EE; font-size: 16px; line-height: 1.55; }
.pe3a__foto img { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; }
.pe3a p { margin: 0 0 8px; } .pe3a__k { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.pe3a__n { font-size: 22px; color: var(--blue-900); text-decoration: none; } .pe3a__n:hover { text-decoration: underline; text-decoration-color: var(--yellow); }
.pe3a__c { color: var(--neutral-600); font-size: 14.5px; }
.pe3a__lk { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 12px !important; }
.pe3a__lk a { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; font-size: 14.5px; color: var(--blue-900) !important; text-decoration: none !important; }
.pe3x { background: radial-gradient(60% 80% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: #fff; overflow: hidden; }
.pe3x__in { max-width: 1286px; margin: 0 auto; padding: 100px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 50px; align-items: center; }
.pe3x__tx { display: flex; flex-direction: column; gap: 20px; }
.pe3x h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.04; letter-spacing: -.03em; } .pe3x h2 em { font-style: italic; color: var(--yellow); }
.pe3x p { margin: 0; font-size: 17px; line-height: 1.55; color: var(--neutral-300); max-width: 480px; }
.pe3x__alba { background: none; border: 0; cursor: pointer; font-family: var(--font); }
.pe3x__img { width: 100%; height: auto; border-radius: 20px; box-shadow: 0 50px 80px -40px rgba(0, 0, 0, .7); transform: perspective(1800px) rotateY(-8deg); }
.pe3n { background: #F3F2EE; }
.pe3n__in { max-width: 1286px; margin: 0 auto; padding: 100px 40px; display: flex; flex-direction: column; gap: 40px; }
.pe3n__cab { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 30px; }
.pe3n h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.4vw, 48px); line-height: 1.05; letter-spacing: -.025em; color: var(--blue-900); } .pe3n h2 .is-dim { color: var(--neutral-400); }
.pe3n__lista { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pe3r { height: 100%; display: flex; flex-direction: column; border-radius: 22px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.pe3r__th { display: block; aspect-ratio: 16 / 9; } .pe3r__th > * { width: 100%; height: 100%; }
.pe3r__tx { display: flex; flex-direction: column; gap: 8px; padding: 20px 22px 24px; }
.pe3r__tx b { font-weight: 400; font-size: 18px; line-height: 1.3; color: var(--blue-900); } .pe3r__tx em { font-style: normal; font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
@media (max-width: 900px) {
  .pe3h { padding-top: 110px; } .pe3h__dek { font-size: 18px; }
  .pe3__corpo { font-size: 17.5px; padding-top: 36px; } .pe3capa { padding: 0 12px; } .pe3capa img, .pe3f img { border-radius: 14px; }
  .pe3c { grid-template-columns: minmax(0, 1fr); } .pe3c__vis { min-height: 200px; }
  .pe3__corpo .pt__crit li { grid-template-columns: 34px 1fr; } .pe3__corpo .pt__crit li span { grid-column: 2; }
  .pe3x__in { grid-template-columns: minmax(0, 1fr); padding: 80px 24px; } .pe3x__img { transform: none; }
  .pe3n__in { padding: 80px 24px; } .pe3n__lista { grid-template-columns: minmax(0, 1fr); }
  .pe3a { grid-template-columns: 1fr; padding: 22px; }
}

/* ================= v7.9 | Página do autor (au3) ================= */
.au3 { position: relative; overflow: hidden; background: radial-gradient(60% 80% at 15% 30%, rgba(18, 89, 124, .65), transparent 70%), var(--blue-900); color: #fff; }
.au3__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 100px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 70px; align-items: center; }
.au3__foto { position: relative; }
.au3__foto img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; object-position: 50% 20%; border-radius: 32px; box-shadow: 0 60px 90px -40px rgba(0, 0, 0, .7); }
.au3__foto::before { content: ""; position: absolute; inset: -18px 18px 18px -18px; border-radius: 36px; border: 1px solid rgba(244, 182, 63, .5); z-index: -0; pointer-events: none; }
.au3__selo { position: absolute; right: -20px; bottom: 30px; margin: 0; display: flex; align-items: center; gap: 8px; padding: 12px 18px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-weight: 600; font-size: 14px; box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .5); }
.au3__tx { display: flex; flex-direction: column; gap: 22px; }
.au3__cargo { margin: 0; font-size: 13px; letter-spacing: .16em; text-transform: uppercase; color: var(--yellow); }
.au3 h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(54px, 7vw, 108px); line-height: .92; letter-spacing: -.045em; } .au3 h1 em { font-style: italic; color: var(--neutral-200); }
.au3__bio { margin: 0; max-width: 580px; font-size: 18px; line-height: 1.6; color: var(--neutral-200); }
.au3__eixo { list-style: none; padding: 26px 0 0; margin: 10px 0 0; display: flex; gap: 0; border-top: 1px solid rgba(249, 250, 250, .14); }
.au3__eixo li { position: relative; flex: 1; display: flex; flex-direction: column; gap: 4px; padding-top: 18px; }
.au3__eixo li::before { content: ""; position: absolute; left: 0; top: 0; width: 10px; height: 10px; border-radius: 50%; background: var(--yellow); }
.au3__eixo li.is-prox::before { background: none; box-shadow: inset 0 0 0 2px var(--yellow); }
.au3__eixo b { font-weight: 300; font-size: 22px; } .au3__eixo span { font-size: 13px; color: var(--neutral-300); }
.au3a { background: #F3F2EE; }
.au3a__in { max-width: 1286px; margin: 0 auto; padding: 110px 40px; display: flex; flex-direction: column; gap: 44px; }
.au3a__lista { list-style: none; padding: 0; margin: 0; }
.au3p { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); border-radius: 28px; overflow: hidden; background: #fff; color: var(--blue-900); text-decoration: none; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: box-shadow .4s, transform .4s; }
.au3p:hover { transform: translateY(-4px); box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 70px -40px rgba(1, 29, 38, .5); }
.au3p__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.au3p__tx { display: flex; flex-direction: column; gap: 14px; padding: 40px; }
.au3p__tx b { font-weight: 400; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.15; letter-spacing: -.015em; }
.au3p__tx em { font-style: normal; font-size: 16px; line-height: 1.55; color: var(--neutral-600); }
.au3p__ir { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 15px; }
.au3a__rot { margin: 0 0 16px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.au3a__temas ul { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.au3a__temas li { display: flex; flex-direction: column; gap: 6px; padding: 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.au3a__temas b { font-weight: 500; font-size: 17px; color: var(--blue-900); } .au3a__temas span { font-size: 14.5px; line-height: 1.5; color: var(--neutral-600); }
.au3c { background: var(--blue-900); color: #fff; }
.au3c__in { max-width: 1286px; margin: 0 auto; padding: 110px 40px; display: flex; flex-direction: column; gap: 44px; }
.au3c__lista { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.au3c__lista li { display: flex; flex-direction: column; gap: 12px; padding: 32px; border-radius: 24px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.au3c__lista b { font-weight: 200; font-size: 56px; line-height: 1; color: var(--yellow); }
.au3c__lista h3 { margin: 0; font-weight: 400; font-size: 22px; } .au3c__lista p { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-300); }
.au3n { background: #F3F2EE; }
.au3n__in { max-width: 1286px; margin: 0 auto; padding: 90px 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.au3n h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(30px, 3vw, 44px); line-height: 1.08; letter-spacing: -.025em; color: var(--blue-900); } .au3n h2 .is-dim { color: var(--neutral-400); }
@media (max-width: 1000px) {
  .au3__in { grid-template-columns: minmax(0, 1fr); padding: 120px 24px 80px; gap: 50px; } .au3__foto { max-width: 340px; } .au3__selo { right: -10px; }
  .au3a__in, .au3c__in { padding: 80px 24px; } .au3p { grid-template-columns: minmax(0, 1fr); } .au3p__tx { padding: 26px; }
  .au3a__temas ul { grid-template-columns: 1fr 1fr; } .au3c__lista { grid-template-columns: minmax(0, 1fr); }
  .au3n__in { grid-template-columns: minmax(0, 1fr); padding: 70px 24px; }
}
@media (max-width: 560px) { .au3__eixo { flex-wrap: wrap; row-gap: 18px; } .au3__eixo li { flex: 0 0 33%; } .au3a__temas ul { grid-template-columns: minmax(0, 1fr); } }
.pe3__corpo .pt__crit li { background: none !important; box-shadow: none !important; border-radius: 0 !important; color: inherit !important; }
.pe3__corpo .pt__crit li b { display: inline !important; color: #fff !important; }
.pe3__corpo .pt__crit li span { text-align: left !important; }

/* ================= v7.9 | Seis páginas de serviço SH (s6) ================= */
.svh--s6 .svh__txt { display: flex; flex-direction: column; gap: 22px; }
.svh--s6 h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(40px, 4.6vw, 70px); line-height: 1.02; letter-spacing: -.035em; color: #fff; }
.svh--s6 h1 em { font-style: italic; color: var(--yellow); }
.svh--s6 .svh__lead { margin: 0; max-width: 560px; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.svh--s6 .svh__ok { list-style: none; padding: 0; margin: 4px 0 0; display: flex; flex-direction: column; gap: 10px; color: var(--neutral-100); font-size: 15px; }
.svh--s6 .svh__ok li { display: flex; gap: 10px; align-items: center; } .svh--s6 .svh__ok svg { color: var(--yellow); flex: none; }
.h6v { position: relative; border-radius: 22px; overflow: visible; background: #fff; box-shadow: 0 60px 100px -40px rgba(0, 0, 0, .7); transform: perspective(1800px) rotateY(-8deg) rotateX(3deg); animation: g3-sobe 1s cubic-bezier(.2, .7, .2, 1) .2s both; }
.h6v__bar { margin: 0; display: flex; align-items: center; gap: 6px; padding: 12px 16px; border-radius: 22px 22px 0 0; background: #EDEBE5; font-size: 12px; color: var(--neutral-600); }
.h6v__bar i { width: 10px; height: 10px; border-radius: 50%; background: #D3CFC6; } .h6v__bar span { margin-left: 10px; padding: 4px 12px; border-radius: 8px; background: #fff; }
.h6v__tela { padding: 18px; border-radius: 0 0 22px 22px; background: #fff; }
.h6v__selo { position: absolute; left: -26px; bottom: -22px; margin: 0; display: flex; align-items: center; gap: 8px; padding: 12px 18px; border-radius: 99px; background: var(--yellow); color: var(--blue-900); font-weight: 600; font-size: 14px; box-shadow: 0 20px 40px -12px rgba(0, 0, 0, .5); animation: g3-pop .6s cubic-bezier(.2, .7, .2, 1) 1s both; }

/* mini telas */
.m6 { color: var(--blue-900); font-size: 14px; }
.m6__t { margin: 0 0 14px; font-weight: 600; font-size: 15px; }
.m6__kpi { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.m6__kpi li { display: flex; flex-direction: column; gap: 2px; padding: 12px; border-radius: 12px; background: #F3F2EE; min-width: 0; }
.m6__kpi span { font-size: 11.5px; color: var(--neutral-500); } .m6__kpi b { font-weight: 500; font-size: 19px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.m6__kpi em { font-style: normal; font-size: 11.5px; color: var(--neutral-500); } .m6__kpi em.is-up { color: #2E8B57; } .m6__kpi em.is-down { color: #C9473A; }
.m6__bar { display: flex; align-items: flex-end; gap: 6px; height: 96px; margin-top: 14px; padding: 10px; border-radius: 12px; background: #F3F2EE; }
.m6__bar i { flex: 1; height: calc(var(--h) * 100%); border-radius: 5px 5px 2px 2px; background: rgba(18, 89, 124, .35); transform-origin: bottom; animation: m6-cresce .8s cubic-bezier(.2, .7, .2, 1) both; }
.m6__bar i.is-on { background: var(--yellow); }
@keyframes m6-cresce { from { transform: scaleY(0); } }
.m6__al { margin: 12px 0 0; display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 12px; background: var(--blue-900); color: var(--neutral-100); font-size: 13px; line-height: 1.45; }
.m6__al svg { flex: none; color: var(--yellow); margin-top: 2px; }
.m6__tb { display: flex; flex-direction: column; border-radius: 12px; overflow: hidden; box-shadow: 0 0 0 1px #ECEAE4; }
.m6__tb p { margin: 0; display: grid; grid-template-columns: repeat(var(--n), minmax(0, 1fr)); gap: 10px; padding: 11px 14px; border-top: 1px solid #EFEDE7; font-size: 13.5px; }
.m6__tb p.m6__th { border-top: 0; background: #F7F6F2; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-500); }
.m6__tb p.is-on { background: #FFF6DF; box-shadow: inset 3px 0 var(--yellow); }
.m6--chat { display: flex; flex-direction: column; gap: 12px; }
.m6__q { margin: 0; align-self: flex-end; max-width: 82%; padding: 12px 16px; border-radius: 16px 16px 4px 16px; background: var(--blue-900); color: #fff; line-height: 1.45; }
.m6__a { margin: 0; display: flex; gap: 10px; max-width: 92%; }
.m6__av { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); }
.m6__a > span:last-child { display: flex; flex-direction: column; gap: 8px; padding: 12px 16px; border-radius: 4px 16px 16px 16px; background: #F3F2EE; line-height: 1.5; }
.m6__f { align-self: flex-start; font-style: normal; font-size: 11.5px; padding: 4px 10px; border-radius: 99px; background: #fff; color: var(--blue-700); box-shadow: 0 0 0 1px #E5E2DA; }
.m6--fluxo ol { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; position: relative; }
.m6--fluxo ol::before { content: ""; position: absolute; left: 10%; right: 10%; top: 50%; height: 2px; background: repeating-linear-gradient(90deg, var(--yellow) 0 8px, transparent 8px 14px); }
.m6--fluxo li { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 16px 12px; border-radius: 14px; background: #F3F2EE; text-align: center; animation: g3-pop .5s both; animation-delay: calc(var(--d) * 120ms); }
.m6--fluxo li:nth-child(odd) { background: var(--blue-900); color: #fff; } .m6--fluxo li:nth-child(odd) span { color: var(--neutral-300); }
.m6--fluxo b { font-weight: 600; font-size: 14px; } .m6--fluxo span { font-size: 12px; color: var(--neutral-500); }
.m6__nota { margin: 14px 0 0; text-align: center; font-size: 12.5px; color: var(--neutral-500); }
.m6--app { display: grid; place-items: center; }
.m6__fone { width: min(260px, 100%); padding: 20px 16px; border-radius: 30px; background: var(--blue-900); color: #fff; box-shadow: inset 0 0 0 6px #0B2A35; }
.m6__ft { margin: 4px 0 14px; font-weight: 600; font-size: 18px; text-align: center; }
.m6__fone ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.m6__fone li { display: flex; gap: 10px; align-items: center; padding: 10px; border-radius: 14px; background: rgba(249, 250, 250, .08); }
.m6__fone li i { flex: none; width: 28px; height: 28px; border-radius: 9px; background: var(--yellow); }
.m6__fone li:nth-child(2) i { background: #8FC7E8; } .m6__fone li span { display: flex; flex-direction: column; } .m6__fone li b { font-weight: 500; font-size: 13.5px; } .m6__fone li em { font-style: normal; font-size: 11.5px; color: var(--neutral-300); }
.m6__fr { margin: 12px 0 0; display: flex; gap: 8px; align-items: center; padding: 10px 12px; border-radius: 12px; background: rgba(244, 182, 63, .15); color: var(--yellow); font-size: 12px; }
.m6--status ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; border-radius: 12px; overflow: hidden; box-shadow: 0 0 0 1px #ECEAE4; }
.m6--status li { display: grid; grid-template-columns: 14px 1fr auto; gap: 12px; align-items: center; padding: 13px 14px; border-top: 1px solid #EFEDE7; }
.m6--status li:first-child { border-top: 0; }
.m6--status li i { width: 10px; height: 10px; border-radius: 50%; background: #2E8B57; box-shadow: 0 0 0 4px rgba(46, 139, 87, .15); }
.m6--status li.s--av i { background: var(--yellow); box-shadow: 0 0 0 4px rgba(244, 182, 63, .2); }
.m6--status b { font-weight: 500; } .m6--status span { font-size: 12.5px; color: var(--neutral-500); }

/* seção da demonstração */
.s6d { background: #F4F5F3; color: var(--neutral-900); }
.s6d__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px 80px; display: flex; flex-direction: column; gap: 44px; }
.s6ad__rot { margin: 0 0 14px; display: flex; align-items: center; gap: 8px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.s6ad__aviso { margin: 14px 0 0; font-size: 12px; color: var(--neutral-400); }
.s6ad__tg { display: inline-flex; padding: 4px; border-radius: 99px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.s6ad__tg button { padding: 11px 18px; border: 0; border-radius: 99px; background: none; color: var(--neutral-600); font: 500 14px var(--font); cursor: pointer; transition: background .3s, color .3s; }
.s6ad__tg button.is-on { background: var(--blue-900); color: #fff; }
.s6ad__tg button.is-on[data-ad-m="depois"], .s6ad__tg button.is-on[data-fl-m="auto"] { background: var(--yellow); color: var(--blue-900); }

/* portais: antes e depois */
.s6ad { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 50px; align-items: center; }
.s6ad__tx { display: flex; flex-direction: column; gap: 22px; align-items: flex-start; }
.s6ad__pts { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; width: 100%; }
.s6ad__pts[hidden] { display: none; }
.s6ad__pts li { display: flex; flex-direction: column; gap: 4px; padding: 16px 20px; border-radius: 16px; background: #fff; border-left: 4px solid #C9473A; animation: g3-entra .5s both; animation-delay: calc(var(--d) * 90ms); }
.s6ad__pts[data-ad-pts="depois"] li { border-left-color: var(--yellow); }
.s6ad__pts b { font-weight: 500; font-size: 17px; color: var(--blue-900); } .s6ad__pts span { font-size: 15px; line-height: 1.45; color: var(--neutral-600); }
.s6ad__palco { position: relative; display: grid; padding: 28px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); min-height: 420px; }
.s6ad__cena { grid-area: 1 / 1; transition: opacity .5s, transform .6s cubic-bezier(.2, .7, .2, 1); }
[data-modo="antes"] .s6ad__cena--depois, [data-modo="depois"] .s6ad__cena--antes { opacity: 0; transform: translateY(16px); pointer-events: none; }
.s6ad__palco .s6ad__aviso { grid-area: 2 / 1; }
.s6p__mail { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.s6p__mail li { display: grid; grid-template-columns: 130px 1fr auto; gap: 12px; align-items: center; padding: 13px 16px; border-radius: 12px; background: #F7F6F2; font-size: 14px; animation: g3-entra .4s both; animation-delay: calc(var(--d) * 80ms); }
.s6p__mail b { font-weight: 600; } .s6p__mail span { color: var(--neutral-600); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .s6p__mail em { font-style: normal; font-size: 12px; color: var(--neutral-400); }
.s6p__mail li:nth-child(odd) span::before { content: ""; display: inline-block; width: 8px; height: 10px; margin-right: 8px; border: 1.5px solid #C9473A; border-radius: 2px; vertical-align: -1px; }
.s6p__cont { margin: 16px 0 0; font-size: 14px; color: var(--neutral-600); } .s6p__cont b { font-weight: 500; font-size: 22px; color: #C9473A; margin-right: 4px; }
.s6p__top { display: flex; gap: 8px; margin-bottom: 16px; } .s6p__top span { padding: 8px 14px; border-radius: 99px; background: #F3F2EE; font-size: 13px; } .s6p__top .is-on { background: var(--blue-900); color: #fff; }
.s6p__rank { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.s6p__rank li { display: grid; grid-template-columns: 130px 1fr 48px; gap: 12px; align-items: center; font-size: 14px; }
.s6p__rank i { height: 12px; border-radius: 6px; background: linear-gradient(90deg, var(--blue-700) calc(var(--w) * 100%), #EEF0EF 0); }
.s6p__rank li:nth-child(n+3) i { background: linear-gradient(90deg, var(--yellow) calc(var(--w) * 100%), #EEF0EF 0); }
.s6p__rank b { font-weight: 600; text-align: right; }
.s6p__ia { margin: 18px 0 0; display: flex; gap: 10px; padding: 14px 16px; border-radius: 14px; background: var(--blue-900); color: var(--neutral-100); font-size: 14px; line-height: 1.5; }
.s6p__ia svg { flex: none; color: var(--yellow); margin-top: 3px; } .s6p__ia b { color: var(--yellow); font-weight: 500; }

/* análises */
.s6an { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 30px; align-items: start; }
.s6an__painel { padding: 28px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); }
.m6__kpi--g b { font-size: 22px; }
.s6an__graf { display: flex; align-items: flex-end; gap: 6px; height: 200px; margin-top: 16px; padding: 14px; border-radius: 14px; background: #F3F2EE; }
.s6an__graf i { flex: 1; height: calc(var(--h) * 100%); border-radius: 5px 5px 2px 2px; background: rgba(18, 89, 124, .35); }
.s6an__graf i:nth-last-child(-n+4) { background: rgba(201, 71, 58, .45); }
.s6an__lado { display: flex; flex-direction: column; gap: 18px; align-items: flex-start; }
.s6an__tg { display: inline-flex; padding: 4px; border-radius: 99px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.s6an__tg button { padding: 10px 18px; border: 0; border-radius: 99px; background: none; color: var(--neutral-600); font: 500 14px var(--font); cursor: pointer; }
.s6an__tg button.is-on { background: var(--blue-900); color: #fff; }
.s6an__ld { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 15px; color: var(--blue-700); }
.s6an__ld[hidden], .s6an__res[hidden], .s6an__ins[hidden] { display: none; }
.s6an__res { width: 100%; }
.s6an__ins { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.s6an__ins li { display: flex; flex-direction: column; gap: 6px; padding: 20px 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); animation: g3-entra .5s both; animation-delay: calc(var(--d) * 160ms); }
.s6an__k { margin: 0; align-self: flex-start; padding: 4px 10px; border-radius: 99px; font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; background: rgba(201, 71, 58, .12); color: #A83A2E; }
.s6an__k--resumo { background: rgba(18, 89, 124, .12); color: var(--blue-700); }
.s6an__ins b { font-weight: 500; font-size: 18px; color: var(--blue-900); line-height: 1.3; } .s6an__ins li > span { font-size: 15px; color: var(--neutral-600); }
.s6an__rec { margin: 6px 0 0; padding: 12px 14px; border-radius: 12px; background: #FFF6DF; font-size: 14.5px; line-height: 1.45; color: var(--neutral-900); }
.s6an__rec em { display: block; font-style: normal; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #8A5A00; margin-bottom: 2px; }
.s6an__src { margin: 0; font-size: 12.5px; color: var(--neutral-500); }
.s6an__dec { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 6px; }
.s6an__dec button { padding: 8px 14px; border: 0; border-radius: 10px; background: #F3F2EE; color: var(--blue-900); font: 500 13.5px var(--font); cursor: pointer; }
.s6an__dec button[data-an-ok] { background: var(--blue-900); color: #fff; }
.s6an__dec.is-feito button { display: none; } .s6an__st { font-size: 13.5px; font-weight: 500; color: #2E8B57; } .s6an__dec.is-desc .s6an__st { color: var(--neutral-500); }
.s6an__nota { margin: 14px 0 0; font-size: 13.5px; color: var(--neutral-500); }

/* assistentes */
.s6ch { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 40px; align-items: start; }
.s6ch__lado { display: flex; flex-direction: column; gap: 16px; }
.s6ch__rot { margin: 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.s6ch__qs { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.s6ch__qs button { width: 100%; padding: 16px 18px; border: 0; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); text-align: left; font: 15.5px var(--font); color: var(--blue-900); cursor: pointer; transition: box-shadow .25s, transform .25s; }
.s6ch__qs button:hover { box-shadow: 0 0 0 2px var(--yellow); transform: translateX(4px); }
.s6ch__qs button.is-feita { opacity: .55; }
.s6ch__fonte { display: flex; align-items: center; gap: 10px; font-size: 14.5px; color: var(--neutral-700); cursor: pointer; }
.s6ch__fonte input { width: 18px; height: 18px; accent-color: var(--blue-900); }
.s6ch__base { list-style: none; padding: 16px 0 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; border-top: 1px solid rgba(34, 37, 38, .08); }
.s6ch__base li { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 99px; background: #fff; font-size: 13px; color: var(--blue-900); box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); }
.s6ch__base li svg { color: #2E8B57; } .s6ch__base li.is-off { background: none; color: var(--neutral-500); box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .14); }
.s6ch__base li.is-off em { font-style: normal; font-size: 11px; color: #A83A2E; }
.s6ch__app { display: flex; flex-direction: column; border-radius: 28px; padding: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); min-height: 460px; }
.s6ch__top { margin: 0 0 16px; display: flex; align-items: center; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid #EFEDE7; }
.s6ch__av { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--blue-900); color: var(--yellow); }
.s6ch__top span:last-child { display: flex; flex-direction: column; } .s6ch__top b { font-weight: 600; font-size: 15px; color: var(--blue-900); } .s6ch__top em { font-style: normal; font-size: 12.5px; color: var(--neutral-500); }
.s6ch__msgs { flex: 1; display: flex; flex-direction: column; gap: 12px; max-height: 420px; overflow-y: auto; }
.s6ch__m { margin: 0; max-width: 86%; padding: 12px 16px; font-size: 15px; line-height: 1.5; animation: g3-pop .4s both; }
.s6ch__m--eu { align-self: flex-end; border-radius: 18px 18px 4px 18px; background: var(--blue-900); color: #fff; }
.s6ch__m--ia { align-self: flex-start; border-radius: 4px 18px 18px 18px; background: #F3F2EE; color: var(--neutral-900); }
.s6ch__m--nao { box-shadow: inset 3px 0 #C9473A; }
.s6ch__m b { font-weight: 600; color: var(--blue-900); }
.s6ch__src { display: block; margin-top: 8px; font-size: 12px; color: var(--blue-700); }
.s6ch__src::before { content: ""; display: inline-block; width: 8px; height: 10px; margin-right: 6px; border: 1.5px solid currentColor; border-radius: 2px; vertical-align: -1px; }
[data-sem-fonte] .s6ch__src { display: none; }
.s6ch__dig { align-self: flex-start; display: flex; gap: 4px; padding: 14px 16px; border-radius: 4px 18px 18px 18px; background: #F3F2EE; }
.s6ch__dig i { width: 7px; height: 7px; border-radius: 50%; background: var(--neutral-400); animation: s6-dig 1s infinite; } .s6ch__dig i:nth-child(2) { animation-delay: .15s; } .s6ch__dig i:nth-child(3) { animation-delay: .3s; }
@keyframes s6-dig { 50% { transform: translateY(-4px); opacity: .5; } }

/* automação */
.s6fl { display: flex; flex-direction: column; gap: 26px; align-items: flex-start; }
.s6fl__palco { width: 100%; position: relative; display: grid; padding: 30px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); min-height: 380px; }
.s6fl__manual, .s6fl__auto { grid-area: 1 / 1; transition: opacity .5s, transform .6s cubic-bezier(.2, .7, .2, 1); }
[data-modo="manual"] .s6fl__auto, [data-modo="auto"] .s6fl__manual { opacity: 0; transform: translateY(16px); pointer-events: none; visibility: hidden; }
.s6fl__palco .s6ad__aviso { grid-area: 2 / 1; }
.s6fl__manual ol { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; counter-reset: m; }
.s6fl__manual li { counter-increment: m; position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 18px; min-height: 150px; padding: 20px; border-radius: 18px; background: #FBEDEA; }
.s6fl__manual li::before { content: "0" counter(m); font-size: 13px; color: #A83A2E; }
.s6fl__manual li span { font-size: 15.5px; line-height: 1.35; color: var(--neutral-900); } .s6fl__manual li em { font-style: normal; font-weight: 500; font-size: 22px; color: #A83A2E; }
.s6fl__tot { margin: 20px 0 0; font-size: 15px; color: var(--neutral-600); } .s6fl__tot b { font-weight: 500; font-size: 26px; color: #A83A2E; margin-right: 6px; }
.s6fl__nos { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; position: relative; }
.s6fl__nos::before { content: ""; position: absolute; left: 8%; right: 8%; top: 34px; height: 2px; background: repeating-linear-gradient(90deg, #D9D6CC 0 8px, transparent 8px 14px); }
.s6fl__no { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.s6fl__ic { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 20px; background: #F3F2EE; font-weight: 500; font-size: 20px; color: var(--blue-900); transition: background .3s, color .3s, transform .3s, box-shadow .3s; }
.s6fl__no b { font-weight: 600; font-size: 15px; color: var(--blue-900); } .s6fl__no em { font-style: normal; font-size: 12.5px; color: var(--neutral-500); }
.s6fl__no.is-on .s6fl__ic { background: var(--yellow); transform: scale(1.08); box-shadow: 0 0 0 8px rgba(244, 182, 63, .2); }
.s6fl__no.is-ok .s6fl__ic { background: var(--blue-900); color: var(--yellow); }
.s6fl__ctl { margin-top: 30px; display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: start; }
.s6fl__log { list-style: none; padding: 14px 16px; margin: 0; min-height: 132px; border-radius: 14px; background: var(--blue-900); color: var(--neutral-200); font: 13px/1.7 ui-monospace, SFMono-Regular, Menlo, monospace; }
.s6fl__log li { animation: g3-entra .3s both; } .s6fl__log b { color: var(--yellow); font-weight: 400; margin-right: 10px; }
.s6fl__log:empty::before { content: "Aperte o botão para ver o pedido passar pelos sistemas."; color: var(--neutral-400); font-family: var(--font); }

/* monitoramento */
.s6mo { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 30px; align-items: start; }
.s6mo__painel { padding: 26px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); }
.s6mo__lista { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; border-radius: 14px; overflow: hidden; box-shadow: 0 0 0 1px #ECEAE4; }
.s6mo__lista li { display: grid; grid-template-columns: 14px minmax(0, 1fr) 120px 110px; gap: 14px; align-items: center; padding: 16px; border-top: 1px solid #EFEDE7; transition: background .4s; }
.s6mo__lista li:first-child { border-top: 0; }
.s6mo__lista li > i { width: 11px; height: 11px; border-radius: 50%; background: #2E8B57; box-shadow: 0 0 0 4px rgba(46, 139, 87, .15); transition: background .3s, box-shadow .3s; }
.s6mo__lista b { font-weight: 500; font-size: 15px; color: var(--blue-900); }
.s6mo__sp { display: flex; align-items: flex-end; gap: 2px; height: 26px; } .s6mo__sp em { flex: 1; height: calc(var(--h) * 100%); border-radius: 2px; background: rgba(46, 139, 87, .35); }
.s6mo__v { justify-self: end; padding: 5px 10px; border-radius: 99px; background: #E9F4EE; color: #1F6B44; font-size: 12px; font-weight: 600; transition: background .3s, color .3s; }
.s6mo__lista li.is-erro { background: #FBEDEA; } .s6mo__lista li.is-erro > i { background: #C9473A; box-shadow: 0 0 0 6px rgba(201, 71, 58, .2); animation: s6-pisca 1s infinite; }
.s6mo__lista li.is-erro .s6mo__v { background: #C9473A; color: #fff; } .s6mo__lista li.is-erro .s6mo__sp em:last-child { background: #C9473A; height: 100%; }
.s6mo__lista li.is-pessoa .s6mo__v { background: var(--blue-900); color: #fff; }
@keyframes s6-pisca { 50% { opacity: .4; } }
.s6mo__lado { display: flex; flex-direction: column; gap: 16px; }
.s6mo__k { margin: 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.s6mo__bts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.s6mo__b { display: flex; flex-direction: column; gap: 4px; padding: 16px; border: 0; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); text-align: left; font-family: var(--font); cursor: pointer; transition: box-shadow .25s; }
.s6mo__b b { font-weight: 600; font-size: 15px; color: var(--blue-900); } .s6mo__b span { font-size: 13px; line-height: 1.4; color: var(--neutral-600); }
.s6mo__b:hover, .s6mo__b.is-on { box-shadow: 0 0 0 2px var(--yellow); }
.s6mo__b:disabled { opacity: .5; cursor: default; }
.s6mo__tl { list-style: none; padding: 20px; margin: 0; min-height: 280px; border-radius: 22px; background: var(--blue-900); color: var(--neutral-100); display: flex; flex-direction: column; gap: 14px; }
.s6mo__tl li { display: grid; grid-template-columns: 54px 1fr; gap: 12px; font-size: 14.5px; line-height: 1.45; animation: g3-entra .4s both; }
.s6mo__tl li b { font: 500 13px ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--yellow); padding-top: 2px; }
.s6mo__tl li em { font-style: normal; display: inline-block; margin-right: 6px; padding: 2px 8px; border-radius: 6px; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; background: rgba(244, 182, 63, .18); color: var(--yellow); }
.s6mo__tl li em.p { background: rgba(143, 199, 232, .2); color: #8FC7E8; }
.s6mo__tl li.is-vazio { display: block; color: var(--neutral-400); }

/* solução personalizada */
.s6x { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: start; }
.s6x__form { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.s6x__form .pr__sub { margin: 10px 0 0; } .s6x__form .fc { width: 100%; margin-top: 8px; } .s6x__form > .btn { margin-top: 14px; }
.s6x__vis { position: sticky; top: 100px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; align-items: center; }
.s6x__dev { position: relative; display: flex; flex-direction: column; gap: 10px; padding: 26px 18px; border-radius: 34px; background: var(--blue-900); color: #fff; box-shadow: inset 0 0 0 7px #0B2A35, 0 50px 80px -40px rgba(1, 29, 38, .6); min-height: 440px; transition: border-radius .4s, min-height .4s; }
.s6x__dev[data-onde="Na web"], .s6x__dev[data-onde="Dentro do sistema atual"] { border-radius: 16px; min-height: 340px; box-shadow: inset 0 26px 0 #13262e, 0 50px 80px -40px rgba(1, 29, 38, .6); padding-top: 40px; }
.s6x__dev[data-onde="No WhatsApp"] { background: #0B3B2E; }
.s6x__ttl { margin: 0; font-weight: 600; font-size: 20px; } .s6x__para { margin: 0; font-size: 13px; color: var(--neutral-300); }
.s6x__fn { list-style: none; padding: 0; margin: 8px 0 0; display: flex; flex-direction: column; gap: 8px; }
.s6x__fn li { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 14px; background: rgba(249, 250, 250, .08); font-size: 14px; animation: g3-pop .4s both; }
.s6x__fn li i { flex: none; width: 26px; height: 26px; border-radius: 8px; background: var(--yellow); } .s6x__fn li:nth-child(2n) i { background: #8FC7E8; }
.s6x__ia { margin: auto 0 0; display: flex; gap: 8px; align-items: center; padding: 10px 12px; border-radius: 12px; background: rgba(244, 182, 63, .15); color: var(--yellow); font-size: 12.5px; }
.s6x__plano { padding: 22px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.s6x__pk { margin: 0 0 12px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--blue-700); }
.s6x__plano ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 10px; font-size: 14.5px; line-height: 1.45; color: var(--neutral-800); }
.s6x__plano li { animation: g3-entra .4s both; }

/* cenários com telas em HTML */
.s2t--s6 .s2t__tela { background: #fff; }
.s6t { position: absolute; inset: 0; display: grid; align-content: center; padding: 6% 7%; opacity: 0; transform: scale(1.03); transition: opacity .6s, transform 1s cubic-bezier(.2, .7, .2, 1); pointer-events: none; }
.s6t.is-on { opacity: 1; transform: none; }
.stc__quem--m { font-size: 15px; font-weight: 500; letter-spacing: .02em; }

@media (max-width: 1100px) {
  .s6d__in { padding: 88px 24px 64px; }
  .s6ad, .s6an, .s6ch, .s6mo, .s6x { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .s6x__vis { position: static; }
  .h6v { transform: none; } .h6v__selo { left: 10px; }
  .s6fl__manual ol { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .s6ad__palco, .s6an__painel, .s6ch__app, .s6fl__palco, .s6mo__painel { padding: 18px; border-radius: 22px; }
  .s6ad__tg { width: 100%; } .s6ad__tg button { flex: 1; padding: 10px 8px; font-size: 13px; }
  .s6p__mail li { grid-template-columns: 1fr auto; } .s6p__mail li span { grid-column: 1 / -1; grid-row: 2; }
  .s6p__rank li { grid-template-columns: 100px 1fr 40px; font-size: 13px; }
  .m6__kpi { grid-template-columns: 1fr 1fr 1fr; } .m6__kpi b { font-size: 15px; } .m6__kpi li { padding: 9px; }
  .s6fl__nos { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; } .s6fl__ic { width: 46px; height: 46px; border-radius: 14px; font-size: 16px; } .s6fl__nos::before { top: 23px; } .s6fl__no b { font-size: 12px; } .s6fl__no em { display: none; }
  .s6fl__ctl { grid-template-columns: minmax(0, 1fr); }
  .s6fl__manual li { min-height: 120px; padding: 16px; }
  .s6mo__lista li { grid-template-columns: 12px minmax(0, 1fr) auto; } .s6mo__sp { display: none; }
  .s6mo__bts { grid-template-columns: minmax(0, 1fr); }
  .s6x__vis { grid-template-columns: minmax(0, 1fr); } .s6x__dev { min-height: 360px; }
  .s6t { padding: 4%; } .s6t .m6 { font-size: 12px; } .s6t .m6__bar { height: 60px; } .s6t .m6__al { display: none; }
  .m6--fluxo ol { grid-template-columns: 1fr 1fr; } .m6--fluxo ol::before { display: none; }
}

/* ================= v8.0 | Sete páginas de serviço do Inbound (i7) ================= */
.svh--i7 .svh__in { min-height: max(680px, 92vh); }
.svh--i7 h1 { color: var(--neutral-900); } .svh--i7 h1 em { color: var(--blue-900); }
.svh--i7 .svh__lead { color: rgba(1, 29, 38, .82); }
.svh--i7 .svh__ok { color: var(--neutral-900); } .svh--i7 .svh__ok svg { color: var(--blue-900); }
.svh--i7 .ih__lk { color: var(--blue-900); text-decoration-color: var(--blue-900); }
.svh--i7 .h6v__selo { background: var(--blue-900); color: var(--yellow); }
.i7 .s6ad__tg button.is-on[data-ad-m="depois"], .i7 .s6ad__tg button.is-on[data-geo-m="depois"] { background: var(--yellow); color: var(--blue-900); }
.s6ad__tg button.is-on[data-geo-m="antes"] { background: var(--blue-900); color: #fff; }

/* SEO e GEO */
.i7g { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 44px; align-items: start; }
.i7g__lado { display: flex; flex-direction: column; gap: 20px; align-items: flex-start; }
.i7g__pts { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; width: 100%; }
.i7g__pts[hidden] { display: none; }
.i7g__pts li { display: flex; flex-direction: column; gap: 4px; padding: 16px 20px; border-radius: 16px; background: #fff; border-left: 4px solid #C9473A; animation: g3-entra .45s both; }
.i7g__pts[data-geo-pts="depois"] li { border-left-color: var(--yellow); }
.i7g__pts b { font-weight: 500; font-size: 17px; color: var(--blue-900); } .i7g__pts span { font-size: 15px; line-height: 1.45; color: var(--neutral-600); }
.i7g__nota { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--neutral-500); }
.i7g__app { padding: 26px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); }
.i7g__tabs { display: flex; flex-wrap: wrap; gap: 6px; padding-bottom: 18px; border-bottom: 1px solid #EFEDE7; }
.i7g__tabs button { padding: 9px 16px; border: 0; border-radius: 99px; background: #F3F2EE; color: var(--neutral-700); font: 500 14px var(--font); cursor: pointer; }
.i7g__tabs button.is-on { background: var(--blue-900); color: #fff; }
.i7g__q { margin: 20px 0 16px; display: flex; gap: 10px; align-items: center; padding: 14px 18px; border-radius: 16px; background: var(--blue-900); color: #fff; font-size: 15.5px; }
.i7g__q > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); flex: none; }
.i7g__res { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; counter-reset: r; min-height: 170px; }
.i7g__res li { counter-increment: r; display: grid; grid-template-columns: 30px 1fr; gap: 10px; align-items: center; padding: 13px 16px; border-radius: 14px; background: #F7F6F2; font-size: 15px; color: var(--neutral-700); animation: g3-entra .4s both; }
.i7g__res li::before { content: counter(r); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: #fff; font-size: 13px; color: var(--neutral-500); }
.i7g__res li.is-voce { background: #FFF6DF; box-shadow: inset 3px 0 var(--yellow); color: var(--neutral-900); }
.i7g__res li.is-voce::before { background: var(--yellow); color: var(--blue-900); }
.i7g__res b { font-weight: 600; color: var(--blue-900); }
.i7g__mon { margin: 18px 0 0; display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--blue-700); }

/* Agentes */
.i7a { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 36px; align-items: start; }
.i7a__fone { display: flex; flex-direction: column; border-radius: 30px; overflow: hidden; background: #ECE5DA; box-shadow: 0 0 0 8px var(--blue-900), 0 60px 90px -50px rgba(1, 29, 38, .6); max-width: 440px; width: 100%; justify-self: center; min-height: 560px; }
.i7a__top { margin: 0; display: flex; align-items: center; gap: 12px; padding: 16px 18px; background: var(--blue-900); color: #fff; }
.i7a__av { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); }
.i7a__top span:last-child { display: flex; flex-direction: column; } .i7a__top b { font-weight: 600; font-size: 15px; } .i7a__top em { font-style: normal; font-size: 12px; color: var(--neutral-300); }
.i7a__msgs { flex: 1; display: flex; flex-direction: column; gap: 8px; padding: 16px; overflow-y: auto; max-height: 400px; }
.i7a__m { margin: 0; max-width: 84%; padding: 10px 14px; border-radius: 14px; font-size: 14.5px; line-height: 1.45; animation: g3-pop .35s both; }
.i7a__m--ag { align-self: flex-start; background: #fff; color: var(--neutral-900); border-top-left-radius: 4px; }
.i7a__m--eu { align-self: flex-end; background: #D6F3C8; color: var(--neutral-900); border-top-right-radius: 4px; }
.i7a__m--sis { align-self: center; max-width: 100%; padding: 6px 12px; border-radius: 8px; background: rgba(1, 29, 38, .08); font-size: 12.5px; color: var(--neutral-700); }
.i7a__ops { display: flex; flex-wrap: wrap; gap: 6px; padding: 12px 14px 16px; background: #F7F3EC; border-top: 1px solid rgba(1, 29, 38, .06); min-height: 60px; }
.i7a__ops button { padding: 9px 14px; border: 0; border-radius: 99px; background: #fff; box-shadow: 0 0 0 1px rgba(1, 29, 38, .14); color: var(--blue-900); font: 500 13.5px var(--font); cursor: pointer; }
.i7a__ops button:hover { box-shadow: 0 0 0 2px var(--yellow); }
.i7a__crm { display: flex; flex-direction: column; gap: 14px; }
.i7a__card { padding: 22px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 70px -50px rgba(1, 29, 38, .4); }
.i7a__nome { margin: 0 0 14px; font-weight: 600; font-size: 17px; color: var(--blue-900); }
.i7a__campos { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; }
.i7a__campos li { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-top: 1px solid #EFEDE7; font-size: 14.5px; }
.i7a__campos span { color: var(--neutral-500); } .i7a__campos b { font-weight: 500; color: var(--neutral-400); text-align: right; transition: color .3s; } .i7a__campos b.is-ok { color: var(--blue-900); }
.i7a__score { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; margin-top: 14px; font-size: 13px; color: var(--neutral-500); }
.i7a__score i { height: 10px; border-radius: 6px; background: #EEF0EF; overflow: hidden; } .i7a__score i b { display: block; height: 100%; width: 0; background: var(--yellow); transition: width .6s cubic-bezier(.2, .7, .2, 1); }
.i7a__score em { font-style: normal; font-weight: 600; color: var(--blue-900); }
.i7a__st { margin: 14px 0 0; padding: 10px 14px; border-radius: 12px; background: #F3F2EE; font-size: 14px; color: var(--neutral-600); }
.i7a__st.is-ok { background: #E9F4EE; color: #1F6B44; font-weight: 500; }
.i7a__nota { margin: 0; font-size: 14px; line-height: 1.5; color: var(--neutral-600); }

/* ABM */
.i7b { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 24px; align-items: start; }
.i7b__nav { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.i7b__nav button { width: 100%; display: flex; flex-direction: column; gap: 3px; padding: 16px 18px; border: 0; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); text-align: left; font-family: var(--font); cursor: pointer; transition: box-shadow .25s, background .25s; }
.i7b__nav b { font-weight: 500; font-size: 16px; color: var(--blue-900); } .i7b__nav span { font-size: 13px; color: var(--neutral-500); }
.i7b__nav button.is-on { background: var(--blue-900); box-shadow: none; } .i7b__nav button.is-on b { color: #fff; } .i7b__nav button.is-on span { color: var(--yellow); }
.i7b__palco { padding: 26px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); }
.i7b__p { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; animation: g3-entra .45s both; }
.i7b__p[hidden] { display: none; }
.i7b__col .s6ad__rot svg { color: #c98a12; }
.i7b__sin, .i7b__pes { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.i7b__sin li { display: flex; flex-direction: column; gap: 4px; padding: 14px; border-radius: 14px; background: #F7F6F2; animation: g3-pop .4s both; animation-delay: calc(var(--d) * 120ms); }
.i7b__sin em { align-self: flex-start; font-style: normal; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; padding: 3px 8px; border-radius: 6px; background: rgba(244, 182, 63, .25); color: #8A5A00; }
.i7b__sin span { font-size: 14.5px; line-height: 1.4; color: var(--neutral-800); }
.i7b__pes li { display: flex; gap: 12px; align-items: center; padding: 12px; border-radius: 14px; background: #F7F6F2; }
.i7b__pes li i { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #E3E1DA; font-style: normal; font-weight: 600; color: var(--blue-900); }
.i7b__pes li.is-on i { background: var(--yellow); }
.i7b__pes span { display: flex; flex-direction: column; } .i7b__pes b { font-weight: 500; font-size: 14.5px; color: var(--blue-900); } .i7b__pes em { font-style: normal; font-size: 12.5px; color: var(--neutral-500); }
.i7b__peca { display: flex; flex-direction: column; gap: 10px; padding: 20px; border-radius: 18px; background: var(--blue-900); color: #fff; }
.i7b__peca span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); } .i7b__peca b { font-weight: 400; font-size: 18px; line-height: 1.3; } .i7b__peca em { font-style: normal; font-size: 13.5px; color: var(--neutral-300); }
.i7b__rev { margin: 10px 0 0; display: flex; gap: 8px; align-items: center; font-size: 13px; color: #1F6B44; }

/* Leads */
.i7s { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 36px; align-items: start; }
.i7s__ctl { display: flex; flex-direction: column; gap: 18px; padding: 26px; border-radius: 26px; background: var(--blue-900); color: #fff; }
.i7s__ctl label { font-size: 17px; line-height: 1.35; }
.i7s__ctl .s2k__r output { color: var(--yellow); }
.i7s__res { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.i7s__res p { margin: 0; display: flex; flex-direction: column; gap: 4px; padding: 16px; border-radius: 16px; background: rgba(249, 250, 250, .07); }
.i7s__res b { font-weight: 300; font-size: 40px; line-height: 1; color: var(--yellow); } .i7s__res p + p b { color: #fff; } .i7s__res span { font-size: 13.5px; color: var(--neutral-300); }
.i7s__dica { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--neutral-200); }
.i7s__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.i7s__cols .s6ad__aviso { grid-column: 1 / -1; margin: 0; }
.i7s__col { padding: 18px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); min-height: 360px; }
.i7s__col--com { background: #FFF6DF; box-shadow: inset 0 0 0 2px rgba(244, 182, 63, .6); }
.i7s__col ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.i7s__col li { display: flex; justify-content: space-between; gap: 10px; padding: 12px 14px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); animation: g3-pop .35s both; }
.i7s__n { display: flex; flex-direction: column; gap: 3px; min-width: 0; } .i7s__n b { font-weight: 500; font-size: 14.5px; color: var(--blue-900); } .i7s__n em { font-style: normal; font-size: 12px; line-height: 1.4; color: var(--neutral-500); }
.i7s__pt { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.i7s__pt i { width: 46px; height: 6px; border-radius: 4px; background: linear-gradient(90deg, var(--blue-700) calc(var(--p) * 1%), #EEF0EF 0); }
.i7s__pt b { font-weight: 600; font-size: 15px; color: var(--blue-900); }

/* Mídia */
.i7m .s6ad__palco { min-height: 470px; }
.i7m__tb { font-size: 13px; } .i7m__tb p { gap: 8px; } .i7m__tb p.is-ruim { background: #FBEDEA; } .i7m__tb p.is-bom { background: #E9F4EE; } .i7m__tb p.is-off { color: var(--neutral-400); }
.i7m__tot { display: block !important; padding: 14px !important; font-size: 14px !important; background: #F7F6F2; } .i7m__tot b { font-weight: 600; color: var(--blue-900); }
.i7m__k { margin-top: 20px !important; } .i7m__k svg { color: #c98a12; }
.i7m__cr { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.i7m__cr li { display: grid; grid-template-columns: 28px 1fr auto; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 12px; background: #F7F6F2; font-size: 13.5px; }
.i7m__cr i { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: #fff; font-style: normal; font-weight: 600; }
.i7m__cr li:first-child { background: #FFF6DF; } .i7m__cr li:first-child i { background: var(--yellow); }
.i7m__cr em { font-style: normal; font-size: 12px; font-weight: 600; color: #1F6B44; }

/* Materiais: calculadora */
.i7c { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 32px; align-items: start; }
.i7c__app { display: flex; flex-direction: column; gap: 18px; padding: 30px; border-radius: 28px; background: var(--blue-900); color: #fff; box-shadow: 0 60px 90px -50px rgba(1, 29, 38, .6); }
.i7c__k { margin: 0; display: flex; gap: 8px; align-items: center; font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--yellow); }
.i7c__app h3 { margin: 0; font-weight: 300; font-size: clamp(26px, 2.6vw, 36px); line-height: 1.1; letter-spacing: -.02em; }
.i7c__in { display: flex; flex-direction: column; gap: 18px; }
.i7c__in label { display: flex; flex-direction: column; gap: 10px; font-size: 15px; color: var(--neutral-200); }
.i7c__in label > span { display: flex; justify-content: space-between; } .i7c__in output { font-weight: 600; color: #fff; }
.i7c__in input[type=range] { width: 100%; accent-color: var(--yellow); }
.i7c__out { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.i7c__out p { margin: 0; display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: 18px; background: rgba(249, 250, 250, .07); }
.i7c__out span { font-size: 13.5px; color: var(--neutral-300); } .i7c__out b { font-weight: 300; font-size: clamp(26px, 2.6vw, 36px); color: var(--yellow); }
.i7c__cta { margin: 0; display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; font-size: 15px; color: var(--neutral-200); }
.i7c__cta em { font-style: normal; padding: 10px 16px; border-radius: 12px; background: var(--yellow); color: var(--blue-900); font-weight: 600; font-size: 14px; }
.i7c__lead { display: flex; flex-direction: column; gap: 14px; }
.i7c__lead .i7a__campos b { color: var(--blue-900); }

/* Relatórios */
.i7r { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: 30px; align-items: start; }
.i7r__rel { padding: 26px; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 60px 90px -60px rgba(1, 29, 38, .45); }
.i7r__tb p { transition: background .35s, box-shadow .35s; } .i7r__tb p.is-on { background: #FFF6DF; box-shadow: inset 3px 0 var(--yellow); }
.i7r__tb p.is-off:not(.m6__th) { opacity: .45; }
.i7r__resp { margin-top: 16px; min-height: 120px; padding: 18px 20px; border-radius: 18px; background: var(--blue-900); color: var(--neutral-100); font-size: 15.5px; line-height: 1.55; }
.i7r__resp b { color: var(--yellow); font-weight: 500; } .i7r__resp .s6ch__src { color: #8FC7E8; }
.i7r__vazio { margin: 0; color: var(--neutral-400); }
.i7r__resp p { margin: 0; animation: g3-entra .4s both; }
.i7r__qs { display: flex; flex-direction: column; gap: 14px; }
.i7r__nota { margin: 0; font-size: 14px; line-height: 1.5; color: var(--neutral-600); }

@media (max-width: 1100px) {
  .i7g, .i7a, .i7b, .i7s, .i7c, .i7r { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .i7b__nav { flex-direction: row; overflow-x: auto; } .i7b__nav li { flex: 0 0 240px; }
  .i7b__p { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .i7g__app, .i7b__palco, .i7r__rel { padding: 18px; border-radius: 22px; }
  .i7a__fone { min-height: 500px; }
  .i7s__cols { grid-template-columns: minmax(0, 1fr); } .i7s__col { min-height: 0; }
  .i7c__app { padding: 22px; } .i7c__out { grid-template-columns: minmax(0, 1fr); }
  .i7m__tb { font-size: 11.5px; } .i7m__tb p { padding: 9px 10px; gap: 6px; }
  .i7r__tb { font-size: 11.5px; } .i7r__tb p { padding: 9px 10px; gap: 6px; }
}
.i7s__ctl .s2k__r { display: flex; align-items: center; gap: 16px; padding: 0; border: 0; background: none; box-shadow: none; }
.i7s__ctl .s2k__r input[type=range] { flex: 1; width: 100%; accent-color: var(--yellow); }
.i7s__ctl .s2k__r output { font-weight: 300; font-size: 34px; min-width: 52px; text-align: right; }

/* ================= v8.1 | Diagnóstico: novo hero e vitrine ================= */
.dxh--v2 { background: radial-gradient(60% 50% at 50% 100%, rgba(244, 182, 63, .22), transparent 70%), radial-gradient(40% 40% at 0% 0%, rgba(18, 89, 124, .1), transparent 70%), #F4F5F3; overflow: hidden; }
.dxh--v2 .dxh__in { display: flex; flex-direction: column; align-items: center; gap: 56px; padding: 140px 40px 90px; grid-template-columns: none; }
.dxh--v2 .dxh__txt { max-width: 900px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 22px; }
.dxh--v2 .migalha { justify-content: center; }
.dxh--v2 h1 { align-items: center; font-size: clamp(42px, 5.6vw, 88px); line-height: .98; }
.dxh--v2 .dxh__lead { margin: 0; max-width: 660px; font-size: 19px; line-height: 1.55; color: var(--neutral-700); }
.dxh--v2 .rxi { width: min(680px, 100%); }
.dxh--v2 .rxi__campo { padding: 8px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08), 0 30px 60px -30px rgba(1, 29, 38, .4); }
.dxh--v2 .rxi__alt { text-align: center; }
.dxh__ex2 { margin: 0; } .dxh__ex2 a { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 15px; color: var(--blue-900); text-decoration: underline; text-decoration-color: var(--yellow); text-decoration-thickness: 2px; text-underline-offset: 6px; }
.dxs { position: relative; width: min(1120px, 100%); aspect-ratio: 16 / 8.4; }
.dxs__luz { position: absolute; inset: 10% 15% -10%; background: radial-gradient(closest-side, rgba(244, 182, 63, .35), transparent); filter: blur(40px); }
.dxs__note { position: absolute; left: 12%; top: 0; width: 72%; margin: 0; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08), 0 60px 100px -40px rgba(1, 29, 38, .55); animation: g3-sobe .9s cubic-bezier(.2, .7, .2, 1) both; }
.dxs__note .rxd__bar { background: #ECEEED; }
.dxs__tela { position: relative; display: block; overflow: hidden; }
.dxs__tela img { display: block; width: 100%; height: auto; }
.dxs__note .rxd__scan { opacity: 1; animation: rx-scan 3.2s cubic-bezier(.5, 0, .5, 1) infinite; }
.dxs__cel { position: absolute; right: 6%; bottom: -4%; width: 19%; margin: 0; padding: 7px; border-radius: 26px; background: var(--blue-900); box-shadow: 0 40px 70px -30px rgba(1, 29, 38, .6); animation: g3-sobe 1s cubic-bezier(.2, .7, .2, 1) .2s both; }
.dxs__cel .dxs__tela { border-radius: 20px; aspect-ratio: 412 / 860; } .dxs__cel img { height: 100%; object-fit: cover; object-position: top; }
.dxs__pins { position: absolute; inset: 0; }
.dxs__pin { position: absolute; left: calc(var(--x) * 100%); top: calc(var(--y) * 100%); display: grid; place-items: center; width: 30px; height: 30px; margin: -15px; border-radius: 50%; background: #C9473A; color: #fff; font-style: normal; font-weight: 600; font-size: 13px; box-shadow: 0 0 0 6px rgba(201, 71, 58, .25); animation: g3-pop .5s cubic-bezier(.2, .7, .2, 1) both; animation-delay: calc(.8s + var(--d) * .25s); }
.dxs__pin:nth-child(2n) { background: var(--yellow); color: var(--blue-900); box-shadow: 0 0 0 6px rgba(244, 182, 63, .3); }
.dxs__card { position: absolute; z-index: 2; padding: 16px 18px; border-radius: 18px; background: #fff; box-shadow: 0 30px 60px -24px rgba(1, 29, 38, .45); animation: g3-pop .6s cubic-bezier(.2, .7, .2, 1) both; }
.dxs__card--notas { left: 0; top: 14%; width: 30%; padding: 14px; background: var(--blue-900); animation-delay: .5s; }
.dxs__card--notas .rxns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.dxs__card--notas .rxn { padding: 10px 6px; }
.dxs__card--pin { left: 4%; bottom: 6%; display: flex; gap: 12px; align-items: flex-start; width: 28%; animation-delay: 1.1s; }
.dxs__card--pin > b { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); font-size: 13px; }
.dxs__card--pin span { display: flex; flex-direction: column; gap: 3px; font-size: 14px; line-height: 1.4; color: var(--neutral-800); }
.dxs__card--pin em { font-style: normal; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #c98a12; }
.dxs__card--vit { right: 0; top: 6%; display: flex; flex-direction: column; gap: 4px; width: 22%; animation-delay: .8s; }
.dxs__card--vit span, .dxs__card--vit em { font-style: normal; font-size: 12.5px; color: var(--neutral-500); }
.dxs__card--vit > b { font-weight: 300; font-size: 38px; line-height: 1; color: #C9473A; }
.dxs__card--vit i { height: 8px; border-radius: 6px; background: #EEF0EF; overflow: hidden; } .dxs__card--vit i b { display: block; height: 100%; background: linear-gradient(90deg, #2E8B57 0 29%, var(--yellow) 29% 47%, #C9473A 47%); }
.dxs__card--plano { right: 27%; bottom: -6%; display: flex; flex-direction: column; gap: 2px; background: var(--yellow); animation-delay: 1.4s; }
.dxs__card--plano span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: rgba(1, 29, 38, .7); } .dxs__card--plano b { font-weight: 500; font-size: 20px; color: var(--blue-900); } .dxs__card--plano em { font-style: normal; font-size: 13px; color: rgba(1, 29, 38, .75); }
.dxs .dxh__ex { position: absolute; left: 50%; bottom: -14%; margin: 0; transform: translateX(-50%); font-size: 12px; color: var(--neutral-500); }
@media (max-width: 900px) {
  .dxh--v2 .dxh__in { padding: 120px 20px 80px; gap: 40px; }
  .dxs { aspect-ratio: auto; height: 520px; }
  .dxs__note { left: 0; width: 92%; } .dxs__cel { width: 34%; right: 0; bottom: 14%; }
  .dxs__card--notas { top: auto; bottom: 0; left: 0; width: 64%; }
  .dxs__card--pin, .dxs__card--plano { display: none; }
  .dxs__card--vit { top: 34%; width: 44%; right: auto; left: 0; } .dxs__card--vit > b { font-size: 28px; }
  .dxs .dxh__ex { bottom: -36px; }
}

/* ================= v8.1 | Relatório: transparência, próximo passo e dados de quem recebe ================= */
.rxh__para { margin-left: 10px; padding: 3px 10px; border-radius: 99px; background: rgba(244, 182, 63, .16); color: var(--yellow); font-size: 12px; letter-spacing: .04em; text-transform: none; }
.rxh__para[hidden] { display: none; }
.rxt { background: #F4F5F3; color: var(--neutral-900); }
.rxt__in { max-width: 1286px; margin: 0 auto; padding: 100px 40px; display: flex; flex-direction: column; gap: 40px; }
.rxt__lista { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.rxt__lista li { display: flex; flex-direction: column; gap: 10px; padding: 24px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); }
.rxt__lista b { font-weight: 300; font-size: 30px; color: #c98a12; } .rxt__lista h3 { margin: 0; font-weight: 500; font-size: 18px; color: var(--blue-900); } .rxt__lista p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--neutral-600); }
.rxe--v2 .rxe__in { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; }
.rxe__ops { display: flex; flex-direction: column; gap: 10px; }
.rxe__op { display: grid; grid-template-columns: 48px 1fr auto; gap: 16px; align-items: center; padding: 18px 20px; border: 0; border-radius: 18px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); color: #fff; text-align: left; text-decoration: none; font-family: var(--font); cursor: pointer; transition: background .3s, transform .3s; }
.rxe__op:hover { background: rgba(249, 250, 250, .12); transform: translateX(4px); }
.rxe__op span:nth-child(2) { display: flex; flex-direction: column; gap: 3px; } .rxe__op b { font-weight: 500; font-size: 17px; } .rxe__op em { font-style: normal; font-size: 14px; color: var(--neutral-300); }
.rxe__ic { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: rgba(244, 182, 63, .15); color: var(--yellow); }
.rxe__op--dest { background: var(--yellow); color: var(--blue-900); box-shadow: none; } .rxe__op--dest em { color: rgba(1, 29, 38, .75); } .rxe__op--dest .rxe__ic { background: var(--blue-900); }
.rxe__op--dest:hover { background: #f7c35e; }
.rxe__op.is-ok b::after { content: " · link copiado"; color: var(--yellow); font-weight: 400; }
.rx[data-rx-estado="carregando"] .rxt, .rx[data-rx-estado="carregando"] .rxe, .rx[data-rx-estado="erro"] .rxt { display: none; }
.rxg { display: none; }
.rx.is-gate .rxg { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: 20px; background: rgba(1, 29, 38, .72); backdrop-filter: blur(10px); overflow-y: auto; }
.rxg__card { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); width: min(980px, 100%); border-radius: 30px; overflow: hidden; background: #fff; box-shadow: 0 60px 120px -40px rgba(0, 0, 0, .7); animation: g3-pop .5s cubic-bezier(.2, .7, .2, 1) both; }
.rxg__lado { display: flex; flex-direction: column; gap: 16px; padding: 36px 32px; background: radial-gradient(80% 60% at 0% 0%, rgba(18, 89, 124, .8), transparent 70%), var(--blue-900); color: #fff; }
.rxg__k { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.rxg__dom { margin: 0; font-weight: 300; font-size: 28px; letter-spacing: -.02em; word-break: break-all; }
.rxg__log { list-style: none; padding: 0; margin: 8px 0 0; display: flex; flex-direction: column; gap: 10px; }
.rxg__log li { display: flex; align-items: center; gap: 10px; font-size: 14.5px; color: var(--neutral-300); animation: g3-entra .4s both; }
.rxg__log li::before { content: ""; width: 10px; height: 10px; border-radius: 50%; border: 2px solid var(--yellow); border-right-color: transparent; animation: rxg-gira 1s linear infinite; }
.rxg__log li:nth-child(2) { animation-delay: .8s; } .rxg__log li:nth-child(3) { animation-delay: 1.6s; } .rxg__log li:nth-child(4) { animation-delay: 2.4s; }
@keyframes rxg-gira { to { transform: rotate(360deg); } }
.rxg__nota { margin: auto 0 0; font-size: 13.5px; line-height: 1.5; color: var(--neutral-300); }
.rxg__form { display: flex; flex-direction: column; gap: 12px; padding: 34px 32px; color: var(--neutral-900); }
.rxg__form h2 { margin: 0; font-weight: 400; font-size: 28px; letter-spacing: -.02em; color: var(--blue-900); }
.rxg__sub { margin: -4px 0 6px; font-size: 15px; line-height: 1.5; color: var(--neutral-600); }
.rxg__form .btn { align-self: flex-start; margin-top: 6px; }
@media (max-width: 900px) {
  .rxt__lista { grid-template-columns: 1fr 1fr; } .rxt__in { padding: 80px 24px; }
  .rxe--v2 .rxe__in { grid-template-columns: minmax(0, 1fr); }
  .rxg__card { grid-template-columns: minmax(0, 1fr); } .rxg__lado { padding: 24px; } .rxg__log, .rxg__nota { display: none; } .rxg__form { padding: 24px; }
  .rx.is-gate .rxg { place-items: start center; }
}
@media (max-width: 560px) { .rxt__lista { grid-template-columns: minmax(0, 1fr); } }
.dxh--v2 h1 { font-size: clamp(40px, 5vw, 76px); }
.dxh--v2 .dxh__txt { max-width: 1000px; }
.dxs__card--notas { left: -3%; top: 38%; width: 25%; padding: 10px; }
.dxs__card--notas .rxn { padding: 8px 4px; gap: 4px; } .dxs__card--notas .rxn__r { transform: scale(.82); }
.dxs__card--pin { left: 2%; bottom: -4%; }
@media (max-width: 900px) { .dxs__card--notas { top: auto; bottom: 0; left: 0; width: 64%; } }
.g3h__sh--ib { background: rgba(244, 182, 63, .22) !important; color: var(--yellow) !important; }
.au3a__breve { list-style: none; } .au3a__breve .pe3n__lista { list-style: none; padding: 0; margin: 0; }

/* ================= v8.1 | Post, versão intermediária (pe4) ================= */
.pe4t { position: fixed; right: 16px; top: 10px; z-index: 71; margin: 0; padding: 5px 12px; border-radius: 99px; background: var(--blue-900); color: #fff; font-size: 12px; opacity: 0; transform: translateY(-6px); transition: opacity .3s, transform .3s; pointer-events: none; }
.pe4t.is-on { opacity: 1; transform: none; }
.pe4b { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.pe4o { display: inline-flex; align-items: center; gap: 10px; padding: 7px 14px 7px 7px; border: 0; border-radius: 99px; background: var(--blue-900); color: #fff; font: 500 14px var(--font); cursor: pointer; }
.pe4o__ic { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); }
.pe4o em { font-style: normal; font-size: 12.5px; color: var(--neutral-300); }
.pe4o.is-on { background: #12597C; }
.pe4r { margin: 0 auto 18px; padding: 24px 26px; border-radius: 22px; background: #FFF6DF; }
.pe4r__k { margin: 0 0 14px !important; display: flex; align-items: center; gap: 8px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: #8A5A00; }
.pe4r ol { list-style: none; padding: 0 !important; margin: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.pe4r li { display: flex; flex-direction: column; gap: 4px; margin: 0 !important; font-size: 15px; line-height: 1.5; }
.pe4r li b { font-weight: 600; color: var(--blue-900); }
.pe4s { margin: 0 auto 36px; border-radius: 16px; box-shadow: 0 0 0 1px var(--neutral-100); font-size: 16px; }
.pe4s summary { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; cursor: pointer; list-style: none; font-weight: 500; color: var(--blue-900); }
.pe4s summary::-webkit-details-marker { display: none; }
.pe4s summary::after { content: "+"; font-size: 20px; color: #c98a12; } .pe4s[open] summary::after { content: "−"; }
.pe4s summary em { margin-left: auto; margin-right: 14px; font-style: normal; font-size: 13px; color: var(--neutral-500); }
.pe4s ol { margin: 0 !important; padding: 0 18px 16px 40px !important; line-height: 1.5; } .pe4s li { margin-bottom: 6px !important; }
.pe4s a { color: var(--blue-700) !important; text-decoration: none !important; } .pe4s a:hover { text-decoration: underline !important; }
.pe4q { margin: 40px auto; padding: 28px 30px; border-left: 4px solid var(--yellow); border-radius: 0 20px 20px 0; background: var(--blue-900); color: #fff; }
.pe4q p { margin: 0 0 16px !important; font-weight: 300; font-size: clamp(22px, 2.2vw, 28px); line-height: 1.3; letter-spacing: -.01em; }
.pe4q a { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; color: var(--yellow) !important; text-decoration: none !important; }
.pe4c ol li { display: block !important; padding: 0 !important; }
.pe4c label { display: grid; grid-template-columns: 26px 1fr; gap: 12px; align-items: start; padding: 12px 0; cursor: pointer; }
.pe4c input { position: absolute; opacity: 0; }
.pe4c__ck { width: 24px; height: 24px; border-radius: 7px; border: 2px solid rgba(249, 250, 250, .4); transition: background .2s, border-color .2s; }
.pe4c input:checked + .pe4c__ck { background: var(--yellow); border-color: var(--yellow); box-shadow: inset 0 0 0 4px var(--blue-900); }
.pe4c input:focus-visible + .pe4c__ck { outline: 2px solid var(--yellow); outline-offset: 2px; }
.pe4c label > span:last-child { display: flex; flex-direction: column; gap: 2px; color: var(--neutral-300); }
.pe4c li::before { display: none !important; }
.pe4c__res { margin: 16px 0 0 !important; padding: 14px 16px; border-radius: 14px; background: rgba(249, 250, 250, .08); font-size: 15.5px; color: var(--neutral-100); }
.pe4c__res b { color: var(--yellow); }
.pe4c.is-ok .pe4c__res { background: var(--yellow); color: var(--blue-900); } .pe4c.is-ok .pe4c__res b { color: var(--blue-900); }
.pe4l { margin: 24px auto 30px; padding: 20px 24px 8px; border-radius: 20px; background: #F3F2EE; }
.pe4l__k { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin: 0 0 8px !important; font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.pe4l__k button { padding: 8px 14px; border: 0; border-radius: 10px; background: var(--blue-900); color: #fff; font: 500 13px var(--font); letter-spacing: 0; text-transform: none; cursor: pointer; }
.pe4l__k button.is-ok { background: #2E8B57; }
.pe4u { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin: 44px auto 0; padding: 18px 22px; border-radius: 18px; background: #F3F2EE; }
.pe4u p { margin: 0 !important; font-weight: 500; color: var(--blue-900); }
.pe4u div { display: flex; gap: 8px; } .pe4u button { padding: 9px 16px; border: 0; border-radius: 10px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .12); font: 500 14px var(--font); cursor: pointer; }
.pe4u.is-feito div { display: none; } .pe4u__ok { font-weight: 400 !important; color: var(--neutral-600) !important; } .pe4u__ok[hidden] { display: none; }
.pe4z { position: fixed; inset: 0; z-index: 95; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 4vw; background: rgba(1, 29, 38, .92); cursor: zoom-out; }
.pe4z[hidden] { display: none; }
.pe4z img { max-width: 100%; max-height: 82vh; border-radius: 14px; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .7); }
.pe4z p { margin: 0; max-width: 760px; text-align: center; font-size: 14px; color: var(--neutral-300); }
.pe4z button { position: absolute; top: 18px; right: 22px; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(249, 250, 250, .12); color: #fff; font-size: 26px; cursor: pointer; }
.pe4z-on { overflow: hidden; }
@media (max-width: 700px) { .pe4r ol { grid-template-columns: minmax(0, 1fr); } }

/* ===== v8.2 | Software House: telas de produto no padrão de Sites ===== */
.svv--s6 .ofv__tela { aspect-ratio: 16 / 10; }
.svv--s6 .ofv__tela img { object-position: left top; }
.s2l--s6 .s2l__palco { grid-template-columns: minmax(0, 1.45fr) minmax(0, .8fr); }
.s6l { position: relative; padding: 0; min-height: 0; aspect-ratio: 16 / 10; align-self: start; overflow: hidden; background: #EEF1F2; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .6); }
.s6l__cam { position: absolute; inset: 0; --zc: 1; transition: transform 1s cubic-bezier(.2, .7, .2, 1); will-change: transform; }
.s6l__img { display: block; width: 100%; height: 100%; object-fit: cover; }
.s2l__palco[data-l="0"] .s6l__cam { transform: scale(var(--z0)); transform-origin: var(--o0); --zc: var(--z0); }
.s2l__palco[data-l="1"] .s6l__cam { transform: scale(var(--z1)); transform-origin: var(--o1); --zc: var(--z1); }
.s2l__palco[data-l="2"] .s6l__cam { transform: scale(var(--z2)); transform-origin: var(--o2); --zc: var(--z2); }
.s2l__palco[data-l="3"] .s6l__cam { transform: scale(var(--z3)); transform-origin: var(--o3); --zc: var(--z3); }
.s6l__pin, .s6l__painel { position: absolute; opacity: 0; pointer-events: none; transition: opacity .45s, translate .45s; translate: 0 8px; }
.s6l__pin { display: flex; align-items: center; gap: 8px; transform: translate(-9px, -50%) scale(calc(1 / var(--zc))); transform-origin: 9px 50%; transition-delay: calc(.55s + var(--q, 0) * .18s); white-space: nowrap; }
.s6l__pin i { flex: none; width: 18px; height: 18px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 5px rgba(244, 182, 63, .35); animation: s6-pulso 1.8s ease-out infinite; }
.s6l__pin b { padding: 5px 10px; border-radius: 99px; background: var(--blue-900); color: #fff; font-weight: 500; font-size: 12.5px; box-shadow: 0 10px 24px -10px rgba(1, 29, 38, .7); }
@keyframes s6-pulso { 0% { box-shadow: 0 0 0 0 rgba(244, 182, 63, .6); } 100% { box-shadow: 0 0 0 14px rgba(244, 182, 63, 0); } }
.s6l__painel { left: 14px; bottom: 14px; max-width: min(360px, calc(100% - 28px)); transition-delay: .7s; }
.s2l__palco[data-l="0"] .s6l__pin[data-lp="0"], .s2l__palco[data-l="1"] .s6l__pin[data-lp="1"], .s2l__palco[data-l="2"] .s6l__pin[data-lp="2"], .s2l__palco[data-l="3"] .s6l__pin[data-lp="3"] { transition-delay: calc(.55s + var(--q, 0) * .18s); }
.s6l__log { padding: 14px 16px; border-radius: 12px; background: #0c2731; color: #b9d2da; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11.5px; line-height: 1.75; box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .6); }
.s6l__log p { margin: 0; } .s6l__log b { color: #3ecf8e; font-weight: 400; }
.s6l__chat { padding: 12px; border-radius: 14px; background: #f5f6f4; box-shadow: 0 20px 40px -20px rgba(1, 29, 38, .5); font-size: 12.5px; line-height: 1.5; }
.s6l__nota { display: flex; flex-direction: column; gap: 4px; padding: 12px 14px; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 20px 40px -20px rgba(1, 29, 38, .5); font-size: 12.5px; line-height: 1.45; color: #46575e; }
.s6l__nota b { color: var(--blue-900); font-weight: 600; font-size: 13px; }
.s2t--img .s2t__tela img { object-position: left top; }
@media (max-width: 1100px) {
  .s2l--s6 .s2l__palco { grid-template-columns: minmax(0, 1fr); }
  .s6l__pin b { font-size: 11px; padding: 4px 8px; }
  .s6l__painel { max-width: calc(100% - 28px); }
}
@media (max-width: 600px) {
  .s6l__painel { display: none; }
  .s6l__pin i { width: 14px; height: 14px; }
}
@media (prefers-reduced-motion: reduce) { .s6l__cam { transition: none; } .s6l__pin i { animation: none; } }
.s6l__painel--topo { bottom: auto; top: 14px; }
.s6l__pin--esq { flex-direction: row-reverse; transform: translate(calc(-100% + 9px), -50%) scale(calc(1 / var(--zc))); transform-origin: calc(100% - 9px) 50%; }
@media (max-width: 600px) { .s6l__pin b { display: none; } }

/* ===== v8.3 | correções de hero (linha da lista) ===== */
.svh--s6 .svh__ok { align-self: stretch; margin-top: 10px; padding-top: 20px; border-top: 1px solid rgba(249, 250, 250, .14); }
.svh--i7 .svh__ok { border-top-color: rgba(1, 29, 38, .2); }

/* ===== v8.3 | Cenários com mock em HTML: altura pelo conteúdo, seção cabe na tela ===== */
.s2t--s6:not(.s2t--img) .s2t__in { padding: 88px 40px 96px; gap: 30px; }
.s2t--s6:not(.s2t--img) .s2-cab { max-width: none; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 400px); grid-template-areas: "chip ." "h2 lead"; gap: 16px 48px; align-items: end; }
.s2t--s6:not(.s2t--img) .s2-cab > .chip { grid-area: chip; justify-self: start; }
.s2t--s6:not(.s2t--img) .s2-cab h2 { grid-area: h2; font-size: clamp(30px, 3vw, 44px); }
.s2t--s6:not(.s2t--img) .s2-cab__lead { grid-area: lead; font-size: 16px; margin: 0; }
.s2t--s6:not(.s2t--img) .s2t__app { gap: 18px; }
.s2t--s6:not(.s2t--img) .s2t__tela { aspect-ratio: auto; display: grid; }
.s2t--s6:not(.s2t--img) .s6t { position: relative; inset: auto; grid-area: 1 / 1; align-content: center; padding: 30px 34px; }
@media (max-width: 1100px) {
  .s2t--s6:not(.s2t--img) .s2t__in { padding: 72px 24px; }
  .s2t--s6:not(.s2t--img) .s2-cab { grid-template-columns: minmax(0, 1fr); grid-template-areas: "chip" "h2" "lead"; }
  .s2t--s6:not(.s2t--img) .s6t { padding: 18px; }
}
.svh--s6 h1 > span, .svh--s6 h1 > em { text-wrap: balance; }

/* ===== v8.3 | Tabelas dos mocks: primeira coluna mais larga, cabeçalho sem sobreposição ===== */
.m6__tb[style*="--n:3"] p { grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); }
.m6__tb[style*="--n:4"] p { grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)); }
.m6__tb[style*="--n:5"] p { grid-template-columns: minmax(0, 1.7fr) repeat(4, minmax(0, 1fr)); }
.m6__tb p > span { min-width: 0; overflow-wrap: anywhere; }
.m6__tb p.m6__th > span { overflow-wrap: normal; word-break: normal; hyphens: none; }
.m6__tb p.m6__th { letter-spacing: .06em; }
@media (max-width: 640px) {
  .m6__tb p.m6__th { font-size: 9.5px; letter-spacing: .02em; }
  .m6__tb p { gap: 8px; padding: 9px 10px; font-size: 12.5px; }
  .i7m__tb p > span:nth-child(3) { display: none; }
  .i7m__tb[style*="--n:5"] p { grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)); }
  .migalha { flex-wrap: nowrap; white-space: nowrap; overflow: hidden; }
  .migalha > *:last-child { overflow: hidden; text-overflow: ellipsis; }
}

/* ===== v8.3 | Briefing: título em uma linha, resumo sem quebra em 3 linhas ===== */
.bq__lista li { grid-template-columns: 128px minmax(0, 1fr); }
.bq__nav span { text-wrap: balance; }
@media (min-width: 1101px) { .bq .s2-cab h2 > span:first-child, .bq h2 > span:first-child { white-space: nowrap; } .bq h2 { font-size: clamp(34px, 3.4vw, 52px); } }

/* ===================== v8.3 | Diagnóstico: hero no padrão da Software House ===================== */
.dx3h .svh__in { grid-template-columns: minmax(0, 1fr) minmax(0, 600px); }
.dx3h h1 { font-size: clamp(40px, 4.6vw, 72px); }
.dx3h__tag { margin: 0; display: inline-flex; align-items: center; gap: 10px; padding: 7px 14px; border-radius: 99px; background: rgba(249, 250, 250, .08); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); font-size: 13px; letter-spacing: .02em; color: var(--neutral-200); }
.dx3h .rxi { max-width: 560px; }
.dx3h .rxi__alt { color: var(--neutral-300); }
.dx3h__ex { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; letter-spacing: .06em; text-transform: uppercase; color: var(--yellow); text-decoration: none; }
.dx3h__ex svg { transition: transform .3s; } .dx3h__ex:hover svg { transform: translateX(4px); }
.dx3h__nota { margin: 18px 0 0; text-align: right; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.dx3v { position: relative; padding: 34px 0 54px 30px; }
.dx3v__luz { position: absolute; inset: 10% -10% 0 10%; background: radial-gradient(closest-side, rgba(244, 182, 63, .18), transparent); filter: blur(20px); pointer-events: none; }
.dx3v__note { position: relative; margin: 0; border-radius: 14px; overflow: hidden; background: #0c2a35; transform: perspective(1400px) rotateY(-8deg); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(249, 250, 250, .14); }
.dx3v__bar { margin: 0; display: flex; align-items: center; gap: 5px; padding: 8px 12px; background: rgba(249, 250, 250, .06); }
.dx3v__bar i { width: 8px; height: 8px; border-radius: 50%; background: rgba(249, 250, 250, .25); }
.dx3v__bar span { flex: 1; margin-left: 10px; padding: 3px 11px; border-radius: 20px; background: rgba(249, 250, 250, .08); font-size: 11px; color: var(--neutral-300); }
.dx3v__tela { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; }
.dx3v__tela img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.dx3v__scan { position: absolute; left: 0; right: 0; top: 0; height: 34%; background: linear-gradient(to bottom, transparent, rgba(244, 182, 63, .22) 82%, rgba(244, 182, 63, .9)); animation: rx-scan 3.2s cubic-bezier(.5, 0, .5, 1) infinite; pointer-events: none; }
.dx3v__pin { position: absolute; display: grid; place-items: center; width: 26px; height: 26px; margin: -13px; border-radius: 50%; font-style: normal; font-size: 12px; font-weight: 600; color: #fff; background: #E2665A; box-shadow: 0 0 0 5px rgba(226, 102, 90, .28), 0 8px 18px -6px rgba(0, 0, 0, .6); opacity: 0; transform: scale(.4); animation: dx3-pin 9s calc(.6s + var(--d) * .7s) infinite; }
.dx3v__pin.is-medio { background: var(--yellow); color: var(--blue-900); box-shadow: 0 0 0 5px rgba(244, 182, 63, .3), 0 8px 18px -6px rgba(0, 0, 0, .6); }
@keyframes dx3-pin { 0% { opacity: 0; transform: scale(.4); } 6%, 80% { opacity: 1; transform: scale(1); } 90%, 100% { opacity: 0; transform: scale(.8); } }
.dx3v__cel { position: absolute; left: -6px; bottom: 6px; width: 23%; margin: 0; padding: 5px; border-radius: 22px; background: var(--blue-900); box-shadow: 0 0 0 1px rgba(249, 250, 250, .16), 0 40px 60px -30px rgba(0, 0, 0, .8); z-index: 2; }
.dx3v__cel span { display: block; aspect-ratio: 9 / 19; border-radius: 17px; overflow: hidden; }
.dx3v__cel img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.dx3v__ag, .dx3v__ver, .dx3v__lcp { position: absolute; z-index: 3; border-radius: 18px; background: rgba(1, 29, 38, .9); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.dx3v__ag { top: 0; right: -18px; width: 236px; padding: 14px 16px; }
.dx3v__ag > p { margin: 0 0 8px; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.dx3v__ag ol { margin: 0; padding: 0; list-style: none; position: relative; height: 22px; overflow: hidden; }
.dx3v__ag li { position: absolute; inset: 0; font-size: 14px; color: #fff; opacity: 0; animation: dx3-log 8s calc(var(--d) * 2s) infinite; }
@keyframes dx3-log { 0% { opacity: 0; transform: translateY(10px); } 4%, 22% { opacity: 1; transform: none; } 26%, 100% { opacity: 0; transform: translateY(-10px); } }
.dx3v__ver { right: -18px; bottom: 0; width: 230px; padding: 16px 18px; display: flex; flex-direction: column; gap: 2px; }
.dx3v__k, .dx3c__k, .r3r__k { margin: 0 0 4px; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #F08A7E; }
.dx3v__k i, .dx3c__k i, .r3r__k i { width: 8px; height: 8px; border-radius: 50%; background: #E2665A; box-shadow: 0 0 0 4px rgba(226, 102, 90, .25); }
.dx3v__ver b { font-weight: 300; font-size: 34px; letter-spacing: -.02em; color: #fff; line-height: 1; }
.dx3v__ver span { font-size: 13.5px; line-height: 1.4; color: var(--neutral-300); }
.dx3v__lcp { left: 21%; bottom: -8px; display: grid; grid-template-columns: auto 1fr; gap: 2px 12px; align-items: center; width: 270px; padding: 12px 16px; }
.dx3v__lcp b { grid-row: span 2; font-weight: 300; font-size: 30px; letter-spacing: -.02em; color: #F08A7E; }
.dx3v__lcp span { font-size: 12.5px; line-height: 1.35; color: var(--neutral-300); }
.dx3v__lcp em { height: 5px; border-radius: 99px; background: rgba(249, 250, 250, .12); overflow: hidden; }
.dx3v__lcp em i { display: block; height: 100%; width: 86%; border-radius: inherit; background: linear-gradient(90deg, #4fbf8a 0 29%, var(--yellow) 29% 47%, #E2665A 47%); animation: dx3-barra 3s ease-out both; }
@keyframes dx3-barra { from { width: 0; } }
@media (max-width: 1100px) {
  .dx3h .svh__in { grid-template-columns: minmax(0, 1fr); }
  .dx3v { padding: 26px 8px 70px 8px; }
  .dx3v__note { transform: none; }
  .dx3v__ag { right: 0; width: 210px; } .dx3v__ver { right: 0; width: 200px; } .dx3v__ver b { font-size: 28px; }
  .dx3v__lcp { left: 24%; width: 230px; } .dx3v__lcp b { font-size: 24px; }
}
@media (max-width: 600px) {
  .dx3v__ag { top: -6px; } .dx3v__lcp { display: none; }
  .dx3v__ver { bottom: 10px; width: 170px; padding: 12px 14px; } .dx3v__ver span { font-size: 12px; }
  .dx3v__cel { width: 28%; }
}
@media (prefers-reduced-motion: reduce) { .dx3v__pin { animation: none; opacity: 1; transform: none; } .dx3v__ag li { animation: none; } .dx3v__ag li:first-child { opacity: 1; } .dx3v__scan { animation: none; opacity: 0; } }

/* Diagnóstico: chamada final */
.dx3f { position: relative; overflow: hidden; background: radial-gradient(40% 60% at 85% 30%, rgba(18, 89, 124, .75), transparent 70%), radial-gradient(35% 50% at 10% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.dx3f__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 64px; align-items: center; }
.dx3f__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.dx3f h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(48px, 6.4vw, 104px); line-height: .96; letter-spacing: -.04em; color: #fff; }
.dx3f h2 em { font-style: italic; color: var(--yellow); }
.dx3f__lead { margin: 0; max-width: 520px; font-size: 18px; line-height: 1.55; color: var(--neutral-300); }
.dx3f .rxi { max-width: 580px; } .dx3f .rxi__alt { color: var(--neutral-300); }
.dx3f__passos { margin: 6px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px 26px; }
.dx3f__passos li { display: flex; align-items: center; gap: 10px; font-size: 14.5px; color: var(--neutral-200); }
.dx3f__passos b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; font-weight: 400; font-size: 11.5px; color: var(--yellow); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .5); }
.dx3f__pilha { position: relative; height: 470px; }
.dx3c { position: absolute; width: 330px; padding: 22px; border-radius: 24px; background: #fff; color: var(--neutral-900); box-shadow: 0 50px 90px -40px rgba(0, 0, 0, .8); opacity: 0; transform: translateY(40px) rotate(0); transition: opacity .8s calc(var(--i) * .18s), transform 1s cubic-bezier(.2, .7, .2, 1) calc(var(--i) * .18s); }
.dx3f.is-vis .dx3c, .dx3f:not([data-anima]) .dx3c { opacity: 1; }
.dx3c--espera { left: 0; top: 10px; } .dx3f.is-vis .dx3c--espera, .dx3f:not([data-anima]) .dx3c--espera { transform: rotate(-5deg); }
.dx3c--mapa { right: 0; top: 70px; width: 250px; } .dx3f.is-vis .dx3c--mapa, .dx3f:not([data-anima]) .dx3c--mapa { transform: rotate(4deg); }
.dx3c--ver { left: 60px; bottom: 0; background: var(--yellow); } .dx3f.is-vis .dx3c--ver, .dx3f:not([data-anima]) .dx3c--ver { transform: rotate(-1.5deg); }
.dx3c .dx3c__k { color: #c2493c; }
.dx3c--ver .dx3c__k { color: var(--blue-900); } .dx3c--ver .dx3c__k i { background: var(--blue-900); box-shadow: 0 0 0 4px rgba(1, 29, 38, .15); }
.dx3c__big { margin: 2px 0 12px; font-weight: 300; font-size: 48px; line-height: 1; letter-spacing: -.03em; color: #c2493c; }
.dx3c--ver .dx3c__big { color: var(--blue-900); }
.dx3c__b { margin: 8px 0 0; display: grid; grid-template-columns: 120px 1fr; align-items: center; gap: 10px; font-size: 13px; color: var(--neutral-600); }
.dx3c__b i { position: relative; height: 8px; border-radius: 99px; background: #F0F1EE; overflow: hidden; }
.dx3c__b i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: calc(var(--p) * 100%); border-radius: inherit; background: #E2665A; }
.dx3c__b.is-bom i::after { background: #4fbf8a; }
.dx3c__print { position: relative; display: block; height: 220px; border-radius: 14px; overflow: hidden; box-shadow: 0 0 0 1px #ECEDEA; }
.dx3c__print img { display: block; width: 100%; object-fit: cover; object-position: top; }
.dx3c__print i { position: absolute; display: grid; place-items: center; width: 22px; height: 22px; margin: -11px; border-radius: 50%; font-style: normal; font-size: 11px; font-weight: 600; color: #fff; background: #E2665A; box-shadow: 0 0 0 4px rgba(226, 102, 90, .25); }
.dx3c__p { margin: 12px 0 0; display: flex; flex-direction: column; gap: 2px; font-size: 14px; line-height: 1.45; color: var(--neutral-700); }
.dx3c__p b { font-weight: 600; color: var(--neutral-900); }
.dx3c--ver .dx3c__p { display: block; color: var(--blue-900); }
@media (max-width: 1100px) {
  .dx3f__in { grid-template-columns: minmax(0, 1fr); padding: 88px 24px; gap: 40px; }
  .dx3f__pilha { height: 440px; max-width: 520px; width: 100%; margin: 0 auto; }
}
@media (max-width: 600px) {
  .dx3f__pilha { height: 400px; }
  .dx3c { width: 250px; padding: 18px; } .dx3c--mapa { width: 200px; top: 90px; } .dx3c--ver { left: 20px; }
  .dx3c__big { font-size: 38px; } .dx3c__print { height: 170px; } .dx3c__b { grid-template-columns: 100px 1fr; font-size: 12px; }
}

/* ===================== v8.3 | Relatório: o que o site custa ===================== */
.rx3h h1 { display: flex; flex-direction: column; font-size: clamp(36px, 4.2vw, 64px); }
.rx3h h1 em { font-style: italic; color: var(--yellow); }
.rx3h h1 em:empty { display: none; }
.rx3 .rxh__k span { color: #fff; }
.rx3h__lcp { position: absolute; right: -14px; top: -18px; z-index: 3; display: flex; flex-direction: column; gap: 2px; width: 220px; padding: 14px 16px; border-radius: 18px; background: rgba(1, 29, 38, .92); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .8); }
.rx3h__lcp b { font-weight: 300; font-size: 34px; line-height: 1; letter-spacing: -.02em; color: #F08A7E; }
.rx3h__lcp.is-bom b { color: #4fbf8a; }
.rx3h__lcp span { font-size: 12.5px; line-height: 1.35; color: var(--neutral-300); }
.rx3h__lcp[hidden] { display: none; }
.rx3h__fonte { margin: 0; font-size: 12.5px; color: var(--neutral-500); }
.rx[data-rx-estado="carregando"] .r3e, .rx[data-rx-estado="carregando"] .r3r, .rx[data-rx-estado="erro"] .r3e, .rx[data-rx-estado="erro"] .r3r { display: none; }
.rx[data-rx-estado="carregando"] .rxe--v3 { display: none; }
.rxe--v3 .rxe__in { grid-template-columns: minmax(0, 1fr) minmax(0, 520px); align-items: center; }
.rxe--v3 h2 { font-size: clamp(34px, 3.6vw, 54px); }
.rxe__mini { font-size: 14px !important; color: var(--neutral-400) !important; }

/* A espera */
.r3e { background: #F4F5F3; color: var(--neutral-900); }
.r3e__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 64px; align-items: center; }
.r3e__tx { display: flex; flex-direction: column; gap: 26px; }
.r3e__bars { display: flex; flex-direction: column; gap: 14px; }
.r3e__b { margin: 0; display: grid; grid-template-columns: 210px minmax(0, 1fr) 70px; gap: 16px; align-items: center; font-size: 15px; color: var(--neutral-700); }
.r3e__b i { height: 14px; border-radius: 99px; background: #E6E8E4; overflow: hidden; }
.r3e__b u { display: block; height: 100%; width: 0; border-radius: inherit; background: #E2665A; transition: width 1.6s cubic-bezier(.2, .7, .2, 1); }
.r3e__b.is-bom u { background: #4fbf8a; }
.r3e__b b { font-weight: 400; font-size: 22px; letter-spacing: -.02em; text-align: right; color: #c2493c; }
.r3e__b.is-bom b { color: #2f8f62; }
.r3e__b.is-ok-voce u { background: #4fbf8a; } .r3e__b.is-ok-voce b { color: #2f8f62; }
.r3e__frase { margin: 0; max-width: 560px; padding: 18px 22px; border-radius: 18px; background: #fff; box-shadow: inset 3px 0 #E2665A, 0 0 0 1px rgba(34, 37, 38, .05); font-size: 16.5px; line-height: 1.55; color: var(--neutral-800); }
.r3e__fatos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.r3e__fatos li { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .05); font-size: 13px; line-height: 1.35; color: var(--neutral-600); }
.r3e__fatos b { font-weight: 400; font-size: 22px; letter-spacing: -.02em; color: var(--neutral-900); }
.r3e__fatos li.is-ruim b { color: #c2493c; } .r3e__fatos li.is-medio b { color: #a8720a; } .r3e__fatos li.is-bom b { color: #2f8f62; }
.r3e__palco { display: flex; flex-direction: column; align-items: center; gap: 22px; }
.r3e__fone { width: 300px; padding: 10px; border-radius: 44px; background: var(--blue-900); box-shadow: 0 0 0 1px rgba(34, 37, 38, .1), 0 60px 90px -50px rgba(1, 29, 38, .7); }
.r3e__tela { position: relative; aspect-ratio: 9 / 19; border-radius: 34px; overflow: hidden; background: #fff; }
.r3e__url { position: absolute; z-index: 3; left: 0; right: 0; top: 0; margin: 0; padding: 26px 16px 10px; background: #F1F2F0; font-size: 11.5px; color: var(--neutral-600); text-align: center; }
.r3e__url i { position: absolute; left: 0; bottom: 0; height: 3px; width: 0; background: var(--yellow); }
.r3e__branco { position: absolute; inset: 0; display: grid; place-items: center; background: #fff; }
.r3e__giro { width: 30px; height: 30px; border-radius: 50%; border: 3px solid #E6E8E4; border-top-color: #9aa3a6; animation: rx-gira 1s linear infinite; opacity: 0; }
.r3e__tela img { position: absolute; inset: 52px 0 0; width: 100%; height: calc(100% - 52px); object-fit: cover; object-position: top; opacity: 0; transition: opacity .25s; }
.r3e__tela[data-fase="pronto"] img { opacity: 1; }
.r3e__tela[data-fase="esperando"] .r3e__giro { opacity: 1; }
.r3e__tela[data-fase="sinal"] img { opacity: .18; filter: blur(6px); }
.r3e__tela[data-fase="sinal"] .r3e__giro { opacity: 1; }
.r3e__ctl { display: flex; align-items: center; gap: 20px; }
.r3e__crono { margin: 0; display: flex; flex-direction: column; }
.r3e__crono b { font-weight: 300; font-size: 34px; line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; color: var(--neutral-900); min-width: 110px; }
.r3e__crono span { font-size: 12.5px; color: var(--neutral-500); }
.r3e.is-rodando .r3e__crono b { color: #c2493c; }

/* Onde dói */
.r3m .rxm__det-c { display: none; }
.rxm__det-v { margin: 0; font-size: 14px; line-height: 1.5; color: var(--neutral-300); } .rxm__det-v b { color: #fff; font-weight: 500; }
.rxm__det-x { margin: 0; padding: 12px 14px; border-radius: 14px; background: rgba(226, 102, 90, .12); box-shadow: inset 3px 0 #E2665A; font-size: 15px; line-height: 1.55; color: #fff; }
.rxm__det-x b { display: block; margin-bottom: 2px; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: #F08A7E; }

/* Remendo ou site novo */
.r3r { background: #fff; color: var(--neutral-900); }
.r3r__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.r3r__grade { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr) minmax(0, 1fr); gap: 16px; align-items: stretch; }
.r3r__num { display: flex; flex-direction: column; justify-content: space-between; gap: 18px; padding: 28px; border-radius: 24px; background: var(--blue-900); color: #fff; box-shadow: 0 40px 70px -40px rgba(1, 29, 38, .6); }
.r3r__big { margin: 0; display: flex; align-items: baseline; gap: 12px; }
.r3r__big b { font-weight: 200; font-size: 96px; line-height: .9; letter-spacing: -.05em; color: #F08A7E; }
.r3r__big > span { font-size: 22px; color: var(--neutral-300); }
.r3r__d { margin: 0; font-size: 17px; line-height: 1.5; color: var(--neutral-200); }
.r3r__col { padding: 24px; border-radius: 24px; background: #F4F5F3; }
.r3r__t { margin: 0 0 12px; display: flex; align-items: center; justify-content: space-between; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #c2493c; }
.r3r__t span { display: grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; border-radius: 99px; background: #fff; font-size: 13px; letter-spacing: 0; color: var(--neutral-900); }
.r3r__col--sup .r3r__t { color: #a8720a; }
.r3r__col ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.r3r__col li { padding: 11px 14px; border-radius: 12px; background: #fff; font-size: 14.5px; line-height: 1.4; color: var(--neutral-800); box-shadow: inset 3px 0 #E2665A; }
.r3r__col--sup li { box-shadow: inset 3px 0 var(--yellow); }
.r3r__col li.is-vazio { box-shadow: none; color: var(--neutral-500); }
.r3r__cmp { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 16px 40px; align-items: start; padding: 28px; border-radius: 24px; background: #F4F5F3; }
.r3r__cmp .s6ad__tg { flex-direction: column; align-items: stretch; border-radius: 20px; }
.r3r__cmp .s6ad__tg button { border-radius: 14px; text-align: left; }
.r3r__lst { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.r3r__lst li { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 14px; background: #fff; font-size: 15px; line-height: 1.4; animation: g3-entra .45s calc(var(--d) * .08s) both; }
.r3r__lst--remendo i { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; font-style: normal; font-size: 15px; color: #fff; background: #E2665A; }
.r3r__lst--novo svg { flex: none; width: 24px; height: 24px; padding: 5px; border-radius: 50%; background: var(--blue-900); color: var(--yellow); }
.r3r__cmp[data-modo="novo"] .r3r__lst--remendo, .r3r__cmp[data-modo="remendo"] .r3r__lst--novo { display: none; }
@media (max-width: 1100px) {
  .r3e__in { grid-template-columns: minmax(0, 1fr); padding: 88px 24px; gap: 48px; }
  .r3r__in { padding: 88px 24px; }
  .r3r__grade { grid-template-columns: minmax(0, 1fr); }
  .r3r__cmp { grid-template-columns: minmax(0, 1fr); }
  .rxe--v3 .rxe__in { grid-template-columns: minmax(0, 1fr); }
  .rx3h__lcp { right: 0; top: -10px; width: 190px; } .rx3h__lcp b { font-size: 28px; }
}
@media (max-width: 600px) {
  .r3e__b { grid-template-columns: minmax(0, 1fr) 64px; } .r3e__b span { grid-column: 1 / -1; font-size: 13.5px; } .r3e__b b { font-size: 18px; }
  .r3e__fatos { grid-template-columns: minmax(0, 1fr); }
  .r3e__fone { width: 250px; }
  .r3r__big b { font-size: 76px; }
  .r3r__lst { grid-template-columns: minmax(0, 1fr); }
  .r3r__cmp { padding: 18px; }
}
.dx3c--espera { width: 300px; } .dx3c__b { grid-template-columns: 112px minmax(0, 1fr); }
.dx3c--mapa { top: 40px; } .dx3c__print { height: 250px; }
.dx3c--ver { left: 20px; bottom: 10px; width: 320px; }

/* ===================== v8.3 | Esboço da solução ===================== */
.es3v { position: relative; padding: 20px 0 40px 40px; }
.es3v__tela { position: relative; margin: 0; border-radius: 14px; overflow: hidden; background: #0c2a35; transform: perspective(1400px) rotateY(-8deg); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(249, 250, 250, .14); }
.es3v__tela img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; }
.es3v__doc { position: absolute; z-index: 2; left: -10px; bottom: -6px; width: 300px; padding: 20px; border-radius: 22px; background: #fff; color: var(--neutral-900); box-shadow: 0 50px 90px -40px rgba(0, 0, 0, .85); }
.es3v__k { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
.es3v__t { margin: 8px 0 14px; font-weight: 400; font-size: 22px; line-height: 1.15; letter-spacing: -.02em; }
.es3v__t em { display: block; font-style: italic; color: #12597C; }
.es3v__cam { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.es3v__cam li { display: grid; grid-template-columns: 30px 1fr; gap: 10px; align-items: start; padding: 10px 12px; border-radius: 12px; background: #F4F5F3; font-size: 13px; line-height: 1.35; color: var(--neutral-600); animation: g3-entra .5s calc(.4s + var(--d) * .25s) both; }
.es3v__cam b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 9px; background: var(--blue-900); color: var(--yellow); font-weight: 400; font-size: 11px; }
.es3v__cam strong { display: block; font-weight: 600; font-size: 13.5px; color: var(--neutral-900); }
.es3v__q { position: absolute; z-index: 2; top: -6px; right: -16px; width: 250px; padding: 14px 16px; border-radius: 18px; background: rgba(1, 29, 38, .9); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.es3v__q p { margin: 0; font-size: 14px; line-height: 1.45; font-style: italic; color: #fff; }
.es3v__q span { display: block; margin-top: 6px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--yellow); }
@media (max-width: 1100px) { .es3v { padding: 30px 0 230px 0; } .es3v__tela { transform: none; } .es3v__doc { left: 0; bottom: 0; } .es3v__q { right: 0; } }
@media (max-width: 600px) { .es3v__doc { width: 100%; } .es3v__q { width: 210px; top: 0; } .es3v__q p { font-size: 12.5px; } }

.es3x { background: #fff; color: var(--neutral-900); }
.es3x__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; display: flex; flex-direction: column; gap: 30px; }
.es3x .s2-cab { max-width: none; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 400px); grid-template-areas: "chip ." "h2 lead"; gap: 16px 48px; align-items: end; }
.es3x .s2-cab > .chip { grid-area: chip; justify-self: start; } .es3x .s2-cab h2 { grid-area: h2; font-size: clamp(30px, 3vw, 44px); } .es3x .s2-cab__lead { grid-area: lead; margin: 0; font-size: 16px; }
.es3x__app { display: flex; flex-direction: column; gap: 18px; }
.es3x__palco { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: 36px; align-items: center; }
.es3x__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.es3x__p.is-on { animation: cr-in .5s cubic-bezier(.2, .7, .2, 1); }
.es3x__prob { margin: 0; font-size: 20px; line-height: 1.4; font-weight: 300; letter-spacing: -.01em; }
.es3x__prob span { display: block; margin-bottom: 6px; font-size: 12px; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
.es3x__cam { margin: 18px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.es3x__cam li { display: flex; flex-direction: column; gap: 2px; padding: 12px 16px; border-radius: 14px; background: #F4F5F3; font-size: 14px; line-height: 1.45; color: var(--neutral-600); }
.es3x__cam b { font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: #12597C; }
.es3x__cam strong { font-weight: 600; font-size: 15px; color: var(--neutral-900); }
@media (max-width: 1100px) { .es3x__in { padding: 72px 24px; } .es3x .s2-cab { grid-template-columns: minmax(0, 1fr); grid-template-areas: "chip" "h2" "lead"; } .es3x__palco { grid-template-columns: minmax(0, 1fr); } }

/* Esboço recebido */
.es3rh { background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .08), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.es3rh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 96px; display: flex; flex-direction: column; gap: 28px; }
.es3rh__ex { display: none; }
.es3r[data-es-estado="exemplo"] .es3rh__ex { display: flex; }
.es3rh__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 600px); gap: 56px; align-items: center; }
.es3rh__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.es3rh__tx .rxh__k span { color: #fff; }
.es3rh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(38px, 4.4vw, 66px); line-height: 1.02; letter-spacing: -.03em; color: #fff; }
.es3rh h1 em { font-style: italic; color: var(--yellow); }
.es3rh__q { display: flex; flex-direction: column; gap: 10px; width: 100%; max-width: 580px; }
.es3rh__q p { margin: 0; display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 14px; padding: 14px 16px; border-radius: 16px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.es3rh__q span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); padding-top: 3px; }
.es3rh__q q { font-size: 15.5px; line-height: 1.5; font-style: italic; color: var(--neutral-100); overflow-wrap: anywhere; }
.es3rh__vis { position: relative; }
.es3rh__tela { margin: 0; border-radius: 14px; overflow: hidden; background: #0c2a35; box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(249, 250, 250, .14); }
.es3rh__tela img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; }
.es3rh__mods { position: absolute; left: -24px; bottom: -30px; margin: 0; padding: 14px; list-style: none; display: flex; flex-direction: column; gap: 6px; border-radius: 18px; background: rgba(1, 29, 38, .92); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.es3rh__mods li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: #fff; animation: g3-entra .45s calc(.3s + var(--d) * .15s) both; }
.es3rh__mods b { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--yellow); color: var(--blue-900); font-weight: 500; font-size: 11px; }
.es3e { background: #F4F5F3; color: var(--neutral-900); }
.es3e__in, .es3s__in, .es3c__in { max-width: 1286px; margin: 0 auto; padding: 104px 40px; display: flex; flex-direction: column; gap: 36px; }
.es3e__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.es3m { display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06), 0 40px 70px -50px rgba(1, 29, 38, .4); animation: g3-entra .5s calc(var(--d) * .12s) both; }
.es3m:first-child { box-shadow: 0 0 0 2px var(--yellow), 0 40px 70px -50px rgba(1, 29, 38, .4); }
.es3m__tela { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #EEF1F2; }
.es3m__tela img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: left top; }
.es3m__tx { display: flex; flex-direction: column; gap: 8px; padding: 22px; }
.es3m__n { margin: 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #a8720a; }
.es3m h3 { margin: 0; font-weight: 400; font-size: 22px; line-height: 1.2; letter-spacing: -.01em; }
.es3m p:not(.es3m__n) { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.es3s { background: radial-gradient(40% 60% at 100% 0%, rgba(244, 182, 63, .12), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.es3s__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.es3s__grade li { display: flex; flex-direction: column; gap: 10px; padding: 26px; border-radius: 24px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); animation: g3-entra .5s calc(var(--d) * .12s) both; }
.es3s__ic { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--yellow); color: var(--blue-900); }
.es3s__grade h3 { margin: 6px 0 0; font-weight: 400; font-size: 22px; color: #fff; }
.es3s__grade p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-300); }
.es3s__reg { margin-top: auto !important; padding-top: 12px; border-top: 1px solid rgba(249, 250, 250, .1); font-size: 13px !important; color: var(--yellow) !important; }
.es3c { background: #fff; color: var(--neutral-900); }
.es3c__linha { position: relative; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.es3c__linha::before { content: ""; position: absolute; left: 28px; right: 28px; top: 27px; height: 2px; background: repeating-linear-gradient(90deg, var(--yellow) 0 8px, transparent 8px 14px); }
.es3c__linha li { position: relative; display: flex; flex-direction: column; gap: 8px; animation: g3-entra .5s calc(var(--d) * .12s) both; }
.es3c__linha b { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 18px; background: var(--blue-900); color: var(--yellow); font-weight: 400; font-size: 15px; box-shadow: 0 0 0 6px #fff; }
.es3c__linha h3 { margin: 10px 0 0; font-weight: 400; font-size: 22px; }
.es3c__linha p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--neutral-600); }
.es3c__linha em { margin-top: 4px; align-self: flex-start; padding: 6px 12px; border-radius: 99px; background: #FFF6DF; font-style: normal; font-size: 12.5px; color: #8a5d05; }
.es3c__nota { margin: 0; font-size: 13px; color: var(--neutral-500); }
.es3p .rxe__op.is-ok b::after { content: " · link copiado"; color: var(--yellow); font-weight: 400; }
@media (max-width: 1100px) {
  .es3rh__in { padding: 120px 24px 72px; } .es3rh__grade { grid-template-columns: minmax(0, 1fr); }
  .es3rh__mods { position: static; margin-top: 14px; }
  .es3e__in, .es3s__in, .es3c__in { padding: 80px 24px; }
  .es3e__grade, .es3s__grade { grid-template-columns: minmax(0, 1fr); }
  .es3c__linha { grid-template-columns: minmax(0, 1fr); } .es3c__linha::before { left: 27px; right: auto; top: 28px; bottom: 28px; width: 2px; height: auto; background: repeating-linear-gradient(180deg, var(--yellow) 0 8px, transparent 8px 14px); }
}
@media (max-width: 600px) { .es3rh__q p { grid-template-columns: minmax(0, 1fr); gap: 4px; } }
.es3v__tela img, .es3rh__tela img { height: auto; }
.es3v__q span, .es3x__prob span { display: inline; margin: 0; font-size: inherit; letter-spacing: inherit; text-transform: none; color: inherit; }
.es3v__q > span, .es3x__prob > span:first-child { display: block; }
.es3v__q > span { margin-top: 6px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--yellow); }
.es3x__prob > span:first-child { margin-bottom: 6px; font-size: 12px; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; color: #a8720a; }
@media (min-width: 1101px) { .es3v { padding: 10px 0 190px 70px; } .es3v__doc { left: 0; bottom: 0; } .es3v__q { top: -20px; } }
@media (max-width: 640px) { .migalha { max-width: 100%; } .migalha > *:last-child { min-width: 0; } }

/* v8.4 | título dos cenários: primeira linha sem quebra no desktop */
@media (min-width: 1101px) { .s2t--s6 .s2-cab h2 > span:first-child { white-space: nowrap; } }

/* v8.5 | Software House: "Quando chamar a gente" logo depois do hero, em fundo escuro (o trilho seguinte é claro) */
.qx--esc { background: radial-gradient(45% 60% at 0% 0%, rgba(18, 89, 124, .55), transparent 70%), radial-gradient(40% 50% at 100% 100%, rgba(244, 182, 63, .08), transparent 70%), #001B24; color: var(--neutral-100); }
.qx--esc h2 { color: #fff; } .qx--esc h2 .is-dim { color: var(--neutral-400); }
.qx--esc .qx__lead { color: var(--neutral-300); }
.qx--esc .qx__s { background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); color: var(--neutral-200); }
.qx--esc .qx__s:hover { background: rgba(249, 250, 250, .09); }
.qx--esc .qx__box { box-shadow: inset 0 0 0 1.5px rgba(249, 250, 250, .35); }
.qx--esc .qx__st b { color: #fff; } .qx--esc .qx__st small { color: var(--neutral-400); }
.qx--esc .qx__s[aria-pressed="true"] { background: rgba(244, 182, 63, .1); box-shadow: inset 0 0 0 1.5px var(--yellow); }
.qx--esc .qx__mapa { background: radial-gradient(50% 55% at 50% 50%, rgba(18, 89, 124, .75), transparent 75%), #0a2832; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .08); }
.qx--topo { background: #fff; }
.qx--topo .qx__s { background: #F4F5F3; }
.qx--topo .qx__s:hover, .qx--topo .qx__s[aria-pressed="true"] { background: #fff; }
.qx--topo + .ancora + .hz, .qx--topo ~ .hz--so-sh { box-shadow: inset 0 1px 0 rgba(34, 37, 38, .06); }
.ct-info__cid { white-space: nowrap; } .ct-info__cid i { font-style: normal; margin: 0 10px; color: var(--yellow); }

/* v8.7 | Posts no modelo interativo: capa com o desenho do tema, CTA de material, relacionados com link */
.pe3capa--ta { max-width: 1200px; }
.pe3capa__ta { display: block; aspect-ratio: 21 / 8; border-radius: 22px; overflow: hidden; container-type: inline-size; }
.pe3capa__ta > .ta { width: 100%; height: 100%; }
.pe3x__ta { display: block; aspect-ratio: 16 / 10; border-radius: 22px; overflow: hidden; container-type: inline-size; box-shadow: 0 50px 90px -50px rgba(0, 0, 0, .8); }
.pe3x__ta > .ta { width: 100%; height: 100%; }
.pe3c__vis--mat { display: grid; place-items: center; padding: 28px; background: radial-gradient(60% 70% at 50% 40%, rgba(244, 182, 63, .22), transparent 70%), var(--blue-900); }
.pe3c__vis--mat > .cv { width: 62%; height: auto; }
a.pe3r { color: inherit; text-decoration: none; } a.pe3r:hover b { text-decoration: underline; text-decoration-color: var(--yellow); text-underline-offset: 4px; }
.pe3r__k { font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: #a8720a; }
@media (max-width: 640px) { .pe3capa__ta { aspect-ratio: 16 / 9; border-radius: 14px; } }
.pe3capa__ta > .ta, .pe3x__ta > .ta { aspect-ratio: auto; }

/* ===== v8.7 Diagnóstico: placar com 10 dimensões ===== */
.rx4g { --c: var(--yellow); display: flex; align-items: center; gap: 28px; margin: 4px 0 8px; padding: 18px 22px; border-radius: 22px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); max-width: 560px; }
.rx4g.is-ruim { --c: #F08A7E; } .rx4g.is-medio { --c: var(--yellow); } .rx4g.is-bom { --c: #4fbf8a; }
.rx4g__nota { position: relative; flex: none; width: 120px; height: 120px; display: grid; place-content: center; text-align: center; }
.rx4g__nota svg { position: absolute; inset: 0; transform: rotate(-90deg); }
.rx4g__nota circle { fill: none; stroke: rgba(249, 250, 250, .1); stroke-width: 9; }
.rx4g__nota .rx4g__v { stroke: var(--c); stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--v, 0)); transition: stroke-dashoffset 1.2s cubic-bezier(.2, .7, .2, 1); }
.rx4g__nota b { font-weight: 200; font-size: 44px; line-height: 1; letter-spacing: -.03em; color: #fff; }
.rx4g__nota span { font-size: 11.5px; color: var(--neutral-400); }
.rx4g__gr { flex: 1; min-width: 0; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 9px; }
.rx4g__gr li { --c: var(--neutral-500); display: grid; grid-template-columns: 128px minmax(0, 1fr) 28px; align-items: center; gap: 10px; font-size: 13px; color: var(--neutral-300); }
.rx4g__gr li.is-ruim { --c: #E2665A; } .rx4g__gr li.is-medio { --c: var(--yellow); } .rx4g__gr li.is-bom { --c: #4fbf8a; }
.rx4g__gr span { white-space: nowrap; }
.rx4g__gr i { height: 6px; border-radius: 9px; background: rgba(249, 250, 250, .1); overflow: hidden; }
.rx4g__gr u { display: block; height: 100%; width: calc(var(--w, 0) * 100%); border-radius: inherit; background: var(--c); transition: width 1.2s .2s cubic-bezier(.2, .7, .2, 1); }
.rx4g__gr b { font-weight: 500; text-align: right; color: #fff; }
.rx[data-rx-estado="carregando"] .rx4g, .rx[data-rx-estado="erro"] .rx4g { display: none; }

.rx4p { background: #F4F5F3; color: var(--neutral-900); }
.rx4p__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.rx[data-rx-estado="carregando"] .rx4p, .rx[data-rx-estado="erro"] .rx4p { display: none; }
.rx4p__app { display: grid; grid-template-columns: minmax(0, 400px) minmax(0, 1fr); gap: 20px; align-items: start; }
.rx4p__nav { margin: 0; padding: 8px; list-style: none; border-radius: 24px; background: #fff; box-shadow: 0 30px 60px -45px rgba(1, 29, 38, .35); position: sticky; top: 96px; }
.dxn__g > p { margin: 0; padding: 14px 14px 6px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.dxn__g ul { margin: 0; padding: 0; list-style: none; }
.dxn { --c: var(--neutral-400); width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) 72px 34px; align-items: center; gap: 12px; padding: 11px 14px; border: 0; border-radius: 14px; background: none; font: inherit; text-align: left; color: var(--neutral-800); cursor: pointer; transition: background .2s; }
.dxn.is-ruim { --c: #E2665A; } .dxn.is-medio { --c: #E0A419; } .dxn.is-bom { --c: #2f9e6c; }
.dxn:hover { background: #F4F5F3; }
.dxn.is-on { background: var(--blue-900); color: #fff; }
.dxn__n { font-size: 14.5px; line-height: 1.3; }
.dxn__b { height: 6px; border-radius: 9px; background: rgba(1, 29, 38, .08); overflow: hidden; }
.dxn.is-on .dxn__b { background: rgba(249, 250, 250, .14); }
.dxn__b i { display: block; height: 100%; width: calc(var(--w) * 100%); background: var(--c); border-radius: inherit; }
.dxn > b { font-weight: 500; font-size: 15px; text-align: right; color: var(--c); }
.dxn.is-on > b { color: #fff; }
.dxn b em { font-style: normal; font-weight: 400; font-size: 10.5px; color: var(--neutral-500); }
.dxn.is-pend .dxn__n { color: var(--neutral-500); }
.dxn.is-pend.is-on .dxn__n { color: #fff; }
.rx4p__det { min-height: 560px; }
.rx4p__det.is-in .dxd { animation: g3-entra .4s both; }
.dxd { --c: var(--neutral-500); display: flex; flex-direction: column; gap: 24px; padding: 36px; border-radius: 28px; background: #fff; box-shadow: 0 30px 60px -45px rgba(1, 29, 38, .35); }
.dxd.is-ruim { --c: #D9564A; } .dxd.is-medio { --c: #C98E0B; } .dxd.is-bom { --c: #2f9e6c; }
.dxd__cab { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.dxd__g { margin: 0 0 6px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.dxd h3 { margin: 0; font-weight: 400; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.15; letter-spacing: -.01em; }
.dxd__nota { flex: none; margin: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.dxd__nota b { font-weight: 200; font-size: 64px; line-height: .9; letter-spacing: -.04em; color: var(--c); }
.dxd__nota span { font-size: 12.5px; color: var(--c); }
.dxd__nota.is-pend b { color: var(--neutral-300); }
.dxd__nota.is-pend span { color: var(--neutral-500); }
.dxd__res { margin: 0; font-size: 19px; line-height: 1.5; color: var(--neutral-900); max-width: 62ch; }
.dxd__pe { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 12px; }
.dxd__custa, .dxd__onde { margin: 0; padding: 18px 20px; border-radius: 18px; background: #F4F5F3; font-size: 15px; line-height: 1.5; color: var(--neutral-700); }
.dxd__custa b, .dxd__onde b { display: block; margin-bottom: 4px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--neutral-900); }
.dxd__onde.is-est { background: var(--blue-900); color: var(--neutral-200); }
.dxd__onde.is-est b { color: #F08A7E; }
.dxd__onde.is-sup b { color: #a8720a; }
.dxd--pend .dxd__custa { max-width: 62ch; }
.dxd__lk { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 500; color: var(--blue-700, #0B5A70); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.dxd__lk svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.rx4p__fonte { margin: 0; font-size: 12.5px; color: var(--neutral-500); }
/* visualizações */
.dxw { margin: 0; padding: 0; list-style: none; }
.dxw svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.dxw i { font-style: normal; }
.dxw--chk { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.dxw--chk li { display: flex; align-items: flex-start; gap: 12px; padding: 12px 14px; border-radius: 14px; background: #F4F5F3; }
.dxw--chk li > i, .dxw--srv li > i, .dxw__tipos i { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; color: #fff; background: #D9564A; }
.dxw .is-ok > i, .dxw--chk .is-ok > i { background: #2f9e6c; }
.dxw--chk .is-alerta > i { background: #E0A419; }
.dxw--chk span { display: flex; flex-direction: column; gap: 2px; font-size: 14.5px; line-height: 1.35; }
.dxw--chk b { font-weight: 500; }
.dxw--chk em { font-style: normal; font-size: 13px; color: var(--neutral-600); }
.dxw--esp { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 20px; align-items: center; }
.dxw__barras { display: flex; flex-direction: column; gap: 14px; }
.dxw__barras p { margin: 0; display: grid; grid-template-columns: 130px minmax(0, 1fr) 56px; align-items: center; gap: 12px; font-size: 13.5px; color: var(--neutral-700); }
.dxw__barras i { height: 14px; width: calc(var(--w) * 100%); border-radius: 9px; background: #D9564A; animation: dxw-cresce 1s .2s both cubic-bezier(.2, .7, .2, 1); transform-origin: left; }
.dxw__barras i.is-bom { background: #2f9e6c; }
.dxw__barras b { font-weight: 500; font-size: 16px; }
@keyframes dxw-cresce { from { transform: scaleX(0); } }
.dxw__fatos { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.dxw__fatos li { display: flex; align-items: baseline; gap: 10px; padding: 10px 14px; border-radius: 12px; background: #F4F5F3; font-size: 13.5px; color: var(--neutral-700); }
.dxw__fatos b { min-width: 56px; font-weight: 500; font-size: 16px; color: #2f9e6c; }
.dxw__fatos .is-medio b { color: #C98E0B; } .dxw__fatos .is-ruim b { color: #D9564A; }
.dxw--srv { display: flex; flex-direction: column; gap: 8px; }
.dxw--srv li { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto 92px; align-items: center; gap: 14px; padding: 13px 16px; border-radius: 14px; background: #F4F5F3; font-size: 14.5px; }
.dxw--srv b { font-weight: 500; }
.dxw--srv span { font-size: 13px; color: var(--neutral-600); }
.dxw--srv em { font-style: normal; font-size: 12.5px; text-align: right; color: var(--neutral-600); }
.dxw--srv .is-falha span { color: #c2493c; }
.dxw--prof ul:first-child { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.dxw--prof ul:first-child li { display: grid; grid-template-columns: 190px minmax(0, 1fr) 100px; align-items: center; gap: 14px; font-size: 14px; }
.dxw--prof ul:first-child i { position: relative; height: 12px; border-radius: 9px; background: linear-gradient(90deg, #D9564A calc(var(--w) * 100%), rgba(1, 29, 38, .07) 0); }
.dxw--prof ul:first-child b { font-weight: 500; font-size: 13.5px; text-align: right; }
.dxw__ref { margin: 14px 0 0; display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--neutral-600); }
.dxw__ref i { width: 18px; height: 4px; border-radius: 4px; background: rgba(1, 29, 38, .14); }
.dxw__ref i.is-bom { background: #2f9e6c; }
.dxw__k { margin: 20px 0 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.dxw__tags { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.dxw__tags li { padding: 7px 12px; border-radius: 99px; background: #FBE7E4; font-size: 13.5px; color: #a3392e; }
.dxw--cam ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.dxw--cam li { display: grid; grid-template-columns: minmax(0, 1fr) auto 28px; align-items: center; gap: 16px; padding: 12px 16px; border-radius: 14px; background: #F4F5F3; font-size: 14.5px; }
.dxw__pass { display: flex; gap: 6px; }
.dxw__pass i { width: 34px; height: 8px; border-radius: 9px; background: rgba(1, 29, 38, .08); }
.dxw__pass i.is-bom { background: #2f9e6c; } .dxw__pass i.is-medio { background: #E0A419; } .dxw__pass i.is-ruim { background: #D9564A; }
.dxw--cam b { font-weight: 500; font-size: 17px; text-align: right; }
.dxw__tipos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.dxw__tipos li { display: flex; align-items: center; gap: 10px; padding: 11px 12px; border-radius: 14px; background: #F4F5F3; font-size: 13.5px; line-height: 1.3; }
.dxw__tipos li.is-falha { color: var(--neutral-500); }
.dxw__pgs { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 6px; }
.dxw__pgs li { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: 12px; background: #E9F5EF; font-size: 12.5px; color: var(--neutral-700); }
.dxw__pgs li.is-falha { background: #FBE7E4; }
.dxw__pgs b { font-weight: 500; font-size: 20px; line-height: 1; color: #2f9e6c; }
.dxw__pgs .is-falha b { color: #D9564A; }
.dxw__form { padding: 18px 20px; border-radius: 18px; background: #F4F5F3; }
.dxw__form > p { margin: 0 0 12px; display: flex; align-items: baseline; gap: 10px; }
.dxw__form > p b { font-weight: 500; font-size: 16px; }
.dxw__form > p span { font-size: 13px; color: var(--neutral-600); }
.dxw__form ul { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.dxw__form li { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: 12px; background: #fff; font-size: 12.5px; color: var(--neutral-600); }
.dxw__form li b { font-weight: 400; font-size: 24px; line-height: 1.1; color: var(--neutral-900); }
.dxw__form li.is-falha b { color: #D9564A; }
.r3r__col li b { float: right; font-weight: 500; color: #c2493c; margin-left: 10px; }
.r3r__col--sup li b { color: #a8720a; }
.rx[data-rx-estado="carregando"] .rx4v, .rx[data-rx-estado="erro"] .rx4v { display: none; }
@media (max-width: 1080px) {
  .rx4p__app { grid-template-columns: minmax(0, 1fr); }
  .rx4p__nav { position: static; display: grid; grid-template-columns: 1fr 1fr; }
  .rx4p__det { min-height: 0; }
}
@media (max-width: 720px) {
  .rx4p__in { padding: 80px 20px; }
  .rx4g { flex-direction: column; align-items: stretch; gap: 16px; padding: 18px; }
  .rx4g__nota { align-self: center; }
  .rx4g__gr li { grid-template-columns: 118px minmax(0, 1fr) 26px; }
  .rx4p__nav { grid-template-columns: minmax(0, 1fr); }
  .dxn { grid-template-columns: minmax(0, 1fr) 54px 30px; }
  .dxd { padding: 22px 18px; gap: 18px; border-radius: 22px; }
  .dxd__nota b { font-size: 48px; }
  .dxd__res { font-size: 17px; }
  .dxd__pe, .dxw--chk, .dxw--esp { grid-template-columns: minmax(0, 1fr); }
  .dxw__barras p { grid-template-columns: 96px minmax(0, 1fr) 48px; }
  .dxw--srv li { grid-template-columns: 24px minmax(0, 1fr) 70px; }
  .dxw--srv li span { grid-column: 2 / 4; grid-row: 2; }
  .dxw--prof ul:first-child li { grid-template-columns: minmax(0, 1fr) 90px; }
  .dxw--prof ul:first-child i { grid-column: 1 / 3; grid-row: 2; }
  .dxw--cam li { grid-template-columns: minmax(0, 1fr) 28px; }
  .dxw__pass { grid-column: 1 / 3; grid-row: 2; }
  .dxw__pass i { flex: 1; }
  .dxw__tipos, .dxw__form ul { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px){ .rx4g{max-width:none} }

/* ===== v8.7 Esboço da solução (refeito) ===== */
.es4h .svh__txt { gap: 22px; }
.es4in { width: 100%; max-width: 600px; display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 22px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); backdrop-filter: blur(8px); }
.es4in label { font-size: 13px; letter-spacing: .02em; color: var(--yellow); }
.es4in textarea { width: 100%; resize: vertical; min-height: 84px; padding: 14px 16px; border: 0; border-radius: 14px; background: #fff; font: inherit; font-size: 16px; line-height: 1.45; color: var(--neutral-900); }
.es4in textarea:focus { outline: 2px solid var(--yellow); outline-offset: 2px; }
.es4in__pe { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
.es4in__ex { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.es4in__ex button { padding: 7px 12px; border: 0; border-radius: 99px; background: rgba(249, 250, 250, .08); font: inherit; font-size: 12.5px; color: var(--neutral-200); cursor: pointer; transition: background .2s, color .2s; }
.es4in__ex button:hover, .es4in__ex button.is-on { background: var(--yellow); color: var(--blue-900); }
.es4in .btn { flex: none; }
/* esboço ao vivo */
.es4v { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); }
.es4v__tela { margin: 0 0 0 22%; border-radius: 14px; overflow: hidden; background: #0c2a35; box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(249, 250, 250, .14); opacity: .55; transition: opacity .5s; }
.es4v__tela img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; }
.es4v.is-cheio .es4v__tela { opacity: 1; }
.es4v__doc { position: absolute; left: 0; top: 50%; z-index: 2; width: min(62%, 360px); transform: translateY(-46%); display: flex; flex-direction: column; gap: 6px; padding: 20px; border-radius: 20px; background: rgba(1, 29, 38, .94); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 40px 80px -30px rgba(0, 0, 0, .85); }
.es4v__k { margin: 0 0 4px; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.es4v__k em { font-style: normal; color: var(--neutral-400); }
.es4v__t { margin: 0; font-weight: 300; font-size: 24px; line-height: 1.12; letter-spacing: -.01em; color: #fff; }
.es4v__t em { display: block; font-style: italic; color: var(--yellow); }
.es4v__s { margin: 0 0 6px; font-size: 13px; line-height: 1.4; color: var(--neutral-400); }
.es4v__l { margin: 8px 0 2px; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.es4v__mods, .es4v__ia { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.es4v__mods li { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 11px; background: rgba(249, 250, 250, .06); font-size: 13.5px; color: #fff; animation: g3-entra .45s calc(var(--d, 0) * .12s) both; }
.es4v__mods i { flex: none; font-style: normal; font-size: 11px; color: var(--yellow); }
.es4v__ia { flex-direction: row; flex-wrap: wrap; }
.es4v__ia li { padding: 6px 10px; border-radius: 99px; background: rgba(244, 182, 63, .14); font-size: 12px; color: var(--yellow); animation: g3-entra .45s calc(.3s + var(--d, 0) * .12s) both; }
.es4v li.is-vazio { min-height: 32px; background: linear-gradient(90deg, rgba(249, 250, 250, .05), rgba(249, 250, 250, .1), rgba(249, 250, 250, .05)); background-size: 200% 100%; animation: es4-sk 1.6s linear infinite; }
.es4v__ia li.is-vazio { width: 110px; min-height: 26px; }
@keyframes es4-sk { to { background-position: -200% 0; } }
/* o que você recebe */
.es4r { background: #fff; color: var(--neutral-900); }
.es4r__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.es4r__cab { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px 40px; flex-wrap: wrap; }
.es4r__cab .s2t__nav { align-self: flex-end; }
.es4r__p { display: grid; grid-template-columns: minmax(0, 400px) minmax(0, 1fr); gap: 56px; align-items: center; padding: 40px; border-radius: 28px; background: #F4F5F3; }
.es4r__p.is-on { animation: g3-entra .45s both; }
.es4r__p[hidden] { display: none; }
.es4r__n { margin: 0 0 10px; font-size: 13px; color: #a8720a; }
.es4r__tx h3 { margin: 0 0 12px; font-weight: 400; font-size: clamp(26px, 2.4vw, 34px); line-height: 1.12; letter-spacing: -.01em; }
.es4r__tx p:last-child { margin: 0; font-size: 17px; line-height: 1.55; color: var(--neutral-700); }
.es4r__pe { margin: 0; }
.es4r__pe .ih__lk { color: var(--blue-900); }
.es4m { margin: 0; padding: 0; list-style: none; }
.es4m--proj { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); grid-template-areas: "k img" "t img" "c img" "f f"; gap: 10px 24px; padding: 26px; border-radius: 22px; background: var(--blue-900); color: #fff; }
.es4m__k { grid-area: k; margin: 0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); }
.es4m__t { grid-area: t; margin: 0; font-weight: 300; font-size: 26px; line-height: 1.1; }
.es4m__t em { display: block; font-style: italic; color: var(--yellow); }
.es4m__chips { grid-area: c; margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; align-content: flex-start; }
.es4m__chips li { padding: 6px 11px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-size: 12.5px; }
.es4m__img { grid-area: img; border-radius: 12px; overflow: hidden; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); }
.es4m__img img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; }
.es4m__fl { grid-area: f; margin: 8px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; counter-reset: f; }
.es4m__fl li { counter-increment: f; padding: 10px 12px; border-radius: 12px; background: rgba(249, 250, 250, .06); font-size: 12.5px; line-height: 1.3; color: var(--neutral-200); }
.es4m__fl li::before { content: "0" counter(f); display: block; margin-bottom: 3px; font-size: 10.5px; color: var(--yellow); }
.es4m--ia { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.es4m--ia li { display: flex; gap: 12px; padding: 16px; border-radius: 18px; background: #fff; box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .08); }
.es4m--ia li.is-on { box-shadow: inset 0 0 0 2px var(--blue-900); }
.es4m--ia i { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; box-shadow: inset 0 0 0 1.5px rgba(1, 29, 38, .25); color: transparent; }
.es4m--ia li.is-on i { background: var(--blue-900); color: var(--yellow); box-shadow: none; }
.es4m--ia i svg { width: 14px; height: 14px; }
.es4m--ia span { display: flex; flex-direction: column; gap: 3px; font-size: 13.5px; line-height: 1.4; color: var(--neutral-600); }
.es4m--ia b { font-weight: 500; font-size: 15px; color: var(--neutral-900); }
.es4m--prop { max-width: 440px; justify-self: center; display: flex; flex-direction: column; gap: 16px; padding: 28px; border-radius: 24px; background: var(--blue-900); color: #fff; }
.es4m--prop dl { margin: 0; display: flex; flex-direction: column; gap: 1px; border-radius: 14px; overflow: hidden; }
.es4m--prop dl div { display: flex; justify-content: space-between; gap: 12px; padding: 12px 14px; background: rgba(249, 250, 250, .06); font-size: 14px; }
.es4m--prop dt { color: var(--neutral-400); } .es4m--prop dd { margin: 0; color: #fff; }
.es4m__nota { margin: 0; font-size: 12.5px; color: var(--neutral-400); }
.es4r__vis { display: grid; }
/* esboço do projeto: topo */
.es4rh { background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .08), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.es4rh__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 96px; display: flex; flex-direction: column; gap: 28px; }
.es4rh__ex { display: none; }
.es4[data-es-estado="exemplo"] .es4rh__ex { display: flex; }
.es4rh__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 620px); gap: 56px; align-items: center; }
.es4rh__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.es4rh__tx .rxh__k span { color: #fff; }
.es4rh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 4.6vw, 68px); line-height: 1.02; letter-spacing: -.03em; color: #fff; }
.es4rh h1 em { font-style: italic; color: var(--yellow); }
.es4rh__obj { margin: 0; max-width: 560px; font-size: 18px; line-height: 1.5; color: var(--neutral-200); }
.es4rh__obj:empty { display: none; }
.es4rh__fatos { margin: 6px 0 4px; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; width: 100%; max-width: 580px; border-radius: 16px; overflow: hidden; }
.es4rh__fatos li { display: flex; flex-direction: column; gap: 2px; padding: 14px 16px; background: rgba(249, 250, 250, .06); }
.es4rh__fatos b { font-weight: 200; font-size: 34px; line-height: 1; color: var(--yellow); }
.es4rh__fatos span { font-size: 12.5px; line-height: 1.3; color: var(--neutral-300); }
.es4rh__tela { margin: 0; border-radius: 14px; overflow: hidden; background: #0c2a35; transform: perspective(1400px) rotateY(-8deg); box-shadow: 0 60px 100px -50px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(249, 250, 250, .14); }
.es4rh__tela img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; }
.es4rh__nota { margin: 14px 0 0; text-align: center; font-size: 12px; letter-spacing: .06em; color: var(--neutral-500); }
/* esboço do projeto: documento */
.es4d { background: #F4F5F3; color: var(--neutral-900); }
.es4d__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 20px; }
.es4d__in > .s2-cab { margin-bottom: 20px; }
.es4d__bloco { padding: 32px; border-radius: 28px; background: #fff; box-shadow: 0 30px 60px -50px rgba(1, 29, 38, .35); }
.es4d__l { margin: 0 0 20px; display: flex; align-items: center; gap: 12px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-600); }
.es4d__l b { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--blue-900); font-weight: 400; font-size: 12px; letter-spacing: 0; color: var(--yellow); }
.es4o { display: grid; grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr); gap: 16px; align-items: stretch; }
.es4o p { margin: 0; display: flex; flex-direction: column; gap: 8px; padding: 22px 24px; border-radius: 20px; background: #FBEFED; }
.es4o p span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c2493c; }
.es4o q { font-size: 18px; line-height: 1.5; color: var(--neutral-900); quotes: "\201C" "\201D"; }
.es4o .es4o__ok { background: #E9F5EF; } .es4o .es4o__ok span { color: #237a53; }
.es4o > i { align-self: center; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--blue-900); color: var(--yellow); }
.es4o > i svg { width: 18px; height: 18px; }
.es4u { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; }
.es4u li { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px; border-radius: 18px; background: #F4F5F3; font-size: 14.5px; line-height: 1.45; color: var(--neutral-700); }
.es4u b { font-weight: 500; font-size: 16px; color: var(--neutral-900); }
.es4u li:last-child { background: none; box-shadow: inset 0 0 0 1px rgba(1, 29, 38, .1); }
.es4mo { display: flex; flex-direction: column; gap: 22px; }
.es4mo__palco { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.es4mo__n { margin: 0 0 8px; font-size: 13px; color: #a8720a; }
.es4mo__tx h3 { margin: 0 0 10px; font-weight: 400; font-size: clamp(24px, 2.2vw, 30px); line-height: 1.15; letter-spacing: -.01em; }
.es4mo__tx > p:not(.es4mo__n) { margin: 0 0 16px; font-size: 16.5px; line-height: 1.55; color: var(--neutral-700); }
.es4mo__tx ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.es4mo__tx li { display: flex; align-items: center; gap: 10px; padding: 11px 14px; border-radius: 12px; background: #F4F5F3; font-size: 15px; }
.es4mo__tx li svg, .es4id__ck svg { flex: none; width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.es4mo__tx li svg { color: #237a53; }
.es4mo__tx { animation: g3-entra .4s both; }
.es4fl { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; position: relative; }
.es4fl li { position: relative; display: flex; flex-direction: column; gap: 12px; padding: 0 20px 0 0; font-size: 16px; line-height: 1.4; animation: g3-entra .45s calc(var(--d) * .1s) both; }
.es4fl li b { position: relative; z-index: 1; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--blue-900); font-weight: 400; font-size: 14px; color: var(--yellow); }
.es4fl li:not(:last-child)::after { content: ""; position: absolute; left: 44px; right: 0; top: 22px; height: 2px; background: repeating-linear-gradient(90deg, rgba(1, 29, 38, .25) 0 6px, transparent 6px 12px); }
.es4d__dupla { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 20px; }
.es4int { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.es4int li { padding: 10px 16px; border-radius: 99px; background: #F4F5F3; font-size: 14.5px; }
.es4et { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.es4et li { display: flex; gap: 14px; align-items: flex-start; padding: 14px 16px; border-radius: 14px; background: #F4F5F3; font-size: 14.5px; line-height: 1.45; color: var(--neutral-700); }
.es4et li > b { flex: none; font-weight: 400; font-size: 13px; color: #a8720a; padding-top: 2px; }
.es4et strong { display: block; font-weight: 500; font-size: 15.5px; color: var(--neutral-900); }
/* ideias de IA */
.es4i { background: radial-gradient(40% 60% at 100% 100%, rgba(18, 89, 124, .55), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.es4i__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.es4i__cab { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px 40px; flex-wrap: wrap; }
.es4i__regra { margin: 0; max-width: 360px; display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.45; color: var(--neutral-300); }
.es4i__regra svg { flex: none; color: var(--yellow); }
.es4i__grade { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.es4i__grade > li { animation: g3-entra .45s calc(var(--d) * .07s) both; }
.es4id { position: relative; height: 100%; display: flex; gap: 14px; padding: 22px; border-radius: 22px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); cursor: pointer; transition: background .25s, box-shadow .25s; }
.es4id:hover { background: rgba(249, 250, 250, .08); }
.es4id input { position: absolute; opacity: 0; pointer-events: none; }
.es4id__ck { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; box-shadow: inset 0 0 0 1.5px rgba(249, 250, 250, .35); color: transparent; transition: background .2s, color .2s; }
.es4id input:checked ~ .es4id__ck { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.es4id:has(input:checked) { background: rgba(244, 182, 63, .1); box-shadow: inset 0 0 0 1.5px rgba(244, 182, 63, .7); }
.es4id input:focus-visible ~ .es4id__ck { outline: 2px solid var(--yellow); outline-offset: 3px; }
.es4id__tx { display: flex; flex-direction: column; gap: 6px; font-size: 14.5px; line-height: 1.5; color: var(--neutral-300); }
.es4id__tx b { font-weight: 500; font-size: 17px; line-height: 1.3; color: #fff; }
.es4id__tx em { margin-top: auto; padding-top: 6px; font-style: normal; font-size: 12.5px; color: var(--neutral-500); }
.es4i__bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 16px 16px 26px; border-radius: 20px; background: rgba(249, 250, 250, .06); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.es4i__bar p { margin: 0; font-size: 16px; color: var(--neutral-200); }
.es4i__bar b { font-weight: 500; font-size: 22px; color: var(--yellow); }
/* proposta */
.es4x { background: #fff; color: var(--neutral-900); }
.es4x__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: 64px; align-items: center; }
.es4x__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.es4x h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.6vw, 54px); line-height: 1.05; letter-spacing: -.02em; }
.es4x h2 em { font-style: italic; color: var(--neutral-500); }
.es4x__tx > p { margin: 0; max-width: 560px; font-size: 17.5px; line-height: 1.55; color: var(--neutral-700); }
.es4x__mini { font-size: 14px !important; color: var(--neutral-500) !important; }
.es4x__ops { margin: 8px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.es4x__ops a, .es4x__ops button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 99px; background: #F4F5F3; font: inherit; font-size: 14px; color: var(--neutral-800); text-decoration: none; cursor: pointer; transition: background .2s; }
.es4x__ops a:hover, .es4x__ops button:hover { background: #E8EAE6; }
.es4x__ops svg { color: var(--blue-900); }
.es4t { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 32px; border-radius: 28px; background: var(--blue-900); color: #fff; box-shadow: 0 60px 100px -50px rgba(1, 29, 38, .7); }
.es4t::before { content: ""; position: absolute; left: 32px; right: 32px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--yellow); }
.es4t__k { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.es4t__t { margin: 0; font-weight: 300; font-size: 30px; line-height: 1.1; letter-spacing: -.01em; }
.es4t__emp { margin: -8px 0 4px; font-size: 14px; color: var(--neutral-400); }
.es4t__dl { margin: 0; display: flex; flex-direction: column; gap: 1px; border-radius: 16px; overflow: hidden; }
.es4t__dl > div { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 12px; padding: 14px 16px; background: rgba(249, 250, 250, .06); }
.es4t__dl dt { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-400); padding-top: 2px; }
.es4t__dl dd { margin: 0; }
.es4t__dl ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; font-size: 14.5px; line-height: 1.4; }
.es4t__dl li.is-vazio { color: var(--neutral-500); }
.es4t__btn { align-self: stretch; justify-content: space-between; }
.es4t__pe { margin: -4px 0 0; text-align: center; font-size: 12.5px; color: var(--neutral-400); }
@media (max-width: 1080px) {
  .es4rh__grade, .es4x__in, .es4mo__palco, .es4r__p { grid-template-columns: minmax(0, 1fr); }
  .es4i__grade { grid-template-columns: 1fr 1fr; }
  .es4d__dupla { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  .es4in__pe { flex-direction: column; align-items: stretch; }
  .es4v__tela { margin: 0; }
  .es4v__doc { position: relative; top: auto; transform: none; width: auto; margin: -40px 12px 0; }
  .es4v { display: flex; flex-direction: column; }
  .es4r__in, .es4d__in, .es4i__in, .es4x__in { padding: 80px 20px; }
  .es4rh__in { padding: 120px 20px 72px; }
  .es4r__p { padding: 20px; gap: 24px; border-radius: 22px; }
  .es4m--proj { grid-template-columns: minmax(0, 1fr); grid-template-areas: "k" "t" "c" "img" "f"; padding: 20px; }
  .es4m__fl { grid-template-columns: 1fr 1fr; }
  .es4m--ia { grid-template-columns: minmax(0, 1fr); }
  .es4rh__fatos { grid-template-columns: 1fr 1fr; }
  .es4d__bloco { padding: 22px 18px; border-radius: 22px; }
  .es4o { grid-template-columns: minmax(0, 1fr); }
  .es4o > i { justify-self: center; transform: rotate(90deg); width: 40px; height: 40px; }
  .es4fl { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .es4fl li { flex-direction: row; align-items: center; padding: 0; }
  .es4fl li:not(:last-child)::after { left: 21px; right: auto; top: 44px; width: 2px; height: 14px; background: rgba(1, 29, 38, .2); }
  .es4i__grade { grid-template-columns: minmax(0, 1fr); }
  .es4i__bar { flex-direction: column; align-items: stretch; padding: 18px; text-align: center; }
  .es4t { padding: 24px 20px; }
  .es4t__dl > div { grid-template-columns: minmax(0, 1fr); gap: 6px; }
}
.es4t__btn { align-self: flex-start; }
.es4v { padding-bottom: 70px; }
.es4v__tela { margin-left: 16%; }
.es4v__doc { top: auto; bottom: 0; transform: none; width: min(58%, 340px); }
.es4d__dupla { grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr); }
@media (max-width: 720px) { .es4v { padding-bottom: 0; } .es4v__doc { bottom: auto; width: auto; } }
.es4v__tela img, .es4rh__tela img { height: auto !important; aspect-ratio: 16 / 10; } .es4v__tela { align-self: start; }
.es4v { display: flex; flex-direction: column; padding-bottom: 0; }
.es4v__tela { margin-left: 18%; }
.es4v__doc { position: relative; bottom: auto; top: auto; margin-top: -120px; width: min(64%, 380px); background: #04222c; }
@media (max-width: 720px) { .es4v__tela { margin-left: 0; } .es4v__doc { margin: -40px 12px 0; width: auto; } }
.es4v__doc { margin-top: 0; } .es4v__tela { margin-top: -36px; }
@media (max-width: 720px) { .es4v__doc { margin: 0; } .es4v__tela { margin-top: 12px; } }

/* ===== v8.8 Diagnóstico: o mostrador ===== */
.d5dial { --r: #E2665A; --m: #F4B63F; --b: #4fbf8a; position: relative; }
.d5dial svg { display: block; width: 100%; height: auto; overflow: visible; }
.d5d__grade { fill: none; stroke: rgba(249, 250, 250, .08); stroke-width: 1; stroke-dasharray: 2 5; }
.d5d__grade--fim { stroke-dasharray: none; stroke: rgba(249, 250, 250, .1); }
.d5d__trk { fill: rgba(249, 250, 250, .045); transition: fill .3s; }
.d5d__v { fill: var(--c, rgba(249, 250, 250, .2)); }
.d5d__s { --c: rgba(249, 250, 250, .25); transition: opacity .3s; outline: none; }
.d5d__s.is-ruim { --c: var(--r); } .d5d__s.is-medio { --c: var(--m); } .d5d__s.is-bom { --c: var(--b); }
.d5d__s.is-pend .d5d__trk { fill: none; stroke: rgba(249, 250, 250, .28); stroke-width: 1.2; stroke-dasharray: 3 4; }
.d5d__s[role="button"] { cursor: pointer; }
.d5dial.is-foco .d5d__s:not(.is-on) { opacity: .3; }
.d5d__s.is-on .d5d__trk, .d5d__s:focus-visible .d5d__trk { fill: rgba(249, 250, 250, .1); }
.d5d__gr { fill: none; stroke: rgba(249, 250, 250, .22); stroke-width: 2; stroke-linecap: round; }
.d5d__l { font-family: var(--font); font-size: 12.5px; fill: var(--neutral-300); }
.d5d__l tspan { font-weight: 500; }
.d5d__l .is-ruim { fill: #F08A7E; } .d5d__l .is-medio { fill: var(--yellow); } .d5d__l .is-bom { fill: #6fd3a3; } .d5d__l .is-pend { fill: var(--neutral-500); }
.d5d__miolo { fill: #021a22; stroke: rgba(249, 250, 250, .12); }
.d5d__n { font-family: var(--font); font-weight: 200; font-size: 44px; letter-spacing: -1.5px; fill: #fff; }
.d5d__nk { font-family: var(--font); font-size: 8.5px; letter-spacing: 1.6px; text-transform: uppercase; fill: var(--neutral-400); }
.d5dial--mini .d5d__n { font-size: 52px; }

/* ===== v8.8 Diagnóstico: página ===== */
.d5lh h1 { font-size: clamp(48px, 5.6vw, 84px); }
.d5lh .svh__txt { gap: 24px; }
.d5lh .rxi { width: 100%; max-width: 580px; }
.d5hv { position: relative; padding: 24px 0 64px 40px; }
.d5hv__card { position: relative; padding: 18px 22px 26px; border-radius: 28px; background: rgba(1, 29, 38, .72); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12), 0 60px 100px -50px rgba(0, 0, 0, .9); backdrop-filter: blur(10px); }
.d5hv__top { margin: 0 0 6px; display: flex; align-items: center; gap: 10px; font-size: 12.5px; color: var(--neutral-300); }
.d5hv__top b { font-weight: 500; color: #fff; }
.d5hv__top em { margin-left: auto; padding: 4px 10px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-style: normal; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--neutral-300); }
.d5dial--hero { max-width: 500px; margin: 0 auto; }
.d5hv__log { position: absolute; left: -10px; bottom: 0; z-index: 2; width: 250px; padding: 16px 18px; border-radius: 18px; background: #04222c; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .9); }
.d5hv__log p { margin: 0 0 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.d5hv__log ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.d5hv__log li { display: flex; align-items: center; gap: 9px; font-size: 13px; color: var(--neutral-200); opacity: 0; animation: d5-log 10s calc(var(--d) * 1.6s) infinite; }
.d5hv__log li i { flex: none; width: 14px; height: 14px; border-radius: 50%; background: #4fbf8a; box-shadow: inset 0 0 0 3px #04222c; }
@keyframes d5-log { 0% { opacity: 0; transform: translateY(4px); } 6%, 82% { opacity: 1; transform: none; } 92%, 100% { opacity: 0; } }
.d5hv__ver { position: absolute; right: -14px; top: 0; z-index: 2; width: 210px; display: flex; flex-direction: column; gap: 2px; padding: 14px 16px; border-radius: 18px; background: #04222c; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14), 0 30px 60px -30px rgba(0, 0, 0, .9); }
.d5hv__k { margin: 0 0 4px; display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #F08A7E; }
.d5hv__k i { width: 7px; height: 7px; border-radius: 50%; background: #E2665A; box-shadow: 0 0 0 4px rgba(226, 102, 90, .22); }
.d5hv__ver b { font-weight: 200; font-size: 34px; line-height: 1; color: #fff; }
.d5hv__ver span { font-size: 12.5px; line-height: 1.35; color: var(--neutral-300); }
@media (prefers-reduced-motion: reduce) { .d5hv__log li { animation: none; opacity: 1; } }

.d5o__grade { grid-template-columns: minmax(0, 400px) minmax(0, 1fr); }
.d5o .s2l__tx b { font-weight: 500; }
.d5o__palco { display: flex; flex-direction: column; gap: 16px; padding: 24px; border-radius: 28px; background: var(--blue-900); box-shadow: 0 50px 90px -50px rgba(1, 29, 38, .7); }
.d5o__k { margin: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.d5o__k em { font-style: normal; letter-spacing: .04em; text-transform: none; color: var(--neutral-400); }
.d5o__cards { flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.d5o__cards.is-in .d5k { animation: g3-entra .45s both; }
.d5o__cards.is-in .d5k + .d5k { animation-delay: .08s; }

.d5c { background: radial-gradient(40% 60% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.d5c__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 48px; }
.d5c__passos { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.d5c__passos li { position: relative; display: flex; flex-direction: column; gap: 10px; }
.d5c__passos b { position: relative; z-index: 1; display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 8px; border-radius: 50%; background: var(--yellow); font-weight: 500; font-size: 15px; color: var(--blue-900); }
.d5c__passos li:not(:last-child)::after { content: ""; position: absolute; left: 64px; right: -20px; top: 26px; height: 1px; background: repeating-linear-gradient(90deg, rgba(249, 250, 250, .3) 0 6px, transparent 6px 12px); }
.d5c__passos h3 { margin: 0; font-weight: 400; font-size: 24px; color: #fff; }
.d5c__passos p { margin: 0; max-width: 34ch; font-size: 16px; line-height: 1.55; color: var(--neutral-300); }
.d5c__conf { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; padding-top: 32px; border-top: 1px solid rgba(249, 250, 250, .12); }
.d5c__conf p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--neutral-300); }
.d5c__conf b { font-weight: 500; color: #fff; }

.d5e { background: #fff; color: var(--neutral-900); }
.d5e__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 440px) minmax(0, 1fr); gap: 64px; align-items: center; }
.d5e__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.d5e__tx h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.4vw, 50px); line-height: 1.06; letter-spacing: -.02em; }
.d5e__tx h2 .is-dim { color: var(--neutral-500); }
.d5e__tx p { margin: 0; font-size: 17.5px; line-height: 1.55; color: var(--neutral-700); }
.d5e__prev { display: block; border-radius: 20px; overflow: hidden; background: var(--blue-900); color: #fff; text-decoration: none; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1), 0 70px 110px -60px rgba(1, 29, 38, .6); transition: transform .4s cubic-bezier(.2, .7, .2, 1); }
.d5e__prev:hover { transform: translateY(-4px); }
.d5e__bar { display: flex; align-items: center; gap: 6px; padding: 11px 14px; background: #0a2832; font-size: 12px; color: var(--neutral-400); }
.d5e__bar i { width: 9px; height: 9px; border-radius: 50%; background: rgba(249, 250, 250, .2); }
.d5e__bar span { margin-left: 12px; padding: 3px 12px; border-radius: 99px; background: rgba(249, 250, 250, .06); }
.d5e__tela { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 260px); gap: 24px; align-items: center; padding: 32px; background: radial-gradient(60% 80% at 100% 0%, rgba(18, 89, 124, .55), transparent 70%); }
.d5e__esq { display: flex; flex-direction: column; gap: 10px; }
.d5e__esq em { font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.d5e__esq > b { font-weight: 200; font-size: 76px; line-height: .9; letter-spacing: -.04em; color: #F08A7E; }
.d5e__esq > b small { font-size: 22px; letter-spacing: 0; color: var(--neutral-400); }
.d5e__esq > span:not(.d5e__top) { font-weight: 300; font-size: 24px; line-height: 1.15; color: #fff; }
.d5e__esq > span i { font-style: italic; color: var(--yellow); }
.d5e__top { margin-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.d5e__top span { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border-radius: 12px; background: rgba(249, 250, 250, .06); font-size: 13.5px; color: var(--neutral-200); }
.d5e__top u { min-width: 26px; text-decoration: none; font-weight: 500; color: #F08A7E; }

.d5f__in { display: block; }
.d5f .dx3f__tx { max-width: 720px; }

/* ===== v8.8 Diagnóstico: relatório ===== */
.d5h { background: radial-gradient(45% 60% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .07), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.d5h__in { max-width: 1286px; margin: 0 auto; padding: 136px 40px 96px; display: flex; flex-direction: column; gap: 28px; }
.d5h__ex { display: none; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; padding: 12px 14px 12px 22px; border-radius: 18px; background: rgba(244, 182, 63, .1); box-shadow: inset 0 0 0 1px rgba(244, 182, 63, .4); }
.d5h__ex p { margin: 0; font-size: 15px; color: #fff; } .d5h__ex b { font-weight: 500; color: var(--yellow); }
.d5h__ex .rxi { max-width: 440px; flex: 1 1 320px; }
.d5[data-rx-estado="exemplo"] .d5h__ex { display: flex; }
.d5h__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: 48px; align-items: center; }
.d5h__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.d5h__st { margin: 0; display: inline-flex; align-items: center; gap: 10px; padding: 6px 14px 6px 8px; border-radius: 99px; background: rgba(249, 250, 250, .06); font-size: 13px; color: var(--neutral-200); }
.d5h__para { padding-left: 10px; border-left: 1px solid rgba(249, 250, 250, .2); color: var(--yellow); }
.d5h__para[hidden] { display: none; }
.d5h__k { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.d5h__k b { font-weight: 500; color: #fff; }
.d5h h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(40px, 4.6vw, 68px); line-height: 1.02; letter-spacing: -.03em; color: #fff; }
.d5h h1 em { font-style: italic; color: var(--yellow); }
.d5h__resumo { margin: 0; max-width: 540px; font-size: 18px; line-height: 1.55; color: var(--neutral-200); }
.d5h__resumo b { font-weight: 500; color: #fff; }
.d5h__log { display: none; margin: 0; padding: 0; list-style: none; flex-direction: column; gap: 8px; width: 100%; max-width: 440px; }
.d5h__log li { display: flex; align-items: center; gap: 10px; font-size: 14.5px; color: var(--neutral-500); transition: color .3s; }
.d5h__log li i { flex: none; width: 16px; height: 16px; border-radius: 50%; box-shadow: inset 0 0 0 1.5px rgba(249, 250, 250, .25); }
.d5h__log li.is-on { color: #fff; } .d5h__log li.is-on i { box-shadow: inset 0 0 0 1.5px var(--yellow); animation: d5-gira 1s linear infinite; border-top: 1.5px solid transparent; }
.d5h__log li.is-ok { color: var(--neutral-300); } .d5h__log li.is-ok i { background: #4fbf8a; box-shadow: inset 0 0 0 4px #04222c; }
@keyframes d5-gira { to { transform: rotate(360deg); } }
.d5h__erro { display: none; flex-direction: column; gap: 16px; max-width: 560px; }
.d5h__erro p { margin: 0; font-size: 16px; line-height: 1.55; color: var(--neutral-200); } .d5h__erro b { color: #fff; font-weight: 500; }
.d5h__vis { display: flex; flex-direction: column; gap: 18px; }
.d5dial--res { width: 100%; max-width: 560px; margin: 0 auto; }
.d5h__gr { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
.d5h__gr li { --c: var(--neutral-400); }
.d5h__gr li.is-ruim { --c: #F08A7E; } .d5h__gr li.is-medio { --c: var(--yellow); } .d5h__gr li.is-bom { --c: #6fd3a3; }
.d5h__gr button { width: 100%; height: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 12px; border: 0; border-radius: 14px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 2px 0 var(--c); font: inherit; text-align: left; color: var(--neutral-300); cursor: pointer; transition: background .2s; }
.d5h__gr button:hover { background: rgba(249, 250, 250, .1); }
.d5h__gr b { font-weight: 300; font-size: 24px; line-height: 1; color: var(--c); }
.d5h__gr span { font-size: 12px; line-height: 1.25; }
.d5[data-rx-estado="carregando"] .d5h__log { display: flex; }
.d5[data-rx-estado="carregando"] .d5h__ctas, .d5[data-rx-estado="carregando"] .d5h__gr, .d5[data-rx-estado="erro"] .d5h__ctas, .d5[data-rx-estado="erro"] .d5h__gr, .d5[data-rx-estado="erro"] .d5h__resumo { display: none; }
.d5[data-rx-estado="erro"] .d5h__erro { display: flex; }
.d5[data-rx-estado="carregando"] :is(.d5w, .d5p, .d5v, .d5x), .d5[data-rx-estado="erro"] :is(.d5w, .d5p, .d5v, .d5x) { display: none; }
.d5[data-rx-estado="carregando"] .d5dial--res, .d5[data-rx-estado="erro"] .d5dial--res { aspect-ratio: 1; max-width: 420px; border-radius: 50%; background: radial-gradient(circle, transparent 30%, rgba(249, 250, 250, .05) 31%, rgba(249, 250, 250, .05) 70%, transparent 71%); }
.d5[data-rx-estado="carregando"] .d5dial--res::after { content: ""; position: absolute; inset: 14%; border-radius: 50%; border: 2px solid transparent; border-top-color: var(--yellow); animation: d5-gira 1.4s linear infinite; }

.d5w { background: #F4F5F3; color: var(--neutral-900); }
.d5w__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.d5w__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 14px; }
.d5w__i { --c: var(--neutral-500); display: grid; grid-template-columns: 150px minmax(0, 1fr) minmax(0, 380px); gap: 32px; align-items: start; padding: 32px; border-radius: 28px; background: #fff; box-shadow: inset 4px 0 0 var(--c), 0 30px 60px -50px rgba(1, 29, 38, .35); animation: g3-entra .5s calc(var(--d) * .1s) both; }
.d5w__i.is-ruim { --c: #D9564A; } .d5w__i.is-medio { --c: #D69A0F; } .d5w__i.is-bom { --c: #2f9e6c; }
.d5w__n { display: flex; flex-direction: column; gap: 4px; }
.d5w__n span { font-size: 13px; color: var(--neutral-500); }
.d5w__n b { font-weight: 200; font-size: 76px; line-height: .9; letter-spacing: -.04em; color: var(--c); }
.d5w__n em { font-style: normal; font-size: 13px; color: var(--c); }
.d5w__g { margin: 0 0 6px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.d5w__tx h3 { margin: 0 0 12px; font-weight: 400; font-size: clamp(24px, 2.2vw, 30px); line-height: 1.15; letter-spacing: -.01em; }
.d5w__res { margin: 0; font-size: 17px; line-height: 1.55; color: var(--neutral-700); }
.d5w__custa { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.d5w__custa p { margin: 0; padding: 18px 20px; border-radius: 18px; background: #F4F5F3; font-size: 15px; line-height: 1.55; color: var(--neutral-700); }
.d5w__custa p b, .d5k__custa b, .d5k__onde b { display: block; margin-bottom: 4px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--neutral-900); }
.d5w__custa button { display: inline-flex; align-items: center; gap: 8px; padding: 0 0 2px; border: 0; border-bottom: 1px solid currentColor; background: none; font: inherit; font-size: 14.5px; font-weight: 500; color: var(--blue-900); cursor: pointer; }
.d5w__custa svg, .d5x__ops svg:last-child { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.6; }

.d5p { background: radial-gradient(40% 60% at 0% 0%, rgba(18, 89, 124, .55), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.d5p__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 32px; }
.d5t { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.d5t button { width: 100%; height: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "n s" "tx tx"; gap: 10px 8px; padding: 16px; border: 0; border-radius: 18px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .08); font: inherit; text-align: left; color: var(--neutral-300); cursor: pointer; transition: background .25s, box-shadow .25s; }
.d5t button:hover { background: rgba(249, 250, 250, .09); }
.d5t button.is-on { background: #fff; box-shadow: none; color: var(--neutral-700); }
.d5t__n { grid-area: n; font-size: 12px; color: var(--yellow); }
.d5t button.is-on .d5t__n { color: #a8720a; }
.d5t__tx { grid-area: tx; display: flex; flex-direction: column; gap: 4px; }
.d5t__tx b { font-weight: 500; font-size: 15px; color: #fff; }
.d5t button.is-on .d5t__tx b { color: var(--neutral-900); }
.d5t__tx em { font-style: normal; font-size: 13px; line-height: 1.35; }
.d5t__s { grid-area: s; font-weight: 300; font-size: 22px; line-height: 1; color: var(--neutral-400); }
.d5t__s.is-ruim { color: #F08A7E; } .d5t__s.is-medio { color: var(--yellow); } .d5t__s.is-bom { color: #6fd3a3; }
.d5t button.is-on .d5t__s.is-ruim { color: #D9564A; } .d5t button.is-on .d5t__s.is-medio { color: #C98E0B; } .d5t button.is-on .d5t__s.is-bom { color: #2f9e6c; }
.d5p__grupo { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: start; }
.d5p__grupo.is-in .d5k { animation: g3-entra .45s both; }
.d5p__grupo.is-in .d5k + .d5k { animation-delay: .08s; }
.d5p__fonte { margin: 0; font-size: 12.5px; color: var(--neutral-500); }

.d5k { --c: var(--neutral-500); display: flex; flex-direction: column; gap: 20px; padding: 30px; border-radius: 26px; background: #fff; color: var(--neutral-900); scroll-margin-top: 120px; }
.d5k.is-ruim { --c: #D9564A; } .d5k.is-medio { --c: #C98E0B; } .d5k.is-bom { --c: #2f9e6c; }
.d5k__cab { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.d5k__g { margin: 0 0 6px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.d5k h3 { margin: 0; font-weight: 400; font-size: 23px; line-height: 1.2; letter-spacing: -.01em; }
.d5k__nota { flex: none; margin: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.d5k__nota b { font-weight: 200; font-size: 52px; line-height: .9; letter-spacing: -.04em; color: var(--c); }
.d5k__nota span { font-size: 12px; white-space: nowrap; color: var(--c); }
.d5k__nota.is-pend b, .d5k__nota.is-pend span { color: var(--neutral-400); }
.d5k__res { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--neutral-800); }
.d5k__pe { display: flex; flex-direction: column; gap: 10px; }
.d5k__custa, .d5k__onde { margin: 0; padding: 16px 18px; border-radius: 16px; background: #F4F5F3; font-size: 14.5px; line-height: 1.5; color: var(--neutral-700); }
.d5k__onde.is-est { background: var(--blue-900); color: var(--neutral-200); } .d5k__onde.is-est b { color: #F08A7E; }
.d5k__onde.is-sup b { color: #a8720a; }
.d5k .dxw--chk { grid-template-columns: minmax(0, 1fr); }
.d5k .dxw--esp { grid-template-columns: minmax(0, 1fr); }
.d5k .dxw__tipos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.d5k .dxw--prof ul:first-child li { grid-template-columns: minmax(0, 1fr) 90px; }
.d5k .dxw--prof ul:first-child i { grid-column: 1 / 3; grid-row: 2; }
.d5k--curto { padding: 24px; gap: 14px; }
.d5k--curto h3 { font-size: 20px; } .d5k--curto .d5k__nota b { font-size: 44px; } .d5k--curto .d5k__res { font-size: 15.5px; }

.d5v { background: #fff; color: var(--neutral-900); }
.d5v__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 440px) minmax(0, 1fr); gap: 56px; align-items: start; }
.d5v__num { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.d5v__num h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.2vw, 46px); line-height: 1.06; letter-spacing: -.02em; }
.d5v__num h2 .is-dim { color: var(--neutral-500); }
.d5v__big { margin: 8px 0 0; display: flex; align-items: center; gap: 18px; }
.d5v__big b { font-weight: 200; font-size: 112px; line-height: .85; letter-spacing: -.05em; color: #D9564A; }
.d5v__big span { font-size: 17px; line-height: 1.45; color: var(--neutral-700); }
.d5v__chips { display: flex; flex-direction: column; gap: 8px; width: 100%; }
.d5v__chips > p { margin: 8px 0 0; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #c2493c; }
.d5v__chips > p:nth-of-type(2) { color: #a8720a; }
.d5v__chips ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.d5v__chips li { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: 99px; background: #FBE7E4; font-size: 13.5px; color: #8f2f25; }
.d5v__chips li b { font-weight: 500; }
.d5v__chips ul.is-sup li { background: #FBF0D9; color: #7a5307; }
.d5v__chips li.is-vazio { background: #F4F5F3; color: var(--neutral-500); }
.d5v__cmp { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.d5v__col { padding: 28px; border-radius: 26px; background: #F4F5F3; }
.d5v__col--novo { background: var(--blue-900); color: #fff; box-shadow: 0 50px 90px -50px rgba(1, 29, 38, .7); }
.d5v__t { margin: 0 0 18px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-600); }
.d5v__col--novo .d5v__t { color: var(--yellow); }
.d5v__col ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 12px; }
.d5v__col li { display: flex; align-items: flex-start; gap: 12px; font-size: 15.5px; line-height: 1.45; color: var(--neutral-600); }
.d5v__col li i { flex: none; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #E3E5E2; font-style: normal; font-size: 14px; color: var(--neutral-600); }
.d5v__col li span { text-decoration: line-through; text-decoration-color: rgba(34, 37, 38, .25); }
.d5v__col--novo li { color: #fff; } .d5v__col--novo li span { text-decoration: none; }
.d5v__col--novo li svg { flex: none; width: 22px; height: 22px; padding: 5px; border-radius: 50%; background: var(--yellow); color: var(--blue-900); }

.d5x { background: radial-gradient(45% 70% at 100% 100%, rgba(18, 89, 124, .6), transparent 70%), radial-gradient(35% 50% at 0% 0%, rgba(244, 182, 63, .08), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.d5x__in { max-width: 1286px; margin: 0 auto; padding: 120px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: 64px; align-items: center; }
.d5x__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.d5x h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 3.8vw, 58px); line-height: 1.04; letter-spacing: -.03em; color: #fff; }
.d5x h2 em { font-style: italic; color: var(--yellow); }
.d5x__tx > p { margin: 0; max-width: 560px; font-size: 17.5px; line-height: 1.55; color: var(--neutral-200); }
.d5x__mini { font-size: 14px !important; color: var(--neutral-400) !important; }
.d5x__ops { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.d5x__ops a, .d5x__ops button { width: 100%; display: grid; grid-template-columns: 44px minmax(0, 1fr) 16px; align-items: center; gap: 16px; padding: 18px 20px; border: 0; border-radius: 18px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); font: inherit; text-align: left; color: #fff; text-decoration: none; cursor: pointer; transition: background .25s; }
.d5x__ops a:hover, .d5x__ops button:hover { background: rgba(249, 250, 250, .1); }
.d5x__ops svg:first-child { width: 44px; height: 44px; padding: 11px; border-radius: 12px; background: rgba(244, 182, 63, .14); color: var(--yellow); }
.d5x__ops span { display: flex; flex-direction: column; gap: 2px; }
.d5x__ops b { font-weight: 500; font-size: 16px; } .d5x__ops em { font-style: normal; font-size: 13.5px; color: var(--neutral-400); }

@media (max-width: 1080px) {
  .d5h__grade, .d5e__in, .d5v__in, .d5x__in { grid-template-columns: minmax(0, 1fr); }
  .d5w__i { grid-template-columns: 120px minmax(0, 1fr); }
  .d5w__custa { grid-column: 1 / -1; }
  .d5t { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .d5o__grade { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  .d5hv { padding: 0; }
  .d5hv__log, .d5hv__ver { position: static; width: auto; margin-top: 10px; }
  .d5hv__log li { animation: none; opacity: 1; }
  .d5hv__card { padding: 14px 10px 18px; }
  .d5o__palco { padding: 16px; border-radius: 22px; }
  .d5o__k { flex-direction: column; align-items: flex-start; gap: 4px; }
  .d5o__cards, .d5p__grupo, .d5c__passos, .d5c__conf, .d5v__cmp { grid-template-columns: minmax(0, 1fr); }
  .d5c__in, .d5e__in, .d5w__in, .d5p__in, .d5v__in, .d5x__in { padding: 80px 20px; }
  .d5c__passos li:not(:last-child)::after { display: none; }
  .d5e__tela { grid-template-columns: minmax(0, 1fr); padding: 22px; }
  .d5e__esq > b { font-size: 60px; }
  .d5h__in { padding: 116px 20px 72px; }
  .d5h__gr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .d5h__gr li:last-child { grid-column: 1 / -1; }
  .d5w__i { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 22px 20px; border-radius: 22px; }
  .d5w__n { flex-direction: row; align-items: baseline; gap: 12px; }
  .d5w__n b { font-size: 56px; }
  .d5t { display: flex; overflow-x: auto; scrollbar-width: none; margin: 0 -20px; padding: 0 20px; }
  .d5t li { flex: 0 0 220px; }
  .d5k { padding: 22px 18px; border-radius: 22px; }
  .d5k__nota b { font-size: 44px; }
  .d5k .dxw__tipos, .d5k .dxw__form ul { grid-template-columns: minmax(0, 1fr); }
  .d5v__big b { font-size: 84px; }
  .d5v__col { padding: 22px 20px; }
}
.d5dial.is-foco .d5d__s:not(.is-on) { opacity: .5; }
.d5hv { padding: 0 0 0 24px; }
.d5hv__card { padding-bottom: 96px; }
.d5hv__log { left: 0; bottom: -28px; }
.d5hv__ver { right: -12px; top: auto; bottom: -28px; }
.d5f .dx3f__tx { max-width: 760px; margin: 0 auto; align-items: center; text-align: center; }
.d5f .dx3f__tx .rxi { width: 100%; }
.d5f .rxi__alt { text-align: center; }
.d5p__grupo[data-n="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.d5p__grupo[data-n="1"] { grid-template-columns: minmax(0, 1fr); }
.d5p__grupo[data-n="1"] .d5k { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px 40px; padding: 36px; }
.d5p__grupo[data-n="1"] .d5k > * { grid-column: 1; }
.d5p__grupo[data-n="1"] .d5k > .dxw { grid-column: 2; grid-row: 1 / span 3; align-self: start; }
.d5p__grupo[data-n="3"] .dxw--prof ul:first-child li span { font-size: 13.5px; }
@media (max-width: 1080px) { .d5p__grupo[data-n="3"] { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 720px) {
  .d5p__grupo[data-n="1"] .d5k { display: flex; padding: 22px 18px; }
  .d5hv__card { padding-bottom: 18px; }
}
.d5hv__card { padding-bottom: 132px; }
.d5k .dxw--srv li { grid-template-columns: 24px minmax(0, 1fr) auto; grid-template-areas: "i b e" "i s s"; gap: 2px 12px; }
.d5k .dxw--srv li > i { grid-area: i; align-self: center; }
.d5k .dxw--srv li > b { grid-area: b; } .d5k .dxw--srv li > span { grid-area: s; } .d5k .dxw--srv li > em { grid-area: e; }
.d5k .dxw--cam li { grid-template-columns: minmax(0, 1fr) auto 22px; gap: 12px; }
.d5k .dxw__pass i { width: 20px; }
@media (max-width: 720px) { .d5hv__card { padding-bottom: 18px; } .d5k .dxw--cam li { grid-template-columns: minmax(0, 1fr) 22px; } }
@media (max-width: 720px) { .d5hv { padding: 0; } }

/* ===== v8.8 Ferramentas: páginas individuais ===== */
.ft--sh, .fv[data-frente="sh"], .fte--sh, .fth--sh, .ftd--sh { --ac: var(--blue-700); --ac-e: var(--blue-700); --ac-t: #fff; }
.ft--ib, .fv[data-frente="ib"], .fte--ib, .fth--ib, .ftd--ib { --ac: var(--yellow); --ac-e: #a8720a; --ac-t: var(--blue-900); }
.fth { background: radial-gradient(45% 70% at 100% 0%, rgba(18, 89, 124, .7), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(244, 182, 63, .07), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.fth__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 100px; display: flex; flex-direction: column; gap: 28px; }
.fth__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 72px; align-items: center; }
.fth__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.fth__tag { margin: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.fth__tag span { padding: 6px 12px; border-radius: 99px; background: rgba(249, 250, 250, .07); font-size: 12.5px; color: var(--neutral-200); }
.fth__tag .fth__fr { background: var(--ac); color: var(--blue-900); font-weight: 500; }
.fth h1 { margin: 0; font-weight: 200; font-size: clamp(44px, 5.4vw, 80px); line-height: 1; letter-spacing: -.035em; color: #fff; }
.fth__lead { margin: 0; max-width: 600px; font-size: 19px; line-height: 1.55; color: var(--neutral-200); }
.fth__entra { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.fth__entra p { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--ac); }
.fth__entra ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; }
.fth__entra li { padding: 6px 12px; border-radius: 10px; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .16); font-size: 13.5px; color: #fff; }
.fth__vis { position: relative; }
.fth__ex { margin: 0 0 12px; font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); text-align: center; }
.fth__vis .fte { transform: rotate(-2deg); }

/* o entregável */
.fte { --nc: var(--blue-900); position: relative; display: flex; flex-direction: column; gap: 4px; padding: 26px 28px 22px; border-radius: 22px; background: #fff; color: var(--neutral-900); box-shadow: inset 0 4px 0 var(--ac), 0 50px 90px -45px rgba(0, 0, 0, .7); }
.fte.is-ruim { --nc: #D9564A; } .fte.is-medio { --nc: #C98E0B; } .fte.is-bom { --nc: #2f9e6c; } .fte.is-pend { --nc: var(--neutral-400); }
.fte__k { margin: 0 0 10px; display: flex; justify-content: space-between; gap: 12px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.fte__k em { font-style: normal; letter-spacing: .02em; text-transform: none; font-size: 12.5px; color: var(--ac-e); font-weight: 500; text-align: right; }
.fte__n { margin: 0; font-weight: 200; font-size: 58px; line-height: 1; letter-spacing: -.03em; color: var(--nc); white-space: nowrap; }
.fte__rot { margin: 0 0 14px; font-size: 15px; color: var(--neutral-700); }
.fte__l { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.fte__l li { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 10px 0; border-top: 1px dashed rgba(34, 37, 38, .16); font-size: 14px; color: var(--neutral-600); }
.fte__l b { font-weight: 500; text-align: right; color: var(--neutral-900); }
.fte.is-pulso .fte__n { animation: ft-pulso .4s; }
@keyframes ft-pulso { 0% { opacity: .4; transform: translateY(3px); } 100% { opacity: 1; transform: none; } }

/* bancada */
.ftb { background: #F4F5F3; color: var(--neutral-900); }
.ftb__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.ftb__cab { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px 40px; flex-wrap: wrap; }
.ftb__cab h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(32px, 3.2vw, 46px); line-height: 1.06; letter-spacing: -.02em; }
.ftb__cab h2 .is-dim { color: var(--neutral-500); }
.ftb__cab p { margin: 0; max-width: 420px; font-size: 16px; line-height: 1.55; color: var(--neutral-600); }
.ftb__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: 24px; align-items: start; }
.ftb__campos { display: flex; flex-direction: column; gap: 26px; margin: 0; padding: 32px; border-radius: 28px; background: #fff; box-shadow: 0 30px 60px -50px rgba(1, 29, 38, .35); }
.ftc { margin: 0; padding: 0; border: 0; min-width: 0; }
.ftc--faixa label { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-bottom: 12px; font-size: 15.5px; color: var(--neutral-800); }
.ftc--faixa output { flex: none; font-weight: 500; font-size: 20px; color: var(--blue-900); }
.ftc input[type="range"] { --p: 50%; width: 100%; height: 28px; margin: 0; background: none; -webkit-appearance: none; appearance: none; cursor: pointer; }
.ftc input[type="range"]::-webkit-slider-runnable-track { height: 6px; border-radius: 9px; background: linear-gradient(90deg, var(--blue-900) var(--p), #E3E5E2 var(--p)); }
.ftc input[type="range"]::-moz-range-track { height: 6px; border-radius: 9px; background: linear-gradient(90deg, var(--blue-900) var(--p), #E3E5E2 var(--p)); }
.ftc input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 24px; height: 24px; margin-top: -9px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 4px #fff, 0 4px 12px rgba(1, 29, 38, .3); }
.ftc input[type="range"]::-moz-range-thumb { width: 24px; height: 24px; border: 0; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 4px #fff, 0 4px 12px rgba(1, 29, 38, .3); }
.ftc input[type="range"]:focus-visible { outline: 2px solid var(--yellow); outline-offset: 4px; border-radius: 9px; }
.ftc--num label, .ftc--chk legend { display: block; margin-bottom: 10px; padding: 0; font-size: 15.5px; color: var(--neutral-800); }
.ftc__num { display: flex; align-items: center; gap: 8px; padding: 0 16px; border-radius: 14px; background: #F4F5F3; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); }
.ftc__num span { font-size: 15px; color: var(--neutral-500); }
.ftc__num input { flex: 1; min-width: 0; height: 52px; border: 0; background: none; font: inherit; font-size: 20px; font-weight: 500; color: var(--blue-900); }
.ftc__num input:focus { outline: none; } .ftc__num:focus-within { box-shadow: inset 0 0 0 2px var(--blue-900); }
.ftc__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ftc__chips label { position: relative; cursor: pointer; }
.ftc__chips input { position: absolute; opacity: 0; pointer-events: none; }
.ftc__chips span { display: inline-flex; align-items: center; padding: 10px 16px; border-radius: 99px; background: #F4F5F3; box-shadow: inset 0 0 0 1px rgba(34, 37, 38, .08); font-size: 14.5px; color: var(--neutral-800); transition: background .2s, color .2s; }
.ftc__chips input:checked + span { background: var(--blue-900); color: #fff; box-shadow: none; }
.ftc__chips input:focus-visible + span { outline: 2px solid var(--yellow); outline-offset: 2px; }
.ftc--sn { list-style: none; display: flex; flex-direction: column; gap: 0; counter-reset: q; }
.ftc--sn li { counter-increment: q; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px; padding: 14px 0; border-top: 1px solid #ECEDEB; }
.ftc--sn li:first-child { border-top: 0; padding-top: 0; }
.ftc--sn p { margin: 0; font-size: 15.5px; line-height: 1.4; color: var(--neutral-800); }
.ftc--sn p::before { content: counter(q, decimal-leading-zero); margin-right: 10px; font-size: 12px; color: #a8720a; }
.ftc__sn { display: flex; gap: 4px; padding: 4px; border-radius: 99px; background: #F4F5F3; }
.ftc__sn label { position: relative; cursor: pointer; }
.ftc__sn input { position: absolute; opacity: 0; pointer-events: none; }
.ftc__sn span { display: block; padding: 8px 16px; border-radius: 99px; font-size: 14px; color: var(--neutral-700); transition: background .2s, color .2s; }
.ftc__sn input[value="1"]:checked + span { background: #2f9e6c; color: #fff; }
.ftc__sn input[value="0"]:checked + span { background: #D9564A; color: #fff; }
.ftc__sn input:focus-visible + span { outline: 2px solid var(--yellow); outline-offset: 2px; }
.ftb__res { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 14px; }
.ftb__frase { margin: 0; font-size: 15.5px; line-height: 1.55; color: var(--neutral-700); }
.ftb__lista { padding: 18px 20px; border-radius: 18px; background: #fff; }
.ftb__lista[hidden] { display: none; }
.ftb__lista p { margin: 0 0 10px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-600); }
.ftb__lista ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.ftb__lista li { padding-left: 16px; position: relative; font-size: 14.5px; line-height: 1.4; color: var(--neutral-800); }
.ftb__lista li::before { content: ""; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); }
.ftb__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.ftb__copiar { padding: 0 0 2px; border: 0; border-bottom: 1px solid currentColor; background: none; font: inherit; font-size: 14.5px; color: var(--blue-900); cursor: pointer; }

/* do resultado à solução */
.ftd { background: radial-gradient(40% 60% at 100% 100%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.ftd__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 56px; }
.ftd__trilha { display: grid; grid-template-columns: minmax(0, 1fr) 64px minmax(0, 1fr) 64px minmax(0, 1fr); align-items: center; }
.ftd__trilha > i { height: 2px; background: repeating-linear-gradient(90deg, var(--ac) 0 6px, transparent 6px 12px); position: relative; }
.ftd__trilha > i::after { content: ""; position: absolute; right: -2px; top: -4px; border-left: 8px solid var(--ac); border-top: 5px solid transparent; border-bottom: 5px solid transparent; }
.ftd__no { display: flex; flex-direction: column; gap: 4px; padding: 18px 20px; border-radius: 18px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.ftd__no em { font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.ftd__no b { font-weight: 400; font-size: 17px; line-height: 1.3; color: #fff; }
.ftd__no--fim { background: var(--ac); box-shadow: none; } .ftd__no--fim em { color: rgba(1, 29, 38, .7); } .ftd__no--fim b { color: var(--blue-900); font-weight: 500; }
.ftd__grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: 64px; align-items: start; }
.ftd__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.ftd h2 { margin: 0; font-weight: 200; font-size: clamp(32px, 3.4vw, 50px); line-height: 1.08; letter-spacing: -.025em; color: #fff; }
.ftd__itens { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.ftd__itens li { display: flex; align-items: center; gap: 12px; font-size: 17px; color: var(--neutral-100); }
.ftd__itens svg { flex: none; width: 24px; height: 24px; padding: 5px; border-radius: 50%; background: var(--ac); color: var(--blue-900); }
.ftd__mini { margin: 0; font-size: 14px; color: var(--neutral-400); }
.ftd__rel > p { margin: 0 0 12px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.ftd__rel ul { margin: 0 0 16px; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.ftd__rel a { display: grid; grid-template-columns: minmax(0, 1fr) 16px; grid-template-areas: "f s" "b s" "e s"; gap: 4px 16px; align-items: center; padding: 16px 18px; border-radius: 16px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); color: #fff; text-decoration: none; transition: background .2s; }
.ftd__rel a:hover { background: rgba(249, 250, 250, .1); }
.ftd__rel a > svg { grid-area: s; width: 16px; height: 16px; }
.ftd__rf { grid-area: f; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-300); } .ftd__rf--ib { color: var(--yellow); }
.ftd__rel b { grid-area: b; font-weight: 500; font-size: 16px; } .ftd__rel em { grid-area: e; font-style: normal; font-size: 13.5px; line-height: 1.4; color: var(--neutral-400); }
.ftd__todas { display: inline-flex; align-items: center; gap: 8px; font-size: 14.5px; color: var(--yellow); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.ftd__todas svg { width: 16px; height: 16px; }
@media (max-width: 1080px) {
  .fth__grade, .ftb__grade, .ftd__grade { grid-template-columns: minmax(0, 1fr); }
  .ftb__res { position: static; }
}
@media (max-width: 720px) {
  .fth__in { padding: 116px 20px 72px; } .ftb__in, .ftd__in { padding: 80px 20px; }
  .fth__grade { gap: 40px; }
  .fth__vis .fte { transform: none; }
  .ftb__campos { padding: 22px 18px; border-radius: 22px; }
  .ftc--sn li { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .ftc__sn { justify-self: start; }
  .fte { padding: 22px 20px 18px; } .fte__n { font-size: 46px; white-space: normal; }
  .ftd__trilha { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .ftd__trilha > i { width: 2px; height: 18px; margin-left: 24px; background: repeating-linear-gradient(180deg, var(--ac) 0 4px, transparent 4px 8px); }
  .ftd__trilha > i::after { display: none; }
}

/* ===== v8.8 Ferramentas: a vitrine ===== */
.frx { position: relative; overflow: hidden; background: radial-gradient(40% 60% at 90% 10%, rgba(18, 89, 124, .75), transparent 70%), radial-gradient(35% 55% at 0% 100%, rgba(244, 182, 63, .1), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.frx__in { max-width: 1286px; margin: 0 auto; padding: 140px 40px 56px; display: flex; flex-direction: column; gap: 36px; }
.frx__cab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: 56px; align-items: end; }
.frx h1 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(56px, 8vw, 128px); line-height: .92; letter-spacing: -.05em; color: #fff; }
.frx h1 em { font-style: italic; font-size: .52em; letter-spacing: -.03em; color: var(--yellow); margin-top: 10px; }
.frx__lado { display: flex; flex-direction: column; gap: 14px; }
.frx__lead { margin: 0; font-size: 18px; line-height: 1.55; color: var(--neutral-200); } .frx__lead b { font-weight: 500; color: #fff; }
.frx__q { margin: 8px 0 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--yellow); }
.frx__obj { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.frx__obj button { padding: 10px 16px; border: 0; border-radius: 99px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); font: inherit; font-size: 14px; color: #fff; cursor: pointer; transition: background .2s, color .2s; }
.frx__obj button:hover, .frx__obj button.is-on { background: var(--yellow); color: var(--blue-900); box-shadow: none; }
.frx__parede { display: flex; flex-direction: column; gap: 16px; padding: 8px 0 96px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.frx__fila { overflow: hidden; }
.frx__trilho { margin: 0; padding: 0; list-style: none; display: flex; gap: 16px; width: max-content; animation: frx-rola 90s linear infinite; }
.frx__fila--inv .frx__trilho { animation-direction: reverse; animation-duration: 110s; }
.frx__parede:hover .frx__trilho { animation-play-state: paused; }
.frx__trilho > li { flex: none; width: 270px; }
.frx__trilho a { display: block; text-decoration: none; }
@keyframes frx-rola { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .frx__trilho { animation: none; } }
.fte--mini { padding: 18px 20px 12px; border-radius: 18px; box-shadow: inset 0 3px 0 var(--ac), 0 30px 60px -40px rgba(0, 0, 0, .8); }
.fte--mini .fte__k { margin-bottom: 6px; font-size: 10px; } .fte--mini .fte__k em { font-size: 12px; }
.fte--mini .fte__n { font-size: 36px; } .fte--mini .fte__rot { margin-bottom: 8px; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fte--mini .fte__l li { padding: 6px 0; font-size: 12.5px; }

.frd5 { background: #fff; color: var(--neutral-900); }
.frd5__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px 140px; display: flex; flex-direction: column; gap: 48px; }
.frd5__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 32px; }
.frd5__i { position: sticky; top: calc(96px + var(--i) * 28px); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; min-height: 480px; padding: 44px; border-radius: 34px; background: #F4F5F3; box-shadow: 0 0 0 1px rgba(34, 37, 38, .05), 0 -30px 60px -40px rgba(1, 29, 38, .35); }
.frd5__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.frd5__n { margin: 0; display: flex; align-items: center; gap: 12px; font-size: 14px; color: #a8720a; }
.frd5__n span { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-500); }
.frd5__tx h3 { margin: 0; font-weight: 300; font-size: clamp(34px, 3.6vw, 52px); line-height: 1.02; letter-spacing: -.03em; }
.frd5__tx > p:not(.frd5__n) { margin: 0; max-width: 520px; font-size: 17.5px; line-height: 1.55; color: var(--neutral-700); }
.frd5__cad { margin: 4px 0 6px; padding: 0; list-style: none; width: 100%; max-width: 520px; display: flex; flex-direction: column; }
.frd5__cad li { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; padding: 11px 0; border-top: 1px solid rgba(34, 37, 38, .1); font-size: 15px; line-height: 1.4; color: var(--neutral-800); }
.frd5__cad li:first-letter { text-transform: uppercase; }
.frd5__cad em { font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); padding-top: 3px; }
.frd5__cad li:last-child { color: var(--blue-900); font-weight: 500; }
.frd5__vis { align-self: stretch; display: grid; place-items: center; padding: 32px; border-radius: 26px; background: radial-gradient(60% 70% at 100% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); }
.frd5__dial { width: 100%; max-width: 460px; }
.frd5__tk { width: 100%; max-width: 380px; } .frd5__tk .fte { transform: rotate(-2deg); }

.fv { background: radial-gradient(40% 60% at 0% 0%, rgba(18, 89, 124, .6), transparent 70%), var(--blue-900); color: var(--neutral-100); }
.fv__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 40px; }
.fv__cab { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px 40px; flex-wrap: wrap; }
.fv__fr { display: flex; gap: 4px; padding: 5px; border-radius: 99px; background: rgba(249, 250, 250, .07); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1); }
.fv__fr button { padding: 11px 20px; border: 0; border-radius: 99px; background: none; font: inherit; font-size: 14.5px; color: var(--neutral-200); cursor: pointer; transition: background .25s, color .25s; }
.fv__fr button.is-on[data-fv-fr="sh"] { background: var(--blue-700); color: #fff; }
.fv__fr button.is-on[data-fv-fr="ib"] { background: var(--yellow); color: var(--blue-900); }
.fv__grade { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 24px; align-items: start; }
.fv__nav { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; position: sticky; top: 100px; }
.fv__nav li[hidden] { display: none; }
.fv__nav button { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; border: 0; border-radius: 14px; background: none; font: inherit; font-size: 15.5px; text-align: left; color: var(--neutral-200); cursor: pointer; transition: background .2s, color .2s; }
.fv__nav button:hover { background: rgba(249, 250, 250, .06); }
.fv__nav button em { flex: none; display: grid; place-items: center; min-width: 24px; height: 24px; border-radius: 99px; background: rgba(249, 250, 250, .08); font-style: normal; font-size: 12px; color: var(--neutral-300); }
.fv__nav button.is-on { background: #fff; color: var(--neutral-900); }
.fv__nav button.is-on em { background: var(--ac); color: var(--blue-900); }
.fvp { display: flex; flex-direction: column; gap: 12px; }
.fvp[hidden] { display: none; }
.fvp.is-on { animation: g3-entra .4s both; }
.fvp__t { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 300px); gap: 32px; align-items: center; padding: 32px; border-radius: 26px; background: #fff; color: var(--neutral-900); }
.fvp__min { margin: 0 0 8px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-e); }
.fvp__tx h3 { margin: 0 0 10px; font-weight: 400; font-size: 28px; line-height: 1.1; letter-spacing: -.015em; }
.fvp__tx > p:not(.fvp__min):not(.fvp__entra) { margin: 0 0 14px; font-size: 16px; line-height: 1.55; color: var(--neutral-700); }
.fvp__entra { margin: 0 0 18px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.fvp__entra span { margin-right: 4px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-500); }
.fvp__entra i { padding: 5px 10px; border-radius: 8px; background: #F4F5F3; font-style: normal; font-size: 13px; color: var(--neutral-800); }
.fvp__vis { padding: 22px; border-radius: 20px; background: #F4F5F3; }
.fvp__vis .fte { box-shadow: inset 0 4px 0 var(--ac), 0 30px 50px -40px rgba(1, 29, 38, .5); }
.fvp__vis .fte__n { font-size: 42px; }
.fvp__dest { display: flex; align-items: center; gap: 14px; padding: 18px 24px; border-radius: 18px; background: var(--ac); color: var(--blue-900); text-decoration: none; transition: filter .2s; }
.fvp__dest:hover { filter: brightness(1.06); }
.fvp__dest span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; opacity: .7; }
.fvp__dest b { flex: 1; font-weight: 500; font-size: 18px; }
.fvp__dest svg { width: 18px; height: 18px; }

.fri { background: #fff; color: var(--neutral-900); }
.fri__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: 64px; align-items: start; }
.fri__esq { display: flex; flex-direction: column; gap: 32px; position: sticky; top: 100px; }
.fri__passos { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 18px; }
.fri__passos li { display: flex; gap: 16px; }
.fri__passos b { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--blue-900); font-weight: 400; font-size: 13px; color: var(--yellow); }
.fri__passos span { font-size: 15px; line-height: 1.5; color: var(--neutral-600); }
.fri__passos strong { display: block; font-weight: 500; font-size: 16.5px; color: var(--neutral-900); }
.fri__dir { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.fri__fr { margin: 0 0 12px; display: flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-600); }
.fri__fr::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--blue-700); } .fri__fr--ib::before { background: var(--yellow); }
.fri__col ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; }
.fri__col a { display: flex; flex-direction: column; gap: 2px; padding: 14px 12px; border-top: 1px solid #ECEDEB; border-radius: 12px; color: var(--neutral-900); text-decoration: none; transition: background .2s; }
.fri__col a:hover { background: #F4F5F3; }
.fri__col b { font-weight: 500; font-size: 16px; } .fri__col span { font-size: 13.5px; color: var(--neutral-500); }
.fri__col li.is-obj a { background: #FBF0D9; border-top-color: transparent; }
@media (max-width: 1080px) {
  .frx__cab, .frd5__i, .fv__grade, .fvp__t, .fri__in { grid-template-columns: minmax(0, 1fr); }
  .frd5__i { position: relative; top: auto; min-height: 0; }
  .fv__nav { position: static; flex-direction: row; flex-wrap: wrap; }
  .fri__esq { position: static; }
}
@media (max-width: 720px) {
  .frx__in { padding: 116px 20px 40px; } .frd5__in, .fv__in, .fri__in { padding: 80px 20px; }
  .frx__parede { padding-bottom: 64px; } .frx__trilho > li { width: 230px; }
  .frd5__i { padding: 22px 18px; gap: 24px; border-radius: 24px; }
  .frd5__vis { padding: 18px; }
  .frd5__cad li { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .fv__fr { width: 100%; } .fv__fr button { flex: 1; padding: 11px 10px; }
  .fv__nav { flex-wrap: nowrap; overflow-x: auto; margin: 0 -20px; padding: 0 20px; scrollbar-width: none; }
  .fv__nav li { flex: none; } .fv__nav button { white-space: nowrap; padding: 10px 14px; background: rgba(249, 250, 250, .06); }
  .fvp__t { padding: 22px 18px; gap: 20px; }
  .fri__dir { grid-template-columns: minmax(0, 1fr); }
}
.fte--mini { overflow: hidden; }
.fte--mini .fte__l li { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.fte--mini .fte__l span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fte--mini .fte__l b { white-space: nowrap; }
.fte--mini .fte__k em { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 60%; }
.fb__ctas[hidden] { display: none !important; }
.fb__placar .ih__lk--esc { color: #fff; }
.fte__l b { white-space: nowrap; }
.ftx { background: #F4F5F3; }
.ftx__in { max-width: 1286px; margin: 0 auto; padding: 96px 40px; }
@media (max-width: 720px) { .ftx__in { padding: 64px 20px; } }
.mlh__est { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 22px; }
@media (max-width: 1100px) { .mlh__est { grid-template-columns: repeat(6, 150px); } }

/* v8.8.1: paleta da marca nas ferramentas (azul da Software House = blue-700) */
.fth__tag .fth__fr { color: var(--ac-t); }
.fth__entra p { color: var(--yellow); }
.ftd__trilha > i { background: repeating-linear-gradient(90deg, rgba(249, 250, 250, .35) 0 6px, transparent 6px 12px); }
.ftd__trilha > i::after { border-left-color: rgba(249, 250, 250, .5); }
.ftd__no--fim em { color: var(--ac-t); opacity: .75; } .ftd__no--fim b { color: var(--ac-t); }
.ftd__itens svg { color: var(--ac-t); }
.fvp__dest { color: var(--ac-t); }
.fv__nav button.is-on em { color: var(--ac-t); }
@media (max-width: 720px) { .ftd__trilha > i { background: repeating-linear-gradient(180deg, rgba(249, 250, 250, .35) 0 4px, transparent 4px 8px); } }

/* ==========================================================================
   Página modelo de case (build/casos.py, conteúdo vindo do Gerador de Cases)
   Acento por frente: Software House usa blue-700, Inbound usa amarelo.
   ========================================================================== */
.kz--sh { --ac: var(--blue-700); --ac-t: #fff; --ac-e: var(--blue-700); --ac-n: var(--neutral-000); --ac-g: rgba(18, 89, 124, .55); }
.kz--ib { --ac: var(--yellow); --ac-t: var(--blue-900); --ac-e: #a8720a; --ac-n: var(--yellow); --ac-g: rgba(244, 182, 63, .22); }
.kz-fr { display: inline-flex; align-items: center; gap: 8px; }
.kz-fr::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ac); box-shadow: 0 0 0 3px rgba(249, 250, 250, .12); }
.kz--sh .kz-fr::before { box-shadow: 0 0 0 2px rgba(249, 250, 250, .5); }
.kz-h2 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(34px, 3.8vw, 56px); line-height: 1.03; letter-spacing: -.025em; text-wrap: balance; }
.kz-h2 .is-dim { color: var(--neutral-400); }
.kz-barra { display: flex; align-items: center; gap: 6px; padding: 11px 14px; background: #13262e; font-size: 12px; color: var(--neutral-400); }
.kz-barra i { width: 9px; height: 9px; border-radius: 50%; background: rgba(249, 250, 250, .2); }
.kz-barra em { margin-left: 12px; padding: 3px 12px; border-radius: 99px; background: rgba(249, 250, 250, .06); font-style: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* 1. Manchete */
.kzh { position: relative; overflow: hidden; background: radial-gradient(48% 60% at 88% 26%, var(--ac-g), transparent 70%), radial-gradient(50% 60% at 0% 100%, rgba(18, 89, 124, .45), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.kzh__in { max-width: 1286px; margin: 0 auto; padding: 150px 40px 56px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: center; }
.kzh__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; min-width: 0; }
.kzh__ilu { margin: 0; padding: 7px 14px; border-radius: 99px; background: rgba(249, 250, 250, .08); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); font-size: 12.5px; letter-spacing: .04em; color: var(--neutral-200); }
.kzh__meta { margin: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--neutral-300); }
.kzh h1 { margin: 0; display: flex; flex-direction: column; font-weight: 300; font-size: clamp(40px, 4.6vw, 72px); line-height: 1.02; letter-spacing: -.03em; color: var(--neutral-000); text-wrap: balance; }
.kzh h1 em { font-style: normal; color: var(--neutral-400); }
.kzh__lead { margin: 0; max-width: 560px; font-size: 17.5px; line-height: 1.6; color: var(--neutral-300); }
.kzh__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin-top: 6px; }
.kzh__vis { position: relative; min-width: 0; padding: 0 0 46px; }
.kzh__tela { margin: 0; border-radius: 18px; overflow: hidden; background: #0d1b21; box-shadow: 0 0 0 1px rgba(249, 250, 250, .14), 0 80px 120px -50px rgba(0, 0, 0, .9); rotate: 1.5deg; transition: rotate .8s cubic-bezier(.2, .7, .2, 1); }
.kzh__tela:hover { rotate: 0deg; }
.kzh__mock { display: block; aspect-ratio: 16 / 10.5; background: #F4F5F3; }
.kzh__mock > img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.kzh__num { position: absolute; left: -28px; bottom: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; max-width: 280px; padding: 20px 24px; border-radius: 20px; background: var(--neutral-000); color: var(--neutral-900); box-shadow: inset 0 4px 0 var(--ac), 0 40px 70px -30px rgba(0, 0, 0, .7); }
.kzh__n { font-weight: 300; font-size: 54px; line-height: 1; letter-spacing: -.04em; color: var(--blue-900); font-variant-numeric: tabular-nums; }
.kzh__num span { font-size: 14px; line-height: 1.45; color: var(--neutral-600); }
.kzh__fi { max-width: 1286px; margin: 0 auto; padding: 0 40px 72px; }
.kzh__ficha { margin: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 1px; border-radius: 18px; overflow: hidden; background: rgba(249, 250, 250, .1); }
.kzh__ficha div { padding: 16px 18px; background: rgba(1, 29, 38, .92); min-width: 0; }
.kzh__ficha .kzh__fs { grid-column: span 1; }
.kzh__ficha dt { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.kzh__ficha dd { margin: 6px 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 14.5px; line-height: 1.4; color: var(--neutral-000); }
.kzh__ficha dd a { text-decoration: underline; text-decoration-color: var(--ac); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.kz--sh .kzh__ficha dd a { text-decoration-color: rgba(249, 250, 250, .45); }
.kzh__ficha dd a:hover { color: var(--yellow); }
.kz--sh .kzh__ficha dd a:hover { color: #fff; text-decoration-color: #fff; }
.kzh__on { width: 8px; height: 8px; border-radius: 50%; background: #3ecf8e; box-shadow: 0 0 0 4px rgba(62, 207, 142, .2); }

/* Telas desenhadas (mock) */
.kzm { position: relative; height: 100%; display: flex; flex-direction: column; gap: 10px; padding: 22px 24px; background: #F4F5F3; color: var(--neutral-900); font-size: 13px; }
.kzm__tt { margin: 0; font-size: 15px; font-weight: 500; color: var(--blue-900); }
.kzm__tt--g { font-size: 20px; font-weight: 400; line-height: 1.2; }
.kzm__tag { margin: 0; align-self: flex-start; padding: 3px 10px; border-radius: 99px; background: var(--ac); color: var(--ac-t); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.kzm__cta { align-self: flex-start; margin-top: auto; padding: 9px 16px; border-radius: 10px; background: var(--blue-900); color: #fff; font-weight: 400; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.kzm__l { height: 8px; border-radius: 99px; background: rgba(34, 37, 38, .12); }
.kzm__l--c { width: 60%; }
.kzm__busca { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-radius: 10px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); color: var(--neutral-500); }
.kzm--lista ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.kzm--lista li { display: grid; grid-template-columns: 28px 1fr 60px 34px; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 10px; background: #fff; }
.kzm--lista li i { width: 28px; height: 28px; border-radius: 8px; background: rgba(1, 29, 38, .08); }
.kzm--lista li span, .kzm--lista li em { height: 7px; border-radius: 99px; background: rgba(34, 37, 38, .14); }
.kzm--lista li em { background: var(--ac); opacity: .55; }
.kzm--lista li b { font-weight: 400; text-align: right; color: var(--neutral-600); font-variant-numeric: tabular-nums; }
.kzm--chat { gap: 8px; }
.kzm__b { max-width: 78%; padding: 9px 12px; border-radius: 14px; line-height: 1.4; }
.kzm__b--eu { align-self: flex-end; background: var(--blue-900); color: #fff; border-bottom-right-radius: 4px; }
.kzm__b--ia { align-self: flex-start; display: flex; gap: 8px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .08); border-bottom-left-radius: 4px; }
.kzm__b--ia i { flex: none; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--ac); color: var(--ac-t); }
.kzm__b--dig { align-items: center; }
.kzm__b--dig em { width: 6px; height: 6px; border-radius: 50%; background: var(--neutral-400); animation: kzDig 1.2s infinite; }
.kzm__b--dig em:nth-of-type(2) { animation-delay: .15s; } .kzm__b--dig em:nth-of-type(3) { animation-delay: .3s; }
@keyframes kzDig { 0%, 60%, 100% { opacity: .3; } 30% { opacity: 1; } }
.kzm__in { margin-top: auto; padding: 10px 12px; border-radius: 10px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); color: var(--neutral-400); }
.kzm__kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.kzm__kpis span { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: 12px; background: #fff; }
.kzm__kpis b { width: 50%; height: 16px; border-radius: 5px; background: var(--blue-900); }
.kzm__kpis em { width: 80%; height: 6px; border-radius: 99px; background: rgba(34, 37, 38, .14); }
.kzm__kpis .is-ac { background: var(--ac); } .kzm__kpis .is-ac b { background: var(--ac-t); } .kzm__kpis .is-ac em { background: currentColor; opacity: .3; color: var(--ac-t); }
.kzm__g { flex: 1; display: grid; grid-template-columns: 1.6fr 1fr; gap: 8px; min-height: 0; }
.kzm__bars { display: flex; align-items: flex-end; gap: 7px; padding: 14px; border-radius: 12px; background: #fff; }
.kzm__bars i { flex: 1; height: var(--h); border-radius: 5px 5px 2px 2px; background: var(--blue-900); opacity: .85; }
.kzm__bars i:last-child { background: var(--ac); opacity: 1; }
.kzm__g ul { margin: 0; padding: 12px; list-style: none; display: flex; flex-direction: column; justify-content: space-around; border-radius: 12px; background: #fff; }
.kzm__g li { height: 7px; border-radius: 99px; background: rgba(34, 37, 38, .14); }
.kzm__g li:nth-child(2) { width: 70%; } .kzm__g li:nth-child(4) { width: 50%; }
.kzm--cel { align-items: center; justify-content: center; background: linear-gradient(160deg, #EBECED, #F9FAFA); }
.kzm__fone { width: 46%; max-width: 200px; aspect-ratio: 9 / 18; display: flex; flex-direction: column; gap: 8px; padding: 26px 12px 12px; border-radius: 26px; background: #fff; box-shadow: 0 0 0 6px var(--blue-900), 0 30px 50px -20px rgba(1, 29, 38, .45); }
.kzm__fone .kzm__tt { font-size: 12px; }
.kzm__itens { display: flex; flex-direction: column; gap: 6px; }
.kzm__itens span { height: 34px; border-radius: 8px; background: #F4F5F3; box-shadow: inset 4px 0 0 var(--ac); }
.kzm__fone .kzm__cta { align-self: stretch; text-align: center; }
.kzm--cont { padding: 22px 28px; background: #fff; }
.kzm__resp { margin: 4px 0; display: flex; flex-direction: column; gap: 6px; padding: 12px 14px; border-radius: 12px; background: #F4F5F3; box-shadow: inset 3px 0 0 var(--ac); }
.kzm__resp b { font-weight: 500; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-600); }
.kzm__resp span { height: 7px; border-radius: 99px; background: rgba(34, 37, 38, .16); } .kzm__resp span + span { width: 70%; }
.kzm__tab { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; }
.kzm__tab i { height: 18px; border-radius: 4px; background: #F4F5F3; } .kzm__tab i:nth-child(-n+3) { background: rgba(1, 29, 38, .12); }
.kzm__box { align-self: flex-start; padding: 8px 14px; border-radius: 10px; background: var(--ac); color: var(--ac-t); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.kzm--form { flex-direction: row; gap: 14px; align-items: stretch; }
.kzm__capa { flex: 0 0 38%; display: flex; flex-direction: column; justify-content: flex-end; gap: 10px; padding: 18px; border-radius: 14px; background: var(--blue-900); color: #fff; }
.kzm__capa i { width: 44px; height: 6px; border-radius: 99px; background: var(--ac); }
.kzm__capa b { font-weight: 300; font-size: 19px; line-height: 1.15; }
.kzm__campos { flex: 1; display: flex; flex-direction: column; gap: 7px; }
.kzm__campos span { padding: 9px 12px; border-radius: 9px; background: #fff; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1); color: var(--neutral-400); font-size: 12px; }
.kzm__campos .g { min-height: 46px; }
.kzm--graf svg { flex: 1; width: 100%; min-height: 0; padding: 14px; border-radius: 12px; background: #fff; overflow: visible; }
.kzm__area { fill: var(--ac); opacity: .22; stroke: none; }
.kzm__linha { fill: none; stroke: var(--blue-900); stroke-width: 2.5; vector-effect: non-scaling-stroke; }
.kzm__leg { display: flex; flex-wrap: wrap; gap: 14px; color: var(--neutral-600); font-size: 12px; }
.kzm__leg span { display: inline-flex; align-items: center; gap: 6px; }
.kzm__leg i { width: 10px; height: 10px; border-radius: 3px; background: var(--blue-900); }
.kzm__leg span:nth-child(2) i { background: var(--ac); } .kzm__leg span:nth-child(3) i { background: var(--neutral-300); }

/* 2. Cena de antes */
.kza { background: #fff; color: var(--neutral-900); }
.kza__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 72px; align-items: center; }
.kza__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; min-width: 0; }
.kza__cena { margin: 0; max-width: 600px; font-weight: 300; font-size: clamp(20px, 1.7vw, 25px); line-height: 1.5; letter-spacing: -.01em; color: var(--neutral-700); }
.kza__mesa { min-width: 0; padding: 26px; border-radius: 28px; background: #F4F5F3; }
.kza__cab { margin: 0 0 16px; display: flex; align-items: baseline; gap: 10px; font-size: 14px; color: var(--neutral-600); }
.kza__cab b { font-weight: 300; font-size: 40px; line-height: 1; color: var(--blue-900); }
.kza__lista { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.kza__lista li { display: flex; align-items: flex-start; gap: 14px; padding: 14px 16px; border-radius: 16px; background: #fff; box-shadow: 0 1px 0 rgba(34, 37, 38, .06), 0 18px 30px -24px rgba(1, 29, 38, .35); rotate: calc((var(--k) - 1.5) * .6deg); transition: rotate .4s ease, translate .4s ease; }
.kza__mesa:hover .kza__lista li { rotate: 0deg; }
.kza__lista li:nth-child(odd) { translate: 10px 0; }
.kza__mesa:hover .kza__lista li { translate: 0 0; }
.kza__ic { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #FCEBEA; color: #B4121B; }
.kza__t { display: flex; flex-direction: column; gap: 2px; font-size: 15.5px; line-height: 1.45; color: var(--neutral-800); }
.kza__t em { font-style: normal; font-size: 11.5px; letter-spacing: .08em; color: var(--neutral-400); font-variant-numeric: tabular-nums; }

/* 3. O que estava em jogo */
.kzj { background: var(--blue-900); color: var(--neutral-100); }
.kzj__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 72px; align-items: start; }
.kzj__cab { position: sticky; top: 120px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; min-width: 0; }
.kzj .kz-h2 { color: var(--neutral-000); }
.kzj__lead { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
.kzj__pilha { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 22px; }
.kzj__c { position: sticky; top: calc(120px + var(--k) * 22px); }
.kzj__c article { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "n n" "ic h" "ic p"; gap: 6px 18px; padding: 32px 34px; border-radius: 26px; background: #0b2b36; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .1), 0 -20px 40px -20px rgba(0, 0, 0, .6); }
.kzj__c:nth-child(2) article { background: #0e3442; } .kzj__c:nth-child(3) article { background: #123d4d; } .kzj__c:nth-child(4) article { background: #164657; }
.kzj__n { grid-area: n; margin: 0 0 10px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.kzj__ic { grid-area: ic; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--ac); color: var(--ac-t); }
.kzj__c h3 { grid-area: h; margin: 0; font-weight: 400; font-size: 26px; letter-spacing: -.01em; color: var(--neutral-000); }
.kzj__c p:not(.kzj__n) { grid-area: p; margin: 0; font-size: 16px; line-height: 1.6; color: var(--neutral-300); }

/* 4. Diagnóstico */
.kzd { background: #F4F5F3; color: var(--neutral-900); }
.kzd__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
.kzd__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; min-width: 0; }
.kzd__lead { margin: 0; max-width: 560px; font-size: 17px; line-height: 1.6; color: var(--neutral-600); }
.kzd__nav { margin: 6px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; width: 100%; }
.kzd__nav button { width: 100%; display: grid; grid-template-columns: 36px 1fr 16px; align-items: center; gap: 12px; padding: 16px 18px; border: 0; border-radius: 16px; background: #fff; color: var(--neutral-800); font-size: 16px; text-align: left; cursor: pointer; box-shadow: 0 0 0 1px rgba(34, 37, 38, .06); transition: background .25s, color .25s, box-shadow .25s; }
.kzd__nav button b { font-weight: 300; font-size: 14px; color: var(--neutral-500); font-variant-numeric: tabular-nums; }
.kzd__nav button svg { opacity: 0; transition: opacity .25s, translate .25s; translate: -6px 0; }
.kzd__nav button:hover { box-shadow: 0 0 0 1px rgba(34, 37, 38, .2); }
.kzd__nav button.is-on { background: var(--blue-900); color: #fff; box-shadow: none; }
.kzd__nav button.is-on b { color: var(--ac-n); }
.kzd__nav button.is-on svg { opacity: 1; translate: 0 0; }
.kzd__lente { position: relative; min-width: 0; min-height: 380px; display: flex; flex-direction: column; justify-content: flex-end; gap: 14px; padding: 40px; border-radius: 32px; background: radial-gradient(70% 60% at 85% 10%, var(--ac-g), transparent 70%) var(--blue-900); color: var(--neutral-100); overflow: hidden; }
.kz--sh .kzd__lente { background: radial-gradient(70% 60% at 85% 10%, rgba(18, 89, 124, .9), transparent 70%) var(--blue-900); }
.kzd__ic { position: absolute; top: 34px; right: 34px; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .25); color: var(--ac-n); }
.kzd__k { position: absolute; top: 40px; left: 40px; margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.kzd__p { display: flex; flex-direction: column; gap: 12px; animation: kzEntra .45s cubic-bezier(.2, .7, .2, 1); }
.kzd__big { margin: 0; font-weight: 200; font-size: 96px; line-height: .9; letter-spacing: -.05em; color: var(--ac-n); }
.kzd__p h3 { margin: 0; font-weight: 400; font-size: 30px; letter-spacing: -.015em; color: var(--neutral-000); }
.kzd__p p:not(.kzd__big) { margin: 0; max-width: 460px; font-size: 17px; line-height: 1.6; color: var(--neutral-300); }
@keyframes kzEntra { from { opacity: 0; translate: 0 14px; } to { opacity: 1; translate: 0 0; } }

/* 5. A virada (capítulos) */
.mt--kz.is-anim { height: calc(100vh + (var(--n) - 1) * 80vh); }
.kzv { display: flex; flex-direction: column; gap: 14px; max-width: 460px; padding: 28px 30px; border-radius: 24px; background: rgba(249, 250, 250, .05); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .14); }
.kzv__k { margin: 0; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--neutral-400); }
.kz .kzv__q.cgq__q--p { background: var(--neutral-000); color: var(--blue-900); }
.kz .kzv__q.cgq__q--ia { background: var(--ac); color: var(--ac-t); }
.kz--sh .kzv__q.cgq__q--ia { box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .35); }
.kzv__barra { position: relative; height: 10px; border-radius: 99px; background: var(--ac); overflow: hidden; }
.kz--sh .kzv__barra { background: repeating-linear-gradient(135deg, var(--blue-700) 0 6px, #1b6d95 6px 12px); }
.kzv__barra i { position: absolute; inset: 0 auto 0 0; width: var(--p); border-radius: 99px; background: var(--neutral-000); }
.kzv__leg { margin: 0; display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--neutral-400); }
.kzv__leg span:last-child { text-align: right; }
.kzv__como { margin: 4px 0 0; padding-top: 14px; border-top: 1px solid rgba(249, 250, 250, .12); font-size: 15.5px; line-height: 1.55; color: var(--neutral-200); }
.kz-nao { display: flex; flex-direction: column; gap: 4px; max-width: 560px; padding: 14px 18px; border-radius: 16px; background: rgba(249, 250, 250, .05); box-shadow: inset 3px 0 0 var(--ac); }
.kz--sh .kz-nao { box-shadow: inset 3px 0 0 var(--neutral-000); }
.kz-nao b { font-weight: 500; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ac-n); }
.kz-nao p { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--neutral-300); }

/* 6. Entrega em telas */
.kzt { background: #fff; color: var(--neutral-900); }
.kzt__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: flex; flex-direction: column; gap: 44px; }
.kzt__app { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 32px; align-items: start; }
.kzt__nav { display: flex; flex-direction: column; gap: 8px; }
.kzt__nav button { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border: 0; border-radius: 16px; background: #F4F5F3; color: var(--neutral-800); font-size: 16px; text-align: left; cursor: pointer; transition: background .25s, color .25s; }
.kzt__nav button b { font-weight: 300; font-size: 14px; color: var(--neutral-500); }
.kzt__nav button:hover { background: #EBECED; }
.kzt__nav button.is-on { background: var(--blue-900); color: #fff; }
.kzt__nav button.is-on b { color: var(--ac-n); }
.kzt__fr { margin: 0; min-width: 0; border-radius: 20px; overflow: hidden; background: #0d1b21; box-shadow: 0 0 0 1px rgba(34, 37, 38, .1), 0 60px 90px -50px rgba(1, 29, 38, .6); }
.kzt__palco { background: #F4F5F3; }
.kzt__pg { display: flex; flex-direction: column; }
.kzt__pg > .kzm, .kzt__pg > img { aspect-ratio: 16 / 9.5; height: auto; width: 100%; object-fit: cover; object-position: top; animation: kzEntra .45s cubic-bezier(.2, .7, .2, 1); }
.kzt__pg .kzm { padding: 30px 36px; font-size: 14px; }
.kzt__leg { margin: 0; padding: 16px 22px; background: #fff; border-top: 1px solid #EBECED; font-size: 15px; line-height: 1.5; color: var(--neutral-700); }
.kzt__fr figcaption { padding: 10px 22px; background: #fff; font-size: 12px; letter-spacing: .04em; color: var(--neutral-500); border-top: 1px solid #F4F5F3; }

/* 7. Resultado */
.kzr { background: radial-gradient(50% 70% at 100% 0%, var(--ac-g), transparent 70%) var(--blue-900); color: var(--neutral-100); }
.kzr__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px 96px; display: flex; flex-direction: column; gap: 44px; }
.kzr__cab { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.kzr .kz-h2 { color: var(--neutral-000); }
.kzr__grade { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 16px; }
.kzr__prin { display: flex; flex-direction: column; justify-content: flex-end; gap: 14px; min-height: 300px; padding: 36px; border-radius: 28px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.kzr__n { font-weight: 200; font-size: clamp(88px, 11vw, 168px); line-height: .85; letter-spacing: -.06em; color: var(--ac-n); font-variant-numeric: tabular-nums; }
.kzr__prin p { margin: 0; max-width: 420px; font-size: 19px; line-height: 1.45; color: var(--neutral-200); }
.kzr__apoio { margin: 0; padding: 0; list-style: none; display: grid; grid-template-rows: repeat(auto-fit, minmax(0, 1fr)); gap: 16px; }
.kzr__apoio li { display: grid; grid-template-columns: minmax(110px, auto) 1fr; align-items: center; gap: 20px; padding: 22px 26px; border-radius: 22px; background: rgba(249, 250, 250, .04); box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .12); }
.kzr__v { font-weight: 300; font-size: 40px; line-height: 1; letter-spacing: -.03em; color: var(--neutral-000); font-variant-numeric: tabular-nums; }
.kzr__apoio span { font-size: 15.5px; line-height: 1.45; color: var(--neutral-300); }
.kzr__rot { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 28px; padding: 26px 30px; border-radius: 24px; background: var(--neutral-000); color: var(--neutral-900); }
.kzr__sw { display: inline-flex; padding: 4px; border-radius: 99px; background: #EBECED; }
.kzr__sw button { padding: 10px 20px; border: 0; border-radius: 99px; background: transparent; color: var(--neutral-600); font-size: 13px; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; transition: background .25s, color .25s; }
.kzr__sw button.is-on { background: var(--blue-900); color: #fff; }
.kzr__frase { margin: 0; display: flex; flex-direction: column; gap: 4px; font-weight: 300; font-size: 21px; line-height: 1.4; letter-spacing: -.01em; animation: kzEntra .4s ease; }
.kzr__frase span { font-weight: 400; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--ac-e); }
.kzr__frase[data-kz-rf="antes"] span { color: #B4121B; }
.kzr__fonte { margin: -20px 0 0; font-size: 13px; color: var(--neutral-400); }

/* 8. Voz do cliente */
.kzc { background: #fff; color: var(--neutral-900); }
.kzc__in { position: relative; max-width: 1000px; margin: 0 auto; padding: 120px 40px; display: flex; flex-direction: column; gap: 30px; }
.kzc__aspas { position: absolute; top: 40px; left: 22px; font-size: 220px; line-height: 1; font-weight: 200; color: var(--ac); opacity: .9; pointer-events: none; }
.kz--sh .kzc__aspas { opacity: .25; }
.kzc blockquote { position: relative; margin: 0; }
.kzc blockquote p { margin: 0; font-weight: 300; font-size: clamp(26px, 3vw, 42px); line-height: 1.25; letter-spacing: -.02em; color: var(--blue-900); text-wrap: balance; }
.kzc figcaption { display: flex; align-items: center; gap: 14px; }
.kzc__av { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--blue-900); color: #fff; }
.kzc figcaption > span:last-child { display: flex; flex-direction: column; gap: 2px; }
.kzc figcaption b { font-weight: 500; font-size: 16px; }
.kzc figcaption em { font-style: normal; font-size: 14px; color: var(--neutral-500); }

/* 9. Convite */
.kzx { background: var(--blue-900) url("../img/bg-scene-a.webp") center / cover no-repeat; color: var(--neutral-100); }
.kzx__in { max-width: 1286px; margin: 0 auto; padding: 112px 40px; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); gap: 64px; align-items: end; }
.kzx__tx { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; min-width: 0; }
.kzx h2 { margin: 0; display: flex; flex-direction: column; font-weight: 200; font-size: clamp(36px, 4.4vw, 64px); line-height: 1.02; letter-spacing: -.025em; color: var(--neutral-000); text-wrap: balance; }
.kzx h2 em { font-style: normal; color: var(--neutral-400); }
.kzx__tx > p:not(.chip) { margin: 0; max-width: 560px; font-size: 17px; line-height: 1.55; color: var(--neutral-300); }
.kzx__lado { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.kzx__sol { display: flex; flex-direction: column; gap: 10px; padding: 26px 28px; border-radius: 24px; background: var(--neutral-000); color: var(--neutral-900); box-shadow: inset 0 4px 0 var(--ac); transition: translate .3s; }
.kzx__sol:hover { translate: 0 -4px; }
.kzx__sol .kz-fr { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral-600); }
.kzx__sol .kz-fr::before { box-shadow: none; }
.kzx__sol b { font-weight: 400; font-size: 24px; line-height: 1.2; letter-spacing: -.01em; color: var(--blue-900); }
.kzx__sol em { display: inline-flex; align-items: center; gap: 8px; font-style: normal; font-size: 14px; color: var(--neutral-600); }
.kzx__outros { display: flex; align-items: center; justify-content: space-between; padding: 18px 24px; border-radius: 18px; box-shadow: inset 0 0 0 1px rgba(249, 250, 250, .2); font-size: 15px; transition: background .25s; }
.kzx__outros:hover { background: rgba(249, 250, 250, .06); }

@media (max-width: 1100px) {
  .kzh__in, .kza__in, .kzj__in, .kzd__in, .kzx__in { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .kzh__in { padding-top: 130px; }
  .kzh__vis { max-width: 720px; }
  .kzh__num { left: 16px; }
  .kzh__ficha { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kzj__cab { position: static; }
  .kzt__app { grid-template-columns: minmax(0, 1fr); }
  .kzt__nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
  .kzt__nav button { flex: none; }
  .kzr__grade { grid-template-columns: minmax(0, 1fr); }
  .mt--kz .kz-nao { max-width: none; }
}
@media (max-width: 700px) {
  .kzh__in { padding: 118px 20px 40px; gap: 36px; }
  .kzh__fi { padding: 0 20px 56px; }
  .kzh__ficha { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kzh__ficha .kzh__fs { grid-column: 1 / -1; }
  .kzh__vis { padding-bottom: 0; display: flex; flex-direction: column; gap: 14px; }
  .kzh__num { position: static; max-width: none; }
  .kzh__n { font-size: 44px; }
  .kzh__tela { rotate: 0deg; }
  .kzh__mock { aspect-ratio: 4 / 3.4; }
  .kza__in, .kzj__in, .kzd__in, .kzt__in, .kzr__in, .kzx__in { padding: 72px 20px; }
  .kzc__in { padding: 88px 20px 72px; }
  .kzc__aspas { font-size: 150px; top: 24px; left: 6px; }
  .kza__mesa { padding: 18px; }
  .kza__lista li:nth-child(odd) { translate: 0 0; }
  .kzj__c { position: static; }
  .kzj__c article { padding: 24px; grid-template-areas: "n n" "ic h" "p p"; }
  .kzj__c h3 { font-size: 22px; align-self: center; }
  .kzd__lente { min-height: 0; padding: 92px 24px 28px; }
  .kzd__k { top: 30px; left: 24px; } .kzd__ic { top: 20px; right: 20px; width: 48px; height: 48px; }
  .kzd__big { font-size: 72px; }
  .kzd__p h3 { font-size: 24px; }
  .kzm { padding: 16px; font-size: 12px; }
  .kzt__pg > .kzm { aspect-ratio: auto; min-height: 340px; }
  .kzt__pg .kzm { padding: 18px; font-size: 12px; }
  .kzm--form { flex-direction: column; } .kzm__capa { flex: none; }
  .kzm__fone { width: 60%; }
  .kzr__prin { min-height: 0; padding: 26px; }
  .kzr__apoio li { grid-template-columns: minmax(0, 1fr); gap: 6px; padding: 20px; }
  .kzr__rot { grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 22px; }
  .kzr__frase { font-size: 18px; }
  .kzv { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .kzd__p, .kzt__pg > .kzm, .kzt__pg > img, .kzr__frase { animation: none; }
  .kzm__b--dig em { animation: none; }
  .kza__lista li { rotate: 0deg; translate: 0 0; }
}
.kzd__p[hidden], .kzt__pg[hidden], .kzr__frase[hidden] { display: none; }
.kzh__ficha .kzh__st dd { flex-wrap: nowrap; }
.kzh__on { flex: none; }
.kz--sh .kzc__aspas { opacity: 1; color: var(--blue-700); }
.kzc__in { padding-top: 150px; }
@media (max-width: 700px) { .kzc__in { padding-top: 110px; } }
.kz--sh .mtp__f, .kz--sh .mtp__n, .kz--sh .pxl li.is-ativo b { color: var(--neutral-000); }
.kz--sh .pxl li::before { background: var(--neutral-000); }
.kz--sh .mtp__o { -webkit-text-stroke-color: rgba(249, 250, 250, .28); }
.kzm--lista li em { opacity: 1; }
.kz--sh .kzm__area { fill: var(--blue-900); opacity: .1; }
.dlh__extra { margin: 14px 0 0; font-size: 15px; color: rgba(249, 250, 250, .78); }
.dlh__extra a { color: #F4B63F; text-decoration: underline; text-underline-offset: 3px; }
.pe4-lendo { background: linear-gradient(transparent 0, rgba(244, 182, 63, .22) 0); border-radius: 4px; box-shadow: 0 0 0 4px rgba(244, 182, 63, .22); transition: background .2s; }
