/* Diwali season add-on (all pages). festive.js removes it after Bhai Dooj; to switch off early, delete the two include lines from each page. */

/* highlighted "Diwali Hampers" link in the desktop menu and the phone strip */
.fest-link{display:inline-flex;align-items:center;gap:4px;font-weight:700!important;color:#7A3B00!important;
  background:linear-gradient(135deg,#FFE7A3,#F7C65C 55%,#F2A93B);border:1px solid #E9B44C;border-radius:999px;
  padding:5px 12px;margin:-5px 0;box-shadow:0 0 0 0 rgba(242,169,59,.55);animation:fest-pulse 2.4s ease-in-out infinite;text-decoration:none!important}
.fest-link:hover{color:#5A2B00!important;filter:brightness(1.05)}
.site-strip a.fest-link{margin:0;padding:6px 12px;font-size:13px;border-color:#E9B44C}
@keyframes fest-pulse{0%,100%{box-shadow:0 0 0 0 rgba(242,169,59,.5)}50%{box-shadow:0 0 0 6px rgba(242,169,59,0)}}

/* fairy lights hanging under the sticky header */
.fairy{position:absolute;left:0;right:0;top:100%;height:18px;pointer-events:none;z-index:60;overflow:hidden;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath d='M0 1 Q18 12 36 1' stroke='%23A88B5A' stroke-width='1' fill='none'/%3E%3C/svg%3E") repeat-x 0 0/36px 12px}
.fairy i{position:absolute;top:6px;width:6px;height:9px;margin-left:-3px;border-radius:50% 50% 45% 45%;
  background:var(--c);box-shadow:0 0 5px 2px var(--c);animation:fest-twinkle 2.2s ease-in-out infinite;animation-delay:var(--d)}
.fairy i::before{content:'';position:absolute;top:-2px;left:1.5px;width:3px;height:3px;border-radius:1px;background:#8C7448}
/* phones: a normal row under the page-link strip */
.fairy.flow{position:relative;top:auto;margin-bottom:-18px}
@keyframes fest-twinkle{0%,100%{opacity:1}50%{opacity:.35;box-shadow:0 0 2px 0 var(--c)}}

@media (prefers-reduced-motion: reduce){.fest-link,.fairy i{animation:none}}


/* Diwali sky-rocket cursor (desktop / mouse only); over links and buttons its fuse is lit */
@media (pointer: fine){
  html.fest-on, html.fest-on body{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cg%20transform%3D%22rotate%28-45%2016%2016%29%22%3E%3Cpath%20d%3D%22M15%2018.5%20Q16%2021.5%2017%2018.5Z%22%20fill%3D%22%23FFB25B%22%2F%3E%3Crect%20x%3D%2219.3%22%20y%3D%2211%22%20width%3D%221.6%22%20height%3D%2220%22%20rx%3D%22.6%22%20fill%3D%22%23C08A4B%22%20stroke%3D%22%237A4E1F%22%20stroke-width%3D%22.5%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%227%22%20width%3D%227%22%20height%3D%2211.5%22%20rx%3D%221%22%20fill%3D%22%23D93B5B%22%20stroke%3D%22%235D2E8C%22%20stroke-width%3D%221%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%2210%22%20width%3D%227%22%20height%3D%221.6%22%20fill%3D%22%23F7C65C%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%2214.2%22%20width%3D%227%22%20height%3D%221.6%22%20fill%3D%22%23F7C65C%22%2F%3E%3Cpath%20d%3D%22M16%201%20L19.8%207.2%20L12.2%207.2Z%22%20fill%3D%22%233FA36B%22%20stroke%3D%22%235D2E8C%22%20stroke-width%3D%221%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 5 5, auto}
  html.fest-on a, html.fest-on button, html.fest-on [role="button"], html.fest-on label, html.fest-on summary{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cg%20transform%3D%22rotate%28-45%2016%2016%29%22%3E%3Cpath%20d%3D%22M14%2018.5%20Q16%2026%2018%2018.5Z%22%20fill%3D%22%23FF8A3D%22%2F%3E%3Cpath%20d%3D%22M15%2018.5%20Q16%2023%2017%2018.5Z%22%20fill%3D%22%23FFE27A%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2224%22%20r%3D%221.1%22%20fill%3D%22%23FFD36B%22%2F%3E%3Ccircle%20cx%3D%2219.5%22%20cy%3D%2225.5%22%20r%3D%221%22%20fill%3D%22%23FF8FC4%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2227.5%22%20r%3D%22.9%22%20fill%3D%22%23FFD36B%22%2F%3E%3Crect%20x%3D%2219.3%22%20y%3D%2211%22%20width%3D%221.6%22%20height%3D%2220%22%20rx%3D%22.6%22%20fill%3D%22%23C08A4B%22%20stroke%3D%22%237A4E1F%22%20stroke-width%3D%22.5%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%227%22%20width%3D%227%22%20height%3D%2211.5%22%20rx%3D%221%22%20fill%3D%22%23D93B5B%22%20stroke%3D%22%235D2E8C%22%20stroke-width%3D%221%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%2210%22%20width%3D%227%22%20height%3D%221.6%22%20fill%3D%22%23F7C65C%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%2214.2%22%20width%3D%227%22%20height%3D%221.6%22%20fill%3D%22%23F7C65C%22%2F%3E%3Cpath%20d%3D%22M16%201%20L19.8%207.2%20L12.2%207.2Z%22%20fill%3D%22%233FA36B%22%20stroke%3D%22%235D2E8C%22%20stroke-width%3D%221%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 5 5, pointer}
  html.fest-on input, html.fest-on textarea, html.fest-on select{cursor:auto}
}

/* click / tap: a tiny sky-rocket shoots up and bursts */
.fest-launch{position:fixed;left:0;top:0;width:3px;height:16px;margin:-8px 0 0 -1.5px;border-radius:2px;pointer-events:none;z-index:9999;
  background:linear-gradient(to bottom,#FFF1B8,#FFB25B 45%,rgba(255,138,61,0));box-shadow:0 0 6px 1px rgba(255,190,90,.8);
  transition:transform .42s cubic-bezier(.2,.6,.35,1),opacity .1s linear .38s}
.fest-spark{position:fixed;left:0;top:0;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;pointer-events:none;z-index:9999;
  background:var(--c);box-shadow:0 0 6px 1px var(--c);transition:transform .8s cubic-bezier(.12,.75,.3,1),opacity .8s ease-in}
.fest-spark.go{opacity:0}
.fest-flash{position:fixed;left:0;top:0;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;pointer-events:none;z-index:9999;
  background:radial-gradient(#fff,#FFE27A 40%,rgba(255,211,107,0) 70%);transition:transform .3s ease-out,opacity .3s ease-out}

/* magic trail behind the rocket cursor */
.fest-trail{position:fixed;left:0;top:0;width:var(--s);height:var(--s);margin:calc(var(--s)/-2) 0 0 calc(var(--s)/-2);pointer-events:none;z-index:9998;
  background:var(--c);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);filter:drop-shadow(0 0 3px var(--c));
  transition:transform .7s ease-out,opacity .7s ease-in}
.fest-trail.dot{clip-path:none;border-radius:50%}
.fest-trail.go{opacity:0}

/* scrolling offer bar above the header */
.fest-bar{position:relative;z-index:61;display:block;overflow:hidden;background:#5D2E8C;color:#fff;text-decoration:none!important;
  font-family:'Quicksand',sans-serif;font-weight:700;font-size:13.5px;line-height:34px;height:34px;white-space:nowrap}
.fest-bar:hover{color:#fff}
.fest-bar .msg{display:inline-block;padding:0 4px;transform:translateX(100vw)}
.fest-bar b{color:#FFD36B}
@media (prefers-reduced-motion: reduce){.fest-bar{text-align:center}.fest-bar .msg{transform:none}}
