    /* Import a cute, playful font */
    /*   @import url('https://fonts.googleapis.com/css2?family=Bagel+Fat+One&display=swap'); */
    @import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

    /* Define CSS Variables for easy color changes */
    :root {
        --font-main: 'Poppins', sans-serif;
        --color-background: #000000;
        --color-text-light: #ffffff;
        --color-text-gray: #9ca3af;
        --color-text-dark-gray: #6b7280;
        /* Tailwind gray-500 */
        --color-pink-accent: rgb(76, 94, 59);
        /* US Army Olive Green */
        --color-pink-darker: rgb(77, 124, 15);
        /* Darker US Army Green */
        --color-blue-accent: rgb(115, 131, 92);
        /* Bright US Army Green for JOIN THE BATTLE */
        --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: #dc2626;
        /* Red for error (Tailwind red-600) */
        --color-error-text: #ffffff;
        /* White text for error */
    }

    /* 
    .poppins-thin {
        font-family: "Poppins", sans-serif;
        font-weight: 100;
        font-style: normal;
    }

    .poppins-extralight {
        font-family: "Poppins", sans-serif;
        font-weight: 200;
        font-style: normal;
    }

    .poppins-light {
        font-family: "Poppins", sans-serif;
        font-weight: 300;
        font-style: normal;
    }

    .poppins-regular {
        font-family: "Poppins", sans-serif;
        font-weight: 400;
        font-style: normal;
    }

    .poppins-medium {
        font-family: "Poppins", sans-serif;
        font-weight: 500;
        font-style: normal;
    }

    .poppins-semibold {
        font-family: "Poppins", sans-serif;
        font-weight: 600;
        font-style: normal;
    }

    .poppins-bold {
        font-family: "Poppins", sans-serif;
        font-weight: 700;
        font-style: normal;
    }

    .poppins-extrabold {
        font-family: "Poppins", sans-serif;
        font-weight: 800;
        font-style: normal;
    }

    .poppins-black {
        font-family: "Poppins", sans-serif;
        font-weight: 900;
        font-style: normal;
    }

    .poppins-thin-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 100;
        font-style: italic;
    }

    .poppins-extralight-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 200;
        font-style: italic;
    }

    .poppins-light-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 300;
        font-style: italic;
    }

    .poppins-regular-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 400;
        font-style: italic;
    }

    .poppins-medium-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 500;
        font-style: italic;
    }

    .poppins-semibold-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 600;
        font-style: italic;
    }

    .poppins-bold-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 700;
        font-style: italic;
    }

    .poppins-extrabold-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 800;
        font-style: italic;
    }

    .poppins-black-italic {
        font-family: "Poppins", sans-serif;
        font-weight: 900;
        font-style: italic;
    } */



    /* Custom styles for the page */
    html,
    body,
    * {
        font-family: 'Orbitron', 'Poppins', sans-serif !important;
    }

    html {
        height: 100%;
        /* Ensure html takes full viewport height */
    }

    body {
        margin: 0;
        padding: 0;
        overflow-x: hidden;
        /* Prevent horizontal scroll due to marquee */
        font-weight: 400;
        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 var(--color-pink-accent));
        /* 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: center;
        /* Center content vertically in hero */
        min-height: 100vh;
        /* Make hero section fill the viewport height */
        width: 100%;
        padding: 2rem 1rem;
        /* 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 */
        letter-spacing: 1px;
    }

    /* 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(--color-pink-accent);
        /* Stronger glowing shadow */
    }

    .icon-link img {
        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;
        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 10px 5px var(--color-pink-accent),
            /* Outer glow */
            0 0 15px 5px var(--color-background) inset;
        /* Inner glow */
        transform: translateY(-4px) scale(1.05);
        /* Slight lift and zoom */
    }

    .tooltip:hover .img-main {
        scale: 1.1;
        filter: drop-shadow(0 0 10px var(--color-pink-accent));
        /* Slight zoom effect on hover */
    }

    /* Marquee styles */
    .marquee-outer-container {
        margin-top: 2.5rem;
        /* Space from content above */
        margin-bottom: 2.5rem;
        /* Space to content below */
        position: relative;
        overflow: hidden;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        /* Space between marquee rows */
        padding: 0 1rem;
        /* Add horizontal padding to prevent images from touching screen edges */
        box-sizing: border-box;
    }

    /* No fade effect for marquee edges (as requested) */
    .marquee-outer-container::before,
    .marquee-outer-container::after {
        display: none;
    }

    .marquee-row {
        overflow: hidden;
    }

    .marquee-content-wrapper {
        display: inline-block;
        white-space: nowrap;
        font-size: 0;
        will-change: transform;
    }

    /* Increased image size by 1.2x */
    .marquee-image {
        height: 240px;
        /* 200px * 1.2 = 240px */
        width: 240px;
        /* 200px * 1.2 = 240px */
        object-fit: cover;
        margin-right: 1.2rem;
        /* 1rem * 1.2 = 1.2rem */
        border-radius: 0.375rem;
        display: inline-block;
        vertical-align: middle;
        background-color: var(--color-dark-gray-bg);
        border: 2px solid var(--color-medium-gray-border);
    }

    /* 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 */
    }

    /* 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;
    }

    #customMessageBox.show {
        opacity: 1;
        visibility: visible;
    }

    #customMessageBox .icon {
        margin-right: 0.75rem;
    }

    /* Combined glitch, fade, and shake animation for preloader */
    @keyframes glitch-fade-shake {
        0% {
            filter: none;
            opacity: 1;
            transform: none;
        }

        10% {
            filter: contrast(2) brightness(2) hue-rotate(20deg);
            transform: translate(-2px, 2px) skewX(2deg) rotate(-1deg);
        }

        20% {
            filter: none;
        }

        30% {
            filter: contrast(2) brightness(2) hue-rotate(-20deg);
            transform: translate(2px, -2px) skewX(-2deg) rotate(1deg);
        }

        40% {
            filter: none;
        }

        50% {
            filter: contrast(3) brightness(1.5) hue-rotate(10deg);
            transform: translate(-4px, 4px) skewX(4deg) rotate(-2deg);
        }

        60% {
            filter: none;
        }

        70% {
            filter: contrast(2) brightness(2) hue-rotate(-10deg);
            transform: translate(4px, -4px) skewX(-4deg) rotate(2deg);
        }

        80% {
            filter: none;
        }

        90% {
            filter: contrast(2) brightness(2) hue-rotate(20deg);
            transform: translate(-2px, 2px) skewX(2deg) rotate(-1deg);
        }

        95% {
            opacity: 0.7;
        }

        100% {
            filter: none;
            opacity: 0;
            transform: scale(1.05) rotate(0.5deg);
        }
    }

    #preloader-overlay.glitch-hide {
        animation: glitch-fade-shake 0.7s cubic-bezier(.36, .07, .19, .97) both;
    }

    /* Preloader Overlay Layout */
    #preloader-overlay {
        position: fixed;
        z-index: 9999;
        inset: 0;
        min-width: 100vw;
        min-height: 100vh;
        width: 100vw;
        height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
    }

    .preloader-bg {
        position: absolute;
        inset: 0;
        width: 100vw;
        height: 100vh;
        background: url('/images/enter.png') center center/cover no-repeat;
        z-index: 0;
    }

    .preloader-flash {
        position: absolute;
        inset: 0;
        width: 100vw;
        height: 100vh;
        z-index: 1;
        background: white;
        opacity: 0;
        transition: opacity 0.35s cubic-bezier(.4, 2, .6, 1);
        pointer-events: none;
    }

    .preloader-flash.active {
        opacity: 1;
        transition: opacity 0.12s cubic-bezier(.4, 2, .6, 1);
    }

    #enter-btn {
        position: relative;
        z-index: 2;
        background: transparent;
        border: none;
        outline: none;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 850px;

        max-width: 98vw;
        max-height: 90vh;
        padding: 0;
        transition: transform 0.25s cubic-bezier(.4, 2, .6, 1);
    }

    #enter-btn img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        display: block;
    }

    #enter-btn:hover {
        transform: scale(1.08);
    }

    #enter-btn:hover img {
        animation: none;
    }

    /* More random/chaotic glitch-shake for preloader background */
    @keyframes bg-glitch-shake-random {
        0% {
            filter: none;
            transform: none;
        }

        7% {
            filter: contrast(2) brightness(2) hue-rotate(20deg);
            transform: translate(-6px, 3px) skewX(2deg) rotate(-2deg) scale(1.01);
        }

        13% {
            filter: none;
            transform: translate(2px, -2px) skewY(-1deg) scale(1.01);
        }

        19% {
            filter: contrast(2) brightness(2) hue-rotate(-20deg);
            transform: translate(8px, -4px) skewX(-2deg) rotate(2deg) scale(0.99);
        }

        27% {
            filter: none;
            transform: translate(-3px, 5px) skewY(2deg) scale(1.02);
        }

        36% {
            filter: contrast(3) brightness(1.5) hue-rotate(10deg);
            transform: translate(-10px, 7px) skewX(4deg) rotate(-4deg) scale(1.03);
        }

        44% {
            filter: none;
            transform: translate(4px, -8px) skewY(-2deg) scale(0.98);
        }

        53% {
            filter: contrast(2) brightness(2) hue-rotate(-10deg);
            transform: translate(12px, -6px) skewX(-4deg) rotate(4deg) scale(1.01);
        }

        61% {
            filter: none;
            transform: translate(-7px, 2px) skewY(1deg) scale(1.01);
        }

        70% {
            filter: contrast(2) brightness(2) hue-rotate(20deg);
            transform: translate(-2px, 2px) skewX(2deg) rotate(-1deg) scale(1.02);
        }

        80% {
            filter: none;
            transform: none;
        }

        100% {
            filter: none;
            transform: none;
        }
    }

    .preloader-bg.bg-glitch-shake {
        animation: bg-glitch-shake-random 0.5s infinite steps(2);
    }

    .hero-section,
    h1,
    h2,
    h3,
    .base-card {
        letter-spacing: 1px;
    }

    .buy-btn {
        position: relative;
        z-index: 99;
        overflow: visible;
    }

   
    .buy-btn {
        /* Make sure text is above blend */
        color: #fff;
    }

    .buy-btn>*:not(.buy-blend) {
        position: relative;
        z-index: 2;
    }

    .blend-bg {
        position: fixed;
        inset: 0;
        width: 100vw;
        height: 100vh;
        background: url('/blend.jpg') center center/cover no-repeat;
        opacity: 0;
        pointer-events: none;
        mix-blend-mode: multiply;
        z-index: 98;
        transition: opacity 0.3s cubic-bezier(.4, 2, .6, 1), transform 0.3s cubic-bezier(.4, 2, .6, 1);
        will-change: opacity, transform;
    }

    .blend-bg.active {
        opacity: 1;
        transform: scale(1);
        animation: blend-shake 0.7s infinite steps(2);
    }

    @keyframes blend-shake {
        0% {
            transform: scale(1.1) rotate(0deg) scaleX(1) scaleY(1);
        }

        20% {
            transform: scale(1.3) rotate(2deg) scaleX(-1) scaleY(1);
        }

        40% {
            transform: scale(1.1) rotate(-2deg) scaleX(1) scaleY(-1);
        }

        60% {
            transform: scale(1.3) rotate(1deg) scaleX(-1) scaleY(-1);
        }

        80% {
            transform: scale(1.1) rotate(-1deg) scaleX(1) scaleY(1);
        }

        100% {
            transform: scale(1.3) rotate(0deg) scaleX(1) scaleY(1);
        }
    }