/* Contato (frame 18:2). Componentes em portal.css; aqui só o espaçamento do frame, o cartão do formulário e a adaptação do celular. */
.ct-corpo { padding-top: var(--espaco-40); }
.ct-corpo .pc-principal { gap: var(--espaco-40); }

/* cartão do formulário: raio xl, padding 28, gap 20 */
.ct-form { display: flex; flex-direction: column; gap: var(--espaco-20); padding: 28px; background: var(--cor-branco); border: 1px solid var(--cor-azul-100); border-radius: var(--raio-xl); box-shadow: var(--sombra-cartao); }
.ct-form__titulo { font: 700 20px/1.25 var(--fonte); letter-spacing: -0.01em; color: var(--cor-navy-800); }
.ct-form form { display: flex; flex-direction: column; gap: var(--espaco-20); }
.ct-form__linha { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--espaco-20); }
.ct-form textarea { min-height: 56px; field-sizing: content; max-height: 320px; }   /* no Figma a Mensagem tem a altura de um campo; cresce com o texto */
.ct-form__acoes { display: flex; align-items: center; flex-wrap: wrap; gap: var(--espaco-16); }
.ct-form__nota { font: 500 12px/1.4 var(--fonte); color: var(--cor-texto-suave); }
.ct-form__aviso[hidden] { display: none; }
.ct-form__aviso a { color: var(--cor-azul-600); font-weight: 700; text-decoration: underline; }
.ct-copiar { padding: 0; border: 0; background: none; color: var(--cor-azul-600); font: 700 14px/1.5 var(--fonte); text-decoration: underline; cursor: pointer; }

/* perguntas: linhas com padding 12/16 */
.ct-perguntas { display: flex; flex-direction: column; gap: var(--espaco-12); }
.ct-perguntas .pc-lista { gap: var(--espaco-12); }
.ct-perguntas .pc-linha { padding: 12px 16px; }


@media (max-width: 767px) {
  .ct-form { padding: var(--espaco-20); }
  .ct-form__linha { grid-template-columns: minmax(0, 1fr); }
  .ct-form__acoes .pc-botao { width: 100%; }
  .ct-form textarea { min-height: 120px; }   /* no celular não dá para arrastar a alça */
}
