/* Página de venda do Xequei: a opção D aprovada em 20/10/2026 (branch docs/pagina-venda-xequei,
   docs/referencias/pagina-venda-xequei/index.html#cheia), sem a moldura de revisão nem as opções A, B e C.
   O visual é fixo claro, como foi aprovado. */
* { box-sizing: border-box; }
html { background: #F4FAF9; color-scheme: light; }
body { margin: 0; background: #F4FAF9; }
button { font: inherit; cursor: pointer; }
:focus-visible { outline: 2px solid #087F75; outline-offset: 2px; }
.frame { container-type: inline-size; container-name: frame; width: 100%; }

/* ===== página de venda de exemplo (visual fixo claro, como no ar) ===== */
.mock {
  --m-bg: #ffffff; --m-papel: #f4f6fb; --m-fg: #10141f; --m-muted: #586074; --m-line: #e0e4ed; --m-line2: #c5cbda;
  --brand: #2343d1; --brand-deep: #182f9c; --brand-soft: #e8ecff; --brand-ink: #ffffff;
  --ok: #0d7a52; --ok-soft: #dff3e9; --marca: #ffef9e; --marca-fg: #594600; --erro: #b42318; --erro-soft: #fdecea;
  --f-disp: "Bricolage Grotesque", "Figtree", ui-sans-serif, system-ui, sans-serif;
  --f-corpo: "Figtree", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color-scheme: light; position: relative; background: var(--m-bg); color: var(--m-fg);
  font-family: var(--f-corpo); font-size: 15.5px; line-height: 1.5;
  border-radius: 12px; overflow: hidden; box-shadow: 0 1px 2px rgba(15, 16, 30, .08), 0 12px 32px -12px rgba(15, 16, 30, .25);
}
.mock h2, .mock h3, .mock p, .mock ol, .mock ul { margin: 0; }
.mock .mono { font-family: var(--f-mono); font-size: .92em; font-variant-numeric: tabular-nums; }
.mock .marca { display: flex; align-items: center; gap: 9px; font-family: var(--f-disp); font-weight: 700; font-size: 18px; letter-spacing: -.01em; }
.mock .logo { width: 28px; height: 28px; border-radius: 8px; background: var(--brand); color: var(--brand-ink); display: grid; place-items: center; flex: none; }
.mock .so-cel { display: none; }

.lp-topo { display: flex; align-items: center; gap: 20px; padding: 16px 40px; border-bottom: 1px solid var(--m-line); }
.lp-topo nav { display: flex; gap: 22px; margin-left: auto; font-size: 14.5px; color: var(--m-muted); }
.lp-topo .btn-mini { border: 1px solid var(--m-fg); background: var(--m-fg); color: var(--m-bg); border-radius: 9px; padding: 8px 13px; font-weight: 600; font-size: 14px; }

.btn-marca { display: inline-flex; justify-content: center; align-items: center; gap: 8px; border: 0; background: var(--brand); color: var(--brand-ink); border-radius: 11px; padding: 13px 18px; font-weight: 600; font-size: 15.5px; cursor: pointer; text-align: center; }
.btn-marca:hover { background: var(--brand-deep); }
.btn-marca.grande { padding: 15px 22px; font-size: 16.5px; }
.btn-linha { border: 1px solid var(--m-line2); background: var(--m-bg); color: var(--m-fg); border-radius: 11px; padding: 12px 16px; font-weight: 600; font-size: 15px; }
.btn-linha:disabled { opacity: .5; cursor: default; }
.link { border: 0; background: none; padding: 0; color: var(--brand); font-weight: 600; font-size: 14.5px; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; text-align: left; justify-self: start; }
.link.mini { font-size: 13px; }
.so-leitor { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; padding: 0; }

.hero { padding: 48px 40px 44px; display: grid; gap: 16px; }
.eyebrow-lp { font-size: 13.5px; font-weight: 600; color: var(--brand); }
.h-lp { font-family: var(--f-disp); font-weight: 700; font-size: clamp(30px, 4.7cqi, 50px); line-height: 1.04; letter-spacing: -.025em; text-wrap: balance; max-width: 19ch; }
.sub-lp { font-size: 17px; color: var(--m-muted); max-width: 56ch; }

/* área da planilha */
.zona { position: relative; display: grid; justify-items: center; text-align: center; gap: 10px; padding: 30px 24px 24px; border: 2px dashed var(--m-line2); border-radius: 18px; background: var(--m-papel); transition: border-color .15s, background-color .15s; }
.zona:focus-within { outline: 2px solid var(--brand); outline-offset: 2px; }
.zona.arrastando { border-color: var(--brand); background: var(--brand-soft); }
.zona-icone { width: 52px; height: 52px; border-radius: 14px; background: var(--m-bg); border: 1px solid var(--m-line); display: grid; place-items: center; color: var(--brand); }
.zona-t { font-family: var(--f-disp); font-weight: 650; font-size: 21px; letter-spacing: -.01em; }
.zona-s { font-size: 13px; color: var(--m-muted); max-width: 54ch; }
.zona.compacta { padding: 16px; gap: 8px; border-width: 1.5px; }
.zona.compacta .zona-t { font-family: var(--f-corpo); font-size: 15px; font-weight: 600; letter-spacing: 0; }
.zona.compacta .zona-icone { display: none; }
.zona.compacta .btn-marca { padding: 10px 16px; font-size: 14.5px; background: var(--m-fg); }
.erro { color: var(--erro); background: var(--erro-soft); border-radius: 10px; padding: 10px 12px; font-size: 14px; }

.digitar { display: grid; gap: 10px; padding: 16px; border: 1px solid var(--m-line); border-radius: 14px; background: var(--m-bg); }
.digitar label { font-size: 14px; font-weight: 600; }
.digitar-linha { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.digitar input { font-family: var(--f-mono); font-size: 17px; width: 160px; max-width: 100%; padding: 10px 12px; border: 1px solid var(--m-line2); border-radius: 10px; color: var(--m-fg); background: var(--m-bg); }
.digitar input:focus { outline: 2px solid var(--brand); outline-offset: 0; border-color: transparent; }
.estimativa { font-family: var(--f-disp); font-weight: 650; font-size: 20px; font-variant-numeric: tabular-nums; }
.digitar .btn-linha { justify-self: start; }

/* resultado da contagem */
.resultado { container: res / inline-size; border: 1px solid var(--m-line); border-radius: 18px; background: var(--m-bg); box-shadow: 0 1px 2px rgba(16, 20, 31, .05), 0 10px 30px -18px rgba(16, 20, 31, .35); overflow: hidden; animation: surge .3s ease-out; }
.res-arquivo { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 11px 18px; background: var(--m-papel); border-bottom: 1px solid var(--m-line); font-size: 14px; color: var(--brand); }
.res-arquivo .nome-arq { font-weight: 600; color: var(--m-fg); overflow-wrap: anywhere; }
.res-linhas { color: var(--m-muted); }
.res-arquivo .link { margin-left: auto; }
.res-corpo { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
.res-contas { padding: 20px 20px 18px; display: grid; gap: 12px; align-content: start; }
.res-grande { font-size: 16.5px; }
.res-grande b { display: block; font-family: var(--f-disp); font-size: 46px; line-height: 1; letter-spacing: -.03em; font-variant-numeric: tabular-nums; margin-bottom: 2px; }
.res-detalhe { font-size: 13.5px; color: var(--m-muted); }
.res-lista { list-style: none; padding: 0; display: grid; gap: 9px; font-size: 14px; }
.res-lista li { display: grid; grid-template-columns: 136px minmax(0, 1fr); gap: 10px; align-items: baseline; }
.selo { justify-self: start; font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 99px; background: var(--m-papel); border: 1px solid var(--m-line); color: var(--m-muted); white-space: nowrap; }
.selo.amarelo { background: var(--marca); border-color: var(--marca); color: var(--marca-fg); }
.ddds { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.ddds small { color: var(--m-muted); font-size: 12.5px; }
.res-preco { padding: 20px; background: var(--brand-soft); display: grid; gap: 6px; align-content: start; }
.res-preco .rotulo { font-size: 13px; color: var(--m-muted); font-weight: 500; }
.res-preco .valor { font-family: var(--f-disp); font-weight: 700; font-size: 40px; line-height: 1.05; letter-spacing: -.03em; color: var(--brand-deep); font-variant-numeric: tabular-nums; }
.res-preco .medio { font-size: 13.5px; color: var(--m-muted); margin-bottom: 8px; }
.letrinha { font-size: 12.5px; color: var(--m-muted); display: flex; gap: 6px; align-items: center; }
.letrinha svg { flex: none; }
@container res (max-width: 560px) {
  .res-corpo { grid-template-columns: minmax(0, 1fr); }
  .res-lista li { grid-template-columns: minmax(0, 1fr); gap: 3px; }
  .res-grande b { font-size: 40px; }
}
@keyframes surge { from { transform: translateY(6px); opacity: .5; } to { transform: none; opacity: 1; } }

/* seções da página */
.secao { padding: 44px 40px; display: grid; gap: 18px; border-top: 1px solid var(--m-line); }
.secao.alt { background: var(--m-papel); }
.sec-t { font-family: var(--f-disp); font-weight: 700; font-size: 28px; letter-spacing: -.02em; line-height: 1.1; text-wrap: balance; }
.sec-s { color: var(--m-muted); max-width: 62ch; }
.sec-s.mini { font-size: 13.5px; }
.duas { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 28px; align-items: start; }
.duas > div:first-child { display: grid; gap: 10px; }
.passos { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.passos li { display: grid; gap: 6px; align-content: start; }
.pn { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--brand); color: var(--brand-ink); font-weight: 700; font-size: 14px; }
.passos b { font-size: 16.5px; }
.passos .txt { color: var(--m-muted); font-size: 14.5px; }

.tab-ex { border: 1px solid var(--m-line); border-radius: 14px; overflow-x: auto; background: var(--m-bg); font-size: 14px; min-width: 0; }
.tab-ex .mono { white-space: nowrap; }
.tx-cab, .tx-linha { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, .95fr); gap: 10px; padding: 10px 14px; align-items: center; }
.tx-cab { background: var(--m-papel); font-size: 11.5px; font-weight: 600; color: var(--m-muted); text-transform: uppercase; letter-spacing: .05em; border-bottom: 1px solid var(--m-line); }
.tx-linha + .tx-linha { border-top: 1px solid var(--m-line); }
.tx-linha span { overflow-wrap: anywhere; min-width: 0; }
.tx-linha.fora { color: var(--m-muted); }
.tx-linha.fora .mono:first-child { text-decoration: line-through; text-decoration-color: var(--m-line2); }
.tab-ex mark { background: var(--marca); color: var(--marca-fg); border-radius: 3px; padding: 0 2px; }
.tem { display: inline-flex; align-items: center; gap: 4px; color: var(--ok); font-weight: 600; background: var(--ok-soft); padding: 2px 8px; border-radius: 99px; font-size: 13px; white-space: nowrap; }
.naotem { color: var(--m-muted); font-size: 13px; }
.naocobra { font-size: 12.5px; color: var(--m-muted); }
.legenda { font-size: 12.5px; color: var(--m-muted); margin-bottom: 8px; display: block; }

.faixas { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--m-line); border-radius: 14px; overflow: hidden; }
.faixa { display: grid; gap: 2px; padding: 14px 16px; background: var(--m-bg); }
.faixa + .faixa { border-left: 1px solid var(--m-line); }
.faixa .f-r { font-size: 13px; color: var(--m-muted); }
.faixa b { font-family: var(--f-disp); font-size: 24px; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.faixa .f-u { font-size: 12.5px; color: var(--m-muted); }
.exemplos { display: flex; flex-wrap: wrap; gap: 8px; }
.exemplos div { display: flex; gap: 8px; align-items: baseline; padding: 7px 12px; border-radius: 10px; background: var(--m-papel); font-size: 14px; }
.exemplos b { font-variant-numeric: tabular-nums; }

.faq { display: grid; }
.faq details { border-bottom: 1px solid var(--m-line); padding: 14px 2px; }
.faq details:first-child { border-top: 1px solid var(--m-line); }
.faq summary { cursor: pointer; font-weight: 600; font-size: 16px; list-style: none; display: flex; justify-content: space-between; gap: 12px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; color: var(--m-muted); font-weight: 400; font-size: 20px; line-height: 1; }
.faq details[open] summary::after { content: "–"; }
.faq details p { color: var(--m-muted); padding-top: 8px; max-width: 62ch; }

.lp-rodape { padding: 22px 40px 26px; border-top: 1px solid var(--m-line); background: var(--m-papel); font-size: 12.5px; color: var(--m-muted); display: grid; gap: 3px; }
.lp-rodape .links { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 4px; }
.lp-rodape .links span { color: var(--m-fg); text-decoration: underline; text-decoration-color: var(--m-line2); text-underline-offset: 2px; }


/* ----- Opção D: estilo x.ai, com vídeos do produto ----- */
/* Marca Xequei (kit visual do dono): azul-marinho no texto, verde-petróleo #087F75 nos botões com texto branco (4,88:1),
   degradê verde, turquesa e azul só em detalhes, fundo #F4FAF9, cartões com canto de 24px, botões e campos com 12px, fonte do sistema. */
.mock.md {
  --m-bg: #ffffff; --m-papel: #F4FAF9; --m-fg: #142B45; --m-muted: #59717C; --m-line: #D8E7E4; --m-line2: #B9D3CE;
  --brand: #087F75; --brand-deep: #087F75; --brand-soft: #DFF8E9; --brand-ink: #ffffff;
  --ok: #087F75; --ok-soft: #DFF8E9; --marca: #FFF3D2; --marca-fg: #916000;
  --d-fundo: #F4FAF9; --d-cartao: #ffffff; --d-ceu: #ffffff; --d-ceu-fg: #142B45;
  --degrade: linear-gradient(135deg, #4DDD80 0%, #00C4AD 45%, #00A5EF 100%);
  --raio: 12px; --raio-g: 24px; --sombra: 0 12px 38px rgba(20, 43, 69, .07);
  --f-disp: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --f-corpo: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --f-mono: ui-monospace, "Cascadia Mono", Consolas, "SF Mono", monospace;
  background: var(--d-fundo);
}
.md .btn-marca { border-radius: var(--raio); }
.md .btn-marca:hover { background: var(--brand); filter: brightness(.94); }
.md .link { color: var(--brand-deep); }
.md .zona { background: var(--d-cartao); border-radius: calc(var(--raio) + 4px); }
.md .zona.arrastando { background: var(--brand-soft); }
.md .zona-icone { border-radius: var(--raio); }
.md .resultado, .md .digitar { border-radius: calc(var(--raio) + 4px); box-shadow: var(--sombra); }
.md .lp-rodape { background: transparent; max-width: 1040px; margin: 0 auto; border-top-color: transparent; }
.md .lp-topo { border-bottom: 0; padding: 18px 40px; max-width: 1200px; margin: 0 auto; }
.md .lp-topo nav { margin-left: 28px; color: var(--m-fg); }
.md-acoes { margin-left: auto; display: flex; gap: 8px; }
.pill { border: 0; border-radius: var(--raio); padding: 9px 16px; font-weight: 600; font-size: 14.5px; }
.pill.escuro { background: var(--brand); color: var(--brand-ink); }
.pill.escuro:hover { filter: brightness(.94); }
.pill.claro { background: var(--d-ceu); color: var(--d-ceu-fg); box-shadow: inset 0 0 0 1px var(--m-line); }
.pill.grande { padding: 13px 22px; font-size: 16px; }
.md-hero { position: relative; isolation: isolate; padding: 44px 40px 0; display: grid; justify-items: center; gap: 18px; text-align: center; }
.md-logo { height: 30px; width: auto; display: block; }
.md-simbolo { height: .95em; width: auto; }
.zona-ilu { width: 150px; height: auto; margin: -6px 0 -4px; }
.md-novo { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--m-muted); }
.md-novo b { color: var(--ok); background: var(--ok-soft); font-weight: 600; padding: 2px 8px; border-radius: calc(var(--raio) - 2px); }
.md-h1 { font-family: var(--f-disp); font-weight: 700; color: var(--m-fg); font-size: clamp(34px, 5.2cqi, 56px); line-height: 1.02; letter-spacing: -.04em; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .2em; }
.md-bola { width: .92em; height: .92em; border-radius: 50%; background: var(--brand); color: #fff; display: inline-grid; place-items: center; box-shadow: inset -.08em -.1em 0 rgba(0, 0, 0, .22); }
.md-bola svg { width: .5em; height: .5em; }
.md-sub { font-size: 17px; color: var(--m-muted); max-width: 52ch; text-wrap: balance; }
.md-caixa { position: relative; z-index: 1; width: 100%; display: grid; gap: 12px; text-align: left; }
.md-caixa > .link { justify-self: center; text-align: center; }
.md-janela { margin: 44px auto 0; width: calc(100% - 80px); max-width: 920px; border: 1px solid var(--m-line); border-radius: calc(var(--raio) + 4px); overflow: hidden; box-shadow: 0 30px 80px -44px rgba(16, 20, 31, .5); background: #fff; }
.md-janela video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; background: #fff; }
.md-janela.em-pe video { aspect-ratio: 1080 / 1350; }
.md-sec { padding: 80px 40px 0; display: grid; justify-items: center; gap: 12px; text-align: center; }
.md-h2 { font-family: var(--f-disp); font-weight: 700; color: var(--m-fg); font-size: clamp(26px, 3.4cqi, 38px); line-height: 1.06; letter-spacing: -.035em; text-wrap: balance; }
.md-sec .md-sub { font-size: 17px; }
.md-grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding: 32px 40px 0; max-width: 1040px; margin: 0 auto; }
.md-cartao { background: var(--d-cartao); border: 1px solid var(--m-line); box-shadow: var(--sombra); border-radius: calc(var(--raio) * 2); padding: 28px 28px 0; display: grid; gap: 4px; align-content: start; overflow: hidden; }
.md-cartao b { font-size: 17px; font-weight: 600; }
.md-cartao p { color: var(--m-muted); font-size: 15.5px; }
.md-cartao video { display: block; width: 100%; height: auto; aspect-ratio: 1080 / 640; object-fit: cover; object-position: top; margin-top: 22px; border-radius: var(--raio) var(--raio) 0 0; }
.md-negocio { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; padding: 110px 40px 0; align-items: center; }
.md-negocio .md-h2 { text-align: left; }
.md-neg-txt { display: grid; gap: 22px; justify-items: start; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { border: 1px solid var(--m-line2); background: #fff; color: var(--m-fg); border-radius: var(--raio); padding: 7px 14px; font-size: 14.5px; }
.chip[aria-pressed="true"] { border-color: var(--brand); color: var(--brand-deep); background: var(--brand-soft); font-weight: 600; }
.md-neg-desc { font-size: 16px; color: var(--m-muted); max-width: 46ch; }
.md-neg-desc b { color: var(--m-fg); font-weight: 600; }
.md-tel { width: 296px; max-width: 100%; height: 560px; margin: 0 auto; border-radius: 46px; border: 10px solid #15171f; background: #fff; overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 30px 70px -40px rgba(16, 20, 31, .6); }
.tel-ilha { width: 92px; height: 26px; border-radius: 20px; background: #15171f; margin: 10px auto 6px; flex: none; }
.tel-topo { display: flex; align-items: center; gap: 8px; padding: 6px 16px 10px; border-bottom: 1px solid var(--m-line); }
.tel-topo .logo { width: 22px; height: 22px; border-radius: 6px; }
.tel-topo .logo svg { width: 12px; height: 12px; }
.tel-arq { font-size: 13px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tel-lista { list-style: none; padding: 0 14px; display: grid; }
.tel-lista li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 8px; padding: 10px 0; border-bottom: 1px solid var(--m-line); align-items: center; }
.tel-lista .nm { font-size: 13px; font-weight: 600; }
.tel-lista .nr { font-size: 12.5px; color: var(--m-muted); grid-column: 1; }
.tel-lista .st { grid-row: 1 / 3; grid-column: 2; }
.tel-lista .tem { font-size: 12px; padding: 2px 7px; }
.tel-lista .naotem { font-size: 12px; }
.tel-fim { margin-top: auto; padding: 12px 16px 16px; background: var(--m-papel); font-size: 13px; display: grid; gap: 2px; }
.tel-fim b { font-family: var(--f-disp); font-size: 20px; letter-spacing: -.02em; }
.md-precos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 36px 40px 0; }
.md-preco { background: var(--d-cartao); border: 1px solid var(--m-line); box-shadow: var(--sombra); border-radius: calc(var(--raio) * 2); padding: 24px 22px; display: grid; gap: 4px; align-content: start; text-align: left; }
.md-preco .f-r { font-size: 14px; color: var(--m-muted); }
.md-preco .v { font-family: var(--f-disp); font-size: 34px; font-weight: 600; color: #1f2937; letter-spacing: -.03em; line-height: 1.1; margin-top: 8px; font-variant-numeric: tabular-nums; }
.md-preco .ex { font-size: 13.5px; color: var(--m-muted); margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--m-line); }
.md-nota { padding: 14px 40px 0; font-size: 13.5px; color: var(--m-muted); text-align: center; }
.md-duvidas { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 32px; padding: 88px 40px 0; align-items: start; max-width: 1040px; margin: 0 auto; }
.md-fim { padding: 96px 40px 0; display: grid; justify-items: center; gap: 14px; text-align: center; }
.md-fim .botoes-d { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 6px; }
.md-arco { position: relative; height: 170px; overflow: hidden; margin-top: 30px; }
.md-arco::before { content: ""; position: absolute; left: 50%; top: 40px; width: 860px; height: 860px; border: 1px solid var(--m-line2); border-radius: 50%; translate: -50% 0; }
.md-arco .md-simbolo { position: absolute; left: 50%; top: 14px; translate: -50% 0; height: 50px; }
.md .lp-rodape { margin-top: 0; }

/* topo: três cartões tombados em volta da caixa da planilha. Na tela larga ficam meio para fora da caixa; sem espaço
   dos lados, vão para as quinas, por cima da borda, e o palco ganha folga em cima e embaixo. O estado da caixa
   (data-estado) muda o lugar deles, para nunca cobrirem texto, campo ou botão. */
.topo-palco { position: relative; width: 100%; max-width: 600px; margin-top: 10px; }
.topo-cartao { position: absolute; z-index: 2; width: 214px; display: flex; gap: 10px; align-items: center; padding: 12px 14px; background: #fff; border: 1px solid var(--m-line); border-radius: 18px; box-shadow: 0 18px 40px -16px rgba(20, 43, 69, .38); text-align: left; pointer-events: none; animation: topo-flutua 7s ease-in-out infinite; }
.topo-cartao b { display: block; font-size: 14.5px; line-height: 1.2; }
.topo-ico { width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; background: var(--degrade); color: #fff; flex: none; }
.topo-s { display: block; font-size: 12px; color: var(--m-muted); line-height: 1.3; margin-top: 3px; }
.topo-c1 { left: -172px; top: 16px; rotate: -7deg; }
.topo-c2 { right: -180px; top: 70px; rotate: 6deg; animation-delay: -2.4s; }
.topo-c3 { left: -150px; bottom: 44px; rotate: 4deg; animation-delay: -4.6s; }
.topo-palco:not([data-estado="soltar"]) .topo-c1 { left: -208px; }
.topo-palco:not([data-estado="soltar"]) .topo-c2 { right: -208px; }
.topo-palco:not([data-estado="soltar"]) .topo-c3 { left: -208px; bottom: 0; }
@keyframes topo-flutua { 0%, 100% { translate: 0 0; } 50% { translate: 0 -8px; } }
/* Nas quinas: os de cima ficam sobre a folga de cima da área de soltar; no resultado, sobre a folga do palco. O de
   baixo fica sempre abaixo da última linha da caixa. */
@container frame (max-width: 1040px) {
  .topo-palco { padding: 24px 0 92px; }
  .topo-palco .zona { padding-top: 64px; }
  .topo-palco[data-estado="resultado"] { padding-top: 120px; }
  .topo-palco[data-estado] .topo-c1 { left: -8px; top: 0; rotate: -6deg; }
  .topo-palco[data-estado] .topo-c2 { right: -8px; top: 12px; rotate: 5deg; }
  .topo-palco[data-estado] .topo-c3 { left: auto; right: 14px; bottom: -24px; rotate: -4deg; }
}
@container frame (max-width: 560px) {
  .topo-cartao { width: auto; max-width: 166px; gap: 8px; padding: 8px 11px 8px 8px; border-radius: 14px; }
  .topo-ico { width: 28px; height: 28px; border-radius: 9px; }
  .topo-ico svg { width: 15px; height: 15px; }
  .topo-cartao b { font-size: 12.5px; }
  .topo-s { display: none; }
  .topo-palco { padding-bottom: 48px; }
  .topo-palco .zona { padding-top: 46px; }
  .topo-palco[data-estado="resultado"] { padding-top: 86px; }
  .topo-palco[data-estado] .topo-c3 { bottom: -16px; }
}

/* peças das seções novas: o olho em cima do título, o selo "Exemplo" (todo número de tela de exemplo) e os chips */
.md-olho { font-size: 13.5px; font-weight: 650; color: var(--brand); }
.exemplo { display: inline-flex; align-items: center; gap: 5px; font-size: 11.5px; font-weight: 650; letter-spacing: .02em; color: var(--marca-fg); background: var(--marca); border-radius: 99px; padding: 2px 9px; white-space: nowrap; vertical-align: 2px; }
.md-chip { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; font-weight: 650; border-radius: 99px; padding: 2px 9px; white-space: nowrap; }
.md-chip-tem { background: var(--brand-soft); color: var(--brand); }
.md-chip-nao { background: var(--m-papel); color: var(--m-muted); border: 1px solid var(--m-line); }
.md-chip-biz { background: #E3F4FD; color: #0B5F8A; }
.md-chip-pes { background: var(--m-papel); color: var(--m-fg); border: 1px solid var(--m-line); }
.md-chip-aviso { background: var(--marca); color: var(--marca-fg); }

/* o que você recebe: três listas prontas, numa faixa branca */
.md .rec-sec { margin-top: 56px; padding: 64px 40px; background: #fff; }
.rec-grade { width: 100%; max-width: 1040px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 16px; text-align: left; }
.rec-cartao { padding: 18px; display: grid; gap: 12px; align-content: start; background: #fff; border: 1px solid var(--m-line); border-radius: var(--raio-g); box-shadow: var(--sombra); }
.rec-arquivo { display: flex; gap: 12px; align-items: center; }
.rec-arquivo b { display: block; font-family: var(--f-mono); font-size: 14px; }
.rec-arquivo div > span { font-size: 13px; color: var(--m-muted); }
.rec-ico { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--brand-soft); color: var(--brand); flex: none; }
.rec-num { font-size: 34px; font-weight: 750; letter-spacing: -.03em; line-height: 1; font-variant-numeric: tabular-nums; }
.rec-num small { font-size: 14px; font-weight: 500; color: var(--m-muted); letter-spacing: 0; }
.rec-linhas { list-style: none; padding: 0; display: grid; gap: 6px; font-size: 13px; }
.rec-linhas li { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 4px 6px; padding: 6px 10px; border-radius: 8px; background: var(--m-papel); }
.rec-linhas .mono { white-space: nowrap; }
.rec-linhas .md-chip { font-size: 12px; padding: 2px 8px; }
.rec-para { font-size: 13.5px; color: var(--m-muted); }
@container frame (max-width: 900px) {
  .md .rec-sec { padding: 44px 16px; margin-top: 40px; }
  .rec-grade { grid-template-columns: minmax(0, 1fr); }
}

/* pra quem é: a roleta à esquerda e a cena do público da vez à direita, na mesma faixa branca */
.md .quem-sec { padding: 64px 40px; background: #fff; }
.quem-grade { width: 100%; max-width: 1040px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 28px; align-items: center; margin-top: 16px; text-align: left; }
.quem-esq { display: grid; gap: 14px; justify-items: start; min-width: 0; }
.quem-janela { position: relative; isolation: isolate; width: 100%; height: 204px; overflow: clip; -webkit-mask-image: linear-gradient(transparent, #000 28%, #000 72%, transparent); mask-image: linear-gradient(transparent, #000 28%, #000 72%, transparent); }
.quem-janela::before { content: ""; position: absolute; z-index: -1; left: 0; right: 0; top: 68px; height: 68px; border-radius: 16px; background: #fff; border: 1px solid var(--m-line); box-shadow: var(--sombra); }
.quem-roda { list-style: none; padding: 0; margin: 0; translate: 0 calc((1 - var(--k)) * 68px); transition: translate .7s cubic-bezier(.2, .8, .2, 1); }
.quem-roda li { height: 68px; }
.quem-roda button { width: 100%; height: 100%; display: flex; align-items: center; gap: 14px; padding: 0 14px; border: 0; border-radius: 16px; background: none; color: var(--m-line2); font-size: 22px; font-weight: 700; letter-spacing: -.01em; text-align: left; white-space: nowrap; scale: .86; transform-origin: left center; transition: color .4s, scale .4s; }
.quem-roda li.on button { color: var(--m-fg); scale: 1; }
.quem-ico { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; background: var(--m-papel); color: var(--m-line2); flex: none; transition: background .4s, color .4s; }
.quem-roda li.on .quem-ico { background: var(--brand-soft); color: var(--brand); }
.quem-roda.quem-sem-anim, .quem-roda.quem-sem-anim * { transition: none; }
.quem-dor { font-size: 17px; font-weight: 650; max-width: 32ch; }
.quem-palco { position: relative; min-width: 0; }
.quem-medidor { position: absolute; top: 0; left: 0; right: 0; visibility: hidden; pointer-events: none; }
.quem-medidor * { animation: none !important; }
.quem-grade:not(.quem-na-tela) .quem-palco * { animation-play-state: paused; }
.quem-cena { height: 430px; display: flex; flex-direction: column; gap: 14px; padding: 20px; background: linear-gradient(180deg, var(--m-papel), #fff 60%); border: 1px solid var(--m-line); border-radius: var(--raio-g); box-shadow: var(--sombra); overflow: hidden; }
.quem-cena-cab { display: flex; align-items: center; gap: 12px; animation: quem-surge .4s both; }
.quem-cena-cab .quem-ico { width: 36px; height: 36px; border-radius: 11px; background: var(--brand-soft); color: var(--brand); }
.quem-cena-cab b { display: block; font-size: 15px; }
.quem-cena-cab .mono { font-size: 12.5px; color: var(--m-muted); }
.quem-cena-cab .exemplo { margin-left: auto; }
.quem-lista { position: relative; display: grid; gap: 6px; list-style: none; padding: 0; }
.quem-linha { display: flex; align-items: center; gap: 12px; height: 46px; padding: 0 12px; border-radius: 12px; background: #fff; border: 1px solid var(--m-line); font-size: 14px; }
.quem-lista .quem-linha { animation: quem-surge .4s calc(.15s + var(--i) * .08s) both; }
.quem-nm { flex: 1; min-width: 0; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.quem-nm small { display: block; font-weight: 400; font-size: 12px; color: var(--m-muted); }
.quem-linha .mono { font-size: 13px; color: var(--m-muted); }
.quem-troca { display: inline-grid; justify-items: end; align-items: center; min-width: 96px; }
.quem-troca > * { grid-area: 1 / 1; }
.quem-antes { opacity: 0; animation: quem-some-depois var(--t, 2s) both; }
.quem-depois { animation: quem-aparece .35s var(--t, 2s) both; }
.quem-gira { display: inline-block; width: 10px; height: 10px; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent; vertical-align: -1px; animation: quem-gira .8s linear infinite; }
.quem-scan { position: absolute; left: -6px; right: -6px; height: 3px; border-radius: 3px; background: var(--degrade); box-shadow: 0 0 14px rgba(0, 196, 173, .7); opacity: 0; animation: quem-varre 1.8s .5s both; }
.quem-fim { margin-top: auto; display: grid; gap: 8px; justify-items: start; }
.quem-fim > * { animation: quem-surge .5s var(--d) both; }
.quem-fim.quem-em-linha { display: flex; flex-wrap: wrap; }
.quem-bolha { max-width: 90%; display: grid; gap: 4px; padding: 10px 14px; border-radius: 16px 16px 16px 4px; background: var(--brand-soft); border: 1px solid #b5ebcd; font-size: 14px; }
.quem-bolha-de { display: inline-flex; gap: 6px; align-items: center; font-size: 12.5px; font-weight: 650; color: var(--brand); }
.quem-fila { position: relative; height: 210px; list-style: none; padding: 0; }
.quem-fila .quem-linha { position: absolute; left: 0; right: 0; top: 0; translate: 0 calc(var(--para) * 54px); animation: quem-aparece-so .4s calc(.15s + var(--de) * .08s) both, quem-reordena .7s 2.3s both cubic-bezier(.2, .8, .2, 1); }
.quem-fila .quem-linha.quem-vivo { box-shadow: inset 4px 0 0 var(--brand); animation: quem-aparece-so .4s calc(.15s + var(--de) * .08s) both, quem-reordena .7s 2.3s both cubic-bezier(.2, .8, .2, 1), quem-acende .4s 3s both; }
.quem-cupom { margin-top: auto; align-self: center; width: min(100%, 340px); rotate: -2deg; display: grid; gap: 8px; padding: 14px 16px; background: #fff; border: 1px solid var(--m-line); border-radius: 18px; box-shadow: 0 20px 44px -18px rgba(20, 43, 69, .45); animation: quem-aparece .5s var(--d) both; }
.quem-cupom-tag { justify-self: start; font-size: 12px; font-weight: 750; color: var(--marca-fg); background: var(--marca); border-radius: 99px; padding: 2px 10px; }
.quem-cupom p { font-size: 14px; }
.quem-cupom-pe { font-size: 12.5px; color: var(--m-muted); }
.quem-lote { flex: 1; display: grid; align-content: center; gap: 16px; }
.md .quem-lote-num b { font-size: clamp(40px, 6cqi, 60px); font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.quem-lote-num span { display: block; color: var(--m-muted); font-size: 14px; }
.quem-lote-barra { height: 10px; border-radius: 99px; background: var(--m-line); overflow: hidden; }
.quem-lote-barra i { display: block; width: 100%; height: 100%; border-radius: 99px; background: var(--degrade); animation: quem-enche 2.1s cubic-bezier(.3, .7, .3, 1) both; }
.quem-lote-split { display: flex; gap: 4px; height: 44px; font-size: 13px; animation: quem-surge .5s var(--d) both; }
.quem-lote-split > div { display: flex; align-items: center; gap: 5px; padding: 0 12px; border-radius: 10px; white-space: nowrap; overflow: hidden; }
.quem-lote-a { background: var(--degrade); color: var(--m-fg); font-weight: 600; }
.quem-lote-b { background: var(--m-papel); border: 1px solid var(--m-line); color: var(--m-muted); }
.quem-lote-chips { display: flex; flex-wrap: wrap; gap: 8px; animation: quem-surge .5s var(--d) both; }
/* Cada animação começa escondida (o "from") e termina no estado normal do elemento: sem animação, tudo aparece. */
@keyframes quem-surge { from { opacity: 0; translate: 0 10px; } }
@keyframes quem-aparece-so { from { opacity: 0; } }
@keyframes quem-aparece { from { opacity: 0; scale: .85; } }
@keyframes quem-some-depois { 0%, 99% { opacity: 1; } 100% { opacity: 0; } }
@keyframes quem-gira { to { rotate: 360deg; } }
@keyframes quem-enche { from { width: 0; } }
@keyframes quem-varre { from { top: 0; opacity: 1; } 85% { opacity: 1; } to { top: 100%; opacity: 0; } }
@keyframes quem-reordena { from { translate: 0 calc(var(--de) * 54px); } }
@keyframes quem-acende { from { box-shadow: none; } }
@container frame (max-width: 900px) {
  .md .quem-sec { padding: 44px 16px; }
}
@container frame (max-width: 860px) {
  .quem-grade { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .quem-roda button { font-size: 19px; }
  .quem-cena { height: auto; min-height: var(--quem-altura, 390px); padding: 16px; }
}
/* No celular, nas linhas das cenas some o nome e fica o telefone. */
@container frame (max-width: 560px) {
  .quem-linha:has(.mono) .quem-nm { display: none; }
  .quem-linha .mono { flex: 1; font-size: 13.5px; color: var(--m-fg); }
}

/* preço: abas "Subir planilha | API e IA"; a calculadora fica na primeira, os pacotes na segunda */
.md .pr-sec { padding: 64px 40px; }
.pr-abas { display: inline-flex; padding: 4px; margin-top: 12px; border-radius: 12px; background: #fff; border: 1px solid var(--m-line); }
.pr-abas button { border: 0; background: none; padding: 8px 16px; border-radius: 9px; font-weight: 650; font-size: 14.5px; color: var(--m-muted); }
.pr-abas button[aria-pressed="true"] { background: var(--brand); color: #fff; }
.pr-corpo { width: 100%; max-width: 920px; margin-top: 16px; text-align: left; }
.pr-corpo[hidden] { display: none; }
.md .pr-corpo .p1 { width: 100%; margin: 0; }
.pr-pacotes { background: #fff; border: 1px solid var(--m-line); border-radius: var(--raio-g); box-shadow: var(--sombra); overflow: hidden; }
.pr-pacotes-cab { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: baseline; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid var(--m-line); }
.pr-pacotes-cab b { font-size: 18px; }
.pr-pacotes-cab span { font-size: 14px; color: var(--m-muted); }
.pr-pacote { display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto; gap: 18px; align-items: center; padding: 14px 24px; border-bottom: 1px solid var(--m-line); }
.pr-pacote:last-child { border-bottom: 0; }
.pr-q { font-weight: 700; font-size: 16.5px; }
.pr-q small { display: block; font-weight: 500; font-size: 13px; color: var(--m-muted); }
.pr-pn { font-family: var(--f-mono); font-size: 13px; color: var(--m-muted); text-align: right; min-width: 120px; }
.pr-total { font-weight: 750; font-size: 20px; color: var(--brand); text-align: right; font-variant-numeric: tabular-nums; }
.md .pr-pacote .btn-marca { padding: 9px 16px; font-size: 14px; }
@container frame (max-width: 900px) {
  .md .pr-sec { padding: 44px 16px; }
}
@container frame (max-width: 640px) {
  .pr-pacotes-cab { padding: 18px 16px; }
  .pr-pacote { grid-template-columns: minmax(0, 1fr) auto; padding: 14px 16px; }
  .pr-pn { display: none; }
  .md .pr-pacote .btn-marca { grid-column: 1 / -1; }
}

/* API e IA: a parte escura, com um brilho do degradê e uma grade de pontos bem fraca (nada de fundo com checks) */
.md .api-sec { position: relative; isolation: isolate; padding: 64px 40px; background: #0A1828; color: #E6EEF3; overflow: clip; }
.api-sec::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(60% 50% at 15% 0%, rgba(0, 196, 173, .2), transparent 70%), radial-gradient(50% 50% at 95% 100%, rgba(0, 165, 239, .18), transparent 70%), radial-gradient(rgba(255, 255, 255, .08) 1px, transparent 1.3px) 0 0 / 24px 24px; }
.api-sec .md-olho { color: #4DDD80; }
.api-sec .md-h2 { color: #fff; }
.md .api-sec .md-sub { color: #9DB2C1; }
.api-sec .exemplo { background: rgba(255, 211, 138, .14); color: #FFD38A; }
.api-caixa { width: 100%; max-width: 1040px; display: grid; gap: 14px; justify-items: center; margin-top: 16px; }
.api-hub { width: 100%; height: auto; overflow: visible; }
.api-hub-alto { display: none; max-width: 420px; }
.api-hub-linha { fill: none; stroke: rgba(255, 255, 255, .14); stroke-width: 1.5; }
.api-hub-ida { fill: #4DDD80; }
.api-hub-volta { fill: #00A5EF; }
.api-hub-no rect { fill: #fff; stroke: rgba(255, 255, 255, .6); }
.api-hub-no text { fill: #C9D7DE; font: 600 13px var(--f-corpo); text-anchor: middle; }
.api-hub-centro { fill: #0F2236; stroke: #00C4AD; stroke-width: 2; }
.api-hub-onda { fill: none; stroke: #00C4AD; stroke-width: 1.5; }
.api-comando { width: 100%; max-width: 720px; min-height: 54px; display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 16px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14); box-shadow: 0 0 0 4px rgba(0, 196, 173, .06); color: #fff; font-size: 15px; text-align: left; }
.api-comando-ico { display: grid; color: #4DDD80; }
.api-comando-txt { flex: 1; min-width: 0; display: grid; }
.api-comando-txt > *, .api-res-lugar > * { grid-area: 1 / 1; }
.api-molde { visibility: hidden; }
.api-molde .api-cursor { animation: none; }
.api-res-lugar { max-width: 100%; display: grid; justify-items: center; align-items: center; }
.api-cursor { display: inline-block; width: 8px; height: 1.1em; vertical-align: text-bottom; background: #00C4AD; animation: api-pisca 1s steps(1) infinite; }
.api-caixa:not(.api-na-tela) .api-cursor { animation-play-state: paused; }
.api-res { min-height: 30px; display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 99px; background: rgba(77, 221, 128, .12); color: #7EE2B8; font-size: 13.5px; font-weight: 650; opacity: 0; translate: 0 6px; transition: opacity .3s, translate .3s; }
.api-res.on { opacity: 1; translate: 0 0; }
.api-acoes { display: flex; flex-wrap: wrap; gap: 12px 22px; align-items: center; justify-content: center; margin-top: 16px; }
.pill.api-chave { background: #fff; color: var(--m-fg); }
.api-marcas { max-width: 92ch; margin-top: 8px; font-size: 11.5px; color: #6F8AA0; }
@keyframes api-pisca { 50% { opacity: 0; } }
@container frame (max-width: 900px) {
  .md .api-sec { padding: 44px 16px; }
}
@container frame (max-width: 760px) {
  .api-hub-largo { display: none; }
  .api-hub-alto { display: block; }
}

/* D · preço: calculadora */
.md .p1 { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .9fr); background: #fff; border: 1px solid var(--m-line); border-radius: var(--raio-g); box-shadow: var(--sombra); overflow: hidden; width: calc(100% - 80px); max-width: 920px; margin: 28px auto 0; }
.md .p1-esq { padding: 30px; display: grid; gap: 18px; align-content: start; }
.md .p1-esq label { font-weight: 600; }
.md .p1-n-linha { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin-top: -8px; }
.md .p1-n-linha span { color: var(--m-muted); }
.md .campo-n { font-family: var(--f-mono); font-size: 30px; font-weight: 500; width: 190px; max-width: 100%; padding: 6px 12px; border: 1px solid var(--m-line2); border-radius: var(--raio); color: var(--m-fg); background: #fff; font-variant-numeric: tabular-nums; }
.md .campo-n:focus { outline: 3px solid var(--brand); outline-offset: 2px; }
.md .regua-d { -webkit-appearance: none; appearance: none; width: 100%; height: 26px; background: transparent; margin: 0; --pos: 50%; }
.md .regua-d::-webkit-slider-runnable-track { height: 8px; border-radius: 99px; background: linear-gradient(90deg, #4DDD80 0%, #00C4AD calc(var(--pos) * .6), #00A5EF var(--pos), var(--m-line) var(--pos)); }
.md .regua-d::-moz-range-track { height: 8px; border-radius: 99px; background: var(--m-line); }
.md .regua-d::-moz-range-progress { height: 8px; border-radius: 99px; background: var(--degrade); }
.md .regua-d::-webkit-slider-thumb { -webkit-appearance: none; width: 24px; height: 24px; margin-top: -8px; border-radius: 50%; background: #fff; border: 3px solid var(--brand); box-shadow: var(--sombra); }
.md .regua-d::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 3px solid var(--brand); }
.md .marcas { position: relative; height: 18px; font-size: 12px; color: var(--m-muted); }
.md .marcas span { position: absolute; top: 0; translate: -50% 0; white-space: nowrap; }
.md .marcas span:first-child { translate: 0 0; }
.md .marcas span:last-child { translate: -100% 0; }
.md .p1-faixas { list-style: none; padding: 0; display: grid; gap: 4px; margin: 4px 0 0; }
.md .p1-faixas li { display: grid; grid-template-columns: 120px 112px minmax(0, 1fr) 84px; gap: 12px; align-items: center; padding: 9px 10px; border-radius: var(--raio); font-size: 14px; transition: background-color .25s; }
.md .p1-faixas li.on { background: var(--m-papel); }
.md .p1-faixas .fx { color: var(--m-muted); }
.md .p1-faixas .pm { font-weight: 600; white-space: nowrap; }
.md .p1-faixas .bar { height: 8px; border-radius: 99px; background: var(--m-papel); overflow: hidden; }
.md .p1-faixas li.on .bar { background: #fff; }
.md .p1-faixas .bar i { display: block; height: 100%; width: 0; background: var(--degrade); border-radius: 99px; }
.md .p1-faixas .sub { text-align: right; font-family: var(--f-mono); font-size: 13.5px; }
.md .p1-faixas li:not(.on) .sub { color: var(--m-line2); }
.md .p1-min { font-size: 13px; color: var(--m-muted); }
.md .p1-dir { background: var(--brand-soft); padding: 30px; display: grid; gap: 8px; align-content: start; }
.md .p1-dir .rot { font-size: 14px; color: var(--ok); font-weight: 600; }
.md .p1-total { font-weight: 800; font-size: clamp(40px, 4.6cqi, 54px); line-height: 1; letter-spacing: -.035em; color: var(--brand); font-variant-numeric: tabular-nums; }
.md .p1-medio { font-size: 15px; }
.md .p1-dir .btn-marca { margin-top: 14px; }
.md .p1-inclui { list-style: none; padding: 0; display: grid; gap: 8px; margin: 14px 0 0; font-size: 14.5px; }
.md .p1-inclui li { display: flex; gap: 8px; align-items: flex-start; }
.md .p1-inclui svg { color: var(--ok); flex: none; margin-top: 2px; }
.md .p1-comp { margin-top: 10px; padding-top: 14px; border-top: 1px solid rgba(8, 127, 117, .2); font-size: 13.5px; color: var(--m-muted); }

/* celular */
@container frame (max-width: 700px) {
  .mock .so-pc { display: none; }
  .mock .so-cel { display: inline; }
  .lp-topo { padding: 13px 18px; }
  .lp-topo nav { display: none; }
  .lp-topo .btn-mini { margin-left: auto; padding: 7px 11px; font-size: 13.5px; }
  .hero { padding: 28px 18px 30px; gap: 14px; }
  .sub-lp { font-size: 16px; }
  .secao { padding: 32px 18px; gap: 16px; }
  .sec-t { font-size: 24px; }
  .duas { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .passos { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .faixas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .faixa:nth-child(3) { border-left: 0; }
  .faixa:nth-child(n + 3) { border-top: 1px solid var(--m-line); }
  .faixa b { font-size: 21px; }
  .lp-rodape { padding: 20px 18px; }
  .tx-cab, .tx-linha { padding: 8px 10px; gap: 8px; font-size: 12.5px; }
  .tem { font-size: 12px; padding: 2px 6px; }
  .zona { padding: 22px 16px 18px; }
  .zona-t { font-size: 18px; }
  .md .lp-topo { padding: 13px 18px; }
  .md-acoes .pill.claro { display: none; }
  .md-hero { padding: 34px 18px 0; gap: 14px; }
  .md-logo { height: 26px; }
  .md-sub { font-size: 16px; }
  .md-janela { width: calc(100% - 36px); margin-top: 32px; }
  .md-sec { padding: 64px 18px 0; }
  .md-grade { grid-template-columns: minmax(0, 1fr); padding: 24px 18px 0; }
  .md-cartao { padding: 22px 20px 0; }
  .md-negocio { grid-template-columns: minmax(0, 1fr); padding: 72px 18px 0; gap: 28px; }
  .md-precos { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 24px 18px 0; gap: 10px; }
  .md-preco { padding: 18px 16px; }
  .md-preco .v { font-size: 26px; }
  .md-nota { padding: 12px 18px 0; }
  .md-duvidas { grid-template-columns: minmax(0, 1fr); padding: 72px 18px 0; gap: 12px; }
  .md .p1 { grid-template-columns: minmax(0, 1fr); }
  .md .p1-esq, .md .p1-dir { padding: 22px 18px; }
  .md .p1-faixas li { grid-template-columns: 1fr auto; gap: 4px 10px; }
  .md .p1-faixas .bar { grid-column: 1 / -1; }
  .md .p1-faixas .pm { text-align: right; }
  .md .p1-faixas .sub { display: none; }
  .md-fim { padding: 80px 18px 0; }
}

/* tela cheia, como no #cheia aprovado */
.mock { border-radius: 0; box-shadow: none; }
.mock h1 { margin: 0; }
/* o que era texto solto na prévia virou link, com a mesma cara */
.lp-topo nav a { color: inherit; text-decoration: none; }
.lp-topo nav a:hover { text-decoration: underline; text-underline-offset: 3px; }
.lp-rodape a { color: var(--m-fg); text-decoration: underline; text-decoration-color: var(--m-line2); text-underline-offset: 2px; }

/* Com menos movimento, nada anda: toda animação termina no estado normal do elemento, então tudo aparece parado. */
@media (prefers-reduced-motion: reduce) {
  .md *, .md *::before, .md *::after { animation: none !important; transition: none !important; }
}
