/* Delta · ajustes para o CSS base rodar dentro do WordPress e do Elementor.
   Carrega depois de delta-base.css e só nas páginas com o modelo Delta. */

/* O body do WordPress ganha classes do tema e de plugins; a classe dupla
   garante as cores e a fonte do Delta. */
body.dl-pagina {
  margin: 0;
  background: var(--page);
  color: var(--ink);
  font-family: var(--f-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  /* o Safari do iPhone aumentava sozinho textos de blocos largos */
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* O cabeçalho é absoluto: ancora na pilha, que vem logo abaixo da barra
   de administração quando ela aparece. */
.dl-stack { position: relative; }
.dl-conteudo { display: block; }

/* Página sem nenhum bloco ainda: o cabeçalho não cobre o aviso do editor. */
.dl-conteudo:empty { min-height: 40vh; }

/* Blocos Delta vão de ponta a ponta: o container do Elementor em volta
   deles perde o respiro, a largura máxima e o espaçamento padrão. */
body.dl-pagina .e-con:has(> .elementor-widget[class*="elementor-widget-delta-"]),
body.dl-pagina .e-con:has(> .e-con-inner > .elementor-widget[class*="elementor-widget-delta-"]) {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  --padding-right: 0px;
  --margin-top: 0px;
  --margin-bottom: 0px;
  --gap: 0px;
  --row-gap: 0px;
  --column-gap: 0px;
  --content-width: 100%;
  --width: 100%;
  max-width: none;
  padding: 0;
  margin: 0;
}
body.dl-pagina .e-con > .e-con-inner:has(> .elementor-widget[class*="elementor-widget-delta-"]) {
  max-width: none;
  padding: 0;
  gap: 0;
}
body.dl-pagina .elementor-widget[class*="elementor-widget-delta-"] {
  width: 100%;
  max-width: none;
  margin: 0;
}
body.dl-pagina .elementor-widget[class*="elementor-widget-delta-"] > .elementor-widget-container {
  margin: 0;
  padding: 0;
}

/* Ordem de cores da home (ORDEM_HOME do build-home.py). No HTML estático
   também havia "#topo > .pf/.apr/.dep", que dentro do Elementor não casa;
   nesses blocos a cor vem do controle Fundo. */
#sobre, #beneficios, #turmas { background: var(--preto); }
#recebe, #duvidas { background: var(--cinza); }
/* Professores: preto só na página inicial (nas internas, cinza do CSS base).
   Aprovados e depoimentos da home usam o controle Fundo = Cinza. */
body.home .pf:not(.pg-c) { background: var(--preto); }

/* Cursor sintético da plataforma: no HTML publicado ele ficava escondido no
   topo da página; dentro do Elementor o bloco vira a referência de posição e
   ele aparecia solto no alto da seção. Fica desligado, como no site aprovado. */
.pd .cursor { display: none; }

/* Seção de chamada: o respiro do título que no HTML estava inline. */
.dl-chamada .p-h2 { margin-top: 1.1rem; }

/* Por dentro da plataforma: a coluna da grade crescia até a largura mínima do
   desenho do app (~930px) e o texto do módulo saía da tela no celular. */
.pd .stage { grid-template-columns: minmax(0, 1fr); }
.pd .stage > * { min-width: 0; }
@media (min-width: 1000px) {
  .pd .stage { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); }
}

/* Botões do topo: Login (app) e Ver turmas lado a lado. */
.p-head__acoes { display: flex; align-items: center; gap: .5rem; }
/* O item de login dentro da gaveta não é mais usado: o botão fica sempre à vista. */
.p-menu__lista .p-menu__entrar { display: none; }
@media (max-width: 520px) {
  /* Celular: Menu e, à direita, só o Login; o Ver turmas sai como antes. */
  .p-head { gap: .5rem; }
  .p-head__acoes .p-pill--light { display: none; }
  /* logo e botões um pouco mais compactos para Menu + Login caberem ao lado */
  .p-head .dl { height: 34px; }
  .p-head .p-pill { padding: .62rem 1rem; }
}
@media (max-width: 359px) {
  .p-head .dl { height: 28px; }
  .p-head .p-pill { padding: .55rem .8rem; }
}

/* No editor, o cabeçalho não rouba o clique do bloco de topo que fica sob ele. */
body.elementor-editor-active .p-head { pointer-events: none; }

/* Leitura: os cinzas do CSS base (#6F6866 e #A9A29F) ficavam abaixo de 4,5:1
   sobre os fundos escuros. Secundário ≈5,9:1 e intermediário ≈9,3:1. */
:root {
  --ink-dim: #96908D;
  --ink-mid: #BDB7B4;
}

/* Celular: piso de tamanho. Rótulos de 10–11px vão a 12px, textos de 13px a
   14px e os de 14px a 15px. O desenho do app (miniatura) fica como está. */
@media (max-width: 767px) {
  body.dl-pagina .p-eyebrow, body.dl-pagina .p-selo, body.dl-pagina .selo,
  body.dl-pagina .pr__s, body.dl-pagina .pr__cab, body.dl-pagina .tr__m, body.dl-pagina .tr__p s,
  body.dl-pagina .p-todo, body.dl-pagina .todo, body.dl-pagina .ap__onde,
  body.dl-pagina .phdb__n span, body.dl-pagina .dk__m, body.dl-pagina .dk__p,
  body.dl-pagina .tc__tag, body.dl-pagina .tc__preco s, body.dl-pagina .phtu__tag,
  body.dl-pagina .phap__f figcaption, body.dl-pagina .mw__lugar, body.dl-pagina .mw__pc,
  body.dl-pagina .phfi__s, body.dl-pagina .fm__r, body.dl-pagina .fm legend,
  body.dl-pagina .fm__chip span small, body.dl-pagina .phct small, body.dl-pagina .p-tick b em { font-size: .75rem; }

  body.dl-pagina .p-pill, body.dl-pagina .p-prova__t, body.dl-pagina .p-flags, body.dl-pagina .p-stat span,
  body.dl-pagina .rc__gs, body.dl-pagina .pr__preco s, body.dl-pagina .tr__uf, body.dl-pagina .p-q__n,
  body.dl-pagina .p-legal, body.dl-pagina .pill, body.dl-pagina .pil, body.dl-pagina .rt__m,
  body.dl-pagina .nota, body.dl-pagina .phdb__g, body.dl-pagina .dk__deck span, body.dl-pagina .dk__pe p,
  body.dl-pagina .gt__o, body.dl-pagina .fq__n, body.dl-pagina .phcu__l, body.dl-pagina .phcu__h,
  body.dl-pagina .tc__d, body.dl-pagina .cc__prof, body.dl-pagina .phtu__p, body.dl-pagina .phap__leg,
  body.dl-pagina .mw__conta, body.dl-pagina .phfi__cab p, body.dl-pagina .phfi__l, body.dl-pagina .phfi__uf,
  body.dl-pagina .fm__chip span, body.dl-pagina .fm__ok, body.dl-pagina .fm__aviso,
  body.dl-pagina .passos b, body.dl-pagina .passos p, body.dl-pagina .phso__leg,
  body.dl-pagina .msq figcaption, body.dl-pagina .cit figcaption { font-size: .875rem; }

  body.dl-pagina .rc__d, body.dl-pagina .be__d, body.dl-pagina .pr__inc li, body.dl-pagina .p-foot a,
  body.dl-pagina .checks li, body.dl-pagina .ap__nome, body.dl-pagina .av--i, body.dl-pagina .pl__nota,
  body.dl-pagina .phcu__tot span, body.dl-pagina .fm__fim .p-pill { font-size: .9375rem; }
}

/* Conteúdo ainda não entregue pelo cliente: some da página até chegar.
   Card de professor sem nome sai inteiro; o aviso do FAQ some. */
.rt:has(.todo) { display: none; }
.p-todo { display: none; }

/* ── Delta Black (convite) na home ───────────────────────────────────────
   Chamada + lista do que entra na assinatura, e ao lado o cartão de preço
   com o comparativo. Usa as peças do site: linha fina, vermelho pontual,
   número em display. Sem gradiente. */
.dbk .p-h2 { margin-top: .9rem; }
.dbk .p-note { max-width: 60ch; margin-top: 1rem; }
.dbk__grade {
  display: grid;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  margin-top: clamp(2rem, 4vw, 3rem);
  align-items: start;
}
@media (min-width: 900px) {
  .dbk__grade { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); }
}
.dbk__itens {
  list-style: none; margin: 0; padding: 0;
  display: grid; gap: .1rem;
  border: 1px solid var(--line-soft);
}
.dbk__itens li {
  display: grid; grid-template-columns: auto 1fr; gap: .7rem; align-items: start;
  padding: .85rem clamp(.9rem, 2vw, 1.15rem);
  border-bottom: 1px solid var(--line-soft);
  font-size: .9375rem; color: var(--ink-mid);
}
.dbk__itens li:last-child { border-bottom: 0; }
.dbk__itens svg {
  width: 17px; height: 17px; margin-top: .2rem;
  fill: none; stroke: var(--delta); stroke-width: 1.6;
  stroke-linecap: round; stroke-linejoin: round;
}
.dbk__cartao {
  position: relative;
  border: 1px solid var(--delta);
  background: var(--panel);
  padding: clamp(1.5rem, 3vw, 2.25rem);
  display: grid; gap: .55rem;
  /* mesmo halo do cartão do Delta Black nas outras páginas */
  box-shadow:
    0 0 0 1px rgba(255, 80, 63, .22),
    0 0 34px -8px rgba(255, 80, 63, .42),
    0 0 90px -20px rgba(255, 80, 63, .34),
    0 0 170px -50px rgba(255, 80, 63, .28);
}
.dbk__selo {
  margin: 0; font-size: .6875rem; font-weight: 600;
  letter-spacing: .12em; text-transform: uppercase; color: var(--delta);
}
.dbk__de { margin: 0; font-size: .875rem; color: var(--ink-dim); }
.dbk__de s { color: var(--ink-dim); }
.dbk__v {
  margin: .1rem 0 0;
  font-family: var(--f-display); font-weight: 500;
  font-size: clamp(2.4rem, 5vw, 3.4rem); line-height: 1;
  letter-spacing: -.04em; color: var(--ink);
  font-variant-numeric: tabular-nums;
}
.dbk__v span { font-size: .42em; color: var(--ink-mid); margin-right: .35rem; }
.dbk__nota { margin: .35rem 0 0; font-size: .8125rem; color: var(--ink-dim); }
.dbk__acts { display: grid; gap: .55rem; margin-top: 1.1rem; }
.dbk__acts .p-pill { justify-content: center; text-align: center; }
