/* Promo strip: compact, wide, animated offers carousel above the footer. slide = scroll-snap (swipeable), fade, marquee. */
.sz-promo{--h:var(--promo-h,120px);--gap:var(--promo-gap,10px);--r:var(--promo-r,18px);--n:1;
	position:relative;margin:22px 0 10px;container-type:inline-size;-webkit-tap-highlight-color:transparent}
.sz-promo[data-anim="marquee"]{--n:1.15}
.sz-promo-viewport{position:relative;border-radius:var(--r);overflow:hidden}
.sz-promo-track{display:flex;gap:var(--gap);margin:0;padding:0}
.sz-promo-slide{position:relative;flex:0 0 calc((100cqw - (var(--n) - 1) * var(--gap)) / var(--n));width:calc((100cqw - (var(--n) - 1) * var(--gap)) / var(--n));height:var(--h);overflow:hidden;border-radius:var(--r);background:#efefef}
.sz-promo-slide>a,.sz-promo-slide>img{display:block;width:100%;height:100%}
.sz-promo-slide img{display:block;width:100%;height:100%;object-fit:cover;max-width:none;border-radius:inherit}
.sz-promo-slide>a:focus-visible{outline:3px solid var(--pal-accent,var(--primary,#ff8a00));outline-offset:-3px;border-radius:inherit}
.sz-promo-txt{position:absolute;inset-inline:0;bottom:0;padding:22px 14px 9px;background:linear-gradient(transparent,rgba(0,0,0,.6));color:#fff;font-size:14px;font-weight:800;line-height:1.5;text-shadow:0 1px 2px rgba(0,0,0,.4);pointer-events:none}

/* slide: native scrolling with snap points, so a phone swipe just works (RTL aware) */
.sz-promo[data-anim="slide"] .sz-promo-viewport{overflow:visible}
.sz-promo[data-anim="slide"] .sz-promo-track{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:var(--r)}
.sz-promo[data-anim="slide"] .sz-promo-track::-webkit-scrollbar{display:none}
.sz-promo[data-anim="slide"] .sz-promo-slide{scroll-snap-align:start}

/* fade: slides stacked, one visible */
.sz-promo[data-anim="fade"] .sz-promo-track{display:grid;gap:0}
.sz-promo[data-anim="fade"] .sz-promo-slide{grid-area:1/1;width:100%;flex:none;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility 0s linear .7s}
.sz-promo[data-anim="fade"] .sz-promo-slide.is-active,.sz-promo[data-anim="fade"]:not(.is-ready) .sz-promo-slide:first-child{opacity:1;visibility:visible;transition:opacity .7s ease}

/* marquee: JS clones the slides once and sets --promo-dur; the track slides by exactly one set */
.sz-promo[data-anim="marquee"] .sz-promo-track{width:max-content;gap:var(--gap)}
.sz-promo.is-marquee .sz-promo-track{animation:sz-promo-ltr var(--promo-dur,40s) linear infinite}
:root[dir="rtl"] .sz-promo.is-marquee .sz-promo-track{animation-name:sz-promo-rtl}
.sz-promo.is-marquee.is-paused .sz-promo-track{animation-play-state:paused}
@keyframes sz-promo-ltr{to{transform:translateX(calc(-50% - var(--gap) / 2))}}
@keyframes sz-promo-rtl{to{transform:translateX(calc(50% + var(--gap) / 2))}}

/* dots */
.sz-promo-dots{display:flex;justify-content:center;gap:2px;margin-top:6px}
.sz-promo-dots button{position:relative;width:22px;height:22px;padding:0;border:0;background:none;cursor:pointer}
.sz-promo-dots button::before{content:"";position:absolute;inset:0;margin:auto;width:7px;height:7px;border-radius:99px;background:color-mix(in srgb,var(--pal-ink,#111) 22%,transparent);transition:width .3s,background-color .3s}
.sz-promo-dots button[aria-current="true"]::before{width:20px;background:var(--pal-accent,var(--primary,#ff8a00))}
.sz-promo-dots button:focus-visible{outline:2px solid var(--pal-ink,#111);outline-offset:-2px;border-radius:8px}

@media(min-width:900px){
	.sz-promo{--n:var(--promo-n,1);margin-top:30px}
	.sz-promo[data-anim="marquee"]{--n:var(--promo-n,1)}
	.sz-promo-slide{height:auto;aspect-ratio:var(--promo-ratio,6/1)}
	.sz-promo-txt{font-size:17px;padding:30px 20px 12px}
}
@media(prefers-reduced-motion:reduce){
	.sz-promo.is-marquee .sz-promo-track{animation:none}
	.sz-promo[data-anim="fade"] .sz-promo-slide,.sz-promo-dots button::before{transition:none}
}

/* ===== 0.9.4 · edge to edge: no white wedges at the sides, full-bleed on phones, phone picture sets the height ===== */
.sz-promo-slide picture{display:block;width:100%;height:100%}
.sz-promo-slide img{background:none}
body.pdp-layout-cod .sz-promo{--r:0px}
@media(max-width:700px){
	.sz-promo{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw);--r:0px}
	.sz-promo-viewport,.sz-promo[data-anim="slide"] .sz-promo-track{border-radius:0}
	.sz-promo-slide.has-m{height:auto}
	.sz-promo-slide.has-m picture,.sz-promo-slide.has-m>a{height:auto}
	.sz-promo-slide.has-m img{height:auto;aspect-ratio:1000/420}
}
@media(min-width:701px){.sz-promo{max-width:var(--promo-maxw,1400px);margin-inline:auto}}
/* 0.9.8 · sizes the manager sets in the dashboard */
.sz-promo-slide img{object-fit:var(--promo-fit,cover)}
@media(min-width:701px){.sz-promo.has-hd .sz-promo-slide{height:var(--promo-hd);aspect-ratio:auto}}
@media(max-width:700px){
	body .sz-promo.is-inset{width:var(--promo-wm,100%);max-width:var(--promo-wm,100%);margin-inline:auto;--r:var(--promo-r,18px)}
	.sz-promo.is-inset .sz-promo-viewport,.sz-promo.is-inset[data-anim="slide"] .sz-promo-track{border-radius:var(--promo-r,18px)}
}

