/* Menara FM Live Header — all selectors scoped to mfm-hero */
.mfm-hero, .mfm-hero * { box-sizing: border-box; }
.mfm-hero {
  position: relative;
  left: 50%;
  width: 100vw;
  width: 100dvw;
  max-width: none !important;
  margin: 0 0 0 -50vw !important;
  margin-left: -50dvw !important;
  min-height: clamp(410px, 30vw, 565px);
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 32px clamp(18px, 4vw, 70px);
  isolation: isolate;
  overflow: hidden;
  background: #151f2e;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.4;
}
.mfm-hero__photo {
  position: absolute;
  z-index: -2;
  inset: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.mfm-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(7, 15, 31, .08) 25%, rgba(7, 15, 31, .12) 55%, rgba(7, 15, 31, .28) 100%);
  pointer-events: none;
}
.mfm-hero__panel {
  width: min(100%, 355px);
  background: #FDBB21;
  border-radius: 25px;
  padding: 29px 31px 27px;
  color: #092C59;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .18);
  flex: 0 0 auto;
}
.mfm-hero__eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 17px;
  color: #092C59;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.mfm-hero__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ED3434;
  box-shadow: 0 0 0 4px rgba(237, 52, 52, .16);
  flex: 0 0 auto;
}
.mfm-hero__title {
  margin: 0 !important;
  padding: 0 !important;
  color: #092C59 !important;
  font-size: clamp(31px, 2.6vw, 39px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.9px;
  text-transform: uppercase;
  white-space: nowrap;
}
.mfm-hero__title span { font-weight: 400; }
.mfm-hero__freq {
  margin: 4px 0 20px !important;
  color: #092C59;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
}
.mfm-hero__button {
  appearance: none;
  -webkit-appearance: none;
  border: 0 !important;
  border-radius: 15px !important;
  padding: 13px 24px !important;
  min-height: 54px;
  display: inline-flex !important;
  gap: 13px;
  justify-content: center;
  align-items: center;
  background: #082C5A !important;
  color: #fff !important;
  font-family: inherit;
  font-weight: 800 !important;
  font-size: 16px !important;
  text-decoration: none !important;
  letter-spacing: 0 !important;
  line-height: 1.3 !important;
  cursor: pointer;
  box-shadow: none !important;
  transition: background .15s ease, transform .15s ease;
}
.mfm-hero__button:hover { background: #0C3D78 !important; transform: translateY(-1px); }
.mfm-hero__button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.mfm-hero__button svg { width: 18px; height: 18px; flex: 0 0 auto; fill: currentColor; }
.mfm-hero__pause-icon, .mfm-hero__spinner { display: none; }
.mfm-hero[data-state="playing"] .mfm-hero__play-icon { display: none; }
.mfm-hero[data-state="playing"] .mfm-hero__pause-icon { display: block; }
.mfm-hero[data-state="connecting"] .mfm-hero__play-icon { display: none; }
.mfm-hero[data-state="connecting"] .mfm-hero__spinner {
  display: block;
  width: 17px;
  height: 17px;
  border: 2px solid rgba(255,255,255,.4);
  border-top-color: #fff;
  border-radius: 50%;
  animation: mfm-hero-spin .8s linear infinite;
}
@keyframes mfm-hero-spin { to { transform: rotate(360deg); } }
.mfm-hero__tagline {
  margin: 14px 0 0 !important;
  color: #092C59;
  font-weight: 800;
  font-size: 11px;
  letter-spacing: 1.1px;
}
.mfm-hero__audio { display: none; }
@media (max-width: 700px) {
  .mfm-hero {
    min-height: 570px;
    justify-content: center;
    align-items: flex-end;
    padding: 24px 17px 28px;
  }
  .mfm-hero__photo { background-position: 50% 36%; }
  .mfm-hero::before {
    background: linear-gradient(180deg, rgba(5, 14, 27, .04) 0%, rgba(5, 14, 27, .1) 50%, rgba(5, 14, 27, .48) 100%);
  }
  .mfm-hero__panel { max-width: 370px; padding: 24px 25px 23px; border-radius: 22px; }
  .mfm-hero__title { font-size: 34px !important; }
  .mfm-hero__eyebrow { margin-bottom: 13px; }
  .mfm-hero__freq { margin-bottom: 15px !important; }
}
@media (max-width: 360px) {
  .mfm-hero__panel { padding: 21px; }
  .mfm-hero__title { font-size: 29px !important; }
  .mfm-hero__button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .mfm-hero__button { transition: none; }
  .mfm-hero__spinner { animation-duration: 2s !important; }
}
