{"id":10,"date":"2026-06-17T19:13:17","date_gmt":"2026-06-17T19:13:17","guid":{"rendered":"https:\/\/ormusiclive.com\/?page_id=10"},"modified":"2026-09-17T03:24:13","modified_gmt":"2026-09-17T03:24:13","slug":"radio-24-7","status":"publish","type":"page","link":"https:\/\/ormusiclive.com\/?page_id=10","title":{"rendered":"RADIO 24\/7"},"content":{"rendered":"\n<style>\n\n\/* =========================================================\n   OR MUSIC LIVE \u00b7 RADIO 24\/7\n   IDENTIDAD OR MUSIC LIVE + ADULTO CONTEMPOR\u00c1NEO\n========================================================= *\/\n\n*{\n  box-sizing:border-box;\n}\n\nhtml,\nbody{\n  margin:0!important;\n  padding:0!important;\n  overflow-x:hidden!important;\n  background:#03020a!important;\n}\n\nbody{\n  color:#eef3f7!important;\n  font-family:Arial,Helvetica,sans-serif!important;\n}\n\n\n\/* =========================================================\n   OCULTAR WORDPRESS \/ MEN\u00da GENERAL\n========================================================= *\/\n\n.entry-title,\n.page-title,\n.wp-block-post-title,\n.entry-header,\n.page-header,\n.site-footer,\nfooter.wp-block-template-part,\nheader.wp-block-template-part,\nheader.site-header,\n.site-header,\n#masthead,\n.main-header-bar,\n.main-navigation,\n.primary-navigation,\n.wp-block-navigation,\n.wp-site-blocks > header{\n  display:none!important;\n}\n\n.wp-site-blocks,\n.site-content,\n.site-main,\nmain{\n  margin-top:0!important;\n  padding-top:0!important;\n}\n\n.wp-block-html{\n  width:100%!important;\n  max-width:none!important;\n  margin:0!important;\n  padding:0!important;\n}\n\n.is-layout-constrained > .wp-block-html{\n  max-width:none!important;\n}\n\n\n\/* =========================================================\n   FONDO GENERAL\n   MISMA FAMILIA VISUAL DE OR MUSIC LIVE\n========================================================= *\/\n\n.or247-page{\n  position:relative!important;\n\n  width:100vw!important;\n  max-width:100vw!important;\n\n  left:50%!important;\n  transform:translateX(-50%)!important;\n\n  min-height:100vh!important;\n\n  overflow:hidden!important;\n\n  background:\n\n    radial-gradient(\n      circle at 10% 15%,\n      rgba(0,181,255,.17),\n      transparent 29%\n    ),\n\n    radial-gradient(\n      circle at 88% 13%,\n      rgba(255,0,211,.18),\n      transparent 29%\n    ),\n\n    radial-gradient(\n      circle at 22% 60%,\n      rgba(84,58,190,.15),\n      transparent 31%\n    ),\n\n    radial-gradient(\n      circle at 82% 73%,\n      rgba(207,42,167,.11),\n      transparent 31%\n    ),\n\n    radial-gradient(\n      circle at 50% 88%,\n      rgba(55,106,177,.13),\n      transparent 35%\n    ),\n\n    linear-gradient(\n      180deg,\n      #02030a 0%,\n      #070713 31%,\n      #09051a 62%,\n      #080311 100%\n    )!important;\n}\n\n\n\/* =========================================================\n   TEXTURA\n========================================================= *\/\n\n.or247-texture{\n  position:absolute;\n\n  inset:0;\n\n  z-index:0;\n\n  pointer-events:none;\n\n  opacity:.25;\n\n  background-image:\n\n    linear-gradient(\n      rgba(255,255,255,.018) 1px,\n      transparent 1px\n    ),\n\n    linear-gradient(\n      90deg,\n      rgba(255,255,255,.018) 1px,\n      transparent 1px\n    );\n\n  background-size:52px 52px;\n}\n\n\n\/* =========================================================\n   RESPLANDORES GRANDES DE MARCA\n========================================================= *\/\n\n.or247-atmosphere{\n  position:absolute;\n\n  z-index:0;\n\n  border-radius:50%;\n\n  pointer-events:none;\n\n  filter:blur(65px);\n}\n\n\n.or247-atmosphere.a1{\n  width:430px;\n  height:430px;\n\n  left:-170px;\n  top:290px;\n\n  background:\n    rgba(0,166,255,.12);\n}\n\n\n.or247-atmosphere.a2{\n  width:500px;\n  height:500px;\n\n  right:-210px;\n  top:430px;\n\n  background:\n    rgba(255,0,207,.11);\n}\n\n\n.or247-atmosphere.a3{\n  width:470px;\n  height:470px;\n\n  left:34%;\n  bottom:-210px;\n\n  background:\n    rgba(112,67,255,.10);\n}\n\n\n\/* =========================================================\n   LOGOS GIGANTES\n========================================================= *\/\n\n.or247-bg-logo{\n  position:absolute;\n\n  z-index:0;\n\n  pointer-events:none;\n\n  user-select:none;\n\n  object-fit:contain;\n\n  opacity:.13;\n\n  filter:\n    saturate(.90)\n    brightness(.95);\n\n  mix-blend-mode:screen;\n}\n\n\n.or247-bg-logo.logo-one{\n  width:690px;\n  height:690px;\n\n  left:-265px;\n  top:170px;\n\n  transform:rotate(-10deg);\n}\n\n\n.or247-bg-logo.logo-two{\n  width:760px;\n  height:760px;\n\n  right:-315px;\n  top:760px;\n\n  opacity:.115;\n\n  transform:rotate(10deg);\n}\n\n\n.or247-bg-logo.logo-three{\n  width:460px;\n  height:460px;\n\n  left:34%;\n  bottom:-195px;\n\n  opacity:.07;\n\n  transform:rotate(-5deg);\n}\n\n\n\/* =========================================================\n   COLLAGE SUAVE\n========================================================= *\/\n\n.or247-watermark{\n  position:absolute;\n\n  inset:0;\n\n  z-index:0;\n\n  pointer-events:none;\n\n  opacity:.045;\n\n  background-image:\n    url(\"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\");\n\n  background-repeat:repeat;\n\n  background-size:220px auto;\n\n  background-position:center;\n\n  transform:rotate(-2deg) scale(1.03);\n}\n\n\n\/* =========================================================\n   WRAPPER\n========================================================= *\/\n\n.or247-wrap{\n  position:relative;\n\n  z-index:3;\n\n  width:100%;\n  max-width:1500px;\n\n  margin:0 auto;\n\n  padding:\n    22px\n    clamp(14px,3vw,48px)\n    55px;\n}\n\n\n\/* =========================================================\n   CABECERA\n========================================================= *\/\n\n.or247-header{\n  position:relative;\n\n  min-height:88px;\n\n  display:flex;\n\n  align-items:center;\n  justify-content:center;\n\n  padding:\n    13px 150px\n    20px;\n\n  margin-bottom:29px;\n\n  border-bottom:\n    1px solid rgba(255,255,255,.09);\n}\n\n\n.or247-domain{\n  color:#f7f8fb!important;\n\n  text-align:center;\n\n  font-size:\n    clamp(30px,4.2vw,58px);\n\n  line-height:1;\n\n  font-weight:900;\n\n  letter-spacing:\n    clamp(1px,.35vw,5px);\n\n  text-shadow:\n\n    0 0 20px rgba(255,255,255,.08),\n\n    0 0 35px rgba(0,182,255,.12),\n\n    0 0 48px rgba(255,0,210,.08);\n}\n\n\n.or247-home{\n  position:absolute;\n\n  right:0;\n  top:50%;\n\n  transform:translateY(-50%);\n\n  min-height:43px;\n\n  display:inline-flex;\n\n  align-items:center;\n  justify-content:center;\n\n  padding:10px 18px;\n\n  border-radius:999px;\n\n  color:#eef2f5!important;\n\n  text-decoration:none!important;\n\n  background:\n    rgba(255,255,255,.045);\n\n  border:\n    1px solid rgba(255,255,255,.13);\n\n  font-size:9px;\n  font-weight:900;\n\n  letter-spacing:1px;\n\n  transition:.25s ease;\n}\n\n\n.or247-home:hover{\n  color:#83ddff!important;\n\n  border-color:\n    rgba(83,211,255,.48);\n}\n\n\n\/* =========================================================\n   INTRO\n========================================================= *\/\n\n.or247-intro{\n  max-width:1050px;\n\n  margin:\n    0 auto\n    31px;\n\n  text-align:center;\n}\n\n\n.or247-intro small{\n  color:#ff77e6;\n\n  font-size:9px;\n  font-weight:900;\n\n  letter-spacing:3px;\n}\n\n\n.or247-intro h1{\n  margin:\n    9px 0\n    11px!important;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif!important;\n\n  font-size:\n    clamp(45px,6vw,78px)!important;\n\n  line-height:1!important;\n\n  font-weight:500!important;\n\n  background:\n    linear-gradient(\n      90deg,\n      #ffffff 0%,\n      #a8ddf5 25%,\n      #b8a8ef 52%,\n      #e9acd9 78%,\n      #ffffff 100%\n    );\n\n  -webkit-background-clip:text;\n  -webkit-text-fill-color:transparent;\n\n  background-clip:text;\n}\n\n\n.or247-intro p{\n  max-width:930px;\n\n  margin:0 auto!important;\n\n  color:#aeb8c5!important;\n\n  font-size:\n    clamp(13px,1.1vw,16px)!important;\n\n  line-height:1.75!important;\n}\n\n\n\/* =========================================================\n   INFORMACI\u00d3N SUPERIOR\n========================================================= *\/\n\n.or247-info-strip{\n  max-width:1180px;\n\n  margin:\n    0 auto\n    18px;\n\n  display:grid;\n\n  grid-template-columns:\n    1fr auto;\n\n  gap:18px;\n\n  align-items:center;\n\n  padding:\n    15px 19px;\n\n  border-radius:18px;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(10,15,30,.76),\n      rgba(16,8,30,.67)\n    );\n\n  backdrop-filter:blur(8px);\n\n  border:\n    1px solid rgba(255,255,255,.08);\n\n  box-shadow:\n    0 15px 35px rgba(0,0,0,.18);\n}\n\n\n.or247-welcome small{\n  display:block;\n\n  color:#d4b56e;\n\n  margin-bottom:4px;\n\n  font-size:7px;\n  font-weight:900;\n\n  letter-spacing:1.7px;\n}\n\n\n.or247-welcome strong{\n  color:#e8edf1;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif;\n\n  font-size:\n    clamp(18px,2vw,26px);\n\n  font-weight:500;\n}\n\n\n.or247-date{\n  color:#929eaa;\n\n  text-align:right;\n\n  font-size:9px;\n  font-weight:900;\n\n  letter-spacing:.5px;\n}\n\n\n\/* =========================================================\n   REPRODUCTOR\n========================================================= *\/\n\n.or247-player{\n  position:relative;\n\n  max-width:1180px;\n\n  margin:0 auto;\n\n  overflow:hidden;\n\n  border-radius:31px;\n\n  background:\n\n    radial-gradient(\n      circle at 10% 10%,\n      rgba(0,161,255,.10),\n      transparent 33%\n    ),\n\n    radial-gradient(\n      circle at 88% 15%,\n      rgba(255,0,206,.08),\n      transparent 30%\n    ),\n\n    linear-gradient(\n      145deg,\n      rgba(13,20,37,.99),\n      rgba(10,6,23,.99)\n    );\n\n  border:\n    1px solid rgba(255,255,255,.11);\n\n  box-shadow:\n    0 32px 80px rgba(0,0,0,.48);\n\n  transition:\n    border-color .45s ease,\n    box-shadow .45s ease,\n    transform .45s ease;\n}\n\n\n\/* =========================================================\n   ILUMINACI\u00d3N CUANDO REPRODUCE\n========================================================= *\/\n\n.or247-player.is-playing{\n  border-color:\n    rgba(213,187,125,.62);\n\n  box-shadow:\n\n    0 0 0 1px rgba(217,189,124,.10),\n\n    0 0 20px rgba(223,193,118,.17),\n\n    0 0 45px rgba(94,76,255,.17),\n\n    0 0 70px rgba(255,43,208,.11),\n\n    0 0 105px rgba(0,180,255,.10),\n\n    0 38px 90px rgba(0,0,0,.55);\n}\n\n\n\/* =========================================================\n   BARRAS LUMINOSAS\n========================================================= *\/\n\n.or247-glow-top,\n.or247-glow-bottom{\n  position:absolute;\n\n  z-index:20;\n\n  left:7%;\n  right:7%;\n\n  height:2px;\n\n  opacity:.28;\n\n  background:\n    linear-gradient(\n      90deg,\n      transparent,\n      #41d9ff,\n      #8170f2,\n      #d9bd7a,\n      #ef62d5,\n      transparent\n    );\n}\n\n\n.or247-glow-top{\n  top:0;\n}\n\n\n.or247-glow-bottom{\n  bottom:0;\n}\n\n\n.or247-player.is-playing\n.or247-glow-top,\n\n.or247-player.is-playing\n.or247-glow-bottom{\n\n  opacity:1;\n\n  box-shadow:\n\n    0 0 8px rgba(218,191,125,.75),\n\n    0 0 18px rgba(122,95,255,.50),\n\n    0 0 28px rgba(255,51,207,.28);\n\n  animation:\n    orElegantGlow\n    2.6s ease-in-out infinite;\n}\n\n\n@keyframes orElegantGlow{\n\n  0%,\n  100%{\n    transform:scaleX(.45);\n    opacity:.65;\n  }\n\n  50%{\n    transform:scaleX(1);\n    opacity:1;\n  }\n\n}\n\n\n\/* =========================================================\n   RESPLANDOR INTERIOR AL REPRODUCIR\n========================================================= *\/\n\n.or247-player::after{\n  content:\"\";\n\n  position:absolute;\n\n  inset:0;\n\n  z-index:0;\n\n  pointer-events:none;\n\n  opacity:0;\n\n  background:\n\n    radial-gradient(\n      circle at 20% 40%,\n      rgba(0,179,255,.12),\n      transparent 33%\n    ),\n\n    radial-gradient(\n      circle at 80% 50%,\n      rgba(255,0,210,.09),\n      transparent 32%\n    );\n\n  transition:opacity .4s ease;\n}\n\n\n.or247-player.is-playing::after{\n  opacity:1;\n}\n\n\n\/* =========================================================\n   CABECERA PLAYER\n========================================================= *\/\n\n.or247-player-top{\n  position:relative;\n\n  z-index:2;\n\n  min-height:58px;\n\n  padding:\n    13px 22px;\n\n  display:flex;\n\n  align-items:center;\n  justify-content:space-between;\n\n  gap:15px;\n\n  background:\n    rgba(2,5,13,.57);\n\n  border-bottom:\n    1px solid rgba(255,255,255,.065);\n}\n\n\n.or247-status{\n  display:flex;\n\n  align-items:center;\n\n  gap:9px;\n\n  color:#bbc5ce;\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:1.3px;\n}\n\n\n.or247-dot{\n  width:8px;\n  height:8px;\n\n  border-radius:50%;\n\n  background:#64bb83;\n\n  box-shadow:\n    0 0 9px rgba(100,187,131,.58);\n}\n\n\n.or247-player.is-playing\n.or247-dot{\n\n  background:#d8bd7c;\n\n  box-shadow:\n\n    0 0 8px rgba(216,189,124,.95),\n\n    0 0 16px rgba(113,177,220,.55),\n\n    0 0 23px rgba(255,63,212,.28);\n\n  animation:\n    or247Pulse\n    1.5s ease-in-out infinite;\n}\n\n\n@keyframes or247Pulse{\n\n  0%,\n  100%{\n    transform:scale(.80);\n  }\n\n  50%{\n    transform:scale(1.25);\n  }\n\n}\n\n\n.or247-quality{\n  color:#d0b474;\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:1.5px;\n}\n\n\n\/* =========================================================\n   CUERPO PLAYER\n========================================================= *\/\n\n.or247-main{\n  position:relative;\n\n  z-index:2;\n\n  padding:\n    clamp(25px,4vw,45px);\n\n  display:grid;\n\n  grid-template-columns:\n    minmax(220px,.70fr)\n    minmax(0,1.30fr);\n\n  gap:\n    clamp(28px,4vw,55px);\n\n  align-items:center;\n}\n\n\n\/* =========================================================\n   CAR\u00c1TULA\n========================================================= *\/\n\n.or247-cover-frame{\n  position:relative;\n\n  width:100%;\n  max-width:350px;\n\n  aspect-ratio:1\/1;\n\n  margin:0 auto;\n\n  padding:10px;\n\n  border-radius:24px;\n\n  background:\n    linear-gradient(\n      145deg,\n      rgba(255,255,255,.08),\n      rgba(255,255,255,.015)\n    );\n\n  border:\n    1px solid rgba(255,255,255,.12);\n\n  box-shadow:\n    0 22px 48px rgba(0,0,0,.38);\n\n  transition:\n    box-shadow .45s ease,\n    border-color .45s ease;\n}\n\n\n.or247-player.is-playing\n.or247-cover-frame{\n\n  border-color:\n    rgba(218,191,126,.42);\n\n  box-shadow:\n\n    0 0 20px rgba(214,186,117,.16),\n\n    0 0 40px rgba(92,72,255,.14),\n\n    0 0 60px rgba(255,42,202,.09),\n\n    0 25px 50px rgba(0,0,0,.38);\n}\n\n\n.or247-cover-frame::after{\n  content:\"\";\n\n  position:absolute;\n\n  left:18%;\n  right:18%;\n\n  bottom:-1px;\n\n  height:2px;\n\n  opacity:.72;\n\n  background:\n    linear-gradient(\n      90deg,\n      transparent,\n      #d2b56f,\n      transparent\n    );\n}\n\n\n.or247-cover{\n  display:block;\n\n  width:100%;\n  height:100%;\n\n  object-fit:cover;\n\n  border-radius:17px;\n\n  background:#090d13;\n}\n\n\n\/* =========================================================\n   INFORMACI\u00d3N CANCI\u00d3N\n========================================================= *\/\n\n.or247-track-info{\n  min-width:0;\n}\n\n\n.or247-label{\n  margin-bottom:9px;\n\n  color:#d0b16b;\n\n  font-size:9px;\n  font-weight:900;\n\n  letter-spacing:2.4px;\n}\n\n\n.or247-title{\n  margin:0!important;\n\n  color:#f3f5f7!important;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif!important;\n\n  font-size:\n    clamp(31px,4vw,52px)!important;\n\n  line-height:1.08!important;\n\n  font-weight:500!important;\n\n  overflow-wrap:anywhere;\n}\n\n\n.or247-artist{\n  margin-top:8px;\n\n  color:#a4b4c3;\n\n  font-size:\n    clamp(15px,1.6vw,21px);\n\n  line-height:1.4;\n}\n\n\n.or247-copy{\n  max-width:650px;\n\n  margin:\n    21px 0\n    22px!important;\n\n  color:#99a6b3!important;\n\n  font-size:13px!important;\n\n  line-height:1.72!important;\n}\n\n\n\/* =========================================================\n   CONTROLES\n========================================================= *\/\n\n.or247-controls{\n  display:grid;\n\n  grid-template-columns:\n    minmax(170px,1fr)\n    58px\n    58px;\n\n  gap:10px;\n\n  max-width:475px;\n}\n\n\n.or247-play{\n  min-height:58px;\n\n  cursor:pointer;\n\n  border-radius:16px;\n\n  color:#081019;\n\n  background:\n    linear-gradient(\n      135deg,\n      #dbc78f,\n      #ab8c51\n    );\n\n  border:\n    1px solid rgba(255,236,190,.27);\n\n  box-shadow:\n    0 10px 24px rgba(0,0,0,.26);\n\n  font-size:10px;\n  font-weight:900;\n\n  letter-spacing:.6px;\n\n  transition:.25s ease;\n}\n\n\n.or247-player.is-playing\n.or247-play{\n\n  background:\n    linear-gradient(\n      135deg,\n      #ead8a6,\n      #bd9a59\n    );\n\n  box-shadow:\n\n    0 0 14px rgba(219,190,120,.30),\n\n    0 0 25px rgba(96,75,255,.16),\n\n    0 0 34px rgba(255,45,205,.10);\n}\n\n\n.or247-square{\n  width:58px;\n  height:58px;\n\n  cursor:pointer;\n\n  border-radius:16px;\n\n  color:#e0e6ec;\n\n  background:\n    linear-gradient(\n      180deg,\n      #171829,\n      #080812\n    );\n\n  border:\n    1px solid rgba(255,255,255,.12);\n\n  font-size:19px;\n}\n\n\n.or247-labels{\n  max-width:475px;\n\n  margin-top:5px;\n\n  display:grid;\n\n  grid-template-columns:\n    minmax(170px,1fr)\n    58px\n    58px;\n\n  gap:10px;\n\n  color:#636d7a;\n\n  text-align:center;\n\n  font-size:7px;\n  font-weight:900;\n}\n\n\n.or247-labels span:first-child{\n  visibility:hidden;\n}\n\n\n\/* =========================================================\n   VOLUMEN\n========================================================= *\/\n\n.or247-volume{\n  max-width:475px;\n\n  margin-top:12px;\n\n  display:flex;\n\n  align-items:center;\n\n  gap:11px;\n\n  padding:\n    11px 13px;\n\n  border-radius:13px;\n\n  background:\n    rgba(1,3,10,.58);\n\n  border:\n    1px solid rgba(255,255,255,.07);\n}\n\n\n.or247-volume span{\n  color:#798592;\n\n  font-size:8px;\n  font-weight:900;\n}\n\n\n.or247-volume input{\n  flex:1;\n\n  min-width:0;\n\n  accent-color:#c2a45e;\n}\n\n\n.or247-volume strong{\n  width:37px;\n\n  color:#cfb475;\n\n  text-align:right;\n\n  font-size:8px;\n}\n\n\n\/* =========================================================\n   VENTANA APARTE\n========================================================= *\/\n\n.or247-popup{\n  width:100%;\n  max-width:475px;\n\n  min-height:43px;\n\n  margin-top:10px;\n\n  cursor:pointer;\n\n  border-radius:999px;\n\n  color:#dce2e7;\n\n  background:\n    rgba(255,255,255,.035);\n\n  border:\n    1px solid rgba(255,255,255,.10);\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:.5px;\n}\n\n\n\/* =========================================================\n   PIE PLAYER\n========================================================= *\/\n\n.or247-player-bottom{\n  position:relative;\n\n  z-index:2;\n\n  min-height:48px;\n\n  padding:\n    11px 22px;\n\n  display:flex;\n\n  align-items:center;\n  justify-content:space-between;\n\n  gap:15px;\n\n  background:\n    rgba(2,4,11,.58);\n\n  border-top:\n    1px solid rgba(255,255,255,.06);\n\n  color:#798592;\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:1px;\n}\n\n\n\/* =========================================================\n   D\u00c9CADAS\n========================================================= *\/\n\n.or247-decades{\n  max-width:1180px;\n\n  margin:\n    18px auto\n    0;\n\n  display:flex;\n\n  align-items:center;\n  justify-content:center;\n\n  flex-wrap:wrap;\n\n  gap:8px;\n\n  padding:15px;\n\n  border-radius:18px;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(9,14,27,.70),\n      rgba(15,7,28,.67)\n    );\n\n  border:\n    1px solid rgba(255,255,255,.07);\n}\n\n\n.or247-decades span{\n  padding:\n    8px 14px;\n\n  border-radius:999px;\n\n  color:#a9b3be;\n\n  background:\n    rgba(255,255,255,.03);\n\n  border:\n    1px solid rgba(255,255,255,.065);\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:.7px;\n}\n\n\n.or247-decades .active-era{\n  color:#dcc17f;\n\n  border-color:\n    rgba(219,192,126,.26);\n\n  background:\n    rgba(191,157,87,.055);\n}\n\n\n\/* =========================================================\n   HORA MUNDIAL\n========================================================= *\/\n\n.or247-world{\n  max-width:1180px;\n\n  margin:\n    19px auto\n    0;\n\n  padding:\n    clamp(23px,3vw,32px);\n\n  border-radius:25px;\n\n  background:\n\n    radial-gradient(\n      circle at 90% 0%,\n      rgba(120,71,255,.08),\n      transparent 28%\n    ),\n\n    linear-gradient(\n      135deg,\n      rgba(10,16,29,.82),\n      rgba(16,7,29,.76)\n    );\n\n  border:\n    1px solid rgba(255,255,255,.08);\n\n  box-shadow:\n    0 18px 45px rgba(0,0,0,.22);\n}\n\n\n.or247-kicker{\n  color:#d0b16d;\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:2.2px;\n}\n\n\n.or247-world h2{\n  margin:\n    7px 0\n    6px!important;\n\n  color:#edf1f4!important;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif!important;\n\n  font-size:\n    clamp(24px,2.6vw,36px)!important;\n\n  font-weight:500!important;\n}\n\n\n.or247-world p{\n  margin:\n    0 0\n    20px!important;\n\n  color:#939eaa!important;\n\n  font-size:12px!important;\n\n  line-height:1.6!important;\n}\n\n\n.or247-clocks{\n  display:grid;\n\n  grid-template-columns:\n    repeat(5,1fr);\n\n  gap:10px;\n}\n\n\n.or247-clock{\n  padding:\n    16px 10px;\n\n  text-align:center;\n\n  border-radius:16px;\n\n  background:\n\n    linear-gradient(\n      145deg,\n      rgba(255,255,255,.038),\n      rgba(255,255,255,.016)\n    );\n\n  border:\n    1px solid rgba(255,255,255,.07);\n}\n\n\n.or247-clock small{\n  display:block;\n\n  margin-bottom:7px;\n\n  color:#76818d;\n\n  font-size:7px;\n  font-weight:900;\n\n  letter-spacing:1.1px;\n}\n\n\n.or247-clock strong{\n  display:block;\n\n  color:#eef2f5;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif;\n\n  font-size:\n    clamp(20px,2vw,27px);\n\n  font-weight:500;\n}\n\n\n.or247-clock span{\n  display:block;\n\n  margin-top:6px;\n\n  color:#c4a766;\n\n  font-size:7px;\n  font-weight:900;\n}\n\n\n\/* =========================================================\n   CONTENIDO INFERIOR\n========================================================= *\/\n\n.or247-content{\n  max-width:1180px;\n\n  margin:\n    19px auto\n    0;\n\n  display:grid;\n\n  grid-template-columns:\n    1fr 1fr;\n\n  gap:18px;\n}\n\n.or247-content > .or247-card:first-child{\n  grid-column:1 \/ -1;\n}\n\n\n.or247-card{\n  padding:\n    clamp(23px,3vw,32px);\n\n  border-radius:24px;\n\n  background:\n\n    radial-gradient(\n      circle at 95% 5%,\n      rgba(255,0,203,.055),\n      transparent 27%\n    ),\n\n    linear-gradient(\n      135deg,\n      rgba(10,16,29,.82),\n      rgba(15,7,27,.77)\n    );\n\n  border:\n    1px solid rgba(255,255,255,.08);\n\n  box-shadow:\n    0 18px 42px rgba(0,0,0,.21);\n}\n\n\n.or247-card small{\n  color:#cdb06b;\n\n  font-size:8px;\n  font-weight:900;\n\n  letter-spacing:2px;\n}\n\n\n.or247-card h2{\n  margin:\n    8px 0\n    12px!important;\n\n  color:#edf1f4!important;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif!important;\n\n  font-size:\n    clamp(22px,2.3vw,31px)!important;\n\n  font-weight:500!important;\n}\n\n\n.or247-card p{\n  margin:0!important;\n\n  color:#9ba6b1!important;\n\n  font-size:13px!important;\n\n  line-height:1.72!important;\n}\n\n\n\/* =========================================================\n   BOT\u00d3N MIXES ABAJO\n========================================================= *\/\n\n.or247-mixes{\n  min-height:44px;\n\n  display:inline-flex;\n\n  align-items:center;\n  justify-content:center;\n\n  margin-top:18px;\n\n  padding:\n    10px 19px;\n\n  border-radius:999px;\n\n  color:#f0f2f6!important;\n\n  text-decoration:none!important;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(78,62,180,.25),\n      rgba(205,40,166,.18)\n    );\n\n  border:\n    1px solid rgba(194,115,206,.27);\n\n  box-shadow:\n    0 0 19px rgba(136,69,255,.07);\n\n  font-size:9px;\n  font-weight:900;\n\n  transition:.2s ease;\n}\n\n\n.or247-mixes:hover{\n  color:#f4d5ef!important;\n\n  border-color:\n    rgba(223,124,215,.47);\n}\n\n\n\n\/* =========================================================\n   CUADRO OR MUSIC LIVE TV\n   INDEPENDIENTE DEL REPRODUCTOR DE RADIO\n========================================================= *\/\n\n.or247-tv-card{\n  position:relative;\n  overflow:hidden;\n\n  transition:\n    border-color .25s ease,\n    box-shadow .25s ease,\n    transform .25s ease,\n    background .25s ease;\n}\n\n.or247-tv-card::before{\n  content:\"\";\n\n  position:absolute;\n  inset:0;\n\n  pointer-events:none;\n\n  opacity:0;\n\n  background:\n    radial-gradient(\n      circle at 18% 20%,\n      rgba(65,211,255,.20),\n      transparent 34%\n    ),\n    radial-gradient(\n      circle at 82% 80%,\n      rgba(255,55,211,.22),\n      transparent 38%\n    );\n\n  transition:opacity .25s ease;\n}\n\n.or247-tv-card > *{\n  position:relative;\n  z-index:2;\n}\n\n.or247-tv-link{\n  min-height:44px;\n\n  display:inline-flex;\n\n  align-items:center;\n  justify-content:center;\n\n  gap:8px;\n\n  margin-top:18px;\n\n  padding:\n    10px 19px;\n\n  border-radius:999px;\n\n  color:#f0f2f6!important;\n\n  text-decoration:none!important;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(85,70,190,.22),\n      rgba(204,45,169,.17)\n    );\n\n  border:\n    1px solid rgba(197,119,210,.28);\n\n  box-shadow:\n    0 0 19px rgba(136,69,255,.07);\n\n  font-size:9px;\n  font-weight:900;\n\n  letter-spacing:.5px;\n\n  transition:\n    transform .22s ease,\n    filter .22s ease,\n    box-shadow .22s ease,\n    border-color .22s ease;\n}\n\n.or247-tv-link:hover{\n  transform:translateY(-1px);\n  filter:brightness(1.08);\n}\n\n.or247-tv-dot{\n  width:8px;\n  height:8px;\n\n  border-radius:50%;\n\n  background:#687482;\n\n  box-shadow:\n    0 0 8px rgba(104,116,130,.35);\n}\n\n\n\/* CUANDO HAY SE\u00d1AL AUDIOVISUAL *\/\n\n.or247-tv-card.is-on-air{\n  transform:translateY(-2px);\n\n  background:\n    radial-gradient(\n      circle at 90% 5%,\n      rgba(255,0,203,.10),\n      transparent 28%\n    ),\n    linear-gradient(\n      135deg,\n      rgba(8,24,41,.94),\n      rgba(38,8,45,.94)\n    );\n\n  border-color:\n    rgba(255,70,215,.72);\n\n  box-shadow:\n    0 0 0 1px rgba(255,76,220,.13),\n    0 0 27px rgba(255,47,210,.30),\n    0 0 50px rgba(68,210,255,.18),\n    0 22px 48px rgba(0,0,0,.29);\n\n  animation:\n    or247TvCardGlow\n    1.7s ease-in-out infinite;\n}\n\n.or247-tv-card.is-on-air::before{\n  opacity:1;\n}\n\n.or247-tv-card.is-on-air small{\n  color:#70e2ff;\n}\n\n.or247-tv-card.is-on-air .or247-tv-link{\n  color:#fff!important;\n\n  background:\n    linear-gradient(\n      135deg,\n      #6950d8,\n      #d231aa\n    );\n\n  border-color:\n    rgba(255,105,229,.76);\n\n  box-shadow:\n    0 0 20px rgba(255,48,209,.32);\n}\n\n.or247-tv-card.is-on-air .or247-tv-dot{\n  background:#ff47d7;\n\n  box-shadow:\n    0 0 8px #ff47d7,\n    0 0 18px rgba(255,71,215,.92);\n\n  animation:\n    or247TvDotPulse\n    .9s ease-in-out infinite;\n}\n\n@keyframes or247TvCardGlow{\n\n  0%,100%{\n    box-shadow:\n      0 0 0 1px rgba(255,76,220,.10),\n      0 0 19px rgba(255,47,210,.21),\n      0 0 36px rgba(68,210,255,.10),\n      0 22px 48px rgba(0,0,0,.27);\n  }\n\n  50%{\n    box-shadow:\n      0 0 0 1px rgba(255,76,220,.25),\n      0 0 33px rgba(255,47,210,.46),\n      0 0 60px rgba(68,210,255,.25),\n      0 24px 52px rgba(0,0,0,.33);\n  }\n\n}\n\n@keyframes or247TvDotPulse{\n\n  0%,100%{\n    transform:scale(.78);\n    opacity:.70;\n  }\n\n  50%{\n    transform:scale(1.28);\n    opacity:1;\n  }\n\n}\n\n\n\/* =========================================================\n   FRASE\n========================================================= *\/\n\n.or247-quote{\n  max-width:1180px;\n\n  margin:\n    20px auto\n    0;\n\n  padding:\n    22px 30px;\n\n  text-align:center;\n\n  border-top:\n    1px solid rgba(255,255,255,.065);\n\n  border-bottom:\n    1px solid rgba(255,255,255,.065);\n}\n\n\n.or247-quote p{\n  margin:0!important;\n\n  color:#bac2cb!important;\n\n  font-family:\n    Georgia,\n    \"Times New Roman\",\n    serif!important;\n\n  font-size:\n    clamp(16px,2vw,24px)!important;\n\n  line-height:1.55!important;\n\n  font-style:italic;\n}\n\n\n.or247-quote span{\n  display:block;\n\n  margin-top:9px;\n\n  color:#ac8e56;\n\n  font-family:Arial,Helvetica,sans-serif;\n\n  font-size:7px;\n\n  font-style:normal;\n\n  font-weight:900;\n\n  letter-spacing:2px;\n}\n\n\n\/* =========================================================\n   FOOTER\n========================================================= *\/\n\n.or247-foot{\n  max-width:1180px;\n\n  margin:\n    25px auto\n    0;\n\n  color:#626d7a;\n\n  text-align:center;\n\n  font-size:8px;\n\n  letter-spacing:1.3px;\n}\n\n\n\/* =========================================================\n   RESPONSIVE\n========================================================= *\/\n\n@media(max-width:980px){\n\n  .or247-clocks{\n    grid-template-columns:\n      repeat(3,1fr);\n  }\n\n}\n\n\n@media(max-width:780px){\n\n  .or247-main{\n    grid-template-columns:1fr;\n  }\n\n\n  .or247-track-info{\n    text-align:center;\n  }\n\n\n  .or247-cover-frame{\n    max-width:300px;\n  }\n\n\n  .or247-copy,\n  .or247-controls,\n  .or247-labels,\n  .or247-volume,\n  .or247-popup{\n    margin-left:auto!important;\n    margin-right:auto!important;\n  }\n\n\n  .or247-content{\n    grid-template-columns:1fr;\n  }\n\n}\n\n\n@media(max-width:620px){\n\n  .or247-wrap{\n    padding:\n      12px 10px\n      35px;\n  }\n\n\n  .or247-header{\n    min-height:112px;\n\n    padding:\n      16px 5px\n      18px;\n\n    flex-direction:column;\n\n    gap:14px;\n  }\n\n\n  .or247-domain{\n    font-size:31px;\n  }\n\n\n  .or247-home{\n    position:static;\n\n    transform:none;\n  }\n\n\n  .or247-intro h1{\n    font-size:43px!important;\n  }\n\n\n  .or247-info-strip{\n    grid-template-columns:1fr;\n\n    text-align:center;\n  }\n\n\n  .or247-date{\n    text-align:center;\n  }\n\n\n  .or247-player{\n    border-radius:21px;\n  }\n\n\n  .or247-main{\n    padding:\n      21px 15px\n      25px;\n  }\n\n\n  .or247-cover-frame{\n    max-width:255px;\n  }\n\n\n  .or247-title{\n    font-size:31px!important;\n  }\n\n\n  .or247-controls{\n    grid-template-columns:\n      1fr 52px 52px;\n  }\n\n\n  .or247-square{\n    width:52px;\n    height:52px;\n  }\n\n\n  .or247-labels{\n    grid-template-columns:\n      1fr 52px 52px;\n  }\n\n\n  .or247-player-bottom{\n    flex-direction:column;\n\n    text-align:center;\n  }\n\n\n  .or247-clocks{\n    grid-template-columns:\n      repeat(2,1fr);\n  }\n\n\n  .or247-bg-logo.logo-one{\n    width:430px;\n    height:430px;\n\n    left:-220px;\n  }\n\n\n  .or247-bg-logo.logo-two{\n    width:470px;\n    height:470px;\n\n    right:-250px;\n  }\n\n\n  .or247-watermark{\n    opacity:.035;\n\n    background-size:170px auto;\n  }\n\n}\n\n\n\n\/* OR INTERNAL HOME PREMIUM START *\/\n\n.or247-home{\n    position:relative !important;\n    display:inline-flex !important;\n    align-items:center !important;\n    justify-content:center !important;\n    gap:9px !important;\n\n    min-width:142px !important;\n    height:54px !important;\n    padding:0 20px !important;\n\n    border-radius:16px !important;\n    border:1px solid rgba(105,224,255,.40) !important;\n\n    background:\n      linear-gradient(\n        135deg,\n        rgba(10,17,35,.96),\n        rgba(23,14,42,.94)\n      ) !important;\n\n    color:#ffffff !important;\n    text-decoration:none !important;\n\n    font-size:12px !important;\n    line-height:1 !important;\n    font-weight:900 !important;\n    letter-spacing:.12em !important;\n\n    box-shadow:\n      0 14px 35px rgba(0,0,0,.38),\n      0 0 22px rgba(64,204,255,.10),\n      inset 0 1px 0 rgba(255,255,255,.08) !important;\n\n    backdrop-filter:blur(10px);\n    -webkit-backdrop-filter:blur(10px);\n\n    transition:\n      transform .20s ease,\n      border-color .20s ease,\n      box-shadow .20s ease,\n      background .20s ease !important;\n}\n\n.or247-home::after{\n    content:\"\";\n    position:absolute;\n    left:18px;\n    right:18px;\n    bottom:-1px;\n    height:1px;\n\n    background:\n      linear-gradient(\n        90deg,\n        transparent,\n        rgba(84,225,255,.85),\n        rgba(181,92,255,.60),\n        transparent\n      );\n\n    box-shadow:0 0 12px rgba(74,213,255,.30);\n    pointer-events:none;\n}\n\n.or247-home .or-home-svg{\n    width:20px !important;\n    height:20px !important;\n    display:block !important;\n    flex:0 0 20px !important;\n\n    color:#75e8ff !important;\n\n    filter:\n      drop-shadow(0 0 7px rgba(77,220,255,.30));\n}\n\n.or247-home .or-home-text{\n    color:#ffffff !important;\n    white-space:nowrap !important;\n}\n\n.or247-home:hover{\n    transform:translateY(-2px) !important;\n\n    border-color:rgba(116,232,255,.72) !important;\n\n    background:\n      linear-gradient(\n        135deg,\n        rgba(15,28,53,.98),\n        rgba(34,17,55,.97)\n      ) !important;\n\n    box-shadow:\n      0 18px 42px rgba(0,0,0,.45),\n      0 0 28px rgba(75,214,255,.16),\n      0 0 38px rgba(177,83,255,.08) !important;\n}\n\n.or247-home:active{\n    transform:translateY(0) scale(.98) !important;\n}\n\n@media(max-width:700px){\n    .or247-home{\n        min-width:124px !important;\n        height:48px !important;\n        padding:0 16px !important;\n        border-radius:14px !important;\n        font-size:11px !important;\n        gap:8px !important;\n    }\n\n    .or247-home .or-home-svg{\n        width:18px !important;\n        height:18px !important;\n        flex-basis:18px !important;\n    }\n}\n\n\/* OR INTERNAL HOME PREMIUM END *\/\n\n\n<\/style>\n\n\n\n<div class=\"or247-page\">\n\n\n<!-- =========================================================\n     ATM\u00d3SFERA \/ IDENTIDAD OR MUSIC LIVE\n========================================================= -->\n\n<div class=\"or247-texture\"><\/div>\n\n<div class=\"or247-watermark\"><\/div>\n\n\n<div class=\"or247-atmosphere a1\"><\/div>\n\n<div class=\"or247-atmosphere a2\"><\/div>\n\n<div class=\"or247-atmosphere a3\"><\/div>\n\n\n\n<img decoding=\"async\" class=\"or247-bg-logo logo-one\" src=\"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\" alt=\"\">\n\n\n<img decoding=\"async\" class=\"or247-bg-logo logo-two\" src=\"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\" alt=\"\">\n\n\n<img decoding=\"async\" class=\"or247-bg-logo logo-three\" src=\"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\" alt=\"\">\n\n\n\n<div class=\"or247-wrap\">\n\n\n<!-- =========================================================\n     CABECERA\n========================================================= -->\n\n<div class=\"or247-header\">\n\n\n  <div class=\"or247-domain\">\n\n    ORMUSICLIVE.COM\n\n  <\/div>\n\n\n  <a class=\"or247-home\" href=\"https:\/\/ormusiclive.com\/\">\n<svg class=\"or-home-svg\" viewBox=\"0 0 24 24\" aria-hidden=\"true\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.9\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n  <path d=\"M3 11.5 12 4l9 7.5\"><\/path>\n  <path d=\"M5.5 10.5V20h13v-9.5\"><\/path>\n  <path d=\"M9.5 20v-6h5v6\"><\/path>\n<\/svg>\n<span class=\"or-home-text\">INICIO<\/span>\n<\/a>\n\n\n<\/div>\n\n\n\n<!-- =========================================================\n     INTRO\n========================================================= -->\n\n<div class=\"or247-intro\">\n\n\n  <small>\n\n    OR MUSIC LIVE \u00b7 SE\u00d1AL PERMANENTE\n\n  <\/small>\n\n\n  <h1>\n\n    RADIO 24\/7\n\n  <\/h1>\n\n\n  <p>\n\n    Cl\u00e1sicos, grandes recuerdos\n    y sonidos contempor\u00e1neos.\n\n    Una selecci\u00f3n musical\n    en espa\u00f1ol e ingl\u00e9s\n    pensada para acompa\u00f1arte\n    durante todo el d\u00eda.\n\n  <\/p>\n\n\n<\/div>\n\n\n\n<!-- =========================================================\n     BIENVENIDA\n========================================================= -->\n\n<div class=\"or247-info-strip\">\n\n\n  <div class=\"or247-welcome\">\n\n\n    <small>\n\n      OR MUSIC LIVE\n\n    <\/small>\n\n\n    <strong id=\"or247Greeting\">\n\n      Bienvenido a nuestra se\u00f1al\n\n    <\/strong>\n\n\n  <\/div>\n\n\n  <div class=\"or247-date\" id=\"or247Date\">\n\n    &#8212;\n\n  <\/div>\n\n\n<\/div>\n\n\n\n<!-- =========================================================\n     REPRODUCTOR\n========================================================= -->\n\n<section class=\"or247-player\" id=\"or247Player\">\n\n\n  <div class=\"or247-glow-top\"><\/div>\n\n  <div class=\"or247-glow-bottom\"><\/div>\n\n\n\n  <!-- CABECERA PLAYER -->\n\n  <div class=\"or247-player-top\">\n\n\n    <div class=\"or247-status\">\n\n\n      <span class=\"or247-dot\"><\/span>\n\n\n      <span id=\"or247Status\">\n\n        SE\u00d1AL DISPONIBLE \u00b7 24 HORAS\n\n      <\/span>\n\n\n    <\/div>\n\n\n\n    <div class=\"or247-quality\">\n\n      192 KBPS \u00b7 OR MUSIC LIVE\n\n    <\/div>\n\n\n  <\/div>\n\n\n\n  <!-- CUERPO -->\n\n  <div class=\"or247-main\">\n\n\n    <!-- CAR\u00c1TULA -->\n\n    <div>\n\n\n      <div class=\"or247-cover-frame\">\n\n\n        <img decoding=\"async\" class=\"or247-cover\" id=\"or247Cover\" src=\"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\" alt=\"Car\u00e1tula actual\">\n\n\n        \n\n\n      <\/div>\n\n\n    <\/div>\n\n\n\n    <!-- CANCI\u00d3N -->\n\n    <div class=\"or247-track-info\">\n\n\n      <div class=\"or247-label\">\n\n        AHORA SUENA\n\n      <\/div>\n\n\n      <h2 class=\"or247-title\" id=\"or247Title\">\n\n        OR Music Live\n\n      <\/h2>\n\n\n      <div class=\"or247-artist\" id=\"or247Artist\">\n\n        Radio 24\/7\n\n      <\/div>\n\n\n\n      <p class=\"or247-copy\">\n\n        Una programaci\u00f3n amplia\n        que combina canciones memorables\n        de varias generaciones\n        con \u00e9xitos contempor\u00e1neos.\n\n        Para escuchar en casa,\n        durante el trabajo,\n        en el autom\u00f3vil\n        o simplemente cuando quieres\n        buena m\u00fasica.\n\n      <\/p>\n\n\n\n      <!-- CONTROLES -->\n\n      <div class=\"or247-controls\">\n\n\n        <button type=\"button\" class=\"or247-play\" id=\"or247Play\">\n\n          \u25b6 ESCUCHAR RADIO 24\/7\n\n        <\/button>\n\n\n        <button type=\"button\" class=\"or247-square\" id=\"or247Mute\" title=\"Silenciar\">\n\n          \ud83d\udd0a\n\n        <\/button>\n\n\n        <button type=\"button\" class=\"or247-square\" id=\"or247Reload\" title=\"Recargar\">\n\n          \u21bb\n\n        <\/button>\n\n\n      <\/div>\n\n\n\n      <div class=\"or247-labels\">\n\n        <span>PLAY<\/span>\n\n        <span>MUTE<\/span>\n\n        <span>RECARGAR<\/span>\n\n      <\/div>\n\n\n\n      <!-- VOLUMEN -->\n\n      <div class=\"or247-volume\">\n\n\n        <span>\n\n          VOLUMEN\n\n        <\/span>\n\n\n        <input id=\"or247Volume\" type=\"range\" min=\"0\" max=\"1\" step=\".01\" value=\".85\">\n\n\n        <strong id=\"or247VolumeText\">\n\n          85%\n\n        <\/strong>\n\n\n      <\/div>\n\n\n\n      <!-- POPUP -->\n\n      <button type=\"button\" class=\"or247-popup\" id=\"or247Popup\">\n\n        \u2197 ABRIR RADIO 24\/7 EN VENTANA APARTE\n\n      <\/button>\n\n\n    <\/div>\n\n\n  <\/div>\n\n\n\n  <!-- PIE -->\n\n  <div class=\"or247-player-bottom\">\n\n\n    <span id=\"or247Connection\">\n\n      LISTO PARA ESCUCHAR\n\n    <\/span>\n\n\n    <span id=\"or247Caracas\">\n\n      CARACAS \u00b7 &#8211;:&#8211;\n\n    <\/span>\n\n\n  <\/div>\n\n\n<\/section>\n\n\n\n<!-- =========================================================\n     IDENTIDAD MUSICAL\n========================================================= -->\n\n<div class=\"or247-decades\">\n\n\n  <span>\n\n    70s\n\n  <\/span>\n\n\n  <span class=\"active-era\">\n\n    80s\n\n  <\/span>\n\n\n  <span class=\"active-era\">\n\n    90s\n\n  <\/span>\n\n\n  <span>\n\n    2000s\n\n  <\/span>\n\n\n  <span>\n\n    POP\n\n  <\/span>\n\n\n  <span>\n\n    ROCK\n\n  <\/span>\n\n\n  <span>\n\n    BALADAS\n\n  <\/span>\n\n\n  <span>\n\n    DANCE\n\n  <\/span>\n\n\n  <span>\n\n    LATINO\n\n  <\/span>\n\n\n  <span>\n\n    ACTUALIDAD\n\n  <\/span>\n\n\n<\/div>\n\n\n\n<!-- =========================================================\n     HORARIOS\n========================================================= -->\n\n<section class=\"or247-world\">\n\n\n  <span class=\"or247-kicker\">\n\n    EL MUNDO A ESTA HORA\n\n  <\/span>\n\n\n  <h2>\n\n    OR Music Live sin fronteras\n\n  <\/h2>\n\n\n  <p>\n\n    Nuestra se\u00f1al est\u00e1 disponible\n    las 24 horas.\n\n    Consulta la hora local\n    en algunas de las ciudades\n    desde donde puedes acompa\u00f1arnos.\n\n  <\/p>\n\n\n\n  <div class=\"or247-clocks\">\n\n\n    <div class=\"or247-clock\">\n\n      <small>\n\n        CARACAS\n\n      <\/small>\n\n\n      <strong id=\"clockCaracas\">\n\n        &#8211;:&#8211;\n\n      <\/strong>\n\n\n      <span>\n\n        VENEZUELA\n\n      <\/span>\n\n    <\/div>\n\n\n\n    <div class=\"or247-clock\">\n\n      <small>\n\n        MIAMI \/ NUEVA YORK\n\n      <\/small>\n\n\n      <strong id=\"clockMiami\">\n\n        &#8211;:&#8211;\n\n      <\/strong>\n\n\n      <span>\n\n        ESTADOS UNIDOS\n\n      <\/span>\n\n    <\/div>\n\n\n\n    <div class=\"or247-clock\">\n\n      <small>\n\n        CIUDAD DE M\u00c9XICO\n\n      <\/small>\n\n\n      <strong id=\"clockMexico\">\n\n        &#8211;:&#8211;\n\n      <\/strong>\n\n\n      <span>\n\n        M\u00c9XICO\n\n      <\/span>\n\n    <\/div>\n\n\n\n    <div class=\"or247-clock\">\n\n      <small>\n\n        MADRID\n\n      <\/small>\n\n\n      <strong id=\"clockMadrid\">\n\n        &#8211;:&#8211;\n\n      <\/strong>\n\n\n      <span>\n\n        ESPA\u00d1A\n\n      <\/span>\n\n    <\/div>\n\n\n\n    <div class=\"or247-clock\">\n\n      <small>\n\n        BUENOS AIRES\n\n      <\/small>\n\n\n      <strong id=\"clockBuenos\">\n\n        &#8211;:&#8211;\n\n      <\/strong>\n\n\n      <span>\n\n        ARGENTINA\n\n      <\/span>\n\n    <\/div>\n\n\n  <\/div>\n\n\n<\/section>\n\n\n\n<!-- =========================================================\n     CONTENIDO\n========================================================= -->\n\n<div class=\"or247-content\">\n\n\n  <section class=\"or247-card\">\n\n\n    <small>\n\n      ADULTO CONTEMPOR\u00c1NEO\n\n    <\/small>\n\n\n    <h2>\n\n      M\u00fasica que forma parte de nuestra historia\n\n    <\/h2>\n\n\n    <p>\n\n      Hay canciones que identifican\n      momentos, lugares y generaciones.\n\n      Radio 24\/7 re\u00fane m\u00fasica\n      de los a\u00f1os 70, 80, 90 y 2000\n      junto a producciones actuales,\n      creando una se\u00f1al variada,\n      reconocible y agradable\n      para escuchar durante todo el d\u00eda.\n\n    <\/p>\n\n\n  <\/section>\n\n\n\n  <section class=\"or247-card\">\n\n\n    <small>\n\n      DOS SE\u00d1ALES \u00b7 UNA MISMA RADIO\n\n    <\/small>\n\n\n    <h2>\n\n      \u00bfQuieres cambiar de ambiente?\n\n    <\/h2>\n\n\n    <p>\n\n      Si prefieres sesiones continuas,\n      DJs, minitecas,\n      discplay y mezclas especiales,\n      tambi\u00e9n puedes entrar\n      a nuestro canal Mixes &amp; DJs.\n\n    <\/p>\n\n\n    <a class=\"or247-mixes\" href=\"https:\/\/ormusiclive.com\/?page_id=409\">\n\n      \ud83c\udfa7 CAMBIAR A MIXES &amp; DJS\n\n    <\/a>\n\n\n  <\/section>\n\n\n\n  <section class=\"or247-card or247-tv-card\" id=\"or247TvCard\">\n\n\n    <small id=\"or247TvEyebrow\">\n\n      SALA AUDIOVISUAL\n\n    <\/small>\n\n\n    <h2>\n\n      \u00bfQuieres ver OR Music Live TV?\n\n    <\/h2>\n\n\n    <p>\n\n      Accede a transmisiones,\n      programas, entrevistas,\n      videos y contenido audiovisual\n      de OR Music Live.\n\n    <\/p>\n\n\n    <a class=\"or247-tv-link\" href=\"https:\/\/ormusiclive.com\/?page_id=411\">\n\n      <span class=\"or247-tv-dot\"><\/span>\n\n      <span id=\"or247TvLinkText\">\n        \ud83d\udcfa IR A OR MUSIC LIVE TV\n      <\/span>\n\n    <\/a>\n\n\n  <\/section>\n\n\n<\/div>\n\n\n\n<!-- =========================================================\n     FRASE\n========================================================= -->\n\n<div class=\"or247-quote\">\n\n\n  <p>\n\n    \u201cHay canciones que no envejecen.\n    Simplemente esperan\n    el momento perfecto\n    para volver a sonar.\u201d\n\n  <\/p>\n\n\n  <span>\n\n    OR MUSIC LIVE\n\n  <\/span>\n\n\n<\/div>\n\n\n\n<div class=\"or247-foot\">\n\n  OR MUSIC LIVE \u00b7\n  RADIO 24\/7 \u00b7\n  CARACAS \u00b7\n  ORMUSICLIVE.COM\n\n<\/div>\n\n\n<\/div>\n\n<\/div>\n\n\n\n<!-- =========================================================\n     AUDIO\n========================================================= -->\n\n<audio id=\"or247Audio\" src=\"https:\/\/radio.ormusiclive.com\/listen\/ormusiclive\/radio.mp3\" preload=\"metadata\" playsinline=\"\">\n<\/audio>\n\n\n\n<script>\n\ndocument.addEventListener(\n\"DOMContentLoaded\",\nfunction(){\n\n\n\/* =========================================================\n   CONFIGURACI\u00d3N\n========================================================= *\/\n\nconst STREAM =\n\"https:\/\/radio.ormusiclive.com\/listen\/ormusiclive\/radio.mp3\";\n\n\nconst API =\n\"https:\/\/radio.ormusiclive.com\/api\/nowplaying\/ormusiclive\";\n\n\nconst FALLBACK =\n\"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\";\n\n\n\n\/* =========================================================\n   ELEMENTOS\n========================================================= *\/\n\nconst audio =\ndocument.getElementById(\"or247Audio\");\n\n\nconst player =\ndocument.getElementById(\"or247Player\");\n\n\nconst play =\ndocument.getElementById(\"or247Play\");\n\n\nconst mute =\ndocument.getElementById(\"or247Mute\");\n\n\nconst reload =\ndocument.getElementById(\"or247Reload\");\n\n\nconst volume =\ndocument.getElementById(\"or247Volume\");\n\n\nconst volumeText =\ndocument.getElementById(\"or247VolumeText\");\n\n\nconst popup =\ndocument.getElementById(\"or247Popup\");\n\n\nconst status =\ndocument.getElementById(\"or247Status\");\n\n\nconst connection =\ndocument.getElementById(\"or247Connection\");\n\n\nconst cover =\ndocument.getElementById(\"or247Cover\");\n\n\nconst title =\ndocument.getElementById(\"or247Title\");\n\n\nconst artist =\ndocument.getElementById(\"or247Artist\");\n\n\n\naudio.volume =\n0.85;\n\n\n\n\/* =========================================================\n   PLAY\n========================================================= *\/\n\nplay.addEventListener(\n\"click\",\nasync function(){\n\n\nif(audio.paused){\n\n\nstatus.textContent =\n\"CONECTANDO...\";\n\n\nconnection.textContent =\n\"CONECTANDO SE\u00d1AL\";\n\n\ntry{\n\n\nawait audio.play();\n\n\n}\ncatch(error){\n\n\nstatus.textContent =\n\"PULSA RECARGAR\";\n\n\nconnection.textContent =\n\"NO SE PUDO INICIAR\";\n\n\n}\n\n\n}\nelse{\n\n\naudio.pause();\n\n\n}\n\n\n}\n);\n\n\n\n\/* =========================================================\n   MUTE\n========================================================= *\/\n\nmute.addEventListener(\n\"click\",\nfunction(){\n\n\naudio.muted =\n!audio.muted;\n\n\nupdateMute();\n\n\n}\n);\n\n\n\nfunction updateMute(){\n\n\nif(\naudio.muted ||\naudio.volume === 0\n){\n\n\nmute.textContent =\n\"\ud83d\udd07\";\n\n\n}\nelse{\n\n\nmute.textContent =\n\"\ud83d\udd0a\";\n\n\n}\n\n\n}\n\n\n\n\/* =========================================================\n   VOLUMEN\n========================================================= *\/\n\nvolume.addEventListener(\n\"input\",\nfunction(){\n\n\nconst value =\nparseFloat(\nthis.value\n);\n\n\naudio.volume =\nvalue;\n\n\nif(value > 0){\n\n\naudio.muted =\nfalse;\n\n\n}\n\n\nvolumeText.textContent =\nMath.round(\nvalue * 100\n)\n+\n\"%\";\n\n\nupdateMute();\n\n\n}\n);\n\n\n\n\/* =========================================================\n   RECARGAR\n========================================================= *\/\n\nreload.addEventListener(\n\"click\",\nasync function(){\n\n\nconst wasPlaying =\n!audio.paused;\n\n\naudio.pause();\n\n\nstatus.textContent =\n\"RECARGANDO...\";\n\n\nconnection.textContent =\n\"RECARGANDO SE\u00d1AL\";\n\n\naudio.src =\nSTREAM\n+\n\"?t=\"\n+\nDate.now();\n\n\naudio.load();\n\n\nif(wasPlaying){\n\n\ntry{\n\n\nawait audio.play();\n\n\n}\ncatch(error){}\n\n\n}\n\n\nsetTimeout(\nfunction(){\n\n\nif(audio.paused){\n\n\nstatus.textContent =\n\"SE\u00d1AL DISPONIBLE \u00b7 24 HORAS\";\n\n\nconnection.textContent =\n\"LISTO PARA ESCUCHAR\";\n\n\n}\n\n\n},\n1000\n);\n\n\n}\n);\n\n\n\n\/* =========================================================\n   ESTADOS\n========================================================= *\/\n\naudio.addEventListener(\n\"playing\",\nfunction(){\n\n\nplayer.classList.add(\n\"is-playing\"\n);\n\n\nplay.textContent =\n\"\u275a\u275a PAUSAR RADIO\";\n\n\nstatus.textContent =\n\"REPRODUCIENDO \u00b7 OR MUSIC LIVE\";\n\n\nconnection.textContent =\n\"SE\u00d1AL CONECTADA\";\n\n\n}\n);\n\n\n\naudio.addEventListener(\n\"pause\",\nfunction(){\n\n\nplayer.classList.remove(\n\"is-playing\"\n);\n\n\nplay.textContent =\n\"\u25b6 ESCUCHAR RADIO 24\/7\";\n\n\nif(audio.currentTime > 0){\n\n\nstatus.textContent =\n\"SE\u00d1AL EN PAUSA\";\n\n\nconnection.textContent =\n\"PAUSA\";\n\n\n}\n\n\n}\n);\n\n\n\naudio.addEventListener(\n\"waiting\",\nfunction(){\n\n\nstatus.textContent =\n\"CONECTANDO...\";\n\n\nconnection.textContent =\n\"CARGANDO SE\u00d1AL\";\n\n\n}\n);\n\n\n\naudio.addEventListener(\n\"canplay\",\nfunction(){\n\n\nif(audio.paused){\n\n\nstatus.textContent =\n\"SE\u00d1AL DISPONIBLE \u00b7 24 HORAS\";\n\n\nconnection.textContent =\n\"LISTO PARA ESCUCHAR\";\n\n\n}\n\n\n}\n);\n\n\n\naudio.addEventListener(\n\"error\",\nfunction(){\n\n\nplayer.classList.remove(\n\"is-playing\"\n);\n\n\nplay.textContent =\n\"\u25b6 ESCUCHAR RADIO 24\/7\";\n\n\nstatus.textContent =\n\"PULSA RECARGAR\";\n\n\nconnection.textContent =\n\"REVISAR CONEXI\u00d3N\";\n\n\n}\n);\n\n\n\n\/* =========================================================\n   AHORA SUENA\n========================================================= *\/\n\nasync function updateNowPlaying(){\n\n\ntry{\n\n\nconst response =\nawait fetch(\nAPI,\n{\ncache:\"no-store\"\n}\n);\n\n\nif(!response.ok){\nreturn;\n}\n\n\nconst data =\nawait response.json();\n\n\nconst song =\ndata.now_playing &&\ndata.now_playing.song\n?\ndata.now_playing.song\n:\n{};\n\n\ntitle.textContent =\nsong.title ||\n\"OR Music Live\";\n\n\nartist.textContent =\nsong.artist ||\n\"Radio 24\/7\";\n\n\nconst art =\nsong.art ||\nFALLBACK;\n\n\nif(\ncover.src !== art\n){\n\n\ncover.src =\nart;\n\n\n}\n\n\n}\ncatch(error){}\n\n\n}\n\n\n\ncover.addEventListener(\n\"error\",\nfunction(){\n\n\nthis.src =\nFALLBACK;\n\n\n}\n);\n\n\n\nupdateNowPlaying();\n\n\nsetInterval(\nupdateNowPlaying,\n15000\n);\n\n\n\n\/* =========================================================\n   SALUDO Y FECHA\n========================================================= *\/\n\nfunction updateWelcome(){\n\n\nconst now =\nnew Date();\n\n\nconst hourText =\nnew Intl.DateTimeFormat(\n\"en-US\",\n{\ntimeZone:\"America\/Caracas\",\nhour:\"2-digit\",\nhour12:false\n}\n).format(now);\n\n\nconst hour =\nparseInt(\nhourText,\n10\n);\n\n\nlet greeting =\n\"Bienvenido a nuestra se\u00f1al\";\n\n\nif(\nhour >= 5 &&\nhour < 12\n){\n\n\ngreeting =\n\"Buenos d\u00edas \u00b7 Buena m\u00fasica para comenzar\";\n\n\n}\nelse if(\nhour >= 12 &&\nhour < 18\n){\n\n\ngreeting =\n\"Buenas tardes \u00b7 Sigue disfrutando tu d\u00eda\";\n\n\n}\nelse{\n\n\ngreeting =\n\"Buenas noches \u00b7 M\u00fasica para acompa\u00f1arte\";\n\n\n}\n\n\ndocument.getElementById(\n\"or247Greeting\"\n).textContent =\ngreeting;\n\n\n\ndocument.getElementById(\n\"or247Date\"\n).textContent =\nnew Intl.DateTimeFormat(\n\"es-VE\",\n{\ntimeZone:\"America\/Caracas\",\nweekday:\"long\",\nday:\"numeric\",\nmonth:\"long\",\nyear:\"numeric\"\n}\n).format(\nnow\n);\n\n\n}\n\n\n\n\/* =========================================================\n   RELOJES\n========================================================= *\/\n\nfunction timeInZone(zone){\n\n\nreturn new Intl.DateTimeFormat(\n\"es-ES\",\n{\ntimeZone:zone,\nhour:\"2-digit\",\nminute:\"2-digit\",\nhour12:false\n}\n).format(\nnew Date()\n);\n\n\n}\n\n\n\nfunction updateClocks(){\n\n\nconst caracas =\ntimeInZone(\n\"America\/Caracas\"\n);\n\n\ndocument.getElementById(\n\"clockCaracas\"\n).textContent =\ncaracas;\n\n\ndocument.getElementById(\n\"clockMiami\"\n).textContent =\ntimeInZone(\n\"America\/New_York\"\n);\n\n\ndocument.getElementById(\n\"clockMexico\"\n).textContent =\ntimeInZone(\n\"America\/Mexico_City\"\n);\n\n\ndocument.getElementById(\n\"clockMadrid\"\n).textContent =\ntimeInZone(\n\"Europe\/Madrid\"\n);\n\n\ndocument.getElementById(\n\"clockBuenos\"\n).textContent =\ntimeInZone(\n\"America\/Argentina\/Buenos_Aires\"\n);\n\n\ndocument.getElementById(\n\"or247Caracas\"\n).textContent =\n\"CARACAS \u00b7 \"\n+\ncaracas;\n\n\n}\n\n\n\nupdateWelcome();\n\nupdateClocks();\n\n\nsetInterval(\nupdateWelcome,\n60000\n);\n\n\nsetInterval(\nupdateClocks,\n30000\n);\n\n\n\n\/* =========================================================\n   VENTANA APARTE\n========================================================= *\/\n\npopup.addEventListener(\n\"click\",\nfunction(){\n\n\naudio.pause();\n\n\nconst win =\nwindow.open(\nSTREAM,\n\"ORMusicLive247\"\n);\n\n\nif(!win){\n\n\nalert(\n\"Permite las ventanas emergentes para abrir la se\u00f1al.\"\n);\n\n\n}\n\n\n}\n);\n\n\n\nupdateMute();\n\n\n});\n\n<\/script>\n\n<script>\n(function(){\n\n  const VIDEO_STATUS_URL =\n  \"https:\/\/video.ormusiclive.com:8888\/live\/index.m3u8\";\n\n  function setTvVisual(active){\n\n    const card =\n    document.getElementById(\"or247TvCard\");\n\n    const eyebrow =\n    document.getElementById(\"or247TvEyebrow\");\n\n    const text =\n    document.getElementById(\"or247TvLinkText\");\n\n    if(\n      !card ||\n      !eyebrow ||\n      !text\n    ){\n      return;\n    }\n\n    if(active){\n\n      card.classList.add(\n        \"is-on-air\"\n      );\n\n      eyebrow.textContent =\n      \"TRANSMISI\u00d3N ACTIVA\";\n\n      text.textContent =\n      \"\u25cf AL AIRE AHORA \u00b7 VER OR MUSIC LIVE TV\";\n\n    }\n    else{\n\n      card.classList.remove(\n        \"is-on-air\"\n      );\n\n      eyebrow.textContent =\n      \"SALA AUDIOVISUAL\";\n\n      text.textContent =\n      \"\ud83d\udcfa IR A OR MUSIC LIVE TV\";\n\n    }\n\n  }\n\n\n  async function checkTv(){\n\n    try{\n\n      const response =\n      await fetch(\n        VIDEO_STATUS_URL +\n        \"?check=\" +\n        Date.now(),\n        {\n          cache:\"no-store\"\n        }\n      );\n\n      if(!response.ok){\n\n        setTvVisual(false);\n\n        return;\n\n      }\n\n      const body =\n      await response.text();\n\n      setTvVisual(\n        body.indexOf(\"#EXTM3U\") !== -1\n      );\n\n    }\n    catch(error){\n\n      setTvVisual(false);\n\n    }\n\n  }\n\n\n  function startTvDetector(){\n\n    checkTv();\n\n    setInterval(\n      checkTv,\n      10000\n    );\n\n  }\n\n\n  if(\n    document.readyState === \"loading\"\n  ){\n\n    document.addEventListener(\n      \"DOMContentLoaded\",\n      startTvDetector\n    );\n\n  }\n  else{\n\n    startTvDetector();\n\n  }\n\n})();\n<\/script>\n\n\n\n<style id=\"or-global-site-background-logo\">\n\/* OR-GLOBAL-SITE-BACKGROUND-LOGO *\/<\/p>\n<p>body{<br \/>\n  background-color:#050607!important;<br \/>\n}<\/p>\n<p>body::before{<br \/>\n  content:\"\";<br \/>\n  position:fixed;<br \/>\n  inset:0;<br \/>\n  background-image:url('https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png');<br \/>\n  background-repeat:no-repeat;<br \/>\n  background-position:center 140px;<br \/>\n  background-size:min(1400px, 92vw);<br \/>\n  opacity:0.18;<br \/>\n  pointer-events:none;<br \/>\n  z-index:0;<br \/>\n}<\/p>\n<p>.wp-site-blocks,<br \/>\n.wp-block-post-content,<br \/>\n.entry-content,<br \/>\nmain,<br \/>\n.site-main,<br \/>\n.site-content,<br \/>\n.site,<br \/>\nheader,<br \/>\nfooter{<br \/>\n  position:relative;<br \/>\n  z-index:1;<br \/>\n}<\/p>\n<p>@media (max-width: 768px){<br \/>\n  body::before{<br \/>\n    background-size:115vw;<br \/>\n    background-position:center 100px;<br \/>\n    opacity:0.14;<br \/>\n  }<br \/>\n}<\/p>\n<p>\/* OR INTERNAL HEADER SPACING 10 *\/<\/p>\n<p>.or247-header{<br \/>\n    width:100% !important;<br \/>\n    display:flex !important;<br \/>\n    align-items:center !important;<br \/>\n    justify-content:space-between !important;<br \/>\n    gap:40px !important;<br \/>\n}<\/p>\n<p>.or247-domain{<br \/>\n    flex:1 1 auto !important;<br \/>\n    min-width:0 !important;<br \/>\n    margin:0 !important;<br \/>\n}<\/p>\n<p>.or247-home{<br \/>\n    position:relative !important;<br \/>\n    top:auto !important;<br \/>\n    right:auto !important;<br \/>\n    left:auto !important;<\/p>\n<p>    flex:0 0 auto !important;<br \/>\n    margin-left:auto !important;<br \/>\n    margin-right:0 !important;<br \/>\n}<\/p>\n<p>@media(max-width:900px){<br \/>\n    .or247-header{<br \/>\n        gap:20px !important;<br \/>\n    }<\/p>\n<p>    .or247-domain{<br \/>\n        font-size:clamp(28px,6vw,48px) !important;<br \/>\n    }<br \/>\n}<\/p>\n<p>@media(max-width:650px){<br \/>\n    .or247-header{<br \/>\n        align-items:flex-start !important;<br \/>\n        flex-direction:column !important;<br \/>\n        gap:16px !important;<br \/>\n    }<\/p>\n<p>    .or247-home{<br \/>\n        align-self:flex-end !important;<br \/>\n    }<br \/>\n}<\/p>\n<p>\/* OR HOME BUTTON FIXED LOWER 10 *\/<\/p>\n<p>.or247-home{<br \/>\n    transform:translateY(12px) !important;<br \/>\n}<\/p>\n<p>.or247-home:hover{<br \/>\n    transform:translateY(12px) !important;<br \/>\n}<\/p>\n<p>.or247-home:active{<br \/>\n    transform:translateY(12px) scale(.98) !important;<br \/>\n}<\/p>\n<p>@media(max-width:700px){<br \/>\n    .or247-home{<br \/>\n        transform:translateY(7px) !important;<br \/>\n    }<\/p>\n<p>    .or247-home:hover{<br \/>\n        transform:translateY(7px) !important;<br \/>\n    }<\/p>\n<p>    .or247-home:active{<br \/>\n        transform:translateY(7px) scale(.98) !important;<br \/>\n    }<br \/>\n}<\/p>\n<\/style>\n\n\n<style id=\"or-radio247-multimedia-v2-style\">\n\n\/*\n OR_RADIO247_MULTIMEDIA_V2_20260915\n\n La car\u00e1tula normal sigue siendo administrada\n por el Now Playing existente.\n\n V2 solamente toma esta pantalla cuando\n WEB \u2192 RADIO est\u00e1 habilitado.\n*\/\n\n\n@media(min-width:781px){\n\n    .or247-main{\n        grid-template-columns:\n            minmax(390px,1fr)\n            minmax(0,1.08fr)\n            !important;\n\n        gap:\n            clamp(28px,3.5vw,48px)\n            !important;\n    }\n\n}\n\n\n.or247-cover-frame{\n\n    width:100% !important;\n\n    max-width:540px !important;\n\n    aspect-ratio:16 \/ 9 !important;\n\n    padding:10px !important;\n\n    overflow:hidden !important;\n\n    isolation:isolate;\n\n    display:flex !important;\n\n    align-items:center !important;\n\n    justify-content:center !important;\n\n    background:\n        linear-gradient(\n            145deg,\n            rgba(8,12,18,.97),\n            rgba(3,6,11,.99)\n        )\n        !important;\n}\n\n\n\/*\n Fondo OR Music.\n Una sola imagen est\u00e1tica, tenue y oscura.\n No se procesa video ni Canvas.\n*\/\n\n.or247-cover-frame::before{\n\n    content:\"\";\n\n    position:absolute;\n\n    inset:10px;\n\n    z-index:0;\n\n    border-radius:17px;\n\n    background-image:\n        linear-gradient(\n            rgba(2,5,10,.58),\n            rgba(2,5,10,.72)\n        ),\n        url(\n            \"https:\/\/ormusiclive.com\/wp-content\/uploads\/2026\/08\/or-music-logo-final.png\"\n        );\n\n    background-repeat:\n        no-repeat,\n        no-repeat;\n\n    background-position:\n        center,\n        center;\n\n    background-size:\n        cover,\n        115% auto;\n\n    opacity:.42;\n\n    transform:scale(1.025);\n}\n\n\n\/*\n Car\u00e1tula real del tema.\n Cuadrada, n\u00edtida, sin deformaci\u00f3n.\n*\/\n\n#or247Cover{\n\n    position:relative !important;\n\n    z-index:2 !important;\n\n    display:block !important;\n\n    width:auto !important;\n\n    height:84% !important;\n\n    max-width:84% !important;\n\n    aspect-ratio:1 \/ 1 !important;\n\n    object-fit:cover !important;\n\n    flex:none !important;\n\n    border-radius:16px !important;\n\n    background:#080c12 !important;\n\n    box-shadow:\n        0 18px 38px rgba(0,0,0,.52),\n        0 0 0 1px rgba(255,255,255,.10),\n        0 0 26px rgba(210,181,111,.08)\n        !important;\n}\n\n\n\/*\n Capa V2.\n Solo aparece al activar WEB \u2192 RADIO.\n*\/\n\n#or247MultimediaV2{\n\n    position:absolute;\n\n    inset:0;\n\n    z-index:60;\n\n    display:none;\n\n    overflow:hidden;\n\n    border-radius:24px;\n\n    background:#05070b;\n}\n\n\n#or247MultimediaV2.is-active{\n\n    display:block;\n}\n\n\n#or247MultimediaV2 img,\n#or247MultimediaV2 video,\n#or247MultimediaV2 mux-player{\n\n    display:block;\n\n    width:100%;\n\n    height:100%;\n\n    object-fit:contain;\n\n    background:#05070b;\n}\n\n\n@media(max-width:780px){\n\n    .or247-cover-frame{\n\n        max-width:560px !important;\n    }\n\n}\n\n\n@media(max-width:620px){\n\n    .or247-cover-frame{\n\n        width:100% !important;\n\n        max-width:100% !important;\n    }\n\n\n    #or247Cover{\n\n        height:82% !important;\n\n        max-width:82% !important;\n    }\n\n}\n\n<\/style>\n\n\n<script>\n\n\/* OR_RADIO247_MULTIMEDIA_V2_MUX_PLAYER_20260917 *\/\n\n(function(){\n\n    const API =\n        \"https:\/\/video.ormusiclive.com:9444\/api\/multimedia\/output?platform=web&screen=radio\";\n\n    const V2_BASE =\n        \"https:\/\/video.ormusiclive.com:9444\";\n\n    const MUX_PLAYER_SRC =\n        \"https:\/\/cdn.jsdelivr.net\/npm\/@mux\/mux-player@3.13.3\";\n\n\n    let signature = \"\";\n\n    let sequenceToken = 0;\n\n    let phaseTimer = null;\n\n    let muxPlayerPromise = null;\n\n    let layer = null;\n\n\n    function getFrame(){\n\n        return document.querySelector(\n            \".or247-cover-frame\"\n        );\n    }\n\n\n    function ensureLayer(){\n\n        const frame =\n            getFrame();\n\n        if(!frame){\n            return null;\n        }\n\n\n        if(\n            layer\n            &&\n            layer.isConnected\n        ){\n            return layer;\n        }\n\n\n        layer =\n            document.createElement(\n                \"div\"\n            );\n\n        layer.id =\n            \"or247MultimediaV2\";\n\n        layer.setAttribute(\n            \"aria-hidden\",\n            \"true\"\n        );\n\n        frame.appendChild(\n            layer\n        );\n\n        return layer;\n    }\n\n\n    function stopMedia(){\n\n        if(phaseTimer){\n\n            clearTimeout(\n                phaseTimer\n            );\n\n            phaseTimer = null;\n        }\n\n\n        if(layer){\n\n            const media =\n                layer.querySelector(\n                    \"video, mux-player\"\n                );\n\n            if(media){\n\n                try{\n                    media.pause();\n                }catch(e){}\n\n                if(\n                    media.tagName\n                    &&\n                    media.tagName.toLowerCase() ===\n                    \"video\"\n                ){\n\n                    try{\n                        media.removeAttribute(\n                            \"src\"\n                        );\n\n                        media.load();\n\n                    }catch(e){}\n                }\n            }\n        }\n    }\n\n\n    function normalMode(){\n\n        sequenceToken += 1;\n\n        stopMedia();\n\n        const screen =\n            ensureLayer();\n\n        if(!screen){\n            return;\n        }\n\n        screen.classList.remove(\n            \"is-active\"\n        );\n\n        screen.setAttribute(\n            \"aria-hidden\",\n            \"true\"\n        );\n\n        screen.innerHTML = \"\";\n    }\n\n\n    function activateLayer(){\n\n        const screen =\n            ensureLayer();\n\n        if(!screen){\n            return null;\n        }\n\n        stopMedia();\n\n        screen.innerHTML = \"\";\n\n        screen.classList.add(\n            \"is-active\"\n        );\n\n        screen.setAttribute(\n            \"aria-hidden\",\n            \"false\"\n        );\n\n        return screen;\n    }\n\n\n    function absoluteUrl(\n        value\n    ){\n\n        if(!value){\n            return \"\";\n        }\n\n        try{\n\n            return new URL(\n                value,\n                V2_BASE\n            ).href;\n\n        }catch(e){\n\n            return \"\";\n        }\n    }\n\n\n    function loadMuxPlayer(){\n\n        if(\n            window.customElements\n            &&\n            customElements.get(\n                \"mux-player\"\n            )\n        ){\n\n            return Promise.resolve();\n        }\n\n\n        if(muxPlayerPromise){\n\n            return muxPlayerPromise;\n        }\n\n\n        muxPlayerPromise =\n            new Promise(\n                function(\n                    resolve,\n                    reject\n                ){\n\n                    const existing =\n                        document.querySelector(\n                            \"script[data-or-radio-mux-player]\"\n                        );\n\n\n                    if(existing){\n\n                        if(\n                            window.customElements\n                        ){\n\n                            customElements\n                            .whenDefined(\n                                \"mux-player\"\n                            )\n                            .then(resolve)\n                            .catch(reject);\n\n                            return;\n                        }\n                    }\n\n\n                    const script =\n                        existing\n                        ||\n                        document.createElement(\n                            \"script\"\n                        );\n\n\n                    if(!existing){\n\n                        script.src =\n                            MUX_PLAYER_SRC;\n\n                        script.defer =\n                            true;\n\n                        script.dataset.orRadioMuxPlayer =\n                            \"1\";\n\n                        document.head.appendChild(\n                            script\n                        );\n                    }\n\n\n                    script.addEventListener(\n                        \"load\",\n                        function(){\n\n                            if(\n                                window.customElements\n                            ){\n\n                                customElements\n                                .whenDefined(\n                                    \"mux-player\"\n                                )\n                                .then(resolve)\n                                .catch(reject);\n\n                            }else{\n\n                                reject(\n                                    new Error(\n                                        \"Custom Elements no disponible\"\n                                    )\n                                );\n                            }\n                        },\n                        {\n                            once:true\n                        }\n                    );\n\n\n                    script.addEventListener(\n                        \"error\",\n                        reject,\n                        {\n                            once:true\n                        }\n                    );\n                }\n            );\n\n\n        return muxPlayerPromise;\n    }\n\n\n    function showImage(\n        item,\n        seconds,\n        token,\n        next\n    ){\n\n        if(\n            token !==\n            sequenceToken\n        ){\n            return;\n        }\n\n\n        const screen =\n            activateLayer();\n\n        if(!screen){\n            return;\n        }\n\n\n        const image =\n            document.createElement(\n                \"img\"\n            );\n\n\n        image.src =\n            absoluteUrl(\n                item.media_url\n            );\n\n        image.alt =\n            \"OR Music Live\";\n\n\n        image.onerror =\n            function(){\n\n                phaseTimer =\n                    setTimeout(\n                        next,\n                        1200\n                    );\n            };\n\n\n        screen.appendChild(\n            image\n        );\n\n\n        phaseTimer =\n            setTimeout(\n                next,\n                Math.max(\n                    1,\n                    Number(seconds) || 10\n                ) * 1000\n            );\n    }\n\n\n    async function showVideo(\n        item,\n        token,\n        next\n    ){\n\n        if(\n            token !==\n            sequenceToken\n        ){\n            return;\n        }\n\n\n        const screen =\n            activateLayer();\n\n        if(!screen){\n            return;\n        }\n\n\n        const playbackId =\n            String(\n                item.playback_id\n                || \"\"\n            ).trim();\n\n\n        if(!playbackId){\n\n            phaseTimer =\n                setTimeout(\n                    next,\n                    1200\n                );\n\n            return;\n        }\n\n\n        try{\n\n            await loadMuxPlayer();\n\n        }catch(error){\n\n            phaseTimer =\n                setTimeout(\n                    next,\n                    1200\n                );\n\n            return;\n        }\n\n\n        if(\n            token !==\n            sequenceToken\n        ){\n            return;\n        }\n\n\n        const player =\n            document.createElement(\n                \"mux-player\"\n            );\n\n\n        player.setAttribute(\n            \"playback-id\",\n            playbackId\n        );\n\n\n        player.setAttribute(\n            \"stream-type\",\n            \"on-demand\"\n        );\n\n\n        player.setAttribute(\n            \"autoplay\",\n            \"muted\"\n        );\n\n\n        player.setAttribute(\n            \"muted\",\n            \"\"\n        );\n\n\n        player.setAttribute(\n            \"playsinline\",\n            \"\"\n        );\n\n\n        player.setAttribute(\n            \"preload\",\n            \"auto\"\n        );\n\n\n        player.setAttribute(\n            \"disable-cookies\",\n            \"\"\n        );\n\n\n        player.setAttribute(\n            \"nohotkeys\",\n            \"\"\n        );\n\n\n        \/*\n         IMPORTANTE:\n         En Radio 24\/7 el video V2 queda\n         silenciado para no superponerse\n         al audio de la emisora.\n        *\/\n\n        player.muted =\n            true;\n\n\n        player.style.display =\n            \"block\";\n\n        player.style.width =\n            \"100%\";\n\n        player.style.height =\n            \"100%\";\n\n        player.style.background =\n            \"#05070b\";\n\n        player.style.setProperty(\n            \"--controls\",\n            \"none\"\n        );\n\n        player.style.setProperty(\n            \"--media-object-fit\",\n            \"contain\"\n        );\n\n        player.style.setProperty(\n            \"--media-object-position\",\n            \"center\"\n        );\n\n\n        let done =\n            false;\n\n\n        function finish(){\n\n            if(done){\n                return;\n            }\n\n            done =\n                true;\n\n            if(\n                token ===\n                sequenceToken\n            ){\n\n                next();\n            }\n        }\n\n\n        player.addEventListener(\n            \"ended\",\n            finish,\n            {\n                once:true\n            }\n        );\n\n\n        player.addEventListener(\n            \"error\",\n            function(){\n\n                phaseTimer =\n                    setTimeout(\n                        finish,\n                        1200\n                    );\n            },\n            {\n                once:true\n            }\n        );\n\n\n        screen.appendChild(\n            player\n        );\n\n\n        try{\n\n            const result =\n                player.play();\n\n\n            if(\n                result\n                &&\n                typeof result.catch ===\n                \"function\"\n            ){\n\n                result.catch(\n                    function(){}\n                );\n            }\n\n        }catch(error){}\n    }\n\n\n    function runSequence(\n        data\n    ){\n\n        const items =\n            Array.isArray(\n                data.items\n            )\n            ? data.items\n            : [];\n\n\n        if(\n            !data.enabled\n            ||\n            !items.length\n        ){\n\n            normalMode();\n\n            return;\n        }\n\n\n        sequenceToken += 1;\n\n        const token =\n            sequenceToken;\n\n        let index =\n            0;\n\n\n        const imageSeconds =\n            Math.max(\n                1,\n                Number(\n                    data.image_duration_seconds\n                ) || 10\n            );\n\n\n        function next(){\n\n            if(\n                token !==\n                sequenceToken\n            ){\n                return;\n            }\n\n\n            stopMedia();\n\n\n            const item =\n                items[\n                    index %\n                    items.length\n                ];\n\n\n            index =\n                (\n                    index + 1\n                )\n                % items.length;\n\n\n            if(\n                item.kind ===\n                \"video\"\n            ){\n\n                showVideo(\n                    item,\n                    token,\n                    next\n                );\n\n                return;\n            }\n\n\n            if(\n                item.kind ===\n                \"image\"\n            ){\n\n                showImage(\n                    item,\n                    imageSeconds,\n                    token,\n                    next\n                );\n\n                return;\n            }\n\n\n            phaseTimer =\n                setTimeout(\n                    next,\n                    1000\n                );\n        }\n\n\n        next();\n    }\n\n\n    function makeSignature(\n        data\n    ){\n\n        return JSON.stringify({\n            enabled:\n                !!data.enabled,\n\n            duration:\n                Number(\n                    data.image_duration_seconds\n                ) || 10,\n\n            items:\n                Array.isArray(\n                    data.items\n                )\n                ? data.items\n                : []\n        });\n    }\n\n\n    async function refresh(){\n\n        try{\n\n            const response =\n                await fetch(\n                    API\n                    + \"&t=\"\n                    + Date.now(),\n                    {\n                        cache:\n                            \"no-store\"\n                    }\n                );\n\n\n            if(!response.ok){\n\n                throw new Error(\n                    \"HTTP \"\n                    + response.status\n                );\n            }\n\n\n            const data =\n                await response.json();\n\n\n            const nextSignature =\n                makeSignature(\n                    data\n                );\n\n\n            if(\n                nextSignature !==\n                signature\n            ){\n\n                signature =\n                    nextSignature;\n\n                runSequence(\n                    data\n                );\n            }\n\n        }catch(e){\n\n            \/*\n             Si V2 falla, Radio 24\/7\n             vuelve a su car\u00e1tula normal.\n            *\/\n\n            if(\n                signature !==\n                \"NORMAL_FALLBACK\"\n            ){\n\n                signature =\n                    \"NORMAL_FALLBACK\";\n\n                normalMode();\n            }\n        }\n    }\n\n\n    ensureLayer();\n\n    normalMode();\n\n    refresh();\n\n\n    setInterval(\n        refresh,\n        5000\n    );\n\n})();\n\n<\/script>\n\n<!-- =========================================================\n     OR RADIO 24\/7 \u00b7 TEXTOS \/ AVISOS V2\n     RESTAURADO 2026-09-17\n========================================================= -->\n\n<style id=\"or-radio247-texts-v2-style\">\n\/* OR_RADIO247_TEXTS_V2_20260916 *\/\n\n#or247TextV2{\n    display:none;\n    position:relative;\n    z-index:5;\n    width:calc(100% - 50px);\n    min-height:120px;\n    margin:0 25px 25px;\n    padding:20px 26px;\n    box-sizing:border-box;\n    align-items:center;\n    border-radius:17px;\n    border:1px solid rgba(255,255,255,.12);\n    background:\n        linear-gradient(\n            145deg,\n            rgba(7,11,18,.96),\n            rgba(12,18,28,.96)\n        );\n    color:#fff;\n    font-size:clamp(17px,1.85vw,28px);\n    line-height:1.35;\n    font-weight:900;\n    white-space:pre-wrap;\n    overflow-wrap:break-word;\n    word-break:normal;\n}\n\n#or247TextV2.is-active{\n    display:flex;\n}\n\n#or247TextV2Inner{\n    display:block;\n    width:100%;\n    min-width:0;\n    white-space:pre-wrap;\n    overflow-wrap:break-word;\n    word-break:normal;\n}\n\n\/* ILUMINADO *\/\n#or247TextV2.effect-glow{\n    border:1px solid currentColor;\n    box-shadow:\n        0 0 var(--or247-glow-1,4px) currentColor,\n        0 0 var(--or247-glow-2,14px) currentColor,\n        0 0 var(--or247-glow-3,24px) currentColor;\n    text-shadow:\n        0 0 var(--or247-glow-1,4px) currentColor,\n        0 0 var(--or247-glow-2,12px) currentColor;\n    filter:\n        brightness(var(--or247-brightness,1.15))\n        saturate(var(--or247-saturation,1.12));\n}\n\n\/* PULSANTE *\/\n#or247TextV2.effect-pulse{\n    border:1px solid currentColor;\n    animation:\n        or247TextPulse\n        var(--or247-pulse-speed,1.05s)\n        ease-in-out\n        infinite;\n    transform-origin:center;\n}\n\n@keyframes or247TextPulse{\n    0%,\n    100%{\n        opacity:1;\n        transform:scale(var(--or247-pulse-high-scale,1.006));\n        filter:\n            brightness(var(--or247-brightness,1.18))\n            saturate(var(--or247-saturation,1.12));\n        box-shadow:\n            0 0 var(--or247-glow-1,4px) currentColor,\n            0 0 var(--or247-glow-2,14px) currentColor,\n            0 0 var(--or247-glow-3,24px) currentColor;\n        text-shadow:\n            0 0 var(--or247-glow-1,4px) currentColor,\n            0 0 var(--or247-glow-2,12px) currentColor;\n    }\n\n    50%{\n        opacity:var(--or247-pulse-low-opacity,.60);\n        transform:scale(var(--or247-pulse-low-scale,.997));\n        filter:\n            brightness(.82)\n            saturate(.92);\n        box-shadow:0 0 2px currentColor;\n        text-shadow:0 0 2px currentColor;\n    }\n}\n\n@media(max-width:620px){\n    #or247TextV2{\n        width:calc(100% - 30px);\n        min-height:100px;\n        margin:0 15px 20px;\n        padding:17px 16px;\n        font-size:clamp(16px,5vw,22px);\n    }\n}\n<\/style>\n\n<script>\n\/* OR_RADIO247_TEXTS_V2_20260916 *\/\n\n(function(){\n\n    const API =\n        \"https:\/\/video.ormusiclive.com:9444\/api\/texts\/output?platform=web&screen=radio\";\n\n    function ensureBox(){\n\n        const player =\n            document.getElementById(\n                \"or247Player\"\n            );\n\n        if(!player){\n            return null;\n        }\n\n        let box =\n            document.getElementById(\n                \"or247TextV2\"\n            );\n\n        if(box){\n            return box;\n        }\n\n        box =\n            document.createElement(\n                \"div\"\n            );\n\n        box.id =\n            \"or247TextV2\";\n\n        box.setAttribute(\n            \"aria-live\",\n            \"polite\"\n        );\n\n        const inner =\n            document.createElement(\n                \"div\"\n            );\n\n        inner.id =\n            \"or247TextV2Inner\";\n\n        box.appendChild(\n            inner\n        );\n\n        const bottom =\n            player.querySelector(\n                \".or247-player-bottom\"\n            );\n\n        if(bottom){\n\n            player.insertBefore(\n                box,\n                bottom\n            );\n\n        }else{\n\n            player.appendChild(\n                box\n            );\n        }\n\n        return box;\n    }\n\n    function cleanText(value){\n\n        return String(\n            value || \"\"\n        )\n        .split(\/\\r?\\n\/)\n        .map(\n            function(line){\n                return line.trim();\n            }\n        )\n        .join(\"\\n\");\n    }\n\n    function hide(){\n\n        const box =\n            ensureBox();\n\n        if(!box){\n            return;\n        }\n\n        const inner =\n            document.getElementById(\n                \"or247TextV2Inner\"\n            );\n\n        box.className =\n            \"\";\n\n        box.removeAttribute(\n            \"style\"\n        );\n\n        if(inner){\n            inner.textContent =\n                \"\";\n        }\n    }\n\n    function show(message){\n\n        const box =\n            ensureBox();\n\n        const inner =\n            document.getElementById(\n                \"or247TextV2Inner\"\n            );\n\n        if(\n            !box\n            ||\n            !inner\n            ||\n            !message\n        ){\n            hide();\n            return;\n        }\n\n        const text =\n            cleanText(\n                message.text\n            );\n\n        if(!text.trim()){\n            hide();\n            return;\n        }\n\n        const effect =\n            String(\n                message.effect\n                || \"normal\"\n            );\n\n        const color =\n            String(\n                message.color\n                || \"#ffffff\"\n            );\n\n        const align =\n            [\n                \"left\",\n                \"center\",\n                \"right\"\n            ].includes(\n                String(\n                    message.align\n                    || \"center\"\n                )\n            )\n            ? String(\n                message.align\n                || \"center\"\n            )\n            : \"center\";\n\n        const intensity =\n            Math.max(\n                0,\n                Math.min(\n                    100,\n                    Number(\n                        message.intensity\n                        ?? 55\n                    )\n                )\n            );\n\n        const level =\n            intensity \/ 100;\n\n        const speeds = {\n            slow:\"1.55s\",\n            medium:\"1.05s\",\n            fast:\".72s\"\n        };\n\n        inner.textContent =\n            text;\n\n        inner.style.textAlign =\n            align;\n\n        box.style.textAlign =\n            align;\n\n        box.style.color =\n            color;\n\n        box.className =\n            \"is-active effect-\"\n            + effect;\n\n        box.style.setProperty(\n            \"--or247-pulse-speed\",\n            speeds[\n                String(\n                    message.pulse_speed\n                    || \"medium\"\n                )\n            ]\n            || \"1.05s\"\n        );\n\n        box.style.setProperty(\n            \"--or247-glow-1\",\n            Math.round(\n                level * 7\n            )\n            + \"px\"\n        );\n\n        box.style.setProperty(\n            \"--or247-glow-2\",\n            Math.round(\n                level * 22\n            )\n            + \"px\"\n        );\n\n        box.style.setProperty(\n            \"--or247-glow-3\",\n            Math.round(\n                level * 38\n            )\n            + \"px\"\n        );\n\n        box.style.setProperty(\n            \"--or247-brightness\",\n            String(\n                1\n                + level * .28\n            )\n        );\n\n        box.style.setProperty(\n            \"--or247-saturation\",\n            String(\n                1\n                + level * .25\n            )\n        );\n\n        box.style.setProperty(\n            \"--or247-pulse-low-opacity\",\n            String(\n                .88\n                - level * .50\n            )\n        );\n\n        box.style.setProperty(\n            \"--or247-pulse-high-scale\",\n            String(\n                1\n                + level * .010\n            )\n        );\n\n        box.style.setProperty(\n            \"--or247-pulse-low-scale\",\n            String(\n                1\n                - level * .005\n            )\n        );\n    }\n\n    async function refresh(){\n\n        try{\n\n            const response =\n                await fetch(\n                    API\n                    + \"&t=\"\n                    + Date.now(),\n                    {\n                        cache:\n                            \"no-store\"\n                    }\n                );\n\n            if(!response.ok){\n\n                throw new Error(\n                    \"HTTP \"\n                    + response.status\n                );\n            }\n\n            const data =\n                await response.json();\n\n            if(\n                data.enabled\n                &&\n                data.message\n            ){\n\n                show(\n                    data.message\n                );\n\n            }else{\n\n                hide();\n            }\n\n        }catch(error){\n\n            hide();\n        }\n    }\n\n    setTimeout(\n        refresh,\n        600\n    );\n\n    setInterval(\n        refresh,\n        5000\n    );\n\n})();\n<\/script>\n\n\n<style id=\"or-radio247-texts-v2-style\">\n<p>\/* OR_RADIO247_TEXTS_V2_20260916 *\/<\/p>\n<p>#or247TextV2{<\/p>\n<p>    display:none;<\/p>\n<p>    position:relative;<\/p>\n<p>    z-index:5;<\/p>\n<p>    width:<br \/>\n        calc(100% - 50px);<\/p>\n<p>    min-height:120px;<\/p>\n<p>    margin:<br \/>\n        0 25px 25px;<\/p>\n<p>    padding:<br \/>\n        20px 26px;<\/p>\n<p>    box-sizing:<br \/>\n        border-box;<\/p>\n<p>    align-items:center;<\/p>\n<p>    border-radius:17px;<\/p>\n<p>    border:<br \/>\n        1px solid<br \/>\n        rgba(255,255,255,.12);<\/p>\n<p>    background:<br \/>\n        linear-gradient(<br \/>\n            145deg,<br \/>\n            rgba(7,11,18,.96),<br \/>\n            rgba(12,18,28,.96)<br \/>\n        );<\/p>\n<p>    color:#fff;<\/p>\n<p>    font-size:<br \/>\n        clamp(<br \/>\n            17px,<br \/>\n            1.85vw,<br \/>\n            28px<br \/>\n        );<\/p>\n<p>    line-height:1.35;<\/p>\n<p>    font-weight:900;<\/p>\n<p>    white-space:pre-wrap;<\/p>\n<p>    overflow-wrap:break-word;<\/p>\n<p>    word-break:normal;<br \/>\n}<\/p>\n<p>#or247TextV2.is-active{<\/p>\n<p>    display:flex;<br \/>\n}<\/p>\n<p>#or247TextV2Inner{<\/p>\n<p>    display:block;<\/p>\n<p>    width:100%;<\/p>\n<p>    min-width:0;<\/p>\n<p>    white-space:pre-wrap;<\/p>\n<p>    overflow-wrap:break-word;<\/p>\n<p>    word-break:normal;<br \/>\n}<\/p>\n<p>\/* ILUMINADO *\/<\/p>\n<p>#or247TextV2.effect-glow{<\/p>\n<p>    border:<br \/>\n        1px solid<br \/>\n        currentColor;<\/p>\n<p>    box-shadow:<br \/>\n        0 0<br \/>\n        var(--or247-glow-1,4px)<br \/>\n        currentColor,<\/p>\n<p>        0 0<br \/>\n        var(--or247-glow-2,14px)<br \/>\n        currentColor,<\/p>\n<p>        0 0<br \/>\n        var(--or247-glow-3,24px)<br \/>\n        currentColor;<\/p>\n<p>    text-shadow:<br \/>\n        0 0<br \/>\n        var(--or247-glow-1,4px)<br \/>\n        currentColor,<\/p>\n<p>        0 0<br \/>\n        var(--or247-glow-2,12px)<br \/>\n        currentColor;<\/p>\n<p>    filter:<br \/>\n        brightness(<br \/>\n            var(<br \/>\n                --or247-brightness,<br \/>\n                1.15<br \/>\n            )<br \/>\n        )<br \/>\n        saturate(<br \/>\n            var(<br \/>\n                --or247-saturation,<br \/>\n                1.12<br \/>\n            )<br \/>\n        );<br \/>\n}<\/p>\n<p>\/* PULSANTE *\/<\/p>\n<p>#or247TextV2.effect-pulse{<\/p>\n<p>    border:<br \/>\n        1px solid<br \/>\n        currentColor;<\/p>\n<p>    animation:<br \/>\n        or247TextPulse<br \/>\n        var(<br \/>\n            --or247-pulse-speed,<br \/>\n            1.05s<br \/>\n        )<br \/>\n        ease-in-out<br \/>\n        infinite;<\/p>\n<p>    transform-origin:center;<br \/>\n}<\/p>\n<p>@keyframes or247TextPulse{<\/p>\n<p>    0%,<br \/>\n    100%{<\/p>\n<p>        opacity:1;<\/p>\n<p>        transform:<br \/>\n            scale(<br \/>\n                var(<br \/>\n                    --or247-pulse-high-scale,<br \/>\n                    1.006<br \/>\n                )<br \/>\n            );<\/p>\n<p>        filter:<br \/>\n            brightness(<br \/>\n                var(<br \/>\n                    --or247-brightness,<br \/>\n                    1.18<br \/>\n                )<br \/>\n            )<br \/>\n            saturate(<br \/>\n                var(<br \/>\n                    --or247-saturation,<br \/>\n                    1.12<br \/>\n                )<br \/>\n            );<\/p>\n<p>        box-shadow:<br \/>\n            0 0<br \/>\n            var(--or247-glow-1,4px)<br \/>\n            currentColor,<\/p>\n<p>            0 0<br \/>\n            var(--or247-glow-2,14px)<br \/>\n            currentColor,<\/p>\n<p>            0 0<br \/>\n            var(--or247-glow-3,24px)<br \/>\n            currentColor;<\/p>\n<p>        text-shadow:<br \/>\n            0 0<br \/>\n            var(--or247-glow-1,4px)<br \/>\n            currentColor,<\/p>\n<p>            0 0<br \/>\n            var(--or247-glow-2,12px)<br \/>\n            currentColor;<br \/>\n    }<\/p>\n<p>    50%{<\/p>\n<p>        opacity:<br \/>\n            var(<br \/>\n                --or247-pulse-low-opacity,<br \/>\n                .60<br \/>\n            );<\/p>\n<p>        transform:<br \/>\n            scale(<br \/>\n                var(<br \/>\n                    --or247-pulse-low-scale,<br \/>\n                    .997<br \/>\n                )<br \/>\n            );<\/p>\n<p>        filter:<br \/>\n            brightness(.82)<br \/>\n            saturate(.92);<\/p>\n<p>        box-shadow:<br \/>\n            0 0 2px<br \/>\n            currentColor;<\/p>\n<p>        text-shadow:<br \/>\n            0 0 2px<br \/>\n            currentColor;<br \/>\n    }<br \/>\n}<\/p>\n<p>@media(max-width:620px){<\/p>\n<p>    #or247TextV2{<\/p>\n<p>        width:<br \/>\n            calc(100% - 30px);<\/p>\n<p>        min-height:100px;<\/p>\n<p>        margin:<br \/>\n            0 15px 20px;<\/p>\n<p>        padding:<br \/>\n            17px 16px;<\/p>\n<p>        font-size:<br \/>\n            clamp(<br \/>\n                16px,<br \/>\n                5vw,<br \/>\n                22px<br \/>\n            );<br \/>\n    }<br \/>\n}<\/p>\n<\/style>\n<p><script><\/p>\n<p>\/* OR_RADIO247_TEXTS_V2_20260916 *\/<\/p>\n<p>(function(){<\/p>\n<p>    const API =<br \/>\n        \"https:\/\/video.ormusiclive.com:9444\/api\/texts\/output?platform=web&screen=radio\";<\/p>\n<p>    function ensureBox(){<\/p>\n<p>        const player =<br \/>\n            document.getElementById(<br \/>\n                \"or247Player\"<br \/>\n            );<\/p>\n<p>        if(!player){<\/p>\n<p>            return null;<br \/>\n        }<\/p>\n<p>        let box =<br \/>\n            document.getElementById(<br \/>\n                \"or247TextV2\"<br \/>\n            );<\/p>\n<p>        if(box){<\/p>\n<p>            return box;<br \/>\n        }<\/p>\n<p>        box =<br \/>\n            document.createElement(<br \/>\n                \"div\"<br \/>\n            );<\/p>\n<p>        box.id =<br \/>\n            \"or247TextV2\";<\/p>\n<p>        box.setAttribute(<br \/>\n            \"aria-live\",<br \/>\n            \"polite\"<br \/>\n        );<\/p>\n<p>        const inner =<br \/>\n            document.createElement(<br \/>\n                \"div\"<br \/>\n            );<\/p>\n<p>        inner.id =<br \/>\n            \"or247TextV2Inner\";<\/p>\n<p>        box.appendChild(<br \/>\n            inner<br \/>\n        );<\/p>\n<p>        const bottom =<br \/>\n            player.querySelector(<br \/>\n                \".or247-player-bottom\"<br \/>\n            );<\/p>\n<p>        if(bottom){<\/p>\n<p>            player.insertBefore(<br \/>\n                box,<br \/>\n                bottom<br \/>\n            );<\/p>\n<p>        }else{<\/p>\n<p>            player.appendChild(<br \/>\n                box<br \/>\n            );<br \/>\n        }<\/p>\n<p>        return box;<br \/>\n    }<\/p>\n<p>    function cleanText(value){<\/p>\n<p>        return String(<br \/>\n            value || \"\"<br \/>\n        )<br \/>\n        .split(\/\\r?\\n\/)<br \/>\n        .map(<br \/>\n            function(line){<\/p>\n<p>                return line.trim();<br \/>\n            }<br \/>\n        )<br \/>\n        .join(\"\\n\");<br \/>\n    }<\/p>\n<p>    function hide(){<\/p>\n<p>        const box =<br \/>\n            ensureBox();<\/p>\n<p>        if(!box){<\/p>\n<p>            return;<br \/>\n        }<\/p>\n<p>        const inner =<br \/>\n            document.getElementById(<br \/>\n                \"or247TextV2Inner\"<br \/>\n            );<\/p>\n<p>        box.className =<br \/>\n            \"\";<\/p>\n<p>        box.removeAttribute(<br \/>\n            \"style\"<br \/>\n        );<\/p>\n<p>        if(inner){<\/p>\n<p>            inner.textContent =<br \/>\n                \"\";<br \/>\n        }<br \/>\n    }<\/p>\n<p>    function show(message){<\/p>\n<p>        const box =<br \/>\n            ensureBox();<\/p>\n<p>        const inner =<br \/>\n            document.getElementById(<br \/>\n                \"or247TextV2Inner\"<br \/>\n            );<\/p>\n<p>        if(<br \/>\n            !box<br \/>\n            ||<br \/>\n            !inner<br \/>\n            ||<br \/>\n            !message<br \/>\n        ){<\/p>\n<p>            hide();<\/p>\n<p>            return;<br \/>\n        }<\/p>\n<p>        const text =<br \/>\n            cleanText(<br \/>\n                message.text<br \/>\n            );<\/p>\n<p>        if(!text.trim()){<\/p>\n<p>            hide();<\/p>\n<p>            return;<br \/>\n        }<\/p>\n<p>        const effect =<br \/>\n            String(<br \/>\n                message.effect<br \/>\n                || \"normal\"<br \/>\n            );<\/p>\n<p>        const color =<br \/>\n            String(<br \/>\n                message.color<br \/>\n                || \"#ffffff\"<br \/>\n            );<\/p>\n<p>        const align =<br \/>\n            [<br \/>\n                \"left\",<br \/>\n                \"center\",<br \/>\n                \"right\"<br \/>\n            ].includes(<br \/>\n                String(<br \/>\n                    message.align<br \/>\n                    || \"center\"<br \/>\n                )<br \/>\n            )<br \/>\n            ? String(<br \/>\n                message.align<br \/>\n                || \"center\"<br \/>\n            )<br \/>\n            : \"center\";<\/p>\n<p>        const intensity =<br \/>\n            Math.max(<br \/>\n                0,<br \/>\n                Math.min(<br \/>\n                    100,<br \/>\n                    Number(<br \/>\n                        message.intensity<br \/>\n                        ?? 55<br \/>\n                    )<br \/>\n                )<br \/>\n            );<\/p>\n<p>        const level =<br \/>\n            intensity \/ 100;<\/p>\n<p>        const speeds = {<br \/>\n            slow:\"1.55s\",<br \/>\n            medium:\"1.05s\",<br \/>\n            fast:\".72s\"<br \/>\n        };<\/p>\n<p>        inner.textContent =<br \/>\n            text;<\/p>\n<p>        inner.style.textAlign =<br \/>\n            align;<\/p>\n<p>        box.style.textAlign =<br \/>\n            align;<\/p>\n<p>        box.style.color =<br \/>\n            color;<\/p>\n<p>        box.className =<br \/>\n            \"is-active effect-\"<br \/>\n            + effect;<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-pulse-speed\",<\/p>\n<p>            speeds[<br \/>\n                String(<br \/>\n                    message.pulse_speed<br \/>\n                    || \"medium\"<br \/>\n                )<br \/>\n            ]<br \/>\n            || \"1.05s\"<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-glow-1\",<\/p>\n<p>            Math.round(<br \/>\n                level * 7<br \/>\n            )<br \/>\n            + \"px\"<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-glow-2\",<\/p>\n<p>            Math.round(<br \/>\n                level * 22<br \/>\n            )<br \/>\n            + \"px\"<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-glow-3\",<\/p>\n<p>            Math.round(<br \/>\n                level * 38<br \/>\n            )<br \/>\n            + \"px\"<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-brightness\",<\/p>\n<p>            String(<br \/>\n                1<br \/>\n                + level * .28<br \/>\n            )<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-saturation\",<\/p>\n<p>            String(<br \/>\n                1<br \/>\n                + level * .25<br \/>\n            )<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-pulse-low-opacity\",<\/p>\n<p>            String(<br \/>\n                .88<br \/>\n                - level * .50<br \/>\n            )<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-pulse-high-scale\",<\/p>\n<p>            String(<br \/>\n                1<br \/>\n                + level * .010<br \/>\n            )<br \/>\n        );<\/p>\n<p>        box.style.setProperty(<br \/>\n            \"--or247-pulse-low-scale\",<\/p>\n<p>            String(<br \/>\n                1<br \/>\n                - level * .005<br \/>\n            )<br \/>\n        );<br \/>\n    }<\/p>\n<p>    async function refresh(){<\/p>\n<p>        try{<\/p>\n<p>            const response =<br \/>\n                await fetch(<br \/>\n                    API<br \/>\n                    + \"&t=\"<br \/>\n                    + Date.now(),<\/p>\n<p>                    {<br \/>\n                        cache:<br \/>\n                            \"no-store\"<br \/>\n                    }<br \/>\n                );<\/p>\n<p>            if(!response.ok){<\/p>\n<p>                throw new Error(<br \/>\n                    \"HTTP \"<br \/>\n                    + response.status<br \/>\n                );<br \/>\n            }<\/p>\n<p>            const data =<br \/>\n                await response.json();<\/p>\n<p>            if(<br \/>\n                data.enabled<br \/>\n                &&<br \/>\n                data.message<br \/>\n            ){<\/p>\n<p>                show(<br \/>\n                    data.message<br \/>\n                );<\/p>\n<p>            }else{<\/p>\n<p>                hide();<br \/>\n            }<\/p>\n<p>        }catch(error){<\/p>\n<p>            hide();<br \/>\n        }<br \/>\n    }<\/p>\n<p>    setTimeout(<br \/>\n        refresh,<br \/>\n        600<br \/>\n    );<\/p>\n<p>    setInterval(<br \/>\n        refresh,<br \/>\n        5000<br \/>\n    );<\/p>\n<p>})();<\/p>\n<p><\/script><\/p>","protected":false},"excerpt":{"rendered":"<p>ORMUSICLIVE.COM INICIO OR MUSIC LIVE \u00b7 SE\u00d1AL PERMANENTE RADIO 24\/7 Cl\u00e1sicos, grandes recuerdos y sonidos contempor\u00e1neos. Una selecci\u00f3n musical en espa\u00f1ol e ingl\u00e9s pensada para acompa\u00f1arte durante todo el d\u00eda. OR MUSIC LIVE Bienvenido a nuestra se\u00f1al &#8212; SE\u00d1AL DISPONIBLE \u00b7 24 HORAS 192 KBPS \u00b7 OR MUSIC LIVE AHORA SUENA OR Music Live Radio [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-10","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/ormusiclive.com\/index.php?rest_route=\/wp\/v2\/pages\/10","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ormusiclive.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ormusiclive.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ormusiclive.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ormusiclive.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10"}],"version-history":[{"count":5,"href":"https:\/\/ormusiclive.com\/index.php?rest_route=\/wp\/v2\/pages\/10\/revisions"}],"predecessor-version":[{"id":648,"href":"https:\/\/ormusiclive.com\/index.php?rest_route=\/wp\/v2\/pages\/10\/revisions\/648"}],"wp:attachment":[{"href":"https:\/\/ormusiclive.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}