/* PIYAMO Festival Mode — dynamic seasonal styling */
body.piyamo-festival-theme {
    --festival-bg-start: #fbf6f8;
    --festival-bg-end: #fffdf9;
    --festival-orb-1: rgba(255, 213, 129, .16);
    --festival-orb-2: rgba(255, 166, 84, .14);
    --festival-accent-1: #7d557d;
    --festival-accent-2: #bd8751;
    --festival-accent-3: #ffcf77;
    --festival-text-1: #5f3b58;
    --festival-text-2: #8b6b56;
    --festival-surface: rgba(255,255,255,.94);
    --festival-surface-2: rgba(255,248,232,.98);
    --festival-border: rgba(214,183,121,.34);
    --festival-glow: rgba(255,198,95,.34);
    --festival-burst-1: rgba(255,196,97,.50);
    --festival-burst-2: rgba(255,150,86,.28);
    --festival-burst-3: rgba(145,84,115,.18);
    --festival-sweet-1: rgba(182,105,66,.72);
    --festival-sweet-2: rgba(231,165,79,.68);
    --festival-sweet-3: rgba(180,116,165,.52);
    --festival-sweet-4: rgba(241,188,92,.72);
    background:
        radial-gradient(circle at top left, var(--festival-orb-1), transparent 22%),
        radial-gradient(circle at top right, var(--festival-orb-2), transparent 24%),
        linear-gradient(180deg, var(--festival-bg-start) 0%, #fffaf2 18%, #faf4f7 44%, var(--festival-bg-end) 100%);
}

body.piyamo-festival-theme::before,
body.piyamo-festival-theme::after {
    content: '';
    position: fixed;
    width: 240px;
    height: 240px;
    pointer-events: none;
    z-index: 0;
    opacity: .42;
    background:
        radial-gradient(circle, color-mix(in srgb, var(--festival-accent-3) 65%, white 35%) 0 5%, transparent 6%),
        radial-gradient(circle, color-mix(in srgb, var(--festival-accent-2) 40%, white 60%) 0 10%, transparent 11%),
        radial-gradient(circle, color-mix(in srgb, var(--festival-accent-1) 25%, white 75%) 0 18%, transparent 19%);
    background-size: 52px 52px, 84px 84px, 120px 120px;
    animation: piyamoFestivalFloat 11s ease-in-out infinite alternate;
}
body.piyamo-festival-theme::before { top: 140px; left: -70px; border-radius: 50%; }
body.piyamo-festival-theme::after  { bottom: 120px; right: -70px; border-radius: 50%; animation-duration: 14s; }

.piyamo-sticky-header-shell,
.site,
#page { position: relative; z-index: 1; }

body.piyamo-festival-theme .site-header {
    position: relative;
    overflow: visible;
}
body.piyamo-festival-theme .site-header::before {
    content: '';
    position: absolute;
    left: 26px;
    right: 26px;
    bottom: -10px;
    height: 2px;
    background: linear-gradient(90deg, color-mix(in srgb, var(--festival-accent-1) 25%, transparent), color-mix(in srgb, var(--festival-accent-2) 58%, transparent), color-mix(in srgb, var(--festival-accent-1) 25%, transparent));
    border-radius: 999px;
}
body.piyamo-festival-theme .site-header::after {
    content: '';
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: -24px;
    height: 24px;
    pointer-events: none;
    background:
      radial-gradient(circle at 8px 6px, #fff2ab 0 4px, transparent 4.6px),
      radial-gradient(circle at 24px 10px, color-mix(in srgb, var(--festival-accent-2) 78%, white 22%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 40px 6px, color-mix(in srgb, var(--festival-accent-1) 40%, white 60%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 56px 11px, color-mix(in srgb, var(--festival-accent-3) 90%, white 10%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 72px 7px, color-mix(in srgb, var(--festival-accent-2) 65%, white 35%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 88px 10px, #ffe7a8 0 4px, transparent 4.6px),
      radial-gradient(circle at 104px 6px, color-mix(in srgb, var(--festival-accent-1) 36%, white 64%) 0 4px, transparent 4.6px);
    background-repeat: repeat-x;
    background-size: 112px 24px;
    filter: drop-shadow(0 0 6px rgba(255, 205, 112, .75));
    animation: piyamoFestivalLights 2.4s ease-in-out infinite alternate;
}

.piyamo-festival-banner {
    margin: 18px auto 6px;
    max-width: min(1280px, calc(100% - 22px));
    padding: 0 6px;
}
.piyamo-festival-banner__inner {
    position: relative;
    padding: 14px 18px;
    border-radius: 20px;
    border: 1px solid var(--festival-border);
    background:
        radial-gradient(circle at left center, color-mix(in srgb, var(--festival-accent-3) 22%, transparent) 0, transparent 24%),
        radial-gradient(circle at 86% 20%, color-mix(in srgb, var(--festival-accent-2) 18%, transparent) 0, transparent 18%),
        linear-gradient(135deg, var(--festival-surface), var(--festival-surface-2));
    box-shadow: 0 14px 30px rgba(94,72,95,.10), inset 0 1px 0 rgba(255,255,255,.85);
    overflow: hidden;
}
.piyamo-festival-banner__inner::before,
.piyamo-festival-banner__inner::after {
    content: '';
    position: absolute;
    pointer-events: none;
}
/* Cracker / sparkle burst */
.piyamo-festival-banner__inner::before {
    width: 150px; height: 150px; right: -18px; top: -42px;
    background:
        radial-gradient(circle, var(--festival-burst-1) 0 3%, transparent 4%),
        radial-gradient(circle, var(--festival-burst-2) 0 11%, transparent 12%),
        radial-gradient(circle, var(--festival-burst-3) 0 22%, transparent 23%);
    background-size: 24px 24px, 64px 64px, 150px 150px;
    opacity: .9;
    animation: piyamoFestivalBurst 3.1s ease-in-out infinite alternate;
}
/* Mithai / festive sweet accents */
.piyamo-festival-banner__inner::after {
    left: 12px; bottom: -10px; width: 170px; height: 54px;
    background:
        radial-gradient(circle at 14px 28px, var(--festival-sweet-1) 0 7px, transparent 8px),
        radial-gradient(circle at 54px 24px, var(--festival-sweet-2) 0 7px, transparent 8px),
        radial-gradient(circle at 92px 28px, var(--festival-sweet-3) 0 7px, transparent 8px),
        radial-gradient(circle at 132px 24px, var(--festival-sweet-4) 0 7px, transparent 8px);
    filter: saturate(1.08) drop-shadow(0 2px 6px rgba(0,0,0,.05));
}
/* Sparkles all over the banner */
.piyamo-festival-banner__inner .piyamo-festival-banner__copy::before,
.piyamo-festival-banner__inner .piyamo-festival-banner__copy::after {
    content: '';
    position: absolute;
    width: 22px; height: 22px;
    background:
        linear-gradient(90deg, transparent 45%, color-mix(in srgb, var(--festival-accent-3) 90%, white 10%) 45% 55%, transparent 55%),
        linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--festival-accent-3) 90%, white 10%) 45% 55%, transparent 55%);
    opacity: .62;
    transform: rotate(45deg);
    animation: piyamoFestivalSparkle 1.9s ease-in-out infinite alternate;
}
.piyamo-festival-banner__inner .piyamo-festival-banner__copy::before { top: 10px; right: 72px; }
.piyamo-festival-banner__inner .piyamo-festival-banner__copy::after { bottom: 18px; right: 28px; animation-duration: 2.3s; }

.piyamo-festival-banner__copy {
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding-right: 96px;
}
.piyamo-festival-banner__copy strong {
    font: 700 clamp(15px, 1.6vw, 18px)/1.15 Poppins, sans-serif;
    color: var(--festival-text-1);
}
.piyamo-festival-banner__copy span {
    font: 500 clamp(12px, 1.25vw, 13px)/1.38 Poppins, sans-serif;
    color: var(--festival-text-2);
}
.piyamo-festival-banner__copy small {
    font: 600 11px/1.35 Poppins, sans-serif;
    letter-spacing: .02em;
    color: color-mix(in srgb, var(--festival-accent-1) 72%, #7c6b58 28%);
}

body.piyamo-festival-theme .sb-topbar,
body.piyamo-festival-theme .announcement-bar {
    background: linear-gradient(90deg, var(--festival-accent-1) 0%, color-mix(in srgb, var(--festival-accent-2) 74%, #8b6b56 26%) 34%, var(--festival-accent-3) 58%, var(--festival-accent-1) 100%) !important;
    color: #fff7ee;
}
body.piyamo-festival-theme .piyamo-mobile-shop-notices,
body.piyamo-festival-theme .piyamo-shop-notice-strip,
body.piyamo-festival-theme .piyamo-mobile-notice-rotator {
    background: linear-gradient(90deg, rgba(255,248,232,.92), rgba(255,243,220,.95)) !important;
    border-color: color-mix(in srgb, var(--festival-accent-2) 36%, transparent) !important;
    box-shadow: 0 10px 18px rgba(201,161,89,.09), 0 0 18px color-mix(in srgb, var(--festival-accent-3) 28%, transparent);
}

body.piyamo-festival-theme .product-card,
body.piyamo-festival-theme .woocommerce ul.products li.product,
body.piyamo-festival-theme .piyamo-pdp-shell,
body.piyamo-festival-theme .piyamo-glass-card,
body.piyamo-festival-theme .piyamo-accordion-card,
body.piyamo-festival-theme .checkout,
body.piyamo-festival-theme .woocommerce-cart .piyamo-cart-shell {
    border-color: color-mix(in srgb, var(--festival-accent-2) 24%, transparent) !important;
    box-shadow: 0 12px 34px rgba(94,72,95,.08), 0 0 0 1px color-mix(in srgb, var(--festival-accent-3) 14%, transparent) inset !important;
}
body.piyamo-festival-theme .product-card:hover,
body.piyamo-festival-theme .woocommerce ul.products li.product:hover {
    box-shadow: 0 20px 40px rgba(94,72,95,.12), 0 0 0 1px color-mix(in srgb, var(--festival-accent-3) 28%, transparent) inset !important;
    transform: translateY(-4px);
}
body.piyamo-festival-theme .product-card::before,
body.piyamo-festival-theme .piyamo-pdp-shell::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(255,255,255,.06), transparent 34%, color-mix(in srgb, var(--festival-accent-3) 10%, transparent) 92%);
}
body.piyamo-festival-theme .product-card-title,
body.piyamo-festival-theme .product_title,
body.piyamo-festival-theme .piyamo-pdp-title {
    color: var(--festival-text-1);
}
body.piyamo-festival-theme .product-card-add-to-cart,
body.piyamo-festival-theme .add_to_cart_button,
body.piyamo-festival-theme .single_add_to_cart_button,
body.piyamo-festival-theme .piyamo-mobile-cart-dock-cta,
body.piyamo-festival-theme .button,
body.piyamo-festival-theme button.alt,
body.piyamo-festival-theme .piyamo-primary-button {
    background: linear-gradient(135deg, var(--festival-accent-1) 0%, color-mix(in srgb, var(--festival-accent-1) 76%, white 24%) 42%, var(--festival-accent-2) 100%) !important;
    border: 0 !important;
    box-shadow: 0 10px 22px rgba(125,85,125,.22), 0 4px 12px color-mix(in srgb, var(--festival-accent-2) 16%, transparent) !important;
}
body.piyamo-festival-theme .product-card-add-to-cart:hover,
body.piyamo-festival-theme .single_add_to_cart_button:hover,
body.piyamo-festival-theme .piyamo-mobile-cart-dock-cta:hover {
    filter: saturate(1.06) brightness(1.02);
}
body.piyamo-festival-theme .piyamo-thumb-btn.active,
body.piyamo-festival-theme .piyamo-size-btn.active:not(.oos),
body.piyamo-festival-theme .category-tab.active,
body.piyamo-festival-theme .shop-category-filter a.active {
    box-shadow: 0 8px 20px rgba(125,85,125,.22), 0 0 0 3px color-mix(in srgb, var(--festival-accent-3) 20%, transparent);
}
body.piyamo-festival-theme .site-footer,
body.piyamo-festival-theme footer {
    position: relative;
    background-image: linear-gradient(180deg, rgba(255,250,239,.82), rgba(249,241,245,.95));
}
body.piyamo-festival-theme .site-footer::before,
body.piyamo-festival-theme footer::before {
    content: '';
    display: block;
    height: 28px;
    margin: 10px auto 0;
    width: min(440px, 90%);
    background:
      radial-gradient(circle at 8px 12px, #fff2ab 0 4px, transparent 4.6px),
      radial-gradient(circle at 30px 16px, color-mix(in srgb, var(--festival-accent-2) 78%, white 22%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 52px 12px, color-mix(in srgb, var(--festival-accent-1) 40%, white 60%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 74px 16px, color-mix(in srgb, var(--festival-accent-3) 90%, white 10%) 0 4px, transparent 4.6px),
      radial-gradient(circle at 96px 12px, color-mix(in srgb, var(--festival-accent-2) 65%, white 35%) 0 4px, transparent 4.6px);
    background-repeat: repeat-x;
    background-size: 116px 28px;
    filter: drop-shadow(0 0 6px rgba(255,205,112,.75));
    opacity: .95;
}
body.piyamo-festival-theme .piyamo-mobile-cart-dock,
body.piyamo-festival-theme .piyamo-mobile-bag-dock {
    box-shadow: 0 18px 35px rgba(94,72,95,.12), 0 0 0 1px color-mix(in srgb, var(--festival-accent-3) 24%, transparent);
}
body.piyamo-festival-theme .whatsapp-widget,
body.piyamo-festival-theme .joinchat,
body.piyamo-festival-theme .wa-btn,
body.piyamo-festival-theme .chaty-widget {
    filter: drop-shadow(0 10px 18px rgba(125,85,125,.24));
}

/* Monthly presets */
body.piyamo-festival--january {
    --festival-bg-start:#f6f8ff; --festival-bg-end:#fff9f2; --festival-orb-1:rgba(118,165,255,.14); --festival-orb-2:rgba(255,183,102,.15); --festival-accent-1:#5870c6; --festival-accent-2:#e19d4b; --festival-accent-3:#ffd56f; --festival-text-1:#4f4b7c; --festival-text-2:#7e6d63;
}
body.piyamo-festival--february {
    --festival-bg-start:#fff6fb; --festival-bg-end:#fff8f7; --festival-orb-1:rgba(255,146,194,.16); --festival-orb-2:rgba(255,208,117,.12); --festival-accent-1:#b35685; --festival-accent-2:#f0ad62; --festival-accent-3:#ffd7aa; --festival-text-1:#7d4367; --festival-text-2:#8d6b69;
}
body.piyamo-festival--march {
    --festival-bg-start:#fff7fb; --festival-bg-end:#fffdf7; --festival-orb-1:rgba(249,120,158,.18); --festival-orb-2:rgba(88,190,242,.14); --festival-accent-1:#b44d80; --festival-accent-2:#43a5db; --festival-accent-3:#ffd15e; --festival-text-1:#703f66; --festival-text-2:#6b7186;
}
body.piyamo-festival--april {
    --festival-bg-start:#fffaf4; --festival-bg-end:#fffdf7; --festival-orb-1:rgba(255,204,112,.18); --festival-orb-2:rgba(134,203,118,.14); --festival-accent-1:#90703b; --festival-accent-2:#66aa69; --festival-accent-3:#efc26d; --festival-text-1:#6a5431; --festival-text-2:#7c7259;
}
body.piyamo-festival--may {
    --festival-bg-start:#fff7f8; --festival-bg-end:#fffdf9; --festival-orb-1:rgba(247,167,183,.18); --festival-orb-2:rgba(236,204,122,.14); --festival-accent-1:#b86584; --festival-accent-2:#d6a15b; --festival-accent-3:#ffdba1; --festival-text-1:#7f4b62; --festival-text-2:#86716d;
}
body.piyamo-festival--june {
    --festival-bg-start:#f7fbff; --festival-bg-end:#fffef9; --festival-orb-1:rgba(115,194,255,.16); --festival-orb-2:rgba(255,210,133,.14); --festival-accent-1:#4d88b6; --festival-accent-2:#d19e55; --festival-accent-3:#ffe58a; --festival-text-1:#48647b; --festival-text-2:#7d7264;
}
body.piyamo-festival--july {
    --festival-bg-start:#fbf7ff; --festival-bg-end:#fffdf8; --festival-orb-1:rgba(168,142,255,.16); --festival-orb-2:rgba(255,197,112,.14); --festival-accent-1:#7756a7; --festival-accent-2:#d59e58; --festival-accent-3:#ffe099; --festival-text-1:#5d467e; --festival-text-2:#766d6b;
}
body.piyamo-festival--august {
    --festival-bg-start:#fff9f5; --festival-bg-end:#f9fcff; --festival-orb-1:rgba(255,153,118,.18); --festival-orb-2:rgba(116,196,158,.14); --festival-accent-1:#cc6f53; --festival-accent-2:#57a886; --festival-accent-3:#ffd36d; --festival-text-1:#76483f; --festival-text-2:#65756d;
}
body.piyamo-festival--september {
    --festival-bg-start:#fffaf6; --festival-bg-end:#f8fffb; --festival-orb-1:rgba(255,190,116,.18); --festival-orb-2:rgba(112,201,155,.14); --festival-accent-1:#ba7d42; --festival-accent-2:#4f9d7c; --festival-accent-3:#ffe083; --festival-text-1:#704e30; --festival-text-2:#6d776c;
}
body.piyamo-festival--october {
    --festival-bg-start:#fff7f9; --festival-bg-end:#fffdf7; --festival-orb-1:rgba(255,170,120,.18); --festival-orb-2:rgba(214,124,180,.14); --festival-accent-1:#a35576; --festival-accent-2:#dd8d46; --festival-accent-3:#ffd36d; --festival-text-1:#6c405b; --festival-text-2:#8a6d5a;
}
body.piyamo-festival--november {
    --festival-bg-start:#fbf6f8; --festival-bg-end:#fffdf9; --festival-orb-1:rgba(255,213,129,.16); --festival-orb-2:rgba(255,166,84,.14); --festival-accent-1:#7d557d; --festival-accent-2:#bd8751; --festival-accent-3:#ffcf77; --festival-text-1:#5f3b58; --festival-text-2:#8b6b56;
}
body.piyamo-festival--december {
    --festival-bg-start:#f8fbff; --festival-bg-end:#fffaf7; --festival-orb-1:rgba(149,195,255,.16); --festival-orb-2:rgba(255,163,163,.14); --festival-accent-1:#4d7ca9; --festival-accent-2:#c96b6b; --festival-accent-3:#f0cf85; --festival-text-1:#48627a; --festival-text-2:#8a6c67;
}

@keyframes piyamoFestivalLights {
    0%   { opacity: .72; filter: drop-shadow(0 0 3px rgba(255,205,112,.55)); }
    50%  { opacity: 1; filter: drop-shadow(0 0 8px rgba(255,230,160,.95)); }
    100% { opacity: .84; filter: drop-shadow(0 0 5px rgba(255,177,106,.78)); }
}
@keyframes piyamoFestivalFloat {
    from { transform: translate3d(0, 0, 0) scale(1); }
    to   { transform: translate3d(0, 12px, 0) scale(1.04); }
}
@keyframes piyamoFestivalBurst {
    from { transform: scale(.98) rotate(0deg); opacity: .55; }
    to   { transform: scale(1.03) rotate(5deg); opacity: .95; }
}
@keyframes piyamoFestivalSparkle {
    from { transform: rotate(45deg) scale(.9); opacity: .48; }
    to   { transform: rotate(45deg) scale(1.08); opacity: 1; }
}

@media (max-width: 991px) {
    .piyamo-festival-banner { margin-top: 16px; max-width: calc(100% - 12px); }
    .piyamo-festival-banner__inner { padding: 12px 14px; }
    .piyamo-festival-banner__copy { padding-right: 74px; }
}
@media (max-width: 767px) {
    body.piyamo-festival-theme .site-header::before { left: 18px; right: 18px; bottom: -8px; }
    body.piyamo-festival-theme .site-header::after { left: 18px; right: 18px; bottom: -19px; height: 18px; background-size: 96px 18px; }
    .piyamo-festival-banner { margin: 12px auto 4px; }
    .piyamo-festival-banner__inner {
        border: 0 !important;
        border-radius: 18px;
        box-shadow: 0 10px 24px rgba(94,72,95,.09), inset 0 1px 0 rgba(255,255,255,.82);
    }
    .piyamo-festival-banner__copy { padding-right: 0; }
    .piyamo-festival-banner__copy strong { font-size: 14px; }
    .piyamo-festival-banner__copy span { font-size: 11.5px; }
    .piyamo-festival-banner__copy small { font-size: 10px; }
    .piyamo-festival-banner__inner::before {
        width: 92px; height: 92px; right: -14px; top: -18px;
        background-size: 18px 18px, 42px 42px, 92px 92px;
    }
    .piyamo-festival-banner__inner::after {
        width: 122px; height: 40px; left: 6px; bottom: -10px;
        background:
            radial-gradient(circle at 12px 18px, var(--festival-sweet-1) 0 5px, transparent 6px),
            radial-gradient(circle at 44px 15px, var(--festival-sweet-2) 0 5px, transparent 6px),
            radial-gradient(circle at 78px 18px, var(--festival-sweet-3) 0 5px, transparent 6px),
            radial-gradient(circle at 108px 15px, var(--festival-sweet-4) 0 5px, transparent 6px);
    }
    .piyamo-festival-banner__inner .piyamo-festival-banner__copy::before { top: 8px; right: 18px; }
    .piyamo-festival-banner__inner .piyamo-festival-banner__copy::after { bottom: 16px; right: 56px; }
}
@media (prefers-reduced-motion: reduce) {
    body.piyamo-festival-theme::before,
    body.piyamo-festival-theme::after,
    body.piyamo-festival-theme .site-header::after,
    .piyamo-festival-banner__inner::before,
    .piyamo-festival-banner__inner .piyamo-festival-banner__copy::before,
    .piyamo-festival-banner__inner .piyamo-festival-banner__copy::after {
        animation: none !important;
    }
}

/* v1.6.3.64 — genuinely animated festival decorations, no emoji icon strip */
body.piyamo-festival-theme { overflow-x:clip; }
.piyamo-festival-banner {
  position:relative;
  margin-top:16px;
  margin-bottom:12px;
  isolation:isolate;
}
.piyamo-festival-banner__inner {
  position:relative;
  min-height:108px;
  padding:26px 190px 16px 23px;
  overflow:hidden;
  background:linear-gradient(110deg,rgba(255,255,255,.97),rgba(255,246,229,.94));
  border-radius:20px;
  border:1px solid rgba(210,178,121,.3);
}
.piyamo-festival-banner__inner::before {
  background:conic-gradient(from 0deg,transparent 0 12deg,var(--festival-accent-3) 13deg 15deg,transparent 16deg 46deg,var(--festival-accent-2) 47deg 49deg,transparent 50deg 77deg,var(--festival-accent-3) 78deg 81deg,transparent 82deg 100deg);
  opacity:.26;
  animation:piyamoFestivalBurst 4s ease-in-out infinite alternate;
}
.piyamo-festival-banner__inner::after {display:none;}
.piyamo-festival-banner__copy {position:relative; z-index:2; display:flex;flex-direction:column;gap:4px;max-width:none;}
.piyamo-festival-banner__copy::before,.piyamo-festival-banner__copy::after {display:none!important;}
.piyamo-festival-banner__eyebrow {
  display:block;font-size:11px;letter-spacing:.09em;font-weight:700;color:var(--festival-accent-1);
}
.piyamo-festival-banner__copy strong {font-size:clamp(17px,2.2vw,25px);line-height:1.17;}
.piyamo-festival-banner__subtitle {font-size:clamp(11px,1.25vw,13px);font-weight:450;line-height:1.45;max-width:720px;color:var(--festival-text-2);}
.piyamo-festival-banner__art {position:absolute;top:0;bottom:0;right:0;width:184px;z-index:1;pointer-events:none;}
.piyamo-festival-banner__mithai {
  position:absolute;bottom:0;right:4px;width:164px;height:96px;
  background:url('../images/piyamo-mithai-platter.svg') center bottom/contain no-repeat;
  filter:drop-shadow(0 5px 10px rgba(159,101,46,.17));
  animation:piyamoFestivalFloat 6s ease-in-out infinite alternate;
}
.piyamo-festival-banner__burst {
  position:absolute;display:block;width:50px;height:50px;border-radius:50%;
  background:repeating-conic-gradient(from 0deg,transparent 0deg 14deg,var(--festival-accent-3) 16deg 18deg,transparent 20deg 30deg);
  -webkit-mask:radial-gradient(transparent 0 33%,#000 36% 72%,transparent 73%);
  mask:radial-gradient(transparent 0 33%,#000 36% 72%,transparent 73%);
  animation:piyamoFestivalFirework 2.6s ease-out infinite;
}
.piyamo-festival-banner__burst.burst-a {top:5px;right:24px;}
.piyamo-festival-banner__burst.burst-b {top:23px;right:122px;transform:scale(.65);animation-delay:1.25s;}

/* Real twinkling light bulbs (as actual elements, not a static pseudo-background). */
.piyamo-festival-garland {
  position:absolute;left:16px;right:16px;top:-9px;height:30px;
  z-index:5;display:flex;align-items:flex-start;justify-content:space-between;
  pointer-events:none;
}
.piyamo-festival-garland::before {content:'';position:absolute;top:3px;left:0;right:0;height:1px;background:rgba(142,111,83,.38);}
.piyamo-festival-bulb {position:relative;width:7px;height:12px;border-radius:48% 48% 55% 55%;margin-top:6px;
  background:#ffe2a2;filter:drop-shadow(0 0 6px #ffc36c);flex:none;
  animation:piyamoFestivalBulb 1.5s ease-in-out infinite alternate;
}
.piyamo-festival-bulb::before {content:'';position:absolute;top:-4px;left:2px;width:3px;height:4px;background:#8b6874;border-radius:1px;}
.piyamo-festival-bulb:nth-child(3n+1) {background:#ffd789;animation-delay:.4s;}
.piyamo-festival-bulb:nth-child(3n+2) {background:#f4b5d7;animation-delay:1.1s;}
.piyamo-festival-bulb:nth-child(3n) {background:#d8c3fc;animation-delay:.8s;}

/* Distinct seasonal looks, with a special rich Diwali treatment. */
body.piyamo-festival-kind--holi {--festival-accent-1:#a04791;--festival-accent-2:#39a4bd;--festival-accent-3:#ffd66a;}
body.piyamo-festival-kind--eid {--festival-accent-1:#3b8b73;--festival-accent-2:#cfaa62;--festival-accent-3:#bce8ca;}
body.piyamo-festival-kind--national {--festival-accent-1:#d78046;--festival-accent-2:#459e75;--festival-accent-3:#ffffff;}
body.piyamo-festival-kind--love {--festival-accent-1:#ac5b87;--festival-accent-2:#d4a26b;--festival-accent-3:#ffcedd;}
body.piyamo-festival-kind--bengal,body.piyamo-festival-kind--puja {--festival-accent-1:#a14d66;--festival-accent-2:#d49c51;--festival-accent-3:#ffdda3;}
body.piyamo-festival-kind--christmas {--festival-accent-1:#4c866b;--festival-accent-2:#c45d6b;--festival-accent-3:#ffe09e;}
body.piyamo-festival-kind--diwali .piyamo-festival-banner__inner {
  background:radial-gradient(circle at 86% 30%,rgba(255,219,135,.38),transparent 32%),linear-gradient(110deg,#fffaf8,#fff0d7);
  box-shadow:0 14px 28px rgba(109,65,92,.12),0 0 28px rgba(255,196,81,.24);
}
body.piyamo-festival-kind--diwali .piyamo-festival-banner__burst {filter:drop-shadow(0 0 7px rgba(249,170,63,.55));}
body.piyamo-festival-kind--christmas .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--newyear .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--summer .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--national .piyamo-festival-banner__mithai {opacity:0;}
body.piyamo-festival-kind--gold .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--rakhi .piyamo-festival-banner__mithai {opacity:.55;}
body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::before {content:'❄';position:absolute;right:22px;bottom:2px;font-size:96px;color:#e0eefa;opacity:.7;}
body.piyamo-festival-kind--eid .piyamo-festival-banner__art::before {content:'☾';position:absolute;right:28px;top:-38px;font-size:132px;color:#c2a068;opacity:.3;}
body.piyamo-festival-kind--holi .piyamo-festival-banner__art {background:radial-gradient(circle at 78% 40%,#f6abc7 0 8%,transparent 11%),radial-gradient(circle at 35% 75%,#9bdcec 0 12%,transparent 15%),radial-gradient(circle at 55% 26%,#f2cd68 0 8%,transparent 12%);}

/* Festive emphasis throughout the theme — never obscure product photography. */
body.piyamo-festival-theme .product-card,
body.piyamo-festival-theme .woocommerce ul.products li.product {position:relative;}
body.piyamo-festival-theme .product-card:hover,
body.piyamo-festival-theme .woocommerce ul.products li.product:hover {
 box-shadow:0 10px 24px rgba(96,63,85,.10),0 0 0 1px var(--festival-border) inset!important;
}
body.piyamo-festival-theme .site-footer::before,
body.piyamo-festival-theme footer::before {animation:piyamoFestivalLights 2.1s ease-in-out infinite alternate;}
body.piyamo-festival-theme .site-header::after {animation:piyamoFestivalLights 1.5s ease-in-out infinite alternate;}
#piyamo-festival-effects {position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.72;contain:strict;}

@keyframes piyamoFestivalBulb {0%{opacity:.45;box-shadow:0 0 1px currentColor;transform:scale(.92)}100%{opacity:1;box-shadow:0 0 12px 4px rgba(255,203,97,.42);transform:scale(1.12)}}
@keyframes piyamoFestivalFirework {0%{opacity:0;transform:scale(.24) rotate(-20deg)}30%{opacity:.9}100%{opacity:0;transform:scale(1.65) rotate(26deg)}}

@media (max-width:767px) {
 .piyamo-festival-banner {margin-top:12px;max-width:calc(100% - 8px);padding:0 4px;}
 .piyamo-festival-banner__inner {min-height:84px;padding:18px 82px 10px 12px;border:0!important;box-shadow:0 8px 18px rgba(105,72,90,.09);border-radius:16px;}
 .piyamo-festival-banner__eyebrow {font-size:9px;letter-spacing:.05em;}
 .piyamo-festival-banner__copy strong {font-size:15px;line-height:1.25;}
 .piyamo-festival-banner__subtitle {font-size:10px;line-height:1.3;}
 .piyamo-festival-banner__art {width:86px;}
 .piyamo-festival-banner__mithai {width:90px;height:66px;right:-6px;}
 .piyamo-festival-banner__burst {width:28px;height:28px;}
 .piyamo-festival-banner__burst.burst-a {right:14px;top:4px;}
 .piyamo-festival-banner__burst.burst-b {right:68px;top:25px;}
 .piyamo-festival-garland {left:7px;right:7px;}
 .piyamo-festival-bulb:nth-child(2n) {display:none;}
 #piyamo-festival-effects {opacity:.50;}
}
@media(prefers-reduced-motion:reduce) {
 #piyamo-festival-effects {display:none!important;}
 .piyamo-festival-bulb,.piyamo-festival-banner__burst,.piyamo-festival-banner__mithai,
 body.piyamo-festival-theme .site-footer::before {animation:none!important;}
}


/* v1.6.3.65 — professional festival differentiation by occasion kind */
body.piyamo-festival-theme {
  --festival-banner-sheen: linear-gradient(110deg, rgba(255,255,255,.97), rgba(255,246,229,.94));
  --festival-bulb-wire: rgba(142,111,83,.38);
  --festival-bulb-a: #ffd789;
  --festival-bulb-b: #f4b5d7;
  --festival-bulb-c: #d8c3fc;
  --festival-banner-shadow: 0 14px 28px rgba(109,65,92,.10);
}

body.piyamo-festival-theme .piyamo-festival-banner__inner {
  background: var(--festival-banner-sheen);
  box-shadow: var(--festival-banner-shadow), 0 0 0 1px rgba(255,255,255,.5) inset;
}
body.piyamo-festival-theme .piyamo-festival-garland::before { background: var(--festival-bulb-wire); }
body.piyamo-festival-theme .piyamo-festival-bulb { background: var(--festival-bulb-a); }
body.piyamo-festival-theme .piyamo-festival-bulb:nth-child(3n+1) { background: var(--festival-bulb-a); }
body.piyamo-festival-theme .piyamo-festival-bulb:nth-child(3n+2) { background: var(--festival-bulb-b); }
body.piyamo-festival-theme .piyamo-festival-bulb:nth-child(3n) { background: var(--festival-bulb-c); }

/* Love / Valentine / Mother's Day / friendship */
body.piyamo-festival-kind--love {
  --festival-banner-sheen: radial-gradient(circle at 82% 28%, rgba(255,214,227,.42), transparent 20%), linear-gradient(118deg, #fff9fb 0%, #fff1f6 46%, #fff8f0 100%);
  --festival-bulb-wire: rgba(163,104,130,.34);
  --festival-bulb-a: #ffc4d7; --festival-bulb-b: #ffd9aa; --festival-bulb-c: #efbfd9;
  --festival-banner-shadow: 0 14px 28px rgba(172,91,135,.12);
}
body.piyamo-festival-kind--love .piyamo-festival-banner__inner::before {
  background: radial-gradient(circle at 50% 50%, rgba(255,194,214,.55) 0 12%, transparent 13%), radial-gradient(circle at 30% 38%, rgba(255,214,168,.35) 0 34%, transparent 35%);
  border-radius: 50%;
}
body.piyamo-festival-kind--love .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--love .piyamo-festival-banner__art::after {
  content: '';
  position: absolute;
  right: 28px;
  top: 18px;
  width: 18px;
  height: 18px;
  background: rgba(255,198,214,.9);
  transform: rotate(45deg);
  border-radius: 4px 4px 0 0;
  box-shadow: -22px 10px 0 0 rgba(255,225,184,.95), -2px 24px 0 -2px rgba(255,198,214,.65);
}
body.piyamo-festival-kind--love .piyamo-festival-banner__art::after {
  right: 74px;
  top: 42px;
  transform: rotate(45deg) scale(.72);
  opacity: .72;
}

/* Holi */
body.piyamo-festival-kind--holi {
  --festival-banner-sheen: radial-gradient(circle at 16% 20%, rgba(246,171,199,.45), transparent 18%), radial-gradient(circle at 78% 26%, rgba(140,220,238,.42), transparent 18%), radial-gradient(circle at 58% 76%, rgba(248,214,107,.46), transparent 22%), linear-gradient(118deg, #fffdfd 0%, #fff8fd 45%, #fffaf1 100%);
  --festival-bulb-wire: rgba(123,117,156,.28);
  --festival-bulb-a: #f6abc7; --festival-bulb-b: #8dd8ea; --festival-bulb-c: #f4d569;
  --festival-banner-shadow: 0 14px 30px rgba(158,96,146,.12);
}
body.piyamo-festival-kind--holi .piyamo-festival-banner__burst {
  background: radial-gradient(circle at 50% 50%, rgba(255,255,255,.0) 0 18%, transparent 19%), repeating-conic-gradient(from 0deg, #f6abc7 0 15deg, transparent 15deg 34deg, #8dd8ea 34deg 49deg, transparent 49deg 68deg, #f4d569 68deg 83deg, transparent 83deg 102deg);
  -webkit-mask:none; mask:none; border-radius:50%; filter: blur(.15px);
}
body.piyamo-festival-kind--holi .piyamo-festival-banner__mithai { opacity: 0; }

/* Eid */
body.piyamo-festival-kind--eid {
  --festival-banner-sheen: radial-gradient(circle at 82% 24%, rgba(216,195,127,.30), transparent 20%), linear-gradient(118deg, #f8fffb 0%, #effaf4 48%, #fffdf7 100%);
  --festival-bulb-wire: rgba(73,122,103,.28);
  --festival-bulb-a: #d8c07c; --festival-bulb-b: #9ed5b2; --festival-bulb-c: #eff7d6;
  --festival-banner-shadow: 0 14px 28px rgba(59,139,115,.10);
}
body.piyamo-festival-kind--eid .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:28px; top:6px; width:82px; height:82px; border-radius:50%;
  box-shadow: inset -18px 0 0 0 rgba(206,170,98,.78); background: transparent; opacity:.42;
}
body.piyamo-festival-kind--eid .piyamo-festival-banner__art::after {
  content:''; position:absolute; right:104px; top:18px; width:24px; height:50px;
  background: linear-gradient(180deg, rgba(216,192,124,.15), rgba(216,192,124,.65));
  border-radius: 12px 12px 8px 8px; box-shadow: 0 0 0 2px rgba(216,192,124,.18) inset;
}
body.piyamo-festival-kind--eid .piyamo-festival-banner__burst { opacity:.45; }

/* Pujo / Bengal */
body.piyamo-festival-kind--puja,
body.piyamo-festival-kind--bengal {
  --festival-banner-sheen: radial-gradient(circle at 82% 28%, rgba(255,218,150,.34), transparent 18%), linear-gradient(118deg, #fff9fa 0%, #fff2f3 52%, #fff9ed 100%);
  --festival-bulb-wire: rgba(155,97,83,.34);
  --festival-bulb-a: #f6c85e; --festival-bulb-b: #df8a73; --festival-bulb-c: #c4657e;
  --festival-banner-shadow: 0 14px 30px rgba(161,77,102,.14);
}
body.piyamo-festival-kind--puja .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:14px; top:16px; width:140px; height:78px; opacity:.30;
  background: radial-gradient(circle at 20px 42px, rgba(198,101,126,.5) 0 3px, transparent 4px), radial-gradient(circle at 50px 24px, rgba(214,156,81,.44) 0 3px, transparent 4px), radial-gradient(circle at 82px 42px, rgba(198,101,126,.5) 0 3px, transparent 4px), radial-gradient(circle at 112px 24px, rgba(214,156,81,.44) 0 3px, transparent 4px), linear-gradient(transparent 47%, rgba(214,156,81,.20) 47% 53%, transparent 53%);
}
body.piyamo-festival-kind--puja .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__mithai { opacity:.68; }

/* Christmas */
body.piyamo-festival-kind--christmas {
  --festival-banner-sheen: radial-gradient(circle at 82% 26%, rgba(255,225,175,.28), transparent 18%), linear-gradient(118deg, #f7fff9 0%, #f4fff6 42%, #fff6f7 100%);
  --festival-bulb-wire: rgba(88,118,93,.33);
  --festival-bulb-a: #e3646d; --festival-bulb-b: #6ba786; --festival-bulb-c: #f2daa1;
  --festival-banner-shadow: 0 14px 30px rgba(76,134,107,.12);
}
body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:24px; bottom:4px; width:72px; height:96px; opacity:.72;
  background: linear-gradient(transparent 0 18%, rgba(96,146,111,.9) 18% 32%, transparent 32%), linear-gradient(transparent 27%, rgba(96,146,111,.85) 27% 43%, transparent 43%), linear-gradient(transparent 40%, rgba(96,146,111,.8) 40% 58%, transparent 58%), linear-gradient(transparent 56%, rgba(96,146,111,.75) 56% 76%, transparent 76%), linear-gradient(transparent 72%, rgba(120,84,61,.6) 72% 96%, transparent 96%);
  clip-path: polygon(50% 0, 78% 24%, 64% 24%, 90% 48%, 72% 48%, 100% 76%, 56% 76%, 56% 100%, 44% 100%, 44% 76%, 0 76%, 28% 48%, 10% 48%, 36% 24%, 22% 24%);
}
body.piyamo-festival-kind--christmas .piyamo-festival-banner__mithai { opacity:0; }

/* National / Republic day / Independence day */
body.piyamo-festival-kind--national {
  --festival-banner-sheen: linear-gradient(180deg, rgba(255,149,83,.10) 0 33%, rgba(255,255,255,.96) 33% 66%, rgba(79,158,117,.10) 66% 100%);
  --festival-bulb-wire: rgba(113,121,132,.28);
  --festival-bulb-a: #f2a16b; --festival-bulb-b: #ffffff; --festival-bulb-c: #6eae89;
  --festival-banner-shadow: 0 14px 26px rgba(69,158,117,.08);
}
body.piyamo-festival-kind--national .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:34px; top:18px; width:88px; height:56px; opacity:.85;
  background: linear-gradient(180deg, #f2a16b 0 33%, #ffffff 33% 66%, #6eae89 66% 100%);
  clip-path: polygon(0 0, 100% 8%, 72% 44%, 100% 92%, 0 100%);
  box-shadow: -5px 0 0 0 rgba(90,91,120,.55);
}
body.piyamo-festival-kind--national .piyamo-festival-banner__mithai { opacity:0; }

/* Harvest / spring / rakhi / summer / gold / spiritual */
body.piyamo-festival-kind--harvest,
body.piyamo-festival-kind--spring,
body.piyamo-festival-kind--summer,
body.piyamo-festival-kind--gold,
body.piyamo-festival-kind--spiritual,
body.piyamo-festival-kind--rakhi,
body.piyamo-festival-kind--newyear {
  --festival-banner-shadow: 0 14px 28px rgba(125,85,125,.10);
}
body.piyamo-festival-kind--harvest {
  --festival-banner-sheen: radial-gradient(circle at 82% 24%, rgba(255,203,114,.26), transparent 18%), linear-gradient(118deg, #fffef6 0%, #f8fff2 45%, #fff9eb 100%);
  --festival-bulb-wire: rgba(150,128,86,.30);
  --festival-bulb-a: #f0c46e; --festival-bulb-b: #a8d78a; --festival-bulb-c: #ffdca0;
}
body.piyamo-festival-kind--harvest .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--spring .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--summer .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:18px; top:18px; width:132px; height:72px; opacity:.35;
  background: radial-gradient(ellipse at 14% 52%, rgba(137,193,110,.42) 0 18%, transparent 19%), radial-gradient(ellipse at 48% 26%, rgba(239,196,109,.45) 0 16%, transparent 17%), radial-gradient(ellipse at 74% 56%, rgba(109,183,160,.34) 0 18%, transparent 19%);
}
body.piyamo-festival-kind--spring {
  --festival-banner-sheen: radial-gradient(circle at 82% 20%, rgba(255,232,131,.20), transparent 18%), linear-gradient(118deg, #fffef5 0%, #fbfff2 45%, #fff9f2 100%);
  --festival-bulb-a:#f3d46e; --festival-bulb-b:#b5da8a; --festival-bulb-c:#ffe29d;
}
body.piyamo-festival-kind--summer {
  --festival-banner-sheen: radial-gradient(circle at 80% 22%, rgba(110,201,255,.22), transparent 18%), linear-gradient(118deg, #f7fdff 0%, #f4fbff 40%, #fffaf0 100%);
  --festival-bulb-a:#7fd0f6; --festival-bulb-b:#ffd58b; --festival-bulb-c:#9ed9ca;
}
body.piyamo-festival-kind--gold {
  --festival-banner-sheen: radial-gradient(circle at 82% 24%, rgba(255,221,146,.30), transparent 18%), linear-gradient(118deg, #fffdf7 0%, #fff7ea 48%, #fffef8 100%);
  --festival-bulb-a:#efc979; --festival-bulb-b:#ffe3a8; --festival-bulb-c:#dcb76a;
}
body.piyamo-festival-kind--gold .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--spiritual .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:24px; top:18px; width:120px; height:72px; opacity:.30;
  background: radial-gradient(circle at 30px 40px, rgba(239,201,121,.45) 0 11px, transparent 12px), radial-gradient(circle at 58px 24px, rgba(255,226,162,.65) 0 9px, transparent 10px), radial-gradient(circle at 88px 40px, rgba(216,178,102,.45) 0 11px, transparent 12px);
}
body.piyamo-festival-kind--rakhi {
  --festival-banner-sheen: radial-gradient(circle at 82% 24%, rgba(255,210,145,.24), transparent 18%), linear-gradient(118deg, #fff9f5 0%, #fff4f0 45%, #f7fff8 100%);
  --festival-bulb-a:#f6c07f; --festival-bulb-b:#9ed4bb; --festival-bulb-c:#f3d380;
}
body.piyamo-festival-kind--rakhi .piyamo-festival-banner__art::before {
  content:''; position:absolute; right:34px; top:24px; width:84px; height:84px; opacity:.44;
  background: radial-gradient(circle at center, rgba(243,211,128,.78) 0 11px, rgba(243,211,128,.24) 12px 20px, transparent 21px), repeating-conic-gradient(from 0deg, rgba(227,135,116,.58) 0 10deg, transparent 10deg 22deg, rgba(88,166,132,.50) 22deg 32deg, transparent 32deg 45deg);
  border-radius: 50%;
}
body.piyamo-festival-kind--newyear {
  --festival-banner-sheen: radial-gradient(circle at 82% 24%, rgba(255,221,146,.28), transparent 18%), linear-gradient(118deg, #fbfbff 0%, #f7f3ff 44%, #fff8ec 100%);
  --festival-bulb-a:#c5b0ff; --festival-bulb-b:#ffcf80; --festival-bulb-c:#f5c1e0;
}
body.piyamo-festival-kind--spiritual {
  --festival-banner-sheen: radial-gradient(circle at 82% 20%, rgba(246,221,164,.24), transparent 18%), linear-gradient(118deg, #fffdf9 0%, #faf6ef 46%, #fffdf6 100%);
  --festival-bulb-a:#e6c37d; --festival-bulb-b:#f3dfab; --festival-bulb-c:#d9c9a6;
}
body.piyamo-festival-kind--spiritual .piyamo-festival-banner__burst,
body.piyamo-festival-kind--eid .piyamo-festival-banner__burst { opacity:.25; }

/* Make theme UI pick up the active festival tone more clearly */
body.piyamo-festival-kind--love .product-card-add-to-cart,
body.piyamo-festival-kind--love .single_add_to_cart_button,
body.piyamo-festival-kind--love .piyamo-mobile-cart-dock-cta { background: linear-gradient(135deg, #ac5b87, #d3a06d) !important; }
body.piyamo-festival-kind--eid .product-card-add-to-cart,
body.piyamo-festival-kind--eid .single_add_to_cart_button,
body.piyamo-festival-kind--eid .piyamo-mobile-cart-dock-cta { background: linear-gradient(135deg, #46886f, #c6a05c) !important; }
body.piyamo-festival-kind--holi .product-card-add-to-cart,
body.piyamo-festival-kind--holi .single_add_to_cart_button,
body.piyamo-festival-kind--holi .piyamo-mobile-cart-dock-cta { background: linear-gradient(135deg, #a24f94, #35a8c0, #e4bf59) !important; }
body.piyamo-festival-kind--christmas .product-card-add-to-cart,
body.piyamo-festival-kind--christmas .single_add_to_cart_button,
body.piyamo-festival-kind--christmas .piyamo-mobile-cart-dock-cta { background: linear-gradient(135deg, #4f866d, #c95e6a) !important; }
body.piyamo-festival-kind--national .product-card-add-to-cart,
body.piyamo-festival-kind--national .single_add_to_cart_button,
body.piyamo-festival-kind--national .piyamo-mobile-cart-dock-cta { background: linear-gradient(135deg, #dc8453, #4fa071) !important; }
body.piyamo-festival-kind--puja .product-card-add-to-cart,
body.piyamo-festival-kind--puja .single_add_to_cart_button,
body.piyamo-festival-kind--puja .piyamo-mobile-cart-dock-cta,
body.piyamo-festival-kind--bengal .product-card-add-to-cart,
body.piyamo-festival-kind--bengal .single_add_to_cart_button,
body.piyamo-festival-kind--bengal .piyamo-mobile-cart-dock-cta { background: linear-gradient(135deg, #a14d66, #d49c51) !important; }


/* v1.6.3.66 — stronger festival differentiation with visible motif art */
.piyamo-festival-banner__motif {
  position:absolute;
  display:block;
  z-index:2;
  pointer-events:none;
  opacity:.92;
  text-shadow: 0 4px 10px rgba(255,255,255,.28);
}
.piyamo-festival-banner__motif.motif-a { right: 98px; top: 12px; }
.piyamo-festival-banner__motif.motif-b { right: 30px; top: 42px; }
.piyamo-festival-banner__motif::before { content:''; }

/* hide decorative pieces by default and reveal by occasion */
.piyamo-festival-banner__motif,
.piyamo-festival-banner__art::before,
.piyamo-festival-banner__art::after { opacity: 0; }

/* Love theme */
body.piyamo-festival-kind--love .piyamo-festival-banner__motif,
body.piyamo-festival-kind--love .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--love .piyamo-festival-banner__art::after { opacity: 1; }
body.piyamo-festival-kind--love .piyamo-festival-banner__motif.motif-a::before { content:'💖'; font-size: 30px; }
body.piyamo-festival-kind--love .piyamo-festival-banner__motif.motif-b::before { content:'💕'; font-size: 23px; }
body.piyamo-festival-kind--love .piyamo-festival-banner__motif.motif-a { right: 104px; top: 8px; animation: piyamoLoveFloat 2.8s ease-in-out infinite alternate; }
body.piyamo-festival-kind--love .piyamo-festival-banner__motif.motif-b { right: 42px; top: 38px; animation: piyamoLoveFloat 2.2s ease-in-out infinite alternate; }

/* Christmas */
body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif,
body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::after { opacity: 1; }
body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif.motif-a::before { content:'🎅'; font-size: 29px; }
body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif.motif-b::before { content:'❄'; font-size: 28px; color:#e5f1ff; }
body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif.motif-a { right: 94px; top: 10px; animation: piyamoSantaBob 3s ease-in-out infinite alternate; }
body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif.motif-b { right: 28px; top: 24px; animation: piyamoSnowSpin 4.4s linear infinite; }
body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::after {
  content:'❄  ❄  ❄'; position:absolute; right: 16px; top: 54px; font-size:18px; color:#eaf3ff; white-space:pre; opacity:.9;
}

/* Holi */
body.piyamo-festival-kind--holi .piyamo-festival-banner__motif,
body.piyamo-festival-kind--holi .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--holi .piyamo-festival-banner__art::after { opacity: 1; }
body.piyamo-festival-kind--holi .piyamo-festival-banner__motif.motif-a::before { content:'✿'; font-size: 28px; color:#f6abc7; }
body.piyamo-festival-kind--holi .piyamo-festival-banner__motif.motif-b::before { content:'✦'; font-size: 24px; color:#8dd8ea; }
body.piyamo-festival-kind--holi .piyamo-festival-banner__motif.motif-a { right: 92px; top: 12px; }
body.piyamo-festival-kind--holi .piyamo-festival-banner__motif.motif-b { right: 32px; top: 44px; }
body.piyamo-festival-kind--holi .piyamo-festival-banner__art::after { content:''; position:absolute; inset:8px 8px auto auto; width:132px; height:76px; opacity:1; background: radial-gradient(circle at 80% 20%, rgba(246,171,199,.75) 0 9%, transparent 10%), radial-gradient(circle at 36% 65%, rgba(141,216,234,.75) 0 10%, transparent 11%), radial-gradient(circle at 58% 36%, rgba(244,213,105,.82) 0 9%, transparent 10%), radial-gradient(circle at 18% 25%, rgba(183,148,239,.58) 0 8%, transparent 9%); }

/* Eid */
body.piyamo-festival-kind--eid .piyamo-festival-banner__motif,
body.piyamo-festival-kind--eid .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--eid .piyamo-festival-banner__art::after { opacity: 1; }
body.piyamo-festival-kind--eid .piyamo-festival-banner__motif.motif-a::before { content:'☪'; font-size: 34px; color:#c9ab68; }
body.piyamo-festival-kind--eid .piyamo-festival-banner__motif.motif-b::before { content:'✦'; font-size: 20px; color:#e9f4d5; }
body.piyamo-festival-kind--eid .piyamo-festival-banner__motif.motif-a { right: 98px; top: 10px; }
body.piyamo-festival-kind--eid .piyamo-festival-banner__motif.motif-b { right: 44px; top: 26px; }

/* Pujo/Bengal */
body.piyamo-festival-kind--puja .piyamo-festival-banner__motif,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__motif,
body.piyamo-festival-kind--puja .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__art::before { opacity: 1; }
body.piyamo-festival-kind--puja .piyamo-festival-banner__motif.motif-a::before,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__motif.motif-a::before { content:'✺'; font-size: 28px; color:#d49c51; }
body.piyamo-festival-kind--puja .piyamo-festival-banner__motif.motif-b::before,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__motif.motif-b::before { content:'❀'; font-size: 22px; color:#c4657e; }

/* Diwali */
body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif,
body.piyamo-festival-kind--diwali .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--diwali .piyamo-festival-banner__art::after { opacity:1; }
body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif.motif-a::before { content:'✨'; font-size: 30px; color:#ffd977; }
body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif.motif-b::before { content:'🪔'; font-size: 24px; }
body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif.motif-a { right: 110px; top: 10px; animation: piyamoSparklePulse 2.5s ease-in-out infinite alternate; }
body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif.motif-b { right: 34px; top: 42px; animation: piyamoLoveFloat 2.8s ease-in-out infinite alternate; }
body.piyamo-festival-kind--diwali .piyamo-festival-banner__art::after { content:''; position:absolute; right: 16px; top: 6px; width:116px; height:74px; background: radial-gradient(circle at 22% 30%, rgba(255,214,120,.75) 0 3px, transparent 4px), radial-gradient(circle at 42% 18%, rgba(255,170,82,.78) 0 3px, transparent 4px), radial-gradient(circle at 62% 42%, rgba(255,214,120,.75) 0 3px, transparent 4px), radial-gradient(circle at 78% 22%, rgba(255,170,82,.78) 0 3px, transparent 4px); }

/* National */
body.piyamo-festival-kind--national .piyamo-festival-banner__motif,
body.piyamo-festival-kind--national .piyamo-festival-banner__art::before { opacity:1; }
body.piyamo-festival-kind--national .piyamo-festival-banner__motif.motif-a::before { content:'✦'; font-size: 22px; color:#f2a16b; }
body.piyamo-festival-kind--national .piyamo-festival-banner__motif.motif-b::before { content:'✦'; font-size: 18px; color:#6eae89; }

/* default hide mithai outside sweet/cultural celebrations */
body.piyamo-festival-kind--love .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--eid .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--christmas .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--national .piyamo-festival-banner__mithai,
body.piyamo-festival-kind--holi .piyamo-festival-banner__mithai { opacity:0 !important; }

@keyframes piyamoLoveFloat { from { transform: translateY(0) scale(.96);} to { transform: translateY(-5px) scale(1.04);} }
@keyframes piyamoSnowSpin { from { transform: rotate(0deg) scale(.9);} to { transform: rotate(360deg) scale(1.08);} }
@keyframes piyamoSantaBob { from { transform: translateY(0);} to { transform: translateY(-4px);} }
@keyframes piyamoSparklePulse { from { opacity:.7; transform: scale(.92);} to { opacity:1; transform: scale(1.08);} }

@media (max-width:767px){
  .piyamo-festival-banner__motif.motif-a { right: 50px !important; top: 4px !important; }
  .piyamo-festival-banner__motif.motif-b { right: 12px !important; top: 30px !important; }
  body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif.motif-a::before { font-size:24px; }
  body.piyamo-festival-kind--christmas .piyamo-festival-banner__motif.motif-b::before { font-size:21px; }
  body.piyamo-festival-kind--love .piyamo-festival-banner__motif.motif-a::before { font-size:24px; }
  body.piyamo-festival-kind--love .piyamo-festival-banner__motif.motif-b::before { font-size:19px; }
  body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif.motif-a::before { font-size:23px; }
  body.piyamo-festival-kind--diwali .piyamo-festival-banner__motif.motif-b::before { font-size:19px; }
  body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::after { font-size:14px; right:10px; top:50px; }
}


/* v1.6.3.67 — richer per-festival detailing, stickers, hero sections and cleaner particles */
body.piyamo-festival-theme::before,
body.piyamo-festival-theme::after {
    display: none !important;
}

body.piyamo-festival-theme .piyamo-festival-banner__motif::before {
    content: none !important;
}

.piyamo-festival-banner__copy {
    padding-right: 132px;
}
.piyamo-festival-banner__eyebrow {
    display: inline-block;
    margin-bottom: 3px;
    font: 700 11px/1.2 Poppins, sans-serif;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: color-mix(in srgb, var(--festival-accent-1) 74%, #8b6b56 26%);
}
.piyamo-festival-banner__subtitle {
    max-width: 92%;
}
.piyamo-festival-banner__art {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
.piyamo-festival-banner__motif {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    filter: drop-shadow(0 6px 12px rgba(255,255,255,.24));
}
.piyamo-festival-banner__motif.motif-a { right: 98px; top: 14px; font-size: 28px; animation: piyamoLoveFloat 2.8s ease-in-out infinite alternate; }
.piyamo-festival-banner__motif.motif-b { right: 44px; top: 34px; font-size: 22px; animation: piyamoLoveFloat 2.2s ease-in-out infinite alternate; }
.piyamo-festival-banner__motif.motif-c { right: 118px; top: 52px; font-size: 18px; opacity: .94; }
.piyamo-festival-banner__motif.motif-d { right: 16px; top: 12px; font-size: 16px; opacity: .92; }
.piyamo-festival-garland {
    display: flex;
    gap: 6px;
    justify-content: center;
    align-items: center;
    padding: 0 12px 8px;
}
.piyamo-festival-bulb {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--festival-accent-3) 82%, white 18%);
    box-shadow: 0 0 8px color-mix(in srgb, var(--festival-accent-3) 70%, white 30%), 0 0 16px color-mix(in srgb, var(--festival-accent-2) 56%, transparent);
    animation: piyamoFestivalLights 1.8s ease-in-out infinite alternate;
}
.piyamo-festival-bulb:nth-child(3n) { background: color-mix(in srgb, var(--festival-accent-1) 64%, white 36%); }
.piyamo-festival-bulb:nth-child(4n) { background: color-mix(in srgb, var(--festival-accent-2) 66%, white 34%); }

.piyamo-festival-shop-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) 220px;
    gap: 20px;
    align-items: center;
    max-width: min(1280px, calc(100% - 28px));
    margin: 14px auto 16px;
    padding: 22px 24px;
    border-radius: 28px;
    border: 1px solid color-mix(in srgb, var(--festival-accent-2) 26%, transparent);
    background:
      radial-gradient(circle at 84% 18%, color-mix(in srgb, var(--festival-accent-3) 26%, transparent) 0, transparent 20%),
      linear-gradient(135deg, rgba(255,255,255,.96), color-mix(in srgb, var(--festival-accent-3) 10%, white 90%));
    box-shadow: 0 18px 34px rgba(86,65,87,.08), inset 0 1px 0 rgba(255,255,255,.75);
    overflow: hidden;
}
.piyamo-festival-shop-hero__kicker {
    display: inline-flex;
    margin-bottom: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--festival-chip-bg);
    border: 1px solid var(--festival-chip-border);
    color: var(--festival-text-1);
    font: 700 11px/1 Poppins, sans-serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.piyamo-festival-shop-hero__title {
    margin: 0 0 8px;
    font: 700 clamp(26px, 3vw, 38px)/1.05 Poppins, sans-serif;
    color: var(--festival-text-1);
}
.piyamo-festival-shop-hero__text {
    max-width: 660px;
    margin: 0;
    color: var(--festival-text-2);
    font: 500 14px/1.6 Poppins, sans-serif;
}
.piyamo-festival-shop-hero__pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}
.piyamo-festival-shop-hero__pill {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: var(--festival-chip-bg);
    border: 1px solid var(--festival-chip-border);
    color: var(--festival-text-1);
    font: 600 12px/1 Poppins, sans-serif;
}
.piyamo-festival-shop-hero__art {
    position: relative;
    min-height: 140px;
}
.piyamo-festival-shop-hero__motif {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.piyamo-festival-shop-hero__motif.motif-1 { right: 18px; top: 8px; font-size: 48px; }
.piyamo-festival-shop-hero__motif.motif-2 { left: 30px; bottom: 18px; font-size: 34px; }
.piyamo-festival-shop-hero__motif.motif-3 { right: 74px; bottom: 22px; font-size: 26px; }

body.piyamo-festival-theme .category-tabs,
body.piyamo-festival-theme .category-tabs-wrapper,
body.piyamo-festival-theme .piyamo-mobile-category-filter {
    border-color: var(--festival-chip-border) !important;
}
body.piyamo-festival-theme .cat-tab,
body.piyamo-festival-theme .category-tab,
body.piyamo-festival-theme .piyamo-mobile-category-pill {
    background: var(--festival-chip-bg) !important;
    border-color: var(--festival-chip-border) !important;
    color: var(--festival-text-1) !important;
    box-shadow: 0 6px 16px rgba(86,65,87,.04);
}
body.piyamo-festival-theme .cat-tab.active,
body.piyamo-festival-theme .cat-tab.is-active,
body.piyamo-festival-theme .category-tab.active,
body.piyamo-festival-theme .category-tab.is-active,
body.piyamo-festival-theme .piyamo-mobile-category-pill.active,
body.piyamo-festival-theme .piyamo-mobile-category-pill[aria-current="page"] {
    background: linear-gradient(135deg, var(--festival-chip-active-bg), color-mix(in srgb, var(--festival-chip-active-bg) 72%, white 28%)) !important;
    border-color: var(--festival-chip-active-bg) !important;
    color: var(--festival-chip-active-text) !important;
    box-shadow: 0 12px 20px color-mix(in srgb, var(--festival-chip-active-bg) 24%, transparent);
}
body.piyamo-festival-theme .cat-tab .tab-count,
body.piyamo-festival-theme .piyamo-mobile-category-pill .tab-count {
    opacity: .82;
}

.piyamo-festival-card-sticker {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: calc(100% - 24px);
    min-height: 28px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--festival-accent-2) 24%, transparent);
    background: rgba(255,255,255,.92);
    color: var(--festival-text-1);
    box-shadow: 0 10px 18px rgba(76,54,73,.12);
    font: 700 10px/1 Poppins, sans-serif;
    letter-spacing: .02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.piyamo-festival-card-sticker em {
    font-style: normal;
    line-height: 1;
    font-size: 12px;
}
body.piyamo-festival-theme .product-card .product-card-img,
body.piyamo-festival-theme .woocommerce ul.products li.product .product-card-img {
    position: relative;
}

body.piyamo-festival-theme .piyamo-mobile-hero-festival-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 10px 0 0;
}
body.piyamo-festival-theme .piyamo-mobile-hero-festival-pill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.24);
    border: 1px solid rgba(255,255,255,.28);
    color: #fff;
    font: 600 10px/1 Poppins, sans-serif;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
body.piyamo-festival-theme .piyamo-mobile-hero-festival-art {
    position: absolute;
    right: 12px;
    top: 12px;
    width: 120px;
    height: 120px;
    pointer-events: none;
}
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif {
    position: absolute;
    line-height: 1;
    filter: drop-shadow(0 8px 18px rgba(0,0,0,.14));
}
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif.motif-1 { right: 0; top: 6px; font-size: 28px; }
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif.motif-2 { left: 16px; top: 44px; font-size: 22px; }
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif.motif-3 { right: 22px; bottom: 8px; font-size: 18px; }

@media (max-width: 767px) {
    .piyamo-festival-shop-hero {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 18px 16px;
        border-radius: 22px;
        margin: 10px auto 12px;
    }
    .piyamo-festival-shop-hero__art {
        min-height: 70px;
    }
    .piyamo-festival-shop-hero__motif.motif-1 { right: 0; top: 2px; font-size: 30px; }
    .piyamo-festival-shop-hero__motif.motif-2 { left: auto; right: 52px; bottom: 6px; font-size: 22px; }
    .piyamo-festival-shop-hero__motif.motif-3 { right: 96px; bottom: 20px; font-size: 16px; }
    .piyamo-festival-banner { max-width: calc(100% - 14px); padding: 0; }
    .piyamo-festival-banner__inner { padding: 12px 14px; border-radius: 18px; }
    .piyamo-festival-banner__copy { padding-right: 82px; }
    .piyamo-festival-banner__copy strong { font-size: 15px; }
    .piyamo-festival-banner__copy span { font-size: 11px; }
    .piyamo-festival-banner__motif.motif-a { right: 44px; top: 12px; font-size: 22px; }
    .piyamo-festival-banner__motif.motif-b { right: 14px; top: 34px; font-size: 18px; }
    .piyamo-festival-banner__motif.motif-c { right: 60px; top: 52px; font-size: 14px; }
    .piyamo-festival-banner__motif.motif-d { display: none; }
    .piyamo-festival-card-sticker { left: 8px; right: 8px; bottom: 8px; max-width: none; padding: 5px 9px; font-size: 9px; }
}


/* v1.6.3.69 — Lakshmi mobile polish and compact festival badge placement */
body.piyamo-festival-theme .piyamo-mobile-hero-festival-art {
  right: 14px;
  left: auto;
  width: 108px;
}
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif.motif-1 { right: 8px; top: 8px; left: auto; }
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif.motif-2 { right: 42px; top: 42px; left: auto; }
body.piyamo-festival-theme .piyamo-mobile-hero-festival-motif.motif-3 { right: 12px; bottom: 10px; left: auto; }
body.piyamo-festival-theme .piyamo-mobile-hero-copy { max-width: min(76%, 320px); }
body.piyamo-festival-theme .piyamo-mobile-hero-cta { display:none !important; }

.product-badge.festival-badge {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 12px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--festival-accent-3) 86%, #fff 14%), color-mix(in srgb, var(--festival-accent-2) 28%, #fff 72%));
  color: var(--festival-text-1);
  border: 1px solid color-mix(in srgb, var(--festival-accent-2) 42%, transparent);
  box-shadow: 0 8px 18px rgba(80, 56, 78, .08);
  text-transform:none;
  letter-spacing:0;
  font-weight:700;
}
.product-badge.festival-badge em {
  font-style:normal;
  font-size:11px;
  line-height:1;
}
.product-badge.festival-badge span {
  display:inline-block;
  line-height:1;
}
.piyamo-festival-card-sticker { display:none !important; }

@media (max-width: 767px) {
  body.piyamo-festival-theme .piyamo-mobile-hero-copy { max-width: min(74%, 285px); }
  .product-badge.festival-badge {
    top: 10px;
    left: 10px;
    padding: 6px 10px;
    font-size: 9px;
  }
}


/* v1.6.3.70 — premium festival banner, Lakshmi luxury treatment, tighter mobile cards */
.piyamo-festival-banner {
  max-width: min(1240px, calc(100% - 24px));
  margin: 10px auto 12px;
}
.piyamo-festival-banner__inner {
  border-radius: 24px;
  border: 1px solid color-mix(in srgb, var(--festival-accent-2) 30%, rgba(255,255,255,.65));
  background:
    radial-gradient(circle at 88% 14%, color-mix(in srgb, var(--festival-accent-3) 26%, transparent), transparent 24%),
    linear-gradient(112deg, rgba(255,255,255,.98), color-mix(in srgb, var(--festival-chip-bg) 86%, #fff 14%));
  box-shadow: 0 18px 34px rgba(73, 52, 72, .10), inset 0 1px 0 rgba(255,255,255,.85);
}
.piyamo-festival-banner__copy {
  gap: 5px;
  padding-right: 154px;
}
.piyamo-festival-banner__copy strong {
  letter-spacing: -.02em;
  font-weight: 750;
}
.piyamo-festival-banner__subtitle {
  max-width: 640px;
  font-size: clamp(11.5px,1.28vw,13.5px);
}
.piyamo-festival-banner__art { width: 210px; }
.piyamo-festival-banner__motif {
  filter: drop-shadow(0 10px 18px rgba(113, 78, 95, .16));
}
.piyamo-festival-garland {
  left: 24px;
  right: 24px;
}
.piyamo-festival-bulb {
  width: 11px;
  height: 11px;
  box-shadow: 0 0 10px color-mix(in srgb, var(--festival-accent-3) 78%, white 22%), 0 0 18px color-mix(in srgb, var(--festival-accent-2) 62%, transparent);
}

/* Lakshmi Puja premium devotional treatment */
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero {
  background:
    radial-gradient(circle at 84% 16%, rgba(255,228,174,.28), transparent 20%),
    radial-gradient(circle at 16% 84%, rgba(255,215,225,.22), transparent 18%),
    linear-gradient(130deg, #fffdfb 0%, #fff6fa 44%, #fff8ef 100%) !important;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner {
  border-color: rgba(216,172,89,.34);
  box-shadow: 0 20px 42px rgba(113, 74, 92, .12), inset 0 1px 0 rgba(255,255,255,.88);
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__eyebrow,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__kicker,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-kicker {
  color: #a75570;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__copy strong,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__title,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-title {
  color: #6f3549;
  text-shadow: 0 1px 0 rgba(255,255,255,.5);
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__subtitle,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__text,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-text {
  color: #8d6a64;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art::after,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__art::after {
  content:'';
  position:absolute;
  right: 12px;
  bottom: 8px;
  width: 118px;
  height: 56px;
  opacity: .28;
  background:
    radial-gradient(circle at 18% 68%, rgba(183,82,107,.55) 0 10px, transparent 11px),
    radial-gradient(circle at 50% 32%, rgba(216,172,89,.60) 0 10px, transparent 11px),
    radial-gradient(circle at 82% 68%, rgba(183,82,107,.55) 0 10px, transparent 11px),
    radial-gradient(circle at 50% 62%, rgba(247,216,169,.72) 0 18px, transparent 19px);
  filter: blur(.2px);
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero {
  border-color: rgba(216,172,89,.30);
  box-shadow: 0 22px 42px rgba(95, 57, 76, .10), inset 0 1px 0 rgba(255,255,255,.75);
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__pill,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-festival-pill {
  background: rgba(255,255,255,.74);
  border-color: rgba(216,172,89,.28);
  color: #7b5061;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero {
  border: 1px solid rgba(216,172,89,.24);
  box-shadow: 0 14px 28px rgba(103, 62, 82, .10);
}

/* More compact, cleaner mobile product cards */
@media (max-width: 767px) {
  .woocommerce ul.products, ul.products, ul.products.columns-1, ul.products.columns-2, ul.products.columns-3, ul.products.columns-4, ul.products.columns-5, ul.products.columns-6 {
    gap: 10px 8px !important;
  }
  .product-card {
    border-radius: 12px;
  }
  .product-card-info,
  .product-card .product-card-info,
  body.woocommerce-shop .product-card .product-card-info,
  body.post-type-archive-product .product-card .product-card-info,
  body.tax-product_cat .product-card .product-card-info,
  body.tax-product_tag .product-card .product-card-info {
    padding: 8px 8px 9px !important;
  }
  .product-card-category {
    font-size: 9.5px !important;
    line-height: 1.2 !important;
    margin-bottom: 1px !important;
  }
  .product-card-name {
    margin: 1px 0 2px !important;
    font-size: 12px !important;
    line-height: 1.24 !important;
  }
  .piyamo-card-material-line,
  .product-card .piyamo-card-material-line {
    margin: 3px 0 2px !important;
  }
  .product-card .piyamo-campaign-group--card {
    margin-top: 2px !important;
  }
  .product-card .piyamo-campaign-group .piyamo-promo-msg {
    font-size: 9px !important;
    line-height: 1.34 !important;
    gap: 4px;
  }
  .product-card .piyamo-campaign-group .piyamo-promo-msg__icon {
    width: 10px;
    flex-basis: 10px;
    font-size: 10px !important;
  }
  .product-card-actions button,
  .product-card-actions a,
  .product-card-add-to-cart {
    width: 30px;
    height: 30px;
    min-height: 30px;
  }
  .product-card-price .price,
  .product-card-price .amount,
  .product-card-current-price .amount {
    font-size: 12.5px !important;
    line-height: 1.2 !important;
  }
  .product-badge,
  .product-badge.festival-badge {
    top: 8px;
    left: 8px;
    font-size: 8px !important;
    padding: 4px 8px !important;
  }
  .piyamo-festival-banner {
    max-width: calc(100% - 12px);
    margin: 8px auto 10px;
  }
  .piyamo-festival-banner__inner {
    border-radius: 18px;
  }
  .piyamo-festival-banner__copy {
    padding-right: 108px;
  }
  .piyamo-festival-banner__copy strong {
    font-size: 16px;
  }
  .piyamo-festival-banner__subtitle {
    font-size: 10.5px;
    line-height: 1.35;
  }
}


/* PIYAMO v1.6.3.71 · editorial Lakshmi styling and mobile UX */
/* Clearly separate text from the decorative area. No icons may sit on title/copy. */
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 136px;
    align-items: center;
    gap: 12px;
    min-height: 116px;
    padding: 19px 20px 17px 23px;
    overflow: hidden;
    background: linear-gradient(115deg, #fffdfa 0%, #fff6f9 55%, #fff1db 100%) !important;
    border: 1px solid rgba(205,162,91,.28);
    box-shadow: 0 14px 38px rgba(91,48,74,.09), inset 0 1px 0 #fff;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner::before,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner::after,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__burst,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__mithai,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art::before,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art::after {display:none !important; content:none !important;}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__copy {
    position:relative;
    grid-column:1;
    padding:0 !important;
    min-width:0;
    z-index:3;
    gap:4px;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__eyebrow {
    color:#93586d; font-size:10px; letter-spacing:.13em;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__copy strong {
    color:#703e52; font-size:clamp(20px,2.6vw,31px); line-height:1.1; letter-spacing:-.028em;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__subtitle {
    max-width:480px; color:#876d70; font-size:clamp(11px,1.2vw,13px); line-height:1.48;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art {
    position:relative !important;
    grid-column:2;
    grid-row:1;
    inset:auto !important;
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:stretch;
    width:100% !important;
    height:auto;
    min-height:88px;
    z-index:1;
    overflow:visible;
    pointer-events:none;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art:before {
    content:'';position:absolute;inset:8px 10px;
    background:radial-gradient(circle,rgba(241,195,116,.20),transparent 65%);
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif {
    position:absolute !important;
    inset:auto !important;
    display:inline-flex !important;
    align-items:center;justify-content:center;
    opacity:1 !important;
    line-height:1;
    animation: piyamoLakshmiHover 5s ease-in-out infinite alternate !important;
    filter: drop-shadow(0 4px 7px rgba(149,91,107,.12));
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-a {right:42px !important;top:5px !important;font-size:39px !important;}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-b {right:4px !important;bottom:10px !important;font-size:33px !important;animation-delay:-2s !important;}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-c {left:10px !important;bottom:8px !important;right:auto !important;top:auto !important;font-size:23px !important;animation-delay:-1s !important;}
@keyframes piyamoLakshmiHover {from{transform:translateY(0)}to{transform:translateY(-4px)}}

/* Festival marker belongs to the product information, ahead of the name. */
body.piyamo-festival-theme .piyamo-festival-card-label {
    display:inline-flex; align-items:center;gap:5px;
    max-width:100%;min-height:23px;
    padding:4px 8px;
    border:1px solid var(--festival-chip-border);
    border-radius:999px;
    background:linear-gradient(110deg,#fff,var(--festival-chip-bg));
    color:var(--festival-text-1);
    font:700 9.5px/1.2 Poppins,sans-serif;
    box-shadow:0 3px 8px rgba(94,62,85,.04);
    margin:3px 0 3px;
}
body.piyamo-festival-theme .piyamo-festival-card-label span:last-child {min-width:0;white-space:normal;overflow-wrap:anywhere;}
body.piyamo-festival-theme .piyamo-festival-card-label span:first-child{flex:0 0 auto;}
body.piyamo-festival-theme .product-badge.festival-badge {display:none !important;}

/* More readable, restrained offers — no clipped savings or loud multicolor strips. */
@media(max-width:767px){
 body.piyamo-festival-theme .product-card .product-card-info {padding:9px 9px 10px !important;}
 body.piyamo-festival-theme .product-card-category {margin-bottom:2px !important;}
 body.piyamo-festival-theme .piyamo-festival-card-label {font-size:9px;min-height:21px;padding:3px 7px;margin:2px 0 4px;}
 body.piyamo-festival-theme .product-card-name {font-size:12.5px !important;line-height:1.3 !important;margin:0 0 4px !important;}
 body.piyamo-festival-theme .product-card .piyamo-campaign-group--card {margin-top:5px !important;}
 body.piyamo-festival-theme .product-card .piyamo-campaign-group .piyamo-promo-msg {font-size:10px !important;line-height:1.4 !important;gap:5px !important;}
 body.piyamo-festival-theme .product-card .piyamo-campaign-group .piyamo-promo-msg__icon {font-size:11px !important;flex:0 0 12px !important;width:12px !important;}
 body.piyamo-festival-theme .product-card-price .amount {font-size:13px !important;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner {margin:9px auto 9px;max-width:calc(100% - 14px);}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner {grid-template-columns:minmax(0,1fr) 94px;padding:15px 10px 13px 14px;gap:7px;min-height:104px;border:0 !important;border-radius:18px;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art {min-height:80px;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-a {right:27px !important;top:4px !important;font-size:30px !important;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-b {right:2px !important;bottom:7px !important;font-size:25px !important;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-c {left:3px !important;bottom:12px !important;font-size:16px !important;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__copy strong {font-size:18px !important;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__subtitle {font-size:10px;line-height:1.38;}
}

/* Lakshmi Puja editorial imagery: retain real product/model photo and move copy to the lower left. */
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image {
    background:#dcbfc7 !important; isolation:isolate;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image .piyamo-mobile-hero-media {
    display:block;object-fit:cover;object-position:center 34%;opacity:1;z-index:0;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image .piyamo-mobile-hero-scrim {
    display:block !important;
    background:linear-gradient(180deg,rgba(35,20,30,.05) 0%,rgba(35,20,30,.03) 36%,rgba(32,16,30,.49) 73%,rgba(32,16,30,.80) 100%) !important;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image .piyamo-mobile-hero-copy {
    z-index:4 !important;left:22px;right:22px;bottom:32px;
    max-width:min(84%,360px) !important;
    padding:0 !important;
    color:#fff !important;
    text-shadow:0 2px 14px rgba(37,23,31,.20);
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image .piyamo-mobile-hero-kicker,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image .piyamo-mobile-hero-title,
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero.has-image .piyamo-mobile-hero-text {color:#fff !important;text-shadow:0 2px 14px rgba(37,23,31,.25);}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-title {
    font-size:clamp(40px,11vw,58px) !important;
    font-weight:700 !important;
    line-height:.99 !important;
    letter-spacing:-.055em !important;
    max-width:310px !important;
    margin:0 0 12px !important;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-text {
    max-width:285px; font-size:12px !important;line-height:1.53 !important;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-festival-art {
    position:absolute !important;left:auto !important;right:12px !important;top:15px !important;bottom:auto !important;
    width:96px !important;height:102px !important;z-index:5 !important;
    display:block !important;pointer-events:none;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-festival-motif {position:absolute !important;left:auto !important;}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-festival-motif.motif-1 {right:12px !important;top:0 !important;font-size:27px !important;}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-festival-motif.motif-2 {right:46px !important;top:35px !important;font-size:21px !important;}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-festival-motif.motif-3 {right:8px !important;top:65px !important;bottom:auto !important;font-size:18px !important;}
/* Textual hero benefit pills have been removed from PHP markup. */
body.piyamo-festival-theme .piyamo-mobile-hero-festival-pills,
body.piyamo-festival-theme .piyamo-festival-shop-hero__pills {display:none !important;}

body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero {
    grid-template-columns:minmax(0,1fr) 180px;
    padding:28px 30px;
    border-color:rgba(216,172,89,.29) !important;
    background:linear-gradient(120deg,#fffefa,#fff6fa 58%,#fff0d8 100%) !important;
}
body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__title {
    max-width:560px;font-size:clamp(32px,4vw,52px);line-height:1.05;letter-spacing:-.04em;
}
@media(max-width:767px){
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-mobile-hero-title {font-size:clamp(35px,10vw,52px) !important;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero {grid-template-columns:1fr;padding:20px 17px;}
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-shop-hero__title {font-size:30px;}
}
@media(prefers-reduced-motion:reduce){
 body.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif {animation:none !important;}
}


/* v1.6.3.74 — attractive festival mini-hero with right-side-only animation */
body.piyamo-festival-theme .piyamo-festival-banner {
  max-width: min(1240px, calc(100% - 18px));
  margin: 10px auto 12px;
}
body.piyamo-festival-theme .piyamo-festival-banner__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 126px;
  align-items: center;
  gap: 8px;
  min-height: 104px;
  padding: 16px 18px;
  overflow: hidden;
}
body.piyamo-festival-theme .piyamo-festival-banner__copy {
  position: relative;
  z-index: 2;
  padding-right: 0 !important;
  max-width: none;
}
body.piyamo-festival-theme .piyamo-festival-banner__eyebrow {
  margin-bottom: 3px;
}
body.piyamo-festival-theme .piyamo-festival-banner__copy strong {
  margin: 0;
  font-size: clamp(20px, 2.2vw, 28px);
  line-height: 1.03;
  letter-spacing: -.03em;
}
body.piyamo-festival-theme .piyamo-festival-banner__subtitle {
  max-width: 540px;
  margin-top: 2px;
  font-size: clamp(12px, 1.14vw, 13.5px);
  line-height: 1.38;
}
body.piyamo-festival-theme .piyamo-festival-banner__art {
  position: relative !important;
  inset: auto !important;
  width: 126px !important;
  min-width: 126px;
  height: 76px;
  justify-self: end;
  align-self: stretch;
  pointer-events: none;
  z-index: 1;
  overflow: visible;
}
body.piyamo-festival-theme .piyamo-festival-banner__motif {
  position: absolute !important;
  z-index: 2;
  transform: translateZ(0);
}
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-a { right: 18px; top: 4px; font-size: 23px; }
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-b { right: 4px; top: 28px; font-size: 18px; }
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-c { left: 10px; bottom: 8px; font-size: 16px; }
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-d { right: 26px; bottom: 2px; font-size: 14px; }
body.piyamo-festival-theme .piyamo-festival-banner__art::before,
body.piyamo-festival-theme .piyamo-festival-banner__art::after {
  left: auto !important;
}
body.piyamo-festival-theme .piyamo-festival-garland {
  position: absolute;
  top: 6px;
  left: auto;
  right: 16px;
  width: 170px;
  justify-content: flex-end;
  padding: 0;
  z-index: 3;
  pointer-events: none;
}
body.piyamo-festival-theme .piyamo-festival-bulb {
  width: 9px;
  height: 9px;
}

/* prevent old global art effects from invading the copy column */
body.piyamo-festival-theme .piyamo-festival-banner__copy::before,
body.piyamo-festival-theme .piyamo-festival-banner__copy::after {
  display: none !important;
  content: none !important;
}

/* more attractive pujo / lakshmi / diwali right-side artwork */
body.piyamo-festival-kind--puja .piyamo-festival-banner__art,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__art,
body.piyamo-festival-kind--diwali .piyamo-festival-banner__art {
  background:
    radial-gradient(circle at 82% 14%, rgba(255,220,140,.26) 0 20%, transparent 21%),
    radial-gradient(circle at 40% 72%, rgba(255,183,91,.18) 0 16%, transparent 17%);
}
body.piyamo-festival-kind--puja .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--bengal .piyamo-festival-banner__art::before,
body.piyamo-festival-kind--diwali .piyamo-festival-banner__art::before {
  content: '';
  position: absolute;
  right: 10px;
  bottom: 2px;
  width: 80px;
  height: 42px;
  opacity: .62;
  background:
    radial-gradient(circle at 18% 65%, rgba(214,145,82,.70) 0 7px, transparent 8px),
    radial-gradient(circle at 48% 30%, rgba(247,215,142,.85) 0 9px, transparent 10px),
    radial-gradient(circle at 80% 65%, rgba(214,145,82,.70) 0 7px, transparent 8px),
    radial-gradient(circle at 48% 60%, rgba(255,231,187,.82) 0 14px, transparent 15px);
}
body.piyamo-festival-kind--national .piyamo-festival-banner__motif.motif-a { right: 12px; top: 10px; }
body.piyamo-festival-kind--national .piyamo-festival-banner__motif.motif-b { right: 10px; top: 38px; }
body.piyamo-festival-kind--national .piyamo-festival-banner__motif.motif-c { left: 18px; bottom: 10px; }
body.piyamo-festival-kind--christmas .piyamo-festival-banner__art::before { right: 8px; bottom: 0; font-size: 68px; }
body.piyamo-festival-kind--love .piyamo-festival-banner__art::before { right: 18px; top: 2px; }
body.piyamo-festival-kind--love .piyamo-festival-banner__art::after { right: 2px; bottom: 2px; }

@media (max-width: 767px) {
  body.piyamo-festival-theme .piyamo-festival-banner {
    max-width: calc(100% - 8px);
    margin: 8px auto 10px;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__inner {
    grid-template-columns: minmax(0, 1fr) 82px;
    gap: 6px;
    min-height: 94px;
    padding: 14px 12px 12px;
    border-radius: 18px;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__copy strong {
    font-size: 15px !important;
    line-height: 1.15;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__subtitle {
    max-width: none;
    font-size: 10.5px !important;
    line-height: 1.32;
    padding-right: 0;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__art {
    width: 82px !important;
    min-width: 82px;
    height: 62px;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-a { right: 10px; top: 6px; font-size: 18px; }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-b { right: 0; top: 26px; font-size: 14px; }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-c { left: 10px; bottom: 6px; font-size: 12px; }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-d { right: 20px; bottom: 0; font-size: 11px; }
  body.piyamo-festival-theme .piyamo-festival-garland {
    top: 4px;
    right: 10px;
    width: 112px;
    gap: 5px;
  }
  body.piyamo-festival-theme .piyamo-festival-bulb {
    width: 7px;
    height: 7px;
  }
}

/* =============================================================
 * PIYAMO v1.6.3.75 · Full-width animated light canopy + right-side
 * festival artwork. The old garland was inside the artwork column;
 * it is now a sibling that stretches across the entire banner.
 * This stylesheet is loaded only when festival mode is active.
 * ============================================================= */
body.piyamo-festival-theme .piyamo-festival-banner {
  isolation: isolate;
}
body.piyamo-festival-theme .piyamo-festival-banner__inner,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) clamp(88px, 22%, 160px) !important;
  column-gap: clamp(8px, 2.5vw, 22px) !important;
  align-items: center !important;
  min-height: 136px !important;
  padding: 36px clamp(14px, 3vw, 23px) 14px !important;
  overflow: hidden !important;
  border-radius: 21px !important;
}
/* All old full-card decorative layers are replaced by artwork safely
   located inside the right column. */
body.piyamo-festival-theme .piyamo-festival-banner__inner::before,
body.piyamo-festival-theme .piyamo-festival-banner__inner::after,
body.piyamo-festival-theme .piyamo-festival-banner__art::before,
body.piyamo-festival-theme .piyamo-festival-banner__art::after {
  display: none !important;
  content: none !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__copy,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__copy {
  position: relative !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  align-self: center !important;
  z-index: 3 !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__copy::before,
body.piyamo-festival-theme .piyamo-festival-banner__copy::after {
  display: none !important;
  content: none !important;
}

/* One continuous line of real bulbs across the entire TOP edge. */
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner > .piyamo-festival-garland {
  position: absolute !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 1px !important;
  left: 13px !important;
  right: 13px !important;
  top: 5px !important;
  bottom: auto !important;
  width: auto !important;
  height: 25px !important;
  padding: 0 !important;
  z-index: 8 !important;
  pointer-events: none !important;
  overflow: visible !important;
  opacity: 1 !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 2px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--festival-accent-2) 32%, #a58e78), transparent) !important;
  opacity: .55 !important;
  box-shadow: none !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb {
  --piyamo-light: var(--festival-accent-3, #ffe6a7);
  display: block !important;
  position: relative !important;
  flex: 0 0 auto !important;
  width: 7px !important;
  height: 7px !important;
  min-width: 7px !important;
  min-height: 7px !important;
  margin: 11px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% 50% 48% 48% !important;
  background: var(--piyamo-light) !important;
  filter: none !important;
  box-shadow: 0 0 5px 2px var(--piyamo-light), 0 0 13px 4px color-mix(in srgb, var(--piyamo-light) 40%, transparent) !important;
  opacity: .98 !important;
  transform: none;
  animation: piyamoStringTwinkle 2.15s ease-in-out infinite !important;
  animation-delay: calc(var(--piyamo-bulb-n, 0) * -0.19s) !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb:nth-child(3n + 1) { --piyamo-light: color-mix(in srgb, var(--festival-accent-3) 73%, white 27%); }
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb:nth-child(3n + 2) { --piyamo-light: color-mix(in srgb, var(--festival-accent-1) 56%, white 44%); }
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb:nth-child(3n) { --piyamo-light: color-mix(in srgb, var(--festival-accent-2) 66%, white 34%); }
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb:nth-child(4n) { animation-delay: -1.15s !important; }
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb:nth-child(4n + 1) { animation-delay: -.42s !important; }
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb:nth-child(5n) { animation-duration: 1.6s !important; }
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb::before {
  content: '' !important;
  position: absolute !important;
  left: 3px !important;
  top: -11px !important;
  width: 1px !important;
  height: 11px !important;
  background: color-mix(in srgb, var(--festival-accent-2) 50%, #9f8979) !important;
  border-radius: 1px;
  opacity: .65 !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb::after {
  content: '' !important;
  position: absolute !important;
  inset: -5px !important;
  border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--piyamo-light) 30%, transparent), transparent 70%) !important;
  animation: piyamoBulbHalo 2.4s ease-in-out infinite alternate !important;
}
@keyframes piyamoStringTwinkle {
  0%, 100% { opacity: .45; filter: brightness(.75); box-shadow: 0 0 3px 1px var(--piyamo-light), 0 0 8px 2px color-mix(in srgb, var(--piyamo-light) 25%, transparent); }
  48%, 62% { opacity: 1; filter: brightness(1.4); box-shadow: 0 0 7px 3px var(--piyamo-light), 0 0 20px 6px color-mix(in srgb, var(--piyamo-light) 65%, transparent); }
}
@keyframes piyamoBulbHalo { from { opacity: .42; } to { opacity: .9; } }

/* The festival motifs, firework glints, sweets, hearts and snow all stay
   within the right-side artwork. They never drift over the copy. */
body.piyamo-festival-theme .piyamo-festival-banner__art,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art {
  display: block !important;
  position: relative !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: stretch !important;
  inset: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  height: 86px !important;
  overflow: hidden !important;
  isolation: isolate;
  pointer-events: none !important;
  z-index: 2 !important;
  border-radius: 50%;
  background: radial-gradient(ellipse at 50% 52%, color-mix(in srgb, var(--festival-accent-3) 30%, transparent) 0, transparent 67%) !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__aura {
  display: block;
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: 50%;
  background: radial-gradient(circle at 62% 48%, color-mix(in srgb, var(--festival-accent-2) 20%, transparent), transparent 65%);
  animation: piyamoFestAura 4s ease-in-out infinite alternate;
}
body.piyamo-festival-theme .piyamo-festival-banner__motif,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif {
  position: absolute !important;
  inset: auto !important;
  display: inline-block !important;
  line-height: 1 !important;
  opacity: 1 !important;
  filter: drop-shadow(0 3px 6px rgba(112, 68, 91, .13)) !important;
  z-index: 3 !important;
  will-change: transform;
}
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-a,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-a {
  left: 33% !important; right: auto !important; top: 6px !important; bottom: auto !important;
  font-size: clamp(27px, 3vw, 38px) !important;
  animation: piyamoFestBob 3.3s ease-in-out infinite alternate !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-b,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-b {
  left: auto !important; right: 8% !important; top: 39% !important; bottom: auto !important;
  font-size: clamp(20px, 2.1vw, 28px) !important;
  animation: piyamoFestFloat 3.6s ease-in-out infinite alternate !important;
  animation-delay: -1.4s !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-c,
body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-c {
  left: 8% !important; right: auto !important; top: auto !important; bottom: 9px !important;
  font-size: clamp(16px, 1.7vw, 23px) !important;
  animation: piyamoFestFloat 2.5s ease-in-out infinite alternate !important;
  animation-delay: -.9s !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-d {
  right: 36% !important; left: auto !important; bottom: 1px !important; top: auto !important;
  font-size: 13px !important;
  animation: piyamoFestGlow 2.8s ease-in-out infinite alternate !important;
}
/* Old oversized firework and mithai elements could overflow the art zone. */
body.piyamo-festival-theme .piyamo-festival-banner__burst { display: none !important; }
body.piyamo-festival-theme .piyamo-festival-banner__mithai { display: none !important; }

body.piyamo-festival-theme .piyamo-festival-banner__spark {
  display: block;
  position: absolute;
  z-index: 2;
  width: 10px;
  height: 10px;
  background: color-mix(in srgb, var(--festival-accent-2) 72%, #fff 28%);
  clip-path: polygon(50% 0%, 61% 38%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0% 50%, 39% 38%);
  filter: drop-shadow(0 0 5px color-mix(in srgb, var(--festival-accent-3) 60%, transparent));
  transform-origin: center;
  animation: piyamoFestSparkle 2s ease-in-out infinite !important;
}
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(1) { top: 13%; left: 11%; animation-delay: -.2s !important; }
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(2) { top: 22%; right: 10%; animation-delay: -.7s !important; width: 8px; height: 8px; }
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(3) { bottom: 12%; left: 25%; animation-delay: -1.4s !important; width: 7px; height: 7px; }
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(4) { top: 6%; right: 42%; animation-delay: -1s !important; width: 6px; height: 6px; }
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(5) { bottom: 25%; right: 8%; animation-delay: -1.7s !important; width: 7px; height: 7px; }
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(6) { top: 45%; left: 8%; animation-delay: -.9s !important; width: 6px; height: 6px; }
body.piyamo-festival-theme .piyamo-festival-banner__spark:nth-last-child(7) { bottom: 4%; right: 49%; animation-delay: -1.25s !important; width: 8px; height: 8px; }
@keyframes piyamoFestAura { from { transform: scale(.89); opacity: .5; } to { transform: scale(1.12); opacity: 1; } }
@keyframes piyamoFestBob { from { transform: translate3d(0, 0, 0) rotate(-7deg); } to { transform: translate3d(0, -6px, 0) rotate(7deg); } }
@keyframes piyamoFestFloat { from { transform: translateY(4px) rotate(8deg); } to { transform: translateY(-5px) rotate(-7deg); } }
@keyframes piyamoFestGlow { from { transform: scale(.82) rotate(-6deg); opacity: .66; } to { transform: scale(1.16) rotate(6deg); opacity: 1; } }
@keyframes piyamoFestSparkle { 0%,100% { opacity: .30; transform: rotate(0deg) scale(.65); } 50% { opacity: 1; transform: rotate(45deg) scale(1.25); } }

@media (max-width: 767px) {
  body.piyamo-festival-theme .piyamo-festival-banner__inner,
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner {
    grid-template-columns: minmax(0, 1fr) 82px !important;
    column-gap: 7px !important;
    min-height: 122px !important;
    padding: 32px 12px 12px !important;
    border-radius: 18px !important;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__copy strong { line-height: 1.12 !important; }
  body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland {
    left: 9px !important; right: 9px !important; top: 4px !important;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb {
    width: 5.8px !important; height: 5.8px !important; min-width: 5.8px !important; min-height: 5.8px !important;
    margin-top: 10px !important;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb::before {
    left: 2.5px !important; top: -10px !important; height: 10px !important;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__art,
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__art {
    height: 72px !important;
  }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-a,
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-a { font-size: 28px !important; }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-b,
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-b { font-size: 19px !important; }
  body.piyamo-festival-theme .piyamo-festival-banner__motif.motif-c,
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif.motif-c { font-size: 14px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb,
  body.piyamo-festival-theme .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb::after,
  body.piyamo-festival-theme .piyamo-festival-banner__motif,
  body.piyamo-festival-theme .piyamo-festival-banner__spark,
  body.piyamo-festival-theme .piyamo-festival-banner__aura {
    animation: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__motif,
  body.piyamo-festival-theme.piyamo-festival-key--october-lakshmi-puja .piyamo-festival-banner__inner > .piyamo-festival-garland .piyamo-festival-bulb {
    animation: none !important;
  }
}
