html{scroll-behavior:smooth}
body{font-family:'Poppins',sans-serif;color:#1c1917;-webkit-tap-highlight-color:transparent}
.ticker{display:inline-block;white-space:nowrap;padding-left:100%;animation:tick 22s linear infinite}
@keyframes tick{to{transform:translateX(-100%)}}
.rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 16px 16px;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail>*{scroll-snap-align:start;flex:none}
.hide-scrollbar::-webkit-scrollbar{display:none}
.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}
details>summary{list-style:none;cursor:pointer}
details>summary::-webkit-details-marker{display:none}
details[open] .chev{transform:rotate(90deg)}
.chev{transition:transform .25s}
details[open] .chev-down{transform:rotate(180deg)}
.chev-down{transition:transform .25s}
.tl::before{content:"";position:absolute;left:34px;top:70px;bottom:-12px;width:4px;background:#D9506A;opacity:.8}
.tl:last-child::before{display:none}
.payment-badge{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:4px;padding:2px 6px;height:24px}
.package-card{transition:all .2s ease;border:2px solid transparent}
.package-card.selected{border-color:#B01E2F;background-color:#FFF5F6;box-shadow:0 4px 12px rgba(176,30,47,.1)}
.package-card .radio-circle{display:flex;align-items:center;justify-content:center}
.package-card.selected .radio-circle{border-color:#B01E2F;background-color:#B01E2F}
.package-card.selected .radio-circle::after{content:'';width:8px;height:8px;background:#fff;border-radius:50%;display:block}
.pulse-ring{animation:ring .9s ease}
@keyframes ring{0%,100%{box-shadow:0 0 0 0 rgba(176,30,47,0)}40%{box-shadow:0 0 0 6px rgba(176,30,47,.35)}}
.field{width:100%;border:1.5px solid #e7e5e4;border-radius:12px;padding:.75rem 1rem;font-size:.9rem;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}
.field:focus{border-color:#B01E2F;box-shadow:0 0 0 3px rgba(176,30,47,.12)}
.field:invalid:not(:placeholder-shown):not(:focus){border-color:#dc2626}
.lbl{display:block;font-size:.8rem;font-weight:600;color:#44403c;margin-bottom:.35rem}
@media(prefers-reduced-motion:reduce){.ticker{animation:none;padding-left:0}html{scroll-behavior:auto}}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #FFB800;outline-offset:2px}

/* ---------- photo slider (puja + chadhava pages) ---------- */
.ms-slider{position:relative;background:#111;overflow:hidden}
.ms-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;height:100%}
.ms-track::-webkit-scrollbar{display:none}
.ms-track>img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:center}
.ms-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:99px;background:rgba(0,0,0,.45);color:#fff;font-size:22px;line-height:1;display:none;place-items:center;backdrop-filter:blur(4px)}
.ms-arrow.l{left:10px}.ms-arrow.r{right:10px}
@media(hover:hover) and (min-width:640px){.ms-slider.multi .ms-arrow{display:grid}}
.ms-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;pointer-events:none}
.ms-dots i{width:7px;height:7px;border-radius:99px;background:rgba(255,255,255,.5);transition:all .2s}
.ms-dots i.on{width:20px;background:#fff}
.ms-count{position:absolute;right:12px;bottom:10px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;border-radius:99px;padding:3px 9px}
/* offering stepper on the chadhava page */
.of-add{border:1.5px solid #B01E2F;color:#B01E2F;background:#fff;border-radius:8px;font-weight:600;font-size:13px;padding:6px 18px;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.of-step{display:inline-flex;align-items:center;border:1.5px solid #B01E2F;border-radius:8px;background:#fff;overflow:hidden;font-weight:700;color:#B01E2F}
.of-step button{width:30px;height:30px;font-size:18px;line-height:1}.of-step span{min-width:24px;text-align:center;font-size:14px}
