/* ==========================================================================
   Formulário e página de contato
   ========================================================================== */

.pr-contato {
	display: grid; gap: var(--pr-e4);
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	align-items: start;
	margin-block: var(--pr-e3) var(--pr-e6);
}
@media (max-width: 991px) { .pr-contato { grid-template-columns: 1fr; } }

.pr-contato__intro { max-width: 62ch; }

.pr-contato__principal {
	padding: var(--pr-e3);
	background: var(--pr-fundo);
	border-radius: var(--pr-raio-g);
}
.pr-contato__lista { margin: var(--pr-e3) 0 0; padding: 0; list-style: none; }
.pr-contato__lista li { margin: 0; padding: 0.8em 0; border-top: 1px solid var(--pr-cinza-claro); }
.pr-contato__lista strong { display: block; color: var(--pr-azul); font-size: var(--pr-t-xs); text-transform: uppercase; letter-spacing: 0.04em; }
.pr-contato__lista address { font-style: normal; }

/* --------------------------------------------------------- Campos ------- */
.pr-form__rotulo {
	display: block;
	margin: var(--pr-e2) 0 0.35em;
	color: var(--pr-azul);
	font-weight: 600;
	font-size: var(--pr-t-sm);
}
.pr-form__ajuda {
	display: block;
	margin-top: 0.3em;
	color: var(--pr-cinza);
	font-size: var(--pr-t-xs);
}

.pr-form input[type="text"],
.pr-form input[type="email"],
.pr-form input[type="tel"],
.pr-form select,
.pr-form textarea {
	width: 100%;
	min-height: 48px;                 /* alvo de toque acessível */
	padding: 0.65em 0.85em;
	font: inherit;
	font-size: var(--pr-t-base);      /* 16px: evita o zoom automático do iOS */
	color: var(--pr-preto);
	background: var(--pr-branco);
	border: 1px solid var(--pr-cinza-claro);
	border-radius: var(--pr-raio);
	transition: border-color var(--pr-transicao);
}
.pr-form textarea { min-height: 130px; resize: vertical; }

.pr-form input:focus,
.pr-form select:focus,
.pr-form textarea:focus { border-color: var(--pr-azul); }

.pr-form input[aria-invalid="true"],
.pr-form select[aria-invalid="true"] { border-color: #c62828; }

.pr-form .wpcf7-submit {
	min-height: 48px;
	margin-top: var(--pr-e3);
	padding: 0.7em 1.6em;
	background: var(--pr-laranja);
	color: #fff;
	border: 0;
	border-radius: var(--pr-raio-pill);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
	transition: background var(--pr-transicao);
}
.pr-form .wpcf7-submit:hover { background: var(--pr-laranja-escuro); }
.pr-form .wpcf7-submit:disabled { opacity: 0.5; cursor: not-allowed; }

/* Erro embaixo do campo, e não só no topo do formulário */
.pr-form .wpcf7-not-valid-tip {
	display: block;
	margin-top: 0.35em;
	color: #c62828;
	font-size: var(--pr-t-xs);
	font-weight: 600;
}
.pr-form .wpcf7-response-output {
	margin: var(--pr-e2) 0 0;
	padding: var(--pr-e2);
	border-radius: var(--pr-raio);
	border-width: 1px;
	font-size: var(--pr-t-sm);
}
.pr-form form.invalid .wpcf7-response-output { border-color: #c62828; background: #fdecea; }
.pr-form form.sent .wpcf7-response-output { border-color: #2e7d32; background: #edf7ed; }

/* O honeypot do Akismet não deve ocupar espaço nem receber foco */
.pr-form [name="_wpcf7_ak_hp_textarea"] { position: absolute !important; left: -9999px; }
