/* ==========================================================
   I LOVE VILLA — Diwali 2026 theme
   Sirf tab load hota hai jab diwali_on() true ho (inc/functions.php).
   Sab CSS hai — koi extra image download nahi (sirf hero photo).
   ========================================================== */
:root{
  --dw-gold:#E8A93B; --dw-gold-2:#F7D48A; --dw-marigold:#F28C1E; --dw-maroon:#6E1423; --dw-night:#2A0E14;
}

/* ---- top strip ---- */
.dwb{position:relative;z-index:61;background:linear-gradient(90deg,#4A0D1A,#7A1A2A 50%,#4A0D1A);color:#FCEBD0;
  font-family:Poppins,system-ui,sans-serif;border-bottom:1px solid rgba(232,169,59,.45)}
.dwb-in{max-width:1180px;margin:0 auto;padding:9px 18px;display:flex;align-items:center;justify-content:center;
  gap:6px 16px;flex-wrap:wrap;text-align:center}
.dwb-tag{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:.86rem;letter-spacing:.04em;color:var(--dw-gold-2)}
.dwb-tag svg{width:26px;height:17px}
.dwf{fill:#FFC34D;transform-origin:16px 9px;animation:dwflick 1.6s ease-in-out infinite alternate}
.dwp{fill:var(--dw-marigold)}
.dwb-msg{font-size:.88rem}
.dwb-msg b{color:#fff}
.dwb-clock{display:inline-flex;gap:5px}
.dwb-clock i{font-style:normal;min-width:38px;padding:3px 6px;border-radius:6px;background:rgba(0,0,0,.25);
  font-weight:700;font-size:.86rem;font-variant-numeric:tabular-nums;color:#fff}
.dwb-clock i small{display:block;font-size:.55rem;font-weight:600;opacity:.75;letter-spacing:.06em;text-transform:uppercase}
.dwb-go{background:linear-gradient(180deg,#F7D48A,#E8A93B);color:#4A0D1A;padding:7px 15px;border-radius:99px;
  font-weight:700;font-size:.84rem;white-space:nowrap;text-decoration:none}
.dwb-go:hover{filter:brightness(1.06)}

/* ---- toran (marigold + mango leaf) under the header ---- */
body.diwali header{border-bottom:0}
body.diwali header::after{content:"";position:absolute;left:0;right:0;top:100%;height:18px;pointer-events:none;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='18' viewBox='0 0 44 18'%3E%3Cpath d='M0 1 Q22 9 44 1' fill='none' stroke='%23B5651D' stroke-width='1.2'/%3E%3Cpath d='M11 4.6c-2.5 1.4-3.2 5.4-1.2 8.4 2-2.2 2.6-5.6 1.2-8.4z' fill='%233E7B3A'/%3E%3Cpath d='M33 4.6c2.5 1.4 3.2 5.4 1.2 8.4-2-2.2-2.6-5.6-1.2-8.4z' fill='%233E7B3A'/%3E%3Ccircle cx='22' cy='6.4' r='4.2' fill='%23F28C1E'/%3E%3Ccircle cx='22' cy='6.4' r='2.3' fill='%23FFB238'/%3E%3Ccircle cx='3' cy='2.6' r='2.6' fill='%23FFC21A'/%3E%3Ccircle cx='41' cy='2.6' r='2.6' fill='%23FFC21A'/%3E%3C/svg%3E") 0 0/44px 18px repeat-x,
    linear-gradient(180deg,rgba(255,255,255,.96) 0,rgba(255,255,255,.96) 45%,rgba(255,255,255,0) 100%)}
/* page ke top pe (hero ke upar) garland transparent hi rahe */
body.diwali.at-top header::after{background-size:44px 18px,0 0}

/* ---- hero: festive photo + glowing diyas ---- */
body.diwali .hero-v{background:var(--dw-night)}
body.diwali .hero-v::after{background:linear-gradient(90deg,rgba(42,14,20,.72) 0%,rgba(42,14,20,.38) 55%,rgba(42,14,20,.12) 100%),
  linear-gradient(0deg,rgba(42,14,20,.65),transparent 55%)}
body.diwali .hero-in h1 em{color:var(--dw-gold-2)}
body.diwali .eyebrow{border-color:rgba(247,212,138,.55);color:var(--dw-gold-2)}
.dw-sparks{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.dw-sparks i{position:absolute;bottom:-10px;width:6px;height:6px;border-radius:50%;
  background:radial-gradient(circle,#FFE3A1 0,#F7B23B 45%,rgba(247,178,59,0) 72%);
  opacity:0;animation:dwrise 9s linear infinite}
.dw-sparks i:nth-child(1){left:8%;animation-delay:0s}
.dw-sparks i:nth-child(2){left:22%;animation-delay:2.2s;width:4px;height:4px}
.dw-sparks i:nth-child(3){left:41%;animation-delay:4.6s}
.dw-sparks i:nth-child(4){left:63%;animation-delay:1.3s;width:5px;height:5px}
.dw-sparks i:nth-child(5){left:78%;animation-delay:3.4s}
.dw-sparks i:nth-child(6){left:92%;animation-delay:6s;width:4px;height:4px}
@keyframes dwrise{0%{transform:translateY(0);opacity:0}10%{opacity:.95}80%{opacity:.6}100%{transform:translateY(-75vh) translateX(18px);opacity:0}}
@keyframes dwflick{from{transform:scale(1,1)}to{transform:scale(.88,1.08)}}

/* ---- section headings: tiny diya above homepage h2 ---- */
body.diwali .secline h2::before{content:"";display:block;width:30px;height:18px;margin-bottom:6px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 20'%3E%3Cpath d='M16 1c2.6 3 3.6 5.2 3.6 7a3.6 3.6 0 01-7.2 0c0-1.8 1-4 3.6-7z' fill='%23F7B23B'/%3E%3Cpath d='M3 11h26c-.8 4.6-6 8-13 8S3.8 15.6 3 11z' fill='%23C4471D'/%3E%3C/svg%3E") 0 0/contain no-repeat}

/* ---- Diwali block on the homepage ---- */
.dwsec{position:relative;overflow:hidden;color:#FCEBD0;padding:64px 0;
  background:radial-gradient(ellipse at 15% 0%,rgba(232,169,59,.28),transparent 55%),
             radial-gradient(ellipse at 90% 100%,rgba(242,140,30,.22),transparent 55%),
             linear-gradient(160deg,#3A0F18,#5C1322 60%,#3A0F18)}
.dwsec::before,.dwsec::after{content:"";position:absolute;width:260px;height:260px;opacity:.16;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23F7D48A' stroke-width='1.4'%3E%3Ccircle cx='50' cy='50' r='8'/%3E%3Ccircle cx='50' cy='50' r='18'/%3E%3Ccircle cx='50' cy='50' r='34'/%3E%3Ccircle cx='50' cy='50' r='46'/%3E%3Cpath d='M50 4c6 10 6 18 0 28-6-10-6-18 0-28zM50 68c6 10 6 18 0 28-6-10-6-18 0-28zM4 50c10-6 18-6 28 0-10 6-18 6-28 0zM68 50c10-6 18-6 28 0-10 6-18 6-28 0zM17 17c11 3 17 9 18 18-11-3-17-9-18-18zM65 65c11 3 17 9 18 18-11-3-17-9-18-18zM83 17c-3 11-9 17-18 18 3-11 9-17 18-18zM35 65c-3 11-9 17-18 18 3-11 9-17 18-18z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.dwsec::before{top:-70px;left:-70px}
.dwsec::after{bottom:-70px;right:-70px}
.dwgrid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.dwsec .kick{display:inline-block;font:700 .72rem/1 Poppins,system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;
  color:var(--dw-gold-2);border:1px solid rgba(247,212,138,.5);padding:7px 12px;border-radius:99px}
.dwsec h2{color:#fff;margin:14px 0 12px;font-size:clamp(1.7rem,3.4vw,2.5rem)}
.dwsec h2 em{color:var(--dw-gold-2)}
.dwsec p{color:rgba(252,235,208,.86);max-width:52ch;margin:0}
.dwlist{list-style:none;padding:0;margin:22px 0 26px;display:grid;gap:12px}
.dwlist li{display:flex;gap:12px;align-items:flex-start;color:#FCEBD0}
.dwlist li::before{content:"";flex:0 0 22px;height:14px;margin-top:4px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 20'%3E%3Cpath d='M16 1c2.6 3 3.6 5.2 3.6 7a3.6 3.6 0 01-7.2 0c0-1.8 1-4 3.6-7z' fill='%23FFC34D'/%3E%3Cpath d='M3 11h26c-.8 4.6-6 8-13 8S3.8 15.6 3 11z' fill='%23F28C1E'/%3E%3C/svg%3E") 0 0/contain no-repeat}
.dwcta{display:flex;flex-wrap:wrap;gap:10px}
.dwcta .gold{background:linear-gradient(180deg,#F7D48A,#E8A93B);color:#4A0D1A;font-weight:700;padding:13px 22px;border-radius:99px}
.dwcta .line{border:1.5px solid rgba(247,212,138,.7);color:#FCEBD0;font-weight:700;padding:12px 22px;border-radius:99px}
.dwcta a:hover{filter:brightness(1.07)}
.dwdays{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.dwdays span{font:600 .78rem/1.2 Poppins,system-ui,sans-serif;padding:7px 11px;border-radius:10px;background:rgba(0,0,0,.22);
  border:1px solid rgba(247,212,138,.25);color:#FCEBD0}
.dwdays span b{display:block;color:var(--dw-gold-2);font-size:.86rem}
.dwdays span.main{background:rgba(232,169,59,.2);border-color:rgba(247,212,138,.7)}
.dwpic{position:relative;border-radius:22px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.45);aspect-ratio:16/10;
  border:1px solid rgba(247,212,138,.35)}
.dwpic img{width:100%;height:100%;object-fit:cover;display:block}

/* ---- small touches elsewhere ---- */
body.diwali .band{background:linear-gradient(160deg,#3A0F18,#5C1322)}
body.diwali .band .wa{background:linear-gradient(180deg,#F7D48A,#E8A93B)!important;color:#4A0D1A!important}
body.diwali .band .wa:hover{filter:brightness(1.06)}
body.diwali footer{border-top:3px solid var(--dw-gold)}
.dwnote{display:flex;gap:9px;align-items:flex-start;margin:12px 0 4px;padding:10px 12px;border-radius:12px;
  background:#FFF6E6;border:1px solid #F3D49A;color:#6E1423;font-size:.86rem;line-height:1.4}
.dwnote::before{content:"";flex:0 0 22px;height:14px;margin-top:2px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 20'%3E%3Cpath d='M16 1c2.6 3 3.6 5.2 3.6 7a3.6 3.6 0 01-7.2 0c0-1.8 1-4 3.6-7z' fill='%23F7B23B'/%3E%3Cpath d='M3 11h26c-.8 4.6-6 8-13 8S3.8 15.6 3 11z' fill='%23C4471D'/%3E%3C/svg%3E") 0 0/contain no-repeat}

@media (max-width:900px){ .dwgrid{grid-template-columns:1fr;gap:26px} }
@media (max-width:720px){
  .dwb-in{padding:8px 12px;gap:5px 10px}
  .dwb-tag,.dwb-msg{font-size:.78rem}
  .dwb-clock{display:none}
  .dwb-go{padding:6px 12px;font-size:.76rem}
  body.diwali header::after{height:14px;background-size:34px 14px,100% 100%}
  .home-page .dwb{order:-6}
  .dwsec{padding:44px 0}
  .dwsec::before,.dwsec::after{width:180px;height:180px}
  .dwpic{aspect-ratio:4/3;border-radius:18px}
  .hslide.dwslide::after{background:linear-gradient(180deg,rgba(42,14,20,.55) 0%,rgba(42,14,20,0) 36%,rgba(42,14,20,0) 50%,rgba(42,14,20,.78) 100%)}
  .hslide.dwslide .hcap small{color:var(--dw-gold-2);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
}
@media (prefers-reduced-motion:reduce){ .dw-sparks{display:none} .dwf{animation:none} }
/* phone: strip ek hi line me */
@media (max-width:720px){
  .dwb-in{flex-wrap:nowrap;justify-content:space-between;text-align:left;padding:7px 12px}
  .dwb-tag{font-size:0;gap:0}
  .dwb-tag svg{width:22px;height:15px}
  .dwb-msg{flex:1;min-width:0;font-size:.76rem;line-height:1.25}
}

/* ---- phone hero: kam text, sab center ---- */
@media (max-width:720px){
  body.diwali .hero-in{align-items:center;text-align:center;padding-top:26px}
  body.diwali .hero-in h1{font-size:1.32rem;line-height:1.18;max-width:20ch;margin:0 auto;text-wrap:balance}
  body.diwali .hcap{left:16px;right:16px;bottom:64px;text-align:center}
  body.diwali .hcap b{font-size:1.15rem;margin-bottom:10px}
  body.diwali .hslide.dwslide .hcap small{font-size:.8rem;margin-bottom:12px}
  body.diwali .hdots{right:auto;left:50%;transform:translateX(-50%);bottom:46px}
  body.diwali.at-top header::after{background-size:34px 14px,0 0}
}

/* ==========================================================
   v4 — StayVista-style clean mobile flow
   ========================================================== */
/* diya inline, heading ke saath (pehle akela line pe dikh raha tha) */
body.diwali .secline h2::before{display:inline-block;vertical-align:-1px;width:24px;height:15px;margin:0 8px 0 0}

/* glowing diya row along the bottom of the desktop hero */
.dw-diyas{position:absolute;left:0;right:0;bottom:0;height:46px;z-index:1;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='46' viewBox='0 0 120 46'%3E%3Cdefs%3E%3CradialGradient id='g'%3E%3Cstop offset='0' stop-color='%23FFD27A' stop-opacity='.9'/%3E%3Cstop offset='1' stop-color='%23FFB238' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='60' cy='20' r='18' fill='url(%23g)'/%3E%3Cpath d='M60 8c3 3.6 4.2 6 4.2 8.2a4.2 4.2 0 01-8.4 0c0-2.2 1.2-4.6 4.2-8.2z' fill='%23FFC34D'/%3E%3Cpath d='M44 27h32c-1 6-7.5 10-16 10s-15-4-16-10z' fill='%23C4471D'/%3E%3Cpath d='M47 29h26' stroke='%23F7D48A' stroke-width='1.4'/%3E%3C/svg%3E") 0 100%/120px 46px repeat-x;
  animation:dwglow 2.4s ease-in-out infinite alternate}
@keyframes dwglow{from{opacity:.85}to{opacity:1}}
.dw-mini{display:inline-flex;gap:3px;margin-right:6px;vertical-align:-2px}
.dw-mini svg{width:16px;height:11px}

/* strip close button */
.dwb-x{flex:0 0 auto;width:26px;height:26px;border:0;border-radius:50%;background:rgba(0,0,0,.22);color:#FCEBD0;
  font:400 17px/1 system-ui;cursor:pointer}
.dwb.off{display:none}

@media (max-width:720px){
  /* strip: ek patli line, StayVista jaisi */
  .dwb-in{gap:8px;padding:6px 10px 6px 12px}
  .dwb-tag{display:none}
  .dwb-msg{font-size:.78rem}
  .dwb-go{padding:5px 11px;font-size:.74rem}

  /* header photo ke upar transparent (sirf homepage, sirf top pe) */
  body.diwali.home-page .hero-v{margin-top:-56px}
  body.diwali.home-page .hero-in{padding-top:82px}
  body.diwali.home-page.at-top header{background:transparent;box-shadow:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
  body.diwali.home-page.at-top header .mark b{color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.35)}
  body.diwali.home-page.at-top header .roof{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
  body.diwali.home-page.at-top header .hsearch{color:#fff}
  body.diwali.home-page.at-top header .burger{background:transparent;border-color:rgba(255,255,255,.5)}
  body.diwali.home-page.at-top header .burger span{background:#fff}
  body.diwali.home-page.at-top header::after{top:100%}
  body.diwali.home-page header{transition:background .25s}

  /* hero: bada heading, ek CTA — baaki sab hata diya */
  body.diwali .hero-in h1{font-size:1.7rem;line-height:1.15;max-width:15ch;text-shadow:0 2px 18px rgba(0,0,0,.5)}
  body.diwali .hslide.dwslide .hcap{bottom:70px}
  body.diwali .hslide.dwslide .hcap small{display:flex;justify-content:center;align-items:center;gap:6px}
  body.diwali .hcap i{padding:10px 22px}
  .dw-diyas{display:none}
}
body.diwali .hero-bg{object-position:50% 12%;opacity:1}
body.diwali .hero-v::after{background:linear-gradient(90deg,rgba(42,14,20,.55) 0%,rgba(42,14,20,.3) 55%,rgba(42,14,20,.12) 100%),
  linear-gradient(0deg,rgba(42,14,20,.6),transparent 50%)}
body.diwali .hero-bg{animation:none!important}
/* v5: nayi creative — log beech me hain, isliye crop centre pe; photo me khud diye hain to CSS diye ki line band */
body.diwali .hero-bg{object-position:50% 58%}
.dw-diyas{display:none}
/* v6: sparkler creative — chehre upar-beech me */
body.diwali .hero-bg{object-position:50% 32%}
.dwpic img{object-position:50% 35%}
/* v7: mobile ki apni portrait creative — log neeche-beech me, heading upar aasmaan pe */
@media (max-width:720px){ .hslide.dwslide img{object-position:50% 22%} }
@media (max-width:720px){
  body.diwali .hslide.dwslide .hcap{bottom:54px}
  body.diwali .hslide.dwslide .hcap small{display:none}
}

/* ==========================================================
   v8 — admin-controlled offers: colours from the campaign (--fx-1 main, --fx-2 accent)
   Diya/toran sirf Diwali theme pe; baaki festivals pe saaf generic look.
   ========================================================== */
.dwb{background:linear-gradient(90deg,color-mix(in srgb,var(--fx-1) 78%,#000),var(--fx-1) 50%,color-mix(in srgb,var(--fx-1) 78%,#000))}
.dwb-tag,.dwsec .kick,.dwsec h2 em,.dwdays span b,body.diwali .hero-in h1 em,body.diwali .eyebrow{color:color-mix(in srgb,var(--fx-2) 45%,#fff)}
.dwb-go,.dwcta .gold,body.diwali .band .wa{background:linear-gradient(180deg,color-mix(in srgb,var(--fx-2) 55%,#fff),var(--fx-2))!important;
  color:color-mix(in srgb,var(--fx-1) 70%,#000)!important}
.dwsec{background:radial-gradient(ellipse at 15% 0%,color-mix(in srgb,var(--fx-2) 30%,transparent),transparent 55%),
  linear-gradient(160deg,color-mix(in srgb,var(--fx-1) 70%,#000),var(--fx-1) 60%,color-mix(in srgb,var(--fx-1) 70%,#000))}
body.diwali .band{background:linear-gradient(160deg,color-mix(in srgb,var(--fx-1) 70%,#000),var(--fx-1))}
body.diwali footer{border-top-color:var(--fx-2)}
.dwcta .line{border-color:color-mix(in srgb,var(--fx-2) 70%,transparent)}
.dwdays span.main{border-color:var(--fx-2)}
.dwnote{background:color-mix(in srgb,var(--fx-2) 12%,#fff);border-color:color-mix(in srgb,var(--fx-2) 45%,#fff);color:var(--fx-1)}
.dwb-code{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border:1px dashed color-mix(in srgb,var(--fx-2) 70%,#fff);
  border-radius:7px;font-weight:700;letter-spacing:.06em;color:#fff;background:rgba(0,0,0,.18);cursor:pointer;font-size:.8rem}

/* non-Diwali festivals: no toran / diyas */
body.festive:not(.theme-diwali) header::after,
body.festive:not(.theme-diwali) .secline h2::before,
body.festive:not(.theme-diwali) .dwb-tag svg,
body.festive:not(.theme-diwali) .dw-mini,
body.festive:not(.theme-diwali) .dwnote::before{display:none}
body.festive:not(.theme-diwali) .dwlist li::before{background:none;flex-basis:10px;height:10px;margin-top:7px;border-radius:50%;
  background-color:var(--fx-2)}
body.festive:not(.theme-diwali) .dwsec::before,body.festive:not(.theme-diwali) .dwsec::after{opacity:.08}

