/* =====================================================
   NXTLEVEL MUSIC — Core Stylesheet v1.0
   ===================================================== */

/* ── GOOGLE FONTS (loaded via functions.php) ── */

/* ── CSS VARIABLES ── */
:root {
  --nxt-cyan:     #00D4FF;
  --nxt-magenta:  #FF00AA;
  --nxt-green:    #39FF14;
  --nxt-bg:       #080810;
  --nxt-surface:  #0F0F1A;
  --nxt-surface2: #161625;
  --nxt-text:     #E8E8F0;
  --nxt-muted:    #7070A0;
  --nxt-border:   rgba(255,255,255,0.07);
  --nxt-radius:   20px;
  --nxt-font-display: 'Oxanium', sans-serif;
  --nxt-font-body:    'DM Sans', sans-serif;
}

/* ── RESET ── */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; font-size: 16px; }

body {
  background: var(--nxt-bg);
  color: var(--nxt-text);
  font-family: var(--nxt-font-body);
  overflow-x: hidden;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

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

a { color: var(--nxt-cyan); text-decoration: none; transition: color .2s; }
a:hover { color: var(--nxt-magenta); }
img { max-width: 100%; height: auto; display: block; }
ul, ol { list-style: none; }

/* ── ELEMENTOR OVERRIDES ── */
.elementor-section,
.elementor-container { width: 100% !important; max-width: 100% !important; }
.elementor-section-boxed > .elementor-container { max-width: 100% !important; }
.elementor-widget-wrap { padding: 0 !important; }
.elementor-section-wrap { padding: 0 !important; }
body.elementor-page .site-header,
body.elementor-page .site-footer { display: none; }

/* ── WORDPRESS ADMIN BAR FIX ── */
.admin-bar .nxt-navbar { top: 32px; }
@media screen and (max-width: 782px) {
  .admin-bar .nxt-navbar { top: 46px; }
}

/* ─────────────────────────────────────────
   NAVBAR
───────────────────────────────────────── */
.nxt-navbar {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  padding: 0 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
  background: rgba(8,8,16,0.9);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--nxt-border);
  transition: background .3s;
}
.nxt-navbar.scrolled { background: rgba(8,8,16,0.98); }

.nxt-nav-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex-shrink: 0;
}
.nxt-nav-logo-text {
  font-family: var(--nxt-font-display);
  font-weight: 800;
  font-size: 1.15rem;
  background: linear-gradient(90deg, var(--nxt-cyan), var(--nxt-magenta));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: 1px;
}

.nxt-nav-links {
  display: flex;
  gap: 36px;
}
.nxt-nav-links a {
  color: var(--nxt-muted);
  font-size: 0.9rem;
  font-weight: 500;
  transition: color .2s;
}
.nxt-nav-links a:hover,
.nxt-nav-links a.active { color: var(--nxt-text); }

.nxt-nav-actions {
  display: flex;
  gap: 12px;
  align-items: center;
}

/* Hamburger */
.nxt-hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  z-index: 10000;
}
.nxt-hamburger span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--nxt-text);
  border-radius: 2px;
  transition: all .3s;
}
.nxt-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nxt-hamburger.open span:nth-child(2) { opacity: 0; }
.nxt-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile menu */
.nxt-mobile-menu {
  display: none;
  position: fixed;
  top: 72px; left: 0; right: 0;
  background: rgba(8,8,16,0.98);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--nxt-border);
  padding: 24px 5% 32px;
  flex-direction: column;
  gap: 4px;
  z-index: 9998;
}
.nxt-mobile-menu.open { display: flex; }
.nxt-mobile-menu a {
  color: var(--nxt-muted);
  font-size: 1.1rem;
  font-weight: 500;
  padding: 12px 0;
  border-bottom: 1px solid var(--nxt-border);
  transition: color .2s;
}
.nxt-mobile-menu a:hover { color: var(--nxt-cyan); }
.nxt-mobile-menu .nxt-mobile-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 16px;
}

/* ─────────────────────────────────────────
   BUTTONS
───────────────────────────────────────── */
.nxt-btn-primary {
  background: linear-gradient(135deg, var(--nxt-cyan), var(--nxt-magenta));
  color: #fff !important;
  border: none;
  padding: 12px 28px;
  border-radius: 50px;
  font-family: var(--nxt-font-display);
  font-weight: 700;
  font-size: 0.9rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 0 30px rgba(0,212,255,0.2);
  transition: all .3s;
  text-decoration: none;
  white-space: nowrap;
}
.nxt-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 50px rgba(0,212,255,0.4);
  color: #fff !important;
}

.nxt-btn-outline {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.15);
  color: var(--nxt-text) !important;
  padding: 12px 28px;
  border-radius: 50px;
  font-family: var(--nxt-font-display);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all .3s;
  text-decoration: none;
  white-space: nowrap;
}
.nxt-btn-outline:hover {
  border-color: var(--nxt-cyan);
  color: var(--nxt-cyan) !important;
}

.nxt-btn-hero {
  background: linear-gradient(135deg, var(--nxt-cyan), var(--nxt-magenta));
  color: #fff !important;
  border: none;
  padding: 16px 40px;
  border-radius: 50px;
  font-family: var(--nxt-font-display);
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 0 50px rgba(0,212,255,0.3), 0 0 100px rgba(255,0,170,0.15);
  transition: all .3s;
  text-decoration: none;
}
.nxt-btn-hero:hover {
  transform: translateY(-3px);
  box-shadow: 0 0 70px rgba(0,212,255,0.5), 0 0 120px rgba(255,0,170,0.25);
  color: #fff !important;
}

.nxt-btn-hero-outline {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.2);
  color: var(--nxt-text) !important;
  padding: 16px 40px;
  border-radius: 50px;
  font-family: var(--nxt-font-display);
  font-weight: 600;
  font-size: 1rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all .3s;
  text-decoration: none;
}
.nxt-btn-hero-outline:hover {
  border-color: var(--nxt-cyan);
  color: var(--nxt-cyan) !important;
}

/* ─────────────────────────────────────────
   COMMON SECTION ELEMENTS
───────────────────────────────────────── */
.nxt-section-label {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--nxt-font-display);
  font-size: 0.72rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--nxt-cyan);
  margin-bottom: 16px;
}
.nxt-section-label::before {
  content: '';
  display: block;
  width: 30px;
  height: 1px;
  background: var(--nxt-cyan);
  flex-shrink: 0;
}

.nxt-gradient-text {
  background: linear-gradient(90deg, var(--nxt-cyan) 0%, var(--nxt-magenta) 50%, var(--nxt-green) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  background-size: 200%;
  animation: nxtGradShift 4s ease infinite;
}

/* ─────────────────────────────────────────
   ANIMATIONS
───────────────────────────────────────── */
@keyframes nxtFadeUp    { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
@keyframes nxtGradShift { 0%,100%{background-position:0%} 50%{background-position:100%} }
@keyframes nxtPulse     { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(1.5)} }
@keyframes nxtWave      { 0%,100%{transform:scaleY(.4);opacity:.6} 50%{transform:scaleY(1);opacity:1} }
@keyframes nxtTicker    { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
@keyframes nxtSpin      { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
@keyframes nxtSpinRev   { from{transform:rotate(360deg)} to{transform:rotate(0deg)} }
@keyframes nxtFloat1    { 0%,100%{transform:translate(0,0)} 50%{transform:translate(40px,30px)} }
@keyframes nxtFloat2    { 0%,100%{transform:translate(0,0)} 50%{transform:translate(-30px,-40px)} }
@keyframes nxtFloat3    { 0%,100%{transform:translate(0,0)} 50%{transform:translate(20px,-25px)} }
@keyframes nxtFlowPulse { 0%,100%{opacity:.4} 50%{opacity:1} }
@keyframes nxtFlowDot   { 0%,100%{transform:scale(1);opacity:.5} 50%{transform:scale(1.5);opacity:1} }
@keyframes nxtTransferProg { 0%{width:0%;opacity:0} 20%{opacity:1} 80%{opacity:1} 100%{width:100%;opacity:0} }
@keyframes nxtScrollPulse { 0%,100%{opacity:.3;transform:scaleY(1)} 50%{opacity:1;transform:scaleY(1.1)} }

.nxt-animate {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .7s ease, transform .7s ease;
}
.nxt-animate.nxt-visible { opacity: 1; transform: translateY(0); }

/* ─────────────────────────────────────────
   HERO SECTION
───────────────────────────────────────── */
.nxt-hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 130px 24px 80px;
  overflow: hidden;
  background: var(--nxt-bg);
}
.nxt-hero-inner { position: relative; z-index: 2; width: 100%; max-width: 860px; margin: 0 auto; }

.nxt-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  pointer-events: none;
}
.nxt-blob-1 { width:600px;height:600px;background:radial-gradient(circle,rgba(0,212,255,.18) 0%,transparent 70%);top:-100px;left:-150px;animation:nxtFloat1 8s ease-in-out infinite; }
.nxt-blob-2 { width:500px;height:500px;background:radial-gradient(circle,rgba(255,0,170,.15) 0%,transparent 70%);bottom:-80px;right:-100px;animation:nxtFloat2 10s ease-in-out infinite; }
.nxt-blob-3 { width:300px;height:300px;background:radial-gradient(circle,rgba(57,255,20,.1) 0%,transparent 70%);top:50%;left:55%;animation:nxtFloat3 7s ease-in-out infinite; }

.nxt-sound-wave { display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:32px; }
.nxt-sound-wave span { display:block;width:3px;border-radius:2px;background:linear-gradient(to top,var(--nxt-cyan),var(--nxt-magenta));animation:nxtWave 1.2s ease-in-out infinite; }
.nxt-sound-wave span:nth-child(1){height:16px;animation-delay:0s}
.nxt-sound-wave span:nth-child(2){height:28px;animation-delay:.1s}
.nxt-sound-wave span:nth-child(3){height:40px;animation-delay:.2s}
.nxt-sound-wave span:nth-child(4){height:52px;animation-delay:.3s}
.nxt-sound-wave span:nth-child(5){height:64px;animation-delay:.4s}
.nxt-sound-wave span:nth-child(6){height:52px;animation-delay:.5s}
.nxt-sound-wave span:nth-child(7){height:40px;animation-delay:.6s}
.nxt-sound-wave span:nth-child(8){height:28px;animation-delay:.7s}
.nxt-sound-wave span:nth-child(9){height:16px;animation-delay:.8s}
.nxt-sound-wave span:nth-child(10){height:28px;animation-delay:.9s}
.nxt-sound-wave span:nth-child(11){height:40px;animation-delay:1s}
.nxt-sound-wave span:nth-child(12){height:52px;animation-delay:1.1s}
.nxt-sound-wave span:nth-child(13){height:32px;animation-delay:.15s}

.nxt-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(0,212,255,.08);
  border: 1px solid rgba(0,212,255,.25);
  border-radius: 50px;
  padding: 6px 16px;
  font-size: .78rem;
  color: var(--nxt-cyan);
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 24px;
  font-family: var(--nxt-font-display);
}
.nxt-badge-dot { width:6px;height:6px;background:var(--nxt-cyan);border-radius:50%;animation:nxtPulse 1.5s ease infinite; }

.nxt-hero h1 {
  font-family: var(--nxt-font-display);
  font-weight: 800;
  font-size: clamp(2.8rem, 8vw, 6.5rem);
  line-height: 1.05;
  letter-spacing: -1px;
  margin-bottom: 24px;
}

.nxt-hero p {
  font-size: clamp(1rem, 2vw, 1.15rem);
  color: var(--nxt-muted);
  max-width: 540px;
  margin: 0 auto 40px;
  line-height: 1.75;
}

.nxt-hero-cta {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

.nxt-hero-stats {
  display: flex;
  gap: 40px;
  justify-content: center;
  margin-top: 64px;
  flex-wrap: wrap;
}
.nxt-stat-number {
  font-family: var(--nxt-font-display);
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  background: linear-gradient(135deg, var(--nxt-cyan), var(--nxt-magenta));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}
.nxt-stat-label { font-size: .78rem;color:var(--nxt-muted);letter-spacing:1px;text-transform:uppercase;margin-top:5px; }

.nxt-scroll-indicator { position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center; }
.nxt-scroll-line { width:1px;height:50px;background:linear-gradient(to bottom,var(--nxt-cyan),transparent);animation:nxtScrollPulse 2s ease-in-out infinite; }

/* ─────────────────────────────────────────
   TICKER / PLAYER STRIP
───────────────────────────────────────── */
.nxt-ticker-wrap {
  background: var(--nxt-surface);
  border-top: 1px solid var(--nxt-border);
  border-bottom: 1px solid var(--nxt-border);
  padding: 18px 0;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.nxt-ticker-label {
  padding: 0 24px;
  font-family: var(--nxt-font-display);
  font-size: .7rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--nxt-cyan);
  white-space: nowrap;
  flex-shrink: 0;
  border-right: 1px solid var(--nxt-border);
  margin-right: 24px;
}
.nxt-ticker-track { display:flex;gap:48px;animation:nxtTicker 28s linear infinite;white-space:nowrap; }
.nxt-ticker-item { display:flex;align-items:center;gap:12px;flex-shrink:0; }
.nxt-ticker-dot { width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--nxt-cyan),var(--nxt-magenta));flex-shrink:0; }
.nxt-ticker-text { font-size:.875rem;color:var(--nxt-muted); }
.nxt-ticker-text strong { color:var(--nxt-text); }

/* ─────────────────────────────────────────
   FEATURES SECTION
───────────────────────────────────────── */
.nxt-features { background:var(--nxt-bg);padding:100px 5%; }
.nxt-features-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px; }
.nxt-feature-card {
  background: var(--nxt-surface);
  border: 1px solid var(--nxt-border);
  border-radius: var(--nxt-radius);
  padding: 36px;
  transition: all .4s cubic-bezier(.23,1,.32,1);
  cursor: default;
  position: relative;
  overflow: hidden;
}
.nxt-feature-card::before {
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--nxt-cyan),transparent);
  opacity:0;transition:opacity .4s;
}
.nxt-feature-card:hover { transform:translateY(-6px);border-color:rgba(0,212,255,.2);background:var(--nxt-surface2); }
.nxt-feature-card:hover::before { opacity:1; }

.nxt-feature-icon {
  width:56px;height:56px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;margin-bottom:24px;
}
.nxt-feature-icon.cyan  { background:rgba(0,212,255,.1);box-shadow:0 0 30px rgba(0,212,255,.12); }
.nxt-feature-icon.magenta { background:rgba(255,0,170,.1);box-shadow:0 0 30px rgba(255,0,170,.12); }
.nxt-feature-icon.green { background:rgba(57,255,20,.1);box-shadow:0 0 30px rgba(57,255,20,.12); }

.nxt-feature-card h3 { font-family:var(--nxt-font-display);font-size:1.15rem;font-weight:700;margin-bottom:12px; }
.nxt-feature-card p  { color:var(--nxt-muted);font-size:.9rem;line-height:1.75; }

/* ─────────────────────────────────────────
   TRENDING SECTION
───────────────────────────────────────── */
.nxt-trending { background:var(--nxt-surface);padding:100px 5%; }
.nxt-trending-grid { display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;margin-top:60px; }

.nxt-track-list { display:flex;flex-direction:column;gap:4px; }
.nxt-track-item {
  display:flex;align-items:center;gap:18px;
  padding:16px 18px;border-radius:14px;
  border:1px solid transparent;
  transition:all .3s;cursor:pointer;
}
.nxt-track-item:hover { background:rgba(0,212,255,.05);border-color:rgba(0,212,255,.1); }
.nxt-track-item.active { background:rgba(0,212,255,.08);border-color:rgba(0,212,255,.2); }
.nxt-track-rank { font-family:var(--nxt-font-display);font-size:.8rem;font-weight:700;color:var(--nxt-muted);width:20px;text-align:center;flex-shrink:0; }
.nxt-track-cover { width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0; }
.nxt-track-title { font-family:var(--nxt-font-display);font-weight:600;font-size:.92rem;margin-bottom:3px; }
.nxt-track-artist { font-size:.78rem;color:var(--nxt-muted); }
.nxt-track-duration { font-size:.78rem;color:var(--nxt-muted);font-family:var(--nxt-font-display);flex-shrink:0; }

.nxt-vinyl-wrap { display:flex;align-items:center;justify-content:center; }
.nxt-vinyl {
  width:260px;height:260px;border-radius:50%;
  background:conic-gradient(from 0deg,#1a1a2e,#16213e,#0f3460,#1a1a2e,#16213e,#0f3460,#1a1a2e);
  display:flex;align-items:center;justify-content:center;
  position:relative;animation:nxtSpin 8s linear infinite;
  box-shadow:0 0 60px rgba(0,212,255,.2),0 0 120px rgba(255,0,170,.1),inset 0 0 40px rgba(0,0,0,.5);
}
.nxt-vinyl-center {
  width:76px;height:76px;border-radius:50%;background:var(--nxt-bg);
  display:flex;align-items:center;justify-content:center;font-size:1.7rem;
  animation:nxtSpinRev 8s linear infinite;
  border:2px solid rgba(0,212,255,.3);
  position:relative;z-index:1;
}
.nxt-vinyl-ring {
  position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.04);
}

/* ─────────────────────────────────────────
   TRANSFER SECTION
───────────────────────────────────────── */
.nxt-transfer { background:var(--nxt-bg);padding:100px 5%;position:relative;overflow:hidden; }
.nxt-transfer::before {
  content:'';position:absolute;width:700px;height:700px;
  background:radial-gradient(circle,rgba(0,212,255,.07) 0%,transparent 65%);
  top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;
}
.nxt-transfer-grid { display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;z-index:1; }

.nxt-platform-card {
  display:flex;align-items:center;gap:16px;
  background:var(--nxt-surface);border:1px solid var(--nxt-border);
  border-radius:18px;padding:18px 22px;position:relative;
  transition:all .4s;
}
.nxt-platform-card:hover { border-color:rgba(0,212,255,.25);transform:translateX(6px); }
.nxt-platform-card.spotify { border-left:3px solid #1DB954; }
.nxt-platform-card.youtube { border-left:3px solid #FF0000; }
.nxt-platform-card.apple   { border-left:3px solid #FC3C44; }

.nxt-platform-logo { width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.nxt-platform-logo.spotify { background:rgba(29,185,84,.15); }
.nxt-platform-logo.youtube { background:rgba(255,0,0,.12); }
.nxt-platform-logo.apple   { background:rgba(252,60,68,.12); }

.nxt-platform-name  { font-family:var(--nxt-font-display);font-weight:700;font-size:.92rem;margin-bottom:3px; }
.nxt-platform-count { font-size:.78rem;color:var(--nxt-muted); }
.nxt-platform-status { display:flex;align-items:center;gap:6px;font-size:.75rem;font-family:var(--nxt-font-display);font-weight:600;color:var(--nxt-muted);flex-shrink:0; }
.nxt-status-dot { width:7px;height:7px;border-radius:50%;background:var(--nxt-muted); }
.nxt-status-dot.on { background:#39FF14;box-shadow:0 0 8px rgba(57,255,20,.6); }

.nxt-flow { display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:6px 0;padding-left:22px; }
.nxt-flow-line { width:2px;height:24px;background:linear-gradient(to bottom,rgba(0,212,255,.4),rgba(255,0,170,.4));border-radius:2px;animation:nxtFlowPulse 2s ease-in-out infinite; }
.nxt-flow-dots { display:flex;gap:4px; }
.nxt-flow-dot { width:5px;height:5px;border-radius:50%;background:var(--nxt-cyan);animation:nxtFlowDot 1.5s ease-in-out infinite; }
.nxt-flow-dot:nth-child(2){animation-delay:.3s;background:var(--nxt-magenta)}
.nxt-flow-dot:nth-child(3){animation-delay:.6s;background:var(--nxt-green)}

.nxt-transfer-progress { position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,var(--nxt-cyan),var(--nxt-magenta));animation:nxtTransferProg 3s ease-in-out infinite;border-radius:0 0 18px 18px; }
.nxt-platform-card.spotify .nxt-transfer-progress{animation-delay:0s}
.nxt-platform-card.youtube .nxt-transfer-progress{animation-delay:1s}
.nxt-platform-card.apple .nxt-transfer-progress{animation-delay:2s}

.nxt-destination-card {
  background:linear-gradient(135deg,rgba(0,212,255,.1),rgba(255,0,170,.07));
  border:1px solid rgba(0,212,255,.3);border-radius:18px;
  padding:20px;margin-top:8px;position:relative;overflow:hidden;
  display:flex;align-items:center;gap:16px;
}
.nxt-destination-card::before { content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--nxt-cyan),var(--nxt-magenta)); }
.nxt-destination-logo { width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,rgba(0,212,255,.2),rgba(255,0,170,.2));display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0; }
.nxt-destination-name { font-family:var(--nxt-font-display);font-weight:800;font-size:.95rem;background:linear-gradient(90deg,var(--nxt-cyan),var(--nxt-magenta));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:3px; }
.nxt-destination-sub { font-size:.78rem;color:var(--nxt-muted); }
.nxt-transfer-success { display:flex;align-items:center;gap:6px;font-size:.75rem;font-family:var(--nxt-font-display);font-weight:700;color:#39FF14;flex-shrink:0; }

.nxt-platform-badges { display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px; }
.nxt-pb {
  display:inline-flex;align-items:center;gap:6px;
  background:var(--nxt-surface);border:1px solid var(--nxt-border);
  border-radius:50px;padding:5px 13px;
  font-size:.75rem;font-weight:600;font-family:var(--nxt-font-display);color:var(--nxt-text);
  transition:all .3s;
}
.nxt-pb.spotify{border-color:rgba(29,185,84,.4);color:#1DB954}
.nxt-pb.youtube{border-color:rgba(255,0,0,.4);color:#FF4444}
.nxt-pb.apple  {border-color:rgba(252,60,68,.4);color:#FC3C44}
.nxt-pb.deezer {border-color:rgba(0,212,255,.4);color:var(--nxt-cyan)}
.nxt-pb.amazon {border-color:rgba(255,165,0,.4);color:#FF9900}

.nxt-steps { display:flex;flex-direction:column;gap:28px;margin-bottom:40px; }
.nxt-step  { display:flex;gap:20px;align-items:flex-start; }
.nxt-step-num {
  width:40px;height:40px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,rgba(0,212,255,.15),rgba(255,0,170,.1));
  border:1px solid rgba(0,212,255,.25);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--nxt-font-display);font-weight:800;font-size:.82rem;color:var(--nxt-cyan);
}
.nxt-step-text h4 { font-family:var(--nxt-font-display);font-size:.98rem;font-weight:700;margin-bottom:5px; }
.nxt-step-text p  { font-size:.875rem;color:var(--nxt-muted);line-height:1.65; }

/* ─────────────────────────────────────────
   GENRES SECTION
───────────────────────────────────────── */
.nxt-genres { background:var(--nxt-surface);padding:100px 5%; }
.nxt-genres-grid { display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:60px; }
.nxt-genre-card {
  aspect-ratio:1;border-radius:var(--nxt-radius);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  cursor:pointer;transition:all .3s;border:1px solid var(--nxt-border);
  text-decoration:none;position:relative;overflow:hidden;
}
.nxt-genre-card::before { content:'';position:absolute;inset:0;opacity:0;transition:opacity .3s; }
.nxt-genre-card:hover { transform:scale(1.05); }
.nxt-genre-card:hover::before { opacity:1; }
.nxt-genre-card.g1{background:linear-gradient(135deg,rgba(0,212,255,.15),rgba(0,100,180,.1))}
.nxt-genre-card.g1::before{background:linear-gradient(135deg,rgba(0,212,255,.25),rgba(0,100,180,.2))}
.nxt-genre-card.g2{background:linear-gradient(135deg,rgba(255,0,170,.15),rgba(150,0,100,.1))}
.nxt-genre-card.g2::before{background:linear-gradient(135deg,rgba(255,0,170,.25),rgba(150,0,100,.2))}
.nxt-genre-card.g3{background:linear-gradient(135deg,rgba(57,255,20,.15),rgba(0,150,50,.1))}
.nxt-genre-card.g3::before{background:linear-gradient(135deg,rgba(57,255,20,.25),rgba(0,150,50,.2))}
.nxt-genre-card.g4{background:linear-gradient(135deg,rgba(255,165,0,.15),rgba(200,80,0,.1))}
.nxt-genre-card.g4::before{background:linear-gradient(135deg,rgba(255,165,0,.25),rgba(200,80,0,.2))}
.nxt-genre-card.g5{background:linear-gradient(135deg,rgba(150,0,255,.15),rgba(80,0,150,.1))}
.nxt-genre-card.g5::before{background:linear-gradient(135deg,rgba(150,0,255,.25),rgba(80,0,150,.2))}
.nxt-genre-card.g6{background:linear-gradient(135deg,rgba(255,50,50,.15),rgba(150,0,0,.1))}
.nxt-genre-card.g6::before{background:linear-gradient(135deg,rgba(255,50,50,.25),rgba(150,0,0,.2))}
.nxt-genre-emoji { font-size:2rem;position:relative;z-index:1; }
.nxt-genre-name  { font-family:var(--nxt-font-display);font-size:.82rem;font-weight:700;color:var(--nxt-text);position:relative;z-index:1; }

/* ─────────────────────────────────────────
   PRICING SECTION
───────────────────────────────────────── */
.nxt-pricing { background:var(--nxt-bg);padding:100px 5%; }
.nxt-pricing-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px;align-items:start; }
.nxt-price-card {
  background:var(--nxt-surface);border:1px solid var(--nxt-border);
  border-radius:24px;padding:40px 34px;position:relative;overflow:hidden;
  transition:all .4s;
}
.nxt-price-card.featured {
  border-color:rgba(0,212,255,.3);
  background:linear-gradient(145deg,rgba(0,212,255,.06),rgba(255,0,170,.04));
  transform:scale(1.03);
}
.nxt-price-card.featured::before { content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--nxt-cyan),var(--nxt-magenta)); }

.nxt-price-badge { position:absolute;top:20px;right:20px;background:linear-gradient(135deg,var(--nxt-cyan),var(--nxt-magenta));color:#fff;font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:5px 12px;border-radius:50px;font-family:var(--nxt-font-display); }
.nxt-plan-name   { font-family:var(--nxt-font-display);font-size:.72rem;letter-spacing:3px;text-transform:uppercase;color:var(--nxt-muted);margin-bottom:8px; }
.nxt-plan-price  { display:flex;align-items:baseline;gap:4px;margin-bottom:8px; }
.nxt-plan-price .cur { font-family:var(--nxt-font-display);font-size:1.2rem;font-weight:700;color:var(--nxt-cyan); }
.nxt-plan-price .amt { font-family:var(--nxt-font-display);font-size:3rem;font-weight:800;line-height:1; }
.nxt-plan-price .per { font-size:.85rem;color:var(--nxt-muted); }
.nxt-plan-desc   { color:var(--nxt-muted);font-size:.875rem;margin-bottom:30px;line-height:1.6; }

.nxt-plan-features { display:flex;flex-direction:column;gap:13px;margin-bottom:34px; }
.nxt-plan-features li { display:flex;align-items:center;gap:12px;font-size:.88rem; }
.nxt-check { width:20px;height:20px;border-radius:50%;background:rgba(57,255,20,.15);display:flex;align-items:center;justify-content:center;font-size:.6rem;color:var(--nxt-green);flex-shrink:0; }

.nxt-plan-btn {
  display:block;width:100%;padding:14px;border-radius:12px;
  text-align:center;font-family:var(--nxt-font-display);
  font-weight:700;font-size:.92rem;letter-spacing:.4px;
  cursor:pointer;transition:all .3s;text-decoration:none;
}
.nxt-plan-btn.outline { background:transparent;border:1px solid var(--nxt-border);color:var(--nxt-text); }
.nxt-plan-btn.outline:hover { border-color:var(--nxt-cyan);color:var(--nxt-cyan); }
.nxt-plan-btn.gradient { background:linear-gradient(135deg,var(--nxt-cyan),var(--nxt-magenta));border:none;color:#fff;box-shadow:0 8px 32px rgba(0,212,255,.2); }
.nxt-plan-btn.gradient:hover { box-shadow:0 12px 48px rgba(0,212,255,.35);transform:translateY(-2px); }

/* ─────────────────────────────────────────
   TESTIMONIALS
───────────────────────────────────────── */
.nxt-testimonials { background:var(--nxt-surface);padding:100px 5%; }
.nxt-testi-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px; }
.nxt-testi-card {
  background:var(--nxt-bg);border:1px solid var(--nxt-border);
  border-radius:var(--nxt-radius);padding:32px;transition:all .3s;
}
.nxt-testi-card:hover { transform:translateY(-4px);border-color:rgba(0,212,255,.15); }
.nxt-testi-stars { display:flex;gap:3px;margin-bottom:18px;font-size:.88rem; }
.nxt-testi-text  { font-size:.92rem;color:var(--nxt-muted);line-height:1.75;margin-bottom:22px; }
.nxt-testi-author { display:flex;align-items:center;gap:12px; }
.nxt-author-avatar { width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0; }
.nxt-author-name { font-family:var(--nxt-font-display);font-weight:600;font-size:.88rem; }
.nxt-author-role { font-size:.75rem;color:var(--nxt-muted); }

/* ─────────────────────────────────────────
   CTA SECTION
───────────────────────────────────────── */
.nxt-cta { background:var(--nxt-bg);padding:100px 5%;position:relative;overflow:hidden; }
.nxt-cta::before { content:'';position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(0,212,255,.1) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none; }
.nxt-cta-box {
  background:linear-gradient(135deg,rgba(0,212,255,.08),rgba(255,0,170,.06));
  border:1px solid rgba(0,212,255,.2);border-radius:32px;
  padding:80px 40px;max-width:820px;margin:0 auto;
  text-align:center;position:relative;overflow:hidden;
}
.nxt-cta-box::before { content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--nxt-cyan),var(--nxt-magenta),transparent); }
.nxt-cta-box h2 { font-family:var(--nxt-font-display);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;line-height:1.1;margin-bottom:20px; }
.nxt-cta-box p  { color:var(--nxt-muted);margin:0 auto 40px;font-size:1.05rem;max-width:460px;line-height:1.7; }
.nxt-cta-btns   { display:flex;gap:16px;justify-content:center;flex-wrap:wrap; }

.nxt-app-badges { display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:40px; }
.nxt-app-badge {
  display:flex;align-items:center;gap:12px;
  background:rgba(255,255,255,.05);border:1px solid var(--nxt-border);
  border-radius:14px;padding:11px 18px;text-decoration:none;transition:all .3s;
}
.nxt-app-badge:hover { border-color:rgba(0,212,255,.3);background:rgba(0,212,255,.05); }
.nxt-app-badge-icon { font-size:1.4rem; }
.nxt-store-label { font-size:.62rem;color:var(--nxt-muted);letter-spacing:1px;text-transform:uppercase; }
.nxt-store-name  { font-family:var(--nxt-font-display);font-size:.88rem;font-weight:700;color:var(--nxt-text); }

/* ─────────────────────────────────────────
   FOOTER
───────────────────────────────────────── */
.nxt-footer { background:var(--nxt-surface);border-top:1px solid var(--nxt-border);padding:60px 5% 28px; }
.nxt-footer-grid { display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px; }
.nxt-footer-brand p { color:var(--nxt-muted);font-size:.875rem;line-height:1.7;max-width:260px;margin-top:14px; }
.nxt-footer-col h4 { font-family:var(--nxt-font-display);font-size:.72rem;letter-spacing:2px;text-transform:uppercase;color:var(--nxt-text);margin-bottom:18px; }
.nxt-footer-col ul { display:flex;flex-direction:column;gap:11px; }
.nxt-footer-col ul a { color:var(--nxt-muted);font-size:.875rem;transition:color .2s; }
.nxt-footer-col ul a:hover { color:var(--nxt-cyan); }

.nxt-footer-bottom { display:flex;align-items:center;justify-content:space-between;padding-top:24px;border-top:1px solid var(--nxt-border);font-size:.78rem;color:var(--nxt-muted);flex-wrap:wrap;gap:12px; }
.nxt-social-links { display:flex;gap:10px; }
.nxt-social-link { width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid var(--nxt-border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;font-size:.82rem;text-decoration:none;color:var(--nxt-muted); }
.nxt-social-link:hover { border-color:var(--nxt-cyan);background:rgba(0,212,255,.1);color:var(--nxt-cyan); }

/* ─────────────────────────────────────────
   SECTION CENTER HELPER
───────────────────────────────────────── */
.nxt-section-center { text-align:center; }
.nxt-section-center .nxt-section-label { justify-content:center; }
.nxt-section-center .nxt-section-label::before { display:none; }
.nxt-section-title { font-family:var(--nxt-font-display);font-size:clamp(1.9rem,4vw,3rem);font-weight:800;line-height:1.1;margin-bottom:16px;letter-spacing:-.5px; }
.nxt-section-sub { color:var(--nxt-muted);font-size:1.02rem;line-height:1.7;max-width:500px; }
.nxt-section-center .nxt-section-sub { margin:0 auto; }

/* ─────────────────────────────────────────
   RESPONSIVE — 1200px
───────────────────────────────────────── */
@media (max-width:1200px) {
  .nxt-features-grid { grid-template-columns:repeat(2,1fr); }
  .nxt-genres-grid   { grid-template-columns:repeat(4,1fr); }
  .nxt-transfer-grid { gap:48px; }
}

/* ─────────────────────────────────────────
   RESPONSIVE — 992px
───────────────────────────────────────── */
@media (max-width:992px) {
  .nxt-nav-links  { display:none; }
  .nxt-nav-actions .nxt-btn-outline { display:none; }
  .nxt-hamburger  { display:flex; }
  .nxt-trending-grid  { grid-template-columns:1fr; }
  .nxt-vinyl-wrap     { display:none; }
  .nxt-transfer-grid  { grid-template-columns:1fr; }
  .nxt-pricing-grid   { grid-template-columns:1fr; }
  .nxt-price-card.featured { transform:none; }
  .nxt-footer-grid { grid-template-columns:1fr 1fr; }
  .nxt-genres-grid { grid-template-columns:repeat(3,1fr); }
  .nxt-testi-grid  { grid-template-columns:1fr; }
}

/* ─────────────────────────────────────────
   RESPONSIVE — 768px
───────────────────────────────────────── */
@media (max-width:768px) {
  .nxt-features-grid { grid-template-columns:1fr; }
  .nxt-hero-stats { gap:24px; }
  .nxt-cta-box { padding:48px 24px; }
  .nxt-genres-grid { grid-template-columns:repeat(2,1fr); }
  .nxt-features,
  .nxt-trending,
  .nxt-transfer,
  .nxt-genres,
  .nxt-pricing,
  .nxt-testimonials,
  .nxt-cta { padding:72px 5%; }
}

/* ─────────────────────────────────────────
   RESPONSIVE — 480px
───────────────────────────────────────── */
@media (max-width:480px) {
  .nxt-navbar { padding:0 4%; height:64px; }
  .nxt-mobile-menu { top:64px; }
  .nxt-nav-logo-text { font-size:1rem; }
  .nxt-hero { padding:100px 20px 60px; }
  .nxt-hero-cta { flex-direction:column;align-items:center; }
  .nxt-btn-hero, .nxt-btn-hero-outline { width:100%;max-width:300px;justify-content:center; }
  .nxt-hero-stats { gap:16px; }
  .nxt-hero-stats .nxt-stat { min-width:70px; }
  .nxt-footer-grid { grid-template-columns:1fr; }
  .nxt-cta-box { border-radius:20px; }
  .nxt-genres-grid { grid-template-columns:repeat(2,1fr); }
  .nxt-transfer-grid { gap:36px; }
  .nxt-platform-card { flex-wrap:wrap; }
  .nxt-platform-status { width:100%;margin-top:4px; }
  .nxt-features,
  .nxt-trending,
  .nxt-transfer,
  .nxt-genres,
  .nxt-pricing,
  .nxt-testimonials,
  .nxt-cta { padding:56px 4%; }
}

/* ─────────────────────────────────────────
   RESPONSIVE — 360px
───────────────────────────────────────── */
@media (max-width:360px) {
  .nxt-hero h1 { font-size:2.4rem; }
  .nxt-genres-grid { grid-template-columns:repeat(2,1fr);gap:10px; }
  .nxt-hero-stats { flex-wrap:wrap;justify-content:center;gap:14px; }
}

