/* Diwali footer: a row of flickering diyas (oil lamps) and a greeting. Pure CSS, no images. */
.dv-wrap { background: linear-gradient(180deg, #3b0a2a 0%, #111827 100%); border-bottom: 1px solid #4b1d3f; padding: 22px 0 16px; text-align: center; overflow: hidden; }
.dv-strip { display: flex; justify-content: space-around; align-items: flex-end; max-width: 72rem; margin: 0 auto; padding: 0 16px; }
.dv-diya { position: relative; display: inline-block; width: 46px; height: 46px; }
.dv-bowl { position: absolute; left: 0; bottom: 0; width: 46px; height: 18px; border-radius: 3px 3px 46px 46px / 3px 3px 18px 18px;
    background: linear-gradient(#f9c74f, #b45309); box-shadow: inset 0 2px 0 rgba(255, 255, 255, .3), 0 4px 10px rgba(0, 0, 0, .55); }
.dv-bowl::before { content: ""; position: absolute; left: 4px; right: 4px; top: 2px; height: 5px; border-radius: 50%; background: #7c2d12; opacity: .85; }
.dv-wick { position: absolute; left: 50%; bottom: 15px; width: 3px; height: 7px; margin-left: -1.5px; border-radius: 2px; background: #2a1205; }
.dv-flame { position: absolute; left: 50%; bottom: 20px; width: 12px; height: 23px; margin-left: -6px; transform-origin: 50% 92%;
    border-radius: 50% 50% 50% 50% / 62% 62% 38% 38%;
    background: radial-gradient(ellipse at 50% 78%, #fff6c2 0%, #ffd24a 35%, #ff8a00 75%, rgba(255, 60, 0, .25) 100%);
    box-shadow: 0 0 14px 6px rgba(255, 170, 0, .55), 0 0 34px 14px rgba(255, 120, 0, .25);
    animation: dv-flicker 1.4s ease-in-out infinite; }
.dv-diya:nth-child(2n) .dv-flame { animation-duration: 1.1s; animation-delay: -.4s; }
.dv-diya:nth-child(3n) .dv-flame { animation-duration: 1.7s; animation-delay: -.9s; }
@keyframes dv-flicker {
    0%, 100% { transform: scale(1, 1) skewX(0); opacity: 1; }
    20% { transform: scale(.92, 1.08) skewX(-3deg); opacity: .92; }
    45% { transform: scale(1.06, .94) skewX(2deg); opacity: 1; }
    70% { transform: scale(.95, 1.06) skewX(-2deg); opacity: .94; }
}
.dv-greeting { margin: 14px 16px 0; color: #fcd34d; font-weight: 700; font-size: 15px; letter-spacing: .02em; }
.dv-sub { display: block; margin-top: 2px; color: #fbcfe8; font-size: 12px; font-weight: 400; }
@media (max-width: 640px) { .dv-diya:nth-child(n+6) { display: none; } }
@media (prefers-reduced-motion: reduce) { .dv-flame { animation: none; } }
