/* Cuddle Boo - Diwali offer styling (added 3 Nov 2026). Remove the <link> to this file in index.html to switch it off. */
.dw-diya{display:inline-block;flex:none;line-height:0}
.dw-diya svg{display:block;width:100%;height:auto;overflow:visible}
.dw-flame{transform-box:fill-box;transform-origin:50% 100%;animation:dwFlick 2.4s ease-in-out infinite}
@keyframes dwFlick{0%,100%{transform:scale(1,1) rotate(0)}25%{transform:scale(.94,1.06) rotate(-2deg)}50%{transform:scale(1.04,.96) rotate(1.5deg)}75%{transform:scale(.97,1.04) rotate(-1deg)}}
@keyframes dwTwinkle{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}

/* hero badge */
.dw-hero-badge{display:flex;width:fit-content;max-width:100%;margin:0 auto 1.1rem;align-items:center;gap:.7rem;padding:.4rem 1.2rem .4rem .55rem;border-radius:999px;background:linear-gradient(135deg,rgba(243,210,122,.30),rgba(200,147,42,.16));border:1px solid rgba(243,210,122,.65);color:#fff;text-decoration:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 26px rgba(243,210,122,.28);transition:transform .2s ease,box-shadow .2s ease}
.dw-hero-badge:hover{transform:translateY(-2px);box-shadow:0 0 34px rgba(243,210,122,.42)}
.dw-hb-ic{width:36px}
.dw-hb-txt{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;text-align:left}
.dw-hb-txt strong{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:#F3D27A;font-weight:700}
.dw-hb-txt em{font-style:normal;font-size:.95rem;font-weight:600}
.dw-hb-txt b{color:#F3D27A;letter-spacing:.1em}

/* scrolling strip item */
.dw-mq{color:#F3D27A !important;font-weight:700}

/* offer band (below the hero) */
.dw-band{position:relative;background:linear-gradient(180deg,#FFFBF1 0%,#F6EAD0 100%);border-top:3px solid #C8932A;border-bottom:1px solid rgba(200,147,42,.35);overflow:hidden}
.dw-band::before,.dw-band::after{content:"\2726";position:absolute;color:#E1B04A;font-size:22px;animation:dwTwinkle 3.2s ease-in-out infinite;pointer-events:none}
.dw-band::before{left:5%;top:16%}
.dw-band::after{right:6%;bottom:18%;animation-delay:1.4s}
.dw-band-in{position:relative;max-width:1100px;margin:0 auto;padding:30px 24px;display:flex;align-items:center;justify-content:center;gap:38px;flex-wrap:wrap}
.dw-band-diya{width:124px;filter:drop-shadow(0 6px 16px rgba(200,147,42,.4))}
.dw-band-copy{text-align:center}
.dw-kicker{display:block;letter-spacing:.38em;font-weight:700;font-size:.8rem;color:#C8932A;margin-bottom:.35rem;text-transform:uppercase}
.dw-big{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(2.8rem,6vw,4.4rem);line-height:1;letter-spacing:-.02em}
.dw-big .dw-gold{color:#C8932A}
.dw-big .dw-navy{color:#0A1B3D}
.dw-sub{display:block;font-size:1.15rem;font-weight:500;color:#0A1B3D;letter-spacing:0;margin-top:.45rem}
.dw-band-copy p{margin:.7rem 0 0;color:#3A4560;font-size:.98rem}
.dw-band-code{text-align:center}
.dw-use{display:block;letter-spacing:.36em;font-size:.72rem;color:#5A6B8C;font-weight:600;margin-bottom:.35rem}
.dw-code{display:inline-flex;flex-direction:column;align-items:center;background:#fff;border:2px dashed #C8932A;border-radius:16px;padding:.55rem 1.9rem .5rem;font-family:'Outfit',sans-serif;font-weight:800;font-size:2.3rem;letter-spacing:.16em;color:#C8932A;cursor:pointer;box-shadow:0 8px 24px rgba(200,147,42,.18);transition:transform .15s ease}
.dw-code:hover{transform:translateY(-2px)}
.dw-code:focus-visible{outline:3px solid rgba(10,27,61,.5);outline-offset:3px}
.dw-copy-hint{font-family:'Outfit',sans-serif;font-size:.62rem;letter-spacing:.16em;font-weight:600;color:#5A6B8C;text-transform:uppercase;margin-top:.1rem}
.dw-cta{display:inline-block;margin-top:.9rem;background:#0A1B3D;color:#fff;padding:.75rem 1.8rem;border-radius:999px;font-weight:700;text-decoration:none}
.dw-cta:hover{background:#102450}
.dw-note{display:block;margin-top:.55rem;font-size:.8rem;color:#5A6B8C}

/* shop section note */
.dw-price-note{display:flex;align-items:center;justify-content:center;gap:.55rem;width:fit-content;max-width:100%;margin:.2rem auto .7rem;padding:.45rem 1rem;border-radius:999px;background:#FFF8E6;border:1px solid rgba(200,147,42,.4);color:#8A5A0A;font-size:.88rem;font-weight:600;text-align:center}
.dw-price-note b{letter-spacing:.08em;color:#C8932A}
.dw-pn-ic{width:22px}

/* cart drawer hint */
.dw-cart-hint{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0 0 .8rem;padding:.55rem .8rem;border-radius:10px;background:#FFF8E6;border:1px dashed rgba(200,147,42,.6);color:#8A5A0A;font-size:.85rem;font-weight:600;text-align:center}
.dw-cart-hint .dw-diya{width:20px}
.dw-cart-hint b{letter-spacing:.08em;color:#C8932A}

/* checkout coupon box */
.dw-coupon{margin:.2rem 0 1rem;padding:.85rem .95rem;border:1.5px dashed #C8932A;border-radius:12px;background:#FFFBF2}
.dw-cp-label{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.92rem;color:#0A1B3D;margin-bottom:.55rem}
.dw-cp-label .dw-diya{width:22px}
.dw-cp-row{display:flex;gap:.5rem}
.dw-cp-row input{flex:1;min-width:0;padding:.7rem .85rem;border:1px solid rgba(10,27,61,.2);border-radius:8px;font:inherit;font-size:16px;text-transform:uppercase;letter-spacing:.08em;background:#fff;color:#0A1B3D}
.dw-cp-row input:focus{outline:2px solid rgba(200,147,42,.55);border-color:#C8932A}
.dw-cp-row button{padding:.7rem 1.2rem;border:0;border-radius:8px;background:#0A1B3D;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.dw-cp-row button:disabled{opacity:.6;cursor:default}
.dw-cp-msg{margin-top:.5rem;font-size:.85rem;color:#5A6B8C}
.dw-cp-msg.err{color:#C62828}
.dw-cp-ok{display:flex;align-items:center;gap:.6rem;font-size:.92rem;color:#0A1B3D}
.dw-cp-check{flex:none;width:22px;height:22px;border-radius:50%;background:#1E8E3E;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px}
.dw-cp-remove{margin-left:auto;background:none;border:0;color:#5A6B8C;text-decoration:underline;cursor:pointer;font:inherit;font-size:.85rem}
.dw-line{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.92rem;color:#5A6B8C}
.dw-line.dw-save{color:#8A5A0A;font-weight:700}

@media (max-width:640px){
  .dw-band-in{flex-direction:column;gap:14px;padding:24px 18px}
  .dw-band-diya{width:86px}
  .dw-code{font-size:1.9rem;padding:.5rem 1.4rem .45rem}
  .dw-hero-badge{padding:.35rem 1rem .35rem .5rem}
  .dw-hb-ic{width:30px}
  .dw-hb-txt em{font-size:.88rem}
}
@media (prefers-reduced-motion:reduce){.dw-flame,.dw-band::before,.dw-band::after{animation:none}}
