.netcampaigns-form {
	--netcampaigns-brand: #0f9d58;
	max-width: 520px;
	margin: 1.5em 0;
	font-size: 16px;
}
.netcampaigns-form__title { margin: 0 0 .35em; }
.netcampaigns-form__intro { margin: 0 0 1em; }
.netcampaigns-form__fields { display: grid; gap: .75em; }
.netcampaigns-form--inline .netcampaigns-form__fields { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); align-items: end; }
.netcampaigns-form__field span { display: block; font-size: .875em; font-weight: 600; margin-bottom: .3em; }
.netcampaigns-form__field abbr { text-decoration: none; color: #b91c1c; }
.netcampaigns-form input[type="text"],
.netcampaigns-form input[type="email"] {
	width: 100%;
	box-sizing: border-box;
	padding: .7em .8em;
	border: 1px solid #cbd5e1;
	border-radius: 6px;
	font-size: 1em;
	background: #fff;
	color: #111827;
}
.netcampaigns-form input:focus { outline: 2px solid var(--netcampaigns-brand); outline-offset: 1px; border-color: var(--netcampaigns-brand); }
.netcampaigns-form__button {
	padding: .75em 1.4em;
	border: 0;
	border-radius: 6px;
	background: var(--netcampaigns-brand);
	color: #fff;
	font-size: 1em;
	font-weight: 700;
	cursor: pointer;
	transition: filter .15s ease;
}
.netcampaigns-form__button:hover { filter: brightness(1.08); }
.netcampaigns-form__button:disabled { opacity: .6; cursor: wait; }
.netcampaigns-form__consent { display: flex; gap: .6em; align-items: flex-start; margin-top: .9em; font-size: .875em; line-height: 1.5; }
.netcampaigns-form__consent input { margin-top: .25em; flex: none; }
.netcampaigns-form__message { margin-top: .8em; font-size: .95em; min-height: 1em; }
.netcampaigns-form.is-success .netcampaigns-form__message { color: #047857; font-weight: 600; }
.netcampaigns-form.is-error .netcampaigns-form__message { color: #b91c1c; }
.netcampaigns-form__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
