/* Contact Form 7: estilos compatíveis com os modos claro e noturno (não altera o funcionamento do plugin). */
.wpcf7 form p {
	margin: 0 0 18px;
}

.wpcf7 label {
	display: block;
	color: var(--pen-text);
	font-size: 15px;
	font-weight: 500;
}

.wpcf7 input[type='text'],
.wpcf7 input[type='email'],
.wpcf7 input[type='tel'],
.wpcf7 input[type='url'],
.wpcf7 input[type='number'],
.wpcf7 input[type='date'],
.wpcf7 textarea,
.wpcf7 select {
	display: block;
	width: 100%;
	margin-top: 6px;
	padding: 12px 16px;
	border: 1px solid var(--pen-border);
	border-radius: var(--pen-radius);
	background: var(--pen-surface);
	color: var(--pen-text);
	font: inherit;
}

.wpcf7 textarea {
	min-height: 160px;
}

.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
	outline: 2px solid var(--pen-green-medium);
	outline-offset: 1px;
}

.wpcf7 .wpcf7-list-item {
	display: block;
	margin: 6px 0 0;
}

.wpcf7 input[type='checkbox'],
.wpcf7 input[type='radio'] {
	margin-right: 8px;
	accent-color: var(--pen-green-medium);
}

.wpcf7 input[type='submit'],
.wpcf7 .wpcf7-submit {
	height: 48px;
	padding: 0 30px;
	border: 0;
	border-radius: var(--pen-pill);
	background: var(--pen-btn-bg);
	color: var(--pen-btn-fg);
	font: inherit;
	font-weight: 500;
	cursor: pointer;
}

.wpcf7 input[type='submit']:hover {
	background: var(--pen-btn-bg-hover);
}

.wpcf7-not-valid-tip {
	margin-top: 4px;
	color: #b3261e;
	font-size: 14px;
}

html[data-theme='dark'] .wpcf7-not-valid-tip {
	color: #ff9d94;
}

.wpcf7 form .wpcf7-response-output {
	margin: 20px 0 0;
	padding: 12px 16px;
	border: 1px solid var(--pen-border);
	border-radius: var(--pen-radius);
	color: var(--pen-text);
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: var(--pen-green-medium);
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
	border-color: #b3261e;
}
