/* Insights hero: "on air" promo card linking to /listen.html (ListenPromo in InsightsPage.jsx) */
.ac-lpromo {
  position: relative; isolation: isolate; overflow: hidden;
  display: flex; align-items: center; gap: 22px;
  max-width: 560px; margin-top: 30px; padding: 22px 24px 30px 22px;
  border-radius: 18px; text-decoration: none; color: var(--fg1);
  border: 1px solid rgba(227,27,35,0.45);
  background:
    radial-gradient(120% 140% at 0% 50%, rgba(227,27,35,0.22) 0%, rgba(227,27,35,0.04) 45%, rgba(255,255,255,0.015) 100%),
    #0E1014;
  box-shadow: 0 0 0 1px rgba(227,27,35,0.08) inset, 0 24px 60px -24px rgba(227,27,35,0.55);
  transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s, border-color .35s;
}
.ac-lpromo::before { /* light sweep */
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,0.07) 50%, transparent 65%);
  transform: translateX(-120%); animation: acLpSweep 5.5s ease-in-out 1.2s infinite;
}
@keyframes acLpSweep { 0%, 55% { transform: translateX(-120%); } 85%, 100% { transform: translateX(120%); } }
.ac-lpromo:hover { transform: translateY(-3px); border-color: rgba(255,42,51,0.85); color: var(--fg1);
  box-shadow: 0 0 0 1px rgba(227,27,35,0.18) inset, 0 30px 70px -20px rgba(227,27,35,0.75); }
.ac-lpromo:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }

/* play disc with sound rings */
.ac-lpromo__disc { position: relative; flex: 0 0 auto; width: 78px; height: 78px; border-radius: 50%;
  display: grid; place-items: center; background: var(--accent);
  box-shadow: 0 12px 34px -8px rgba(227,27,35,0.9), 0 0 0 6px rgba(227,27,35,0.14); transition: transform .35s cubic-bezier(.2,.8,.2,1.4); }
.ac-lpromo__disc svg { width: 30px; height: 30px; fill: #fff; margin-left: 4px; position: relative; z-index: 1; }
.ac-lpromo__ring { position: absolute; inset: 0; border-radius: 50%; border: 1.5px solid rgba(255,60,66,0.75);
  animation: acLpRing 2.7s cubic-bezier(.2,.6,.3,1) infinite; }
.ac-lpromo__ring:nth-child(2) { animation-delay: .9s; }
.ac-lpromo__ring:nth-child(3) { animation-delay: 1.8s; }
@keyframes acLpRing { from { transform: scale(1); opacity: .9; } to { transform: scale(2.1); opacity: 0; } }
.ac-lpromo:hover .ac-lpromo__disc { transform: scale(1.08); }
.ac-lpromo:hover .ac-lpromo__ring { animation-duration: 1.6s; }

.ac-lpromo__body { display: grid; gap: 7px; min-width: 0; }
.ac-lpromo__tag { display: inline-flex; align-items: center; gap: 9px; font: 600 11px/1 var(--font-mono); letter-spacing: .18em; color: #ff5a60; }
.ac-lpromo__live { width: 8px; height: 8px; border-radius: 50%; background: #ff2a33; box-shadow: 0 0 10px #ff2a33; animation: acLpBlink 1.4s ease-in-out infinite; }
@keyframes acLpBlink { 50% { opacity: .3; } }
.ac-lpromo__eq { display: inline-flex; align-items: flex-end; gap: 2px; height: 12px; }
.ac-lpromo__eq i { width: 2.5px; height: 30%; border-radius: 1px; background: #ff5a60; animation: acLpEq .9s ease-in-out infinite; }
.ac-lpromo__eq i:nth-child(2) { animation-delay: -.3s; } .ac-lpromo__eq i:nth-child(3) { animation-delay: -.6s; }
.ac-lpromo__eq i:nth-child(4) { animation-delay: -.15s; } .ac-lpromo__eq i:nth-child(5) { animation-delay: -.45s; }
@keyframes acLpEq { 0%, 100% { height: 25%; } 50% { height: 100%; } }
.ac-lpromo__title { font: 800 clamp(21px, 2.2vw, 26px)/1.15 var(--font-display); letter-spacing: -.01em; }
.ac-lpromo__title em { font-style: normal; color: var(--accent); }
.ac-lpromo__sub { font: 500 13px/1.45 var(--font-sans); color: var(--fg2); }
.ac-lpromo__latest { display: flex; align-items: center; gap: 10px; font: 500 12px/1.35 var(--font-sans); color: var(--fg3); min-width: 0; }
.ac-lpromo__latest > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ac-lpromo__latest b { color: var(--fg1); font-weight: 700; }
.ac-lpromo__covers { display: inline-flex; flex: 0 0 auto; }
.ac-lpromo__covers img { width: 40px; height: 26px; object-fit: cover; border-radius: 5px; border: 1.5px solid #0E1014; }
.ac-lpromo__covers img + img { margin-left: -14px; }
.ac-lpromo__cta { font: 700 14px/1 var(--font-sans); color: #fff; display: inline-flex; gap: 8px; align-items: center; margin-top: 4px; }
.ac-lpromo__cta .ac-arrow { transition: transform .3s; }
.ac-lpromo:hover .ac-lpromo__cta .ac-arrow { transform: translateX(5px); }

/* live waveform along the bottom edge */
.ac-lpromo__wave { position: absolute; left: 0; right: 0; bottom: 0; height: 18px; z-index: -1;
  display: flex; align-items: flex-end; gap: 3px; padding: 0 14px; opacity: .55; }
.ac-lpromo__wave i { flex: 1; height: 30%; border-radius: 1px 1px 0 0; background: linear-gradient(0deg, rgba(227,27,35,.9), rgba(227,27,35,.15));
  animation: acLpEq 2.3s ease-in-out infinite; }

@media (max-width: 600px) {
  .ac-lpromo { gap: 16px; padding: 18px 16px 26px; }
  .ac-lpromo__disc { width: 60px; height: 60px; }
  .ac-lpromo__disc svg { width: 24px; height: 24px; }
  .ac-lpromo__latest { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .ac-lpromo::before, .ac-lpromo__ring, .ac-lpromo__live, .ac-lpromo__eq i, .ac-lpromo__wave i { animation: none; }
}
