/* Quem somos: estilos isolados em .quem-pagina, usados no app (aba) e na página quem-somos.html */
.quem-pagina { font: 17px/1.65 "Figtree", system-ui, sans-serif; color: var(--tinta); }
.quem-pagina h2 { font-size: 21px; line-height: 1.25; margin: 30px 0 8px; }
.quem-pagina h3 { font-size: 18px; margin: 22px 0 6px; }
.quem-pagina p, .quem-pagina li { color: #2B3244; }
.quem-pagina a { color: var(--acento); }
.quem-pagina .btn { display: inline-flex; align-items: center; min-height: 46px; padding: 0 18px; border-radius: 12px; background: var(--acento); color: #fff; font-weight: 800; text-decoration: none; }
.quem-pagina .quem-app { background: linear-gradient(135deg, var(--noite) 0%, var(--noite-2) 100%); color: #fff; border-radius: 22px; padding: 18px; margin: 0 -4px; }
.quem-pagina .quem-grade { display: grid; gap: 22px; }
.quem-pagina .perfil { border: 1px solid rgba(165,180,252,.22); border-radius: 18px; padding: 12px; background: rgba(255,255,255,.04); }
.quem-pagina .perfil-selo { margin: 0 0 10px; display: flex; align-items: center; gap: 8px; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px; letter-spacing: .06em; color: #C4B5FD; }
.quem-pagina .perfil-selo i { width: 8px; height: 8px; border-radius: 50%; background: #10B981; }
.quem-pagina .retrato { position: relative; border-radius: 12px; overflow: hidden; aspect-ratio: 4 / 5; background: var(--noite-2); }
.quem-pagina .retrato img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 15%; display: block; filter: grayscale(1) contrast(1.05); mix-blend-mode: luminosity; opacity: .92; }
.quem-pagina .retrato::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(139,92,246,.55), rgba(18,15,51,.35)); mix-blend-mode: color; pointer-events: none; }
.quem-pagina .perfil-nome { margin: 12px 0 0; display: grid; gap: 2px; font-size: 14px; color: #D6D9F7; }
.quem-pagina .perfil-nome b { font-family: 'JetBrains Mono', ui-monospace, monospace; color: #C4B5FD; font-size: 15px; }
.quem-pagina .perfil-link { display: flex; justify-content: space-between; align-items: center; min-height: 44px; margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(165,180,252,.15); color: #D6D9F7; text-decoration: none; font-size: 14px; }
.quem-pagina .perfil-link span { font-family: 'JetBrains Mono', ui-monospace, monospace; color: #fff; }
.quem-pagina .perfil-cta { display: flex; justify-content: center; width: 100%; margin-top: 12px; min-height: 48px; align-items: center; border-radius: 12px; background: #fff; color: var(--noite); font-weight: 800; text-decoration: none; }
.quem-pagina .quem-txt h2 { color: #fff; margin-top: 0; }
.quem-pagina .destaque-quem { margin: 10px 0 0; font-size: 22px; line-height: 1.3; color: #fff; font-weight: 700; }
.quem-pagina .destaque-quem a { color: #C4B5FD; }
.quem-pagina .quem-txt > p:not(.destaque-quem):not(.rotulo-quem) { color: #D6D9F7; text-align: justify; hyphens: auto; -webkit-hyphens: auto; font-size: 16px; }
.quem-pagina .rotulo-quem { margin: 22px 0 8px; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 13px; letter-spacing: .08em; color: #A5B4FC; }
.quem-pagina .afinidades { list-style: none; counter-reset: a; margin: 0; padding: 0; }
.quem-pagina .afinidades li { counter-increment: a; padding: 10px 0; margin: 0; border-bottom: 1px solid rgba(165,180,252,.15); font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 14px; color: #fff; }
.quem-pagina .afinidades li::before { content: counter(a, decimal-leading-zero); color: #8B5CF6; margin-right: 12px; font-size: 12px; }
.quem-pagina .numeros { display: grid; gap: 16px; margin: 22px 0 4px; grid-template-columns: 1fr 1fr; }
.quem-pagina .numeros dt { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px; letter-spacing: .08em; color: #A5B4FC; }
.quem-pagina .numeros dd { margin: 4px 0 0; color: #fff; font-size: 17px; font-weight: 700; line-height: 1.25; }
.quem-pagina .numeros small { display: block; font-size: 13px; font-weight: 500; color: #D6D9F7; margin-top: 2px; }
.quem-pagina .ep-links { display: grid; gap: 10px; margin-top: 18px; }
.quem-pagina .ep-links a { display: grid; gap: 2px; padding: 14px 16px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px var(--linha); text-decoration: none; color: var(--tinta); min-height: 44px; }
.quem-pagina .ep-links b { font-family: 'JetBrains Mono', ui-monospace, monospace; color: var(--acento-forte); }
.quem-pagina .ep-links span { font-size: 14px; color: var(--tinta-2); }
@media (min-width: 900px) {
  .quem-pagina .quem-grade { grid-template-columns: 340px minmax(0, 1fr); gap: 40px; align-items: start; }
  .quem-pagina .quem-app { padding: 28px; }
  .quem-pagina .numeros { grid-template-columns: repeat(4, 1fr); }
  .quem-pagina .ep-links { grid-template-columns: 1fr 1fr; }
}
.quem-pagina .bloco-sobre { margin-top: 28px; }
.quem-pagina .bloco-sobre h2 { margin-top: 0; }
.quem-pagina .regras-sobre { list-style: none; padding: 0; margin: 14px 0 0; display: grid; gap: 10px; }
.quem-pagina .regras-sobre li { margin: 0; padding: 14px 16px 14px 44px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px var(--linha); position: relative; font-size: 16px; line-height: 1.45; }
.quem-pagina .regras-sobre li::before { content: ""; position: absolute; left: 16px; top: 18px; width: 14px; height: 14px; border-radius: 4px; background: #8B5CF6; box-shadow: 0 0 0 4px rgba(139,92,246,.15); }
.quem-pagina .sub-sobre { color: var(--tinta-2); margin: 8px 0 14px; }
.quem-pagina .depo { margin: 0 0 12px; padding: 18px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px var(--linha); }
.quem-pagina .depo blockquote { margin: 0; font-size: 16px; line-height: 1.55; color: #2B3244; }
.quem-pagina .depo figcaption { margin-top: 10px; font-size: 14px; color: var(--tinta-2); }
.quem-pagina .depo figcaption b { color: var(--tinta); }
.quem-pagina .ver-google { font-weight: 800; min-height: 44px; display: inline-flex; align-items: center; }
.quem-pagina .cnpj { margin-top: 18px; font-size: 14px; color: var(--tinta-2); }
@media (min-width: 900px) { .quem-pagina .regras-sobre { grid-template-columns: 1fr 1fr; } .quem-pagina .bloco-sobre:has(.depo) { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; } .quem-pagina .bloco-sobre:has(.depo) > h2, .quem-pagina .bloco-sobre:has(.depo) > .sub-sobre, .quem-pagina .bloco-sobre:has(.depo) > .ver-google { grid-column: 1 / -1; } }


/* Quem somos: conteúdo que veio do epsistemas.cloud */
.quem-pagina .bloco-sobre .sub { color: var(--tinta-2); margin: 8px 0 16px; }
.quem-pagina .h2-sub { display: block; font-size: .72em; font-weight: 700; color: var(--tinta-2); margin-top: 2px; }
.quem-pagina .qs-luzes { display: grid; gap: 10px; }
.quem-pagina .qs-luzes .qs-luz { padding: 14px 16px 14px 42px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px var(--linha); position: relative; }
.quem-pagina .qs-luzes .qs-luz::before { content: ""; position: absolute; left: 16px; top: 20px; width: 12px; height: 12px; border-radius: 50%; }
.quem-pagina .qs-luzes .qs-luz.verde::before, .quem-pagina .qs-fazemos li.verde::before { background: #10B981; }
.quem-pagina .qs-luzes .qs-luz.ambar::before, .quem-pagina .qs-fazemos li.ambar::before { background: #F59E0B; }
.quem-pagina .qs-luzes .qs-luz.verm::before, .quem-pagina .qs-fazemos li.verm::before { background: #EF4444; }
.quem-pagina .qs-luzes .qs-luz b { display: block; font-size: 16px; }
.quem-pagina .qs-luzes .qs-luz p { margin: 2px 0 0; font-size: 15px; color: var(--tinta-2); line-height: 1.5; }
.quem-pagina .qs-cartoes { display: grid; gap: 12px; }
.quem-pagina .qs-cartao { padding: 18px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px var(--linha); }
.quem-pagina .qs-cartao h3 { margin: 0 0 6px; font-size: 18px; line-height: 1.3; }
.quem-pagina .qs-cartao p { margin: 0; font-size: 15.5px; line-height: 1.55; color: #2B3244; }
.quem-pagina .qs-cartao details { margin-top: 10px; }
.quem-pagina .qs-cartao summary, .quem-pagina .qs-faq summary { cursor: pointer; font-weight: 800; color: var(--acento-forte); min-height: 40px; display: flex; align-items: center; }
.quem-pagina .qs-cartao ul { list-style: none; padding: 0; margin: 6px 0 0; display: grid; gap: 8px; }
.quem-pagina .qs-cartao li { position: relative; padding-left: 20px; font-size: 15px; line-height: 1.5; margin: 0; }
.quem-pagina .qs-cartao li::before { content: ""; position: absolute; left: 0; top: 7px; width: 10px; height: 10px; border-radius: 50%; }
.quem-pagina .qs-cartao .testar { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; font-weight: 800; }
.quem-pagina .qs-epcrm { padding: 22px 18px; border-radius: 18px; background: linear-gradient(135deg, var(--noite), var(--noite-2)); color: #fff; }
.quem-pagina .qs-epcrm p { color: #D9D6F5; font-size: 16px; }
.quem-pagina .qs-epcrm .itens { list-style: none; padding: 0; margin: 16px 0 0; display: grid; gap: 10px; }
.quem-pagina .qs-epcrm .itens li { margin: 0; padding: 14px; border-radius: 12px; background: rgba(255,255,255,.07); box-shadow: 0 0 0 1px rgba(255,255,255,.12); font-size: 15px; line-height: 1.5; color: #D9D6F5; }
.quem-pagina .qs-epcrm .itens b { display: block; color: #fff; font-size: 16px; margin-bottom: 2px; }
.quem-pagina .grade-4 { display: grid; gap: 10px; }
.quem-pagina .regra { padding: 16px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px var(--linha); }
.quem-pagina .regra b { font-size: 16px; } .quem-pagina .regra p { margin: 4px 0 0; font-size: 15px; line-height: 1.5; color: var(--tinta-2); }
.quem-pagina .qs-comeco .qs-passos { list-style: none; counter-reset: passo; padding: 0; margin: 0 0 16px; display: grid; gap: 10px; }
.quem-pagina .qs-comeco .qs-passos li { counter-increment: passo; position: relative; margin: 0; padding: 14px 16px 14px 56px; border-radius: 14px; background: #fff; box-shadow: 0 0 0 1px var(--linha); }
.quem-pagina .qs-comeco .qs-passos li::before { content: counter(passo); position: absolute; left: 14px; top: 14px; width: 28px; height: 28px; border-radius: 50%; background: var(--acento); color: #fff; font-weight: 800; font-size: 14px; display: grid; place-items: center; }
.quem-pagina .qs-comeco .qs-passos b { font-size: 16px; } .quem-pagina .qs-comeco .qs-passos p { margin: 2px 0 0; font-size: 15px; line-height: 1.5; color: var(--tinta-2); }
.quem-pagina .qs-faq details { border-bottom: 1px solid var(--linha); padding: 4px 0; }
.quem-pagina .qs-faq summary { color: var(--tinta); font-size: 16.5px; }
.quem-pagina .qs-faq details p { margin: 0 0 12px; font-size: 15.5px; color: var(--tinta-2); line-height: 1.6; }
@media (min-width: 768px) {
  .quem-pagina .qs-luzes { grid-template-columns: repeat(3, 1fr); }
  .quem-pagina .qs-cartoes { grid-template-columns: repeat(2, 1fr); }
  .quem-pagina .qs-epcrm { padding: 30px; }
  .quem-pagina .qs-epcrm .itens, .quem-pagina .grade-4, .quem-pagina .qs-comeco .qs-passos { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1100px) { .quem-pagina .qs-cartoes { grid-template-columns: repeat(3, 1fr); } .quem-pagina .grade-4, .quem-pagina .qs-comeco .qs-passos { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 900px) {
  .quem-pagina .qs-faq { display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; align-items: start; }
  .quem-pagina .qs-faq h2 { grid-column: 1 / -1; }
}

.quem-aba { padding: 8px 4px 0; }
@media (min-width: 1100px) { .quem-aba { max-width: 1280px; margin: 0 auto; padding: 32px 40px 0; } .quem-aba .quem-app { margin: 0; } }
@media (max-width: 899px) { .quem-pagina .retrato { aspect-ratio: 16 / 11; } .quem-pagina .retrato img { object-position: 50% 12%; } }
.quem-pagina p { hyphens: manual; -webkit-hyphens: manual; }
