  /* Define CSS Variables for easy color changes */
  :root {
      --color-background: #000000;
      --color-text-light: #ffffff;
      --color-text-gray: #9ca3af;
      --color-text-dark-gray: #6b7280;
      /* Tailwind gray-500 */
      --color-pink-accent: rgb(255, 255, 255);
      /* Light pink */
      --color-pink-darker: rgb(255, 255, 255);
      /* Darker pink for hover */
      --color-blue-accent: rgb(255, 255, 255);
      /* Bright blue for BUY NOW */
      --color-border: rgb(134, 53, 240);
      --color-dark-text: #1f2937;
      /* Dark text for contrast (e.g., message box) */
      --color-dark-gray-bg: #374151;
      /* Dark gray for marquee image background */
      --color-medium-gray-border: #555;
      /* Medium gray for borders */
      --color-error-background: #e60000;
      /* Red for error (Tailwind red-500) */
      --color-error-text: #ffffff;
      /* White text for error */
      --box-shadow: rgb(134, 53, 240);
  }

  /* Font Face Declarations */
  @font-face {
      font-family: 'Super Serene';
      src: url('../fonts/Super%20Serene.ttf') format('truetype');
      font-weight: normal;
      font-style: normal;
  }

  @font-face {
      font-family: 'Byrd Bold';
      src: url('../fonts/byrd-bold.ttf') format('truetype');
      font-weight: bold;
      font-style: normal;
  }

  /* Custom styles for the page */
  html {
      height: 100%;
      /* Ensure html takes full viewport height */
  }

  body {
      margin: 0;
      padding: 0;
      overflow-x: hidden;
      font-family: 'Byrd Bold', system-ui;

      font-style: normal;
      background-color: var(--color-background);
      color: var(--color-blue-accent);
  }

  .img-main {
      transition: all 0.3s ease !important;
      animation: mainlogo 2s ease-in-out infinite;
  }

  .img-main:hover {
      scale: 1.1;
      filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.2));
      /* Slight zoom effect on hover */

  }

  @keyframes mainlogo {
      0% {
          transform: translateY(0px);
      }

      50% {
          transform: translateY(-10px);
      }

      100% {
          transform: translateY(0px);
      }
  }

  /* Hero Section Styling */
  .hero-section {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      /* Center content vertically in hero */
      min-height: 100vh;
      /* Make hero section fill the viewport height */
      width: 100%;
      padding: 0rem 0rem;
      /* Add padding for small screens */
      box-sizing: border-box;
      /* Include padding in element's total width and height */
      text-align: center;
      /* Center text within hero */
  }

  .hero-section h1 {
      font-family: 'Super Serene', system-ui, sans-serif;

      color: #fff;
  }

  .marquee-text-content {
      font-family: 'Super Serene', system-ui, sans-serif;


  }

  /* Icon link styles */
  .icon-link {
      padding: 10px;
      font-size: 2rem;
      margin: 0 0.75rem;
      color: var(--color-text-light);
      display: flex;
      border: 2px solid var(--color-blue-accent);
      /* To center icon inside circle */
      justify-content: center;
      align-items: center;
      width: 3.5rem;
      /* Circle size */
      height: 3.5rem;
      /* Circle size */
      border-radius: 50%;
      /* Perfect circle */

      /* Subtle shadow */
      transition: color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease, scale 0.5s ease !important;
      position: relative;
      /* Needed for pseudo-parallax effect */
      perspective: 1000px;
      /* For 3D effect */
  }

  .icon-link:hover {
      color: var(--color-text-light);
      /* Bright blue color on hover */

      transform: translateY(-8px) scale(1.15) rotateX(10deg);
      /* Zoom, float, and slight 3D rotation effect */
      box-shadow: 0 5px 10px var(--box-shadow);
      /* Stronger glowing shadow */
  }

  .icon-link img {
      filter: brightness(5);
      scale: 1.1;
      transition: scale 0.5s ease !important;
  }

  .icon-link:hover img {
      scale: 0.9;
      /* Slightly larger icon on hover */
  }

  /* Token detail link styles */
  .token-detail-link {
      color: var(--color-pink-accent);
      text-decoration: underline;
  }

  .token-detail-link:hover {
      color: var(--color-pink-darker);
  }

  /* Fade-in animation for images */
  @keyframes fadeIn {
      from {
          opacity: 0;
          transform: translateY(10px);
      }

      to {
          opacity: 1;
          transform: translateY(0);
      }
  }

  .fade-in-image {
      opacity: 0;
      animation: fadeIn 1s ease-out forwards;
  }

  .main-logo-fade {
      animation-delay: 0.3s;
  }

  .marquee-image.fade-in-image {
      animation-delay: 0.8s;
  }

  /* Effect for "BUY NOW" button (enhanced) */
  .contract-button {
      background-color: transparent;
      /* Initially no background */
      border: 2px solid var(--color-blue-accent);
      /* Bright blue border */
      color: var(--color-blue-accent);
      /* Bright blue text color */
      border-radius: 9999px;
      /* Fully rounded */
      padding: 0.75rem 2rem;
      font-weight: bold;
      text-transform: uppercase;
      font-size: 1.25rem;
      letter-spacing: 0.05em;
      font-family: 'Byrd Bold', system-ui, sans-serif;
      box-shadow: none;
      /* Initially no glow shadow */
      transition: background-color 0.4s ease, color 0.4s ease, box-shadow 0.8s ease, transform 0.3s ease;
  }

  .contract-button:hover {
      background-color: var(--color-blue-accent);
      /* Fill background on hover */
      color: var(--color-background);
      /* Change text color on hover */
      box-shadow: 0 0 35px 15px var(--box-shadow),
          /* Outer glow */
          0 0 15px 5px var(--box-shadow) inset;
      /* Inner glow */
      transform: translateY(-4px) scale(1.05);
      /* Slight lift and zoom */
  }

/* --- CSS for Static 2x4 Image Grid (Centred) --- */

/* The main container for your image rows */
.marquee-outer-container {
    margin-top: 2.5rem; /* Space from content above */
    margin-bottom: 2.5rem; /* Space to content below */
    width: 100%;
    max-width: 100%;
    margin-left: auto; /* Centers the container itself */
    margin-right: auto; /* Centers the container itself */
    display: flex; /* Make this a flex container */
    flex-direction: column; /* Stack the image rows vertically */
    align-items: center; /* Center the image rows horizontally within this container */
    gap: 20px; /* Consistent gap between the image rows */
    padding: 0 1rem; /* Add horizontal padding to prevent images from touching screen edges */
    box-sizing: border-box; /* Include padding in width */

    /* Remove old marquee properties */
    position: relative; /* Not strictly needed for static, but okay to keep if desired */
    overflow: visible; /* Crucial: ensures content is not hidden and allows proper layout */
}

/* No fade effect for marquee edges - these rules are fine as they explicitly disable old behavior */
.marquee-outer-container::before,
.marquee-outer-container::after {
    display: none; /* Ensure these are hidden if they are for a fade effect */
}


/* Each row of images (will contain 4 images) */
.marquee-row {
    display: flex; /* Make each row a flex container */
    justify-content: center; /* Center the images horizontally within this row */
    align-items: center; /* Vertically align images within this row (if they have different heights) */
    flex-wrap: nowrap; /* Ensures images stay on a single line */
    /* width: fit-content; This is typically handled by justify-content and max-width if needed */
    gap: 20px; /* Add consistent space BETWEEN images in the row */

    /* Remove old marquee properties */
    overflow: visible; /* Ensure content is visible */
}

/* The wrapper around the images in each row */
.marquee-content-wrapper {
    display: flex; /* Make this wrapper a flex container */
    gap: 20px; /* Space between the images */
    justify-content: center; /* Center images within this wrapper */
    align-items: center; /* Vertically align images within this wrapper */

    /* Remove old marquee properties */
    white-space: normal; /* Allow wrapping (though we use nowrap on parent if 4-col) */
    font-size: initial; /* Reset font size, not needed for image layout */
    will-change: auto; /* Reset, not for static images */
    animation: none !important; /* Crucial: disable any old animations */
    transform: none !important; /* Crucial: remove any old transforms */
}

/* Individual images */
.marquee-image {
    height: 400px; /* Your desired height */
    width: 400px;  /* Your desired width */
    object-fit: cover; /* Ensures images cover the area, cropping if necessary */
    border-radius: 0.375rem; /* Keeps your border-radius */
| /* Keeps the subtle shadow */
    transition: transform 0.3s ease; /* Keeps the hover effect transition */

    /* Remove old marquee/inline-block properties */
    margin-right: 0; /* Explicitly set to 0 as gap handles spacing */
    display: block; /* Images are block-level elements within a flex container */
    vertical-align: top; /* Not applicable to flex items, but setting to a safe default if somehow it applies */

    /* Keep these if you intend them for image frames or fallbacks */
    background-color: var(--color-dark-gray-bg);
    border: 2px solid var(--color-border);
}

.marquee-image:hover {
    transform: scale(1.05); /* Slightly enlarge on hover */
}

  /* Responsive adjustments for marquee images */
  @media (max-width: 768px) {
      .marquee-image {
          height: 180px;
          /* 150px * 1.2 = 180px */
          width: 180px;
          /* 150px * 1.2 = 180px */
          margin-right: 0.9rem;
          /* 0.75rem * 1.2 = 0.9rem */
      }
  }

  @media (max-width: 640px) {
      .marquee-image {
          height: 120px;
          /* 100px * 1.2 = 120px */
          width: 120px;
          /* 100px * 1.2 = 120px */
          margin-right: 0.6rem;
          /* 0.5rem * 1.2 = 0.6rem */
      }
  }

  /* Base styles for footer after other content */
  footer {
      width: 100%;
      max-width: 4xl;
      text-align: center;
      padding: 1rem;
      margin-top: 2rem;
      /* Add top margin for separation */
      font-family: 'Byrd Bold', system-ui, sans-serif;
  }

  /* Custom Message Box Styles */
  #customMessageBox {
      position: fixed;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      background-color: var(--color-pink-accent);
      color: var(--color-dark-text);
      padding: 1rem 1.5rem;
      border-radius: 0.5rem;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
      z-index: 1000;
      font-size: 0.875rem;
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.3s ease, visibility 0.3s ease;
      display: flex;
      align-items: center;
      font-family: 'Byrd Bold', system-ui, sans-serif;
  }

  #customMessageBox.show {
      opacity: 1;
      visibility: visible;
  }

  #customMessageBox .icon {
      margin-right: 0.75rem;
  }

  .preloader-blur {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      z-index: 2;
      background: rgba(0, 0, 0, 0.85);
      backdrop-filter: blur(32px);
      -webkit-backdrop-filter: blur(32px);
      transition: opacity 0.5s ease;
      opacity: 1;
      pointer-events: none;
  }

  .preloader-blur.hide {
      opacity: 0;
      pointer-events: none;
  }