:root{--navy:#0b1730;--navy2:#13244a;--gold:#f5b301;--ink:#141414;--mute:#5b6270;--line:#e4e6ea;--bg:#ffffff;--soft:#f5f6f8}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans Sinhala","Inter",system-ui,sans-serif;line-height:1.75}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
/* masthead */
.mast{background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}
.mast-in{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.brand b{font-family:Inter,sans-serif;font-weight:800;letter-spacing:.14em;font-size:20px;display:block;line-height:1.1}
.brand small{color:#c9d2e6;font-size:12px}
.fb{border:1px solid rgba(255,255,255,.35);padding:6px 12px;border-radius:999px;font-size:13px;font-family:Inter,sans-serif}
.fb:hover{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.nav{background:var(--navy2);border-top:3px solid var(--gold)}
.nav .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.nav a{padding:10px 12px;font-size:15px;white-space:nowrap;color:#dfe6f5;border-bottom:3px solid transparent}
.nav a.on,.nav a:hover{color:#fff;border-bottom-color:var(--gold)}
/* home */
.top{display:grid;grid-template-columns:2fr 1fr;gap:28px;margin:24px 0 8px}
.sec{margin:34px 0}
.sec-h{font-size:20px;font-weight:800;margin:0 0 14px;padding-top:10px;border-top:3px solid var(--navy);display:flex;align-items:center;gap:8px}
.sec-h::before{content:"";width:10px;height:10px;background:var(--gold);display:inline-block}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.card{display:block}
.card .ph{aspect-ratio:16/9;overflow:hidden;background:var(--soft);border-radius:4px}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.card:hover .ph img{transform:scale(1.04)}
.card h3{font-size:18px;line-height:1.45;margin:8px 0 4px}
.card.big h2{font-size:32px;line-height:1.35;margin:10px 0 8px}
.card.big p{color:var(--mute);font-size:16px;margin:0 0 8px}
.card:hover h2,.card:hover h3{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.cat{font-size:13px;font-weight:600;color:#b07d00;display:inline-block;margin-top:8px}
time{font-size:13px;color:var(--mute);display:block}
.side{border-left:1px solid var(--line);padding-left:22px}
.side-item{display:block;padding:12px 0;border-bottom:1px solid var(--line)}
.side-item b{display:block;font-size:16px;line-height:1.5;margin:2px 0}
.side-item:hover b{text-decoration:underline;text-decoration-color:var(--gold)}
/* article */
.art{max-width:1000px}
.crumb{font-size:14px;color:var(--mute);margin:22px 0 6px}
.crumb a:hover{text-decoration:underline}
.art h1{font-size:36px;line-height:1.35;margin:6px 0 10px}
.lede{font-size:19px;color:#2c3240;margin:0 0 10px}
.meta{font-size:14px;color:var(--mute);border-bottom:1px solid var(--line);padding-bottom:12px}
figure{margin:18px 0}
figure img{width:100%;border-radius:4px}
figcaption{font-size:12px;color:var(--mute);margin-top:4px}
.cols{display:grid;grid-template-columns:1fr 280px;gap:32px}
.body p{font-size:18px;margin:0 0 18px}
.facts{background:var(--soft);border-top:4px solid var(--gold);padding:14px 18px;align-self:start;position:sticky;top:120px;border-radius:4px}
.facts h3{margin:0 0 8px;font-size:17px}
.facts ul{list-style:none;margin:0;padding:0}
.facts li{padding:8px 0;border-bottom:1px solid var(--line)}
.facts li:last-child{border:0}
.facts span{display:block;font-size:13px;color:var(--mute)}
.facts b{font-size:17px}
.sources{background:var(--soft);padding:12px 18px;border-radius:4px;margin-top:26px}
.sources h3{margin:4px 0 6px;font-size:16px}
.sources li{font-size:14px;margin:4px 0;word-break:break-word}
.sources a{color:#0b4ea2;text-decoration:underline}
.fbcta a{display:inline-block;background:var(--navy);color:#fff;padding:10px 16px;border-radius:999px;font-size:15px;margin-top:10px}
.fbcta a:hover{background:var(--gold);color:var(--navy)}
/* footer */
.foot{background:var(--navy);color:#cfd7ea;margin-top:50px;padding:26px 0}
.foot b{color:#fff}
.foot .small{font-size:13px}
.foot a{text-decoration:underline}
@media (max-width:820px){
 .top{grid-template-columns:1fr}
 .side{border:0;padding:0}
 .cols{grid-template-columns:1fr}
 .facts{position:static;order:-1}
 .card.big h2{font-size:25px}
 .art h1{font-size:27px}
 .body p{font-size:17px}
 .mast{position:static}
}
