.semc-newsletter-form-wrap {
	max-width: 500px;
}
.semc-newsletter-message {
	padding: 10px 15px;
	margin-bottom: 15px;
	border-radius: 4px;
	font-weight: 500;
}

.semc-newsletter-message-success {
	background-color: #d4edda;
	color: #155724;
	border: 1px solid #c3e6cb;
}

.semc-newsletter-message-error {
	background-color: #f8d7da;
	color: #721c24;
	border: 1px solid #f5c6cb;
}

.semc-newsletter-field-consent {
	margin-bottom: 15px;
}

.semc-newsletter-consent-wrap {
	display: flex !important;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
	max-width: 100%;
}

.semc-newsletter-consent-wrap input[type="checkbox"] {
	display: inline-block !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto;
	margin: 4px 0 0 0 !important;
	vertical-align: top;
}

.semc-newsletter-consent-label {
	display: inline !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	line-height: 1.4;
	cursor: pointer;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	writing-mode: horizontal-tb !important;
}

.semc-newsletter-form {
	display: block;
	width: 100%;
}

.semc-newsletter-form .semc-newsletter-field,
.semc-newsletter-form .semc-newsletter-turnstile {
	display: block;
	width: 100%;
	margin: 0 0 16px;
}

.semc-newsletter-form .semc-newsletter-field label {
	display: block;
	margin: 0 0 6px;
}

.semc-newsletter-form .semc-newsletter-field input[type="text"],
.semc-newsletter-form .semc-newsletter-field input[type="email"],
.semc-newsletter-form .semc-newsletter-field input[type="tel"],
.semc-newsletter-form .semc-newsletter-field input[type="number"] {
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.semc-newsletter-form .semc-newsletter-turnstile {
	clear: both;
}

.semc-newsletter-form .semc-newsletter-turnstile .cf-turnstile {
	display: block;
	width: 100%;
}

.semc-newsletter-form .semc-newsletter-field button[type="submit"] {
	display: inline-block;
}

.semc-newsletter-form .semc-newsletter-field-consent label {
	display: inline-flex;
	margin-bottom: 0;
}
