/* Thanksgiving / autumn theme for holiday pages (ev.theme == 'autumn').
   Pure CSS: two parallax layers of falling leaves, a slow photo zoom, rising hero text and a pulsing countdown chip.
   Everything is switched off under prefers-reduced-motion. */
.hx-hero--autumn::before, .hx-hero--autumn::after {
  content: ""; position: absolute; inset: -40px 0 0; z-index: -1; pointer-events: none; background-repeat: repeat;
  will-change: background-position;
}
.hx-hero--autumn::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='170'%3E%3Cg transform='translate%2840 50%29 rotate%2825%29 scale%281%29'%3E%3Cpath d='M0 -14C9 -8 11 4 0 14C-11 4 -9 -8 0 -14Z' fill='%23E9B340' fill-opacity='0.7'/%3E%3Cpath d='M0 -12V16' stroke='%237A3E0B' stroke-opacity='.35' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='230' height='210'%3E%3Cg transform='translate%28160 70%29 rotate%28-40%29 scale%280.9%29'%3E%3Cpath d='M0 -14C9 -8 11 4 0 14C-11 4 -9 -8 0 -14Z' fill='%23D9692A' fill-opacity='0.65'/%3E%3Cpath d='M0 -12V16' stroke='%237A3E0B' stroke-opacity='.35' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 150px 170px, 230px 210px;
  animation: hx-leaves-a 16s linear infinite;
}
.hx-hero--autumn::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='270' height='250'%3E%3Cg transform='translate%2890 90%29 rotate%2870%29 scale%281.1%29'%3E%3Cpath d='M0 -14C9 -8 11 4 0 14C-11 4 -9 -8 0 -14Z' fill='%23F2A33A' fill-opacity='0.55'/%3E%3Cpath d='M0 -12V16' stroke='%237A3E0B' stroke-opacity='.35' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='190' height='220'%3E%3Cg transform='translate%28120 120%29 rotate%28-15%29 scale%280.8%29'%3E%3Cpath d='M0 -14C9 -8 11 4 0 14C-11 4 -9 -8 0 -14Z' fill='%23B24A1C' fill-opacity='0.55'/%3E%3Cpath d='M0 -12V16' stroke='%237A3E0B' stroke-opacity='.35' stroke-width='1'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 270px 250px, 190px 220px;
  background-position: 60px 0, 20px 80px;
  animation: hx-leaves-b 24s linear infinite;
}
@keyframes hx-leaves-a { from { background-position: 0 0, 90px -40px; } to { background-position: 40px 560px, 40px 520px; } }
@keyframes hx-leaves-b { from { background-position: 60px 0, 20px 80px; } to { background-position: 20px 600px, 70px 680px; } }

.hx-hero--autumn .hx-hero__img { animation: hx-zoom 26s ease-in-out infinite alternate; transform-origin: 60% 70%; }
@keyframes hx-zoom { from { transform: scale(1); } to { transform: scale(1.07); } }

.hx-hero--autumn .hx-hero__in > * { opacity: 0; transform: translateY(16px); animation: hx-rise .8s cubic-bezier(.2,.7,.2,1) forwards; }
.hx-hero--autumn .hx-hero__in > *:nth-child(2) { animation-delay: .12s; }
.hx-hero--autumn .hx-hero__in > *:nth-child(3) { animation-delay: .24s; }
@keyframes hx-rise { to { opacity: 1; transform: none; } }

.hx-count { display: inline-flex; align-items: center; gap: 8px; background: #FFF4DC; color: #7A3E0B; border: 1px solid #F2D49B;
  border-radius: 999px; padding: 6px 14px; font-weight: 700; font-size: .92rem; }
.hx-count__dot { width: 9px; height: 9px; border-radius: 50%; background: #E9822B; animation: hx-pulse 1.8s ease-out infinite; }
@keyframes hx-pulse { 0% { box-shadow: 0 0 0 0 rgba(233,130,43,.55); } 100% { box-shadow: 0 0 0 12px rgba(233,130,43,0); } }

@media (prefers-reduced-motion: reduce) {
  .hx-hero--autumn::before, .hx-hero--autumn::after { animation: none; }
  .hx-hero--autumn .hx-hero__img, .hx-hero--autumn .hx-hero__in > * { animation: none; opacity: 1; transform: none; }
  .hx-count__dot { animation: none; }
}
