.su-form { max-width: 720px; }
.su-form p { margin: 0 0 1rem; }
.su-form label { display: block; font-weight: 500; margin-bottom: 0.3rem; color: #0f2a4a; }
.su-form input[type="text"],
.su-form input[type="email"],
.su-form input[type="tel"],
.su-form select,
.su-form textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 0.7rem 0.85rem;
	font: inherit;
	color: #1b2430;
	background: #fff;
	border: 1px solid #b8c4d1;
	border-radius: 6px;
}
.su-form input:focus,
.su-form select:focus,
.su-form textarea:focus {
	outline: 3px solid #f28c28;
	outline-offset: 1px;
	border-color: #0f2a4a;
}
.su-form__riga { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; }
@media (max-width: 600px) { .su-form__riga { grid-template-columns: 1fr; } }
.su-form__consenso label { font-weight: 400; display: flex; gap: 0.6rem; align-items: flex-start; }
.su-form__consenso input { margin-top: 0.3rem; flex: none; }
.su-form__invia {
	font: inherit;
	font-weight: 500;
	cursor: pointer;
	padding: 0.8rem 1.6rem;
	color: #0f2a4a;
	background: #f28c28;
	border: 0;
	border-radius: 6px;
}
.su-form__invia:hover { background: #e07b1a; }
.su-form__invia:focus-visible { outline: 3px solid #0f2a4a; outline-offset: 2px; }
.su-form__trappola {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
.su-msg { padding: 1rem 1.25rem; border-radius: 8px; margin-bottom: 1.25rem; }
.su-msg--ok { background: #e6f4ee; color: #0b4d36; border: 1px solid #9fd5bd; }
.su-msg--errore { background: #fdeceb; color: #7a1f1f; border: 1px solid #f0b3b0; }
.su-form__prodotto {
	padding: 0.75rem 1rem;
	background: #e6f1fb;
	color: #0f2a4a;
	border-radius: 8px;
}
