/* Shared type and spacing for every web page. */
:root{--font-body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:Georgia,"Times New Roman",serif}
html[data-edition="si"]{--font-body:"Noto Sans Sinhala","Nirmala UI",sans-serif;--font-display:"Noto Sans Sinhala","Nirmala UI",sans-serif}
html[data-edition="ta"]{--font-body:"Noto Sans Tamil","Nirmala UI",sans-serif;--font-display:"Noto Sans Tamil","Nirmala UI",sans-serif}
body,button,input,select,textarea,label,nav,footer,.intro,.muted,.sermon-meta,.card p,.voice-player-caption{font-family:var(--font-body)!important}
body{font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,.cardtitle,.sermon-title,.short-card-copy strong,#nowStation{font-family:var(--font-display)!important}
h1,h2,h3,h4{font-weight:400;letter-spacing:-.025em;text-wrap:balance}
main>h1,.hero h1,.sermons-hero h1{font-size:clamp(34px,4.8vw,64px);line-height:1.12}
.intro{font-size:17px;line-height:1.75;max-width:760px}
button,input,select,textarea{font-size:14px;font-weight:500;line-height:1.45}
button,.companion-link{font-weight:650}
.companion-tabs{gap:10px;padding-top:15px;padding-bottom:15px}
.companion-tabs .companion-link{font-family:var(--font-body)!important;font-size:14px;line-height:1.4;letter-spacing:0;min-height:50px}
.brandname,.brand span,.listen-brand,.nowBrand,.nowCompanion{font-family:var(--font-body)!important}
.card h3,.cardtitle,.sermon-title{font-size:clamp(18px,1.8vw,23px);line-height:1.4}
.featured-sermon .sermon-title{font-size:clamp(22px,2.2vw,28px);line-height:1.3}
.short-card-copy strong{font-size:18px;line-height:1.45}
.cardbody{padding:22px}.sermon-copy{min-width:0}.sermon-meta{gap:8px}
html[data-edition="si"] h1,html[data-edition="ta"] h1{line-height:1.45;letter-spacing:0}
html[data-edition="si"] h2,html[data-edition="ta"] h2,html[data-edition="si"] h3,html[data-edition="ta"] h3{line-height:1.5;letter-spacing:0}
@media(max-width:600px){body{font-size:16px}.intro{font-size:16px}.companion-tabs{gap:8px;padding:12px 16px}.companion-tabs .companion-link{font-size:13px;min-height:46px;padding:10px 12px}.cardbody{padding:18px}}
