
        /* Dark Theme Root Variables */
       

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            font-family: 'Poppins', sans-serif;
            background-color: var(--dark-bg-color); /* HTML background from main dark background */
            color: var(--text-light); /* Default text color */
            line-height: 1.6;
            overflow-x: hidden; /* Prevent horizontal scroll */
        }

        .hero-section {
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 90vh;
            padding: 50px 20px;
            position: relative;
            overflow: hidden;
            background-color: var(--hero-section-bg); /* Hero section background */
        }

        /* Background shapes - similar to the image */
        .hero-section::before,
        .hero-section::after {
            content: '';
            position: absolute;
            background: var(--accent-purple); /* Dark purple accent for shapes */
            border-radius: 20px;
            transform: rotate(-10deg);
            z-index: 1;
            opacity: 0.1;
        }

        .hero-section::before {
            width: 80%;
            height: 150%;
            top: -20%;
            right: -20%;
        }

        .hero-section::after {
            width: 40%;
            height: 100%;
            bottom: -50%;
            left: -10%;
            transform: rotate(20deg);
        }

        .hero-container {
            display: flex;
            flex-wrap: wrap;
            gap: 40px;
            width: 100%;
            max-width: 1200px;
            background-color: var(--hero-container-bg); /* Dark blue accent for container */
            border-radius: 20px;
            box-shadow: 0 25px 50px var(--shadow-dark-medium), /* Darker shadow */
                        0 0 0 10px rgba(255, 255, 255, 0.05); /* Subtle inner glow for dark theme */
            padding: 40px;
            z-index: 2;
            position: relative;
            perspective: 1000px;
            transform: translateZ(0);
            color: var(--hero-text-color); /* Container text color */
        }

        .hero-left-content {
            flex: 1;
            min-width: 350px;
            padding-right: 20px;
        }

        .hero-right-image-section {
            flex: 1;
            min-width: 450px;
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .hero-discount-badge {
            position: absolute;
            top: 20px;
            right: 20px;
            background: var(--hero-discount-badge-bg); /* Primary CTA for badge background */
            color: var(--hero-discount-badge-text); /* Light text for badge */
            padding: 10px 20px;
            border-radius: 10px;
            font-size: 2.5em;
            font-weight: 700;
            transform: rotate(5deg) translateZ(20px);
            z-index: 10;
            box-shadow: 0 5px 15px var(--shadow-dark-medium); /* Darker shadow */
        }

        .hero-discount-badge span {
            font-size: 0.5em;
            display: block;
            margin-top: -5px;
        }

        .hero-image-container {
            position: relative;
            width: 100%;
            height: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .hero-image-container img {
            max-width: 100%;
            height: auto;
            border-radius: 15px;
            box-shadow: 0 15px 35px var(--shadow-dark-heavy), /* Deeper shadow */
                        0 0 0 5px rgba(255, 255, 255, 0.05); /* Subtle highlight for dark theme */
            position: relative;
            z-index: 5;
            transform: translateZ(10px);
            transition: transform 0.3s ease-out;
        }

        .hero-image-container img:hover {
            transform: translateZ(30px) scale(1.02);
        }

        .hero-right-image-bg-shape {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: var(--hero-image-bg-shape); /* Gradient for image background shape */
            border-radius: 20px;
            transform: rotate(-5deg) translateZ(-5px);
            transform-origin: center center;
            box-shadow: 0 15px 40px var(--shadow-dark-medium); /* Darker shadow */
            z-index: 2;
        }

        .hero-left-content h1 {
            font-size: 2.2em;
            color: var(--hero-heading-color); /* Heading color */
            margin-bottom: 10px;
            line-height: 1.1;
            text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2); /* Slightly stronger text shadow for dark theme */
        }

        .hero-offer-details {
            font-size: 1.2em;
            color: var(--hero-accent-color); /* Primary CTA for offer details */
            font-weight: 600;
            margin-bottom: 25px;
        }

        .hero-features-list {
            list-style: none;
            padding: 0;
            margin-bottom: 30px;
        }

        .hero-features-list li {
            margin-bottom: 15px;
            font-size: 1.1em;
            display: flex;
            align-items: center;
            color: var(--hero-text-color); /* List item text color */
        }

        .hero-features-list li::before {
            content: '✔';
            color: var(--hero-check-mark); /* Primary CTA for checkmark */
            margin-right: 10px;
            font-size: 1.3em;
            font-weight: bold;
        }

        .hero-price-section {
            margin-bottom: 30px;
            display: flex;
            align-items: baseline;
            gap: 10px;
        }

        .hero-price {
            font-size: 3em;
            font-weight: 700;
            color: var(--hero-heading-color); /* Heading color for price */
        }

        .hero-price small {
            font-size: 0.5em;
            vertical-align: middle;
            font-weight: 400;
        }

        .hero-months-free {
            font-size: 1.1em;
            font-weight: 600;
            color: var(--hero-accent-color); /* Primary CTA for months free */
        }

        .hero-cta-section {
            display: flex;
            align-items: center;
            gap: 20px;
            flex-wrap: wrap;
        }

        .hero-start-button {
            background-color: var(--hero-button-bg); /* Primary CTA for button */
            color: #fff;
            padding: 15px 30px;
            border: none;
            border-radius: 8px;
            font-size: 1.2em;
            font-weight: 600;
            cursor: pointer;
            transition: background-color 0.3s ease, transform 0.2s ease;
            text-decoration: none;
        }

        .hero-start-button:hover {
            background-color: var(--hero-button-hover-bg); /* Darker CTA on hover */
            transform: translateY(-3px);
        }

        .hero-countdown-timer {
            background-color: var(--hero-countdown-bg); /* Dark background for countdown */
            color: var(--hero-countdown-text); /* Primary CTA for countdown text */
            padding: 12px 20px;
            border-radius: 8px;
            font-size: 1.1em;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 5px;
            box-shadow: 0 4px 8px var(--shadow-dark-light); /* Lighter shadow for countdown */
        }

        .hero-guarantee {
            margin-top: 25px;
            font-size: 0.9em;
            color: var(--hero-guarantee-text); /* Muted text for guarantee */
            display: flex;
            align-items: center;
        }

        .hero-guarantee::before {
            content: 'ⓘ';
            margin-right: 8px;
            color: var(--hero-guarantee-icon); /* Primary CTA for guarantee icon */
            font-size: 1.1em;
        }

        /* Responsive adjustments */
        @media (max-width: 1024px) {
            .hero-container {
                flex-direction: column;
                align-items: center;
                padding: 30px;
                gap: 30px;
            }

            .hero-left-content,
            .hero-right-image-section {
                padding-right: 0;
                min-width: unset;
                width: 100%;
                text-align: center;
            }

            .hero-right-image-section {
                order: -1;
            }

            .hero-left-content h1 {
                font-size: 2.5em;
            }

            .hero-offer-details {
                font-size: 1.1em;
            }

            .hero-features-list {
                text-align: left;
                width: fit-content;
                margin-left: auto;
                margin-right: auto;
            }

            .hero-price-section {
                justify-content: center;
            }

            .hero-cta-section {
                justify-content: center;
            }
        }

        @media (max-width: 768px) {
            .hero-section {
                padding: 30px 15px;
            }

            .hero-container {
                padding: 25px;
            }

            .hero-left-content h1 {
                font-size: 2em;
            }

            .hero-offer-details {
                font-size: 1em;
            }

            .hero-price {
                font-size: 2.5em;
            }

            .hero-start-button {
                padding: 12px 25px;
                font-size: 1.1em;
            }

            .hero-countdown-timer {
                padding: 10px 15px;
                font-size: 1em;
            }

            .hero-discount-badge {
                font-size: 2em;
                padding: 8px 15px;
            }
        }

        @media (max-width: 480px) {
            .hero-container {
                border-radius: 15px;
                padding: 20px;
            }

            .hero-left-content h1 {
                font-size: 1.8em;
            }

            .hero-discount-badge {
                font-size: 1.8em;
                top: 10px;
                right: 10px;
            }

            .hero-section::before,
            .hero-section::after {
                transform: rotate(0deg);
            }
        }
    