.giov-arr {
	--giov-arr-border: #d8dee6;
	--giov-arr-error: #8a1f11;
	--giov-arr-success: #176b3a;
	max-width: 820px;
	margin: 2rem auto;
}

.giov-arr-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem 1.25rem;
}

.giov-arr-field {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.giov-arr-field label,
.giov-arr-field legend {
	display: block;
	margin-bottom: .35rem;
	font-weight: 600;
}

.giov-arr-field input:not([type="radio"]):not([type="checkbox"]),
.giov-arr-field textarea {
	box-sizing: border-box;
	width: 100%;
}

.giov-arr-field label + label,
.giov-arr-field legend + label {
	display: inline-flex;
	align-items: center;
	margin-right: 1rem;
	font-weight: 400;
	gap: .3rem;
}

.giov-arr-field:nth-last-of-type(-n+3),
.giov-arr-accept,
.giov-arr-form > button {
	grid-column: 1 / -1;
}

.giov-arr-errors {
	padding: 1rem;
	margin-bottom: 1rem;
	border-left: 4px solid var(--giov-arr-error);
	background: #fff4f2;
}

.giov-arr-success {
	padding: 1.25rem;
	border-left: 4px solid var(--giov-arr-success);
	background: #f1fbf5;
}

.giov-arr-hp {
	position: absolute !important;
	left: -10000px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

@media (max-width: 640px) {
	.giov-arr-form {
		grid-template-columns: 1fr;
	}
	.giov-arr-field,
	.giov-arr-accept,
	.giov-arr-form > button {
		grid-column: 1;
	}
}
