/* AVP Popup Generator Pro – production-ready template layouts. */

.avp-popup-popup.avp-popup-content-html[class*="avp-template-"] .avp-popup-popup-dialog {
	overflow: hidden;
	border: 1px solid rgba(15, 23, 42, .10);
	border-radius: 18px;
	box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
}

.avp-popup-popup.avp-popup-content-html[class*="avp-template-"] .avp-popup-popup-content {
	min-height: 0;
}

.avp-template-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	min-width: 0;
}

.avp-template-copy-narrow { max-width: 68%; }
.avp-template-copy-right { width: 54%; margin-left: auto; }
.avp-template-copy-bottom { width: 100%; }
.avp-template-copy h2 {
	margin: .35em 0 .45em;
	font-size: clamp(1.65rem, 2.15rem, 2.45rem);
	line-height: 1.08;
	letter-spacing: -.035em;
}
.avp-template-copy p { margin: 0 0 1.15em; font-size: 1rem; line-height: 1.58; }
.avp-template-copy small { line-height: 1.45; opacity: .76; }

.avp-template-kicker,
.avp-template-status {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	margin-bottom: .4em;
	color: var(--avp-popup-button-color, #2563eb);
	font-size: .74rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.avp-template-kicker.is-light { color: #fde68a; }
.avp-template-status { padding: .45em .75em; border-radius: 999px; background: rgba(15, 118, 110, .1); letter-spacing: .06em; }
.avp-template-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.avp-template-link { color: inherit; font-weight: 650; text-underline-offset: .22em; }
.avp-template-checks { margin: 0 0 1.25em; padding: 0; list-style: none; }
.avp-template-checks li { position: relative; margin: .4em 0; padding-left: 1.5em; }
.avp-template-checks li::before { content: '✓'; position: absolute; left: 0; color: var(--avp-popup-button-color, #2563eb); font-weight: 800; }
.avp-template-discount { margin: .05em 0 -.08em; font-size: clamp(3.8rem, 5.5rem, 6.2rem); font-weight: 850; line-height: .9; letter-spacing: -.07em; }
.avp-template-discount small { font-size: .38em; letter-spacing: -.02em; }
.avp-template-rating { color: #f59e0b; font-size: 1rem; letter-spacing: .08em; }
.avp-template-rating small { color: currentColor; letter-spacing: 0; }
.avp-template-price { display: flex; align-items: baseline; gap: .55em; margin: -.2em 0 1.15em; }
.avp-template-price strong { font-size: 1.55rem; }
.avp-template-price span { font-size: .78rem; opacity: .65; }
.avp-template-date { display: flex; align-items: center; gap: .65em; margin-bottom: .85em; }
.avp-template-date strong { font-size: 3.35rem; line-height: .8; letter-spacing: -.06em; }
.avp-template-date span { font-size: .76rem; font-weight: 800; line-height: 1.25; letter-spacing: .08em; }
.avp-template-code { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; margin: .2em 0 1.2em; padding: .75em .9em; border: 1px dashed currentColor; border-radius: 9px; }
.avp-template-code span { font-size: 1.05rem; font-weight: 800; letter-spacing: .08em; }
.avp-template-code small { text-transform: uppercase; }
.avp-template-avatar,
.avp-template-info-icon { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: .75em; border-radius: 50%; background: var(--avp-popup-button-color, #334155); color: #fff; font-size: 1.2rem; font-weight: 800; }
.avp-template-info-icon { font-family: Georgia, serif; font-size: 1.4rem; }

/* Welcome: retain the photographic mood, but place the copy on a readable panel. */
.avp-popup-popup.avp-popup-content-html.avp-template-classic .avp-popup-popup-dialog {
	background-position: center center;
}
.avp-popup-popup.avp-popup-content-html.avp-template-classic .avp-template-copy {
	min-height: 330px;
	max-width: 58%;
	padding: 30px;
	border: 1px solid rgba(255,255,255,.62);
	border-radius: 14px;
	background: rgba(255,255,255,.90);
	box-shadow: 0 16px 44px rgba(15,23,42,.12);
	backdrop-filter: blur(3px);
}

/* Real split layout: image left, content right. */
.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-popup-dialog {
	min-height: 420px;
	padding: 0;
	background-color: #fff;
	background-position: left center;
	background-size: 46% 100%;
}
.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-rich-content,
.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-rich-content { min-height: 420px; }
.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-template-copy-right,
.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-template-copy-right {
	min-height: 420px;
	padding: 36px 40px;
	background: #fff;
}

/* Real top-image layout: image zone above, content zone below. */
.avp-popup-popup.avp-popup-content-html.avp-template-image-top .avp-popup-popup-dialog {
	min-height: 0;
	padding: 0;
	background-color: #fff;
	background-position: center top;
	background-size: 100% 235px;
}
.avp-popup-popup.avp-popup-content-html.avp-template-image-top .avp-template-copy-bottom {
	min-height: 0;
	padding: 270px 38px 38px;
	background: linear-gradient(to bottom, transparent 0 235px, #fff 235px 100%);
}

/* Functional newsletter template with a real native form. */
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-popup-dialog {
	min-height: 460px;
	padding: 32px;
	background-color: #f8fbff;
	background-position: right center;
	background-size: 40% 100%;
	border-color: rgba(37, 99, 235, .20);
}
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-popup-content { padding-right: 42%; }
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-template-copy-narrow { max-width: none; }
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-native-form { margin-top: 18px; }
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-native-form .avp-popup-form-field > span { font-size: .82rem; }
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-native-form input:not([type="checkbox"]) { min-height: 40px; }
.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-lead-submit { justify-content: center; }

/* Promotional templates: keep copy away from the detailed product area. */
.avp-popup-popup.avp-popup-content-html.avp-template-offer .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html.avp-template-exit-offer .avp-popup-popup-dialog {
	background-position: right center;
}
.avp-popup-popup.avp-popup-content-html.avp-template-offer .avp-template-copy,
.avp-popup-popup.avp-popup-content-html.avp-template-exit-offer .avp-template-copy {
	min-height: 330px;
	max-width: 57%;
}
.avp-popup-popup.avp-popup-content-html.avp-template-offer .avp-popup-popup-dialog { border-color: rgba(245, 158, 11, .42); }

/* Event: copy left, image right; never place text over flowers or table objects. */
.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-popup-dialog {
	min-height: 430px;
	padding: 0;
	background-color: #f5f3ff;
	background-position: right center;
	background-size: 45% 100%;
}
.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-rich-content { min-height: 430px; }
.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-template-copy-narrow {
	min-height: 430px;
	max-width: 55%;
	padding: 36px 38px;
	background: #f8f7ff;
}

/* Announcement: illustration left, information right. */
.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-popup-dialog {
	min-height: 340px;
	padding: 0;
	background-color: #f8fafc;
	background-position: left center;
	background-size: 36% 100%;
}
.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-rich-content { min-height: 340px; }
.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-template-copy-narrow {
	min-height: 340px;
	max-width: 64%;
	margin-left: auto;
	padding: 32px 34px;
	background: #f8fafc;
}

/* Small edge notices. */
.avp-popup-popup.avp-popup-content-html.avp-template-slide-in .avp-popup-popup-dialog {
	min-height: 280px;
	background-position: right center;
	background-size: cover;
}
.avp-popup-popup.avp-popup-content-html.avp-template-slide-in .avp-template-copy {
	max-width: 70%;
	padding: 18px;
	border-radius: 12px;
	background: rgba(255,255,255,.91);
}
.avp-popup-popup.avp-popup-content-html.avp-template-corner .avp-popup-popup-dialog {
	min-height: 0;
	background-color: #f8fafc;
	background-image: linear-gradient(145deg, #ffffff, #eef4f8) !important;
}
.avp-popup-popup.avp-popup-content-html.avp-template-corner .avp-template-copy { max-width: none; min-height: 220px; }
.avp-popup-popup.avp-popup-content-html.avp-template-slide-in .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html.avp-template-corner .avp-popup-popup-dialog { border-radius: 16px; }

/* Information: quiet readable panel over the low-detail area. */
.avp-popup-popup.avp-popup-content-html.avp-template-info .avp-template-copy {
	min-height: 270px;
	max-width: 70%;
	padding: 24px;
	border-radius: 12px;
	background: rgba(248,250,252,.92);
}

/* Bars intentionally do not use photographic backgrounds. */
.avp-popup-popup.avp-popup-content-html.avp-template-bar-top .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html.avp-template-bar-bottom .avp-popup-popup-dialog {
	padding: 0 16px;
	border: 0;
	border-radius: 0;
	background-image: none !important;
	box-shadow: 0 8px 30px rgba(15, 23, 42, .18);
}
.avp-popup-popup.avp-popup-content-html.avp-template-bar-top .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html.avp-template-bar-bottom .avp-popup-popup-content { min-height: 0; }
.avp-template-bar {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 28px;
	min-height: 50px;
	padding: 7px 42px 7px 10px;
	text-align: center;
}
.avp-template-bar p { display: flex; align-items: center; gap: .55em; margin: 0; }
.avp-template-bar .avp-popup-button { padding: .52em .9em; white-space: nowrap; }

/* Tablet preview and real tablets use slightly tighter dimensions. */
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="tablet"].avp-template-image-left .avp-template-copy-right,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="tablet"].avp-template-product .avp-template-copy-right,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="tablet"].avp-template-event .avp-template-copy-narrow { padding: 30px; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="tablet"].avp-template-newsletter .avp-popup-popup-content { padding-right: 38%; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="tablet"].avp-template-newsletter .avp-popup-popup-dialog { background-size: 36% 100%; }

/* Mobile layout – also applies inside the admin's simulated mobile preview. */
.avp-popup-popup[data-avp-preview-device="mobile"].avp-popup-content-html[class*="avp-template-"] .avp-popup-popup-dialog { border-radius: 14px; }
.avp-popup-popup[data-avp-preview-device="mobile"] .avp-template-copy h2 { font-size: 1.65rem; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-classic .avp-template-copy {
	max-width: none;
	min-height: 0;
	margin-top: 165px;
	padding: 22px;
	background: rgba(255,255,255,.95);
}
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-classic .avp-popup-popup-dialog { background-position: center top; background-size: auto 185px; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-left .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-product .avp-popup-popup-dialog {
	min-height: 0;
	background-position: center top;
	background-size: 100% 185px;
}
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-left .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-left .avp-popup-rich-content,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-product .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-product .avp-popup-rich-content { min-height: 0; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-left .avp-template-copy-right,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-product .avp-template-copy-right {
	width: 100%;
	min-height: 0;
	padding: 215px 22px 24px;
}
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-top .avp-popup-popup-dialog { background-size: 100% 165px; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-top .avp-template-copy-bottom { padding: 195px 22px 24px; background: linear-gradient(to bottom, transparent 0 165px, #fff 165px 100%); }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-newsletter .avp-popup-popup-dialog {
	min-height: 0;
	padding: 195px 22px 24px;
	background-position: center top;
	background-size: 100% 165px;
}
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-newsletter .avp-popup-popup-content { padding-right: 0; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-offer .avp-template-copy,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-exit-offer .avp-template-copy { max-width: none; min-height: 0; padding: 10px 4px; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-event .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-announcement .avp-popup-popup-dialog {
	min-height: 0;
	background-position: center top;
	background-size: 100% 175px;
}
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-event .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-event .avp-popup-rich-content,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-announcement .avp-popup-popup-content,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-announcement .avp-popup-rich-content { min-height: 0; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-event .avp-template-copy-narrow,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-announcement .avp-template-copy-narrow {
	max-width: none;
	min-height: 0;
	margin: 0;
	padding: 205px 22px 24px;
}
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-slide-in .avp-template-copy,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-info .avp-template-copy { max-width: none; min-height: 0; padding: 20px; }
.avp-popup-popup[data-avp-preview-device="mobile"] .avp-template-bar,
.avp-popup-popup[data-avp-preview-device="mobile"] .avp-template-bar p { align-items: stretch; flex-direction: column; }
.avp-popup-popup[data-avp-preview-device="mobile"] .avp-template-bar { gap: 8px; padding: 10px 38px 10px 8px; text-align: left; }

@media (max-width: 767px) {
	.avp-popup-popup.avp-popup-content-html[class*="avp-template-"] .avp-popup-popup-dialog { border-radius: 14px; }
	.avp-template-copy h2 { font-size: 1.65rem; }
	.avp-popup-popup.avp-popup-content-html.avp-template-classic .avp-template-copy { max-width: none; min-height: 0; margin-top: 165px; padding: 22px; background: rgba(255,255,255,.95); }
	.avp-popup-popup.avp-popup-content-html.avp-template-classic .avp-popup-popup-dialog { background-position: center top; background-size: auto 185px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-popup-dialog,
	.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-popup-dialog { min-height: 0; background-position: center top; background-size: 100% 185px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-popup-content,
	.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-rich-content,
	.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-popup-content,
	.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-rich-content { min-height: 0; }
	.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-template-copy-right,
	.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-template-copy-right { width: 100%; min-height: 0; padding: 215px 22px 24px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-image-top .avp-popup-popup-dialog { background-size: 100% 165px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-image-top .avp-template-copy-bottom { padding: 195px 22px 24px; background: linear-gradient(to bottom, transparent 0 165px, #fff 165px 100%); }
	.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-popup-dialog { min-height: 0; padding: 195px 22px 24px; background-position: center top; background-size: 100% 165px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-popup-content { padding-right: 0; }
	.avp-popup-popup.avp-popup-content-html.avp-template-offer .avp-template-copy,
	.avp-popup-popup.avp-popup-content-html.avp-template-exit-offer .avp-template-copy { max-width: none; min-height: 0; padding: 10px 4px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-popup-dialog,
	.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-popup-dialog { min-height: 0; background-position: center top; background-size: 100% 175px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-popup-content,
	.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-rich-content,
	.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-popup-content,
	.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-rich-content { min-height: 0; }
	.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-template-copy-narrow,
	.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-template-copy-narrow { max-width: none; min-height: 0; margin: 0; padding: 205px 22px 24px; }
	.avp-popup-popup.avp-popup-content-html.avp-template-slide-in .avp-template-copy,
	.avp-popup-popup.avp-popup-content-html.avp-template-info .avp-template-copy { max-width: none; min-height: 0; padding: 20px; }
	.avp-template-bar, .avp-template-bar p { align-items: stretch; flex-direction: column; }
	.avp-template-bar { gap: 8px; padding: 10px 38px 10px 8px; text-align: left; }
}

/* Preserve the important subject when the split photographs become top images on mobile. */
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-image-left .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-product .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-announcement .avp-popup-popup-dialog { background-position: left top; }
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-event .avp-popup-popup-dialog,
.avp-popup-popup.avp-popup-content-html[data-avp-preview-device="mobile"].avp-template-newsletter .avp-popup-popup-dialog { background-position: right top; }
@media (max-width: 767px) {
	.avp-popup-popup.avp-popup-content-html.avp-template-image-left .avp-popup-popup-dialog,
	.avp-popup-popup.avp-popup-content-html.avp-template-product .avp-popup-popup-dialog,
	.avp-popup-popup.avp-popup-content-html.avp-template-announcement .avp-popup-popup-dialog { background-position: left top; }
	.avp-popup-popup.avp-popup-content-html.avp-template-event .avp-popup-popup-dialog,
	.avp-popup-popup.avp-popup-content-html.avp-template-newsletter .avp-popup-popup-dialog { background-position: right top; }
}
