Box and text shadows from neumorphism and glass to neon, fire and retro lettering.
1Layered Shadows
Five stacked, increasingly soft shadows give cards a realistic elevation that deepens on hover. Class: fx-layered-shadows
Ticketing
The venue is a short walk from the station and fully accessible.
<div class="d-flex flex-wrap align-items-center justify-content-center gap-3 p-3 h-100" style="min-height:200px">
<div class="card border-0 fx-layered-shadows" style="width:13rem">
<div class="card-body">
<div class="text-primary fs-4 mb-1">
<i class="bi bi-layers-fill" aria-hidden="true"></i>
</div>
<h3 class="h6 mb-1">Ticketing</h3>
<p class="small text-body-secondary mb-0">The venue is a short walk from the station and fully accessible.</p>
</div>
</div>
</div>
/* CSS (already in assets/css/effects.css) */
.fx-layered-shadows {
box-shadow: 0 1px 1px rgba(0, 0, 0, .06), 0 2px 2px rgba(0, 0, 0, .06), 0 4px 4px rgba(0, 0, 0, .06), 0 8px 8px rgba(0, 0, 0, .06), 0 16px 16px rgba(0, 0, 0, .06);
transition: box-shadow .4s ease, transform .4s ease;
}
.fx-layered-shadows:hover, .fx-layered-shadows:focus-within {
transform: translateY(-4px);
box-shadow: 0 2px 2px rgba(0, 0, 0, .07), 0 4px 4px rgba(0, 0, 0, .07), 0 8px 8px rgba(0, 0, 0, .07), 0 16px 16px rgba(0, 0, 0, .07), 0 32px 32px rgba(0, 0, 0, .07);
}
@media (prefers-reduced-motion: reduce) {
.fx-layered-shadows, .fx-layered-shadows::before, .fx-layered-shadows::after, .fx-layered-shadows *, .fx-layered-shadows *::before, .fx-layered-shadows *::after { animation: none !important; transition: none !important; }
}2Soft Glow
A gentle breathing halo in the primary colour that makes a card or avatar feel highlighted. Class: fx-soft-glow
Recommended
Venue booking
<div class="d-flex flex-wrap align-items-center justify-content-center gap-3 p-3 h-100" style="min-height:200px">
<img src="../assets/img/avatar-10.svg" alt="Featured member" class="fx-soft-glow rounded-circle" style="width:80px;height:80px">
<div class="card border-0 fx-soft-glow" style="width:11rem">
<div class="card-body text-center">
<div class="small text-body-secondary">
Recommended
</div>
<div class="fw-bold">
Venue booking
</div>
</div>
</div>
</div>
/* CSS (already in assets/css/effects.css) */
.fx-soft-glow { box-shadow: 0 0 24px rgba(var(--wt-primary-rgb), .22); animation: fx-soft-glow-breathe 4s ease-in-out infinite; }
@keyframes fx-soft-glow-breathe { 50% { box-shadow: 0 0 44px rgba(var(--wt-primary-rgb), .42); } }
@media (prefers-reduced-motion: reduce) {
.fx-soft-glow, .fx-soft-glow::before, .fx-soft-glow::after, .fx-soft-glow *, .fx-soft-glow *::before, .fx-soft-glow *::after { animation: none !important; transition: none !important; }
}