/* ========================================
   L'HORIZON CRYPTO - Premium Landing Page
   Design System & Styles
======================================== */

/* ========================================
   CINEMATIC INTRO SPLASH SCREEN
======================================== */
.intro-splash {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    /* Mobile Safari fix */
    background: #000;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.8s ease, visibility 0.8s ease;
}

.intro-splash.hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.intro-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.skip-intro-btn {
    position: absolute;
    bottom: 40px;
    right: 40px;
    padding: 14px 28px;
    background: rgba(255, 255, 255, 0.1);
    /* Safari Fix */
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 0.95rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 8px;
}

.skip-intro-btn:hover {
    background: rgba(247, 147, 26, 0.3);
    border-color: rgba(247, 147, 26, 0.5);
    transform: translateX(5px);
}

.skip-arrow {
    transition: transform 0.3s ease;
}

.skip-intro-btn:hover .skip-arrow {
    transform: translateX(5px);
}

.intro-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
}

.intro-progress-bar {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #f7931a, #00ff88);
    transition: width 0.1s linear;
}

/* Hide intro on subsequent visits */
body.intro-seen .intro-splash {
    display: none;
}

@media (max-width: 768px) {
    .skip-intro-btn {
        bottom: 20px;
        right: 20px;
        padding: 12px 20px;
        font-size: 0.85rem;
    }
}

/* CSS Variables - Design Tokens */
:root {
    /* Colors - Dark Mode First */
    --bg-primary: #0a0a0f;
    --bg-secondary: #12121a;
    --bg-tertiary: #1a1a2e;
    --bg-card: rgba(26, 26, 46, 0.6);
    --bg-card-hover: rgba(36, 36, 66, 0.8);

    /* Accent Colors */
    --accent-gold: #f7931a;
    --accent-gold-light: #ffb347;
    --accent-blue: #627eea;
    --accent-purple: #9945ff;
    --accent-cyan: #00d4ff;
    --accent-green: #00ff88;
    --accent-red: #ff4757;
    --accent-warning: #ffbe0b;

    /* Gradients */
    --gradient-primary: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-purple) 100%);
    --gradient-card: linear-gradient(145deg, rgba(247, 147, 26, 0.1) 0%, rgba(153, 69, 255, 0.1) 100%);
    --gradient-text: linear-gradient(90deg, var(--accent-gold) 0%, var(--accent-cyan) 50%, var(--accent-purple) 100%);
    --gradient-glow: radial-gradient(circle, var(--accent-gold) 0%, transparent 70%);

    /* Text Colors */
    --text-primary: #ffffff;
    --text-secondary: rgba(255, 255, 255, 0.75);
    --text-tertiary: rgba(255, 255, 255, 0.5);
    --text-muted: rgba(255, 255, 255, 0.35);

    /* Typography */
    --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-display: 'Space Grotesk', var(--font-primary);

    /* Spacing */
    --space-xs: 0.25rem;
    --space-sm: 0.5rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-2xl: 3rem;
    --space-3xl: 4rem;
    --space-4xl: 6rem;

    /* Border Radius */
    --radius-sm: 0.5rem;
    --radius-md: 1rem;
    --radius-lg: 1.5rem;
    --radius-xl: 2rem;
    --radius-full: 9999px;

    /* Shadows */
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 20px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 8px 40px rgba(0, 0, 0, 0.5);
    --shadow-glow: 0 0 40px rgba(247, 147, 26, 0.3);
    --shadow-glow-purple: 0 0 40px rgba(153, 69, 255, 0.3);

    /* Transitions */
    --transition-fast: 150ms ease;
    --transition-base: 300ms ease;
    --transition-slow: 500ms ease;

    /* Container */
    --container-max: 1200px;
    --container-padding: 1.5rem;
}

/* ========================================
   BASE STYLES
======================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-primary);
    background-color: var(--bg-primary);
    background-color: var(--bg-primary);
    overflow-x: hidden;
}

/* Animated Background */
.bg-gradient {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(ellipse at 20% 20%, rgba(247, 147, 26, 0.08) 0%, transparent 50%),
        radial-gradient(ellipse at 80% 80%, rgba(153, 69, 255, 0.08) 0%, transparent 50%),
        radial-gradient(ellipse at 50% 50%, rgba(0, 212, 255, 0.05) 0%, transparent 60%);
    z-index: -2;
    pointer-events: none;
}

.floating-orbs {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
}

.orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.4;
    animation: float 20s ease-in-out infinite;
}

.orb-1 {
    width: 400px;
    height: 400px;
    background: var(--accent-gold);
    top: 10%;
    left: -10%;
    animation-delay: 0s;
}

.orb-2 {
    width: 350px;
    height: 350px;
    background: var(--accent-purple);
    top: 50%;
    right: -10%;
    animation-delay: -7s;
}

.orb-3 {
    width: 300px;
    height: 300px;
    background: var(--accent-cyan);
    bottom: 10%;
    left: 30%;
    animation-delay: -14s;
}

@keyframes float {

    0%,
    100% {
        transform: translate(0, 0) rotate(0deg);
    }

    25% {
        transform: translate(30px, -30px) rotate(5deg);
    }

    50% {
        transform: translate(-20px, 20px) rotate(-5deg);
    }

    75% {
        transform: translate(20px, 30px) rotate(3deg);
    }
}

/* Container */
.container {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 var(--container-padding);
    padding-top: 120px;
}

/* ========================================
   TYPOGRAPHY
======================================== */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-display);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

h1 {
    font-size: clamp(2.5rem, 6vw, 4.5rem);
}

h2 {
    font-size: clamp(2rem, 4vw, 3rem);
}

h3 {
    font-size: clamp(1.5rem, 3vw, 2rem);
}

.gradient-text {
    background: var(--gradient-text);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 200% auto;
    animation: shimmer 3s ease-in-out infinite;
}

@keyframes shimmer {

    0%,
    100% {
        background-position: 0% center;
    }

    50% {
        background-position: 100% center;
    }
}

/* ========================================
   NAVIGATION
======================================== */

.navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    padding: var(--space-md) 0;
    background: rgba(10, 10, 15, 0.8);
    /* Safari Fix */
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.nav-container {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 var(--container-padding);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    text-decoration: none;
    color: var(--text-primary);
}

.logo-icon {
    font-size: 1.75rem;
}

.logo-img {
    height: 40px;
    width: auto;
    border-radius: var(--radius-sm);
    -o-object-fit: contain;
    object-fit: contain;
}

.logo-text {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 1.25rem;
    letter-spacing: -0.02em;
}

.footer-logo .logo-img {
    height: 50px;
}

.btn-nav {
    padding: var(--space-sm) var(--space-lg);
    font-size: 0.875rem;
}

.btn-nav.btn-glow {
    background: linear-gradient(135deg, var(--accent-gold), #ffb347);
    color: #000;
    font-weight: 700;
    animation: glow-button 2s ease-in-out infinite;
    box-shadow: 0 0 20px rgba(247, 147, 26, 0.4);
}

.btn-nav.btn-glow:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 30px rgba(247, 147, 26, 0.6);
}

@keyframes glow-button {

    0%,
    100% {
        box-shadow: 0 0 15px rgba(247, 147, 26, 0.4);
    }

    50% {
        box-shadow: 0 0 25px rgba(247, 147, 26, 0.7);
    }
}

/* ========================================
   BUTTONS
======================================== */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
    padding: var(--space-md) var(--space-xl);
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    border: none;
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;
}

.btn-primary {
    background: var(--gradient-primary);
    color: var(--text-primary);
    box-shadow: var(--shadow-glow), var(--shadow-md);
}

.btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left var(--transition-slow);
}

.btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-glow), var(--shadow-lg);
}

.btn-primary:hover::before {
    left: 100%;
}

.btn-hero {
    padding: var(--space-lg) var(--space-2xl);
    font-size: 1.125rem;
}

.btn-cta {
    padding: var(--space-lg) var(--space-3xl);
    font-size: 1.25rem;
}

.btn-icon {
    font-size: 1.25em;
}

/* ========================================
   HERO SECTION
======================================== */

.hero {
    min-height: 100vh;
    min-height: 100dvh;
    /* Mobile Safari fix */
    display: flex;
    align-items: center;
    padding: 100px 0 var(--space-3xl);
    /* Reduced top padding from 80px + space-3xl */
    text-align: center;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
    padding: var(--space-sm) var(--space-lg);
    background: var(--gradient-card);
    border: 1px solid rgba(247, 147, 26, 0.3);
    border-radius: var(--radius-full);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--accent-gold);
    margin-bottom: var(--space-xl);
    animation: pulse 2s ease-in-out infinite;
}

@media (max-width: 768px) {
    .hero-badge {
        font-size: 0.75rem;
        padding: var(--space-xs) var(--space-md);
    }
}

/* Fix Hero Desktop Spacing */
@media (min-width: 769px) {
    .hero {
        padding-top: 50px !important;
        /* Reduced from 100px */
        padding-bottom: 30px !important;
        /* Reduced from var(--space-3xl) */
    }

    .hero .container {
        padding-top: 60px !important;
        /* Reduced from 120px */
    }

    /* Fix Lead Magnet Spacing on Desktop */
    .lead-magnet-section {
        padding-top: 80px !important;
    }
}


@keyframes pulse {

    0%,
    100% {
        box-shadow: 0 0 20px rgba(247, 147, 26, 0.2);
    }

    50% {
        box-shadow: 0 0 40px rgba(247, 147, 26, 0.4);
    }
}

.hero-title {
    margin-bottom: var(--space-md);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.title-accent {
    font-size: 0.8em;
    margin-right: var(--space-sm);
}

.hero-subtitle {
    font-size: clamp(1.25rem, 2.5vw, 1.75rem);
    font-weight: 500;
    color: var(--text-secondary);
    margin-bottom: var(--space-lg);
}

.hero-description {
    max-width: 700px;
    margin: 0 auto var(--space-2xl);
    font-size: 1.125rem;
    color: var(--text-secondary);
    line-height: 1.8;
}

.trust-indicators {
    display: flex;
    justify-content: center;
    gap: var(--space-3xl);
    margin-top: var(--space-3xl);
    display: flex;
    justify-content: center;
    gap: var(--space-lg);
    margin-top: var(--space-3xl);
    flex-wrap: wrap;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.trust-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-md);
    width: 100%;
}

.trust-badge {
    flex: 0 0 calc(50% - var(--space-md));
    max-width: calc(50% - var(--space-md));
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    padding: var(--space-md);
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-md);
}

/* ================================
   CORRECTIONS MOBILE UNIQUEMENT
   ================================ */
@media (max-width: 768px) {

    /* 1. Empêcher le scroll horizontal sur mobile */
    html,
    body {
        overflow-x: hidden;
        max-width: 100vw;
    }

    /* 2. Value props - réduire de 1px sur mobile */
    .value-props {
        max-width: calc(100% - 1px);
        box-sizing: border-box;
    }

    .value-prop {
        max-width: 100%;
        overflow-wrap: break-word;
    }

    /* 3. Trust badges - 2 par ligne avec bordure verte sur mobile */
    .trust-badges {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        justify-content: center;
        max-width: 100%;
    }

    .trust-badge,
    .trust-badge.highlight-badge {
        flex: 0 0 calc(50% - 4px);
        max-width: calc(50% - 4px);
        border: 1px solid #00FF88;
        border-radius: 8px;
        padding: 8px 10px;
        display: flex;
        align-items: center;
        gap: 6px;
        background: rgba(0, 255, 136, 0.05);
        box-sizing: border-box;
        font-size: 0.85rem;
    }

    /* 4. See More Functionality for Pricing */
    .pricing-features li.mobile-hidden {
        display: none;
    }

    .pricing-features.expanded li.mobile-hidden {
        display: flex;
        /* Assuming flex is used in li, otherwise block */
        animation: fadeIn 0.3s ease;
    }

    .see-more-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        width: 100%;
        padding: 10px;
        margin-top: 10px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 8px;
        color: var(--accent-green);
        font-size: 0.85rem;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .see-more-btn:hover {
        background: rgba(255, 255, 255, 0.1);
    }
}

/* Pour les très petits écrans */
@media (max-width: 400px) {

    .trust-badge,
    .trust-badge.highlight-badge {
        padding: 6px 8px;
        font-size: 0.75rem;
        gap: 4px;
    }

    .badge-icon {
        font-size: 0.9rem;
    }
}

.trust-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-xs);
}

.trust-number {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 700;
    background: var(--gradient-primary);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.trust-label {
    font-size: 0.875rem;
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

/* ========================================
   LEGAL WARNING
======================================== */

.legal-warning {
    padding: var(--space-2xl) 0;
}

.warning-box {
    display: flex;
    gap: var(--space-lg);
    padding: var(--space-xl);
    background: rgba(255, 190, 11, 0.1);
    border: 1px solid rgba(255, 190, 11, 0.3);
    border-radius: var(--radius-lg);
    backdrop-filter: blur(10px);
}

.warning-icon {
    font-size: 2rem;
    flex-shrink: 0;
}

.warning-content h3 {
    font-size: 1.125rem;
    color: var(--accent-warning);
    margin-bottom: var(--space-sm);
}

.warning-content p {
    font-size: 0.9rem;
    color: var(--text-secondary);
    line-height: 1.7;
}

/* ========================================
   SECTION HEADERS
======================================== */

.section-header {
    text-align: center;
    margin-bottom: var(--space-3xl);
}

.section-icon {
    display: inline-block;
    font-size: 3rem;
    margin-bottom: var(--space-md);
}

.section-subtitle {
    font-size: 1.125rem;
    color: var(--text-tertiary);
    margin-top: var(--space-sm);
}

.highlight-link-orange {
    color: var(--accent-gold) !important;
    font-weight: 700;
}

/* ========================================
   STORY SECTION
======================================== */

.story-section {
    padding: var(--space-4xl) 0;
}

.story-content {
    max-width: 800px;
    margin: 0 auto;
}

.story-card {
    display: flex;
    gap: var(--space-xl);
    padding: var(--space-lg) 0;
}

.story-timeline {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
}

.timeline-dot {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--accent-gold);
    box-shadow: 0 0 20px var(--accent-gold);
}

.timeline-dot.error {
    background: var(--accent-red);
    box-shadow: 0 0 20px var(--accent-red);
}

.timeline-dot.warning {
    background: var(--accent-warning);
    box-shadow: 0 0 20px var(--accent-warning);
}

.timeline-dot.success {
    background: var(--accent-green);
    box-shadow: 0 0 20px var(--accent-green);
}

.timeline-line {
    flex: 1;
    width: 2px;
    background: linear-gradient(to bottom, var(--accent-gold), transparent);
    margin-top: var(--space-sm);
}

.story-card.final .timeline-line {
    display: none;
}

.story-text {
    padding: var(--space-lg);
    background: var(--bg-card);
    border-radius: var(--radius-lg);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.story-text p {
    font-size: 1.125rem;
    line-height: 1.8;
    color: var(--text-secondary);
}

.highlight {
    color: var(--accent-gold);
    font-weight: 600;
}

.highlight-error {
    color: var(--accent-red);
    font-weight: 600;
}

.highlight-warning {
    color: var(--accent-warning);
    font-weight: 600;
}

.highlight-success {
    color: var(--accent-green);
    font-weight: 600;
}

/* ========================================
   PROGRAM SECTION
======================================== */

.program-section {
    padding: var(--space-4xl) 0;
    background: linear-gradient(180deg, transparent, rgba(26, 26, 46, 0.5), transparent);
}

.program-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: var(--space-xl);
}

.program-card {
    padding: var(--space-2xl);
    background: var(--bg-card);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-xl);
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;
}

.program-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--gradient-primary);
    opacity: 0;
    transition: opacity var(--transition-base);
}

.program-card:hover {
    transform: translateY(-8px);
    border-color: rgba(247, 147, 26, 0.3);
    box-shadow: var(--shadow-glow);
}

.program-card:hover::before {
    opacity: 1;
}

.program-card.featured {
    border-color: rgba(247, 147, 26, 0.3);
    background: var(--gradient-card);
}

.program-card.featured::before {
    opacity: 1;
}

.card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: var(--space-lg);
}

.card-number {
    font-family: var(--font-display);
    font-size: 3rem;
    font-weight: 800;
    color: rgba(255, 255, 255, 0.1);
    line-height: 1;
}

.card-icon {
    font-size: 2.5rem;
}

.program-card h3 {
    font-size: 1.5rem;
    margin-bottom: var(--space-sm);
}

.card-subtitle {
    color: var(--accent-gold);
    font-size: 0.9rem;
    font-weight: 500;
    margin-bottom: var(--space-xl);
}

.card-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
}

.card-list li {
    display: flex;
    gap: var(--space-md);
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.list-icon {
    flex-shrink: 0;
    font-size: 1.25rem;
}

/* ========================================
   TREASURE SECTION
======================================== */

.treasure-section {
    padding: var(--space-4xl) 0;
    text-align: center;
}

.treasure-content {
    max-width: 800px;
    margin: 0 auto;
}

.treasure-icon-wrapper {
    position: relative;
    display: inline-block;
    margin-bottom: var(--space-xl);
}

.treasure-icon {
    font-size: 5rem;
    display: block;
    animation: float-icon 3s ease-in-out infinite;
}

@keyframes float-icon {

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

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

.treasure-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 150px;
    height: 150px;
    background: var(--gradient-glow);
    filter: blur(40px);
    opacity: 0.5;
    z-index: -1;
}

.treasure-section h2 {
    margin-bottom: var(--space-sm);
}

.treasure-subtitle {
    font-size: 1.25rem;
    color: var(--accent-gold);
    margin-bottom: var(--space-xl);
}

.treasure-description {
    font-size: 1.125rem;
    color: var(--text-secondary);
    line-height: 1.8;
    margin-bottom: var(--space-2xl);
}

.highlight-gold {
    color: var(--accent-gold);
    font-weight: 700;
    text-shadow: 0 0 20px rgba(247, 147, 26, 0.5);
}

.promise-box {
    display: flex;
    align-items: flex-start;
    gap: var(--space-lg);
    padding: var(--space-xl);
    background: var(--gradient-card);
    border: 1px solid rgba(247, 147, 26, 0.2);
    border-radius: var(--radius-lg);
    text-align: left;
}

.promise-icon {
    font-size: 2rem;
    flex-shrink: 0;
}

.promise-box p {
    font-size: 1.05rem;
    color: var(--text-secondary);
    line-height: 1.7;
}

/* ========================================
   COMPARISON TABLE
======================================== */

.comparison-section {
    padding: var(--space-4xl) 0;
}

.comparison-table {
    background: var(--bg-card);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-xl);
    overflow: hidden;
}

.table-header {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    background: var(--bg-tertiary);
    font-weight: 600;
}

.table-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    transition: background var(--transition-fast);
}

.table-row:hover {
    background: rgba(255, 255, 255, 0.02);
}

.table-cell {
    padding: var(--space-lg) var(--space-xl);
    display: flex;
    align-items: center;
    gap: var(--space-sm);
}

.table-cell.concept {
    font-weight: 600;
    color: var(--text-primary);
}

.table-cell.old {
    color: var(--text-tertiary);
    background: rgba(255, 71, 87, 0.05);
}

.table-cell.new {
    color: var(--accent-green);
    background: rgba(0, 255, 136, 0.05);
}

.table-header .table-cell {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-xs);
}

.year-badge {
    font-size: 0.75rem;
    padding: var(--space-xs) var(--space-sm);
    border-radius: var(--radius-sm);
    font-weight: 700;
}

.year-badge.error {
    background: rgba(255, 71, 87, 0.2);
    color: var(--accent-red);
}

.year-badge.success {
    background: rgba(0, 255, 136, 0.2);
    color: var(--accent-green);
}

.concept-icon {
    font-size: 1.25rem;
}

/* ========================================
   CTA SECTION
======================================== */

.cta-section {
    padding: var(--space-4xl) 0;
    background: linear-gradient(180deg, transparent, rgba(247, 147, 26, 0.05), transparent);
}

.cta-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
    padding: var(--space-3xl);
    background: var(--bg-card);
    border: 1px solid rgba(247, 147, 26, 0.2);
    border-radius: var(--radius-xl);
    position: relative;
    overflow: hidden;
}

.cta-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--gradient-primary);
}

.cta-icon {
    font-size: 4rem;
    display: block;
    margin-bottom: var(--space-xl);
}

.cta-content h2 {
    margin-bottom: var(--space-lg);
}

.cta-content>p {
    font-size: 1.125rem;
    color: var(--text-secondary);
    line-height: 1.8;
    margin-bottom: var(--space-2xl);
}

.cta-features {
    display: flex;
    justify-content: center;
    gap: var(--space-xl);
    margin-top: var(--space-xl);
    flex-wrap: wrap;
}

.cta-feature {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    color: var(--text-secondary);
    font-size: 0.9rem;
}

.cta-feature span {
    color: var(--accent-green);
    font-weight: 700;
}

/* ========================================
   AUTHOR SECTION
======================================== */

.author-section {
    padding: var(--space-3xl) 0;
}

.author-content {
    display: flex;
    align-items: center;
    gap: var(--space-xl);
    padding: var(--space-2xl);
    background: var(--bg-card);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-xl);
    max-width: 700px;
    margin: 0 auto;
}

.author-avatar {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: var(--gradient-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: var(--shadow-glow);
}

.avatar-icon {
    font-size: 3rem;
}

.author-info h3 {
    font-size: 1.25rem;
    margin-bottom: var(--space-sm);
}

.author-info p {
    font-size: 1rem;
    color: var(--text-secondary);
    line-height: 1.7;
}

/* ========================================
   FOOTER
======================================== */

.footer {
    padding: var(--space-3xl) 0;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.footer-content {
    text-align: center;
}

.footer-logo {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
    margin-bottom: var(--space-lg);
}

.footer-copyright {
    color: var(--text-tertiary);
    font-size: 0.9rem;
    margin-bottom: var(--space-sm);
}

.footer-disclaimer {
    color: var(--text-muted);
    font-size: 0.8rem;
}

/* ========================================
   RESPONSIVE DESIGN
======================================== */

@media (max-width: 768px) {
    .trust-indicators {
        gap: var(--space-xl);
    }

    .warning-box {
        flex-direction: column;
        text-align: center;
    }

    .story-card {
        gap: var(--space-md);
    }

    .program-grid {
        grid-template-columns: 1fr;
    }

    .table-header,
    .table-row {
        grid-template-columns: 1fr;
    }

    .table-cell.concept {
        background: var(--bg-tertiary);
        font-size: 1.1rem;
    }

    .table-header .table-cell.concept {
        display: none;
    }

    .author-content {
        flex-direction: column;
        text-align: center;
    }

    .promise-box {
        flex-direction: column;
        text-align: center;
    }

    .btn-hero,
    .btn-cta {
        padding: var(--space-md) var(--space-xl);
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    :root {
        --container-padding: 1rem;
    }

    .hero-badge {
        font-size: 0.75rem;
        padding: var(--space-xs) var(--space-md);
    }

    .trust-indicators {
        flex-direction: column;
        gap: var(--space-lg);
    }

    .cta-features {
        flex-direction: column;
        gap: var(--space-md);
    }
}

/* ========================================
   HERO IMAGE
======================================== */

.hero-image {
    margin: var(--space-3xl) auto var(--space-xl);
    max-width: 400px;
    position: relative;
}

.ebook-cover {
    width: 100%;
    height: auto;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg), var(--shadow-glow-purple);
    animation: float-book 4s ease-in-out infinite;
    transition: transform var(--transition-base);
}

.ebook-cover:hover {
    transform: scale(1.05) rotateY(-5deg);
}

@keyframes float-book {

    0%,
    100% {
        transform: translateY(0) rotateY(0deg);
    }

    50% {
        transform: translateY(-15px) rotateY(5deg);
    }
}

/* ========================================
   EMAIL CAPTURE FORM
======================================== */

.email-form {
    max-width: 600px;
    margin: 0 auto var(--space-2xl);
}

.form-group {
    display: flex;
    gap: var(--space-sm);
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-lg);
    padding: var(--space-sm);
    transition: all var(--transition-base);
}

.form-group:focus-within {
    border-color: var(--accent-gold);
    box-shadow: 0 0 30px rgba(247, 147, 26, 0.2);
}

.form-group input {
    flex: 1;
    padding: var(--space-md) var(--space-lg);
    background: transparent;
    border: none;
    color: var(--text-primary);
    font-family: var(--font-primary);
    font-size: 1rem;
    outline: none;
}

.form-group input::-moz-placeholder {
    color: var(--text-tertiary);
}

.form-group input::placeholder {
    color: var(--text-tertiary);
}

.btn-submit {
    padding: var(--space-md) var(--space-xl);
    white-space: nowrap;
}

.form-disclaimer {
    margin-top: var(--space-md);
    font-size: 0.85rem;
    color: var(--text-tertiary);
}

/* ========================================
   SUCCESS MODAL
======================================== */

.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(10px);
    z-index: 2000;
    justify-content: center;
    align-items: center;
    animation: fadeIn 0.3s ease;
}

.modal.active {
    display: flex;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.modal-content {
    background: var(--bg-secondary);
    border: 1px solid rgba(247, 147, 26, 0.3);
    border-radius: var(--radius-xl);
    padding: var(--space-3xl);
    max-width: 500px;
    width: 90%;
    text-align: center;
    position: relative;
    animation: slideUp 0.4s ease;
    box-shadow: var(--shadow-glow), var(--shadow-lg);
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(50px);
    }

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

.modal-close {
    position: absolute;
    top: var(--space-lg);
    right: var(--space-lg);
    font-size: 2rem;
    color: var(--text-tertiary);
    cursor: pointer;
    transition: color var(--transition-fast);
    line-height: 1;
}

.modal-close:hover {
    color: var(--text-primary);
}

.modal-icon {
    font-size: 4rem;
    margin-bottom: var(--space-lg);
}

.modal-content h3 {
    font-size: 1.75rem;
    margin-bottom: var(--space-md);
    background: var(--gradient-primary);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.modal-content p {
    color: var(--text-secondary);
    margin-bottom: var(--space-md);
    line-height: 1.7;
}

.modal-note {
    font-size: 0.9rem;
    color: var(--text-tertiary);
}

.modal-content .btn {
    margin-top: var(--space-lg);
}

/* ========================================
   RESPONSIVE ADDITIONS
======================================== */

@media (max-width: 768px) {
    .hero-image {
        max-width: 280px;
    }

    .form-group {
        flex-direction: column;
        padding: var(--space-md);
    }

    .form-group input {
        text-align: center;
    }

    .btn-submit {
        width: 100%;
        justify-content: center;
    }

    .modal-content {
        padding: var(--space-2xl);
    }

    .pricing-grid {
        grid-template-columns: 1fr;
    }

    .pricing-card.featured {
        transform: none;
    }

    .guarantee-box {
        flex-direction: column;
        text-align: center;
    }
}

@media (max-width: 480px) {

    /* --- GLOBAL COMPACT TYPOGRAPHY --- */
    body {
        font-size: 14px;
        /* Reduced base font size */
    }

    h1,
    .hero-title {
        font-size: 1.8rem !important;
        /* Significantly smaller hero title */
        line-height: 1.1;
    }

    h2 {
        font-size: 1.4rem !important;
    }

    h3 {
        font-size: 1.2rem !important;
    }

    .section-subtitle,
    .hero-subtitle {
        font-size: 0.95rem !important;
        margin-bottom: var(--space-md);
    }

    /* --- GLOBAL SPACING REDUCTION --- */
    .section-header {
        margin-bottom: var(--space-lg);
    }

    .container {
        padding: 0 var(--space-md);
    }

    /* Ensure pricing section allows full-width scroll */
    .pricing-section .container {
        padding-left: var(--space-md);
        padding-right: var(--space-md);
        overflow: visible;
    }

    section {
        padding: var(--space-xl) 0 !important;
        /* Tighter sections */
    }

    /* --- HERO COMPACT --- */
    .hero {
        padding-top: 90px;
        min-height: auto;
    }

    .hero-content {
        gap: var(--space-md);
    }

    .hero-image {
        max-width: 160px;
        /* Tiny hero image */
        margin: 0 auto;
    }

    .hero-badge {
        font-size: 0.7rem;
        padding: 4px 10px;
    }

    /* --- PRICING GRID ULTRA COMPACT (Horizontal Scroll) --- */
    .pricing-grid {
        display: flex;
        flex-direction: row;
        /* Force horizontal row */
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: var(--space-md);
        width: 100%;
        max-width: 100%;
        padding-bottom: 20px;
        /* Space for scrollbar */
        -webkit-overflow-scrolling: touch;
    }

    .pricing-grid::-webkit-scrollbar {
        height: 6px;
    }

    .pricing-grid::-webkit-scrollbar-track {
        background: rgba(255, 255, 255, 0.05);
        border-radius: 10px;
    }

    .pricing-grid::-webkit-scrollbar-thumb {
        background: var(--accent-gold);
        border-radius: 10px;
    }

    .pricing-card {
        flex: 0 0 85vw;
        /* Each card takes 85% of screen width */
        width: 85vw;
        max-width: 320px;
        scroll-snap-align: center;
        padding: var(--space-md) !important;
        margin: 0 !important;
        border-radius: var(--radius-lg);
        background: var(--bg-card);
        /* Ensure background handles opacity correctly */
    }

    .pricing-header {
        margin-bottom: var(--space-md);
        padding-bottom: var(--space-sm);
    }

    .pricing-header h3 {
        font-size: 1.2rem;
        /* Compact title */
        margin-bottom: 2px;
    }

    .price-amount {
        font-size: 2rem !important;
        /* Smaller price tag */
    }

    .price-net-badge {
        font-size: 0.8rem;
    }

    .pricing-features {
        margin-bottom: var(--space-md);
    }

    .pricing-features li {
        font-size: 0.85rem;
        padding: 2px 0;
        /* Tighter list */
        align-items: center;
    }

    .pricing-card .btn {
        padding: 10px;
        /* Slimmer buttons */
        font-size: 0.9rem;
    }

    /* --- TESTIMONIALS COMPACT --- */
    .testimonials-carousel-wrapper {
        padding: var(--space-md) 0;
    }

    .testimonial-card {
        padding: var(--space-md);
        min-width: 250px;
        /* Narrower cards */
    }

    .testimonial-text {
        font-size: 0.85rem;
        line-height: 1.4;
    }

    /* --- BUTTONS & INPUTS --- */
    .btn {
        padding: 10px 18px;
        /* Smaller touch targets */
        font-size: 0.9rem;
    }

    .btn-submit .btn-text {
        font-size: 0.9rem;
    }

    .form-group input,
    .email-form-inline input {
        padding: 8px;
        font-size: 0.9rem;
    }

    /* --- REASSURANCE SECTION --- */
    .reassurance-grid {
        grid-template-columns: 1fr;
        gap: var(--space-md);
    }

    .reassurance-card {
        padding: var(--space-md);
    }

    .reassurance-card h4 {
        font-size: 1rem;
    }

    /* --- HEADER/NAV RESTORATION --- */
    .mobile-menu-toggle {
        display: flex !important;
        z-index: 2000 !important;
        /* Ensure on top */
    }

    /* Hide Desktop CTA text button on Mobile (Fix Double Button) */
    .nav-cta .btn-glow,
    .nav-cta .btn-nav,
    .btn-nav {
        display: none !important;
    }

    /* Keep wallet button visible on mobile */
    .nav-cta {
        display: flex !important;
        align-items: center;
        margin-left: auto;
        margin-right: 10px;
    }

    .nav-cta .wallet-btn-container {
        display: inline-block !important;
    }

    /* Restore Mobile Menu Visibility */
    .nav-links {
        /* Ensuring the menu itself isn't hidden by global resets */
        display: flex;
    }

    .logo-img {
        height: 28px;
        /* Smaller Logo */
        z-index: 2000;
        position: relative;
    }

    /* Hide specific elements to declutter */
    .floating-orbs {
        opacity: 0.15;
        /* Less distraction */
    }
}

/* ========================================
   PRICING SECTION
======================================== */

.pricing-section {
    padding: var(--space-4xl) 0;
    background: linear-gradient(180deg, transparent, rgba(247, 147, 26, 0.03), transparent);
}

.pricing-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-xl);
    max-width: 900px;
    margin: 0 auto;
    align-items: start;
}

.pricing-card {
    background: var(--bg-card);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-xl);
    padding: var(--space-2xl);
    position: relative;
    transition: all var(--transition-base);
}

.pricing-card:hover {
    transform: translateY(-5px);
    border-color: rgba(255, 255, 255, 0.15);
}

.pricing-card.featured {
    border-color: var(--accent-gold);
    background: var(--gradient-card);
    transform: scale(1.05);
    box-shadow: var(--shadow-glow);
}

.pricing-card.featured:hover {
    transform: scale(1.07);
}

.pricing-badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    padding: var(--space-xs) var(--space-lg);
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-full);
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

.pricing-badge.premium {
    background: var(--gradient-primary);
    border: none;
    color: var(--text-primary);
}

.pricing-header {
    text-align: center;
    margin-bottom: var(--space-xl);
    padding-bottom: var(--space-lg);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.pricing-header h3 {
    font-size: 1.5rem;
    margin-bottom: var(--space-md);
}

.price {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
}

.price-old {
    font-size: 1.25rem;
    color: var(--text-muted);
    text-decoration: line-through;
}

.price-amount {
    font-family: var(--font-display);
    font-size: 3rem;
    font-weight: 800;
    background: var(--gradient-primary);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.price-note {
    font-size: 0.85rem;
    color: var(--text-tertiary);
    margin-top: var(--space-sm);
}

.pricing-features {
    list-style: none;
    margin-bottom: var(--space-xl);
}

.pricing-features li {
    display: flex;
    align-items: flex-start;
    gap: var(--space-sm);
    padding: var(--space-sm) 0;
    font-size: 0.95rem;
    color: var(--text-secondary);
}

.pricing-features li.disabled {
    color: var(--text-muted);
}

.pricing-features .check {
    color: var(--accent-green);
    font-weight: bold;
}

.pricing-features .check.gold {
    color: var(--accent-gold);
}

.pricing-features .cross {
    color: var(--text-muted);
}

.email-form-inline {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
}

.email-form-inline input {
    padding: var(--space-md);
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-md);
    color: var(--text-primary);
    font-family: var(--font-primary);
    font-size: 0.95rem;
    text-align: center;
}

.email-form-inline input:focus {
    outline: none;
    border-color: var(--accent-gold);
}

.email-form-inline input::-moz-placeholder {
    color: var(--text-tertiary);
}

.email-form-inline input::placeholder {
    color: var(--text-tertiary);
}

.btn-secondary {
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: var(--text-primary);
}

.btn-secondary:hover {
    background: var(--bg-card-hover);
    border-color: var(--accent-gold);
}

.payment-badges {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
    margin-top: var(--space-md);
    font-size: 0.85rem;
    color: var(--text-tertiary);
}

.guarantee-box {
    display: flex;
    align-items: center;
    gap: var(--space-lg);
    max-width: 700px;
    margin: var(--space-3xl) auto 0;
    padding: var(--space-xl);
    background: rgba(0, 255, 136, 0.05);
    border: 1px solid rgba(0, 255, 136, 0.2);
    border-radius: var(--radius-lg);
}

.guarantee-icon {
    font-size: 3rem;
    flex-shrink: 0;
}

.guarantee-content h4 {
    font-size: 1.1rem;
    color: var(--accent-green);
    margin-bottom: var(--space-xs);
}

.guarantee-content p {
    font-size: 0.95rem;
    color: var(--text-secondary);
}

/* Payment Security Logos */
.payment-logos {
    text-align: center;
    margin-top: var(--space-lg);
}

.payment-logos-title {
    color: var(--text-secondary);
    font-size: 0.9rem;
    margin-bottom: var(--space-sm);
}

.payment-logos-grid {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-md);
    flex-wrap: wrap;
}

.payment-logo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.payment-logo img {
    height: auto;
    width: auto;
    max-height: 30px;
    object-fit: contain;
}

/* ========================================
   PAYMENT MODAL
======================================== */

.payment-modal-content {
    max-width: 450px;
    text-align: left;
}

.payment-header {
    text-align: center;
    margin-bottom: var(--space-xl);
    padding-bottom: var(--space-lg);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.payment-header h3 {
    margin-bottom: var(--space-xs);
}

.payment-subtitle {
    font-size: 0.95rem;
    color: var(--text-tertiary);
}

.payment-summary {
    background: var(--bg-tertiary);
    border-radius: var(--radius-md);
    padding: var(--space-lg);
    margin-bottom: var(--space-xl);
}

.summary-item {
    display: flex;
    justify-content: space-between;
    padding: var(--space-sm) 0;
    font-size: 0.95rem;
    color: var(--text-secondary);
}

.summary-item.bonus {
    color: var(--accent-gold);
}

.summary-total {
    display: flex;
    justify-content: space-between;
    padding-top: var(--space-md);
    margin-top: var(--space-md);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    font-weight: 600;
}

.total-amount {
    font-size: 1.25rem;
    color: var(--accent-green);
}

.payment-form {
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
}

.form-field {
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
}

.form-field label {
    font-size: 0.85rem;
    color: var(--text-tertiary);
    font-weight: 500;
}

.form-field input {
    padding: var(--space-md);
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-sm);
    color: var(--text-primary);
    font-family: var(--font-primary);
    font-size: 1rem;
    transition: border-color var(--transition-fast);
}

.form-field input:focus {
    outline: none;
    border-color: var(--accent-gold);
}

.form-field input::-moz-placeholder {
    color: var(--text-muted);
}

.form-field input::placeholder {
    color: var(--text-muted);
}

.card-element {
    padding: var(--space-md);
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-sm);
}

.card-input-row {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: var(--space-sm);
}

.card-input-row input {
    padding: var(--space-sm);
    background: var(--bg-primary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-sm);
    color: var(--text-primary);
    font-family: var(--font-primary);
    font-size: 0.9rem;
    text-align: center;
}

.card-input-row input:focus {
    outline: none;
    border-color: var(--accent-gold);
}

.card-errors {
    font-size: 0.85rem;
    color: var(--accent-red);
    margin-top: var(--space-xs);
}

.btn-payment {
    width: 100%;
    padding: var(--space-lg);
    font-size: 1.1rem;
}

.payment-footer {
    margin-top: var(--space-lg);
    padding-top: var(--space-lg);
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    text-align: center;
}

.payment-footer p {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin: var(--space-xs) 0;
}

/* Purchase Success Modal */
.purchase-details {
    background: var(--bg-tertiary);
    border-radius: var(--radius-md);
    padding: var(--space-lg);
    margin: var(--space-lg) 0;
    text-align: left;
}

.purchase-details ul {
    list-style: none;
    margin-top: var(--space-sm);
}

.purchase-details li {
    padding: var(--space-xs) 0;
    font-size: 0.95rem;
    color: var(--text-secondary);
}

/* Ticker Styles */

/* Ticker Styles */
/* ========================================
   CRYPTO TICKER WIDGET
======================================== */
.crypto-ticker-pill {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background: rgba(10, 10, 15, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50px;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 999;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    cursor: pointer;
    transition: all 0.3s ease;
    animation: slideUpFade 0.8s ease-out 1s backwards;
}

.crypto-ticker-pill:hover {
    transform: translateY(-5px);
    border-color: var(--accent-gold);
    box-shadow: 0 15px 40px rgba(247, 147, 26, 0.2);
}

.ticker-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    font-weight: 500;
}

.ticker-divider {
    width: 1px;
    height: 15px;
    background: rgba(255, 255, 255, 0.2);
}

.coin-icon {
    color: var(--accent-gold);
    font-weight: bold;
}

.coin-name {
    color: var(--text-secondary);
    font-size: 0.8rem;
    text-transform: uppercase;
}

.coin-price {
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
    font-family: var(--font-primary);
}

.coin-price.updated {
    color: var(--accent-green);
    transition: color 0.3s;
}

.ticker-action {
    color: var(--text-muted);
    font-size: 0.8rem;
    margin-left: 5px;
}

@keyframes slideUpFade {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

/* Ticker Modal */
.crypto-chart-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(5px);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.crypto-chart-modal.active {
    opacity: 1;
    pointer-events: all;
}

.chart-modal-content {
    background: var(--bg-card);
    border: 1px solid rgba(247, 147, 26, 0.3);
    width: 90%;
    max-width: 800px;
    height: 500px;
    border-radius: var(--radius-xl);
    position: relative;
    padding: 20px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);
    transform: scale(0.95);
    transition: transform 0.3s ease;
}

.crypto-chart-modal.active .chart-modal-content {
    transform: scale(1);
}

.modal-close-btn {
    position: absolute;
    top: 15px;
    right: 20px;
    background: none;
    border: none;
    color: var(--text-secondary);
    font-size: 2rem;
    cursor: pointer;
    line-height: 1;
    z-index: 10;
}

.modal-close-btn:hover {
    color: var(--text-primary);
}

.chart-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-right: 40px;
}

.chart-header h3 {
    margin: 0;
    font-size: 1.2rem;
    background: var(--gradient-text);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.chart-tabs {
    display: flex;
    gap: 10px;
}

.chart-tab {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--text-secondary);
    padding: 5px 15px;
    border-radius: 20px;
    cursor: pointer;
    transition: all 0.2s;
}

.chart-tab.active,
.chart-tab:hover {
    background: rgba(247, 147, 26, 0.2);
    border-color: var(--accent-gold);
    color: var(--text-primary);
}

.chart-container {
    flex: 1;
    background: rgba(0, 0, 0, 0.2);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

@media (max-width: 768px) {
    .crypto-ticker-pill {
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        width: -moz-max-content;
        width: max-content;
        padding: 8px 15px;
    }

    .crypto-ticker-pill:hover {
        transform: translateX(-50%) translateY(-5px);
    }

    .chart-modal-content {
        height: 60vh;
        width: 95%;
    }
}

/* Subscription Note */
.subscription-note {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: center;
    margin-top: var(--space-sm);
    line-height: 1.4;
}

/* Ticker Price Colors */
.coin-price.price-up {
    color: var(--accent-green);
}

.coin-price.price-down {
    color: var(--accent-red);
}

.coin-change {
    font-size: 0.7rem;
    margin-left: 4px;
    font-weight: 600;
}

.coin-change.change-up {
    color: var(--accent-green);
}

.coin-change.change-down {
    color: var(--accent-red);
}

.coin-price.price-flash {
    animation: priceFlash 0.6s ease;
}

@keyframes priceFlash {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
        transform: scale(1.1);
    }
}

/* Chart Type Toggle */
.chart-type-toggle {
    display: flex;
    gap: 5px;
    margin-left: auto;
}

.chart-type-btn {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--text-secondary);
    padding: 5px 10px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.2s;
}

.chart-type-btn.active,
.chart-type-btn:hover {
    background: rgba(247, 147, 26, 0.2);
    border-color: var(--accent-gold);
    color: var(--text-primary);
}

/* TradingView Container Fix */
.tradingview-widget-container {
    height: 100% !important;
    width: 100% !important;
}

/* Reassurance Section */
.reassurance-section {
    padding: var(--space-3xl) 0;
    margin-bottom: var(--space-2xl);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.reassurance-header {
    text-align: center;
    margin-bottom: var(--space-xl);
}

.reassurance-icon {
    font-size: 3rem;
    display: block;
    margin-bottom: var(--space-md);
}

.reassurance-header h2 {
    font-size: 1.75rem;
    background: linear-gradient(135deg, var(--accent-gold), var(--accent-red));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0;
}

.reassurance-intro {
    text-align: center;
    font-size: 1.1rem;
    color: var(--text-secondary);
    max-width: 600px;
    margin: 0 auto var(--space-2xl);
}

.reassurance-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: var(--space-lg);
    margin-bottom: var(--space-2xl);
}

.reassurance-card {
    background: var(--bg-card);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-lg);
    padding: var(--space-xl);
    transition: all 0.3s ease;
}

.reassurance-card:hover {
    transform: translateY(-5px);
    border-color: rgba(247, 147, 26, 0.3);
}

.reassurance-card-icon {
    font-size: 2rem;
    margin-bottom: var(--space-sm);
}

.reassurance-card h4 {
    font-size: 1.1rem;
    margin-bottom: var(--space-xs);
    color: var(--text-primary);
}

.reassurance-subtitle {
    font-size: 0.85rem;
    color: var(--accent-gold);
    font-weight: 600;
    margin-bottom: var(--space-md);
}

.reassurance-card p:last-child {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.6;
    margin: 0;
}

.reassurance-card.solo {
    border-top: 3px solid #cd7f32;
}

.reassurance-card.pro {
    border-top: 3px solid #c0c0c0;
}

.reassurance-card.vip {
    border-top: 3px solid #ffd700;
}

.reassurance-cta {
    text-align: center;
}

.reassurance-ultimatum {
    font-size: 1.1rem;
    color: var(--text-secondary);
    margin-bottom: var(--space-xl);
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.btn-lg {
    padding: var(--space-lg) var(--space-2xl);
    font-size: 1.1rem;
}

/* Discord Subscription Card */
.discord-subscription-card {
    max-width: 700px;
    margin: var(--space-2xl) auto 0;
    background: linear-gradient(135deg, rgba(88, 101, 242, 0.1), rgba(88, 101, 242, 0.05));
    border: 1px solid rgba(88, 101, 242, 0.3);
    border-radius: var(--radius-xl);
    padding: var(--space-xl);
}

.discord-card-content {
    display: flex;
    align-items: center;
    gap: var(--space-lg);
    flex-wrap: wrap;
    justify-content: center;
}

.discord-icon {
    font-size: 2.5rem;
}

.discord-info {
    flex: 1;
    min-width: 200px;
}

.discord-info h4 {
    font-size: 1.1rem;
    margin-bottom: var(--space-xs);
    color: #5865F2;
}

.discord-info p {
    font-size: 0.9rem;
    color: var(--text-secondary);
    margin: 0;
}

.discord-price {
    display: flex;
    align-items: baseline;
    gap: 2px;
}

.discord-amount {
    font-size: 2rem;
    font-weight: 700;
    color: #5865F2;
}

.discord-period {
    font-size: 0.9rem;
    color: var(--text-muted);
}

.btn-discord {
    background: #5865F2;
    border: none;
    color: white;
}

.btn-discord:hover {
    background: #4752C4;
    transform: translateY(-2px);
}

@media (max-width: 768px) {
    .discord-card-content {
        flex-direction: column;
        text-align: center;
    }

    .discord-info {
        text-align: center;
    }
}

/* Footer Legal Disclaimer */
.footer-legal-disclaimer {
    margin-top: var(--space-lg);
    padding-top: var(--space-lg);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-legal-disclaimer p {
    font-size: 0.75rem;
    color: var(--text-muted);
    line-height: 1.6;
    max-width: 800px;
    margin: 0 auto;
}

.footer-legal-disclaimer a {
    color: var(--accent-gold);
    text-decoration: underline;
}

.footer-legal-disclaimer a:hover {
    color: var(--text-primary);
}

/* ========================================
   FREE EXTRACT SECTION
======================================== */

.free-extract-section {
    padding: var(--space-4xl) 0;
    background: linear-gradient(180deg, transparent, rgba(0, 255, 136, 0.03), transparent);
}

.free-extract-card {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: var(--space-3xl);
    padding: var(--space-3xl);
    background: var(--bg-card);
    border: 2px dashed rgba(0, 255, 136, 0.3);
    border-radius: var(--radius-xl);
    align-items: center;
}

.extract-badge {
    display: inline-block;
    padding: var(--space-sm) var(--space-lg);
    background: linear-gradient(135deg, rgba(0, 255, 136, 0.2), rgba(0, 212, 255, 0.2));
    border: 1px solid rgba(0, 255, 136, 0.4);
    border-radius: var(--radius-full);
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--accent-green);
    margin-bottom: var(--space-lg);
}

.extract-content h2 {
    font-size: 1.5rem;
    color: var(--text-secondary);
    margin-bottom: var(--space-sm);
}

.extract-content h3 {
    font-size: clamp(1.5rem, 3vw, 2rem);
    margin-bottom: var(--space-md);
}

.extract-content>p {
    color: var(--text-secondary);
    margin-bottom: var(--space-xl);
}

.extract-features {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
    margin-bottom: var(--space-xl);
}

.extract-feature {
    display: flex;
    align-items: center;
    gap: var(--space-md);
    padding: var(--space-md);
    background: rgba(0, 255, 136, 0.05);
    border-radius: var(--radius-md);
}

.extract-feature .feature-icon {
    font-size: 1.5rem;
}

.extract-feature span:last-child {
    color: var(--text-secondary);
}

.extract-btn {
    background: linear-gradient(135deg, #00ff88, #00cc6a) !important;
    color: #000 !important;
    font-weight: 700;
}

.extract-btn:hover {
    box-shadow: 0 0 30px rgba(0, 255, 136, 0.5);
}

.extract-note {
    margin-top: var(--space-lg);
    padding: var(--space-md);
    background: rgba(247, 147, 26, 0.1);
    border-left: 3px solid var(--accent-gold);
    border-radius: var(--radius-sm);
    font-size: 0.9rem;
    color: var(--text-secondary);
}

.extract-visual {
    display: flex;
    justify-content: center;
}

.extract-mockup {
    position: relative;
}

.extract-cover {
    max-width: 220px;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
    transform: rotate(-3deg);
    transition: transform var(--transition-base);
}

.extract-mockup:hover .extract-cover {
    transform: rotate(0deg) scale(1.05);
}

.extract-badge-overlay {
    position: absolute;
    top: 10px;
    right: -10px;
    padding: var(--space-xs) var(--space-md);
    background: var(--accent-green);
    color: #000;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: var(--radius-sm);
    transform: rotate(15deg);
}

@media (max-width: 768px) {
    .free-extract-card {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .extract-visual {
        order: -1;
    }

    .extract-features {
        align-items: center;
    }

    .extract-feature {
        justify-content: center;
    }
}

/* Extract Email Form */
.extract-form {
    margin-top: var(--space-lg);
}

.extract-input-group {
    display: flex;
    gap: var(--space-md);
    margin-bottom: var(--space-sm);
}

.extract-input-group input {
    flex: 1;
    padding: var(--space-md) var(--space-lg);
    background: var(--bg-tertiary);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-md);
    color: var(--text-primary);
    font-size: 1rem;
    font-family: var(--font-primary);
}

.extract-input-group input:focus {
    outline: none;
    border-color: var(--accent-green);
    box-shadow: 0 0 0 3px rgba(0, 255, 136, 0.2);
}

.extract-input-group input::-moz-placeholder {
    color: var(--text-muted);
}

.extract-input-group input::placeholder {
    color: var(--text-muted);
}

.extract-privacy {
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-top: var(--space-sm);
}

.extract-success {
    padding: var(--space-xl);
    background: rgba(0, 255, 136, 0.1);
    border: 1px solid rgba(0, 255, 136, 0.3);
    border-radius: var(--radius-lg);
    text-align: center;
    margin: var(--space-lg) 0;
}

.extract-success .success-icon {
    font-size: 3rem;
    margin-bottom: var(--space-md);
}

.extract-success h4 {
    color: var(--accent-green);
    margin-bottom: var(--space-sm);
}

.extract-success p {
    color: var(--text-secondary);
    margin: 0;
}

@media (max-width: 768px) {
    .extract-input-group {
        flex-direction: column;
    }

    .extract-input-group button {
        width: 100%;
    }
}

/* ========================================
   MOBILE RESPONSIVE HAMBURGER MENU
======================================== */

/* Hamburger Button */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 36px;
    height: 36px;
    padding: 6px;
    background: none;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: var(--radius-sm);
    cursor: pointer;
    z-index: 1002;
}

.mobile-menu-toggle span {
    display: block;
    width: 100%;
    height: 2px;
    background: var(--text-primary);
    border-radius: 2px;
    transition: all 0.3s ease;
}

.mobile-menu-toggle.active span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}

.mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}

/* Mobile Menu Overlay */
.mobile-menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Hide mobile-only CTA on desktop */
.nav-cta-mobile {
    display: none;
}

/* Mobile Menu Styles */
@media (max-width: 968px) {
    .mobile-menu-toggle {
        display: flex;
    }

    .nav-links {
        position: fixed;
        top: 0;
        right: -100%;
        width: 80%;
        max-width: 320px;
        height: 100vh;
        background: rgba(5, 5, 8, 0.99);
        /* Solid dark background */
        flex-direction: column !important;
        /* Force column layout */
        align-items: stretch;
        justify-content: flex-start;
        padding: 100px 30px 40px;
        gap: 0;
        z-index: 1001;
        transition: right 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        overflow-y: auto;
        box-shadow: -10px 0 40px rgba(0, 0, 0, 0.5);
    }

    .nav-links.active {
        right: 0;
    }

    .nav-links a {
        display: block;
        padding: 16px 20px;
        font-size: 1.1rem;
        color: #ffffff;
        opacity: 1;
        text-decoration: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 0;
    }

    .nav-links a:last-child {
        border-bottom: none;
    }

    .nav-links a:hover {
        background: rgba(247, 147, 26, 0.1);
        color: var(--accent-gold);
    }

    .mobile-menu-overlay {
        display: block;
    }

    .nav-cta {
        display: flex;
        align-items: center;
    }

    /* Keep wallet button visible but compact on mobile */
    .wallet-btn-container {
        display: flex !important;
    }

    #header-wallet-btn {
        padding: 8px 12px !important;
        font-size: 0.75rem !important;
        border-radius: 10px !important;
    }

    /* Hide disconnect button on mobile header - use mobile menu version */
    .wallet-btn-container .wallet-disconnect-btn {
        display: none !important;
    }

    .nav-cta-mobile {
        display: block;
        margin-top: auto;
        padding-top: 30px;
        /* border-top removed - was causing ugly bar */
    }

    .nav-cta-mobile .btn {
        width: 100%;
        justify-content: center;
    }

    /* Body scroll lock when menu open */
    body.menu-open {
        overflow: hidden;
    }

    /* Navbar adjustments */
    .nav-container {
        flex-wrap: nowrap;
    }

    .logo-img {
        height: 35px;
    }

    /* Hero adjustments */
    .hero {
        padding-top: calc(60px + var(--space-2xl));
    }

    .hero-title {
        font-size: clamp(1.75rem, 6vw, 2.5rem);
    }

    .trust-indicators {
        gap: var(--space-xl);
    }

    /* Pricing grid mobile */
    .pricing-grid-3 {
        grid-template-columns: 1fr;
        gap: var(--space-lg);
    }

    /* Pack Solo first on mobile (order: -2), then Pro (order: -1), then VIP (default) */
    .pricing-card[data-pack="solo"] {
        order: -2;
    }

    .pricing-card.featured {
        order: -1;
    }

    /* FAQ mobile */
    .faq-categories {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: var(--space-sm);
    }

    .faq-categories::-webkit-scrollbar {
        display: none;
    }

    /* Footer mobile */
    .footer-main {
        flex-direction: column;
        gap: var(--space-2xl);
    }

    .footer-nav {
        flex-direction: column;
        gap: var(--space-xl);
    }

    /* Legal pages */
    .legal-content {
        padding: var(--space-xl);
    }

    .legal-nav {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* Extra small screens */
@media (max-width: 480px) {
    .container {
        padding: 0 var(--space-md);
    }

    .hero-description {
        font-size: 1rem;
    }

    .btn-hero {
        padding: var(--space-md) var(--space-xl);
        font-size: 1rem;
    }

    .pricing-card {
        padding: var(--space-lg);
    }

    .section-header h2 {
        font-size: 1.5rem;
    }
}

/* ========================================
   FAQ SECTION (Added)
======================================== */

.faq-section {
    padding: var(--space-4xl) 0;
    position: relative;
}

.faq-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--space-xl);
}

.faq-item {
    background: var(--bg-card);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-xl);
    padding: var(--space-xl);
    transition: all var(--transition-base);
}

.faq-item:hover {
    transform: translateY(-5px);
    border-color: rgba(247, 147, 26, 0.3);
    box-shadow: var(--shadow-glow);
}

.faq-question {
    display: flex;
    gap: var(--space-md);
    margin-bottom: var(--space-md);
    align-items: center;
}

.faq-question span {
    font-size: 1.5rem;
}

.faq-question h4 {
    font-size: 1.1rem;
    color: var(--text-primary);
    margin: 0;
}

.faq-item p {
    color: var(--text-secondary);
    line-height: 1.7;
    font-size: 1rem;
}

/* ========================================
   MOBILE MENU FIXES (Added)
======================================== */
/* ========================================
   MOBILE MENU FIXES (Premium & Responsive)
======================================== */
@media (max-width: 1024px) {

    /* Optimizing Mobile Header Layout */
    .nav-cta .btn {
        display: none !important;
        /* Hide "Débloquer" button in header on mobile */
    }

    /* Wallet button styles now defined in earlier media query block */

    /* Ensure Hamburger is ALWAYS on top */
    .mobile-menu-toggle {
        display: flex !important;
        position: relative;
        z-index: 20005 !important;
        /* Higher than menu */
    }

    .nav-links {
        display: flex;
        flex-direction: column;
        justify-content: center;
        /* Center items vertically */
        align-items: center;
        /* Center items horizontally */
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        /* Full screen width for mobile */
        height: 100vh;
        background: rgba(5, 5, 8, 0.99);
        /* Almost solid for better readability */
        backdrop-filter: none;
        /* Remove blur to fix "flou" issue */
        z-index: 20000 !important;
        padding: 0;
        transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        /* Smooth ease-out */
        opacity: 0;
        visibility: hidden;
    }

    .nav-links.active {
        right: 0 !important;
        visibility: visible !important;
        opacity: 1 !important;
        /* display: flex is already inherited, no need to toggle it */
    }

    .nav-links a {
        color: #ffffff !important;
        font-family: var(--font-display);
        font-size: 1.5rem;
        /* Larger text */
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        padding: 20px;
        border-bottom: none;
        /* Remove separator */
        position: relative;
        transition: all 0.3s ease;
    }

    /* Animated underline for links */
    .nav-links a::after {
        content: '';
        position: absolute;
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 2px;
        background: var(--gradient-primary);
        transition: width 0.3s ease;
    }

    .nav-links a:hover::after,
    .nav-links a.active::after {
        width: 30px;
    }

    /* Mobile CTA Button */
    .nav-cta-mobile {
        display: block;
        margin-top: 40px;
        width: 80%;
        max-width: 300px;
        border-top: none;
        padding-top: 0;
    }

    .nav-cta-mobile .btn {
        width: 100%;
        justify-content: center;
        padding: 16px;
        font-size: 1.1rem;
    }

    .mobile-menu-overlay {
        z-index: 10005 !important;
        background: rgba(0, 0, 0, 0.6);
        backdrop-filter: blur(5px);
    }
}

/* ========================================
   ULTRA RESPONSIVE MOBILE (Compact & Clean)
======================================== */
@media (max-width: 768px) {

    /* Global compact typography */
    html {
        font-size: 14px;
    }

    /* Reduce section padding */
    section {
        padding: var(--space-2xl) 0;
    }

    .section-header {
        margin-bottom: var(--space-xl);
    }

    .section-header h2 {
        font-size: 1.4rem;
        line-height: 1.3;
    }

    .section-subtitle {
        font-size: 0.9rem;
        line-height: 1.5;
    }

    /* Hero compact */
    .hero {
        min-height: auto;
        padding: calc(70px + var(--space-xl)) 0 var(--space-2xl);
    }

    .hero-content {
        flex-direction: column;
        gap: var(--space-xl);
    }

    .hero-title {
        font-size: clamp(1.5rem, 7vw, 2rem);
        line-height: 1.2;
    }

    .hero-subtitle {
        font-size: 1rem;
        margin-bottom: var(--space-md);
    }

    .hero-description {
        font-size: 0.9rem;
        line-height: 1.6;
        margin-bottom: var(--space-lg);
    }

    /* Value props inline on mobile */
    .value-props {
        display: flex;
        flex-wrap: wrap;
        gap: var(--space-sm);
        justify-content: center;
    }

    .value-prop {
        flex: 0 0 auto;
        font-size: 0.8rem;
        padding: var(--space-xs) var(--space-sm);
        background: rgba(255, 255, 255, 0.05);
        border-radius: var(--radius-full);
        white-space: nowrap;
    }

    .value-prop .prop-icon {
        font-size: 1em;
    }

    /* Trust badges inline */
    .trust-badges {
        display: flex;
        flex-wrap: wrap;
        gap: var(--space-xs);
        justify-content: center;
    }

    .trust-badge {
        font-size: 0.75rem;
        padding: var(--space-xs) var(--space-sm);
    }

    /* Stats bar compact */
    .stats-bar {
        flex-wrap: wrap;
        gap: var(--space-md);
        padding: var(--space-md);
    }

    .stat-item {
        flex: 0 0 45%;
        text-align: center;
    }

    .stat-number {
        font-size: 1.5rem;
    }

    .stat-label {
        font-size: 0.7rem;
    }

    /* Pricing cards compact */
    .pricing-card {
        padding: var(--space-lg);
    }

    .pricing-header h3 {
        font-size: 1.2rem;
    }

    .price-amount {
        font-size: 2rem;
    }

    .pricing-features li {
        font-size: 0.85rem;
        padding: var(--space-xs) 0;
    }

    .btn-pack {
        padding: var(--space-md) var(--space-lg);
        font-size: 0.9rem;
    }

    /* CTA buttons compact */
    .btn-hero {
        padding: var(--space-md) var(--space-xl);
        font-size: 0.95rem;
    }

    .hero-guarantee {
        font-size: 0.8rem;
    }

    /* Lead magnet compact */
    .lead-magnet-box {
        padding: var(--space-xl);
    }

    .lead-magnet-content h2 {
        font-size: 1.3rem;
    }

    .lead-magnet-desc {
        font-size: 0.9rem;
    }

    /* Ebook image smaller */
    .hero-image {
        max-width: 200px;
        margin: 0 auto;
    }

    .ebook-cover {
        max-height: 280px;
    }

    /* No KYC banner compact */
    .no-kyc-banner {
        padding: var(--space-md);
    }

    .no-kyc-banner .banner-text strong {
        font-size: 0.9rem;
    }

    .no-kyc-banner .banner-text p {
        font-size: 0.8rem;
        display: none;
        /* Hide detailed text on mobile */
    }

    /* Guarantee box compact */
    .guarantee-box {
        padding: var(--space-md);
        flex-direction: column;
        text-align: center;
    }

    .guarantee-box h4 {
        font-size: 1rem;
    }

    .guarantee-box p {
        font-size: 0.8rem;
    }

    /* Discord subscription compact */
    .discord-subscription-card {
        padding: var(--space-lg);
    }

    .discord-card-content {
        flex-direction: column;
        text-align: center;
        gap: var(--space-md);
    }

    /* Testimonials compact */
    .testimonial-card {
        padding: var(--space-lg);
    }

    .testimonial-text {
        font-size: 0.9rem;
    }

    /* FAQ compact */
    .faq-item {
        padding: var(--space-md);
    }

    .faq-question h4 {
        font-size: 0.95rem;
    }

    .faq-item p {
        font-size: 0.85rem;
    }

    /* Footer compact */
    .footer {
        padding: var(--space-2xl) 0 var(--space-lg);
    }

    .footer-brand {
        text-align: center;
    }

    .footer-nav {
        text-align: center;
    }

    .footer-nav-col h4 {
        font-size: 0.9rem;
        margin-bottom: var(--space-sm);
    }

    .footer-nav-col a {
        font-size: 0.85rem;
    }

    .footer-legal-disclaimer p {
        font-size: 0.7rem;
    }

    /* Payment logos smaller */
    .payment-logos-grid {
        gap: var(--space-sm);
    }

    .payment-logo img {
        height: 20px !important;
    }
}

/* Extra small screens (phones) */
@media (max-width: 400px) {
    html {
        font-size: 13px;
    }

    .hero-title {
        font-size: 1.4rem;
    }

    .hero-badge {
        font-size: 0.7rem;
        padding: var(--space-xs) var(--space-sm);
    }

    .value-prop {
        font-size: 0.7rem;
    }

    .pricing-card {
        padding: var(--space-md);
    }

    .price-amount {
        font-size: 1.8rem;
    }

    .btn-hero {
        font-size: 0.85rem;
        padding: var(--space-sm) var(--space-lg);
    }

    .container {
        padding: 0 var(--space-sm);
    }
}

/* ========================================
   PROMO PRICING STYLES
======================================== */
.promo-badge {
    display: inline-block;
    background: linear-gradient(135deg, #ff4757, #ff6b81);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 6px 12px;
    border-radius: var(--radius-full);
    margin-bottom: var(--space-sm);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    animation: pulse-promo 2s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(255, 71, 87, 0.4);
}

@keyframes pulse-promo {

    0%,
    100% {
        box-shadow: 0 4px 15px rgba(255, 71, 87, 0.4);
        transform: scale(1);
    }

    50% {
        box-shadow: 0 6px 25px rgba(255, 71, 87, 0.6);
        transform: scale(1.02);
    }
}

.price-old {
    font-size: 1.2rem;
    color: var(--text-tertiary);
    text-decoration: line-through;
    margin-right: var(--space-sm);
    opacity: 0.6;
    font-weight: 400;
}

.price {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: var(--space-xs);
    flex-wrap: wrap;
}

/* Mobile adjustments for promo */
@media (max-width: 768px) {
    .promo-badge {
        font-size: 0.65rem;
        padding: 4px 10px;
    }

    .price-old {
        font-size: 1rem;
    }
}

/* ========================================
   CRITICAL MOBILE FIXES
======================================== */

/* Video Intro - Mobile Responsive */
@media (max-width: 768px) {
    .intro-splash {
        overflow: hidden;
    }

    .intro-video {
        width: 100vw;
        height: 100vh;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center;
    }
}

/* Force mobile menu visibility on all pages */
@media (max-width: 1024px) {

    /* Ensure nav-links are hidden by default but properly structured */
    .nav-links {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        top: 0 !important;
        right: -100% !important;
        width: 100vw !important;
        height: 100vh !important;
        background: #050508 !important;
        z-index: 20000 !important;
        padding: 100px 40px 40px !important;
        gap: 0 !important;
        transition: right 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
        overflow-y: auto !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    .nav-links.active {
        right: 0 !important;
    }

    .nav-links a {
        display: block !important;
        width: 100% !important;
        max-width: 300px !important;
        padding: 18px 24px !important;
        font-size: 1.2rem !important;
        font-weight: 600 !important;
        color: #ffffff !important;
        text-align: center !important;
        text-decoration: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .nav-links a:hover {
        color: var(--accent-gold) !important;
        background: rgba(247, 147, 26, 0.1) !important;
    }

    /* Mobile hamburger always visible */
    .mobile-menu-toggle {
        display: flex !important;
        z-index: 25000 !important;
    }

    /* Hide desktop CTA */
    .nav-cta {
        display: none !important;
    }

    /* Show mobile CTA in menu */
    .nav-cta-mobile {
        display: block !important;
        width: 100% !important;
        max-width: 300px !important;
        margin-top: 30px !important;
        padding-top: 20px !important;
        border-top: none !important;
    }

    .nav-cta-mobile .btn {
        width: 100% !important;
        justify-content: center !important;
    }

    /* Mobile menu overlay */
    .mobile-menu-overlay {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        background: rgba(0, 0, 0, 0.7) !important;
        z-index: 15000 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
    }

    .mobile-menu-overlay.active {
        opacity: 1 !important;
        visibility: visible !important;
    }
}

/* Extra small screens - additional fixes */
@media (max-width: 480px) {
    .nav-links a {
        font-size: 1rem !important;
        padding: 14px 20px !important;
    }

    .hero-badge {
        font-size: 0.7rem;
        padding: 6px 12px;
    }

    .hero-title .title-line {
        font-size: 1.3rem;
    }

    .value-prop {
        flex-basis: 100%;
        text-align: center;
    }

    .stats-bar {
        padding: 16px;
    }

    .stat-item {
        flex: 0 0 48%;
    }
}

/* ========================================
   MOBILE MENU - FORCE CLEAR VISIBILITY
======================================== */
@media (max-width: 1200px) {

    /* FORCE menu container to be solid and visible */
    .nav-links {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        top: 0 !important;
        right: -100vw !important;
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        background: #050508 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        z-index: 99999 !important;
        padding: 120px 20px 40px !important;
        gap: 0 !important;
        transition: right 0.35s ease-out !important;
        overflow-y: auto !important;
        align-items: center !important;
        justify-content: flex-start !important;
        opacity: 1 !important;
        visibility: hidden !important;
    }

    .nav-links.active {
        right: 0 !important;
        visibility: visible !important;
    }

    /* FORCE links to be WHITE and READABLE */
    .nav-links>a,
    .nav-links a {
        display: block !important;
        width: 90% !important;
        max-width: 350px !important;
        padding: 20px 24px !important;
        margin: 4px 0 !important;
        font-size: 1.15rem !important;
        font-weight: 700 !important;
        color: #ffffff !important;
        text-align: center !important;
        text-decoration: none !important;
        background: rgba(255, 255, 255, 0.03) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-radius: 12px !important;
        opacity: 1 !important;
        visibility: visible !important;
        text-transform: uppercase !important;
        letter-spacing: 0.05em !important;
    }

    .nav-links>a:hover,
    .nav-links a:hover {
        color: #f7931a !important;
        background: rgba(247, 147, 26, 0.15) !important;
        border-color: rgba(247, 147, 26, 0.3) !important;
    }

    /* Green color for cashback link */
    .nav-links a[href*="claim"] {
        color: #00ff88 !important;
        border-color: rgba(0, 255, 136, 0.3) !important;
    }

    /* Mobile hamburger ALWAYS visible and on top */
    .mobile-menu-toggle {
        display: flex !important;
        position: relative !important;
        z-index: 999999 !important;
        background: rgba(255, 255, 255, 0.1) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
    }

    .mobile-menu-toggle span {
        background: #ffffff !important;
    }

    /* Active state - X icon */
    .mobile-menu-toggle.active span:nth-child(1) {
        transform: translateY(7px) rotate(45deg) !important;
    }

    .mobile-menu-toggle.active span:nth-child(2) {
        opacity: 0 !important;
    }

    .mobile-menu-toggle.active span:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg) !important;
    }

    /* Mobile CTA at bottom of menu */
    .nav-cta-mobile {
        display: block !important;
        width: 90% !important;
        max-width: 350px !important;
        margin-top: 30px !important;
        padding-top: 20px !important;
        border-top: none !important;
    }

    .nav-cta-mobile .btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 18px !important;
        font-size: 1rem !important;
    }

    /* Overlay */
    .mobile-menu-overlay {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        background: rgba(0, 0, 0, 0.8) !important;
        z-index: 99998 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
    }

    .mobile-menu-overlay.active {
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Body lock */
    body.menu-open {
        overflow: hidden !important;
        position: fixed !important;
        width: 100% !important;
    }
}

/* ========================================
   MOBILE PRICING - COMPACT SIDE BY SIDE
======================================== */
@media (max-width: 768px) {

    /* Pricing cards in a compact 2-column grid on mobile */
    .pricing-grid-3 {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 12px !important;
        padding: 0 !important;
    }

    /* VIP card spans full width at bottom */
    .pricing-card.vip {
        grid-column: 1 / -1 !important;
        order: 3 !important;
    }

    .pricing-card[data-pack="solo"] {
        order: 1 !important;
    }

    .pricing-card.featured {
        order: 2 !important;
    }

    /* Compact card styling */
    .pricing-card {
        padding: 16px !important;
        border-radius: 12px !important;
    }

    .pricing-header h3 {
        font-size: 1rem !important;
        margin-bottom: 8px !important;
    }

    .promo-badge {
        font-size: 0.6rem !important;
        padding: 3px 8px !important;
        margin-bottom: 6px !important;
    }

    .price-old {
        font-size: 0.9rem !important;
    }

    .price-amount {
        font-size: 1.5rem !important;
    }

    .price-net-badge {
        font-size: 0.65rem !important;
        padding: 4px 8px !important;
        margin-top: 6px !important;
    }

    /* Show first 3 features, rest hidden until expanded */
    .pricing-features {
        display: block !important;
    }

    /* Compact button */
    .btn-pack {
        padding: 10px 12px !important;
        font-size: 0.75rem !important;
        margin-top: 12px !important;
    }

    .btn-pack .btn-icon {
        display: none !important;
    }

    /* Card medals smaller */
    .card-medal {
        font-size: 1.2rem !important;
        top: 8px !important;
        right: 8px !important;
    }

    .card-ribbon {
        font-size: 0.55rem !important;
        padding: 4px 10px !important;
    }

    /* Hide subscription notes on mobile */
    .subscription-note {
        display: none !important;
    }
}

/* No KYC Banner - Mobile compact with lock in front */
@media (max-width: 768px) {

    /* No KYC Banner - COMPACT VISIBLE VERSION */
    .no-kyc-section {
        display: block !important;
        padding: 10px 0 !important;
    }

    .no-kyc-banner {
        display: block !important;
        background: rgba(0, 255, 136, 0.05) !important;
        border: 1px dashed rgba(0, 255, 136, 0.3) !important;
        padding: 15px !important;
        border-radius: 12px;
        margin-bottom: 20px;
    }

    .no-kyc-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 10px !important;
    }

    .no-kyc-icon {
        font-size: 1.5rem !important;
        order: -1;
    }

    .no-kyc-text strong {
        display: block !important;
        font-size: 0.95rem !important;
        margin-bottom: 5px !important;
        color: var(--accent-green) !important;
    }

    .no-kyc-text p {
        display: block !important;
        font-size: 0.85rem !important;
        line-height: 1.4 !important;
        color: rgba(255, 255, 255, 0.8) !important;
    }

    /* Trust Badges - Reduce spacing */
    .trust-badges {
        margin-top: 10px !important;
        margin-bottom: 10px !important;
        gap: 8px !important;
    }

    .trust-badge {
        padding: 6px 10px !important;
        font-size: 0.75rem !important;
    }

    .hero-cta {
        margin-bottom: 15px !important;
        /* Reduce space below buttons before badges */
    }

    /* Stats bar compact */
    .stats-bar {
        gap: 8px !important;
        padding: 12px !important;
        margin-top: 15px !important;
        /* Reduce gap above stats */
        margin-bottom: 10px !important;
        /* Reduce gap below stats */
    }

    /* Reduce space before pricing/title on mobile */
    .pricing-section {
        padding-top: 10px !important;
    }

    .stat-item {
        flex: 0 0 48% !important;
    }

    .stat-number {
        font-size: 1.3rem !important;
    }

    .stat-label {
        font-size: 0.6rem !important;
    }
}

/* Extra small - single column pricing */
@media (max-width: 400px) {
    .pricing-grid-3 {
        grid-template-columns: 1fr !important;
    }

    .pricing-card.vip {
        grid-column: 1 !important;
    }
}

/* ========================================
   HIDE ORANGE CTA BUTTON ON MOBILE
   (Keep Wallet Button Visible)
======================================== */
/* ========================================
   HIDE ORANGE CTA BUTTON ON MOBILE/TABLET
   (Keep Wallet Button Visible)
======================================== */
@media (max-width: 1200px) {

    /* Hide the text/large orange button in the header */
    .nav-cta .btn-glow {
        display: none !important;
    }

    /* Ensure container is visible for the wallet button */
    .nav-cta {
        display: flex !important;
        gap: 8px;
        align-items: center;
        margin-left: auto;
        margin-right: 15px;
    }
}

/* ========================================
   MOBILE HEADER LAYOUT
======================================== */
@media (max-width: 768px) {
    .nav-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 15px;
    }

    .logo-img {
        height: 32px;
        /* Smaller logo */
    }

    /* Wallet Button - keep readable on mobile */
    .wallet-btn {
        padding: 9px 14px !important;
        font-size: 0.82rem !important;
    }
}

/* ========================================
   MOBILE - SHOW FIRST 3 FEATURES + ACCORDION
======================================== */
@media (max-width: 768px) {

    /* Ensure card allows badge overflow */
    .pricing-card {
        overflow: visible !important;
        margin-top: 15px !important;
        /* Space for the badge */
    }

    /* Show first 3 features, hide rest - USING .mobile-hidden class */
    .pricing-features li {
        display: flex !important;
    }

    /* Les éléments .mobile-hidden sont gérés par les règles plus bas */
    /* NE PAS utiliser :nth-child car le HTML utilise .mobile-hidden */

    /* Toggle button - pour l'ancien système */
    .pack-toggle {
        display: none !important;
        width: 100%;
        padding: 10px;
        margin-top: 10px;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 8px;
        color: rgba(255, 255, 255, 0.8);
        font-size: 0.8rem;
        cursor: pointer;
    }

    .pricing-card.expanded .pack-toggle {
        background: rgba(247, 147, 26, 0.2);
    }
}

/* Hide toggle on desktop */
@media (min-width: 769px) {
    .pack-toggle {
        display: none !important;
    }
}

/* ========================================
   FIX: DESKTOP GREEN BOX (No KYC banner)
======================================== */
.no-kyc-banner {
    display: flex !important;
    padding: 20px 30px;
    background: linear-gradient(135deg, rgba(0, 255, 136, 0.1), rgba(0, 255, 136, 0.05));
    border: 1px solid rgba(0, 255, 136, 0.3);
    border-radius: 16px;
}

.no-kyc-content {
    display: flex;
    align-items: center;
    gap: 20px;
}

.no-kyc-icon {
    font-size: 2.5rem;
}

.no-kyc-text strong {
    display: block;
    color: #00ff88;
    font-size: 1.1rem;
    margin-bottom: 8px;
}

.no-kyc-text p {
    display: block !important;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.95rem;
    line-height: 1.5;
    margin: 0;
}

/* [REMOVED REDUNDANT NO-KYC CSS BLOCK] */

/* ========================================
   MOBILE HEADER: WALLET BUTTON CENTERED -> NOW RIGHT ALIGNED
======================================== */
@media (max-width: 1200px) {

    /* Header layout - Ensure Logo Left, Others Right */
    .nav-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    /* Push wallet to the right, next to burger */
    .nav-cta {
        margin-left: auto;
        margin-right: 15px;
        /* Space between wallet and burger */
    }

    /* Wallet button - Standard Right Align */
    #header-wallet-btn {
        display: flex !important;
        margin-right: 10px;
        font-size: 0.75rem;
        padding: 8px 12px;
    }

    /* Hide any accidental wallet button duplicates - but NOT the content inside the button! */
    [id*="wallet"]:not(#header-wallet-btn):not(#wallet-icon):not(#wallet-btn-text):not(.wallet-address) {
        display: none !important;
    }

    /* Hamburger on right */
    .mobile-menu-toggle {
        order: 3;
        display: flex !important;
        flex-direction: column;
        justify-content: space-around;
        width: 28px;
        height: 22px;
        background: transparent;
        border: none;
        cursor: pointer;
        z-index: 100000;
    }

    .mobile-menu-toggle span {
        display: block;
        width: 100%;
        height: 3px;
        background: #fff;
        border-radius: 2px;
        transition: all 0.3s ease;
    }

    /* X animation when active */
    .mobile-menu-toggle.active span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 5px);
    }

    .mobile-menu-toggle.active span:nth-child(2) {
        opacity: 0;
    }

    .mobile-menu-toggle.active span:nth-child(3) {
        transform: rotate(-45deg) translate(6px, -6px);
    }
}

/* ========================================
   MOBILE MENU - FIXED VERSION
======================================== */
@media (max-width: 1024px) {

    /* Force nav container flex */
    .nav-container,
    .navbar-container {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        position: relative !important;
    }

    /* Nav links: slide from right using left property */
    .nav-links {
        position: fixed !important;
        top: 0 !important;
        left: 100% !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 100vh !important;
        background: #070710 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 80px 20px 40px !important;
        gap: 8px !important;
        z-index: 99999 !important;
        transition: left 0.3s ease-out !important;
        overflow-y: auto !important;
    }

    .nav-links.active {
        left: 0 !important;
    }

    /* Links styling */
    .nav-links>a {
        display: block !important;
        width: 85% !important;
        max-width: 320px !important;
        padding: 16px 20px !important;
        font-size: 1.05rem !important;
        font-weight: 600 !important;
        color: #ffffff !important;
        text-align: center !important;
        text-decoration: none !important;
        background: rgba(255, 255, 255, 0.06) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 10px !important;
    }

    .nav-links>a:hover,
    .nav-links>a:active {
        background: rgba(247, 147, 26, 0.15) !important;
        border-color: #f7931a !important;
    }

    /* Green cashback link */
    .nav-links>a[href*="claim"] {
        color: #00ff88 !important;
        background: rgba(0, 255, 136, 0.08) !important;
        border-color: rgba(0, 255, 136, 0.3) !important;
    }

    /* Hide mobile CTA inside nav-links */
    .nav-cta-mobile {
        display: none !important;
    }

    /* Hamburger visible */
    .mobile-menu-toggle {
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        width: 26px !important;
        height: 20px !important;
        background: none !important;
        border: none !important;
        cursor: pointer !important;
        z-index: 100000 !important;
        padding: 0 !important;
    }

    .mobile-menu-toggle span {
        display: block !important;
        width: 100% !important;
        height: 3px !important;
        background: #fff !important;
        border-radius: 2px !important;
        transition: all 0.25s ease !important;
    }

    /* X animation */
    .mobile-menu-toggle.active span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 6px) !important;
    }

    .mobile-menu-toggle.active span:nth-child(2) {
        opacity: 0 !important;
    }

    .mobile-menu-toggle.active span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -6px) !important;
    }

    /* Wallet button smaller on mobile */
    .wallet-btn,
    #header-wallet-btn {
        padding: 6px 10px !important;
        font-size: 0.7rem !important;
    }

    /* Hide desktop CTA */
    .nav-cta .btn-glow {
        display: none !important;
    }

    /* Body scroll lock */
    body.menu-open {
        overflow: hidden !important;
    }
}

/* Desktop reset */
@media (min-width: 1201px) {
    .nav-links {
        position: static !important;
        left: auto !important;
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
        flex-direction: row !important;
        background: transparent !important;
        padding: 0 !important;
        transform: none !important;
    }

    .mobile-menu-toggle {
        display: none !important;
    }
}

/* ========================================
   MISSING RIBBON STYLES (Fixing cut-off)
======================================== */
.card-ribbon {
    position: absolute;
    top: 24px;
    right: -34px;
    background: var(--gradient-primary);
    color: #fff;
    padding: 4px 40px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    transform: rotate(45deg);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    z-index: 10;
    white-space: nowrap;
}

/* Ensure container doesn't clip it */
.pricing-card {
    overflow: hidden;
    /* Default desktop behavior, often useful for rounded corners */
}

/* On mobile, we NEED overflow visible for the ribbon if it sticks out, 
   OR we position it inside. Let's position it inside securely. */
@media (max-width: 768px) {
    .pricing-card {
        overflow: hidden !important;
        /* Keep it hidden to clip the ribbon nicely at corners */
        padding-top: 40px !important;
        /* Make space inside */
    }

    .card-ribbon {
        top: 15px !important;
        right: -32px !important;
        padding: 4px 40px !important;
        font-size: 0.65rem !important;
        transform: rotate(45deg) !important;
    }
}

/* FORCE MARGINS FOR NO-KYC BANNER */
@media (min-width: 769px) {
    .no-kyc-banner {
        margin-bottom: 40px !important;
    }
}

@media (max-width: 768px) {
    .no-kyc-banner {
        margin-bottom: 15px !important;
    }
}

/* CRITICAL FIX: Ensure Three.js background does not block clicks */
#threejs-canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1 !important;
    pointer-events: none !important;
}

/* ========================================
   CRITICAL FIX: MOBILE MENU FINAL OVERRIDE
   ======================================== */
@media (max-width: 1200px) {
    .nav-links {
        /* Reset positioning */
        position: fixed !important;
        top: 0 !important;
        /* Default hidden state - ensuring it is off-screen but ready */
        left: 100% !important;
        right: auto !important;
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;

        /* Appearance */
        background: #0a0a0f !important;
        /* Solid dark background */
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        /* Start from top to avoid cutting off on small screens */
        padding: 100px 20px 40px !important;
        /* Top padding for header */
        gap: 25px !important;
        overflow-y: auto !important;

        /* Visibility */
        z-index: 999999 !important;
        opacity: 1 !important;
        visibility: visible !important;
        transition: left 0.3s ease-in-out !important;
        transform: none !important;
    }

    .nav-links.active {
        left: 0 !important;
        right: 0 !important;
        /* Force full width anchor */
        background: rgba(10, 10, 15, 0.98) !important;
        /* Slight transparency for premium feel but readable */
        backdrop-filter: blur(10px) !important;
    }

    /* Links Styling */
    .nav-links>a,
    .nav-links a:not(.btn) {
        display: block !important;
        font-family: 'Space Grotesk', sans-serif !important;
        font-size: 1.5rem !important;
        /* Large text */
        font-weight: 700 !important;
        color: #ffffff !important;
        text-decoration: none !important;
        margin: 5px 0 !important;
        padding: 10px !important;
        opacity: 1 !important;
        visibility: visible !important;
        text-align: center !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
        width: 80% !important;
    }

    .nav-links a:hover {
        color: #f7931a !important;
        transform: translateX(5px) !important;
    }

    /* Mobile CTA specific */
    .nav-cta-mobile {
        display: block !important;
        margin-top: 20px !important;
        width: 80% !important;
    }

    .nav-cta-mobile .btn {
        width: 100% !important;
        justify-content: center !important;
        font-size: 1.1rem !important;
    }
}

/* ========================================
   100% CSS MOBILE MENU (CHECKBOX HACK)
   ======================================== */
.nav-toggle {
    display: none;
    /* Hide checkbox but keep logic */
}

/* Ensure label acts as button */
.mobile-menu-toggle {
    cursor: pointer !important;
    display: none;
}

@media (max-width: 1200px) {
    .mobile-menu-toggle {
        display: flex !important;
    }

    /* When Checkbox is CHECKED -> OPEN MENU */
    #nav-toggle:checked~.nav-links {
        left: 0 !important;
        right: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        box-shadow: 0 0 50px rgba(0, 0, 0, 0.8) !important;
    }

    /* Animate Burger to X */
    #nav-toggle:checked~.mobile-menu-toggle span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 5px) !important;
        background-color: #f7931a !important;
    }

    #nav-toggle:checked~.mobile-menu-toggle span:nth-child(2) {
        opacity: 0 !important;
    }

    #nav-toggle:checked~.mobile-menu-toggle span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -5px) !important;
        background-color: #f7931a !important;
    }

    /* Overlay Visibility */
    #nav-toggle:checked~.mobile-menu-overlay {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        position: fixed !important;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.8) !important;
        z-index: 99990 !important;
        /* Just below menu */
    }

    /* Fix Nav Links stacking context */
    .nav-links {
        z-index: 999999 !important;
        /* Top most */
    }

    .mobile-menu-toggle {
        z-index: 2000000 !important;
        /* Above everything to be clickable to close */
    }
}

/* ========================================
   WALLET BUTTON - MODERN WEB3 DESIGN
======================================== */

/* Base wallet button container */
.wallet-btn-container {
    position: relative;
    display: inline-block;
}

/* Main wallet button */
.wallet-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: linear-gradient(135deg, #627EEA, #4a5fc7);
    border: none;
    border-radius: 12px;
    color: #fff;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 15px rgba(98, 126, 234, 0.3);
    white-space: nowrap;
}

.wallet-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(98, 126, 234, 0.4);
}

.wallet-btn:active {
    transform: translateY(0);
}

/* Connected state */
.wallet-btn.connected {
    background: linear-gradient(135deg, #00ff88, #00cc6a);
    box-shadow: 0 4px 15px rgba(0, 255, 136, 0.3);
}

.wallet-btn.connected:hover {
    box-shadow: 0 6px 20px rgba(0, 255, 136, 0.4);
}

/* Wallet address display */
.wallet-address {
    font-family: 'SF Mono', 'Fira Code', monospace;
    font-size: 0.8rem;
    letter-spacing: 0.5px;
}

/* Wallet avatar/icon */
#wallet-icon {
    font-size: 1.1rem;
    transition: transform 0.3s ease;
}

.wallet-btn:hover #wallet-icon {
    transform: scale(1.1);
}

/* Disconnect button */
.wallet-disconnect-btn {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 20px;
    background: linear-gradient(135deg, #ff4757, #ff6b7a);
    border: none;
    border-radius: 10px;
    color: white;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    z-index: 10000;
    box-shadow: 0 4px 15px rgba(255, 71, 87, 0.3);
    transition: all 0.3s ease;
}

.wallet-disconnect-btn::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-bottom-color: #ff4757;
}

.wallet-btn-container.show-disconnect .wallet-disconnect-btn {
    display: block;
    animation: slideDown 0.2s ease-out;
}

.wallet-disconnect-btn:hover {
    background: linear-gradient(135deg, #ff6b7a, #ff8a94);
    transform: translateX(-50%) scale(1.02);
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

/* Mobile responsive */
@media (max-width: 968px) {
    .wallet-btn {
        padding: 10px 14px !important;
        font-size: 0.85rem !important;
        border-radius: 12px !important;
        box-shadow: 0 4px 15px rgba(98, 126, 234, 0.3) !important;
        /* Ensure visible */
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    #wallet-btn-text {
        max-width: none !important;
        overflow: visible !important;
        display: inline !important;
        width: auto !important;
    }

    .wallet-disconnect-btn {
        padding: 8px 16px;
        font-size: 0.75rem;
    }
}

/* Very small screens - handled in fix section below */

/* Legacy mobile button (hidden, kept for compatibility) */
.wallet-btn-mobile {
    display: none !important;
}

/* ========================================
   AGE RESTRICTION (+18) NOTICES
======================================== */

/* Hero age notice */
.age-notice {
    margin-top: var(--space-md);
    padding: 12px 20px;
    background: rgba(255, 71, 87, 0.1);
    border: 1px solid rgba(255, 71, 87, 0.3);
    border-radius: var(--radius-md);
    color: #ff8a94;
    font-size: 0.9rem;
    display: inline-block;
}

.age-notice strong {
    color: #ff4757;
}

/* Footer age restriction */
.age-restriction {
    margin-top: var(--space-md);
    padding-top: var(--space-md);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: #ff8a94;
    font-size: 0.85rem;
}

.age-restriction strong {
    color: #ff4757;
}

/* Age notice in offers section */
.age-notice-offers {
    display: inline-block;
    margin-top: var(--space-md);
    margin-bottom: 70px;
    /* Increased from 40px to separate from pricing cards */
    /* Increased spacing */
    padding: 10px 20px;
    background: rgba(255, 71, 87, 0.1);
    border: 1px solid rgba(255, 71, 87, 0.3);
    border-radius: var(--radius-md);
    color: #ff8a94;
    font-size: 0.9rem;
    position: relative;
    z-index: 50;
}

/* FORCE VISIBILITY of Wallet Connect Action Button AND Claim Button */
.wallet-connect-action,
#connect-wallet-generic,
#claim-reward-btn {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 60px !important;
}

/* ================================
   ADDITIONAL MOBILE FIXES (Pricing, Menu, Offers)
   ================================ */
@media (max-width: 768px) {

    /* Offers Title Fix */
    .offers-compact-header {
        padding-top: 140px !important;
    }

    /* Menu Fix */
    .nav-links {
        max-height: 100vh !important;
        height: auto !important;
        overflow-y: auto !important;
        padding-bottom: 100px !important;
    }

    .nav-links a:last-child {
        margin-bottom: 80px !important;
    }

    .nav-links.active {
        display: flex !important;
        flex-direction: column !important;
        gap: var(--space-sm);
        padding-bottom: 120px !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    /* Pricing Fix */
    .pricing-grid-3 {
        display: flex;
        flex-direction: column;
        gap: var(--space-md);
        padding: 0 var(--space-xs);
        max-width: 100%;
        overflow: hidden;
    }

    .pricing-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: unset !important;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .pricing-card .pricing-header,
    .pricing-card .pricing-content {
        padding-left: var(--space-sm) !important;
        padding-right: var(--space-sm) !important;
    }

    .pricing-card .price-amount {
        font-size: 2rem !important;
    }

    .pricing-card .price-old {
        font-size: 1rem !important;
    }

    .pricing-features li {
        font-size: 0.85rem !important;
        padding: var(--space-xs) 0 !important;
    }

    .pricing-card .btn-pack {
        width: 100% !important;
        justify-content: center;
    }

    .discord-subscription-card {
        max-width: 100% !important;
        margin: 0 var(--space-xs);
    }

    .discord-card-content {
        flex-direction: column !important;
        gap: var(--space-sm) !important;
        padding: var(--space-md) var(--space-sm) !important;
    }

    .guarantee-box {
        margin: var(--space-md) var(--space-xs) !important;
        padding: var(--space-sm) !important;
    }

    .payment-logos {
        padding: 0 var(--space-xs);
    }
}

/* === PETIT ÉCRAN === */
@media (max-width: 380px) {

    .pricing-card .pricing-header,
    .pricing-card .pricing-content {
        padding-left: var(--space-xs) !important;
        padding-right: var(--space-xs) !important;
    }

    .pricing-card .price-amount {
        font-size: 1.75rem !important;
    }

    .pricing-features li {
        font-size: 0.8rem !important;
    }

    .promo-badge {
        font-size: 0.7rem !important;
        padding: 4px 8px !important;
    }

    .nav-links a {
        padding: 12px 16px !important;
        font-size: 0.95rem !important;
    }

    .nav-links {
        padding-bottom: 140px !important;
    }
}

/* === VALUE PROPS - TAILLE RÉDUITE MOBILE === */
@media (max-width: 768px) {
    .value-props .value-prop span {
        font-size: 0.85rem !important;
        /* Réduction de ~1px */
    }

    .value-props .value-prop span strong {
        font-size: 0.85rem !important;
    }

    .value-props .value-prop .prop-icon {
        font-size: 1rem !important;
    }
}

@media (max-width: 380px) {
    .value-props .value-prop span {
        font-size: 0.8rem !important;
    }

    .value-props .value-prop span strong {
        font-size: 0.8rem !important;
    }
}

/* ================================
   MOBILE FIXES PHASE 3: See More & Spacing
   ================================ */
@media (max-width: 768px) {

    /* Offers Title - Adjusted to 80px */
    .offers-compact-header {
        padding-top: 80px !important;
    }

    /* Warning Message - Reduce spacing */
    .age-notice-offers {
        margin-top: 20px !important;
        /* Reduced gap */
        margin-bottom: 40px !important;
    }

    /* === TRUST ITEMS - SYSTÈME "VOIR PLUS" MOBILE === */
    /* Pour .pricing-trust sur page offres */
    .pricing-trust .pricing-trust-item:nth-child(n+3) {
        display: none;
    }

    .pricing-trust.expanded .pricing-trust-item:nth-child(n+3) {
        display: flex;
    }

    /* Bouton Voir plus */
    .voir-plus-trust-btn {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 6px;
        width: 100%;
        padding: 10px;
        margin-top: 10px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 8px;
        color: var(--accent-green, #00ff88);
        font-size: 0.85rem;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .voir-plus-trust-btn:hover {
        background: rgba(255, 255, 255, 0.1);
    }

    .voir-plus-trust-btn .arrow {
        transition: transform 0.3s ease;
        font-size: 0.7rem;
    }

    .expanded+.voir-plus-trust-btn .arrow {
        transform: rotate(180deg);
    }
}

/* Cacher sur desktop */
@media (min-width: 769px) {
    .voir-plus-trust-btn {
        display: none !important;
    }
}

/* ================================
   DESKTOP ONLY: SPACING REDUCTION (30%)
   ================================ */
@media (min-width: 769px) {

    .story-section,
    .program-section,
    .treasure-section,
    .comparison-section,
    .pricing-section,
    .faq-section,
    .cta-section,
    .reassurance-section,
    .free-extract-section,
    .no-kyc-section,
    .author-section {
        /* Reduced from 4xl (6rem) to 3xl (4rem) = ~33% reduction */
        padding-top: var(--space-3xl) !important;
        padding-bottom: var(--space-3xl) !important;
    }
}

.see-more-btn {
    display: none;
}

/* Remove Stats Bar Spacing on Desktop */
@media (min-width: 769px) {
    .stats-bar {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* Remove Spacing for Specific Sections on Desktop */
@media (min-width: 769px) {

    /* Free Extract / Lead Magnet */
    .lead-magnet-section,
    .free-extract-section,
    /* Added alias based on index.html ID/Class usage */
    #extrait-gratuit {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .lead-magnet-section .container,
    .lead-magnet-section .lead-magnet-box,
    .free-extract-section .container,
    .free-extract-section .free-extract-card {
        /* Added alias */
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* Story Section */
    .story-section {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .story-section .container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* Program / Keys Section */
    .keys-section,
    .program-section,
    /* Added alias */
    #programme {
        margin-top: 20 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .keys-section .container,
    .program-section .container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* ===== VOIR PLUS - PRICING CARDS MOBILE (Landing Page & Offres) ===== */

/* Desktop : tout visible, bouton caché */
@media (min-width: 769px) {

    .pricing-features li,
    .pricing-features li.mobile-hidden {
        display: flex !important;
        opacity: 1 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .see-more-features-btn {
        display: none !important;
    }
}

/* Mobile : système voir plus avec .mobile-hidden */
@media (max-width: 768px) {
    .pricing-features li {
        transition: all 0.3s ease;
    }

    /* Cacher les éléments avec classe .mobile-hidden */
    .pricing-features li.mobile-hidden {
        display: none !important;
        opacity: 0;
        max-height: 0;
        overflow: hidden;
    }

    /* Quand expanded, montrer les éléments .mobile-hidden */
    .pricing-features.expanded li.mobile-hidden {
        display: flex !important;
        opacity: 1;
        max-height: 200px;
        animation: fadeIn 0.3s ease;
    }

    /* Bouton Voir plus */
    .see-more-features-btn {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        align-items: center;
        justify-content: center;
        gap: 8px;

        width: 100%;
        padding: 12px 16px;
        margin-top: 12px;
        margin-bottom: 16px;
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 8px;
        color: #00FF88;
        font-size: 0.85rem;
        font-weight: 500;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .see-more-features-btn:hover {
        background: rgba(255, 255, 255, 0.1);
        border-color: rgba(0, 255, 136, 0.3);
    }

    .see-more-features-btn .see-more-icon {
        transition: transform 0.3s ease;
        font-size: 0.75rem;
    }

    .see-more-features-btn.expanded .see-more-icon {
        transform: rotate(180deg);
    }
}

/* Desktop uniquement - Réduire de 60% margin/padding pour USPS Section */
@media (min-width: 769px) {
    .usps-section {
        /* Based on user request: 100px -> 40px, 80px -> 32px */
        margin-top: 40px !important;
        margin-bottom: 40px !important;
        padding-top: 32px !important;
        padding-bottom: 32px !important;
    }

    .usps-section .container {
        padding-top: 32px !important;
        padding-bottom: 32px !important;
    }
}

/* Desktop uniquement - Modifications Spacing (Testimonials, FAQ, Concept) */
@media (min-width: 769px) {

    /* Section Témoignages - Suppression espace */
    .testimonials-section,
    #avis {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .testimonials-section .container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* Section FAQ - Suppression espace */
    .faq-section,
    #faq {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .faq-section .container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* Section Concept - Réduction 50% (Base container 120px -> 60px) */
    .concept-section,
    #concept {
        margin-top: 0 !important;
        /* Ensure no external margin adds up */
        padding-top: 0 !important;
    }

    .concept-section .container {
        padding-top: 60px !important;
        /* 50% reduction */
    }
}

/* Desktop uniquement - Final CTA & Keys Section Spacing */
@media (min-width: 769px) {

    /* Supprimer le padding au-dessus de final-cta */
    .final-cta {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    .final-cta .container {
        padding-top: 60px !important;
        /* 50% of the default 120px */
    }

    /* Augmenter le padding de 15% pour keys-section */
    /* Base était ~4rem (64px) -> +15% ≈ 74px (4.6rem) */
    .keys-section,
    #programme {
        padding-top: 4.6rem !important;
        padding-bottom: 4.6rem !important;
    }
}

/* =================================================================
   MOBILE OVERRIDES: PRICING TRUST BADGES (MATCH HERO BADGES)
   ================================================================= */
@media (max-width: 768px) {

    /* 1. Remove "See More" Button */
    .voir-plus-trust-btn {
        display: none !important;
    }

    /* 2. Show all trust items (override previous hiding logic) */
    .pricing-trust .pricing-trust-item:nth-child(n+3) {
        display: flex !important;
    }

    /* 3. Style .pricing-trust like .trust-badges (Hero) */
    .pricing-trust {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        justify-content: center !important;
        margin-top: 15px !important;
        margin-bottom: 0 !important;
    }

    .pricing-trust .pricing-trust-item {
        /* 2 items per row */
        flex: 0 0 calc(50% - 4px) !important;
        max-width: calc(50% - 4px) !important;

        /* Green Border Styling (Match Hero) */
        border: 1px solid #00FF88 !important;
        background: rgba(0, 255, 136, 0.05) !important;
        border-radius: 8px !important;
        padding: 8px 10px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        /* Centered like hero badges if applicable, though hero uses gap */
        gap: 6px !important;
        box-sizing: border-box !important;
    }

    .pricing-trust .pricing-trust-item span {
        font-size: 0.75rem !important;
        line-height: 1.2 !important;
        color: rgba(255, 255, 255, 0.9) !important;
        text-align: left;
        /* Keep text aligned left if icon is separate */
    }

    .pricing-trust .pricing-trust-item .trust-icon {
        font-size: 0.9rem !important;
    }
}

/* ========================================
   SPACING FIXES (User Request)
======================================== */

@media (min-width: 769px) {

    /* 1. Remove Footer Top Margin (Global) */
    footer {
        margin-top: 0 !important;
        padding-top: 40px !important;
        /* Adjust if needed */
    }

    /* 2. Fix "Nos Offres" Title hidden behind header */
    /* Add space above title in offers page */
    .offers-compact-header {
        padding-top: 160px !important;
        /* Clears fixed header */
    }

    /* 3. Reduce FAQ Page padding by 60% */
    /* Base was ~120px, target ~50px */
    .faq-page .container,
    .faq-hero {
        padding-top: 50px !important;
    }

    /* 4. Reduce Contact Page padding by 60% */
    .contact-page .container,
    .contact-page .section-header {
        padding-top: 50px !important;
        margin-top: 0 !important;
    }

    /* Ensure no double padding on Contact */
    .contact-page {
        padding-top: 0 !important;
    }
}

/* FIX: Liens Utiles - Remove gap between Hero and Warning */
.links-hero {
    padding-bottom: 10px !important;
}

/* FIX: Hero sections must clear fixed navbar on small mobile */
@media (max-width: 480px) {
    .links-hero {
        padding-top: 140px !important;
    }

    .offers-compact-header {
        padding-top: 120px !important;
    }
}

.warning-banner {
    margin-top: 10px !important;
}

/* FIX: Nos Offres - Desktop spacing */
@media (min-width: 769px) {
    .offers-compact-header {
        padding-top: 120px !important;
        margin-top: 0 !important;
    }
}

/* FIX: Liens Utiles - ULTRA COMPACT (Round 3) */
@media (min-width: 769px) {
    .links-hero {
        padding-bottom: 0 !important;
    }

    .links-hero p {
        margin-bottom: 10px !important;
        /* Tighten paragraph margin */
    }

    .warning-banner {
        margin-top: 5px !important;
        /* Almost touching */
    }
}

/* ========================================
   FIX: Wallet Button Mobile Visibility
======================================== */
#wallet-icon {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Mobile: show icon and short text */
@media (max-width: 968px) {
    #header-wallet-btn {
        gap: 6px !important;
        padding: 8px 12px !important;
    }

    #wallet-icon {
        font-size: 1.2rem !important;
        display: inline-block !important;
    }

    #wallet-btn-text {
        display: inline !important;
        font-size: 0.75rem !important;
    }
}

/* Very small screens: icon + short text still visible */
@media (max-width: 380px) {
    #header-wallet-btn {
        padding: 8px 10px !important;
    }

    #wallet-btn-text {
        display: inline !important;
        max-width: 60px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

/* ========================================
   TESTIMONIALS CAROUSEL - INFINITE SCROLL
   ======================================== */
.testimonials-carousel-wrapper {
    overflow: hidden;
    width: 100%;
}

.testimonials-carousel {
    display: flex;
    gap: 24px;
    animation: carousel-scroll 30s linear infinite;
    width: -moz-max-content;
    width: max-content;
}

.testimonials-carousel:hover {
    animation-play-state: paused;
}

@keyframes carousel-scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* ========================================
   FIX: MOBILE TESTIMONIALS SCROLL
   ======================================== */
@media (max-width: 968px) {

    /* Stop the infinite animation */
    .testimonials-carousel {
        animation: none !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 15px !important;
        width: -moz-max-content;
        width: max-content;
        /* Allow it to take necessary width */
        transform: none !important;
        /* Reset any translation */
    }

    /* Make the wrapper scrollable */
    .testimonials-carousel-wrapper {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        width: 100%;
        padding-bottom: 20px !important;
        /* Space for scrollbar */
    }

    /* Cards snap */
    .testimonial-card {
        flex: 0 0 80vw !important;
        /* Use viewport width instead of % */
        width: 80vw !important;
        min-width: 280px !important;
        scroll-snap-align: center;
        margin-right: 15px !important;
        background: var(--bg-card) !important;
        /* Ensure background is opaque */
    }
}

/* FIX: Desktop Padding for Lead Magnet Badge (User Requested) */
/* Styles par défaut (mobile d'abord) */
.lead-magnet-badge {
    padding: 5px 10px;
    /* Petit padding pour mobile */
}

/* Uniquement pour les écrans d'ordinateurs (plus de 1024px) */
@media (min-width: 1024px) {
    .lead-magnet-badge {
        padding: 20px 40px;
        /* Ajuste ces valeurs selon tes besoins */
    }
}

/* FIX: Desktop Padding for Offers Page (User Requested) */
/* Uniquement pour les écrans d'ordinateurs (1024px et plus) */
@media (min-width: 1024px) {

    /* 1. Espace AU-DESSUS de la carte entière */
    .free-extract-card {
        margin-top: 100px;
        /* Crée un grand saut entre la section précédente et la carte */
    }

    /* 2. Espace ENTRE le haut de la carte (ou le badge) et ton titre */
    .free-extract-card h2 {
        margin-top: 30px;
        /* Espace entre le badge "GRATUIT" et le titre */
        margin-bottom: 50px;
        /* Espace entre le titre et le contenu qui suit dans la carte */
    }
}