.scarlet-custom-payment-notice {
	position: fixed;
	inset: 0;
	width: min(480px, calc(100% - 32px));
	max-height: calc(100dvh - 40px);
	margin: auto;
	padding: 0;
	border: 1px solid #ead8df;
	border-radius: 18px;
	background: #fffaf5;
	color: #341d27;
	box-shadow: 0 24px 80px #28151c40;
	font-family: inherit;
	text-align: left;
	z-index: 10000 !important;
}
.scarlet-custom-payment-notice.is-open { display: block; }
.scarlet-custom-payment-notice::backdrop { background: #28151c99; }
.scarlet-custom-payment-notice__content { padding: 30px; }
.scarlet-custom-payment-notice__eyebrow { color: #7f1538; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.scarlet-custom-payment-notice h2 { margin: 10px 0 16px; color: #68122f; font-size: clamp(22px, 5vw, 28px); font-weight: 700; line-height: 1.2; }
.scarlet-custom-payment-notice p { margin: 0 0 24px; font-size: 15px; line-height: 1.7; }
.scarlet-custom-payment-notice strong { color: #68122f; white-space: nowrap; }
.scarlet-custom-payment-notice button { width: 100%; padding: 13px 20px; border: 0; border-radius: 9px; background: #7f1538; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.scarlet-custom-payment-notice button:hover { background: #68122f; }
.scarlet-custom-payment-notice button:focus-visible { outline: 3px solid #c28199; outline-offset: 3px; }
body.scarlet-custom-payment-notice-open { overflow: hidden; }
body.scarlet-custom-payment-notice-fallback::before { content: ''; position: fixed; inset: 0; z-index: 9999; background: #28151c99; }
.scarlet-benefits-popup,
.scarlet-builder__modal { z-index: 10000 !important; }
@media (max-width: 480px) { .scarlet-custom-payment-notice__content { padding: 24px; } }
