/**
 * Explore Closing CTA — EH-4 emotional close band.
 *
 * @package PasionGift_App
 */

.pg-explore-closing-cta {
	--pg-explore-closing-pad-y: var(--pg-space-xl);
	--pg-explore-closing-pad-x: var(--pg-shell-padding-x);

	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	align-items: center;
	margin-inline: calc(-1 * var(--pg-shell-padding-x));
	padding: var(--pg-explore-closing-pad-y) var(--pg-explore-closing-pad-x);
	border-radius: 0;
	background-color: var(--pg-color-brand-nude, var(--pg-color-hero-bg));
	box-sizing: border-box;
}

.pg-explore-closing-cta__atmosphere {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}

.pg-explore-closing-cta__glow {
	position: absolute;
	border-radius: 50%;
	filter: blur(2.25rem);
	opacity: 0.65;
}

.pg-explore-closing-cta__glow--wine {
	width: min(55vw, 14rem);
	height: min(55vw, 14rem);
	top: -35%;
	right: -12%;
	background: radial-gradient(
		circle at 40% 40%,
		rgba(var(--pg-color-brand-wine-rgb, 139, 30, 63), 0.36) 0%,
		rgba(var(--pg-color-brand-wine-rgb, 139, 30, 63), 0) 70%
	);
}

.pg-explore-closing-cta__glow--rose {
	width: min(48vw, 12rem);
	height: min(48vw, 12rem);
	bottom: -40%;
	left: -14%;
	background: radial-gradient(
		circle at 50% 50%,
		rgba(var(--pg-color-brand-rose-rgb, 217, 140, 163), 0.45) 0%,
		rgba(var(--pg-color-brand-rose-rgb, 217, 140, 163), 0) 72%
	);
}

.pg-explore-closing-cta__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: var(--pg-space-sm);
	max-width: 22rem;
	width: 100%;
}

.pg-explore-closing-cta__title {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: clamp(1.25rem, 4.8vw, 1.5rem);
	font-weight: var(--pg-font-weight-semibold);
	line-height: var(--pg-line-height-tight);
	letter-spacing: var(--pg-letter-spacing-tight);
	color: var(--pg-color-brand-black, var(--pg-color-text));
}

.pg-explore-closing-cta__subtitle {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm);
	font-weight: var(--pg-font-weight-medium);
	line-height: var(--pg-line-height-snug);
	color: var(--pg-color-text-muted);
}

.pg-explore-closing-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--pg-space-sm);
	padding-top: var(--pg-space-xs);
}

.pg-explore-closing-cta__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0.625rem 1.25rem;
	border-radius: var(--pg-radius-full);
	background-color: var(--pg-color-brand-wine, var(--pg-color-accent));
	color: var(--pg-color-surface, #fff);
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm);
	font-weight: var(--pg-font-weight-semibold);
	line-height: 1;
	letter-spacing: -0.01em;
	text-decoration: none;
	box-shadow: 0 8px 24px rgba(var(--pg-color-brand-wine-rgb, 139, 30, 63), 0.22);
	transition:
		transform var(--pg-transition-fast) var(--pg-transition-ease),
		background-color var(--pg-transition-fast) var(--pg-transition-ease),
		box-shadow var(--pg-transition-fast) var(--pg-transition-ease);
	-webkit-tap-highlight-color: transparent;
}

.pg-explore-closing-cta__cta:hover {
	background-color: color-mix(in srgb, var(--pg-color-brand-wine, #8b1e3f) 88%, #000);
	box-shadow: 0 10px 28px rgba(var(--pg-color-brand-wine-rgb, 139, 30, 63), 0.28);
}

.pg-explore-closing-cta__cta:focus-visible {
	outline: 2px solid var(--pg-color-brand-rose, #d98ca3);
	outline-offset: 3px;
}

.pg-explore-closing-cta__cta:active {
	transform: scale(0.98);
}

@media (max-width: 359px) {
	.pg-explore-closing-cta {
		--pg-explore-closing-pad-y: var(--pg-space-lg);
	}

	.pg-explore-closing-cta__title {
		font-size: 1.125rem;
	}

	.pg-explore-closing-cta__subtitle {
		font-size: 0.8125rem;
	}

	.pg-explore-closing-cta__cta {
		min-height: 2.5rem;
		padding-inline: 1.125rem;
		font-size: 0.8125rem;
	}
}

@media (min-width: 390px) {
	.pg-explore-closing-cta {
		--pg-explore-closing-pad-y: var(--pg-space-2xl);
	}

	.pg-explore-closing-cta__content {
		max-width: 24rem;
		gap: var(--pg-space-md);
	}
}

@media (min-width: 768px) {
	.pg-explore-closing-cta {
		border-radius: var(--pg-radius-lg);
		margin-inline: 0;
	}

	.pg-explore-closing-cta__content {
		max-width: 28rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pg-explore-closing-cta__cta {
		transition: none;
	}

	.pg-explore-closing-cta__cta:active {
		transform: none;
	}
}
