/* AP Forms - front-end styles (neutral, inherits theme fonts) */
.ap-form-wrap {
	max-width: 640px;
}
.ap-form-title {
	margin: 0 0 1em;
}
.ap-form .ap-field {
	margin: 0 0 1em;
}
.ap-form label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.3em;
}
.ap-form input[type="text"],
.ap-form input[type="email"],
.ap-form input[type="tel"],
.ap-form select,
.ap-form textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #ccc;
	border-radius: 6px;
	box-sizing: border-box;
	font: inherit;
}
.ap-form input:focus,
.ap-form textarea:focus {
	outline: none;
	border-color: #8a6d3b;
	box-shadow: 0 0 0 2px rgba(138, 109, 59, 0.15);
}
.ap-req {
	color: #c0392b;
}
.ap-consent label {
	font-weight: 400;
	font-size: 0.9em;
}
.ap-consent input {
	margin-right: 6px;
}
.ap-form-button {
	cursor: pointer;
	padding: 12px 28px;
	border: none;
	border-radius: 6px;
	background: #1d1d1b;
	color: #fff;
	font: inherit;
	font-weight: 600;
	transition: opacity 0.2s;
}
.ap-form-button:hover {
	opacity: 0.85;
}
.ap-form-button:disabled {
	opacity: 0.5;
	cursor: wait;
}
.ap-form-feedback {
	margin-top: 1em;
	font-weight: 600;
}
.ap-form-feedback.ap-success {
	color: #1e7e34;
}
.ap-form-feedback.ap-error {
	color: #c0392b;
}
/* Honeypot: visually removed but present for bots */
.ap-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.ap-radio-group > label:first-child {
	display: block;
	font-weight: 600;
	margin-bottom: 0.3em;
}
.ap-radio-option {
	display: inline-block !important;
	font-weight: 400 !important;
	margin: 0 18px 6px 0;
	cursor: pointer;
}
.ap-radio-option input {
	margin-right: 6px;
}
