/* Holiday 2026 decorations for the homepage + gift voucher page.
   Loaded by js/holiday.js only while the season is on (it turns itself off after Dec 25, 2026). */

/* string lights across the hero */
.hol-lights { position: absolute; left: 0; top: 70px; width: 100%; height: 70px; z-index: 12; pointer-events: none; }
.hol-lights svg { position: absolute; left: 0; top: 0; overflow: visible; }
.hol-bulb { position: absolute; width: 13px; height: 19px; margin-left: -6.5px; border-radius: 50% 50% 46% 46% / 62% 62% 38% 38%;
  background: var(--c); border: 2px solid #000; transform-origin: 50% -6px; animation: holBlink 2.6s ease-in-out infinite; }
.hol-bulb::before { content: ''; position: absolute; top: -8px; left: 1.5px; width: 6px; height: 7px; background: #111; border-radius: 2px; }
@keyframes holBlink { 0%, 100% { box-shadow: 0 0 14px 4px var(--c); filter: brightness(1.05); } 50% { box-shadow: 0 0 2px 0 var(--c); filter: brightness(.6); } }

/* snow over the hero */
.hol-snow { position: absolute; inset: 0; pointer-events: none; z-index: 6; overflow: hidden; }
.hol-flake { position: absolute; top: -16px; background: #fff; border-radius: 50%; box-shadow: 0 0 0 1.5px rgba(0,0,0,.6);
  animation: holFall linear infinite; }
@keyframes holFall { to { transform: translate(var(--dx), calc(100vh + 40px)); } }

/* Santa hats on the flying turkeys + toast */
.hol-hatwrap img { width: 100% !important; display: block; position: static !important; animation: none !important; }
.hol-hat { position: absolute; pointer-events: none; }

/* "Give it as a gift" button under Visit! */
.hol-gift-btn { display: inline-block; font-family: var(--header-font); font-weight: 700; font-size: clamp(1.8rem, 5vw, 2.4rem);
  padding: .55rem 1.6rem; border-radius: 8px; background: #fece00; color: #000 !important; border: 3px solid #000;
  text-decoration: none; transform: rotate(-2deg); box-shadow: 0 6px 24px rgba(0,0,0,.35); transition: transform .25s; position: relative; z-index: 10; }
.hol-gift-btn:hover { transform: rotate(1deg) scale(1.05); opacity: 1; }

@media (prefers-reduced-motion: reduce) {
  .hol-flake { display: none; }
  .hol-bulb { animation: none; box-shadow: 0 0 10px 3px var(--c); }
}
