.az-sale-campaign-banner,
.az-sale-campaign-banner *,
.az-sale-page,
.az-sale-page * {
	box-sizing: border-box;
}

.az-sale-campaign-banner {
	position: relative;
	width: 100%;
	overflow: hidden;
	color: #f4f1e8;
	background:
		radial-gradient(circle at 14% 12%, rgba(211, 166, 59, 0.2), transparent 28%),
		radial-gradient(circle at 88% 20%, rgba(168, 22, 22, 0.28), transparent 26%),
		linear-gradient(135deg, #050505 0%, #121212 52%, #070707 100%);
	border-top: 1px solid rgba(199, 154, 43, 0.24);
	border-bottom: 1px solid rgba(199, 154, 43, 0.34);
	isolation: isolate;
}

.az-sale-campaign-banner.has-desktop-image {
	background:
		linear-gradient(90deg, rgba(5, 5, 5, 0.96) 0%, rgba(8, 8, 8, 0.78) 48%, rgba(5, 5, 5, 0.34) 100%),
		var(--az-sale-bg-desktop) center / cover no-repeat,
		#050505;
}

.az-sale-campaign-banner::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(120deg, rgba(255, 255, 255, 0.08), transparent 28%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0, rgba(255, 255, 255, 0.035) 1px, transparent 1px, transparent 72px);
	opacity: 0.5;
	pointer-events: none;
	z-index: -1;
}

.az-sale-campaign-banner__inner {
	width: min(1480px, 100%);
	min-height: clamp(70px, 6vw, 104px);
	margin: 0 auto;
	padding: clamp(9px, 1.2vw, 14px) clamp(14px, 3vw, 42px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(10px, 2vw, 22px);
}

.az-sale-campaign-banner__copy {
	min-width: 0;
}

.az-sale-campaign-banner__eyebrow {
	margin: 0 0 3px;
	color: #d3a63b;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.14em;
	line-height: 1;
	text-transform: uppercase;
}

.az-sale-campaign-banner h2 {
	margin: 0;
	max-width: 12ch;
	color: #fff8ec;
	font-family: var(--aa-font-heading, Impact, Anton, Oswald, "Arial Black", sans-serif);
	font-size: clamp(24px, 2.8vw, 42px);
	line-height: 0.88;
	letter-spacing: 0.015em;
	text-transform: uppercase;
	text-shadow: 0 8px 28px rgba(0, 0, 0, 0.62);
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.az-sale-campaign-banner__subheading {
	margin: 4px 0 0;
	max-width: 58ch;
	color: rgba(244, 241, 232, 0.88);
	font-size: clamp(11px, 0.78vw, 13px);
	font-weight: 600;
	line-height: 1.2;
}

.az-sale-campaign-banner__offer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	min-width: min(100%, 290px);
}

.az-sale-campaign-banner__coupon {
	display: grid;
	gap: 2px;
	min-width: 118px;
	padding: 7px 9px;
	border-radius: 9px;
	background: rgba(255, 255, 255, 0.95);
	color: #050505;
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.28);
	border: 1px solid rgba(211, 166, 59, 0.82);
}

.az-sale-campaign-banner__coupon span {
	font-size: 8px;
	font-weight: 900;
	letter-spacing: 0.12em;
	line-height: 1;
	text-transform: uppercase;
	color: rgba(5, 5, 5, 0.64);
}

.az-sale-campaign-banner__coupon strong {
	font-family: var(--aa-font-heading, Impact, Anton, Oswald, "Arial Black", sans-serif);
	font-size: clamp(15px, 1.15vw, 21px);
	line-height: 0.9;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.az-sale-campaign-banner__button,
.az-sale-page-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 14px;
	border-radius: 6px;
	background: linear-gradient(180deg, #d3a63b, #a87b1d);
	color: #050505;
	text-decoration: none;
	font-size: 10px;
	font-weight: 950;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.32), 0 0 18px rgba(199, 154, 43, 0.16);
	transition: transform 0.24s ease, filter 0.24s ease, box-shadow 0.24s ease;
}

.az-sale-campaign-banner__button:hover,
.az-sale-campaign-banner__button:focus-visible,
.az-sale-page-hero__button:hover,
.az-sale-page-hero__button:focus-visible {
	transform: translateY(-2px);
	filter: brightness(1.08);
	color: #050505;
	outline: 2px solid rgba(244, 241, 232, 0.72);
	outline-offset: 3px;
}

.az-sale-page {
	background: #050505;
	color: #f4f1e8;
}

.az-sale-page-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	padding: clamp(56px, 7vw, 110px) clamp(16px, 4vw, 72px);
	background:
		radial-gradient(circle at 14% 16%, rgba(211, 166, 59, 0.24), transparent 28%),
		radial-gradient(circle at 92% 20%, rgba(168, 22, 22, 0.34), transparent 28%),
		linear-gradient(135deg, #050505, #161616 56%, #070707);
	border-bottom: 1px solid rgba(199, 154, 43, 0.28);
}

.az-sale-page-hero.has-desktop-image {
	background:
		linear-gradient(90deg, rgba(5, 5, 5, 0.96) 0%, rgba(8, 8, 8, 0.82) 52%, rgba(5, 5, 5, 0.36) 100%),
		var(--az-sale-bg-desktop) center / cover no-repeat,
		#050505;
}

.az-sale-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(120deg, rgba(255, 255, 255, 0.08), transparent 26%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0, rgba(255, 255, 255, 0.028) 1px, transparent 1px, transparent 78px);
	opacity: 0.55;
	pointer-events: none;
	z-index: -1;
}

.az-sale-page-hero__inner {
	width: min(1280px, 100%);
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 0.98fr) minmax(280px, 0.52fr);
	align-items: center;
	gap: clamp(28px, 5vw, 76px);
}

.az-sale-page-hero__eyebrow,
.az-sale-page-products .aa-eyebrow,
.az-sale-page-copy__eyebrow {
	margin: 0 0 10px;
	color: #d3a63b;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.14em;
	line-height: 1;
	text-transform: uppercase;
}

.az-sale-page-hero h1 {
	margin: 0;
	max-width: 11ch;
	font-family: var(--aa-font-heading, Impact, Anton, Oswald, "Arial Black", sans-serif);
	font-size: clamp(62px, 8vw, 132px);
	line-height: 0.84;
	letter-spacing: 0.012em;
	text-transform: uppercase;
	text-shadow: 0 10px 34px rgba(0, 0, 0, 0.62);
}

.az-sale-page-hero__intro {
	max-width: 62ch;
	margin: 18px 0 0;
	color: rgba(244, 241, 232, 0.9);
	font-size: clamp(17px, 1.3vw, 22px);
	font-weight: 650;
	line-height: 1.48;
}

.az-sale-page-hero__deal-card {
	display: grid;
	gap: 16px;
	padding: clamp(22px, 3vw, 34px);
	border-radius: 18px;
	background: rgba(5, 5, 5, 0.82);
	border: 1px solid rgba(199, 154, 43, 0.38);
	box-shadow: 0 24px 58px rgba(0, 0, 0, 0.42), 0 0 24px rgba(199, 154, 43, 0.1);
	backdrop-filter: blur(4px);
}

.az-sale-page-hero__coupon-label {
	margin: 0;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #d3a63b;
}

.az-sale-page-hero__coupon-code {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	padding: 12px 16px;
	border-radius: 10px;
	background: #f4f1e8;
	color: #050505;
	font-family: var(--aa-font-heading, Impact, Anton, Oswald, "Arial Black", sans-serif);
	font-size: clamp(34px, 4vw, 62px);
	line-height: 0.9;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.32);
}

.az-sale-page-hero__terms {
	margin: 0;
	color: rgba(244, 241, 232, 0.76);
	font-size: 14px;
	line-height: 1.5;
}

.az-sale-page-products {
	background: #050505;
}

.az-sale-page-products__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: clamp(22px, 3vw, 36px);
}

.az-sale-page-products__header h2 {
	margin: 0;
	font-family: var(--aa-font-heading, Impact, Anton, Oswald, "Arial Black", sans-serif);
	font-size: clamp(38px, 5vw, 82px);
	line-height: 0.9;
	letter-spacing: 0.015em;
	text-transform: uppercase;
}

.az-sale-page-products__header p:last-child {
	max-width: 58ch;
	margin: 10px 0 0;
	color: rgba(244, 241, 232, 0.76);
	font-size: 16px;
	line-height: 1.55;
}

.az-sale-page-empty,
.az-sale-page-copy__panel {
	padding: clamp(22px, 3vw, 36px);
	border-radius: 18px;
	border: 1px solid rgba(199, 154, 43, 0.18);
	background:
		linear-gradient(180deg, rgba(18, 24, 27, 0.92), rgba(9, 12, 14, 0.96)),
		radial-gradient(circle at top right, rgba(199, 154, 43, 0.08), transparent 30%);
	box-shadow: 0 22px 54px rgba(0, 0, 0, 0.28);
}

.az-sale-page-empty h2,
.az-sale-page-copy__panel h2 {
	margin-top: 0;
}

.az-sale-page-empty p,
.az-sale-page-copy__panel p,
.az-sale-page-copy__panel li {
	color: rgba(244, 241, 232, 0.78);
	line-height: 1.65;
}

.az-sale-page-copy {
	background: #050505;
}

.az-sale-page-copy__panel {
	max-width: 980px;
}

@media (max-width: 980px) {
	.az-sale-campaign-banner__inner,
	.az-sale-page-hero__inner {
		grid-template-columns: 1fr;
	}

	.az-sale-campaign-banner__offer {
		justify-content: flex-start;
		flex-wrap: wrap;
		min-width: 0;
	}

	.az-sale-page-hero h1 {
		max-width: 10ch;
	}
}

@media (max-width: 767px) {
	.az-sale-campaign-banner.has-mobile-image,
	.az-sale-page-hero.has-mobile-image {
		background:
			linear-gradient(180deg, rgba(5, 5, 5, 0.88) 0%, rgba(5, 5, 5, 0.78) 50%, rgba(5, 5, 5, 0.94) 100%),
			var(--az-sale-bg-mobile) center / cover no-repeat,
			#050505;
	}

	.az-sale-campaign-banner__inner {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: end;
		min-height: 0;
		padding: 7px 10px;
		gap: 6px;
	}

	.az-sale-campaign-banner h2 {
		font-size: clamp(18px, 6.7vw, 27px);
		line-height: 0.92;
		max-width: 8.2ch;
		-webkit-line-clamp: 3;
	}

	.az-sale-campaign-banner__subheading {
		display: none;
	}

	.az-sale-campaign-banner__offer {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-end;
		gap: 6px;
		width: auto;
	}

	.az-sale-campaign-banner__coupon,
	.az-sale-campaign-banner__button {
		width: auto;
		flex: 0 1 auto;
	}

	.az-sale-campaign-banner__button {
		min-height: 30px;
		padding: 0 10px;
		font-size: 9px;
	}

	.az-sale-campaign-banner__coupon {
		min-width: 0;
		padding: 6px 8px;
	}

	.az-sale-page-hero {
		padding: 42px 14px;
	}

	.az-sale-page-hero h1 {
		font-size: clamp(52px, 16vw, 82px);
	}

	.az-sale-page-hero__intro {
		font-size: 16px;
	}

	.az-sale-page-hero__deal-card {
		padding: 18px;
	}

	.az-sale-page-products__header {
		display: grid;
	}
}

@media (max-width: 420px) {
	.az-sale-campaign-banner__inner {
		padding: 7px 9px;
		gap: 5px;
	}

	.az-sale-campaign-banner h2 {
		font-size: clamp(17px, 6.3vw, 24px);
		max-width: 8.6ch;
	}
}

@media (prefers-reduced-motion: reduce) {
	.az-sale-campaign-banner__button,
	.az-sale-page-hero__button {
		transition: none !important;
	}
}
