/* Contato › Blocos institucionais (2026-06-24)
   - DPO, Ouvidoria e Canal de Denúncias usam o mesmo padrão visual:
     título médio (não h2 monstro), corpo legível, container estreito.
   - Reescrito do block-2col original que tornava o título gigante demais. */

.page-contato .contato-card { padding-block: clamp(1.6rem, 1.2rem + 1.5vw, 40px); }
.page-contato .contato-card + .contato-card { padding-top: 0; }
.page-contato .contato-card--dpo { padding-top: clamp(2rem, 1.5rem + 2vw, 48px); }
.page-contato .contato-card__inner { max-width: 760px; margin: 0 auto; padding-inline: clamp(1rem, 2vw, 24px); }
.page-contato .contato-card .contato-card__title,
.page-contato h2.contato-card__title {
	font-size: clamp(20px, 16px + .6vw, 24px) !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	color: var(--leto-ink, #1a1a1a) !important;
	margin: 0 0 1.2rem !important;
	letter-spacing: -.005em;
}
.page-contato .contato-card__body {
	font-size: clamp(16px, 15px + .25vw, 17.5px);
	line-height: 1.65;
	color: var(--leto-ink, #1a1a1a);
}
.page-contato .contato-card__body p + p,
.page-contato .contato-card__body p + ol,
.page-contato .contato-card__body ol + p { margin-top: 1rem; }
.page-contato .contato-card__body p { margin: 0; }
.page-contato .contato-card__body strong { font-weight: 600; }
/* Links em preto + underline (acessibilidade — verde claro tinha contraste insuficiente
   no fundo paper). Hover muda pra verde-escuro com leve destaque. */
.page-contato .contato-card__body a {
	color: var(--leto-ink, #1a1a1a) !important;
	text-decoration: underline; text-underline-offset: 3px;
	text-decoration-thickness: 1.5px;
	text-decoration-color: rgba(45,45,45,.55);
	transition: color .2s, text-decoration-color .2s;
}
.page-contato .contato-card__body a:hover,
.page-contato .contato-card__body a:focus-visible {
	color: #2d3d20 !important;
	text-decoration-color: #2d3d20;
}

/* Lista numerada do canal de denúncias */
.page-contato .contato-denuncias__lista { margin: 0; padding-left: 1.4rem; }
.page-contato .contato-denuncias__lista li + li { margin-top: .8rem; }

/* Alertas inline (sucesso/erro do envio) */
.page-contato .contato-denuncias__alert {
	max-width: 880px; margin: 1.4rem auto 0;
	padding: 12px 16px;
	border-radius: 6px; font-size: 14px; line-height: 1.45;
}
.page-contato .contato-denuncias__alert--ok  { background: rgba(159,180,94,.18); color: var(--leto-green-deep, #4a5a32); border: 1px solid rgba(159,180,94,.55); }
.page-contato .contato-denuncias__alert--err { background: rgba(180,60,60,.10); color: #8b2727; border: 1px solid rgba(180,60,60,.4); }

/* Formulário */
.page-contato .contato-denuncias__form {
	max-width: 880px; margin: 1.4rem auto 0;
	background: rgba(45,45,45,.04);
	border: 1px solid rgba(45,45,45,.16);
	border-radius: 10px;
	padding: clamp(1.4rem, 1rem + 2vw, 2.2rem);
}
.page-contato .contato-denuncias__grid {
	display: grid; grid-template-columns: 1fr 1fr;
	gap: clamp(1rem, .8rem + 1vw, 1.6rem);
}
.page-contato .contato-denuncias__form .ct-field--full { grid-column: 1 / -1; }
.page-contato .contato-denuncias__form .ct-field { display: flex; flex-direction: column; gap: .45rem; }
.page-contato .contato-denuncias__form .ct-field__label { font-size: 13.5px; font-weight: 500; color: var(--leto-ink, #1a1a1a); }
.page-contato .contato-denuncias__form .ct-field__hint  { font-size: 12px; color: var(--leto-gray, #666); font-weight: 400; }
.page-contato .contato-denuncias__form .ct-field__input {
	font-family: inherit; font-size: 14.5px;
	padding: 12px 14px;
	border: 1px solid rgba(45,45,45,.32); border-radius: 6px;
	background: #fff; color: var(--leto-ink, #1a1a1a);
	transition: border-color .2s;
}
.page-contato .contato-denuncias__form .ct-field__input:focus { outline: 2px solid var(--leto-green, #9FB45E); outline-offset: 1px; border-color: transparent; }
.page-contato .contato-denuncias__form textarea.ct-field__input { resize: vertical; min-height: 140px; line-height: 1.5; }
.page-contato .contato-denuncias__actions { margin-top: 1.4rem; display: flex; justify-content: flex-end; }

@media (max-width: 680px) { .page-contato .contato-denuncias__grid { grid-template-columns: 1fr; } }
