.dmp-virtual-unsubscribe,
.dmp-virtual-confirm {
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 20px;
}

.dmp-af-wrap {
	background: var(--dmp-af-bg, #faf6ef);
	border: 1px solid var(--dmp-af-border, #e8c97a);
	border-radius: 10px;
	padding: 40px;
	text-align: center;
	font-family: "Open Sans", sans-serif;
	max-width: 500px;
	margin: 40px auto;
	box-sizing: border-box;
}

.dmp-af-wrap * {
	box-sizing: border-box;
}

.dmp-af-wrap h3 {
	font-family: "Playfair Display", serif;
	font-size: 26px;
	color: var(--dmp-af-title, #2c1a0e);
	margin: 0 0 12px;
}

.dmp-af-wrap p {
	font-size: 15px;
	color: var(--dmp-af-text, #6b4423);
	margin: 0 0 28px;
	line-height: 1.7;
}

.dmp-af-row {
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 380px;
	margin: 0 auto;
}

.dmp-af-row input {
	padding: 14px 18px;
	border: 1.5px solid var(--dmp-af-border, #e8c97a);
	border-radius: 6px;
	font-size: 15px;
	outline: none;
	color: var(--dmp-af-title, #2c1a0e);
	background: #fff;
}

.dmp-af-row input:focus {
	border-color: var(--dmp-af-button, #c48a20);
	box-shadow: 0 0 0 3px rgba(196, 138, 32, .14);
}

.dmp-af-btn {
	background: var(--dmp-af-button, #c48a20);
	color: var(--dmp-af-button-text, #fff);
	padding: 14px 28px;
	border: none;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	cursor: pointer;
	transition: background .3s;
}

.dmp-af-btn:hover,
.dmp-af-btn:focus-visible {
	background: var(--dmp-af-button-hover, #a8721a);
}

.dmp-af-btn:disabled {
	opacity: .7;
	cursor: wait;
}

.dmp-af-msg {
	margin-top: 16px;
	padding: 12px 20px;
	border-radius: 6px;
	font-size: 14px;
	display: none;
}

.dmp-af-msg.ok {
	background: var(--dmp-af-success-bg, #f8ebd4);
	color: var(--dmp-af-success-text, #5c2e0a);
	border: 1px solid var(--dmp-af-border, #e8c97a);
	display: block;
}

.dmp-af-msg.err {
	background: var(--dmp-af-error-bg, #f8d7da);
	color: var(--dmp-af-error-text, #8b0000);
	border: 1px solid var(--dmp-af-error-text, #8b0000);
	display: block;
}
