/*
 * Estilo padrão do formulário de reserva público.
 * O tema pode sobrescrever qualquer regra: todas as classes começam com
 * `a20-` para não colidir com o CSS do tema ou de outros plugins.
 */
.a20-reservation-form {
	display: grid;
	gap: 14px;
	max-width: 520px;
}

.a20-reservation-form .a20-field { display: grid; gap: 6px; }

.a20-reservation-form label { font-weight: 600; }

.a20-reservation-form input[type="text"],
.a20-reservation-form input[type="email"],
.a20-reservation-form select,
.a20-reservation-form textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 6px;
	font: inherit;
}

.a20-reservation-form fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 6px; }

.a20-reservation-form .a20-field-consent label { font-weight: 400; display: flex; gap: 8px; align-items: flex-start; }

/* Honeypot: escondido de humanos, presente para leitores de tela ignorarem via aria-hidden. */
.a20-field-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.a20-reservation-form button[type="submit"] {
	justify-self: start;
	padding: 12px 24px;
	border-radius: 999px;
	border: 0;
	font-weight: 700;
	cursor: pointer;
}

.a20-form-feedback { padding: 12px 16px; border-radius: 8px; font-weight: 600; }
.a20-form-feedback--success { background: #e6f4ea; color: #1e4620; }
.a20-form-feedback--error { background: #fdecea; color: #611a15; }
