/* Seasonal CTA — animated highlight inspired by uiverse spotty-horse style */
.seasonal-header-btn {
   position: relative;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
   padding: 3px;
   border-radius: 999px;
   text-decoration: none !important;
   isolation: isolate;
   max-width: 100%;
   vertical-align: middle;
}

.seasonal-header-btn__orbit {
   position: absolute;
   inset: 0;
   border-radius: inherit;
   background: conic-gradient(
      from 0deg,
      var(--theme-primary, #d377b0),
      var(--theme-secondary, #54c9ea),
      var(--theme-accent, #1690b8),
      #ffd166,
      var(--theme-primary, #d377b0)
   );
   animation: seasonal-orbit-spin 3.2s linear infinite;
   z-index: 0;
}

.seasonal-header-btn__orbit::after {
   content: "";
   position: absolute;
   inset: 2px;
   border-radius: inherit;
   background: radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.35), transparent 55%),
      radial-gradient(circle at 70% 80%, rgba(255, 255, 255, 0.2), transparent 50%);
   opacity: 0.9;
}

.seasonal-header-btn__inner {
   position: relative;
   z-index: 1;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   min-height: 38px;
   padding: 8px 16px;
   border-radius: 999px;
   background: linear-gradient(135deg, #1a1a2e 0%, #2d2d44 100%);
   color: #fff !important;
   font-size: 13px;
   font-weight: 800;
   letter-spacing: 0.02em;
   line-height: 1.2;
   box-shadow: 0 4px 18px rgba(211, 119, 176, 0.35);
   transition: transform 0.2s ease, box-shadow 0.2s ease;
   white-space: nowrap;
}

.seasonal-header-btn__inner i {
   color: #ffd166;
   font-size: 14px;
   animation: seasonal-star-pulse 1.6s ease-in-out infinite;
}

.seasonal-header-btn:hover .seasonal-header-btn__inner,
.seasonal-header-btn:focus-visible .seasonal-header-btn__inner {
   transform: translateY(-1px);
   box-shadow: 0 8px 24px rgba(84, 201, 234, 0.45);
}

.seasonal-header-btn:focus-visible {
   outline: 2px solid var(--theme-secondary, #54c9ea);
   outline-offset: 3px;
}

.seasonal-header-btn__label {
   max-width: 160px;
   overflow: hidden;
   text-overflow: ellipsis;
}

@keyframes seasonal-orbit-spin {
   from {
      transform: rotate(0deg);
   }
   to {
      transform: rotate(360deg);
   }
}

@keyframes seasonal-star-pulse {
   0%,
   100% {
      transform: scale(1);
      opacity: 1;
   }
   50% {
      transform: scale(1.15);
      opacity: 0.85;
   }
}

/* Desktop header actions row */
.header-actions .seasonal-header-btn {
   margin-right: 4px;
}

/* Mobile nav — full-width seasonal promo */
.nav-item-seasonal-mobile {
   display: none;
   padding: 12px 16px 4px;
   list-style: none;
}

.nav-item-seasonal-mobile .seasonal-header-btn {
   display: flex;
   width: 100%;
}

.nav-item-seasonal-mobile .seasonal-header-btn__inner {
   width: 100%;
   min-height: 44px;
   font-size: 14px;
}

.nav-item-seasonal-mobile .seasonal-header-btn__label {
   max-width: none;
   white-space: normal;
   text-align: center;
}

@media (max-width: 991px) {
   .header-actions .seasonal-header-btn {
      display: none;
   }

   .nav-item-seasonal-mobile {
      display: block;
   }
}

@media (max-width: 480px) {
   .seasonal-header-btn__inner {
      padding: 10px 14px;
      font-size: 13px;
   }
}

.seasonal-page-hero .store_list_header_content h2 {
   text-transform: none;
}

.seasonal-empty-msg {
   text-align: center;
   padding: 32px 16px;
   color: #666;
   font-size: 16px;
}
