1<!DOCTYPE html> 2<html lang="en"> 3<head>
3<script>(function(w,i,g){w[g]=w[g]||[];if(typeof w[g].push=='function')w[g].push(i)}) 4(window,'G-XFDQ8G3BJ6','google_tags_first_party');</script>
4<script async src="/4zbz/"></script>
4 5
5<script> 6 window.dataLayer = window.dataLayer || []; 7 function gtag(){dataLayer.push(arguments);} 8 gtag('js', new Date()); 9 gtag('set', 'developer_id.dY2E1Nz', true); 10 11 </script>
11 12 13 <meta charset="UTF-8"> 14 <!-- Google Tag Manager --> 15
15<script type="84aaaab7731110d08d2fb4dc-text/javascript">
vendor: 347 bytes, lines 15-19
15(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 16 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 17 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 18 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 19 })(window,document,'script','dataLayer','
19GTM-TW42BW9
vendor: 3 bytes, line 19
19');
19</script>
19 20 <!-- End Google Tag Manager --> 21 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 22 <title>Book Griha Pravesh E-Puja for Remove Vastu Dosha - 99Pandit</title> 23 <meta name="description" 24 content="Moving into a new home? Book an authentic Griha Pravesh E-Puja with 99Pandit. Expert Vedic rituals, Vastu Shanti, and customized muhurats for your new beginning!"> 25 <meta name="keywords" 26 content="Griha Pravesh Puja E-puja,"> 27 <meta name="robots" content="index, follow"> 28 <meta name="csrf-token" content="DTWAGsGhTOHavuoYIWVtRYYaXy8hP7JKnFP1m3Wl"> 29 <meta http-equiv="Cache-Control" content="public, max-age=31536000, immutable"> 30
30<script src="https://cdn.99pandit.com/app/js/jquery-3.6.0.min.js" type="84aaaab7731110d08d2fb4dc-text/javascript"></script>
30 31 <link rel="icon" href="https://cdn.99pandit.com/app/img/cropped-99pandit-favi-32x32.png" sizes="32x32"/> 32 33 34 35 <link rel="canonical" href="https://99pandit.com/App/e-puja/griha-pravesh-puja" /> 36 <!-- Preload fonts first --> 37<link rel="preload" as="font" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/webfonts/fa-solid-900.woff2" type="font/woff2" crossorigin> 38 39<!-- Preload important images --> 40 41 42 43<link rel="preload" as="image" href="https://cdn.99pandit.com/app/img/epuja/new/Griha-Pravesh-e-puja-banner.webp" fetchpriority="high"> 44<link rel="preload" as="image" href="https://cdn.99pandit.com/app/img/epuja/new/satyanarayan-e-puja-banner.webp" fetchpriority="high"> 45 46 47<!-- â Top of <head>: Only 4 important preconnects --> 48<link rel="preconnect" href="https://cdn.99pandit.com" crossorigin> 49<link rel="dns-prefetch" href="https://cdn.99pandit.com"> 50 51 52<link rel="preconnect" href="https://www.googletagmanager.com" crossorigin> 53 54<!-- â¡ Preload Critical JS --> 55<link rel="preload" href="https://cdn.99pandit.com/app/js/swiper-bundle.min.js" as="script"> 56<link rel="preload" href="https://99pandit.com/App/public/Epuja/css/bootstrap.min.css" as="script"> 57 58<!-- â¡ Preload Critical CSS --> 59<link rel="preload" href="https://99pandit.com/App/public/Epuja/css/bootstrap.min.css" as="style"> 60 61<!-- â Load Bootstrap Async -->
vendor: 138 bytes, lines 61-62
61 62<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
62<link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/bootstrap.min.css" 63 onload="this.onload=null;this.rel='stylesheet'"> 64<noscript> 65 <link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/bootstrap.min.css"> 66</noscript> 67 68<!-- â Font Awesome Async (no need to preconnect cdnjs) -->
vendor: 138 bytes, lines 68-69
68 69<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
69<link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" 70 as="style" 71 onload="this.onload=null;this.rel='stylesheet'"> 72<noscript> 73 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> 74</noscript> 75 76<!-- â Google Fonts (preload + async apply) -->
vendor: 138 bytes, lines 76-77
76 77<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
77<link rel="preload" 78 as="style" 79 href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Noto+Sans:wght@400;500;700&family=El+Messiri:wght@400;500;700&display=swap" 80 onload="this.onload=null;this.rel='stylesheet'"> 81<noscript> 82 <link rel="stylesheet" 83 href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Noto+Sans:wght@400;500;700&family=El+Messiri:wght@400;500;700&display=swap"> 84</noscript> 85 86<!-- â Preload critical font file (optional if above already covers it) --> 87<link rel="preload" 88 as="font" 89 href="https://fonts.gstatic.com/s/notosans/v42/o-0bIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjc5a7duw.woff2" 90 type="font/woff2" 91 crossorigin> 92 93 94 95 96 97 98 99 100 <!-- 99Pandit WP Design Tokens / Variables --> 101 <link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/variables.css?v=1.0.5"> 102 103 <!--responsive.css-->
vendor: 141 bytes, lines 103-104
103 104 <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
104<link rel="preload" href="https://99pandit.com/App/public/Epuja/css/responsive.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> 105<noscript><link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/responsive.css"></noscript> 106 107 108 <!-- Swiper CSS -->
vendor: 140 bytes, lines 108-110
108 109 110<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
110<link rel="preload" href="https://cdn.99pandit.com/app/css/swiper-bundle.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> 111<noscript><link rel="stylesheet" href="https://cdn.99pandit.com/app/css/swiper-bundle.min.css"></noscript>
vendor: 144 bytes, lines 111-113
111 112 113 <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
113<link rel="preload" href="https://cdn.99pandit.com/app/css/flatpickr.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> 114<noscript><link rel="stylesheet" href="https://cdn.99pandit.com/app/css/flatpickr.min.css"></noscript>
vendor: 146 bytes, lines 114-117
114 115 116 117 <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49"></script>
117<link rel="preload" href="https://99pandit.com/App/public/Epuja/css/style.css?v=1.0.5" as="style" onload="this.onload=null;this.rel='stylesheet'"> 118<noscript> 119 <link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/style.css?v=1.0.5"> 120</noscript> 121 122<link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/new-footer.css?v=1.0.5"> 123<style type="text/css">@font-face {font-family:'Poppins';font-style:normal;font-weight:300;src:url(/cf-fonts/s/poppins/5.2.7/latin-ext/300/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:300;src:url(/cf-fonts/s/poppins/5.2.7/devanagari/300/normal.woff2);unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:300;src:url(/cf-fonts/s/poppins/5.2.7/latin/300/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:400;src:url(/cf-fonts/s/poppins/5.2.7/devanagari/400/normal.woff2);unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:400;src:url(/cf-fonts/s/poppins/5.2.7/latin/400/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:400;src:url(/cf-fonts/s/poppins/5.2.7/latin-ext/400/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:500;src:url(/cf-fonts/s/poppins/5.2.7/latin/500/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:500;src:url(/cf-fonts/s/poppins/5.2.7/devanagari/500/normal.woff2);unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:500;src:url(/cf-fonts/s/poppins/5.2.7/latin-ext/500/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:600;src:url(/cf-fonts/s/poppins/5.2.7/latin/600/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:600;src:url(/cf-fonts/s/poppins/5.2.7/devanagari/600/normal.woff2);unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:600;src:url(/cf-fonts/s/poppins/5.2.7/latin-ext/600/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:700;src:url(/cf-fonts/s/poppins/5.2.7/latin/700/normal.woff2);
123unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:700;src:url(/cf-fonts/s/poppins/5.2.7/devanagari/700/normal.woff2);unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09;font-display:swap;}@font-face {font-family:'Poppins';font-style:normal;font-weight:700;src:url(/cf-fonts/s/poppins/5.2.7/latin-ext/700/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}</style> 124 <!-- Google tag (gtag.js) --> 125 <!--
vendor: 63 bytes, line 125
125<script async src="https://www.googletagmanager.com/gtag/js?id=
125G-XFDQ8G3BJ6
vendor: 11 bytes, line 125
125"></script>
125--> 126
126<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 127 // window.dataLayer = window.dataLayer || []; 128 129 // function gtag() { 130 // dataLayer.push(arguments); 131 // } 132 133 // gtag('js', new Date()); 134 // gtag('config', 'G-XFDQ8G3BJ6'); 135 </script>
135 136 137
137<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 138 // (function (c, l, a, r, i, t, y) { 139 // c[a] = c[a] || function () { 140 // (c[a].q = c[a].q || []).push(arguments) 141 // }; 142 // t = l.createElement(r); 143 // t.async = 1; 144 // t.src = "https://www.clarity.ms/tag/" + i; 145 // y = l.getElementsByTagName(r)[0]; 146 // y.parentNode.insertBefore(t, y); 147 // })(window, document, "clarity", "script", "l0yts6kd2f"); 148 </script>
148 149 <!-- â Delay Google Tag Manager (gtag) -->
150<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 151window.addEventListener('load', function() { 152 153 /* ð¹ Delay Google Tag Manager (Analytics) */ 154 setTimeout(function() { 155 var gtagScript = document.createElement('script'); 156 gtagScript.src = "https://www.googletagmanager.com/gtag/js?id=G-XFDQ8G3BJ6"; 157 gtagScript.async = true; 158 document.head.appendChild(gtagScript); 159 160
vendor: 144 bytes, lines 160-163
160window.dataLayer = window.dataLayer || []; 161 function gtag(){ dataLayer.push(arguments); } 162 gtag('js', new Date()); 163 gtag('config', '
163G-XFDQ8G3BJ6
vendor: 7 bytes, lines 163-164
163'); 164
164}, 5000); // 3 seconds delay 165 166 /* ð¹ Delay Microsoft Clarity */ 167 setTimeout(function() { 168 (function(c, l, a, r, i, t, y) { 169 c[a] = c[a] || function() { 170 (c[a].q = c[a].q || []).push(arguments); 171 }; 172 t = l.createElement(r); 173 t.async = 1; 174 t.src = "https://www.clarity.ms/tag/" + i; 175 y = l.getElementsByTagName(r)[0]; 176 y.parentNode.insertBefore(t, y); 177 })(window, document, "clarity", "script", "l0yts6kd2f"); 178 }, 5000); // Clarity load after 4 seconds 179 180}); 181</script>
vendor: 2 bytes, line 181
181
182<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 183(function(n,i,t,r,o) { 184var a,m;n['NitroObject']=o;n[o]=n[o]||function(){ 185(n[o].q=n[o].q||[]).push(arguments)},n[o].l=1*new 186Date();n[o].h=r;a=i.createElement(t), 187m=i.getElementsByTagName(t)[0];a.async=1;a.src=r;m.parentNode. 188insertBefore(a,m) 189})(window,document,'script','https://x.nitrocommerce.ai/nitro.js','nitro'); 190nitro('configure', '43402e0c-6b82-4f99-88f9-5f71e64252c2'); 191</script>
191 192 193 194 195<style> 196 /*website loader css*/ 197.main-loader { 198 position: fixed; /* cover entire screen */ 199 top: 0; 200 left: 0; 201 height: 100%; 202 width: 100%; 203 margin: 0; 204 display: flex; 205 justify-content: center; 206 align-items: center; 207 background: rgba(0, 0, 0, 0.5); /* ðŸâÂ¥ Modal-style dark overlay */ 208 /* Adjust last value for transparency: 209 0.3 = lighter, 0.7 = darker */ 210 z-index: 9999999; 211 transition: opacity 0.5s ease; 212 } 213 214 .main-loader-item { 215 text-align: center; 216 } 217 218 /* Percentage text ABOVE the progress bar */ 219 .progress-percent { 220 font-size: 16px; 221 font-weight: bold; 222 color: #ffffff; /* White text for dark backdrop */ 223 margin-bottom: 6px; 224 display: block; 225 font-family: "Noto Sans", sans-serif; 226 margin-top: 6px; 227 } 228 229 /* Progress bar container */ 230 .loader-progressbar { 231 width: 180px; 232 height: 7px; 233 background: rgba(255,255,255,0.2); /* subtle bar background */ 234 border-radius: 10px; 235 overflow: hidden; 236 position: relative; 237 box-shadow: inset 0 0 5px rgba(0,0,0,0.3); 238 } 239 240 /* Progress fill */ 241 .progress-fill { 242 width: 0%; 243 height: 100%; 244 background: #7e1515; /* Progress color */ 245 transition: width 0.3s ease; 246 border-radius: 10px 0 0 10px; 247 } 248/* body {*/ 249/* overflow-y: hidden !important;*/ 250/*}*/ 251 252.mobile-swiper{ 253 display: none; 254} 255 256.banner-swiper .swiper-slide { 257 display: block; 258 259} 260 261/* Extra Small Mobile (320px and below) */ 262@media only screen and (max-width: 768px) { 263 /* Show only one slider depending on device */ 264.desktop-swiper { display: block; } 265.mobile-swiper { display: none; } 266 267@media (max-width: 768px) { 268 .desktop-swiper { display: none; } 269 .mobile-swiper { display: block; } 270} 271} 272 273@font-face { 274 font-family: "Font Awesome 6 Free"; 275 font-weight: 900; 276 font-display: swap; 277 src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/webfonts/fa-solid-900.woff2") format("woff2"); 278} 279 280/* WhatsApp float button â global so it works even on pages that exclude e-puja.css. 281 Icon-only by default; text pill slides in on hover. */ 282.whatsapp-float { 283 position: fixed; 284 bottom: 20px; 285 right: 20px; 286 z-index: 1000; 287 display: flex;
288 align-items: center; 289} 290 291.whatsapp-float img { 292 width: 50px; 293 height: 50px; 294 border-radius: 50%; 295 background: #25d366; 296 padding: 5px; 297 box-shadow: 0 4px 14px rgba(0, 0, 0, .25); 298 transition: transform .3s ease; 299 position: relative; 300 z-index: 1; 301} 302 303.whatsapp-text { 304 display: flex; 305 align-items: center; 306 font-size: 14px; 307 color: #fff; 308 background: #25d366; 309 padding: 8px 16px 8px 14px; 310 border-radius: 20px; 311 margin-right: -22px; 312 padding-right: 30px; 313 white-space: nowrap; 314 box-shadow: 0 4px 14px rgba(0, 0, 0, .2); 315 opacity: 0; 316 max-width: 0; 317 overflow: hidden; 318 transform: translateX(12px); 319 transition: opacity .35s ease, transform .35s ease, max-width .35s ease, margin-right .35s ease, padding .35s ease; 320 pointer-events: none; 321} 322 323.whatsapp-float:hover .whatsapp-text, 324.whatsapp-float.show-text .whatsapp-text { 325 opacity: 1; 326 max-width: 220px; 327 margin-right: 10px; 328 transform: translateX(0); 329 pointer-events: auto; 330} 331 332.whatsapp-float:hover img { 333 transform: scale(1.08); 334} 335 336.close-btn-2 { 337 margin-left: 8px; 338 cursor: pointer; 339 font-weight: 700; 340 background: rgba(0, 0, 0, .3); 341 border-radius: 50%; 342 width: 18px; 343 height: 18px; 344 display: flex;
345 align-items: center; 346 justify-content: center; 347 transition: background .3s ease; 348 flex-shrink: 0; 349} 350 351.close-btn-2:hover { 352 background: rgba(0, 0, 0, .6); 353} 354 355@media (max-width: 767px) { 356 .whatsapp-float { 357 bottom: 70px; 358 } 359} 360</style> 361 362 <link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/components/video-cta.css?v=1790866030"> 363 <link rel="stylesheet" href="https://99pandit.com/App/public/Epuja/css/pages/e-puja/show.css?v=1790866030"> 364 </head> 365<body> 366 <!-- Google Tag Manager (noscript) -->
vendor: 73 bytes, lines 366-367
366 367 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
367GTM-TW42BW9
vendor: 93 bytes, lines 367-369
367" 368 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 369
369<!-- End Google Tag Manager (noscript) --> 370 <div class="use-jquery"></div> 371 372<nav class="navbar navbar-expand-lg navbar-light fixed-top header"> 373 <div class="container-fluid"> 374 <a class="navbar-brand" href="https://99pandit.com"> 375 <img src="https://cdn.99pandit.com/99pandit_newhome/mobileimages/pandit-logo-mobile_2.webp" class="main_logo img-fluid" 376 loading="lazy" alt="99 Pandit" style="height:65px;" width="100%" height="100%"> 377 </a> 378 <div class="applogo-menubtn"> 379 <div class="playstore-apple-logo me-2"> 380 <a href="https://shop.99pandit.com/" target="_blank"><img width="30" height="100%" 381 src="https://cdn.99pandit.com/images/headerimg/cart_2.webp" 382 alt="Shop 99pandit"> </a> 383 <a href="https://play.google.com/store/search?q=99pandit+for+users&c=apps" target="_blank"><img 384 width="28" height="100%" class="ms-2" src="https://cdn.99pandit.com/images/headerimg/playstore_1.webp" 385 alt="Play Store Logo"> </a> 386 <a href="https://apps.apple.com/in/app/99pandit/id6473841676" target="_blank"> 387 <img width="27" height="100%" class="ms-2" src="https://cdn.99pandit.com/images/headerimg/apple_1.webp" 388 alt="App Store Logo" loading="eager" decoding="async" loading="lazy" fetchpriority="high"></a> 389 </div> 390 391 <div class="cart-icon mobile_cart me-2"> 392 <a href="https://99pandit.com/App/puja/cart" 393 class="btn btn-outline-primary position-relative header-cart"> 394 <i class="fas fa-shopping-cart" style="line-height:1.75!important"></i> 395 </a> 396 </div> 397 <button class="navbar-toggler" type="button" data-bs-toggle="collapse" 398 data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" 399 aria-expanded="false" aria-label="Toggle navigation"> 400 <span class="navbar-toggler-icon"></span> 401 </button> 402 </div> 403 <div class="collapse navbar-collapse" id="navbarSupportedContent"> 404 <ul class="ms-auto"> 405 <!--<li class="nav-item ms-auto" style="list-style:none">--> 406 <!-- <a class="nav-link nav-color city-nav" aria-current="page" href="#" data-bs-toggle="modal" data-bs-target="#citiesmodal" style="color:#fff !important;background:#7e1515;border-radius:5px; font-size: 14px;">Cities</a>--> 407 <!--</li>--> 408 </ul> 409 <ul class="navbar-nav mb-2 mb-lg-0"> 410 <li class="nav-item e-puja-nav-item "> 411 <a href="https://99pandit.com/" class="nav-link nav-color">Home</a> 412 </li> 413 <li class="nav-item e-puja-nav-item "> 414 <a href="https://99pandit.com/App/celebration-pujas" class="nav-link nav-color">Celebration Pujas</a> 415 </li> 416 <li class="nav-item e-puja-nav-item "> 417 <a href="https://99pandit.com/App/group-puja" class="nav-link nav-color">Group Puja</a> 418 </li> 419 <li class="nav-item e-puja-nav-item "> 420 <a href="https://99pandit.com/App/chadhava" class="nav-link nav-color">Chadhava</a> 421 </li> 422 <li class="nav-item e-puja-nav-item active"> 423 <a href="https://99pandit.com/App/e-puja" class="nav-link nav-color">E-Puja</a> 424 </li> 425 <li class="nav-item e-puja-nav-item dropdown "> 426 <span class="nav-link nav-color nav-link nav-color dropdown-toggle">Astrology </span> 427 428 <ul class="sub-menu dropdown-menu"> 429 <li class="nav-item astrology-nav"> 430 <a href="https://99pandit.com/App/astrology" class="nav-link nav-color dropdown-item" target="_blank">Astrology</a> 431 </li> 432 <li class="nav-item astrology-nav"> 433 <a href="https://99pandit.com/App/numerology" 434 class="nav-link nav-color dropdown-item" 435 target="_blank"> 436 Numerology 437 </a> 438 </li> 439 440 <li class="nav-item astrology-nav"> 441 <a href="https://99pandit.com/App/horoscope" 442 class="nav-link nav-color dropdown-item" 443 target="_blank"> 444 Daily Horoscope 445 </a> 446 </li> 447 <li class="nav-item astrology-nav"> 448 <a href="https://99pandit.com/App/love-calculator" 449 class="nav-link nav-color dropdown-item" 450 target="_blank" 451 rel="noopener noreferrer"> 452 Love Calculator 453 </a> 454 </li> 455 456 <li class="nav-item astrology-nav"> 457 <a href="https://99pandit.com/App/age-calculator" 458 class="nav-link nav-color dropdown-item" 459 target="_blank" 460 rel="noopener noreferrer"> 461 Age Calculator 462 </a> 463 </li> 464 <li class="nav-item astrology-nav"> 465 <a href="https://99pandit.com/App/mulank-calculator" 466 class="nav-link nav-color dropdown-item" 467 target="_blank" 468 rel="noopener noreferrer"> 469 Mulank Calculator 470 </a> 471 </li> 472 <li class="nav-item astrology-nav"> 473 <a href="https://99pandit.com/App/destiny-number-calculator" 474 class="nav-link nav-color dropdown-item" 475 target="_blank" 476 rel="noopener noreferrer"> 477 Destiny Number Calculator 478 </a> 479 </li> 480 <li class="nav-item astrology-nav"> 481 <a href="https://99pandit.com/kundali" class="nav-link nav-color dropdown-item" target="_blank">Kundali 482 us</a> 483 </li> 484 <li class="nav-item astrology-nav"> 485 <a href="https://99pandit.com/match-making/" class="nav-link nav-color dropdown-item" target="_blank">Match Making 486 Us</a> 487 </li> 488 </ul> 489 490 </li> 491 492 493 <li class="nav-item e-puja-nav-item dropdown "> 494 <a href="https://99pandit.com/about-us/" class="nav-link nav-color dropdown-toggle">About us</a> 495 <ul class="sub-menu dropdown-menu"> 496 <li class="nav-item "> 497 <a href="https://99pandit.com/about-us/" class="nav-link nav-color dropdown-item" target="_blank">About 498 us</a> 499 </li> 500 <li class="nav-item "> 501 <a href="https://99pandit.com/contact-us/" class="nav-link nav-color dropdown-item" target="_blank">Contact 502 Us</a> 503 </li> 504 <li class="nav-item "> 505 <a href="https://99pandit.com/faq/" class="nav-link nav-color dropdown-item" target="_blank">FAQ</a> 506 </li> 507 </ul> 508 </li> 509 510 511 512 <!--<ul class="navbar-nav ms-auto">--> 513 <!-- User is not logged in --> 514 <li class="nav-item e-puja-nav-item me-3 "> 515 <a class="nav-link nav-color" href="https://99pandit.com/App/login"> 516 User Login 517 </a> 518 </li> 519 <!--</ul>--> 520 521 <div class="cart-icon desktop_cart"> 522 <a href="https://99pandit.com/App/puja/cart" 523 class="btn btn-outline-primary position-relative header-cart"> 524 <i class="fas fa-shopping-cart" style="line-height:1.75!important"></i> 525 </a> 526 </div> 527 528 <!--<div class="cart-icon">--> 529 <!-- <a href="https://widget.99pandit.com/App/puja/cart/c18a0fb6-7ca1-4474-be7b-600dcd45235d" class="btn btn-outline-primary position-relative header-cart">--> 530 <!-- <i class="fas fa-shopping-cart"></i>-->
531 <!-- <span>--> 532 <!-- 1--> 533 <!-- </span>--> 534 <!-- </a>--> 535 <!--</div>--> 536 </ul> 537 </div> 538 </div> 539</nav> 540 541 542<div class="whatsapp-float" id="whatsappBox"> 543 <span class="whatsapp-text" id="whatsappText"> 544 Need Help? Chat with us 545 <span class="close-btn-2" id="closeBtn">×</span> 546 </span> 547 <a href="https://wa.me/916378477971" target="_blank"> 548 <img width="50" height="100%" src="https://cdn.99pandit.com/app/css/WhatsApp.svg" alt="WhatsApp" /> 549 </a> 550 </div> 551 552 553 554 555 556 <section class="service-single leaf-bg ng-scope py-3" ng-controller="AppController"> 557 <div class="container"> 558 <!-- Breadcrumbs --> 559 <p class="puja-breadcrumbs mb-2"> 560 <a href="https://99pandit.com/App">Home</a> / 561 <a href="https://99pandit.com/App/e-puja">E-Puja</a> / 562 <span>Griha Pravesh Puja</span> 563 </p> 564 565 <div class="row g-4"> 566 <!-- Left Column: Image + Why e-Puja card --> 567 <div class="col-lg-5 col-md-6 text-center"> 568 <div class="px-lg-3"> 569 <!-- Main Banner Image --> 570 <div class="puja-image-gallery mb-3"> 571 <img src="https://cdn.99pandit.com/app/puja-images/99pandit-user-app-images/Griha-Pravesh-E-Puja-main.jpg" class="img-fluid rounded-3 shadow-sm square-image" alt="Griha Pravesh Puja"> 572 </div> 573 </div> 574 </div> 575 576 <!-- Right Column: Sticky Booking Details Card --> 577 <div class="col-lg-7 col-md-6"> 578 <div class="sticky-booking-card sticky-lg-top add_to_cart_item" style="top: 24px; z-index: 100;"> 579 <div class="mb-3 pb-2 border-bottom"> 580 <div class="d-flex justify-content-between align-items-start gap-2"> 581 <h5 class="fw-bold mb-0 text-dark" style="font-size: 1.1rem; line-height: 1.3;">Griha Pravesh Puja</h5> 582 <span class="badge-epuja-right" style="flex-shrink: 0;">e-Puja</span> 583 </div> 584 </div> 585 586 <!-- Booking pricing and form --> 587 <form id="puja-language-form"> 588 <input type="hidden" name="_token" value="DTWAGsGhTOHavuoYIWVtRYYaXy8hP7JKnFP1m3Wl" autocomplete="off"> <input type="hidden" name="cart_token" value="a53107c3-d908-43fe-96e4-f72a6ee95129"> 589 <input type="hidden" name="service_id" value="7"> 590 <input type="hidden" name="usd_price" value="200"> 591 592 <!-- Overall Rating --> 593 <div class="d-flex align-items-center gap-2 mb-3"> 594 <div class="review-stars-wrap"> 595 <span class="star ">★</span> 596 <span class="star ">★</span> 597 <span class="star ">★</span> 598 <span class="star ">★</span> 599 <span class="star ">★</span> 600 </div> 601 <span class="fw-bold text-dark" style="font-size: 0.9rem;">4.8</span>
602 <span class="text-muted small">(4 ratings)</span> 603 <a href="#reviewsSection" class="see-all-reviews-link ms-1" onclick="if (!window.__cfRLUnblockHandlers) return false; event.preventDefault(); document.getElementById('reviewsSection')?.scrollIntoView({behavior: 'smooth'});" data-cf-modified-84aaaab7731110d08d2fb4dc-="">See all reviews</a> 604 </div> 605 606 <!-- Pricing box --> 607 <div class="pricing-container p-2.5 rounded-3 mb-3" style="background-color: #fafbfc; border: 1px solid #eef2f5;"> 608 <div class="d-flex align-items-baseline gap-2 flex-wrap"> 609 <span class="fs-4 fw-bold text-orange">$200.00</span> 610 <span class="text-decoration-line-through text-muted small">$699.00</span> 611 <span class="badge bg-success-subtle text-success ms-1" style="font-size: 0.72rem;">71% OFF</span> 612 </div> 613 </div> 614 615 <div class="row mb-3"> 616 <!-- Language Select Dropdown --> 617 <div class="col-sm-6"> 618 <label class="form-label fw-bold text-secondary mb-1" for="language" style="font-size: 0.82rem;">Select Language for puja</label> 619 <select class="form-select form-select-sm" name="language_id" id="language" required style="font-weight: 500;"> 620 <option value="5108" 621 selected> 622 Hindi 623 </option> 624 </select> 625 <span class="text-danger small mt-1 d-block" id="error-language_id" style="font-size: 0.75rem;"> 626 </span> 627 </div> 628 629 <!-- Preferred Date --> 630 <div class="col-sm-6 mt-3 mt-sm-0"> 631 <label class="form-label fw-bold text-secondary mb-1" for="calendarInput" style="font-size: 0.82rem;">Preferred Date</label> 632 <div class="position-relative select-date"> 633 <input type="text" 634 id="calendarInput" 635 class="form-control form-control-sm with-icon date-input" 636 placeholder="DD/MM/YYYY" 637 name="preferred_date" 638 value="" 639 > 640 <i class="fas fa-calendar-alt calendar-icon" onclick="if (!window.__cfRLUnblockHandlers) return false; (function(el){el._flatpickr && el._flatpickr.open()})(document.getElementById('calendarInput'))" data-cf-modified-84aaaab7731110d08d2fb4dc-=""></i> 641 </div> 642 <span class="text-danger small mt-1 d-block" id="error-date" style="font-size: 0.75rem;"></span> 643 </div> 644 </div> 645 646 <!-- Action button --> 647 <div class="booking-action-btn"> 648 <button type="button" id="add-to-cart-btn" class="btn btn-orange btn-sm w-100 py-2 fw-bold rounded-2 add-to-cart-btn text-white" onclick="if (!window.__cfRLUnblockHandlers) return false; submitCartForm()" style="font-size: 0.88rem;" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 649 <i class="fas fa-shopping-cart me-1"></i>Add to Cart 650 </button> 651 </div> 652 </form> 653 654 <!-- Features list --> 655 <div class="booking-features-wrap mt-3 mb-3"> 656 <div class="row g-0 booking-feature-table"> 657 <!-- Duration --> 658 <div class="col-6 booking-feature-cell text-center"> 659 <div class="d-flex align-items-center justify-content-center mb-1"> 660 <div class="booking-feature-icon me-1 flex-shrink-0"> 661 <i class="far fa-clock"></i> 662 </div>
663 <span class="text-secondary text-truncate" style="font-size: 0.85rem;">Duration</span> 664 </div> 665 <strong class="text-dark text-truncate d-block" style="font-size: 0.9rem;">30 Minutes</strong> 666 </div> 667 668 <!-- Mode --> 669 <div class="col-6 booking-feature-cell text-center"> 670 <div class="d-flex align-items-center justify-content-center mb-1"> 671 <div class="booking-feature-icon me-1 flex-shrink-0"> 672 <i class="fas fa-video"></i> 673 </div> 674 <span class="text-secondary text-truncate" style="font-size: 0.85rem;">Mode</span> 675 </div> 676 <strong class="text-dark text-truncate d-block" style="font-size: 0.9rem;">Online (Live)</strong> 677 </div> 678 </div> 679 </div> 680 681 <!-- Social links --> 682 <div class="mt-3 pt-2 border-top d-flex align-items-center justify-content-between"> 683 <span class="text-muted small fw-semibold" style="font-size: 0.75rem;">Share with family:</span> 684 <ul class="social-links d-flex list-unstyled gap-2 mb-0"> 685 <a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/99pandit"> 686 <li class="ion-circle" style="background-color: #3b5998; color: white; width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center;"><i class="fab fa-facebook-f fa-xs"></i></li> 687 </a> 688 <a target="_blank" rel="noopener noreferrer" href="" class="pl-2"> 689 <li class="ion-circle" style="background-color: #1da1f2; color: white; width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center;"><i class="fab fa-twitter fa-xs"></i></li> 690 </a> 691 <a target="_blank" rel="noopener noreferrer" href="https://www.instagram.com/99panditpuja/"> 692 <li class="ion-circle" style="background-color: #e1306c; color: white; width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center;"><i class="fab fa-instagram fa-xs"></i></li> 693 </a> 694 <a target="_blank" rel="noopener noreferrer" href="https://www.youtube.com/channel/UCGH1GXsKjVIw-mD4Qvz1FsQ" class="pl-2"> 695 <li class="ion-circle" style="background-color: #ff0000; color: white; width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center;"><i class="fab fa-youtube fa-xs"></i></li> 696 </a> 697 </ul> 698 </div> 699 </div> 700 </div> 701 </div> 702 703 <!-- Video CTA: How e-Puja Works + Customer Video Reviews --> 704 705 706 <div class="vcta-bar mt-4"> 707 708 <div class="vcta-heading">See How e-Puja Works</div> 709 710 <div class="vcta-inner"> 711 712 713 <div class="vcta-col vcta-col-left"> 714 <div class="vcta-pill"> 715 <span class="vcta-pill-title">See How e-Puja Works</span> 716 <button type="button" class="vcta-watch-btn" onclick="if (!window.__cfRLUnblockHandlers) return false; openVideoModal('ZI1BIxS4M1M', 'How e-Puja Works')" data-cf-modified-84aaaab7731110d08d2fb4dc-="">
717 <span class="vcta-play-icon"><i class="fas fa-play"></i></span> 718 <span class="vcta-watch-label">Watch Video</span> 719 </button> 720 </div> 721 </div> 722 723 <div class="vcta-sep"></div> 724 725 726 <div class="vcta-col vcta-col-mid"> 727 <style> 728 .grb-badge { 729 display: inline-flex; 730 align-items: center; 731 gap: 8px; 732 background: #ffffff; 733 border: 1px solid rgba(26, 43, 60, 0.1); 734 border-radius: 8px; 735 padding: 6px 12px; 736 line-height: 1; 737 text-decoration: none; 738 color: inherit; 739 cursor: pointer; 740 transition: transform 0.15s ease, opacity 0.15s ease, box-shadow 0.15s ease; 741 } 742 .grb-badge:hover, 743 .grb-badge:focus { 744 text-decoration: none; 745 color: inherit; 746 opacity: 0.9; 747 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); 748 transform: translateY(-1px); 749 } 750 .grb-badge .grb-google-icon { 751 width: 28px; 752 height: 28px; 753 object-fit: contain; 754 flex-shrink: 0; 755 } 756 .grb-badge .grb-rating { 757 display: inline-flex; 758 align-items: center; 759 gap: 3px; 760 font-size: 0.95rem; 761 font-weight: 800; 762 color: #1a2b3c; 763 } 764 .grb-badge .grb-star-icon { 765 color: #fbbc04; 766 font-size: 0.8rem; 767 } 768 .grb-badge .grb-count { 769 font-size: 0.8rem; 770 color: #5f6368; 771 white-space: nowrap; 772 } 773 </style> 774<a href="https://local.google.com/place?placeid=ChIJhwj9AtsTrjsR3lpxCUvmgMk&utm_medium=noren&utm_source=gbp&utm_campaign=2026" target="_blank" rel="noopener noreferrer" class="grb-badge" aria-label="View 99Pandit Google Reviews (4.9 stars, 108 reviews)"> 775 <img src="https://cdn.99pandit.com/img/google.png" alt="Google" class="grb-google-icon"> 776 <span class="grb-rating"> 777 4.9 778 <i class="fas fa-star grb-star-icon" aria-hidden="true"></i> 779 </span> 780 <span class="grb-count">(108 reviews by devotees)</span> 781</a> 782 </div> 783 784 <div class="vcta-sep"></div> 785 786 787 <div class="vcta-col vcta-col-right"> 788 <span class="vcta-reviews-label">See what our customers are saying :</span> 789 <button type="button" class="vcta-avatars-btn" onclick="if (!window.__cfRLUnblockHandlers) return false; openVideoCarousel(0)" aria-label="Watch customer reviews" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 790 <span class="vcta-avatar-stack"> 791 <img src="https://cdn.99pandit.com/99pandit_newhome/e-puja-banner/reviewer/Deenesh-kumar.png" alt="Deenesh Kumar" class="vcta-avatar"> 792 <img src="https://cdn.99pandit.com/99pandit_newhome/e-puja-banner/reviewer/rudra.png" alt="Rudra" class="vcta-avatar"> 793 <img src="https://cdn.99pandit.com/99pandit_newhome/e-puja-banner/reviewer/Ganesh.png" alt="Ganesh" class="vcta-avatar"> 794 <img src="https://cdn.99pandit.com/99pandit_newhome/e-puja-banner/reviewer/nitin-goyal.png" alt="Nitin Goyal" class="vcta-avatar"> 795 </span> 796 <span class="vcta-arrow"><i class="fas fa-chevron-right"></i></span> 797 </button> 798 </div> 799 800 </div> 801 </div> 802 803 <!-- Video Modal --> 804 <div id="videoModal" class="video-modal-overlay" onclick="if (!window.__cfRLUnblockHandlers) return false; if(event.target === this) closeVideoModal()" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 805 <div class="video-modal-box"> 806 <button type="button" class="video-modal-close" onclick="if (!window.__cfRLUnblockHandlers) return false; closeVideoModal()" aria-label="Close" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 807 <i class="fas fa-times"></i> 808 </button> 809 <button type="button" class="video-modal-nav video-modal-prev" onclick="if (!window.__cfRLUnblockHandlers) return false; carouselPrev()" aria-label="Previous" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 810 <i class="fas fa-chevron-left"></i> 811 </button> 812 <button type="button" class="video-modal-nav video-modal-next" onclick="if (!window.__cfRLUnblockHandlers) return false; carouselNext()" aria-label="Next" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 813 <i class="fas fa-chevron-right"></i> 814 </button> 815 <h5 id="videoModalTitle" class="video-modal-title"></h5> 816 <div class="video-modal-frame-wrap"> 817 <iframe id="videoModalFrame" src="" title="Video player" frameborder="0" 818 allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" 819 allowfullscreen></iframe> 820 </div> 821 </div> 822 </div> 823 824 <!-- Info Row: Why Book e-Puja, Benefits, What is e-Puja --> 825 <div class="row g-4 mt-1"> 826 <!-- Why Book e-Puja Online --> 827 <div class="col-md-4"> 828 <div class="why-puja-card h-100">
829 <span class="why-puja-corner why-puja-corner-tl"></span> 830 <span class="why-puja-corner why-puja-corner-tr"></span> 831 <span class="why-puja-corner why-puja-corner-bl"></span> 832 <span class="why-puja-corner why-puja-corner-br"></span> 833 <div class="why-puja-inner"> 834 <div class="why-puja-icon"><i class="fas fa-om"></i></div> 835 <h5 class="why-puja-title">Why Book e-Puja Online?</h5> 836 <div class="why-puja-divider"></div> 837 <div class="why-puja-stat">Live 1-on-1 Puja</div> 838 <div class="why-puja-stat" style="font-size: 1rem; color: #198754;">Save up to <span style="color: #198754;">65%</span> on cost</div> 839 <p class="why-puja-text mb-0"> 840 Get your puja performed live over video call by a verified, experienced Vedic pandit â the same authentic rituals and mantras, from the comfort of your home, at a time that works for you. 841 </p> 842 </div> 843 </div> 844 </div> 845 846 <!-- What is e-Puja --> 847 <div class="col-md-4"> 848 <div class="why-puja-card h-100" style="max-width: 100%;"> 849 <span class="why-puja-corner why-puja-corner-tl"></span> 850 <span class="why-puja-corner why-puja-corner-tr"></span> 851 <span class="why-puja-corner why-puja-corner-bl"></span> 852 <span class="why-puja-corner why-puja-corner-br"></span> 853 <div class="why-puja-inner"> 854 <div class="why-puja-icon"><i class="fas fa-video"></i></div> 855 <h5 class="why-puja-title">What is e-Puja?</h5> 856 <div class="why-puja-divider"></div> 857 <p class="why-puja-text mb-0"> 858 e-Puja is a personalized ritual performed live by a verified Vedic pandit over video call, especially for you â the same authentic rituals and mantras as an in-person puja, at your chosen date and time. 859 </p> 860 </div> 861 </div> 862 </div> 863 864 <!-- Benefits --> 865 </div> 866 867 <!-- Sequentialized Sections --> 868 <div class="row mt-4"> 869 <div class="col-lg-12 col-md-12"> 870 871 <!-- Section: Puja Preparation Guide --> 872 873 <!-- Section: Puja Details (Description + Rich Text) --> 874 <div class="puja-section-card"> 875 <h4 class="puja-section-title text-center" style="text-align: center;">Puja Details</h4> 876 <div class="puja-collapsible-wrap position-relative mt-2"> 877 <div class="puja-collapsible package-details-text"> 878 <p>Entering a new home is one of the biggest milestones in life. To ensure your new space is filled with positive energy, peace, and happiness, performing a <strong>Griha Pravesh Puja</strong> is essential.</p> 879 880<p>At 99Pandit, we help you perform this sacred ritual through our specialized e-puja services, bringing the blessings of expert Vedic pandits directly to your doorstep, no matter where you are.</p> 881 <hr> 882 <p><strong>City</strong>: 99pandit Pooja Center (E-Puja)<br /> 883<strong>Priest Preference</strong>: Your selected language<br /> 884<strong>Pooja Location</strong>: Watch Live / Recording<br /> 885<strong>Pooja Name</strong>: Griha Pravesh E-Puja</p> 886 887<hr /> 888<p><strong>What is Online Griha Pravesh Puja?</strong></p> 889 890<p>Online Griha Pravesh Puja is a modern and convenient way to perform the traditional Hindu
890<strong>housewarming ritual through digital platforms</strong>. It is a sacred ceremony conducted before you start living in a new house to seek blessings from the divine powers.</p> 891 892<p>This virtual service allows you to connect with expert Vedic pandits from holy cities like Ujjain or Kashi right from your living room.</p> 893 894<p>The core of the ceremony remains deeply traditional even in the online format. It involves worshipping Lord Ganesha to remove any potential obstacles and honouring the Vastu Purush to ensure the architectural soul of the house is at peace.</p> 895 896<p>Whether you have bought a newly constructed villa, moved into a renovated flat, or just shifted to a rented apartment, this puja purifies your surroundings. <strong>Through a high-quality video call</strong>, the pandit guides you through every step of the rituals, from the initial Sankalp to the final Aarti.</p> 897 898<p>It is the perfect solution for families who live far from their native places or struggle to find authentic pandits locally. This digital transition ensures that the spiritual energy of your new home is balanced and ready for a peaceful, happy life.</p> 899 900<hr /> 901<p><strong>Why is Griha Pravesh E-Puja Important for a new home?</strong></p> 902 903<p>Performing a housewarming ceremony is not just a tradition but a spiritual necessity for many reasons. Here is why you should consider it:</p> 904 905<ul> 906 <li>It purifies the home by removing any negative energy or "<strong>Vastu Dosha</strong>" left behind during the construction process.</li> 907 <li>The chanting of Vedic mantras brings mental peace and spiritual protection to the family members.</li> 908 <li>It invites Goddess Lakshmi into the house to ensure that there is never a shortage of wealth or food.</li> 909 <li>The ritual acts as a shield against evil eyes and keeps the household away from misfortunes.</li> 910 <li>It provides a sense of closure and a fresh start, making the transition to a new place joyful and stress-free.</li> 911</ul> 912 913<hr /> 914<p><strong>How To Book Griha Pravesh E-Puja?</strong></p> 915 916<p>Booking your ceremony with 99Pandit is quick and stress-free. Follow these simple steps:</p> 917 918<ol> 919 <li>Visit our website and select the <strong>Griha Pravesh E-Puja</strong> package.</li> 920 <li>Fill in your details like your name, current location, and your native language.</li> 921 <li>Choose an auspicious date based on your convenience or consult our pandits for a<strong> Shubh Muhura</strong>t.</li> 922 <li>Once confirmed, our team will share the list of simple items (Samagri) you need to keep ready.</li> 923 <li>On the day of the puja, <strong>connect with our Pandit ji via a high-quality video call </strong>to begin the rituals.</li> 924</ol> 925 926<hr /> 927<p><strong>Significance of Griha Pravesh E-Puja</strong></p> 928 929<p>According to ancient scriptures, a new house may have negative energies or Vastu defects left behind by the construction process. The Griha Pravesh ceremony is performed to:</p> 930 931<ul> 932 <li>Purify the environment of the house.</li> 933 <li>Seek blessings from Lord Ganesha and Vastu Purush.</li> 934 <li>Protect the family from evil eyes and negative vibes.</li> 935 <li>Invite wealth, health, and harmony into the new living space.</li> 936</ul> 937 938<hr /> 939<p><strong>Benefits Of Performing Griha Pravesh E-Puja</strong></p> 940 941<ul> 942 <li>Booking an e-puja for griha pravesh dispels any harmful energies and sets up a positive environment.</li> 943 <li>Offerings are made to the deity to seek the blessings for the well-being of the family and the success of the new house.</li> 944 <li>The puja honors the vastu purush and ensures harmony in the home.</li> 945 <li>It boosts positive energies and strengthens the bond between family members.</li> 946 <li>The ritual is considered to cleanse the space of any evil force that may enter before you move. Ensures a clean slate for the members.</li> 947 <li>Marks a new beginning and formal entry into the new home.</li> 948</ul> 949 </div> 950 <div class="puja-collapsible-fade"></div> 951 </div> 952 <div class="text-center mt-3"> 953 <button class="btn btn-outline-orange px-4 roun
953ded-pill puja-toggle-btn" type="button">See More</button> 954 </div> 955 </div> 956 957 <!-- Section: Gallery --> 958 <div class="puja-section-card"> 959 <h4 class="puja-section-title">Gallery</h4> 960 <div class="swiper gallery-swiper mt-3"> 961 <div class="swiper-wrapper"> 962 <div class="swiper-slide"> 963 <img src="https://cdn.99pandit.com/app/puja-images/99pandit-user-app-images/Griha-Pravesh-E-Puja-1.jpg" class="img-fluid rounded shadow-sm" alt="Gallery Image"> 964 </div> 965 <div class="swiper-slide"> 966 <img src="https://cdn.99pandit.com/app/puja-images/99pandit-user-app-images/Griha-Pravesh-E-Puja-2.jpg" class="img-fluid rounded shadow-sm" alt="Gallery Image"> 967 </div> 968 </div> 969 <div class="swiper-pagination"></div> 970 </div> 971 </div> 972 973 <!-- Section: FAQs --> 974 <div class="puja-section-card"> 975 <h4 class="puja-section-title faq-main-title">Frequently Asked Questions</h4> 976 <div class="faq-list mt-3" id="faqAccordion"> 977 <div class="faq-item"> 978 <button class="faq-question w-100 d-flex justify-content-between align-items-center" 979 type="button" 980 data-bs-toggle="collapse" 981 data-bs-target="#faq-collapse-0" 982 aria-expanded="false" 983 aria-controls="faq-collapse-0"> 984 <span>When is the best time to do Griha Pravesh Puja?</span> 985 <span class="faq-toggle-icon"> 986 <span class="icon-plus">+</span> 987 <span class="icon-cross">Ã</span> 988 </span> 989 </button> 990 <div id="faq-collapse-0" class="faq-collapse-content accordion-collapse collapse" data-bs-parent="#faqAccordion"> 991 <div class="faq-answer"> 992 The best time is usually during auspicious tithis like Basant Panchami, Akshaya Tritiya, or specific dates in the Hindu calendar. Our pandits can help you find the most beneficial muhurat for your family. 993 </div> 994 </div> 995 </div> 996 <div class="faq-item"> 997 <button class="faq-question w-100 d-flex justify-content-between align-items-center" 998 type="button" 999 data-bs-toggle="collapse" 1000 data-bs-target="#faq-collapse-1" 1001 aria-expanded="false" 1002 aria-controls="faq-collapse-1"> 1003 <span>Can I do Griha Pravesh in a rented house?</span> 1004 <span class="faq-toggle-icon">
1005 <span class="icon-plus">+</span> 1006 <span class="icon-cross">Ã</span> 1007 </span> 1008 </button> 1009 <div id="faq-collapse-1" class="faq-collapse-content accordion-collapse collapse" data-bs-parent="#faqAccordion"> 1010 <div class="faq-answer"> 1011 Yes, it is highly recommended to perform a simple Griha Pravesh and Vastu Shanti even in a rented home to clear any previous negative energy and start your stay on a positive note. 1012 </div> 1013 </div> 1014 </div> 1015 <div class="faq-item"> 1016 <button class="faq-question w-100 d-flex justify-content-between align-items-center" 1017 type="button" 1018 data-bs-toggle="collapse" 1019 data-bs-target="#faq-collapse-2" 1020 aria-expanded="false" 1021 aria-controls="faq-collapse-2"> 1022 <span>What items are needed for an Online Griha Pravesh?</span> 1023 <span class="faq-toggle-icon"> 1024 <span class="icon-plus">+</span> 1025 <span class="icon-cross">Ã</span> 1026 </span> 1027 </button> 1028 <div id="faq-collapse-2" class="faq-collapse-content accordion-collapse collapse" data-bs-parent="#faqAccordion"> 1029 <div class="faq-answer"> 1030 You will need basic items like flowers, fruits, sweets, a Kalash, coconut, and incense sticks. We provide a detailed list well in advance so you can be prepared. 1031 </div> 1032 </div> 1033 </div> 1034 <div class="faq-item"> 1035 <button class="faq-question w-100 d-flex justify-content-between align-items-center" 1036 type="button" 1037 data-bs-toggle="collapse" 1038 data-bs-target="#faq-collapse-3" 1039 aria-expanded="false" 1040 aria-controls="faq-collapse-3"> 1041 <span>Does 99Pandit provide Puja in different languages?</span> 1042 <span class="faq-toggle-icon"> 1043 <span class="icon-plus">+</span> 1044 <span class="icon-cross">Ã</span> 1045 </span> 1046 </button> 1047 <div id="faq-collapse-3" class="faq-collapse-content accordion-collapse collapse" data-bs-parent="#faqAccordion"> 1048 <div class="faq-answer"> 1049 Yes, we have a diverse panel of pandits who can perform the puja in Hindi, Marathi, Gujarati, Tamil, Telugu, and many other regional languages. 1050 </div> 1051 </div> 1052 </div> 1053 <div class="faq-item"> 1054 <button class="faq-question w-100 d-flex justify-content-between align-items-center" 1055 type="button" 1056 data-bs-toggle="collapse" 1057 data-bs-target="#faq-collapse-4" 1058 aria-expanded="false" 1059 aria-controls="faq-collapse-4">
1060 <span>Is the online puja as effective as the offline one?</span> 1061 <span class="faq-toggle-icon"> 1062 <span class="icon-plus">+</span> 1063 <span class="icon-cross">Ã</span> 1064 </span> 1065 </button> 1066 <div id="faq-collapse-4" class="faq-collapse-content accordion-collapse collapse" data-bs-parent="#faqAccordion"> 1067 <div class="faq-answer"> 1068 Absolutely. The power of Vedic mantras depends on the vibration and the Sankalp taken in your name. Our pandits ensure that you are mentally and spiritually involved throughout the session. 1069 </div> 1070 </div> 1071 </div> 1072 </div> 1073 </div> 1074 1075 <!-- Section: Reviews (Amazon-style) --> 1076 <div class="puja-section-card border-bottom-0" id="reviewsSection"> 1077 <h4 class="puja-section-title">Customer Reviews</h4> 1078 1079 <div class="review-summary-wrap d-flex flex-wrap gap-4 mt-3 mb-4"> 1080 <!-- Overall rating --> 1081 <div class="review-summary-score text-center"> 1082 <div class="review-summary-avg">4.8</div> 1083 <div class="review-stars-wrap mb-1 justify-content-center"> 1084 <span class="star ">★</span> 1085 <span class="star ">★</span> 1086 <span class="star ">★</span> 1087 <span class="star ">★</span> 1088 <span class="star ">★</span> 1089 </div> 1090 <div class="text-muted small">4 ratings</div> 1091 </div> 1092 1093 <!-- Star breakdown bars --> 1094 <div class="review-summary-bars flex-grow-1"> 1095 <div class="review-bar-row d-flex align-items-center gap-2"> 1096 <span class="review-bar-label">5 star</span> 1097 <div class="review-bar-track"> 1098 <div class="review-bar-fill" style="width: 75%;"></div> 1099 </div> 1100 <span class="review-bar-pct">75%</span> 1101 </div> 1102 <div class="review-bar-row d-flex align-items-center gap-2"> 1103 <span class="review-bar-label">4 star</span> 1104 <div class="review-bar-track"> 1105 <div class="review-bar-fill" style="width: 25%;"></div> 1106 </div> 1107 <span class="review-bar-pct">25%</span> 1108 </div> 1109 <div class="review-bar-row d-flex align-items-center gap-2">
1110 <span class="review-bar-label">3 star</span> 1111 <div class="review-bar-track"> 1112 <div class="review-bar-fill" style="width: 0%;"></div> 1113 </div> 1114 <span class="review-bar-pct">0%</span> 1115 </div> 1116 <div class="review-bar-row d-flex align-items-center gap-2"> 1117 <span class="review-bar-label">2 star</span> 1118 <div class="review-bar-track"> 1119 <div class="review-bar-fill" style="width: 0%;"></div> 1120 </div> 1121 <span class="review-bar-pct">0%</span> 1122 </div> 1123 <div class="review-bar-row d-flex align-items-center gap-2"> 1124 <span class="review-bar-label">1 star</span> 1125 <div class="review-bar-track"> 1126 <div class="review-bar-fill" style="width: 0%;"></div> 1127 </div> 1128 <span class="review-bar-pct">0%</span> 1129 </div> 1130 </div> 1131 </div> 1132 1133 <!-- Individual reviews list --> 1134 <div class="review-list" id="reviewList"> 1135 <div class="review-list-item "> 1136 <div class="d-flex align-items-center mb-2"> 1137 <img src="https://cdn.99pandit.com/99pandit_newhome/user.webp" class="rounded-circle me-2" alt="Anuj" style="width: 40px; height: 40px; object-fit: cover;"> 1138 <div> 1139 <h6 class="fw-bold text-dark mb-0" style="font-size: 0.9rem;">Anuj</h6> 1140 <span class="review-verified-badge"> 1141 <i class="fas fa-check-circle"></i> Verified Booking 1142 </span> 1143 </div> 1144 </div> 1145 1146 <div class="d-flex align-items-center gap-2 mb-2 flex-wrap"> 1147 <div class="review-stars-wrap"> 1148 <span class="star">★</span> 1149 <span class="star">★</span> 1150 <span class="star">★</span> 1151 <span class="star">★</span> 1152 <sp
1152an class="star">★</span> 1153 </div> 1154 <small class="text-muted">02 Nov 2025</small> 1155 </div> 1156 1157 <p class="text-secondary mb-0" style="font-size: 0.88rem; line-height: 1.5;">The team of 99Pandit links devotion with comfort. I booked the Griha Pravesh online puja for my new home inauguration in the USA. The communication was perfect, and the pandit explained each step calmly. Very happy with the service.</p> 1158 </div> 1159 <div class="review-list-item "> 1160 <div class="d-flex align-items-center mb-2"> 1161 <img src="https://cdn.99pandit.com/99pandit_newhome/user.webp" class="rounded-circle me-2" alt="Ravi K" style="width: 40px; height: 40px; object-fit: cover;"> 1162 <div> 1163 <h6 class="fw-bold text-dark mb-0" style="font-size: 0.9rem;">Ravi K</h6> 1164 <span class="review-verified-badge"> 1165 <i class="fas fa-check-circle"></i> Verified Booking 1166 </span> 1167 </div> 1168 </div> 1169 1170 <div class="d-flex align-items-center gap-2 mb-2 flex-wrap"> 1171 <div class="review-stars-wrap"> 1172 <span class="star">★</span> 1173 <span class="star">★</span> 1174 <span class="star">★</span> 1175 <span class="star">★</span> 1176 <span class="star">★</span> 1177 </div> 1178 <small class="text-muted">03 Nov 2025</small> 1179 </div> 1180 1181 <p class="text-secondary mb-0" style="font-size: 0.88rem; line-height: 1.5;">Humne Pune me naya flat khareeda tha, Pune jese bade shahar me pandit ki jankari milna thoda mushkil tha isiliye 99Pandit ki madad se Griha Pravesh Puja karayi. Pandit ji ne samagri ke baare me pehle hi bta diya tha to puja me asaani rahi. Bahut accha experience raha.</p> 1182 </div> 1183 <div class="review-list-item "> 1184 <div class="d-flex align-items-center mb-2"> 1185 <img src="https://cdn.99pandit.com/99pandit_newhome/user.webp" class="rounded-circle me-2" alt="Rajat Sharma" style="width: 40px; height: 40px; object-fit: cover;"> 1186 <div> 1187 <h6 class="fw-bold text-dark mb-0" style="font-size: 0.9rem;">Rajat Sharma</h6>
1188 <span class="review-verified-badge"> 1189 <i class="fas fa-check-circle"></i> Verified Booking 1190 </span> 1191 </div> 1192 </div> 1193 1194 <div class="d-flex align-items-center gap-2 mb-2 flex-wrap"> 1195 <div class="review-stars-wrap"> 1196 <span class="star">★</span> 1197 <span class="star">★</span> 1198 <span class="star">★</span> 1199 <span class="star">★</span> 1200 <span class="star empty">★</span> 1201 </div> 1202 <small class="text-muted">03 Nov 2025</small> 1203 </div> 1204 1205 <p class="text-secondary mb-0" style="font-size: 0.88rem; line-height: 1.5;">Our Griha Pravesh Puja experience with 99Pandit was really good. The pandit did the puja within the muhurat and handled each ritual respectfully. I couldnât have asked for better than this.</p> 1206 </div> 1207 <div class="review-list-item review-list-item-hidden d-none"> 1208 <div class="d-flex align-items-center mb-2"> 1209 <img src="https://cdn.99pandit.com/99pandit_newhome/user.webp" class="rounded-circle me-2" alt="Anjana" style="width: 40px; height: 40px; object-fit: cover;"> 1210 <div> 1211 <h6 class="fw-bold text-dark mb-0" style="font-size: 0.9rem;">Anjana</h6> 1212 <span class="review-verified-badge"> 1213 <i class="fas fa-check-circle"></i> Verified Booking 1214 </span> 1215 </div> 1216 </div> 1217 1218 <div class="d-flex align-items-center gap-2 mb-2 flex-wrap"> 1219 <div class="review-stars-wrap"> 1220 <span class="star">★</span> 1221 <sp
1221an class="star">★</span> 1222 <span class="star">★</span> 1223 <span class="star">★</span> 1224 <span class="star">★</span> 1225 </div> 1226 <small class="text-muted">05 Nov 2025</small> 1227 </div> 1228 1229 <p class="text-secondary mb-0" style="font-size: 0.88rem; line-height: 1.5;">à¤à¥à¤¹ पà¥à¤°à¤µà¥à¤¶ à¤à¥ दिन 99Pandit à¤à¥ पà¤à¤¡à¤¿à¤¤ à¤à¥ नॠहमारॠनयॠà¤à¤° मà¥à¤ पà¥à¤à¤¾ à¤à¤°à¤¾à¤à¥¤ सà¥à¤¬à¤¹ सॠहॠसब तà¥à¤¯à¤¾à¤° था। मà¤à¤¤à¥à¤° à¤à¤° हवन सब विधि à¤à¥ ठनà¥à¤¸à¤¾à¤° हà¥à¤à¥¤ थà¥à¤¡à¤¼à¤¾ धà¥à¤ à¤à¥à¤¯à¤¾à¤¦à¤¾ हà¥à¤ पर पà¥à¤à¤¾ à¤à¥ बाद à¤à¤° मà¥à¤ सà¥à¤ à¤à¤° शाà¤à¤¤à¤¿ महसà¥à¤¸ हà¥à¤à¥¤</p> 1230 </div> 1231 </div> 1232 1233 <div class="text-center mt-3 pt-2"> 1234 <button id="btn-load-more-reviews" type="button" class="btn btn-outline-orange px-4 py-1.5 rounded-pill" onclick="if (!window.__cfRLUnblockHandlers) return false; loadMoreReviews()" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 1235 Load More Reviews 1236 </button> 1237 </div> 1238 </div> 1239 1240 </div> 1241 </div> 1242 </div> 1243 1244 <!-- App Section CTA --> 1245 <section class="appSection my-5"> 1246 <div class="container cta-banner-card overflow-hidden"> 1247 <div class="row align-items-end g-0"> 1248 <div class="col-lg-7 col-12 cta-content-col"> 1249 <h2 class="cta-banner-heading">Book a Pandit Online Anytime — Get the App</h2> 1250 <p class="cta-banner-subtext">Get connected with qualified pandits near you for your specific rituals and ceremonies.</p> 1251 <div class="cta-badges-wrap"> 1252 <a href="https://play.google.com/store/apps/details?id=com.user.u_99pandit&pcampaignid=web_share" target="_blank" class="cta-badge-link" aria-label="Get it on Google Play"> 1253 <img src="https://cdn.99pandit.com/99pandit_newhome/img/playstore.webp" alt="Get it on Google Play" class="img-fluid cta-badge-img"> 1254 </a> 1255 <a href="https://apps.apple.com/in/app/99pandit/id6473841676?platform=iphone" target="_blank" class="cta-badge-link" aria-label="Download on the App Store"> 1256 <img src="https://cdn.99pandit.com/99pandit_newhome/img/appstore.webp" alt="Download on the App Store" class="img-fluid cta-badge-img"> 1257 </a> 1258 </div> 1259 </div> 1260 <div class="col-lg-5 col-12 cta-image-col"> 1261 <img src="https://cdn.99pandit.com/99pandit_newhome/img/ctaimage_2.webp" alt="99Pandit Mobile App and Vedic Pandit" class="cta-banner-image"> 1262 </div> 1263 </div> 1264 </div> 1265 </section> 1266 1267 <!-- Floating sticky Add to Cart bar (shown when main button is off-screen) --> 1268 <div id="floating-cart-bar" class="floating-cart-bar" style="display:none;"> 1269 <div class="floating-cart-fields d-flex gap-2 mb-2"> 1270 <div class="position-relative select-date flex-grow-1"> 1271 <input type="text" 1272 id="floatingCalendarInput" 1273 class="form-control form-control-sm with-icon date-input" 1274 placeholder="DD/MM/YYYY"> 1275 <i class="fas fa-calendar-alt calendar-icon" onclick="if (!window.__cfRLUnblockHandlers) return false; (function(el){el._flatpickr && el._flatpickr.open()})(document.getElementById('floatingCalendarInput'))" data-cf-modified-84aaaab7731110d08d2fb4dc-=""></i> 1276 </div> 1277 </div> 1278 <div class="floating-cart-inner"> 1279 <div class="floating-cart-info"> 1280 <div class="floating-cart-name">Griha Pravesh Puja</div> 1281 <div class="floating-cart-price">
1282 <span class="fw-bold text-orange">$200.00</span> 1283 <span class="text-decoration-line-through text-muted small ms-1">$699.00</span> 1284 </div> 1285 </div> 1286 <button type="button" class="btn floating-cart-btn" onclick="if (!window.__cfRLUnblockHandlers) return false; submitCartForm()" data-cf-modified-84aaaab7731110d08d2fb4dc-=""> 1287 <i class="fas fa-shopping-cart me-2"></i>Add to Cart 1288 </button> 1289 </div> 1290 </div> 1291 1292 </section> 1293 1294 <!-- Custom Styling Injections --> 1295 1296 1297 <!-- Generic See More / See Less for all collapsible sections --> 1298
1298<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1299 (function () { 1300 var CLAMP = 220; // px â collapsed height for all sections 1301 1302 function initCollapsibles() { 1303 document.querySelectorAll('.puja-section-card').forEach(function (card) { 1304 var body = card.querySelector('.puja-collapsible'); 1305 var fade = card.querySelector('.puja-collapsible-fade'); 1306 var btn = card.querySelector('.puja-toggle-btn'); 1307 if (!body || !btn) return; 1308 1309 // Force a reflow so scrollHeight is accurate 1310 body.style.maxHeight = 'none'; 1311 var fullH = body.scrollHeight; 1312 1313 if (fullH <= CLAMP) { 1314 // Content is short â no truncation needed 1315 btn.style.display = 'none'; 1316 if (fade) fade.style.display = 'none'; 1317 return; 1318 } 1319 1320 // Clamp content 1321 body.style.overflow = 'hidden'; 1322 body.style.maxHeight = CLAMP + 'px'; 1323 body.style.transition = 'max-height 0.4s ease'; 1324 if (fade) fade.style.display = 'block'; 1325 btn.dataset.expanded = 'false'; 1326 1327 btn.addEventListener('click', function () { 1328 var expanded = btn.dataset.expanded === 'true'; 1329 if (expanded) { 1330 // Collapse back 1331 body.style.overflow = 'hidden'; 1332 body.style.maxHeight = body.scrollHeight + 'px'; 1333 void body.offsetHeight; // force reflow for smooth transition 1334 body.style.maxHeight = CLAMP + 'px'; 1335 btn.textContent = 'See More'; 1336 if (fade) fade.style.display = 'block'; 1337 btn.dataset.expanded = 'false'; 1338 // Scroll back to the section heading 1339 card.scrollIntoView({ behavior: 'smooth', block: 'start' }); 1340 } else { 1341 // Expand dynamically 1342 body.style.overflow = 'hidden'; 1343 var targetH = body.scrollHeight + 40; 1344 body.style.maxHeight = targetH + 'px'; 1345 btn.textContent = 'See Less'; 1346 if (fade) fade.style.display = 'none'; 1347 btn.dataset.expanded = 'true'; 1348 1349 // Once transition completes, release constraints completely so nothing is clipped 1350 setTimeout(function () { 1351 if (btn.dataset.expanded === 'true') { 1352 body.style.maxHeight = 'none'; 1353 body.style.overflow = 'visible'; 1354 } 1355 }, 420); 1356 } 1357 }); 1358 }); 1359 } 1360 1361 if (document.readyState === 'loading') { 1362 document.addEventListener('DOMContentLoaded', initCollapsibles); 1363 } else { 1364 initCollapsibles(); 1365 } 1366 })(); 1367 </script>
1367 1368 1369 1370 <!-- Load more reviews script --> 1371
1371<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1372 function loadMoreReviews() { 1373 document.querySelectorAll('#reviewList .review-list-item-hidden').forEach(function (item) { 1374 item.classList.remove('d-none'); 1375 }); 1376 document.getElementById('btn-load-more-reviews')?.remove(); 1377 } 1378 </script>
1378 1379 1380 <!-- Export Samagri List (print / save as PDF) --> 1381
1381<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1382 function exportSamagriList(btn) { 1383 var richBox = document.getElementById('prepGuideRich'); 1384 if (!richBox) return; 1385 1386 var pujaName = btn.getAttribute('data-puja-name') || 'Puja'; 1387 1388 var printFrame = document.createElement('iframe'); 1389 printFrame.style.position = 'fixed'; 1390 printFrame.style.right = '0'; 1391 printFrame.style.bottom = '0'; 1392 printFrame.style.width = '0'; 1393 printFrame.style.height = '0'; 1394 printFrame.style.border = '0'; 1395 document.body.appendChild(printFrame); 1396 1397 var doc = printFrame.contentWindow.document; 1398 doc.open(); 1399 doc.write( 1400 '<!DOCTYPE html><html><head><title>' + pujaName + ' - Samagri List</title>' + 1401 '<style>' + 1402 'body{font-family:Arial,Helvetica,sans-serif;color:#333;padding:24px;}' + 1403 'h1{font-size:1.3rem;color:#7a3b00;margin-bottom:4px;}' + 1404 'p.sub{color:#777;font-size:0.85rem;margin-top:0;margin-bottom:20px;}' + 1405 'ul{list-style:none;padding:0;margin:0;}' + 1406 'li{padding:6px 0;border-bottom:1px dashed #ddd;font-size:0.95rem;}' + 1407 'li:before{content:"\\2022";color:#e65c00;font-weight:bold;display:inline-block;width:1em;}' + 1408 'li:has(strong), li:has(b){border-bottom:none;border-top:1px solid #ccc;padding-top:14px;margin-top:8px;font-weight:bold;}' + 1409 'li:has(strong):before, li:has(b):before{content:"";width:0;}' + 1410 '</style></head><body>' + 1411 '<h1>' + pujaName + '</h1>' + 1412 '<p class="sub">Samagri / Preparation List</p>' + 1413 richBox.innerHTML + 1414 '</body></html>' 1415 ); 1416 doc.close(); 1417 1418 setTimeout(function () { 1419 printFrame.contentWindow.focus(); 1420 printFrame.contentWindow.print(); 1421 }, 250); 1422 1423 setTimeout(function () { 1424 printFrame.remove(); 1425 }, 60000); 1426 } 1427 </script>
1427 1428 1429 <!-- Swiper JS for Gallery --> 1430
1430<script src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js" type="84aaaab7731110d08d2fb4dc-text/javascript"></script>
1430 1431
1431<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1432 new Swiper(".gallery-swiper", { 1433 slidesPerView: 1, 1434 spaceBetween: 10, 1435 loop: true, 1436 pagination: { 1437 el: ".gallery-swiper .swiper-pagination", 1438 clickable: true, 1439 }, 1440 breakpoints: { 1441 640: {slidesPerView: 1}, 1442 768: {slidesPerView: 2}, 1443 1024: {slidesPerView: 3} 1444 } 1445 }); 1446 </script>
1446 1447 1448 <!-- Scroll to reviews section when ?show=reviews is present --> 1449
1449<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1450 document.addEventListener("DOMContentLoaded", function() { 1451 const urlParams = new URLSearchParams(window.location.search); 1452 if (urlParams.get("show") === "reviews") { 1453 setTimeout(function () { 1454 const reviewSection = document.getElementById('reviewsSection'); 1455 if (reviewSection) { 1456 reviewSection.scrollIntoView({ behavior: "smooth" }); 1457 } 1458 }, 300); 1459 } 1460 }); 1461 </script>
1461 1462 1463 <!-- Floating Add to Cart bar - IntersectionObserver logic --> 1464
1464<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1465 (function () { 1466 var floatingBar = document.getElementById('floating-cart-bar'); 1467 var realBtn = document.getElementById('add-to-cart-btn'); 1468 if (!floatingBar || !realBtn) return; 1469 1470 var footer = document.querySelector('footer'); 1471 1472 var observer = new IntersectionObserver(function (entries) { 1473 entries.forEach(function (entry) { 1474 if (entry.isIntersecting) { 1475 floatingBar.classList.remove('visible'); 1476 setTimeout(function () { 1477 if (!floatingBar.classList.contains('visible')) { 1478 floatingBar.style.display = 'none'; 1479 } 1480 }, 320); 1481 } else { 1482 if (footer) { 1483 var footerRect = footer.getBoundingClientRect(); 1484 if (footerRect.top <= window.innerHeight) { 1485 floatingBar.classList.remove('visible'); 1486 return; 1487 } 1488 } 1489 floatingBar.style.display = 'block'; 1490 requestAnimationFrame(function () { 1491 floatingBar.classList.add('visible'); 1492 }); 1493 } 1494 }); 1495 }, { threshold: 0.5 }); 1496 1497 observer.observe(realBtn); 1498 1499 if (footer) { 1500 window.addEventListener('scroll', function () { 1501 var footerRect = footer.getBoundingClientRect(); 1502 if (footerRect.top <= window.innerHeight) { 1503 floatingBar.classList.remove('visible'); 1504 setTimeout(function () { 1505 if (!floatingBar.classList.contains('visible')) { 1506 floatingBar.style.display = 'none'; 1507 } 1508 }, 320); 1509 } 1510 }, { passive: true }); 1511 } 1512 })(); 1513 </script>
1513 1514 1515 <!-- Flatpickr init for preferred date --> 1516
1516<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1517 document.addEventListener("DOMContentLoaded", function () { 1518 document.querySelectorAll('.date-input:not([disabled])').forEach(function (el) { 1519 if (el._flatpickr) return; 1520 const _todayStr = (function() { 1521 const d = new Date(); 1522 const mm = String(d.getMonth() + 1).padStart(2, '0'); 1523 const dd = String(d.getDate()).padStart(2, '0'); 1524 return d.getFullYear() + '-' + mm + '-' + dd; 1525 })(); 1526 flatpickr(el, { 1527 dateFormat: "Y-m-d", 1528 altInput: true, 1529 altFormat: "d/m/Y", 1530 minDate: _todayStr, 1531 defaultDate: el.value || null, 1532 allowInput: false, 1533 disableMobile: true 1534 }); 1535 }); 1536 }); 1537 </script>
1537 1538 1539 <!-- Submit Cart Form logic --> 1540
1540<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 1541 function submitCartForm() { 1542 const form = document.getElementById('puja-language-form'); 1543 const btn = document.getElementById('add-to-cart-btn'); 1544 const floatBtn = document.querySelector('#floating-cart-bar .floating-cart-btn'); 1545 1546 // Sync the floating bottom bar's date field (if filled) into the main form 1547 const floatingDate = document.getElementById('floatingCalendarInput'); 1548 if (floatingDate && floatingDate.value) { 1549 form.querySelector('[name="preferred_date"]').value = floatingDate.value; 1550 } 1551 1552 const dateVal = form.querySelector('[name="preferred_date"]').value; 1553 1554 if (!dateVal) { 1555 showCartToast('Please select a preferred date.', 'error'); 1556 return; 1557 } 1558 1559 const _parts = dateVal.split('-'); 1560 const _selD = new Date(_parts[0], _parts[1] - 1, _parts[2]); 1561 const _today = new Date(); _today.setHours(0, 0, 0, 0); 1562 if (_selD < _today) { 1563 showCartToast('Please select today\'s date or a future date.', 'error'); 1564 return; 1565 } 1566 1567 btn.disabled = true; 1568 btn.textContent = 'Adding...'; 1569 if (floatBtn) { 1570 floatBtn.disabled = true; 1571 floatBtn.textContent = 'Adding...'; 1572 } 1573 1574 const formData = new FormData(form); 1575 1576 fetch('https://99pandit.com/App/puja/cart/add', { 1577 method: 'POST', 1578 headers: { 1579 'X-Requested-With': 'XMLHttpRequest', 1580 'X-CSRF-TOKEN': 'DTWAGsGhTOHavuoYIWVtRYYaXy8hP7JKnFP1m3Wl' 1581 }, 1582 body: formData 1583 }) 1584 .then(res => res.json()) 1585 .then(data => { 1586 if (data.status === 1) { 1587 window.location.href = data.redirect; 1588 } else { 1589 const msg = data.message || (data.errors ? Object.values(data.errors).flat().join(' ') : 'Something went wrong.'); 1590 showCartToast(msg, 'error'); 1591 btn.disabled = false; 1592 btn.innerHTML = '<i class="fas fa-shopping-cart me-1"></i>Add to Cart'; 1593 if (floatBtn) { 1594 floatBtn.disabled = false; 1595 floatBtn.innerHTML = '<i class="fas fa-shopping-cart me-2"></i>Add to Cart'; 1596 } 1597 } 1598 }) 1599 .catch(() => { 1600 showCartToast('Something went wrong. Please try again.', 'error'); 1601 btn.disabled = false; 1602 btn.innerHTML = '<i class="fas fa-shopping-cart me-1"></i>Add to Cart'; 1603 if (floatBtn) { 1604 floatBtn.disabled = false; 1605 floatBtn.innerHTML = '<i class="fas fa-shopping-cart me-2"></i>Add to Cart'; 1606 } 1607 }); 1608 } 1609 1610 const videoCarouselItems = [{"name":"Deenesh Kumar","image":"https:\/\/cdn.99pandit.com\/99pandit_newhome\/e-puja-banner\/reviewer\/Deenesh-kumar.png","youtube_id":"ZBB2SgnnmlI"},{"name":"Rudra","image":"https:\/\/cdn.99pandit.com\/99pandit_newhome\/e-puja-banner\/reviewer\/rudra.png","youtube_id":"F3qgbbwUhHU"},{"name":"Ganesh","image":"https:\/\/cdn.99pandit.com\/99pandit_newhome\/e-puja-banner\/reviewer\/Ganesh.png","youtube_id":"ENdWGjs2f2k"},{"name":"Nitin Goyal","image":"https:\/\/cdn.99pandit.com\/99pandit_newhome\/e-puja-banner\/reviewer\/nitin-goyal.png","youtube_id":"ZI1BIxS4M1M"}]; 1611 let videoCarouselIndex = 0; 1612 1613 function showVideoInModal(youtubeId, title) { 1614 const overlay = document.getElementById('videoModal'); 1615 const frame = document.getElementById('videoModalFrame'); 1616 const titleEl = document.getElementById('videoModalTitle'); 1617 if (!overlay || !frame) return; 1618 frame.src = 'https://www.youtube.com/embed/' + youtubeId + '?autoplay=1&rel=0'; 1619 titleEl.textContent = title || ''; 1620 overlay.classList.add('open'); 1621 document.body.style.overflow = 'hidden'; 1622 } 1623 1624 function openVideoModal(youtubeId, title) { 1625 document.getElementById('videoModal').classList.remove('carousel-mode'); 1626 showVideoInModal(youtubeId, title); 1627 } 1628 1629 function openVideoCarousel(startIndex) { 1630 if (!videoCarouselItems.length) return; 1631 videoCarouselIndex = startIndex || 0; 1632 document.getElementById('videoModal').classList.add('carousel-mode'); 1633 const item = videoCarouselItems[videoCarouselIndex]; 1634 showVideoInModal(item.youtube_id, item.name); 1635 } 1636 1637 function carouselNext() { 1638 if (!videoCarouselItems.length) return; 1639 videoCarouselIndex = (videoCarouselIndex + 1) % videoCarouselItems.length; 1640 const item = videoCarouselItems[videoCarouselIndex]; 1641 showVideoInModal(item.youtube_id, item.name); 1642 } 1643 1644 function carouselPrev() { 1645 if (!videoCarouselItems.length) return; 1646 videoCarouselIndex = (videoCarouselIndex - 1 + videoCarouselItems.length) % videoCarouselItems.length; 1647 const item = videoCarouselItems[videoCarouselIndex]; 1648 showVideoInModal(item.youtube_id, item.name); 1649 } 1650 1651 function closeVideoModal() {
1652 const overlay = document.getElementById('videoModal'); 1653 const frame = document.getElementById('videoModalFrame'); 1654 if (!overlay || !frame) return; 1655 overlay.classList.remove('open'); 1656 frame.src = ''; 1657 document.body.style.overflow = ''; 1658 } 1659 1660 document.addEventListener('keydown', function (e) { 1661 if (e.key === 'Escape') closeVideoModal(); 1662 if (e.key === 'ArrowRight' && document.getElementById('videoModal').classList.contains('carousel-mode')) carouselNext(); 1663 if (e.key === 'ArrowLeft' && document.getElementById('videoModal').classList.contains('carousel-mode')) carouselPrev(); 1664 }); 1665 1666 function showCartToast(message, type) { 1667 let toast = document.getElementById('cartAjaxToast'); 1668 if (!toast) { 1669 toast = document.createElement('div'); 1670 toast.id = 'cartAjaxToast'; 1671 toast.style.cssText = 'position:fixed;bottom:20px;left:20px;padding:14px 20px;border-radius:8px;color:#fff;font-size:14px;z-index:10000;min-width:260px;box-shadow:0 4px 12px rgba(0,0,0,0.2);'; 1672 document.body.appendChild(toast); 1673 } 1674 const floatingBar = document.getElementById('floating-cart-bar'); 1675 const barVisible = floatingBar && floatingBar.classList.contains('visible'); 1676 toast.style.bottom = barVisible ? (floatingBar.offsetHeight + 32) + 'px' : '20px'; 1677 toast.style.backgroundColor = type === 'error' ? '#df2622' : '#28a745'; 1678 toast.textContent = message; 1679 toast.style.display = 'block'; 1680 setTimeout(() => { toast.style.display = 'none'; }, 4000); 1681 } 1682 </script>
1682 1683 1684 1685 1686<!-- ========================================================================== 1687 1. DESKTOP FOOTER (Visible on Screens >= 768px: d-none d-md-block) 1688 Exact WordPress Desktop Replica (Havan fire + 4 Columns + Orange Copyright) 1689 ========================================================================== --> 1690<div class="d-none d-md-block"> 1691 <!-- Top Section: Temple + Fire Background with Logo, Social, Quick Links & App --> 1692 <footer class="container-fluid px-0 footer-container" style="background-image: url('https://99pandit.com//wp-content/themes/ninetyninepandit/img/footerbg1.png') !important; background-size: cover !important; background-position: center top !important; background-repeat: no-repeat !important; background-color: transparent !important;"> 1693 <img src="https://cdn.99pandit.com/images/footer-uper.webp" class="img-fluid w-100 footer-uper" alt="99Pandit Design" width="1350" height="40" loading="lazy" decoding="async"> 1694 <div class="container"> 1695 <div class="row py-3"> 1696 <!-- Column 1: Logo & Social --> 1697 <div class="col-md-3"> 1698 <div class="logo_social_links_mobile"> 1699 <div> 1700 <a href="https://99pandit.com"> 1701 <img src="https://99pandit.com/wp-content/themes/ninetyninepandit/img/footerlogopandit.png" class="img-fluid footer-logos-mobile" alt="99Pandit Logo" loading="lazy" width="170" height="165" style="max-width: 170px; height: auto;"> 1702 </a> 1703 <ul class="social_links mt-3"> 1704 <li> 1705 <a href="https://www.facebook.com/99pandit" class="p-0" target="_blank" aria-label="Facebook"> 1706 <img src="https://cdn.99pandit.com/images/footer/facebook.png" class="img-fluid" alt="Facebook" loading="lazy" width="40" height="40"> 1707 </a> 1708 </li> 1709 <li> 1710 <a href="https://www.instagram.com/99panditpuja/" class="p-0" target="_blank" aria-label="Instagram"> 1711 <img src="https://cdn.99pandit.com/images/footer/insta.png" class="img-fluid" alt="Instagram" loading="lazy" width="40" height="40"> 1712 </a> 1713 </li> 1714 <li> 1715 <a href="https://www.youtube.com/channel/UCGH1GXsKjVIw-mD4Qvz1FsQ" class="p-0" target="_blank" aria-label="Youtube"> 1716 <img src="https://cdn.99pandit.com/images/footer/youtube.png" class="img-fluid" alt="Youtube" loading="lazy" width="40" height="40"> 1717 </a> 1718 </li> 1719 <li> 1720 <a href="https://in.pinterest.com/99panditservice/" class="p-0 pinterest" aria-label="Pinterest" target="_blank"> 1721 <span class="np-icon-svg" aria-hidden="true" style="display: inline-flex; align-items: center; justify-content: center;"> 1722 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" width="18" height="18" fill="#e60023"> 1723 <path d="M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.4 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"/> 1724 </svg> 1725 </span> 1726 </a> 1727 </li> 1728 </ul> 1729 </div> 1730 </div> 1731 </div> 1732 1733 <!-- Column 2: Quick Links --> 1734 <div class="col-md-3"> 1735 <div class="quick_links_decktop">
1736 <span class="text-white footer-heading">Quick Links</span> 1737 <ul class="quick_links"> 1738 <li><a href="https://99pandit.com/service/">Puja Services</a></li> 1739 <li><a href="https://99pandit.com/cities/">Cities</a></li> 1740 <li><a href="https://99pandit.com/international/">International</a></li> 1741 <li><a href="https://99pandit.com/App/e-puja">E-Puja</a></li> 1742 <li><a href="https://99pandit.com/App/group-puja">Group Puja</a></li> 1743 <li><a href="https://99pandit.com/blog/">Blog</a></li> 1744 <li><a href="https://99pandit.com/gallery/">Gallery</a></li> 1745 <li><a href="https://99pandit.com/faq/">FAQs</a></li> 1746 <li><a href="https://99pandit.com/about-us/">About us</a></li> 1747 <li><a href="https://99pandit.com/html-sitemap/">Sitemap</a></li> 1748 </ul> 1749 </div> 1750 </div> 1751 1752 <!-- Column 3: Contact Info --> 1753 <div class="col-md-3 contact-info-decktop"> 1754 <span class="text-white footer-heading">Contact Info</span> 1755 <p class="mb-0 text-white"> 1756 <b>Email :</b> <a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="3b52555d547b02024b5a555f524f15585456">[email protected]</a> 1757 </p> 1758 <div class="col-md-12 col-6 mt-4"> 1759 <span class="text-white footer-heading">For Free Registration</span> 1760 <a class="np-btn np-btn--outline np-btn--white np-btn--md np-btn--pill" href="https://99pandit.com/App/pandit-registration"> 1761 <span class="np-btn__label">Become a Pandit</span> 1762 </a> 1763 </div> 1764 </div> 1765 1766 <!-- Column 4: For Pandits App --> 1767 <div class="col-md-3"> 1768 <div class="social_links_decktop"> 1769 <span class="text-white footer-heading">For Pandits App</span> 1770 <ul class="social_links py-3"> 1771 <li> 1772 <a href="https://play.google.com/store/apps/details?id=pandit99.com" target="_blank" class="w-100"> 1773 <img src="https://cdn.99pandit.com/99pandit_newhome/img/playstore.webp" height="50" width="150" alt="99Pandit App" loading="lazy"> 1774 </a> 1775 <a href="https://apps.apple.com/in/app/99pandit-for-partners/id6499431189?platform=iphone" target="_blank" class="w-100 mt-3 d-inline-block"> 1776 <img style="border: 1px solid #fff; border-radius: 4px;" src="https://cdn.99pandit.com/images/cta/appstore.webp" height="50" width="150" alt="99Pandit App" loading="lazy"> 1777 </a> 1778 </li> 1779 </ul> 1780 </div> 1781 </div> 1782 </div> 1783 1784 <!-- Popular Searches --> 1785 <div class="row py-3 footer-popular-links"> 1786 <div class="col-12"> 1787 <span class="text-white footer-heading">Popular Searches</span> 1788 <ul class="quick_links footer-popular-links__list"> 1789 <li><a href="https://99pandit.com/cities/ujjain/kaal-sarp-dosh-puja/">Kaal Sarp Dosh Puja in Ujjain</a></li> 1790 <li><a href="https://99pandit.com/cities/ujjain/pitra-dosh-puja/">Pitra Dosh Puja in Ujjain</a></li> 1791 <li><a href="https://99pandit.com/cities/bangalore/griha-pravesh-puja-pandit/">Griha Pravesh Puja in Bangalore</a></li> 1792 <li><a href="https://99pandit.com/cities/haridwar/pitra-dosh-puja/">Pitra Dosh Puja in Haridwar</a></li> 1793 <li><a href="https://99pandit.com/cities/haridwar/narayan-bali-puja/">Narayan Bali Puja in Haridwar</a></li> 1794 <li><a href="https://99pandit.com/cities/bangalore/satyanarayan-puja-pandit/">Satyanarayan Puja in Bangalore</a></li> 1795 </ul> 1796 </div> 1797 </div> 1798 </div> 1799 </footer> 1800 1801 <!-- Copyright Bar (#f39b59) --> 1802 <footer class="container-fluid py-3 text-center pandit_copy_right" style="background-color: #f39b59 !important;"> 1803 <div class="container"> 1804 <div class="row"> 1805 <div class="col" style="text-align: left;">
1806 <span class="text-white fw-bold" style="font-size: 13px;">Copyright © 2026 | 99Pandit</span> 1807 <span style="color: #fff; padding: 5px 15px; margin-left: 10px; font-weight: 600; font-size: 13px;">[DVIJVIDMAN SERVICES PRIVATE LIMITED]</span> 1808 </div> 1809 <div class="col footer-quick-links"> 1810 <ul class="quick_links_footer desktop-footer-links"> 1811 <li><a rel="privacy-policy" href="https://99pandit.com/privacy-policy/">Privacy Policy</a></li> 1812 <li><a href="https://99pandit.com/refund-policy/">Cancellation and Refund Policy</a></li> 1813 <li><a href="https://99pandit.com/terms-and-conditions/">Terms and Conditions</a></li> 1814 <li><a href="https://99pandit.com/contact-us/">Contact Us</a></li> 1815 <li><a href="https://99pandit.com/shipping-policy/">Shipping Policy</a></li> 1816 </ul> 1817 </div> 1818 </div> 1819 </div> 1820 </footer> 1821 1822 <!-- SEO Accordion Section (White Background, Dark Brown Text #3e2723) --> 1823 <footer class="mb-3 mt-3"> 1824 <div class="container"> 1825 <div class="links-footer"> 1826 <div class="links-footer-icon-txt"> 1827 <span>Verified Pandits for E-Puja, Group Puja, and Sacred Ceremonies</span> 1828 <div class="links-footer-icon" id="toggleDesktopLinks"> 1829 <span class="material-symbols-outlined notranslate" id="addLinks" style="display:none;" aria-hidden="true" translate="no">add</span> 1830 </div> 1831 </div> 1832 1833 <div class="links-footer-urls active" id="linksFooterUrls"> 1834 <div class="links-footer-blog"> 1835 <span class="footer-ll">India's Smart Platform for Online Pandit Booking</span> 1836 <p>99Pandit is India's most trusted destination to book a pandit online for all Vedic rituals and ceremonies. We bridge the distance between ancient traditions and modern lifestyles by providing access to verified, experienced priests at your doorstep. Whether you are looking to book an online pooja for a small home ceremony or a large-scale community event, our platform ensures every ritual is performed with absolute "Shastrokta Vidhi" (scriptural accuracy).</p> 1837 1838 <span class="footer-ll">Online Pandit for Puja with Live Streaming Services</span> 1839 <p>Our expert priests specialise in a wide range of ceremonies. From the highly auspicious griha pravesh puja to start your journey in a new home, to specialised ceremonies like Satyanarayana Vrat, Lakshmi Puja, and Vastu Shanti, we cover it all. If you are specifically looking for a pandit for puja to handle complex rituals, our team ensures a hassle-free experience by providing end-to-end management, including high-quality puja samagri and Muhurat consultation. For devotees living abroad or unable to attend in person, we also offer a dedicated online pandit for puja through our advanced online puja streaming services.</p> 1840 1841 <span class="footer-ll">Your Go-To Platform for "Pandit Near Me" Searches</span> 1842 <p>We understand that cultural nuances matter. That's why we offer region-specific services, such as finding a North Indian Pandit in Bangalore, a Bihari Pandit in Bangalore, or specialised Bengali, Marathi, Telugu, and Kannada priests. 99Pandit has a massive network of local experts, making us the top choice when you search for a "pandit near me." Our presence spans across major hubs like Delhi NCR, Pune, Hyderabad, and Chennai, ensuring that no matter where you are, a qualified priest is just a click away.</p> 1843 </div> 1844 1845 <!-- Dynamic E-Puja Links --> 1846 <div class="links-footer-blog mt-3"> 1847 <div class="links-footer-urls-items mt-2"> 1848 <span class="footer-ll">99Pandit E-Puja</span>
1849 <div class="blog-category-url mt-2"> 1850 <a href="https://99pandit.com/App/e-puja/varshika-shraddha-puja" class="city-footer-link"> 1851 Varshika Shraddha Puja 1852 </a> 1853 <a href="https://99pandit.com/App/e-puja/bharani-shraddha-puja" class="city-footer-link"> 1854 Bharani Shraddha Puja 1855 </a> 1856 <a href="https://99pandit.com/App/e-puja/tripindi-shradh-puja" class="city-footer-link"> 1857 Tripindi Shradh Puja 1858 </a> 1859 <a href="https://99pandit.com/App/e-puja/pind-daan-e-puja" class="city-footer-link"> 1860 Pind Daan E-Puja 1861 </a> 1862 <a href="https://99pandit.com/App/e-puja/vishwakarma-e-puja" class="city-footer-link"> 1863 Vishwakarma E-Puja 1864 </a> 1865 <a href="https://99pandit.com/App/e-puja/ganesh-visarjan-e-puja" class="city-footer-link"> 1866 Ganesh Visarjan E-Puja 1867 </a> 1868 <a href="https://99pandit.com/App/e-puja/ganesh-chaturthi-e-puja" class="city-footer-link"> 1869 Ganesh Chaturthi E-Puja 1870 </a> 1871 <a href="https://99pandit.com/App/e-puja/rudrabhishek-e-puja" class="city-footer-link"> 1872 Rudrabhishek E-Puja 1873 </a> 1874 <a href="https://99pandit.com/App/e-puja/das-mahavidya-puja" class="city-footer-link"> 1875 Das Mahavidya Puja 1876 </a> 1877 <a href="https://99pandit.com/App/e-puja/rahu-ketu-shanti-puja" class="city-footer-link"> 1878 Rahu Ketu Shanti Puja 1879 </a> 1880 <a href="https://99pandit.com/App/e-puja/brahman-bhoj" class="city-footer-link"> 1881 Brahman Bhoj 1882 </a> 1883 <a href="https://99pandit.com/App/e-puja/nav-chandi-puja" class="city-footer-link"> 1884 Nav Chandi Puja 1885 </a> 1886 <a href="https://99pandit.com/App/e-puja/guru-chandal-dosh-puja" class="city-footer-link"> 1887 Guru Chandal Dosh Puja 1888 </a> 1889 <a href="https://99pandit.com/App/e-puja/mahamrityunjaya-jaap-puja" class="city-footer-link"> 1890 Mahamrityunjaya Jaap Puja 1891 </a> 1892 <a href="https://99pandit.com/App/e-puja/baglamukhi-puja" class="city-footer-link"> 1893 Baglamukhi Puja 1894 </a> 1895 </div> 1896 </div> 1897 </div> 1898 1899 <!-- Dynamic Group Puja Links --> 1900 <div class="links-footer-blog mt-3"> 1901 <div class="links-footer-urls-items mt-2">
1902 <span class="footer-ll">99Pandit Group-Puja</span> 1903 <div class="blog-category-url mt-2"> 1904 <a href="https://99pandit.com/App/group-puja/mahakaleshwar-jyotirlinga-chadava" class="city-footer-link"> 1905 Mahakaleshwar Jyotirlinga Chadava 1906 </a> 1907 <a href="https://99pandit.com/App/group-puja/ganesh-chaturthi-online-group-puja" class="city-footer-link"> 1908 Ganesh Chaturthi Online Group Puja 1909 </a> 1910 </div> 1911 </div> 1912 </div> 1913 1914 <!-- Dynamic Celebration Puja Links --> 1915 <div class="links-footer-blog mt-3"> 1916 <div class="links-footer-urls-items mt-2"> 1917 <span class="footer-ll">99Pandit Celebration Pujas</span>
1918 <div class="blog-category-url mt-2"> 1919 <a href="https://99pandit.com/App/celebration-puja/birthday-celebration-puja" class="city-footer-link"> 1920 Birthday Celebration Puja 1921 </a> 1922 </div> 1923 </div> 1924 </div> 1925 </div> 1926 </div> 1927 </div> 1928 </footer> 1929</div> 1930 1931 1932<style> 1933/* ââ Desktop Popular Searches Inline Style (Matching User Screenshot) ââ */ 1934@media (min-width: 768px) { 1935 .footer-popular-links { 1936 border-top: 1px solid rgba(255, 255, 255, 0.25) !important; 1937 padding-top: 20px !important; 1938 margin-top: 20px !important; 1939 } 1940 .footer-popular-links .footer-heading { 1941 font-size: 24px !important; 1942 font-weight: 500 !important; 1943 color: #ffffff !important; 1944 display: inline-block !important; 1945 margin-bottom: 14px !important; 1946 border-bottom: 1px solid rgba(255, 255, 255, 0.7) !important; 1947 padding-bottom: 4px !important; 1948 } 1949 .footer-popular-links__list { 1950 display: flex !important; 1951 flex-direction: row !important; 1952 flex-wrap: nowrap !important; 1953 justify-content: space-between !important; 1954 align-items: center !important; 1955 gap: 8px !important; 1956 padding-left: 0 !important; 1957 margin: 6px 0 0 0 !important; 1958 list-style: none !important; 1959 } 1960 .footer-popular-links__list li { 1961 display: inline-block !important; 1962 margin: 0 !important; 1963 padding: 0 !important; 1964 list-style: none !important; 1965 flex-shrink: 0; 1966 } 1967 .footer-popular-links__list li a { 1968 color: #ffffff !important; 1969 text-decoration: none !important; 1970 font-size: 13px !important; 1971 font-weight: 400 !important; 1972 white-space: nowrap !important; 1973 transition: opacity 0.2s ease !important; 1974 } 1975 .footer-popular-links__list li a:hover { 1976 color: #ffffff !important; 1977 text-decoration: underline !important; 1978 opacity: 0.9 !important; 1979 } 1980 1981 /* Desktop Footer Brand Social Links Alignment */ 1982 .logo_social_links_mobile .social_links { 1983 display: flex !important; 1984 flex-direction: row !important; 1985 align-items: center !important; 1986 padding-left: 0 !important; 1987 margin-top: 1rem !important; 1988 margin-bottom: 0 !important; 1989 list-style: none !important; 1990 } 1991 .logo_social_links_mobile .social_links li { 1992 display: flex !important; 1993 align-items: center !important; 1994 justify-content: center !important; 1995 margin-right: 10px !important; 1996 margin-bottom: 0 !important; 1997 list-style: none !important; 1998 } 1999 .logo_social_links_mobile .social_links li a { 2000 width: 40px !important; 2001 height: 40px !important; 2002 padding: 0 !important; 2003 margin: 0 !important; 2004 border-radius: 50% !important; 2005 display: flex !important; 2006 align-items: center !important; 2007 justify-content: center !important; 2008 box-sizing: border-box !important; 2009 overflow: hidden !important; 2010 } 2011 .logo_social_links_mobile .social_links li a img { 2012 width: 40px !important; 2013 height: 40px !important; 2014 display: block !important; 2015 border-radius: 50% !important; 2016 } 2017 .logo_social_links_mobile .social_links li a.pinterest { 2018 width: 40px !important; 2019 height: 40px !important; 2020 background-color: #ffffff !important; 2021 border: 2px solid #e60023 !important; 2022 box-sizing: border-box !important; 2023 border-radius: 50% !important; 2024 display: flex !important; 2025 align-items: center !important; 2026 justify-content: center !important; 2027 padding: 0 !important; 2028 margin: 0 !important; 2029 } 2030 .logo_social_links_mobile .social_links li a.pinterest .np-icon-svg { 2031 display: flex !important; 2032 align-items: center !important; 2033 justify-content: center !important; 2034 width: 100% !important; 2035 height: 100% !important; 2036 line-height: 1 !important; 2037 } 2038 .logo_social_links_mobile .social_links li a.pinterest svg { 2039 display: block !important; 2040 } 2041 2042 /* App Badges in right column */ 2043 .social_links_decktop .social_links { 2044 display: block !important; 2045 list-style: none !important; 2046 padding: 0 !important; 2047 margin: 0 !important; 2048 } 2049 .social_links_decktop .social_links li { 2050 display: block !important; 2051 margin: 0 !important; 2052 padding: 0 !important; 2053 } 2054 .social_links_decktop .social_links li a { 2055 display: block !important; 2056 width: 150px !important; 2057 height: auto !important; 2058 border-radius: 0 !important; 2059 padding: 0 !important; 2060 margin: 0 !important; 2061 } 2062 .social_links_decktop .social_links li a img { 2063 width: 150px !important; 2064 height: 50px !important; 2065 display: block !important; 2066 border-radius: 4px !important; 2067 object-fit: contain !important; 2068 } 2069} 2070 2071/* ââ Exact Mobile Footer (Matching User's Screenshot 1:1) ââ */ 2072@media (max-width: 767.98px) { 2073 .np-mobile-footer-wrap { 2074 display: block !important; 2075 background: #ffffff !important; 2076 width: 100% !important; 2077 margin-top: 1.5rem !important; 2078 } 2079 .np-footer-top { 2080 background: #ffdec8 !important; 2081 padding: 24px 16px 18px 16px !important; 2082 } 2083 .np-footer-brand { 2084 display: flex !important; 2085 flex-direction: column !important; 2086 align-items: center !important; 2087 justify-content: center !important; 2088 text-align: center !important; 2089 } 2090 .np-footer-logo { 2091 width: 140px !important; 2092 height: auto !important; 2093 display: block !important; 2094 margin: 0 auto !important; 2095 } 2096 .np-mobile-social-links { 2097 display: flex !important; 2098 justify-content: center !important; 2099 align-items: center !important; 2100 gap: 12px !important; 2101 padding: 0 !important; 2102 margin: 14px 0 0 0 !important; 2103 list-style: none !important; 2104 } 2105 .np-mobile-social-links li { 2106 list-style: none !important; 2107 display: inline-block !important; 2108 margin: 0 !important; 2109 } 2110 .np-mobile-social-links li a { 2111 width: 40px !important; 2112 height: 40px !important; 2113 display: flex !important; 2114 align-items: center !important; 2115 justify-content: center !important; 2116 border-radius: 50% !important; 2117 padding: 0 !important; 2118 text-decoration: none !important; 2119 } 2120 .np-mobile-social-links li a img { 2121 width: 40px !important; 2122 height: 40px !important; 2123 } 2124 .np-mobile-social-links li a.pinterest { 2125 background-color: #ffffff !important; 2126 border: 2px solid #e60023 !important; 2127 } 2128 .np-mobile-popular-box { 2129 margin-top: 18px !important; 2130 margin-bottom: 16px !important; 2131 text-align: left !important; 2132 } 2133 .np-mobile-popular-title { 2134 font-size: 15px !important; 2135 font-weight: 600 !important; 2136 color: #2b2523 !important; 2137 margin-bottom: 10px !important; 2138 display: block !important; 2139 } 2140 .np-mobile-popular-grid { 2141 display: grid !important; 2142 grid-template-columns: 1fr 1fr !important; 2143 column-gap: 12px !important; 2144 row-gap: 8px !important; 2145 padding: 0 !important; 2146 margin: 0 !important; 2147 list-style: none !important; 2148 } 2149 .np-mobile-popular-grid li { 2150 list-style: none !important; 2151 margin: 0 !important; 2152 } 2153 .np-mobile-popular-grid li a { 2154 color: #2b2523 !important; 2155 font-size: 12px !important; 2156 line-height: 1.35 !important; 2157 text-decoration: none !important; 2158 display: block !important; 2159 } 2160 .np-mobile-popular-grid li a:hover { 2161 text-decoration: underline !important; 2162 } 2163 .np-mobile-contact-info { 2164 text-align: center !important; 2165 margin-top: 14px !important; 2166 } 2167 .np-mobile-company-name { 2168 font-size: 12px !important; 2169 font-weight: 600 !important; 2170 color: #3e2723 !important; 2171 margin-bottom: 6px !important; 2172 } 2173 .np-mobile-contact-line { 2174 font-size: 12px !important; 2175 color: #3e2723 !important; 2176 margin: 0 !important; 2177 display: flex !important; 2178 justify-content: center !important; 2179 align-items: center !important; 2180 gap: 18px !important; 2181 flex-wrap: wrap !important; 2182 } 2183 .np-mobile-contact-line b { 2184 font-weight: 700 !important; 2185 } 2186 .np-footer-copyright { 2187 background: #f6f4f4 !important; 2188 padding: 10px 16px !important; 2189 text-align: center !important; 2190 color: #222222 !important; 2191 font-size: 13.5px !important; 2192 font-weight: 700 !important; 2193 } 2194 .np-footer-bar { 2195 background-color: var(--np-saffron, #f37420) !important; 2196 padding: 10px 12px !important; 2197 text-align: center !important; 2198 } 2199 .np-footer-legal__list { 2200 display: flex !important; 2201 flex-wrap: wrap !important; 2202 justify-content: center !important; 2203 align-items: center !important; 2204 column-gap: 14px !important; 2205 row-gap: 6px !important; 2206 list-style: none !important; 2207 padding: 0 !important; 2208 margin: 0 !important; 2209 } 2210 .np-footer-legal__list li { 2211 margin: 0 !important; 2212 padding: 0 !important; 2213 display: inline-flex !important; 2214 align-items: center !important; 2215 } 2216 .np-footer-legal__list li:after { 2217 content: "|" !important; 2218 color: rgba(255, 255, 255, 0.7) !important; 2219 margin-left: 14px !important; 2220 font-size: 11px !important; 2221 } 2222 .np-footer-legal__list li:last-child:after { 2223 content: "" !important; 2224 margin: 0 !important; 2225 } 2226 .np-footer-legal__list li a { 2227 color: #ffffff !important; 2228 font-size: 12px !important; 2229 font-weight: 500 !important; 2230 text-decoration: none !important; 2231 white-space: nowrap !important; 2232 } 2233 .np-footer-seo-wrap { 2234 padding: 16px 16px 36px 16px !important; 2235 background: #ffffff !important; 2236 text-align: left !important; 2237 } 2238 .np-footer-seo-wrap__head { 2239 font-size: 15.5px !important; 2240 font-weight: 700 !important; 2241 color: #222222 !important; 2242 margin-bottom: 12px !important; 2243 line-height: 1.4 !important; 2244 } 2245 .np-footer-seo__heading { 2246 display: block !important; 2247 font-size: 13.5px !important; 2248 font-weight: 600 !important; 2249 color: #333333 !important; 2250 margin-top: 12px !important; 2251 margin-bottom: 4px !important; 2252 line-height: 1.4 !important; 2253 } 2254 .np-footer-seo__text { 2255 font-size: 11.5px !important; 2256 line-height: 1.65 !important; 2257 color: #666666 !important; 2258 margin: 0 0 8px 0 !important; 2259 } 2260} 2261</style> 2262 2263<!-- ========================================================================== 2264 2. MOBILE FOOTER (Visible on Screens < 768px: d-block d-md-none) 2265 Exact 1:1 Match with User Screenshot & WordPress footermobile.php
2266 Peach Background + 99Pandit Logo + Dark Popular Searches + Orange Bar 2267 ========================================================================== --> 2268<div class="d-block d-md-none np-mobile-footer-wrap"> 2269 <!-- Top Peach Section --> 2270 <div class="container-fluid np-footer-top"> 2271 <!-- Logo & Social Icons --> 2272 <div class="np-footer-brand"> 2273 <a href="https://99pandit.com"> 2274 <img src="https://cdn.99pandit.com/optimizedimage/mobile-optimized-images/pandit-logo-mobile_2.webp" class="img-fluid np-footer-logo" alt="99Pandit Logo" width="140" height="45"> 2275 </a> 2276 <ul class="np-mobile-social-links"> 2277 <li> 2278 <a href="https://www.facebook.com/99pandit" target="_blank" aria-label="Facebook"> 2279 <img src="https://cdn.99pandit.com/images/footer/facebook.png" class="img-fluid" alt="Facebook" width="42" height="42"> 2280 </a> 2281 </li> 2282 <li> 2283 <a href="https://www.instagram.com/99panditpuja/" target="_blank" aria-label="Instagram"> 2284 <img src="https://cdn.99pandit.com/images/footer/insta.png" class="img-fluid" alt="Instagram" width="42" height="42"> 2285 </a> 2286 </li> 2287 <li> 2288 <a href="https://www.youtube.com/channel/UCGH1GXsKjVIw-mD4Qvz1FsQ" target="_blank" aria-label="Youtube"> 2289 <img src="https://cdn.99pandit.com/images/footer/youtube.png" class="img-fluid" alt="Youtube" width="42" height="42"> 2290 </a> 2291 </li> 2292 <li> 2293 <a href="https://in.pinterest.com/99panditservice/" class="pinterest" aria-label="Pinterest" target="_blank"> 2294 <span class="np-icon-svg" aria-hidden="true"> 2295 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" width="18" height="18" fill="#e60023"> 2296 <path d="M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.4 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"/> 2297 </svg> 2298 </span> 2299 </a> 2300 </li> 2301 </ul> 2302 </div> 2303 2304 <!-- Popular Searches (2-Column Grid as in Screenshot) --> 2305 <div class="np-mobile-popular-box"> 2306 <span class="np-mobile-popular-title">Popular Searches</span> 2307 <ul class="np-mobile-popular-grid"> 2308 <li><a href="https://99pandit.com/cities/ujjain/kaal-sarp-dosh-puja/">Kaal Sarp Dosh Puja in Ujjain</a></li> 2309 <li><a href="https://99pandit.com/cities/ujjain/pitra-dosh-puja/">Pitra Dosh Puja in Ujjain</a></li> 2310 <li><a href="https://99pandit.com/cities/bangalore/griha-pravesh-puja-pandit/">Griha Pravesh Puja in Bangalore</a></li> 2311 <li><a href="https://99pandit.com/cities/haridwar/pitra-dosh-puja/">Pitra Dosh Puja in Haridwar</a></li> 2312 <li><a href="https://99pandit.com/cities/haridwar/narayan-bali-puja/">Narayan Bali Puja in Haridwar</a></li> 2313 <li><a href="https://99pandit.com/cities/bangalore/satyanarayan-puja-pandit/">Satyanarayan Puja in Bangalore</a></li> 2314 </ul> 2315 </div> 2316 2317 <!-- Contact & Legal Details --> 2318 <div class="np-mobile-contact-info"> 2319 <p class="np-mobile-company-name">[DVIJVIDMAN SERVICES PRIVATE LIMITED]</p> 2320 <p class="np-mobile-contact-line"> 2321 <span><b>Email :</b> <a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="2b42454d446b12125b4a454f425f05484446">[email protected]</a></span>
2322 <span><b>Phone:</b> 8005663275</span> 2323 </p> 2324 </div> 2325 </div> 2326 2327 <!-- Light Gray Copyright Bar --> 2328 <div class="np-footer-copyright"> 2329 <span>Copyright © 2026 | 99Pandit</span> 2330 </div> 2331 2332 <!-- Saffron Legal Links Bar (White text separated by |) --> 2333 <div class="np-footer-bar"> 2334 <ul class="np-footer-legal__list"> 2335 <li><a rel="privacy-policy" href="https://99pandit.com/privacy-policy/">Privacy Policy</a></li> 2336 <li><a href="https://99pandit.com/refund-policy/">Refund Policy</a></li> 2337 <li><a href="https://99pandit.com/terms-and-conditions/">Terms and Conditions</a></li> 2338 <li><a href="https://99pandit.com/shipping-policy/">Shipping policy</a></li> 2339 <li><a href="https://99pandit.com/html-sitemap/">Sitemap</a></li> 2340 </ul> 2341 </div> 2342 2343 <!-- White SEO Section --> 2344 <div class="np-footer-seo-wrap"> 2345 <div class="np-footer-seo-wrap__head"> 2346 Verified Pandits for Puja, Rituals & Sacred Ceremonies 2347 </div> 2348 2349 <div class="np-footer-seo__block"> 2350 <span class="np-footer-seo__heading">India's Smart Platform for Online Pandit Booking</span> 2351 <p class="np-footer-seo__text">99Pandit is India's most trusted destination to book a pandit online for all Vedic rituals and ceremonies. We bridge the distance between ancient traditions and modern lifestyles by providing access to verified, experienced priests at your doorstep. Whether you are looking to book an online pooja for a small home ceremony, our platform ensures every ritual is performed with absolute Shastrokta Vidhi.</p> 2352 </div> 2353 2354 <div class="np-footer-seo__block"> 2355 <span class="np-footer-seo__heading">Online Pandit for Puja with Live Streaming Services</span> 2356 <p class="np-footer-seo__text">Our expert priests specialise in a wide range of ceremonies. From the highly auspicious griha pravesh puja to specialised ceremonies like Satyanarayana Vrat, Lakshmi Puja, and Vastu Shanti, we cover it all. For devotees abroad, we also offer online puja with live streaming services.</p> 2357 </div> 2358 2359 <!-- Dynamic E-Puja Links (Mobile) --> 2360 <div class="mt-3"> 2361 <span class="np-footer-seo__heading">99Pandit E-Puja</span> 2362 <div class="d-flex flex-wrap gap-2 mt-1"> 2363 <a href="https://99pandit.com/App/e-puja/varshika-shraddha-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2364 Varshika Shraddha Puja 2365 </a> 2366 <a href="https://99pandit.com/App/e-puja/bharani-shraddha-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2367 Bharani Shraddha Puja 2368 </a> 2369 <a href="https://99pandit.com/App/e-puja/tripindi-shradh-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2370 Tripindi Shradh Puja 2371 </a> 2372 <a href="https://99pandit.com/App/e-puja/pind-daan-e-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2373 Pind Daan E-Puja 2374 </a> 2375 <a href="https://99pandit.com/App/e-puja/vishwakarma-e-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2376 Vishwakarma E-Puja 2377 </a> 2378 <a href="https://99pandit.com/App/e-puja/ganesh-visarjan-e-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2379 Ganesh Visarjan E-Puja 2380 </a> 2381 <a href="https://99pandit.com/App/e-puja/ganesh-chaturthi-e-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2382 Ganesh Chaturthi E-Puja 2383 </a> 2384 <a href="https://99pandit.com/App/e-puja/rudrabhishek-e-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2385 Rudrabhishek E-Puja 2386 </a> 2387 <a href="https://99pandit.com/App/e-puja/das-mahavidya-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2388 Das Mahavidya Puja 2389 </a> 2390 <a href="https://99pandit.com/App/e-puja/rahu-ketu-shanti-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2391 Rahu Ketu Shanti Puja 2392 </a> 2393 <a href="https://99pandit.com/App/e-puja/brahman-bhoj" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2394 Brahman Bhoj 2395 </a> 2396 <a href="https://99pandit.com/App/e-puja/nav-chandi-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2397 Nav Chandi Puja 2398 </a> 2399 <a href="https://99pandit.com/App/e-puja/guru-chandal
2399-dosh-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2400 Guru Chandal Dosh Puja 2401 </a> 2402 <a href="https://99pandit.com/App/e-puja/mahamrityunjaya-jaap-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2403 Mahamrityunjaya Jaap Puja 2404 </a> 2405 <a href="https://99pandit.com/App/e-puja/baglamukhi-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2406 Baglamukhi Puja 2407 </a> 2408 </div> 2409 </div> 2410 2411 <!-- Dynamic Group Puja Links (Mobile) --> 2412 <div class="mt-2"> 2413 <span class="np-footer-seo__heading">99Pandit Group-Puja</span> 2414 <div class="d-flex flex-wrap gap-2 mt-1"> 2415 <a href="https://99pandit.com/App/group-puja/mahakaleshwar-jyotirlinga-chadava" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2416 Mahakaleshwar Jyotirlinga Chadava 2417 </a> 2418 <a href="https://99pandit.com/App/group-puja/ganesh-chaturthi-online-group-puja" style="color: #3e2723; font-size: 11px; text-decoration: underline;"> 2419 Ganesh Chaturthi Online Group Puja 2420 </a> 2421 </div> 2422 </div> 2423 </div> 2424</div> 2425 2426 2427<!-- Global Loading Overlay --> 2428<div id="loadingOverlay" 2429 class="d-none position-fixed top-0 start-0 w-100 h-100 bg-dark bg-opacity-50 d-flex flex-column justify-content-center align-items-center" 2430 style="z-index: 1055;"> 2431 <div class="loader-wrapper position-relative mb-3"> 2432 <div class="outer-circle"></div> 2433 <div class="inner-circle"></div> 2434 <div class="percentage-text position-absolute top-50 start-50 translate-middle fw-bold text-white" id="loadingPercentage">0%</div> 2435 </div> 2436 <div id="loadingMessage" class="text-white fw-bold">Processingâ¦</div> 2437</div> 2438 2439<!-- Scripts -->
vendor: 109 bytes, lines 2439-2440
2439 2440<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
2440<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2441let loaderInterval = null; 2442let currentPercent = 0; 2443 2444function showLoader(message = "Processingâ¦") { 2445 $('#loadingOverlay').removeClass('d-none'); 2446 $('#loadingMessage').text(message); 2447 $('#loadingPercentage').text("0%"); 2448 currentPercent = 0; 2449 2450 loaderInterval = setInterval(() => { 2451 if (currentPercent < 90) { 2452 currentPercent += 1; 2453 $('#loadingPercentage').text(currentPercent + "%"); 2454 } 2455 }, 100); 2456} 2457 2458function hideLoader() { 2459 if (loaderInterval) clearInterval(loaderInterval); 2460 $('#loadingPercentage').text("100%"); 2461 setTimeout(() => { 2462 $('#loadingOverlay').addClass('d-none'); 2463 }, 300); 2464} 2465 2466// Client-side live search filter for cards 2467document.addEventListener("DOMContentLoaded", function () { 2468 const searchInput = document.getElementById("search-puja"); 2469 const cards = document.querySelectorAll(".card-holder"); 2470 2471 if (searchInput) { 2472 searchInput.addEventListener("keyup", function () { 2473 const searchValue = this.value.toLowerCase().trim(); 2474 2475 cards.forEach(function (card) { 2476 const pujaName = card.querySelector(".pujaName") 2477 ?.innerText 2478 .toLowerCase(); 2479 2480 if (pujaName && pujaName.includes(searchValue)) { 2481 card.style.display = "block"; 2482 } else { 2483 card.style.display = "none"; 2484 } 2485 }); 2486 }); 2487 } 2488}); 2489 2490// Accordion Toggle for Desktop SEO Links Section 2491document.addEventListener("DOMContentLoaded", function () { 2492 const toggleBtn = document.getElementById("toggleDesktopLinks"); 2493 const addLinks = document.getElementById("addLinks"); 2494 const linksUrls = document.getElementById("linksFooterUrls"); 2495 2496 if (toggleBtn && linksUrls) { 2497 toggleBtn.addEventListener("click", function () { 2498 const isActive = linksUrls.classList.contains("active"); 2499 if (isActive) { 2500 linksUrls.classList.remove("active"); 2501 if (addLinks) addLinks.style.display = "flex"; 2502 } else { 2503 linksUrls.classList.add("active"); 2504 if (addLinks) addLinks.style.display = "none"; 2505 } 2506 }); 2507 } 2508}); 2509</script>
2509 2510 2511<!--
2511<script src="https://cdn.99pandit.com/app/js/jquery-3.6.0.min.js" defer></script>
2511--> 2512 2513<!--
2513<script src="https://cdn.99pandit.com/app/js/swiper-bundle.min.js" defer></script>
2513-->
2514<script src="https://cdn.99pandit.com/app/js/bootstrap.bundle.min.js" defer type="84aaaab7731110d08d2fb4dc-text/javascript"></script>
2514 2515<!--
2515<script async type="text/javascript" src="https://cdn.99pandit.com/app/js/bootstrap.bundle.min.js"></script>
2515-->
2516<script defer type="84aaaab7731110d08d2fb4dc-text/javascript" src="https://cdn.99pandit.com/app/js/flatpickr.js"></script>
2516 2517
2518<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2519 document.addEventListener("DOMContentLoaded", function () { 2520 const _calEl = document.getElementById("calendarInput"); 2521 if (_calEl && !_calEl._flatpickr) { 2522 const today = new Date(); 2523 today.setHours(0, 0, 0, 0); 2524 flatpickr(_calEl, { 2525 altInput: true, 2526 altFormat: "d/m/Y", 2527 dateFormat: "Y-m-d", 2528 allowInput: false, 2529 disableMobile: true, 2530 minDate: today, 2531 defaultDate: _calEl.value || null 2532 }); 2533 } 2534 }); 2535</script>
2535 2536
2537<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2538 // Form validation 2539 const _astrologyForm = document.getElementById("astrologyCartForm"); 2540 if (_astrologyForm) { 2541 _astrologyForm.addEventListener("submit", function (e) { 2542 let isValid = true; 2543 2544 const requiredFields = [ 2545 "language_consultation", 2546 "preferred_date", 2547 "preferred_time", 2548 "place_birth", 2549 "dob", 2550 "time_birth" 2551 ]; 2552 2553 requiredFields.forEach(id => { 2554 const el = document.getElementById(id); 2555 if (!el || el.value.trim() === "") isValid = false; 2556 }); 2557 }); 2558 } 2559</script>
vendor: 2 bytes, line 2559
2559
2560<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2561 // Wait until the DOM is fully loaded 2562 document.addEventListener('DOMContentLoaded', function () { 2563 const astrologyModal = document.getElementById('astrologyModal'); 2564 const astrologyForm = document.getElementById('astrologyCartForm'); 2565 2566 if (astrologyModal && astrologyForm) { 2567 astrologyModal.addEventListener('hidden.bs.modal', function () { 2568 astrologyForm.reset(); 2569 }); 2570 } 2571 }); 2572</script>
vendor: 2 bytes, line 2572
2572
2573<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2574 const navLinks = document.querySelectorAll('.nav-menu a'); 2575 const currentURL = window.location.pathname; 2576 2577 navLinks.forEach(link => { 2578 if (link.getAttribute('href') === currentURL) { 2579 link.classList.add('active'); 2580 } else { 2581 link.classList.remove('active'); 2582 } 2583 }); 2584</script>
2584 2585<!--
2585<script src="https://app.getgabs.com/getredtowp/iframe/dWBFUUP7RmkXg33zds1HBWeskkCGj1xcUyha07O9PFVkoPL7wXo8JW8GVqsJqgPUUHc77CAtdK9nxkxYUngTkaLnIvuZ2pkbH8px" async></script>
2585--> 2586 2587 2588<div class="modal fade" id="commonAlertModal" tabindex="-1" aria-hidden="true" aria-labelledby="commonAlertModalTitle"> 2589 <div class="modal-dialog modal-dialog-centered"> 2590 <div class="modal-content"> 2591 <div class="modal-header"> 2592 <h5 class="modal-title" id="commonAlertModalTitle">Alert</h5> 2593 <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> 2594 </div> 2595 <div class="modal-body" id="commonAlertMessage"></div> 2596 <div class="modal-footer"> 2597 <button type="button" class="btn btn-primary" data-bs-dismiss="modal">OK</button> 2598 </div> 2599 </div> 2600 </div> 2601</div>
2602<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2603 // Reusable alert â showAlertModal('message') (optional 2nd arg = title) from anywhere. 2604 window.showAlertModal = function (message, title) { 2605 var msgEl = document.getElementById('commonAlertMessage'); 2606 var titleEl = document.getElementById('commonAlertModalTitle'); 2607 if (msgEl) msgEl.textContent = message; 2608 if (titleEl) titleEl.textContent = title || 'Alert'; 2609 2610 var el = document.getElementById('commonAlertModal'); 2611 if (el && window.bootstrap && bootstrap.Modal) { 2612 bootstrap.Modal.getOrCreateInstance(el).show(); 2613 } else { 2614 window.alert(message); // fallback if Bootstrap JS isn't ready 2615 } 2616 }; 2617</script>
2617 2618 2619<div id="google_translate_element" style="display:none;" aria-hidden="true"></div> 2620 2621<button type="button" 2622 id="sideTranslateBtn" 2623 class="side-translate-pill notranslate" 2624 aria-label="Translate page to Hindi / English" 2625 title="हिà¤à¤¦à¥ मà¥à¤ दà¥à¤à¥à¤ / View in Hindi â drag to move"> 2626 <!-- Google 4-color dots --> 2627 <span class="g-dots" aria-hidden="true"> 2628 <span class="g-dot g-blue"></span> 2629 <span class="g-dot g-red"></span> 2630 <span class="g-dot g-yellow"></span> 2631 <span class="g-dot g-green"></span> 2632 </span> 2633 2634 <!-- Google Translate æA icon --> 2635 <span class="gt-icon" aria-hidden="true"> 2636 <span class="gt-wen">æ</span><span class="gt-letter-a">A</span> 2637 </span> 2638 2639 <!-- Text in black --> 2640 <span class="side-translate-text" id="sideTranslateText">हिà¤à¤¦à¥ मà¥à¤ दà¥à¤à¥à¤</span> 2641</button> 2642 2643<style> 2644 /* ââ Google Default Translator Side Floating Pill ââ */ 2645 .side-translate-pill { 2646 position: fixed; 2647 right: 12px; 2648 top: 48%; 2649 transform: translateY(-50%); 2650 z-index: 9998; 2651 display: inline-flex; 2652 align-items: center; 2653 gap: 8px; 2654 background: #ffffff; 2655 color: #000000 !important; 2656 border: 1px solid #dadce0; 2657 border-radius: 50px; 2658 padding: 9px 18px 9px 12px; 2659 box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12), 0 1px 4px rgba(0, 0, 0, 0.08); 2660 cursor: grab; 2661 touch-action: none; 2662 font-family: 'Google Sans', 'Noto Sans', Roboto, -apple-system, BlinkMacSystemFont, Arial, sans-serif; 2663 font-size: 0.92rem; 2664 font-weight: 600; 2665 line-height: 1; 2666 text-decoration: none !important; 2667 outline: none; 2668 user-select: none; 2669 transition: box-shadow 0.2s ease, background-color 0.2s ease; 2670 } 2671 2672 .side-translate-pill.is-dragging { 2673 cursor: grabbing; 2674 transition: none !important; 2675 box-shadow: 0 8px 28px rgba(0, 0, 0, 0.22), 0 2px 8px rgba(0, 0, 0, 0.14); 2676 } 2677 2678 .side-translate-pill.is-positioned { 2679 top: auto; 2680 right: auto; 2681 transform: none; 2682 } 2683 2684 .side-translate-pill:hover, 2685 .side-translate-pill:focus-visible { 2686 background: #f8f9fa; 2687 color: #000000 !important; 2688 border-color: #c4c7c5; 2689 box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18), 0 2px 6px rgba(0, 0, 0, 0.1); 2690 } 2691 2692 .side-translate-pill:not(.is-positioned):hover, 2693 .side-translate-pill:not(.is-positioned):focus-visible { 2694 transform: translateY(-50%) translateX(-3px); 2695 } 2696 2697 .side-translate-pill:active { 2698 background: #f1f3f4; 2699 } 2700 2701 .side-translate-pill:not(.is-positioned):active { 2702 transform: translateY(-50%) translateX(-1px); 2703 } 2704 2705 /* Google 4-color dots */ 2706 .g-dots { 2707 display: inline-flex; 2708 align-items: center; 2709 gap: 3px; 2710 flex-shrink: 0; 2711 margin-right: 2px; 2712 } 2713 .g-dot { 2714 border-radius: 50%; 2715 display: inline-block; 2716 } 2717 .g-dot.g-blue { width: 8px; height: 8px; background-color: #4285f4; } 2718 .g-dot.g-red { width: 7px; height: 7px; background-color: #ea4335; } 2719 .g-dot.g-yellow { width: 7px; height: 7px; background-color: #fbbc05; } 2720 .g-dot.g-green { width: 5px; height: 5px; background-color: #34a853; } 2721 2722 /* Google Translate æA icon */ 2723 .gt-icon { 2724 display: inline-flex; 2725 align-items: baseline; 2726 flex-shrink: 0; 2727 line-height: 1; 2728 font-family: Arial, sans-serif; 2729 } 2730 .gt-wen { 2731 color: #34a853; 2732 font-weight: 700; 2733 font-size: 1.05rem; 2734 line-height: 1; 2735 margin-right: -1px; 2736 } 2737 .gt-letter-a { 2738 color: #4285f4; 2739 font-weight: 800; 2740 font-size: 1.05rem; 2741 line-height: 1; 2742 } 2743 2744 /* Text */ 2745 .side-translate-text { 2746 color: #000000 !important; 2747 font-weight: 600; 2748 letter-spacing: 0.1px; 2749 white-space: nowrap; 2750 } 2751 2752 /* Active Hindi state */ 2753 .side-translate-pill.is-hindi { 2754 border-color: #dadce0; 2755 box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14); 2756 } 2757 .side-translate-pill.is-hindi .side-translate-text { 2758 color: #000000 !important; 2759 } 2760 2761 /* ââ Google Translate Top Banner & Fixed Header Alignment ââ */ 2762 :root { 2763 --gt-banner-height: 0px; 2764 } 2765 2766 /* Shift fixed navbar down when Hindi translation / Google Translate is active */ 2767 html.translated-ltr { 2768 --gt-banner-height: 40px; 2769 } 2770 2771 html.translated-ltr .navbar.fixed-top, 2772 html.translated-ltr .header.fixed-top, 2773 html.translated-ltr nav.fixed-top, 2774 html.translated-ltr .fixed-top { 2775 top: var(--gt-banner-height, 40px) !important; 2776 } 2777
2778 /* Keep tooltips and text highlights clean without interfering with body or iframe layout */ 2779 #goog-gt-tt, 2780 .goog-te-balloon-frame { 2781 display: none !important; 2782 } 2783 .goog-text-highlight { 2784 background: none !important; 2785 box-shadow: none !important; 2786 } 2787 2788 /* Responsive adjustments */ 2789 @media (max-width: 767.98px) { 2790 .side-translate-pill { 2791 right: 8px; 2792 top: 40%; 2793 padding: 7px 13px 7px 9px; 2794 gap: 6px; 2795 font-size: 0.8rem; 2796 max-width: calc(100vw - 20px); 2797 overflow: hidden; 2798 } 2799 .g-dot.g-blue { width: 7px; height: 7px; } 2800 .g-dot.g-red { width: 6px; height: 6px; } 2801 .g-dot.g-yellow { width: 6px; height: 6px; } 2802 .g-dot.g-green { width: 4px; height: 4px; } 2803 .gt-wen, .gt-letter-a { font-size: 0.9rem; } 2804 } 2805</style> 2806
2807<script type="84aaaab7731110d08d2fb4dc-text/javascript"> 2808 /* Google Translate Integration */ 2809 function googleTranslateElementInit() { 2810 if (window.google && window.google.translate) { 2811 new window.google.translate.TranslateElement({ 2812 pageLanguage: 'en', 2813 includedLanguages: 'en,hi', 2814 layout: window.google.translate.TranslateElement.InlineLayout.SIMPLE, 2815 autoDisplay: false 2816 }, 'google_translate_element'); 2817 } 2818 } 2819 2820 (function () { 2821 // Load Google Translate API asynchronously 2822 var gtScript = document.createElement('script'); 2823 gtScript.type = 'text/javascript'; 2824 gtScript.async = true; 2825 gtScript.src = 'https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'; 2826 document.head.appendChild(gtScript); 2827 2828 function getCookie(name) { 2829 var value = '; ' + document.cookie; 2830 var parts = value.split('; ' + name + '='); 2831 if (parts.length === 2) return parts.pop().split(';').shift(); 2832 return ''; 2833 } 2834 2835 function setGoogtransCookie(lang) { 2836 var cookieVal = '/en/' + lang; 2837 var domain = window.location.hostname; 2838 document.cookie = 'googtrans=' + cookieVal + '; path=/;'; 2839 document.cookie = 'googtrans=' + cookieVal + '; path=/; domain=' + domain + ';'; 2840 2841 var hostParts = domain.split('.'); 2842 if (hostParts.length > 1 && !domain.match(/^\d{1,3}(\.\d{1,3}){3}$/)) { 2843 var rootDomain = '.' + hostParts.slice(-2).join('.'); 2844 document.cookie = 'googtrans=' + cookieVal + '; path=/; domain=' + rootDomain + ';'; 2845 } 2846 } 2847 2848 function isCurrentlyHindi() { 2849 var cookie = getCookie('googtrans'); 2850 if (cookie.indexOf('/hi') !== -1) return true; 2851 return document.documentElement.classList.contains('translated-ltr'); 2852 } 2853 2854 function updateButtonUI(isHindi) { 2855 var btn = document.getElementById('sideTranslateBtn'); 2856 var textEl = document.getElementById('sideTranslateText'); 2857 if (!btn || !textEl) return; 2858 2859 if (isHindi) { 2860 btn.classList.add('is-hindi'); 2861 textEl.textContent = 'See in English'; 2862 btn.setAttribute('title', 'See in English'); 2863 btn.setAttribute('aria-label', 'Switch page back to English'); 2864 } else { 2865 btn.classList.remove('is-hindi'); 2866 textEl.textContent = 'हिà¤à¤¦à¥ मà¥à¤ दà¥à¤à¥à¤'; 2867 btn.setAttribute('title', 'हिà¤à¤¦à¥ मà¥à¤ दà¥à¤à¥à¤ / View in Hindi'); 2868 btn.setAttribute('aria-label', 'Translate page to Hindi'); 2869 } 2870 } 2871 2872 function applyLanguage(targetLang) { 2873 setGoogtransCookie(targetLang); 2874 2875 var combo = document.querySelector('.goog-te-combo'); 2876 if (combo) { 2877 combo.value = targetLang; 2878 combo.dispatchEvent(new Event('change')); 2879 updateButtonUI(targetLang === 'hi'); 2880 } else { 2881 window.location.reload(); 2882 } 2883 } 2884 2885 window.toggleSiteLanguage = function () { 2886 var toHindi = !isCurrentlyHindi(); 2887 applyLanguage(toHindi ? 'hi' : 'en'); 2888 }; 2889 2890 // Check URL params (?tradition=hindi or ?lang=hi) 2891 var urlParams = new URLSearchParams(window.location.search); 2892 var requestedHindi = urlParams.get('tradition') === 'hindi' || urlParams.get('lang') === 'hi'; 2893 2894 if (requestedHindi && !isCurrentlyHindi()) { 2895 setGoogtransCookie('hi'); 2896 } 2897 2898 function updateBannerOffset() { 2899 var isTranslated = document.documentElement.classList.contains('translated-ltr') || isCurrentlyHindi(); 2900 var bodyTop = parseInt(document.body ? document.body.style.top : 0, 10); 2901 2902 if (!isNaN(bodyTop) && bodyTop > 0) { 2903 document.documentElement.style.setProperty('--gt-banner-height', bodyTop + 'px'); 2904 } else if (bodyTop === 0 && !isCurrentlyHindi()) { 2905 document.documentElement.style.setProperty('--gt-banner-height', '0px'); 2906 } else if (isTranslated) { 2907 document.documentElement.style.setProperty('--gt-banner-height', '40px'); 2908 } else { 2909 document.documentElement.style.setProperty('--gt-banner-height', '0px'); 2910 } 2911 } 2912 2913 // Initialize button label and header offset once DOM is ready 2914 document.addEventListener('DOMContentLoaded', function () { 2915 var inHindi = isCurrentlyHindi(); 2916 updateButtonUI(inHindi); 2917 updateBannerOffset(); 2918 2919 // Observe changes to <html> class and <body> style to keep header perfectly aligned 2920 if (window.MutationObserver) { 2921 var observer = new MutationObserver(function () { 2922 updateButtonUI(isCurrentlyHindi()); 2923 updateBannerOffset(); 2924 }); 2925 2926 observer.observe(document.documentElement, { 2927 attributes: true, 2928 attributeFilter: ['class'] 2929 }); 2930 2931 if (document.body) { 2932 observer.observe(document.body, { 2933 attributes: true, 2934 attributeFilter: ['style'] 2935 }); 2936 } 2937 } 2938 2939 var checkCount = 0; 2940 var pollInterval = setInterval(function () { 2941 checkCount++; 2942 updateButtonUI(isCurrentlyHindi()); 2943 updateBannerOffset(); 2944 if (checkCount > 20) clearInterval(pollInterval); 2945 }, 500); 2946 }); 2947 })(); 2948 2949 // ââ Draggable positioning â persisted per-browser via localStorage so it stays put across every page on the site. 2950 (function () { 2951 var POSITION_KEY = 'sideTranslatePillPos'; 2952 var DRAG_THRESHOLD = 6; 2953 2954 document.addEventListener('DOMContentLoaded', function () { 2955 var btn = document.getElementById('sideTranslateBtn'); 2956 var gtEl = document.getElementById('google_translate_element'); 2957 if (!btn) return; 2958 2959 if (btn.parentElement !== document.body) { 2960 document.body.appendChild(btn); 2961 } 2962 if (gtEl && gtEl.parentElement !== document.body) { 2963 document.body.appendChild(gtEl); 2964 } 2965 2966 var dragging = false;
2967 var moved = false; 2968 var pointerId = null; 2969 var grabDX = 0; 2970 var grabDY = 0; 2971 var btnWidth = 0; 2972 var btnHeight = 0; 2973 var pendingLeft = null; 2974 var pendingTop = null; 2975 var rafId = null; 2976 2977 function clamp(value, min, max) { 2978 return Math.max(min, Math.min(max, value)); 2979 } 2980 2981 function viewportWidth() { 2982 return document.documentElement.clientWidth; 2983 } 2984 2985 function viewportHeight() { 2986 return document.documentElement.clientHeight; 2987 } 2988 2989 function applyPosition(left, top) { 2990 var w = btnWidth || btn.offsetWidth; 2991 var h = btnHeight || btn.offsetHeight; 2992 left = clamp(left, 0, Math.max(0, viewportWidth() - w)); 2993 top = clamp(top, 0, Math.max(0, viewportHeight() - h)); 2994 btn.style.left = left + 'px'; 2995 btn.style.top = top + 'px'; 2996 btn.classList.add('is-positioned'); 2997 return { left: left, top: top }; 2998 } 2999 3000 function flushPosition() { 3001 rafId = null; 3002 if (pendingLeft === null) return; 3003 applyPosition(pendingLeft, pendingTop); 3004 } 3005 3006 function schedulePosition(left, top) { 3007 pendingLeft = left; 3008 pendingTop = top; 3009 if (rafId === null) { 3010 rafId = requestAnimationFrame(flushPosition); 3011 } 3012 } 3013 3014 function savePosition(left, top) { 3015 try { 3016 localStorage.setItem(POSITION_KEY, JSON.stringify({ left: left, top: top })); 3017 } catch (e) { /* private-mode localStorage â non-fatal */ } 3018 } 3019 3020 function restorePosition() { 3021 var saved; 3022 try { 3023 saved = JSON.parse(localStorage.getItem(POSITION_KEY)); 3024 } catch (e) { 3025 saved = null; 3026 } 3027 if (saved && typeof saved.left === 'number' && typeof saved.top === 'number') { 3028 applyPosition(saved.left, saved.top); 3029 } 3030 } 3031 3032 function pointFromEvent(e) { 3033 if (e.touches && e.touches.length) return e.touches[0]; 3034 if (e.changedTouches && e.changedTouches.length) return e.changedTouches[0]; 3035 return e; 3036 } 3037 3038 function startDrag(e) { 3039 if (e.button !== undefined && e.button !== 0) return; 3040 var point = pointFromEvent(e); 3041 dragging = true; 3042 moved = false; 3043 pointerId = e.pointerId; 3044 var rect = btn.getBoundingClientRect(); 3045 btnWidth = rect.width; 3046 btnHeight = rect.height; 3047 grabDX = point.clientX - rect.left; 3048 grabDY = point.clientY - rect.top; 3049 btn.classList.add('is-dragging'); 3050 if (btn.setPointerCapture && pointerId !== undefined) { 3051 btn.setPointerCapture(pointerId); 3052 } 3053 if (e.cancelable) e.preventDefault(); 3054 } 3055 3056 function onDrag(e) { 3057 if (!dragging) return; 3058 if (e.cancelable) e.preventDefault(); 3059 var point = pointFromEvent(e); 3060 var targetLeft = point.clientX - grabDX; 3061 var targetTop = point.clientY - grabDY; 3062 if (!moved) { 3063 var startLeft = parseFloat(btn.style.left || btn.getBoundingClientRect().left); 3064 var startTop = parseFloat(btn.style.top || btn.getBoundingClientRect().top); 3065 if (Math.abs(targetLeft - startLeft) > DRAG_THRESHOLD || Math.abs(targetTop - startTop) > DRAG_THRESHOLD) { 3066 moved = true; 3067 } 3068 if (!moved) return; 3069 } 3070 schedulePosition(targetLeft, targetTop); 3071 } 3072 3073 function endDrag(e) { 3074 if (!dragging) return; 3075 dragging = false;
3076 btn.classList.remove('is-dragging'); 3077 if (btn.releasePointerCapture && pointerId !== undefined) { 3078 try { btn.releasePointerCapture(pointerId); } catch (err) { /* already released */ } 3079 } 3080 if (rafId !== null) { 3081 cancelAnimationFrame(rafId); 3082 flushPosition(); 3083 } 3084 if (moved) { 3085 var rect = btn.getBoundingClientRect(); 3086 savePosition(rect.left, rect.top); 3087 } 3088 } 3089 3090 if (window.PointerEvent) { 3091 btn.addEventListener('pointerdown', startDrag); 3092 btn.addEventListener('pointermove', onDrag); 3093 btn.addEventListener('pointerup', endDrag); 3094 btn.addEventListener('pointercancel', endDrag); 3095 } else { 3096 btn.addEventListener('touchstart', startDrag, { passive: false }); 3097 btn.addEventListener('touchmove', onDrag, { passive: false }); 3098 btn.addEventListener('touchend', endDrag); 3099 btn.addEventListener('touchcancel', endDrag); 3100 btn.addEventListener('mousedown', startDrag); 3101 document.addEventListener('mousemove', onDrag); 3102 document.addEventListener('mouseup', endDrag); 3103 } 3104 3105 btn.addEventListener('click', function (e) { 3106 if (moved) { 3107 e.preventDefault(); 3108 e.stopPropagation(); 3109 moved = false; 3110 return; 3111 } 3112 if (typeof window.toggleSiteLanguage === 'function') { 3113 window.toggleSiteLanguage(); 3114 } 3115 }); 3116 3117 function reclamp() { 3118 if (!btn.classList.contains('is-positioned')) return; 3119 var rect = btn.getBoundingClientRect(); 3120 var placed = applyPosition(rect.left, rect.top); 3121 savePosition(placed.left, placed.top); 3122 } 3123 3124 window.addEventListener('resize', reclamp); 3125 window.addEventListener('orientationchange', reclamp); 3126 3127 restorePosition(); 3128 }); 3129 })(); 3130</script>
vendor: 145 bytes, lines 3130-3132
3130 3131 3132<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="84aaaab7731110d08d2fb4dc-|49" defer></script>
3132<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"9bc850c643c6436bb2009eafc2df557f","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 3132
3132
3133<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a43c42d3b8c0c6c7',t:'MTc5MDg2NjAzMA=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
3133</body> 3134</html> 3135 3136
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.