/* Página Gerpro ADV */
.adv-hero { text-align: center; padding-block: clamp(56px, 8vw, 104px) clamp(36px, 5vw, 56px); }
.adv-hero h1 { max-width: 20ch; margin-inline: auto; font-size: clamp(2.1rem, 4.6vw, 3.4rem); }
.adv-hero .lead { margin-inline: auto; max-width: 62ch; }
.adv-hero .lead--2 { margin-top: -4px; }
.badge--light { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.3); padding: 8px 16px; margin-bottom: 22px; }
.hero__ctas--center { justify-content: center; }
.ticks--row { grid-auto-flow: column; justify-content: center; gap: 28px; margin: 6px auto 0; }
.ticks--row li { max-width: 26ch; text-align: left; }
.pagelinks { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 34px; padding-top: 26px; border-top: 1px solid rgba(255,255,255,.16); }
.pagelinks a { color: #dce8ff; text-decoration: none; font: 700 .82rem var(--g-font-head); padding: 8px 14px; border-radius: 999px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18); }
.pagelinks a:hover { background: rgba(255,255,255,.18); }
.pagelinks a:focus-visible { outline: 3px solid var(--g-sky); outline-offset: 2px; }
@media (max-width: 800px) { .ticks--row { grid-auto-flow: row; justify-content: start; } .ticks--row li { max-width: none; } .adv-hero { text-align: left; } .adv-hero h1, .adv-hero .lead { margin-inline: 0; } .hero__ctas--center, .pagelinks { justify-content: flex-start; } }

.two { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 64px); align-items: start; }
.two > * { min-width: 0; }
@media (max-width: 900px) { .two { grid-template-columns: 1fr; } }
.steps { list-style: none; margin: 26px 0 28px; padding: 0; counter-reset: st; display: grid; gap: 14px; }
.steps li { counter-increment: st; display: grid; grid-template-columns: 40px 1fr; gap: 4px 16px; }
.steps li::before { content: counter(st); grid-row: span 2; width: 36px; height: 36px; border-radius: 50%; background: var(--g-blue); color: #fff; display: grid; place-items: center; font: 800 .95rem var(--g-font-head); }
.steps b { font: 800 1.05rem var(--g-font-head); color: var(--g-navy); }
.steps span { color: var(--g-muted); font-size: .96rem; }
.two--shots { margin-top: 44px; }
.shotcol h3 { margin-bottom: 6px; }
.shotcol > p { color: var(--g-muted); margin-bottom: 18px; font-size: .96rem; }
#ferramentas .btnrow { margin-top: 32px; }
.impl__cols--4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.impl__cols--4 .impl__box h3 { font-size: 1.05rem; margin: 14px 0 6px; }
.impl__cols--4 .impl__box p { font-size: .93rem; margin: 0; }
@media (max-width: 1000px) { .impl__cols--4 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .impl__cols--4 { grid-template-columns: 1fr; } }
#atendimento .btnrow, #escopo .btnrow { margin-top: 30px; }
.cmp--escopo .td-inc { background: #eefaf1; color: #1f5a33; font-weight: 700; }
.cmp--escopo .td-add { background: #fff5e0; color: #7a4f00; font-weight: 700; }
.cmp--escopo thead th:last-child { background: var(--g-navy); }
@media (max-width: 760px) {
  .cmp--escopo .td-inc, .cmp--escopo .td-add { border-radius: 10px; margin: 8px 16px 0; width: auto; padding: 12px 14px; }
  .cmp--escopo .td-inc::before { color: #1d6b37; } .cmp--escopo .td-add::before { color: #8a5a00; }
}
.cmp:not(.cmp--escopo) thead th:last-child { background: var(--g-navy); }
#especialista .fcard .fgrid { gap: 0 12px; }

/* ===== Ajustes rodada 1 ===== */
.adv .sec { padding-block: clamp(44px, 5.5vw, 76px); }
.adv .adv-hero { padding-block: clamp(56px, 7vw, 92px) clamp(32px, 4vw, 48px); }

/* Abertura: título em até 2 linhas e textos mais abertos */
.adv .adv-hero h1 { max-width: 1060px; font-size: clamp(2rem, 4.2vw, 3.2rem); }
.adv .adv-hero .lead { max-width: 960px; }

/* Títulos de seção: mais largos, uma linha onde pedido */
.adv .shead { max-width: 1000px; }
.adv .shead .lead { max-width: 960px; }
.adv .shead--center { max-width: 1100px; }
@media (min-width: 1000px) {
  #para-seu-escritorio .shead h2, #atendimento .shead h2 { white-space: nowrap; }
}

/* Menos brilho azul nos blocos */
.adv .uistage { background: linear-gradient(135deg, #e8eef8 0%, #f1f5fb 100%); }
.adv .uic { box-shadow: 0 10px 28px rgba(20, 32, 94, .09); }
.adv .sec--mist .uistage { background: linear-gradient(135deg, #e3ebf7 0%, #eef3fb 100%); }

/* Rotina: imagem acompanha a altura do texto */
#rotina .two { align-items: stretch; }
#rotina .two > .ui { display: flex; }
#rotina .two > .ui .uistage { flex: 1; display: flex; }
#rotina .two > .ui .uic { flex: 1; display: flex; flex-direction: column; justify-content: center; }
#rotina .grid2f { gap: 12px 16px; }
#rotina .grid2f div { padding: 14px 16px; }
#rotina .ficha { margin-bottom: 20px; }
#rotina .tabs { margin-bottom: 18px; }

/* Documentos x Financeiro: mesma altura */
.two--shots { align-items: stretch; }
.two--shots .shotcol { display: flex; flex-direction: column; }
.two--shots .shotcol > .ui { flex: 1; display: flex; }
.two--shots .shotcol > .ui .uistage { flex: 1; display: flex; }
.two--shots .shotcol > .ui .uic { flex: 1; display: flex; flex-direction: column; }
.two--shots .dtable { margin-top: auto; margin-bottom: auto; }

/* IA: dois blocos de mesmo tamanho */
.adv .ia-shots { grid-template-columns: 1fr 1fr; align-items: stretch; }
.adv .ia-shots .ui { display: flex; }
.adv .ia-shots .uistage { flex: 1; display: flex; }
.adv .ia-shots .uic { flex: 1; }
@media (max-width: 900px) { .adv .ia-shots { grid-template-columns: 1fr; } }

/* Texto único na abertura e títulos equilibrados */
.adv .adv-hero .lead--one { max-width: 920px; font-size: 1.12rem; line-height: 1.7; text-wrap: pretty; }
.adv h1, .adv h2 { text-wrap: balance; }

/* ===== Página Análise Preditiva ===== */
.ap-hero { padding-block: clamp(40px, 5vw, 72px); }
.ap-hero .pred-grid { align-items: start !important; }
.ap-hero h1 { font-size: clamp(2rem, 3.8vw, 3rem); margin-bottom: 18px; }
.seal { display: inline-flex; gap: 10px; align-items: center; margin: 4px 0 0; padding: 8px 16px; border-radius: 999px; background: #fff; color: var(--g-navy); font: 700 .88rem/1.3 var(--g-font-head); box-shadow: var(--g-shadow); }
.seal span { flex: none; width: 10px; height: 10px; border-radius: 50%; background: #1f9d55; }
#video .video-slot { max-width: 980px; margin-inline: auto; }
#video .vplayer { max-width: none; }
#video .shead { margin-bottom: 32px; }
.flow--ap { grid-template-columns: repeat(3, 1fr); margin-top: 32px; }
.flow--ap li { text-align: center; }
.flow--ap li::before { margin-inline: auto; }
@media (max-width: 600px) { .flow--ap { grid-template-columns: 1fr; } }
#na-pratica .note { font-size: .95rem; background: #fff; border-left: 4px solid var(--g-blue); padding: 12px 16px; border-radius: 8px; margin: 18px 0; color: var(--g-muted); }
.ap-cta { text-align: center; }
.ap-cta h2 { max-width: 22ch; margin-inline: auto; }
.ap-cta .lead { margin-inline: auto; max-width: 62ch; }
.ap-cta__small { margin-top: 18px; font-size: .95rem; color: #c9d5f5; }
.ap-cta__small a, .ap-cta__links a { color: #dce8ff; }
.ap-cta__links { display: flex; gap: 14px; justify-content: center; margin-top: 18px; font: 700 .95rem var(--g-font-head); color: #8cc6ee; flex-wrap: wrap; }
.adv .ap-cta h2 { white-space: normal; }

/* ===== REGRA GERAL: texto/título alinhado ao topo da imagem ao lado ===== */
.pred-grid, .two, .alt, .esp-grid, .split, .vrow, .brand-band .grid2 { align-items: start !important; }
.pred-grid > div > .eyebrow:first-child, .two > div > .eyebrow:first-child, .alt > div > h3:first-child, .alt > div > .eyebrow:first-child { margin-top: 0; }
.btnrow, .hero__ctas { align-items: center; }
.btnrow .linkarrow { line-height: 1; padding: 4px 2px; }

/* ===== Página Quem somos ===== */
.qs-hero { padding-block: clamp(44px, 5.5vw, 76px); }
.qs-hero .wrap { max-width: 920px; margin-inline: auto; }
.qs-hero .wrap > * { max-width: 100%; }
.qs-hero .badge { margin-bottom: 20px; }
.qs-hero h1 { font-size: clamp(2rem, 4vw, 3.1rem); }
.qs-hero .lead { max-width: 760px; margin-bottom: 26px; }
.qs-mark { display: grid; place-items: center; align-content: center; text-align: center; min-height: 340px; border-radius: var(--g-r-lg); background: var(--g-grad-hero); color: #fff; position: relative; overflow: hidden; padding: 32px; box-shadow: var(--g-shadow-lg); }
.qs-mark::after { content: ""; position: absolute; inset: auto -20% -50% auto; width: 90%; aspect-ratio: 1; border-radius: 50%; border: 2px solid rgba(140,198,238,.22); box-shadow: 0 0 0 36px rgba(140,198,238,.06), 0 0 0 76px rgba(140,198,238,.04); }
.qs-mark > * { position: relative; z-index: 1; }
.qs-mark__n { font: 800 clamp(5rem, 11vw, 8rem)/.9 var(--g-font-head); letter-spacing: -.04em; }
.qs-mark__t { font: 700 1.6rem var(--g-font-head); color: #8cc6ee; margin-top: 6px; }
.qs-mark__g { margin-top: 16px; padding: 7px 18px; border-radius: 999px; border: 1px solid rgba(255,255,255,.4); font: 800 .8rem var(--g-font-head); letter-spacing: .16em; text-transform: uppercase; }
.qs-sol { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 8px; }
@media (max-width: 760px) { .qs-sol { grid-template-columns: 1fr; } }
.qs-card { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 32px 30px; }
.qs-card h3 { margin: 16px 0 8px; font-size: 1.3rem; }
.qs-card p { margin: 0 0 24px; font-size: 1rem; }
.qs-card .btn { margin-top: auto; }
.qs-hero .wrap { max-width: var(--g-wrap); margin-inline: auto; }
.qs-hero h1 { max-width: 900px; }
.qs-hero .lead { max-width: 820px; }
.qs-hero { position: relative; overflow: hidden; background: radial-gradient(900px 400px at 85% 20%, #d4e5fb 0%, transparent 70%), linear-gradient(135deg, #eaf2fe 0%, #dce9fb 100%); }
.qs-hero::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(37,44,109,.12) 1.2px, transparent 1.4px); background-size: 26px 26px; -webkit-mask-image: linear-gradient(90deg, transparent 35%, #000 100%); mask-image: linear-gradient(90deg, transparent 35%, #000 100%); pointer-events: none; }
.qs-art { position: absolute; right: max(2vw, calc((100vw - var(--g-wrap)) / 2 - 40px)); top: 50%; transform: translateY(-50%); width: min(560px, 46vw); height: auto; pointer-events: none; }
.qs-hero .wrap { position: relative; z-index: 1; }
@media (max-width: 900px) { .qs-art { opacity: .25; right: -80px; width: 380px; } }
.qs-mark { margin: 0; display: grid; place-items: center; min-height: 340px; padding: clamp(24px, 4vw, 48px); background: #fff; border: 1px solid #dbe6f6; border-radius: var(--g-r-lg); box-shadow: var(--g-shadow-lg); position: relative; overflow: hidden; }
.qs-mark::before { content: ""; position: absolute; inset: 0; background: radial-gradient(420px 260px at 80% 15%, #e1edfc, transparent 70%), radial-gradient(360px 240px at 10% 95%, #eaf2fe, transparent 70%); }
.qs-mark::after { display: none; }
.qs-mark img { position: relative; z-index: 1; width: min(100%, 520px); height: auto; }

/* ===== Página Ética e conduta ===== */
.ec-hero .wrap > * { max-width: 760px; }
.ec-hero .lead { margin-bottom: 14px; }
.ec-hero .badge { margin-bottom: 20px; }
.ec-art { width: min(380px, 38vw); }
.ec-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
@media (max-width: 760px) { .ec-grid { grid-template-columns: 1fr; } }
.ec-grid .card { padding: 30px 30px 32px; }
.ec-grid .card h3 { font-size: 1.25rem; }
.ec-grid .card p { font-size: 1rem; line-height: 1.6; }
.ec-two { grid-template-columns: .8fr 1.2fr; }
@media (max-width: 900px) { .ec-two { grid-template-columns: 1fr; } }
.ec-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; background: #fff; border: 1px solid var(--g-line); border-radius: var(--g-r-md); overflow: hidden; }
.ec-list li { position: relative; padding: 20px 24px 20px 58px; border-bottom: 1px solid var(--g-line); font-size: 1.02rem; line-height: 1.55; }
.ec-list li:last-child { border-bottom: 0; }
.ec-list li::before { content: ""; position: absolute; left: 22px; top: 22px; width: 22px; height: 22px; border-radius: 50%; background: var(--g-mist) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%230267d4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/22px no-repeat; }
.ec-docs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
@media (max-width: 800px) { .ec-docs { grid-template-columns: 1fr; } }
.ec-doc { display: flex; align-items: center; gap: 16px; min-height: 76px; padding: 18px 22px; background: #fff; border: 1px solid var(--g-line); border-left: 4px solid var(--g-blue); border-radius: var(--g-r-md); text-decoration: none; color: var(--g-navy); font: 800 1rem/1.3 var(--g-font-head); transition: box-shadow .2s, transform .2s; }
.ec-doc:hover { box-shadow: var(--g-shadow); transform: translateY(-2px); }
.ec-doc:focus-visible { outline: 3px solid var(--g-blue); outline-offset: 3px; }
.ec-doc svg { flex: none; width: 30px; height: 30px; stroke: var(--g-blue); fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ec-contact { margin-top: 36px; padding-top: 26px; border-top: 1px solid var(--g-line); }
.ec-contact p { margin: 0 0 6px; }
.ec-contact a { font-weight: 700; }



/* ===== Página Fale conosco (V2) ===== */
.fc-hero { padding-block: clamp(36px, 4.5vw, 64px); background: radial-gradient(900px 420px at 90% 10%, #d4e5fb 0%, transparent 70%), linear-gradient(135deg, #eaf2fe 0%, #dce9fb 100%); }
.fc-hero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 4.5vw, 64px); align-items: start; }
.fc-hero__grid > * { min-width: 0; }
@media (max-width: 900px) { .fc-hero__grid { grid-template-columns: 1fr; } }
.fc-hero .badge { margin-bottom: 18px; }
.fc-hero h1 { font-size: clamp(1.9rem, 3.6vw, 2.9rem); margin-bottom: 16px; }
.fc-hero .lead { font-size: 1.08rem; margin-bottom: 24px; }
.fc-stats { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 10px; }
.fc-stats li { display: grid; grid-template-columns: 138px 1fr; gap: 14px; align-items: center; padding: 12px 16px; background: #fff; border: 1px solid #d9e5f6; border-radius: var(--g-r-md); box-shadow: 0 6px 18px rgba(20,32,94,.06); }
.fc-stats b { font: 800 1.2rem/1.1 var(--g-font-head); color: var(--g-blue); }
.fc-stats span { font-size: .92rem; line-height: 1.4; color: var(--g-muted); }
@media (max-width: 480px) { .fc-stats li { grid-template-columns: 1fr; gap: 2px; } }
.fc-direct p { margin: 0 0 8px; }
.fc-direct p > span { display: inline-block; margin-right: 10px; font: 800 .72rem var(--g-font-head); letter-spacing: .12em; text-transform: uppercase; color: var(--g-muted); }
.fc-direct a:not(.linkarrow) { font: 800 1.05rem var(--g-font-head); }
.fc-form { padding: 24px 26px; }
.fc-form h2 { font-size: 1.4rem; margin-bottom: 6px; }
.fc-form__sub { font-size: .93rem; margin: 0 0 16px; color: var(--g-muted); }
.fc-form .field { margin-bottom: 10px; }
.fc-form .field input, .fc-form .field select { min-height: 42px; padding: 9px 12px; }
.fc-form textarea { width: 100%; padding: 10px 12px; border: 1.5px solid #cdd6e6; border-radius: var(--g-r-sm); background: #f7f9fc; font: 400 1rem var(--g-font-body); color: var(--g-ink); resize: vertical; min-height: 64px; }
.fc-form textarea:focus, .fc-form select:focus { outline: 3px solid rgba(2,103,212,.3); border-color: var(--g-blue); background: #fff; }
.fc-form select[aria-invalid="true"] { border: 2px solid #c62839; }
.fc-form select[aria-invalid="true"] ~ .err { display: block; }
.fc-form .field input[aria-invalid="true"] { border-width: 2px; }
.fc-form .err::before { content: "! "; font-weight: 800; }
.fc-form .btn { margin-top: 4px; }
.fc-form .btn[disabled] { opacity: .65; cursor: progress; transform: none; }
.fc-form .fstatus.ok { background: #e6f5ea; color: #1d5a31; }
.fc-form .fstatus.bad { background: #fde8e8; color: #8a1c1c; }
.fc-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
@media (max-width: 900px) { .fc-cards { grid-template-columns: 1fr; } }
.fc-card { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 30px 28px; }
.fc-card h3 { margin: 0 0 8px; }
.fc-card p { margin: 0 0 10px; }
.fc-card__meta { font-weight: 700; color: var(--g-navy) !important; font-size: .92rem !important; }
.fc-card .btn { margin-top: auto; align-self: stretch; justify-content: center; }
.fc-card p + .btn { margin-top: auto; }
.fc-card .linkarrow { margin-top: 12px; font-size: .88rem; overflow-wrap: anywhere; }
.fc-card .linkarrow::after { content: none; }
.fc-sup { padding-block: clamp(32px, 4vw, 52px); }
.fc-sup__box { background: #fff; border: 1px solid #d9e5f6; border-radius: var(--g-r-lg); padding: clamp(22px, 3vw, 34px); box-shadow: var(--g-shadow); }
.fc-sup__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; margin-bottom: 18px; }
.fc-sup__head h2 { font-size: clamp(1.3rem, 2.2vw, 1.7rem); margin: 0; }
.fc-sup__hours { margin: 0; font-size: .98rem; }
.fc-sup__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
@media (max-width: 1000px) { .fc-sup__list { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .fc-sup__list { grid-template-columns: 1fr; } }
.fc-sup__list li { padding: 14px 16px; background: #f4f8fe; border-radius: var(--g-r-sm); display: grid; gap: 4px; min-width: 0; }
.fc-sup__list span { font: 800 .68rem var(--g-font-head); letter-spacing: .12em; text-transform: uppercase; color: var(--g-muted); }
.fc-sup__list a, .fc-sup__list b { font: 700 .95rem/1.35 var(--g-font-head); color: var(--g-navy); overflow-wrap: anywhere; }
.fc-sup__list b { font-weight: 600; font-family: var(--g-font-body); }
.fc-small { margin: 16px 0 0; color: var(--g-muted); font-size: .92rem; }
.fc-links { display: flex; gap: 14px; flex-wrap: wrap; justify-content: center; }

/* ===== Página inicial ===== */
.hm-sub { color: var(--g-muted); font-size: .96rem; }
.hm-tour { text-align: center; margin: 30px 0 0; font-size: 1.05rem; }
.hm-tour .linkarrow { margin-left: 8px; }
.hm-clients { border-top: 1px solid var(--g-line); }
.hm-clients h2 { font: 800 clamp(1.3rem, 2.4vw, 1.8rem)/1.2 var(--g-font-head); color: var(--g-navy); margin-bottom: 8px; letter-spacing: -.02em; }
.hm-clients__sub { text-align: center; color: var(--g-muted); margin: 0 0 26px; }
.home .qs-card .btn { align-self: flex-start; }
.hm-cog__mark { display: grid; place-items: center; align-content: center; gap: 18px; min-height: 280px; border: 1px solid rgba(255,255,255,.22); border-radius: var(--g-r-lg); background: rgba(255,255,255,.06); padding: 32px; text-align: center; }
.hm-cog__mark img { width: min(300px, 70%); height: auto; }
.hm-cog__mark span { font: 800 .8rem var(--g-font-head); letter-spacing: .16em; text-transform: uppercase; color: #8cc6ee; }
.home #cognitiva .lead { color: #c9d5f5; }
.home #cognitiva p { color: #e0e8fb; }
.home #gerpro .steps { margin-top: 24px; }
.ap-hero .seal { margin-top: 22px; }
.hm-cog__mark b { font: 800 clamp(2.6rem, 5vw, 3.8rem)/1 var(--g-font-head); letter-spacing: -.03em; color: #fff; }
.hm-cog__mark span { font-size: .85rem; }
.hm-cog__mark i { width: 56px; height: 3px; border-radius: 3px; background: linear-gradient(90deg, #5aaedc, #fff); }
.hm-cog__mark em { font: 600 1rem var(--g-font-body); font-style: normal; color: #c9d5f5; }

/* ===== Ética, conduta e privacidade (V2) ===== */
.anchor-alias { display: block; height: 0; }
.ec-hero .wrap > * { max-width: 760px; }
.ec-hero .wrap > .pagelinks { max-width: none; }
.pagelinks--light { justify-content: flex-start; border-top: 0; padding-top: 0; margin-top: 26px; }
.pagelinks--light a { color: var(--g-navy); background: #fff; border-color: #cfdcf0; }
.pagelinks--light a:hover { background: var(--g-mist); }
.ec-read { max-width: 760px; }
.ec-read h2 { margin-bottom: 26px; }
.ec-read h3 { font-size: 1.15rem; margin: 30px 0 8px; }
.ec-read p { font-size: 1.04rem; line-height: 1.7; margin: 0 0 14px; color: var(--g-ink); }
.ec-read a { font-weight: 700; }
.ec-contacts { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; max-width: 900px; }
@media (max-width: 700px) { .ec-contacts { grid-template-columns: 1fr; } }
.ec-contacts .card p { margin: 0; }
.ec-contacts a { font: 800 1.05rem var(--g-font-head); overflow-wrap: anywhere; }
#etica, #anti, #privacidade, #contatos, #lgpd { scroll-margin-top: 108px; }
@media print { .hdr, .ftr, .pagelinks, .qs-art, .skip { display: none !important; } .sec { padding-block: 16px; } }

/* ===== Home V2 ===== */
.home .hdr .wrap { height: 68px; }
.home .hdr img { height: 42px; width: auto; }
.home .hdr .btn.hdr__cta { padding: 10px 22px; }
@media (max-width: 960px) { .home .menu { inset: 68px 0 auto 0; } .home .hdr img { height: 36px; } }
.hm-hero { position: relative; overflow: hidden; color: #fff; text-align: center; background: #0b1038; }
.hm-arch { position: absolute; inset: 0; width: 100%; height: 100%; }
.hm-hero::after { content: ""; position: absolute; inset: 0; background: radial-gradient(60% 55% at 50% 45%, rgba(8,14,52,.78), rgba(8,14,52,.35) 70%, transparent), linear-gradient(180deg, rgba(8,14,52,.15), rgba(8,14,52,.55)); }
.hm-hero__in { position: relative; z-index: 1; padding-block: clamp(64px, 8vw, 104px) clamp(48px, 6vw, 80px); display: flex; flex-direction: column; align-items: center; }
.hm-kicker { font: 800 .78rem var(--g-font-head); letter-spacing: .18em; text-transform: uppercase; color: #8cc6ee; margin-bottom: 20px; }
.hm-hero h1 { color: #fff; font-size: clamp(2rem, 4.6vw, 3.7rem); max-width: 940px; margin-bottom: 20px; text-wrap: balance; }
.hm-hero__lead { max-width: 760px; font-size: clamp(1.02rem, 1.5vw, 1.2rem); line-height: 1.6; color: #dbe6fb; margin: 0 0 30px; }
.hm-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
.btn--glow { box-shadow: 0 10px 30px rgba(2,103,212,.6); }
.hm-stats { list-style: none; margin: 44px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 18px clamp(28px, 5vw, 64px); }
.hm-stats li { display: grid; gap: 4px; max-width: 210px; }
.hm-stats b { font: 800 clamp(1.5rem, 2.6vw, 2.1rem)/1.1 var(--g-font-head); color: #fff; }
.hm-stats span { font-size: .9rem; line-height: 1.4; color: #b9cdf3; }
.hm-tags { list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.hm-tags li { padding: 7px 14px; border-radius: 999px; background: var(--g-mist); color: var(--g-navy); font: 800 .8rem var(--g-font-head); }
.home .qs-sol { max-width: 1000px; margin-inline: auto; }
.home .qs-card h3 { font-size: 1.25rem; line-height: 1.25; margin: 14px 0 10px; }
.hm-clients2 { padding-block: clamp(36px, 4.5vw, 60px); }
.hm-clients2 .clients { border: 0; padding: 0; }
.hm-video { max-width: 1000px; margin-inline: auto; }
.hm-center { justify-content: center; margin-top: 30px; }
.hm-cog2 { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(24px, 5vw, 72px); align-items: start; }
.hm-cog2 h2 { margin: 0; }
.hm-cog2 .lead { margin-bottom: 16px; }
@media (max-width: 860px) { .hm-cog2 { grid-template-columns: 1fr; } }
.hm-cta-wrap { padding: clamp(24px, 4vw, 48px) 0 clamp(40px, 5vw, 72px); }
.hm-cta { position: relative; overflow: hidden; text-align: center; color: #fff; border-radius: 32px; padding: clamp(40px, 6vw, 80px) clamp(24px, 5vw, 64px); background: radial-gradient(500px 280px at 15% 20%, rgba(140,198,238,.55), transparent 70%), radial-gradient(520px 300px at 88% 85%, rgba(2,103,212,.7), transparent 70%), linear-gradient(135deg, #3f6cb8, #1f3f8f 55%, #14205e); box-shadow: var(--g-shadow-lg); }
.hm-cta h2 { color: #fff; max-width: 780px; margin: 0 auto 16px; font-size: clamp(1.6rem, 3.2vw, 2.5rem); text-wrap: balance; }
.hm-cta > p { max-width: 640px; margin: 0 auto 28px; color: #e0eafc; }
.hm-cta .hm-cta__small { margin: 20px auto 0; font-size: .92rem; color: #cfe0fa; }
.hm-cta .btn--ghost { border-color: rgba(255,255,255,.7); color: #fff; }
.ftr__logo { display: inline-block; background: #fff; border-radius: 12px; padding: 10px 16px; margin-bottom: 14px; }
.ftr__logo img { height: 36px; width: auto; margin: 0; display: block; }
.ftr li { color: #b6c3e6; font-size: .9rem; line-height: 1.5; }
@media (max-width: 560px) { .hm-stats { flex-direction: column; align-items: center; } .hm-hero__cta .btn { width: 100%; justify-content: center; } }
.home #cognitiva .lead { color: var(--g-muted); }
.home #cognitiva p { color: var(--g-ink); }
.hm-stats { align-items: start; }
.hm-stats li { text-align: center; }
.home .ftr .cols { grid-template-columns: 1.2fr .8fr .8fr 1.4fr; }
.home .ftr li a { overflow-wrap: anywhere; }
@media (max-width: 800px) { .home .ftr .cols { grid-template-columns: 1fr 1fr; } }
/* âncoras não ficam sob o cabeçalho fixo */
[id] { scroll-margin-top: 84px; }
body.home [id] { scroll-margin-top: 80px; }
form#comercial { scroll-margin-top: 90px; }
