/* Formulário de Cadastro */

.formulario-cadastro-elementor {
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.form-cadastro-wraper {
	background-color: #f3e4ca;
	padding: 40px;
	border-style: solid;
	border-width: 1px;
	border-color: #494d35;
	border-radius: 10px;
	max-width: 800px;
}

.form-cadastro-wraper h2 {
	font-size: 34px;
	text-align: center;
	color: #494d35;
	margin-bottom: 30px;
	line-height: 42px;
}

.form-step h3 {
	font-variation-settings: "wght" 500;
	font-weight: 400;
	font-size: 24px;
	margin-top: 34px;
	margin-bottom: 2px;
	color: #494d35;
}

.form-step br {
	display: none;
}

.form-step p {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: 20px;
	color: #494d35;
	font-variation-settings: "wght" 400;
	font-weight: 400;
	font-size: 16px;
}

.wpcf7 label:not(.wpcf7-form-control-wrap) {
	font-family: "carbona-variable", sans-serif;
	font-variation-settings: "wght" 500;
	font-weight: 500;
	font-size: 18px;
	margin-bottom: 6px;
	margin-left: 10px;
	padding: 0px;
}

.form-button {
	font-family: "carbona-variable", sans-serif;
	font-size: 18px;
	font-variation-settings: "wght" 500;
	font-weight: 500;
	border-radius: 40px;
	border-style: solid;
	border-width: 1px;
	border-color: #d7e000;
	padding: 12px 36px 10px 36px;
	cursor: pointer;
	background-color: #d7e000;
	color: #494d35;
	margin-top: 10px;
	align-self: center;
}

.form-button:hover {
	background-color: #d7e000;
	border-color: #494d35;
	color: #494d35;
}

form input, form select, form button, form textarea {
	border-radius: 50px;
	border-style: solid;
	border-width: 2px;
	border-color: #494d3560;
	color: #494d35;
	padding-top: 10px;
	padding-bottom: 6px;
	padding-left: 16px;
	padding-right: 14px;
	min-width: 100%;
}

select:focus, textarea:focus, input[type=url]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=time]:focus, input[type=date]:focus, input[type=datetime]:focus, input[type=datetime-local]:focus, input[type=email]:focus, input[type=number]:focus, input[type=search]:focus, input[type=password]:focus, fieldset .wc-stripe-elements-field:focus, .ff-inherit-theme-style .ff-el-form-control:not([size]):not([multiple]):focus {
	border-radius: 50px;
	border-width: 2px;
	border-color: #d7e000;
	color: #494d35;
}

.wpcf7 .wpcf7-not-valid-tip {
	font-size: 16px;
	font-style: normal;
	margin-top: 6px;
    margin-left: 10px;
	color: #ff6700;
}

.pet-data {
	padding-bottom: 10px;
	border-bottom-style: solid;
	border-bottom-width: 2px;
	border-bottom-color: #02020220;
	margin-bottom: 24px;
}

.pet-data p {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	margin-bottom: 16px;
}

.form-buttons-add-remove p {
	width: 40%;
}

.remove-pet {
	border-radius: 40px;
	padding: 10px 24px 8px 24px;
	cursor: pointer;
	background-color: #FFA3C0;
	color: #494D35;
}

.form-button-add {
	border-radius: 40px;
	padding: 10px 24px 8px 24px;
	cursor: pointer;
	background-color: #FF6700;
	color: #FDDEBE;
}

.error-message {
	margin-top: 30px;
	background-color: #ff670018;
	padding:10px 20px;
	border-radius: 10px;
	color: #ff6700;
}

.progress-step p {
	line-height: 22px;
}

@media only screen and (max-width: 768px) {
	.form-buttons-add-remove p {
		width: 64%;
	}
	
	.progress-step p {
		font-size: 14px;
		line-height: 18px;
	}
	
	.progress-step active p {
		font-size: 16px;
	}
	
	.progress-step completed p {
		font-size: 14px;
	}
	
	.formulario-cadastro-elementor form {
		display: flex;
    	flex-direction: column;
    	align-items: center;
	}
	
	.form-cadastro-wraper {
		width: 98%;
    	display: flex;
    	flex-direction: column;
   	 	align-items: center;
		padding: 20px;
	}
	
	input {
		width: 100%;
	}
}

.jet-form-builder__label-text {
	font-family: "carbona-variable", sans-serif;
	font-variation-settings: "wght" 500;
	font-weight: 500;
	font-size: 18px;
}

.jet-form-builder__action-button {
	font-family: "carbona-variable", sans-serif;
	font-variation-settings: "wght" 500;
	font-weight: 500;
	font-size: 18px;
}

.formulario-cadastro-elementor input[name="aceite"] {
	-webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
	min-width: auto;
}

/* Barra de progresso */
.progress-bar {
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
}

.progress-steps {
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}

.progress-step {
    flex: 1;
    text-align: center;
	font-family: "carbona-variable", sans-serif;
	font-variation-settings: "wght" 500;
	font-weight: 500;
    font-size: 14px;
    color: #494d3560;
    position: relative;
    z-index: 1;
}

.progress-step::before {
    content: attr(data-step);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
	padding-top: 3px;
    border-radius: 50%;
	border-style: solid;
	border-width: 1px;
	border-color: #494d35;
    background-color: #f3e4ca;
    color: #494d35;
	font-family: "carbona-variable", sans-serif;
	font-variation-settings: "wght" 500;
	font-weight: 500;
    font-size: 14px;
	margin-bottom: 10px;
}

.progress-step.active::before {
    background-color: #D7E000; /* Passo atual */
	color: #494d35;
	border-style: solid;
	border-width: 1px;
	border-color: #494d35;
	width: 40px;
    height: 40px;
	padding-top: 3px;
	font-size: 18px;
}

.progress-step.active {
    color: #494d35;
	font-variation-settings: "wght" 600;
    font-weight: 600;
	font-size: 18px;
}

.progress-step.completed::before {
    background-color: #494d35; /* Passos completados */
	background-image: url('/wp-content/uploads/2025/08/check_24dp_494D35_FILL0_wght300_GRAD0_opsz24.svg');
	background-size: 18px;
    background-position: center;
    background-repeat: no-repeat;
    content: '';
}

.progress-step.completed {
    color: #494d35;
}

/* Linha de conexão entre passos */
.progress-step:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 13px;
    left: 56%;
    width: calc(100% - 20px);
    height: 3px;
    background-color: #494d3560;
    z-index: -1;
}

.progress-step.active:not(:last-child)::after {
    background-color: #494d3560; /* Verde para linha do passo atual */
	top: 18px;
	left: 56%;
    width: calc(100% - 20px);
    z-index: -1;
}

.progress-step.completed:not(:last-child)::after {
    background-color: #494d35; /* Linhas de passos completados */
}