/* KEYURA — festive theme decorations (all themes)
   Upload to: /public_html/festive/festive.css
   Loaded ONLY while a festival theme is on (see _festive.php). Colours come from
   the --fx-* variables printed for the active theme. Product photos are never
   covered or recoloured. */

/* ── Festive bar (above the announcement line) ───────────────────────────── */
.fx-bar{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--fx-night),var(--fx-night2) 50%,var(--fx-night));
  color:var(--fx-gold2);font:500 12.5px/1.3 'Jost','Poppins',system-ui,sans-serif;letter-spacing:.04em;text-align:center;padding:8px 44px}
.fx-bar::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 35%,rgba(255,236,180,.22) 50%,transparent 65%);background-size:250% 100%;animation:fxShine 5.5s ease-in-out infinite}
.fx-bar b{color:#fff;font-weight:600}
.fx-bar .fx-sep{opacity:.45;margin:0 9px}
.fx-bar .fx-chip{display:inline-block;margin-left:8px;padding:2px 10px;border:1px solid rgba(248,217,138,.45);border-radius:20px;font-size:11.5px;color:var(--fx-gold2);white-space:nowrap}
.fx-bar .fx-ic{position:absolute;top:50%;transform:translateY(-50%);width:24px;height:24px}
.fx-bar .fx-ic.l{left:14px}.fx-bar .fx-ic.r{right:14px}
.fx-bar .fx-short{display:none}
@keyframes fxShine{0%{background-position:150% 0}60%,100%{background-position:-60% 0}}
@media(max-width:700px){
  .fx-bar{font-size:11.5px;padding:7px 36px}
  .fx-bar .fx-long{display:none}.fx-bar .fx-short{display:inline}
  .fx-bar .fx-ic{width:20px;height:20px}.fx-bar .fx-ic.l{left:10px}.fx-bar .fx-ic.r{right:10px}
}

/* ── Garland hanging from the sticky header ──────────────────────────────── */
.fx-garland{position:absolute;left:0;right:0;top:100%;height:44px;pointer-events:none;z-index:5;overflow:hidden}
.fx-garland{transition:opacity .35s,transform .35s}
.fx-garland.fx-off{opacity:0;transform:translateY(-10px)}
.fx-garland-space{height:28px}
@media(max-width:700px){.fx-garland-space{height:22px}}
.fx-garland svg{display:block;width:100%;height:44px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}
.fx-garland .fx-sway{transform-origin:50% 0;animation:fxSway 7s ease-in-out infinite}
.fx-bulb{animation:fxTwinkle 2.4s ease-in-out infinite}
@keyframes fxSway{0%,100%{transform:rotate(0)}50%{transform:rotate(.25deg) translateY(.6px)}}
@keyframes fxTwinkle{0%,100%{opacity:1}50%{opacity:.35}}
@media(max-width:700px){.fx-garland,.fx-garland svg{height:36px}}

/* ── Lamp-light embers over the homepage hero ────────────────────────────── */
.fx-embers{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}

/* ── Section headings: a small lamp on the tag, a gold ornament under h2 ── */
.kc-fx .section-tag::before{content:'';display:inline-block;width:15px;height:15px;margin:0 6px -2px 0;background:var(--fx-icon) center/contain no-repeat}
.kc-fx .section-head h2::after{content:'';display:block;width:120px;height:14px;margin:8px auto 0;opacity:.9;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 14'%3E%3Cg fill='none' stroke='%23d4a548' stroke-width='1'%3E%3Cpath d='M2 7h40M78 7h40'/%3E%3Cpath d='M46 7l7-5 7 5-7 5z'/%3E%3Cpath d='M60 7l7-5 7 5-7 5z'/%3E%3C/g%3E%3Ccircle cx='60' cy='7' r='1.6' fill='%23d4a548'/%3E%3Ccircle cx='42' cy='7' r='1.2' fill='%23d4a548'/%3E%3Ccircle cx='78' cy='7' r='1.2' fill='%23d4a548'/%3E%3C/svg%3E") center/contain no-repeat}

/* ── Product cards: gold hairline + warm lamplight on hover ──────────────── */
.kc-fx .prod-card{transition:box-shadow .35s,transform .25s,border-color .35s}
.kc-fx .prod-card:hover,.kc-fx .prod-card:focus-within{border-color:var(--fx-gold);
  box-shadow:0 0 0 1px var(--fx-gold),0 14px 34px -8px rgba(233,160,60,.42)}
.fx-pick{position:absolute;left:8px;bottom:8px;z-index:3;display:inline-flex;align-items:center;gap:5px;padding:4px 9px 4px 6px;
  border-radius:20px;background:rgba(28,13,25,.86);color:var(--fx-gold2);font:600 10.5px/1 'Jost','Poppins',sans-serif;letter-spacing:.06em;
  box-shadow:0 2px 8px rgba(0,0,0,.25);pointer-events:none}
.fx-pick svg{width:14px;height:14px}
.fx-pick.fx-pick-pdp{position:static;margin:0 0 8px;padding:5px 11px 5px 7px;font-size:11px}

/* ── Product page ────────────────────────────────────────────────────────── */
.kc-fx .gallery-main-wrap{box-shadow:0 0 0 1px rgba(233,176,75,.55),0 18px 40px -18px rgba(233,160,60,.45)}
.fx-promise{display:flex;align-items:center;gap:11px;margin:2px 0 14px;padding:11px 14px;border-radius:10px;
  background:linear-gradient(120deg,#fff8ea,#fdecc8);border:1px solid #efd193;color:#4a3518;font-size:13px;line-height:1.4}
.fx-promise svg{flex:0 0 30px;width:30px;height:30px}
.fx-promise b{display:block;color:#2b1d0c;font-size:13.5px}

/* ── Add-to-cart sparkle ─────────────────────────────────────────────────── */
.fx-spark{position:fixed;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;pointer-events:none;z-index:99999;
  background:radial-gradient(circle,#fff 0,var(--fx-gold2) 40%,var(--fx-gold) 70%,transparent 72%);
  animation:fxSpark .75s cubic-bezier(.15,.7,.3,1) forwards}
@keyframes fxSpark{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}

/* ── Cart & drawer savings strip: festive icon ───────────────────────────── */
.kc-fx #kcd-savings>span:first-child,.kc-fx #cart-saving-strip .css-ic{font-size:0;background:var(--fx-icon) center/16px no-repeat,var(--fx-night)}

@media(prefers-reduced-motion:reduce){
  .fx-bar::after,.fx-garland .fx-sway,.fx-bulb{animation:none}
  .fx-embers{display:none}
}
