/* v18: isolated festive layer; original v17 styles retained. */
.dw-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 7vw;background:radial-gradient(ellipse at 80% 0%,#66431e,transparent 65%),#211b17;color:#fff3d4;border-bottom:1px solid #ac813e}
.dw-banner>div{display:grid;gap:5px}.dw-kicker{font:700 10px/1.6 "DM Sans",sans-serif;letter-spacing:.22em;color:#d9b877;margin:0}.dw-banner strong{font:24px/1.25 "Playfair Display",serif}.dw-banner>div>span:not(.dw-kicker){font-size:14px}.dw-banner small{font-size:10px;color:#d2c3ac;max-width:600px}.dw-cta{border:1px solid #e3c186;background:linear-gradient(115deg,#f6dfab,#c99b52);color:#241b0c;padding:15px 21px;border-radius:5px;cursor:pointer;font:700 14px/1.3 "DM Sans",sans-serif;box-shadow:0 6px 20px #0002}.dw-cta span{margin-left:16px}.dw-cta:hover{filter:brightness(1.08)}.dw-cta:focus-visible,.dw-close:focus-visible,.dw-later:focus-visible{outline:3px solid #bd8a32;outline-offset:4px}
.dw-dialog{padding:0;border:1px solid #b38b50;border-radius:16px;width:min(840px,calc(100% - 28px));max-height:90dvh;overflow:auto;background:#fcf6eb;color:#2d261d;box-shadow:0 28px 100px #0007}.dw-dialog[open]{display:grid;grid-template-columns:.8fr 1fr}.dw-dialog::backdrop{background:#17120dc9;backdrop-filter:blur(5px)}.dw-close{position:absolute;right:12px;top:9px;z-index:3;border:0;border-radius:50%;background:#fff9;color:#322416;width:36px;height:36px;font-size:27px;cursor:pointer}.dw-copy{padding:42px 34px 24px}.dw-copy .dw-kicker{color:#8d642d;font-size:9px}.dw-season{font:italic 19px "Playfair Display",serif;color:#9d7136;margin:23px 0 9px}.dw-copy h2{font:36px/1.12 "Playfair Display",serif;margin:0 0 25px;letter-spacing:-.025em}.dw-label{font-size:10px;letter-spacing:.15em;margin:0}.dw-price{font:58px/1.1 "Playfair Display",serif;color:#8f6023;margin:6px 0 16px}.dw-price span{font-size:23px}.dw-description{font-size:13px;line-height:1.65;color:#716557;margin-bottom:20px}.dw-copy .dw-cta{width:100%;text-align:center}.dw-terms{font-size:10px;line-height:1.6;color:#72675a;margin:13px 0}.dw-later{display:block;margin:auto;background:none;border:0;padding:8px;color:#75654e;text-decoration:underline;cursor:pointer;font-size:12px}.dw-art{position:relative;overflow:hidden;min-height:460px;background:radial-gradient(ellipse at 50% 62%,#a5742d88,transparent 50%),linear-gradient(150deg,#342b22,#171714);color:#eed195}.dw-arch{position:absolute;inset:46px 28px 58px;border:1px solid #c99c5366;border-radius:160px 160px 0 0;box-shadow:0 0 0 12px #c99c530c,0 0 0 13px #c99c5333}.dw-flame{position:absolute;width:34px;height:68px;left:calc(50% - 17px);top:43%;background:linear-gradient(25deg,#e29930,#ffefb3 75%);border-radius:85% 10% 65% 35%;transform:rotate(-12deg);box-shadow:0 0 42px #e5a23a99;animation:dw-glow 3s ease-in-out infinite alternate}.dw-diya{position:absolute;left:calc(50% - 75px);top:calc(43% + 76px);width:150px;height:58px;border-radius:8px 8px 100px 100px;background:linear-gradient(#efc679,#936024);box-shadow:0 24px 55px #d5a04730}.dw-diya:before{content:"";position:absolute;left:0;right:0;top:-8px;height:17px;background:#c29349;border:2px solid #f1cb7e;border-radius:50%}.dw-art-caption{position:absolute;bottom:92px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.22em}.dw-spark{position:absolute;color:#e6bf79}.s1{top:22%;left:28%;font-size:25px}.s2{top:33%;right:19%;font-size:34px}.s3{top:16%;right:32%;font-size:13px}@keyframes dw-glow{to{box-shadow:0 0 65px #e5a23abb;opacity:.85}}
@media(max-width:600px){.dw-banner{padding:18px 20px;gap:14px;align-items:stretch;flex-direction:column}.dw-banner strong{font-size:22px}.dw-banner .dw-cta{align-self:flex-start;padding:11px 16px}.dw-dialog[open]{grid-template-columns:1fr}.dw-art{min-height:115px}.dw-arch{inset:14px 25% -90px}.dw-art-caption{display:none}.dw-flame{width:15px;height:31px;left:calc(50% - 7px);top:25px}.dw-diya{width:78px;height:28px;left:calc(50% - 39px);top:65px}.dw-diya:before{height:10px;top:-5px}.dw-copy{padding:22px 25px 17px}.dw-season{margin:12px 0 7px}.dw-copy h2{font-size:29px;margin-bottom:18px}.dw-price{font-size:46px;margin-bottom:10px}.dw-description{margin:10px 0 14px}.dw-close{background:#f6e8ce}.dw-terms{font-size:10px}}
@media(prefers-reduced-motion:reduce){.dw-flame{animation:none}}

/* v19 approved luxury concept + perspective interaction */
.dw-banner{background:linear-gradient(90deg,#26050beb,#390710f2),url('assets/diwali-luxury.webp') center/cover;border-bottom-color:#cba34e}
.dw-dialog{width:min(1060px,calc(100% - 32px));border:1px solid #efd087;background:#30050e url('assets/diwali-luxury.webp') center/cover;color:#fff4dc;box-shadow:0 35px 100px #0009,0 0 30px #cc8b2622;transform:perspective(1400px) rotateX(var(--dw-rx,0deg)) rotateY(var(--dw-ry,0deg));transition:transform .16s ease-out}
.dw-dialog[open]{grid-template-columns:1fr 1fr}.dw-art{background:none;min-height:580px}.dw-copy{position:relative;padding:60px 35px 30px;text-align:center;background:linear-gradient(90deg,transparent,#28040b44 30%,#28040b33);z-index:1}.dw-copy .dw-kicker{color:#edcb86;letter-spacing:.18em}.dw-season{display:inline-block;border:1px solid #d3a852;border-radius:24px;padding:8px 23px;font:12px/1.2 'DM Sans',sans-serif;letter-spacing:.2em;color:#ffe2a2;margin:20px 0}.dw-copy h2{font-size:39px;color:#fff4df;line-height:1.12;margin-bottom:27px}.dw-copy h2 span{color:#f0ca72}.dw-label{color:#ffebc7;font-size:11px;line-height:1.6}.dw-price{font-size:77px;letter-spacing:-.04em;color:#f4cf75;text-shadow:0 3px 1px #6e4314,0 0 24px #e7a53455;margin:10px 0 15px}.dw-price span{font-size:30px;letter-spacing:0}.dw-description{color:#f1dfc1;font:17px/1.5 'Playfair Display',serif;margin:12px 0 24px}.dw-terms{color:#e0c9ae}.dw-later{color:#eddbba}.dw-close{background:#22060cd9;border:1px solid #d3ac64;color:#ffe2a2;right:13px;top:13px}.dw-cta{position:relative;overflow:hidden;background:linear-gradient(115deg,#bf801d,#ffe5a1 48%,#ce993a);box-shadow:0 5px 0 #825415,0 9px 25px #bf811c30;transition:transform .2s,box-shadow .2s;border-color:#ffe1a0}.dw-cta:hover{transform:translateY(-3px);box-shadow:0 8px 0 #825415,0 14px 30px #bf811c55}.dw-cta:active{transform:translateY(1px);box-shadow:0 3px 0 #825415}.dw-cta:after{content:'';position:absolute;inset:-60% auto -60% -80%;width:35%;transform:rotate(25deg);background:linear-gradient(90deg,transparent,#fff8,transparent);animation:dw-shine 6s ease-in-out infinite;pointer-events:none}.dw-photo-glow{position:absolute;left:4%;bottom:8%;width:75%;height:30%;background:radial-gradient(ellipse,#ffb63533,transparent 70%);mix-blend-mode:screen;animation:dw-warmth 3s ease-in-out infinite alternate;pointer-events:none}
@keyframes dw-shine{0%,65%{left:-80%}100%{left:160%}}@keyframes dw-warmth{to{opacity:.3;transform:scale(1.08)}}
@media(max-width:700px){.dw-dialog[open]{grid-template-columns:1fr}.dw-dialog{background:#30050e;transform:none;max-height:92dvh}.dw-art{min-height:165px;background:url('assets/diwali-luxury.webp') left 44%/190% auto}.dw-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#30050e)}.dw-copy{padding:15px 23px 20px;background:radial-gradient(ellipse at top,#68101b55,transparent)}.dw-copy .dw-kicker{font-size:9px}.dw-season{margin:13px 0;font-size:10px;padding:6px 18px}.dw-copy h2{font-size:30px;margin-bottom:16px}.dw-price{font-size:59px;margin:7px 0}.dw-price span{font-size:24px}.dw-description{font-size:14px;margin:10px 0 17px}.dw-label{font-size:10px}.dw-terms{font-size:10px}.dw-close{z-index:4}}
@media(prefers-reduced-motion:reduce){.dw-dialog,.dw-cta{transition:none;transform:none!important}.dw-cta:after,.dw-photo-glow{animation:none}}

/* Gentle independent warm flicker; photograph stays still. */
.dw-light{position:absolute;pointer-events:none;display:block;border-radius:50%;background:radial-gradient(ellipse,#fff5bd99 0%,#ffc74b55 18%,#ff9a2022 40%,transparent 70%);mix-blend-mode:screen;opacity:.35;animation:dw-flicker 3.8s ease-in-out infinite;filter:blur(2px)}
.dw-light-1{left:25%;top:72%;width:15%;height:13%;animation-delay:-.8s}.dw-light-2{left:39%;top:75%;width:13%;height:12%;animation-duration:4.6s;animation-delay:-2.2s}.dw-light-3{left:54%;top:52%;width:12%;height:12%;animation-duration:3.3s;animation-delay:-1.1s}.dw-light-4{left:63%;top:20%;width:14%;height:15%;animation-duration:5.1s;animation-delay:-3.2s}.dw-light-5{left:83%;top:20%;width:12%;height:13%;animation-duration:4.2s;animation-delay:-1.8s}
@keyframes dw-flicker{0%,100%{opacity:.25;transform:scale(.92)}35%{opacity:.65;transform:scale(1.06)}65%{opacity:.4;transform:scale(.98)}82%{opacity:.55;transform:scale(1.03)}}
@media(max-width:700px){.dw-light-1{left:24%;top:68%}.dw-light-2{left:40%;top:71%}.dw-light-3{left:56%;top:44%}.dw-light-4{left:65%;top:3%}.dw-light-5{left:83%;top:4%}}
@media(prefers-reduced-motion:reduce){.dw-light{animation:none;opacity:.3}}
