/* MultiLead · página /contato (e-mail e pedido de apresentação).
   Base: static/legal.css (topo, rodapé, tipografia Archivo e cores da landing). Aqui só o formulário.
   Regras do DESIGN-SYSTEM: azul de ação sóbrio (#1C5E90), sem degradê, sem brilho, sem sombra grande, sem mascote,
   sem ícone decorativo. Mobile-first: 375 px sem rolagem horizontal, alvos de toque de 44 px, campos de 16 px
   (o iPhone não dá zoom ao focar). */
:root{
  --ct-acao:#1C5E90; --ct-acao-h:#174F7A; --ct-acao-lip:#123F62;
  --ct-erro:#A3281D; --ct-erro-fundo:#FCEDEB; --ct-erro-borda:#F1CDC7;
  --ct-ok:#1D6B3E; --ct-ok-fundo:#EAF4EC; --ct-ok-borda:#C7DFCD;
}
.cx{width:min(680px,100% - 32px)}
[hidden]{display:none!important}  /* o atributo hidden vale mesmo onde uma regra daqui define display (formulário, aviso) */

.lg-cab{padding-bottom:4px}
.lg-resumo{max-width:560px}

.ct-bloco{margin-top:24px;background:var(--branco);border-radius:16px;box-shadow:inset 0 0 0 1px var(--linha);padding:22px 20px 24px}
.ct-bloco h2{font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem);font-weight:800;font-stretch:84%;line-height:1.2}
.ct-email{margin-top:10px;font-size:clamp(1.05rem,.95rem + .6vw,1.3rem);font-weight:700;overflow-wrap:anywhere}
.ct-email a{color:var(--ct-acao)}
.ct-nota{margin-top:8px;color:var(--suave);font-size:15.5px}

/* formulário */
.ct-form{margin-top:18px;display:grid;gap:18px}
.ct-campo{margin:0;padding:0;border:0;min-width:0}
.ct-campo label,.ct-campo legend{display:block;padding:0;font-size:15px;font-weight:650;color:var(--tinta);line-height:1.35}
.ct-obrig,.ct-opc{margin-left:6px;font-size:12.5px;font-weight:500;color:var(--suave)}
.ct-campo input[type=text],.ct-campo input[type=email],.ct-campo input[type=tel],.ct-campo textarea{
  display:block;width:100%;margin-top:6px;min-height:46px;padding:10px 12px;border:1px solid var(--linha-forte);border-radius:8px;
  background:var(--branco);color:var(--tinta);font:inherit;font-size:16px;line-height:1.4}
.ct-campo textarea{resize:vertical;min-height:92px}
.ct-campo input:hover,.ct-campo textarea:hover{border-color:#B7C1CC}
.ct-campo input:focus,.ct-campo textarea:focus{outline:none;border-color:var(--ct-acao);box-shadow:0 0 0 3px rgba(28,94,144,.18)}
.ct-campo [aria-invalid=true]{border-color:var(--ct-erro);background:var(--ct-erro-fundo)}
.ct-dica{margin-top:6px;font-size:13.5px;line-height:1.45;color:var(--suave)}
.ct-erro{margin-top:6px;font-size:14px;line-height:1.45;font-weight:600;color:var(--ct-erro)}
.ct-erro-geral{padding:10px 12px;border-radius:8px;background:var(--ct-erro-fundo);box-shadow:inset 0 0 0 1px var(--ct-erro-borda);margin-top:0}

/* período: duas opções lado a lado, como teclas */
.ct-periodo{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ct-periodo legend{grid-column:1 / -1;margin-bottom:-4px}
.ct-periodo .ct-erro{grid-column:1 / -1;margin-top:0}
.ct-opcao{position:relative;display:block;margin:0}
.ct-opcao input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.ct-opcao span{display:flex;align-items:center;justify-content:center;min-height:46px;margin-top:6px;border:1px solid var(--linha-forte);border-radius:8px;
  background:var(--branco);font-size:16px;font-weight:550;color:var(--tinta)}
.ct-opcao input:checked + span{border-color:var(--ct-acao);background:var(--azul-claro);color:var(--ct-acao);font-weight:650}
.ct-opcao input:focus-visible + span{outline:3px solid var(--ct-acao);outline-offset:2px}

/* aceite */
.ct-aceite{padding:14px;border-radius:12px;background:var(--azul-nevoa);box-shadow:inset 0 0 0 1px #D5E4F0}
.ct-check{display:flex;gap:12px;align-items:center;min-height:44px;margin:0;cursor:pointer;font-size:15.5px;font-weight:650;color:var(--tinta);line-height:1.4}
.ct-check input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--ct-acao)}
.ct-aceite .ct-dica{margin-top:8px;padding-left:34px}

/* botão: azul de ação chapado, borda de baixo mais escura (o "lábio" do design system) */
.ct-botao{display:block;width:100%;min-height:48px;margin-top:2px;padding:12px 18px;border:1px solid #174F7A;border-bottom-color:var(--ct-acao-lip);border-radius:8px;
  background:var(--ct-acao);color:#fff;font:inherit;font-size:16px;font-weight:650;cursor:pointer}
.ct-botao:hover{background:var(--ct-acao-h)}
.ct-botao:active{transform:translateY(1px)}
.ct-botao:focus-visible{outline:3px solid var(--ct-acao);outline-offset:3px}
.ct-botao[disabled]{background:#EEF1F4;border-color:#DFE4EA;color:#8C96A1;cursor:default;transform:none}

/* pedido recebido */
.ct-pronto{margin-top:18px;padding:16px;border-radius:12px;background:var(--ct-ok-fundo);box-shadow:inset 0 0 0 1px var(--ct-ok-borda)}
.ct-pronto:focus{outline:3px solid var(--ct-ok);outline-offset:2px}
.ct-pronto h3{font-size:1.1rem;font-weight:750;color:var(--ct-ok)}
.ct-pronto p{margin-top:6px;color:var(--tinta)}

/* campo isca: fora da tela (não é display:none, que muitos robôs já ignoram) */
.ct-isca{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

.rod-empresa{margin-top:8px;font-size:12px;line-height:1.5;color:var(--suave)}

@media (min-width:640px){
  .ct-bloco{padding:28px 30px 30px}
  .ct-botao{display:inline-block;width:auto;min-width:240px;justify-self:start}  /* o form é grid: sem isto o botão estica */
}
@media (prefers-reduced-motion:reduce){.ct-botao:active{transform:none}}
@media print{.ct-form,.ct-isca,.ct-botao{display:none}}
