/* A lightweight festival layer. All decoration stays outside reading controls. */
.diwali-season{--paper:#fff8ed;--line:#e8d5ae;background-color:var(--paper);background-image:radial-gradient(ellipse at 0 0,#f3c76c30,transparent 45%),radial-gradient(ellipse at 100% 0,#e9a07d20,transparent 45%)}
.diwali-season .hdr{border-bottom-color:#cfaa5c;box-shadow:0 2px 16px #8b5a1810}
.diwali-season .hdr:after{content:"";position:absolute;bottom:-5px;left:0;right:0;height:5px;pointer-events:none;background:radial-gradient(ellipse at 50% 0,#dd8b24 0 48%,transparent 53%) 0 0/18px 8px repeat-x;opacity:.65}
.diwali-ribbon{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 18px;background:#4b1838;color:#ffe9bb;font-size:14px;text-align:center;line-height:1.5;border-bottom:1px solid #b48643}
.diwali-ribbon:hover{background:#602046;color:#fff3d8}
.diwali-welcome{position:relative;isolation:isolate;overflow:hidden;min-height:300px;margin:22px 0 24px;border:1px solid #c9a15d;border-radius:24px;background:#28132f;box-shadow:0 12px 32px #5e321419;color:#fff5dc}
.diwali-art{position:absolute;right:0;top:0;width:53%;height:100%;object-fit:cover;object-position:50% 28%;z-index:-3}
.diwali-glow{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#28132f 0%,#28132ff5 34%,#28132f9c 56%,#28132f05 85%)}
.diwali-welcome:after{content:"";position:absolute;inset:9px;border:1px solid #f7cc752b;border-radius:17px;pointer-events:none;z-index:-1}
.diwali-copy{position:relative;padding:30px 36px;width:66%;max-width:690px}
.diwali-kicker{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:#ffdb95;font-size:13px;letter-spacing:.025em}
.diwali-lamp{position:relative;display:inline-block;width:25px;height:12px;background:linear-gradient(#f8cb70,#bd6c29);border-radius:3px 3px 16px 16px;flex:0 0 25px;margin-top:10px;box-shadow:0 0 24px #ffc76138}
.diwali-lamp i{position:absolute;left:9px;bottom:9px;width:9px;height:17px;border-radius:80% 15% 70% 30%;background:linear-gradient(#fff8bf,#ffc557);transform:rotate(-8deg);box-shadow:0 0 13px #ffb43f88;animation:diwali-flame 5s ease-in-out infinite}
.diwali-welcome h2{font-family:var(--disp);font-weight:700;font-size:clamp(27px,3.1vw,40px);line-height:1.3;letter-spacing:-.025em;color:#fff4d7;margin:0 0 12px;text-wrap:balance}
.diwali-description{font-size:16px;line-height:1.7;color:#f2dfce;margin:0 0 21px;max-width:450px}
.diwali-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.diwali-action,.diwali-quiet{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:45px;padding:10px 18px;border-radius:999px;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none}
.diwali-action{background:#ffe0a1;color:#35132d;border:1px solid #ffe0a1;box-shadow:0 3px 14px #0002}
.diwali-action:hover{background:#fff0cf;color:#35132d}
.diwali-quiet{color:#fff0d2;border:1px solid #d9b98273;background:#fff1}
.diwali-quiet:hover{background:#fff2;color:#fff5dc}
.diwali-action:focus-visible,.diwali-quiet:focus-visible,.diwali-ribbon:focus-visible{outline:3px solid #f6b645;outline-offset:4px}
.diwali-small{margin:15px 0 0;font-size:12px;color:#dfc9bc;display:flex;gap:9px;flex-wrap:wrap}
@keyframes diwali-flame{50%{transform:rotate(7deg) scale(.92);box-shadow:0 0 20px #ffb43f66}}
@media(max-width:760px){.diwali-welcome{margin:16px 0 18px;min-height:0;border-radius:20px}.diwali-copy{padding:23px 22px;width:100%;max-width:540px}.diwali-art{width:100%;opacity:.47;object-position:50% 26%}.diwali-glow{background:linear-gradient(90deg,#28132ff5,#28132fd4 55%,#28132f70)}.diwali-welcome h2{max-width:360px;font-size:28px}.diwali-description{font-size:14px;margin-bottom:16px;max-width:340px}.diwali-kicker{font-size:11px;margin-bottom:12px}.diwali-action,.diwali-quiet{font-size:12px;padding:9px 14px;min-height:43px}.diwali-actions{gap:8px}.diwali-small{font-size:10px;margin-top:13px}.diwali-ribbon{font-size:12px;padding:9px 14px}}
@media(prefers-reduced-motion:reduce){.diwali-lamp i{animation:none}}
@media print{.diwali-welcome,.diwali-ribbon,.diwali-season .hdr:after{display:none}.diwali-season{background:#fff}}
