/* ==============================================================
   Audaxco — Contact Form 7: Layout & Estilos
   @version 1.0.0 (2026-04-19)

   Objetivos:
   - Grid 2 colunas para .col-sm-6 dentro de formulários CF7
   - Estilos de inputs, selects e textareas compatíveis com o
     design do site novo (imagem 3 de referência)
   - Feedback de validação (CNPJ inválido, campos obrigatórios)
   - Botão Enviar no padrão dark arredondado
   ============================================================== */

/* ---------------------------------------------------------------
   1. CONTAINER PRINCIPAL DO FORMULÁRIO
   --------------------------------------------------------------- */
.wpcf7-form {
	width: 100%;
}

/* ---------------------------------------------------------------
   2. GRID — flexbox (mais robusto dentro do popup Slick Popup,
      que usa overflow:hidden no container)
   --------------------------------------------------------------- */
.wpcf7-form {
	display: flex;
	flex-wrap: wrap;
	margin-left: -8px;
	margin-right: -8px;
}

.wpcf7-form > [class*="col-"] {
	box-sizing: border-box;
	padding-left: 8px;
	padding-right: 8px;
	flex: 0 0 100%;
	max-width: 100%;
}

@media (min-width: 576px) {
	.wpcf7-form > .col-sm-6 {
		flex: 0 0 50%;
		max-width: 50%;
	}
}

/* Separadores: largura total, sem altura visível */
.wpcf7-form > .btSeparator,
.wpcf7-form > .btClear {
	flex: 0 0 100%;
	max-width: 100%;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	overflow: hidden;
}

.wpcf7-form .btSeparator hr,
.wpcf7-form .btClear hr {
	display: none !important;
}

/* ---------------------------------------------------------------
   3. ESPAÇAMENTO ENTRE CAMPOS
   --------------------------------------------------------------- */
.wpcf7-form [class*="col-"] {
	margin-bottom: 12px;
}

/* ---------------------------------------------------------------
   4. INPUTS, SELECT, TEXTAREA
   --------------------------------------------------------------- */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="date"],
.wpcf7-form input[type="search"],
.wpcf7-form select,
.wpcf7-form textarea {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	font-size: 14px;
	line-height: 1.4;
	color: #333333;
	background-color: #ffffff;
	border: 1px solid #d0d0d0;
	border-radius: 4px;
	outline: none;
	transition: border-color 0.2s ease, background-color 0.2s ease;
	-webkit-appearance: none;
	appearance: none;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="number"]:focus,
.wpcf7-form input[type="url"]:focus,
.wpcf7-form input[type="date"]:focus,
.wpcf7-form input[type="search"]:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
	border-color: #1a3557;
	background-color: #ffffff;
}

/* Placeholder */
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
	color: #999999;
}

/* Textarea */
.wpcf7-form textarea {
	resize: vertical;
	min-height: 100px;
}

/* ---------------------------------------------------------------
   4b. FANCY-SELECT (select estilizado pelo tema)
   --------------------------------------------------------------- */
.wpcf7-form .fancy-select {
	width: 100%;
	position: relative;
}

.wpcf7-form .fancy-select .trigger {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
	color: #333333 !important;
	background-color: #ffffff !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
	cursor: pointer;
}

/* Esconde o ícone FontAwesome que o tema injeta no :before */
.wpcf7-form .fancy-select .trigger::before {
	display: none !important;
	content: none !important;
}

/* Seta customizada no :after */
.wpcf7-form .fancy-select .trigger::after {
	content: '' !important;
	display: inline-block !important;
	width: 0 !important;
	height: 0 !important;
	border-left: 5px solid transparent !important;
	border-right: 5px solid transparent !important;
	border-top: 6px solid #666666 !important;
	border-bottom: none !important;
	background: none !important;
	font-family: inherit !important;
	font-size: 0 !important;
	margin-left: 8px;
	flex-shrink: 0;
	float: none !important;
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
	padding: 0 !important;
}

.wpcf7-form .fancy-select.open .trigger {
	border-color: #1a3557 !important;
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}

.wpcf7-form .fancy-select .options {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #1a3557;
	border-top: none;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	background: #ffffff;
	z-index: 100;
}

.wpcf7-form .fancy-select .options li {
	padding: 10px 14px;
	font-size: 14px;
	color: #333333;
	cursor: pointer;
	list-style: none;
}

.wpcf7-form .fancy-select .options li:hover,
.wpcf7-form .fancy-select .options li.selected {
	background-color: #f0f4f8;
	color: #1a3557;
}

/* ---------------------------------------------------------------
   4c. INPUT FILE
   --------------------------------------------------------------- */
.wpcf7-form input[type="file"] {
	width: 100%;
	box-sizing: border-box;
	padding: 8px 14px;
	font-size: 14px;
	line-height: 1.4;
	color: #333333;
	background-color: #ffffff;
	border: 1px solid #d0d0d0;
	border-radius: 4px;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

.wpcf7-form input[type="file"]::-webkit-file-upload-button,
.wpcf7-form input[type="file"]::file-selector-button {
	padding: 6px 14px;
	margin-right: 12px;
	font-size: 13px;
	font-weight: 600;
	color: #ffffff;
	background-color: #1a3557;
	border: none;
	border-radius: 3px;
	cursor: pointer;
}

/* ---------------------------------------------------------------
   5. RADIO BUTTONS — "Já é cliente? Sim / Não"
      O tema amwerk sobrescreve inputs com pseudo-elementos;
      forçamos o estilo nativo dentro do formulário.
   --------------------------------------------------------------- */
.wpcf7-form .wpcf7-radio {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 4px;
}

.wpcf7-form .wpcf7-radio .wpcf7-list-item {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
}

/* Remove pseudo-elementos do tema que substituem o radio nativo */
.wpcf7-form .wpcf7-radio .wpcf7-list-item label::before,
.wpcf7-form .wpcf7-radio .wpcf7-list-item label::after {
	display: none !important;
	content: none !important;
}

/* Reset do pseudo-elemento :before/:after do INPUT do tema
   (style.css injeta input[type="radio"]:before com position:absolute + background)
   Escopo restrito ao .wpcf7-form para não afetar o resto do site */
.wpcf7-form input[type="radio"]:before,
.wpcf7-form input[type="radio"]:after,
.wpcf7-form input[type="radio"]:checked:before,
.wpcf7-form input[type="radio"]:checked:after {
	display: none !important;
	content: none !important;
	background: none !important;
	position: static !important;
	width: 0 !important;
	height: 0 !important;
	transform: none !important;
}

.wpcf7-form .wpcf7-radio .wpcf7-list-item label {
	font-size: 14px;
	color: #333333;
	cursor: pointer;
	margin: 0;
	padding-left: 0 !important;
}

/* Restaura aparência nativa do radio — reset total para vencer o tema */
.wpcf7-form .wpcf7-radio input[type="radio"],
.wpcf7-form .wpcf7-radio input[type="radio"]:focus,
.wpcf7-form .wpcf7-radio input[type="radio"]:hover {
	-webkit-appearance: radio !important;
	-moz-appearance: radio !important;
	appearance: radio !important;
	display: inline-block !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	max-width: 16px !important;
	min-height: 16px !important;
	max-height: 16px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 50% !important;
	background: none !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	outline: none !important;
	color: inherit !important;
	accent-color: #1a3557;
	cursor: pointer !important;
	flex-shrink: 0 !important;
	vertical-align: middle !important;
	position: static !important;
	float: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	transition: none !important;
}

/* Label "Já é cliente?" — parágrafo/span pai */
.wpcf7-form .col-xs-12.col-sm-12 > p,
.wpcf7-form .col-xs-12.col-sm-12 > span {
	font-size: 14px;
	color: #555555;
	margin-bottom: 6px;
	display: block;
}

/* ---------------------------------------------------------------
   6. LABEL "Mensagem"
   --------------------------------------------------------------- */
.wpcf7-form p {
	margin-bottom: 4px;
	font-size: 14px;
	color: #555555;
}

/* ---------------------------------------------------------------
   7. BOTÃO ENVIAR
   --------------------------------------------------------------- */
.wpcf7-form input[type="submit"],
.wpcf7-form .wpcf7-submit {
	display: block;
	width: 100%;
	padding: 14px 24px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #ffffff;
	background-color: #1a3557;
	border: none;
	border-radius: 30px;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.15s ease;
	-webkit-appearance: none;
	appearance: none;
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-form .wpcf7-submit:hover {
	background-color: #14294a;
	transform: translateY(-1px);
}

.wpcf7-form input[type="submit"]:active,
.wpcf7-form .wpcf7-submit:active {
	transform: translateY(0);
}

/* Wrapper do botão */
.wpcf7-form .bricks-form-wpcf7__submit {
	margin-top: 4px;
	clear: both;
}

/* Margem do próprio input submit dentro do popup */
.wpcf7-form input[type="submit"],
.wpcf7-form .wpcf7-submit {
	margin-top: 4px !important;
	margin-bottom: 4px !important;
}

/* ---------------------------------------------------------------
   8. VALIDAÇÃO — estados de erro
   --------------------------------------------------------------- */

/* Campo inválido */
.wpcf7-form .wpcf7-not-valid {
	border-color: #cc0000 !important;
	background-color: #fff8f8 !important;
}

/* Mensagem de erro abaixo do campo */
.wpcf7-form .wpcf7-not-valid-tip {
	display: block;
	margin-top: 4px;
	font-size: 12px;
	color: #cc0000;
	line-height: 1.3;
}

/* Mensagem de erro client-side do CNPJ/CPF */
.wpcf7-form .audaxco-field-error {
	display: block;
	margin-top: 4px;
	font-size: 12px;
	color: #cc0000;
	line-height: 1.3;
}

/* validationChecker — borda vermelha quando tocado e inválido */
.wpcf7-form .validationChecker:invalid:not(:placeholder-shown) {
	border-color: #cc0000;
}

/* ---------------------------------------------------------------
   9. RESPONSE / STATUS DO FORMULÁRIO
   --------------------------------------------------------------- */
.wpcf7-form .wpcf7-response-output {
	margin: 12px 0 0;
	padding: 10px 14px;
	font-size: 13px;
	border-radius: 4px;
	border: 1px solid transparent;
}

.wpcf7-form.sent .wpcf7-response-output {
	background-color: #e8f5e9;
	border-color: #4caf50;
	color: #1b5e20;
}

.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output,
.wpcf7-form.invalid .wpcf7-response-output {
	background-color: #ffebee;
	border-color: #cc0000;
	color: #b71c1c;
}

/* ---------------------------------------------------------------
   10. SPINNER
   --------------------------------------------------------------- */
.wpcf7-form .wpcf7-spinner {
	display: inline-block;
	margin-left: 8px;
	vertical-align: middle;
}

/* ---------------------------------------------------------------
   11. CAMPO HIDDEN — não ocupa espaço visual
   --------------------------------------------------------------- */
.wpcf7-form .wpcf7-hidden,
.wpcf7-form input[type="hidden"] {
	display: none !important;
}
