/* Welcome-offer form (shortcode / block / popup). */
.cw-offer {
	max-width: 32em;
	margin: 1em auto;
}
.cw-offer__heading {
	margin: 0 0 .35em;
	font-size: 1.4em;
}
.cw-offer__blurb {
	margin: 0 0 1em;
}
.cw-form .cw-field {
	display: flex;
	gap: .5em;
	flex-wrap: wrap;
	margin: 0 0 .5em;
}
.cw-form input[type="email"] {
	flex: 1 1 14em;
	padding: .65em .75em;
	border: 1px solid #bbb;
	border-radius: 4px;
	font-size: 1em;
}
.cw-button {
	flex: 0 0 auto;
	background: #1f8a4c;
	color: #fff;
	border: 0;
	border-radius: 4px;
	padding: .65em 1.25em;
	font-size: 1em;
	cursor: pointer;
}
.cw-button:hover { background: #186e3d; }
.cw-button[disabled] { opacity: .6; cursor: default; }

.cw-consent {
	margin: .25em 0 0;
	font-size: .8em;
	color: #777;
}

/* Honeypot: visually hidden, still in the DOM/tab off. */
.cw-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.cw-notice:empty { display: none; }
.cw-msg {
	margin: 0 0 .75em;
	padding: .6em .8em;
	border-radius: 4px;
	font-size: .95em;
}
.cw-success { background: #e6f4ea; color: #1e6b38; border: 1px solid #b7dfc4; }
.cw-error   { background: #fdecec; color: #9b1c1c; border: 1px solid #f3c0c0; }

.cw-offer--done .cw-form { display: none; }

/* Popup. */
.cw-popup[hidden] { display: none; }
.cw-popup {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cw-popup__overlay {
	position: absolute;
	inset: 0;
	background: rgba( 0, 0, 0, .55 );
}
.cw-popup__box {
	position: relative;
	background: #fff;
	max-width: 30em;
	width: calc( 100% - 2em );
	padding: 1.75em;
	border-radius: 8px;
	box-shadow: 0 10px 40px rgba( 0, 0, 0, .3 );
}
.cw-popup__box .cw-offer { margin: 0; }
.cw-popup__close {
	position: absolute;
	top: .35em;
	right: .5em;
	background: none;
	border: 0;
	font-size: 1.8em;
	line-height: 1;
	color: #888;
	cursor: pointer;
}
.cw-popup__close:hover { color: #333; }
body.cw-popup-open { overflow: hidden; }
