.newsletter {
	padding: 8rem 0;
	text-align: center;
}
.newsletter-content {
	max-width: 700px;
	margin: 0 auto;
}
.newsletter h2 {
	font-size: clamp(2.5rem, 5vw, 4rem);
	margin-bottom: 1rem;
}
.newsletter p {
	color: #666;
	margin-bottom: 3rem;
	line-height: 1.8;
}
.newsletter form {
	display: flex;
	gap: 1rem;
	justify-content: center;
	flex-wrap: wrap;
}
.newsletter input {
	flex: 1;
	min-width: 280px;
	max-width: 480px;
	padding: 1.15rem 1.5rem;
	border: 1px solid #ddd;
	font-size: 1rem;
}
/* ========================================
   BEEHIIV NEWSLETTER FORM
======================================== */


#beehiiv-subscribe-form {

	width: 100% !important;
	max-width: 400px !important;

	padding: 0 !important;

	background: transparent !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

}


#beehiiv-header-container {

	display: none !important;

}


/* Form wrapper */

#subscribe-form {

	width: 100% !important;

	display: flex !important;
	flex-direction: row !important;

	gap: 0 !important;

}


/* Input/button container */

#subscribe-form > div {

	width: 100% !important;

	display: flex !important;

	border: 1px solid #111 !important;

	border-radius: 0 !important;

	overflow: hidden !important;

}


/* Email input */

#form_email {

	flex: 1 !important;

	height: 52px !important;

	padding: 0 18px !important;

	font-family: inherit !important;

	font-size: 15px !important;

	border: none !important;

	outline: none !important;

	color: #111 !important;

}


/* Placeholder */

#form_email::placeholder {

	color: #888 !important;

}


/* Subscribe button */

#submit-button {

	height: 52px !important;

	padding: 0 28px !important;

	background: #111 !important;

	color: #fff !important;

	border: none !important;

	font-family: inherit !important;

	font-size: 13px !important;

	font-weight: 500 !important;

	letter-spacing: .12rem !important;

	text-transform: uppercase !important;

	cursor: pointer !important;

}


/* Hover */

#submit-button:hover {

	background:#333 !important;

}


/* Mobile */

@media(max-width:600px){

	#subscribe-form > div {

		flex-direction: column !important;

	}


	#submit-button {

		width:100% !important;

	}

}

/* ========================================
   NEWSLETTER SUCCESS MESSAGE
======================================== */


.newsletter-message {

	margin-top: 1.5rem;

	max-width: 770px;

	text-align: center;

	font-size: .9rem;

	line-height: 1.6;

	color: #555;

	opacity: 0;

	transform: translateY(10px);

	transition: all .4s ease;

}


.newsletter-message.visible {

	opacity: 1;

	transform: translateY(0);

}


.newsletter-message::before {

	content: "✓";

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 22px;

	height: 22px;

	margin-right: .5rem;

	border-radius: 50%;

	background: #111;

	color: #fff;

	font-size: .75rem;

}

