:root{--navy:#0B1A3C;--navy2:#111e38;--burgundy:#760B2D;--crimson:#B01034;--gold:#D4AF37;--cream:#FFF5E6;--coral:#FF6B6B;--ink:#121a31;--muted:#657083;--line:rgba(11,26,60,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fbf8f4;line-height:1.5}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}.site-shell{overflow:hidden}.site-header{height:96px;background:var(--navy);padding:0 max(28px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff1c}.brand img{width:246px;height:auto;display:block}.site-header nav{display:flex;align-items:center;gap:34px;color:#ececf7;font-size:13px;font-weight:650}.site-header nav a:hover{color:var(--gold)}.site-header .pill-link{border:1px solid #ffffff45;border-radius:30px;padding:11px 18px}.hero{position:relative;background:radial-gradient(circle at 88% 28%,#7b2448 0,transparent 35%),linear-gradient(135deg,#0b1a3c 8%,#271a43 60%,#5f183a 100%);color:white;min-height:510px;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:40px;padding:85px max(28px,calc((100vw - 1200px)/2)) 80px}.hero-copy{position:relative;z-index:2}.eyebrow,.section-label{font-size:11px;font-weight:850;letter-spacing:2.4px;color:#c99752}.eyebrow{color:#ffe2a2;display:flex;gap:9px;align-items:center}.signal{height:8px;width:8px;border-radius:100%;background:#ff9fa8;box-shadow:0 0 15px #f58bb4}.hero h1{font-size:clamp(42px,4.3vw,64px);line-height:1.09;letter-spacing:-2.5px;max-width:760px;margin:28px 0 23px}.hero h1 em,.section-heading h2 em,.schedule h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:500;color:#f6c88f}.hero p{max-width:600px;font-size:16px;line-height:1.82;color:#e2dee7}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:32px}.primary-btn{display:inline-flex;justify-content:center;align-items:center;gap:20px;background:linear-gradient(125deg,#ba1840,#ec5566);border:0;border-radius:10px;padding:15px 23px;color:white;font-weight:800;font-size:13px;cursor:pointer;box-shadow:0 9px 24px #b0103430}.primary-btn:hover{filter:brightness(1.06)}.text-link{font-size:13px;font-weight:700;color:#f7ebdf}.hero-captions{display:flex;gap:22px;flex-wrap:wrap;margin-top:43px;font-size:11px;font-weight:600;color:#d6cada}.hero-emblem{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;justify-self:center}.emblem-ring{width:min(28vw,335px);height:min(28vw,335px);border:1px solid #ffffff45;border-radius:100%;background:radial-gradient(circle,#ffffff19 0%,transparent 70%);display:grid;place-items:center;box-shadow:0 0 0 22px #ffffff06,0 0 0 45px #ffffff05}.emblem-ring img{width:62%;filter:drop-shadow(0 14px 20px #18071966)}.emblem-caption{font-size:10px;letter-spacing:2.5px;margin-top:35px;color:#d2a670;font-weight:800}.hero-decor{position:absolute;border-radius:50%;filter:blur(4px)}.hero-decor-one{width:300px;height:300px;right:8%;top:0;background:radial-gradient(circle,#b0103424,transparent 72%)}.hero-decor-two{width:350px;height:350px;right:32%;bottom:-65px;background:radial-gradient(circle,#d4af3710,transparent 70%)}.listen,.programmes,.schedule{padding:75px max(28px,calc((100vw - 1200px)/2))}.listen{background:#fffdf9}.player-card{margin-top:20px;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:255px 1fr;background:#fff;box-shadow:0 22px 75px #0b1a3c16;border:1px solid #eee5e5}.player-cover{background:radial-gradient(circle at 45% 38%,#8d1a40,var(--burgundy) 48%,#1e1738);padding:46px;display:flex;align-items:center;justify-content:center}.player-cover img{max-width:170px;filter:drop-shadow(0 18px 22px #20031966)}.player-content{padding:33px 42px 22px}.player-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.chip{font-size:10px;letter-spacing:1.3px;font-weight:850;color:#a71e43;background:#fbe8ec;border-radius:30px;padding:7px 12px}.small-note,.player-subtitle{color:var(--muted);font-size:12px}.player-content h2{font-size:26px;margin:17px 0 7px;letter-spacing:-.6px}.now-title{font-size:15px;font-weight:750;color:var(--burgundy)}.player-subtitle{margin:7px 0 22px}.player-buttons{display:flex;align-items:center;gap:16px}.play-btn{background:var(--crimson);border:0;color:white;border-radius:50%;width:56px;height:56px;font-size:20px;cursor:pointer;flex-shrink:0}.play-btn:disabled{background:#c8b9be;cursor:not-allowed}.play-label{display:flex;flex-direction:column;gap:3px;min-width:0}.play-label b{font-size:13px}.play-label span{color:var(--muted);font-size:11px}.volume-area{margin-left:auto;display:flex;flex-direction:column;gap:5px;align-items:flex-end}.volume-area label{font-size:10px;color:var(--muted)}.volume-area input{width:100px;accent-color:var(--crimson)}.mini-progress{height:3px;background:#f5edef;border-radius:12px;margin-top:20px;overflow:hidden}.mini-progress span{display:block;width:0;height:100%;background:var(--gold);transition:width .4s}.player-error{font-size:12px;color:#a51a41;margin-top:8px}.player-error:empty{display:none}.player-footnote{display:flex;justify-content:space-between;gap:15px;margin:14px 3px 0;color:#6e7886;font-size:11px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:27px}.section-heading h2,.schedule h2{font-size:clamp(33px,3.8vw,51px);line-height:1.12;letter-spacing:-1.65px;margin:12px 0}.section-heading h2 em,.schedule h2 em{color:var(--burgundy)}.section-heading p{max-width:390px;color:var(--muted);font-size:13px;line-height:1.8}.show-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.show-card{border:1px solid var(--line);border-radius:16px;padding:25px 21px 19px;background:#fff;min-height:253px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.show-card:hover{transform:translateY(-4px);box-shadow:0 10px 30px #0b1a3c16}.show-index{color:var(--crimson);font-family:Georgia,serif;font-size:26px}.show-tag{align-self:flex-start;margin-top:15px;color:#9c5f37;background:#fff5e8;padding:5px 9px;border-radius:30px;text-transform:uppercase;font-size:8px;font-weight:900;letter-spacing:.7px}.show-card h3{font-size:18px;line-height:1.2;margin:18px 0 8px}.show-card p{font-size:11.5px;line-height:1.7;color:var(--muted);margin:0 0 20px}.show-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:5px;font-size:10px;color:var(--burgundy);font-weight:750;margin-top:auto;padding-top:12px}.schedule{background:#f3efe8;display:grid;grid-template-columns:.83fr 1.17fr;column-gap:68px;align-items:start}.schedule-heading{position:sticky;top:32px}.schedule-heading p{color:var(--muted);font-size:13px;line-height:1.7;max-width:360px}.schedule-list{background:white;border:1px solid #e6ddd9;border-radius:15px;overflow:hidden}.schedule-row{padding:15px 20px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:15px;border-bottom:1px solid #f0ebe9}.schedule-row:last-child{border-bottom:0}.day-short{text-transform:uppercase;font-size:10px;letter-spacing:.6px;font-weight:850;color:var(--crimson)}.schedule-main{display:flex;flex-direction:column;gap:3px}.schedule-main b{font-size:12px}.schedule-main span{font-size:10px;color:var(--muted)}.schedule-time{font-size:10px;white-space:nowrap;font-weight:750;color:var(--navy)}.schedule-time span{font-size:9px;color:var(--muted)}.special-note{grid-column:2;display:flex;gap:15px;background:#fcf4e4;border:1px solid #e9d3a4;border-radius:12px;margin-top:15px;padding:15px}.special-icon{font-size:20px;color:#a78337}.special-note b{font-size:12px}.special-note p{margin:4px 0 0;font-size:11px;color:#6e6d71}.closing{text-align:center;padding:80px 25px 95px;background:linear-gradient(135deg,#70112f,#271732);color:white}.closing h2{font-size:clamp(34px,3.7vw,52px);letter-spacing:-1.4px;margin:16px 0 8px}.closing p{color:#ecdae4;font-size:14px;max-width:610px;margin:0 auto 26px;line-height:1.8}footer{background:#09152f;color:#b9bfcc;text-align:center;padding:40px 30px 34px;display:flex;flex-direction:column;align-items:center;gap:8px}footer img{width:210px}footer div{font-size:12px;color:#d6bd96}footer span{font-size:10px;margin-top:8px}.simple-body{background:#f7f4f2;min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:55px 20px}.form-card{width:100%;max-width:520px;background:white;border:1px solid #eee1df;box-shadow:0 16px 45px #0b1a3c15;border-radius:18px;padding:32px 38px}.admin-card{max-width:790px}.form-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.form-top a{color:var(--crimson);font-size:12px;font-weight:700}.form-logo{width:240px}.form-card h1{font-size:28px;letter-spacing:-.7px;margin:23px 0 10px}.form-card h2{font-size:18px;margin:35px 0 8px}.form-card p{font-size:13px;color:var(--muted);line-height:1.75}.form-card form{display:flex;flex-direction:column;gap:16px;margin-top:22px}.form-card label{font-size:12px;font-weight:720;display:flex;flex-direction:column;gap:6px}.form-card input:not([type=checkbox]),.form-card textarea{width:100%;border:1px solid #d5d8df;border-radius:8px;padding:11px 12px;background:#fff;font-size:13px}.form-card input:focus,.form-card textarea:focus{outline:2px solid #e9bca9;border-color:#b01034}.form-card button{align-self:flex-start}.form-card .check-label{flex-direction:row;align-items:center;gap:10px;line-height:1.6}.check-label input{width:18px;height:18px;accent-color:var(--crimson)}.alert,.good{background:#fff0f1;color:#9e2439;border:1px solid #f2b8bd;border-radius:8px;padding:12px 14px;font-size:13px;margin:18px 0}.good{background:#edf8f0;border-color:#b6d8c4;color:#265b3c}.fine{font-size:11px!important;color:var(--muted)}.state-strip{margin-top:25px;background:#f8f7f2;border:1px solid #eae5dd;border-radius:10px;padding:13px;display:flex;align-items:center;gap:12px;font-size:13px}.state-strip .fine{margin-left:auto}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--gold)}.admin-shows{border:1px solid #e5e5e9;border-radius:10px;overflow:hidden;margin-top:10px}.admin-shows div{display:grid;grid-template-columns:85px 1fr auto;gap:15px;padding:11px 15px;border-bottom:1px solid #eee;font-size:12px}.admin-shows div:last-child{border:0}.admin-shows em{color:var(--muted);font-style:normal}.form-card details{border:1px solid #ede3e0;padding:15px;border-radius:10px}.form-card summary{cursor:pointer;font-weight:700;font-size:13px}.form-card form.logout{margin-top:26px}.subtle-btn{background:#f0edf0;color:var(--navy);border-radius:8px;border:0;padding:10px 15px;cursor:pointer;font-size:12px}.form-card code{font-size:12px}
@media(max-width:900px){.site-header{height:80px}.brand img{width:190px}.site-header nav{gap:15px}.hero{padding-top:65px;padding-bottom:60px;grid-template-columns:1fr .6fr}.hero h1{font-size:44px}.hero-captions{gap:10px}.emblem-ring{width:220px;height:220px}.show-grid{grid-template-columns:repeat(2,1fr)}.schedule{grid-template-columns:1fr;gap:26px}.schedule-heading{position:static}.special-note{grid-column:1}}
@media(max-width:650px){.site-header{padding:0 18px;height:70px}.brand img{width:152px}.site-header nav a:not(.pill-link){display:none}.site-header .pill-link{padding:7px 10px;font-size:10px}.hero{padding:55px 24px;display:flex;flex-direction:column;gap:34px;text-align:left}.hero h1{font-size:40px;letter-spacing:-1.4px}.hero p{font-size:14px}.hero-actions{flex-wrap:wrap;gap:18px}.hero-captions{margin-top:26px;font-size:10px}.emblem-ring{height:195px;width:195px}.emblem-caption{margin-top:18px}.listen,.programmes,.schedule{padding:55px 20px}.player-card{grid-template-columns:1fr}.player-cover{padding:26px}.player-cover img{width:112px}.player-content{padding:25px}.volume-area{display:none}.player-footnote{flex-direction:column}.section-heading{align-items:start;flex-direction:column;gap:3px}.section-heading h2,.schedule h2{font-size:35px}.show-grid{grid-template-columns:1fr}.show-card{min-height:210px}.schedule-row{grid-template-columns:30px 1fr;gap:9px}.schedule-time{grid-column:2}.closing{padding:60px 25px}.form-card{padding:24px}.admin-shows div{grid-template-columns:70px 1fr}.admin-shows em{grid-column:2}.state-strip{flex-wrap:wrap}}

/* AfricaLove Radio provisional wordmark — v0.4 private test */
.brand{display:flex;align-items:center;gap:11px;color:#fff;font-size:22px;font-weight:850;letter-spacing:-.7px}.brand img.brand-mark{width:48px;height:48px;object-fit:contain}.brand-words strong{color:#e8c061}.footer-brand{font-size:21px;color:#f4d3a2;font-weight:800}.admin-wordmark{font-size:23px;color:#92133e;font-weight:850;letter-spacing:-.5px}@media(max-width:650px){.brand{font-size:15px;gap:5px}.brand img.brand-mark{width:31px;height:31px}}
