/* Menú del sitio y llamadas a la compra de la página de demostración.
   Todas las reglas usan clases propias (cx-): no afectan al reproductor ni a otros elementos. */

.cx-nav { margin: 0 0 28px; }
.cx-nav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.cx-nav-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  background: rgba(0, 0, 0, .28);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
}
.cx-nav-link:hover { border-color: #ff7d97; background: rgba(0, 0, 0, .45); }
.cx-nav-link[aria-current="page"] {
  border-color: #ff7d97;
  background: rgba(255, 125, 151, .18);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.cx-nav-link--buy { border-color: #c8102e; background: #c8102e; }
.cx-nav-link--buy:hover { border-color: #e3123d; background: #e3123d; }

.cx-buy { margin: 26px 0 0; max-width: 640px; }
.cx-buy-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 12px 26px;
  border-radius: 8px;
  background: #c8102e;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 8px 22px rgba(200, 16, 46, .35);
}
.cx-buy-main:hover { background: #e3123d; }
.cx-buy-text { margin: 10px 0 0; color: #e4dcef; font-size: 15px; }
.cx-buy-store {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 2px;
  color: #ffc2cf;
  font-size: 15px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cx-buy-store:hover { color: #fff; }

.cx-nav-link:focus-visible,
.cx-buy-main:focus-visible,
.cx-buy-store:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
  box-shadow: 0 0 0 6px rgba(200, 16, 46, .55);
}

.cx-buy-end {
  margin: 40px 0 8px;
  padding: 22px 22px 18px;
  border: 1px solid #3a2a4a;
  border-left: 4px solid #ff7d97;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(42, 15, 74, .55), rgba(18, 5, 31, .55));
}
.cx-buy-end h2 { margin-top: 0; }
.cx-buy-end .cx-buy { margin-top: 14px; }

@media (max-width: 480px) {
  .cx-nav-link { padding: 8px 12px; font-size: 13.5px; }
  .cx-buy-main { display: flex; width: 100%; padding: 12px 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .cx-nav-link, .cx-buy-main, .cx-buy-store { transition: none; }
}
