<!DOCTYPE html>
<html lang="en">
  <head>
    <!-- Google tag (gtag.js) -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-N578MXPTC6"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());

      gtag('config', 'G-N578MXPTC6');
    </script>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>ListReady.ai | AI Virtual Staging &amp; 3D Property Video</title>

    <!-- SEO Meta Tags -->
    <meta name="description" content="Instantly generate scroll-stopping property photos, videos, and write descriptions that convert with AI. Get started free — 5 photos on us." />
    <meta name="keywords" content="real estate, ai photo editor, virtual staging, room organization, remodeling, twilight photography, property photography, real estate marketing" />
    <meta name="author" content="ListReady.AI" />
    <link rel="canonical" href="https://listready.ai/" />

    <!-- PWA Manifest -->
    <link rel="manifest" href="/assets/manifest-DHNbRsIh.json" />
    <meta name="theme-color" content="#A3E635" />

    <!-- Open Graph / Facebook -->
    <meta property="og:type" content="website" />
    <meta property="og:url" content="https://listready.ai/" />
    <meta property="og:title" content="ListReady.ai | AI Virtual Staging &amp; 3D Property Video" />
    <meta property="og:description" content="Instantly generate scroll-stopping property photos, videos, and write descriptions that convert with AI. Get started free — 5 photos on us." />
    <meta property="og:image" content="https://listready.ai/og-image.png" />
    <meta property="og:image:width" content="1200" />
    <meta property="og:image:height" content="630" />
    <meta property="og:image:type" content="image/png" />

    <!-- Twitter -->
    <meta property="twitter:card" content="summary_large_image" />
    <meta property="twitter:url" content="https://listready.ai/" />
    <meta property="twitter:title" content="ListReady.ai | AI Virtual Staging &amp; 3D Property Video" />
    <meta property="twitter:description" content="Instantly generate scroll-stopping property photos, videos, and write descriptions that convert with AI. Get started free — 5 photos on us." />
    <meta property="twitter:image" content="https://listready.ai/og-image.png" />

    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap" rel="stylesheet">
    <script src="https://cdn.tailwindcss.com?plugins=typography,forms"></script>
    <script>
      tailwind.config = {
        theme: {
          extend: {
            fontFamily: {
              sans: ['Inter', 'sans-serif'],
            },
            colors: {
              'brand-green': '#A3E635', // rgba(163, 230, 53)
              'brand-dark': '#101010',
              'brand-light-gray': '#F7F7F7',
              'brand-border': '#EAEAEA',
              'brand-purple-light': '#F5F3FF',
              // Keep old ones for the editor view
              'brand-blue': '#00AEEF',
              'brand-navy': '#0D2240',
              'brand-gray': '#F3F4F6', // old gray, can be deprecated
            },
            animation: {
              'glow': 'glow 2s ease-in-out infinite',
              'gradient': 'gradient 8s linear infinite',
              'fade-in': 'fadeIn 0.5s ease-out',
              'slide-in-top': 'slideInTop 0.5s ease-out',
              'slide-in-right': 'slideInRight 0.5s ease-out',
              'slide-in-left': 'slideInLeft 0.5s ease-out',
            },
            keyframes: {
              glow: {
                '0%, 100%': { 'box-shadow': '0 0 15px rgba(163, 230, 53, 0.4)' },
                '50%': { 'box-shadow': '0 0 25px 5px rgba(163, 230, 53, 0.6)' },
              },
              gradient: {
                '0%, 100%': { 'background-position': '0% 50%' },
                '50%': { 'background-position': '100% 50%' },
              },
              fadeIn: {
                '0%': { opacity: '0' },
                '100%': { opacity: '1' },
              },
              slideInTop: {
                '0%': { transform: 'translateY(-20px)', opacity: '0' },
                '100%': { transform: 'translateY(0)', opacity: '1' },
              },
              slideInRight: {
                '0%': { transform: 'translateX(20px)', opacity: '0' },
                '100%': { transform: 'translateX(0)', opacity: '1' },
              },
              slideInLeft: {
                '0%': { transform: 'translateX(-20px)', opacity: '0' },
                '100%': { transform: 'translateX(0)', opacity: '1' },
              },
            },
          }
        }
      }
    </script>
    <script type="module" crossorigin src="/assets/index-I4JWuN7n.js"></script>
    <link rel="modulepreload" crossorigin href="/assets/blog-data-DdeFRSD1.js">
    <link rel="stylesheet" crossorigin href="/assets/index-BKeUTmrk.css">
  </head>
  <body class="bg-brand-light-gray font-sans">
    <div id="root"></div>
    <script>
      if ('serviceWorker' in navigator) {
        window.addEventListener('load', () => {
          navigator.serviceWorker.register('/service-worker.js')
            .then(registration => {
              console.log('ServiceWorker registration successful with scope: ', registration.scope);
            })
            .catch(error => {
              console.log('ServiceWorker registration failed: ', error);
            });
        });
      }
    </script>
  </body>
</html>
