/* FmBolivia Radio 2.0.1 — identidad Broadcast Editorial.
   Capa visual versionada: no altera reproducción ni APIs de audio. */
:root{
 --pine:#111827;--forest:#1e293b;--green:#d71935;--green2:#b6102b;
 --gold:#f5b942;--ink:#172033;--muted:#607084;--border:#e4e8ef;
 --paper:#f3f6fa;--white:#ffffff;--shadow:0 28px 65px rgba(14,24,44,.14);
 color:var(--ink);background:#fff;
}
body{background:#fff}
::selection{background:#d71935;color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #f5b942;outline-offset:3px}
.header{background:#fff;border-bottom:1px solid #e7eaf0;box-shadow:0 4px 28px rgba(12,19,37,.045)}
.header-row{height:83px}
.brand-mark{border-radius:13px;background:linear-gradient(148deg,#ea2143,#a90925);box-shadow:0 12px 28px rgba(215,25,53,.22)}
.mark-dot{background:#f5b942}
.brand-type strong{color:#192133;letter-spacing:-.85px}
.brand-type small{color:#9b2436;letter-spacing:1.65px}
.header-nav{color:#273147}
.header-nav a:hover,.footer-links a:hover{color:#d71935}
.header-nav .header-news{background:#131b2a;color:#fff;border-radius:11px;box-shadow:0 8px 24px #10182717}
.header-nav .header-news:hover{background:#d71935;color:#fff}
.hero{
 background:radial-gradient(ellipse at 87% 28%,rgba(219,29,63,.22) 0,rgba(219,29,63,.06) 28%,transparent 48%),
 linear-gradient(112deg,#101623 0%,#151d2c 48%,#202c42 100%);
 color:#fff;
}
.hero:before{background-image:linear-gradient(118deg,transparent 0 52%,rgba(255,255,255,.022) 53%,transparent 53.3%),repeating-linear-gradient(90deg,transparent 0 105px,rgba(255,255,255,.012) 106px 107px)}
.hero:after{background:radial-gradient(circle,rgba(215,25,53,.09),transparent 68%)}
.hero-orbit{border-color:rgba(255,255,255,.09)}
.hero-orbit--two{border-color:rgba(245,185,66,.19)}
.hero-grid{min-height:630px}
.hero-tag{color:#f0d7db}
.hero-tag .on-dot{background:#f82c4e;box-shadow:0 0 0 5px rgba(248,44,78,.16)}
.hero h1{font-weight:900;letter-spacing:-3.6px;line-height:1.045;text-shadow:0 6px 36px #0002}
.hero h1 em{color:#f5b942}
.hero-lead{color:#cad3e4}
.hero-benefits span{background:rgba(255,255,255,.055);border:1px solid #ffffff2a;color:#e7edf9}
.hero-secondary{color:#f6c25b;border-bottom-color:#f6c25b80}
.hero-secondary:hover{color:#fff}
/* Consola blanca y controles rojos, contrastando con el fondo grafito. */
.radio-card{background:#fff;color:#162031;border:1px solid rgba(255,255,255,.82);border-radius:26px;box-shadow:0 38px 88px rgba(2,7,17,.3)}
.live-pill{background:#fff0f2;color:#b91532}
.live-pill .on-dot{background:#e21a3a}
.radio-freq{color:#cb1634}
.album-halo{
 background:repeating-radial-gradient(circle at center,#243249 0 2px,#111d31 3px 23px,#29364a 24px 26px);
 box-shadow:0 0 0 15px #f1f3f8,0 0 0 24px #f8f9fc;
}
.album-core{background:linear-gradient(145deg,#e11e42,#9c0821);box-shadow:inset 0 2px 6px #ffffff3b}
.album-small{color:#f5c558}
.waveform i,.equalizer i{background:#df2040}
.station-title{border-bottom-color:#e7eaf0}
.station-title h2 span{color:#d51c3c}
.play-btn,.radio-card .play-btn{background:linear-gradient(107deg,#e21a3c,#b9102e);box-shadow:0 11px 24px rgba(211,19,51,.24);border-radius:12px}
.play-btn:hover,.radio-card .play-btn:hover{background:linear-gradient(107deg,#c11230,#98051e)}
.retry-btn{border-color:#f2cad1;background:#fff2f4;color:#bd1330}
.volume-icon{color:#c91835}
.volume-row input{accent-color:#d71935}
.direct-stream{border-left-color:#e5e8ee;color:#ad1730}
.direct-stream:hover{color:#741024}
.player-status{color:#66738a}
.player-status[data-state="online"]{color:#16724b}
.player-status[data-state="offline"],.player-status[data-state="blocked"]{color:#b72a41}
.source-row{background:#f6f7fb;border-color:#e3e7ef}
.source-icon{background:#ffe5e9}
.source-led{background:#d71935;box-shadow:0 0 0 5px #d719351a}
.source-info strong{color:#29334b}
.source-info small{color:#6c7b91}
.source-switch{border-color:#e7cad0;background:#fff;color:#b11330}
.source-switch:hover:not(:disabled){background:#fff0f3}
/* News strip y tarjetas modernas. */
.strip{background:#171f2d;border-bottom:1px solid #26344a}
.strip-label{color:#e9eef7}
.strip-label .on-dot{background:#e42346}
.strip-inner>a{color:#e4e9f3}
.strip-inner>a:hover{color:#ffc864}
.section-heading .eyebrow,.eyebrow{color:#bd1936}
.section-heading h2,.share-copy h2,.bottom-callout h2{color:#172033}
.section-heading h2 span,.share-copy h2 span{color:#d71935}
.section-heading p{color:#607084}
.section-cta{color:#b5122f;border-bottom-color:#ef9aab}
.section-cta:hover{color:#781427}
.news-card{border:1px solid #e5e8ee;box-shadow:0 6px 26px rgba(15,23,42,.025);background:#fff}
.news-card:hover{box-shadow:0 20px 40px rgba(22,31,50,.11)}
.news-index,.news-card a{color:#cc1735}
.news-card p{color:#5f6d80}
.news-updated{color:#6c7688}
.section-soft{background:#f4f6fa;border-color:#e6eaf1}
.program{border-color:#e1e6ef;box-shadow:0 8px 25px rgba(13,22,39,.03)}
.program:before{border-color:#f9edf0}
.program-number{color:#b91230}
.program p,.small-note{color:#67758a}
.btn{border-radius:11px}
.btn-primary{background:#d71935;color:#fff}
.btn-primary:hover{background:#aa0f2a}
.btn-outline{border-color:#d6dce6;background:#fff;color:#303b53}
.btn-outline:hover{background:#f5f6f9}
.btn-wa{background:#edfbf1;border-color:#c6ebd1;color:#157342}
.bottom-callout{background:linear-gradient(120deg,#141b2b 0%,#263149 70%,#511d32 100%);box-shadow:0 20px 50px #10182720}
.bottom-callout h2{color:#fff}
.bottom-callout .eyebrow{color:#ffcf7c}
.btn-light{background:#fff;color:#ad1331}
.footer{background:#101621;border-top:3px solid #d71935;color:#fff}
.footer .brand-type strong{color:#fff}
.footer .brand-type small{color:#ffb8c4}
.footer-brand p,.footer-last{color:#afbbcd}
.footer-last span{color:#95a5bc}
.footer-links a{color:#e2e8f1}
@media(max-width:760px){
 .header-row{height:72px}
 .hero-grid{padding-top:49px;padding-bottom:56px}
 .hero h1{line-height:1.09;letter-spacing:-2.7px}
 .strip-inner{gap:12px 18px}
 .radio-card{box-shadow:0 25px 56px rgba(0,0,0,.22)}
}
@media(prefers-reduced-motion:reduce){.radio-card,.hero{transition:none}}
