/* =========================================================================
   Sabr Promo Banner — front-end styles
   Theme tokens (--maxw, --gold, --sans) are used when the active theme
   defines them, with sane fallbacks so the banner stands alone.
   Override --sabrpb-strip-bg to match a lighter header.
   ========================================================================= */
.sabrpb-bn {
	font-family: "Baloo Da 2", "Hind Siliguri", "Noto Sans Bengali", var(--sans, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
}

.sabrpb-strip {
	background: var(--sabrpb-strip-bg, #0b0b0c);
	padding: 32px 16px 16px;
}

.sabrpb-banner {
	position: relative;
	display: flex;
	align-items: center;
	gap: 24px;
	width: 100%;
	max-width: var(--maxw, 1180px);
	margin: 0 auto;
	padding: 26px 34px 24px;
	border-radius: 54px;
	color: #14140f;
	background: linear-gradient(180deg, #fdf6e2 0%, #f8ebc9 100%);
	box-shadow: 0 14px 34px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255, 255, 255, .85);
	transition: transform .25s ease, box-shadow .25s ease;
}
.sabrpb-banner:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 42px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .85);
}
.sabrpb-banner:focus-visible { outline: 3px solid var(--gold, #c6a15b); outline-offset: 4px; }

/* ---- "LIMITED TIME OFFER" pill, straddling the top edge ---- */
.sabrpb-badge {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -52%);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 22px;
	border-radius: 999px;
	background: linear-gradient(180deg, #e0242b 0%, #a9111a 100%);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: .07em;
	white-space: nowrap;
	box-shadow: 0 6px 16px rgba(169, 17, 26, .45);
}
.sabrpb-badge-ico { flex: 0 0 auto; }

/* ---- Truck ---- */
.sabrpb-truck { flex: 0 0 auto; }
.sabrpb-truck svg { display: block; }

/* ---- Headline ---- */
.sabrpb-text {
	position: relative;
	flex: 0 1 auto;
	margin-right: auto;
	min-width: 0;
	font-size: clamp(21px, 2.5vw, 40px);
	font-weight: 800;
	line-height: 1.3;
}
.sabrpb-accent { color: #b8852a; white-space: nowrap; }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.sabrpb-accent {
		background: linear-gradient(178deg, #f2d98d 0%, #c9972f 52%, #8f6416 100%);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
	}
}
.sabrpb-swoosh {
	position: absolute;
	right: 0;
	bottom: -11px;
	width: 62%;
	height: 22px;
	pointer-events: none;
}

/* ---- Countdown ---- */
.sabrpb-timer {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding-left: 26px;
	border-left: 2px solid rgba(180, 140, 60, .28);
}
.sabrpb-urgent {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #d4232a;
	font-size: 17px;
	font-weight: 700;
	white-space: nowrap;
}
.sabrpb-urgent svg { flex: 0 0 auto; animation: sabrpb-tick 2s ease-in-out infinite; }
.sabrpb-clock { display: flex; align-items: center; gap: 6px; }
.sabrpb-unit {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 74px;
	padding: 7px 10px 6px;
	border-radius: 15px;
	background: linear-gradient(180deg, #26241f 0%, #0c0c0b 100%);
	box-shadow: 0 5px 12px rgba(0, 0, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .14);
}
.sabrpb-num {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.05;
	color: #fff;
	font-variant-numeric: tabular-nums;
}
.sabrpb-lbl { font-size: 12px; line-height: 1.35; color: #d8c391; }
.sabrpb-sep { font-size: 26px; font-weight: 700; color: #1c1a16; }

@keyframes sabrpb-tick {
	0%, 100% { opacity: 1; transform: rotate(0deg); }
	50%      { opacity: .55; transform: rotate(-9deg); }
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
	.sabrpb-banner { gap: 18px; padding: 24px 26px 22px; }
	.sabrpb-truck svg { width: 84px; height: 42px; }
	.sabrpb-unit { min-width: 64px; }
	.sabrpb-num { font-size: 26px; }
	.sabrpb-timer { padding-left: 18px; }
}

@media (max-width: 900px) {
	.sabrpb-strip { padding: 30px 14px 14px; }
	.sabrpb-banner {
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
		border-radius: 30px;
		padding: 26px 20px 20px;
		gap: 14px;
	}
	.sabrpb-text { flex: 0 1 auto; margin-right: 0; text-align: left; }
	.sabrpb-timer {
		width: 100%;
		padding: 14px 0 0;
		border-left: 0;
		border-top: 2px solid rgba(180, 140, 60, .28);
	}
}

@media (max-width: 560px) {
	.sabrpb-badge { font-size: 12px; padding: 7px 16px; gap: 6px; }
	.sabrpb-badge-ico { width: 14px; height: 14px; }
	.sabrpb-truck svg { width: 62px; height: 31px; }
	.sabrpb-text { font-size: 19px; }
	.sabrpb-swoosh { bottom: -7px; height: 14px; }
	.sabrpb-urgent { font-size: 14px; }
	.sabrpb-unit { min-width: 56px; border-radius: 12px; padding: 6px 8px 5px; }
	.sabrpb-num { font-size: 22px; }
	.sabrpb-lbl { font-size: 10px; }
	.sabrpb-sep { font-size: 20px; }
}

@media (max-width: 380px) {
	.sabrpb-banner { gap: 10px; padding: 24px 14px 18px; }
	.sabrpb-text { font-size: 17px; }
	.sabrpb-unit { min-width: 50px; }
	.sabrpb-num { font-size: 19px; }
	.sabrpb-clock { gap: 4px; }
}

@media (prefers-reduced-motion: reduce) {
	.sabrpb-banner, .sabrpb-urgent svg { transition: none; animation: none; }
	.sabrpb-banner:hover { transform: none; }
}
