/*
 * Shubh Laabh Arts — Shop page's closing CTA banner, immediately above
 * the global footer (the Shop no longer has a service strip). The CTA
 * reuses the same premium navy/gold visual language as the homepage's
 * final CTA (assets/css/homepage-final-cta.css) — including the same
 * footer-bg.jpg background asset and safe-zone technique — but under its
 * own `.sla-shop-cta` class and its own copy, so this file can never
 * touch the locked homepage section.
 */

.sla-shop-cta,
.sla-shop-cta * {
	box-sizing: border-box;
}

/* -----------------------------------------------------------------------
 * Shop closing CTA.
 * --------------------------------------------------------------------- */
.sla-shop-cta {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background-image: url( '../images/decorative/footer-bg.jpg' );
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	min-height: clamp( 180px, 11.5vw, 230px );
}

.sla-shop-cta__inner {
	position: relative;
	z-index: 1;
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding-block: 1.5rem;
	padding-inline: clamp( 1.25rem, 15%, 15rem );
	text-align: center;
}

.sla-shop-cta__text {
	max-width: 40rem;
}

.sla-eyebrow.sla-shop-cta__eyebrow {
	margin: 0 0 0.75rem;
	text-shadow: 0 2px 8px rgba( 0, 0, 0, 0.5 );
}

.sla-shop-cta__heading {
	font-family: var( --sla-font-display );
	font-weight: 700;
	font-size: clamp( 1.5rem, 1.1rem + 1.6vw, 2rem );
	line-height: 1.2;
	color: var( --sla-ivory );
	margin: 0 0 1.25rem;
	text-shadow: 0 2px 12px rgba( 0, 0, 0, 0.55 );
}

.sla-shop-cta__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	width: 222px;
	height: 54px;
	margin-inline: auto;
	background: var( --sla-champagne-gold );
	color: var( --sla-peacock-navy );
	font-family: var( --sla-font-body );
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 6px;
	border: 1px solid var( --sla-light-gold );
	box-shadow: inset 0 1px 0 rgba( 255, 255, 255, 0.35 ), 0 8px 18px -10px rgba( 0, 0, 0, 0.45 );
	transition: transform 300ms ease, box-shadow 300ms ease, background-color 300ms ease, border-color 300ms ease;
}

.sla-shop-cta__cta:hover,
.sla-shop-cta__cta:focus-visible {
	background: var( --sla-antique-gold );
	border-color: var( --sla-antique-gold );
	transform: translateY( -2px );
}

.sla-shop-cta__cta:focus-visible {
	outline: 2px solid var( --sla-light-gold );
	outline-offset: 3px;
}

.sla-shop-cta__cta svg {
	width: 14px;
	height: 14px;
	transition: transform 300ms ease;
}

.sla-shop-cta__cta:hover svg {
	transform: translateX( 5px );
}

@media ( max-width: 480px ) {
	.sla-shop-cta {
		min-height: clamp( 200px, 55vw, 280px );
	}
}

/* -----------------------------------------------------------------------
 * Scroll-reveal.
 * --------------------------------------------------------------------- */
.sla-js [data-sla-reveal-item] {
	opacity: 0;
	transform: translateY( 18px );
	transition: opacity 650ms ease, transform 650ms ease;
	transition-delay: var( --sla-reveal-delay, 0ms );
}

.sla-js .sla-shop-cta.is-revealed [data-sla-reveal-item] {
	opacity: 1;
	transform: translateY( 0 );
}

@media ( prefers-reduced-motion: reduce ) {
	.sla-js .sla-shop-cta [data-sla-reveal-item] {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.sla-shop-cta__cta,
	.sla-shop-cta__cta svg {
		transition: none;
	}
}
