:root{--n:#102f50;--g:#d7a43b;--c:#f7f1e7;--m:#6d7580}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#18222c;background:#fff;padding-bottom:72px;overflow-x:hidden}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer}
.w{width:min(1180px,calc(100% - 48px));margin:0 auto}

.promo-banner{background:var(--n);color:#fff}
.promo-banner .w{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:9px 0;text-align:center;font-size:13px}
.promo-banner a{color:var(--g);font-weight:bold;text-decoration:underline}

header{height:76px;display:flex;align-items:center;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:20}
.nav{display:flex;align-items:center;gap:24px}
.brand{font:700 25px Georgia,serif;color:var(--n);margin-right:auto}
.links{display:flex;gap:22px;font-weight:bold;font-size:14px}
.search{border:1px solid #ddd;border-radius:20px;padding:10px 15px;font-size:14px}
.donate,.gold{display:inline-block;background:var(--g);color:#fff;padding:12px 18px;border-radius:5px;font-weight:bold;border:0}

.hero{background:linear-gradient(100deg,#0b2947,#1c456b);color:#fff}
.hg{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:stretch}

.hero-home{position:relative;overflow:hidden}
.hero-home-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%;z-index:0}
.hero-home-fade{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,#0b2947 0%,#0b2947 40%,rgba(11,41,71,.88) 54%,rgba(11,41,71,.42) 72%,rgba(11,41,71,.05) 90%)}
.hero-home .hg{position:relative;z-index:2;display:block;padding:56px 0}
.hero-home .hg>div{max-width:600px;padding:0}
.hero h1{font:700 clamp(42px,4.2vw,58px)/1.03 Georgia,serif;margin:10px 0 16px;max-width:620px}
.hero p{font:20px/1.5 Georgia,serif;color:#e5edf4;max-width:590px}
.ey{color:#e7bf69;font-size:12px;font-weight:bold;letter-spacing:2px}
.actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.outline{border:1px solid #8296aa;padding:12px 18px;border-radius:5px;font-weight:bold;color:#fff}
.cat-pill{display:inline-block;border:1px solid #c9c0aa;padding:8px 14px;border-radius:5px;font-weight:bold;font-size:13px;color:var(--n)}
.cat-pill.active{background:var(--n);color:#fff;border-color:var(--n)}
.photo{position:relative;min-height:280px;overflow:hidden}
.photo::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#1c456b 0%,rgba(28,69,107,0) 22%);pointer-events:none}
.photo img{width:100%;height:100%;object-fit:cover;object-position:center 31%;display:block}
.photo-empty{width:100%;height:100%;min-height:280px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font:italic 18px Georgia,serif;color:#c7d3de}

.sec{padding:42px 0}
.cream{background:var(--c)}
.k{color:#9a6c18;font-weight:bold;letter-spacing:1.6px;font-size:11px}
.sec h2{font:700 34px Georgia,serif;color:var(--n);margin:7px 0 22px}
.section-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.section-head a{font-weight:bold;color:var(--n);font-size:13px}

.today{background:#fff;border:1px solid #e4dbcd;border-radius:8px;padding:22px;display:grid;grid-template-columns:170px 1fr 110px;gap:25px;align-items:center}
.date{text-align:center;border-right:1px solid #e5ddd1}
.date b{font:700 38px Georgia,serif;color:var(--n);display:block}
.date span{font-weight:bold;color:#9a6c18}
.today h3,.card h3,.lib h3{font-family:Georgia,serif;color:var(--n)}
.play{width:62px;height:62px;border-radius:50%;border:0;background:var(--g);color:#fff;font-size:22px}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
#timely .cards{grid-template-columns:repeat(auto-fit,minmax(240px,380px))}
.card{display:block;border:1px solid #e5ddd1;border-radius:8px;overflow:hidden;background:#fff}
.card img{width:100%;height:180px;object-fit:cover;object-position:center 22%;display:block}
.card-placeholder{height:180px;background:#eee6d9;display:grid;place-items:center;font-size:55px}
.cb{padding:17px}
.tag{font-size:11px;color:#9a6c18;font-weight:bold;letter-spacing:1px}
.card p,.sub,.lib small{color:var(--m);line-height:1.45}
.playlink{font-weight:bold;color:var(--n);border:0;background:none;padding:0;font-size:14px}

.libs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.lib{display:block;border:1px solid #e5ddd1;border-radius:8px;padding:22px}
.lib i{font-style:normal;font-size:28px}
.lib h3{margin:0 0 4px}

.topic-accordion details{border:1px solid #e5ddd1;border-radius:8px;margin-bottom:12px;overflow:hidden}
.topic-accordion summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;font:700 16px Georgia,serif;color:var(--n);list-style:revert}
.topic-accordion summary small{font:400 12px Arial,sans-serif;color:var(--m)}
.topic-accordion details[open] summary{border-bottom:1px solid #e5ddd1;background:var(--c)}
.topic-items{display:flex;flex-direction:column}
.topic-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 20px;border-top:1px solid #f1ece0;color:#18222c}
.topic-item:first-child{border-top:0}
.topic-item:hover{background:#faf8f3}
.topic-item small{color:var(--m);white-space:nowrap}

.player{position:fixed;bottom:0;left:0;right:0;height:72px;background:#0b2239;color:#fff;z-index:50}
.pi{height:100%;display:grid;grid-template-columns:1.3fr 100px 1.2fr;align-items:center;gap:18px}
.now small{display:block;color:#a9b8c6;font-size:10px;letter-spacing:.5px}
.now b{font:700 16px Georgia,serif;display:block}
.now span{font-size:12px;color:#c9d4dc}
.round{border:0;background:#fff;color:#0b2239;border-radius:50%;width:43px;height:43px;font-size:16px}
.prog{display:flex;align-items:center;gap:9px;font-size:11px}
.bar{height:4px;background:#607287;flex:1;border-radius:2px;cursor:pointer}
.fill{height:100%;width:0;background:#fff;border-radius:2px}
.speed{background:none;border:1px solid #607287;color:#fff;border-radius:12px;padding:2px 8px;font-size:11px}

@media(max-width:800px){
  .links,.search{display:none}
  .brand{font-size:20px}
  .donate{padding:10px 12px}
  .hg{grid-template-columns:1fr}
  .hg>div:first-child{padding:38px 0!important}
  .hero h1{font-size:43px}
  .photo,.photo-empty{min-height:220px}
  .hero-home-fade{background:linear-gradient(180deg,#0b2947 0%,#0b2947 48%,rgba(11,41,71,.82) 70%,rgba(11,41,71,.3) 100%)}
  .hero-home .hg{padding:34px 0}
  .today{grid-template-columns:1fr}
  .date{border-right:0;border-bottom:1px solid #ddd;padding-bottom:15px}
  .prog{display:none}
  .pi{grid-template-columns:1fr 70px}
}
