@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap');
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
    body { font-family: 'Inter', system-ui, sans-serif; }
    .mono { font-family: 'JetBrains Mono', monospace; }

    /* Flag ticker */
    .flag-track { display: flex; gap: 20px; animation: flagScroll 40s linear infinite; }
    .flag-track:hover { animation-play-state: paused; }
    @keyframes flagScroll {
      0%   { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

    /* Partner carousels */
    .partner-track-left  { display: flex; gap: 16px; animation: partnerLeft  30s linear infinite; }
    .partner-track-right { display: flex; gap: 16px; animation: partnerRight 30s linear infinite; }
    @keyframes partnerLeft  { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
    @keyframes partnerRight { 0% { transform: translateX(-50%); } 100% { transform: translateX(0); } }

    /* Glassmorphism */
    .glass { background: rgba(255,255,255,0.06); backdrop-filter: blur(14px); border: 1px solid rgba(255,255,255,0.12); }
    .glass-white { background: rgba(255,255,255,0.90); backdrop-filter: blur(10px); border: 1px solid rgba(37,99,235,0.15); }

    /* Hero gradient */
    .hero-bg {
      background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 30%, #1d4ed8 60%, #0c4a6e 100%);
      position: relative;
      overflow: hidden;
    }
    .hero-bg::before {
      content: ''; position: absolute; inset: 0;
      background: radial-gradient(ellipse 80% 60% at 50% -10%, rgba(59,130,246,0.35), transparent 70%);
    }

    /* Orb */
    .orb { border-radius: 9999px; filter: blur(70px); pointer-events: none; }

    /* Gradient text */
    .grad-text {
      background: linear-gradient(135deg, #93c5fd 0%, #38bdf8 50%, #67e8f9 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    /* Scroll-reveal via IntersectionObserver */
    .reveal { opacity: 0; transform: translateY(28px); transition: opacity .55s ease, transform .55s ease; }
    .reveal.visible { opacity: 1; transform: translateY(0); }
    .reveal-delay-1 { transition-delay: .08s; }
    .reveal-delay-2 { transition-delay: .16s; }
    .reveal-delay-3 { transition-delay: .24s; }
    .reveal-delay-4 { transition-delay: .32s; }
    .reveal-delay-5 { transition-delay: .40s; }
    .reveal-delay-6 { transition-delay: .48s; }

    /* FAQ accordion */
    .faq-content { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
    .faq-content.open { max-height: 300px; }
    .faq-chevron { transition: transform .3s ease; }
    .faq-chevron.open { transform: rotate(180deg); }

    /* Nav scroll state */
    nav.scrolled { background: rgba(255,255,255,0.97); backdrop-filter: blur(12px); box-shadow: 0 2px 20px rgba(0,0,0,.10); }
    nav.scrolled .nav-logo-text { color: #1d4ed8; }
    nav.scrolled .nav-link { color: #374151; }
    nav.scrolled .nav-link:hover { color: #2563eb; background: #eff6ff; }
    nav.scrolled .nav-menu-btn { color: #374151; }

    /* Roadmap line */
    .roadmap-line { position: absolute; left: 50%; transform: translateX(-50%); top: 0; bottom: 0; width: 2px; background: linear-gradient(180deg, #bfdbfe, #3b82f6 40%, #bfdbfe); }

    /* Region tab active state */
    .region-tab.active { background: #2563eb; color: white; border-color: #2563eb; }
    .region-tab { transition: all .2s; }

    /* Converter select */
    select { -webkit-appearance: none; appearance: none; }

    /* Smooth section backgrounds */
    section { position: relative; }

    /* Chart tooltip */
    .chart-tooltip { position: absolute; pointer-events: none; z-index: 30; transition: opacity .15s; }
