.celebration-countdown{max-width:580px;margin:0 auto 42px;padding:24px 18px 22px;text-align:center;border-block:1px solid #bc904e88;background:radial-gradient(ellipse at 50% 100%,#e7c97d24,transparent 75%)}
.countdown-kicker{font-family:var(--sans);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:#90652c;margin:0 0 10px}.celebration-countdown h3{font-family:var(--serif);font-weight:400;color:var(--maroon);font-size:clamp(1.6rem,4vw,2.3rem);margin:0}.countdown-date{font-size:.76rem;margin:8px 0 20px;color:var(--muted)}.countdown-digits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.countdown-digits[hidden]{display:none}.countdown-digits>div{background:linear-gradient(145deg,#fffdf6,#f4e5c7);border:1px solid #d9b875;border-radius:12px 12px 3px 3px;box-shadow:0 3px 0 #b78b4933,inset 0 1px #fff;padding:12px 3px 9px}.countdown-digits b{display:block;font-family:var(--serif);font-weight:400;font-variant-numeric:tabular-nums;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1;color:var(--maroon)}.countdown-digits span{font-size:.6rem;color:#805b36;display:block;margin-top:7px}.countdown-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.diya-ritual{position:relative;max-width:480px;margin:35px auto;padding:24px 12px 16px;border-block:1px solid #bd945958;text-align:center;isolation:isolate}.heartfelt-chapter .diya-invitation{font-size:1.2rem;line-height:1.5;margin:0 auto 0;max-width:340px}.diya-button{position:relative;display:block;width:240px;max-width:100%;padding:0 8px 12px;margin:auto;border:0;background:transparent;color:var(--maroon);cursor:pointer;perspective:600px;isolation:isolate;touch-action:manipulation}.diya-button:focus-visible{outline:2px solid #8d2b40;outline-offset:5px;border-radius:40%}.diya-art{position:relative;width:100%;height:auto;display:block;filter:drop-shadow(0 8px 5px #6f431c20);transform:rotateX(8deg);transition:transform .5s}.diya-button:hover .diya-art{transform:rotateX(0deg) translateY(-3px)}.diya-button:active .diya-art{transform:translateY(2px)}.diya-flame,.diya-sparks{opacity:0;transform-origin:120px 94px}.diya-flame{transform:scale(.12,.04);transition:opacity 1.25s ease,transform 1.65s cubic-bezier(.16,.75,.27,1)}.diya-flame-motion,.diya-flame-core{transform-box:view-box;transform-origin:120px 94px}.diya-halo{position:absolute;inset:0 -30px 15px;z-index:-1;background:radial-gradient(ellipse at 50% 40%,#ffc64f85 0%,#ffd87d45 30%,transparent 70%);opacity:0;transform:scale(.7);transition:opacity 1.8s ease,transform 2s ease}.is-lit .diya-halo{opacity:1;transform:scale(1);animation:diya-glow 3.6s ease-in-out 1.8s infinite}.is-lit .diya-flame{opacity:1;transform:scale(1);filter:drop-shadow(0 0 6px #ffc34b99)}.is-lit .diya-flame-motion{animation:diya-flicker 2.3s ease-in-out infinite}.is-lit .diya-flame-core{animation:diya-core 1.7s ease-in-out infinite alternate}.is-lit .diya-sparks{animation:diya-blessing 2.4s ease-out both}.diya-action{display:block;font-family:var(--serif);font-size:1.35rem;border-bottom:1px solid #bb955b77;padding-bottom:6px}.heartfelt-chapter .diya-message{font-family:var(--sans);font-size:.76rem;line-height:1.6;margin:12px 0 0;color:#87623f}.cinematic-entrance button.seal{padding:0;cursor:pointer;appearance:none;z-index:8;touch-action:manipulation}.cinematic-entrance button.seal:focus-visible{outline:3px solid #fff1bd;outline-offset:6px}.cinematic-entrance button.seal:not(:disabled):hover{filter:brightness(1.12)}.cinematic-entrance button.seal:disabled{cursor:wait}.seal-hint{position:relative;font-size:.72rem;letter-spacing:.07em;color:#f6dfa4;margin:0 0 15px;text-align:center}
@keyframes diya-flicker{0%,100%{transform:rotate(-4deg) scale(.96,1)}22%{transform:rotate(3deg) scale(1.04,.91)}47%{transform:rotate(-2deg) scale(.89,1.12)}73%{transform:rotate(5deg) scale(1.02,.96)}}
@keyframes diya-core{from{transform:scale(.82,.9);opacity:.72}to{transform:scale(1.08,1.12);opacity:1}}
@keyframes diya-glow{0%,100%{transform:scale(.97);filter:brightness(.95)}50%{transform:scale(1.1);filter:brightness(1.15)}}
@keyframes diya-blessing{0%{opacity:0;transform:translateY(15px)}30%{opacity:1}100%{opacity:0;transform:translateY(-28px)}}
@media(max-width:400px){.celebration-countdown{padding-inline:8px}.countdown-digits{gap:5px}.countdown-digits span{font-size:.55rem}.diya-button{width:210px}}
@media(prefers-reduced-motion:reduce){.is-lit .diya-flame-motion,.is-lit .diya-flame-core,.is-lit .diya-halo,.is-lit .diya-sparks{animation:none}.diya-art,.diya-halo,.diya-flame{transition:none}.diya-button:hover .diya-art{transform:none}}

.diya-action>span{display:inline;font:inherit}.diya-invitation{font-family:var(--serif);font-weight:400}.data-saving .is-lit .diya-flame-motion,.data-saving .is-lit .diya-flame-core,.data-saving .is-lit .diya-halo{animation:none}
