Files
saborflow/playlists/index.html
2026-05-04 11:55:20 +07:00

661 lines
32 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Playlists — Sabor Flow Da Nang</title>
<meta name="description"
content="Curated Spotify and YouTube Music playlists for Bachata, Salsa, Kizomba and Zouk. Practice, social dance, or just enjoy.">
<link rel="icon" type="image/jpeg" href="../assets/logo.jpg">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link
href="https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..60,700;12..60,800&family=Caveat+Brush&family=JetBrains+Mono:wght@400;500&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap"
rel="stylesheet">
<link rel="stylesheet" href="../css/style.css?v=254e174d">
<link rel="stylesheet" href="../css/fireflies.css">
<link rel="canonical" href="https://saborflow.ai1.ovh/playlists/">
<meta property="og:type" content="website">
<meta property="og:site_name" content="Sabor Flow Da Nang">
<meta property="og:title" content="Playlists — Sabor Flow Da Nang">
<meta property="og:description" content="Curated Spotify and YouTube Music playlists for Bachata, Salsa, Kizomba and Zouk. Practice, social dance, or just enjoy.">
<meta property="og:url" content="https://saborflow.ai1.ovh/playlists/">
<meta property="og:image" content="https://saborflow.ai1.ovh/assets/logo.jpg">
<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"Sabor Flow Da Nang","url":"https://saborflow.ai1.ovh","logo":"https://saborflow.ai1.ovh/assets/logo.jpg","sameAs":["https://www.instagram.com/saborflowdanang/","https://www.facebook.com/groups/sbkdanang"]}</script>
</head>
<body>
<div class="sfB-bg" aria-hidden="true">
<span></span><span></span><span></span><span></span><span></span>
<div class="sfB-palms">
<img class="sfB-palm corner-tl" src="../assets/palm-fronds-left.png" alt="Decorative palm frond"
style="--sway:10deg;animation-duration:8s;animation-delay:0s">
<img class="sfB-palm corner-tr" src="../assets/palm-fronds-right.png" alt="Decorative palm frond"
style="--sway:12deg;animation-duration:9s;animation-delay:-2s">
<img class="sfB-palm corner-bl" src="../assets/palm-fronds-left.png" alt="Decorative palm frond"
style="--sway:11deg;animation-duration:10s;animation-delay:-4s;--flip:scaleY(-1)">
<img class="sfB-palm corner-br" src="../assets/palm-fronds-right.png" alt="Decorative palm frond"
style="--sway:9deg;animation-duration:11s;animation-delay:-1.5s;--flip:scaleY(-1)">
<img class="sfB-palm corner-ml" src="../assets/palm-fronds-left.png" alt="Decorative palm frond"
style="--sway:13deg;animation-duration:9.5s;animation-delay:-3s">
<img class="sfB-palm corner-mr" src="../assets/palm-fronds-right.png" alt="Decorative palm frond"
style="--sway:10deg;animation-duration:11.5s;animation-delay:-1s">
</div>
</div>
<nav class="sfB-mobile-nav" id="sfB-mobile-nav">
<button class="mnav-close" id="sfB-mobile-nav-close"></button>
<a href="/">Home</a>
<a href="/schedule">Schedule</a>
<a href="/connect">Connect</a>
<a href="/studios">Studios</a>
<a href="/classes">Classes</a>
<a href="/festivals">Festivals</a>
<a href="/playlists" class="active">Playlists</a>
</nav>
<header class="sfB-topbar">
<a href="/" class="logo">
<div class="mark"><img src="../assets/logo.jpg" alt="Sabor Flow Da Nang"></div>
<div class="name">Sabor Flow<span class="city">Da Nang</span></div>
</a>
<nav class="sfB-nav">
<a href="/">Home</a>
<a href="/schedule">Schedule</a>
<a href="/connect">Connect</a>
<a href="/studios">Studios</a>
<a href="/classes">Classes</a>
<a href="/festivals">Festivals</a>
<a href="/playlists" class="active">Playlists</a>
</nav>
<div class="topbar-right">
<a href="https://www.instagram.com/saborflowdanang/" target="_blank" rel="noopener" class="sfB-ig">
<svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"
stroke-linecap="round" stroke-linejoin="round">
<rect x="2" y="2" width="20" height="20" rx="5" ry="5" />
<path d="M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z" />
<line x1="17.5" y1="6.5" x2="17.51" y2="6.5" />
</svg>
@saborflowdanang
</a>
<button class="sfB-hamburger" id="sfB-hamburger" aria-label="Open menu">
<span></span><span></span><span></span>
</button>
</div>
</header>
<main class="sfB-page">
<div class="sfB-page-head">
<h1>Dance <em>Playlists</em></h1>
<div class="info">
Curated playlists for every mood and level — practice at home, warm up before a social, or just enjoy the music.
Available on <b>Spotify</b> and <b>YouTube Music</b>.
</div>
</div>
<!-- BACHATA -->
<section class="sfB-pl-section">
<div class="sfB-pl-section-head">
<h2 class="sfB-pl-title">Bachata</h2>
</div>
<div class="sfB-pl-platform-group">
<div class="sfB-pl-grid5">
<!-- Spotify -->
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Bachata Lovers</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>3h 22min</span><span>60 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Romantic</span>
<span class="sfB-pl-tag">Popular</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Modern</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/37i9dQZF1DX7MTlMMRl0MD" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="1">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Bachata Classics</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>6h 55min</span><span>100 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Classics</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Most Popular</span>
<span class="sfB-pl-tag">Intermediate</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/37i9dQZF1DX65py6HnnlE1" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="0">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Bachata Mix</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>3h 10min</span><span>50 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Varied</span>
<span class="sfB-pl-tag">Popular</span>
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Social</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/37i9dQZF1EIcxvNLzr8YIy" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="2">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">The Sound of Bachata Dominicana</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>14h 36min</span><span>221 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Dominican</span>
<span class="sfB-pl-tag">Traditional</span>
<span class="sfB-pl-tag">Intermediate</span>
<span class="sfB-pl-tag">Authentic</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/6ZOErPbFr6wWQ687g0TQGB" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="11">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Top Hits Bachata 2026</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>5h 53min</span><span>104 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Modern</span>
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Fast</span>
<span class="sfB-pl-tag">New Releases</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/3LlsDvsZrhFoFjCED6YHqJ" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="13">Songs</button>
</div>
</div>
<!-- YouTube Music -->
<div class="sfB-pl-card ytmusic">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/youtubemusic.png" alt="YouTube Music"></div>
<span class="sfB-pl-name">Mix bachata Romeo Santos, Aventura, Prince Royce</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>2h 54min</span><span>42 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Most Popular</span>
<span class="sfB-pl-tag">Singalong</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Mainstream</span>
</div>
<div class="sfB-pl-actions">
<a href="https://music.youtube.com/playlist?list=PL1pEq9XJAIquSaz-Y_Vky-BsQIWRmHEqQ" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-yt-index="1">Songs</button>
</div>
</div>
<div class="sfB-pl-card ytmusic">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/youtubemusic.png" alt="YouTube Music"></div>
<span class="sfB-pl-name">BACHATA 2025 · 2026 🌍</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>17h 15min</span><span>281 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Modern</span>
<span class="sfB-pl-tag">New Releases</span>
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Popular</span>
</div>
<div class="sfB-pl-actions">
<a href="https://music.youtube.com/playlist?list=PLSmJ3-FUDAdYcdd1dWck9OYltTx5IqEJg" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-yt-index="0">Songs</button>
</div>
</div>
<div class="sfB-pl-card ytmusic">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/youtubemusic.png" alt="YouTube Music"></div>
<span class="sfB-pl-name">bachata dominicana</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>1h 41min</span><span>26 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Dominican</span>
<span class="sfB-pl-tag">Authentic</span>
<span class="sfB-pl-tag">Traditional</span>
<span class="sfB-pl-tag">Danceable</span>
</div>
<div class="sfB-pl-actions">
<a href="https://music.youtube.com/playlist?list=PLPb4IcL2X0GlbYGmoAM0K-Gn3qj577fk8" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-yt-index="5">Songs</button>
</div>
</div>
</div>
</div>
</section>
<!-- SALSA -->
<section class="sfB-pl-section">
<div class="sfB-pl-section-head">
<h2 class="sfB-pl-title">Salsa</h2>
</div>
<div class="sfB-pl-platform-group">
<div class="sfB-pl-grid5">
<!-- Spotify -->
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Salsa Mix</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>4h</span><span>50 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Popular</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Varied</span>
<span class="sfB-pl-tag">Party</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/37i9dQZF1EQlZ5S0kXf8kf" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="6">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Salsa Top 50</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>2h 39min</span><span>40 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Most Popular</span>
<span class="sfB-pl-tag">Modern</span>
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Current</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/3UfntaJRD0JsFgZKK1lpzG" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="10">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Salsa Top 100</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>13h 48min</span><span>212 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Essentials</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Classics</span>
<span class="sfB-pl-tag">Reference</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/04Yx3q5s7MLF2yXKDulyVS" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="9">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Puerto Rican Salsa Top 100</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>13h 24min</span><span>198 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Puerto Rican</span>
<span class="sfB-pl-tag">Classics</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Collector's</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/4P81PgkKWOIKsSBL358koq" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="8">Songs</button>
</div>
</div>
<!-- YouTube Music -->
<div class="sfB-pl-card ytmusic">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/youtubemusic.png" alt="YouTube Music"></div>
<span class="sfB-pl-name">Salsa Cubana Para Bailar</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>1h 29min</span><span>20 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Cuban</span>
<span class="sfB-pl-tag">Danceable</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Intermediate</span>
</div>
<div class="sfB-pl-actions">
<a href="https://music.youtube.com/playlist?list=PLgO3YxRWGM_oMz-QRaXJrJxaHa1bAgPbo" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-yt-index="2">Songs</button>
</div>
</div>
<div class="sfB-pl-card ytmusic">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/youtubemusic.png" alt="YouTube Music"></div>
<span class="sfB-pl-name">Salsa On2 Social Dancing</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>24h 6min</span><span>457 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">On2</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Intermediate</span>
<span class="sfB-pl-tag">Dancers</span>
</div>
<div class="sfB-pl-actions">
<a href="https://music.youtube.com/playlist?list=PLBnkKhSWQL-ezbIu-tqib-i4WzLFumapu" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-yt-index="4">Songs</button>
</div>
</div>
<div class="sfB-pl-card ytmusic">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/youtubemusic.png" alt="YouTube Music"></div>
<span class="sfB-pl-name">Salsa Music Miami Beach</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>46 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Tropical</span>
<span class="sfB-pl-tag">Varied</span>
<span class="sfB-pl-tag">Atmosphere</span>
</div>
<div class="sfB-pl-actions">
<a href="https://music.youtube.com/playlist?list=PL4-E0r_Z8JUvu786sHBIrxgCsEhxQJS6J" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-yt-index="3">Songs</button>
</div>
</div>
</div>
</div>
</section>
<!-- KIZOMBA -->
<section class="sfB-pl-section">
<div class="sfB-pl-section-head">
<h2 class="sfB-pl-title">Kizomba</h2>
</div>
<div class="sfB-pl-platform-group">
<div class="sfB-pl-grid5">
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Kizomba Top Hits</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>5h 23min</span><span>104 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Romantic</span>
<span class="sfB-pl-tag">Popular</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Smooth</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/0Pk8kSKJ5vO5yIA36kzGMu" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="3">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">New Kizomba 2024</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>12h 24min</span><span>211 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Modern</span>
<span class="sfB-pl-tag">New Releases</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Party</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/2OGQUlFwbnC3AsEEWjMNN1" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="7">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Kizomba</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>8h 23min</span><span>156 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Clear Tempo</span>
<span class="sfB-pl-tag">Classes</span>
<span class="sfB-pl-tag">Beginner</span>
<span class="sfB-pl-tag">Practice</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/4ggFP6oGoumfOobdzvvY2V" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="4">Songs</button>
</div>
</div>
</div>
</div>
</section>
<!-- ZOUK -->
<section class="sfB-pl-section">
<div class="sfB-pl-section-head">
<h2 class="sfB-pl-title">Zouk</h2>
</div>
<div class="sfB-pl-platform-group">
<div class="sfB-pl-grid5">
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Zouk Station</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>2h 2min</span><span>40 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Popular</span>
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Kompa-Zouk</span>
<span class="sfB-pl-tag">Modern</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/37i9dQZF1DWZjVBCh3y4ph" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="15">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">The Sound of Zouk</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>24h 48min</span><span>325 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Essentials</span>
<span class="sfB-pl-tag">Discovery</span>
<span class="sfB-pl-tag">Varied</span>
<span class="sfB-pl-tag">Reference</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/7mNGeqFpLOFebS0QrGXU2N" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="12">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">Zouk</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>1h 59min</span><span>36 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Classes</span>
<span class="sfB-pl-tag">Clear Tempo</span>
<span class="sfB-pl-tag">Beginner</span>
<span class="sfB-pl-tag">Practice</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/7M7sDdZMHhpN0huB5moMjY" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="16">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">ZOUK BRAZIL 2026</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>19h</span><span>337 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Brazilian Zouk</span>
<span class="sfB-pl-tag">Social</span>
<span class="sfB-pl-tag">Modern</span>
<span class="sfB-pl-tag">Dancers</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/2V5jTlSJxy8pISP8b4k3L8" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="14">Songs</button>
</div>
</div>
<div class="sfB-pl-card spotify">
<div class="sfB-pl-header">
<div class="sfB-pl-logo"><img src="../assets/spotify.png" alt="Spotify"></div>
<span class="sfB-pl-name">The Best of Kompa Zouk 2025 BY OSOCITY</span>
</div>
<div class="sfB-pl-spacer"></div>
<div class="sfB-pl-meta"><span>4h 50min</span><span>85 songs</span></div>
<div class="sfB-pl-tags">
<span class="sfB-pl-tag">Kompa-Zouk</span>
<span class="sfB-pl-tag">Party</span>
<span class="sfB-pl-tag">Popular</span>
<span class="sfB-pl-tag">Atmosphere</span>
</div>
<div class="sfB-pl-actions">
<a href="https://open.spotify.com/playlist/6bPKhzRuXrc4yePSBCcals" target="_blank" rel="noopener" class="sfB-pl-btn play">▶ Play</a>
<button class="sfB-pl-btn songs" data-pl-index="5">Songs</button>
</div>
</div>
</div>
</div>
</section>
<div class="sfB-suggest">
<p>Got a playlist we should add? Share it with us!</p>
<a href="/connect" class="sfB-btn ghost">Contact Us</a>
</div>
</main>
<footer class="sfB-foot">
<div><strong>Sabor Flow</strong> Da Nang &mdash; Latin dance community &copy; <span id="footer-year">2025</span></div>
<nav class="foot-links">
<a href="/">Home</a>
<a href="/schedule">Schedule</a>
<a href="/connect">Connect</a>
<a href="/studios">Studios</a>
<a href="/classes">Classes</a>
<a href="/festivals">Festivals</a>
<a href="/playlists">Playlists</a>
</nav>
<div class="foot-social">
<a href="https://www.instagram.com/saborflowdanang/" target="_blank" rel="noopener">Instagram</a>
</div>
</footer>
<!-- SONGS MODAL -->
<div id="sfB-songs-modal" class="sfB-modal" style="display:none" aria-hidden="true" role="dialog" aria-modal="true">
<div class="sfB-modal-overlay"></div>
<div class="sfB-modal-box">
<div class="sfB-modal-head">
<div class="sfB-modal-title-wrap">
<img src="" alt="Decorative palm frond" class="sfB-modal-logo" id="sfB-modal-logo">
<h3 id="sfB-modal-title"></h3>
</div>
<button class="sfB-modal-close" id="sfB-modal-close" aria-label="Close"></button>
</div>
<div class="sfB-modal-body" id="sfB-modal-body"></div>
</div>
</div>
<script src="../js/main.js?v=254e174d"></script>
<script src="../js/playlists-data.js"></script>
<script src="../js/playlists-data-yt.js"></script>
<script>
(function () {
var modal = document.getElementById('sfB-songs-modal');
var modalTitle = document.getElementById('sfB-modal-title');
var modalBody = document.getElementById('sfB-modal-body');
var modalLogo = document.getElementById('sfB-modal-logo');
var modalClose = document.getElementById('sfB-modal-close');
var modalOverlay = modal.querySelector('.sfB-modal-overlay');
function openModal(data, idx, platform) {
var pl = data[idx];
if (!pl) return;
modalTitle.textContent = pl.name;
modalLogo.src = platform === 'ytmusic' ? '../assets/youtubemusic.png' : '../assets/spotify.png';
modalLogo.alt = platform === 'ytmusic' ? 'YouTube Music' : 'Spotify';
modalBody.innerHTML = pl.songs.map(function (s, i) {
return '<div class="sfB-song-row">' +
'<span class="sfB-song-num">' + (i + 1) + '</span>' +
'<div class="sfB-song-info">' +
'<div class="sfB-song-name">' + escHtml(s.n) + '</div>' +
(s.a ? '<div class="sfB-song-artist">' + escHtml(s.a) + '</div>' : '') +
'</div>' +
'<span class="sfB-song-dur">' + escHtml(s.d) + '</span>' +
'</div>';
}).join('');
modal.style.cssText = 'display:flex;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9000;align-items:center;justify-content:center;';
document.documentElement.style.overflowY = 'hidden';
}
function closeModal() {
modal.style.display = 'none';
document.documentElement.style.overflowY = '';
modalBody.innerHTML = '';
}
function escHtml(str) {
return str.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
}
document.querySelectorAll('.sfB-pl-btn.songs[data-pl-index]').forEach(function (btn) {
btn.addEventListener('click', function (e) {
e.stopPropagation();
openModal(PLAYLISTS_DATA, parseInt(btn.dataset.plIndex, 10), 'spotify');
});
});
document.querySelectorAll('.sfB-pl-btn.songs[data-yt-index]').forEach(function (btn) {
btn.addEventListener('click', function (e) {
e.stopPropagation();
openModal(PLAYLISTS_DATA_YT, parseInt(btn.dataset.ytIndex, 10), 'ytmusic');
});
});
modalClose.addEventListener('click', closeModal);
modalOverlay.addEventListener('click', closeModal);
document.addEventListener('keydown', function (e) { if (e.key === 'Escape') closeModal(); });
})();
</script>
</body>
</html>