1 2 3 4<!DOCTYPE html> 5<html lang="en" class="dark" data-theme="dark" style="background-color: #06050c; color: #f8fafc; color-scheme: dark;"> 6 7<head> 8 <!-- CRITICAL: Instant Zero-Paint-Flicker Canvas Styles (Evaluated on Byte 1) --> 9 <style> 10 html, html.dark, body.dark { 11 background-color: #080711 !important; 12 background-image: 13 radial-gradient(circle at 50% 0%, rgba(147, 51, 234, 0.14) 0%, transparent 45%), 14 radial-gradient(circle at 10% 25%, rgba(56, 189, 248, 0.08) 0%, transparent 40%), 15 radial-gradient(circle at 90% 45%, rgba(147, 51, 234, 0.09) 0%, transparent 45%), 16 radial-gradient(circle at 15% 65%, rgba(56, 189, 248, 0.07) 0%, transparent 40%), 17 radial-gradient(circle at 85% 85%, rgba(147, 51, 234, 0.08) 0%, transparent 45%) !important; 18 background-attachment: fixed !important; 19 background-size: cover !important; 20 color: #f8fafc !important; 21 min-height: 100vh; 22 } 23 html:not(.dark), html[data-theme="light"], body:not(.dark) { 24 background-color: #f6f8fc !important; 25 background-image: 26 radial-gradient(ellipse 70% 50% at 50% 0%, rgba(147, 51, 234, 0.08) 0%, transparent 60%), 27 radial-gradient(ellipse 60% 40% at 90% 35%, rgba(56, 189, 248, 0.07) 0%, transparent 50%), 28 radial-gradient(ellipse 60% 40% at 10% 65%, rgba(16, 185, 129, 0.06) 0%, transparent 50%), 29 radial-gradient(ellipse 70% 50% at 50% 100%, rgba(147, 51, 234, 0.06) 0%, transparent 60%) !important; 30 background-attachment: fixed !important; 31 background-size: cover !important; 32 color: #0f172a !important; 33 min-height: 100vh; 34 } 35 </style> 36 37 <!-- Immediate Zero-Flicker Theme Engine --> 38
38<script> 39 (function() { 40 try { 41 var urlParams = new URLSearchParams(window.location.search); 42 var urlTheme = urlParams.get('theme'); 43 var savedTheme = urlTheme || localStorage.getItem('theme'); 44 var isLight = (savedTheme === 'light'); 45 if (isLight) { 46 document.documentElement.classList.remove('dark'); 47 document.documentElement.setAttribute('data-theme', 'light'); 48 document.documentElement.style.backgroundColor = '#f8faff'; 49 document.documentElement.style.color = '#0f172a'; 50 document.documentElement.style.colorScheme = 'light'; 51 } else { 52 document.documentElement.classList.add('dark'); 53 document.documentElement.setAttribute('data-theme', 'dark'); 54 document.documentElement.style.backgroundColor = '#06050c'; 55 document.documentElement.style.color = '#f8fafc'; 56 document.documentElement.style.colorScheme = 'dark'; 57 if (!savedTheme && !urlTheme) localStorage.setItem('theme', 'dark'); 58 } 59 } catch(e) {} 60 })(); 61 </script>
61 62 63 <meta charset="UTF-8" /> 64 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 65 <base href="https://www.gymsmart.in/"> 66 67 <!-- ===== Primary SEO Meta ===== --> 68 <title>About GymSmart | The Complete Operating System & Gym ERP for Fitness Businesses</title> 69 <meta name="description" content="Discover the story of GymSmart by Bizz1 Technologies. Engineered in Surat, Gujarat, empowering 500+ Indian gyms with automated WhatsApp UPI billing, biometric turnstiles (eSSL, TimeWatch, Realtime) & 3 native mobile apps."> 70 <meta name="keywords" content="about gymsmart, gymsmart bizz1 technologies surat, gymsmart bizz1 technologies, gym management software company india, fitness club erp company, gym turnstile software developers, gym software company surat gujarat, best gym erp developers india"> 71 <meta name="robots" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"> 72 <meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"> 73 <meta name="theme-color" content="#b55dcd"> 74 <meta name="author" content="GymSmart"> 75 <meta name="referrer" content="strict-origin-when-cross-origin"> 76 <link rel="canonical" href="https://www.gymsmart.in/about-us"> 77 <link rel="sitemap" type="application/xml" title="Sitemap" href="https://gymsmart.in/sitemap.xml"> 78 <link rel="alternate" type="text/markdown" href="https://www.gymsmart.in/gymsmart-product-facts.md" title="GymSmart Canonical Product Facts"> 79 80 81 <!-- ===== Open Graph (Facebook / WhatsApp / LinkedIn) ===== --> 82 <meta property="og:title" content="About GymSmart | The Complete Operating System & Gym ERP for Fitness Businesses"> 83 <meta property="og:description" content="Discover the story of GymSmart by Bizz1 Technologies. Engineered in Surat, Gujarat, empowering 500+ Indian gyms with automated WhatsApp UPI billing, biometric turnstiles (eSSL, TimeWatch, Realtime) & 3 native mobile apps."> 84 <meta property="og:url" content="https://www.gymsmart.in/about-us"> 85 <meta property="og:type" content="website"> 86 <meta property="og:site_name" content="GymSmart"> 87 <meta property="og:image" content="https://www.gymsmart.in/images/gym-logo1.png"> 88 <meta property="og:image:secure_url" content="https://www.gymsmart.in/images/gym-logo1.png"> 89 <meta property="og:image:type" content="image/jpeg"> 90 <meta property="og:image:alt" content="GymSmart - Best Gym Management Software & Biometric Gate ERP India"> 91 <meta property="og:image:width" content="1200"> 92 <meta property="og:image:height" content="630"> 93 <meta property="og:locale" content="en_IN"> 94 95 <!-- ===== Twitter Card ===== --> 96 <meta name="twitter:card" content="summary_large_image"> 97 <meta name="twitter:title" content="About GymSmart | The Complete Operating System & Gym ERP for Fitness Businesses"> 98 <meta name="twitter:description" content="Discover the story of GymSmart by Bizz1 Technologies. Engineered in Surat, Gujarat, empowering 500+ Indian gyms with automated WhatsApp UPI billing, biometric turnstiles (eSSL, TimeWatch, Realtime) & 3 native mobile apps."> 99 <meta name="twitter:image" content="https://www.gymsmart.in/images/gym-logo1.png"> 100 <meta name="twitter:image:alt" content="GymSmart - Best Gym Management Software & Biometric Gate ERP India"> 101 <meta name="twitter:site" content="@gymsmart_in"> 102 103 <!-- ===== Favicon & AI LLM Discovery ===== --> 104 <link rel="icon" type="image/png" sizes="56x56" href="https://www.gymsmart.in/images/fa-icon.png" /> 105 <link rel="apple-touch-icon" sizes="180x180" href="https://www.gymsmart.in/images/fa-icon.png" /> 106 <link rel="alternate" type="text/plain" href="https://www.gymsmart.in/llms.txt" title="LLMs Context Summary" /> 107 <link rel="alternate" type="text/plain" href="https://www.gymsmart.in/llms-full.txt" title="Complete LLM Knowledge Graph Documentation" /> 108 109 <!-- ===== Google SEO, AI Knowledge Graph & Schema.org JSON-LD ===== --> 110
110<script type="application/ld+json"> 111 { 112 "@context": "https://schema.org", 113 "@graph": [ 114 { 115 "@type": "Organization", 116 "@id": "https://www.gymsmart.in/#organization", 117 "name": "GymSmart", 118 "legalName": "Bizz1 Technologies", 119 "alternateName": [ 120 "GymSmart ERP", 121 "GymSmart by Bizz1 Technologies", 122 "GymSmart India" 123 ], 124 "url": "https://www.gymsmart.in", 125 "taxID": "24ACAFA9619B1ZT", 126 "telephone": "+91-83479-77566", 127 "email": "[email protected]", 128 "priceRange": "â¹â¹", 129 "image": "https://www.gymsmart.in/images/gym-logo1.png", 130 "address": { 131 "@type": "PostalAddress", 132 "streetAddress": "322, Royal Business Hub, Near DD Sport Circle, Chapprabhatta, Ganeshpura", 133 "addressLocality": "Surat", 134 "addressRegion": "Gujarat", 135 "postalCode": "394520", 136 "addressCountry": "IN" 137 }, 138 "geo": { 139 "@type": "GeoCoordinates", 140 "latitude": 21.2291, 141 "longitude": 72.8687 142 }, 143 "openingHoursSpecification": [ 144 { 145 "@type": "OpeningHoursSpecification", 146 "dayOfWeek": [ 147 "Monday", 148 "Tuesday", 149 "Wednesday", 150 "Thursday", 151 "Friday", 152 "Saturday" 153 ], 154 "opens": "09:30", 155 "closes": "18:30" 156 } 157 ], 158 "parentOrganization": { 159 "@type": "Organization", 160 "name": "Bizz1 Technologies", 161 "legalName": "Bizz1 Technologies", 162 "url": "https://www.bizz1.com", 163 "email": "[email protected]", 164 "telephone": "+91-83479-77555", 165 "taxID": "24ACAFA9619B1ZT", 166 "image": "https://www.gymsmart.in/images/gym-logo1.png" 167 }, 168 "logo": { 169 "@type": "ImageObject", 170 "url": "https://www.gymsmart.in/images/gym-logo1.png", 171 "width": 180, 172 "height": 60 173 }, 174 "description": "India's #1 Gym Management Software & Fitness Club ERP for automated memberships, biometric turnstile control, and WhatsApp billing, developed by Bizz1 Technologies.", 175 "disambiguatingDescription": "GymSmart is an enterprise fitness management ERP platform developed and operated by Bizz1 Technologies in Surat, Gujarat, India, integrating biometric turnstile gates (eSSL, TimeWatch, Realtime) and WhatsApp 0% UPI fee collection.", 176 "knowsAbout": [ 177 "Gym Management Software", 178 "Fitness Club ERP", 179 "Biometric Access Control", 180 "Turnstile Gate Lock Automation", 181 "eSSL Biometrics MB160 K90 SilkBio", 182 "WhatsApp Cloud Billing Automation", 183 "Personal Trainer Commission Tracking", 184 "Gym Membership Retention", 185 "DPDP 2023 Data Privacy" 186 ], 187 "sameAs": [ 188 "https://www.facebook.com/gymsmarterp/", 189 "https://www.instagram.com/gymsmarterp/", 190 "https://www.youtube.com/@gymsmart-erp", 191 "https://www.linkedin.com/company/gym-smart/", 192 "https://twitter.com/gymsmarterp", 193 "https://x.com/gymsmarterp", 194 "https://www.softwaresuggest.com/gymsmart", 195 "https://www.capterra.com/p/10184968/GymSmart/", 196 "https://www.g2.com/products/gymsmart/", 197 "https://apps.apple.com/in/app/gymsmart-pro/id6740852378", 198 "https://play.google.com/store/apps/details?id=com.ajasys.gymsmart", 199 "https://www.wikidata.org/wiki/Q1076418", 200 "https://www.wikidata.org/wiki/Q180574", 201 "https://www.wikidata.org/wiki/Q131238", 202 "https://en.wikipedia.org/wiki/Fitness_centre", 203 "https://en.wikipedia.org/wiki/Turnstile" 204 ], 205 "contactPoint": [ 206 { 207 "@type": "ContactPoint", 208 "telephone": "+91-83479-77566", 209 "contactType": "sales", 210 "areaServed": "IN", 211 "availableLanguage": [ 212 "English", 213 "Hindi", 214 "Gujarati" 215 ] 216 }, 217 { 218 "@type": "ContactPoint", 219 "telephone": "+91-83479-77555", 220 "contactType": "technical support", 221 "areaServed": "IN", 222 "availableLanguage": [ 223 "English", 224 "Hindi", 225 "Gujarati" 226 ] 227 } 228 ] 229 }, 230 { 231 "@type": "SoftwareApplication", 232 "@id": "https://www.gymsmart.in/#software", 233 "name": "GymSmart Gym Management Software & ERP", 234 "applicationCategory": "BusinessApplication", 235 "applicationSubCategory": "Gym Management ERP, Fitness Club Software, Turnstile Access Control", 236 "operatingSystem": "Web, Android, iOS, Windows", 237 "description": "All-in-one gym management software for membership management, automated biometric turnstile entry denial, WhatsApp Cloud billing, trainer PT commissions, and multi-branch operations.", 238 "offers": { 239 "@type": "AggregateOffer", 240 "priceCurrency": "INR", 241 "lowPrice": "9999", 242 "highPrice": "39999", 243 "offerCount": "3", 244 "url": "https://www.gymsmart.in/pricing" 245 }, 246 "publisher": { 247 "@id": "https://www.gymsmart.in/#organization" 248 }, 249 "aggregateRating": { 250 "@type": "AggregateRating", 251 "ratingValue": "4.9", 252 "reviewCount": "500", 253 "bestRating": "5", 254 "worstRating": "1" 255 }, 256 "featureList": [ 257 "Automated Biometric Turnstile Integration (eSSL, TimeWatch, Realtime)", 258 "Instant 0.3s Gate Lockout for Expired Plans & Overdue Dues", 259 "Official Meta WhatsApp Cloud Billing & 0% Fee UPI QR Payment Links", 260 "Personal Trainer (PT) Commission, Slabs & Biometric Payroll Automation", 261 "3 Dedicated Native Mobile Apps for Owners, Trainers, and Gym Members", 262 "DPDP 2023 Compliant Staff Phone Number Masking to Prevent Client Poaching", 263 "100% Free Assisted Data Migration from Excel or Old Software in 2 Hours",
264 "Multi-Branch Central Roaming Access & Consolidated P&L Balance Sheet", 265 "Diet & Nutrition Macro Meal Planner with 500+ Exercise Animations" 266 ], 267 "screenshot": "https://www.gymsmart.in/images/product-screenshot/gymerpdashboard.webp", 268 "downloadUrl": "https://play.google.com/store/apps/details?id=com.ajasys.gymsmart", 269 "installUrl": "https://apps.apple.com/in/app/gymsmart-pro/id6740852378" 270 }, 271 { 272 "@type": "WebSite", 273 "@id": "https://www.gymsmart.in/#website", 274 "url": "https://www.gymsmart.in", 275 "name": "GymSmart", 276 "publisher": { 277 "@id": "https://www.gymsmart.in/#organization" 278 }, 279 "potentialAction": { 280 "@type": "SearchAction", 281 "target": "https://www.gymsmart.in/blog?s={search_term_string}", 282 "query-input": "required name=search_term_string" 283 } 284 }, 285 { 286 "@type": "WebPage", 287 "@id": "https://www.gymsmart.in/about-us#webpage", 288 "url": "https://www.gymsmart.in/about-us", 289 "name": "About GymSmart | The Complete Operating System & Gym ERP for Fitness Businesses", 290 "description": "Discover the story of GymSmart by Bizz1 Technologies. Engineered in Surat, Gujarat, empowering 500+ Indian gyms with automated WhatsApp UPI billing, biometric turnstiles (eSSL, TimeWatch, Realtime) & 3 native mobile apps.", 291 "isPartOf": { 292 "@id": "https://www.gymsmart.in/#website" 293 }, 294 "breadcrumb": { 295 "@id": "https://www.gymsmart.in/about-us#breadcrumb" 296 } 297 }, 298 { 299 "@type": "BreadcrumbList", 300 "@id": "https://www.gymsmart.in/about-us#breadcrumb", 301 "itemListElement": [ 302 { 303 "@type": "ListItem", 304 "position": 1, 305 "name": "Home", 306 "item": "https://www.gymsmart.in/" 307 }, 308 { 309 "@type": "ListItem", 310 "position": 2, 311 "name": "About GymSmart", 312 "item": "https://www.gymsmart.in/about-us" 313 } 314 ] 315 } 316 ] 317} </script>
317 318 319 <!-- ===== Preload Critical LCP Hero Image (Homepage Only) ===== --> 320 321 <!-- ===== Preconnect for performance ===== --> 322 <link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin> 323 <link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin> 324 <link rel="preconnect" href="https://fonts.googleapis.com" crossorigin> 325 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 326 <link rel="dns-prefetch" href="https://www.googletagmanager.com"> 327 <link rel="dns-prefetch" href="https://connect.facebook.net"> 328 <link rel="dns-prefetch" href="https://unpkg.com"> 329 330 <!-- ===== Google Fonts with font-display: swap ===== --> 331 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Montserrat:wght@600;700;800&display=swap"> 332 333 <!-- ===== Bootstrap 5.3.2 (single version) ===== --> 334 <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"> 335 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.css" media="print" onload="this.media='all'"> 336 <noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.min.css"></noscript> 337 338 <!-- ===== Font Awesome ===== --> 339 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.0/css/all.min.css" media="print" onload="this.media='all'"> 340 <noscript><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.0/css/all.min.css"></noscript> 341 342 <!-- ===== Slick Slider CSS ===== --> 343 <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/[email protected]/slick/slick.css" media="print" onload="this.media='all'" /> 344 <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/[email protected]/slick/slick-theme.css" media="print" onload="this.media='all'" /> 345 <noscript> 346 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/slick/slick.css"> 347 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/slick/slick-theme.css"> 348 </noscript> 349 350 <!-- ===== AOS Animation CSS ===== --> 351 <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/aos.css" media="print" onload="this.media='all'" /> 352 <noscript><link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/aos.css"></noscript> 353 354 <!-- ===== Material Icons (font-display: swap) ===== --> 355 <link href="https://fonts.googleapis.com/icon?family=Material+Icons&display=swap" rel="stylesheet" media="print" onload="this.media='all'"> 356 <noscript><link href="https://fonts.googleapis.com/icon?family=Material+Icons&display=swap" rel="stylesheet"></noscript> 357 358 <!-- ===== Flatpickr CSS ===== --> 359 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css" media="print" onload="this.media='all'"> 360 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/themes/dark.css" media="print" onload="this.media='all'"> 361 <noscript> 362 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css"> 363 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/themes/dark.css"> 364 </noscript> 365 366 <!-- ===== Site CSS ===== --> 367 <link rel="stylesheet" href="css/style.css" /> 368 <link rel="stylesheet" href="css/iziToast.min.css" media="print" onload="this.media='all'" /> 369 <link rel="stylesheet" href="css/bot-theme.css" media="print" onload="this.media='all'" /> 370 371 <!-- ===== Tracking Scripts (Active on Live Domains) ===== --> 372 <!-- Google Tag Manager --> 373
373<script>
vendor: 359 bytes, lines 373-377
373 374 (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'}); 375 var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:''; 376 j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl; 377 f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','
377GTM-5BFHNBNT
vendor: 8 bytes, lines 377-378
377'); 378
378</script>
378 379 380 <!-- Google Analytics -->
vendor: 68 bytes, lines 380-381
380 381 <script async src="https://www.googletagmanager.com/gtag/js?id=
381G-598YBWL22W
vendor: 16 bytes, lines 381-382
381"></script> 382
382<script> 383
vendor: 151 bytes, lines 383-386
383window.dataLayer = window.dataLayer || []; 384 function gtag(){dataLayer.push(arguments);} 385 gtag('js', new Date()); 386 gtag('config', '
386G-598YBWL22W
vendor: 8 bytes, lines 386-387
386'); 387
387</script>
387 388 389 <!-- Facebook Pixel --> 390
390<script> 391 !function(f,b,e,v,n,t,s){ 392 if(f.fbq) return; 393 n=f.fbq=function(){ 394 n.callMethod ? 395 n.callMethod.apply(n,arguments) : 396 n.queue.push(arguments) 397 }; 398 if(!f._fbq) f._fbq=n; 399 n.push=n; 400 n.loaded=!0; 401 n.version='2.0'; 402 n.queue=[]; 403 t=b.createElement(e); 404 t.async=!0; 405 t.src=v; 406 s=b.getElementsByTagName(e)[0]; 407 s.parentNode.insertBefore(t,s); 408 }(window,document,'script','https://connect.facebook.net/en_US/fbevents.js'); 409 410 fbq('init', '1970254140036351'); 411 fbq('track', 'PageView'); 412 fbq('trackCustom', 'Gs_Visitor'); 413 </script>
413 414 <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1970254140036351&ev=Gs_Visitor&noscript=1" /></noscript> 415 416 <!-- DNS Preconnects for instant asset delivery --> 417 <link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin> 418 <link rel="dns-prefetch" href="https://erp.gymsmart.in"> 419</head> 420 421<style> 422 .bg-success { 423 background: var(--primary) !important; 424 border-color: var(--primary) !important; 425 } 426 427 .robot_div .bg-success { 428 background: var(--primary) !important; 429 } 430 431 .border-success { 432 border-color: var(--primary) !important; 433 } 434 435 .robot_div { 436 border: 1px solid var(--primary) !important; 437 } 438 439 button.robot_btn.btn-success { 440 background: var(--primary) !important; 441 border-color: var(--primary) !important; 442 } 443 444 .launcher-label-main-div.bg-success { 445 background: var(--primary); 446 border-color: var(--primary) !important; 447 } 448 449 450 .hellow1.robot_div .bg-success { 451 background: var(--primary); 452 } 453 454 455 .hellow1.robot_div { 456 border-color: var(--primary) !important; 457 458 } 459 460 461 .hellow1.robot_div .border-top { 462 border-top-color: var(--primary) !important; 463 } 464 465 .bot_message_send_box .sendMessageBtn { 466 color: var(--primary) !important; 467 } 468</style> 469 470<style> 471 *, *::before, *::after { 472 margin: 0; 473 padding: 0; 474 box-sizing: border-box; 475 } 476 477 body, button, input, select, textarea { 478 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 479 } 480 481 482 483 :root { 484 485 /* --bg: linear-gradient(120deg, #f5f5f5, #eae6ff); */ 486 487 --bg: #eae6ff; 488 489 --text: #0f172a; 490 491 --text-light: #334155; 492 493 --glass: rgba(255, 255, 255, 0.6); 494 495 --card: #ffffff; 496 497 --primary: #9333ea; 498 499 --secondary: #6b21a8; 500 501 --primary-gradient: linear-gradient(90deg, #9333ea, #6b21a8); 502 503 --secondary-gradient: linear-gradient(135deg, #7c3aed, #ec4899); 504 505 --blob-opacity: 0.1 ; 506 507 --btn-primary-bg: linear-gradient(90deg, #9333ea, #6b21a8); 508 509 --btn-primary-text: #ffffff; 510 511 --btn-secondary-bg: #ffffff; 512 513 --btn-secondary-text: #0f172a; 514 515 --btn-secondary-border: #cbd5e1; 516 517 --btn-hover-opacity: 0.9; 518 519 --shadow-glass: rgba(0, 0, 0, 0.1); 520 521 --border: #cbd5e1; 522 523 --input-bg: #ffffff; 524 --error: #dc2626; 525 526 } 527 528 529 530 body.dark { 531 --bg: linear-gradient(90deg, rgba(15, 15, 15, 1) 0%, rgba(26, 26, 46, 1) 50%, rgba(15, 15, 15, 1) 100%); 532 --error: #ef4444; 533 --text: #ffffff; 534 --text-light: #cbd5e1; 535 --glass: rgba(20, 20, 20, 0.6); 536 --card: rgba(255, 255, 255, 0.05); 537 --primary: #c084fc; 538 --secondary: #8b5cf6; 539 --primary-gradient: linear-gradient(90deg, #c084fc, #8b5cf6); 540 --btn-primary-bg: linear-gradient(90deg, #c084fc, #8b5cf6); 541 --btn-primary-text: #ffffff; 542 --btn-secondary-bg: rgba(255, 255, 255, 0.05); 543 --btn-secondary-text: #ffffff; 544 --btn-secondary-border: rgba(255, 255, 255, 0.2); 545 --btn-hover-opacity: 0.85; 546 --shadow-glass: rgba(0, 0, 0, 0.5); 547 --border: #334155; 548 --input-bg: rgba(255, 255, 255, 0.05); 549 } 550 551 .subtitle { 552 color: var(--text-light); 553 } 554 555 body { 556 background: var(--bg); 557 color: var(--text); 558 transition: 0.3s; 559 } 560 561 /* ===== NAVBAR ===== */ 562 #navbar { 563 position: fixed; 564 top: 12px; 565 left: 0; 566 width: 100%; 567 z-index: 1000; 568 display: flex; 569 justify-content: center; 570 padding: 0 20px; 571 box-sizing: border-box; 572 } 573 574 .nav-container { 575 width: 100%; 576 max-width: 1240px; 577 display: flex; 578 align-items: center; 579 justify-content: space-between; 580 gap: 18px; 581 padding: 10px 42px; 582 border-radius: 60px; 583 transition: all 0.3s ease; 584 background: transparent; 585 box-sizing: border-box; 586 } 587
588 #navbar.scrolled .nav-container { 589 background: var(--glass); 590 backdrop-filter: blur(16px); 591 -webkit-backdrop-filter: blur(16px); 592 border: 1px solid rgba(192, 132, 252, 0.2); 593 box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); 594 } 595 596 /* ===== LOGO ===== */ 597 .main-logo { 598 flex-shrink: 0; 599 display: flex; 600 align-items: center; 601 margin-left: 8px; 602 } 603 604 .btn-cls { 605 margin-right: 8px; 606 } 607 608 .main-logo img { 609 height: clamp(46px, 4.5vw, 54px); 610 width: auto; 611 max-width: 180px; 612 display: block; 613 object-fit: contain; 614 opacity: 1; 615 } 616 617 /* ===== CENTER LINKS ===== */ 618 .nav-links { 619 display: flex; 620 align-items: center; 621 justify-content: center; 622 gap: clamp(14px, 2vw, 28px); 623 list-style: none; 624 margin: 0; 625 padding: 0; 626 flex: 1; 627 min-width: 0; 628 } 629 630 .nav-links li { 631 list-style: none; 632 } 633 634 .nav-links li a { 635 text-decoration: none; 636 color: var(--text); 637 font-size: clamp(13px, 1vw, 15px); 638 font-weight: 600; 639 opacity: 0.85; 640 white-space: nowrap; 641 transition: 0.25s ease; 642 } 643 644 .nav-links li a:hover { 645 opacity: 1; 646 color: var(--btn-primary-bg); 647 } 648 649 .nav-links li a.active { 650 color: #c084fc !important; 651 opacity: 1 !important; 652 font-weight: 750 !important; 653 } 654 655 body:not(.dark) .nav-links li a.active { 656 color: #7c3aed !important; 657 opacity: 1 !important; 658 font-weight: 750 !important; 659 } 660 661 .mobile-menu li a.active { 662 color: #c084fc !important; 663 font-weight: 750 !important; 664 background: rgba(192, 132, 252, 0.1) !important; 665 } 666 667 body:not(.dark) .mobile-menu li a.active { 668 color: #7c3aed !important; 669 font-weight: 750 !important; 670 background: rgba(124, 58, 237, 0.08) !important; 671 } 672 673 /* ===== RIGHT SIDE ===== */ 674 .btn-cls { 675 display: flex; 676 align-items: center; 677 gap: 12px; 678 flex-shrink: 0; 679 } 680 681 .btn-demo { 682 padding: 9px 22px; 683 border: none; 684 border-radius: 999px; 685 background: linear-gradient(135deg, #9333ea 0%, #7c3aed 100%); 686 color: #ffffff !important; 687 font-size: 14px; 688 font-weight: 700; 689 cursor: pointer; 690 white-space: nowrap; 691 box-shadow: 0 4px 18px rgba(147, 51, 234, 0.45); 692 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); 693 text-decoration: none !important; 694 display: inline-flex; 695 align-items: center; 696 justify-content: center; 697 } 698 699 .btn-demo:hover { 700 transform: translateY(-2px); 701 box-shadow: 0 8px 25px rgba(147, 51, 234, 0.65); 702 background: linear-gradient(135deg, #a855f7 0%, #8b5cf6 100%); 703 color: #ffffff !important; 704 } 705 706 /* ===== THEME TOGGLE ===== */ 707 .theme-switch { 708 display: flex; 709 align-items: center; 710 } 711 712 .switch { 713 width: 42px; 714 height: 42px; 715 border-radius: 50%; 716 background: rgba(0, 0, 0, 0.06); 717 display: flex; 718 align-items: center; 719 justify-content: center; 720 cursor: pointer; 721 transition: 0.25s ease; 722 } 723 724 .switch:hover { 725 background: rgba(0, 0, 0, 0.12); 726 } 727 728 .theme-icon { 729 width: 20px; 730 height: 20px; 731 fill: var(--text); 732 } 733 734 /* ===== HAMBURGER ===== */ 735 .hamburger { 736 display: none; 737 width: 42px; 738 height: 42px; 739 border-radius: 50%; 740 align-items: center; 741 justify-content: center; 742 flex-direction: column; 743 gap: 5px; 744 cursor: pointer; 745 background: rgba(0, 0, 0, 0.05); 746 flex-shrink: 0; 747 } 748 749 .hamburger span { 750 width: 20px; 751 height: 2px; 752 border-radius: 10px; 753 background: var(--text); 754 transition: 0.3s ease; 755 } 756 757 /* Hamburger animation */ 758 .hamburger.active span:nth-child(1) { 759 transform: translateY(7px) rotate(45deg); 760 } 761 762 .hamburger.active span:nth-child(2) { 763 opacity: 0; 764 } 765 766 .hamburger.active span:nth-child(3) { 767 transform: translateY(-7px) rotate(-45deg); 768 } 769 770 /* ===== MOBILE MENU ===== */ 771 .mobile-menu { 772 position: absolute; 773 top: 72px; 774 left: 50%; 775 transform: translateX(-50%); 776 width: min(92%, 360px); 777 background: rgba(20, 20, 30, 0.96); 778 backdrop-filter: blur(16px); 779 -webkit-backdrop-filter: blur(16px); 780 border-radius: 24px; 781 padding: 12px 0; 782 opacity: 0; 783 visibility: hidden; 784 pointer-events: none; 785 transition: 0.3s ease; 786 box-shadow: 0 18px 40px rgba(0, 0, 0, 0.25); 787 } 788 789 .mobile-menu.active { 790 opacity: 1; 791 visibility: visible; 792 pointer-events: auto; 793 } 794 795 .mobile-menu ul { 796 margin: 0; 797 padding: 0; 798 list-style: none; 799 } 800 801 .mobile-menu li { 802 border-bottom: 1px solid rgba(255, 255, 255, 0.08); 803 } 804 805 .mobile-menu li:last-child { 806 border-bottom: none; 807 } 808 809 .mobile-menu li a { 810 display: block; 811 padding: 14px 22px; 812 text-align: center; 813 text-decoration: none; 814 color: #fff; 815 font-size: 15px; 816 font-weight: 500; 817 transition: 0.2s ease; 818 } 819 820 .mobile-menu li a:hover { 821 background: rgba(255, 255, 255, 0.06); 822 } 823 824 body:not(.dark) .mobile-menu { 825 background: rgba(255, 255, 255, 0.98); 826 border: 1px solid rgba(203, 213, 225, 0.9); 827 box-shadow: 0 18px 45px rgba(114, 78, 191, 0.15), 0 2px 8px rgba(0, 0, 0, 0.05); 828 } 829 830 body:not(.dark) .mobile-menu li { 831 border-bottom: 1px solid rgba(0, 0, 0, 0.06); 832 } 833 834 body:not(.dark) .mobile-menu li a { 835 color: #0f172a; 836 } 837 838 body:not(.dark) .mobile-menu li a:hover { 839 background: rgba(147, 51, 234, 0.06); 840 color: #7c3aed; 841 } 842 843 /* ===== LARGE LAPTOP ===== */ 844 @media (max-width: 1200px) { 845 .nav-container { 846 padding: 10px 32px; 847 } 848 849 .main-logo { 850 margin-left: 4px; 851 } 852 853 .btn-cls { 854 margin-right: 4px; 855 } 856 857 .btn-demo { 858 padding: 9px 16px; 859 } 860 } 861 862 /* ===== TABLET & MOBILE ===== */ 863 @media (max-width: 768px) { 864 #navbar { 865 top: 10px; 866 padding: 0 16px !important; 867 box-sizing: border-box !important; 868 } 869 870 .nav-container { 871 width: 100%; 872 padding: 10px 16px; 873 border-radius: 20px; 874 background: var(--glass); 875 backdrop-filter: blur(14px); 876 justify-content: space-between; 877 box-sizing: border-box !important; 878 } 879 880 .nav-links, 881 .btn-demo { 882 display: none; 883 } 884 885 .hamburger { 886 display: flex; 887 } 888 889 .btn-cls { 890 gap: 10px; 891 margin-left: auto; 892 } 893 894 .main-logo img { 895 height: 42px; 896 max-width: 160px; 897 } 898 899 .switch, 900 .hamburger { 901 width: 38px; 902 height: 38px; 903 } 904 } 905 906 /* ===== SMALL MOBILE ===== */ 907 @media (max-width: 480px) { 908 #navbar { 909 padding: 0 14px !important; 910 } 911 912 .nav-container { 913 padding: 8px 14px; 914 gap: 10px; 915 } 916 917 .main-logo img { 918 height: 38px; 919 max-width: 145px; 920 } 921 922 .switch, 923 .hamburger { 924 width: 34px; 925 height: 34px; 926 } 927 928 .theme-icon { 929 width: 17px; 930 height: 17px; 931 } 932 933 .mobile-menu { 934 top: 64px; 935 border-radius: 18px; 936 } 937 938 .mobile-menu li a { 939 font-size: 14px; 940 padding: 13px 18px; 941 } 942 } 943 944 /* Animation for hamburger open state */ 945 .hamburger.active span:nth-child(1) { 946 transform: rotate(45deg) translate(5px, 5px); 947 } 948 949 .hamburger.active span:nth-child(2) { 950 opacity: 0; 951 } 952 953 .hamburger.active span:nth-child(3) { 954 transform: rotate(-45deg) translate(5px, -5px); 955 } 956 957 /* Rotate animation for theme toggle */ 958 .rotate { 959 animation: spin 0.4s ease; 960 } 961
962 @keyframes spin { 963 from { 964 transform: rotate(0deg); 965 } 966 967 to { 968 transform: rotate(360deg); 969 } 970 } 971 972 /* Scroll effect - High Opacity Frosted Glass to occlude underlying content */ 973 #navbar.scrolled { 974 top: 10px; 975 } 976 977 #navbar.scrolled .nav-container { 978 background: rgba(14, 11, 26, 0.95) !important; 979 backdrop-filter: blur(24px) !important; 980 -webkit-backdrop-filter: blur(24px) !important; 981 border: 1px solid rgba(192, 132, 252, 0.3) !important; 982 box-shadow: 0 16px 45px rgba(0, 0, 0, 0.6), 0 0 20px rgba(147, 51, 234, 0.15) !important; 983 } 984 985 body:not(.dark) #navbar.scrolled .nav-container { 986 background: rgba(255, 255, 255, 0.97) !important; 987 backdrop-filter: blur(24px) !important; 988 -webkit-backdrop-filter: blur(24px) !important; 989 border: 1px solid rgba(203, 213, 225, 0.95) !important; 990 box-shadow: 0 12px 35px rgba(114, 78, 191, 0.12), 0 2px 8px rgba(0, 0, 0, 0.04) !important; 991 } 992</style> 993 994<body class="dark" style="background-color: #06050c; color: #f8fafc;"> 995
995<script> 996 // Synchronous 0ms instant body theme sync before browser paints 997 (function() { 998 try { 999 var savedTheme = (new URLSearchParams(window.location.search)).get('theme') || localStorage.getItem('theme'); 1000 if (savedTheme === 'light') { 1001 document.body.className = document.body.className.replace(/\bdark\b/g, '').trim(); 1002 document.body.style.backgroundColor = '#f8faff'; 1003 document.body.style.color = '#0f172a'; 1004 document.documentElement.classList.remove('dark'); 1005 document.documentElement.setAttribute('data-theme', 'light'); 1006 } else { 1007 if (!document.body.classList.contains('dark')) { 1008 document.body.classList.add('dark'); 1009 } 1010 document.body.style.backgroundColor = '#06050c'; 1011 document.body.style.color = '#f8fafc'; 1012 document.documentElement.classList.add('dark'); 1013 document.documentElement.setAttribute('data-theme', 'dark'); 1014 } 1015 } catch(e) {} 1016 })(); 1017 </script>
1017 1018 <!-- Google Tag Manager (noscript) -->
vendor: 72 bytes, lines 1018-1019
1018 1019 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1019GTM-5BFHNBNT
vendor: 87 bytes, lines 1019-1020
1019" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 1020
1020<nav id="navbar"> 1021 <div class="nav-container"> 1022 <div class="main-logo"> 1023 <a href="https://www.gymsmart.in" aria-label="GymSmart - Best Gym Management Software Home"> 1024 <picture> 1025 <source srcset="https://www.gymsmart.in/images/gym-logo1.webp" type="image/webp"> 1026 <img src="https://www.gymsmart.in/images/gym-logo1.webp" alt="GymSmart - Best Gym Management Software India" width="150" height="50" decoding="async" fetchpriority="high"> 1027 </picture> 1028 </a> 1029 </div> 1030 <ul class="nav-links"> 1031 <li><a href="https://www.gymsmart.in/" class="">Home</a></li> 1032 <li><a href="https://www.gymsmart.in/ecosystem" class="">Ecosystem</a></li> 1033 <li><a href="https://www.gymsmart.in/features" class="">Features</a></li> 1034 <li><a href="https://www.gymsmart.in/owner-command-center" class="">Truth</a></li> 1035 <li><a href="https://www.gymsmart.in/pricing" class="">Pricing</a></li> 1036 <li><a href="https://www.gymsmart.in/blog" class="">Blog</a></li> 1037 <li><a href="https://www.gymsmart.in/contact" class="">Contact</a></li> 1038 </ul> 1039 <div class="btn-cls d-flex gap-3 align-items-center"> 1040 <a href="https://erp.gymsmart.in/" target="_blank" rel="noopener noreferrer" class="btn-demo" style="text-decoration: none; color: #fff;" aria-label="Login to GymSmart ERP">Login</a> 1041 <div class="theme-switch"> 1042 <div class="switch" id="themeToggle" role="button" aria-label="Toggle Dark and Light Mode" tabindex="0"> 1043 <svg class="theme-icon" viewBox="0 0 24 24" aria-hidden="true"> 1044 <path id="themePath" d="M12 3a9 9 0 1 0 9 9c0-.46-.04-.92-.1-1.36a5.5 5.5 0 0 1-7.54-7.54c-.44-.06-.9-.1-1.36-.1z" /> 1045 </svg> 1046 </div> 1047 </div> 1048 </div> 1049 <!-- Hamburger --> 1050 <div class="hamburger" id="hamburger" role="button" aria-label="Toggle Mobile Navigation Menu" aria-expanded="false" tabindex="0"> 1051 <span></span> 1052 <span></span> 1053 <span></span> 1054 </div> 1055 </div> 1056 <div class="mobile-menu" id="mobileMenu"> 1057 <ul> 1058 <li><a href="https://www.gymsmart.in/" class="">Home</a></li> 1059 <li><a href="https://www.gymsmart.in/ecosystem" class="">Ecosystem</a></li> 1060 <li><a href="https://www.gymsmart.in/features" class="">Features</a></li> 1061 <li><a href="https://www.gymsmart.in/owner-command-center" class="">Truth</a></li> 1062 <li><a href="https://www.gymsmart.in/pricing" class="">Pricing</a></li> 1063 <li><a href="https://www.gymsmart.in/blog" class="">Blog</a></li> 1064 <li><a href="https://www.gymsmart.in/contact" class="">Contact</a></li> 1065 <li style="padding: 10px 0;"><a href="https://erp.gymsmart.in/" target="_blank" rel="noopener noreferrer" style="color: #c084fc; font-weight: 700;">ERP Login <i class="fa-solid fa-arrow-up-right-from-square" style="font-size: 12px; margin-left: 4px;"></i></a></li> 1066 </ul> 1067 </div> 1068 </nav> 1069 1070 1071 1072 <!-- Spacing for demo --> 1073 1074 <div style="height: 100px;"></div> 1075 1076 1077 1078
1078<script> 1079 // ===== SCROLL EFFECT (PASSIVE LISTENER FOR 100 LIGHTHOUSE) ===== 1080 window.addEventListener('scroll', function() { 1081 const navbar = document.getElementById('navbar'); 1082 if (!navbar) return; 1083 if (window.scrollY > 20) { 1084 navbar.classList.add('scrolled'); 1085 } else { 1086 navbar.classList.remove('scrolled'); 1087 } 1088 }, { passive: true }); 1089 1090 1091 1092 // ===== HAMBURGER MENU TOGGLE ===== 1093 1094 const hamburger = document.getElementById('hamburger'); 1095 1096 const mobileMenu = document.getElementById('mobileMenu'); 1097 1098 1099 1100 hamburger.addEventListener('click', function() { 1101 1102 hamburger.classList.toggle('active'); 1103 1104 mobileMenu.classList.toggle('active'); 1105 1106 }); 1107 1108 1109 1110 // Close mobile menu when clicking a link 1111 1112 const mobileLinks = document.querySelectorAll('.mobile-menu a'); 1113 1114 mobileLinks.forEach(link => { 1115 1116 link.addEventListener('click', function() { 1117 1118 hamburger.classList.remove('active'); 1119 1120 mobileMenu.classList.remove('active'); 1121 1122 }); 1123 1124 }); 1125 1126 1127 1128 // ===== THEME TOGGLE (Dark/Light) ===== 1129 1130 const themeToggle = document.getElementById('themeToggle'); 1131
1132 const themePath = document.getElementById('themePath'); 1133 1134 1135 1136 function updateThemeIcon(isDark) { 1137 1138 if (isDark) { 1139 1140 themePath.setAttribute('d', 'M20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12zM12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6c3.31 0 6 2.69 6 6s-2.69 6-6 6'); 1141 1142 1143 1144 } else { 1145 1146 themePath.setAttribute('d', 'M20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12zM12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6 6 2.69 6 6-2.69 6-6 6m0-10c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4'); 1147 1148 1149 1150 } 1151 1152 } 1153 1154 1155 1156 // Check saved theme or URL override, default to dark 1157 const urlTheme = (new URLSearchParams(window.location.search)).get('theme'); 1158 const activeTheme = urlTheme || localStorage.getItem('theme') || 'dark'; 1159 1160 if (activeTheme === 'light') { 1161 document.body.classList.remove('dark'); 1162 document.documentElement.classList.remove('dark'); 1163 updateThemeIcon(false); 1164 } else { 1165 document.body.classList.add('dark'); 1166 document.documentElement.classList.add('dark'); 1167 updateThemeIcon(true); 1168 if (!localStorage.getItem('theme')) { 1169 localStorage.setItem('theme', 'dark'); 1170 } 1171 } 1172 1173 themeToggle.addEventListener('click', function() { 1174 document.body.classList.toggle('dark'); 1175 document.documentElement.classList.toggle('dark'); 1176 const isDark = document.body.classList.contains('dark'); 1177 localStorage.setItem('theme', isDark ? 'dark' : 'light'); 1178 document.cookie = "gymsmart_theme=" + (isDark ? "dark" : "light") + "; path=/; max-age=31536000; SameSite=Lax"; 1179 updateThemeIcon(isDark); 1180 1181 // Add rotate animation 1182 themeToggle.classList.add('rotate'); 1183 setTimeout(() => { 1184 themeToggle.classList.remove('rotate'); 1185 }, 400); 1186 }); 1187 1188 1189 1190 // Close mobile menu on window resize (if screen becomes larger) 1191 window.addEventListener('resize', function() { 1192 if (window.innerWidth > 768) { 1193 if (hamburger) hamburger.classList.remove('active'); 1194 if (mobileMenu) mobileMenu.classList.remove('active'); 1195 } 1196 }, { passive: true }); 1197 1198 // ===== APPLE-GRADE INTERACTIVE CURSOR SPOTLIGHT PHYSICS ===== 1199 function initSpotlightCards() { 1200 const spotlightSelectors = [ 1201 '.problem-card', 1202 '.tfc-card', 1203 '.lbf-block', 1204 '.security-card', 1205 '.gs-faq-item', 1206 '.final-cta-card', 1207 '.blog-card', 1208 '.pricing-card', 1209 '.why-feature-card', 1210 '.stat-item' 1211 ]; 1212 1213 const cards = document.querySelectorAll(spotlightSelectors.join(', ')); 1214 cards.forEach(card => { 1215 if (!card.classList.contains('spotlight-card')) { 1216 card.classList.add('spotlight-card'); 1217 card.addEventListener('mousemove', (e) => { 1218 const rect = card.getBoundingClientRect(); 1219 const x = e.clientX - rect.left; 1220 const y = e.clientY - rect.top; 1221 card.style.setProperty('--mouse-x', `${x}px`); 1222 card.style.setProperty('--mouse-y', `${y}px`); 1223 }, { passive: true }); 1224 } 1225 }); 1226 } 1227 1228 // Initialize immediately and after dynamic AJAX content loads 1229 initSpotlightCards(); 1230 setTimeout(initSpotlightCards, 600); 1231 setTimeout(initSpotlightCards, 1500); 1232 </script>
1232 1233<link rel="stylesheet" href="css/dashboard_inpage.css" /> 1234<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css"> 1235 1236<style> 1237 /* ============================================================ 1238 ABOUT US PAGE - 1240px Midnight & Pearl Master Theme 1239 ============================================================ */ 1240 1241 :root { 1242 --about-primary-gradient: linear-gradient(135deg, #a855f7 0%, #38bdf8 100%); 1243 --about-accent-purple: #c084fc; 1244 --about-accent-cyan: #38bdf8; 1245 } 1246 1247 body { 1248 background-color: #06050c; 1249 color: #f8fafc; 1250 font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; 1251 } 1252 1253 body:not(.dark) { 1254 background-color: #f8faff; 1255 color: #0f172a; 1256 } 1257 1258 .about-page-wrap { 1259 min-height: 100vh; 1260 position: relative; 1261 overflow-x: hidden; 1262 padding-bottom: 70px; 1263 } 1264 1265 /* 1240px Master Container Alignment */ 1266 .about-container { 1267 max-width: 1240px; 1268 margin: 0 auto; 1269 padding: 0; 1270 width: 100%; 1271 box-sizing: border-box; 1272 } 1273 1274 @media (max-width: 1280px) { 1275 .about-container { 1276 padding: 0 20px; 1277 } 1278 } 1279 1280 /* Gradient Text Utility */ 1281 .about-gradient-text { 1282 background: linear-gradient(135deg, #c084fc 0%, #38bdf8 100%); 1283 -webkit-background-clip: text; 1284 -webkit-text-fill-color: transparent; 1285 display: inline-block; 1286 } 1287 1288 body:not(.dark) .about-gradient-text { 1289 background: linear-gradient(135deg, #7e22ce 0%, #0284c7 100%); 1290 -webkit-background-clip: text; 1291 -webkit-text-fill-color: transparent; 1292 } 1293 1294 /* 1. Hero Header */ 1295 .about-hero-section { 1296 padding: clamp(24px, 4vw, 44px) 0 24px; 1297 text-align: center; 1298 } 1299 1300 .about-header-pill { 1301 display: inline-flex; 1302 align-items: center; 1303 gap: 8px; 1304 padding: 6px 16px; 1305 border-radius: 999px; 1306 background: rgba(147, 51, 234, 0.15); 1307 border: 1px solid rgba(192, 132, 252, 0.35); 1308 color: #c084fc; 1309 font-size: 12px; 1310 font-weight: 800; 1311 text-transform: uppercase; 1312 letter-spacing: 0.5px; 1313 margin-bottom: 16px; 1314 } 1315 1316 body:not(.dark) .about-header-pill { 1317 background: #f3e8ff; 1318 border-color: #d8b4fe; 1319 color: #7e22ce; 1320 } 1321 1322 .about-main-heading { 1323 font-family: 'Inter Tight', sans-serif; 1324 font-size: clamp(2.2rem, 4.4vw, 3.5rem); 1325 font-weight: 900; 1326 line-height: 1.18; 1327 letter-spacing: -0.02em; 1328 margin-bottom: 18px; 1329 color: #ffffff; 1330 } 1331 1332 body:not(.dark) .about-main-heading { 1333 color: #0f172a; 1334 } 1335 1336 .about-hero-description { 1337 font-size: clamp(1.02rem, 1.6vw, 1.18rem); 1338 color: rgba(255, 255, 255, 0.75); 1339 max-width: 820px; 1340 margin: 0 auto; 1341 line-height: 1.68; 1342 } 1343 1344 body:not(.dark) .about-hero-description { 1345 color: #475569; 1346 } 1347 1348 /* 2. Impact Numbers Grid (4 Stats) */ 1349 .about-stats-grid { 1350 display: grid; 1351 grid-template-columns: repeat(4, 1fr); 1352 gap: 20px; 1353 margin: 40px 0 60px; 1354 } 1355 1356 .about-stat-card { 1357 background: rgba(16, 14, 30, 0.75); 1358 border: 1px solid rgba(192, 132, 252, 0.18); 1359 border-radius: 24px; 1360 backdrop-filter: blur(16px); 1361 -webkit-backdrop-filter: blur(16px); 1362 padding: 28px 20px; 1363 text-align: center; 1364 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1365 transition: transform 0.3s ease, border-color 0.3s ease; 1366 } 1367 1368 body:not(.dark) .about-stat-card { 1369 background: #ffffff !important; 1370 border: 1px solid rgba(203, 213, 225, 0.85) !important; 1371 box-shadow: 0 10px 30px rgba(114, 78, 191, 0.06) !important; 1372 } 1373 1374 .about-stat-card:hover { 1375 transform: translateY(-4px); 1376 border-color: #c084fc; 1377 } 1378 1379 .about-stat-number { 1380 font-family: 'Inter Tight', sans-serif; 1381 font-size: clamp(2rem, 3.2vw, 2.6rem); 1382 font-weight: 900; 1383 background: linear-gradient(135deg, #c084fc 0%, #38bdf8 100%); 1384 -webkit-background-clip: text; 1385 -webkit-text-fill-color: transparent; 1386 line-height: 1.15; 1387 margin-bottom: 6px; 1388 } 1389 1390 body:not(.dark) .about-stat-number { 1391 background: linear-gradient(135deg, #7e22ce 0%, #0284c7 100%); 1392 -webkit-background-clip: text; 1393 -webkit-text-fill-color: transparent; 1394 } 1395 1396 .about-stat-label { 1397 font-size: 13px; 1398 font-weight: 750; 1399 color: rgba(255, 255, 255, 0.7); 1400 text-transform: uppercase; 1401 letter-spacing: 0.5px; 1402 } 1403 1404 body:not(.dark) .about-stat-label { 1405 color: #64748b; 1406 } 1407 1408 /* 3. Origin Story Section (2 Columns) */ 1409 .about-story-section { 1410 margin: 50px 0 70px; 1411 } 1412 1413 .about-story-grid { 1414 display: grid; 1415 grid-template-columns: 1.15fr 1fr; 1416 gap: 44px; 1417 align-items: center; 1418 } 1419 1420 .about-story-card { 1421 background: rgba(16, 14, 30, 0.75); 1422 border: 1px solid rgba(192, 132, 252, 0.18); 1423 border-radius: 28px; 1424 backdrop-filter: blur(16px); 1425 -webkit-backdrop-filter: blur(16px); 1426 padding: clamp(28px, 4vw, 44px); 1427 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1428 } 1429 1430 body:not(.dark) .about-story-card { 1431 background: #ffffff !important; 1432 border: 1px solid rgba(203, 213, 225, 0.85) !important; 1433 box-shadow: 0 12px 32px rgba(114, 78, 191, 0.07) !important; 1434 } 1435 1436 .about-story-tag { 1437 display: inline-flex; 1438 align-items: center; 1439 gap: 6px; 1440 color: #c084fc; 1441 font-size: 13px; 1442 font-weight: 800; 1443 text-transform: uppercase; 1444 letter-spacing: 0.5px; 1445 margin-bottom: 12px; 1446 } 1447 1448 body:not(.dark) .about-story-tag { 1449 color: #7e22ce; 1450 } 1451 1452 .about-story-title { 1453 font-family: 'Inter Tight', sans-serif; 1454 font-size: clamp(1.8rem, 3vw, 2.3rem); 1455 font-weight: 850; 1456 line-height: 1.25; 1457 color: #ffffff; 1458 margin-bottom: 20px; 1459 } 1460 1461 body:not(.dark) .about-story-title { 1462 color: #0f172a; 1463 } 1464 1465 .about-story-text { 1466 font-size: 15.5px; 1467 line-height: 1.75; 1468 color: rgba(255, 255, 255, 0.78); 1469 margin-bottom: 16px; 1470 } 1471 1472 body:not(.dark) .about-story-text { 1473 color: #334155; 1474 } 1475 1476 .about-story-image-wrap { 1477 border-radius: 28px; 1478 overflow: hidden; 1479 border: 1px solid rgba(192, 132, 252, 0.22); 1480 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1481 background: #110e20; 1482 } 1483 1484 .about-story-image { 1485 width: 100%; 1486 height: auto; 1487 max-height: 440px; 1488 object-fit: cover; 1489 display: block; 1490 } 1491 1492 /* 4. Timeline / Growth Milestones (2022 to 2026) */ 1493 .about-timeline-section { 1494 margin: 70px 0; 1495 } 1496 1497 .timeline-grid { 1498 display: grid; 1499 grid-template-columns: repeat(4, 1fr); 1500 gap: 20px; 1501 position: relative; 1502 margin-top: 36px; 1503 } 1504 1505 .timeline-card { 1506 background: rgba(16, 14, 30, 0.75); 1507 border: 1px solid rgba(192, 132, 252, 0.18); 1508 border-radius: 24px; 1509 padding: 28px 22px; 1510 backdrop-filter: blur(16px); 1511 position: relative; 1512 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1513 transition: transform 0.3s ease, border-color 0.3s ease; 1514 } 1515 1516 body:not(.dark) .timeline-card { 1517 background: #ffffff !important; 1518 border-color: rgba(203, 213, 225, 0.85) !important; 1519 box-shadow: 0 10px 30px rgba(114, 78, 191, 0.06) !important; 1520 } 1521 1522 .timeline-card:hover { 1523 transform: translateY(-5px); 1524 border-color: #c084fc; 1525 } 1526 1527 .timeline-year-pill { 1528 display: inline-flex; 1529 align-items: center; 1530 gap: 6px; 1531 padding: 4px 14px; 1532 border-radius: 999px; 1533 background: linear-gradient(135deg, #9333ea 0%, #7c3aed 100%); 1534 color: #ffffff; 1535 font-size: 13px; 1536 font-weight: 850; 1537 margin-bottom: 14px; 1538 box-shadow: 0 4px 12px rgba(147, 51, 234, 0.35); 1539 } 1540 1541 .timeline-card h4 { 1542 font-family: 'Inter Tight', sans-serif; 1543 font-size: 1.18rem; 1544 font-weight: 850; 1545 color: #ffffff; 1546 margin-bottom: 8px; 1547 } 1548 1549 body:not(.dark) .timeline-card h4 { 1550 color: #0f172a; 1551 } 1552 1553 .timeline-card p { 1554 font-size: 13.5px; 1555 color: rgba(255, 255, 255, 0.72); 1556 line-height: 1.6; 1557 margin: 0; 1558 } 1559 1560 body:not(.dark) .timeline-card p { 1561 color: #475569; 1562 } 1563 1564 /* 5. Deep-Tech Multi-Layer Architecture */ 1565 .about-tech-section { 1566 margin: 70px 0; 1567 } 1568 1569 .tech-stack-grid { 1570 display: grid; 1571 grid-template-columns: repeat(4, 1fr); 1572 gap: 20px; 1573 margin-top: 36px; 1574 } 1575 1576 .tech-layer-card { 1577 background: rgba(16, 14, 30, 0.75); 1578 border: 1px solid rgba(192, 132, 252, 0.18); 1579 border-radius: 24px; 1580 padding: 26px 20px; 1581 backdrop-filter: blur(16px); 1582 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1583 display: flex; 1584 flex-direction: column; 1585 } 1586 1587 body:not(.dark) .tech-layer-card { 1588 background: #ffffff !important; 1589 border-color: rgba(203, 213, 225, 0.85) !important; 1590 box-shadow: 0 10px 30px rgba(114, 78, 191, 0.06) !important; 1591 } 1592 1593 .tech-layer-icon { 1594 width: 46px; 1595 height: 46px; 1596 border-radius: 14px; 1597 background: rgba(147, 51, 234, 0.18); 1598 border: 1px solid rgba(192, 132, 252, 0.3); 1599 display: flex; 1600 align-items: center; 1601 justify-content: center; 1602 font-size: 20px; 1603 color: #c084fc; 1604 margin-bottom: 16px; 1605 } 1606 1607 body:not(.dark) .tech-layer-icon { 1608 background: #f3e8ff; 1609 border-color: #d8b4fe; 1610 color: #7e22ce; 1611 } 1612 1613 .tech-layer-title { 1614 font-family: 'Inter Tight', sans-serif; 1615 font-size: 1.15rem; 1616 font-weight: 850; 1617 color: #ffffff; 1618 margin-bottom: 6px; 1619 } 1620 1621 body:not(.dark) .tech-layer-title { 1622 color: #0f172a; 1623 } 1624 1625 .tech-layer-subtitle { 1626 font-size: 12px; 1627 font-weight: 750; 1628 color: #38bdf8; 1629 text-transform: uppercase; 1630 letter-spacing: 0.5px; 1631 margin-bottom: 14px; 1632 } 1633 1634 body:not(.dark) .tech-layer-subtitle { 1635 color: #0284c7; 1636 } 1637 1638 .tech-badges-wrap { 1639 display: flex; 1640 flex-wrap: wrap; 1641 gap: 6px; 1642 margin-top: auto; 1643 } 1644 1645 .tech-badge-item { 1646 font-size: 11.5px; 1647 font-weight: 750; 1648 padding: 4px 10px; 1649 border-radius: 999px; 1650 background: rgba(255, 255, 255, 0.06); 1651 border: 1px solid rgba(192, 132, 252, 0.2); 1652 color: rgba(255, 255, 255, 0.85); 1653 } 1654 1655 body:not(.dark) .tech-badge-item { 1656 background: #f8fafc; 1657 border-color: #cbd5e1; 1658 color: #334155; 1659 } 1660 1661 /* 6. Core Values & Pillars Grid (6 Cards) */ 1662 .about-values-section { 1663 margin: 60px 0 70px; 1664 } 1665 1666 .about-section-header { 1667 text-align: center; 1668 max-width: 680px; 1669 margin: 0 auto 36px; 1670 } 1671 1672 .about-section-title { 1673 font-family: 'Inter Tight', sans-serif; 1674 font-size: clamp(1.8rem, 3.2vw, 2.5rem); 1675 font-weight: 850; 1676 color: #ffffff; 1677 margin-bottom: 12px; 1678 } 1679 1680 body:not(.dark) .about-section-title { 1681 color: #0f172a; 1682 } 1683 1684 .about-section-subtitle { 1685 font-size: 15px; 1686 color: rgba(255, 255, 255, 0.7); 1687 line-height: 1.6; 1688 } 1689 1690 body:not(.dark) .about-section-subtitle { 1691 color: #64748b; 1692 } 1693 1694 .about-values-grid { 1695 display: grid; 1696 grid-template-columns: repeat(3, 1fr); 1697 gap: 24px; 1698 } 1699 1700 .about-value-card { 1701 background: rgba(16, 14, 30, 0.75); 1702 border: 1px solid rgba(192, 132, 252, 0.18); 1703 border-radius: 26px; 1704 backdrop-filter: blur(16px); 1705 -webkit-backdrop-filter: blur(16px); 1706 padding: 32px 26px; 1707 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1708 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); 1709 display: flex; 1710 flex-direction: column; 1711 } 1712 1713 body:not(.dark) .about-value-card { 1714 background: #ffffff !important; 1715 border: 1px solid rgba(203, 213, 225, 0.85) !important; 1716 box-shadow: 0 10px 30px rgba(114, 78, 191, 0.06) !important; 1717 } 1718 1719 .about-value-card:hover { 1720 transform: translateY(-6px); 1721 border-color: #c084fc; 1722 box-shadow: 0 20px 40px rgba(147, 51, 234, 0.2); 1723 } 1724 1725 .about-value-icon { 1726 width: 52px; 1727 height: 52px; 1728 border-radius: 16px; 1729 background: linear-gradient(135deg, rgba(147, 51, 234, 0.2) 0%, rgba(56, 189, 248, 0.15) 100%); 1730 border: 1px solid rgba(192, 132, 252, 0.3); 1731 display: flex; 1732 align-items: center; 1733 justify-content: center; 1734 font-size: 22px; 1735 color: #c084fc; 1736 margin-bottom: 20px; 1737 } 1738 1739 body:not(.dark) .about-value-icon { 1740 background: #f3e8ff; 1741 border-color: #d8b4fe; 1742 color: #7e22ce; 1743 } 1744 1745 .about-value-title { 1746 font-family: 'Inter Tight', sans-serif; 1747 font-size: 1.25rem; 1748 font-weight: 800; 1749 color: #ffffff; 1750 margin: 0 0 10px 0; 1751 } 1752 1753 body:not(.dark) .about-value-title { 1754 color: #0f172a; 1755 } 1756 1757 .about-value-desc { 1758 font-size: 14.5px; 1759 color: rgba(255, 255, 255, 0.72); 1760 line-height: 1.65; 1761 margin: 0; 1762 } 1763 1764 body:not(.dark) .about-value-desc { 1765 color: #475569; 1766 } 1767 1768 /* Verified Field Evidence & Proof Cards */ 1769 .about-proof-section { 1770 margin: 65px 0 70px; 1771 } 1772 1773 .about-proof-grid { 1774 display: grid; 1775 grid-template-columns: repeat(3, 1fr); 1776 gap: 22px; 1777 margin-top: 32px; 1778 } 1779 1780 .about-proof-card { 1781 background: rgba(16, 14, 30, 0.75); 1782 border: 1px solid rgba(192, 132, 252, 0.2); 1783 border-radius: 22px; 1784 backdrop-filter: blur(16px); 1785 padding: 26px 22px; 1786 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 1787 display: flex; 1788 flex-direction: column; 1789 transition: transform 0.3s ease, border-color 0.3s ease; 1790 } 1791 1792 body:not(.dark) .about-proof-card { 1793 background: #ffffff !important; 1794 border-color: rgba(203, 213, 225, 0.85) !important; 1795 box-shadow: 0 10px 30px rgba(114, 78, 191, 0.06) !important; 1796 } 1797 1798 .about-proof-card:hover { 1799 transform: translateY(-4px); 1800 border-color: #38bdf8; 1801 } 1802 1803 .proof-card-badge { 1804 display: inline-flex; 1805 align-items: center; 1806 gap: 6px; 1807 font-size: 11.5px; 1808 font-weight: 800; 1809 text-transform: uppercase; 1810 letter-spacing: 0.5px; 1811 color: #38bdf8; 1812 margin-bottom: 12px; 1813 } 1814 1815 body:not(.dark) .proof-card-badge { 1816 color: #0284c7; 1817 } 1818 1819 .proof-metric-title { 1820 font-family: 'Inter Tight', sans-serif; 1821 font-size: 1.25rem; 1822 font-weight: 850; 1823 color: #ffffff; 1824 margin-bottom: 8px; 1825 line-height: 1.3; 1826 } 1827 1828 body:not(.dark) .proof-metric-title { 1829 color: #0f172a; 1830 } 1831 1832 .proof-metric-desc { 1833 font-size: 13.5px; 1834 color: rgba(255, 255, 255, 0.75); 1835 line-height: 1.6; 1836 margin: 0; 1837 } 1838 1839 body:not(.dark) .proof-metric-desc { 1840 color: #475569; 1841 } 1842 1843 /* 7. Surat HQ Hardware Lab Callout */ 1844 .about-hq-box { 1845 background: linear-gradient(135deg, rgba(147, 51, 234, 0.2) 0%, rgba(56, 189, 248, 0.15) 100%); 1846 border: 1px solid rgba(192, 132, 252, 0.35); 1847 border-radius: 28px; 1848 padding: clamp(28px, 4vw, 44px); 1849 margin: 60px 0 70px; 1850 display: grid; 1851 grid-template-columns: 1.2fr 1fr; 1852 gap: 36px; 1853 align-items: center; 1854 } 1855 1856 .about-hq-content h3 { 1857 font-family: 'Inter Tight', sans-serif; 1858 font-size: clamp(1.6rem, 2.8vw, 2.1rem); 1859 font-weight: 850; 1860 color: #ffffff; 1861 margin-bottom: 12px; 1862 } 1863 1864 body:not(.dark) .about-hq-content h3 { 1865 color: #0f172a; 1866 } 1867 1868 .about-hq-content p { 1869 font-size: 14.5px; 1870 color: rgba(255, 255, 255, 0.78); 1871
1871 line-height: 1.65; 1872 margin-bottom: 18px; 1873 } 1874 1875 body:not(.dark) .about-hq-content p { 1876 color: #334155; 1877 } 1878 1879 .about-hq-highlights { 1880 display: flex; 1881 flex-direction: column; 1882 gap: 12px; 1883 } 1884 1885 .hq-highlight-item { 1886 display: flex; 1887 align-items: center; 1888 gap: 12px; 1889 font-size: 14px; 1890 font-weight: 700; 1891 color: #ffffff; 1892 } 1893 1894 body:not(.dark) .hq-highlight-item { 1895 color: #0f172a; 1896 } 1897 1898 .hq-highlight-item i { 1899 color: #10b981; 1900 font-size: 16px; 1901 } 1902 1903 /* 8. Company Trust FAQ Accordion */ 1904 .about-faq-section { 1905 margin: 60px 0 70px; 1906 } 1907 1908 .about-faq-list { 1909 width: 100%; 1910 max-width: 100%; 1911 margin: 0 auto; 1912 display: flex; 1913 flex-direction: column; 1914 gap: 14px; 1915 } 1916 1917 .about-faq-item { 1918 background: rgba(16, 14, 30, 0.75); 1919 border: 1px solid rgba(192, 132, 252, 0.18); 1920 border-radius: 18px; 1921 overflow: hidden; 1922 backdrop-filter: blur(14px); 1923 transition: border-color 0.25s ease, background 0.25s ease; 1924 } 1925 1926 body:not(.dark) .about-faq-item { 1927 background: #ffffff !important; 1928 border-color: rgba(203, 213, 225, 0.85) !important; 1929 box-shadow: 0 4px 16px rgba(114, 78, 191, 0.04) !important; 1930 } 1931 1932 .about-faq-item.active { 1933 border-color: #c084fc; 1934 background: rgba(16, 14, 30, 0.95); 1935 } 1936 1937 body:not(.dark) .about-faq-item.active { 1938 border-color: #7e22ce !important; 1939 background: #faf5ff !important; 1940 } 1941 1942 .about-faq-trigger { 1943 width: 100%; 1944 padding: 20px 24px; 1945 display: flex; 1946 align-items: center; 1947 justify-content: space-between; 1948 gap: 16px; 1949 background: none; 1950 border: none; 1951 cursor: pointer; 1952 text-align: left; 1953 color: #ffffff; 1954 font-family: 'Inter Tight', sans-serif; 1955 font-size: 1.08rem; 1956 font-weight: 800; 1957 line-height: 1.35; 1958 transition: color 0.2s ease; 1959 } 1960 1961 body:not(.dark) .about-faq-trigger { 1962 color: #0f172a; 1963 } 1964 1965 .about-faq-trigger:hover { 1966 color: #c084fc; 1967 } 1968 1969 body:not(.dark) .about-faq-trigger:hover { 1970 color: #7e22ce; 1971 } 1972 1973 .about-faq-chevron { 1974 width: 28px; 1975 height: 28px; 1976 border-radius: 50%; 1977 background: rgba(147, 51, 234, 0.15); 1978 color: #c084fc; 1979 display: flex; 1980 align-items: center; 1981 justify-content: center; 1982 font-size: 13px; 1983 flex-shrink: 0; 1984 transition: transform 0.3s ease; 1985 } 1986 1987 body:not(.dark) .about-faq-chevron { 1988 background: #f3e8ff; 1989 color: #7e22ce; 1990 } 1991 1992 .about-faq-item.active .about-faq-chevron { 1993 transform: rotate(180deg); 1994 } 1995 1996 .about-faq-content { 1997 max-height: 0; 1998 overflow: hidden; 1999 transition: max-height 0.35s ease, padding 0.35s ease; 2000 padding: 0 24px; 2001 } 2002 2003 .about-faq-item.active .about-faq-content { 2004 padding: 0 24px 20px 24px; 2005 } 2006 2007 .about-faq-content p { 2008 font-size: 14.5px; 2009 color: rgba(255, 255, 255, 0.78); 2010 line-height: 1.65; 2011 margin: 0; 2012 } 2013 2014 body:not(.dark) .about-faq-content p { 2015 color: #334155; 2016 } 2017 2018 /* 9. VIP Bottom CTA Banner */ 2019 .about-vip-cta { 2020 background: rgba(16, 14, 30, 0.75); 2021 border: 1px solid rgba(192, 132, 252, 0.2); 2022 border-radius: 28px; 2023 padding: 44px 36px; 2024 text-align: center; 2025 backdrop-filter: blur(16px); 2026 margin-top: 40px; 2027 box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35); 2028 } 2029 2030 body:not(.dark) .about-vip-cta { 2031 background: #ffffff !important; 2032 border-color: #cbd5e1 !important; 2033 box-shadow: 0 12px 32px rgba(114, 78, 191, 0.07) !important; 2034 } 2035 2036 .about-vip-cta h2 { 2037 font-family: 'Inter Tight', sans-serif; 2038 font-size: clamp(1.8rem, 3.2vw, 2.4rem); 2039 font-weight: 850; 2040 color: #ffffff; 2041 margin-bottom: 12px; 2042 } 2043 2044 body:not(.dark) .about-vip-cta h2 { 2045 color: #0f172a; 2046 } 2047 2048 .about-vip-cta p { 2049 font-size: 15px; 2050 color: rgba(255, 255, 255, 0.7); 2051 max-width: 620px; 2052 margin: 0 auto 24px; 2053 line-height: 1.6; 2054 } 2055 2056 body:not(.dark) .about-vip-cta p { 2057 color: #475569; 2058 } 2059 2060 .about-cta-btns { 2061 display: flex; 2062 align-items: center; 2063 justify-content: center; 2064 gap: 14px; 2065 flex-wrap: wrap; 2066 } 2067 2068 .btn-about-primary { 2069 display: inline-flex; 2070 align-items: center; 2071 gap: 10px; 2072 padding: 14px 32px; 2073 border-radius: 999px; 2074 background: linear-gradient(135deg, #9333ea 0%, #7c3aed 100%); 2075 color: #ffffff !important; 2076 font-size: 15px; 2077 font-weight: 800; 2078 text-decoration: none !important; 2079 box-shadow: 0 8px 24px rgba(147, 51, 234, 0.4); 2080 transition: all 0.25s ease; 2081 } 2082 2083 .btn-about-primary:hover { 2084 transform: translateY(-2px); 2085 box-shadow: 0 12px 30px rgba(147, 51, 234, 0.6); 2086 } 2087 2088 .btn-about-secondary { 2089 display: inline-flex; 2090 align-items: center; 2091 gap: 10px; 2092 padding: 13px 26px; 2093 border-radius: 999px; 2094 background: rgba(255, 255, 255, 0.06); 2095 border: 1px solid rgba(192, 132, 252, 0.3); 2096 color: #ffffff !important; 2097 font-size: 14.5px; 2098 font-weight: 750; 2099 text-decoration: none !important; 2100 transition: all 0.25s ease; 2101 } 2102 2103 body:not(.dark) .btn-about-secondary { 2104 background: #f8fafc; 2105 border-color: #cbd5e1; 2106 color: #0f172a !important; 2107 } 2108 2109 .btn-about-secondary:hover { 2110 transform: translateY(-2px); 2111 background: rgba(255, 255, 255, 0.12); 2112 } 2113 2114 /* ============================================================ 2115 RESPONSIVE DESIGN (Desktop, Tablet & Mobile) 2116 ============================================================ */ 2117 2118 @media (max-width: 1024px) { 2119 .about-stats-grid { 2120 grid-template-columns: repeat(2, 1fr); 2121 gap: 18px; 2122 } 2123 2124 .about-story-grid { 2125 grid-template-columns: 1fr; 2126 gap: 32px; 2127 } 2128 2129 .timeline-grid { 2130 grid-template-columns: repeat(2, 1fr); 2131 gap: 18px; 2132 } 2133 2134 .tech-stack-grid { 2135 grid-template-columns: repeat(2, 1fr); 2136 gap: 18px; 2137 } 2138 2139 .about-proof-grid { 2140 grid-template-columns: repeat(2, 1fr); 2141 gap: 18px; 2142 } 2143 2144 .about-values-grid { 2145 grid-template-columns: repeat(2, 1fr); 2146 gap: 20px; 2147 } 2148 2149 .about-hq-box { 2150 grid-template-columns: 1fr; 2151 gap: 24px; 2152 } 2153 } 2154 2155 @media (max-width: 768px) { 2156 .about-page-wrap { 2157 padding-bottom: 45px !important; 2158 } 2159 2160 .about-container { 2161 padding: 0 16px !important; 2162 } 2163 2164 .about-hero-section { 2165 padding: 18px 0 20px !important; 2166 } 2167 2168 .about-header-pill { 2169 font-size: 11px !important; 2170 padding: 5px 12px !important; 2171 margin-bottom: 12px !important; 2172 } 2173 2174 .about-main-heading { 2175 font-size: 1.95rem !important; 2176 line-height: 1.22 !important; 2177 margin-bottom: 12px !important; 2178 } 2179 2180 .about-hero-description { 2181 font-size: 0.95rem !important; 2182 line-height: 1.55 !important; 2183 } 2184 2185 .about-stats-grid { 2186 grid-template-columns: repeat(2, 1fr) !important; 2187 gap: 14px !important; 2188 margin: 28px 0 44px !important; 2189 } 2190 2191 .about-stat-card { 2192 padding: 20px 14px !important; 2193 border-radius: 18px !important; 2194 } 2195 2196 .about-stat-number { 2197 font-size: 1.8rem !important; 2198 } 2199 2200 .about-stat-label { 2201 font-size: 11.5px !important; 2202 } 2203 2204 .about-story-section { 2205 margin: 36px 0 44px !important; 2206 } 2207 2208 .about-story-card { 2209 padding: 22px 18px !important; 2210 border-radius: 20px !important; 2211 } 2212 2213 .about-story-title { 2214 font-size: 1.5rem !important; 2215 margin-bottom: 14px !important; 2216 } 2217 2218 .about-story-text { 2219 font-size: 14px !important; 2220 line-height: 1.65 !important; 2221 } 2222 2223 /* Timeline & Tech Stack: Compact 2x2 Grid on Mobile */ 2224 .timeline-grid, 2225 .tech-stack-grid { 2226 grid-template-columns: repeat(2, 1fr) !important; 2227 gap: 12px !important; 2228 margin-top: 24px !important; 2229 } 2230 2231 .about-proof-grid { 2232 grid-template-columns: 1fr !important; 2233 gap: 14px !important; 2234 margin-top: 20px !important; 2235 } 2236 2237 .timeline-card, 2238 .tech-layer-card { 2239 padding: 16px 14px !important; 2240 border-radius: 18px !important; 2241 } 2242 2243 .timeline-year-pill { 2244 font-size: 11px !important; 2245 padding: 3px 10px !important; 2246 margin-bottom: 8px !important; 2247 } 2248 2249 .timeline-card h4 { 2250 font-size: 13.5px !important; 2251 margin-bottom: 6px !important; 2252 line-height: 1.3 !important; 2253 } 2254 2255 .timeline-card p { 2256 font-size: 11.5px !important; 2257 line-height: 1.45 !important; 2258 } 2259 2260 .tech-layer-icon { 2261 width: 38px !important; 2262 height: 38px !important; 2263 font-size: 16px !important; 2264 border-radius: 12px !important; 2265 margin-bottom: 10px !important; 2266 } 2267 2268 .tech-layer-title { 2269 font-size: 14px !important; 2270 margin-bottom: 3px !important; 2271 line-height: 1.25 !important; 2272 } 2273 2274 .tech-layer-subtitle { 2275 font-size: 10.5px !important; 2276 margin-bottom: 10px !important; 2277 } 2278 2279 .tech-badges-wrap { 2280 gap: 4px !important; 2281 } 2282 2283 .tech-badge-item { 2284 font-size: 10px !important; 2285 padding: 3px 7px !important; 2286 } 2287 2288 .about-values-section { 2289 margin: 40px 0 46px !important; 2290 } 2291 2292 .about-section-title { 2293 font-size: 1.55rem !important; 2294 } 2295 2296 .about-section-subtitle { 2297 font-size: 13px !important; 2298 } 2299 2300 /* 6 Pillars: Compact 2x2 Grid on Mobile */ 2301 .about-values-grid { 2302 grid-template-columns: repeat(2, 1fr) !important; 2303 gap: 12px !important; 2304 } 2305 2306 .about-value-card { 2307 padding: 16px 14px !important; 2308 border-radius: 18px !important; 2309 } 2310 2311 .about-value-icon { 2312 width: 38px !important; 2313 height: 38px !important; 2314 font-size: 16px !important; 2315 border-radius: 12px !important; 2316 margin-bottom: 10px !important; 2317 } 2318 2319 .about-value-title { 2320 font-size: 13.5px !important; 2321 margin-bottom: 6px !important; 2322 line-height: 1.3 !important; 2323 } 2324 2325 .about-value-desc { 2326 font-size: 11.5px !important; 2327 line-height: 1.45 !important; 2328 } 2329 2330 .about-hq-box { 2331 padding: 22px 16px !important; 2332 border-radius: 20px !important; 2333 margin: 36px 0 40px !important; 2334 } 2335 2336 .about-vip-cta { 2337 padding: 28px 16px !important; 2338 border-radius: 20px !important; 2339 } 2340 2341 .about-vip-cta h2 { 2342 font-size: 1.45rem !important; 2343 } 2344 2345 .about-vip-cta p { 2346 font-size: 13px !important; 2347 margin-bottom: 18px !important; 2348 } 2349 2350 .btn-about-primary, 2351 .btn-about-secondary { 2352 width: 100% !important; 2353 justify-content: center !important; 2354 padding: 12px 18px !important; 2355 font-size: 13.5px !important; 2356 } 2357 } 2358 2359 @media (max-width: 480px) { 2360 .about-stats-grid { 2361 grid-template-columns: 1fr 1fr !important; 2362 } 2363 2364 .about-main-heading { 2365 font-size: 1.7rem !important; 2366 } 2367 } 2368</style> 2369 2370<main class="about-page-wrap"> 2371 <!-- Ambient Floating Glowing Blobs --> 2372 <div class="blob blob1" style="top: 120px; left: 2%; width: 450px; height: 450px; opacity: 0.18; pointer-events: none;"></div> 2373 <div class="blob blob2" style="top: 45%; right: 2%; width: 400px; height: 400px; opacity: 0.15; pointer-events: none;"></div> 2374 <div class="blob blob3" style="bottom: 120px; left: 25%; width: 650px; height: 650px; opacity: 0.12; pointer-events: none;"></div> 2375 2376 <div class="about-container"> 2377 2378 <!-- 1. Hero Header --> 2379 <section class="about-hero-section"> 2380 2381 <h1 class="about-main-heading"> 2382 The Complete Operating System for <br />
2383 <span class="about-gradient-text">Modern Fitness Businesses & Biometrics</span> 2384 </h1> 2385 <p class="about-hero-description"> 2386 GymSmart is a fitness business operating system developed and operated by Bizz1 Technologies. Engineered in Surat, Gujarat, GymSmart eliminates gym fee leakage, automates member retention, and syncs high-speed biometric turnstiles across 500+ fitness clubs throughout India. 2387 </p> 2388 </section> 2389 2390 <!-- 2. Impact Numbers Grid (4 Stats) --> 2391 <section class="about-stats-grid"> 2392 <div class="about-stat-card"> 2393 <div class="about-stat-number">500+</div> 2394 <div class="about-stat-label">Active Gyms & Studios</div> 2395 </div> 2396 <div class="about-stat-card"> 2397 <div class="about-stat-number">150K+</div> 2398 <div class="about-stat-label">Members Managed</div> 2399 </div> 2400 <div class="about-stat-card"> 2401 <div class="about-stat-number">â¹45 Cr+</div> 2402 <div class="about-stat-label">Annual Fees Processed</div> 2403 </div> 2404 <div class="about-stat-card"> 2405 <div class="about-stat-number">99.98%</div> 2406 <div class="about-stat-label">Cloud Infrastructure Uptime</div> 2407 </div> 2408 </section> 2409 2410 <!-- Brand Logos Scrolling Marquee --> 2411 <section class="about-logos-marquee-section" style="margin: 10px 0 60px;"> 2412 <div style="text-align: center; margin-bottom: 22px;"> 2413 <span class="about-header-pill" style="margin-bottom: 8px;"> 2414 <i class="fa-solid fa-medal"></i> Proven Track Record 2415 </span> 2416 <h3 style="font-family: 'Inter Tight', sans-serif; font-size: clamp(1.4rem, 2.4vw, 1.85rem); font-weight: 850; color: #ffffff; margin-bottom: 6px;"> 2417 Trusted by <span class="about-gradient-text">500+ Fitness Brands</span> Across India 2418 </h3> 2419 <p style="font-size: 13.5px; color: rgba(255, 255, 255, 0.7); max-width: 600px; margin: 0 auto;"> 2420 Powering daily member admissions, biometric turnstile gates, and automated billing for high-growth fitness clubs nationwide. 2421 </p> 2422 </div> 2423 2424 <div class="marquee"> 2425 <div class="logo-track" id="logoTrack"></div> 2426 </div> 2427 </section> 2428 2429 <!-- 3. Our Origin Story --> 2430 <section class="about-story-section"> 2431 <div class="about-story-grid"> 2432 2433 <div class="about-story-card"> 2434 <span class="about-story-tag"><i class="fa-solid fa-bullseye"></i> Our Purpose & Journey</span> 2435 <h2 class="about-story-title">Built by Engineers Who Listened to Real Gym Owners</h2> 2436 <p class="about-story-text"> 2437 Back in 2022, we observed significant operational challenges across Indian fitness centers: gym owners experienced substantial revenue leakage from uncollected dues, proxy member entries, and chaotic manual registers. Generic software crashed constantly or required clunky external hardware bridges. 2438 </p> 2439 <p class="about-story-text"> 2440 We set out to engineer a complete, unified operating system that solves both software and hardware under one roof. Today, GymSmart connects <a href="https://www.gymsmart.in/gym-whatsapp-billing-software" style="color: #c084fc; text-decoration: underline;">automated WhatsApp UPI billing</a> with native <a href="https://www.gymsmart.in/gym-biometric-turnstile-software" style="color: #c084fc; text-decoration: underline;">biometric turnstiles</a>, empowering single fitness studios and <a href="https://www.gymsmart.in/multi-branch-gym-management-software" style="color: #c084fc; text-decoration: underline;">50+ multi-branch gym chains</a> alike across 20+ Indian states. 2441 </p> 2442 </div> 2443 2444 <div class="about-story-image-wrap"> 2445 <img src="./images/about/gymsmart_team.webp" alt="Gym
2445Smart Fitness ERP Engineering Team Collaborating with Indian Gym Owner in Surat Lab" class="about-story-image" width="800" height="600" loading="lazy" decoding="async" onerror="this.src='images/gymnew/abotimg.avif'"> 2446 </div> 2447 2448 </div> 2449 </section> 2450 2451 <!-- 4. Interactive Growth Milestones (2022 to 2026) --> 2452 <section class="about-timeline-section"> 2453 <div class="about-section-header"> 2454 <h2 class="about-section-title">Our Growth Journey</h2> 2455 <p class="about-section-subtitle">From solving manual register loss in Surat to powering 500+ fitness facilities across 20+ Indian states.</p> 2456 </div> 2457 2458 <div class="timeline-grid"> 2459 <!-- 2022 --> 2460 <div class="timeline-card"> 2461 <span class="timeline-year-pill"><i class="fa-regular fa-calendar"></i> 2022</span> 2462 <h4>GymSmart V1.0 Born</h4> 2463 <p>Launched in Surat, Gujarat. Solved paper register loss with automated member profiles and WhatsApp fee reminders.</p> 2464 </div> 2465 2466 <!-- 2023 --> 2467 <div class="timeline-card"> 2468 <span class="timeline-year-pill"><i class="fa-regular fa-calendar"></i> 2023</span> 2469 <h4>Native Biometric Sync</h4> 2470 <p>Engineered direct low-latency socket drivers in C/C++ to control eSSL & TimeWatch turnstiles with zero proxy entries.</p> 2471 </div> 2472 2473 <!-- 2024 --> 2474 <div class="timeline-card"> 2475 <span class="timeline-year-pill"><i class="fa-regular fa-calendar"></i> 2024</span> 2476 <h4>3 Flutter Native Apps</h4> 2477 <p>Rolled out high-performance mobile apps on iOS & Android for Gym Owners, Personal Trainers, and Members.</p> 2478 </div> 2479 2480 <!-- 2025-2026 --> 2481 <div class="timeline-card"> 2482 <span class="timeline-year-pill"><i class="fa-regular fa-calendar"></i> 2025 - 2026</span> 2483 <h4>500+ Gyms & AI Gates</h4> 2484 <p>Expanded nationwide across 20+ states with multi-branch master control, AI facial recognition, and â¹45 Cr+ fee processing.</p> 2485 </div> 2486 </div> 2487 </section> 2488 2489 <!-- 5. Real-World Field Results & Verified Outcomes --> 2490 <section class="about-proof-section"> 2491 <div class="about-section-header"> 2492 <h2 class="about-section-title">Proven Business Outcomes in Real Fitness Clubs</h2> 2493 <p class="about-section-subtitle">Measurable operational improvements recorded by commercial gym owners after deploying GymSmart.</p> 2494 </div> 2495 2496 <div class="about-proof-grid"> 2497 <!-- Outcome 1 --> 2498 <div class="about-proof-card"> 2499 <span class="proof-card-badge"><i class="fa-solid fa-money-bill-trend-up"></i> Direct Fee Recovery</span> 2500 <h3 class="proof-metric-title">â¹1.4L Recovered in 45 Days</h3> 2501 <p class="proof-metric-desc">A commercial gym facility in Surat eliminated overdue renewal leakage by pairing automated WhatsApp UPI payment links with automated biometric turnstile gate lockout.</p> 2502 </div> 2503 2504 <!-- Outcome 2 --> 2505 <div class="about-proof-card"> 2506 <span class="proof-card-badge"><i class="fa-solid fa-qrcode"></i> Front-Desk Operations</span> 2507 <h3 class="proof-metric-title">85% Reduction in Paperwork</h3> 2508 <p class="proof-metric-desc">A fitness club in Ahmedabad with 1,200+ active members eliminated reception bottlenecks using instant digital QR access and self-serve in-app renewals.</p> 2509 </div> 2510 2511 <!-- Outcome 3 --> 2512 <div class="about-proof-card"> 2513 <span class="proof-card-badge"><i class="fa-solid fa-building-shield"></i> Data Security & Roaming</span> 2514 <h3 class="proof-metric-title">Centralized Data Controls & Staff Privacy</h3> 2515 <p class="proof-metric-desc">A 4-branch chain across Gujarat & Maharashtra centralized financial command while masking member contact numbers from front-desk staff, protecting customer database privacy.</p> 2516 </div> 2517 </div> 2518 </section> 2519 2520 <!-- 6. Deep-Tech Multi-Layer Architecture & Languages --> 2521 <section class="about-tech-section"> 2522 <div class="about-section-header"> 2523 <h2 class="about-section-title">Engineered with State-of-the-Art Tech</h2> 2524 <p class="about-section-subtitle">A multi-layer tech stack designed for low-latency turnstile response and 99.98% cloud reliability.</p> 2525 </div> 2526 2527 <div class="tech-stack-grid"> 2528 <!-- Layer 1: Frontend & Web --> 2529 <div class="tech-layer-card"> 2530 <div class="tech-layer-icon"> 2531 <i class="fa-solid fa-code"></i> 2532 </div> 2533 <h4 class="tech-layer-title">Web & Dashboard</h4>
2534 <span class="tech-layer-subtitle">Frontend & Web App</span> 2535 <p style="font-size: 12.5px; color: rgba(255,255,255,0.7); line-height: 1.45; margin: 6px 0 14px 0;">Instant ledger lookups, live member search, and real-time P&L reporting with high UI responsiveness.</p> 2536 <div class="tech-badges-wrap"> 2537 <span class="tech-badge-item">PHP 8+</span> 2538 <span class="tech-badge-item">HTML5</span> 2539 <span class="tech-badge-item">CSS3</span> 2540 <span class="tech-badge-item">Bootstrap 5</span> 2541 <span class="tech-badge-item">React.js</span> 2542 </div> 2543 </div> 2544 2545 <!-- Layer 2: Mobile Apps --> 2546 <div class="tech-layer-card"> 2547 <div class="tech-layer-icon"> 2548 <i class="fa-solid fa-mobile-screen"></i> 2549 </div> 2550 <h4 class="tech-layer-title">Mobile Ecosystem</h4> 2551 <span class="tech-layer-subtitle">Cross-Platform Native</span> 2552 <p style="font-size: 12.5px; color: rgba(255,255,255,0.7); line-height: 1.45; margin: 6px 0 14px 0;">Smooth 60fps mobile experience for Members, Personal Trainers, and Owners with fast screen transitions.</p> 2553 <div class="tech-badges-wrap"> 2554 <span class="tech-badge-item">Flutter</span> 2555 <span class="tech-badge-item">Dart</span> 2556 <span class="tech-badge-item">iOS App</span> 2557 <span class="tech-badge-item">Android App</span> 2558 </div> 2559 </div> 2560 2561 <!-- Layer 3: Cloud Microservices --> 2562 <div class="tech-layer-card"> 2563 <div class="tech-layer-icon"> 2564 <i class="fa-solid fa-server"></i> 2565 </div> 2566 <h4 class="tech-layer-title">Backend & APIs</h4> 2567 <span class="tech-layer-subtitle">High-Concurrency Cloud</span> 2568 <p style="font-size: 12.5px; color: rgba(255,255,255,0.7); line-height: 1.45; margin: 6px 0 14px 0;">Automated 1-click WhatsApp UPI payment links & official GST invoices generated rapidly through high-concurrency cloud queues.</p> 2569 <div class="tech-badges-wrap"> 2570 <span class="tech-badge-item">PHP</span> 2571 <span class="tech-badge-item">Node.js</span> 2572 <span class="tech-badge-item">Go (Golang)</span> 2573 <span class="tech-badge-item">Python</span> 2574 <span class="tech-badge-item">MySQL / Redis</span> 2575 </div> 2576 </div> 2577 2578 <!-- Layer 4: Hardware Relay Drivers --> 2579 <div class="tech-layer-card"> 2580 <div class="tech-layer-icon"> 2581 <i class="fa-solid fa-microchip"></i> 2582 </div> 2583 <h4 class="tech-layer-title">Biometric Firmware</h4> 2584 <span class="tech-layer-subtitle">Low-Latency Hardware</span> 2585 <p style="font-size: 12.5px; color: rgba(255,255,255,0.7); line-height: 1.45; margin: 6px 0 14px 0;">Real-time turnstile gate unlock over local TCP/IP socket protocol even during peak rush hours.</p> 2586 <div class="tech-badges-wrap"> 2587 <span class="tech-badge-item">C</span> 2588 <span class="tech-badge-item">C++</span> 2589 <span class="tech-badge-item">TCP/IP Sockets</span> 2590 <span class="tech-badge-item">Relay Controllers</span> 2591 </div> 2592 </div> 2593 </div> 2594 </section> 2595 2596 <!-- 7. Core Values & Uncompromising Pillars (6 Cards) --> 2597 <section class="about-values-section"> 2598 <div class="about-section-header"> 2599 <h2 class="about-section-title">The 6 Pillars Behind GymSmart</h2> 2600 <p class="about-section-subtitle">Every feature we build is designed to protect your profits and delight your gym members.</p> 2601 </div> 2602 2603 <div class="about-values-grid"> 2604 2605 <!-- Pillar 1 --> 2606 <div class="about-value-card"> 2607 <div class="about-value-icon"> 2608 <i class="fa-solid fa-shield-halved"></i> 2609 </div> 2610 <h3 class="about-value-title">Prevent Fee Leakage</h3> 2611 <p class="about-value-desc">Automated WhatsApp payment reminders with instant UPI payment links and official GST invoices reduce overdue fee leakage.</p> 2612 </div> 2613 2614 <!-- Pillar 2 --> 2615 <div class="about-value-card"> 2616 <div class="about-value-icon"> 2617 <i class="fa-solid fa-fingerprint"></i> 2618 </div> 2619 <h3 class="about-value-title">Native Biometric Sync</h3> 2620 <p class="about-value-desc">Direct TCP/IP communication with eSSL, TimeWatch, and facial turnstiles without third-party middleman software.</p> 2621 </div> 2622 2623 <!-- Pillar 3 --> 2624 <div class="about-value-card"> 2625 <div class="about-value-icon"> 2626 <i class="fa-solid fa-mobile-screen-button"></i> 2627 </div> 2628 <h3 class="about-value-title">3 Branded Mobile Apps</h3> 2629 <p class="about-value-desc">Dedicated native apps for Owners, Trainers (PT payroll & client attendance), and Members (QR check-in, diet & renewals).</p> 2630 </div> 2631 2632 <!-- Pillar 4 --> 2633 <div class="about-value-card"> 2634 <div class="about-value-icon"> 2635 <i class="fa-solid fa-lock"></i> 2636 </div> 2637 <h3 class="about-value-title">Bank-Grade Cloud Security</h3> 2638 <p class="about-value-desc">
2638Encrypted cloud infrastructure with daily automated backups. Your member phone numbers and financial data stay 100% private.</p> 2639 </div> 2640 2641 <!-- Pillar 5 --> 2642 <div class="about-value-card"> 2643 <div class="about-value-icon"> 2644 <i class="fa-solid fa-file-excel"></i> 2645 </div> 2646 <h3 class="about-value-title">2-Hour Excel Migration</h3> 2647 <p class="about-value-desc">Our onboarding team imports your active members, pending fee balances, and expiry records in under 2 hours without gym downtime.</p> 2648 </div> 2649 2650 <!-- Pillar 6 --> 2651 <div class="about-value-card"> 2652 <div class="about-value-icon"> 2653 <i class="fa-solid fa-diagram-project"></i> 2654 </div> 2655 <h3 class="about-value-title">Multi-Branch Control</h3> 2656 <p class="about-value-desc">Manage 1 to 50+ branches from a single dashboard with centralized revenue reports, staff permissions, and cross-gym access.</p> 2657 </div> 2658 2659 </div> 2660 </section> 2661 2662 <!-- 7. Surat HQ Hardware Lab & Support Callout --> 2663 <section class="about-hq-box"> 2664 <div class="about-hq-content"> 2665 <h3>Direct Engineering & Hardware Support</h3> 2666 <p> 2667 Unlike resellers who outsource support, our core engineering and hardware testing lab operates directly from Surat, Gujarat. When you call us, you speak with specialists who understand both software algorithms and turnstile relay wiring. 2668 </p> 2669 <div class="about-hq-highlights"> 2670 <div class="hq-highlight-item"> 2671 <i class="fa-solid fa-circle-check"></i> 2672 <span>Dedicated WhatsApp Helpdesk (+91 83479 77566)</span> 2673 </div> 2674 <div class="hq-highlight-item"> 2675 <i class="fa-solid fa-circle-check"></i> 2676 <span>Hardware Compatibility Lab for Turnstiles & Biometrics</span> 2677 </div> 2678 <div class="hq-highlight-item"> 2679 <i class="fa-solid fa-circle-check"></i> 2680 <span>Training in Hindi, Gujarati & English for Gym Staff</span> 2681 </div> 2682 </div> 2683 </div> 2684 2685 <div style="text-align: center;"> 2686 <div style="background: rgba(16, 14, 30, 0.85); border: 1px solid rgba(192, 132, 252, 0.3); border-radius: 22px; padding: 24px; backdrop-filter: blur(12px);"> 2687 <i class="fa-solid fa-location-dot" style="font-size: 32px; color: #c084fc; margin-bottom: 12px;"></i> 2688 <h4 style="font-size: 16px; font-weight: 800; color: #ffffff; margin-bottom: 6px;">Surat Headquarters</h4> 2689 <p style="font-size: 13px; color: rgba(255,255,255,0.7); line-height: 1.5; margin: 0;"> 2690 322, 3rd Floor, Royal Business Hub, Variyav, Surat, Gujarat 394520 2691 </p> 2692 </div> 2693 </div> 2694 </section> 2695 2696 <!-- 8. Company Trust & Operations FAQ Accordion --> 2697 <section class="about-faq-section"> 2698 <div class="about-section-header"> 2699 <h2 class="about-section-title">Frequently Asked Questions</h2> 2700 <p class="about-section-subtitle">Clear answers on our Surat engineering lab, hardware compatibility, data security, and onboarding.</p> 2701 </div> 2702 2703 <div class="about-faq-list"> 2704 <!-- FAQ 1 --> 2705 <div class="about-faq-item active"> 2706 <button type="button" class="about-faq-trigger" aria-expanded="true"> 2707 <span>Where is GymSmart based, and how is customer support delivered?</span> 2708 <div class="about-faq-chevron"><i class="fa-solid fa-chevron-down"></i></div> 2709 </button> 2710 <div class="about-faq-content" style="max-height: 200px;"> 2711 <p> 2712 GymSmart is developed by Bizz1 Technologies with its central engineering, R&D hardware testing lab, and support headquarters in <strong>Surat, Gujarat</strong>. We provide dedicated 1-on-1 onboarding and 24/7 priority assistance across India via WhatsApp (+91 83479 77566), direct phone calls, and remote screen sharing in <strong>English, Hindi, and Gujarati</strong>. 2713 </p> 2714 </div> 2715 </div> 2716 2717 <!-- FAQ 2 --> 2718 <div class="about-faq-item"> 2719 <button type="button" class="about-faq-trigger" aria-expanded="false">
2720 <span>Does GymSmart integrate with biometric turnstiles and face recognition machines in any city?</span> 2721 <div class="about-faq-chevron"><i class="fa-solid fa-chevron-down"></i></div> 2722 </button> 2723 <div class="about-faq-content"> 2724 <p> 2725 Yes. GymSmart features proprietary low-latency socket drivers that connect directly with leading hardware brandsâincluding <strong>eSSL, TimeWatch, ZKTeco, and Realtime</strong>âover standard local LAN TCP/IP. Whether your gym is in a major metro or a Tier-2/3 town, our engineering team guides your local electrician remotely for seamless turnstile relay setup in under 30 minutes. 2726 </p> 2727 </div> 2728 </div> 2729 2730 <!-- FAQ 3 --> 2731 <div class="about-faq-item"> 2732 <button type="button" class="about-faq-trigger" aria-expanded="false"> 2733 <span>How does GymSmart protect member data privacy and prevent staff poaching?</span> 2734 <div class="about-faq-chevron"><i class="fa-solid fa-chevron-down"></i></div> 2735 </button> 2736 <div class="about-faq-content"> 2737 <p> 2738 GymSmart complies fully with India's <strong>Digital Personal Data Protection (DPDP) Act 2023</strong>. Our platform enforces strict Role-Based Access Control (RBAC) with automatic member phone number masking. Personal trainers and front-desk staff can never download or steal your private client contact database. All financial and biometric logs are secured with bank-grade 256-bit encryption. 2739 </p> 2740 </div> 2741 </div> 2742 2743 <!-- FAQ 4 --> 2744 <div class="about-faq-item"> 2745 <button type="button" class="about-faq-trigger" aria-expanded="false"> 2746 <span>How long does it take to migrate from Excel or our old gym software?</span> 2747 <div class="about-faq-chevron"><i class="fa-solid fa-chevron-down"></i></div> 2748 </button> 2749 <div class="about-faq-content"> 2750 <p> 2751 Our dedicated technical onboarding team imports your entire active member roster, plan history, pending fee dues, and expiry records from Excel, Google Sheets, or any legacy software export in <strong>under 2 hours</strong> with 100% data accuracy and zero gym operational downtime. 2752 </p> 2753 </div> 2754 </div> 2755 </div> 2756 </section> 2757 2758 <!-- 9. VIP Bottom CTA Banner --> 2759 <section class="about-vip-cta"> 2760 <h2>Ready to Scale Your Fitness Center?</h2> 2761 <p>Join 500+ gym owners who stopped fee leakage and put operations on auto-pilot. Book your 1-on-1 personalized live tour today.</p> 2762 <div class="about-cta-btns"> 2763 <a href="https://www.gymsmart.in/contact" class="btn-about-primary"> 2764 <span>Book a Free Live Demo</span> 2765 <i class="fa-solid fa-arrow-right"></i> 2766 </a> 2767 <a href="tel:+918347977566" class="btn-about-secondary"> 2768 <i class="fa-solid fa-phone" style="color: #38bdf8;"></i> 2769 <span>Call Sales: +91 83479 77566</span> 2770 </a> 2771 </div> 2772 </section> 2773 2774 </div> 2775</main> 2776 2777<!-- Schema.org Structured Data for About Us Page -->
2778<script type="application/ld+json"> 2779{ 2780 "@context": "https://schema.org", 2781 "@graph": [ 2782 { 2783 "@type": "BreadcrumbList", 2784 "itemListElement": [ 2785 { 2786 "@type": "ListItem", 2787 "position": 1, 2788 "name": "Home", 2789 "item": "https://www.gymsmart.in/" 2790 }, 2791 { 2792 "@type": "ListItem", 2793 "position": 2, 2794 "name": "About Us", 2795 "item": "https://www.gymsmart.in/about-us" 2796 } 2797 ] 2798 }, 2799 { 2800 "@type": "AboutPage", 2801 "@id": "https://www.gymsmart.in/about-us#about", 2802 "url": "https://www.gymsmart.in/about-us", 2803 "name": "About GymSmart | The Complete Operating System & ERP for Fitness Businesses", 2804 "description": "Discover the story of GymSmart by Bizz1 Technologies. Engineered in Surat, Gujarat, empowering 500+ Indian gyms with automated WhatsApp UPI billing, biometric turnstiles (eSSL, TimeWatch, ZKTeco) & 3 native mobile apps. 98%+ fee leakage prevention.", 2805 "mainEntity": { 2806 "@type": "Organization", 2807 "@id": "https://www.gymsmart.in/#organization" 2808 } 2809 }, 2810 { 2811 "@type": "FAQPage", 2812 "@id": "https://www.gymsmart.in/about-us#faq", 2813 "mainEntity": [ 2814 { 2815 "@type": "Question", 2816 "name": "Where is GymSmart based, and how is customer support delivered?", 2817 "acceptedAnswer": { 2818 "@type": "Answer", 2819 "text": "GymSmart is developed by Bizz1 Technologies with its central engineering, R&D hardware testing lab, and support headquarters in Surat, Gujarat. We provide dedicated 1-on-1 onboarding and 24/7 priority assistance across India via WhatsApp (+91 83479 77566), direct phone calls, and remote screen sharing in English, Hindi, and Gujarati." 2820 } 2821 }, 2822 { 2823 "@type": "Question", 2824 "name": "Does GymSmart integrate with biometric turnstiles and face recognition machines in any city?", 2825 "acceptedAnswer": { 2826 "@type": "Answer", 2827 "text": "Yes. GymSmart features proprietary low-latency socket drivers that connect directly with leading hardware brandsâincluding eSSL, TimeWatch, ZKTeco, and Realtimeâover standard local LAN TCP/IP. Whether your gym is in a major metro or a Tier-2/3 town, our engineering team guides your local electrician remotely for seamless turnstile relay setup in under 30 minutes." 2828 } 2829 }, 2830 { 2831 "@type": "Question", 2832 "name": "How does GymSmart protect member data privacy and prevent staff poaching?", 2833 "acceptedAnswer": { 2834 "@type": "Answer", 2835 "text": "GymSmart complies fully with India's Digital Personal Data Protection (DPDP) Act 2023. Our platform enforces strict Role-Based Access Control (RBAC) with automatic member phone number masking. Personal trainers and front-desk staff can never download or steal your private client contact database. All financial and biometric logs are secured with bank-grade 256-bit encryption." 2836 } 2837 }, 2838 { 2839 "@type": "Question", 2840 "name": "How long does it take to migrate from Excel or our old gym software?", 2841 "acceptedAnswer": { 2842 "@type": "Answer", 2843 "text": "Our dedicated technical onboarding team imports your entire active member roster, plan history, pending fee dues, and expiry records from Excel, Google Sheets, or any legacy software export in under 2 hours with 100% data accuracy and zero gym operational downtime." 2844 } 2845 } 2846 ] 2847 }, 2848 { 2849 "@type": "Organization", 2850 "@id": "https://www.gymsmart.in/#organization", 2851 "name": "GymSmart", 2852 "legalName": "Bizz1 Technologies", 2853 "alternateName": ["GymSmart ERP", "GymSmart by Bizz1 Technologies", "GymSmart India"], 2854 "url": "https://www.gymsmart.in/", 2855 "logo": "https://www.gymsmart.in/images/gym-logo1.png", 2856 "foundingDate": "2022", 2857 "foundingLocation": { 2858 "@type": "Place", 2859 "name": "Surat, Gujarat, India" 2860 }, 2861 "parentOrganization": { 2862 "@type": "Organization", 2863 "name": "Bizz1 Technologies", 2864 "legalName": "Bizz1 Technologies", 2865 "url": "https://www.bizz1.com", 2866 "email": "[email protected]", 2867 "taxID": "24ACAFA9619B1ZT" 2868 }, 2869 "address": { 2870 "@type": "PostalAddress", 2871 "streetAddress": "322, 3rd Floor, Royal Business Hub, Variyav", 2872 "addressLocality": "Surat", 2873 "addressRegion": "Gujarat", 2874 "postalCode": "394520", 2875 "addressCountry": "IN" 2876 }, 2877 "contactPoint": [ 2878 { 2879 "@type": "ContactPoint", 2880 "telephone": "+91-83479-77566", 2881 "contactType": "sales", 2882 "areaServed": "IN", 2883 "availableLanguage": ["English", "Hindi", "Gujarati"] 2884 }, 2885 { 2886 "@type": "ContactPoint", 2887 "telephone": "+91-83479-77555", 2888 "contactType": "technical support", 2889 "areaServed": "IN", 2890 "availableLanguage": ["English", "Hindi", "Gujarati"] 2891 } 2892 ], 2893 "sameAs": [ 2894 "https://www.facebook.com/gymsmarterp/", 2895 "https://www.instagram.com/gymsmarterp/", 2896 "https://www.youtube.com/@gymsmart-erp", 2897 "https://apps.apple.com/in/app/gymsmart-pro/id6740852378", 2898 "https://play.google.com/store/apps/details?id=com.ajasys.gymsmart", 2899 "https://www.wikidata.org/wiki/Q1076418", 2900 "https://www.wikidata.org/wiki/Q180574", 2901 "https://www.wikidata.org/wiki/Q131238" 2902 ] 2903 } 2904 ] 2905} 2906</script>
2906 2907 2908<!-- Marquee Infinite Logo Scroll Script -->
2909<script> 2910 const logos = ["https:\/\/www.gymsmart.in\/assets\/GymLogo\/ABS FITNESS GYM.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/ADAMANT ATHLETES HIGH PERFORMANCE CENTRE.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/ATHLETE CLUB GYMS.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Ayodhya Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Beefit Fitness Club.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/FIT AURA.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/FitKshetra.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Fitness Mantra ~ The Gym.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Fitness Town.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Five Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Geloxy Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Gym Center.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Gym City Pro.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Gym Town.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Gym World.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/H Next Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Human Beast Power Fitness Club.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/ICONIC GYM & PHYSIO.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/IronOx Fitness Studio.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Kasthbhanjan fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/LEO INDUSTRIES.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Live Fit Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Planet Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Power House Gym.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Royal Fitness Center.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Sabar - A Healing Gym.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Sivana Fitness Center.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Spartan Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Step Up.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/THE REAL STEEL.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/The Era Next Gen Sports.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/The Hustlers.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/The National Fitness Gym.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/The One Fitness Zone.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Unique Fitness.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Unity Fintness Club.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Unity Fitness Center.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/X10 Fitness Gym.webp","https:\/\/www.gymsmart.in\/assets\/GymLogo\/Xploud Gym.webp"]; 2911 const track = document.getElementById("logoTrack"); 2912 if (track && logos && logos.length > 0) { 2913 /* duplicate for smooth infinite scroll */ 2914 const fullLogos = [...logos, ...logos]; 2915 fullLogos.forEach(src => { 2916 const div = document.createElement("div"); 2917 div.className = "logo-item"; 2918 const filename = src.split('/').pop(); 2919 const dotIndex = filename.lastIndexOf('.'); 2920 let rawName = dotIndex !== -1 ? filename.substring(0, dotIndex) : filename; 2921 rawName = decodeURIComponent(rawName); 2922 let gymName = rawName.replace(/_\d+$/, '').replace(/[-_]/g, ' ').trim(); 2923 gymName = gymName.split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()).join(' '); 2924 const isNumericOrEmpty = /^\d*$/.test(gymName.replace(/\s/g, '')); 2925 const displayName = isNumericOrEmpty ? "" : gymName; 2926 const thumbSrc = `thumb.php?src=${encodeURIComponent(src)}&w=100&h=100`; 2927 div.innerHTML = ` 2928 <div class="logo-badge"> 2929 <img src="${thumbSrc}" class="logo" alt="${gymName}" width="42" height="42" loading="lazy" decoding="async" fetchpriority="low"> 2930 </div> 2931 ${displayName ? `<span class="logo-name">${displayName}</span>` : ''} 2932 `; 2933 track.appendChild(div); 2934 }); 2935 } 2936</script>
2936 2937 2938<!-- FAQ Accordion Interactive Script -->
2939<script> 2940document.addEventListener('DOMContentLoaded', function() { 2941 const faqItems = document.querySelectorAll('.about-faq-item'); 2942 faqItems.forEach(item => { 2943 const trigger = item.querySelector('.about-faq-trigger'); 2944 const content = item.querySelector('.about-faq-content'); 2945 if (trigger && content) { 2946 trigger.addEventListener('click', function() { 2947 const isActive = item.classList.contains('active'); 2948 faqItems.forEach(otherItem => { 2949 otherItem.classList.remove('active'); 2950 const otherContent = otherItem.querySelector('.about-faq-content'); 2951 const otherTrigger = otherItem.querySelector('.about-faq-trigger'); 2952 if (otherContent) otherContent.style.maxHeight = null; 2953 if (otherTrigger) otherTrigger.setAttribute('aria-expanded', 'false'); 2954 }); 2955 if (!isActive) { 2956 item.classList.add('active'); 2957 content.style.maxHeight = content.scrollHeight + 'px'; 2958 trigger.setAttribute('aria-expanded', 'true'); 2959 } 2960 }); 2961 } 2962 }); 2963}); 2964</script>
2964 2965 2966<!-- ======================= Footer Styles =================== --> 2967<style> 2968 /* ========== Base Footer Styles ========== */ 2969 .footer { 2970 background: #0f0f1a; 2971 color: #ccc; 2972 padding-top: 60px; 2973 font-family: 'Poppins', sans-serif; 2974 } 2975 2976 .footer .container { 2977 max-width: 1240px; 2978 margin: auto; 2979 padding: 0 20px; 2980 } 2981 2982 /* ========== Footer Grid Layout ========== */ 2983 .footer-grid { 2984 display: grid; 2985 grid-template-columns: 1.3fr 0.9fr 0.9fr 1.3fr; 2986 gap: 35px; 2987 } 2988 2989 /* ========== Footer Column Styles ========== */ 2990 .footer-col h4 { 2991 color: #fff; 2992 margin-bottom: 18px; 2993 font-size: 16px; 2994 font-weight: 700; 2995 letter-spacing: 0.5px; 2996 text-transform: uppercase; 2997 } 2998 2999 .footer-col p { 3000 font-size: 13.5px; 3001 line-height: 1.65; 3002 color: rgba(255, 255, 255, 0.65); 3003 } 3004 3005 /* ========== Footer Logo ========== */ 3006 .footer-logo { 3007 width: 145px; 3008 margin-bottom: 14px; 3009 } 3010 3011 /* Contact Micro-info */ 3012 .footer-contact-info { 3013 margin: 12px 0 16px; 3014 font-size: 13.5px; 3015 } 3016 3017 .footer-contact-item { 3018 display: flex; 3019 align-items: center; 3020 gap: 8px; 3021 margin-bottom: 6px; 3022 } 3023 3024 .footer-contact-ico { 3025 color: #c084fc; 3026 font-size: 14px; 3027 width: 16px; 3028 text-align: center; 3029 flex-shrink: 0; 3030 } 3031 3032 .footer-contact-link { 3033 color: rgba(255, 255, 255, 0.75); 3034 text-decoration: none; 3035 font-weight: 500; 3036 transition: color 0.2s ease; 3037 } 3038 3039 .footer-contact-link:hover { 3040 color: #c084fc; 3041 text-decoration: underline; 3042 } 3043 3044 .footer-developed-by { 3045 font-size: 12.5px; 3046 color: rgba(255, 255, 255, 0.5); 3047 } 3048 3049 /* ========== Footer Links ========== */ 3050 .footer-col ul { 3051 list-style: none; 3052 padding: 0; 3053 margin: 0; 3054 } 3055 3056 .footer-col ul li { 3057 margin-bottom: 9px; 3058 } 3059 3060 .footer-col ul li a { 3061 text-decoration: none; 3062 color: rgba(255, 255, 255, 0.65); 3063 transition: all 0.25s ease; 3064 font-size: 13.5px; 3065 display: inline-flex; 3066 align-items: center; 3067 gap: 6px; 3068 } 3069 3070 .footer-col ul li a:hover { 3071 color: #c084fc; 3072 transform: translateX(4px); 3073 } 3074 3075 /* ========== Social Icons ========== */ 3076 .social-icons { 3077 margin-top: 18px; 3078 display: flex; 3079 gap: 8px; 3080 } 3081 3082 .social-icons a { 3083 display: inline-flex; 3084 align-items: center; 3085 justify-content: center; 3086 width: 36px; 3087 height: 36px; 3088 border-radius: 10px; 3089 color: #fff; 3090 background: rgba(255, 255, 255, 0.06); 3091 border: 1px solid rgba(255, 255, 255, 0.08); 3092 transition: all 0.3s ease; 3093 font-size: 14px; 3094 } 3095 3096 .social-icons a:hover { 3097 background: linear-gradient(135deg, #9333ea, #7c3aed); 3098 border-color: transparent; 3099 color: #fff; 3100 transform: translateY(-3px); 3101 box-shadow: 0 4px 12px rgba(147, 51, 234, 0.4); 3102 } 3103 3104 /* ========== App Download Badges (Col 4) ========== */ 3105 .footer-app-btn { 3106 display: flex; 3107 align-items: center; 3108 gap: 12px; 3109 background: rgba(255, 255, 255, 0.04); 3110 border: 1px solid rgba(255, 255, 255, 0.08); 3111 border-radius: 12px; 3112 padding: 8px 12px; 3113 text-decoration: none !important; 3114 color: #fff !important; 3115 transition: all 0.25s ease; 3116 } 3117 3118 body:not(.dark) .footer-app-btn { 3119 background: #ffffff; 3120 border-color: #e2e8f0; 3121 color: #0f172a !important; 3122 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03); 3123 } 3124 3125 .footer-app-btn:hover { 3126 background: rgba(147, 51, 234, 0.18); 3127 border-color: rgba(192, 132, 252, 0.45); 3128 transform: translateY(-2px); 3129 box-shadow: 0 6px 18px rgba(147, 51, 234, 0.25); 3130 } 3131 3132 body:not(.dark) .footer-app-btn:hover { 3133 background: #f3e8ff; 3134 border-color: #d8b4fe; 3135 } 3136 3137 .footer-app-ico { 3138 font-size: 20px; 3139 flex-shrink: 0; 3140 width: 24px; 3141 text-align: center; 3142 transition: transform 0.2s ease; 3143 } 3144 3145 .app-ico-apple { 3146 color: #ffffff; 3147 } 3148 3149 body:not(.dark) .app-ico-apple { 3150 color: #000000 !important; 3151 } 3152 3153 .app-ico-erp { 3154 color: #c084fc; 3155 } 3156 3157 body:not(.dark) .app-ico-erp { 3158 color: #7e22ce !important; 3159 } 3160 3161 .app-ico-play { 3162 color: #34d399; 3163 } 3164 3165 body:not(.dark) .app-ico-play { 3166 color: #059669 !important; 3167 } 3168 3169 body:not(.dark) .footer-app-meta small { 3170 color: #64748b; 3171 opacity: 1; 3172 } 3173 3174 body:not(.dark) .footer-app-meta strong { 3175 color: #0f172a; 3176 } 3177 3178 .footer-app-meta { 3179 display: flex; 3180 flex-direction: column; 3181 line-height: 1.2; 3182 } 3183 3184 .footer-app-meta small { 3185 font-size: 9px; 3186 font-weight: 600; 3187 text-transform: uppercase; 3188 letter-spacing: 0.5px; 3189 opacity: 0.65; 3190 } 3191 3192 .footer-app-meta strong { 3193 font-size: 12px; 3194 font-weight: 700; 3195 } 3196 3197 /* ========== Footer Bottom ========== */ 3198 .footer-bottom { 3199 border-top: 1px solid rgba(255, 255, 255, 0.08); 3200 margin-top: 45px; 3201 padding: 22px 0; 3202 } 3203 3204 .footer-bottom .container { 3205 display: flex; 3206 justify-content: space-between; 3207 align-items: center; 3208 flex-wrap: wrap; 3209 gap: 12px; 3210 } 3211 3212 .footer-bottom p { 3213 margin: 0; 3214 font-size: 13px; 3215 color: rgba(255, 255, 255, 0.55); 3216 } 3217 3218 body:not(.dark) .footer-bottom p { 3219 color: #64748b; 3220 } 3221 3222 /* ========== Responsive Design ========== */ 3223 @media(max-width: 1024px) { 3224 .footer-grid { 3225 grid-template-columns: repeat(2, 1fr); 3226 gap: 30px; 3227 } 3228 } 3229 3230 @media(max-width: 640px) { 3231 .footer { 3232 padding-top: 48px; 3233 padding-bottom: 95px !important; 3234 } 3235 3236 .footer .container { 3237 padding: 0 20px; 3238 } 3239 3240 .footer-grid { 3241 grid-template-columns: 1fr 1fr; 3242 gap: 28px 18px; 3243 } 3244 3245 .footer-col:nth-child(1) { 3246 grid-column: span 2; 3247 padding-bottom: 10px; 3248 border-bottom: 1px solid rgba(255, 255, 255, 0.08); 3249 } 3250 3251 body:not(.dark) .footer-col:nth-child(1) { 3252 border-bottom-color: #e2e8f0; 3253 } 3254 3255 .footer-col:nth-child(2), 3256 .footer-col:nth-child(3) { 3257 grid-column: span 1; 3258 } 3259 3260 .footer-col:nth-child(4) { 3261 grid-column: span 2; 3262 padding-top: 10px; 3263 border-top: 1px solid rgba(255, 255, 255, 0.08); 3264 } 3265 3266 body:not(.dark) .footer-col:nth-child(4) { 3267 border-top-color: #e2e8f0; 3268 } 3269 3270 .footer-col h4 { 3271 font-size: 15px; 3272 margin-bottom: 14px; 3273 color: #fff; 3274 } 3275 3276 .footer-col ul li a { 3277 font-size: 13px; 3278 padding: 2px 0; 3279 } 3280 3281 .footer-bottom { 3282 margin-top: 30px; 3283 padding: 18px 0 10px; 3284 } 3285 3286 .footer-bottom .container { 3287 flex-direction: column; 3288 text-align: center; 3289 gap: 6px; 3290 } 3291 } 3292 3293 /* ========== Light Mode Overrides ========== */ 3294 body:not(.dark) .footer { 3295 background: #f8fafc; 3296 border-top: 1px solid #e2e8f0; 3297 color: #334155; 3298 } 3299 3300 body:not(.dark) .footer-col h4 { 3301 color: #0f172a; 3302 } 3303 3304 body:not(.dark) .footer-col p, 3305 body:not(.dark) .footer-col ul li a { 3306 color: #64748b; 3307 } 3308 3309 body:not(.dark) .footer-contact-ico { 3310 color: #7e22ce; 3311 } 3312 3313 body:not(.dark) .footer-contact-link { 3314 color: #1e293b; 3315 font-weight: 600; 3316 } 3317 3318 body:not(.dark) .footer-contact-link:hover { 3319 color: #7e22ce; 3320 } 3321 3322 body:not(.dark) .footer-developed-by { 3323 color: #64748b; 3324 } 3325 3326 body:not(.dark) .footer-col ul li a:hover { 3327 color: #7e22ce; 3328 } 3329 3330 body:not(.dark) .social-icons a { 3331 background: #ffffff; 3332 border-color: #e2e8f0; 3333 color: #475569; 3334 } 3335 3336 body:not(.dark) .social-icons a:hover { 3337 background: #7e22ce; 3338 color: #fff; 3339 } 3340 3341 body:not(.dark) .footer-bottom { 3342 border-top-color: #e2e8f0; 3343 } 3344 /* ========== Interactive India Geo Network & Map Hub ========== */ 3345 .footer-locations-hub { 3346 border-top: 1px solid rgba(192, 132, 252, 0.25); 3347 margin-top: 48px; 3348 padding-top: 36px; 3349 position: relative; 3350 } 3351 3352 body:not(.dark) .footer-locations-hub { 3353 border-top-color: rgba(147, 51, 234, 0.2); 3354 } 3355 3356 .hub-header-wrap { 3357 display: flex; 3358 flex-wrap: wrap; 3359 align-items: center; 3360 justify-content: space-between; 3361 gap: 16px; 3362 margin-bottom: 24px; 3363 } 3364 3365 .hub-badge { 3366 display: inline-flex; 3367 align-items: center; 3368 gap: 8px; 3369 font-size: 11px; 3370 font-weight: 700; 3371 text-transform: uppercase; 3372 letter-spacing: 1px; 3373 color: #10b981; 3374 background: rgba(16, 185, 129, 0.12); 3375 border: 1px solid rgba(16, 185, 129, 0.3); 3376 padding: 5px 12px; 3377 border-radius: 999px; 3378 } 3379 3380 .hub-badge-pulse { 3381 width: 8px; 3382 height: 8px; 3383 border-radius: 50%; 3384 background: #10b981; 3385 box-shadow: 0 0 10px #10b981; 3386 animation: hubPulse 1.8s infinite; 3387 } 3388
3389 @keyframes hubPulse { 3390 0%, 100% { transform: scale(1); opacity: 1; } 3391 50% { transform: scale(1.4); opacity: 0.5; } 3392 } 3393 3394 .hub-title-main { 3395 font-size: 20px; 3396 font-weight: 800; 3397 color: #ffffff; 3398 margin: 6px 0 4px; 3399 letter-spacing: -0.3px; 3400 display: flex; 3401 align-items: center; 3402 gap: 10px; 3403 } 3404 3405 body:not(.dark) .hub-title-main { 3406 color: #0f172a; 3407 } 3408 3409 .hub-subtitle { 3410 font-size: 13px; 3411 color: rgba(255, 255, 255, 0.65); 3412 margin: 0; 3413 } 3414 3415 body:not(.dark) .hub-subtitle { 3416 color: #64748b; 3417 } 3418 3419 /* Main 3D Radar Map Showcase (Promoted directly to Main Section) */ 3420 .geo-radar-box { 3421 width: 100%; 3422 background: radial-gradient(circle at 50% 50%, rgba(147, 51, 234, 0.12) 0%, rgba(10, 8, 24, 0.98) 85%); 3423 border: 1px solid rgba(192, 132, 252, 0.3); 3424 border-radius: 20px; 3425 padding: 20px 24px; 3426 position: relative; 3427 overflow: hidden; 3428 display: flex; 3429 flex-direction: column; 3430 align-items: center; 3431 margin-bottom: 26px; 3432 box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4); 3433 } 3434 3435 body:not(.dark) .geo-radar-box { 3436 background: radial-gradient(circle at 50% 50%, rgba(147, 51, 234, 0.06) 0%, #f8fafc 90%); 3437 border-color: #cbd5e1; 3438 } 3439 3440 .radar-top-bar { 3441 width: 100%; 3442 display: flex; 3443 align-items: center; 3444 justify-content: space-between; 3445 margin-bottom: 12px; 3446 font-size: 12px; 3447 font-weight: 750; 3448 color: #c084fc; 3449 text-transform: uppercase; 3450 letter-spacing: 0.8px; 3451 } 3452 3453 body:not(.dark) .radar-top-bar { 3454 color: #7e22ce; 3455 } 3456 3457 /* 3D Map Canvas Wrapper - Spacious Full-Width Display */ 3458 .map-3d-canvas-wrap { 3459 position: relative; 3460 width: 100%; 3461 max-width: 1040px; 3462 aspect-ratio: 1200 / 896; 3463 margin: 10px auto 16px; 3464 background-image: url('https://www.gymsmart.in/images/landing/india_3d_network_map.webp'); 3465 background-repeat: no-repeat; 3466 background-position: center center; 3467 background-size: contain; 3468 border-radius: 16px; 3469 overflow: visible; 3470 } 3471 3472 /* 360-Degree Active Radar Scanner Grid & Conic Beam */ 3473 .radar-360-scanner { 3474 position: absolute; 3475 top: 50%; 3476 left: 48%; 3477 width: 86%; 3478 height: 86%; 3479 max-width: 660px; 3480 max-height: 660px; 3481 transform: translate(-50%, -50%); 3482 border-radius: 50%; 3483 border: 1px dashed rgba(192, 132, 252, 0.22); 3484 pointer-events: none; 3485 z-index: 2; 3486 overflow: hidden; 3487 } 3488 3489 .radar-360-grid-rings { 3490 position: absolute; 3491 inset: 0; 3492 border-radius: 50%; 3493 } 3494 3495 .radar-360-grid-rings::before { 3496 content: ''; 3497 position: absolute; 3498 inset: 22%; 3499 border-radius: 50%; 3500 border: 1px solid rgba(56, 189, 248, 0.14); 3501 } 3502 3503 .radar-360-grid-rings::after { 3504 content: ''; 3505 position: absolute; 3506 inset: 48%; 3507 border-radius: 50%; 3508 border: 1px dashed rgba(16, 185, 129, 0.2); 3509 } 3510 3511 .radar-360-crosshairs { 3512 position: absolute; 3513 inset: 0; 3514 } 3515 3516 .radar-360-crosshairs::before { 3517 content: ''; 3518 position: absolute; 3519 top: 50%; 3520 left: 0; 3521 right: 0; 3522 height: 1px; 3523 background: linear-gradient(90deg, transparent, rgba(192, 132, 252, 0.16), transparent); 3524 } 3525 3526 .radar-360-crosshairs::after { 3527 content: ''; 3528 position: absolute; 3529 left: 50%; 3530 top: 0; 3531 bottom: 0; 3532 width: 1px; 3533 background: linear-gradient(180deg, transparent, rgba(192, 132, 252, 0.16), transparent); 3534 } 3535 3536 3537 /* 3D Interactive Location Marker Pins */ 3538 .geo-3d-pin { 3539 position: absolute; 3540 display: inline-flex; 3541 align-items: center; 3542 text-decoration: none !important; 3543 cursor: pointer; 3544 transform: translate(-50%, -100%); 3545 transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), z-index 0.2s; 3546 z-index: 10; 3547 outline: none; 3548 user-select: none; 3549 } 3550 3551 .geo-3d-pin:hover, .geo-3d-pin:focus, .geo-3d-pin.active { 3552 transform: translate(-50%, -115%) scale(1.18); 3553 z-index: 60; 3554 } 3555 3556 .pin-marker-3d { 3557 width: 22px; 3558 height: 29px; 3559 position: relative; 3560 display: flex; 3561 align-items: center; 3562 justify-content: center; 3563 filter: drop-shadow(0 5px 8px rgba(0, 0, 0, 0.65)); 3564 transition: transform 0.2s ease, filter 0.2s ease; 3565 } 3566 3567 .pin-svg-3d { 3568 width: 100%; 3569 height: 100%; 3570 display: block; 3571 } 3572 3573 .geo-3d-pin:hover .pin-marker-3d { 3574 filter: drop-shadow(0 6px 12px rgba(220, 38, 38, 0.8)); 3575 } 3576 3577 /* Exact Trigger Point Dot on Land */ 3578 .pin-trigger-dot { 3579 position: absolute; 3580 bottom: -2.5px; 3581 left: 50%; 3582 transform: translateX(-50%); 3583 width: 6px; 3584 height: 6px; 3585 border-radius: 50%; 3586 background: #ffffff;
3587 box-shadow: 0 0 6px #ef4444, 0 0 14px #ef4444; 3588 z-index: 15; 3589 pointer-events: none; 3590 } 3591 3592 /* 360° Active Sonar Ping Wave from Trigger Point */ 3593 .pin-360-sonar-wave { 3594 position: absolute; 3595 bottom: 0; 3596 left: 50%; 3597 transform: translate(-50%, 50%); 3598 width: 14px; 3599 height: 14px; 3600 border-radius: 50%; 3601 border: 1.5px solid #ef4444; 3602 animation: sonar360Pulse 2.3s cubic-bezier(0.1, 0.2, 0.3, 1) infinite; 3603 pointer-events: none; 3604 z-index: 1; 3605 } 3606 3607 @keyframes sonar360Pulse { 3608 0% { transform: translate(-50%, 50%) scale(0.3); opacity: 0.95; } 3609 100% { transform: translate(-50%, 50%) scale(3.2); opacity: 0; } 3610 } 3611 3612 /* Active City 360° Rotating Target Reticle */ 3613 .pin-360-reticle { 3614 display: none; 3615 position: absolute; 3616 bottom: 0; 3617 left: 50%; 3618 transform: translate(-50%, 50%); 3619 width: 38px; 3620 height: 38px; 3621 border-radius: 50%; 3622 border: 1.5px dashed rgba(236, 72, 153, 0.9); 3623 animation: reticle360Spin 4s linear infinite; 3624 pointer-events: none; 3625 z-index: 2; 3626 } 3627 3628 .geo-3d-pin.active .pin-360-reticle, .geo-3d-pin:hover .pin-360-reticle { 3629 display: block; 3630 } 3631 3632 @keyframes reticle360Spin { 3633 0% { transform: translate(-50%, 50%) rotate(0deg); } 3634 100% { transform: translate(-50%, 50%) rotate(360deg); } 3635 } 3636 3637 .pin-ground-pulse { 3638 position: absolute; 3639 bottom: -3px; 3640 left: 50%; 3641 transform: translateX(-50%); 3642 width: 12px; 3643 height: 6px; 3644 border-radius: 50%; 3645 background: rgba(239, 68, 68, 0.5); 3646 box-shadow: 0 0 10px #ef4444; 3647 animation: pinGroundRipple 2.2s cubic-bezier(0, 0, 0.2, 1) infinite; 3648 pointer-events: none; 3649 } 3650 3651 @keyframes pinGroundRipple { 3652 0% { transform: translateX(-50%) scale(0.6); opacity: 0.9; } 3653 80%, 100% { transform: translateX(-50%) scale(2.2); opacity: 0; } 3654 } 3655 3656 /* Leader Label Tag matching user reference */ 3657 .pin-label-tag { 3658 background: rgba(15, 23, 42, 0.92); 3659 border: 1px solid rgba(255, 255, 255, 0.35); 3660 color: #ffffff; 3661 font-size: 9.5px; 3662 font-family: 'Poppins', sans-serif; 3663 font-weight: 800; 3664 padding: 2px 6.5px; 3665 border-radius: 5px; 3666 white-space: nowrap; 3667 margin-left: 3px; 3668 letter-spacing: 0.5px; 3669 box-shadow: 0 3px 10px rgba(0, 0, 0, 0.6); 3670 transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1); 3671 display: inline-flex; 3672 align-items: center; 3673 text-transform: uppercase; 3674 } 3675 3676 body:not(.dark) .pin-label-tag { 3677 background: #ffffff; 3678 color: #0f172a; 3679 border-color: #cbd5e1; 3680 box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15); 3681 } 3682 3683 .geo-3d-pin:hover .pin-label-tag, .geo-3d-pin.active .pin-label-tag { 3684 background: linear-gradient(135deg, #ef4444, #dc2626); 3685 border-color: #fca5a5; 3686 color: #ffffff; 3687 transform: translateX(2px) scale(1.06); 3688 box-shadow: 0 4px 16px rgba(220, 38, 38, 0.65); 3689 } 3690 3691 /* Tag Left Orientation to Avoid Collision (e.g. Rajkot) */ 3692 .geo-3d-pin.tag-left { 3693 flex-direction: row-reverse; 3694 } 3695 .geo-3d-pin.tag-left .pin-label-tag { 3696 margin-left: 0; 3697 margin-right: 3px; 3698 } 3699 .geo-3d-pin.tag-left:hover .pin-label-tag, .geo-3d-pin.tag-left.active .pin-label-tag { 3700 transform: translateX(-2px) scale(1.06); 3701 } 3702 3703 /* VIP Pin Highlight (Jaipur â - User Top Priority) */ 3704 .geo-3d-pin.vip-jaipur { 3705 z-index: 30; 3706 } 3707 3708 .geo-3d-pin.vip-jaipur .pin-label-tag { 3709 background: linear-gradient(135deg, #ec4899, #f43f5e); 3710 border-color: #fce7f3; 3711 color: #ffffff; 3712 font-size: 10.5px; 3713 font-weight: 850; 3714 box-shadow: 0 4px 16px rgba(236, 72, 153, 0.65); 3715 animation: vipJaipurPulse 2.4s ease-in-out infinite alternate; 3716 } 3717 3718 @keyframes vipJaipurPulse { 3719 0% { box-shadow: 0 0 8px rgba(236, 72, 153, 0.5); transform: scale(1); } 3720 100% { box-shadow: 0 0 18px rgba(244, 63, 94, 0.95); transform: scale(1.04); } 3721 } 3722 3723 .geo-3d-pin.vip-jaipur .pin-ground-pulse { 3724 background: rgba(236, 72, 153, 0.7); 3725 box-shadow: 0 0 14px #ec4899; 3726 } 3727 3728 /* HQ Pin Highlight (Surat ð¢) */ 3729 .geo-3d-pin.hq-surat .pin-label-tag { 3730 background: linear-gradient(135deg, #059669, #10b981); 3731 border-color: #a7f3d0; 3732 color: #ffffff; 3733 font-size: 10px; 3734 font-weight: 800; 3735 box-shadow: 0 4px 14px rgba(16, 185, 129, 0.55); 3736 } 3737 3738 .geo-3d-pin.hq-surat .pin-ground-pulse { 3739 background: rgba(16, 185, 129, 0.65); 3740 box-shadow: 0 0 12px #10b981; 3741 } 3742 3743 /* Mobile scaling for 3D map pins */ 3744 @media (max-width: 640px) { 3745 .map-3d-canvas-wrap { 3746 min-height: 310px; 3747 } 3748 .pin-marker-3d { 3749 width: 17px; 3750 height: 23px; 3751 } 3752 .pin-label-tag { 3753 font-size: 8px; 3754 padding: 1.5px 4.5px; 3755 } 3756 } 3757 3758 /* Full-Width HUD Banner Below Map */ 3759 .radar-hud-card { 3760 width: 100%; 3761 max-width: 960px; 3762 background: rgba(255, 255, 255, 0.04); 3763 border: 1px solid rgba(192, 132, 252, 0.3); 3764 border-radius: 16px; 3765 padding: 14px 20px; 3766 margin-top: 10px; 3767 display: flex; 3768 align-items: center; 3769 justify-content: space-between; 3770 gap: 20px; 3771 flex-wrap: wrap; 3772 transition: all 0.3s ease; 3773 } 3774 3775 body:not(.dark) .radar-hud-card { 3776 background: #ffffff; 3777 border-color: #cbd5e1; 3778 box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04); 3779 } 3780 3781 .hud-left-meta { 3782 flex: 1 1 340px; 3783 } 3784 3785 .hud-right-action { 3786 flex: 0 0 auto; 3787 } 3788 3789 .hud-title-row { 3790 display: flex; 3791 align-items: center; 3792 gap: 10px; 3793 margin-bottom: 4px; 3794 } 3795 3796 .hud-city-name { 3797 font-size: 15px; 3798 font-weight: 800; 3799 color: #fff; 3800 } 3801 3802 body:not(.dark) .hud-city-name { 3803 color: #0f172a; 3804 } 3805 3806 .hud-badge-tier { 3807 font-size: 9.5px; 3808 font-weight: 750; 3809 text-transform: uppercase; 3810 padding: 2.5px 8px; 3811 border-radius: 6px; 3812 background: linear-gradient(135deg, #ec4899, #d946ef); 3813 color: #fff; 3814 } 3815 3816 .hud-desc { 3817 font-size: 12px; 3818 color: rgba(255, 255, 255, 0.7); 3819 margin: 0; 3820 line-height: 1.4; 3821 } 3822 3823 body:not(.dark) .hud-desc { 3824 color: #64748b; 3825 } 3826 3827 .hud-cta-btn { 3828 display: inline-flex; 3829 align-items: center; 3830 justify-content: center; 3831 gap: 8px; 3832 padding: 10px 22px; 3833 background: linear-gradient(135deg, #9333ea, #7c3aed); 3834 color: #fff !important; 3835 font-size: 13px; 3836 font-weight: 750; 3837 border-radius: 10px; 3838 text-decoration: none !important; 3839 box-shadow: 0 4px 16px rgba(147, 51, 234, 0.4); 3840 transition: transform 0.2s ease, box-shadow 0.2s ease; 3841 white-space: nowrap; 3842 } 3843 3844 .hud-cta-btn:hover { 3845 transform: translateY(-2px); 3846 box-shadow: 0 6px 22px rgba(147, 51, 234, 0.6); 3847 } 3848 3849 /* Bottom: Full-Width Regional Tabs & Compact City Directory Matrix */ 3850 .geo-matrix-panel { 3851 width: 100%; 3852 display: flex; 3853 flex-direction: column; 3854 gap: 12px; 3855 } 3856 3857 .hub-filter-tabs { 3858 display: flex; 3859 flex-wrap: wrap; 3860 gap: 7px; 3861 width: 100%; 3862 } 3863 3864 .hub-tab-btn { 3865 background: rgba(255, 255, 255, 0.05); 3866 border: 1px solid rgba(255, 255, 255, 0.1); 3867 color: rgba(255, 255, 255, 0.8); 3868 font-size: 11.5px; 3869 font-weight: 650; 3870 padding: 5px 12px; 3871 border-radius: 999px; 3872 cursor: pointer; 3873 transition: all 0.2s ease; 3874 display: inline-flex; 3875 align-items: center; 3876 gap: 6px; 3877 } 3878 3879 body:not(.dark) .hub-tab-btn { 3880 background: #f1f5f9; 3881 border-color: #e2e8f0; 3882 color: #475569; 3883 } 3884 3885 .hub-tab-btn:hover { 3886 background: rgba(147, 51, 234, 0.2); 3887 border-color: rgba(192, 132, 252, 0.45); 3888 color: #fff; 3889 } 3890 3891 body:not(.dark) .hub-tab-btn:hover { 3892 background: #f3e8ff; 3893 color: #7e22ce; 3894 } 3895 3896 .hub-tab-btn.active { 3897 background: linear-gradient(135deg, #9333ea, #7c3aed); 3898 border-color: transparent; 3899 color: #ffffff; 3900 box-shadow: 0 2px 10px rgba(147, 51, 234, 0.4); 3901 } 3902 3903 /* Ultra-Compact High-Density City Directory Grid */ 3904 .hub-cities-grid { 3905 width: 100%; 3906 display: grid; 3907 grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); 3908 gap: 6px; 3909 } 3910 3911 .hub-city-card { 3912 background: rgba(255, 255, 255, 0.035); 3913 border: 1px solid rgba(255, 255, 255, 0.07); 3914 border-radius: 8px; 3915 padding: 6px 10px; 3916 display: flex; 3917 flex-direction: row; 3918 align-items: center; 3919 justify-content: space-between; 3920 gap: 6px; 3921 text-decoration: none !important; 3922 transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1); 3923 position: relative; 3924 overflow: hidden; 3925 min-height: 35px; 3926 height: 35px; 3927 box-sizing: border-box; 3928 } 3929 3930 body:not(.dark) .hub-city-card { 3931 background: #ffffff; 3932 border-color: #e2e8f0; 3933 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03); 3934 } 3935 3936 .hub-city-card:hover { 3937 transform: translateY(-1.5px); 3938 background: rgba(147, 51, 234, 0.16); 3939 border-color: rgba(192, 132, 252, 0.6); 3940 box-shadow: 0 4px 14px rgba(147, 51, 234, 0.25); 3941 } 3942 3943 body:not(.dark) .hub-city-card:hover { 3944 background: #fdf4ff; 3945 border-color: #d8b4fe; 3946 box-shadow: 0 4px 12px rgba(147, 51, 234, 0.12); 3947 } 3948 3949 /* VIP City Highlight (Jaipur, Surat, Mumbai, etc.) */ 3950 .hub-city-card.vip-city { 3951 border-color: rgba(236, 72, 153, 0.4); 3952 background: linear-gradient(135deg, rgba(236, 72, 153, 0.09), rgba(147, 51, 234, 0.09)); 3953 } 3954 3955 .hub-city-card.vip-city::before { 3956 content: ''; 3957 position: absolute; 3958 top: 0; 3959 left: 0; 3960 right: 0; 3961 height: 2px; 3962 background: linear-gradient(90deg, #ec4899, #a855f7); 3963 } 3964 3965 .city-card-header { 3966 display: flex; 3967 align-items: center; 3968 gap: 5px; 3969 margin-bottom: 0; 3970 min-width: 0; 3971 overflow: hidden; 3972 } 3973 3974 .city-card-name { 3975 font-size: 11.5px; 3976 font-weight: 700; 3977 color: #ffffff; 3978 display: flex; 3979 align-items: center; 3980 gap: 5px; 3981 white-space: nowrap; 3982 overflow: hidden; 3983 text-overflow: ellipsis; 3984 } 3985 3986 body:not(.dark) .city-card-name { 3987 color: #0f172a; 3988 } 3989 3990 .city-card-badge { 3991 font-size: 8px; 3992 font-weight: 750; 3993 padding: 1.5px 5px; 3994 border-radius: 4px; 3995 background: rgba(236, 72, 153, 0.2); 3996 color: #f472b6; 3997 text-transform: uppercase; 3998 white-space: nowrap; 3999 line-height: 1.2; 4000 } 4001 4002 body:not(.dark) .city-card-badge { 4003 background: #fce7f3; 4004 color: #be185d; 4005 } 4006 4007 .city-card-sub-tag { 4008 font-size: 9px; 4009 font-weight: 600; 4010 color: rgba(255, 255, 255, 0.45); 4011 background: rgba(255, 255, 255, 0.05); 4012 padding: 1px 4px; 4013 border-radius: 3px; 4014 letter-spacing: 0.3px; 4015 white-space: nowrap; 4016 } 4017 4018 body:not(.dark) .city-card-sub-tag { 4019 color: #64748b; 4020 background: #f1f5f9; 4021 } 4022 4023 .city-card-sub { 4024 display: flex; 4025 align-items: center; 4026 gap: 4px; 4027 margin-top: 0; 4028 flex-shrink: 0; 4029 } 4030 4031 .city-card-arrow { 4032 color: #c084fc; 4033 font-size: 9.5px; 4034 opacity: 0.5; 4035 transition: transform 0.2s ease, opacity 0.2s ease; 4036 } 4037 4038 .hub-city-card:hover .city-card-arrow { 4039 opacity: 1; 4040 transform: translateX(3px); 4041 } 4042 4043 @media (max-width: 768px) { 4044 .hub-cities-grid { 4045 grid-template-columns: repeat(2, 1fr); 4046 max-height: 280px; 4047 overflow-y: auto; 4048 padding-right: 4px; 4049 } 4050 .hub-cities-grid::-webkit-scrollbar {
4051 width: 4px; 4052 } 4053 .hub-cities-grid::-webkit-scrollbar-thumb { 4054 background: rgba(147, 51, 234, 0.4); 4055 border-radius: 4px; 4056 } 4057 } 4058</style> 4059 4060<!-- ======================= Footer Section =================== --> 4061<footer class="footer"> 4062 <div class="container"> 4063 <div class="footer-grid"> 4064 4065 <!-- Column 1: Brand & Social --> 4066 <div class="footer-col"> 4067 <img src="https://www.gymsmart.in/images/gym-logo1.webp" class="footer-logo" alt="GymSmart - Best Gym Management Software in India" width="150" height="50" loading="lazy" decoding="async"> 4068 <p>GymSmart is the Complete Operating System & Gym ERP built for commercial gyms, CrossFit boxes, and fitness clubs to eliminate fee leakage and scale seamlessly.</p> 4069 4070 <!-- Contact Micro-info --> 4071 <div class="footer-contact-info"> 4072 <div class="footer-contact-item"> 4073 <i class="fa-solid fa-envelope footer-contact-ico"></i> 4074 <a href="mailto:[email protected]" class="footer-contact-link">[email protected]</a> 4075 </div> 4076 <div class="footer-contact-item"> 4077 <i class="fa-solid fa-phone footer-contact-ico"></i> 4078 <a href="tel:+918347977566" class="footer-contact-link">+91 83479 77566</a> 4079 </div> 4080 </div> 4081 4082 <!-- Social Media Links --> 4083 <div class="social-icons"> 4084 <a href="https://www.youtube.com/@gymsmart-erp" target="_blank" rel="noopener noreferrer" aria-label="GymSmart YouTube Channel"> 4085 <i class="fab fa-youtube"></i> 4086 </a> 4087 <a href="https://www.facebook.com/gymsmarterp/" target="_blank" rel="noopener noreferrer" aria-label="GymSmart Facebook Page"> 4088 <i class="fab fa-facebook-f"></i> 4089 </a> 4090 <a href="https://www.instagram.com/gymsmarterp/" target="_blank" rel="noopener noreferrer" aria-label="GymSmart Instagram Profile"> 4091 <i class="fab fa-instagram"></i> 4092 </a> 4093 </div> 4094 </div> 4095 4096 <!-- Column 2: Product & Modules --> 4097 <div class="footer-col"> 4098 <h4>Product</h4> 4099 <ul> 4100 <li><a href="https://www.gymsmart.in/owner-command-center">Owner Command Center</a></li> 4101 <li><a href="https://www.gymsmart.in/features">Core Features</a></li> 4102 <li><a href="https://www.gymsmart.in/ecosystem">Gym Ecosystem</a></li> 4103 <li><a href="https://www.gymsmart.in/#targetFitnessCenters">Supported Gyms</a></li> 4104 <li><a href="https://www.gymsmart.in/pricing">Pricing Plans</a></li> 4105 <li><a href="https://www.gymsmart.in/#faqSection">FAQs</a></li> 4106 </ul> 4107 </div> 4108 4109 <!-- Column 3: Company & Legal --> 4110 <div class="footer-col"> 4111 <h4>Company</h4> 4112 <ul> 4113 <li><a href="https://www.gymsmart.in/about-us">About Us</a></li> 4114 <li><a href="https://www.gymsmart.in/career">Careers</a></li> 4115 <li><a href="https://www.gymsmart.in/contact">Contact Support</a></li> 4116 <li><a href="https://www.gymsmart.in/blog">Fitness Blog</a></li> 4117 <li><a href="https://www.gymsmart.in/privacy-policy">Privacy Policy</a></li> 4118 <li><a href="https://www.gymsmart.in/terms-conditions">Terms & Conditions</a></li> 4119 <li><a href="https://www.gymsmart.in/refund">Refund Policy</a></li> 4120 </ul> 4121 </div> 4122 4123 <!-- Column 4: Staff & Admin App Access --> 4124 <div class="footer-col"> 4125 <h4>Staff & Admin Apps</h4> 4126 <p style="font-size: 12.5px; margin-bottom: 12px;">Access your gym operations from anywhere on web or mobile:</p> 4127 <div class="d-flex flex-column gap-2"> 4128 <a href="https://erp.gymsmart.in" target="_blank" rel="noopener noreferrer" class="footer-app-btn"> 4129 <i class="fa-solid fa-globe footer-app-ico app-ico-erp"></i> 4130 <div class="footer-app-meta"> 4131 <small>Cloud Web ERP</small> 4132 <strong>erp.gymsmart.in</strong> 4133 </div> 4134 </a> 4135 <a href="https://apps.apple.com/in/app/gymsmart-pro/id6740852378" target="_blank" rel="noopener noreferrer" class="footer-app-btn"> 4136 <i class="fa-brands fa-apple footer-app-ico app-ico-apple"></i> 4137 <div class="footer-app-meta"> 4138 <small>Download on</small> 4139 <strong>Apple App Store</strong> 4140 </div> 4141 </a> 4142 <a href="https://play.google.com/store/apps/details?id=com.ajasys.gymsmart" target="_blank" rel="noopener noreferrer" class="footer-app-btn"> 4143 <i class="fa-brands fa-google-play footer-app-ico app-ico-play"></i> 4144 <div class="footer-app-meta"> 4145 <small>Get it on</small> 4146 <strong>Google Play Store</strong> 4147 </div> 4148 </a> 4149 </div> 4150 </div> 4151 4152 </div> 4153 4154 <!-- ========== Interactive India Geo Network & Map Hub (High PageRank & GA4 Event Tracking) ========== --> 4155 <div class="footer-locations-hub"> 4156 <div class="hub-header-wrap"> 4157 <div> 4158 <div class="hub-badge">
4159 <span class="hub-badge-pulse"></span> Live Operational Network · 771+ Cities Connected 4160 </div> 4161 <h3 class="hub-title-main"> 4162 <i class="fa-solid fa-map-location-dot" style="color: #c084fc;"></i> Interactive Pan-India Gym ERP Network & City Hubs 4163 </h3> 4164 <p class="hub-subtitle"> 4165 Select any city or radar pin to inspect regional hardware sync, turnstiles & local WhatsApp billing. 4166 </p> 4167 </div> 4168 </div> 4169 4170 <!-- Main 3D Interactive India Radar Map Showcase --> 4171 <div class="geo-radar-box"> 4172 <div class="radar-top-bar"> 4173 <span><i class="fa-solid fa-satellite-dish fa-spin me-1.5" style="--fa-animation-duration: 6s; color: #ec4899;"></i> 360° Active Geo Radar Vision</span> 4174 <span style="color: #10b981; font-weight: 750;"><i class="fa-solid fa-circle fa-beat" style="font-size: 7px; margin-right: 5px;"></i> 771 Trigger Points Synced</span> 4175 </div> 4176 4177 <!-- 3D Interactive India Map Canvas with Clickable 3D Location Marker Pins --> 4178 <div class="map-3d-canvas-wrap" id="map3dCanvas"> 4179 4180 <!-- 360-Degree Active Radar Scanner Grid (Static Coordinates) --> 4181 <div class="radar-360-scanner" aria-hidden="true"> 4182 <div class="radar-360-grid-rings"></div> 4183 <div class="radar-360-crosshairs"></div> 4184 </div> 4185 4186 <!-- Reusable 3D Pin SVG Gradients and Filters --> 4187 <svg style="position: absolute; width: 0; height: 0; overflow: hidden;" aria-hidden="true"> 4188 <defs> 4189 <!-- Standard Red 3D Pin (Matches User Reference Image) --> 4190 <radialGradient id="pinRed3D" cx="35%" cy="30%" r="70%"> 4191 <stop offset="0%" stop-color="#ff6b6b"/> 4192 <stop offset="55%" stop-color="#dc2626"/> 4193 <stop offset="100%" stop-color="#7f1d1d"/> 4194 </radialGradient> 4195 <!-- VIP Jaipur 3D Pin (Pink/Rose Glow) --> 4196 <radialGradient id="pinVip3D" cx="35%" cy="30%" r="70%"> 4197 <stop offset="0%" stop-color="#f472b6"/> 4198 <stop offset="55%" stop-color="#e11d48"/> 4199 <stop offset="100%" stop-color="#881337"/> 4200 </radialGradient> 4201 <!-- Surat HQ 3D Pin (Emerald) --> 4202 <radialGradient id="pinHq3D" cx="35%" cy="30%" r="70%"> 4203 <stop offset="0%" stop-color="#34d399"/> 4204 <stop offset="55%" stop-color="#059669"/> 4205 <stop offset="100%" stop-color="#064e3b"/> 4206 </radialGradient> 4207 <filter id="pin3DShadow" x="-30%" y="-30%" width="160%" height="160%"> 4208 <feDropShadow dx="0" dy="2.5" stdDeviation="2" flood-color="rgba(0,0,0,0.7)"/> 4209 </filter> 4210 </defs> 4211 </svg> 4212 4213 <!-- 1. JAIPUR (VIP FLAGSHIP) --> 4214 <a href="https://www.gymsmart.in/gym-management-software/rajasthan/jaipur" class="geo-3d-pin vip-jaipur active" style="top: 35.5%; left: 34.5%;" data-city="Jaipur" data-state="Rajasthan" data-tier="Flagship Hub" data-desc="Automated turnstiles, 0% UPI WhatsApp billing & zero revenue leakage." title="Gym Management Software in Jaipur"> 4215 <span class="pin-trigger-dot" style="box-shadow: 0 0 8px #ec4899, 0 0 16px #ec4899;"></span>
4216 <span class="pin-360-sonar-wave" style="border-color: #ec4899;"></span> 4217 <span class="pin-360-reticle"></span> 4218 <div class="pin-marker-3d"> 4219 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4220 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinVip3D)" filter="url(#pin3DShadow)"/> 4221 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4222 <circle cx="12" cy="11" r="2.8" fill="#881337"/> 4223 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4224 </svg> 4225 </div> 4226 <div class="pin-label-tag"><span>â JAIPUR</span></div> 4227 </a> 4228 4229 <!-- 2. SURAT (HQ) --> 4230 <a href="https://www.gymsmart.in/gym-management-software/gujarat/surat" class="geo-3d-pin hq-surat" style="top: 52.5%; left: 29.0%;" data-city="Surat" data-state="Gujarat" data-tier="National HQ" data-desc="GymSmart headquarters with 500+ deployed biometric turnstiles." title="Gym Management Software in Surat"> 4231 <span class="pin-trigger-dot" style="box-shadow: 0 0 8px #10b981, 0 0 16px #10b981;"></span> 4232 <span class="pin-360-sonar-wave" style="border-color: #10b981;"></span> 4233 <span class="pin-360-reticle" style="border-color: #10b981;"></span> 4234 <div class="pin-marker-3d"> 4235 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4236 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinHq3D)" filter="url(#pin3DShadow)"/> 4237 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4238 <circle cx="12" cy="11" r="2.8" fill="#064e3b"/> 4239 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4240 </svg> 4241 </div> 4242 <div class="pin-label-tag"><span>ð¢ SURAT (HQ)</span></div> 4243 </a> 4244 4245 <!-- 3. AHMEDABAD --> 4246 <a href="https://www.gymsmart.in/gym-management-software/gujarat/ahmedabad" class="geo-3d-pin" style="top: 45.5%; left: 26.5%;" data-city="Ahmedabad" data-state="Gujarat" data-tier="Tier-1 Metro" data-desc="High-volume commercial gyms with WhatsApp fee collection." title="Gym Management Software in Ahmedabad"> 4247 <span class="pin-trigger-dot"></span> 4248 <span class="pin-360-sonar-wave"></span> 4249 <span class="pin-360-reticle"></span> 4250 <div class="pin-marker-3d"> 4251 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4252 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4253 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4254 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4255 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4256 </svg> 4257 </div> 4258 <div class="pin-label-tag"><span>AHMEDABAD</span></div> 4259 </a> 4260 4261 <!-- 4. VADODARA --> 4262 <a href="https://www.gymsmart.in/gym-management-software/gujarat/vadodara" class="geo-3d-pin" style="top: 48.5%; left: 28.5%;" data-city="Vadodara" data-state="Gujarat" data-tier="Prime Hub" data-desc="Turnstiles and biometric access control." title="Gym Management Software in Vadodara">
4263 <span class="pin-trigger-dot"></span> 4264 <span class="pin-360-sonar-wave"></span> 4265 <span class="pin-360-reticle"></span> 4266 <div class="pin-marker-3d"> 4267 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4268 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4269 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4270 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4271 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4272 </svg> 4273 </div> 4274 <div class="pin-label-tag"><span>VADODARA</span></div> 4275 </a> 4276 4277 <!-- 5. RAJKOT (TAG LEFT FOR PERFECT CLEARANCE) --> 4278 <a href="https://www.gymsmart.in/gym-management-software/gujarat/rajkot" class="geo-3d-pin tag-left" style="top: 49.0%; left: 21.5%;" data-city="Rajkot" data-state="Gujarat" data-tier="Saurashtra Hub" data-desc="Automated member apps and WhatsApp invoicing." title="Gym Management Software in Rajkot"> 4279 <span class="pin-trigger-dot"></span> 4280 <span class="pin-360-sonar-wave"></span> 4281 <span class="pin-360-reticle"></span> 4282 <div class="pin-marker-3d"> 4283 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4284 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4285 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4286 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4287 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4288 </svg> 4289 </div> 4290 <div class="pin-label-tag"><span>RAJKOT</span></div> 4291 </a> 4292 4293 <!-- 6. MUMBAI --> 4294 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/mumbai" class="geo-3d-pin" style="top: 59.0%; left: 29.5%;" data-city="Mumbai" data-state="Maharashtra" data-tier="Tier-1 Metro" data-desc="Multi-branch gym chains & luxury CrossFit studios." title="Gym Management Software in Mumbai"> 4295 <span class="pin-trigger-dot"></span> 4296 <span class="pin-360-sonar-wave"></span> 4297 <span class="pin-360-reticle"></span> 4298 <div class="pin-marker-3d"> 4299 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4300 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4301 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4302 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4303 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4304 </svg> 4305 </div> 4306 <div class="pin-label-tag"><span>MUMBAI</span></div> 4307 </a> 4308 4309 <!-- 7. PUNE / PIMPRI-CHINCHWAD --> 4310 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/pune" class="geo-3d-pin" style="top: 61.5%; left: 32.5%;" data-city="Pune" data-state="Maharashtra" data-tier="Tier-1 Hub" data-desc="Fast-scaling fitness centers & personal training payroll." title="Gym Management Software in Pune & Pimpri-Chinchwad">
4311 <span class="pin-trigger-dot"></span> 4312 <span class="pin-360-sonar-wave"></span> 4313 <span class="pin-360-reticle"></span> 4314 <div class="pin-marker-3d"> 4315 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4316 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4317 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4318 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4319 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4320 </svg> 4321 </div> 4322 <div class="pin-label-tag"><span>PUNE / PIMPRI</span></div> 4323 </a> 4324 4325 <!-- 8. GURGAON / DELHI NCR --> 4326 <a href="https://www.gymsmart.in/gym-management-software/haryana/gurgaon" class="geo-3d-pin" style="top: 29.5%; left: 36.5%;" data-city="Gurgaon" data-state="Haryana" data-tier="Tier-1 Cyber Hub" data-desc="Extensive turnstile gate network across Gurgaon & Delhi NCR." title="Gym Management Software in Gurgaon"> 4327 <span class="pin-trigger-dot"></span> 4328 <span class="pin-360-sonar-wave"></span> 4329 <span class="pin-360-reticle"></span> 4330 <div class="pin-marker-3d"> 4331 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4332 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4333 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4334 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4335 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4336 </svg> 4337 </div> 4338 <div class="pin-label-tag"><span>GURGAON</span></div> 4339 </a> 4340 4341 <!-- 9. CHANDIGARH --> 4342 <a href="https://www.gymsmart.in/gym-management-software/chandigarh/chandigarh" class="geo-3d-pin" style="top: 23.0%; left: 35.5%;" data-city="Chandigarh" data-state="Chandigarh" data-tier="North Hub" data-desc="Premier fitness clubs with automated member apps." title="Gym Management Software in Chandigarh"> 4343 <span class="pin-trigger-dot"></span> 4344 <span class="pin-360-sonar-wave"></span> 4345 <span class="pin-360-reticle"></span> 4346 <div class="pin-marker-3d"> 4347 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4348 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4349 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4350 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4351 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4352 </svg> 4353 </div> 4354 <div class="pin-label-tag"><span>CHANDIGARH</span></div> 4355 </a> 4356 4357 <!-- 10. LUCKNOW --> 4358 <a href="https://www.gymsmart.in/gym-management-software/uttar-pradesh/lucknow" class="geo-3d-pin" style="top: 35.5%; left: 48.5%;" data-city="Lucknow" data-state="Uttar Pradesh" data-tier="UP Capital" data-desc="Biometric attendance and trainer commissions." title="Gym Management Software in Lucknow">
4359 <span class="pin-trigger-dot"></span> 4360 <span class="pin-360-sonar-wave"></span> 4361 <span class="pin-360-reticle"></span> 4362 <div class="pin-marker-3d"> 4363 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4364 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4365 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4366 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4367 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4368 </svg> 4369 </div> 4370 <div class="pin-label-tag"><span>LUCKNOW</span></div> 4371 </a> 4372 4373 <!-- 11. INDORE --> 4374 <a href="https://www.gymsmart.in/gym-management-software/madhya-pradesh/indore" class="geo-3d-pin" style="top: 47.5%; left: 36.5%;" data-city="Indore" data-state="Madhya Pradesh" data-tier="Central Hub" data-desc="Fastest growing fitness hub in Central India." title="Gym Management Software in Indore"> 4375 <span class="pin-trigger-dot"></span> 4376 <span class="pin-360-sonar-wave"></span> 4377 <span class="pin-360-reticle"></span> 4378 <div class="pin-marker-3d"> 4379 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4380 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4381 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4382 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4383 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4384 </svg> 4385 </div> 4386 <div class="pin-label-tag"><span>INDORE</span></div> 4387 </a> 4388 4389 <!-- 12. NAGPUR --> 4390 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/nagpur" class="geo-3d-pin" style="top: 52.5%; left: 45.5%;" data-city="Nagpur" data-state="Maharashtra" data-tier="Central Hub" data-desc="Gym turnstile gates & WhatsApp fee alerts." title="Gym Management Software in Nagpur"> 4391 <span class="pin-trigger-dot"></span> 4392 <span class="pin-360-sonar-wave"></span> 4393 <span class="pin-360-reticle"></span> 4394 <div class="pin-marker-3d"> 4395 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4396 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4397 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4398 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4399 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4400 </svg> 4401 </div> 4402 <div class="pin-label-tag"><span>NAGPUR</span></div> 4403 </a> 4404 4405 <!-- 13. BANGALORE --> 4406 <a href="https://www.gymsmart.in/gym-management-software/karnataka/bangalore" class="geo-3d-pin" style="top: 73.0%; left: 37.5%;" data-city="Bangalore" data-state="Karnataka" data-tier="Tier-1 Silicon Hub" data-desc="Tech-enabled 24/7 unmanned smart gyms & studios." title="Gym Management Software in Bangalore"> 4407 <span class="pin-trigger-dot"></span>
4408 <span class="pin-360-sonar-wave"></span> 4409 <span class="pin-360-reticle"></span> 4410 <div class="pin-marker-3d"> 4411 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4412 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4413 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4414 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4415 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4416 </svg> 4417 </div> 4418 <div class="pin-label-tag"><span>BANGALORE</span></div> 4419 </a> 4420 4421 <!-- 14. HYDERABAD --> 4422 <a href="https://www.gymsmart.in/gym-management-software/telangana/hyderabad" class="geo-3d-pin" style="top: 63.0%; left: 42.5%;" data-city="Hyderabad" data-state="Telangana" data-tier="Tier-1 Metro" data-desc="Commercial gym ERP with biometric attendance sync." title="Gym Management Software in Hyderabad"> 4423 <span class="pin-trigger-dot"></span> 4424 <span class="pin-360-sonar-wave"></span> 4425 <span class="pin-360-reticle"></span> 4426 <div class="pin-marker-3d"> 4427 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4428 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4429 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4430 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4431 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4432 </svg> 4433 </div> 4434 <div class="pin-label-tag"><span>HYDERABAD</span></div> 4435 </a> 4436 4437 <!-- 15. CHENNAI --> 4438 <a href="https://www.gymsmart.in/gym-management-software/tamil-nadu/chennai" class="geo-3d-pin" style="top: 74.0%; left: 44.5%;" data-city="Chennai" data-state="Tamil Nadu" data-tier="Tier-1 Metro" data-desc="Automated GST billing, membership POS & mobile apps." title="Gym Management Software in Chennai"> 4439 <span class="pin-trigger-dot"></span> 4440 <span class="pin-360-sonar-wave"></span> 4441 <span class="pin-360-reticle"></span> 4442 <div class="pin-marker-3d"> 4443 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4444 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4445 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4446 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4447 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4448 </svg> 4449 </div> 4450 <div class="pin-label-tag"><span>CHENNAI</span></div> 4451 </a> 4452 4453 <!-- 16. KOLKATA --> 4454 <a href="https://www.gymsmart.in/gym-management-software/west-bengal/kolkata" class="geo-3d-pin" style="top: 45.5%; left: 64.5%;" data-city="Kolkata" data-state="West Bengal" data-tier="East Metro" data-desc="Turnstile gate attendance & WhatsApp renewals." title="Gym Management Software in Kolkata"> 4455 <span class="pin-trigger-dot"></span> 4456 <span class="pin-360-sonar-wave"></span>
4457 <span class="pin-360-reticle"></span> 4458 <div class="pin-marker-3d"> 4459 <svg viewBox="0 0 24 32" class="pin-svg-3d"> 4460 <path d="M12 0 C5.37 0 0 5.37 0 12 C0 21 12 32 12 32 C12 32 24 21 24 12 C24 5.37 18.63 0 12 0 Z" fill="url(#pinRed3D)" filter="url(#pin3DShadow)"/> 4461 <circle cx="12" cy="11" r="5" fill="#ffffff"/> 4462 <circle cx="12" cy="11" r="2.8" fill="#0f172a"/> 4463 <circle cx="10.8" cy="9.8" r="1.1" fill="#ffffff" opacity="0.9"/> 4464 </svg> 4465 </div> 4466 <div class="pin-label-tag"><span>KOLKATA</span></div> 4467 </a> 4468 4469 </div> 4470 </div> 4471 4472 <!-- Bottom: Full-Width Regional Matrix Tabs & Filterable City Button Boxes --> 4473 <div class="geo-matrix-panel"> 4474 <!-- Filter Tabs --> 4475 <div class="hub-filter-tabs"> 4476 <button type="button" class="hub-tab-btn active" data-filter="all"> 4477 <i class="fa-solid fa-fire text-warning"></i> All Hubs 4478 </button> 4479 <button type="button" class="hub-tab-btn" data-filter="rajasthan"> 4480 <i class="fa-solid fa-star text-pink-400" style="color: #ec4899;"></i> Rajasthan 4481 </button> 4482 <button type="button" class="hub-tab-btn" data-filter="gujarat"> 4483 <i class="fa-solid fa-building" style="color: #10b981;"></i> Gujarat (HQ) 4484 </button> 4485 <button type="button" class="hub-tab-btn" data-filter="maharashtra"> 4486 <i class="fa-solid fa-city" style="color: #38bdf8;"></i> Maharashtra 4487 </button> 4488 <button type="button" class="hub-tab-btn" data-filter="north"> 4489 <i class="fa-solid fa-compass" style="color: #f59e0b;"></i> Delhi & North 4490 </button> 4491 <button type="button" class="hub-tab-btn" data-filter="south"> 4492 <i class="fa-solid fa-location-arrow" style="color: #c084fc;"></i> South India 4493 </button> 4494 <button type="button" class="hub-tab-btn" data-filter="central-east"> 4495 <i class="fa-solid fa-globe" style="color: #60a5fa;"></i> Central & East 4496 </button> 4497 <button type="button" class="hub-tab-btn" data-filter="solutions"> 4498 <i class="fa-solid fa-layer-group" style="color: #38bdf8;"></i> Specialized ERP 4499 </button> 4500 </div> 4501 4502 <!-- Filterable Cities Grid --> 4503 <div class="hub-cities-grid" id="hubCitiesGrid"> 4504 4505 <!-- 1. JAIPUR (VIP FLAGSHIP) --> 4506 <a href="https://www.gymsmart.in/gym-management-software/rajasthan/jaipur" class="hub-city-card vip-city" data-region="rajasthan" data-city="Jaipur" data-state="Rajasthan" title="Gym Management Software in Jaipur, Rajasthan"> 4507 <div class="city-card-header"> 4508 <span class="city-card-name"><i class="fa-solid fa-star text-warning"></i> Jaipur</span> 4509 </div> 4510 <div class="city-card-sub"> 4511 <span class="city-card-badge">â Hub</span> 4512 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4513 </div> 4514 </a> 4515 4516 <!-- 2. SURAT HQ --> 4517 <a href="https://www.gymsmart.in/gym-management-software/gujarat/surat" class="hub-city-card vip-city" data-region="gujarat" data-city="Surat" data-state="Gujarat" title="Gym Management Software in Surat, Gujarat"> 4518 <div class="city-card-header">
4519 <span class="city-card-name"><i class="fa-solid fa-building-flag" style="color: #10b981;"></i> Surat</span> 4520 </div> 4521 <div class="city-card-sub"> 4522 <span class="city-card-badge" style="background: rgba(16,185,129,0.2); color: #34d399;">ð¢ HQ</span> 4523 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4524 </div> 4525 </a> 4526 4527 <!-- 3. AHMEDABAD --> 4528 <a href="https://www.gymsmart.in/gym-management-software/gujarat/ahmedabad" class="hub-city-card" data-region="gujarat" data-city="Ahmedabad" data-state="Gujarat" title="Gym Management Software in Ahmedabad, Gujarat"> 4529 <div class="city-card-header"> 4530 <span class="city-card-name">Ahmedabad</span> 4531 </div> 4532 <div class="city-card-sub"> 4533 <span class="city-card-badge" style="background: rgba(147,51,234,0.15); color: #c084fc;">Metro</span> 4534 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4535 </div> 4536 </a> 4537 4538 <!-- 4. MUMBAI --> 4539 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/mumbai" class="hub-city-card vip-city" data-region="maharashtra" data-city="Mumbai" data-state="Maharashtra" title="Gym Management Software in Mumbai, Maharashtra"> 4540 <div class="city-card-header"> 4541 <span class="city-card-name">Mumbai</span> 4542 </div> 4543 <div class="city-card-sub"> 4544 <span class="city-card-badge" style="background: rgba(56,189,248,0.2); color: #38bdf8;">ð¥ Metro</span> 4545 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4546 </div> 4547 </a> 4548 4549 <!-- 5. PUNE --> 4550 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/pune" class="hub-city-card" data-region="maharashtra" data-city="Pune" data-state="Maharashtra" title="Gym Management Software in Pune, Maharashtra"> 4551 <div class="city-card-header"> 4552 <span class="city-card-name">Pune</span> 4553 </div> 4554 <div class="city-card-sub"> 4555 <span class="city-card-badge" style="background: rgba(192,132,252,0.2); color: #c084fc;">Hub</span> 4556 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4557 </div> 4558 </a> 4559 4560 <!-- 6. DELHI --> 4561 <a href="https://www.gymsmart.in/gym-management-software/delhi/delhi" class="hub-city-card vip-city" data-region="north" data-city="Delhi" data-state="Delhi" title="Gym Management Software in Delhi NCR"> 4562 <div class="city-card-header"> 4563 <span class="city-card-name">Delhi NCR</span> 4564 </div> 4565 <div class="city-card-sub"> 4566 <span class="city-card-badge" style="background: rgba(245,158,11,0.2); color: #fbbf24;">Capital</span> 4567 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4568 </div> 4569 </a> 4570 4571 <!-- 7. BANGALORE --> 4572 <a href="https://www.gymsmart.in/gym-management-software/karnataka/bangalore" class="hub-city-card vip-city" data-region="south" data-city="Bangalore" data-state="Karnataka" title="Gym Management Software in Bangalore, Karnataka"> 4573 <div class="city-card-header">
4574 <span class="city-card-name">Bangalore</span> 4575 </div> 4576 <div class="city-card-sub"> 4577 <span class="city-card-badge" style="background: rgba(56,189,248,0.2); color: #38bdf8;">â¡ Tech</span> 4578 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4579 </div> 4580 </a> 4581 4582 <!-- 8. HYDERABAD --> 4583 <a href="https://www.gymsmart.in/gym-management-software/telangana/hyderabad" class="hub-city-card" data-region="south" data-city="Hyderabad" data-state="Telangana" title="Gym Management Software in Hyderabad, Telangana"> 4584 <div class="city-card-header"> 4585 <span class="city-card-name">Hyderabad</span> 4586 </div> 4587 <div class="city-card-sub"> 4588 <span class="city-card-badge" style="background: rgba(192,132,252,0.2); color: #c084fc;">Metro</span> 4589 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4590 </div> 4591 </a> 4592 4593 <!-- 9. CHENNAI --> 4594 <a href="https://www.gymsmart.in/gym-management-software/tamil-nadu/chennai" class="hub-city-card" data-region="south" data-city="Chennai" data-state="Tamil Nadu" title="Gym Management Software in Chennai, Tamil Nadu"> 4595 <div class="city-card-header"> 4596 <span class="city-card-name">Chennai</span> 4597 </div> 4598 <div class="city-card-sub"> 4599 <span class="city-card-badge">Metro</span> 4600 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4601 </div> 4602 </a> 4603 4604 <!-- 10. INDORE --> 4605 <a href="https://www.gymsmart.in/gym-management-software/madhya-pradesh/indore" class="hub-city-card" data-region="central-east" data-city="Indore" data-state="Madhya Pradesh" title="Gym Management Software in Indore, Madhya Pradesh"> 4606 <div class="city-card-header"> 4607 <span class="city-card-name">Indore</span> 4608 </div> 4609 <div class="city-card-sub"> 4610 <span class="city-card-badge" style="background: rgba(236,72,153,0.2); color: #f472b6;">Hub</span> 4611 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4612 </div> 4613 </a> 4614 4615 <!-- 11. CHANDIGARH --> 4616 <a href="https://www.gymsmart.in/gym-management-software/chandigarh/chandigarh" class="hub-city-card" data-region="north" data-city="Chandigarh" data-state="Chandigarh" title="Gym Management Software in Chandigarh"> 4617 <div class="city-card-header"> 4618 <span class="city-card-name">Chandigarh</span> 4619 </div> 4620 <div class="city-card-sub"> 4621 <span class="city-card-badge">North</span> 4622 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4623 </div> 4624 </a> 4625 4626 <!-- 12. KOLKATA --> 4627 <a href="https://www.gymsmart.in/gym-management-software/west-bengal/kolkata" class="hub-city-card" data-region="central-east" data-city="Kolkata" data-state="West Bengal" title="Gym Management Software in Kolkata, West Bengal"> 4628 <div class="city-card-header"> 4629 <span class="city-card-name">Kolkata</span> 4630 </div> 4631 <div class="city-card-sub">
4632 <span class="city-card-badge">East</span> 4633 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4634 </div> 4635 </a> 4636 4637 <!-- RAJASTHAN EXTRA --> 4638 <a href="https://www.gymsmart.in/gym-management-software/rajasthan/jodhpur" class="hub-city-card" data-region="rajasthan" data-city="Jodhpur" data-state="Rajasthan" title="Gym Management Software in Jodhpur, Rajasthan"> 4639 <div class="city-card-header"><span class="city-card-name">Jodhpur</span></div> 4640 <div class="city-card-sub"><span class="city-card-sub-tag">RJ</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4641 </a> 4642 <a href="https://www.gymsmart.in/gym-management-software/rajasthan/udaipur" class="hub-city-card" data-region="rajasthan" data-city="Udaipur" data-state="Rajasthan" title="Gym Management Software in Udaipur, Rajasthan"> 4643 <div class="city-card-header"><span class="city-card-name">Udaipur</span></div> 4644 <div class="city-card-sub"><span class="city-card-sub-tag">RJ</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4645 </a> 4646 <a href="https://www.gymsmart.in/gym-management-software/rajasthan/kota" class="hub-city-card" data-region="rajasthan" data-city="Kota" data-state="Rajasthan" title="Gym Management Software in Kota, Rajasthan"> 4647 <div class="city-card-header"><span class="city-card-name">Kota</span></div> 4648 <div class="city-card-sub"><span class="city-card-sub-tag">RJ</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4649 </a> 4650 4651 <!-- GUJARAT EXTRA --> 4652 <a href="https://www.gymsmart.in/gym-management-software/gujarat/vadodara" class="hub-city-card" data-region="gujarat" data-city="Vadodara" data-state="Gujarat" title="Gym Management Software in Vadodara, Gujarat"> 4653 <div class="city-card-header"><span class="city-card-name">Vadodara</span></div> 4654 <div class="city-card-sub"><span class="city-card-sub-tag">GJ</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4655 </a> 4656 <a href="https://www.gymsmart.in/gym-management-software/gujarat/rajkot" class="hub-city-card" data-region="gujarat" data-city="Rajkot" data-state="Gujarat" title="Gym Management Software in Rajkot, Gujarat"> 4657 <div class="city-card-header"><span class="city-card-name">Rajkot</span></div> 4658 <div class="city-card-sub"><span class="city-card-sub-tag">GJ</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4659 </a> 4660 4661 <!-- MAHARASHTRA EXTRA --> 4662 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/nagpur" class="hub-city-card" data-region="maharashtra" data-city="Nagpur" data-state="Maharashtra" title="Gym Management Software in Nagpur, Maharashtra"> 4663 <div class="city-card-header"><span class="city-card-name">Nagpur</span></div> 4664 <div class="city-card-sub"><span class="city-card-sub-tag">MH</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4665 </a> 4666 <a href="https://www.gymsmart.in/gym-management-software/maharashtra/nashik" class="hub-city-card" data-region="maharashtra" data-city="Nashik" data-state="Maharashtra" title="Gym Management Software in Nashik, Maharashtra"> 4667 <div class="city-card-header"><span class="city-card-name">Nashik</span></div> 4668 <div class="city-card-sub"><span class="city-card-sub-tag">MH</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4669 </a> 4670
4671 <!-- NORTH EXTRA --> 4672 <a href="https://www.gymsmart.in/gym-management-software/uttar-pradesh/noida" class="hub-city-card" data-region="north" data-city="Noida" data-state="Uttar Pradesh" title="Gym Management Software in Noida, Delhi NCR"> 4673 <div class="city-card-header"><span class="city-card-name">Noida</span></div> 4674 <div class="city-card-sub"><span class="city-card-sub-tag">NCR</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4675 </a> 4676 <a href="https://www.gymsmart.in/gym-management-software/haryana/gurgaon" class="hub-city-card" data-region="north" data-city="Gurgaon" data-state="Haryana" title="Gym Management Software in Gurgaon, Delhi NCR"> 4677 <div class="city-card-header"><span class="city-card-name">Gurgaon</span></div> 4678 <div class="city-card-sub"><span class="city-card-sub-tag">NCR</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4679 </a> 4680 <a href="https://www.gymsmart.in/gym-management-software/uttar-pradesh/lucknow" class="hub-city-card" data-region="north" data-city="Lucknow" data-state="Uttar Pradesh" title="Gym Management Software in Lucknow, Uttar Pradesh"> 4681 <div class="city-card-header"><span class="city-card-name">Lucknow</span></div> 4682 <div class="city-card-sub"><span class="city-card-sub-tag">UP</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4683 </a> 4684 <a href="https://www.gymsmart.in/gym-management-software/punjab/ludhiana" class="hub-city-card" data-region="north" data-city="Ludhiana" data-state="Punjab" title="Gym Management Software in Ludhiana, Punjab"> 4685 <div class="city-card-header"><span class="city-card-name">Ludhiana</span></div> 4686 <div class="city-card-sub"><span class="city-card-sub-tag">PB</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4687 </a> 4688 4689 <!-- SOUTH EXTRA --> 4690 <a href="https://www.gymsmart.in/gym-management-software/tamil-nadu/coimbatore" class="hub-city-card" data-region="south" data-city="Coimbatore" data-state="Tamil Nadu" title="Gym Management Software in Coimbatore, Tamil Nadu"> 4691 <div class="city-card-header"><span class="city-card-name">Coimbatore</span></div> 4692 <div class="city-card-sub"><span class="city-card-sub-tag">TN</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4693 </a> 4694 <a href="https://www.gymsmart.in/gym-management-software/kerala/kochi" class="hub-city-card" data-region="south" data-city="Kochi" data-state="Kerala" title="Gym Management Software in Kochi, Kerala"> 4695 <div class="city-card-header"><span class="city-card-name">Kochi</span></div> 4696 <div class="city-card-sub"><span class="city-card-sub-tag">KL</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4697 </a> 4698 4699 <!-- CENTRAL & EAST EXTRA --> 4700 <a href="https://www.gymsmart.in/gym-management-software/madhya-pradesh/bhopal" class="hub-city-card" data-region="central-east" data-city="Bhopal" data-state="Madhya Pradesh" title="Gym Management Software in Bhopal, Madhya Pradesh"> 4701 <div class="city-card-header"><span class="city-card-name">Bhopal</span></div> 4702 <div class="city-card-sub"><span class="city-card-sub-tag">MP</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4703 </a> 4704 <a href="https://www.gymsmart.in/gym-management-software/odisha/bhubaneswar" class="hub-city-card" data-region="central-east" data-city="Bhubaneswar" data-state="Odisha" title="Gym Management Software in Bhubaneswar, Odisha"> 4705 <div class="city-card-header"><span class="city-card-name">Bhubaneswar</span></div> 4706 <div class="city-card-sub"><span class="city-card-sub-tag">OD</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4707 </a> 4708 4709 <!-- SPECIALIZED SOLUTIONS --> 4710 <a href="https://www.gymsmart.in/gym-biometric-turnstile-software" class="hub-city-card" data-region="solutions" data-city="Biometric Turnstiles" data-state="Hardware" title="Gym Biometric Turnstile Hardware & Softw
4710are"> 4711 <div class="city-card-header"> 4712 <span class="city-card-name" style="color: #38bdf8;">Turnstile Gates</span> 4713 </div> 4714 <div class="city-card-sub"> 4715 <span class="city-card-badge" style="background: rgba(56,189,248,0.2); color: #38bdf8;">Lock</span> 4716 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4717 </div> 4718 </a> 4719 <a href="https://www.gymsmart.in/gym-whatsapp-billing-software" class="hub-city-card" data-region="solutions" data-city="WhatsApp Billing" data-state="Fintech" title="WhatsApp 1-Click Billing & UPI Software"> 4720 <div class="city-card-header"> 4721 <span class="city-card-name" style="color: #34d399;">WhatsApp UPI</span> 4722 </div> 4723 <div class="city-card-sub"> 4724 <span class="city-card-badge" style="background: rgba(16,185,129,0.2); color: #34d399;">0% Fee</span> 4725 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4726 </div> 4727 </a> 4728 <a href="https://www.gymsmart.in/multi-branch-gym-management-software" class="hub-city-card" data-region="solutions" data-city="Multi Branch ERP" data-state="Enterprise" title="Multi-Branch Gym Chain ERP Management"> 4729 <div class="city-card-header"> 4730 <span class="city-card-name" style="color: #c084fc;">Multi-Branch</span> 4731 </div> 4732 <div class="city-card-sub"> 4733 <span class="city-card-badge" style="background: rgba(192,132,252,0.2); color: #c084fc;">Roaming</span> 4734 <i class="fa-solid fa-arrow-right city-card-arrow"></i> 4735 </div> 4736 </a> 4737 <a href="https://www.gymsmart.in/gym-trainer-commission-payroll-software" class="hub-city-card" data-region="solutions" data-city="Trainer Payroll" data-state="Payroll" title="Gym Trainer Commission & Payroll Software"> 4738 <div class="city-card-header"><span class="city-card-name">Trainer PT</span></div> 4739 <div class="city-card-sub"><span class="city-card-sub-tag">Payroll</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4740 </a> 4741 <a href="https://www.gymsmart.in/crossfit-yoga-studio-software" class="hub-city-card" data-region="solutions" data-city="CrossFit & Yoga" data-state="Studio" title="CrossFit & Yoga Studio Booking Software"> 4742 <div class="city-card-header"><span class="city-card-name">CrossFit & Yoga</span></div> 4743 <div class="city-card-sub"><span class="city-card-sub-tag">Studio</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4744 </a> 4745 <a href="https://www.gymsmart.in/24-7-unmanned-smart-gym-access-software" class="hub-city-card" data-region="solutions" data-city="24/7 Smart Gym" data-state="Access" title="24/7 Unmanned Smart Gym Software"> 4746 <div class="city-card-header"><span class="city-card-name">24/7 Smart Gym</span></div> 4747 <div class="city-card-sub"><span class="city-card-sub-tag">Access</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4748 </a> 4749 <a href="https://www.gymsmart.in/essl-biometric-gym-attendance-software" class="hub-city-card" data-region="solutions" data-city="eSSL Integration" data-state="Sync" title="eSSL Biometric Attendance Software Integration"> 4750 <div class="city-card-header"><span class="city-card-name">eSSL Integration</span></div> 4751 <div class="city-card-sub"><span class="city-card-sub-tag">Sync</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4752 </a> 4753 <a href="https://www.gymsmart.in/zkteco-biometric-gym-attendance-software" class="hub-city-card" data-region="solutions" data-city="ZKTeco Integration" data-state="Sync" title="ZKTeco Flap Barrier & Attendance Sync"> 4754 <div class="city-card-header"><span class="city-card-name">ZKTeco Gate ERP</span></div> 4755 <div class="city-card-sub"><span class="city-card-sub-tag">Gates</span><i class="fa-solid fa-arrow-right city-card-arrow"></i></div> 4756 </a> 4757 4758 </div> 4759 </div> 4760 </div> 4761 4762 <!-- Google Tag Manager / GA4 Geo Interaction Tracking Script --> 4763
4763<script> 4764 document.addEventListener('DOMContentLoaded', function() { 4765 // Function to push events to dataLayer & gtag 4766 function logGeoEvent(cityName, stateName, interactionSource, targetUrl) { 4767 // 1. GTM DataLayer Event 4768 if (window.dataLayer && typeof window.dataLayer.push === 'function') { 4769 window.dataLayer.push({ 4770 event: 'gymsmart_geo_interaction', 4771 geo_city: cityName, 4772 geo_state: stateName, 4773 interaction_source: interactionSource, 4774 target_url: targetUrl, 4775 timestamp: new Date().toISOString() 4776 }); 4777 } 4778 // 2. Google Analytics 4 Event 4779 if (typeof window.gtag === 'function') { 4780 window.gtag('event', 'select_content', { 4781 content_type: 'geo_city_hub', 4782 item_id: cityName.toLowerCase().replace(/[^a-z0-9]/g, '_'), 4783 item_name: cityName + ', ' + stateName, 4784 source: interactionSource 4785 }); 4786 } 4787 } 4788 4789 // 3D Map Pins Hover & Instant Shortcut Click Sync 4790 const pins = document.querySelectorAll('.geo-3d-pin'); 4791 const hudCityName = document.getElementById('hudCityName'); 4792 const hudBadgeTier = document.getElementById('hudBadgeTier'); 4793 const hudDesc = document.getElementById('hudDesc'); 4794 const hudCtaBtn = document.getElementById('hudCtaBtn'); 4795 4796 pins.forEach(pin => { 4797 function activatePin(source) { 4798 pins.forEach(p => p.classList.remove('active')); 4799 pin.classList.add('active'); 4800 4801 const city = pin.getAttribute('data-city') || 'Jaipur'; 4802 const state = pin.getAttribute('data-state') || 'Rajasthan'; 4803 const tier = pin.getAttribute('data-tier') || 'Tier-1 Priority'; 4804 const desc = pin.getAttribute('data-desc') || ''; 4805 const href = pin.getAttribute('href') || '#'; 4806 4807 if (hudCityName) hudCityName.textContent = city + ', ' + state; 4808 if (hudBadgeTier) hudBadgeTier.textContent = tier; 4809 if (hudDesc) hudDesc.textContent = desc; 4810 if (hudCtaBtn) { 4811 hudCtaBtn.setAttribute('href', href); 4812 hudCtaBtn.querySelector('span').textContent = 'Open ' + city + ' Gym ERP Hub'; 4813 } 4814 4815 logGeoEvent(city, state, source, href); 4816 } 4817 4818 pin.addEventListener('mouseenter', () => activatePin('map_pin_hover')); 4819 pin.addEventListener('focus', () => activatePin('map_pin_focus')); 4820 4821 // Direct Click Shortcut Navigation 4822 pin.addEventListener('click', function(e) { 4823 const href = this.getAttribute('href'); 4824 const city = this.getAttribute('data-city') || ''; 4825 const state = this.getAttribute('data-state') || ''; 4826 activatePin('map_pin_shortcut_click'); 4827 4828 if (href && href !== '#' && !href.startsWith('javascript:')) { 4829 // Allow natural browser link traversal, or handle fallback 4830 logGeoEvent(city, state, 'map_pin_shortcut_click', href); 4831 } 4832 }); 4833 }); 4834 4835 // Tab Filter Logic 4836 const tabBtns = document.querySelectorAll('.hub-tab-btn'); 4837 const cityCards = document.querySelectorAll('.hub-city-card'); 4838 4839 tabBtns.forEach(btn => { 4840 btn.addEventListener('click', function() { 4841 tabBtns.forEach(b => b.classList.remove('active')); 4842 this.classList.add('active'); 4843 4844 const filter = this.getAttribute('data-filter'); 4845 4846 cityCards.forEach(card => { 4847 const region = card.getAttribute('data-region'); 4848 if (filter === 'all' || region === filter) { 4849 card.style.display = 'flex'; 4850 } else { 4851 card.style.display = 'none'; 4852 } 4853 }); 4854 4855 // Log tab click event to Google 4856 if (window.dataLayer) { 4857 window.dataLayer.push({ 4858 event: 'geo_hub_tab_filter', 4859 selected_filter: filter 4860 }); 4861 } 4862 }); 4863 }); 4864 4865 // City Card Click Tracking 4866 cityCards.forEach(card => { 4867 card.addEventListener('click', function() { 4868 const city = this.getAttribute('data-city') || ''; 4869 const state = this.getAttribute('data-state') || ''; 4870 const href = this.getAttribute('href') || ''; 4871 logGeoEvent(city, state, 'matrix_card_click', href); 4872 }); 4873 }); 4874 }); 4875 </script>
4875 4876 </div> 4877 4878 <!-- Footer Bottom --> 4879 <div class="footer-bottom"> 4880 <div class="container"> 4881 <p>© Copyright 2026 GymSmart ERP. All Rights Reserved.</p> 4882 <div class="footer-developed-by"> 4883 Developed & Operated by Bizz1 Technologies | Surat, Gujarat, India 4884 </div> 4885 </div> 4886 </div> 4887</footer> 4888 4889<!-- ======================= JavaScript Files =================== --> 4890<!-- Core Libraries (executed at bottom of body, non-blocking to initial render) -->
4891<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
vendor: 1 bytes, line 4891
4891
4892<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
vendor: 1 bytes, line 4892
4892
4893<script src="https://cdn.jsdelivr.net/npm/[email protected]/slick/slick.min.js"></script>
vendor: 1 bytes, line 4893
4893
4894<script src="https://unpkg.com/[email protected]/dist/aos.js"></script>
vendor: 1 bytes, line 4894
4894
4895<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
vendor: 1 bytes, line 4895
4895
4896<script src="https://js.pusher.com/8.2.0/pusher.min.js" defer></script>
vendor: 1 bytes, line 4896
4896
4897<script src="https://admin.ajasys.com/assets/js/web_bot.js?crm_id=0&master_id=12&bot_id=0&integration_id=121" defer></script>
vendor: 1 bytes, line 4897
4897
4898<script src="https://www.gymsmart.in/js/iziToast.js" defer></script>
4898 4899 4900<!-- Global Initializers -->
4901<script> 4902 // 1. AOS Animation Init 4903 if (typeof AOS !== 'undefined') AOS.init({ duration: 800, once: true, offset: 80 }); 4904 4905 // 2. Global Universal Flatpickr Date-Time Picker 4906 document.addEventListener('DOMContentLoaded', function() { 4907 if (typeof flatpickr !== 'undefined') { 4908 flatpickr("#demoDateTime, .demo-datetime-picker, #demo_date, .flatpickr-input-field", { 4909 enableTime: true, 4910 dateFormat: "d-m-Y h:i K", 4911 minDate: "today", 4912 minuteIncrement: 15, 4913 disableMobile: "true", 4914 allowInput: false, 4915 static: true, 4916 appendTo: document.body 4917 }); 4918 } 4919 }); 4920</script>
4920 4921 4922<!-- ======================= 3-IN-1 LUXURY VERTICAL QUICK CONNECT DOCK ======================= --> 4923<style> 4924 /* Hide the old clumsy floating robot launcher and detached bubble */ 4925 .robot_btn, 4926 button.robot_btn, 4927 .launcher-label-main-div { 4928 display: none !important; 4929 opacity: 0 !important; 4930 visibility: hidden !important; 4931 pointer-events: none !important; 4932 } 4933 4934 /* Position the AI Chat Window cleanly to the left of the vertical dock */ 4935 .robot_div { 4936 bottom: 24px !important; 4937 right: 240px !important; 4938 z-index: 10005 !important; 4939 border-radius: 20px !important; 4940 box-shadow: 0 24px 70px rgba(0, 0, 0, 0.65) !important; 4941 } 4942 4943 @media (max-width: 768px) { 4944 .robot_div { 4945 right: 12px !important; 4946 bottom: 190px !important; 4947 width: calc(100vw - 24px) !important; 4948 max-width: 360px !important; 4949 } 4950 } 4951 4952 /* Unified Ultra-Luxurious Vertical Floating Stack */ 4953 .gymsmart-quick-dock { 4954 position: fixed; 4955 bottom: 24px; 4956 right: 24px; 4957 left: auto; 4958 z-index: 9995; 4959 display: flex; 4960 flex-direction: column; 4961 align-items: stretch; 4962 gap: 6px; 4963 background: linear-gradient(155deg, rgba(22, 17, 44, 0.94), rgba(12, 10, 26, 0.96)); 4964 backdrop-filter: blur(24px); 4965 -webkit-backdrop-filter: blur(24px); 4966 border: 1px solid rgba(192, 132, 252, 0.35); 4967 border-radius: 22px; 4968 padding: 8px; 4969 box-shadow: 4970 0 20px 50px rgba(0, 0, 0, 0.6), 4971 0 0 30px rgba(147, 51, 234, 0.25), 4972 inset 0 1px 0 rgba(255, 255, 255, 0.1); 4973 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 4974 animation: qdockEntrance 0.7s cubic-bezier(0.16, 1, 0.3, 1) forwards; 4975 min-width: 200px; 4976 transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1); 4977 } 4978 4979 @keyframes qdockEntrance { 4980 from { opacity: 0; transform: translateY(30px) scale(0.9); } 4981 to { opacity: 1; transform: translateY(0) scale(1); } 4982 } 4983 4984 body:not(.dark) .gymsmart-quick-dock { 4985 background: linear-gradient(155deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96)); 4986 border: 1px solid rgba(181, 93, 205, 0.35); 4987 box-shadow: 4988 0 20px 50px rgba(114, 78, 191, 0.22), 4989 0 4px 16px rgba(0, 0, 0, 0.06), 4990 inset 0 1px 0 rgba(255, 255, 255, 0.8); 4991 } 4992 4993 /* Mini Header Tag inside dock */ 4994 .qdock-header { 4995 display: flex; 4996 align-items: center; 4997 justify-content: space-between; 4998 padding: 4px 8px 6px; 4999 border-bottom: 1px solid rgba(255, 255, 255, 0.08); 5000 margin-bottom: 2px; 5001 } 5002 5003 body:not(.dark) .qdock-header { 5004 border-bottom-color: #f1f5f9; 5005 } 5006 5007 .qdock-header-title { 5008 font-size: 10px; 5009 font-weight: 700; 5010 text-transform: uppercase; 5011 letter-spacing: 0.8px; 5012 color: #c084fc; 5013 display: flex; 5014 align-items: center; 5015 gap: 5px; 5016 } 5017 5018 body:not(.dark) .qdock-header-title { 5019 color: #7e22ce; 5020 } 5021 5022 .qdock-live-status { 5023 display: inline-flex; 5024 align-items: center; 5025 gap: 4px; 5026 font-size: 9.5px; 5027 font-weight: 600; 5028 color: #10b981; 5029 } 5030 5031 .qdock-live-dot { 5032 width: 6px; 5033 height: 6px; 5034 border-radius: 50%; 5035 background: #10b981; 5036 box-shadow: 0 0 8px #10b981; 5037 animation: qdockPulse 2s infinite; 5038 } 5039 5040 /* Inner Item Buttons */ 5041 .qdock-item { 5042 display: flex; 5043 align-items: center; 5044 gap: 11px; 5045 padding: 8px 10px; 5046 border-radius: 14px; 5047 text-decoration: none !important; 5048 transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1); 5049 cursor: pointer; 5050 position: relative; 5051 background: rgba(255, 255, 255, 0.03); 5052 border: 1px solid rgba(255, 255, 255, 0.05); 5053 width: 100%; 5054 box-sizing: border-box; 5055 } 5056 5057 body:not(.dark) .qdock-item { 5058 background: #ffffff; 5059 border-color: #e2e8f0; 5060 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02); 5061 } 5062 5063 /* 1. Bot Action */ 5064 .qdock-item-bot { 5065 color: #fbcfe8 !important; 5066 } 5067 5068 body:not(.dark) .qdock-item-bot { 5069 color: #9d174d !important; 5070 } 5071 5072 .qdock-item-bot:hover { 5073 background: rgba(236, 72, 153, 0.16); 5074 border-color: rgba(236, 72, 153, 0.4); 5075 transform: translateX(-3px); 5076 box-shadow: 0 4px 16px rgba(236, 72, 153, 0.25); 5077 } 5078 5079 body:not(.dark) .qdock-item-bot:hover { 5080 background: #fdf2f8; 5081 border-color: #fbcfe8; 5082 } 5083 5084 /* 2. Call Action */ 5085 .qdock-item-call { 5086 color: #e9d5ff !important; 5087 } 5088 5089 body:not(.dark) .qdock-item-call { 5090 color: #581c87 !important; 5091 } 5092 5093 .qdock-item-call:hover { 5094 background: rgba(147, 51, 234, 0.16); 5095 border-color: rgba(192, 132, 252, 0.4); 5096 transform: translateX(-3px); 5097 box-shadow: 0 4px 16px rgba(147, 51, 234, 0.25); 5098 } 5099 5100 body:not(.dark) .qdock-item-call:hover { 5101 background: #f3e8ff; 5102 border-color: #e9d5ff; 5103 } 5104 5105 /* 3. WhatsApp Action */ 5106 .qdock-item-wa { 5107 color: #a7f3d0 !important; 5108 } 5109 5110 body:not(.dark) .qdock-item-wa { 5111 color: #065f46 !important; 5112 } 5113 5114 .qdock-item-wa:hover { 5115 background: rgba(16, 185, 129, 0.16); 5116 border-color: rgba(52, 211, 153, 0.4); 5117 transform: translateX(-3px); 5118 box-shadow: 0 4px 16px rgba(16, 185, 129, 0.25); 5119 } 5120 5121 body:not(.dark) .qdock-item-wa:hover { 5122 background: #ecfdf5; 5123 border-color: #a7f3d0; 5124 } 5125 5126 /* Squircle Icon Wrappers */ 5127 .qdock-ico { 5128 width: 32px; 5129 height: 32px; 5130 border-radius: 10px; 5131 display: flex; 5132 align-items: center; 5133 justify-content: center; 5134 font-size: 14px; 5135 flex-shrink: 0; 5136 position: relative; 5137 transition: transform 0.3s ease; 5138 } 5139 5140 .qdock-item:hover .qdock-ico { 5141 transform: scale(1.08); 5142 } 5143 5144 .qdock-item-bot .qdock-ico { 5145 background: linear-gradient(135deg, #ec4899, #d946ef); 5146 color: #ffffff; 5147 box-shadow: 0 4px 12px rgba(236, 72, 153, 0.4); 5148 } 5149 5150 .qdock-item-call .qdock-ico { 5151 background: linear-gradient(135deg, #9333ea, #7c3aed); 5152 color: #ffffff; 5153 box-shadow: 0 4px 12px rgba(147, 51, 234, 0.4); 5154 } 5155 5156 .qdock-item-wa .qdock-ico { 5157 background: linear-gradient(135deg, #10b981, #059669); 5158 color: #ffffff; 5159 box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4); 5160 } 5161 5162 .qdock-item-call:hover .qdock-ico i { 5163 animation: qdockPhoneRing 1.8s infinite ease-in-out; 5164 } 5165
5166 @keyframes qdockPhoneRing { 5167 0%, 100% { transform: rotate(0deg); } 5168 15%, 45% { transform: rotate(-16deg); } 5169 30%, 60% { transform: rotate(16deg); } 5170 75% { transform: rotate(0deg); } 5171 } 5172 5173 .qdock-online-dot { 5174 position: absolute; 5175 top: -1px; 5176 right: -1px; 5177 width: 8px; 5178 height: 8px; 5179 background: #22c55e; 5180 border: 2px solid #0e0b1c; 5181 border-radius: 50%; 5182 box-shadow: 0 0 6px #22c55e; 5183 animation: qdockPulse 2s infinite; 5184 } 5185 5186 body:not(.dark) .qdock-online-dot { 5187 border-color: #ffffff; 5188 } 5189 5190 @keyframes qdockPulse { 5191 0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7); } 5192 70% { transform: scale(1.05); box-shadow: 0 0 0 5px rgba(34, 197, 94, 0); } 5193 100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); } 5194 } 5195 5196 /* Labels */ 5197 .qdock-meta { 5198 display: flex; 5199 flex-direction: column; 5200 text-align: left; 5201 line-height: 1.18; 5202 flex: 1; 5203 } 5204 5205 .qdock-lbl { 5206 font-size: 9.5px; 5207 font-weight: 600; 5208 text-transform: uppercase; 5209 letter-spacing: 0.5px; 5210 opacity: 0.7; 5211 } 5212 5213 .qdock-val { 5214 font-size: 12.5px; 5215 font-weight: 800; 5216 letter-spacing: -0.2px; 5217 } 5218 5219 .qdock-arr { 5220 font-size: 11px; 5221 opacity: 0; 5222 transform: translateX(-4px); 5223 transition: all 0.2s ease; 5224 } 5225 5226 .qdock-item:hover .qdock-arr { 5227 opacity: 0.9; 5228 transform: translateX(0); 5229 } 5230 5231 /* Dropdown / Quick Number Menu */ 5232 .qdock-call-wrap { 5233 position: relative; 5234 width: 100%; 5235 } 5236 5237 .qdock-popup-menu { 5238 position: absolute; 5239 right: calc(100% + 12px); 5240 top: -10px; 5241 background: rgba(18, 14, 32, 0.97); 5242 backdrop-filter: blur(24px); 5243 -webkit-backdrop-filter: blur(24px); 5244 border: 1px solid rgba(192, 132, 252, 0.35); 5245 border-radius: 18px; 5246 padding: 8px; 5247 min-width: 220px; 5248 box-shadow: 0 20px 50px rgba(0, 0, 0, 0.65); 5249 display: none; 5250 flex-direction: column; 5251 gap: 6px; 5252 z-index: 10000; 5253 animation: qdockPopLeft 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards; 5254 } 5255 5256 body:not(.dark) .qdock-popup-menu { 5257 background: #ffffff; 5258 border-color: #e2e8f0; 5259 box-shadow: 0 20px 50px rgba(114, 78, 191, 0.2); 5260 } 5261 5262 .qdock-popup-menu.show { 5263 display: flex; 5264 } 5265 5266 @keyframes qdockPopLeft { 5267 from { opacity: 0; transform: translateX(10px) scale(0.95); } 5268 to { opacity: 1; transform: translateX(0) scale(1); } 5269 } 5270 5271 .qdock-pop-item { 5272 display: flex; 5273 align-items: center; 5274 gap: 10px; 5275 padding: 8px 12px; 5276 border-radius: 12px; 5277 color: #fff !important; 5278 text-decoration: none !important; 5279 transition: background 0.2s ease; 5280 } 5281 5282 body:not(.dark) .qdock-pop-item { 5283 color: #1e293b !important; 5284 } 5285 5286 .qdock-pop-item:hover { 5287 background: rgba(147, 51, 234, 0.2); 5288 } 5289 5290 body:not(.dark) .qdock-pop-item:hover { 5291 background: #f3e8ff; 5292 } 5293 5294 .qdock-pop-icon { 5295 width: 30px; 5296 height: 30px; 5297 border-radius: 8px; 5298 background: rgba(147, 51, 234, 0.25); 5299 color: #c084fc; 5300 display: flex; 5301 align-items: center; 5302 justify-content: center; 5303 font-size: 13px; 5304 } 5305 5306 .qdock-pop-title { 5307 font-size: 12.5px; 5308 font-weight: 700; 5309 margin: 0; 5310 line-height: 1.2; 5311 } 5312 5313 .qdock-pop-sub { 5314 font-size: 11px; 5315 color: #94a3b8; 5316 margin: 0; 5317 } 5318 5319 body:not(.dark) .qdock-pop-sub { 5320 color: #64748b; 5321 } 5322 5323 /* Hide desktop Quick Dock on Mobile Screens (<= 768px) where Mobile Sticky Action Dock is active */ 5324 @media (max-width: 768px) { 5325 .gymsmart-quick-dock { 5326 display: none !important; 5327 } 5328 } 5329 5330 /* High-Converting Mobile Sticky Quick Bar (Only on Mobile <= 768px) */ 5331 .gs-mobile-sticky-bar { 5332 display: none; 5333 } 5334 @media (max-width: 768px) { 5335 body { 5336 padding-bottom: 72px !important; 5337 } 5338 .gs-mobile-sticky-bar { 5339 display: flex !important; 5340 position: fixed !important; 5341 bottom: 0 !important; 5342 left: 0 !important; 5343 right: 0 !important; 5344 width: 100% !important; 5345 background: rgba(15, 15, 26, 0.96) !important; 5346 backdrop-filter: blur(16px) !important; 5347 -webkit-backdrop-filter: blur(16px) !important; 5348 border-top: 1px solid rgba(192, 132, 252, 0.28) !important; 5349 padding: 8px 10px !important; 5350 z-index: 99999 !important; 5351 align-items: center !important; 5352 justify-content: space-between !important; 5353 gap: 8px !important; 5354 box-shadow: 0 -4px 25px rgba(0, 0, 0, 0.5) !important; 5355 box-sizing: border-box !important; 5356 } 5357 body:not(.dark) .gs-mobile-sticky-bar { 5358 background: rgba(255, 255, 255, 0.96) !important; 5359 border-top: 1px solid rgba(226, 232, 240, 0.9) !important; 5360 box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08) !important; 5361 } 5362 .gs-mobile-btn { 5363 display: inline-flex !important; 5364 align-items: center !important; 5365 justify-content: center !important; 5366 gap: 6px !important; 5367 padding: 11px 8px !important; 5368 border-radius: 12px !important; 5369 font-size: 13px !important; 5370 font-weight: 750 !important; 5371 text-decoration: none !important; 5372 line-height: 1 !important; 5373 white-space: nowrap !important; 5374 transition: transform 0.2s ease !important; 5375 } 5376 .gs-mobile-btn-call { 5377 background: rgba(255, 255, 255, 0.08) !important; 5378 border: 1px solid rgba(255, 255, 255, 0.16) !important; 5379 color: #ffffff !important; 5380 flex: 0.75 !important; 5381 } 5382 body:not(.dark) .gs-mobile-btn-call { 5383 background: #f1f5f9 !important; 5384 border-color: #cbd5e1 !important; 5385 color: #0f172a !important; 5386 } 5387 .gs-mobile-btn-wa { 5388 background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important; 5389 color: #ffffff !important; 5390 border: none !important; 5391 flex: 1.35 !important; 5392 box-shadow: 0 4px 14px rgba(37, 211, 102, 0.4) !important; 5393 } 5394 .gs-mobile-btn-trial { 5395 background: linear-gradient(135deg, #9333ea 0%, #7c3aed 100%) !important; 5396 color: #ffffff !important; 5397 border: none !important; 5398 flex: 1.1 !important; 5399 box-shadow: 0 4px 14px rgba(147, 51, 234, 0.35) !important; 5400 } 5401 } 5402</style> 5403 5404<div class="gymsmart-quick-dock" id="gymsmartQuickDock"> 5405 <!-- Header Accent --> 5406 <div class="qdock-header">
5407 <span class="qdock-header-title"><i class="fa-solid fa-bolt"></i> Quick Help</span> 5408 <span class="qdock-live-status"><span class="qdock-live-dot"></span> Online</span> 5409 </div> 5410 5411 <!-- 1. AI Assistant Chat Button --> 5412 <button type="button" class="qdock-item qdock-item-bot" id="qdockBotBtn" aria-label="Open AI Gym Assistant"> 5413 <div class="qdock-ico"> 5414 <i class="fa-solid fa-robot"></i> 5415 <span class="qdock-online-dot"></span> 5416 </div> 5417 <div class="qdock-meta"> 5418 <span class="qdock-lbl">24/7 Smart</span> 5419 <span class="qdock-val">AI Assistant</span> 5420 </div> 5421 <i class="fa-solid fa-angle-right qdock-arr"></i> 5422 </button> 5423 5424 <!-- 2. Call Now Button & Popup --> 5425 <div class="qdock-call-wrap"> 5426 <a href="tel:+918347977566" class="qdock-item qdock-item-call" id="qdockCallBtn" aria-label="Call GymSmart Support: +91 83479 77566"> 5427 <div class="qdock-ico"> 5428 <i class="fa-solid fa-phone"></i> 5429 </div> 5430 <div class="qdock-meta"> 5431 <span class="qdock-lbl">Direct Call</span> 5432 <span class="qdock-val">+91 83479 77566</span> 5433 </div> 5434 <i class="fa-solid fa-angle-right qdock-arr"></i> 5435 </a> 5436 5437 <!-- Call Options Popup --> 5438 <div class="qdock-popup-menu" id="qdockCallMenu"> 5439 <a href="tel:+918347977566" class="qdock-pop-item"> 5440 <div class="qdock-pop-icon"><i class="fa-solid fa-headset"></i></div> 5441 <div> 5442 <div class="qdock-pop-title">Sales & Demos</div> 5443 <div class="qdock-pop-sub">+91 83479 77566</div> 5444 </div> 5445 </a> 5446 <a href="tel:+918347977555" class="qdock-pop-item"> 5447 <div class="qdock-pop-icon"><i class="fa-solid fa-wrench"></i></div> 5448 <div> 5449 <div class="qdock-pop-title">Technical Support</div> 5450 <div class="qdock-pop-sub">+91 83479 77555</div> 5451 </div> 5452 </a> 5453 </div> 5454 </div> 5455 5456 <!-- 3. WhatsApp Now Button --> 5457 <a href="https://wa.me/918347977566?text=Hello%20GymSmart,%20I%20am%20interested%20in%20GymSmart%20ERP%20for%20my%20gym." target="_blank" rel="noopener noreferrer" class="qdock-item qdock-item-wa" aria-label="Chat with GymSmart on WhatsApp"> 5458 <div class="qdock-ico"> 5459 <i class="fa-brands fa-whatsapp"></i> 5460 <span class="qdock-online-dot"></span> 5461 </div> 5462 <div class="qdock-meta"> 5463 <span class="qdock-lbl">Instant Reply</span> 5464 <span class="qdock-val">WhatsApp Now</span> 5465 </div> 5466 <i class="fa-solid fa-angle-right qdock-arr"></i> 5467 </a> 5468</div> 5469 5470<!-- ===== HIGH-CONVERTING MOBILE BOTTOM STICKY BAR (<= 768px) ===== --> 5471<div class="gs-mobile-sticky-bar" id="gsMobileStickyBar"> 5472 <a href="tel:+918347977566" class="gs-mobile-btn gs-mobile-btn-call" aria-label="Direct Call Support"> 5473 <i class="fa-solid fa-phone"></i> 5474 <span>Call</span> 5475 </a> 5476 <a href="https://wa.me/918347977566?text=Hi%20GymSmart%2C%20I%20want%20a%20free%20live%20demo%20and%20pricing%20details%20for%20my%20gym." target="_blank" rel="noopener noreferrer" class="gs-mobile-btn gs-mobile-btn-wa" aria-label="Instant WhatsApp Demo"> 5477 <i class="fa-brands fa-whatsapp" style="font-size: 16px;"></i> 5478 <span>WhatsApp Demo</span> 5479 </a> 5480 <a href="https://erp.gymsmart.in/register_account" class="gs-mobile-btn gs-mobile-btn-trial" aria-label="Start Free 7-Day Trial"> 5481 <i class="fa-solid fa-bolt"></i> 5482 <span>Free Trial</span> 5483 </a> 5484</div> 5485
5486<script> 5487document.addEventListener('DOMContentLoaded', function() { 5488 // 1. AI Bot Toggle Handler 5489 const botBtn = document.getElementById('qdockBotBtn'); 5490 if (botBtn) { 5491 botBtn.addEventListener('click', function(e) { 5492 e.preventDefault(); 5493 const legacyBtn = document.querySelector('.robot_btn'); 5494 const botDiv = document.querySelector('.robot_div'); 5495 if (legacyBtn) { 5496 legacyBtn.click(); 5497 } else if (botDiv) { 5498 botDiv.style.display = (botDiv.style.display === 'none' || !botDiv.style.display) ? 'block' : 'none'; 5499 } 5500 }); 5501 } 5502 5503 // 2. Call Menu Hover & Touch Handler 5504 const callWrap = document.querySelector('.qdock-call-wrap'); 5505 const callBtn = document.getElementById('qdockCallBtn'); 5506 const callMenu = document.getElementById('qdockCallMenu'); 5507 5508 if (callWrap && callBtn && callMenu) { 5509 // Desktop hover 5510 callWrap.addEventListener('mouseenter', function() { 5511 if (window.innerWidth > 768) { 5512 callMenu.classList.add('show'); 5513 } 5514 }); 5515 5516 callWrap.addEventListener('mouseleave', function() { 5517 if (window.innerWidth > 768) { 5518 callMenu.classList.remove('show'); 5519 } 5520 }); 5521 5522 // Click / Touch Toggle 5523 callBtn.addEventListener('click', function(e) { 5524 if (window.innerWidth <= 768) { 5525 e.preventDefault(); 5526 callMenu.classList.toggle('show'); 5527 } 5528 }); 5529 5530 // Close on outside click 5531 document.addEventListener('click', function(e) { 5532 if (!callWrap.contains(e.target)) { 5533 callMenu.classList.remove('show'); 5534 } 5535 }); 5536 } 5537}); 5538</script>
5538 5539 5540<!-- ===== UNIVERSAL CONTEXT-AWARE SOCIAL PROOF TOAST (DESKTOP) ===== --> 5541<div class="live-social-toast" id="liveSocialToast" style="display: none; cursor: pointer;"> 5542 <span class="toast-live-dot"></span> 5543 <div class="toast-content"> 5544 <p class="toast-title" id="toastMessage"></p> 5545 <span class="toast-time" id="toastTime"></span> 5546 </div> 5547 <button type="button" class="toast-close" id="toastCloseBtn" aria-label="Close notification">×</button> 5548</div> 5549
5550<script> 5551(function() { 5552 const toast = document.getElementById('liveSocialToast'); 5553 const msgEl = document.getElementById('toastMessage'); 5554 const timeEl = document.getElementById('toastTime'); 5555 const closeBtn = document.getElementById('toastCloseBtn'); 5556 if (!toast || !msgEl) return; 5557 5558 let isDismissed = false; 5559 if (closeBtn) { 5560 closeBtn.onclick = (e) => { 5561 e.stopPropagation(); 5562 isDismissed = true; 5563 toast.classList.remove('active'); 5564 }; 5565 } 5566 5567 // Clicking toast opens live demo booking modal 5568 toast.addEventListener('click', (e) => { 5569 if (e.target === closeBtn) return; 5570 const demoModalEl = document.getElementById('bookDemoModal'); 5571 if (demoModalEl && typeof bootstrap !== 'undefined') { 5572 const modal = bootstrap.Modal.getInstance(demoModalEl) || new bootstrap.Modal(demoModalEl); 5573 modal.show(); 5574 } 5575 }); 5576 5577 // Detect page context 5578 const path = window.location.pathname.toLowerCase(); 5579 const isPricing = path.includes('pricing'); 5580 const isFeatures = path.includes('features'); 5581 5582 // Geo City & State resolution with session caching 5583 let userCity = 'Surat'; 5584 let userState = 'Gujarat'; 5585 5586 function getBaseUrl() { 5587 const parts = window.location.pathname.split('/'); 5588 if (parts[1] && parts[1].toLowerCase() === 'gymweb') { 5589 return '/GymWeb'; 5590 } 5591 return ''; 5592 } 5593 5594 // Check cached location or fetch asynchronously 5595 try { 5596 const cached = sessionStorage.getItem('gs_geo_city'); 5597 if (cached) { 5598 const parsed = JSON.parse(cached); 5599 if (parsed && parsed.city) { 5600 userCity = parsed.city; 5601 userState = parsed.state || ''; 5602 } 5603 } else { 5604 fetch(getBaseUrl() + '/api/detect-geo.php') 5605 .then(r => r.json()) 5606 .then(data => { 5607 if (data && data.city) { 5608 userCity = data.city; 5609 userState = data.state || ''; 5610 sessionStorage.setItem('gs_geo_city', JSON.stringify({ city: userCity, state: userState })); 5611 } 5612 }) 5613 .catch(() => {}); 5614 } 5615 } catch (e) {} 5616 5617 function buildMessages() { 5618 const city = userCity || 'Surat'; 5619 const state = userState || 'Gujarat'; 5620 const loc = state ? `${city}, ${state}` : city; 5621 5622 if (isPricing) { 5623 return [ 5624 { text: `ð Premium Fitness Center in ${city} operates on Enterprise Cloud Plan`, time: `Verified Case Study · ${city}` }, 5625 { text: `â¡ 250-Member Gym in ${city} saved â¹35,000/month eliminating cashier discrepancies`, time: `ROI Benchmark · Core Plan` }, 5626 { text: `ð Advance Plan selected by 700+ Member Gym in ${loc}`, time: `Verified Case Study · Direct UPI Collections` }, 5627 { text: `ð¼ Gym Owner in ${city} unlocked 5-Branch Centralized Financial Control`, time: `Enterprise Architecture · Central Command` } 5628 ]; 5629 } 5630 5631 if (isFeatures) { 5632 return [ 5633 { text: `ð¬ Automated WhatsApp Reminders achieved 94.8% renewal rate for ${city} gym`, time: `Verified Case Study · WhatsApp Cloud API` }, 5634 { text: `ð Anti-Poaching Trainer Security enabled: Staff in ${city} cannot view member phone numbers`, time: `Security Benchmark · DPDP 2023 Masking` }, 5635 { text: `ð² Member Mobile App logs active workout & diet tracking sessions daily in ${city}`, time: `Mobile Ecosystem · iOS & Android Synced` } 5636 ]; 5637 } 5638 5639 // Default Homepage & General Messages with Localized City Impact 5640 return [ 5641 { text: `â¡ Commercial Gym in ${city} automated 420+ monthly renewals with zero WhatsApp delay`, time: `Verified Case Study · 98%+ Collection Rate` }, 5642 { text: `ð Gym Owner in ${loc} just booked a Free 15-Minute Live Demo`, time: `Just now · Verified Inquiry` }, 5643 { text: `ð Multi-Branch Fitness Chain in ${city} eliminated fee leakage across 3 branches`, time: `Verified Case Study · Biometric Gate Sync` }, 5644 { text: `ðï¸ 1,450+ Daily Check-ins processed in ${city} gyms without receptionist error`, time: `Platform Benchmark · Realtime Sync` }, 5645 { text: `ð Fitness Studio in ${city} collected â¹3.2 Lakhs in automated membership dues`, time: `Verified Case Study · 0% Gateway Markup` }, 5646 { text: `â Premium Health Club in ${loc} switched from Excel to GymSmart with 100% data migration`, time: `Onboarding Benchmark · 2-Hour Transition` } 5647 ]; 5648 } 5649 5650 // Show element on desktop 5651 if (window.innerWidth > 768) { 5652 toast.style.display = 'flex'; 5653 } 5654 5655 let toastIdx = 0; 5656 function showNextToast() { 5657 if (isDismissed || window.innerWidth <= 768) return; 5658 const messageStack = buildMessages(); 5659 const item = messageStack[toastIdx % messageStack.length]; 5660 msgEl.textContent = item.text; 5661 timeEl.textContent = item.time; 5662 toast.classList.add('active'); 5663 5664 setTimeout(() => { 5665 toast.classList.remove('active'); 5666 }, 6500); 5667 5668 toastIdx++; 5669 } 5670 5671 setTimeout(() => { 5672 showNextToast(); 5673 setInterval(showNextToast, 22000); 5674 }, 4500); 5675})(); 5676</script>
5676 5677 5678 5679</body> 5680</html> 5681
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.