<style>
/* ================== OVERLAY WRAPPER ================== */
#delivery-overlay {
position: fixed;
right: 24px;
bottom: 24px;
width: 100%;
max-width: 36rem;
z-index: 9999;
opacity: 0;
pointer-events: none;
transition: opacity 0.3s ease;
font-family: inherit;
}
#delivery-overlay {
z-index: 10;
}
/* ================== CARD ================== */
#delivery-overlay .card {
position: relative;
display: flex;
gap: 16px;
padding: 16px 40px 16px 16px;
border-radius: 16px;
background: rgba(255,255,255,0.9);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid #e5e7eb;
box-shadow: 0 20px 40px rgba(0,0,0,.15);
overflow: hidden;
}
/* decorative blur */
#delivery-overlay .blur-bg {
position: absolute;
top: -40px;
right: -40px;
width: 96px;
height: 96px;
background: rgba(59,130,246,0.12);
border-radius: 50%;
filter: blur(32px);
pointer-events: none;
}
/* ================== ICON ================== */
#delivery-overlay .icon-wrap {
flex-shrink: 0;
background: #dbeafe;
color: #2563eb;
padding: 10px;
border-radius: 999px;
}
/* ================== TEXT ================== */
#delivery-overlay .content {
display: flex;
flex-direction: column;
gap: 6px;
}
#delivery-overlay h3 {
margin: 0;
font-size: 1.4rem;
font-weight: 700;
color: #111827;
display: flex;
align-items: center;
gap: 8px;
}
#delivery-overlay p {
margin: 0;
font-size: 1.4rem;
color: #4b5563;
line-height: 1.4;
}
#delivery-overlay .bold {
font-weight: 700;
color: #111827;
}
/* badge */
#delivery-overlay .badge {
font-size: 10px;
font-weight: 700;
background: #2563eb;
color: #fff;
padding: 2px 6px 0;
border-radius: 999px;
text-transform: uppercase;
letter-spacing: .08em;
}
/* timer row */
#delivery-overlay .timer {
display: flex;
align-items: center;
gap: 6px;
margin-top: 4px;
font-size: 1rem;
color: #6b7280;
}
/* ================== CLOSE BUTTON ================== */
#delivery-overlay .close-btn {
position: absolute;
top: 8px;
right: 8px;
width: 28px;
height: 28px;
border-radius: 999px;
border: none;
background: transparent;
cursor: pointer;
color: #9ca3af;
display: flex;
align-items: center;
justify-content: center;
}
#delivery-overlay .close-btn:hover {
background: #f3f4f6;
color: #4b5563;
}
/* ================== ANIMATIONS ================== */
@keyframes slideIn {
from { transform: translateX(100%); opacity: 0; }
to { transform: translateX(0); opacity: 1; }
}
@keyframes fadeOut {
from { opacity: 1; }
to { opacity: 0; }
}
#delivery-overlay.show {
opacity: 1;
pointer-events: auto;
}
#delivery-overlay.slide-in {
animation: slideIn .5s cubic-bezier(.16,1,.3,1) forwards;
}
#delivery-overlay.fade-out {
animation: fadeOut .3s ease forwards;
}
/* ================== MOBILE ================== */
@media (max-width: 480px) {
#delivery-overlay {
right: 12px;
left: 12px;
max-width: none;
}
}
</style>
<!-- ================== HTML ================== -->
<div id="delivery-overlay">
<div class="card">
<div class="blur-bg"></div>
<div class="icon-wrap">
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2"/>
<path d="M15 18H9"/>
<path d="M19 18h2a1 1 0 0 0 1-1v-5l-4-4h-3v10a1 1 0 0 0 1 1Z"/>
<circle cx="7" cy="18" r="2"/>
<circle cx="17" cy="18" r="2"/>
</svg>
</div>
<div class="content">
<h3>
Fast Delivery
<span class="badge">Next Day</span>
</h3>
<p>
All orders placed before <span class="bold">5:00 PM</span> are delivered Next Day.
</p>
<div class="timer" style="display: none;">
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<circle cx="12" cy="12" r="10"/>
<polyline points="12 6 12 12 16 14"/>
</svg>
<span id="delivery-timer">Time remaining: --h --m --s</span>
</div>
</div>
</div>
</a>
<button class="close-btn" id="close-overlay" aria-label="Close">
<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M18 6 6 18"/>
<path d="m6 6 12 12"/>
</svg>
</button>
</div>
<script>
document.addEventListener("DOMContentLoaded", function () {
const overlay = document.getElementById('delivery-overlay');
const closeBtn = document.getElementById('close-overlay');
const timerEl = document.getElementById('delivery-timer');
if (!overlay || !closeBtn || !timerEl) return;
// -------- show overlay --------
setTimeout(() => {
overlay.classList.add('show', 'slide-in');
}, 1500);
closeBtn.addEventListener('click', () => {
overlay.classList.remove('slide-in');
overlay.classList.add('fade-out');
setTimeout(() => overlay.style.display = 'none', 300);
});
// -------- UK TIME COUNTDOWN --------
function getUKNow() {
const parts = new Intl.DateTimeFormat('en-GB', {
timeZone: 'Europe/London',
year: 'numeric', month: 'numeric', day: 'numeric',
hour: 'numeric', minute: 'numeric', second: 'numeric',
hour12: false
}).formatToParts(new Date());
const g = t => parts.find(p => p.type === t).value;
return new Date(g('year'), g('month') - 1, g('day'), g('hour'), g('minute'), g('second'));
}
function updateTimer() {
const now = getUKNow();
const cutoff = new Date(now);
cutoff.setHours(17, 30, 0, 0); // 5:30 PM UK
if (now >= cutoff) cutoff.setDate(cutoff.getDate() + 1);
const diff = cutoff - now;
if (diff <= 0) return;
const s = Math.floor(diff / 1000);
const h = Math.floor(s / 3600);
const m = Math.floor((s % 3600) / 60);
const sec = s % 60;
timerEl.textContent =
`Time remaining: ${String(h).padStart(2,'0')}h ` +
`${String(m).padStart(2,'0')}m ` +
`${String(sec).padStart(2,'0')}s`;
}
updateTimer();
setInterval(updateTimer, 1000);
});
</script>
BFRM70ML-3
In stock
Only 1 left
Beauty Formulas Retinol Moisturiser 75ml - Pack of 3
Special Price
£4.16
Regular Price
£5.02
ORDER WITHIN:
FREE DELIVERY OVER £29.99
Only applicable to Mainland UK
DESCRIPTION
Beauty Formulas Retinol Moisturiser helps rejuvenate skin by combining daily hydration with retinol’s skin‑renewing properties. Its lightweight, fast‑absorbing formula reduces the appearance of fine lines and promotes smoother, softer skin with continued use. The moisturiser nourishes and revitalises, helping maintain a fresh, youthful complexion. Ideal for regular nighttime skincare routines, this 75 ml moisturiser is suitable for most skin types seeking gentle yet effective anti‑ageing care. With consistent use, it helps improve skin texture, firmness, and overall radiance.
BENEFITS
- Anti-aging, Hydrating, Skin renewal
- Reduces the appearance of fine lines and wrinkles.
- Promotes smoother, firmer-looking skin.
- Deeply moisturizes for a soft, supple feel.
- Enriched with Retinol for effective skin rejuvenation.
DIRECTIONS
Apply to clean face and neck daily.
WARNINGS
Avoid use if irritation occurs; retinol increases sun sensitivity—use SPF daily and discontinue if redness or discomfort develops
Manufacturer Information
Beauty Formulas
| EAN | 5012251013437 |
|---|---|
| Formulation | Cream |
| Number of items | 3 |
| Pack of | Pack of 3 |
| Size | 75ml |
| Brand | Beauty Formulas |
| Ingredients | Aqua (Water), Glycerin, Caprylic/Capric Triglyceride, Retinol, Cetearyl Alcohol, Dimethicone, Stearic Acid, Cetyl Alcohol, Tocopheryl Acetate (Vitamin E), Phenoxyethanol, Carbomer, Sodium Hydroxide, Parfum (Fragrance), Ethylhexylglycerin. |
| Department | Skincare |
| Unit Type | ml |
| Period After Opening (PAO) | 12 Months |
| Skin Type | All |
| Body Area | Face |
| Product Line | Retinol |
| Features | Anti-aging, Hydrating, Skin renewal |
| Safety Warning | Avoid use if irritation occurs; retinol increases sun sensitivity—use SPF daily and discontinue if redness or discomfort develops |
| Main Purpose | Anti-aging |
| Instructions for Use | Apply to clean face and neck daily. |
Write Your Own Review
<div class="element products-slider see-also-div" style="max-width: 1440px; margin: auto;">
</div>





