The Deals ad card is gone. Its spot now holds the Mix & Match price breaks: at the right-hand end of the banner on desktop, full width under the intro on tablet and mobile.
Set in the theme's Proxima Nova. Links and search inside the frames are switched off.
HTML and CSS for the pricing box. Prices are in the three list rows. The last CSS block is only needed where the box replaces the ad card inside the collection banner.
<!-- Mix & Match pricing: element code
HTML + CSS for the pricing box. Prices live in the three <li> rows.
Colours use the theme's tokens where they exist, with fallbacks. -->
<aside class="mm-offer" aria-label="Mix and match pricing">
<span class="mm-offer__badge">Mix & Match Pricing</span>
<ul class="mm-offer__tiers">
<li class="mm-offer__tier"><span class="mm-offer__qty">Buy 5+</span><span class="mm-offer__sr">: </span><span class="mm-offer__price">£2.00 <span class="mm-offer__unit">each</span></span></li>
<li class="mm-offer__tier"><span class="mm-offer__qty">Buy 10+</span><span class="mm-offer__sr">: </span><span class="mm-offer__price">£1.90 <span class="mm-offer__unit">each</span></span></li>
<li class="mm-offer__tier"><span class="mm-offer__qty">Buy 20+</span><span class="mm-offer__sr">: </span><span class="mm-offer__price">£1.80 <span class="mm-offer__unit">each</span></span></li>
</ul>
</aside>
<style>
.mm-offer {
--mm-tint: #fdf0f7;
--mm-stroke: #f5a3cf;
--mm-pink: var(--badge-text-color-secondary, #dd2590);
--mm-ground: var(--color-extra-grey-light, #fafafa); /* colour of the section behind the box */
position: relative;
box-sizing: border-box;
width: 100%;
margin-top: 30px;
padding: 22px 10px 10px;
background: var(--mm-tint);
border: 1.5px solid var(--mm-stroke);
border-radius: 14px;
box-shadow: 0 10px 22px -14px rgba(221, 37, 144, .5);
color: var(--color-charcoal, #414651);
font-family: inherit;
}
/* Pill notched into the top edge. The 5px transparent border is a halo
(--mm-ground above the outline, box tint below) so the outline stops either side. */
.mm-offer__badge {
position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%);
padding: 6px 14px;
border: 5px solid transparent;
border-radius: 999px;
background:
linear-gradient(var(--mm-pink), var(--mm-pink)) padding-box,
linear-gradient(var(--mm-ground) 50%, var(--mm-tint) 50%) border-box;
color: #fff;
font-size: 12px; font-weight: 700; line-height: 14px; letter-spacing: .04em;
text-transform: uppercase; white-space: nowrap;
}
.mm-offer__tiers { display: flex; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mm-offer__tier {
display: flex; flex: 1 1 0; flex-direction: column; align-items: center;
min-width: 0; padding: 8px 4px 9px;
background: #fff; border: 1px solid #f9d2e6; border-radius: 10px;
text-align: center; white-space: nowrap;
}
.mm-offer__qty { font-size: 13px; font-weight: 700; line-height: 18px; letter-spacing: .03em; text-transform: uppercase; }
.mm-offer__price { margin-top: 2px; font-size: 23px; font-weight: 700; line-height: 26px; letter-spacing: -.01em; color: var(--color-purple-light, #6700c2); font-variant-numeric: lining-nums tabular-nums; }
.mm-offer__unit { display: block; margin-top: 1px; font-size: 12px; font-weight: 500; line-height: 14px; letter-spacing: 0; color: var(--color-muted, #695b77); }
.mm-offer__sr {
position: absolute !important; width: 1px; height: 1px; margin: -1px;
overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}
@media screen and (min-width: 768px) {
.mm-offer { margin-top: 34px; padding: 24px 12px 12px; }
.mm-offer__tier { min-width: 104px; padding: 10px 14px; }
.mm-offer__qty { font-size: 14px; }
.mm-offer__price { font-size: 26px; line-height: 30px; }
.mm-offer__unit { font-size: 13px; line-height: 16px; }
}
@media screen and (min-width: 1024px) {
.mm-offer { width: max-content; max-width: 100%; }
}
/* Banner placement: only needed when the box replaces the ad card inside the
collection banner (banner_collection_v2). Desktop: right-hand end. Tablet + mobile: full width under the intro. */
.banner-collection-v2--container { flex-wrap: wrap; }
.banner-collection-v2--content { flex: 1 1 auto; min-width: 0; }
.banner-collection-v2--container > .mm-offer { flex: 1 1 100%; }
@media screen and (min-width: 768px) {
.banner-collection-v2--container { row-gap: 0; }
.banner-collection-v2--description { max-width: 54rem; }
}
@media screen and (min-width: 1024px) {
.banner-collection-v2--container { flex-wrap: nowrap; }
/* top: 6px nudges down half the pill overhang so pill + box sit optically centred */
.banner-collection-v2--container > .mm-offer { flex: none; top: 6px; margin: auto 0 auto auto; }
}
</style>