<!DOCTYPE html>
<html lang="fr">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>NeoStreamix – IPTV Premium HD & 4K | Films, Séries & Chaînes</title>
  <meta name="description" content="NeoStreamix – Accédez à plus de 20 000 chaînes, films et séries en HD & 4K. IPTV premium ultra-rapide, compatible tous écrans. Essai gratuit 24h." />
  <meta name="keywords" content="IPTV, streaming, chaînes HD, films, séries, 4K, NeoStreamix, abonnement IPTV" />
  <meta property="og:title" content="NeoStreamix – IPTV Premium HD & 4K" />
  <meta property="og:description" content="Plus de 20 000 chaînes, films et séries. Streaming ultra-rapide." />
  <meta property="og:type" content="website" />
  <meta property="og:url" content="https://neostreamix.com" />
  <link rel="canonical" href="https://neostreamix.com/" />
  <link rel="preconnect" href="https://fonts.googleapis.com" />
  <link href="https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:ital,wght@0,300;0,400;0,500;1,300&display=swap" rel="stylesheet" />
  <style>
    :root {
      --bg: #07080f;
      --surface: #0e101c;
      --card: #13162a;
      --border: rgba(255,255,255,0.07);
      --accent: #00e5ff;
      --accent2: #7b2fff;
      --accent3: #ff3d7f;
      --text: #e8eaf6;
      --muted: #7a7f9a;
      --radius: 16px;
    }
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      background: var(--bg);
      color: var(--text);
      font-family: 'DM Sans', sans-serif;
      font-size: 16px;
      overflow-x: hidden;
    }

    /* NOISE OVERLAY */
    body::before {
      content: '';
      position: fixed; inset: 0; z-index: 0;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
      pointer-events: none;
    }

    /* NAV */
    nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 100;
      display: flex; align-items: center; justify-content: space-between;
      padding: 18px 60px;
      background: rgba(7,8,15,0.85);
      backdrop-filter: blur(20px);
      border-bottom: 1px solid var(--border);
    }
    .logo {
      font-family: 'Syne', sans-serif;
      font-size: 1.5rem; font-weight: 800;
      background: linear-gradient(90deg, var(--accent), var(--accent2));
      -webkit-background-clip: text; -webkit-text-fill-color: transparent;
      letter-spacing: -0.02em;
    }
    .nav-links { display: flex; gap: 32px; list-style: none; }
    .nav-links a {
      color: var(--muted); text-decoration: none; font-size: .9rem;
      font-weight: 500; transition: color .2s;
    }
    .nav-links a:hover { color: var(--accent); }
    .nav-cta {
      background: linear-gradient(135deg, var(--accent2), var(--accent));
      color: #fff; border: none; padding: 10px 24px;
      border-radius: 50px; font-family: 'Syne', sans-serif;
      font-size: .9rem; font-weight: 700; cursor: pointer;
      box-shadow: 0 0 20px rgba(0,229,255,0.25);
      transition: transform .2s, box-shadow .2s;
    }
    .nav-cta:hover { transform: translateY(-2px); box-shadow: 0 0 30px rgba(0,229,255,0.4); }
    .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; }
    .hamburger span { width: 24px; height: 2px; background: var(--text); border-radius: 2px; }

    /* HERO */
    #home {
      min-height: 100vh;
      display: flex; align-items: center; justify-content: center;
      text-align: center;
      padding: 120px 24px 80px;
      position: relative;
      overflow: hidden;
    }
    .hero-bg {
      position: absolute; inset: 0; z-index: -1;
      background:
        radial-gradient(ellipse 80% 60% at 50% 0%, rgba(123,47,255,0.18) 0%, transparent 70%),
        radial-gradient(ellipse 50% 40% at 80% 80%, rgba(0,229,255,0.1) 0%, transparent 60%),
        radial-gradient(ellipse 40% 30% at 10% 60%, rgba(255,61,127,0.08) 0%, transparent 60%);
    }
    .hero-badge {
      display: inline-flex; align-items: center; gap: 8px;
      background: rgba(0,229,255,0.08); border: 1px solid rgba(0,229,255,0.2);
      border-radius: 50px; padding: 6px 16px; margin-bottom: 28px;
      font-size: .8rem; color: var(--accent); font-weight: 500; letter-spacing: .06em; text-transform: uppercase;
    }
    .hero-badge span { width: 6px; height: 6px; background: var(--accent); border-radius: 50%; animation: pulse 2s infinite; }
    @keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(1.5)} }
    .hero h1 {
      font-family: 'Syne', sans-serif;
      font-size: clamp(2.8rem, 7vw, 5.5rem);
      font-weight: 800; line-height: 1.08;
      letter-spacing: -0.03em;
      margin-bottom: 24px;
    }
    .hero h1 em {
      font-style: normal;
      background: linear-gradient(90deg, var(--accent) 0%, var(--accent2) 50%, var(--accent3) 100%);
      -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    }
    .hero p {
      max-width: 560px; margin: 0 auto 40px;
      color: var(--muted); font-size: 1.1rem; line-height: 1.7;
    }
    .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
    .btn-primary {
      background: linear-gradient(135deg, var(--accent2), var(--accent));
      color: #fff; border: none; padding: 14px 36px;
      border-radius: 50px; font-family: 'Syne', sans-serif;
      font-size: 1rem; font-weight: 700; cursor: pointer;
      box-shadow: 0 0 30px rgba(123,47,255,0.4);
      transition: transform .2s, box-shadow .2s; text-decoration: none;
    }
    .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 0 50px rgba(123,47,255,0.6); }
    .btn-outline {
      background: transparent; color: var(--text);
      border: 1px solid var(--border); padding: 14px 36px;
      border-radius: 50px; font-family: 'Syne', sans-serif;
      font-size: 1rem; font-weight: 600; cursor: pointer;
      transition: border-color .2s, background .2s; text-decoration: none;
    }
    .btn-outline:hover { border-color: var(--accent); background: rgba(0,229,255,0.05); }
    .hero-stats {
      display: flex; gap: 48px; justify-content: center;
      margin-top: 64px; flex-wrap: wrap;
    }
    .stat { text-align: center; }
    .stat-num {
      font-family: 'Syne', sans-serif; font-size: 2rem; font-weight: 800;
      background: linear-gradient(90deg, var(--accent), var(--accent2));
      -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    }
    .stat-label { font-size: .8rem; color: var(--muted); text-transform: uppercase; letter-spacing: .08em; margin-top: 4px; }

    /* SECTION COMMON */
    section { padding: 100px 60px; position: relative; }
    .section-label {
      font-size: .75rem; text-transform: uppercase; letter-spacing: .15em;
      color: var(--accent); font-weight: 600; margin-bottom: 12px;
    }
    .section-title {
      font-family: 'Syne', sans-serif; font-size: clamp(1.8rem, 4vw, 2.8rem);
      font-weight: 800; line-height: 1.15; margin-bottom: 16px; letter-spacing: -0.02em;
    }
    .section-sub { color: var(--muted); max-width: 520px; line-height: 1.7; }
    .section-header { margin-bottom: 56px; }

    /* SCROLL TICKER */
    .ticker-wrap {
      overflow: hidden; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
      background: var(--surface); padding: 14px 0;
    }
    .ticker-track {
      display: flex; gap: 60px; width: max-content;
      animation: ticker 30s linear infinite;
    }
    @keyframes ticker { from{transform:translateX(0)} to{transform:translateX(-50%)} }
    .ticker-item { white-space: nowrap; color: var(--muted); font-size: .85rem; display: flex; align-items: center; gap: 10px; }
    .ticker-item strong { color: var(--accent); }
    .ticker-dot { width: 4px; height: 4px; background: var(--accent2); border-radius: 50%; }

    /* MOVIES / SERIES */
    #movies { background: var(--surface); }
    .scroll-row-wrap { position: relative; overflow: hidden; margin-bottom: 48px; }
    .scroll-row {
      display: flex; gap: 16px;
      animation: scrollRow 40s linear infinite;
      width: max-content;
    }
    .scroll-row:hover { animation-play-state: paused; }
    .scroll-row.reverse { animation-direction: reverse; animation-duration: 35s; }
    @keyframes scrollRow { from{transform:translateX(0)} to{transform:translateX(-50%)} }
    .card-media {
      flex-shrink: 0; width: 160px; border-radius: 12px;
      overflow: hidden; position: relative; cursor: pointer;
      background: var(--card); border: 1px solid var(--border);
      transition: transform .3s;
    }
    .card-media:hover { transform: scale(1.06); z-index: 2; }
    .card-media img { width: 100%; height: 220px; object-fit: cover; display: block; }
    .card-media-placeholder {
      width: 100%; height: 220px;
      background: linear-gradient(135deg, var(--card) 0%, rgba(123,47,255,0.2) 100%);
      display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
    }
    .card-media-placeholder .icon { font-size: 2.5rem; }
    .card-media-placeholder .title { font-size: .75rem; color: var(--muted); text-align: center; padding: 0 8px; }
    .card-media-badge {
      position: absolute; top: 8px; left: 8px;
      background: var(--accent3); color: #fff;
      font-size: .65rem; font-weight: 700; padding: 3px 8px; border-radius: 4px; text-transform: uppercase;
    }
    .card-media-badge.hd { background: var(--accent2); }
    .card-media-badge.new { background: #00b07a; }
    .card-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, transparent 60%);
      opacity: 0; transition: opacity .3s;
      display: flex; align-items: flex-end; padding: 12px;
    }
    .card-media:hover .card-overlay { opacity: 1; }
    .card-overlay-title { font-size: .8rem; font-weight: 600; line-height: 1.3; }

    /* CHANNELS */
    #channels { background: var(--bg); }
    .channels-grid {
      display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 16px;
    }
    .channel-card {
      background: var(--card); border: 1px solid var(--border);
      border-radius: 12px; padding: 20px 16px; text-align: center;
      cursor: pointer; transition: border-color .2s, transform .2s, box-shadow .2s;
    }
    .channel-card:hover {
      border-color: var(--accent); transform: translateY(-4px);
      box-shadow: 0 8px 30px rgba(0,229,255,0.1);
    }
    .channel-icon { font-size: 2.2rem; margin-bottom: 8px; }
    .channel-name { font-size: .8rem; color: var(--muted); font-weight: 500; }
    .channel-category { font-size: .65rem; color: var(--accent2); text-transform: uppercase; letter-spacing: .06em; margin-top: 4px; }
    .channels-scroll-row { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 16px; scrollbar-width: thin; scrollbar-color: var(--accent2) transparent; }

    /* PRICING */
    #pricing { background: var(--surface); }
    .pricing-grid {
      display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; max-width: 1100px; margin: 0 auto;
    }
    .pricing-card {
      background: var(--card); border: 1px solid var(--border);
      border-radius: 20px; padding: 36px 32px; position: relative; overflow: hidden;
      transition: transform .3s, box-shadow .3s;
    }
    .pricing-card:hover { transform: translateY(-6px); box-shadow: 0 20px 50px rgba(0,0,0,0.4); }
    .pricing-card.featured {
      border-color: var(--accent2);
      background: linear-gradient(145deg, #1a1040 0%, #0e101c 100%);
      box-shadow: 0 0 50px rgba(123,47,255,0.2);
    }
    .pricing-card.featured::before {
      content: '⭐ POPULAIRE';
      position: absolute; top: 20px; right: -32px;
      background: linear-gradient(90deg, var(--accent2), var(--accent));
      color: #fff; font-size: .65rem; font-weight: 800; padding: 5px 48px;
      transform: rotate(45deg); letter-spacing: .1em;
    }
    .pricing-name {
      font-family: 'Syne', sans-serif; font-size: 1rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: .1em; color: var(--muted); margin-bottom: 16px;
    }
    .pricing-price {
      font-family: 'Syne', sans-serif; font-size: 3.2rem; font-weight: 800;
      line-height: 1; margin-bottom: 6px;
    }
    .pricing-price span { font-size: 1.2rem; color: var(--muted); font-weight: 400; }
    .pricing-period { font-size: .85rem; color: var(--muted); margin-bottom: 28px; }
    .pricing-features { list-style: none; margin-bottom: 32px; display: flex; flex-direction: column; gap: 12px; }
    .pricing-features li { display: flex; align-items: center; gap: 10px; font-size: .9rem; }
    .pricing-features li::before { content: '✓'; color: var(--accent); font-weight: 800; flex-shrink: 0; }
    .pricing-features li.off { color: var(--muted); }
    .pricing-features li.off::before { content: '✕'; color: rgba(255,255,255,0.2); }
    .btn-pricing {
      width: 100%; padding: 14px; border-radius: 50px; font-family: 'Syne', sans-serif;
      font-size: .95rem; font-weight: 700; cursor: pointer; border: none; transition: all .2s;
    }
    .btn-pricing.outline { background: transparent; border: 1px solid var(--border); color: var(--text); }
    .btn-pricing.outline:hover { border-color: var(--accent); }
    .btn-pricing.solid { background: linear-gradient(135deg, var(--accent2), var(--accent)); color: #fff; }
    .btn-pricing.solid:hover { box-shadow: 0 0 30px rgba(123,47,255,0.5); transform: translateY(-2px); }

    /* TESTIMONIALS */
    #testimonials { background: var(--bg); }
    .testimonials-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
    .testimonial-card {
      background: var(--card); border: 1px solid var(--border);
      border-radius: 20px; padding: 28px; position: relative;
    }
    .testimonial-card::before {
      content: '"'; font-family: Georgia, serif; font-size: 5rem; line-height: 1;
      color: var(--accent2); opacity: .3; position: absolute; top: 12px; left: 20px;
    }
    .testimonial-text { color: var(--muted); line-height: 1.7; margin-bottom: 20px; font-size: .95rem; }
    .testimonial-author { display: flex; align-items: center; gap: 12px; }
    .testimonial-avatar {
      width: 44px; height: 44px; border-radius: 50%;
      background: linear-gradient(135deg, var(--accent2), var(--accent));
      display: flex; align-items: center; justify-content: center; font-size: 1.1rem;
      flex-shrink: 0;
    }
    .testimonial-name { font-weight: 600; font-size: .95rem; }
    .testimonial-country { font-size: .8rem; color: var(--muted); }
    .stars { color: #ffd700; font-size: .85rem; margin-bottom: 12px; }

    /* FAQ */
    #faq { background: var(--surface); }
    .faq-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(480px, 1fr)); gap: 16px; max-width: 1100px; margin: 0 auto; }
    .faq-item {
      background: var(--card); border: 1px solid var(--border);
      border-radius: 12px; overflow: hidden;
    }
    .faq-question {
      padding: 20px 24px; cursor: pointer;
      display: flex; justify-content: space-between; align-items: center;
      font-weight: 600; font-size: .95rem; transition: background .2s;
    }
    .faq-question:hover { background: rgba(255,255,255,0.03); }
    .faq-question .arrow { transition: transform .3s; color: var(--accent); font-size: 1.2rem; flex-shrink: 0; }
    .faq-item.open .faq-question .arrow { transform: rotate(45deg); }
    .faq-answer {
      max-height: 0; overflow: hidden; transition: max-height .4s ease, padding .3s;
      color: var(--muted); line-height: 1.7; font-size: .9rem;
    }
    .faq-item.open .faq-answer { max-height: 200px; padding: 0 24px 20px; }

    /* BLOG */
    #blog { background: var(--bg); }
    .blog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 28px; }
    .blog-card {
      background: var(--card); border: 1px solid var(--border);
      border-radius: 20px; overflow: hidden; cursor: pointer;
      transition: transform .3s, box-shadow .3s;
    }
    .blog-card:hover { transform: translateY(-6px); box-shadow: 0 16px 40px rgba(0,0,0,0.3); }
    .blog-img {
      height: 200px;
      display: flex; align-items: center; justify-content: center;
      font-size: 4rem;
    }
    .blog-img.c1 { background: linear-gradient(135deg, #1a0535, #2d0b6b); }
    .blog-img.c2 { background: linear-gradient(135deg, #001830, #004070); }
    .blog-img.c3 { background: linear-gradient(135deg, #200010, #600030); }
    .blog-body { padding: 24px; }
    .blog-cat { font-size: .7rem; text-transform: uppercase; letter-spacing: .1em; color: var(--accent); font-weight: 700; margin-bottom: 10px; }
    .blog-title { font-family: 'Syne', sans-serif; font-size: 1.1rem; font-weight: 700; margin-bottom: 10px; line-height: 1.35; }
    .blog-excerpt { color: var(--muted); font-size: .85rem; line-height: 1.6; }
    .blog-meta { display: flex; align-items: center; gap: 8px; margin-top: 16px; color: var(--muted); font-size: .8rem; }
    .blog-meta span { color: var(--accent2); }

    /* CONTACT */
    #contact { background: var(--surface); }
    .contact-wrapper {
      display: grid; grid-template-columns: 1fr 1fr; gap: 60px; max-width: 1100px; margin: 0 auto;
      align-items: start;
    }
    .contact-info h3 { font-family: 'Syne', sans-serif; font-size: 1.4rem; font-weight: 700; margin-bottom: 16px; }
    .contact-info p { color: var(--muted); line-height: 1.7; margin-bottom: 32px; }
    .contact-detail { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
    .contact-icon {
      width: 44px; height: 44px; border-radius: 12px;
      background: rgba(0,229,255,0.08); border: 1px solid rgba(0,229,255,0.15);
      display: flex; align-items: center; justify-content: center; font-size: 1.2rem; flex-shrink: 0;
    }
    .contact-detail-text strong { font-size: .9rem; display: block; }
    .contact-detail-text span { color: var(--muted); font-size: .85rem; }
    .contact-form { display: flex; flex-direction: column; gap: 16px; }
    .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .form-group { display: flex; flex-direction: column; gap: 8px; }
    .form-group label { font-size: .85rem; color: var(--muted); font-weight: 500; }
    .form-group input, .form-group select, .form-group textarea {
      background: var(--card); border: 1px solid var(--border);
      border-radius: 10px; padding: 12px 16px; color: var(--text);
      font-family: 'DM Sans', sans-serif; font-size: .9rem;
      outline: none; transition: border-color .2s;
    }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus {
      border-color: var(--accent);
    }
    .form-group textarea { resize: none; height: 120px; }
    .form-group select option { background: var(--card); }

    /* FOOTER */
    footer {
      background: var(--bg); border-top: 1px solid var(--border);
      padding: 60px 60px 32px;
    }
    .footer-grid {
      display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px;
    }
    .footer-brand .logo { font-size: 1.3rem; margin-bottom: 14px; display: block; }
    .footer-brand p { color: var(--muted); font-size: .85rem; line-height: 1.7; max-width: 260px; }
    .footer-socials { display: flex; gap: 10px; margin-top: 20px; }
    .social-icon {
      width: 38px; height: 38px; border-radius: 10px;
      background: var(--card); border: 1px solid var(--border);
      display: flex; align-items: center; justify-content: center; font-size: 1rem;
      cursor: pointer; transition: border-color .2s, transform .2s;
    }
    .social-icon:hover { border-color: var(--accent); transform: translateY(-2px); }
    .footer-col h4 { font-family: 'Syne', sans-serif; font-weight: 700; font-size: .95rem; margin-bottom: 20px; }
    .footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }
    .footer-col ul li a { color: var(--muted); text-decoration: none; font-size: .85rem; transition: color .2s; }
    .footer-col ul li a:hover { color: var(--accent); }
    .footer-bottom {
      display: flex; justify-content: space-between; align-items: center;
      padding-top: 24px; border-top: 1px solid var(--border);
      flex-wrap: wrap; gap: 12px;
    }
    .footer-bottom p { color: var(--muted); font-size: .8rem; }

    /* WHATSAPP BUTTON */
    .whatsapp-btn {
      position: fixed; bottom: 90px; right: 28px; z-index: 99;
      width: 56px; height: 56px; border-radius: 50%;
      background: #25D366;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 6px 24px rgba(37,211,102,0.5);
      transition: transform .2s, box-shadow .2s;
      text-decoration: none;
    }
    .whatsapp-btn:hover {
      transform: translateY(-3px) scale(1.08);
      box-shadow: 0 10px 32px rgba(37,211,102,0.7);
    }
    .whatsapp-btn:hover .whatsapp-tooltip { opacity: 1; transform: translateX(0); pointer-events: auto; }
    .whatsapp-tooltip {
      position: absolute; right: 68px;
      background: #25D366; color: #fff;
      font-family: 'Syne', sans-serif; font-size: .8rem; font-weight: 700;
      padding: 8px 14px; border-radius: 50px; white-space: nowrap;
      opacity: 0; transform: translateX(8px);
      transition: opacity .2s, transform .2s; pointer-events: none;
    }
    .whatsapp-tooltip::after {
      content: ''; position: absolute; right: -6px; top: 50%; transform: translateY(-50%);
      border: 6px solid transparent; border-left-color: #25D366; border-right: none;
    }

    /* FLOATING CTA */
    .floating-cta {
      position: fixed; bottom: 28px; right: 28px; z-index: 99;
      background: linear-gradient(135deg, var(--accent2), var(--accent));
      color: #fff; border: none; padding: 14px 24px;
      border-radius: 50px; font-family: 'Syne', sans-serif; font-weight: 700; font-size: .9rem;
      cursor: pointer; box-shadow: 0 8px 30px rgba(123,47,255,0.5);
      transition: transform .2s, box-shadow .2s;
      display: flex; align-items: center; gap: 8px;
    }
    .floating-cta:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 12px 40px rgba(123,47,255,0.7); }

    /* FEATURES STRIP */
    .features-strip {
      background: var(--surface); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
      padding: 60px;
    }
    .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 32px; }
    .feature-item { display: flex; align-items: flex-start; gap: 16px; }
    .feature-icon-wrap {
      width: 48px; height: 48px; border-radius: 12px; flex-shrink: 0;
      background: linear-gradient(135deg, rgba(123,47,255,0.2), rgba(0,229,255,0.1));
      border: 1px solid rgba(0,229,255,0.15);
      display: flex; align-items: center; justify-content: center; font-size: 1.4rem;
    }
    .feature-text strong { font-family: 'Syne', sans-serif; font-weight: 700; font-size: .95rem; display: block; margin-bottom: 4px; }
    .feature-text span { color: var(--muted); font-size: .85rem; line-height: 1.5; }

    /* RESPONSIVE */
    @media (max-width: 900px) {
      nav { padding: 16px 24px; }
      .nav-links { display: none; }
      .hamburger { display: flex; }
      section { padding: 80px 24px; }
      .features-strip { padding: 60px 24px; }
      footer { padding: 48px 24px 24px; }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
      .contact-wrapper { grid-template-columns: 1fr; gap: 40px; }
      .faq-grid { grid-template-columns: 1fr; }
      .form-row { grid-template-columns: 1fr; }
    }
    @media (max-width: 600px) {
      .hero h1 { font-size: 2.2rem; }
      .footer-grid { grid-template-columns: 1fr; }
      .channels-grid { grid-template-columns: repeat(3, 1fr); }
    }

    /* ANIMATIONS */
    .fade-up { opacity: 0; transform: translateY(30px); transition: opacity .7s ease, transform .7s ease; }
    .fade-up.visible { opacity: 1; transform: translateY(0); }
  </style>
</head>
<body>

<!-- NAVBAR -->
<nav id="navbar">
  <div class="logo">NeoStreamix</div>
  <ul class="nav-links">
    <li><a href="#home">Accueil</a></li>
    <li><a href="#movies">Films & Séries</a></li>
    <li><a href="#channels">Chaînes</a></li>
    <li><a href="#pricing">Tarifs</a></li>
    <li><a href="#blog">Blog</a></li>
    <li><a href="#faq">FAQ</a></li>
    <li><a href="#contact">Contact</a></li>
  </ul>
  <button class="nav-cta" onclick="document.getElementById('pricing').scrollIntoView({behavior:'smooth'})">Essai Gratuit</button>
  <div class="hamburger" onclick="toggleMenu()"><span></span><span></span><span></span></div>
</nav>

<!-- HERO -->
<section id="home">
  <div class="hero-bg"></div>
  <div class="hero fade-up">
    <div class="hero-badge"><span></span> Streaming Premium disponible maintenant</div>
    <h1>Votre univers <em>illimité</em><br/>en streaming</h1>
    <p>Plus de 20 000 chaînes, 50 000 films et séries en HD & 4K. Ultra-rapide, anti-freeze, compatible avec tous vos écrans.</p>
    <div class="hero-btns">
      <a href="#pricing" class="btn-primary">🚀 Commencer — Essai 24h gratuit</a>
      <a href="#movies" class="btn-outline">Voir le catalogue</a>
    </div>
    <div class="hero-stats">
      <div class="stat"><div class="stat-num">20K+</div><div class="stat-label">Chaînes Live</div></div>
      <div class="stat"><div class="stat-num">50K+</div><div class="stat-label">VOD & Séries</div></div>
      <div class="stat"><div class="stat-num">4K</div><div class="stat-label">Ultra HD</div></div>
      <div class="stat"><div class="stat-num">99.9%</div><div class="stat-label">Uptime</div></div>
    </div>
  </div>
</section>

<!-- TICKER -->
<div class="ticker-wrap">
  <div class="ticker-track">
    <div class="ticker-item"><span class="ticker-dot"></span> <strong>20 000+</strong> Chaînes en direct</div>
    <div class="ticker-item"><span class="ticker-dot"></span> Qualité <strong>4K Ultra HD</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> <strong>Anti-freeze</strong> garanti</div>
    <div class="ticker-item"><span class="ticker-dot"></span> Compatible <strong>Smart TV, Android, iOS, PC</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> Connexions <strong>simultanées</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> Support <strong>24h/24 7j/7</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> <strong>EPG</strong> Guide TV inclus</div>
    <div class="ticker-item"><span class="ticker-dot"></span> Catch-Up TV <strong>7 jours</strong></div>
    <!-- duplicate for infinite -->
    <div class="ticker-item"><span class="ticker-dot"></span> <strong>20 000+</strong> Chaînes en direct</div>
    <div class="ticker-item"><span class="ticker-dot"></span> Qualité <strong>4K Ultra HD</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> <strong>Anti-freeze</strong> garanti</div>
    <div class="ticker-item"><span class="ticker-dot"></span> Compatible <strong>Smart TV, Android, iOS, PC</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> Connexions <strong>simultanées</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> Support <strong>24h/24 7j/7</strong></div>
    <div class="ticker-item"><span class="ticker-dot"></span> <strong>EPG</strong> Guide TV inclus</div>
    <div class="ticker-item"><span class="ticker-dot"></span> Catch-Up TV <strong>7 jours</strong></div>
  </div>
</div>

<!-- FEATURES STRIP -->
<div class="features-strip fade-up">
  <div class="features-grid">
    <div class="feature-item">
      <div class="feature-icon-wrap">📡</div>
      <div class="feature-text"><strong>Stream Ultra-Rapide</strong><span>Serveurs CDN haute performance, zéro buffering</span></div>
    </div>
    <div class="feature-item">
      <div class="feature-icon-wrap">🔒</div>
      <div class="feature-text"><strong>Accès Sécurisé</strong><span>Connexion chiffrée, vie privée protégée</span></div>
    </div>
    <div class="feature-item">
      <div class="feature-icon-wrap">📱</div>
      <div class="feature-text"><strong>Multi-Écrans</strong><span>Smart TV, iOS, Android, PC, MAG, Firestick</span></div>
    </div>
    <div class="feature-item">
      <div class="feature-icon-wrap">🎬</div>
      <div class="feature-text"><strong>Catalogue VOD</strong><span>Dernières sorties ciné & séries à la demande</span></div>
    </div>
    <div class="feature-item">
      <div class="feature-icon-wrap">📅</div>
      <div class="feature-text"><strong>Catch-Up TV</strong><span>Replay jusqu'à 7 jours en arrière</span></div>
    </div>
    <div class="feature-item">
      <div class="feature-icon-wrap">🌍</div>
      <div class="feature-text"><strong>Chaînes Mondiales</strong><span>France, Maroc, Arabie, USA, UK et bien plus</span></div>
    </div>
  </div>
</div>

<!-- MOVIES & SERIES -->
<section id="movies">
  <div class="section-header fade-up">
    <p class="section-label">Catalogue VOD</p>
    <h2 class="section-title">Films & Séries en <em style="font-style:normal;color:var(--accent)">4K</em></h2>
    <p class="section-sub">Des milliers de titres disponibles immédiatement. Nouvelles sorties chaque semaine.</p>
  </div>

  <!-- Row 1: Films -->
  <p style="color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;font-weight:600;">🎬 Films Populaires</p>
  <div class="scroll-row-wrap">
    <div class="scroll-row" id="movies-row">
      <!-- Cards generated by JS -->
    </div>
  </div>

  <!-- Row 2: Series -->
  <p style="color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;font-weight:600;margin-top:40px;">📺 Séries Tendance</p>
  <div class="scroll-row-wrap">
    <div class="scroll-row reverse" id="series-row"></div>
  </div>
</section>

<!-- CHANNELS -->
<section id="channels">
  <div class="section-header fade-up">
    <p class="section-label">Chaînes Live</p>
    <h2 class="section-title">+20 000 chaînes <em style="font-style:normal;color:var(--accent)">du monde entier</em></h2>
    <p class="section-sub">Sport, info, divertissement, documentaires, jeunesse… Tout est là, en direct.</p>
  </div>

  <div class="channels-grid fade-up" id="channels-grid"></div>

  <div style="text-align:center;margin-top:48px;">
    <a href="#pricing" class="btn-primary">Voir toutes les chaînes →</a>
  </div>
</section>

<!-- PRICING -->
<section id="pricing">
  <div class="section-header fade-up" style="text-align:center;">
    <p class="section-label">Abonnements</p>
    <h2 class="section-title">Des tarifs <em style="font-style:normal;color:var(--accent)">transparents</em></h2>
    <p class="section-sub" style="margin:0 auto;">Sans engagement, sans surprise. Activez votre accès en moins de 2 minutes.</p>
  </div>

  <div class="pricing-grid fade-up">

    <div class="pricing-card">
      <p class="pricing-name">Starter</p>
      <div class="pricing-price">4.99<span>€</span></div>
      <p class="pricing-period">par mois</p>
      <ul class="pricing-features">
        <li>10 000+ chaînes HD</li>
        <li>VOD basique (5 000 titres)</li>
        <li>1 connexion simultanée</li>
        <li>Guide TV (EPG)</li>
        <li class="off">Qualité 4K</li>
        <li class="off">Catch-Up TV</li>
        <li class="off">Support prioritaire</li>
      </ul>
      <button class="btn-pricing outline">Démarrer →</button>
    </div>

    <div class="pricing-card featured">
      <p class="pricing-name">Premium</p>
      <div class="pricing-price" style="background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;">12.99<span style="-webkit-text-fill-color:var(--muted);">€</span></div>
      <p class="pricing-period">par mois</p>
      <ul class="pricing-features">
        <li>20 000+ chaînes HD & 4K</li>
        <li>VOD complet (50 000 titres)</li>
        <li>2 connexions simultanées</li>
        <li>Guide TV (EPG) avancé</li>
        <li>Qualité 4K Ultra HD</li>
        <li>Catch-Up TV 7 jours</li>
        <li class="off">Support prioritaire</li>
      </ul>
      <button class="btn-pricing solid">Commencer maintenant →</button>
    </div>

    <div class="pricing-card">
      <p class="pricing-name">Family</p>
      <div class="pricing-price">19.99<span>€</span></div>
      <p class="pricing-period">par mois</p>
      <ul class="pricing-features">
        <li>20 000+ chaînes HD & 4K</li>
        <li>VOD complet (50 000 titres)</li>
        <li>4 connexions simultanées</li>
        <li>Guide TV (EPG) avancé</li>
        <li>Qualité 4K Ultra HD</li>
        <li>Catch-Up TV 7 jours</li>
        <li>Support prioritaire 24/7</li>
      </ul>
      <button class="btn-pricing outline">Démarrer →</button>
    </div>

    <div class="pricing-card">
      <p class="pricing-name">Annuel</p>
      <div class="pricing-price">79.99<span>€</span></div>
      <p class="pricing-period">par an <span style="color:var(--accent3);font-size:.75rem;font-weight:700;">— Économisez 40%</span></p>
      <ul class="pricing-features">
        <li>Tout du plan Family</li>
        <li>5 connexions simultanées</li>
        <li>MAJ catalogue automatiques</li>
        <li>Accès bêta nouvelles fonctions</li>
        <li>Qualité 4K Ultra HD</li>
        <li>Catch-Up TV 14 jours</li>
        <li>Support VIP dédié</li>
      </ul>
      <button class="btn-pricing outline">Meilleure offre →</button>
    </div>

  </div>
  <p style="text-align:center;color:var(--muted);font-size:.85rem;margin-top:32px;">✅ Essai gratuit 24h · Pas de CB requise · Activation instantanée</p>
</section>

<!-- TESTIMONIALS -->
<section id="testimonials">
  <div class="section-header fade-up">
    <p class="section-label">Avis clients</p>
    <h2 class="section-title">Ils nous font <em style="font-style:normal;color:var(--accent)">confiance</em></h2>
  </div>
  <div class="testimonials-grid fade-up">
    <div class="testimonial-card">
      <div class="stars">★★★★★</div>
      <p class="testimonial-text">Meilleur IPTV que j'ai essayé. Zéro coupure sur les matchs de foot, image 4K magnifique. J'ai pris l'abonnement annuel direct.</p>
      <div class="testimonial-author"><div class="testimonial-avatar">🇫🇷</div><div><div class="testimonial-name">Karim B.</div><div class="testimonial-country">France — Abonné Premium</div></div></div>
    </div>
    <div class="testimonial-card">
      <div class="stars">★★★★★</div>
      <p class="testimonial-text">Le catalogue de films est impressionnant. Toutes les dernières sorties sont là en quelques jours. Le support répond super vite aussi.</p>
      <div class="testimonial-author"><div class="testimonial-avatar">🇲🇦</div><div><div class="testimonial-name">Yasmine R.</div><div class="testimonial-country">Maroc — Abonnée Family</div></div></div>
    </div>
    <div class="testimonial-card">
      <div class="stars">★★★★☆</div>
      <p class="testimonial-text">J'utilisais un autre service avant, NeoStreamix c'est vraiment une autre dimension. Les chaînes arabes et françaises fonctionnent parfaitement.</p>
      <div class="testimonial-author"><div class="testimonial-avatar">🇧🇪</div><div><div class="testimonial-name">Sofiane T.</div><div class="testimonial-country">Belgique — Abonné Annuel</div></div></div>
    </div>
    <div class="testimonial-card">
      <div class="stars">★★★★★</div>
      <p class="testimonial-text">Installé en 5 minutes sur mon Smart TV. Le guide des programmes est très pratique. Ma famille est conquise, on regardait la TV ensemble comme avant!</p>
      <div class="testimonial-author"><div class="testimonial-avatar">🇨🇦</div><div><div class="testimonial-name">Linda M.</div><div class="testimonial-country">Canada — Abonnée Premium</div></div></div>
    </div>
    <div class="testimonial-card">
      <div class="stars">★★★★★</div>
      <p class="testimonial-text">Le rapport qualité-prix est imbattable. 20 000 chaînes pour moins de 13€/mois, c'est dingue. Aucun freeze sur ma fibre.</p>
      <div class="testimonial-author"><div class="testimonial-avatar">🇩🇪</div><div><div class="testimonial-name">Amine K.</div><div class="testimonial-country">Allemagne — Abonné Premium</div></div></div>
    </div>
    <div class="testimonial-card">
      <div class="stars">★★★★★</div>
      <p class="testimonial-text">La fonction Catch-Up TV est une révolution. J'ai raté un match de rugby et j'ai pu le revoir le lendemain. Absolument parfait.</p>
      <div class="testimonial-author"><div class="testimonial-avatar">🇬🇧</div><div><div class="testimonial-name">Omar S.</div><div class="testimonial-country">Royaume-Uni — Abonné Annuel</div></div></div>
    </div>
  </div>
</section>

<!-- FAQ -->
<section id="faq">
  <div class="section-header fade-up" style="text-align:center;">
    <p class="section-label">Questions fréquentes</p>
    <h2 class="section-title">Toutes vos <em style="font-style:normal;color:var(--accent)">réponses</em> ici</h2>
  </div>
  <div class="faq-grid fade-up" id="faq-list"></div>
</section>

<!-- BLOG -->
<section id="blog">
  <div class="section-header fade-up">
    <p class="section-label">Blog & Actualités</p>
    <h2 class="section-title">Nos derniers <em style="font-style:normal;color:var(--accent)">articles</em></h2>
    <p class="section-sub">Guides, conseils et actualités du streaming.</p>
  </div>
  <div class="blog-grid fade-up">
    <div class="blog-card">
      <div class="blog-img c1">🎬</div>
      <div class="blog-body">
        <p class="blog-cat">Guide</p>
        <h3 class="blog-title">Comment installer NeoStreamix sur votre Smart TV en 5 minutes</h3>
        <p class="blog-excerpt">Tutoriel pas à pas pour Samsung, LG, Android TV et plus encore.</p>
        <div class="blog-meta"><span>📅</span> 8 mars 2025 · 5 min de lecture</div>
      </div>
    </div>
    <div class="blog-card">
      <div class="blog-img c2">📡</div>
      <div class="blog-body">
        <p class="blog-cat">Astuce</p>
        <h3 class="blog-title">5 conseils pour optimiser la qualité de votre stream IPTV</h3>
        <p class="blog-excerpt">Paramètres réseau, choix du décodeur, DNS… tout pour un streaming parfait.</p>
        <div class="blog-meta"><span>📅</span> 1 mars 2025 · 7 min de lecture</div>
      </div>
    </div>
    <div class="blog-card">
      <div class="blog-img c3">🏆</div>
      <div class="blog-body">
        <p class="blog-cat">Sport</p>
        <h3 class="blog-title">Tous les grands événements sportifs 2025 en direct sur NeoStreamix</h3>
        <p class="blog-excerpt">Champions League, Roland Garros, F1, NFL… Ne ratez plus rien.</p>
        <div class="blog-meta"><span>📅</span> 20 fév. 2025 · 4 min de lecture</div>
      </div>
    </div>
  </div>
</section>

<!-- CONTACT -->
<section id="contact">
  <div class="section-header fade-up">
    <p class="section-label">Support & Contact</p>
    <h2 class="section-title">On est là <em style="font-style:normal;color:var(--accent)">pour vous</em></h2>
  </div>
  <div class="contact-wrapper fade-up">
    <div class="contact-info">
      <h3>Une question ? Un problème ?<br/>Contactez notre équipe.</h3>
      <p>Notre support est disponible 24h/24, 7j/7. Réponse garantie sous 2 heures pour les abonnés Premium et Annuel.</p>
      <div class="contact-detail"><div class="contact-icon">💬</div><div class="contact-detail-text"><strong>Chat en direct</strong><span>Disponible maintenant · Réponse < 5 min</span></div></div>
      <div class="contact-detail"><div class="contact-icon">📧</div><div class="contact-detail-text"><strong>support@neostreamix.com</strong><span>Réponse sous 2h pour abonnés</span></div></div>
      <div class="contact-detail"><div class="contact-icon">📱</div><div class="contact-detail-text"><strong><a href="https://wa.me/212676718744" target="_blank" style="color:var(--accent);text-decoration:none;">WhatsApp : +212 676 718 744</a></strong><span>Cliquez pour démarrer une conversation</span></div></div>
    </div>
    <form class="contact-form" onsubmit="submitForm(event)">
      <div class="form-row">
        <div class="form-group"><label>Prénom</label><input type="text" placeholder="Votre prénom" /></div>
        <div class="form-group"><label>Nom</label><input type="text" placeholder="Votre nom" /></div>
      </div>
      <div class="form-group"><label>Email</label><input type="email" placeholder="vous@exemple.com" /></div>
      <div class="form-group">
        <label>Sujet</label>
        <select>
          <option>Problème technique</option>
          <option>Information abonnement</option>
          <option>Demande d'essai</option>
          <option>Facturation</option>
          <option>Autre</option>
        </select>
      </div>
      <div class="form-group"><label>Message</label><textarea placeholder="Décrivez votre question…"></textarea></div>
      <button type="submit" class="btn-primary" style="border:none;font-family:'Syne',sans-serif;font-size:1rem;font-weight:700;cursor:pointer;">Envoyer le message →</button>
    </form>
  </div>
</section>

<!-- FOOTER -->
<footer>
  <div class="footer-grid">
    <div class="footer-brand">
      <span class="logo">NeoStreamix</span>
      <p>La plateforme IPTV premium pour tout votre univers de divertissement. 20 000+ chaînes, films et séries en 4K.</p>
      <div class="footer-socials">
        <div class="social-icon">📘</div>
        <div class="social-icon">🐦</div>
        <div class="social-icon">📸</div>
        <div class="social-icon">💬</div>
      </div>
    </div>
    <div class="footer-col">
      <h4>Navigation</h4>
      <ul>
        <li><a href="#home">Accueil</a></li>
        <li><a href="#movies">Films & Séries</a></li>
        <li><a href="#channels">Chaînes Live</a></li>
        <li><a href="#pricing">Tarifs</a></li>
        <li><a href="#blog">Blog</a></li>
      </ul>
    </div>
    <div class="footer-col">
      <h4>Support</h4>
      <ul>
        <li><a href="#faq">FAQ</a></li>
        <li><a href="#contact">Contact</a></li>
        <li><a href="#">Tutoriels</a></li>
        <li><a href="#">Statut serveurs</a></li>
      </ul>
    </div>
    <div class="footer-col">
      <h4>Légal</h4>
      <ul>
        <li><a href="#">Conditions d'utilisation</a></li>
        <li><a href="#">Politique de confidentialité</a></li>
        <li><a href="#">Remboursements</a></li>
        <li><a href="#">Mentions légales</a></li>
      </ul>
    </div>
  </div>
  <div class="footer-bottom">
    <p>© 2025 NeoStreamix. Tous droits réservés.</p>
    <p style="color:var(--muted);font-size:.75rem;">Conçu avec ❤️ pour les passionnés de streaming</p>
  </div>
</footer>

<!-- FLOATING CTA -->
<button class="floating-cta" onclick="document.getElementById('pricing').scrollIntoView({behavior:'smooth'})">
  🚀 Essai gratuit 24h
</button>

<!-- WHATSAPP BUTTON -->
<a href="https://wa.me/212676718744" target="_blank" rel="noopener noreferrer" class="whatsapp-btn" title="Contactez-nous sur WhatsApp">
  <svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" fill="white" width="28" height="28">
    <path d="M16 2C8.28 2 2 8.28 2 16c0 2.44.65 4.73 1.78 6.72L2 30l7.45-1.75A13.94 13.94 0 0 0 16 30c7.72 0 14-6.28 14-14S23.72 2 16 2zm0 25.5a11.44 11.44 0 0 1-5.83-1.6l-.42-.25-4.42 1.04 1.06-4.3-.28-.44A11.47 11.47 0 0 1 4.5 16C4.5 9.6 9.6 4.5 16 4.5S27.5 9.6 27.5 16 22.4 27.5 16 27.5zm6.3-8.6c-.34-.17-2.02-.99-2.33-1.1-.31-.12-.54-.17-.77.17-.23.34-.88 1.1-1.08 1.33-.2.23-.4.26-.74.09-.34-.17-1.44-.53-2.74-1.69-1.01-.9-1.7-2.02-1.9-2.36-.2-.34-.02-.52.15-.69.15-.15.34-.4.51-.6.17-.2.23-.34.34-.57.12-.23.06-.43-.03-.6-.09-.17-.77-1.86-1.06-2.55-.28-.67-.56-.58-.77-.59l-.65-.01c-.23 0-.6.09-.91.43-.31.34-1.2 1.17-1.2 2.86 0 1.68 1.23 3.31 1.4 3.54.17.23 2.42 3.7 5.86 5.19.82.35 1.46.56 1.96.72.82.26 1.57.22 2.16.13.66-.1 2.02-.83 2.31-1.62.28-.8.28-1.48.2-1.62-.09-.14-.31-.23-.65-.4z"/>
  </svg>
  <span class="whatsapp-tooltip">Chattez sur WhatsApp</span>
</a>

<script>
  // MOVIES DATA
  const movies = [
    {title:"Dune 2",badge:"4K",emoji:"🏜️"},{title:"Oppenheimer",badge:"HD",emoji:"💥"},
    {title:"Spider-Man",badge:"4K",emoji:"🕷️"},{title:"Fast & Furious",badge:"HD",emoji:"🏎️"},
    {title:"The Batman",badge:"4K",emoji:"🦇"},{title:"Avatar 3",badge:"new",emoji:"🌊"},
    {title:"Mission Impossible",badge:"HD",emoji:"🎯"},{title:"John Wick 4",badge:"4K",emoji:"🔫"},
    {title:"Wonka",badge:"new",emoji:"🍫"},{title:"Aquaman 2",badge:"4K",emoji:"🌊"},
    {title:"Deadpool 3",badge:"new",emoji:"⚔️"},{title:"Gladiator 2",badge:"HD",emoji:"🛡️"},
  ];
  const series = [
    {title:"House of Dragon",badge:"4K",emoji:"🐉"},{title:"The Last of Us",badge:"HD",emoji:"🧟"},
    {title:"Stranger Things",badge:"4K",emoji:"👾"},{title:"The Bear",badge:"new",emoji:"🐻"},
    {title:"Succession",badge:"HD",emoji:"💼"},{title:"Yellowstone",badge:"4K",emoji:"🏔️"},
    {title:"The Crown",badge:"HD",emoji:"👑"},{title:"Fallout",badge:"new",emoji:"☢️"},
    {title:"Silo",badge:"4K",emoji:"🏗️"},{title:"Shogun",badge:"new",emoji:"⚔️"},
    {title:"Euphoria",badge:"HD",emoji:"✨"},{title:"Peaky Blinders",badge:"4K",emoji:"🎩"},
  ];

  function createCard(item) {
    const badgeClass = item.badge === '4K' ? 'hd' : item.badge === 'new' ? 'new' : '';
    return `<div class="card-media">
      <div class="card-media-placeholder">
        <div class="icon">${item.emoji}</div>
        <div class="title">${item.title}</div>
      </div>
      <span class="card-media-badge ${badgeClass}">${item.badge}</span>
      <div class="card-overlay"><div class="card-overlay-title">${item.title}</div></div>
    </div>`;
  }

  const mr = document.getElementById('movies-row');
  const sr = document.getElementById('series-row');
  const allMovies = [...movies,...movies];
  const allSeries = [...series,...series];
  mr.innerHTML = allMovies.map(createCard).join('');
  sr.innerHTML = allSeries.map(createCard).join('');

  // CHANNELS
  const channels = [
    {icon:"🇫🇷",name:"TF1",cat:"France"},{icon:"🎬",name:"Canal+",cat:"Cinéma"},
    {icon:"⚽",name:"beIN Sports",cat:"Sport"},{icon:"📰",name:"BFM TV",cat:"Info"},
    {icon:"🇲🇦",name:"2M Maroc",cat:"Maroc"},{icon:"🌍",name:"Al Jazeera",cat:"Arabic"},
    {icon:"🎭",name:"Arte",cat:"Culture"},{icon:"🏎️",name:"Eurosport",cat:"Sport"},
    {icon:"👶",name:"Gulli",cat:"Jeunesse"},{icon:"🎸",name:"MTV",cat:"Musique"},
    {icon:"📡",name:"BBC World",cat:"UK"},{icon:"🌐",name:"CNN Int.",cat:"Monde"},
    {icon:"🎪",name:"Disney+",cat:"Divertissement"},{icon:"🏈",name:"ESPN",cat:"Sport US"},
    {icon:"🔬",name:"Discovery",cat:"Doc"},{icon:"🌿",name:"National Geo",cat:"Nature"},
    {icon:"🎵",name:"NRJ Hits",cat:"Musique"},{icon:"🇩🇿",name:"Algérie 3",cat:"Algérie"},
    {icon:"👗",name:"Fashion TV",cat:"Mode"},{icon:"🎮",name:"GameOne",cat:"Gaming"},
  ];
  document.getElementById('channels-grid').innerHTML = channels.map(c => `
    <div class="channel-card">
      <div class="channel-icon">${c.icon}</div>
      <div class="channel-name">${c.name}</div>
      <div class="channel-category">${c.cat}</div>
    </div>`).join('');

  // FAQ
  const faqs = [
    {q:"Comment fonctionne l'essai gratuit 24h ?",a:"Inscrivez-vous, recevez vos identifiants par email en moins de 5 minutes. Aucune carte bancaire requise. Accès complet pendant 24h."},
    {q:"Sur quels appareils puis-je regarder ?",a:"Smart TV (Samsung, LG, Sony), Android/iOS, ordinateur (Windows/Mac), MAG, Formuler, Firestick, et tout appareil supportant IPTV."},
    {q:"Combien de connexions simultanées sont incluses ?",a:"1 pour Starter, 2 pour Premium, 4 pour Family, et 5 pour l'abonnement Annuel."},
    {q:"Comment activer mon abonnement ?",a:"Après le paiement, vous recevez vos accès (M3U ou Xtream Codes) par email immédiatement. L'installation prend moins de 2 minutes."},
    {q:"Y a-t-il des coupures ou du buffering ?",a:"Nos serveurs CDN assurent 99,9% de disponibilité. Pour éviter tout buffering, une connexion internet de 25 Mbps est recommandée pour la 4K."},
    {q:"Puis-je regarder en dehors de mon pays ?",a:"Oui, NeoStreamix fonctionne partout dans le monde sans restriction géographique."},
    {q:"Comment contacter le support en cas de problème ?",a:"Support disponible 24h/24 via Telegram, WhatsApp, et email. Les abonnés Premium et Annuel bénéficient d'une réponse prioritaire sous 2h."},
    {q:"Proposez-vous des remboursements ?",a:"Oui, nous offrons une garantie satisfait ou remboursé sous 48h si le service ne correspond pas à vos attentes."},
  ];
  document.getElementById('faq-list').innerHTML = faqs.map((f,i) => `
    <div class="faq-item" onclick="toggleFaq(this)">
      <div class="faq-question">${f.q}<span class="arrow">+</span></div>
      <div class="faq-answer">${f.a}</div>
    </div>`).join('');

  function toggleFaq(el) {
    document.querySelectorAll('.faq-item.open').forEach(e => { if(e!==el) e.classList.remove('open'); });
    el.classList.toggle('open');
  }

  // Form
  function submitForm(e) {
    e.preventDefault();
    const btn = e.target.querySelector('button');
    btn.textContent = '✅ Message envoyé !';
    btn.style.background = '#00b07a';
    setTimeout(() => { btn.textContent = 'Envoyer le message →'; btn.style.background = ''; }, 3000);
  }

  // Hamburger
  function toggleMenu() {
    const links = document.querySelector('.nav-links');
    links.style.display = links.style.display === 'flex' ? 'none' : 'flex';
    links.style.flexDirection = 'column';
    links.style.position = 'absolute';
    links.style.top = '70px';
    links.style.left = '0'; links.style.right = '0';
    links.style.background = 'var(--surface)';
    links.style.padding = '24px';
    links.style.borderBottom = '1px solid var(--border)';
  }

  // Intersection Observer for fade-up
  const observer = new IntersectionObserver((entries) => {
    entries.forEach(e => { if(e.isIntersecting) { e.target.classList.add('visible'); observer.unobserve(e.target); }});
  }, {threshold: 0.1});
  document.querySelectorAll('.fade-up').forEach(el => observer.observe(el));

  // Navbar scroll effect
  window.addEventListener('scroll', () => {
    document.getElementById('navbar').style.background =
      window.scrollY > 50 ? 'rgba(7,8,15,0.97)' : 'rgba(7,8,15,0.85)';
  });
</script>
</body>
</html>